:root{color-scheme:dark;--bg:#100f14;--panel:#1b1922ed;--line:#ffffff16;--ink:#f6f3f0;--muted:#b2adbd;--purple:#a78aff;--green:#79deb2;font-family:Inter,Segoe UI,system-ui,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0;overflow:hidden;background:var(--bg);color:var(--ink)}button,select,input{font:inherit}button,select{color:var(--ink);background:#ffffff07;border:1px solid var(--line);border-radius:9px;padding:9px 12px}button{cursor:pointer;transition:background .15s}button:hover{background:#ffffff15}button:disabled{opacity:.4;cursor:default}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--purple);outline-offset:3px}button.primary{background:#b297ff;color:#171121;font-weight:650;border:0}button.primary:hover{background:#c6b1ff}canvas{position:fixed;inset:0;width:100%;height:100%;display:block}#grid-underlay{pointer-events:none}header{height:86px;position:fixed;inset:0 0 auto;display:flex;align-items:center;gap:28px;padding:0 30px;pointer-events:none;background:linear-gradient(#100f14cc,transparent)}header>*{pointer-events:auto}.brand{display:flex;gap:12px;align-items:center;font-size:21px;font-weight:800;letter-spacing:1px}.brand-orb{display:grid;place-items:center;width:39px;height:39px;border-radius:45% 53% 42% 55%;background:#a78aff;color:#20182f;font-size:33px;font-weight:700;line-height:1}.sub{display:block;font:10px Consolas,monospace;letter-spacing:2.8px;color:var(--muted);margin-top:3px}.live-state{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:12px}.live-state i{display:block;width:6px;height:6px;border-radius:100%;background:var(--green)}header>button{margin-left:auto}.panel{position:fixed;top:105px;left:30px;bottom:117px;overflow:auto;width:300px;border:1px solid var(--line);border-radius:18px;padding:22px;background:var(--panel);backdrop-filter:blur(18px);scrollbar-width:thin}.eyebrow{font:9px Consolas,monospace;letter-spacing:1.5px;color:var(--purple);margin:0 0 12px}h1{font-size:24px;line-height:1.15;letter-spacing:-.7px;margin:0 0 12px}.intro{font-size:12px;line-height:1.65;color:var(--muted);margin:0 0 22px}.stats{display:flex;gap:38px;padding-bottom:20px;margin-bottom:19px;border-bottom:1px solid var(--line)}.stats strong{display:block;font-weight:500;font-size:25px;font-variant-numeric:tabular-nums}.stats span{display:block;font-size:10px;color:var(--muted);margin-top:4px}.field{display:grid;grid-template-columns:1fr auto;gap:7px;margin:12px 0}.field label{grid-column:1/-1;color:var(--muted);font-size:10px}.field select{width:100%;min-width:0}.player-field{grid-template-columns:1fr}.actions{display:flex;gap:8px;margin:14px 0 18px}.actions button:first-child{flex:1}.controls{padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:17px}.control-title{display:flex;justify-content:space-between;font-size:11px;color:var(--green)}.controls p{font-size:10px;color:var(--muted);line-height:1.7;margin:7px 0}kbd{font:10px Consolas,monospace;color:var(--ink)}.charge-track{height:7px;background:#ffffff0d;border-radius:4px;margin:12px 0 7px;position:relative;overflow:hidden}.perfect-band{position:absolute;left:66.66%;width:10.4%;height:100%;background:#79deb24d}#charge-fill{height:100%;width:0;background:var(--purple);opacity:.75}.controls small{font-size:9px;color:var(--muted)}.board-title{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;padding:5px 0 10px}.board{list-style:none;padding:0;margin:0 0 14px}.board button{border:0;width:100%;display:flex;gap:8px;padding:8px 0;background:transparent;border-radius:4px;align-items:center;font-size:11px;text-align:left}.board button:hover{background:#ffffff08}.board .rank{font:10px Consolas,monospace;color:#88808e;width:10px}.board .swatch{width:6px;height:6px;border-radius:50%;flex-shrink:0}.board .name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board .mass{font:11px Consolas,monospace}details{border-top:1px solid var(--line);padding-top:13px;font-size:10px;color:var(--muted)}summary{cursor:pointer}dl{display:grid;grid-template-columns:1fr 1.2fr;gap:9px;font-size:10px;margin:16px 0}dd{margin:0;text-align:right;color:var(--ink)}a{color:var(--purple);text-decoration:none}.camera-hint{position:fixed;right:30px;bottom:119px;display:grid;text-align:right;gap:6px;pointer-events:none;font:10px Consolas,monospace;color:var(--muted)}.camera-hint span:first-child{color:var(--ink);letter-spacing:1.5px}footer{position:fixed;bottom:24px;left:30px;right:30px;border:1px solid var(--line);border-radius:14px;background:var(--panel);backdrop-filter:blur(16px);height:67px;padding:13px 16px;display:flex;align-items:center;gap:16px}.transport{display:flex;gap:8px;align-items:center;white-space:nowrap}.transport button,footer>button{font-size:11px;padding:8px 11px}#timeline-label{font:10px Consolas,monospace;min-width:60px;color:var(--green);padding-left:7px}input[type=range]{accent-color:var(--purple);flex:1;min-width:50px}.live-button{color:var(--green)}.message{position:fixed;top:103px;right:30px;max-width:390px;padding:14px 18px;border:1px solid var(--line);border-radius:12px;background:#25212ff2;color:var(--ink);font-size:12px;line-height:1.6}.message.error{border-color:#f6757599;color:#ffb8b8}[hidden]{display:none!important}@media(max-height:750px){.panel{top:85px;bottom:100px;padding:17px}.intro{margin-bottom:14px}.stats{padding-bottom:12px;margin-bottom:12px}.board button{padding:5px 0}h1{font-size:22px}}@media(max-width:700px){header{padding:0 16px;height:72px;gap:14px}.brand{font-size:17px}.brand-orb{width:31px;height:31px;font-size:27px}.sub{font-size:8px}.live-state{font-size:10px}.panel{left:16px;top:80px;width:245px;bottom:118px;padding:16px;max-height:55vh}.intro{display:none}.eyebrow{font-size:8px}.stats{gap:30px}.board{display:none}.board-title{display:none}h1{font-size:21px}.camera-hint{right:16px;bottom:112px}footer{left:16px;right:16px;bottom:16px;gap:8px;flex-wrap:wrap;height:83px;padding:9px}.transport{gap:5px}#timeline{order:5;flex-basis:65%}#verify{margin-left:auto}.message{top:80px;right:16px;max-width:230px}.stats strong{font-size:21px}}
@media (min-width:701px) and (max-width:1100px){canvas{left:330px;width:calc(100% - 330px)}} @media(max-width:700px){body.playing .panel{top:auto;bottom:112px;width:calc(100% - 32px);max-height:180px;padding:12px}body.playing .panel .eyebrow,body.playing .panel h1,body.playing .panel .stats,body.playing .panel .field,body.playing .panel details{display:none}body.playing .actions{margin:0 0 8px}body.playing .controls{padding:8px 0 0;margin:0;border-bottom:0}body.playing .controls p{display:inline-block;margin:2px 5px 2px 0}}
.header-actions{margin-left:auto;display:flex;gap:9px}.header-actions button{font-size:12px}.dashboard{position:fixed;right:24px;top:99px;bottom:117px;width:398px;display:flex;flex-direction:column;border:1px solid #ffffff20;border-radius:16px;background:#17141def;box-shadow:0 14px 50px #0004;overflow:hidden}.dash-head{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 12px;gap:16px}.dash-head .eyebrow{margin-bottom:6px}.dash-head h2{font-size:21px;font-weight:550;letter-spacing:-.5px;margin:0}.dash-head button{padding:4px 10px;font-size:22px;color:var(--muted);border:0}.dash-tabs{display:flex;padding:0 14px 12px;gap:5px;border-bottom:1px solid var(--line)}.dash-tabs button{flex:1;padding:8px 6px;border:0;font-size:11px;color:var(--muted)}.dash-tabs button[aria-selected=true]{color:#e4d9ff;background:#a78aff20}.dash-body{overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:16px;flex:1;min-height:0}.dashboard h3{font-size:12px;font-weight:550;margin:0 0 12px}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px;margin:1px 0 19px}.metric-grid span{display:block;color:var(--muted);font-size:10px;margin-bottom:7px}.metric-grid strong{font:500 23px/1.1 Consolas,monospace;letter-spacing:-1px;white-space:nowrap}.metric-grid small{display:block;color:#92899e;font-size:9px;margin-top:7px;line-height:1.5}.metric-grid #m-resolution{font-size:19px}.dash-card{background:#ffffff03;border:1px solid var(--line);border-radius:11px;padding:13px;margin:12px 0}.card-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.card-heading span{font:9px Consolas,monospace;color:var(--muted)}.card-heading h3{margin-bottom:10px}.dashboard svg{display:block;width:100%;height:auto}.legend{display:flex;justify-content:space-between;gap:6px;font-size:8px;color:var(--muted)}.legend i{display:inline-block;width:7px;height:2px;vertical-align:middle;margin-right:4px}.violet{background:var(--purple)}.green{background:var(--green)}.timing-table{border-collapse:collapse;width:100%;font:10px Consolas,monospace;line-height:2.3;font-variant-numeric:tabular-nums}.timing-table th{color:var(--muted);font-size:9px;font-weight:400}.timing-table td,.timing-table th{text-align:right}.timing-table td:first-child,.timing-table th:first-child{text-align:left;font-family:inherit}.timing-table tr{border-bottom:1px solid #ffffff08}.timing-table .slow{color:#ffb695}.dash-note{font-size:10px;line-height:1.7;color:var(--muted);margin:9px 0 0}.dash-foot{display:flex;justify-content:space-between;gap:10px;padding:10px 16px;border-top:1px solid var(--line);color:#93899f;font:9px Consolas,monospace}.dashboard dl{margin:0;grid-template-columns:1.1fr 1fr;line-height:1.6;gap:8px}.dashboard dd{font-family:Consolas,monospace;overflow-wrap:anywhere}.dashboard button{font-size:10px}.dashboard button.wide{width:100%;margin-top:12px}.region-proof-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.region-proof-grid button{padding:10px 0;clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);border:0;border-radius:0;background:#a78aff17;color:var(--muted)}.region-proof-grid button[aria-pressed=true]{background:#a78aff55;color:#fff}.hash-line{font:10px Consolas,monospace;color:var(--purple);overflow-wrap:anywhere}.proof-check{display:flex;gap:9px;padding:12px 0;border-bottom:1px solid var(--line);align-items:flex-start}.proof-check .status-dot{width:5px;height:5px;border-radius:100%;flex-shrink:0;margin-top:5px}.proof-check div{flex:1;min-width:0}.proof-check strong,.proof-check span,.proof-check small{display:block;font-size:10px;line-height:1.5}.proof-check strong{font-weight:500}.proof-check span{color:var(--purple);margin-top:2px}.proof-check small{font-size:9px;color:var(--muted);margin-top:5px}.proof-check em{font:8px Consolas,monospace;color:var(--muted)}.dashboard pre{font:9px/1.6 Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow:auto}.rec-actions{display:flex;gap:7px;flex-wrap:wrap}.rec-actions button,.rec-actions select{font-size:10px;padding:8px}.dashboard-open .camera-hint{right:444px}.message{z-index:5}.dashboard-open .message{right:440px;max-width:300px}.dashboard-open .panel{width:270px;padding:18px}.dashboard-open .stats{gap:24px}dialog{width:min(580px,calc(100vw - 32px));border:1px solid #66547d;border-radius:16px;background:#1b1722;color:var(--ink);padding:20px;box-shadow:0 20px 90px #0009}dialog::backdrop{background:#06050bb5}dialog .dash-head{padding:0}dialog label{display:block;font-size:11px;color:var(--muted);margin:15px 0 7px}dialog input[type=file]{margin-top:15px;width:100%;font-size:11px}dialog textarea{resize:vertical;width:100%;max-height:40vh;border:1px solid var(--line);border-radius:8px;background:#100d16;color:var(--ink);font:11px/1.5 Consolas,monospace;padding:12px;margin-bottom:12px}
@media(max-width:1100px){.dashboard{width:360px;right:16px}.dashboard-open .panel{display:none}.dashboard-open canvas{left:0;width:100%}.dashboard-open .camera-hint{right:396px}.dashboard-open .message{right:392px}}@media(max-width:700px){.dashboard{left:16px;right:16px;top:82px;width:auto;bottom:112px}.dashboard-open .camera-hint{display:none}.header-actions{gap:5px}.header-actions button{font-size:10px;padding:8px}.header-actions #overview{display:none}.dashboard-open .message{right:20px;left:20px;top:90px;max-width:none}.dash-body{padding:12px}.dashboard-open .panel{display:none}}

.cost-laws-page{position:fixed;z-index:9;top:86px;right:0;bottom:0;left:0;overflow:auto;overscroll-behavior:contain;background:radial-gradient(circle at 72% -15%,#392b514d,transparent 34%),linear-gradient(180deg,#121016 0,#0e0c12 100%);scrollbar-width:thin}.cost-page-inner{width:min(1600px,100%);margin:0 auto;padding:18px 28px 54px}.cost-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;padding:8px 2px 17px}.cost-hero h1{font-size:34px;margin:0 0 7px}.cost-hero>div>p:last-child{max-width:850px;margin:0;color:var(--muted);font-size:13px;line-height:1.65}.cost-hero-actions{display:flex;align-items:center;gap:12px;white-space:nowrap}.cost-hero-actions span{font:9px Consolas,monospace;letter-spacing:1px;color:var(--green)}.cost-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-bottom:12px}.cost-summary article{min-width:0;padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:#ffffff04}.cost-summary span,.cost-summary small{display:block;color:var(--muted);font-size:9px;line-height:1.4}.cost-summary strong{display:block;margin:6px 0 5px;font:500 17px/1.1 Consolas,monospace;letter-spacing:-.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cost-planner,.cost-ledger{border:1px solid var(--line);border-radius:12px;background:#18151e;margin:10px 0 12px}.cost-planner>summary,.cost-ledger>summary{display:flex;align-items:center;gap:12px;cursor:pointer;padding:12px 14px;color:var(--ink);font-size:12px}.cost-planner>summary small{margin-left:auto;color:var(--purple);font:10px Consolas,monospace}.cost-presets{display:flex;gap:7px;align-items:center;flex-wrap:wrap;padding:0 14px 12px}.cost-presets button{font-size:10px;padding:7px 10px}.cost-presets span{margin-left:auto;color:var(--muted);font:9px Consolas,monospace}.cost-control-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 18px;padding:0 14px 16px}.cost-control span{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:10px;margin-bottom:7px}.cost-control output{color:var(--ink);font:10px Consolas,monospace}.cost-control input{display:block;width:100%;margin:0}.cost-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) auto auto;align-items:end;gap:12px;padding:10px 0 11px}.cost-toolbar>p{grid-column:1/-1;margin:0;color:var(--muted);font:9px Consolas,monospace}.cost-search{display:flex;gap:7px;align-items:end}.cost-search label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.cost-search input{min-width:180px;flex:1;height:36px;border:1px solid var(--line);border-radius:9px;background:#ffffff06;color:var(--ink);padding:0 11px}.cost-toolbar button{height:36px;padding:7px 10px;font-size:10px}.cost-filter,.cost-view-switch{display:flex;gap:5px}.cost-toolbar button[aria-pressed=true]{border-color:#a78aff88;background:#a78aff20;color:#eee8ff}.cost-map-panel{border:1px solid var(--line);border-radius:16px;background:#141119;overflow:hidden}.cost-map-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:15px 17px 11px;border-bottom:1px solid var(--line)}.cost-map-head .eyebrow{margin-bottom:5px}.cost-map-head h2{font-size:18px;margin:0}.cost-legend{display:flex;gap:13px;flex-wrap:wrap;color:var(--muted);font-size:9px}.cost-legend i{display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:3px;vertical-align:-1px}.legend-current{background:var(--green)}.legend-target{background:var(--purple)}.legend-gate{background:#ffb695}.legend-blocked{background:#ff9292}.cost-map-scroll{overflow:auto;min-height:320px;padding:12px;scrollbar-width:thin}.cost-map-spacer{position:relative}.cost-map{position:relative;transform-origin:0 0}.cost-edge-layer{position:absolute;inset:0;width:100%!important;height:100%!important;overflow:visible;pointer-events:none}.cost-edge-layer path[data-cost-edge]{fill:none;stroke:#6c6378;stroke-width:1.15;opacity:.32;transition:opacity .15s,stroke .15s,stroke-width .15s}.cost-edge-layer marker path{fill:#6c6378}.cost-edge-layer path.active{stroke:#a78aff;stroke-width:1.8;opacity:.9}.cost-edge-layer path.dimmed{opacity:.055}.cost-band-label{position:absolute;top:10px;width:154px;color:#9d94a9;font:9px Consolas,monospace;letter-spacing:.65px;text-transform:uppercase}.cost-node{position:absolute;width:154px;height:60px;padding:7px 8px;border-radius:9px;text-align:left;background:#211d28f2;border:1px solid #ffffff19;overflow:hidden;transition:opacity .15s,border-color .15s,box-shadow .15s,transform .15s}.cost-node:hover{background:#292331;transform:translateY(-1px)}.cost-node .cost-node-top{display:flex;align-items:center;justify-content:space-between;gap:5px}.cost-node b{min-width:0;color:var(--ink);font-size:10px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cost-node i{flex-shrink:0;color:#aba3b6;font:7px Consolas,monospace}.cost-node code{display:block;margin-top:5px;color:#c8bdd8;font:8px Consolas,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cost-node small{display:block;margin-top:4px;color:#8e8599;font:7.5px Consolas,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cost-node.kind-exact,.cost-node.kind-current,.cost-node.kind-observer{border-left:3px solid #79deb2a8}.cost-node.kind-input{border-left:3px solid #80768b}.cost-node.kind-target{border-left:3px solid #a78aff}.cost-node.kind-partial{border-left:3px solid #c6a6ff}.cost-node.kind-gate{border-left:3px solid #ffb695}.cost-node.kind-blocked{border-left:3px solid #ff9292}.cost-node.selected{border-color:var(--purple);box-shadow:0 0 0 2px #a78aff45,0 8px 28px #0005;opacity:1}.cost-node.dimmed{opacity:.19}.cost-map-note{margin:0;padding:10px 16px 13px;border-top:1px solid var(--line);color:var(--muted);font-size:10px;line-height:1.55}.cost-list{padding:10px;max-height:560px;overflow:auto}.cost-list-row{display:grid;width:100%;grid-template-columns:1.1fr .9fr 1fr;align-items:center;gap:14px;padding:12px;margin:0 0 6px;text-align:left;border-radius:9px}.cost-list-row span small{display:block;margin-top:4px;color:var(--muted);font:8px Consolas,monospace}.cost-list-row code{font:10px Consolas,monospace;color:#c8bdd8}.cost-list-row em{font:9px Consolas,monospace;color:var(--muted);font-style:normal;text-align:right}.cost-list-row.selected{border-color:var(--purple);background:#a78aff17}.cost-list-row.dimmed{opacity:.25}.cost-detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:12px;margin-top:12px}.cost-inspector,.cost-regime{min-height:270px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#17141d}.cost-inspector h2,.cost-regime h2{font-size:20px;margin:0 0 10px}.cost-empty>p:last-child{max-width:580px;color:var(--muted);font-size:12px;line-height:1.7}.cost-detail-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.cost-detail-head .eyebrow{margin-bottom:5px}.cost-detail-head span{padding:5px 8px;border:1px solid #a78aff55;border-radius:99px;color:var(--purple);font:8px Consolas,monospace}.cost-detail-value{margin:11px 0 15px;padding:11px 12px;border-radius:9px;background:#a78aff0c}.cost-detail-value span{display:block;color:var(--muted);font-size:9px}.cost-detail-value strong{display:block;margin-top:6px;font:500 14px Consolas,monospace;color:#e9e2f7}.cost-inspector dl{display:grid;grid-template-columns:130px 1fr;gap:9px 14px;margin:0;font-size:11px;line-height:1.55}.cost-inspector dt{color:var(--muted)}.cost-inspector dd{text-align:left;color:var(--ink);font-family:inherit}.cost-regime-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cost-regime-grid>div{padding:11px;border:1px solid #ffffff0f;border-radius:9px;background:#ffffff03}.cost-regime-grid span{display:block;color:var(--muted);font-size:9px}.cost-regime-grid strong{display:block;margin:5px 0;color:var(--green);font:11px Consolas,monospace}.cost-regime-grid p{margin:0;color:#aaa2b7;font-size:10px;line-height:1.55}.cost-live-note{margin:13px 0 0;color:var(--muted);font:9px/1.6 Consolas,monospace}.cost-table-scroll{overflow:auto;padding:0 13px 13px}.cost-ledger table{width:100%;min-width:900px;border-collapse:collapse;font-size:10px;line-height:1.55}.cost-ledger th,.cost-ledger td{padding:10px;border-bottom:1px solid #ffffff0b;text-align:left;vertical-align:top}.cost-ledger th{position:sticky;top:0;background:#18151e;color:var(--muted);font-weight:500}.cost-ledger td:first-child{width:160px}.cost-ledger td:nth-child(2){width:240px}.cost-ledger td:last-child{width:110px}.cost-ledger td button{border:0;padding:0;background:transparent;color:var(--purple);font-size:10px;text-align:left}.cost-ledger code{font:10px Consolas,monospace}.cost-ground{font:8px Consolas,monospace;color:var(--muted)}.cost-laws-open #dashboard-toggle,.cost-laws-open #overview{display:none}.cost-laws-open canvas,.cost-laws-open .panel,.cost-laws-open footer,.cost-laws-open .camera-hint,.cost-laws-open #dashboard,.cost-laws-open #message{visibility:hidden}.cost-laws-open header{background:#100f14f2;border-bottom:1px solid var(--line)}.cost-laws-open .header-actions #cost-laws-toggle{display:block}.cost-laws-open .live-state{color:#d0c9d8}@media(max-width:1050px){.cost-summary{grid-template-columns:repeat(3,1fr)}.cost-toolbar{grid-template-columns:1fr auto}.cost-view-switch{grid-column:1/-1}.cost-control-grid{grid-template-columns:repeat(2,1fr)}.cost-detail-grid{grid-template-columns:1fr}}@media(max-width:700px){.cost-laws-page{top:72px}.cost-page-inner{padding:12px 13px 35px}.cost-hero{display:block}.cost-hero h1{font-size:27px}.cost-hero-actions{margin-top:12px;justify-content:space-between}.cost-summary{grid-template-columns:repeat(2,1fr)}.cost-summary article{padding:10px}.cost-summary strong{font-size:15px}.cost-control-grid{grid-template-columns:1fr}.cost-presets span{width:100%;margin:4px 0 0}.cost-toolbar{grid-template-columns:1fr}.cost-search,.cost-filter,.cost-view-switch{overflow:auto}.cost-filter{grid-column:1}.cost-toolbar button{min-width:44px}.cost-map-head{display:block}.cost-legend{margin-top:10px}.cost-map-scroll{padding:8px}.cost-list-row{grid-template-columns:1fr}.cost-list-row em{text-align:left}.cost-detail-grid{grid-template-columns:1fr}.cost-inspector dl{grid-template-columns:1fr}.cost-inspector dd{margin-bottom:6px}.cost-regime-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.cost-node,.cost-edge-layer path[data-cost-edge]{transition:none}}

.cost-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.cost-taxonomy{display:flex;gap:7px;flex-wrap:wrap;margin:-4px 0 12px}.cost-taxonomy span{padding:5px 8px;border:1px solid #ffffff12;border-radius:99px;background:#ffffff03;color:#948b9f;font:8px/1.4 Consolas,monospace}.cost-taxonomy b{color:#cfc6da;font-weight:500}.cost-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(310px,370px);gap:12px;align-items:start}.cost-workspace .cost-inspector{position:sticky;top:12px;max-height:calc(100vh - 124px);overflow:auto;min-height:330px}.cost-node.dimmed:focus-visible,.cost-node.dimmed:hover{opacity:1}.cost-resource-panel{min-height:270px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#17141d}.cost-resource-panel h2{font-size:20px;margin:0 0 10px}.cost-resource-panel>p:last-child{color:var(--muted);font-size:9px;line-height:1.55;margin:12px 0 0}.cost-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cost-resource-grid>div{display:grid;grid-template-columns:1fr auto;gap:4px 9px;padding:10px;border:1px solid #ffffff0f;border-radius:9px;background:#ffffff03}.cost-resource-grid span{font-size:9px;color:var(--muted)}.cost-resource-grid code{font:8px Consolas,monospace;color:#b8acc8;text-align:right}.cost-resource-grid strong{grid-column:1/-1;font:500 13px Consolas,monospace;color:var(--green)}.cost-resource-grid p{grid-column:1/-1;margin:0;color:#958da1;font-size:8px;line-height:1.5}.cost-proof-spectrum{display:grid;grid-template-columns:260px 1fr;gap:18px;margin:12px 0;padding:18px;border:1px solid var(--line);border-radius:14px;background:#15121a}.cost-proof-spectrum h2{font-size:20px;margin:0 0 9px}.cost-proof-spectrum>div:first-child>p:last-child{color:var(--muted);font-size:10px;line-height:1.65;margin:0}.cost-proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.cost-proof-step{min-width:0;padding:10px;border:1px solid #ffffff12;border-radius:9px;background:#ffffff03}.cost-proof-step>div{display:flex;align-items:flex-start;justify-content:space-between;gap:7px}.cost-proof-step span{order:2;font:7px Consolas,monospace;text-transform:uppercase;color:var(--muted)}.cost-proof-step strong{font-size:10px;font-weight:550}.cost-proof-step code{display:block;margin-top:7px;color:#c8bdd8;font:8px Consolas,monospace;overflow-wrap:anywhere}.cost-proof-step p{margin:7px 0 0;color:#978fa1;font-size:8px;line-height:1.5}.cost-proof-step.status-complete{border-left:3px solid var(--green)}.cost-proof-step.status-local{border-left:3px solid var(--purple)}.cost-proof-step.status-pending{border-left:3px solid #ffb695}.cost-proof-step.status-absent{border-left:3px solid #ff9292}.cost-execution-ledger>summary small{margin-left:auto;color:var(--purple);font:9px Consolas,monospace}.cost-execution-ledger table{min-width:1180px}.cost-execution-ledger td:first-child{width:175px}.cost-execution-ledger td:nth-child(2){width:215px}.cost-execution-ledger td:nth-child(3){width:245px;font-family:Consolas,monospace;color:#d5cce0}.cost-execution-ledger td:nth-child(4){width:auto}.cost-execution-ledger td:first-child small{display:block;margin-top:4px;color:#777080;font:7px Consolas,monospace}.cost-toolbar button:disabled{opacity:.28}.cost-presets button[aria-pressed=true]{border-color:#a78aff88;background:#a78aff20}.cost-map-panel,.cost-inspector{min-width:0}@media(max-width:1180px){.cost-workspace{grid-template-columns:minmax(0,1fr) 320px}.cost-proof-spectrum{grid-template-columns:1fr}.cost-proof-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.cost-workspace{grid-template-columns:1fr}.cost-workspace .cost-inspector{position:static;max-height:none;min-height:250px}.cost-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cost-taxonomy{overflow:auto;flex-wrap:nowrap}.cost-taxonomy span{white-space:nowrap}}@media(max-width:700px){.cost-resource-grid,.cost-proof-grid{grid-template-columns:1fr}.cost-execution-ledger>summary small{display:none}.cost-laws-open header .live-state{display:none}.cost-laws-open header{gap:8px}.cost-laws-open .brand{flex-shrink:0}.cost-laws-open .header-actions{margin-left:auto}}@media(prefers-reduced-motion:reduce){.cost-node,.cost-edge-layer path[data-cost-edge]{transition:none}}

/* Keep evidence labels readable even at the minimum 0.9 map zoom. */
.cost-taxonomy span{font-size:9px}.cost-node{height:64px}.cost-node i{font-size:9px}.cost-node code,.cost-node small{font-size:9px}.cost-list-row span small,.cost-ground,.cost-execution-ledger td:first-child small{font-size:9px}.cost-resource-grid code,.cost-resource-grid p{font-size:9px}.cost-proof-step span,.cost-proof-step code,.cost-proof-step p{font-size:9px}.cost-proof-step strong{font-size:11px}

/* The Horizon is a retained observer contract. Its marker never drives authority. */
.status-locked,.status-landed{--h-status:var(--green)}.status-ready{--h-status:var(--purple)}.status-partial{--h-status:#ffb695}.status-queued{--h-status:#9d94a9}.status-blocked{--h-status:#ff9292}.status-research{--h-status:#7dd3fc}
.horizon-node{width:168px;height:68px;border-left:3px solid var(--h-status,#80768b)}.horizon-band-label{width:168px}.horizon-node i,.horizon-gene small,#horizon-detail-status{color:var(--h-status,var(--muted));border:1px solid currentColor;border-radius:99px;padding:2px 5px;font:8px Consolas,monospace}.horizon-node.protein-cursor,.horizon-gene.protein-cursor{box-shadow:0 0 0 2px #a78aff55,0 8px 28px #0005}
.cost-edge-layer path[data-horizon-edge]{fill:none;stroke:#6c6378;stroke-width:1.15;opacity:.32;transition:opacity .15s,stroke .15s,stroke-width .15s}.cost-edge-layer path[data-horizon-edge].active{stroke:var(--purple);stroke-width:1.8;opacity:.9}.cost-edge-layer path[data-horizon-edge].dimmed{opacity:.055}
.legend-locked{background:var(--green)}.legend-ready{background:var(--purple)}.legend-partial{background:#ffb695}.legend-research{background:#7dd3fc}
.horizon-notice{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:14px;margin-bottom:12px;padding:11px 13px;border:1px solid #a78aff44;border-radius:10px;background:#a78aff0b;font-size:10px;line-height:1.55}.horizon-notice span{color:var(--muted)}
.horizon-strand-panel{display:grid;grid-template-columns:240px minmax(0,1fr);gap:18px;margin:12px 0;padding:18px;border:1px solid var(--line);border-radius:14px;background:#15121a}.horizon-strand-panel h2{font-size:20px;margin:0 0 9px}.horizon-strand-panel p{color:var(--muted);font-size:10px;line-height:1.65;margin:0}.horizon-strand{display:flex;gap:9px;min-width:0;overflow-x:auto;overscroll-behavior-inline:contain;padding:8px 2px 13px;scrollbar-width:thin}
.horizon-gene{position:relative;flex:0 0 150px;min-height:70px;padding:9px 9px 8px;text-align:left;border:1px solid #ffffff16;border-left:3px solid var(--h-status,#80768b);border-radius:9px;background:#211d28}.horizon-gene:not(:last-child)::after{content:"";position:absolute;left:100%;top:50%;width:10px;border-top:1px solid #6c6378}.horizon-gene span{float:left;margin-right:7px;color:var(--muted);font:8px Consolas,monospace}.horizon-gene b{display:block;min-height:28px;font-size:10px}.horizon-gene small{display:inline-flex;margin-top:6px}.horizon-gene i{position:absolute;right:6px;bottom:5px;color:var(--purple);font:7px Consolas,monospace}.horizon-gene.selected{border-color:var(--purple);background:#a78aff17}.horizon-gene.dimmed{opacity:.28}
.horizon-list-row{border-left:3px solid var(--h-status,#80768b)}.horizon-retained{margin:8px 0 14px;color:var(--green);font:8px Consolas,monospace;letter-spacing:.6px}.horizon-inspector #horizon-detail-status{flex-shrink:0}
.horizon-contract-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0}.horizon-contract-grid>article{min-width:0;padding:18px;border:1px solid var(--line);border-radius:14px;background:#17141d}.horizon-contract-grid h2{font-size:18px;margin:0 0 10px}.horizon-contract-grid ul{margin:0;padding-left:17px;color:var(--muted);font-size:10px;line-height:1.8}.horizon-binding dl,.horizon-witness-receipt dl{grid-template-columns:80px 1fr;margin:0}.horizon-binding dd,.horizon-witness-receipt dd{font-family:Consolas,monospace;overflow-wrap:anywhere}.horizon-witness-receipt h2[data-status=pass]{color:var(--green)}.horizon-witness-receipt h2[data-status=refuted]{color:#ff9292}.horizon-witness-receipt button{width:100%;margin-top:4px}.horizon-witness-receipt p:last-child{margin:10px 0 0;color:var(--muted);font-size:9px;line-height:1.55}
.horizon-mutant-matrix>summary{justify-content:space-between}.horizon-mutant-matrix>summary span small,.horizon-mutant-matrix>summary span strong{display:block}.horizon-mutant-matrix>summary span small{color:var(--muted);font:8px Consolas,monospace;letter-spacing:.6px}.horizon-mutant-matrix>summary span strong{margin-top:4px;font-size:12px}.horizon-mutant-matrix>summary>b{color:var(--muted);font:9px Consolas,monospace;letter-spacing:.5px}.horizon-mutant-matrix>summary>b[data-status=pass]{color:var(--green)}.horizon-mutant-matrix>summary>b[data-status=refuted]{color:#ff9292}.horizon-mutant-summary{grid-template-columns:repeat(7,minmax(0,1fr));padding:0 13px}.horizon-mutant-table{min-width:1220px!important}.horizon-mutant-table td{font-family:Consolas,monospace;overflow-wrap:anywhere}.horizon-mutant-table td:first-child{width:220px}.horizon-mutant-table td:nth-child(2){width:130px}.horizon-mutant-table td:nth-child(3){width:220px}.horizon-mutant-table td:nth-child(4),.horizon-mutant-table td:nth-child(5){width:190px}.horizon-mutant-table td:nth-child(6){width:130px}.horizon-mutant-table .mutant-outcome-killed{color:var(--green);font-weight:700}.horizon-mutant-table .mutant-outcome-survived{color:#ff9292;font-weight:700}.horizon-mutant-table .mutant-outcome-unexecuted,.horizon-mutant-table .mutant-outcome-unrouted{color:#ffcf85;font-weight:700}
.horizon-spine{display:grid;grid-template-columns:250px 1fr;gap:18px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#15121a}.horizon-spine h2{font-size:20px;margin:0 0 9px}.horizon-spine>div:first-child>p:last-child{color:var(--muted);font-size:10px;line-height:1.65}.horizon-spine-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.horizon-spine-grid article{padding:10px;border:1px solid #79deb233;border-left:3px solid var(--green);border-radius:9px;background:#ffffff03}.horizon-spine-grid span{color:var(--green);font:7px Consolas,monospace}.horizon-spine-grid strong{display:block;margin:5px 0;font-size:10px}.horizon-spine-grid p{margin:0;color:var(--muted);font-size:8px;line-height:1.5}
.horizon-open #dashboard-toggle,.horizon-open #overview{display:none}.horizon-open canvas,.horizon-open .panel,.horizon-open footer,.horizon-open .camera-hint,.horizon-open #dashboard,.horizon-open #message{visibility:hidden}.horizon-open header{background:#100f14f2;border-bottom:1px solid var(--line)}.horizon-open .live-state{color:#d0c9d8}.horizon-open .header-actions #horizon-toggle,.horizon-open .header-actions #cost-laws-toggle,.cost-laws-open .header-actions #horizon-toggle{display:block}
@media(max-width:1180px){.horizon-contract-grid{grid-template-columns:1fr 1fr}.horizon-binding{grid-column:1/-1}.horizon-mutant-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.horizon-spine{grid-template-columns:1fr}.horizon-spine-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.horizon-strand-panel{grid-template-columns:1fr}.horizon-contract-grid{grid-template-columns:1fr}.horizon-binding{grid-column:auto}.horizon-mutant-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.horizon-spine-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.horizon-hero .cost-hero-actions{flex-wrap:wrap;white-space:normal}.horizon-hero #horizon-route-state{width:100%}.horizon-notice{grid-template-columns:1fr}.horizon-gene{flex-basis:132px}.horizon-mutant-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.horizon-spine-grid{grid-template-columns:1fr}.horizon-open header .live-state{display:none}.horizon-open header{gap:8px}.horizon-open .brand{flex-shrink:0}.horizon-open .header-actions{margin-left:auto}}
@media(max-width:480px){header .live-state{display:none}.header-actions button{font-size:9px;padding:7px 6px}.brand{gap:7px}.brand-orb{display:none}}
@media(prefers-reduced-motion:reduce){.cost-edge-layer path[data-horizon-edge]{transition:none}}

/* Arcade look, opt-in. html[data-look="arcade"] is set by the live client.
   :root above stays the planet theme so ?theme=dark can roll back. */
html[data-look="arcade"]{
  --bg:#020305;--panel:#070a12ee;--line:#1e293b;--ink:#e2e8f0;--muted:#94a3b8;
  --purple:#38bdf8;--green:#34d399;
  font-family:"Segoe UI",system-ui,sans-serif;background:var(--bg);
}
html[data-look="arcade"] button.primary{background:#0284c7;color:#f8fafc}
html[data-look="arcade"] button.primary:hover{background:#38bdf8;color:#082f49}
html[data-look="arcade"] button:focus-visible,html[data-look="arcade"] select:focus-visible,html[data-look="arcade"] input:focus-visible,html[data-look="arcade"] a:focus-visible{outline-color:#38bdf8}
html[data-look="arcade"] .brand-orb{background:#38bdf8;color:#082f49}
