:root { color-scheme:light; --ink:#1c3035; --muted:#53676b; --teal:#13685e; --line:#d6e2df; --paper:#fcfdfb; --panel:#f1f6f3; --amber:#98521e; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--paper); font:17px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
main { max-width:1056px; padding:2rem 2rem 3rem; margin:auto; }
a { color:var(--teal); text-underline-offset:4px; }
a:hover { text-decoration-thickness:2px; }
:focus-visible { outline:3px solid #277ba1; outline-offset:4px; }
.skip { position:absolute; top:-100px; background:white; padding:.5rem; }
.skip:focus { top:1rem; z-index:2; }
.top { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.8rem; font-size:.88rem; margin-bottom:3.8rem; }
.eyebrow { font-size:.73rem; font-weight:650; letter-spacing:.13em; color:var(--teal); margin:0 0 .9rem; }
h1 { font-family:Georgia,serif; font-size:clamp(2.15rem,5vw,3.3rem); line-height:1.13; font-weight:400; letter-spacing:-.035em; margin:0 0 1.3rem; }
.intro { max-width:720px; font-size:1.12rem; line-height:1.65; margin-bottom:1.2rem; }
.byline { font-size:.88rem; color:var(--muted); margin:0; }
.byline span { display:block; }
header { margin-bottom:2.8rem; }
section { margin-top:2.8rem; }
h2 { font-size:1.25rem; line-height:1.35; letter-spacing:-.02em; margin:0 0 .8rem; }
p { margin:0 0 1rem; }
.section-top { display:flex; align-items:baseline; justify-content:space-between; gap:1rem; flex-wrap:wrap; }
.experiment { background:var(--panel); border:1px solid var(--line); border-radius:8px; padding:1.6rem; }
.help { color:var(--muted); font-size:.92rem; }
fieldset { padding:0; border:0; margin:1.5rem 0; display:grid; grid-template-columns:1fr 1.4fr 1fr; gap:1.4rem; }
label { display:block; font-size:.83rem; font-weight:600; margin-bottom:.5rem; }
select { width:100%; background:white; color:var(--ink); border:1px solid #a6bab5; border-radius:4px; padding:.65rem .6rem; font-size:.92rem; }
input[type=range] { width:100%; margin:.8rem 0 .6rem; accent-color:var(--teal); cursor:pointer; }
output { float:right; font-variant-numeric:tabular-nums; }
.hint { font-size:.78rem; color:var(--muted); line-height:1.5; }
.threshold .hint { display:block; }
button,.button { display:inline-block; background:white; color:var(--ink); border:1px solid #acbeb8; padding:.55rem .8rem; border-radius:4px; font:500 .83rem/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; cursor:pointer; text-decoration:none; }
button:hover,.button:hover { border-color:var(--teal); background:#e9f2ed; }
button:disabled { opacity:.55; cursor:wait; }
.policy-status { font-size:.83rem; border-top:1px solid var(--line); padding-top:1rem; color:var(--teal); min-height:3.1rem; }
.policy-status.exploratory { color:var(--amber); }
.metrics { display:grid; grid-template-columns:1fr 1fr 1.2fr; gap:1rem; padding:.35rem 0 1rem; }
.metric { padding:0 1rem 0 0; border-right:1px solid var(--line); }
.metric:last-child { border:0; padding:0; }
.metric-label { display:block; font-size:.78rem; font-weight:600; }
.metric strong { display:block; font-size:2.7rem; font-weight:500; font-variant-numeric:tabular-nums; letter-spacing:-.04em; margin:.3rem 0; line-height:1.2; }
.metric strong small { font-size:1rem; letter-spacing:0; }
.scope-note { font-size:.8rem; color:var(--muted); margin:.4rem 0 0; max-width:840px; }
.share { margin-top:1.4rem; padding-top:1rem; border-top:1px solid var(--line); }
.share-controls { display:flex; gap:.6rem; }
.share-controls input { min-width:0; flex:1; padding:.55rem; color:var(--ink); background:white; border:1px solid #a6bab5; border-radius:4px; font:.8rem/1.5 monospace; }
.share-controls button { flex-shrink:0; }
.share .hint { margin:.6rem 0 0; }
.day-heading { align-items:center; }
.day-picker { min-width:155px; }
.day-heading .eyebrow { margin-bottom:.45rem; }
.day-heading h2 { margin-bottom:1rem; }
.legend { display:flex; gap:.5rem 1.1rem; flex-wrap:wrap; font-size:.74rem; margin:1.2rem 0; }
.legend span { display:flex; align-items:center; gap:.35rem; }
.legend i { display:inline-block; width:13px; height:10px; }
.line { border-top:2px solid var(--teal); height:0!important; }
.dash { border-top:2px dashed #667b8b; height:0!important; }
.empty { background:#dce6e3; }
.recommend { background:var(--teal); }
.conflict { background:#b45d31; }
.timeline { background:white; border:1px solid var(--line); border-radius:6px; overflow:hidden; min-height:230px; }
.timeline svg { display:block; width:100%; height:auto; }
.timeline>p { padding:1rem; }
.table-scroll { overflow-x:auto; }
table { width:100%; border-collapse:collapse; font-size:.85rem; margin:1rem 0; }
caption { text-align:left; color:var(--muted); font-size:.76rem; padding-bottom:.6rem; }
th,td { text-align:right; padding:.75rem .5rem; border-bottom:1px solid var(--line); font-variant-numeric:tabular-nums; }
th:first-child,td:first-child { text-align:left; }
thead th { font-size:.76rem; font-weight:600; vertical-align:bottom; }
tbody th { font-weight:500; }
#day-table td:first-child { white-space:nowrap; }
.next { border-top:1px solid var(--line); padding-top:2rem; }
.actions { display:flex; gap:.8rem 1.1rem; flex-wrap:wrap; align-items:center; margin:1.2rem 0; }
.actions>a:not(.button) { font-size:.85rem; }
.button { background:var(--teal); color:white; border-color:var(--teal); }
.button:hover { color:var(--ink); }
details { margin-top:1rem; border-top:1px solid var(--line); padding:1rem 0; font-size:.88rem; }
summary { cursor:pointer; font-weight:600; }
details[open] summary { margin-bottom:1rem; }
#provenance { padding-left:1.2rem; font-size:.73rem; overflow-wrap:anywhere; }
footer { margin-top:2.8rem; padding-top:1.2rem; border-top:1px solid var(--line); color:var(--muted); font-size:.75rem; }
footer p { margin-bottom:.5rem; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.error { color:#8b3b1b; padding:1rem; border:1px solid #c89065; border-radius:4px; margin-bottom:1rem; }
[hidden] { display:none!important; }
@media(max-width:700px) { main { padding:1.3rem 1.1rem 2rem; } .top { margin-bottom:2.4rem; } .desktop-break { display:none; } fieldset { grid-template-columns:1fr; gap:1rem; } .experiment { padding:1.2rem; } .metrics { grid-template-columns:1fr; gap:1rem; } .metric { border-right:0; border-bottom:1px solid var(--line); padding:0 0 1rem; } .metric strong { font-size:2.4rem; } .metric-label { font-size:.85rem; } .day-picker { width:100%; } .timeline { min-height:0; } .actions { align-items:stretch; flex-direction:column; } .actions>a,.actions>button { text-align:center; } #comparison { min-width:570px; } }
@media(prefers-reduced-motion:reduce) { * { scroll-behavior:auto!important; } }
