:root{--ink: #1c2b33;--paper: #f5f2ea;--surface: #fcfbf7;--stamp: #b3331d;--ledger: #2e5e4e;--graphite: #59636b;--line: #d8d2c4;--font-display: "Source Serif 4", Georgia, serif;--font-sans: "Public Sans", "Helvetica Neue", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--radius: 2px;--shadow-overlay: 0 8px 24px rgb(28 43 51 / .14)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);font-weight:900;line-height:1.08;margin:0}h1{font-size:clamp(34px,5vw,52px)}h2{font-size:30px}h3{font-size:20px;font-weight:700}a{color:var(--ink);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.mono{font-family:var(--font-mono)}.muted{color:var(--graphite)}.small{font-size:13px}.kicker{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--graphite)}.app{min-height:100vh}.shell{display:grid;grid-template-columns:232px 1fr;min-height:100vh}.sidebar{border-right:1px solid var(--line);padding:22px 18px;background:var(--surface);position:sticky;top:0;height:100vh;overflow:auto}.main{padding:34px 40px 80px;max-width:1040px}@media (max-width: 780px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-right:none;border-bottom:1px solid var(--line)}.main{padding:24px 18px 60px}}.navlink{display:block;padding:7px 8px;text-decoration:none;color:var(--ink);border-radius:var(--radius);font-weight:500;font-size:15px}.navlink:hover{background:#1c2b330d}.navlink.active{background:#1c2b3314;font-weight:600}.navgroup{margin-top:20px}.rule{border:0;border-top:1px solid var(--line);margin:28px 0}.section{border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:24px}.row{display:flex;gap:16px;align-items:baseline}.spread{display:flex;justify-content:space-between;align-items:baseline;gap:16px}.stack{display:flex;flex-direction:column;gap:4px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:28px}@media (max-width: 720px){.grid2{grid-template-columns:1fr}}table.ledger{width:100%;border-collapse:collapse;font-size:15px}table.ledger th{text-align:left;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--graphite);font-weight:500;padding:8px 12px 8px 0;border-bottom:1px solid var(--line)}table.ledger td{padding:12px 12px 12px 0;border-bottom:1px solid var(--line);vertical-align:top}table.ledger tr.click{cursor:pointer}table.ledger tr.click:hover td{background:#1c2b3308}button,.btn{font-family:var(--font-sans);font-size:15px;font-weight:600;border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:9px 16px;border-radius:var(--radius);cursor:pointer;transition:opacity .14s ease-out}button:hover,.btn:hover{opacity:.88}button:disabled{opacity:.4;cursor:not-allowed}button.stamp,.btn.stamp{background:var(--stamp);border-color:var(--stamp)}button.ghost,.btn.ghost{background:transparent;color:var(--ink)}button.small{padding:5px 10px;font-size:13px}.doc{border:1px solid var(--line);background:var(--surface);border-radius:0;padding:26px 28px}.doc.paperwatermark{position:relative;overflow:hidden}.chip{font-family:var(--font-mono);font-size:12px;padding:3px 8px;border:1px solid var(--line);border-radius:var(--radius);white-space:nowrap}.chip.stamp{color:var(--stamp);border-color:var(--stamp)}.chip.overdue{color:var(--paper);background:var(--stamp);border-color:var(--stamp)}.chip.ledger{color:var(--ledger);border-color:var(--ledger)}.tag{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--graphite)}label.field{display:block;margin-bottom:14px}label.field>span{display:block;font-size:13px;color:var(--graphite);margin-bottom:4px}input[type=text],input[type=email],input[type=number],select,textarea{width:100%;font-family:var(--font-sans);font-size:15px;padding:9px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink)}textarea{resize:vertical;min-height:90px;line-height:1.45}input:focus,textarea:focus,select:focus{outline:2px solid var(--ink);outline-offset:-1px}.check{display:flex;gap:10px;padding:11px 0;border-bottom:1px solid var(--line);align-items:flex-start}.check .box{font-family:var(--font-mono);font-weight:500;flex:none;width:20px}.check.met .box{color:var(--ledger)}.check.missing .box{color:var(--stamp)}.seal{display:inline-block;vertical-align:middle}.stamp-graphic{display:inline-block;border:2px solid var(--stamp);color:var(--stamp);font-family:var(--font-display);font-weight:900;letter-spacing:.06em;padding:4px 12px;transform:rotate(-6deg);border-radius:var(--radius);text-transform:uppercase}@keyframes sealpress{0%{transform:scale(1.5) rotate(-6deg);opacity:0}60%{transform:scale(.94) rotate(-6deg);opacity:1}to{transform:scale(1) rotate(-6deg);opacity:1}}.sealpress{animation:sealpress .3s ease-out}.banner{border:1px solid var(--line);border-left-width:1px;padding:12px 14px;border-radius:var(--radius);font-size:14px}.banner.deadline{border-color:var(--stamp)}.banner.amber{border-color:var(--stamp);background:#b3331d0d}.banner.note{background:#1c2b3308}.pill-steps{display:flex;gap:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;font-size:13px;font-family:var(--font-mono)}.pill-steps .step{padding:6px 12px;border-right:1px solid var(--line);color:var(--graphite)}.pill-steps .step:last-child{border-right:0}.pill-steps .step.on{background:var(--ink);color:var(--paper)}.pill-steps .step.done{color:var(--ledger)}.exhibit{border:1px solid var(--line);padding:10px 12px;margin-bottom:8px;background:var(--surface)}.exhibit .cap{font-family:var(--font-mono);font-size:12px;color:var(--graphite)}.underline-flag{text-decoration:underline wavy var(--stamp);text-underline-offset:3px}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%);background:var(--ink);color:var(--paper);padding:12px 18px;border-radius:var(--radius);box-shadow:var(--shadow-overlay);font-size:14px;z-index:50}.codeblock{font-family:var(--font-mono);font-size:12.5px;background:var(--surface);border:1px solid var(--line);padding:14px;white-space:pre-wrap;overflow-x:auto;line-height:1.5}.gate-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.gate-card{width:100%;max-width:400px}.badge-mock{font-family:var(--font-mono);font-size:10px;letter-spacing:.05em;text-transform:uppercase;border:1px dashed var(--graphite);color:var(--graphite);padding:2px 6px;border-radius:var(--radius)}
