:root {
  --ground:#F7F8FA;
  --surface:#FFFFFF;
  --line:#E6E8EC;
  --line-soft:#EEF0F3;
  --ink:#0B1220;
  --muted:#5B6676;
  --faint:#8A93A1;
  --blue:#2563EB;
  --blue-tint:#EEF3FE;
  --amber:#F59E0B;
  --amber-ink:#B4740B;
  --amber-tint:#FEF6E7;
  --card-radius:10px;
  --small-radius:6px;
  --shadow:0 1px 2px rgba(11,18,32,.06);
  --sans:"Inter","Geist",system-ui,-apple-system,"Segoe UI",sans-serif;
  --display:"Geist","Inter",system-ui,sans-serif;
  --mono:"Geist Mono","SFMono-Regular",ui-monospace,monospace;
}

* { box-sizing:border-box; }
html { background:var(--ground); color:var(--ink); scroll-behavior:smooth; -webkit-font-smoothing:antialiased; }
body { margin:0; min-width:320px; background:var(--ground); font:15px/1.5 var(--sans); }
button,input { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }
a { color:inherit; text-decoration:none; }
.mono { font-family:var(--mono); font-variant-numeric:tabular-nums; letter-spacing:-.015em; }
.app-shell { min-height:100vh; display:grid; grid-template-columns:232px minmax(0,1fr); }

.sidebar {
  position:sticky; top:0; z-index:20; height:100vh; padding:16px 12px 14px;
  display:flex; flex-direction:column; background:var(--surface); border-right:1px solid var(--line);
}
.brand { display:flex; align-items:center; gap:10px; padding:6px 8px 16px; }
.brand-mark,.loading-mark,.footer-mark { width:22px; height:22px; flex:0 0 auto; }
.brand-mark path,.loading-mark path,.footer-mark path { fill:none; stroke:var(--ink); stroke-width:2.1; stroke-linecap:square; }
.brand-mark .mark-blue,.loading-mark .mark-blue,.footer-mark .mark-blue { stroke:var(--blue); }
.brand > span { display:flex; flex-direction:column; line-height:1.18; }
.brand strong { font:600 15px var(--display); letter-spacing:-.015em; }
.brand small { color:var(--faint); font:400 11px var(--mono); }

