:root{--color-bg: #f9f9fa;--color-section-soft: #f3f6f8;--color-section-mint: #eefaf5;--color-section-muted: #f4f7f7;--color-section-warm: var(--color-section-muted);--color-surface: #ffffff;--color-text: #1a1c1d;--color-text-muted: #595e6d;--color-text-variant: #3e4944;--color-border: #e1e3e5;--color-border-strong: #bdc9c2;--color-primary: #008060;--color-primary-hover: #00654b;--color-primary-soft: #d6ffeb;--color-tag-soft: #dff5ee;--color-tag-text: #004f3d;--color-info-soft: #edf0ff;--color-info-text: #343b75;--color-dark: #1a1f2c;--color-dark-card: rgba(255, 255, 255, .05);--color-dark-card-border: rgba(255, 255, 255, .1);--color-dark-text: #ffffff;--color-dark-muted: rgba(255, 255, 255, .72);--color-success: #008060;--color-success-soft: #d6ffeb;--color-success-text: #00513c;--color-warning: #8f3f37;--color-warning-soft: #fff2f1;--color-warning-border: #ffb4ab;--color-danger: #ba1a1a;--color-danger-soft: #ffdad6;--color-danger-text: #93000a;--color-planned-dot: #c2c6d8;--color-neutral-chip: #f1f2f4;--font-sans: Geist, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--text-h1: clamp(2rem, 8vw, 2.5rem);--text-h1-desktop: 2.5rem;--text-h2: 2rem;--text-h3: 1.5rem;--text-body: 1rem;--text-body-lg: 1.125rem;--text-small: .875rem;--text-label: .875rem;--text-label-sm: .75rem;--line-heading: 1.2;--line-heading-sm: 1.3;--line-body: 1.5;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--container: 1280px;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-gutter: 20px;--space-lg: 24px;--space-xl: 48px;--space-section: 64px;--space-section-mobile: 32px;--space-card: 24px;--space-card-mobile: 20px;--radius-control: 4px;--radius-card: 8px;--radius-pill: 999px;--shadow-card: 0 2px 4px rgba(0, 0, 0, .04);--shadow-card-hover: 0 4px 8px rgba(0, 0, 0, .08);--shadow-dark-card: 0 20px 40px rgba(0, 0, 0, .3);--focus-ring: #75d9b3;--color-surface-muted: var(--color-section-soft);--color-heading: var(--color-text);--color-link: var(--color-primary-hover);--color-accent: var(--color-primary);--color-accent-strong: var(--color-primary-hover);--color-accent-soft: var(--color-success-soft);--color-dark-soft: var(--color-dark-card);--color-dark-border: var(--color-dark-card-border);--shadow-soft: var(--shadow-card);--space-1: var(--space-xs);--space-2: var(--space-sm);--space-3: 12px;--space-4: var(--space-md);--space-5: var(--space-lg);--space-6: 32px;--space-7: var(--space-xl);--space-8: var(--space-section);--font-base: var(--font-sans)}*,*:before,*:after{box-sizing:border-box}html{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);letter-spacing:0;text-size-adjust:100%}body{margin:0;min-height:100vh;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-body);font-weight:var(--weight-normal);line-height:var(--line-body);text-rendering:optimizeLegibility}body,button,input,textarea,select{font:inherit}img,svg,video,canvas{display:block;max-width:100%}button,summary{cursor:pointer}button{border:0}a{color:var(--color-primary-hover);text-decoration-thickness:.08em;text-underline-offset:.18em;transition:color .16s ease,background-color .16s ease,border-color .16s ease,box-shadow .16s ease}a:hover{color:var(--color-primary)}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}h1,h2,h3,h4,p,figure,blockquote{margin-top:0}h1,h2,h3,h4{color:var(--color-text);font-weight:var(--weight-semibold);letter-spacing:0}h1{font-size:var(--text-h1);line-height:var(--line-heading)}h2{font-size:var(--text-h2);line-height:1.25}h3{font-size:var(--text-h3);line-height:var(--line-heading-sm)}h4{font-size:var(--text-body);line-height:var(--line-heading-sm)}p{margin-bottom:0}ul,ol{margin-top:0}:where(ul,ol)[class]{padding-left:0}::selection{background:var(--color-primary-soft);color:var(--color-text)}.skip-link{position:absolute;top:var(--space-md);left:var(--space-md);z-index:20;transform:translateY(-150%);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);padding:var(--space-sm) var(--space-md);box-shadow:var(--shadow-card)}.skip-link:focus{transform:translateY(0)}.container{width:min(100% - 2rem,var(--container));margin-inline:auto}.narrow{max-width:760px}.section{padding-block:var(--space-section-mobile)}.section--soft,.section--muted{border-block:1px solid rgba(0,80,60,.08)}.section--soft{background:var(--color-section-mint)}.section--muted{background:var(--color-section-warm)}.section--cta{background:var(--color-bg)}.dark-section{background:var(--color-dark);color:var(--color-dark-text)}.dark-section :where(h1,h2,h3,h4){color:var(--color-dark-text)}.dark-section :where(p,li){color:var(--color-dark-muted)}.card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.card--interactive{transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.card--interactive:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-card-hover)}.button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:var(--space-sm);border:1px solid transparent;border-radius:var(--radius-control);padding:12px var(--space-md);font-size:var(--text-label);font-weight:var(--weight-medium);line-height:1;text-align:center;text-decoration:none;transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,opacity .16s ease}.button:hover{text-decoration:none}.button[aria-disabled=true],.button:disabled{cursor:not-allowed;opacity:.5}.button--primary{background:var(--color-primary);color:#fff}.button--primary:hover{background:var(--color-primary-hover);color:#fff}.button--secondary{border-color:#1a1c1d33;background:transparent;color:var(--color-text)}.button--secondary:hover{background:#e2e2e373;color:var(--color-text)}.button--dark,.button--ghost{border-color:#fff3;background:transparent;color:var(--color-dark-text)}.button--dark:hover,.button--ghost:hover{background:#ffffff14;border-color:#ffffff57;color:var(--color-dark-text)}.dark-section .button--secondary,.hero--dark .button--secondary,.hero--app .button--secondary{border-color:#fff3;color:var(--color-dark-text)}.dark-section .button--secondary:hover,.hero--dark .button--secondary:hover,.hero--app .button--secondary:hover{background:#ffffff14;border-color:#ffffff57;color:var(--color-dark-text)}.button--text,.text-link{display:inline-flex;align-items:center;gap:var(--space-xs);color:var(--color-primary-hover);font-size:var(--text-label);font-weight:var(--weight-medium);line-height:var(--line-heading-sm);border-bottom:1px solid rgba(0,101,75,.24);padding-bottom:.45rem;text-decoration:none}.button--text:hover,.text-link:hover{color:var(--color-primary);border-bottom-color:currentColor;text-decoration:none}.button--text svg,.text-link svg{width:1em;height:1em;flex:0 0 auto;transition:transform .16s ease}.button--text:hover svg,.text-link:hover svg{transform:translate(2px)}.text-link--disabled{color:var(--color-text-muted);cursor:default;opacity:.75}.text-link--disabled:hover{border-bottom-color:#00654b3d;color:var(--color-text-muted)}.chip{display:inline-flex;align-items:center;gap:var(--space-xs);width:fit-content;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-neutral-chip);color:#1a1f2c;padding:6px var(--space-sm);font-size:var(--text-label-sm);font-weight:var(--weight-semibold);line-height:1}.chip--neutral{border-color:#00806029;background:#eef8f3;color:var(--color-tag-text)}.chip--category{border-color:#00806033;background:var(--color-tag-soft);color:var(--color-tag-text)}.chip--live{border-color:#0080603d;background:var(--color-success-soft);color:var(--color-success-text)}.chip--planned{border-color:#464f8c2e;background:var(--color-info-soft);color:var(--color-info-text)}.chip--success{border-color:#0080603d;background:var(--color-success-soft);color:var(--color-success-text)}.chip--warning{border-color:var(--color-warning-border);background:var(--color-warning-soft);color:var(--color-warning)}.chip--danger{border-color:var(--color-danger-soft);background:var(--color-danger-soft);color:var(--color-danger-text)}.chip--dark{border-color:#fff3;background:#ffffff1a;color:var(--color-dark-text)}.status-dot{display:inline-block;width:.5rem;height:.5rem;flex:0 0 auto;border-radius:50%;background:var(--color-success)}.chip--planned .status-dot{background:var(--color-planned-dot)}.chip--warning .status-dot{background:var(--color-warning)}.chip--danger .status-dot{background:var(--color-danger)}.chip--dark .status-dot{background:#92f6cf}.site-header{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--color-border);background:#fffffff2;backdrop-filter:blur(12px)}.header-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);flex-wrap:nowrap;padding-block:var(--space-md)}.site-logo{display:inline-flex;min-width:0;align-items:center;gap:var(--space-sm);color:var(--color-text);font-weight:var(--weight-bold);text-decoration:none}.site-logo:hover{color:var(--color-text)}.site-logo__mark{display:inline-grid;width:2rem;height:2rem;place-items:center;border-radius:var(--radius-control);background:var(--color-primary);color:#fff;box-shadow:var(--shadow-card)}.site-logo__icon{width:1.45rem;height:1.45rem}.site-logo__tile{fill:#fff}.site-logo__check{fill:none;stroke:#fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.35}.site-logo__text{white-space:nowrap}.header-actions{display:none;width:100%;align-items:center;justify-content:space-between;gap:var(--space-md)}.header-nav,.footer-nav{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm) var(--space-lg)}.header-nav a,.footer-nav a{color:var(--color-text-muted);font-size:var(--text-label);font-weight:var(--weight-medium);line-height:1;text-decoration:none}.header-nav a:hover,.header-nav a[aria-current=page],.footer-nav a:hover{color:var(--color-primary-hover)}.header-nav a[aria-current=page]{border-bottom:2px solid var(--color-primary);padding-bottom:var(--space-xs)}.header-cta{display:none;flex:0 0 auto}.header-cta[aria-current=page]{box-shadow:0 0 0 3px #0080602e}.mobile-menu{position:relative;display:block;flex:0 0 auto}.mobile-menu__checkbox{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.mobile-menu__checkbox:focus-visible+.mobile-menu__toggle{outline:2px solid var(--focus-ring);outline-offset:2px}.mobile-menu__toggle{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:var(--space-sm);border:1px solid var(--color-primary);border-radius:var(--radius-control);background:var(--color-primary);color:#fff;padding:10px 12px;font-size:var(--text-label);font-weight:var(--weight-medium);line-height:1}.mobile-menu__toggle:hover,.mobile-menu__checkbox:checked+.mobile-menu__toggle{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.mobile-menu__toggle svg{width:1.1rem;height:1.1rem}.mobile-menu__toggle path{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.8}.mobile-menu__panel{position:absolute;top:calc(100% + var(--space-sm));right:0;z-index:30;display:none;width:min(19rem,calc(100vw - 2rem));gap:var(--space-xs);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);padding:var(--space-sm);box-shadow:var(--shadow-card-hover)}.mobile-menu__checkbox:checked~.mobile-menu__panel{display:grid}.mobile-menu__panel a:not(.button){display:flex;min-height:44px;align-items:center;border-radius:var(--radius-control);color:var(--color-text);padding:10px 12px;font-size:var(--text-label);font-weight:var(--weight-medium);text-decoration:none}.mobile-menu__panel a:not(.button):hover,.mobile-menu__panel a:not(.button)[aria-current=page]{background:var(--color-section-mint);color:var(--color-primary-hover)}.hero{padding-block:var(--space-section-mobile)}.hero--dark,.hero--app,.hero--page-dark{background:var(--color-dark);color:var(--color-dark-text)}.hero--page{border-bottom:1px solid var(--color-border);background:var(--color-section-soft)}.hero--page-dark{border-bottom:1px solid var(--color-dark-card-border);padding-block:var(--space-xl)}.hero--dark h1,.hero--dark h2,.hero--app h1,.hero--app h2,.hero--page-dark h1,.hero--page-dark h2{color:var(--color-dark-text)}.hero--dark .eyebrow,.hero--app .eyebrow,.hero--page-dark .eyebrow{color:var(--color-dark-muted)}.hero__inner{display:flex;flex-direction:column;gap:var(--space-xl)}.hero__copy{max-width:850px}.hero__lead{max-width:820px;color:inherit;font-size:var(--text-body-lg);line-height:var(--line-body)}.hero--page .hero__lead{color:var(--color-text-muted)}.hero--page-dark .hero__lead{color:var(--color-dark-muted)}.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:var(--space-lg)}.chip-list{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin:var(--space-lg) 0 0;padding:0;list-style:none}.hero--dark .chip,.hero--app .chip{border-color:#fff3;background:#ffffff1a;color:var(--color-dark-text)}.chip-list--small{margin-top:var(--space-md)}.chip--small{padding:5px var(--space-sm);font-size:.72rem}.section-heading{max-width:720px;margin-bottom:32px}.section-heading p{color:var(--color-text-muted);font-size:var(--text-body)}.section-heading--compact{margin-bottom:0}.eyebrow{margin-bottom:var(--space-sm);color:var(--color-primary-hover);font-size:var(--text-label-sm);font-weight:var(--weight-semibold);line-height:1;text-transform:uppercase}.eyebrow--dark{color:var(--color-dark-muted)}.card-grid,.feature-grid{display:grid;grid-template-columns:1fr;gap:var(--space-md)}.app-card,.feature-card,.guide-card{padding:var(--space-card-mobile)}.app-card{display:flex;min-height:100%;flex-direction:column}.app-card__meta{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-md)}.app-card h3 a,.guide-card h2 a,.guide-card h3 a{color:var(--color-text);text-decoration:none}.app-card h3 a:hover,.guide-card h2 a:hover,.guide-card h3 a:hover{color:var(--color-primary-hover)}.app-card p,.feature-card p,.guide-card p{color:var(--color-text-muted)}.feature-card h2,.guide-card h2{font-size:var(--text-h3);line-height:var(--line-heading-sm)}.status-pill{display:inline-flex;align-items:center;gap:var(--space-xs);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-neutral-chip);color:var(--color-text-muted);padding:5px var(--space-sm);font-size:var(--text-label-sm);font-weight:var(--weight-semibold);line-height:1}.status-pill--live{border-color:#0080603d;background:var(--color-success-soft);color:var(--color-success-text)}.status-pill--planned{border-color:#464f8c2e;background:var(--color-info-soft);color:var(--color-info-text)}.text-link{margin-top:auto;padding-top:var(--space-lg)}.hero-mockup{max-width:920px;margin-top:var(--space-md)}.mockup-panel{border:1px solid var(--color-dark-card-border);border-radius:var(--radius-card);background:var(--color-dark-card);box-shadow:var(--shadow-dark-card)}.mockup-header{display:flex;align-items:center;gap:var(--space-sm);border-bottom:1px solid var(--color-dark-card-border);padding:var(--space-md);color:var(--color-dark-muted);font-weight:var(--weight-medium)}.mockup-body{display:grid;gap:12px;padding:var(--space-md)}.mockup-row,.mockup-note{display:grid;grid-template-columns:1fr;gap:var(--space-sm);border:1px solid var(--color-dark-card-border);border-radius:var(--radius-control);background:#ffffff0d;padding:var(--space-md)}.mockup-row span,.mockup-note span:first-child{color:var(--color-dark-muted)}.mockup-row strong,.mockup-note span:last-child{color:var(--color-dark-text)}.split-section{display:grid;grid-template-columns:1fr;gap:32px;align-items:start}.boundary-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}.boundary-list li{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);padding:var(--space-md);color:var(--color-text-muted)}.faq-list{display:grid;gap:12px}.faq-list details{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);padding:var(--space-md);box-shadow:var(--shadow-card)}.faq-list summary{color:var(--color-text);font-weight:var(--weight-semibold)}.faq-list p{margin-top:12px;color:var(--color-text-muted)}.cta-panel{display:flex;flex-direction:column;align-items:flex-start;gap:32px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);padding:var(--space-card-mobile);box-shadow:var(--shadow-card)}.cta-panel p{max-width:680px;color:var(--color-text-muted)}.article-header{max-width:780px;margin-bottom:32px}.article-header p{color:var(--color-text-muted);font-size:var(--text-body-lg)}.article-layout{display:grid;grid-template-columns:1fr;gap:32px;align-items:start}.toc{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);padding:var(--space-md);box-shadow:var(--shadow-card)}.toc h2{margin-bottom:12px;border-bottom:1px solid var(--color-border);padding-bottom:12px;font-size:var(--text-body)}.toc__link{display:block;margin-bottom:var(--space-sm);color:var(--color-text-muted);font-size:var(--text-small);font-weight:var(--weight-medium);text-decoration:none}.toc__link:hover{color:var(--color-primary-hover)}.toc__link--depth-3{padding-left:var(--space-md)}.prose{max-width:760px}.prose h2{margin-top:var(--space-xl);margin-bottom:12px}.prose h2:first-child{margin-top:0}.prose h3{margin-top:32px;margin-bottom:12px}.prose p,.prose li{color:var(--color-text-muted)}.prose p+p,.prose p+ul,.prose ul+p,.prose p+ol,.prose ol+p{margin-top:var(--space-md)}.site-footer{border-top:1px solid var(--color-border);background:var(--color-surface);padding-block:32px}.footer-grid{display:grid;gap:var(--space-lg)}.footer-brand{max-width:520px}.footer-brand p{margin-top:12px;color:var(--color-text-muted);font-size:var(--text-small)}.footer-nav{display:grid;gap:var(--space-lg)}.footer-nav__group{display:grid;gap:var(--space-sm)}.footer-nav__group h2{margin:0;color:var(--color-text);font-size:var(--text-small);font-weight:var(--weight-semibold)}.footer-nav__group ul{display:grid;gap:var(--space-xs);margin:0;padding:0;list-style:none}.footer-nav__group a{display:inline-flex;min-height:36px;align-items:center}.footer-bottom{margin-top:var(--space-lg);color:var(--color-text-muted);font-size:var(--text-small)}@media(min-width:640px){.button-row .button{width:auto}.card-grid,.feature-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media(min-width:768px){h1{font-size:var(--text-h1-desktop)}.section,.hero{padding-block:var(--space-section)}.hero.hero--page-dark{padding-block:var(--space-xl)}.container{width:min(100% - 3rem,var(--container))}.app-card,.feature-card,.guide-card,.cta-panel{padding:var(--space-card)}.cta-panel{flex-direction:row;align-items:center;justify-content:space-between}.footer-grid{align-items:center;grid-template-columns:minmax(0,1fr) auto;justify-content:space-between}.header-bar{flex-wrap:nowrap}.header-actions{display:flex;width:auto;justify-content:flex-end}.mobile-menu{display:none}.header-cta{display:inline-flex}.footer-nav{display:flex;align-items:start;gap:var(--space-xl);justify-content:flex-end}.footer-nav__group{gap:var(--space-sm)}.footer-nav__group ul{display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-lg)}.footer-nav__group h2{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.split-section{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.article-layout{grid-template-columns:220px minmax(0,1fr);gap:var(--space-xl)}.toc{position:sticky;top:6rem}.mockup-row,.mockup-note{grid-template-columns:minmax(7rem,.35fr) 1fr}}@media(max-width:639px){.hero--page h1{max-width:13ch}.button-row{flex-direction:column}.button-row .button{width:100%}.site-logo__text{white-space:nowrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
