@font-face{font-family:inter;src:url(../media/inter_latin_wght_normal-s.p.0gsaq8ukbf34m.woff2)format("woff2");font-display:swap;font-weight:100 900;font-style:normal}@font-face{font-family:inter Fallback;src:local(Arial);ascent-override:89.79%;descent-override:22.36%;line-gap-override:0.0%;size-adjust:107.89%}._2kcUbW_className{font-family:inter,inter Fallback;font-style:normal}._2kcUbW_variable{--font-inter:"inter", "inter Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;--n-0:#fff;--n-25:#f3f5f1;--n-50:#edf0ea;--n-100:#e4e8e0;--n-200:#d6dbd1;--n-300:#c0c6ba;--n-400:#959c90;--n-500:#6a7166;--n-600:#51574e;--n-700:#383e36;--n-800:#232822;--n-900:#121611;--green-950:#0e2611;--green-900:#163a19;--green-800:#1e4e22;--green-700:#28652d;--green-600:#367d3b;--green-500:#4a9850;--leaf-50:#f4fbe8;--leaf-100:#e7f7cc;--leaf-200:#d2f09f;--leaf-300:#b6e461;--leaf-400:#9ad33c;--leaf-500:#7db824;--petrol-50:#eef4f7;--petrol-100:#dce9ef;--petrol-600:#2c6a87;--petrol-700:#1f5672;--petrol-800:#17435a;--amber-50:#fef8ea;--amber-100:#fcefcf;--amber-300:#efd08a;--amber-700:#8a5a0b;--amber-800:#6e4708;--red-50:#fdf0ee;--red-100:#f9dcd8;--red-300:#eba79f;--red-700:#b02a1e;--red-800:#8e2117;--bg-page:var(--n-25);--bg-surface:var(--n-0);--bg-subtle:var(--n-50);--bg-muted:var(--n-100);--bg-inverse:var(--n-900);--text-strong:var(--n-900);--text-body:var(--n-700);--text-muted:var(--n-500);--text-disabled:var(--n-400);--text-inverse:var(--n-0);--text-brand:var(--green-800);--border-subtle:var(--n-100);--border-default:var(--n-200);--border-strong:var(--n-300);--border-input:var(--n-200);--border-input-hover:var(--n-400);--action-primary:var(--leaf-300);--action-primary-hover:var(--leaf-400);--action-primary-press:var(--leaf-500);--action-primary-text:var(--green-950);--action-strong:var(--green-900);--action-strong-hover:var(--green-950);--action-strong-text:var(--leaf-200);--action-secondary:var(--n-50);--action-secondary-hover:var(--n-100);--action-secondary-border:transparent;--accent-soft:var(--leaf-200);--accent-soft-strong:var(--leaf-300);--accent-soft-text:var(--green-900);--focus-ring:var(--green-800);--result-text:var(--petrol-700);--result-bg:var(--petrol-50);--result-bar:var(--petrol-600);--pending-text:var(--amber-800);--pending-bg:var(--amber-50);--pending-border:var(--amber-300);--danger-text:var(--red-700);--danger-bg:var(--red-50);--danger-border:var(--red-300);--success-text:var(--green-800);--success-bg:var(--leaf-100);--success-border:var(--leaf-300);--info-text:var(--n-700);--info-bg:var(--n-50);--info-border:var(--n-200);--state-preview-border:var(--n-300);--state-scenario-border:var(--n-400);--state-practiced-bg:var(--leaf-100);--state-practiced-text:var(--green-800);--bar-cost:var(--n-400);--bar-fees:var(--n-300);--bar-labor:var(--n-600);--bar-result:var(--petrol-600);--bar-unknown:var(--amber-300);--radius-xs:6px;--radius-sm:8px;--radius-control:16px;--radius-field:16px;--radius-button:999px;--radius-card:24px;--radius-lg:28px;--radius-xl:32px;--radius-pill:999px;--border-w:1px;--shadow-xs:0 1px 2px #1519150d;--shadow-sm:0 1px 2px #1519150a,0 2px 6px #1519150a;--shadow-md:0 2px 4px #1519150a,0 8px 24px #15191512;--shadow-lg:0 4px 8px #1519150d,0 20px 48px #1519151a;--focus-shadow:0 0 0 2px var(--bg-surface),0 0 0 4px var(--focus-ring);--ease-out:cubic-bezier(.2,.7,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--dur-fast:.12s;--dur-base:.18s;--dur-slow:.28s;--z-nav:40;--z-overlay:60;--z-toast:80}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur-base:0s;--dur-slow:0s}}:root{--space-0:0;--space-0-5:2px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--control-h:44px;--control-h-lg:52px;--control-h-sm:36px;--touch-min:44px;--control-px:14px;--container-max:1200px;--content-max:760px;--navbar-h:64px;--gutter:24px;--gutter-mobile:16px;--font-sans:var(--font-inter,"Inter Variable"),"Inter Variable","Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:ui-monospace,"SF Mono",Menlo,monospace;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-heavy:800;--fs-display:64px;--lh-display:1.02;--ls-display:-.04em;--fs-h1:40px;--lh-h1:1.1;--ls-h1:-.03em;--fs-h2:28px;--lh-h2:1.2;--ls-h2:-.02em;--fs-h3:20px;--lh-h3:1.35;--ls-h3:-.01em;--fs-body-lg:18px;--lh-body-lg:1.55;--fs-body:16px;--lh-body:1.5;--fs-small:14px;--lh-small:1.45;--fs-caption:12px;--lh-caption:1.35;--fs-control:15px;--fs-control-lg:17px;--fs-eyebrow:12px;--ls-eyebrow:.1em;--fs-money-xl:96px;--fs-money-lg:48px;--fs-money-md:28px;--fs-money-sm:16px;--numeric:tabular-nums}@media (max-width:640px){:root{--fs-display:44px;--fs-h1:30px;--fs-h2:24px;--fs-money-xl:68px;--fs-money-lg:38px}}
*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg-page);color:var(--text-body);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--text-strong);font-weight:var(--fw-heavy)}h1{font-size:var(--fs-h1);line-height:var(--lh-h1);letter-spacing:var(--ls-h1)}h2{font-size:var(--fs-h2);line-height:var(--lh-h2);letter-spacing:var(--ls-h2)}h3{font-size:var(--fs-h3);line-height:var(--lh-h3);letter-spacing:var(--ls-h3)}a{color:var(--text-brand);text-underline-offset:3px}:focus-visible{outline-offset:2px;box-shadow:var(--focus-shadow);outline:2px solid #0000}[tabindex="-1"]:focus-visible{box-shadow:none;outline:none}.num{font-variant-numeric:var(--numeric)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--space-4);z-index:var(--z-toast);padding:var(--space-3) var(--space-4);background:var(--action-strong);color:var(--action-strong-text);border-radius:var(--radius-button);text-decoration:none;position:absolute;top:-100px}.skip-link:focus{top:var(--space-3)}.eyebrow{font-size:var(--fs-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;font-weight:var(--fw-bold);color:var(--text-muted)}.muted{color:var(--text-muted)}.small{font-size:var(--fs-small);line-height:var(--lh-small)}.shell{flex-direction:column;min-height:100dvh;display:flex}.navbar{z-index:var(--z-nav);background:var(--bg-surface);border-bottom:var(--border-w) solid var(--border-subtle)}.navbar__inner{max-width:var(--container-max);min-height:var(--navbar-h);padding:0 var(--gutter-mobile);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin:0 auto;display:flex}.brand{align-items:center;gap:var(--space-2);font-weight:var(--fw-heavy);color:var(--text-strong);min-height:var(--touch-min);text-decoration:none;display:inline-flex}.brand__mark{border-radius:var(--radius-pill);background:var(--action-strong);width:32px;height:32px;color:var(--action-primary);place-items:center;display:inline-grid}.nav{gap:var(--space-1);background:var(--action-secondary);padding:var(--space-1);border-radius:var(--radius-pill);border-radius:var(--radius-control);flex-wrap:wrap;order:3;width:100%;display:flex;overflow-x:auto}.nav__link{min-height:var(--touch-min);padding:0 var(--space-4);border-radius:var(--radius-pill);color:var(--text-body);font-size:var(--fs-control);font-weight:var(--fw-semibold);flex:1 0 auto;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.nav__link:hover{background:var(--accent-soft)}.nav__link[aria-current=page]{background:var(--bg-surface);color:var(--text-strong);font-weight:var(--fw-bold);box-shadow:var(--shadow-sm)}.main{width:100%;max-width:var(--container-max);padding:var(--space-6) var(--gutter-mobile) var(--space-16);gap:var(--space-4);flex-direction:column;flex:1;margin:0 auto;display:flex}.page-head{gap:var(--space-2);margin-bottom:var(--space-2);flex-direction:column;display:flex}.grid{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (min-width:768px){.navbar__inner,.main{padding-left:var(--gutter);padding-right:var(--gutter)}.navbar{position:sticky;top:0}.nav{border-radius:var(--radius-pill);width:auto;margin-left:var(--space-4);flex-wrap:nowrap;order:1}.navbar__inner>.btn{order:2;margin-left:auto}.grid--two{grid-template-columns:1fr 1fr}.main{padding-top:var(--space-10)}}.card{background:var(--bg-surface);border-radius:var(--radius-card);padding:var(--space-5) var(--space-4);gap:var(--space-4);flex-direction:column;display:flex}@media (min-width:768px){.card{padding:var(--space-8)}}.card--subtle{background:var(--bg-subtle);--text-muted:var(--n-600)}.card__head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.stats{gap:var(--space-3);grid-template-columns:1fr 1fr;margin:0;display:grid}.stat{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.stat dt{font-size:var(--fs-caption);color:var(--text-muted)}.stat dd{font-size:var(--fs-money-md);line-height:1.1;font-weight:var(--fw-heavy);color:var(--text-strong);overflow-wrap:anywhere;margin:0}.stat dd.stat__text{font-size:var(--fs-h3)}.btn{appearance:none;cursor:pointer;min-height:var(--control-h);padding:0 var(--space-5);border-radius:var(--radius-button);justify-content:center;align-items:center;gap:var(--space-2);font:inherit;font-size:var(--fs-control);font-weight:var(--fw-bold);transition:background var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border:0;text-decoration:none;display:inline-flex}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--action-primary);color:var(--action-primary-text)}.btn--primary:hover{background:var(--action-primary-hover)}.btn--strong{background:var(--action-strong);color:var(--action-strong-text)}.btn--strong:hover{background:var(--action-strong-hover)}.btn--secondary{background:var(--action-secondary);color:var(--text-strong)}.btn--secondary:hover{background:var(--action-secondary-hover)}.card--subtle .btn--secondary{background:var(--bg-surface)}.card--subtle .btn--secondary:hover{background:var(--bg-muted)}.btn--danger{background:var(--danger-bg);color:var(--danger-text)}.btn--danger:hover{background:var(--danger-border)}.btn--block{width:100%}.btn[disabled],.btn[aria-disabled=true]{background:var(--bg-muted);color:var(--text-disabled);cursor:not-allowed}.btn__spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.btn__spinner{border-right-color:currentColor;animation:none}}.actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.badge{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-size:var(--fs-small);font-weight:var(--fw-bold);border:var(--border-w) solid transparent;white-space:nowrap;display:inline-flex}.badge--success{background:var(--success-bg);color:var(--success-text);border-color:var(--success-border)}.badge--pending{background:var(--pending-bg);color:var(--pending-text);border-color:var(--pending-border)}.badge--danger{background:var(--danger-bg);color:var(--danger-text);border-color:var(--danger-border)}.badge--info{background:var(--info-bg);color:var(--info-text);border-color:var(--info-border)}.alert{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-field);border:var(--border-w) solid var(--info-border);background:var(--info-bg);color:var(--info-text);display:flex}.alert__body{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.alert__title{font-weight:var(--fw-bold);color:var(--text-strong)}.alert--danger{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-text)}.alert--pending{background:var(--pending-bg);border-color:var(--pending-border);color:var(--pending-text);border-style:dashed}.alert--success{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.code{font-family:var(--font-mono);font-size:var(--fs-money-md);font-weight:var(--fw-heavy);letter-spacing:.12em;color:var(--text-strong);background:var(--bg-subtle);border-radius:var(--radius-field);padding:var(--space-4);text-align:center;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}@media (min-width:768px){.code{font-size:var(--fs-money-lg)}}.steps{padding-left:var(--space-5);gap:var(--space-2);flex-direction:column;margin:0;display:flex}.audit-list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.audit-row{background:var(--bg-surface);border-radius:var(--radius-field);padding:var(--space-4);gap:var(--space-2);flex-direction:column;display:flex}.audit-row__top{justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;display:flex}.audit-row dl{gap:var(--space-1) var(--space-3);font-size:var(--fs-small);grid-template-columns:auto 1fr;margin:0;display:grid}.audit-row dt{color:var(--text-muted)}.audit-row dd{overflow-wrap:anywhere;margin:0}.table-wrap{display:none}@media (min-width:768px){.audit-list{display:none}.table-wrap{background:var(--bg-surface);border-radius:var(--radius-card);padding:var(--space-4);display:block;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:var(--fs-small)}.table th{text-align:left;color:var(--text-muted);font-weight:var(--fw-semibold);padding:var(--space-3);border-bottom:var(--border-w) solid var(--border-default)}.table td{padding:var(--space-3);border-bottom:var(--border-w) solid var(--border-subtle);overflow-wrap:anywhere}}.state{background:var(--bg-surface);border-radius:var(--radius-card);padding:var(--space-10) var(--space-5);text-align:center;align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.state__icon{border-radius:var(--radius-pill);background:var(--accent-soft);width:56px;height:56px;color:var(--accent-soft-text);place-items:center;display:grid}.state__icon--danger{background:var(--danger-bg);color:var(--danger-text)}.skeleton{background:var(--bg-muted);border-radius:var(--radius-sm);min-height:20px;animation:pulse var(--dur-slow) var(--ease-in-out) infinite alternate}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}@keyframes pulse{to{opacity:.5}}.stack{gap:var(--space-3);flex-direction:column;display:flex}.badge__icon,.alert__icon{flex:none;display:inline-flex}.alert__icon{margin-top:var(--space-0-5)}.state__text{max-width:420px}.alert__actions{margin-top:var(--space-2)}.auth{min-height:100dvh;padding:var(--gutter-mobile);place-items:center;display:grid}.auth__card{width:100%;max-width:440px}.journey{gap:var(--space-3);grid-template-columns:1fr;margin:0;padding:0;list-style:none;display:grid}.journey__step{gap:var(--space-3);background:var(--bg-subtle);border-radius:var(--radius-field);padding:var(--space-4);align-items:flex-start;display:flex}.journey__num{border-radius:var(--radius-pill);background:var(--bg-surface);width:32px;height:32px;color:var(--text-strong);font-weight:var(--fw-bold);flex:none;justify-content:center;align-items:center;display:inline-flex}.journey__body{gap:var(--space-2);flex-direction:column;align-items:flex-start;min-width:0;display:flex}.journey__title{font-weight:var(--fw-semibold);color:var(--text-strong);margin:0}.plan-h{font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:0;font-weight:var(--fw-bold);color:var(--text-strong);margin:0 0 var(--space-2)}.fieldset{gap:var(--space-3);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.fieldset legend{margin-bottom:var(--space-2);padding:0}.catalogs,.prereq,.diff,.perm-list{margin:0;padding:0;list-style:none}.catalogs,.prereq{gap:var(--space-2);flex-direction:column;display:flex}.catalog{background:var(--bg-subtle);border-radius:var(--radius-field)}.catalog .check{padding:var(--space-3) var(--space-4)}.catalog__sha{overflow-wrap:anywhere;display:block}.check{gap:var(--space-3);min-height:var(--touch-min);cursor:pointer;align-items:flex-start;display:flex}.check input{width:24px;height:24px;accent-color:var(--focus-ring);flex:none;margin:10px 0 0}.check>span{padding-top:var(--space-2);overflow-wrap:anywhere;min-width:0}.check--off{cursor:not-allowed;color:var(--text-muted)}.check__hint{display:block}.prereq__row{gap:var(--space-2);align-items:flex-start;display:flex}.prereq__ok{color:var(--success-text);flex:none;margin-top:2px}.prereq__no{color:var(--danger-text);flex:none;margin-top:2px}.diff{gap:var(--space-2);flex-direction:column;display:flex}.diff__row{gap:var(--space-1) var(--space-3);background:var(--bg-subtle);border-radius:var(--radius-field);padding:var(--space-3) var(--space-4);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.diff__row--add{background:var(--accent-soft);color:var(--accent-soft-text)}.diff__title{font-weight:var(--fw-semibold);overflow-wrap:anywhere;margin:0}.diff__tag{font-size:var(--fs-caption);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--ls-eyebrow);grid-column:2}.perm-list{gap:var(--space-2);flex-wrap:wrap;display:flex}.perm{font-family:var(--font-mono);font-size:var(--fs-small);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--bg-muted);color:var(--text-body);overflow-wrap:anywhere}.perm--added{background:var(--accent-soft);color:var(--accent-soft-text);font-weight:var(--fw-bold)}.fingerprint{font-family:var(--font-mono)}.kv{gap:var(--space-1) var(--space-3);font-size:var(--fs-small);grid-template-columns:auto 1fr;margin:0;display:grid}.kv dt{color:var(--text-muted)}.kv dd{overflow-wrap:anywhere;margin:0}.kv__pair{display:contents}.compare{gap:var(--space-3);grid-template-columns:1fr;display:grid}.compare__col{background:var(--bg-subtle);border-radius:var(--radius-field);padding:var(--space-4)}.compare__col--new{background:var(--accent-soft);color:var(--accent-soft-text)}.compare__hash{overflow-wrap:anywhere}.result{background:var(--success-bg);color:var(--success-text);border-radius:var(--radius-field);padding:var(--space-4);gap:var(--space-2);flex-direction:column;display:flex}.result__title{font-weight:var(--fw-bold);margin:0}.inline-icon{vertical-align:-3px;display:inline}.danger-text{color:var(--danger-text)}.btn:disabled{cursor:not-allowed}@media (min-width:640px){.diff__row{grid-template-columns:auto minmax(0,1fr) auto}.diff__tag{grid-column:auto}}@media (min-width:768px){.journey{grid-template-columns:repeat(3,1fr)}.compare{grid-template-columns:1fr 1fr}}.card .check__hint,.card .small{overflow-wrap:anywhere}.journey__step,.catalog,.compare__col,.compare__col--new,.diff__row,.diff__row--add,.check--off{--text-muted:var(--n-600)}