.main-nav { display:flex; flex-direction:column; gap:1px; }
.nav-label { margin:0; padding:14px 8px 6px; color:var(--faint); font-size:11px; font-weight:500; letter-spacing:.08em; text-transform:uppercase; }
.main-nav a { min-height:32px; padding:0 8px; display:flex; align-items:center; gap:9px; border-radius:var(--small-radius); color:var(--muted); font-size:13.5px; }
.main-nav a:hover { background:#F4F5F7; color:var(--ink); }
.main-nav a.active { background:var(--blue-tint); color:var(--blue); font-weight:550; }
.main-nav a i { width:5px; height:5px; flex:0 0 auto; border-radius:50%; background:#C7CCD4; }
.main-nav a.active i { background:var(--blue); }
.main-nav a em { margin-left:auto; color:var(--faint); font:400 11px var(--mono); font-style:normal; }
.main-nav a.active em { color:var(--blue); }
.main-nav .endpoint-link { font:400 12px var(--mono); }
.main-nav .endpoint-link b { width:5px; height:5px; border-radius:50%; background:var(--blue); }
.read-cycle { margin-top:auto; padding:9px 10px; border:1px solid var(--line); border-radius:var(--small-radius); background:#FBFCFD; }
.read-cycle > div { display:flex; align-items:baseline; justify-content:space-between; color:var(--muted); font-size:12px; }
.read-cycle strong { color:var(--ink); font-size:12px; font-weight:500; }
.cycle-track { display:block; height:3px; margin:7px 0 6px; overflow:hidden; border-radius:2px; background:#E9ECF1; }
.cycle-track i { display:block; width:0; height:100%; border-radius:2px; background:var(--blue); transition:width .35s linear; }
.read-cycle small { display:block; color:var(--faint); font-size:10.5px; }

.workspace { min-width:0; }
.topbar {
  position:sticky; top:0; z-index:15; height:53px; padding:0 24px;
  display:flex; align-items:center; justify-content:space-between; gap:18px;
  background:rgba(247,248,250,.9); backdrop-filter:saturate(180%) blur(9px); border-bottom:1px solid var(--line);
}
.breadcrumb { display:flex; align-items:center; gap:8px; min-width:0; color:var(--muted); font-size:13.5px; white-space:nowrap; }
.breadcrumb span { color:#C7CCD4; }
.breadcrumb strong { overflow:hidden; color:var(--ink); font-weight:550; text-overflow:ellipsis; }
.top-actions { display:flex; align-items:center; gap:8px; }
.read-status,.social-pending { height:28px; padding:0 10px; display:inline-flex; align-items:center; gap:7px; border:1px solid var(--line); border-radius:var(--small-radius); background:var(--surface); color:var(--muted); font-size:11px; white-space:nowrap; }
.read-status i { width:6px; height:6px; border-radius:50%; background:var(--blue); }
.read-status.error i { background:var(--amber); }
.social-pending { color:var(--faint); }
.button { height:30px; padding:0 12px; border:1px solid var(--line); border-radius:var(--small-radius); background:var(--surface); color:var(--ink); box-shadow:var(--shadow); cursor:pointer; font-size:13px; font-weight:500; }
.button:hover { background:#F4F5F7; }
.button.primary { border-color:var(--ink); background:var(--ink); color:#fff; }
.button.primary:hover { background:#1A2333; }
.button:focus-visible,a:focus-visible,input:focus-visible { outline:2px solid var(--blue); outline-offset:2px; }

.route-host { min-height:calc(100vh - 53px); padding:20px 18px 28px; }
.route-host:focus { outline:none; }
.route-wrap { width:100%; margin:0; }
.route-wrap > * + * { margin-top:16px; }
.route-title { font:600 44px/1.06 var(--display); letter-spacing:-.033em; }
.route-lede { max-width:690px; margin:10px 0 0; color:var(--muted); font-size:15.5px; }
.eyebrow { margin:0 0 7px; color:var(--faint); font:500 11px var(--mono); letter-spacing:.07em; text-transform:uppercase; }
.card { background:var(--surface); border:1px solid var(--line); border-radius:var(--card-radius); box-shadow:var(--shadow); }
.card-head { min-height:58px; padding:13px 16px; display:flex; align-items:flex-start; justify-content:space-between; gap:16px; border-bottom:1px solid var(--line-soft); }
.card-head h2,.card-head h3 { margin:0; font:600 15px/1.25 var(--display); letter-spacing:-.012em; }
.card-head p { margin:3px 0 0; color:var(--muted); font:400 11.5px var(--mono); }
.head-side { display:flex; align-items:center; gap:9px; color:var(--faint); font:400 11px var(--mono); }
.badge { min-height:22px; padding:2px 8px; display:inline-flex; align-items:center; gap:6px; border-radius:var(--small-radius); font-size:11.5px; font-weight:550; }
.badge.blue { background:var(--blue-tint); color:var(--blue); }
.badge.amber { background:var(--amber-tint); color:var(--amber-ink); }
.badge i { width:5px; height:5px; border-radius:50%; background:currentColor; }
.badge.blue i { animation:pulse 2.4s ease-in-out infinite; }
.read-at { margin:6px 0 0; color:var(--faint); font:400 10.5px/1.45 var(--mono); }
.source-link { color:var(--blue); }
.source-link:hover { text-decoration:underline; }
.empty-reading { padding:18px 16px; color:var(--faint); font:400 12px var(--mono); }

.home-open { padding:3px 0 5px; display:grid; grid-template-columns:minmax(0,720px) auto; align-items:end; gap:24px; }
.home-open h1 { margin:0; font:600 44px/1.06 var(--display); letter-spacing:-.033em; }
.home-open .open-stamp { padding-bottom:3px; color:var(--faint); font:400 11px/1.5 var(--mono); text-align:right; }
.scrub-stage { position:relative; min-height:0; }
.hero-console { height:calc(100vh - 92px); min-height:620px; max-height:900px; overflow:hidden; display:flex; flex-direction:column; }
.spine-summary { padding:15px 16px 10px; display:flex; align-items:baseline; justify-content:space-between; gap:18px; }
.spine-summary p { margin:0; color:var(--muted); font-size:13px; }
.spine-summary strong { color:var(--ink); font:600 19px var(--mono); }
.spine-bar { height:6px; margin:0 16px; overflow:hidden; border-radius:3px; background:#EDEFF3; }
.spine-bar i { display:block; width:0; height:100%; border-radius:3px; background:var(--blue); transition:width .8s ease-out; }
.spine-readout { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top:14px; border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft); }
.readout-cell { min-width:0; padding:14px 16px 15px; border-right:1px solid var(--line-soft); }
.readout-cell:last-child { border-right:0; background:#FDFCFA; }
.readout-cell label { display:block; color:var(--faint); font-size:11px; font-weight:500; letter-spacing:.07em; text-transform:uppercase; }
.readout-cell strong { display:block; margin-top:6px; overflow:hidden; color:var(--ink); font:500 26px/1.1 var(--mono); letter-spacing:-.025em; text-overflow:ellipsis; white-space:nowrap; }
.readout-cell.open strong { color:var(--amber-ink); font-size:14px; line-height:1.8; letter-spacing:-.01em; }
.scan-window { position:relative; min-height:250px; flex:1; overflow:hidden; display:flex; flex-direction:column; background:#fff; }
.scan-scroll { min-height:0; flex:1; overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; display:flex; flex-direction:column; }
.spine-table-head { position:sticky; top:0; z-index:5; min-height:35px; padding:8px 16px; flex:0 0 auto; display:grid; grid-template-columns:140px minmax(100px,1fr) 100px minmax(150px,1.35fr); align-items:center; gap:12px; border-bottom:1px solid var(--line-soft); background:rgba(251,252,253,.96); color:var(--faint); font:500 9.5px var(--mono); letter-spacing:.06em; text-transform:uppercase; backdrop-filter:blur(8px); }
.spine-table-head span:nth-child(2) { text-align:right; }
.scrub-sheet { position:relative; flex:1 0 auto; display:flex; flex-direction:column; }
.contract-rung { min-height:56px; padding:9px 16px; flex:1 0 56px; display:grid; grid-template-columns:140px minmax(100px,1fr) 100px minmax(150px,1.35fr); align-items:center; gap:12px; border-top:1px solid var(--line-soft); }
.contract-rung:last-child { border-bottom:1px solid var(--line-soft); }
.contract-rung .rung-symbol { display:flex; align-items:center; gap:9px; min-width:0; }
.contract-rung .rung-symbol > span:last-child { display:flex; min-width:0; flex-direction:column; }
.contract-rung .rung-symbol b { font:550 13px var(--mono); }
.contract-rung .rung-symbol small { overflow:hidden; color:var(--faint); font:400 10px var(--mono); text-overflow:ellipsis; white-space:nowrap; }
.rung-supply { text-align:right; font:500 13px var(--mono); }
.rung-track { position:relative; height:8px; border-radius:4px; background:#F0F2F5; }
.rung-track i { position:absolute; inset:0 auto 0 0; width:100%; border-radius:4px; background:#BFD0F7; }
.contract-rung.open .rung-track i { width:52%; background:#F6DCA8; }
.rung-state { color:var(--blue); font:500 11px var(--mono); }
.contract-rung.open .rung-state { color:var(--amber-ink); }
.hero-rail { min-height:47px; padding:9px 16px; display:flex; align-items:center; justify-content:space-between; gap:16px; background:#FBFCFD; }
.spine-footer { flex:0 0 auto; border-top:1px solid var(--line-soft); }
.ca-line { display:flex; align-items:center; gap:9px; color:var(--muted); font-size:12px; }
.ca-line strong { color:var(--ink); font:500 11px var(--mono); }
.rail-actions { display:flex; align-items:center; gap:8px; }
.text-button { border:0; background:none; color:var(--blue); cursor:pointer; font-size:12px; font-weight:550; }
.text-button[aria-disabled="true"] { cursor:default; color:var(--faint); }

.home-support { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(390px,1fr); gap:14px; align-items:stretch; }
.compact-table,.data-table { width:100%; border-collapse:collapse; table-layout:fixed; }
.compact-table th,.data-table th { padding:9px 14px; border-bottom:1px solid var(--line-soft); background:#FBFCFD; color:var(--faint); font-size:10.5px; font-weight:500; letter-spacing:.06em; text-align:left; text-transform:uppercase; }
.compact-table td,.data-table td { padding:10px 14px; border-bottom:1px solid var(--line-soft); font-size:12.5px; vertical-align:middle; }
.compact-table tr:last-child td,.data-table tr:last-child td { border-bottom:0; }
.compact-table tbody tr:hover td,.data-table tbody tr:hover td { background:#FBFCFD; }
.num { text-align:right!important; font-family:var(--mono); font-variant-numeric:tabular-nums; }
.token-cell { min-width:0; }
.token-identity,.token-heading { display:flex; align-items:center; gap:9px; min-width:0; }
.token-identity > span:last-child,.token-heading > div { min-width:0; }
.token-logo { width:30px; height:30px; flex:0 0 auto; display:grid; place-items:center; overflow:hidden; border:1px solid var(--line); border-radius:7px; background:#fff; }
.token-logo img { width:76%; height:76%; display:block; object-fit:contain; }
.token-logo.is-wide img { width:88%; height:88%; }
.token-logo.compact { width:25px; height:25px; border-radius:6px; }
.token-logo.sheet-logo { width:92px; height:92px; border:0; border-radius:0; background:transparent; }
.token-logo.sheet-logo img { width:88%; height:88%; }
.token-logo.is-empty { background:#FBFCFD; }
.token-cell b { display:block; font:550 12.5px var(--mono); }
.token-cell small { display:block; overflow:hidden; color:var(--faint); font:400 10px var(--mono); text-overflow:ellipsis; white-space:nowrap; }
.name-stack { list-style:none; margin:0; padding:10px 14px 5px; }
.name-stack li { padding:7px 0; display:grid; grid-template-columns:minmax(110px,.85fr) minmax(80px,1fr) 72px; align-items:center; gap:10px; border-bottom:1px solid var(--line-soft); }
.name-stack li:last-child { border-bottom:0; }
.name-stack .stack-identity { display:flex; align-items:center; gap:7px; min-width:0; }
.name-stack .stack-identity > span:last-child { min-width:0; }
.name-stack .stack-identity b,.name-stack .stack-identity small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.name-stack .stack-identity b { font:550 10.5px var(--mono); }
.name-stack .stack-identity small { color:var(--faint); font:400 9.5px var(--mono); }
.name-stack .stack-address { overflow:hidden; color:var(--muted); font:400 10.5px var(--mono); text-overflow:ellipsis; }
.stack-bar { height:14px; overflow:hidden; border-radius:3px; background:#F1F3F6; }
.stack-bar i { display:block; width:0; height:100%; border-radius:3px; background:#BFD0F7; transition:width .8s ease-out; }
.name-stack li:nth-child(2n) .stack-bar i { background:#F6DCA8; }
.stack-number { text-align:right; font:500 10.5px var(--mono); }
.rich-stack li { grid-template-columns:minmax(105px,.85fr) minmax(65px,1fr) 68px 82px; }
.stack-meta { color:var(--faint); font:400 9px/1.45 var(--mono); text-align:right; }
.home-name-stack { display:flex; flex-direction:column; }
.stack-summary { margin-top:auto; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft); }
.stack-summary > div { min-width:0; padding:10px 9px; border-right:1px solid var(--line-soft); }
.stack-summary > div:last-child { border-right:0; }
.stack-summary label { display:block; color:var(--faint); font:500 8.5px var(--mono); letter-spacing:.05em; text-transform:uppercase; }
.stack-summary strong { display:block; margin-top:4px; overflow:hidden; font:550 11px var(--mono); text-overflow:ellipsis; white-space:nowrap; }
.stack-note { margin:0; padding:7px 14px 13px; color:var(--faint); font:400 10.5px var(--mono); }

.names-open { min-height:188px; padding:24px; display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:18px 42px; align-items:start; }
.names-open h1 { margin:0; font:600 40px/1.06 var(--display); letter-spacing:-.032em; }
.names-index-panel { grid-column:2; grid-row:1 / span 2; align-self:stretch; display:flex; flex-direction:column; justify-content:space-between; gap:18px; }
.names-index-panel p { margin:0; color:var(--faint); font:500 11px var(--mono); letter-spacing:.07em; text-align:right; text-transform:uppercase; }
.names-open .alphabet { display:grid; grid-template-columns:repeat(7,1fr); gap:5px; }
.names-intro { max-width:650px; align-self:end; color:var(--muted); font-size:15.5px; }
.alphabet span { height:29px; display:grid; place-items:center; border:1px solid var(--line-soft); border-radius:5px; color:var(--faint); font:500 11px var(--mono); }
.alphabet span.hit { border-color:#C9D6F6; background:var(--blue-tint); color:var(--blue); }
.filter-row { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.filter-field { width:min(360px,100%); height:34px; padding:0 11px; border:1px solid var(--line); border-radius:var(--small-radius); background:var(--surface); color:var(--ink); }
.filter-row p { margin:0; color:var(--faint); font:400 11px var(--mono); }
.table-scroll { overflow:auto; }
.data-table .address { max-width:210px; overflow:hidden; color:var(--faint); font:400 10.5px var(--mono); text-overflow:ellipsis; white-space:nowrap; }
.state-copy { color:var(--faint); font:400 10.5px var(--mono); }

.sheet-open { padding:20px; display:grid; grid-template-columns:190px minmax(0,1fr) auto; gap:20px; align-items:center; }
.sheet-monogram { height:140px; display:grid; place-items:center; border:1px solid var(--line-soft); border-radius:8px; background:#FBFCFD; }
.sheet-identity { grid-column:2; grid-row:1; }
.sheet-open h1 { margin:0; font:600 36px/1.08 var(--display); letter-spacing:-.03em; }
.sheet-open .full-address { max-width:650px; margin:0 0 9px; overflow-wrap:anywhere; color:var(--muted); font:400 12px var(--mono); }
.sheet-identity > span { display:block; margin-top:9px; color:var(--faint); font:500 11px var(--mono); letter-spacing:.07em; text-transform:uppercase; }
.sheet-tally { grid-column:3; grid-row:1; min-width:145px; text-align:right; }
.sheet-tally strong { display:block; font:500 31px var(--mono); }
.sheet-tally span { color:var(--faint); font-size:11px; text-transform:uppercase; letter-spacing:.07em; }
.detail-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr); gap:14px; align-items:stretch; }
.detail-main { min-width:0; }
.sheet-stack-card { height:100%; display:flex; flex-direction:column; }
.sheet-stack-card .empty-reading { margin-top:auto; }
.contract-card + .contract-card { margin-top:12px; }
.contract-metrics { display:grid; grid-template-columns:repeat(3,1fr); }
.metric { min-width:0; padding:15px 16px; border-right:1px solid var(--line-soft); }
.metric:last-child { border-right:0; }
.metric label { display:block; color:var(--faint); font-size:10.5px; letter-spacing:.06em; text-transform:uppercase; }
.metric strong { display:block; margin-top:5px; overflow-wrap:anywhere; font:500 16px var(--mono); }
.pool-list { list-style:none; margin:0; padding:8px 14px 12px; }
.pool-list li { padding:9px 0; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; border-bottom:1px solid var(--line-soft); }
.pool-list li:last-child { border-bottom:0; }
.pool-list b { display:block; font:500 11.5px var(--mono); }
.pool-list small { color:var(--faint); font:400 10.5px var(--mono); }
.pool-list span { text-align:right; color:var(--muted); font:400 11px var(--mono); }

.reserve-open { min-height:260px; padding:0; position:relative; overflow:hidden; display:grid; grid-template-columns:1fr 1fr; grid-template-rows:auto 1fr; }
.reserve-open::after { content:""; position:absolute; top:0; bottom:0; left:50%; width:1px; background:var(--line-soft); }
.reserve-heading { grid-column:1; grid-row:1; padding:24px 24px 0; }
.reserve-heading > span { display:block; margin-bottom:7px; color:var(--faint); font:500 11px var(--mono); letter-spacing:.07em; text-transform:uppercase; }
.reserve-open h1 { margin:0; font:600 40px/1.06 var(--display); letter-spacing:-.032em; }
.reserve-context { grid-column:1; grid-row:2; align-self:end; padding:16px 24px 24px; color:var(--muted); font-size:15.5px; font-style:normal; }
.reserve-scale { grid-column:2; grid-row:1 / span 2; padding:26px 24px; display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.scale-column { display:flex; flex-direction:column; justify-content:space-between; }
.scale-column span { color:var(--faint); font:500 10px var(--mono); text-transform:uppercase; }
.scale-column strong { font:500 28px var(--mono); }
.scale-rule { height:5px; border-radius:3px; background:#BFD0F7; }
.scale-column:last-child .scale-rule { width:54%; background:#F6DCA8; }
.two-column-list { padding:0 16px 15px; }
.two-column-row { display:grid; grid-template-columns:minmax(180px,.75fr) minmax(230px,1fr) 34px minmax(230px,1fr); align-items:stretch; border-bottom:1px solid var(--line-soft); }
.two-column-row:last-child { border-bottom:0; }
.two-column-row > div { min-width:0; padding:14px 12px; }
.two-column-row .bridge { display:grid; place-items:center; padding:0; color:var(--amber-ink); font:500 15px var(--mono); }
.two-column-row label { display:block; color:var(--faint); font-size:10px; letter-spacing:.06em; text-transform:uppercase; }
.two-column-row strong { display:block; margin-top:5px; overflow-wrap:anywhere; font:500 15px/1.35 var(--mono); }
.two-column-row .identity strong { color:var(--ink); }
.two-column-row .reserve-side { background:#FDFCFA; }
.issuer-note { padding:15px 16px; display:grid; grid-template-columns:160px 1fr auto; gap:16px; align-items:center; }
.issuer-note strong { font:600 13px var(--display); }
.issuer-note p { margin:0; color:var(--muted); font-size:13px; }

.movement-open { min-height:230px; padding:23px; display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,.75fr); grid-template-rows:auto 1fr; gap:14px 26px; }
.movement-heading { grid-column:1; grid-row:1; }
.movement-open h1 { margin:0; max-width:520px; font:600 40px/1.06 var(--display); letter-spacing:-.032em; }
.movement-heading > span { display:block; margin-top:10px; color:var(--faint); font:500 11px var(--mono); letter-spacing:.07em; text-transform:uppercase; }
.ledger-line { position:relative; min-height:150px; grid-column:2; grid-row:1 / span 2; align-self:center; }
.movement-brief { grid-column:1; grid-row:2; align-self:end; display:grid; gap:4px; color:var(--muted); font-size:13px; }
.movement-brief small { color:var(--faint); font:400 10.5px var(--mono); }
.ledger-line::before { content:""; position:absolute; left:0; right:0; top:50%; height:1px; background:var(--line); }
.ledger-dot { position:absolute; top:calc(50% - 5px); width:10px; height:10px; border-radius:50%; background:var(--blue); }
.ledger-dot.amber { background:var(--amber); }
.ledger-dot span { position:absolute; top:17px; left:50%; color:var(--faint); font:400 9px var(--mono); transform:translateX(-50%); }
.movement-table td:first-child { font-weight:550; }
.movement-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.movement-kpis article { min-width:0; padding:14px 16px; }
.movement-kpis label { display:block; color:var(--faint); font:500 9.5px var(--mono); letter-spacing:.06em; text-transform:uppercase; }
.movement-kpis strong { display:block; margin:5px 0 2px; font:550 23px var(--mono); }
.movement-kpis small { display:block; overflow:hidden; color:var(--muted); font:400 10px var(--mono); text-overflow:ellipsis; white-space:nowrap; }
.daily-summary { overflow:hidden; }
.day-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); }
.day-card { min-width:0; padding:13px 16px; border-right:1px solid var(--line-soft); }
.day-card:last-child { border-right:0; }
.day-card span,.day-card small { display:block; color:var(--faint); font:400 10px var(--mono); }
.day-card strong { display:block; margin:4px 0; font:550 13px var(--mono); }
.movement-workspace { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:14px; align-items:start; }
.movement-ledger { min-width:0; height:100%; display:flex; flex-direction:column; }
.movement-filters { padding:11px 14px; display:grid; grid-template-columns:170px 210px minmax(180px,1fr); gap:10px; border-bottom:1px solid var(--line-soft); background:#FBFCFD; }
.movement-filters label { min-width:0; }
.movement-filters label > span { display:block; margin-bottom:4px; color:var(--faint); font:500 9px var(--mono); letter-spacing:.05em; text-transform:uppercase; }
.movement-filters select,.movement-filters input { width:100%; height:33px; padding:0 9px; border:1px solid var(--line); border-radius:var(--small-radius); background:#fff; color:var(--ink); font-size:12px; }
.movement-table { min-width:1040px; }
.movement-table th:nth-child(1) { width:92px; }
.movement-table th:nth-child(2) { width:174px; }
.movement-table th:nth-child(3) { width:86px; }
.movement-table th:nth-child(4) { width:160px; }
.movement-table th:nth-child(5) { width:145px; }
.movement-table th:nth-child(6) { width:155px; }
.movement-table .raw-amount { max-width:160px; overflow:hidden; font:400 10.5px var(--mono); text-overflow:ellipsis; white-space:nowrap; }
.ledger-insights { margin-top:auto; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line-soft); background:#FBFCFD; }
.ledger-insights > div { min-width:0; padding:12px 14px; border-right:1px solid var(--line-soft); }
.ledger-insights > div:last-child { border-right:0; }
.ledger-insights label,.ledger-insights small { display:block; color:var(--faint); font:400 9px/1.45 var(--mono); }
.ledger-insights label { font-weight:500; letter-spacing:.05em; text-transform:uppercase; }
.ledger-insights strong { display:block; margin:4px 0 2px; overflow:hidden; font:550 10.5px var(--mono); text-overflow:ellipsis; white-space:nowrap; }
.movement-side { display:grid; gap:14px; }
.scope-list { margin:0; padding:5px 14px 11px; }
.scope-list > div { padding:9px 0; display:grid; grid-template-columns:72px minmax(0,1fr); gap:10px; border-bottom:1px solid var(--line-soft); }
.scope-list > div:last-child { border-bottom:0; }
.scope-list dt { color:var(--faint); font-size:10px; text-transform:uppercase; }
.scope-list dd { margin:0; overflow-wrap:anywhere; color:var(--ink); font:400 10.5px var(--mono); text-align:right; }
.direction-key > div:not(.card-head) { padding:11px 14px; display:flex; align-items:flex-start; gap:10px; border-bottom:1px solid var(--line-soft); }
.direction-key > div:last-child { border-bottom:0; }
.direction-key p { margin:0; color:var(--muted); font:400 10px/1.5 var(--mono); }
.key-dot { width:9px; height:9px; margin-top:4px; flex:0 0 auto; border-radius:50%; background:var(--blue); }
.key-dot.burn { background:var(--amber); }
.movement-caveat { padding:14px; background:#FDFCFA; }
.movement-caveat h3 { margin:0; font:600 13px var(--display); }
.movement-caveat p { margin:7px 0 0; color:var(--muted); font-size:11.5px; }
.kind-mint { color:var(--blue); }
.kind-burn { color:var(--amber-ink); }
.statement-strip { padding:15px 16px; display:flex; align-items:center; justify-content:space-between; gap:18px; }
.statement-strip p { margin:0; color:var(--muted); font-size:13px; }

.counting-open { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:14px; }
.counting-intro { padding:25px; min-height:228px; }
.counting-intro h1 { margin:0; max-width:670px; font:600 40px/1.06 var(--display); letter-spacing:-.032em; }
.counting-intro p { max-width:680px; margin:13px 0 0; color:var(--muted); }
.formula-card { padding:18px; display:flex; flex-direction:column; justify-content:space-between; background:#FBFCFD; }
.formula-card .formula { margin:12px 0; color:var(--ink); font:500 13px/1.6 var(--mono); }
.formula-card small { color:var(--faint); font:400 10.5px var(--mono); }
.recipe-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.recipe { padding:16px; min-height:175px; }
.recipe h2 { margin:0; font:600 14px var(--display); }
.recipe code { display:block; margin-top:15px; overflow-wrap:anywhere; color:var(--muted); font:400 11px/1.65 var(--mono); }
.limits { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); overflow:hidden; }
.limit { min-width:0; padding:15px; border-right:1px solid var(--line-soft); }
.limit:last-child { border-right:0; }
.limit b { display:block; color:var(--blue); font:500 11px var(--mono); }
.limit h3 { margin:8px 0 0; font:600 13px/1.35 var(--display); }
.limit p { margin:8px 0 0; color:var(--muted); font-size:11.5px; }
.address-book { display:grid; grid-template-columns:repeat(2,1fr); }
.address-entry { min-width:0; padding:13px 16px; border-right:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft); }
.address-entry:nth-child(2n) { border-right:0; }
.address-entry label { display:block; color:var(--faint); font-size:10px; text-transform:uppercase; letter-spacing:.06em; }
.address-entry code { display:block; margin-top:5px; overflow-wrap:anywhere; font:400 11px var(--mono); }
.launch-facts { padding:16px; }
.launch-facts h2 { margin:0 0 12px; font:600 15px var(--display); }
.launch-facts p { margin:7px 0; color:var(--muted); font-size:13px; }
.launch-facts strong { color:var(--ink); }

.site-footer { margin-top:18px; padding:17px 2px 4px; display:grid; grid-template-columns:auto 1fr auto; gap:14px; align-items:center; border-top:1px solid var(--line); }
.site-footer p { margin:0; color:var(--muted); font-size:13px; }
.site-footer small { display:block; margin-top:4px; color:var(--faint); font:400 10.5px var(--mono); }
.footer-mark { width:20px; height:20px; }
.footer-links { display:flex; gap:12px; color:var(--faint); font:400 11px var(--mono); }
.footer-links a:hover { color:var(--blue); }
.loading-card { min-height:65vh; display:grid; place-items:center; align-content:center; gap:12px; color:var(--muted); }
.loading-mark { width:38px; height:38px; }
.loading-card p { margin:0; }
.noscript-card { position:fixed; inset:20px; z-index:90; padding:24px; border:1px solid var(--line); border-radius:var(--card-radius); background:var(--surface); }
.noscript-card h1 { margin:0; font:600 34px var(--display); }
.noscript-card p { color:var(--muted); }

.motion-ready .reveal-item { opacity:0; transform:translateY(12px); transition:opacity .55s ease-out,transform .55s ease-out; }
.motion-ready .reveal-item.is-visible { opacity:1; transform:translateY(0); }
.motion-ready tbody tr.reveal-item:nth-child(2n) { transition-delay:.04s; }

@keyframes pulse {
  0%,100% { opacity:.55; transform:scale(.9); }
  50% { opacity:1; transform:scale(1.18); }
}

@media (max-width:1100px) {
  .social-pending { display:none; }
  .home-support,.detail-grid { grid-template-columns:1fr; }
  .movement-workspace { grid-template-columns:1fr; }
  .movement-side { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .limits { grid-template-columns:repeat(2,1fr); }
  .limit { border-bottom:1px solid var(--line-soft); }
  .counting-open { grid-template-columns:1fr; }
}

@media (max-width:900px) {
  .app-shell { grid-template-columns:1fr; }
  .sidebar { position:sticky; top:0; height:auto; padding:9px 12px; flex-direction:row; align-items:center; gap:8px; overflow-x:auto; border-right:0; border-bottom:1px solid var(--line); }
  .brand { padding:0 8px 0 0; flex:0 0 auto; }
  .brand small,.nav-label,.endpoint-link,.read-cycle { display:none!important; }
  .main-nav { flex-direction:row; flex:0 0 auto; }
  .main-nav a { min-height:30px; padding:0 8px; white-space:nowrap; font-size:12.5px; }
  .main-nav a em { display:none; }
  .topbar { top:49px; height:auto; min-height:50px; padding:9px 14px; }
  .breadcrumb { display:none; }
  .top-actions { width:100%; }
  .read-status { flex:1; justify-content:center; overflow:hidden; text-overflow:ellipsis; }
  .route-host { min-height:calc(100vh - 99px); padding:16px 14px 24px; }
  .route-title,.home-open h1 { font-size:31px; letter-spacing:-.028em; }
  .home-open { grid-template-columns:1fr; gap:8px; }
  .home-open .open-stamp { text-align:left; }
  .hero-console { height:calc(100svh - 128px); min-height:620px; }
  .spine-readout { grid-template-columns:repeat(3,minmax(160px,1fr)); overflow-x:auto; }
  .readout-cell { padding:10px 12px 11px; }
  .readout-cell strong { font-size:18px; }
  .readout-cell.open strong { font-size:12px; }
  .scan-window { min-height:245px; }
  .spine-table-head { grid-template-columns:90px 1fr; gap:6px 10px; }
  .spine-table-head span:nth-child(3),.spine-table-head span:nth-child(4) { display:none; }
  .contract-rung { min-height:74px; flex-basis:74px; grid-template-columns:90px 1fr; gap:6px 10px; }
  .rung-track { order:3; grid-column:1 / -1; }
  .rung-state { text-align:right; }
  .hero-rail { align-items:flex-start; flex-direction:column; }
  .names-open { grid-template-columns:1fr; gap:22px; }
  .names-index-panel { grid-column:1; grid-row:auto; }
  .names-index-panel p { text-align:left; }
  .names-open h1,.reserve-open h1,.movement-open h1,.counting-intro h1 { font-size:31px; }
  .sheet-open { grid-template-columns:80px 1fr; }
  .sheet-monogram { height:80px; font-size:25px; }
  .sheet-identity { grid-column:2; grid-row:1; }
  .sheet-tally { grid-column:1 / -1; grid-row:2; text-align:left; }
  .contract-metrics { grid-template-columns:1fr; }
  .metric { border-right:0; border-bottom:1px solid var(--line-soft); }
  .metric:last-child { border-bottom:0; }
  .reserve-open { min-height:0; grid-template-columns:1fr; grid-template-rows:auto auto auto; }
  .reserve-open::after { display:none; }
  .reserve-heading { grid-column:1; grid-row:1; }
  .reserve-context { grid-column:1; grid-row:2; align-self:auto; }
  .reserve-scale { grid-column:1; grid-row:3; height:150px; padding:22px 24px; border-top:1px solid var(--line-soft); }
  .two-column-row { grid-template-columns:1fr; }
  .two-column-row .bridge { min-height:24px; transform:rotate(90deg); }
  .issuer-note { grid-template-columns:1fr; }
  .movement-open { grid-template-columns:1fr; grid-template-rows:auto auto auto; }
  .movement-heading,.ledger-line,.movement-brief { grid-column:1; grid-row:auto; }
  .movement-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .recipe-grid { grid-template-columns:1fr; }
  .limits { grid-template-columns:1fr; }
  .limit { border-right:0; }
  .address-book { grid-template-columns:1fr; }
  .address-entry { border-right:0; }
  .site-footer { grid-template-columns:auto 1fr; }
  .footer-links { grid-column:1 / -1; flex-wrap:wrap; }
}

@media (max-width:560px) {
  .brand span { display:none; }
  .topbar { top:49px; }
  .top-actions .button { padding:0 9px; }
  .route-host { padding-left:12px; padding-right:12px; }
  .card-head { flex-direction:column; }
  .head-side { width:100%; flex-wrap:wrap; }
  .spine-summary { align-items:flex-start; flex-direction:column; gap:5px; }
  .readout-cell strong { font-size:22px; }
  .home-open .open-stamp { display:none; }
  .filter-row { align-items:flex-start; flex-direction:column; }
  .filter-field { width:100%; }
  .names-open { padding:18px; }
  .names-open .alphabet { grid-template-columns:repeat(6,1fr); }
  .sheet-open { padding:15px; gap:13px; }
  .sheet-open h1 { font-size:28px; }
  .data-table { min-width:760px; }
  .compact-table { min-width:620px; }
  .movement-table { min-width:1040px; }
  .table-scroll { width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .movement-open,.counting-intro { padding:18px; }
  .movement-kpis { grid-template-columns:1fr 1fr; gap:8px; }
  .movement-kpis article { padding:11px 12px; }
  .movement-filters { grid-template-columns:1fr; }
  .ledger-insights { grid-template-columns:1fr; }
  .ledger-insights > div { border-right:0; border-bottom:1px solid var(--line-soft); }
  .ledger-insights > div:last-child { border-bottom:0; }
  .movement-side { grid-template-columns:1fr; }
  .rich-stack li { grid-template-columns:minmax(105px,.9fr) minmax(55px,1fr) 70px; }
  .rich-stack .stack-meta { grid-column:1 / -1; padding-left:32px; text-align:left; }
  .stack-summary { grid-template-columns:repeat(2,1fr); }
  .stack-summary > div:nth-child(2) { border-right:0; }
  .stack-summary > div:nth-child(-n+2) { border-bottom:1px solid var(--line-soft); }
  .reserve-heading { padding:18px 18px 0; }
  .reserve-context { padding:14px 18px 18px; }
  .reserve-scale { padding:18px; }
  .statement-strip { align-items:flex-start; flex-direction:column; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .cycle-track i,.spine-bar i,.stack-bar i,.reveal-item { transition:none!important; }
  .badge.blue i { animation:none!important; }
  .motion-ready .reveal-item { opacity:1!important; transform:none!important; }
  .scrub-sheet { transform:none!important; }
}
