@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-700-normal-v1xN8_Wq.woff2) format("woff2"),url(/assets/barlow-condensed-latin-700-normal-Dmwat-ge.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff")}:root{--bg: #101416;--surface: #191f21;--surface-2: #14191b;--surface-raised: #1e2528;--ink: #e9e5dc;--ink-2: #abb2ad;--ink-3: #7f8a85;--orange: #ee7948;--orange-press: #d96a3a;--green: #a7c0aa;--red: #c86b59;--line: #394246;--line-faint: #2a3236;--font-display: "Barlow Condensed", "Arial Narrow", sans-serif;--font-ui: "IBM Plex Sans", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--target: 44px;--radius: 3px;--t-fast: .13s;--t-slow: .2s;--grid-track-left: 220px;--grid-track-right: 300px;--header-h: 64px;--bottom-h: 160px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-ui);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none;padding:0}:focus-visible{outline:2px solid var(--orange);outline-offset:2px;border-radius:2px}::selection{background:#ee794859}*{scrollbar-width:thin;scrollbar-color:var(--line) transparent}.app{height:100%;display:flex;flex-direction:column;overflow:hidden}.shell{flex:1;min-height:0;display:grid;grid-template-columns:var(--grid-track-left) minmax(0,1fr) var(--grid-track-right);border-top:1px solid var(--line)}.shell__bottom{height:var(--bottom-h);border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,520px);background:var(--surface-2)}.hdr{height:var(--header-h);display:flex;align-items:center;gap:var(--sp-4);padding:0 var(--sp-5);background:var(--surface);flex:none}.wordmark{font-family:var(--font-display);font-weight:700;font-size:26px;letter-spacing:.06em;color:var(--ink);user-select:none;display:flex;align-items:center;gap:var(--sp-3)}.hdr__divider{width:1px;height:26px;background:var(--line)}.hdr__station{display:flex;align-items:center;gap:var(--sp-2);min-width:0}.hdr__station-label{font-size:11px;letter-spacing:.14em;color:var(--ink-2);text-transform:uppercase}.hdr__station-id{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13px;color:var(--ink);display:inline-flex;align-items:center;gap:6px;min-height:var(--target);padding:0 6px;border-radius:var(--radius);white-space:nowrap;max-width:48ch}.hdr__station-id span{min-width:0;overflow:hidden;text-overflow:ellipsis}.hdr__station-id:hover{background:var(--surface-raised)}.hdr__spacer{flex:1}.hdr__turn{display:flex;align-items:baseline;gap:var(--sp-3)}.hdr__turn-label{font-family:var(--font-display);letter-spacing:.1em;font-size:14px;color:var(--ink-2)}.hdr__turn-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:15px;color:var(--ink)}.hdr__turn span.num{color:var(--ink-3)}.acct{position:relative}.acct__btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-2);background:transparent;transition:border-color var(--t-fast) ease,color var(--t-fast) ease}.acct__btn:hover,.acct__btn--open{border-color:var(--ink-3);color:var(--ink)}.acct__label{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:11.5px;letter-spacing:.04em;max-width:16ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acct__caret{transform:rotate(90deg);color:var(--ink-3);transition:transform var(--t-fast) ease}.acct__btn--open .acct__caret{transform:rotate(-90deg)}.acct__dot{width:7px;height:7px;border-radius:50%;flex:none;background:var(--ink-3)}.acct__dot--testnet{background:var(--orange)}.acct__dot--pending{background:var(--orange);animation:pulse 1.1s ease-in-out infinite}.acct__dot--disconnected{background:transparent;border:1.5px solid var(--ink-3)}.hdr__connection{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;color:var(--ink-3);white-space:nowrap}.acct__menu{position:absolute;top:calc(100% + 6px);right:0;z-index:50;min-width:280px;max-width:360px;background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;display:flex;flex-direction:column;gap:3px}.acct__menu-k{margin-top:4px;font-size:10px;letter-spacing:.16em;color:var(--ink-3)}.acct__menu-v{font-size:12.5px;font-weight:500;color:var(--ink)}.acct__menu-detail{font-family:var(--font-mono);font-size:11px;color:var(--ink-2);overflow-wrap:anywhere}.acct__menu-copy{margin-top:8px;display:inline-flex;align-items:center;gap:8px;min-height:var(--target);padding:0 10px;border:1px solid var(--line);border-radius:var(--radius);font-family:var(--font-mono);font-size:11.5px;color:var(--ink-2);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color var(--t-fast) ease,border-color var(--t-fast) ease}.acct__menu-copy:hover{color:var(--ink);border-color:var(--ink-3)}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.8)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:var(--target);padding:0 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-raised);color:var(--ink);font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;font-family:var(--font-ui);transition:background-color var(--t-fast) ease,border-color var(--t-fast) ease,color var(--t-fast) ease,transform var(--t-fast) ease}.btn:hover:not(:disabled){border-color:var(--ink-3)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.42;cursor:not-allowed}.btn--primary{background:var(--orange);border-color:var(--orange);color:#191210;font-weight:600}.btn--primary:hover:not(:disabled){background:var(--orange-press);border-color:var(--orange-press);color:#191210}.btn--danger-ghost{color:var(--red);border-color:#c86b5980}.btn--danger-ghost:hover:not(:disabled){border-color:var(--red)}.btn--small{min-height:var(--target);padding:0 12px;font-size:12px}.btn--block{width:100%}.btn--quiet{background:transparent}.iconbtn{min-height:var(--target);min-width:var(--target);display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-2);background:var(--surface-raised);transition:color var(--t-fast) ease,border-color var(--t-fast) ease}.iconbtn:hover:not(:disabled){color:var(--ink);border-color:var(--ink-3)}.iconbtn:disabled{opacity:.4;cursor:not-allowed}.rail-left{border-right:1px solid var(--line);background:var(--surface);padding:12px 16px;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.rail-left__title{font-size:10.5px;letter-spacing:.16em;color:var(--ink-2)}.rail-left__name{font-family:var(--font-display);font-weight:700;font-size:27px;line-height:1;letter-spacing:.04em;margin-top:3px}.rail-left__name small{display:block;margin-top:4px;font-family:var(--font-ui);font-weight:500;font-size:10px;letter-spacing:.12em;color:var(--ink-3)}.rail-left__primary{display:flex;flex-direction:column;gap:10px;padding-top:10px;border-top:1px solid var(--line)}.gauge{display:grid;gap:5px}.gauge__head{display:flex;align-items:center;gap:var(--sp-2);color:var(--ink-2);font-size:11px;letter-spacing:.14em}.gauge__head svg{color:var(--ink-3)}.gauge__value{margin-left:auto;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:21px;line-height:1;color:var(--ink)}.gauge__value.state-red{color:var(--red)}.gauge__bar{display:flex;gap:3px;height:14px}.gauge__cell{flex:1;background:var(--line-faint);border:1px solid var(--line-faint);transition:background-color var(--t-slow) ease,border-color var(--t-slow) ease}.gauge__cell--on{background:var(--green);border-color:var(--green)}.gauge__cell--on.state-red,.gauge__cell.state-red{background:var(--red);border-color:var(--red)}.gauge__cell--flash{background:var(--orange);border-color:var(--orange)}.score{display:grid;gap:3px}.score__label{display:flex;align-items:center;gap:7px;color:var(--ink-2);font-size:11px;letter-spacing:.14em}.score__label svg{color:var(--ink-3)}.score__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:26px;line-height:1.05;color:var(--ink)}.score__unit{font-size:13px;color:var(--ink-3);margin-left:2px}.score__note{font-size:9.5px;letter-spacing:.1em;color:var(--ink-3)}.rail-left__secondary{padding:2px 0 0;border-top:1px dashed var(--line-faint)}.rail-left__secondary .statrow{min-height:24px;padding:2px 0}.rail-left__secondary .statrow__label{font-size:11px;color:var(--ink-3)}.rail-left__secondary .statrow__amount{font-size:12.5px;color:var(--ink-2)}.statrow{display:flex;align-items:center;gap:var(--sp-2);min-height:36px;border-bottom:1px solid var(--line-faint);padding:4px 0}.statrow:last-child{border-bottom:none}.statrow__label{display:flex;align-items:center;gap:7px;color:var(--ink-2);font-size:12.5px;letter-spacing:.06em}.statrow__label svg{color:var(--ink-3)}.statrow__amount{margin-left:auto;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:14px;color:var(--ink);text-align:right}.statrow__unit{color:var(--ink-3);font-size:11px;margin-left:4px}.rail-left__captain{border-top:1px solid var(--line);padding-top:6px;display:flex;flex-direction:column;gap:2px}.rail-left__captain .k{font-size:9.5px;letter-spacing:.14em;color:var(--ink-3)}.rail-left__captain .v{font-family:var(--font-mono);font-size:11px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-left__spacer{flex:1}.rail-left__meta{font-family:var(--font-mono);font-size:9px;letter-spacing:.04em;color:var(--ink-3);border:1px solid var(--line-faint);padding:7px 9px;line-height:1.55;white-space:pre-line}.canvas{position:relative;overflow:hidden;background:radial-gradient(1200px 500px at 62% 30%,rgba(233,229,220,.05),transparent 62%),linear-gradient(#0d1113,#101416)}.canvas__svg{width:100%;height:100%;display:block}.canvas__note{position:absolute;left:var(--sp-4);bottom:var(--sp-3);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;color:var(--ink-3);pointer-events:none}.canvas__banner{position:absolute;top:var(--sp-3);left:50%;transform:translate(-50%);z-index:30;display:flex;align-items:center;gap:10px;padding:9px 16px;font-size:12.5px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);max-width:min(92%,760px);animation:banner-in var(--t-slow) ease-out}@keyframes banner-in{0%{opacity:0;transform:translate(-50%,-4px)}to{opacity:1;transform:translate(-50%)}}.canvas__banner--error{border-color:#c86b59b3;color:var(--red)}.canvas__banner--info{border-color:#ee7948b3}.canvas__banner--ok{border-color:#a7c0aab3}.banner__icon{flex:none}.banner__text{min-width:0}.banner__close{margin-left:auto;flex:none}.canvas__focus{position:absolute;top:var(--sp-3);left:var(--sp-4);right:var(--sp-4);display:flex;align-items:center;gap:var(--sp-3);pointer-events:none}.canvas__mode-tag{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;color:var(--ink-3)}.canvas__module-panel{position:absolute;right:var(--sp-4);bottom:var(--sp-3);width:300px;background:#191f21eb;border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;font-size:12.5px;color:var(--ink-2);backdrop-filter:blur(2px);z-index:5}.canvas__module-panel h4{margin:0 0 6px;font-family:var(--font-display);letter-spacing:.12em;font-size:15px;color:var(--ink);display:flex;align-items:center;gap:8px}.canvas__module-panel h4 .tag{margin-left:auto;font-size:10.5px;letter-spacing:.1em;font-family:var(--font-mono)}.module-panel__row{display:flex;justify-content:space-between;padding:3px 0;border-top:1px solid var(--line-faint)}.module-panel__row .v{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink)}.tag-ok{color:var(--green)}.tag-red{color:var(--red)}.tag-orange{color:var(--orange)}.tag-dim{color:var(--ink-3)}.module{cursor:pointer;transition:opacity var(--t-fast) ease}.module:hover .module__hl,.module--focus .module__hl{opacity:1}.module__hl{opacity:0;transition:opacity var(--t-fast) ease}.module__label-leader{transition:opacity var(--t-fast) ease}.ship--docked{animation:ship-arrive var(--t-slow) ease-out}@keyframes ship-arrive{0%{opacity:0;transform:translate(-34px,10px)}to{opacity:1;transform:none}}.tx-flash{animation:tx-flash .4s ease-out}@keyframes tx-flash{0%{opacity:0}to{opacity:1}}.rail-right{border-left:1px solid var(--line);background:var(--surface);padding:10px 16px;overflow-y:auto;display:flex;flex-direction:column;gap:6px;position:relative}.rail-right__head{display:flex;align-items:center;gap:var(--sp-2);font-size:11px;letter-spacing:.16em;color:var(--ink-2)}.rail-right__head svg{color:var(--ink-3)}.rail-right__head .spacer{flex:1}.actionlist{display:flex;flex-direction:column;border-top:1px solid var(--line)}.actionrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--sp-2);width:100%;min-height:44px;align-items:center;text-align:left;padding:5px 10px 5px 8px;border-bottom:1px solid var(--line-faint);border-left:2px solid transparent;color:var(--ink);transition:background-color var(--t-fast) ease,border-color var(--t-fast) ease,opacity var(--t-fast) ease}.actionrow:hover:not(:disabled){background:var(--surface-2)}.actionrow:disabled{opacity:.45;cursor:not-allowed}.actionrow--sel{background:var(--surface-raised);border-left-color:var(--orange)}.actionrow__title{display:flex;flex-wrap:wrap;align-items:center;gap:0 9px;font-size:13.5px;font-weight:500;color:var(--ink)}.actionrow__title .blocker{flex-basis:100%;padding-left:24px;color:var(--ink-3);font-size:11px;font-weight:400;letter-spacing:.06em}.actionrow__title svg{color:var(--ink-3);flex:none}.actionrow__price{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13.5px;text-align:right;line-height:1.3}.actionrow__price .sub{display:block;font-size:10.5px;color:var(--ink-3)}.actionrow__price .gain{color:var(--green)}.actionrow__price .cost{color:var(--ink)}.actionrow__price .cost.state-red{color:var(--red)}.pane{border:1px solid var(--line);background:var(--surface-2);border-radius:var(--radius);padding:8px 10px 10px;display:flex;flex-direction:column;gap:6px}.pane__preview-tag{font-size:10px;letter-spacing:.14em;color:var(--orange);display:flex;align-items:center;gap:6px}.pane__desc{font-size:12px;color:var(--ink-2)}.pane__cost{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12.5px;color:var(--ink);border-top:1px solid var(--line-faint);border-bottom:1px solid var(--line-faint);padding:6px 0}.pane__cost .neg{color:var(--ink-2)}.pane__effect{display:block;margin-top:4px;color:var(--ink-3);font-size:10.5px}.pane__note{font-size:10.5px;color:var(--ink-3);line-height:1.4}.pane__error{font-size:12px;color:var(--red);display:flex;gap:8px;align-items:flex-start}.pane__error svg{flex:none;margin-top:1px}.endpanel{border:1px solid var(--line);border-top:2px solid var(--line);background:var(--surface-2);border-radius:var(--radius);padding:14px 12px 12px;display:flex;flex-direction:column;gap:10px}.endpanel__verdict{font-family:var(--font-display);font-weight:700;font-size:24px;line-height:1;letter-spacing:.05em;color:var(--ink)}.endpanel__verdict--win{color:var(--green);border-top-color:var(--green)}.endpanel__verdict--fail{color:var(--red);border-top-color:var(--red)}.endpanel__reason{font-size:12px;color:var(--ink-2);line-height:1.45}.endpanel__stats{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-faint);border:1px solid var(--line-faint)}.endpanel__stats>div{background:var(--surface);padding:7px 9px 8px;display:grid;gap:2px}.endpanel__stats dt{font-size:9.5px;letter-spacing:.12em;color:var(--ink-3)}.endpanel__stats dd{margin:0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:18px;line-height:1.1;color:var(--ink)}.endpanel__stats dd .unit{font-size:11px;color:var(--ink-3)}.fieldrow{display:flex;align-items:center;gap:var(--sp-2)}.fieldrow label{font-size:11.5px;color:var(--ink-2);letter-spacing:.06em}.fieldrow input[type=text],.fieldrow input[type=number]{flex:1;min-height:var(--target);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:0 10px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13px;color:var(--ink);transition:border-color var(--t-fast) ease}.fieldrow input:focus{border-color:var(--orange);outline:none}.unitpicker{display:flex;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.unitpicker__unit{flex:1;min-height:var(--target);border-right:1px solid var(--line);background:var(--surface);color:var(--ink-2);font-family:var(--font-mono);font-variant-numeric:tabular-nums;transition:background-color var(--t-fast) ease,color var(--t-fast) ease}.unitpicker__unit:last-child{border-right:none}.unitpicker__unit--on{background:var(--orange);color:#191210;font-weight:500}.fastlane{display:flex;gap:var(--sp-2)}.fastlane .btn,.rail-right__spacer{flex:1}.evidence{font-family:var(--font-mono);font-size:10px;color:var(--ink-3);line-height:1.55}.evidence__line{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.evidence b{color:var(--ink-2);font-weight:400}.bottom{position:relative;display:contents}.logpane{border-right:1px solid var(--line);padding:8px 20px 10px;overflow:hidden;display:flex;flex-direction:column;min-width:0}.logpane__head{display:flex;align-items:center;gap:var(--sp-3);color:var(--ink-2);font-size:12px;letter-spacing:.14em;margin-bottom:4px}.logpane__head svg{color:var(--ink-3)}.logpane__head .spacer{flex:1}.logpane__head .source-stamp{font-family:var(--font-mono);font-size:10px;color:var(--ink-3);letter-spacing:.06em;margin-left:8px}.loglist{list-style:none;margin:0;padding:0;min-height:0;flex:1;overflow-y:auto}.logrow{display:grid;grid-template-columns:34px 96px minmax(0,1fr) 90px 96px;gap:10px;align-items:baseline;padding:2px 0;border-bottom:1px solid var(--line-faint);font-size:12px;transition:background-color var(--t-fast) ease}.logrow:hover{background:var(--surface-2)}.logrow--new{position:relative}.logrow--new:before{content:"";position:absolute;inset:0;background:#a7c0aa29;opacity:0;pointer-events:none;animation:row-confirmed 1.4s ease-out both;animation-delay:inherit}@keyframes row-confirmed{0%{opacity:0}15%{opacity:1}to{opacity:0}}.logrow:last-child{border-bottom:none}.logrow__turn{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:11.5px;color:var(--ink-3)}.logrow__kind{font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logrow__text{color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logrow__delta{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12px;text-align:right;color:var(--ink-3);white-space:nowrap}.logrow__delta.pos{color:var(--green)}.logrow__delta.neg{color:var(--red)}.logrow__cr{font-size:10px;color:var(--ink-3)}.logrow__src{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.05em;color:var(--ink-3);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.log-empty{color:var(--ink-3);font-size:12px;padding:8px 0}.timelines{padding:10px 20px 12px;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:10px}.timelines__head{display:flex;align-items:baseline;gap:var(--sp-3);color:var(--ink-2);font-size:12px;letter-spacing:.14em}.timelines__head .value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink)}.timelines__note{margin-left:auto;font-size:10px;font-weight:400;letter-spacing:.04em;color:var(--ink-3);white-space:nowrap}.turnstrip{display:flex;list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.turnstrip__cell{flex:1;min-height:34px;display:flex;align-items:center;justify-content:center;border-right:1px solid var(--line-faint);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:12.5px;color:var(--ink-3)}.turnstrip__cell:last-child{border-right:none}.turnstrip__cell--done{background:var(--green);color:#101416;font-weight:500;border-right-color:var(--surface-2)}.turnstrip__cell--now{background:#ee79481f;color:var(--orange);font-weight:600;box-shadow:inset 0 0 0 1.5px var(--orange)}.turnstrip__cell--next{border-right:1px dashed var(--line)}.drawer-scrim{position:fixed;inset:0;background:#0a0d0e8c;z-index:60}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(760px,94vw);background:var(--surface);border-left:1px solid var(--line);z-index:61;display:flex;flex-direction:column;animation:drawer-in var(--t-slow) ease-out}@keyframes drawer-in{0%{transform:translate(28px);opacity:.4}to{transform:none;opacity:1}}.drawer__head{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--line)}.drawer__title{font-family:var(--font-display);font-size:22px;font-weight:700;letter-spacing:.08em}.drawer__subtitle{font-size:11.5px;color:var(--ink-2);letter-spacing:.06em}.drawer__filters{display:flex;gap:var(--sp-2);padding:var(--sp-3) var(--sp-5);border-bottom:1px solid var(--line-faint);flex-wrap:wrap}.drawer__body{flex:1;overflow-y:auto;padding:var(--sp-2) var(--sp-5) var(--sp-5)}.ledgerlist{list-style:none;margin:0;padding:0}.ledgerlist li{display:grid;grid-template-columns:44px 90px minmax(0,1fr) 110px auto;gap:var(--sp-3);padding:10px 0;border-bottom:1px solid var(--line-faint);font-size:12.5px;align-items:baseline}.ledgerlist .kind{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;color:var(--ink-3)}.ledgerlist .turncell{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:11.5px}.ledgerlist .text{color:var(--ink);min-width:0}.ledgerlist .delta{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;color:var(--ink-2)}.ledgerlist .delta.pos{color:var(--green)}.ledgerlist .delta.neg{color:var(--red)}.ledgerlist .src{font-family:var(--font-mono);font-size:10px;color:var(--ink-3);text-align:right;white-space:nowrap}.overlay-scrim{position:fixed;inset:0;background:#0a0d0eb8;z-index:70;display:grid;place-items:center;padding:var(--sp-6);overflow-y:auto}.overlay{width:min(880px,100%);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 30px 80px #00000080;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.overlay__head{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--line)}.overlay__title{font-family:var(--font-display);font-size:24px;font-weight:700;letter-spacing:.08em}.overlay__note{font-size:12px;color:var(--ink-2);letter-spacing:.02em}.overlay__body{padding:var(--sp-4) var(--sp-5) var(--sp-5);display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--sp-5)}@media (max-width: 860px){.overlay__body{grid-template-columns:1fr}}.inspect-table{width:100%;border-collapse:collapse;font-size:12.5px}.inspect-table caption{text-align:left;font-size:11px;letter-spacing:.14em;color:var(--ink-2);padding:10px 0 6px}.inspect-table td,.inspect-table th{border-top:1px solid var(--line-faint);padding:8px 0;text-align:left;vertical-align:top}.inspect-table th{width:190px;color:var(--ink-2);font-weight:400}.inspect-table td{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink);overflow-wrap:anywhere}.overlay__purchase{border:1px solid var(--line);background:var(--surface-2);border-radius:var(--radius);padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.overlay__price-label{font-size:11px;letter-spacing:.14em;color:var(--ink-2)}.popup-prompt{position:fixed;inset:0;z-index:100000001;display:grid;place-items:center;background:#050708b8}.popup-prompt__panel{width:min(420px,calc(100vw - 32px));background:var(--surface);border:1px solid var(--orange);border-radius:var(--radius);padding:var(--sp-5);display:grid;gap:var(--sp-3);color:var(--ink-2);font-size:13px;line-height:1.5}.popup-prompt__panel p{margin:0}.popup-prompt__title{font-family:var(--font-display);font-size:22px;letter-spacing:.08em;color:var(--ink)}.popup-prompt__actions{display:flex;gap:var(--sp-2)}.guide{width:min(760px,100%)}.guide__title{font-family:var(--font-display);font-size:26px;font-weight:700;letter-spacing:.08em}.guide__body{padding:var(--sp-4) var(--sp-5);display:grid;gap:var(--sp-4);font-size:13px;line-height:1.55;color:var(--ink-2)}.guide__lead{margin:0;font-size:14px;color:var(--ink)}.guide__section h3{margin:0 0 6px;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--orange)}.guide__section p,.guide__section ol,.guide__section ul{margin:0}.guide__section ol,.guide__section ul{padding-left:18px;display:grid;gap:4px}.guide__section strong{color:var(--ink);font-weight:600}.guide__section a{color:var(--orange)}.guide__table{width:100%;margin-top:8px;border-collapse:collapse;font-size:12.5px}.guide__table th,.guide__table td{text-align:left;padding:5px 0;border-bottom:1px solid var(--line-faint)}.guide__table th{width:38%;font-weight:500;color:var(--ink)}.guide__hint{margin-top:8px;color:var(--ink-2)}.guide__hint summary{cursor:pointer;color:var(--ink)}.guide__foot{display:flex;justify-content:flex-end;padding:0 var(--sp-5) var(--sp-4)}.next-step{border-left:2px solid var(--orange);background:var(--surface-2);padding:7px 10px;font-size:12px;line-height:1.45;color:var(--ink-2)}.next-step__label{display:block;font-size:10px;letter-spacing:.16em;color:var(--orange);margin-bottom:2px}.launch__name{min-height:44px;width:100%;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:0 10px;font-family:var(--font-mono)}.launch__mine{margin-top:var(--sp-4);display:grid;gap:var(--sp-2)}.launch__list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line-faint)}.launch__list li{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);min-height:40px;border-bottom:1px solid var(--line-faint)}.launch__acct{font-family:var(--font-mono);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.launch__here{font-size:10px;letter-spacing:.14em;color:var(--green)}.overlay__explicit{border:1px solid rgba(238,121,72,.55);background:#ee794814;color:var(--orange);border-radius:var(--radius);font-size:12px;padding:10px 12px;display:flex;gap:9px;align-items:flex-start}.overlay__explicit svg{flex:none;margin-top:1px}.result-scrim{position:fixed;inset:0;background:#0a0d0edb;z-index:80;overflow-y:auto;display:grid;place-items:center;padding:var(--sp-6)}.result{width:min(860px,100%);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--sp-6)}.result__header{font-family:var(--font-display);font-weight:700;font-size:54px;line-height:1;letter-spacing:.06em;color:var(--ink);margin-bottom:6px}.result__header--fail{color:var(--red)}.result__header--win{color:var(--green)}.result__reason{font-size:14.5px;color:var(--ink-2);margin-bottom:var(--sp-6)}.result__scorelabel{font-size:11px;letter-spacing:.16em;color:var(--ink-2)}.result__score{font-weight:700;font-size:76px;line-height:1;font-variant-numeric:tabular-nums;color:var(--orange);font-family:var(--font-display)}.result__score .unit{font-size:30px;color:var(--ink-3);font-weight:700}.result__table{margin:var(--sp-5) 0;border-top:1px solid var(--line)}.result__table h3{font-size:11px;letter-spacing:.16em;color:var(--ink-2);margin:var(--sp-4) 0 var(--sp-2)}.history-table{width:100%;border-collapse:collapse;font-size:12.5px}.history-table th,.history-table td{border-bottom:1px solid var(--line-faint);padding:8px 6px;text-align:left;vertical-align:top}.history-table th{font-size:10.5px;letter-spacing:.14em;color:var(--ink-3);font-weight:400}.history-table .delta{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.history-table .delta.pos{color:var(--green)}.history-table .delta.neg{color:var(--red)}.history-table .num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--ink-2)}.result__actions{display:flex;gap:var(--sp-3);flex-wrap:wrap}.alert{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;font-size:12.5px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);color:var(--ink-2)}.alert--error{border-color:#c86b5999;color:var(--red)}.alert--info{border-color:#ee79488c}.alert__close{margin-left:auto;flex:none;color:var(--ink-3)}.alert__close:hover{color:var(--ink)}.boot{height:100%;display:grid;place-items:center;padding:24px;font-family:var(--font-display);letter-spacing:.3em;color:var(--ink-3);animation:boot-pulse 1s ease-in-out infinite alternate}.boot__panel{width:min(560px,100%);display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:36px 28px}.boot__wordmark{font-size:40px;font-weight:700;letter-spacing:.3em;color:var(--ink);padding-left:.3em}.boot__status{font-size:12px;letter-spacing:.18em;color:var(--ink-3)}.boot__station{font-family:var(--font-mono);font-size:12px;letter-spacing:0;color:var(--ink-2);overflow-wrap:anywhere}.boot__error{font-family:var(--font-ui);font-size:12px;letter-spacing:0;line-height:1.5;color:var(--red);max-width:44ch}.boot__actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:4px}.boot__account{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--green)}.boot__note{font-size:10px;letter-spacing:.16em;color:var(--ink-3)}.boot__note a{color:var(--orange)}.boot__pitch{margin:0;max-width:440px;font-family:var(--font-ui);font-size:13px;letter-spacing:normal;line-height:1.55;color:var(--ink-2)}.boot--welcome{animation:none}@keyframes boot-pulse{0%{opacity:.45}to{opacity:1}}.loading{display:grid;place-items:center;height:200px;color:var(--ink-3);font-family:var(--font-display);letter-spacing:.24em}@media (max-width: 1366px){:root{--grid-track-left: 208px;--grid-track-right: 316px;--header-h: 56px;--bottom-h: 158px}.hdr__station-id{max-width:24ch}}@media (max-width: 1240px){:root{--grid-track-left: 200px;--grid-track-right: 300px}}@media (max-width: 1120px){.app{overflow-y:auto}.shell{flex:none;grid-template-columns:1fr;grid-template-areas:"canvas" "rail-left" "rail-right"}.station-canvas{grid-area:canvas;aspect-ratio:896 / 679}.rail-left{grid-area:rail-left;border-right:none;border-top:1px solid var(--line)}.rail-right{grid-area:rail-right;border-left:none;border-top:1px solid var(--line)}.shell__bottom{height:auto;grid-template-columns:1fr}.logpane{border-right:none;border-bottom:1px solid var(--line)}.hdr{flex-wrap:wrap;height:auto;min-height:var(--header-h);padding-block:10px}}@media (max-width: 720px){.result__header,.result__score{font-size:44px}.drawer{width:100vw}}@media (max-width: 640px){.ledgerlist li{grid-template-columns:34px 70px minmax(0,1fr)}.ledgerlist li .delta,.ledgerlist li .src{display:none}.station-canvas-registries,.station-canvas:after{display:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.station-canvas{position:relative;display:grid;place-items:center;min-height:0;overflow:hidden;background:#0b0f10}.station-canvas-artwrap{position:absolute;inset:0;margin:0}.station-canvas-img,.station-canvas-overlay{position:absolute;inset:0;width:100%;height:100%;display:block}.station-canvas-img{object-fit:cover}.station-scene{position:absolute;inset:0;pointer-events:none}.station-stars,.station-stars-field,.station-fx{position:absolute;inset:0;width:100%;height:100%;display:block}.station-stars{-webkit-mask:url(/assets/station-space-mask-DhIfNByN.webp) center / cover no-repeat;mask:url(/assets/station-space-mask-DhIfNByN.webp) center / cover no-repeat}.station-stars-field circle{fill:#e9e5dc}.station-panel,.reactor-ring,.drone-orbit__spin,.drone-orbit__counter{transform-box:view-box;transform-origin:0 0}.station-ship{transform-box:fill-box;transform-origin:center}.reactor-ring__light{fill:#e8892f;opacity:.8}.reactor-ring__beacon{fill:#ffb45c;stroke:#5a2c0c;stroke-width:.8}.station-light{fill:url(#station-light);mix-blend-mode:screen;opacity:0}.drone-parked,.drone-orbit{transition:opacity .2s ease}.drone-orbit,.station-fx--repair .drone-parked{opacity:0}.station-fx--repair .drone-orbit{opacity:1}.hull-restore__band{opacity:0;mix-blend-mode:screen}@media (prefers-reduced-motion: no-preference){.station-scene{transform-origin:48% 46%;animation:station-drift 72s ease-in-out infinite alternate;will-change:transform;-webkit-mask-image:linear-gradient(to right,transparent,#000 28px,#000 calc(100% - 28px),transparent),linear-gradient(to bottom,transparent,#000 28px,#000 calc(100% - 28px),transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 28px,#000 calc(100% - 28px),transparent),linear-gradient(to bottom,transparent,#000 28px,#000 calc(100% - 28px),transparent);mask-composite:intersect}.station-stars-field{transform-origin:48% 46%;animation:stars-counter-drift 72s ease-in-out infinite alternate}.station-panel--w1{animation:panel-tilt 24s ease-in-out infinite alternate}.station-panel--w2{animation:panel-tilt 27s ease-in-out -6s infinite alternate}.station-panel--w3{animation:panel-tilt 22s ease-in-out -11s infinite alternate}.station-panel--w4{animation:panel-tilt 29s ease-in-out -3s infinite alternate}.reactor-ring{animation:ring-turn 75s linear infinite}.station-light--reactor{animation:light-pulse 3.4s ease-in-out infinite alternate}.station-light--reactor-core{animation:light-pulse 2.6s ease-in-out -1.1s infinite alternate}.station-fx--repair .station-light--bay{animation:light-pulse 2.8s ease-in-out -.6s infinite alternate}.station-fx--repair .station-light--bay-lamp{animation:light-pulse 2.2s ease-in-out -1.4s infinite alternate}.station-fx--repair .drone-orbit__spin{animation:ring-turn 9s linear infinite}.station-fx--repair .drone-orbit__counter{animation:ring-unturn 9s linear infinite}.station-fx--repair .drone-orbit__depth{animation:orbit-depth 9s linear infinite}.station-ship{animation:ship-berth 9s ease-in-out infinite}.station-ship--arriving{animation:ship-arrive 1.1s cubic-bezier(.16,.84,.3,1),ship-berth 9s ease-in-out 1.1s infinite}.hull-restore__band{animation:hull-sweep .9s ease-in-out}}@keyframes station-drift{0%{transform:translate3d(-4px,3px,0) rotate(-.75deg)}to{transform:translate3d(4px,-3px,0) rotate(.75deg)}}@keyframes stars-counter-drift{0%{transform:translate3d(2.67px,-2px,0) rotate(.5deg)}to{transform:translate3d(-2.67px,2px,0) rotate(-.5deg)}}@keyframes panel-tilt{0%{transform:rotate(-3deg)}to{transform:rotate(3deg)}}@keyframes ring-turn{to{transform:rotate(360deg)}}@keyframes ring-unturn{to{transform:rotate(-360deg)}}@keyframes orbit-depth{0%,42%,to{opacity:1}55%,92%{opacity:.35}}@keyframes light-pulse{0%{opacity:.18}to{opacity:.62}}@keyframes ship-berth{0%,to{transform:translate(0)}25%{transform:translate(3px,-1.5px)}50%{transform:translate(5px)}75%{transform:translate(3px,1.5px)}}@keyframes ship-arrive{0%{opacity:0;transform:translate(190px)}20%{opacity:1}to{opacity:1;transform:translate(0)}}@keyframes hull-sweep{0%{opacity:0;transform:translate(0)}20%{opacity:1}80%{opacity:1}to{opacity:0;transform:translate(330px)}}.modspot-pending circle,.modspot-failure circle{fill:none;stroke-width:1.6;pointer-events:none}.modspot-pending circle{stroke:#d9b96a;stroke-dasharray:4 3;opacity:.8}.modspot-pending text,.modspot-failure text{font:600 10.5px IBM Plex Mono,monospace;letter-spacing:.1em;pointer-events:none}.modspot-pending text{fill:#d9b96a}.modspot-failure circle{stroke:#e0705c}.modspot-failure text{fill:#e0705c}.station-canvas-tag{position:absolute;bottom:34px;left:14px;z-index:25;display:inline-flex;align-items:center;gap:8px;max-width:calc(100% - 28px);padding:6px 10px;border-radius:var(--radius);font:600 11px IBM Plex Mono,monospace;letter-spacing:.08em;background:#0b0f10db;pointer-events:none}.station-canvas-tag--lock{border:1px solid #d9b96a;color:#d9b96a}.station-canvas-tag--error{bottom:68px;border:1px solid #e0705c;color:#e0705c}.captain-badge{position:relative;display:block}.captain-badge__out{position:absolute;inset:0;opacity:0}@media (prefers-reduced-motion: no-preference){.modspot-pending circle{animation:pending-pulse 1.4s ease-in-out infinite alternate}.modspot--failed .modspot-shake{animation:module-shake .22s ease-in-out}.modspot-state--swap{animation:state-swap .2s ease-out}.captain-badge__out{animation:captain-out .2s ease-in}.captain-badge__in{display:inline-block;animation:captain-in .2s ease-out .12s both}.station-canvas-tag{animation:tag-in .16s ease-out}}@keyframes pending-pulse{0%{opacity:.35}to{opacity:.9}}@keyframes module-shake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}45%{transform:translate(4px)}70%{transform:translate(-2px)}}@keyframes state-swap{0%{opacity:0}to{opacity:1}}@keyframes captain-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}@keyframes captain-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes tag-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.modspot-hit{fill:transparent;transition:fill .16s ease}.modspot:hover .modspot-hit,.modspot:focus-visible .modspot-hit{fill:#e9e5dc0d}.modspot:focus-visible .modspot-hit{stroke:#ee7948;stroke-width:1.4}.modspot-name{font:600 13.5px IBM Plex Sans,sans-serif;fill:#e9e5dc;letter-spacing:.14em}.modspot-state{font:600 13.5px IBM Plex Sans,sans-serif;letter-spacing:.1em}.modspot-underline,.modspot-leader{stroke:#e9e5dc99;stroke-width:1.2;fill:none;transition:stroke .16s ease,opacity .16s ease}.modspot:hover .modspot-leader,.modspot:hover .modspot-underline{stroke:#e9e5dcf2}.modspot-dot{fill:#e9e5dc}.modspot-dot.queued{fill:#d9b96a}.station-canvas:after{content:"";position:absolute;inset:auto 0 0;height:48px;background:linear-gradient(transparent,#0b0f10d9);pointer-events:none}.station-canvas-registries{position:absolute;z-index:1;left:14px;right:14px;bottom:10px;display:flex;justify-content:space-between;gap:24px;color:#67727a;font:500 10.5px IBM Plex Mono,monospace;letter-spacing:.08em;user-select:none}.station-canvas-banner{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:30;width:min(92%,720px);pointer-events:auto}.repair-ring{fill:none;stroke:#d9b96a;stroke-width:1.4;opacity:.9;animation:repair-pulse 1.6s ease-in-out infinite;transform-box:fill-box;transform-origin:center}@keyframes repair-pulse{0%,to{opacity:.9;transform:scale(1)}50%{opacity:.35;transform:scale(1.25)}}.modspot{outline:none}.modspot:focus-visible{outline:none}.modspot-label{pointer-events:none;user-select:none}.rail-right__pending{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;color:var(--orange);border:1px solid rgba(238,121,72,.55);border-radius:var(--radius);padding:5px 8px;white-space:nowrap}.btn.is-busy{cursor:wait;opacity:.75}.gauge--danger .gauge__head{color:var(--red)}.gauge--danger .gauge__head svg{color:var(--red)}.statrow--active{border-left:2px solid var(--orange);padding-left:8px}.statrow--active .statrow__amount{color:var(--orange)}.statrow__hint{display:block;font-size:10px;letter-spacing:.06em;color:var(--ink-3);text-align:right}.subcount{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:10.5px;color:var(--ink-3);margin-left:6px}.btn--primary .subcount{color:#191210b3}.overlay-scrim,.result-scrim,.drawer-scrim{animation:scrim-in .16s ease-out}@keyframes scrim-in{0%{opacity:0}to{opacity:1}}.overlay,.result{animation:panel-in .18s ease-out}@keyframes panel-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.alert{animation:alert-in var(--t-fast) ease-out}@keyframes alert-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.rail-right__pending{animation:none}.statrow--active{transition:border-color var(--t-fast) ease,padding-left var(--t-fast) ease}@media (prefers-reduced-motion: reduce){.station-ship,.repair-ring,.acct__dot--pending,.boot,.canvas__banner,.alert,.overlay,.result,.drawer,.overlay-scrim,.result-scrim,.drawer-scrim{animation:none!important}.overlay,.result,.drawer{transform:none!important}.btn:active:not(:disabled){transform:none}}
