.ledger-root{--accent:var(--emphasis);--accent-dim:color-mix(in srgb, var(--emphasis) 65%, var(--bg));--stamp-green:var(--pass);--stamp-green-dim:var(--pass-soft);--stamp-red:var(--danger);--stamp-red-dim:var(--danger-soft);background:var(--bg);color:var(--ink);font-family:var(--font-body), sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;font-size:16px;line-height:1.55}.ledger-root *{box-sizing:border-box}.ledger-root ::selection{background:var(--accent);color:var(--bg)}.ledger-root h1,.ledger-root h2,.ledger-root h3{font-family:var(--font-display), serif;color:var(--ink);margin:0;font-weight:500}.ledger-root a{color:inherit}.ledger-root .mono{font-family:var(--font-mono), monospace}.ledger-root .wrap{max-width:1080px;margin:0 auto;padding:0 28px}.ledger-root .topbar{z-index:50;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--hairline);position:sticky;top:64px}.ledger-root .topbar .wrap{justify-content:space-between;align-items:center;height:56px;display:flex}.ledger-root .brand{font-family:var(--font-display), serif;letter-spacing:.01em;font-size:18px;font-weight:600}.ledger-root .navlinks{color:var(--ink-dim);gap:26px;font-size:13.5px;display:flex}.ledger-root .navlinks a{text-decoration:none;transition:color .15s}.ledger-root .navlinks a:hover{color:var(--ink)}.ledger-root .hero{border-bottom:1px solid var(--hairline);padding:56px 0 40px}.ledger-root .eyebrow-line{font-family:var(--font-mono), monospace;letter-spacing:.06em;color:var(--ink-dim);border-bottom:1px solid var(--hairline);flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:22px;padding-bottom:14px;font-size:12.5px;display:flex}.ledger-root .hero h1{max-width:16ch;font-size:clamp(30px,4.5vw,44px);line-height:1.1}.ledger-root .hero h1 em{color:var(--accent);font-style:italic;font-weight:500}.ledger-root .hero p.lede{max-width:56ch;color:var(--ink-dim);margin-top:16px;font-size:17px}.ledger-root .hero p.lede b{color:var(--ink);font-weight:600}.ledger-root section{border-bottom:1px solid var(--hairline);padding:88px 0}.ledger-root section.noborder{border-bottom:none}.ledger-root .kicker{font-family:var(--font-mono), monospace;letter-spacing:.06em;color:var(--accent);margin-bottom:14px;font-size:12.5px}.ledger-root .section-head{max-width:70ch;margin-bottom:48px}.ledger-root .section-head h2{margin-bottom:14px;font-size:clamp(26px,3vw,36px)}.ledger-root .section-head p{color:var(--ink-dim);max-width:62ch;font-size:15.5px}.ledger-root .chart-panel{background:var(--surface);border:1px solid var(--hairline);border-radius:2px;padding:28px 28px 12px}.ledger-root #timeline{width:100%;height:auto;display:block}.ledger-root .axis text{fill:var(--ink-dim);font-family:var(--font-mono), monospace;font-size:11px}.ledger-root .axis line,.ledger-root .axis path{stroke:var(--hairline)}.ledger-root .grid line{stroke:var(--hairline);stroke-opacity:.5}.ledger-root .grid path{display:none}.ledger-root .tl-area{fill:url(#ledgerAreaGrad)}.ledger-root .tl-line{fill:none;stroke:var(--accent);stroke-width:2px}.ledger-root .tl-dot{fill:var(--accent);stroke:var(--surface);stroke-width:2px}.ledger-root .tl-hover-line{stroke:var(--ink-dim);stroke-dasharray:2 3}.ledger-root .tooltip{pointer-events:none;background:var(--surface-2);border:1px solid var(--hairline);color:var(--ink);font-family:var(--font-mono), monospace;z-index:200;opacity:0;border-radius:2px;max-width:240px;padding:8px 11px;font-size:12px;transition:opacity .1s;position:fixed;box-shadow:0 8px 24px #0006}.ledger-root .tooltip b{color:var(--accent)}.ledger-root .board{grid-template-columns:1fr;gap:2px;display:grid}.ledger-root .board-row{border-bottom:1px solid var(--hairline);grid-template-columns:34px 190px 1fr 52px;align-items:center;gap:16px;padding:9px 0;display:grid}.ledger-root .board-row .rank{font-family:var(--font-mono), monospace;color:var(--accent-dim);font-size:13px}.ledger-root .board-row .lname{font-size:14.5px;text-decoration:none}.ledger-root .board-row .lname:hover{color:var(--accent);text-decoration:underline}.ledger-root .board-row .bar-track{background:var(--surface-2);height:9px;position:relative;overflow:hidden}.ledger-root .board-row .bar-fill{background:linear-gradient(90deg, var(--accent-dim), var(--accent));width:0%;transition:width .8s cubic-bezier(.2,.8,.2,1);position:absolute;inset:0}.ledger-root .board-row .count{font-family:var(--font-mono), monospace;color:var(--ink-dim);text-align:right;font-size:13px}.ledger-root .pack-wrap{position:relative}.ledger-root #pack{cursor:default;width:100%;height:auto;display:block}.ledger-root .node{cursor:pointer}.ledger-root .node circle{transition:opacity .15s,stroke-width .15s}.ledger-root .node:hover circle{stroke:var(--ink);stroke-width:1.5px}.ledger-root .node text{font-family:var(--font-mono), monospace;fill:var(--ink);pointer-events:none;text-anchor:middle}.ledger-root .legend-row{font-family:var(--font-mono), monospace;color:var(--ink-dim);flex-wrap:wrap;align-items:center;gap:26px;margin-top:18px;font-size:12px;display:flex}.ledger-root .legend-swatch{vertical-align:-1px;border-radius:50%;width:11px;height:11px;margin-right:7px;display:inline-block}.ledger-root .retreat-grid{background:var(--hairline);border:1px solid var(--hairline);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1px;display:grid}.ledger-root .retreat-card{background:var(--surface);cursor:pointer;padding:18px 20px}.ledger-root .retreat-card .rname{font-family:var(--font-display), serif;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:9px;font-size:16.5px;display:flex}.ledger-root .retreat-card .rname .rcount{font-family:var(--font-mono), monospace;color:var(--stamp-red);white-space:nowrap;font-size:12px}.ledger-root .chip-row{flex-wrap:wrap;gap:6px;display:flex}.ledger-root .chip{font-family:var(--font-mono), monospace;border:1px solid var(--stamp-red-dim);color:var(--danger);text-decoration:line-through;-webkit-text-decoration-color:var(--stamp-red);text-decoration-color:var(--stamp-red);border-radius:2px;padding:3px 8px;font-size:11px}.ledger-root .chip.locked{border-style:dashed;border-color:var(--hairline);color:var(--ink-dim);cursor:pointer;text-decoration:none;transition:color .15s,border-color .15s}.ledger-root .chip.locked:hover{color:var(--accent);border-color:var(--accent-dim)}.ledger-root .masked-name{color:var(--ink-dim);font-style:italic}.ledger-root .search-row{flex-wrap:wrap;gap:12px;margin-bottom:28px;display:flex}.ledger-root #search{background:var(--surface);border:1px solid var(--hairline);min-width:240px;color:var(--ink);font-family:var(--font-mono), monospace;border-radius:2px;outline:none;flex:1;padding:13px 16px;font-size:14px}.ledger-root #search::placeholder{color:var(--ink-dim)}.ledger-root #search:focus{border-color:var(--accent-dim)}.ledger-root #search:disabled{opacity:.55;cursor:not-allowed}.ledger-root .sortbtn{background:var(--surface);border:1px solid var(--hairline);color:var(--ink-dim);font-family:var(--font-mono), monospace;cursor:pointer;border-radius:2px;padding:0 16px;font-size:12.5px}.ledger-root .sortbtn.active{color:var(--accent);border-color:var(--accent-dim)}.ledger-root .directory{background:var(--hairline);border:1px solid var(--hairline);grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1px;max-height:640px;display:grid;position:relative;overflow-y:auto}.ledger-root .dir-item{background:var(--surface);cursor:pointer;padding:13px 16px;transition:background .12s}.ledger-root .dir-item:hover{background:var(--surface-2)}.ledger-root .dir-item .dname{margin-bottom:4px;font-size:14px}.ledger-root .dir-item .dmeta{font-family:var(--font-mono), monospace;color:var(--ink-dim);font-size:11px}.ledger-root .dir-item .dmeta .drop{color:var(--stamp-red)}.ledger-root .empty-note{color:var(--ink-dim);font-family:var(--font-mono), monospace;padding:20px;font-size:13px}.ledger-root .gate{text-align:center;background:linear-gradient(180deg, transparent, var(--bg) 55%), var(--surface);border:1px solid var(--hairline);border-top:none;padding:36px 28px;position:relative}.ledger-root .gate .gate-kicker{font-family:var(--font-mono), monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:10px;font-size:11px}.ledger-root .gate h3{margin-bottom:8px;font-size:20px}.ledger-root .gate p{color:var(--ink-dim);max-width:44ch;margin:0 auto 18px;font-size:14.5px}.ledger-root .gate-btn{font-family:var(--font-mono), monospace;letter-spacing:.03em;color:var(--ink);background:var(--accent);cursor:pointer;border:none;border-radius:2px;padding:11px 22px;font-size:13px;text-decoration:none;display:inline-block}.ledger-root .drawer-scrim{opacity:0;pointer-events:none;z-index:300;background:#0a0c1099;transition:opacity .2s;position:fixed;inset:0}.ledger-root .drawer-scrim.open{opacity:1;pointer-events:all}.ledger-root .drawer{background:var(--surface);border-left:1px solid var(--hairline);z-index:301;width:min(480px,92vw);color:var(--ink);font-family:var(--font-body), sans-serif;padding:32px 30px 60px;transition:transform .25s cubic-bezier(.2,.8,.2,1);position:fixed;top:64px;bottom:0;right:0;overflow-y:auto;transform:translate(100%)}.ledger-root .drawer.open{transform:translate(0)}.ledger-root .drawer-close{color:var(--ink-dim);font-family:var(--font-mono), monospace;cursor:pointer;background:0 0;border:none;font-size:20px;line-height:1;position:absolute;top:22px;right:26px}.ledger-root .drawer-close:hover{color:var(--ink)}.ledger-root .drawer h3{margin-bottom:6px;padding-right:40px;font-size:26px}.ledger-root .drawer .durl{font-family:var(--font-mono), monospace;color:var(--accent-dim);margin-bottom:8px;font-size:12px;display:block}.ledger-root .drawer .durl-profile{font-family:var(--font-mono), monospace;color:var(--accent);margin-bottom:22px;font-size:12.5px;text-decoration:none;display:block}.ledger-root .drawer .durl-profile:hover{text-decoration:underline}.ledger-root .drawer .dstats{font-family:var(--font-mono), monospace;color:var(--ink-dim);border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);gap:22px;margin-bottom:28px;padding:14px 0;font-size:12.5px;display:flex}.ledger-root .drawer .dstats b{color:var(--ink);font-size:17px;font-family:var(--font-display), serif;display:block}.ledger-root .drawer h4{font-family:var(--font-mono), monospace;letter-spacing:.05em;color:var(--ink-dim);text-transform:uppercase;margin-bottom:12px;font-size:12px}.ledger-root .drawer-chips{flex-wrap:wrap;gap:7px;margin-bottom:30px;display:flex}.ledger-root .drawer-chip{font-family:var(--font-mono), monospace;border:1px solid var(--stamp-green-dim);color:var(--pass);border-radius:2px;padding:5px 10px;font-size:11.5px}.ledger-root .drawer-chip.dropped{border-color:var(--stamp-red-dim);color:var(--danger);text-decoration:line-through;-webkit-text-decoration-color:var(--stamp-red);text-decoration-color:var(--stamp-red)}.ledger-root .drawer-chip .yr{color:var(--accent);margin-left:5px}.ledger-root footer{font-family:var(--font-mono), monospace;color:var(--ink-dim);padding:40px 0 60px;font-size:12px}@media (max-width:720px){.ledger-root .navlinks{display:none}.ledger-root .board-row{grid-template-columns:26px 120px 1fr 40px;gap:10px}.ledger-root .hero{padding:64px 0 56px}.ledger-root section{padding:56px 0}}@media (prefers-reduced-motion:reduce){.ledger-root *{transition:none!important}}
