:root{color-scheme:light;--surface-canvas:#f4f0e5;--surface-panel:#fffdf6;--surface-strong:#191914;--surface-soft:#ebe5d6;--text-primary:#191914;--text-secondary:#5f5a4c;--text-on-strong:#fffdf6;--border-default:#cfc7b4;--border-strong:#25241e;--accent-primary:#f5bd18;--accent-primary-hover:#dfaa0c;--accent-soft:#fff1b8;--status-danger:#c64b3b;--status-safe:#27765b;--focus-ring:#2657d8;--shadow-panel:0 12px 36px #26201214;--radius-sm:.65rem;--radius-md:1rem;--radius-lg:1.4rem;--content-width:72rem;font-synthesis:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--surface-canvas);color:var(--text-primary);margin:0;font-size:1rem;line-height:1.6}a{color:inherit;text-underline-offset:.2em}a:hover{text-decoration-thickness:.14em}button,input,textarea,select{font:inherit}button,.button-link{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-panel);min-height:2.75rem;color:var(--text-primary);cursor:pointer;padding:.66rem .9rem;font-weight:750;transition:background .14s,transform .14s}button:hover,.button-link:hover{background:var(--surface-soft)}button:active,.button-link:active{transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.52}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.skip-link{z-index:100;border-radius:var(--radius-sm);background:var(--surface-strong);color:var(--text-on-strong);padding:.65rem .9rem;position:fixed;top:.5rem;left:.5rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header,.site-footer,main>section,main>article{width:min(calc(100% - 2rem), var(--content-width));margin-inline:auto}.site-header{border-bottom:1px solid var(--border-default);justify-content:space-between;align-items:center;gap:1rem;min-height:4.25rem;display:flex}.brand{letter-spacing:.08em;align-items:center;gap:.65rem;font-size:.84rem;text-decoration:none;display:flex}.brand-mark{border:2px solid var(--text-primary);background:var(--accent-primary);border-radius:50%;place-items:center;width:2rem;height:2rem;font-weight:900;display:grid}.site-header nav{gap:1.2rem;font-size:.9rem;font-weight:700;display:flex}.site-header nav a{text-decoration:none}.eyebrow{border:1px solid var(--border-strong);background:var(--accent-soft);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;margin-bottom:.7rem;padding:.28rem .65rem;font-size:.75rem;font-weight:850;display:inline-flex}.product-intro{align-items:end;gap:1.5rem;padding-block:clamp(1.5rem,3vw,2.25rem) clamp(1.25rem,2.5vw,2rem);display:grid}.product-intro h1{letter-spacing:-.06em;margin:0;font-size:clamp(2.75rem,4.5vw,4.25rem);line-height:.92}.product-intro p{max-width:40rem;color:var(--text-secondary);margin:0;font-size:clamp(1rem,1.4vw,1.15rem)}.solver-shell,.workspace-shell{scroll-margin-top:1rem}.solver-shell{padding-bottom:clamp(2.5rem,5vw,4rem)}.workspace-shell{padding-bottom:4rem}.section-heading{justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:.9rem;display:flex}.section-heading h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,2.8vw,2.4rem);line-height:1}.section-heading p{max-width:40rem;color:var(--text-secondary);margin:0}.module-selector{flex-wrap:wrap;gap:.5rem;margin-bottom:.8rem;display:flex}.module-selector a{border:1px solid var(--border-strong);border-radius:999px;padding:.42rem .8rem;font-size:.85rem;font-weight:750;text-decoration:none}.module-selector a[aria-current=page]{background:var(--surface-strong);color:var(--text-on-strong)}.workbench{gap:1rem;display:grid}.panel{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface-panel);box-shadow:var(--shadow-panel)}.panel-header{border-bottom:1px solid var(--border-default);justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.2rem;display:flex}.panel-header h3{margin:0;font-size:1rem}.panel-body{padding:1.2rem}.solver-panel{overflow:hidden}.solver-form{padding:1.2rem}.solver-fields{gap:0 1rem;display:grid}.solver-fields .field{margin-bottom:.85rem}.solver-fields select,.solver-form>.field select{border:1px solid var(--border-default);border-radius:var(--radius-sm);width:100%;min-height:2.75rem;color:var(--text-primary);background:#fff;padding:.66rem 2.2rem .66rem .85rem}.choice-fieldset{border:0;min-width:0;margin:0 0 .85rem;padding:0}.choice-fieldset legend{margin-bottom:.35rem;font-weight:750}.choice-row{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.choice-row label{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-panel);cursor:pointer;justify-content:center;align-items:center;gap:.45rem;min-height:2.75rem;font-weight:750;display:flex}.choice-row label:has(input:checked){background:var(--surface-strong);color:var(--text-on-strong)}.choice-row input{width:1rem;height:1rem;accent-color:var(--accent-primary)}.solver-submit{width:100%}.solver-output{border-block:1px solid var(--border-default);background:var(--surface-strong);min-height:12.5rem;color:var(--text-on-strong);padding:1.2rem}.solver-action{letter-spacing:-.045em;margin:.6rem 0 0;font-size:clamp(1.9rem,5vw,3.3rem);line-height:1.05}.solver-action strong{color:var(--accent-primary);text-transform:uppercase}.solver-explanation{color:#dcd7ca;max-width:44rem;margin:.7rem 0 1rem}.solver-output button{border-color:var(--accent-primary);background:var(--accent-primary)}.solver-output button:hover{background:var(--accent-primary-hover)}.solver-output .status-message{color:var(--accent-soft)}.solver-placeholder{align-content:center;min-height:10rem;display:grid}.solver-placeholder strong{font-size:1.15rem}.solver-placeholder p{color:#dcd7ca;max-width:36rem;margin:.35rem 0 0}.evidence-pill-verified{background:var(--status-safe);color:#fff}.solver-provenance{color:var(--text-secondary);flex-wrap:wrap;gap:.45rem 1.1rem;padding:.85rem 1.2rem;font-size:.78rem;display:flex}.solver-provenance code{overflow-wrap:anywhere;color:var(--text-primary)}.solver-provenance a{margin-left:auto;font-weight:750}.module-intro h1{font-size:clamp(2.4rem,4.5vw,4rem)}.module-guide{padding-bottom:4rem}.module-guide h2{letter-spacing:-.035em;margin-top:0;font-size:clamp(1.7rem,2.8vw,2.3rem);line-height:1.1}.module-guide ol{max-width:48rem;padding-left:1.25rem}.module-guide p{max-width:48rem;color:var(--text-secondary)}.role-picker{grid-template-columns:1fr 1fr;gap:.55rem;display:grid}.role-button[aria-pressed=true]{background:var(--surface-strong);color:var(--text-on-strong)}.timer{letter-spacing:-.08em;font-variant-numeric:tabular-nums;margin:.6rem 0 1rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(3.5rem,12vw,6rem);font-weight:850;line-height:1}.timer[data-urgent=true]{color:var(--status-danger)}.button-row{flex-wrap:wrap;gap:.55rem;display:flex}.button-primary{background:var(--accent-primary)}.button-primary:hover{background:var(--accent-primary-hover)}.button-danger{border-color:var(--status-danger);color:var(--status-danger)}.strike-row{grid-template-columns:repeat(4,1fr);gap:.45rem;margin-top:1.2rem;display:grid}.strike-button[aria-pressed=true]{border-color:var(--status-danger);background:var(--status-danger);color:#fff}.field{gap:.38rem;margin-bottom:1rem;display:grid}.field label{font-size:.84rem;font-weight:800}.field input,.field textarea{border:1px solid var(--border-default);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);background:#fff;padding:.76rem .85rem}.field textarea{resize:vertical;min-height:6rem}.field-hint{color:var(--text-secondary);margin:-.2rem 0 0;font-size:.78rem}.form-error{color:var(--status-danger);margin:0 0 .8rem;font-weight:700}.save-note{color:var(--text-secondary);font-size:.78rem}.entry-list{gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.entry-card{border:1px solid var(--border-default);border-radius:var(--radius-md);background:#fff;padding:.9rem}.entry-card header{justify-content:space-between;align-items:center;gap:.7rem;display:flex}.entry-card h4{margin:0;font-size:.95rem}.entry-card p{overflow-wrap:anywhere;margin:.4rem 0 .75rem}.evidence-pill{background:var(--surface-soft);color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:.18rem .5rem;font-size:.68rem;font-weight:850;display:inline-flex}.empty-state{border:1px dashed var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);padding:1.25rem}.empty-state strong{color:var(--text-primary);display:block}.status-message{min-height:1.5rem;color:var(--status-safe);margin:.55rem 0 0;font-size:.84rem;font-weight:750}.coverage-note{border-left:5px solid var(--accent-primary);background:#fffdf67a;grid-template-columns:auto minmax(0,1fr);gap:.4rem 1.5rem;padding:1rem 1.2rem;display:grid}.coverage-note p{color:var(--text-secondary);margin:0}.principles{border-top:1px solid var(--border-default);gap:1rem;padding-block:5rem;display:grid}.principles article{border:1px solid var(--border-default);border-radius:var(--radius-md);background:#fffdf694;padding:1.3rem}.principles h2{margin:0;font-size:1.15rem}.principles p{color:var(--text-secondary);margin:.55rem 0 0}.method-banner{border-radius:var(--radius-lg);background:var(--surface-strong);color:var(--text-on-strong);padding:1.2rem}.method-banner a{color:var(--accent-primary)}.article-page{max-width:52rem;padding-block:clamp(3rem,8vw,6rem)}.article-page h1{max-width:12ch;font-size:clamp(2.8rem,8vw,5.2rem)}.article-page .lede{max-width:42rem;color:var(--text-secondary);margin:1.4rem 0 0;font-size:clamp(1.1rem,2vw,1.35rem)}.article-page h2{letter-spacing:-.025em;margin-top:2.5rem;font-size:1.55rem}.article-page p,.article-page li{color:var(--text-secondary)}.article-page strong{color:var(--text-primary)}.evidence-table{border-collapse:collapse;width:100%;margin:1.2rem 0;font-size:.92rem}.evidence-table th,.evidence-table td{border-bottom:1px solid var(--border-default);text-align:left;vertical-align:top;padding:.7rem}.evidence-table th{color:var(--text-primary)}.registry-card{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-panel);padding:1.2rem}.registry-card dl{grid-template-columns:auto 1fr;gap:.4rem 1rem;margin:0;display:grid}.registry-card dd{margin:0;font-family:ui-monospace,monospace}.site-footer{border-top:1px solid var(--border-default);color:var(--text-secondary);justify-content:space-between;align-items:flex-start;gap:2rem;padding-block:2rem;font-size:.84rem;display:flex}.site-footer p{max-width:36rem;margin:.35rem 0 0}.footer-links{align-items:baseline;gap:1rem;display:flex}.footer-link-button{min-height:auto;color:inherit;font-weight:inherit;text-underline-offset:.2em;background:0 0;border:0;border-radius:0;padding:0;text-decoration:underline}.footer-link-button:hover{background:0 0;text-decoration-thickness:.14em}.analytics-consent{z-index:90;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface-panel);gap:1rem;width:min(100% - 2rem,36rem);padding:1.1rem;display:grid;position:fixed;bottom:1rem;right:1rem;box-shadow:0 18px 52px #19191438}.analytics-consent h2{margin:0;font-size:1.05rem}.analytics-consent p{color:var(--text-secondary);margin:.35rem 0 0;font-size:.88rem}.analytics-consent .analytics-consent-status{color:var(--text-primary);font-weight:750}.analytics-consent-actions{flex-wrap:wrap;gap:.5rem;display:flex}@media (width>=56rem){.product-intro{grid-template-columns:minmax(20rem,.8fr) minmax(28rem,1.2fr)}.solver-panel{grid-template-columns:minmax(17rem,.75fr) minmax(26rem,1.25fr);display:grid}.solver-form{align-self:center}.solver-output{border-block:0;border-left:1px solid var(--border-default)}.solver-provenance{border-top:1px solid var(--border-default);grid-column:1/-1}.workbench{grid-template-columns:minmax(17rem,.75fr) minmax(26rem,1.25fr);align-items:start}.session-panel{position:sticky;top:1rem}.principles{grid-template-columns:repeat(3,1fr)}.analytics-consent{grid-template-columns:minmax(0,1fr) auto;align-items:end}}@media (width>=56rem) and (height<=48rem){.site-header{min-height:3.75rem}.product-intro{padding-block:1.25rem}.product-intro h1{font-size:3.25rem}}@media (width<=44rem){.site-header{align-items:flex-start;padding-block:1rem}.site-header nav{text-align:right;grid-template-columns:repeat(2,auto);gap:.2rem .85rem;display:grid}.section-heading,.site-footer{flex-direction:column;align-items:flex-start}.coverage-note{grid-template-columns:1fr}.solver-provenance a{width:100%;margin-left:0}.footer-links{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
