/* Midnight ledger: a single editorial stage, compact evidence rails, no gradients. */
:root{color-scheme:dark;--ink:#e4edf6;--muted:#a3b4c9;--bg:#0b172b;--panel:#11223a;--line:#2c415d;--accent:#66dfc4;--warn:#f1c779;--danger:#ffaaa7;--radius:12px;font-family:"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.6}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}[hidden]{display:none!important}a{color:var(--accent)}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:var(--panel);color:var(--ink);padding:.65rem 1rem;border-radius:8px;min-height:44px}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.55;cursor:wait}button.primary{background:var(--accent);color:#082b2b;border-color:var(--accent);font-weight:650}button.danger{color:var(--danger)}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}input,select,textarea{width:100%;border:1px solid var(--line);background:#0d1b2e;color:var(--ink);padding:.7rem;border-radius:6px;min-height:44px}textarea{min-height:110px;resize:vertical}input[type=checkbox]{width:20px;min-height:20px;accent-color:var(--accent)}label{display:block;margin:0 0 1.1rem}label input,label select,label textarea{margin-top:.4rem}.check{display:flex;align-items:center;gap:.7rem}.check input{margin:0}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2rem,6vw,3.75rem);letter-spacing:-.045em;line-height:1.15;font-weight:650;margin-bottom:1.2rem}h2{font-size:1.3rem;font-weight:600}h3{font-size:1.05rem}p{max-width:72ch}small,.muted{color:var(--muted)}.masthead{max-width:1320px;margin:auto;padding:1.25rem;display:flex;gap:1rem;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;color:var(--ink);font-size:.9rem;max-width:440px}.brand img{flex-shrink:0}.header-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}.badge{display:inline-flex;align-items:center;gap:.4rem;padding:.2rem .55rem;border:1px solid var(--line);border-radius:5px;font-size:.8rem;white-space:nowrap;color:var(--muted)}.badge.good{color:var(--accent);border-color:#2b7468}.badge.warn{color:var(--warn);border-color:#77633b}.badge.bad{color:var(--danger);border-color:#764a51}main{max-width:1240px;margin:auto;padding:2rem 1.25rem;min-height:72vh}.login-layout{display:grid;gap:2.5rem;padding-block:1rem}.login-intro{max-width:620px}.login-intro h1{font-size:clamp(2.75rem,8vw,5.4rem);margin:1rem 0 1.8rem}.boundary{display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;color:var(--muted);font-size:.82rem;padding-top:1.5rem;border-top:1px solid var(--line)}.login-form{border-left:3px solid var(--accent);padding:1.5rem;background:var(--panel);border-radius:0 var(--radius) var(--radius) 0;align-self:center}.login-form .primary{width:100%}.login-form p{font-size:.85rem;margin:1.3rem 0 0}.workspace-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem}.workspace-heading h1{margin-bottom:1rem}.workspace-heading p{margin-bottom:.5rem}.tabs{display:flex;overflow-x:auto;border-bottom:1px solid var(--line);gap:.5rem;margin-bottom:1.25rem;padding-bottom:.5rem}.tabs button{flex-shrink:0;background:transparent;border-color:transparent;border-radius:5px}.tabs button[aria-current=page]{color:var(--accent);border-bottom:2px solid var(--accent)}.trust-strip{display:flex;flex-wrap:wrap;gap:.65rem 1.5rem;padding:1rem 0 1.5rem;font-size:.85rem;color:var(--muted)}.trust-strip strong{font-weight:500;color:var(--ink)}.spread{display:grid;gap:1.75rem}.evidence-rail{border-left:1px solid var(--line);padding-left:1.25rem}.stage{border-top:3px solid var(--accent);padding-top:1.5rem}.hero-rate{font-family:"Bahnschrift","DIN Alternate",monospace;font-size:clamp(3rem,9vw,6rem);line-height:1.15;letter-spacing:-.06em;color:var(--accent);overflow-wrap:anywhere}.metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0}.metric{border-top:1px solid var(--line);padding:.8rem 0}.metric strong{display:block;font-size:1.4rem;font-family:"Bahnschrift",monospace}.metric span{font-size:.85rem;color:var(--muted)}.empty{padding:2.5rem 1.25rem;border:1px dashed var(--line);border-radius:var(--radius);margin:1rem 0}.empty h2{margin-bottom:.6rem}.empty p{margin:0;color:var(--muted)}.section{margin:1.7rem 0}.section-head{display:flex;justify-content:space-between;gap:1rem;align-items:center}.ledger{display:grid;gap:0}.event{border-top:1px solid var(--line);padding:1.2rem 0;display:grid;gap:.7rem}.event .event-title{font-weight:600;overflow-wrap:anywhere}.event time{font-family:"Bahnschrift",monospace;color:var(--muted);font-size:.9rem}.event-info{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.event button{justify-self:start}.event-editor{padding:1rem;background:var(--panel);border-radius:8px}.actions{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0}.panel{border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem}.compact-form{max-width:650px}.notice{max-width:1240px;margin:1rem auto;padding:.8rem 1.25rem;border-left:3px solid var(--warn);background:var(--panel);overflow-wrap:anywhere}.notice.error{border-left-color:var(--danger)}details{border-top:1px solid var(--line);padding:1rem 0}summary{cursor:pointer;color:var(--muted)}.assumptions{padding-left:1.25rem;color:var(--muted);font-size:.9rem;overflow-wrap:anywhere}.calendar-day{margin:1.5rem 0;border-left:2px solid var(--line);padding-left:1rem}.report{border-top:1px solid var(--line);padding:1.2rem 0}.report-body{white-space:pre-wrap;overflow-wrap:anywhere;max-width:75ch}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{padding:.8rem;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}th{color:var(--muted);font-weight:500}.skip-link{position:absolute;left:1rem;top:-100px;padding:.75rem;background:var(--bg);z-index:5}.skip-link:focus{top:1rem}footer{max-width:1240px;margin:1rem auto;padding:1.5rem 1.25rem;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;color:var(--muted);font-size:.8rem}
@media(min-width:780px){main{padding-top:3rem}.login-layout{grid-template-columns:1.3fr 1fr;gap:5rem;padding-block:3rem}.spread{grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:3rem}.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.event{grid-template-columns:165px minmax(0,1fr) auto;align-items:start}.event-editor{grid-column:2/-1}.masthead{padding:1.5rem 2rem}}
@media(max-width:440px){.masthead{align-items:flex-start}.brand{font-size:.78rem}.header-actions .badge{white-space:normal}.workspace-heading{align-items:flex-start}.workspace-heading button{font-size:.85rem}main{padding-inline:1rem}.tabs{margin-inline:-1rem;padding-inline:1rem}.hero-rate{font-size:3rem}.login-form{padding:1.1rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
