:root{color-scheme:dark light;--font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--radius-sm: 4px;--radius: 8px;--radius-lg: 14px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--max-width: 1180px;--transition: .14s ease}html[data-theme=dark]{--bg: #0b1017;--bg-elevated: #121a24;--bg-inset: #090d13;--surface: #141d28;--surface-hover: #1a2531;--border: #24313f;--border-strong: #37485a;--text: #e6edf5;--text-muted: #97a6b7;--text-faint: #6b7d91;--accent: #4cc2ff;--accent-contrast: #041016;--accent-soft: rgba(76, 194, 255, .14);--danger: #ff6b6b;--danger-soft: rgba(255, 107, 107, .13);--warning: #ffc46b;--warning-soft: rgba(255, 196, 107, .13);--success: #57d9a3;--success-soft: rgba(87, 217, 163, .13);--info: #9db2ff;--info-soft: rgba(157, 178, 255, .13);--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 24px rgba(0, 0, 0, .25)}html[data-theme=light]{--bg: #f7f9fc;--bg-elevated: #ffffff;--bg-inset: #eef2f7;--surface: #ffffff;--surface-hover: #f2f6fa;--border: #d8e0ea;--border-strong: #b6c3d1;--text: #101822;--text-muted: #4f5f70;--text-faint: #7387a0;--accent: #0b6bcb;--accent-contrast: #ffffff;--accent-soft: rgba(11, 107, 203, .1);--danger: #c02b2b;--danger-soft: rgba(192, 43, 43, .09);--warning: #9a6300;--warning-soft: rgba(154, 99, 0, .1);--success: #10693f;--success-soft: rgba(16, 105, 63, .1);--info: #2b4bb8;--info-soft: rgba(43, 75, 184, .1);--shadow: 0 1px 2px rgba(16, 24, 34, .06), 0 8px 24px rgba(16, 24, 34, .07)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{line-height:1.25;margin:0 0 var(--space-3);font-weight:640;letter-spacing:-.01em}h1{font-size:1.95rem}h2{font-size:1.4rem}h3{font-size:1.1rem}p{margin:0 0 var(--space-3);color:var(--text-muted)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.skip-link{position:absolute;left:-9999px;top:0;background:var(--accent);color:var(--accent-contrast);padding:var(--space-2) var(--space-4);z-index:100}.skip-link:focus{left:var(--space-3);top:var(--space-3)}code,kbd,samp{font-family:var(--font-mono);font-size:.88em}.app-shell{display:flex;flex-direction:column;min-height:100vh}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-5)}.container-narrow{max-width:820px}main{flex:1;padding:var(--space-6) 0 var(--space-7)}.site-header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}.site-header__inner{display:flex;align-items:center;gap:var(--space-5);min-height:58px}.brand{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:680;color:var(--text);white-space:nowrap}.brand:hover{text-decoration:none}.brand__mark{width:22px;height:22px;flex:none}.nav{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.nav a{color:var(--text-muted);font-size:.92rem;padding:var(--space-1) 0;border-bottom:2px solid transparent}.nav a[aria-current=page]{color:var(--text);border-bottom-color:var(--accent)}.site-header__spacer{flex:1}.site-footer{border-top:1px solid var(--border);padding:var(--space-5) 0;color:var(--text-faint);font-size:.85rem}.site-footer__inner{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow)}.card+.card{margin-top:var(--space-5)}.card--flush{padding:0;overflow:hidden}.card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-4)}.stack{display:flex;flex-direction:column;gap:var(--space-4)}.stack--tight{gap:var(--space-2)}.row{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.row--between{justify-content:space-between}.grid{display:grid;gap:var(--space-5)}.grid--2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.grid--3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.page-head{margin-bottom:var(--space-5)}.page-head p{max-width:68ch}.muted{color:var(--text-muted)}.faint{color:var(--text-faint)}.small{font-size:.85rem}.mono{font-family:var(--font-mono)}.nowrap{white-space:nowrap}button,.button{font:inherit;font-weight:560;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);padding:9px 15px;cursor:pointer;transition:background var(--transition),border-color var(--transition),transform var(--transition);display:inline-flex;align-items:center;gap:var(--space-2);text-decoration:none}button:hover:not(:disabled),.button:hover{background:var(--surface-hover);text-decoration:none}button:disabled,.button[aria-disabled=true]{opacity:.55;cursor:not-allowed}.button--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.button--primary:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 86%,white)}.button--danger{border-color:var(--danger);color:var(--danger);background:transparent}.button--danger:hover:not(:disabled){background:var(--danger-soft)}.button--ghost{border-color:transparent;background:transparent;color:var(--text-muted)}.button--ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.button--small{padding:5px 10px;font-size:.85rem}label{display:block;font-size:.88rem;font-weight:560;margin-bottom:var(--space-1);color:var(--text)}.field{margin-bottom:var(--space-4)}.field__help{font-size:.82rem;color:var(--text-faint);margin-top:var(--space-1)}input[type=text],input[type=email],input[type=password],input[type=url],select,textarea{width:100%;font:inherit;color:var(--text);background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--radius);padding:9px 11px}textarea{font-family:var(--font-mono);font-size:.87rem;line-height:1.55;resize:vertical}textarea.paste-area{min-height:320px}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px var(--accent-soft)}.checkbox-row{display:flex;align-items:flex-start;gap:var(--space-2)}.checkbox-row input[type=checkbox]{margin-top:4px}.checkbox-row label{margin:0;font-weight:500}.alert{border-radius:var(--radius);border:1px solid var(--border);padding:var(--space-3) var(--space-4);font-size:.9rem;display:flex;gap:var(--space-3);align-items:flex-start}.alert__body{flex:1;min-width:0}.alert__body p:last-child{margin-bottom:0}.alert--error{border-color:var(--danger);background:var(--danger-soft);color:var(--text)}.alert--warning{border-color:var(--warning);background:var(--warning-soft)}.alert--success{border-color:var(--success);background:var(--success-soft)}.alert--info{border-color:var(--border-strong);background:var(--info-soft)}.alert__title{font-weight:620;margin-bottom:var(--space-1);color:var(--text)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);font-size:.76rem;font-weight:640;letter-spacing:.02em;text-transform:uppercase;padding:3px 8px;border-radius:999px;border:1px solid var(--border-strong);color:var(--text-muted);background:var(--bg-inset);white-space:nowrap}.badge--confirmed{border-color:var(--success);color:var(--success);background:var(--success-soft)}.badge--likely{border-color:var(--warning);color:var(--warning);background:var(--warning-soft)}.badge--speculative{border-color:var(--border-strong);color:var(--text-muted);background:var(--bg-inset)}.badge--pro{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.badge--error{border-color:var(--danger);color:var(--danger);background:var(--danger-soft)}.code-block{position:relative;background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.code-block__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);background:var(--bg-elevated);font-size:.8rem;color:var(--text-muted)}.code-block pre{margin:0;padding:var(--space-3) var(--space-4);overflow-x:auto;max-height:520px;overflow-y:auto}.code-block code{font-size:.85rem;line-height:1.6;white-space:pre;color:var(--text)}.report-section{margin-top:var(--space-5)}.report-section>h3{display:flex;align-items:center;gap:var(--space-2)}.cause{border:1px solid var(--border);border-left-width:3px;border-radius:var(--radius);padding:var(--space-4);background:var(--bg-elevated)}.cause+.cause{margin-top:var(--space-3)}.cause--confirmed{border-left-color:var(--success)}.cause--likely{border-left-color:var(--warning)}.cause--speculative{border-left-color:var(--border-strong)}.cause__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.cause__title{font-weight:620;color:var(--text);margin:0}.cause__explanation{margin:var(--space-2) 0 0;font-size:.92rem}.evidence-list,.plain-list{margin:var(--space-2) 0 0;padding-left:1.15rem;color:var(--text-muted);font-size:.9rem}.evidence-list li,.plain-list li{margin-bottom:3px}.steps{list-style:none;margin:0;padding:0;counter-reset:step}.steps li{counter-increment:step;position:relative;padding:var(--space-3) 0 var(--space-3) 46px;border-bottom:1px solid var(--border)}.steps li:last-child{border-bottom:none}.steps li:before{content:counter(step);position:absolute;left:0;top:var(--space-3);width:30px;height:30px;border-radius:50%;border:1px solid var(--border-strong);background:var(--bg-inset);color:var(--text-muted);display:grid;place-items:center;font-size:.82rem;font-weight:640}.steps li strong{display:block;color:var(--text);margin-bottom:2px}.steps .why{font-size:.85rem;color:var(--text-faint);margin-top:var(--space-1)}.checklist{list-style:none;margin:0;padding:0}.checklist li{position:relative;padding-left:28px;margin-bottom:var(--space-2);color:var(--text-muted);font-size:.92rem}.checklist li:before{content:"";position:absolute;left:0;top:3px;width:14px;height:14px;border:1px solid var(--border-strong);border-radius:3px}.stat-row{display:flex;gap:var(--space-4);flex-wrap:wrap}.stat{min-width:96px}.stat__value{font-size:1.4rem;font-weight:680;color:var(--text);font-variant-numeric:tabular-nums}.stat__label{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint)}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius)}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;padding:var(--space-3);border-bottom:1px solid var(--border);vertical-align:top}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);background:var(--bg-elevated)}tr:last-child td{border-bottom:none}.plan{border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);background:var(--surface);display:flex;flex-direction:column}.plan--featured{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),var(--shadow)}.plan__price{font-size:2rem;font-weight:700;color:var(--text);margin:var(--space-2) 0}.plan__price span{font-size:.95rem;font-weight:500;color:var(--text-muted)}.plan ul{list-style:none;padding:0;margin:0 0 var(--space-5)}.plan li{padding-left:24px;position:relative;margin-bottom:var(--space-2);color:var(--text-muted);font-size:.92rem}.plan li:before{content:"✓";position:absolute;left:0;color:var(--success);font-weight:700}.plan li.is-excluded:before{content:"—";color:var(--text-faint)}.plan__footer{margin-top:auto}.hero{padding:var(--space-7) 0 var(--space-6);border-bottom:1px solid var(--border)}.hero h1{font-size:clamp(1.9rem,3.6vw,2.85rem);max-width:22ch}.hero__lead{font-size:1.08rem;max-width:62ch;color:var(--text-muted)}.hero__actions{margin-top:var(--space-5)}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.76rem;font-weight:680;color:var(--accent);margin-bottom:var(--space-2)}.steps-inline{counter-reset:inline;list-style:none;padding:0;margin:0}.steps-inline li{counter-increment:inline;position:relative;padding-left:40px;margin-bottom:var(--space-4)}.steps-inline li:before{content:counter(inline);position:absolute;left:0;top:0;width:26px;height:26px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:680;font-size:.84rem}.feature h3{font-size:1rem}.feature p{font-size:.92rem;margin:0}.spinner{width:15px;height:15px;border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.progress-steps{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:.85rem;color:var(--text-faint)}.progress-steps span[data-active=true]{color:var(--accent);font-weight:600}.empty-state{text-align:center;padding:var(--space-7) var(--space-4);color:var(--text-muted);border:1px dashed var(--border-strong);border-radius:var(--radius-lg)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.toast{position:fixed;bottom:var(--space-5);right:var(--space-5);max-width:420px;z-index:60;box-shadow:var(--shadow)}.tabs{display:flex;gap:var(--space-2);border-bottom:1px solid var(--border);margin-bottom:var(--space-4)}.tabs button{border:none;border-bottom:2px solid transparent;background:transparent;border-radius:0;color:var(--text-muted);padding:var(--space-2) var(--space-3)}.tabs button[aria-selected=true]{color:var(--text);border-bottom-color:var(--accent)}details{border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-3) var(--space-4);background:var(--bg-elevated)}details summary{cursor:pointer;font-weight:560}details[open] summary{margin-bottom:var(--space-3)}hr{border:none;border-top:1px solid var(--border);margin:var(--space-5) 0}.kbd-hint{font-size:.8rem;color:var(--text-faint)}@media (max-width: 720px){.site-header__inner{flex-wrap:wrap;gap:var(--space-3);padding:var(--space-2) 0}.container{padding:0 var(--space-4)}.card{padding:var(--space-4)}main{padding:var(--space-5) 0 var(--space-6)}}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}
