:root{--ui-accent:#4fd8ff;--ui-accent-soft:#4fd8ff38;--ui-accent-line:#4fd8ff4d;--ui-amber:#e6a65a;--ui-copper:#d08a4c;--ui-green:#3dff9a;--ui-red:#ff4d5e;--ui-text:#dfe8f5;--ui-dim:#8a94a8;--ui-glass:linear-gradient(180deg, #0c121cdb, #05080deb);--ui-glass-flat:#06090fb3;--ui-hairline:#ffffff14;--ui-track:#ffffff14;--ui-salvage:#d08a4c;--ui-materials:#5fd0c0;--ui-probes:#4fd8ff;--ui-finds:#e6a65a;--ui-journey:#a98bff;--ui-font:"Segoe UI", system-ui, sans-serif;--ui-mono:"Cascadia Mono", Consolas, ui-monospace, monospace}[class^=cp-],[class*=\ cp-],[class^=cp-]:before,[class*=\ cp-]:before{box-sizing:border-box}.cp-label{font:600 11px var(--ui-font);letter-spacing:.16em;text-transform:uppercase;color:var(--ui-dim)}.cp-num{font-family:var(--ui-mono);font-variant-numeric:tabular-nums}.cp-big{font-size:22px;font-weight:300;line-height:1.25}.cp-small{color:var(--ui-dim);font-size:12px}.cp-accent{color:var(--ui-accent)}.cp-amber{color:var(--ui-amber)}.cp-copper{color:var(--ui-copper)}.cp-green{color:var(--ui-green)}.cp-red{color:var(--ui-red)}.cp-panel{background:var(--ui-glass);border:1px solid var(--ui-accent-soft);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);color:var(--ui-text);padding:16px 18px;position:relative}.cp-panel:before{content:"";background:var(--cp-edge,var(--ui-accent));width:26px;height:2px;box-shadow:0 0 8px var(--cp-edge,var(--ui-accent));position:absolute;top:0;left:0}.cp-ring{--fill:100%;--c:var(--ui-accent);background:conic-gradient(var(--c) 0 var(--fill), var(--ui-track) 0);width:68px;height:68px;box-shadow:0 0 14px color-mix(in srgb, var(--c) 35%, transparent);border-radius:50%;place-items:center;margin:0 auto;transition:box-shadow .3s;display:grid;position:relative}.cp-ring>span{width:54px;height:54px;font:600 14px var(--ui-mono);color:var(--c);background:#070b12;border-radius:50%;place-items:center;display:grid}.cp-auto-mark{width:16px;height:16px;font:normal 700 11px/1 var(--ui-font);color:#0b0716;background:var(--ui-journey);pointer-events:none;border-radius:50%;place-items:center;display:grid;position:absolute;top:-4px;right:-4px;box-shadow:0 0 8px #a98bff99}.cp-ring.copper{--c:var(--ui-copper)}.cp-ring.amber{--c:var(--ui-amber)}.cp-ring.red{--c:var(--ui-red)}.cp-bar{background:var(--ui-track);border-radius:3px;height:6px;overflow:hidden}.cp-bar>i{background:linear-gradient(90deg, #2aa6d6, var(--ui-accent));width:0;height:100%;transition:width .4s ease-out;display:block;box-shadow:0 0 8px #4fd8ff99}.cp-bar.copper>i{background:linear-gradient(90deg, #8a5228, var(--ui-copper));box-shadow:0 0 8px #d08a4c80}.cp-bar.amber>i{background:linear-gradient(90deg, #9a6a2c, var(--ui-amber));box-shadow:0 0 8px #e6a65a80}.cp-chip{font:600 11px var(--ui-font);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--ui-accent-line);color:var(--ui-accent);background:#4fd8ff14;align-items:center;gap:6px;padding:3px 10px;display:inline-flex}.cp-button{white-space:nowrap;font:600 12px var(--ui-font);letter-spacing:.08em;text-transform:uppercase;color:var(--ui-accent);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);cursor:pointer;background:#4fd8ff1a;border:1px solid #4fd8ff73;padding:7px 16px;transition:background .2s,color .2s;display:inline-block}.cp-button:hover,.cp-button:focus-visible{background:#4fd8ff33;outline:none}.cp-button.primary{color:#03121a;background:var(--ui-accent)}.cp-button.primary:hover,.cp-button.primary:focus-visible{background:#8fe6ff}.cp-button.danger{color:var(--ui-red);background:#ff4d5e1a;border-color:#ff4d5e73}.cp-link{font:600 12px var(--ui-font);color:var(--ui-accent);cursor:pointer;background:0 0;border:0;padding:0}.cp-link:hover,.cp-link:focus-visible{outline:none;text-decoration:underline}.cp-state{align-items:center;gap:6px;font-size:13px;display:inline-flex}.cp-state:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px;box-shadow:0 0 6px}.cp-state.ok{color:var(--ui-green)}.cp-state.warn{color:var(--ui-amber)}.cp-state.bad{color:var(--ui-red)}.cp-state>span{color:var(--ui-text)}.cp-state>small{color:var(--ui-dim);font-size:12px}.cp-sheet:not(.open),.briefing:not(.open),.logbook:not(.open),.report:not(.open),.settings:not(.open),.cp-app-card:not(.open),.cp-app-update:not(.open){pointer-events:none}html,body{background:#000;height:100%;margin:0;overflow:hidden}canvas{touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;display:block}.start-screen{color:#dfe8f5;cursor:pointer;background:radial-gradient(#03040a59,#03040abf);border:0;flex-direction:column;justify-content:center;align-items:center;gap:18px;font-family:system-ui,sans-serif;display:flex;position:fixed;inset:0}.start-screen:focus{outline:none}.start-title{letter-spacing:.4em;text-shadow:0 0 24px #4fd8ff73;margin-right:-.4em;font-size:clamp(28px,min(9vh,9vw),96px);font-weight:200}.start-prompt{letter-spacing:.25em;text-transform:uppercase;color:#4fd8ff;font-size:clamp(14px,2.2vh,22px);animation:2.4s ease-in-out infinite start-pulse}.start-hint{color:#7a849a;font-size:12px}@keyframes start-pulse{50%{opacity:.45}}.fullscreen-button{width:30px;height:30px;color:var(--ui-accent);cursor:pointer;opacity:.6;background:0 0;border:0;padding:6px;transition:opacity .2s;position:fixed;top:24px;right:24px}.fullscreen-button:hover,.fullscreen-button:focus-visible{opacity:1}.fullscreen-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.item-icon{flex:none}.log-body{padding-left:12px}.log-entry{color:#cfd6e6;align-items:baseline;gap:8px;padding:2px 0;font-size:12px;line-height:1.45;display:flex}.log-time{color:#6c768b;font-variant-numeric:tabular-nums;flex:none;min-width:46px}.log-text{min-width:0}.log-scrap{color:#e6c39a}.log-entry.tone-online .log-text{color:#4fd8ff}.log-entry.tone-warning .log-text{color:#e6a65a}.log-entry.tone-find .log-text,.log-entry.tone-find .log-icon{color:#f2cf9f}.log-entry.arrive{animation:.6s ease-out log-arrive}.logbook{width:min(440px,100vw - 32px);padding:16px 18px 14px}.logbook-title{color:#f1f4fa;margin:0 0 10px;font-size:17px;font-weight:500}.logbook-filters{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.logbook-chip{color:#7a849a;font:inherit;cursor:pointer;background:0 0;border:1px solid #8ca0be38;border-radius:999px;padding:2px 10px;font-size:11.5px;transition:color .2s,border-color .2s}.logbook-chip:hover,.logbook-chip:focus-visible{color:#cfd6e6;outline:none}.logbook-chip.active{color:#4fd8ff;border-color:#4fd8ff}.logbook-list{scrollbar-width:thin;scrollbar-color:#8ca0be40 transparent;border-top:1px solid #8ca0be1f;max-height:min(52vh,420px);padding-right:4px;overflow-y:auto}.logbook-day{color:#6c768b;letter-spacing:.08em;text-transform:uppercase;margin:10px 0 4px;font-size:10.5px}.logbook .log-entry{align-items:center;padding:4px 0;font-size:12.5px}.log-icon{color:#8a94a8;flex:none;width:14px;height:14px;display:inline-flex}.log-icon svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.log-entry.tone-online .log-icon{color:#4fd8ff}.log-entry.tone-warning .log-icon{color:#e6a65a}.logbook-empty{color:#7a849a;margin:12px 0 4px;font-size:12px}@keyframes log-arrive{0%{opacity:0;transform:translateY(-3px)}}.ui-button{color:#cfd6e6;cursor:pointer;background:#ffffff08;border:1px solid #8ca0be40;border-radius:7px;padding:7px 12px;font:12px system-ui,sans-serif;transition:background .2s,border-color .2s,color .2s}.ui-button:hover{background:#ffffff0f;border-color:#8ca0be73}.ui-button:focus-visible{outline-offset:2px;outline:1px solid #4fd8ff}.ui-button.primary{color:#c9f2ff;background:#4fd8ff1a;border-color:#4fd8ff73}.ui-button.primary:hover{background:#4fd8ff2e}.ui-button.ready{animation:2.4s ease-in-out infinite ready-breathe}@keyframes ready-breathe{50%{border-color:#4fd8ffcc}}.ui-button:disabled{color:#6c768b;cursor:default;background:0 0;border-color:#8ca0be24}.briefing,.logbook,.report{z-index:10;color:#cfd6e6;opacity:0;background:#06080de6;border:1px solid #8ca0be33;border-radius:12px;font:13px/1.5 system-ui,sans-serif;transition:opacity .2s ease-in,transform .2s ease-in;position:fixed;top:50%;left:50%;transform:translate(-50%,calc(6px - 50%))scale(.985)}.briefing.open,.logbook.open,.report.open{opacity:1;transition:opacity .34s cubic-bezier(.33,0,.2,1),transform .42s cubic-bezier(.16,1,.3,1);transform:translate(-50%,-50%)}.briefing[hidden],.logbook[hidden],.report[hidden]{display:none}.briefing{width:min(400px,100vw - 32px);padding:20px 22px}.briefing-top{letter-spacing:.12em;text-transform:uppercase;font-size:11px;display:flex}.briefing-kicker{color:#c9b8ff}.briefing-area{color:#6c768b;margin-left:auto}.briefing-title{color:#f1f4fa;margin:8px 0 6px;font-size:19px;font-weight:500}.briefing-text{color:#9aa4b8;margin:0;font-size:12.5px;line-height:1.6}.briefing-facts{gap:10px;margin:14px 0 4px;display:flex}.briefing-facts>div{border:1px solid #8ca0be2e;border-radius:8px;flex:1;padding:9px 11px}.briefing-label{color:#7a849a;letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;font-size:10.5px;display:block}.briefing-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.systems-head{align-items:center;margin-bottom:10px;display:flex}.systems-kicker{color:#7a849a;letter-spacing:.12em;text-transform:uppercase;font-size:11px}.systems-close{color:#7a849a;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;width:26px;height:26px;margin-left:auto;padding:5px;display:inline-flex}.systems-close:hover,.systems-close:focus-visible{color:#cfd6e6;border-color:#8ca0be40}.systems-close svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;width:100%;height:100%}@media (prefers-reduced-motion:reduce){.ui-button.ready,.log-entry.arrive{animation:none}}.settings-nav-icon svg,.settings-close svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.settings{z-index:12;color:#cfd6e6;opacity:0;background:#06080df7;border:1px solid #8ca0be33;border-radius:14px;flex-direction:column;width:min(680px,100vw - 32px);height:min(480px,100vh - 32px);font:13px/1.5 system-ui,sans-serif;transition:opacity .25s,transform .25s;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,calc(8px - 50%))}.settings.open{opacity:1;transform:translate(-50%,-50%)}.settings[hidden]{display:none}.settings-head{border-bottom:1px solid #8ca0be1f;align-items:center;padding:14px 16px 12px 20px;display:flex}.settings-kicker{color:#7a849a;letter-spacing:.14em;text-transform:uppercase;font-size:11px}.settings-close{color:#7a849a;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;width:28px;height:28px;margin-left:auto;padding:6px;display:inline-flex}.settings-close:hover,.settings-close:focus-visible{color:#cfd6e6;border-color:#8ca0be40}.settings-body{flex:1;grid-template-columns:168px minmax(0,1fr);min-height:0;display:grid}.settings-nav{border-right:1px solid #8ca0be1f;flex-direction:column;gap:2px;padding:12px 10px;display:flex}.settings-nav-item{color:#8a94a8;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;transition:background .2s,color .2s;display:flex;position:relative}.settings-nav-item:hover{color:#cfd6e6;background:#ffffff0a}.settings-nav-item.active{color:#e8edf6;background:#4fd8ff12}.settings-nav-item.active:before{content:"";background:#4fd8ff;border-radius:2px;width:2px;position:absolute;top:9px;bottom:9px;left:0}.settings-nav-item:focus-visible{outline-offset:-1px;outline:1px solid #4fd8ff}.settings-nav-icon{width:16px;height:16px;display:inline-flex}.settings-nav-item.active .settings-nav-icon{color:#4fd8ff}.settings-content{scrollbar-width:thin;scrollbar-color:#8ca0be4d transparent;padding:16px 22px 20px;overflow-y:auto}.settings-title{color:#f1f4fa;margin:0 0 14px;font-size:17px;font-weight:500}.settings-card{background:#ffffff05;border:1px solid #8ca0be24;border-radius:10px;margin-bottom:12px;padding:4px 14px}.settings-card.danger{border-color:#e2786838}.settings-row{align-items:center;gap:12px;min-height:40px;padding:6px 0;display:flex}.settings-row+.settings-row{border-top:1px solid #8ca0be1a}.settings-label{color:#e8edf6}.settings-value{color:#8fdcf5;font-variant-numeric:tabular-nums;margin-left:auto}.settings-note{color:#6c768b;font-size:11.5px}.settings-row>.settings-note{margin-left:12px}.settings-note.block{margin-top:1px;display:block}.settings-row>.ui-button,.settings-row>.ui-switch{margin-left:auto}.settings-actions{flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0 10px;display:flex}.settings-card>.settings-actions{padding-top:0}.settings-choice>.ui-button{flex:1;min-height:34px}@media (pointer:coarse){.settings-choice>.ui-button{min-height:44px}}.settings-question{color:#cfd6e6;flex-basis:100%;font-size:12.5px}.settings-feedback{color:#8fdcf5;opacity:0;min-height:18px;margin:-2px 0 10px;font-size:12px;transition:opacity .3s}.settings-feedback.show{opacity:1}.ui-button.danger{color:#f1b3a8;border-color:#e2786866}.ui-button.danger:hover{background:#e278681a}.ui-switch-row{cursor:pointer;align-items:center;gap:12px;display:flex}.ui-switch{cursor:pointer;appearance:none;background:#ffffff0d;border:1px solid #8ca0be4d;border-radius:999px;flex:none;width:34px;height:20px;margin:0 0 0 auto;transition:background .2s,border-color .2s;position:relative}.ui-switch:after{content:"";background:#8a94a8;border-radius:50%;width:14px;height:14px;transition:transform .2s,background .2s;position:absolute;top:2px;left:2px}.ui-switch:checked{background:#4fd8ff2e;border-color:#4fd8ff8c}.ui-switch:checked:after{background:#4fd8ff;transform:translate(14px)}.ui-switch:focus-visible{outline-offset:2px;outline:1px solid #4fd8ff}.ui-range{cursor:pointer;appearance:none;background:0 0;width:100%;height:18px;margin:2px 0 0}.ui-range::-webkit-slider-runnable-track{background:#8ca0be40;border-radius:2px;height:3px}.ui-range::-webkit-slider-thumb{appearance:none;background:#4fd8ff;border:1px solid #bff3ff;border-radius:50%;width:13px;height:13px;margin-top:-5px}.ui-range::-moz-range-track{background:#8ca0be40;border-radius:2px;height:3px}.ui-range::-moz-range-thumb{background:#4fd8ff;border:1px solid #bff3ff;border-radius:50%;width:12px;height:12px}.debug-buttons{gap:8px;margin-top:14px;display:flex}.debug-row{justify-content:space-between;align-items:center;gap:8px;padding:3px 0;display:flex}.debug-select{color:#dfe8f5;min-width:0;font:inherit;background:#080c14e6;border:1px solid #8fdcf540;border-radius:4px;flex:1;padding:5px 6px}.debug-number{color:#dfe8f5;width:76px;font:inherit;font-variant-numeric:tabular-nums;background:#080c14e6;border:1px solid #8fdcf540;border-radius:4px;padding:5px 6px}.debug-note,.debug-queue{color:#8a94a8;font-variant-numeric:tabular-nums}.debug-note:empty{display:none}@media (width<=560px){.settings-body{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.settings-nav{border-bottom:1px solid #8ca0be1f;border-right:0;flex-direction:row;align-items:center;overflow-x:auto}.settings-nav-item{flex:none;min-height:44px}}.quest-dots{align-items:center;gap:6px;margin:10px 0 2px;display:flex}.quest-dots span{border-radius:50%;width:8px;height:8px}.quest-dots i{background:#8ca0be4d;width:18px;height:1px}.quest-dots .done{background:#4fd8ff}.quest-dots .current{border:1.5px solid #e6a65a}.quest-dots .locked{border:1px dashed #4a5366}.audio-row{grid-template-columns:18px 104px minmax(0,1fr) 38px auto;align-items:center;gap:10px;padding:7px 0;display:grid}.audio-icon{color:#aab3c5;width:16px;height:16px;display:inline-flex}.audio-row.master .audio-icon{color:#4fd8ff}.audio-icon svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.audio-label{color:#e8edf6;font-size:13px}.audio-value{color:#aab3c5;font-variant-numeric:tabular-nums;text-align:right}.audio-row.muted .audio-label,.audio-row.muted .audio-value,.audio-row.muted .ui-range{opacity:.45}.audio-kicker{color:#6c768b;letter-spacing:.08em;text-transform:uppercase;margin:10px 0 2px;font-size:10.5px}.audio-note{margin-top:8px}.fullscreen-button{transition:opacity 1.1s cubic-bezier(.33,0,.2,1) .25s,transform 1.3s cubic-bezier(.16,1,.3,1) .25s,filter 1.1s ease-out .25s}body.intro .fullscreen-button{opacity:0;pointer-events:none;filter:blur(3px);transform:translateY(-6px)}.start-title{animation:5s ease-in-out infinite start-breathe}@keyframes start-breathe{50%{text-shadow:0 0 36px #4fd8ffb3}}.start-screen{transition:background 1.8s}.start-screen.leaving{cursor:default;background:0 0}.start-screen.leaving .start-title{letter-spacing:.9em;opacity:0;filter:blur(6px);margin-right:-.9em;transition:letter-spacing 1.8s cubic-bezier(.22,1,.36,1),margin-right 1.8s cubic-bezier(.22,1,.36,1),opacity 1.6s,filter 1.6s;animation:none}.start-screen.leaving .start-prompt,.start-screen.leaving .start-hint{opacity:0;transition:opacity .5s;animation:none}@media (prefers-reduced-motion:reduce){.start-title{animation:none}.start-screen.leaving .start-title{letter-spacing:.4em;filter:none;margin-right:-.4em}body.intro .fullscreen-button{filter:none;transform:none}}body:after{content:"";z-index:9;opacity:0;pointer-events:none;background:#03040a52;transition:opacity .4s;position:fixed;inset:0}body.dialog-open:after{opacity:1}.target-layer{pointer-events:none;position:fixed;inset:0;overflow:hidden}.target-leaders{width:100%;height:100%;position:absolute;inset:0}.target-leader{stroke:#4fd8ff73;stroke-width:1px;opacity:0;transition:opacity .25s}.target-leader.show{opacity:1}.target-card{--tone:#7f8a99;--tone-text:#9aa4b2;border:1px solid #8ca0be29;border-left:2px solid var(--tone);color:#e8eef5;font-variant-numeric:tabular-nums;white-space:nowrap;opacity:0;background:#06080dd1;border-radius:0 7px 7px 0;justify-items:start;min-width:0;font:500 12px/1.3 system-ui,sans-serif;transition:opacity .2s,min-width .28s cubic-bezier(.2,.8,.2,1);display:grid;position:absolute;top:0;left:0}.target-card[data-tone=scrap]{--tone:#b8743a;--tone-text:#e6b78a}.target-card[data-tone=rare]{--tone:#e6a65a;--tone-text:#f0c48a}.target-card[data-tone=danger]{--tone:#f0605a;--tone-text:#f0605a}.target-card[data-tone=home]{--tone:#4fd8ff;--tone-text:#4fd8ff}.target-card.show{opacity:1}.target-card.open{justify-items:stretch;min-width:184px;max-width:184px}.target-card.course{min-width:176px}.target-card.show.has-actions{pointer-events:auto}.tc-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.tc-actions:empty{display:none}.tc-action{color:#4fd8ff;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#4fd8ff0f;border:1px solid #4fd8ff59;border-radius:6px;flex:1;min-height:44px;padding:0 10px;font:600 12px/1 system-ui,sans-serif}.tc-close{color:#8a94a8;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;min-width:36px;min-height:36px;margin:-6px -6px -6px auto;font-size:15px;display:none}.target-card.has-actions .tc-close{display:block}.target-card.has-actions.pinned .tc-head:after{display:none}.target-card.tc-ghost,.target-leader.tc-ghost{pointer-events:none!important;transition:none!important;animation:none!important}.tc-done{color:#3dff9a;letter-spacing:.08em;text-transform:uppercase;background:#3dff9a1a;border:1px solid #3dff9a73;border-radius:6px;flex:1;place-items:center;min-height:44px;font:600 12px/1 system-ui,sans-serif;display:grid}.tc-action.danger{color:#f0605a;background:#f0605a14;border-color:#f0605a8c}.tc-action:not(.danger)~.tc-action.danger{flex-basis:100%}.tc-note{color:#9aa4b2;white-space:normal;margin-top:6px;font-size:11px}.tc-action.primary{background:#4fd8ff2e;border-color:#4fd8ffb3}.tc-action.quiet{color:#b4bdca;background:0 0;border-color:#8ca0be4d}:root:not([data-layout=phone]) .tc-action{flex-basis:100%}:root:not([data-layout=phone]):not([data-touch=true]) .tc-action{letter-spacing:.06em;min-height:32px;font-size:10.5px}.tc-route{align-items:center;gap:12px;display:inline-flex}.tc-route i{border:1.5px solid #4fd8ff;border-radius:50%;width:7px;height:7px;position:relative}.tc-route i+i:before{content:"";background:#4fd8ff66;width:9px;height:1px;position:absolute;top:50%;right:calc(100% + 2px)}.tc-route i.before{background:#4fd8ff59;border-color:#4fd8ff73}.tc-route i.this{background:#4fd8ff;width:10px;height:10px;box-shadow:0 0 8px #4fd8ffb3}.tc-route i.new{border-style:dashed;border-color:#e6b78a}.tc-route span{color:#e8eef5;margin-left:-4px}.target-card.pinned .tc-head:after{content:"";background:#4fd8ff;border-radius:50%;width:5px;height:5px;margin-left:auto;box-shadow:0 0 6px #4fd8ff99}.target-card.course .tc-gauge{margin-left:auto}.tc-head{align-items:center;gap:8px;height:24px;padding:0 9px 0 8px;display:flex}.tc-kicker{color:var(--tone-text);letter-spacing:.12em;text-transform:uppercase;font-size:9.5px}.tc-chip{color:#e8eef5}.tc-fold{grid-template-rows:0fr;max-width:0;transition:grid-template-rows .28s cubic-bezier(.2,.8,.2,1),max-width .28s cubic-bezier(.2,.8,.2,1);display:grid}.target-card.open .tc-fold{grid-template-rows:1fr;max-width:184px}.tc-body{opacity:0;min-height:0;padding:0 10px 0 8px;transition:opacity .2s;overflow:hidden}.target-card.open .tc-body{opacity:1;padding-bottom:8px;transition-delay:80ms}.tc-name{margin:-2px 0 6px;font-size:13px}.tc-rows{border-top:1px solid #ffffff12;padding-top:4px}.tc-row{justify-content:space-between;align-items:baseline;gap:14px;padding:2px 0;display:flex}.tc-label{color:#7f8a99;letter-spacing:.12em;text-transform:uppercase;font-size:9.5px}.tc-value.gain{color:#e6b78a}.tc-value.warning{color:#f0605a}.tc-value.need{color:#e6a65a}.tc-unit{color:#7f8a99;font-size:10.5px;font-weight:400}.tc-gauge{--margin:#4fd8ff;align-self:center;gap:2px;display:inline-flex}.tc-gauge i{background:#ffffff24;border-radius:1px;width:5px;height:8px}.tc-gauge i.on{background:var(--margin)}.tc-gauge.tight{--margin:#f2d36b}.tc-gauge.critical{--margin:#e6a65a}.tc-gauge.short{--margin:#f0605a}.tc-gauge.short i{background:#f0605a38}.tc-hint{color:#6f7a88;margin-top:6px;font-size:10.5px;font-weight:400}.tc-title,.tc-brief,.tc-brief-route,.tc-more{display:none}@media (prefers-reduced-motion:reduce){.target-card,.tc-fold,.tc-body{transition:opacity .2s}}.settings-version{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.settings-version-name{min-height:44px;color:var(--ui-dim);font:11px var(--ui-mono);letter-spacing:.04em;cursor:default;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0}.back-hint{z-index:40;border:1px solid var(--ui-accent-line);background:var(--ui-glass);color:var(--ui-text);font:500 13px/1.3 var(--ui-font);opacity:0;pointer-events:none;border-radius:999px;justify-items:center;gap:2px;padding:10px 18px;transition:opacity .25s,transform .3s cubic-bezier(.16,1,.3,1);display:grid;position:fixed;bottom:22%;left:50%;transform:translate(-50%,8px)}.back-hint.show{opacity:1;transform:translate(-50%)}.back-hint-title{color:var(--ui-accent);letter-spacing:.04em}.back-hint-line{color:var(--ui-dim);font-size:11.5px}@media (prefers-reduced-motion:reduce){.back-hint{transition:opacity .25s;transform:translate(-50%)}}.cp-frame{pointer-events:none;position:fixed;inset:0}.cp-bracket{border:2px solid #4fd8ff73;width:60px;height:60px;position:absolute}.cp-bracket.tl{border-bottom:0;border-right:0;top:16px;left:16px}.cp-bracket.tr{border-bottom:0;border-left:0;top:16px;right:16px}.cp-bracket.bl{border-top:0;border-right:0;bottom:16px;left:16px}.cp-bracket.br{border-top:0;border-left:0;bottom:16px;right:16px}.cp-scan{background:linear-gradient(90deg,#0000,#4fd8ff66,#0000);height:1px;position:absolute;top:34px;left:44px;right:44px}.cp-objective{width:min(300px,50vw - 60px);color:var(--ui-text);font:14px/1.4 var(--ui-font);-webkit-user-select:none;user-select:none;position:fixed;top:52px;left:44px}.cp-objective-title{color:var(--ui-amber);text-shadow:0 0 10px #e6a65a4d;margin:6px 0 4px;font-size:18px;font-weight:600}.cp-objective.done .cp-label,.cp-objective.done .cp-objective-title{color:var(--ui-green);text-shadow:0 0 10px #3dff9a40}.cp-objective-progress{margin-top:10px}.cp-objective-row{color:var(--ui-dim);justify-content:space-between;margin-bottom:5px;font-size:13px;display:flex}.cp-objective-actions{align-items:center;gap:14px;margin-top:12px;display:flex}.cp-objective-actions:empty{display:none}.cp-objective[data-group] .cp-label,.cp-objective[data-group] .cp-objective-title{color:var(--group);text-shadow:0 0 10px color-mix(in srgb, var(--group) 30%, transparent)}.cp-next-goals{color:var(--ui-dim);align-items:center;gap:10px;margin-top:8px;font-size:12px;display:flex}.cp-next-goals[hidden]{display:none}.cp-next-bar{background:var(--ui-track);flex:1;height:5px}.cp-next-bar i{background:var(--group,var(--ui-accent));height:100%;display:block}.cp-journey{text-align:right;color:var(--ui-text);font:14px/1.4 var(--ui-font);-webkit-user-select:none;user-select:none;position:fixed;top:52px;right:44px}.cp-journey .cp-big{font-size:24px}.cp-notice{z-index:11;width:min(460px,100vw - 32px);font:14px/1.4 var(--ui-font);pointer-events:none;opacity:0;--kind:var(--ui-accent);--cp-edge:var(--kind);grid-template-columns:56px 1fr;align-items:center;column-gap:16px;padding:14px 20px 16px 18px;transition:opacity .4s,transform .4s;display:grid;position:fixed;top:70px;left:50%;transform:translate(-50%,-8px)}.cp-notice.open{opacity:1;transform:translate(-50%)}.cp-notice[data-kind=online]{--kind:var(--ui-green)}.cp-notice[data-kind=find]{--kind:var(--ui-amber)}.cp-notice[data-kind=auto]{--kind:var(--ui-journey)}.cp-notice[data-kind=milestone]{--kind:var(--ui-materials)}.cp-notice[data-kind=milestone][data-group]{--kind:var(--group)}.cp-notice.open.tappable{pointer-events:auto;cursor:pointer}.cp-notice svg{grid-row:span 3;width:52px;height:58px}.cp-notice .glow{fill:var(--kind);opacity:.2;filter:blur(4px)}.cp-notice .frame{fill:#141a24;stroke:var(--kind);stroke-width:2px}.cp-notice .inner{fill:none;stroke:var(--kind);stroke-opacity:.5}.cp-notice .core{fill:var(--kind)}.cp-notice-kicker{color:var(--kind)}.cp-notice-title{font-size:19px;font-weight:500;line-height:1.3}.cp-notice-detail{color:var(--ui-dim);font-size:13px}.cp-notice-time{background:linear-gradient(90deg, transparent, var(--kind));transform-origin:0;width:100%;height:2px;position:absolute;bottom:0;left:0}.cp-notice.open .cp-notice-time{animation:cp-notice-time var(--notice-seconds,6s) linear forwards}@keyframes cp-notice-time{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.cp-console{isolation:isolate;width:min(1180px,100vw);min-height:118px;color:var(--ui-text);font:14px/1.4 var(--ui-font);-webkit-user-select:none;user-select:none;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr);gap:26px;padding:18px 110px 14px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.cp-console:before{content:"";z-index:-1;background:var(--ui-glass);border-top:1px solid var(--ui-accent-line);clip-path:polygon(70px 0,calc(100% - 70px) 0,100% 100%,0 100%);position:absolute;inset:0}.cp-gauge .cp-label{margin-bottom:8px}.cp-center{text-align:center}.cp-probe-state{white-space:nowrap}.cp-console.fleet>:nth-child(2),.cp-console.fleet>:nth-child(3),.cp-console.fleet>:nth-child(4){display:none}.cp-console.fleet>.cp-probes{grid-area:1/2/auto/span 3}.cp-console.fleet>:nth-child(5){grid-area:1/5}.cp-probes[hidden]{display:none}.cp-probe-chips{gap:8px;display:flex}.cp-probe-chip{min-width:0;min-height:44px;color:var(--ui-text);font:inherit;text-align:left;cursor:pointer;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);background:#ffffff08;border:1px solid #ffffff1a;flex:1 1 0;align-items:center;gap:10px;padding:6px 10px;display:flex}.cp-probe-chip.on{background:#4fd8ff1a;border-color:#4fd8ffb3;flex-grow:1.5}.cp-probe-chip:hover,.cp-probe-chip:focus-visible{background:#4fd8ff24;outline:none}.cp-probe-chip .cp-ring{flex:none;width:34px;height:34px;margin:0}.cp-probe-chip .cp-ring>span{width:26px;height:26px;font-size:10px}.cp-chip-text{min-width:0;display:grid}.cp-chip-text b{font-size:13px;font-weight:600}.cp-chip-text small{color:var(--ui-dim);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.cp-probes .cp-follow{margin-top:6px}.cp-probe-line{min-height:1.4em}.cp-system-list{gap:3px;display:grid}.cp-hold-wrap{position:relative}.cp-hold{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block}.cp-hold:focus-visible{outline:1px solid var(--ui-accent-line);outline-offset:4px}.cp-hold.full .cp-small{color:var(--ui-amber)}.cp-hold-list{width:230px;font-size:13px;position:absolute;bottom:calc(100% + 26px);left:-18px}.cp-hold-list[hidden]{display:none}.cp-hold-row{border-bottom:1px solid #ffffff0f;align-items:center;gap:8px;padding:5px 0;display:flex}.cp-hold-row:last-child{border-bottom:0}.cp-hold-row .cp-num{color:var(--ui-copper);margin-left:auto}.cp-hold-list .cp-label{margin-bottom:4px}.cp-tabs{z-index:10;left:50%;bottom:calc(var(--cp-console-height,118px) + 8px);flex-wrap:wrap;justify-content:center;gap:4px;width:max-content;max-width:calc(100vw - 32px);display:flex;position:fixed;transform:translate(-50%)}.cp-tab{font:600 11px var(--ui-font);letter-spacing:.14em;text-transform:uppercase;color:var(--ui-dim);background:var(--ui-glass-flat);clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);cursor:pointer;border:1px solid #4fd8ff2e;padding:6px 14px;transition:color .2s,border-color .2s;position:relative}.cp-tab:hover,.cp-tab:focus-visible{color:var(--ui-text);outline:none}.cp-tab.on{color:var(--ui-accent);border-color:#4fd8ff80}.cp-tab:disabled{color:#8a94a873;cursor:default}.cp-tab.dot:after{content:"";background:var(--ui-amber);width:6px;height:6px;box-shadow:0 0 6px var(--ui-amber);vertical-align:middle;border-radius:50%;margin-left:6px;display:inline-block}@media (width<1000px){.cp-console{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 18px;padding:14px 24px 12px}.cp-console:before{clip-path:none}.cp-console .cp-big{font-size:18px}.cp-probe-state{white-space:normal}.cp-console .cp-ring{width:52px;height:52px}.cp-console .cp-ring>span{width:42px;height:42px;font-size:12px}.cp-objective{top:44px;left:28px}.cp-journey{top:56px;right:28px}.cp-tab{letter-spacing:.08em;padding:6px 9px}}@media (width<600px){.cp-console{grid-template-columns:repeat(2,minmax(0,1fr))}}.cp-frame,.cp-objective,.cp-journey,.cp-console,.cp-tabs{transition:opacity 1.1s cubic-bezier(.33,0,.2,1),filter 1.1s ease-out}.cp-objective,.cp-journey{transition-delay:.15s}.cp-tabs{transition-delay:.3s}body.intro .cp-frame,body.intro .cp-objective,body.intro .cp-journey,body.intro .cp-console,body.intro .cp-tabs{opacity:0;filter:blur(4px);pointer-events:none}@media (prefers-reduced-motion:reduce){body.intro .cp-frame,body.intro .cp-objective,body.intro .cp-journey,body.intro .cp-console,body.intro .cp-tabs{filter:none}.cp-notice,.cp-notice.open{transition:opacity .2s;transform:translate(-50%)}}.cp-zoom-reset{z-index:9;right:44px;bottom:calc(var(--cp-console-height,118px) + 56px);border:1px solid var(--ui-accent-line);background:var(--ui-glass-flat);width:40px;height:40px;color:var(--ui-accent);cursor:pointer;opacity:0;pointer-events:none;border-radius:50%;padding:9px;transition:opacity .3s,transform .3s;position:fixed;transform:scale(.85)}.cp-zoom-reset.show{opacity:.85;pointer-events:auto;transform:none}.cp-zoom-reset:hover,.cp-zoom-reset:focus-visible{opacity:1;outline:none}.cp-zoom-reset svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;width:100%;height:100%}.cp-scale{z-index:9;left:44px;bottom:calc(var(--cp-console-height,118px) + 60px);color:var(--ui-accent);opacity:0;pointer-events:none;justify-items:start;gap:4px;font-size:11px;transition:opacity .45s,transform .45s;display:grid;position:fixed;transform:translateY(4px)}.cp-scale.show{opacity:.9;transition-duration:.2s;transform:none}.cp-scale-bar{border:1px solid var(--ui-accent);border-top:0;height:6px;transition:width .15s ease-out;box-shadow:0 2px 6px #4fd8ff40}@media (prefers-reduced-motion:reduce){.cp-scale,.cp-scale-bar{transition:opacity .2s}}.cp-follow{border:1px solid var(--ui-accent-line);height:30px;color:var(--ui-accent);font:12px/1 var(--ui-font);letter-spacing:.02em;white-space:nowrap;cursor:pointer;background:#4fd8ff12;border-radius:15px;align-items:center;gap:6px;margin-top:6px;padding:0 12px 0 9px;transition:background .2s,border-color .2s;display:inline-flex;position:relative}.cp-follow:after{content:"";position:absolute;inset:-7px -4px}.cp-follow[hidden]{display:none}.cp-follow:hover,.cp-follow:focus-visible{background:var(--ui-accent-soft);border-color:var(--ui-accent);outline:none}.cp-follow svg{flex:none;width:14px;height:14px}.cp-follow-pill{z-index:9;border:1px solid var(--ui-accent-line);background:var(--ui-glass-flat);color:var(--ui-text);font:12px/1.2 var(--ui-font);letter-spacing:.02em;white-space:nowrap;pointer-events:none;opacity:0;border-radius:14px;padding:6px 14px;transition:opacity .4s,transform .4s;position:fixed;top:22px;left:50%;transform:translate(-50%,-6px)}.cp-follow-pill.show{opacity:1;transform:translate(-50%)}.cp-follow-home{z-index:9;min-height:44px;color:var(--ui-accent);font:12px/1 var(--ui-font);white-space:nowrap;cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:0;align-items:center;gap:6px;padding:0 14px 0 10px;transition:opacity .4s;display:flex;position:fixed;transform:translate(-50%,-50%)}.cp-follow-home:before{content:"";z-index:-1;border:1px solid var(--ui-accent-line);background:var(--ui-glass-flat);border-radius:14px;transition:border-color .2s;position:absolute;inset:8px 0}.cp-follow-home.show{opacity:.92;pointer-events:auto}.cp-follow-home:hover,.cp-follow-home:focus-visible{opacity:1;outline:none}.cp-follow-home:hover:before,.cp-follow-home:focus-visible:before{border-color:var(--ui-accent)}.cp-follow-arrow{width:14px;height:14px;display:inline-flex}.cp-follow-arrow svg{width:100%;height:100%}.cp-follow-text{color:var(--ui-text)}.cp-probe-edge{z-index:8}.cp-probe-edge.dim{color:#b4bdca}.cp-probe-edge.dim:before{border-color:#8ca0be59}.cp-probe-edge-n{background:var(--ui-accent);color:#05060b;border-radius:50%;place-items:center;width:16px;height:16px;font-size:10px;font-weight:700;display:grid}.cp-probe-edge.dim .cp-probe-edge-n{background:#b4bdca}.cp-probe-edge-n[hidden]{display:none}.cp-follow-veil{z-index:8;opacity:0;pointer-events:none;background:#02040a;transition:opacity .16s;position:fixed;inset:0}.cp-follow-veil.show{opacity:.85}@media (prefers-reduced-motion:reduce){.cp-follow-pill,.cp-follow-pill.show{transition:opacity .2s;transform:translate(-50%)}}.cp-sheet{z-index:10;width:min(1240px,100vw - 32px);max-height:calc(100vh - 46px - var(--cp-console-height,118px) - 52px);font:14px/1.4 var(--ui-font);opacity:0;background:linear-gradient(#0a0f17f7,#05080dfa);grid-template-rows:auto minmax(0,1fr);gap:18px;padding:22px 26px;transition:opacity .25s,transform .25s;display:grid;position:fixed;top:46px;left:50%;transform:translate(-50%,8px)}.cp-sheet.open{opacity:1;transform:translate(-50%)}.cp-sheet[hidden]{display:none}body.cp-sheet-open:after{background:radial-gradient(at 50% 45%,#03040a8c,#03040ad1)}.cp-sheet-head{border-bottom:1px solid var(--ui-hairline);flex-wrap:wrap;align-items:baseline;gap:18px;padding-bottom:12px;display:flex}.cp-sheet-title{letter-spacing:.04em;margin:0;font-size:22px;font-weight:400}.cp-sheet-close{color:var(--ui-dim);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:2px 6px;font-size:18px}.cp-sheet-close:hover,.cp-sheet-close:focus-visible{color:var(--ui-text);outline:none}.cp-sheet-body{scrollbar-width:thin;scrollbar-color:#4fd8ff4d transparent;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:26px;min-height:0;display:grid;overflow-y:auto}.cp-sheet-col+.cp-sheet-col{border-left:1px solid var(--ui-hairline);padding-left:24px}.cp-sheet-col>.cp-label{margin:18px 0 8px}.cp-sheet-col>.cp-label:first-child{margin-top:0}.cp-row{border-bottom:1px solid #ffffff0f;align-items:center;gap:10px;padding:7px 0;font-size:13px;display:flex}.cp-row>:last-child{margin-left:auto}.cp-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.cp-button:disabled{opacity:.45;cursor:default}.cp-col-blueprint{flex-direction:column;justify-content:center;align-self:start;gap:10px;display:flex;position:sticky;top:0}.cp-blueprint svg{width:100%;max-height:52vh;display:block}.cp-bp-cell{fill:#4fd8ff12;stroke:#4fd8ff4d;stroke-width:.8px;cursor:pointer}.cp-bp-cell.on{fill:#4fd8ff38;stroke:var(--ui-text)}.cp-bp-part{cursor:pointer;outline:none}.cp-bp-part:hover rect,.cp-bp-part:focus-visible rect{fill-opacity:.22}.cp-bp-select{fill:none;stroke:var(--ui-text);stroke-dasharray:4 3;stroke-width:1px}.cp-bp-name{font:600 9px var(--ui-font);text-anchor:middle;pointer-events:none}.cp-bp-tier{fill:var(--ui-dim);font:8px var(--ui-font);text-anchor:middle;pointer-events:none}.cp-blueprint-legend{flex-wrap:wrap;justify-content:center;gap:4px 16px;display:flex}.cp-blueprint-legend .cp-state{color:var(--ui-dim);font-size:12px}.cp-blueprint-legend .cp-state.ok:before{background:var(--ui-accent);box-shadow:0 0 6px var(--ui-accent)}.cp-blueprint-legend .cp-state.warn:before{background:var(--ui-amber)}.cp-blueprint-legend .cp-state.bad:before{background:var(--ui-red)}.cp-part-name{margin:6px 0 4px;font-size:22px;font-weight:400}.cp-part-does{margin:10px 0 0}.cp-repair,.cp-repair-done{background:#ff4d5e0f;border:1px solid #ff4d5e4d;margin-top:16px;padding:12px 14px}.cp-repair[hidden],.cp-repair-done[hidden],.cp-button[hidden]{display:none}.cp-repair-mission{margin:6px 0 10px;font-size:13px}.cp-repair-done{background:#3dff9a0f;border-color:#3dff9a4d;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:13px;display:flex}.cp-repair-done .cp-button{margin-left:auto}.cp-repair-cost{border-bottom:1px solid #ffffff0f;grid-template-columns:1fr 40px 110px 16px;align-items:center;gap:8px;padding:5px 0;font-size:13px;display:grid}.cp-repair-cost>:nth-child(2){text-align:right}.cp-repair-cost.short>:first-child{color:var(--ui-red)}.cp-repair-costs[hidden],.cp-repair-all[hidden],.cp-sheet-col>.cp-label[hidden]{display:none}.cp-repair-all{gap:6px;margin-bottom:8px;display:grid}.cp-repair-item{cursor:pointer;border-bottom:1px solid #ffffff0f;grid-template-columns:1fr auto;align-items:center;gap:2px 10px;padding:8px;font-size:13px;display:grid}.cp-repair-item>div{gap:2px;display:grid}.cp-repair-item.on{box-shadow:inset 2px 0 0 var(--ui-accent);background:#4fd8ff12}.cp-tiers{gap:6px;font-size:13px;display:grid}.cp-tiers>div{color:var(--ui-dim);border:1px solid #ffffff14;padding:7px 10px}.cp-tiers>div.now{color:var(--ui-text);border-color:#4fd8ff73}.cp-tiers>div.later{border-style:dashed}.cp-tiers b{min-width:52px;color:var(--ui-text);display:inline-block}.cp-probe-card{grid-template-columns:auto 1fr;align-items:center;gap:16px;display:grid}.cp-probe-card .cp-ring{width:88px;height:88px}.cp-probe-card .cp-ring>span{width:72px;height:72px;font-size:15px}.cp-probe-title{flex-wrap:wrap;align-items:center;gap:4px 12px;margin:4px 0;font-size:20px;font-weight:400;display:flex}.cp-probe-title .cp-state{font-size:12px}.cp-probe-stats{gap:24px;margin-top:14px;display:flex}.cp-probe-stats>div{display:grid}.cp-probe-stats .cp-num{font-size:18px}.cp-stop{border-bottom:1px solid #ffffff0f;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;padding:7px 0;font-size:13px;display:grid}.cp-stop b{color:var(--ui-accent);text-align:center}.cp-stop-ok{color:var(--ui-green)}.cp-stop-warn{color:var(--ui-amber)}.cp-stop-bad{color:var(--ui-red)}.cp-stop-dim{color:var(--ui-dim)}.cp-stop-auto,.cp-stop-auto b{color:var(--ui-journey)}.cp-auto-tag{font:700 9px/14px var(--ui-font);letter-spacing:.1em;color:var(--ui-journey);vertical-align:1px;background:#a98bff1f;border:1px solid #a98bff99;padding:0 4px;display:inline-block}.cp-auto-toggle:disabled{opacity:.45;cursor:default}.cp-auto-hint{margin:4px 0 2px}.cp-seg{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:6px;display:grid}.cp-seg[hidden]{display:none}.cp-seg button{min-height:36px;font:600 11px var(--ui-font);letter-spacing:.08em;text-transform:uppercase;color:var(--ui-dim);cursor:pointer;background:#ffffff08;border:1px solid #ffffff1f;padding:0 8px}.cp-seg button.on{color:var(--ui-journey);background:#a98bff24;border-color:#a98bffb3}@media (pointer:coarse){.cp-seg button{min-height:44px}}.cp-fitting{border:1px solid var(--ui-accent-line);grid-template-columns:30px 1fr;align-items:center;gap:10px;margin-bottom:8px;padding:10px 12px;font-size:13px;display:grid}.cp-fitting.locked{color:var(--ui-dim);border-style:dashed;border-color:#ffffff24}.cp-fitting-icon{text-align:center;font-size:18px}@media (width<1000px){.cp-sheet{padding:16px;top:20px}.cp-sheet-title{font-size:18px}.cp-sheet-body{grid-auto-flow:row}.cp-col-blueprint{position:static}.cp-sheet-col+.cp-sheet-col{border-left:0;border-top:1px solid var(--ui-hairline);padding:16px 0 0}}@media (prefers-reduced-motion:reduce){.cp-sheet,.cp-sheet.open{transform:translate(-50%)}}@media (pointer:coarse){.cp-touch{min-height:44px}}.cp-sheet-chips{margin-bottom:14px}.cp-sheet-chips[hidden]{display:none}.cp-build{z-index:40;color:var(--ui-text);font:14px var(--ui-font);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);touch-action:none;-webkit-user-select:none;user-select:none;background:#03040adb;grid-template:"top top""stage side"1fr"tray side"/minmax(0,1fr) minmax(280px,340px);gap:14px 18px;padding:22px 28px 24px;display:grid;position:fixed;inset:0}.cp-build[hidden]{display:none}.cp-build-top{grid-area:top;justify-content:space-between;align-items:center;gap:16px;display:flex}.cp-build-title{align-items:baseline;gap:12px;min-width:0;display:flex}.cp-build-note{color:var(--ui-dim);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cp-build-note.warn{color:var(--ui-amber)}.cp-build-buttons{align-items:center;gap:10px;display:flex}.cp-build .cp-button{min-height:44px}.cp-build .cp-button:disabled{opacity:.4;cursor:default}.cp-toggle{min-height:44px;font:600 11px var(--ui-font);letter-spacing:.12em;text-transform:uppercase;color:var(--ui-dim);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0 10px;display:inline-flex}.cp-toggle i{background:#ffffff1f;border-radius:8px;width:30px;height:16px;position:relative}.cp-toggle i:after{content:"";background:var(--ui-dim);border-radius:50%;width:12px;height:12px;transition:left .15s;position:absolute;top:2px;left:2px}.cp-toggle.on{color:var(--ui-journey)}.cp-toggle.on i{background:#a98bff59}.cp-toggle.on i:after{background:var(--ui-journey);left:16px}.cp-build-stage{grid-area:stage;min-width:0;min-height:0;position:relative}.cp-build-canvas{cursor:grab;display:block;position:absolute;inset:0}.cp-build.painting .cp-build-canvas{cursor:crosshair}.cp-build-side{grid-area:side;padding:16px 18px;overflow-y:auto}.cp-build-side .cp-label+*{margin-top:8px}.cp-build-side .cp-rows+.cp-label,.cp-build-rules+.cp-build-how{margin-top:20px}.cp-build-side-toggle{display:none}.cp-build-delta{color:var(--ui-green);font-weight:600}.cp-build-delta.bad{color:var(--ui-red)}.cp-build-delta.warn,.cp-build-warn{color:var(--ui-amber)}.cp-build-bad{color:var(--ui-red)}.cp-build .cp-dim{color:var(--ui-dim)}.cp-build-rule{border-left:2px solid;margin-top:6px;padding:6px 10px;font-size:13px}.cp-build-rule.ok{color:var(--ui-green);background:#3dff9a0f}.cp-build-rule.bad{color:var(--ui-red);background:#ff4d5e12}.cp-build-rule.warn{color:var(--ui-amber);background:#e6a65a12}.cp-build-how{color:var(--ui-dim);line-height:1.6}.cp-build-tray{grid-area:tray;padding:12px 16px}.cp-build-tray-row{gap:18px;margin-top:10px;display:flex}.cp-build-tools{border-right:1px solid var(--ui-hairline);gap:8px;padding-right:18px;display:flex}.cp-build-tool{width:66px;height:66px;font:600 10px var(--ui-font);letter-spacing:.1em;text-transform:uppercase;color:var(--ui-dim);border:1px solid var(--ui-hairline);cursor:pointer;background:#ffffff0a;place-items:center;gap:2px;display:grid}.cp-build-tool i{color:var(--ui-journey);font-size:22px;font-style:normal}.cp-build-tool.on{color:var(--ui-text);border-color:var(--ui-accent);box-shadow:0 0 12px #4fd8ff73}.cp-build-turn{align-self:center;min-width:44px;padding:7px 10px;font-size:18px}.cp-build-drop{border:1px dashed var(--ui-accent-line);flex:1;align-content:center;gap:4px;min-height:66px;padding:0 16px;display:grid}.cp-build-drop.ready{border-color:var(--ui-accent);background:#4fd8ff14}.cp-build-hint{color:var(--ui-dim);margin-top:8px}.cp-build-tray-row+.cp-label{margin-top:12px}.cp-build-parts{--cp-slot:66px;min-height:var(--cp-slot);flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.cp-build-spare{touch-action:none}.cp-build-spare-art{pointer-events:none;width:48px;height:48px}.cp-build-none{color:var(--ui-dim);align-self:center}.cp-build-shade{background:#0000008c;place-items:center;padding:16px;display:grid;position:absolute;inset:0}.cp-build-shade[hidden]{display:none}.cp-build-confirm{width:min(440px,100%);padding:20px 22px}.cp-build-confirm .cp-label+*,.cp-build-confirm .cp-rows+.cp-label{margin-top:12px}.cp-build-confirm .cp-actions{justify-content:flex-end;margin-top:18px}@media (orientation:portrait){.cp-build{grid-template:"top""stage""side""."1fr"tray"/minmax(0,1fr);gap:10px}.cp-build-stage{aspect-ratio:20/16}.cp-build-side{padding:0;overflow:visible}.cp-build-side-toggle{text-align:left;width:100%;min-height:44px;font:600 12px var(--ui-font);color:var(--ui-green);cursor:pointer;background:0 0;border:0;padding:0 14px;display:block}.cp-build-side-toggle.bad{color:var(--ui-red)}.cp-build-side-body{max-height:30vh;padding:0 14px 14px;display:none;overflow-y:auto}.cp-build-side.open .cp-build-side-body{display:block}.cp-build-tray-row{flex-direction:column;gap:8px}.cp-build-tools{border-right:0;padding-right:0}.cp-build-drop{min-height:44px;padding:6px 12px}}:root[data-layout=phone] .cp-build{padding:var(--ph-safe-top) var(--ph-gap) calc(var(--ph-safe-bottom) + var(--ph-gap));gap:8px}:root[data-layout=phone] .cp-build-top{flex-wrap:wrap;gap:4px 8px}:root[data-layout=phone] .cp-build-title .cp-label,:root[data-layout=phone] .cp-build-note:not(.warn){display:none}:root[data-layout=phone] .cp-build-buttons{gap:4px}:root[data-layout=phone] .cp-build .cp-button{min-height:var(--ph-touch);padding:7px 12px}:root[data-layout=phone] .cp-build-side-toggle{min-height:var(--ph-touch)}:root[data-layout=phone] .cp-build-tray{padding:10px 12px}:root[data-layout=phone] .cp-build-tray>.cp-label,:root[data-layout=phone] .cp-build-hint{display:none}:root[data-layout=phone] .cp-build-tray-row{margin-top:0}:root[data-layout=phone] .cp-build-tools{gap:6px}:root[data-layout=phone] .cp-build-tool{width:52px;height:52px}:root[data-layout=phone] .cp-build-drop{min-height:var(--ph-touch);padding:6px 10px}:root[data-layout=phone] .cp-build-parts{--cp-slot:52px;flex-wrap:nowrap;margin-top:6px;overflow-x:auto}:root[data-layout=phone] .cp-build-spare-art{width:38px;height:38px}.cp-sheet-hold .cp-sheet-body{grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);grid-auto-columns:auto}.cp-hold-fill{align-items:center;gap:12px;display:flex}.cp-hold-fill .cp-bar{flex:1}.cp-hold-sorts{flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0;display:flex}.cp-small-button{min-height:36px;padding:5px 12px;font-size:11px}.cp-slots{grid-template-columns:repeat(auto-fill, var(--cp-slot,68px));touch-action:none;-webkit-user-select:none;user-select:none;gap:6px;display:grid}.cp-slot{width:var(--cp-slot,68px);height:var(--cp-slot,68px);color:var(--ui-text);cursor:grab;background:#06090fbf;border:1px solid #4fd8ff38;place-items:center;padding:0;display:grid;position:relative}.cp-slot.empty{cursor:default;background:0 0;border:1px dashed #ffffff1a}.cp-slot.over{border-color:#ff4d5e73}.cp-slot.on{border-color:var(--ui-accent);box-shadow:0 0 0 1px var(--ui-accent), 0 0 14px #4fd8ff66}.cp-slot.target{border:1px solid var(--ui-accent);background:#4fd8ff1f}.cp-slot.lifted{opacity:.35}.cp-slot b{font:600 12px var(--ui-mono);text-shadow:0 1px 2px #000;position:absolute;bottom:2px;right:4px}.cp-slot i{font:normal 600 10px var(--ui-font);letter-spacing:.06em;color:var(--ui-accent);text-shadow:0 1px 2px #000;position:absolute;top:2px;left:4px}.cp-slot-ghost{z-index:60;pointer-events:none;border-color:var(--ui-accent);filter:drop-shadow(0 6px 10px #0009);width:56px;height:56px;position:fixed;top:0;left:0}.cp-slot-ghost[hidden]{display:none}.cp-jettison{border:1px dashed #ff4d5e66;gap:4px;margin-top:14px;padding:12px 16px;display:grid}.cp-jettison.ready{border-color:var(--ui-red);background:#ff4d5e1a;box-shadow:0 0 16px #ff4d5e4d}.cp-hold-hint{color:var(--ui-dim);margin-top:10px;line-height:1.5}.cp-hold-head{align-items:center;gap:14px;margin-bottom:14px;display:flex}.cp-hold-head>svg{background:#4fd8ff0d;border:1px solid #4fd8ff4d;flex:none;padding:6px}.cp-hold-details .cp-label{margin:14px 0 4px}.cp-hold-shade{z-index:2;background:#0000008c;place-items:center;padding:16px;display:grid;position:absolute;inset:0}.cp-hold-shade[hidden]{display:none}.cp-hold-confirm{width:min(380px,100%);padding:20px 22px}.cp-hold-confirm p{margin:4px 0 14px}.cp-hold-amount-row{align-items:center;gap:10px;display:flex}.cp-hold-amount{text-align:center;min-width:48px;font-size:22px}.cp-hold-confirm .cp-actions{justify-content:flex-end;margin-top:18px}.cp-hold-confirm .cp-button,.cp-sheet-hold .cp-actions .cp-button{min-height:44px}:root[data-layout=phone] .cp-sheet-hold .cp-sheet-body{grid-template-columns:minmax(0,1fr)}:root[data-layout=phone] .cp-slots{--cp-slot:60px}.cp-hold-uses{margin:0;padding:0;list-style:none}.cp-hold-uses li{border-bottom:1px solid var(--ui-hairline);padding:6px 0;font-size:13px}.cp-sheet-hold{grid-template-rows:auto auto minmax(0,1fr)}.cp-hold-tabs{border-bottom:1px solid var(--ui-hairline);margin:-6px 0 0;display:flex}.cp-hold-tab{min-height:44px;font:600 12px var(--ui-font);letter-spacing:.12em;text-transform:uppercase;color:var(--ui-dim);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 18px 10px}.cp-hold-tab.on{color:var(--ui-accent);border-bottom-color:var(--ui-accent)}.cp-hold-tab-badge{color:var(--ui-copper,#e0a060);margin-left:8px}.cp-make-body{grid-template-columns:minmax(0,1fr) minmax(260px,400px);grid-auto-flow:row}.cp-sheet-hold .cp-sheet-body[hidden]{display:none}.cp-make-list{columns:2 260px;align-self:start;column-gap:28px}.cp-make-group{break-inside:avoid;margin-bottom:14px}.cp-make-group .cp-label{margin-bottom:6px}.cp-make-row{width:100%;min-height:44px;font:13px var(--ui-font);color:var(--ui-text);text-align:left;border:1px solid #0000;border-bottom-color:var(--ui-hairline);cursor:pointer;background:0 0;align-items:center;gap:10px;padding:2px 10px 2px 6px;display:flex}.cp-make-row>.cp-num{margin-left:auto}.cp-make-row.on{border-color:var(--ui-accent);background:#4fd8ff14;box-shadow:0 0 12px #4fd8ff40}.cp-make-row.short>span:not(.cp-num){color:var(--ui-dim)}.cp-make-side{border-left:1px solid var(--ui-hairline);padding-left:24px}.cp-make-recipe{position:relative}.cp-make-close{display:none}.cp-make-makes{margin:10px 0 14px;line-height:1.55}.cp-make-count{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.cp-make-count .cp-button{min-height:44px}.cp-make-n{text-align:center;min-width:34px;font-size:22px}.cp-make-missing,.cp-make-ask{border-left:2px solid var(--ui-red,#ff4d5e);background:#ff4d5e14;margin-top:14px;padding:8px 10px;line-height:1.5}.cp-make-ask{border-left-color:var(--ui-amber,#ffb648);background:#ffb64814}.cp-make-recipe .cp-actions .cp-button{min-height:44px}.cp-make-queues{border-top:1px solid var(--ui-hairline);margin-top:18px;padding-top:14px}.cp-make-queue+.cp-make-queue{margin-top:14px}.cp-make-queue .cp-label{margin-bottom:8px}.cp-make-job+.cp-make-job{margin-top:10px}.cp-make-job-line{align-items:center;gap:10px;margin-bottom:5px;font-size:13px;display:flex}.cp-make-job-line .cp-small{margin-left:auto}.cp-make-cancel{min-width:44px;min-height:32px;color:var(--ui-dim);cursor:pointer;background:0 0;border:0}:root[data-layout=phone] .cp-make-body{grid-template-columns:minmax(0,1fr)}:root[data-layout=phone] .cp-make-list{columns:1}:root[data-layout=phone] .cp-make-side{left:8px;right:8px;bottom:calc(var(--ph-bottom,64px) + 8px);z-index:5;background:linear-gradient(#0c121cfa,#05080dfc);border:1px solid #4fd8ff4d;max-height:70vh;padding:16px;position:fixed;overflow-y:auto}:root[data-layout=phone] .cp-make-side:not(.open){display:none}:root[data-layout=phone] .cp-make-close{min-width:44px;min-height:44px;color:var(--ui-dim);background:0 0;border:0;font-size:18px;display:block;position:absolute;top:-8px;right:-8px}:root[data-layout=phone] .cp-make-makes{display:none}:root[data-layout=phone]{--ph-safe-top:max(env(safe-area-inset-top), 10px);--ph-safe-bottom:env(safe-area-inset-bottom);--ph-gap:12px;--ph-header-h:58px;--ph-strip-h:46px;--ph-nav-h:56px;--ph-journey-w:140px;--ph-objective-actions-h:40px;--ph-top:var(--ph-top-clear,calc(var(--ph-safe-top) + var(--ph-header-h) + var(--ph-objective-actions-h)));--ph-touch:44px;--ph-bottom:calc(var(--ph-safe-bottom) + var(--ph-nav-h));--ph-above-strip:calc(var(--ph-bottom) + var(--ph-strip-h))}:root[data-layout=phone] .cp-frame,:root[data-layout=phone] .fullscreen-button{display:none}:root[data-layout=phone] .cp-objective{left:var(--ph-gap);top:var(--ph-safe-top);width:calc(100vw - 2 * var(--ph-gap) - var(--ph-journey-w) - 8px);font-size:12px}:root[data-layout=phone] .cp-objective-title{white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0;font-size:15px;overflow:hidden}:root[data-layout=phone] .cp-objective>.cp-small,:root[data-layout=phone] .cp-next-goals{display:none}:root[data-layout=phone] .cp-objective-progress{margin-top:2px}:root[data-layout=phone] .cp-objective-row{margin-bottom:2px;font-size:12px}:root[data-layout=phone] .cp-objective-progress .cp-bar{display:none}:root[data-layout=phone] .cp-objective-actions{gap:10px;margin-top:6px}:root[data-layout=phone] .cp-objective-actions .cp-button{min-height:32px;padding:4px 12px;font-size:11px}:root[data-layout=phone] .cp-journey{right:var(--ph-gap);top:var(--ph-safe-top);font-size:11px}:root[data-layout=phone] .cp-journey .cp-big{font-size:16px}:root[data-layout=phone] .cp-journey{width:var(--ph-journey-w)}:root[data-layout=phone] .cp-journey .cp-small{display:none}:root[data-layout=phone] .cp-notice{top:calc(var(--ph-top) + 8px);width:calc(100vw - 2 * var(--ph-gap));grid-template-columns:30px auto minmax(0,1fr);gap:2px 10px;padding:8px 12px 9px 10px;font-size:12.5px}:root[data-layout=phone] .cp-notice svg{grid-row:span 2;width:30px;height:34px}:root[data-layout=phone] .cp-notice-kicker{white-space:nowrap;align-self:baseline;font-size:10px}:root[data-layout=phone] .cp-notice-title{text-overflow:ellipsis;white-space:nowrap;align-self:baseline;font-size:15px;font-weight:600;overflow:hidden}:root[data-layout=phone] .cp-notice-detail{text-overflow:ellipsis;white-space:nowrap;grid-column:2/4;font-size:12.5px;overflow:hidden}:root[data-layout=phone] .cp-objective-actions .cp-link{white-space:nowrap}:root[data-layout=phone] .cp-console{left:0;bottom:var(--ph-bottom);width:100vw;min-height:var(--ph-strip-h);padding:4px var(--ph-gap);grid-template-columns:1fr auto 1.4fr;align-items:center;gap:10px;transform:none}:root[data-layout=phone] .cp-console:before{clip-path:none}:root[data-layout=phone] .cp-console>:nth-child(4),:root[data-layout=phone] .cp-console>:nth-child(5),:root[data-layout=phone] .cp-console .cp-probe-line{display:none}:root[data-layout=phone] .cp-console .cp-gauge .cp-label{margin-bottom:0;font-size:9px}:root[data-layout=phone] .cp-hold{min-height:var(--ph-touch);flex-wrap:wrap;align-content:center;align-items:baseline;gap:6px;display:flex}:root[data-layout=phone] .cp-hold .cp-label{width:100%}:root[data-layout=phone] .cp-console .cp-big{font-size:16px}:root[data-layout=phone] .cp-console>:nth-child(2){flex-direction:row-reverse;align-items:center;gap:6px;display:flex}:root[data-layout=phone] .cp-console .cp-ring{width:32px;height:32px;margin:0}:root[data-layout=phone] .cp-console .cp-ring>span{width:26px;height:26px;font-size:9px}:root[data-layout=phone] .cp-console>:nth-child(3){text-align:right}:root[data-layout=phone] .cp-probe-state{white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}:root[data-layout=phone] .cp-console.fleet{grid-template-columns:auto 1fr}:root[data-layout=phone] .cp-console.fleet>.cp-probes{grid-column:2}:root[data-layout=phone] .cp-console.fleet>:nth-child(2),:root[data-layout=phone] .cp-console.fleet>:nth-child(3),:root[data-layout=phone] .cp-console.fleet>:nth-child(5){display:none}:root[data-layout=phone] .cp-chip-text b{white-space:nowrap;font-size:12px}:root[data-layout=phone] .cp-probes>.cp-label{display:none}:root[data-layout=phone] .cp-probe-chips{gap:5px}:root[data-layout=phone] .cp-probe-chip{gap:6px;padding:4px 6px}:root[data-layout=phone] .cp-probe-chip:not(.on) small{display:none}:root[data-layout=phone] .cp-probe-chip .cp-ring{width:32px;height:32px}:root[data-layout=phone] .cp-probes .cp-follow{display:none}:root[data-layout=phone] .cp-hold-list{left:8px;right:8px;bottom:calc(var(--ph-above-strip) + 8px);width:auto;position:fixed}:root[data-layout=phone] .cp-tabs{width:100vw;max-width:none;height:var(--ph-bottom);padding-bottom:var(--ph-safe-bottom);border-top:1px solid var(--ui-hairline);background:#070b12;grid-template-columns:repeat(5,1fr);gap:0;display:grid;bottom:0;left:0;right:0;transform:none}:root[data-layout=phone] .cp-tab{min-height:var(--ph-touch);clip-path:none;letter-spacing:.1em;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:0;font-size:9px;display:flex}:root[data-layout=phone] .cp-tab-icon{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px;display:block}:root[data-layout=phone] .cp-tab[data-tab=more] .cp-tab-icon{stroke-width:3px}:root[data-layout=phone] .cp-tab.on:before{content:"";background:var(--ui-accent);height:2px;box-shadow:0 0 8px var(--ui-accent);position:absolute;top:0;left:25%;right:25%}:root[data-layout=phone] .cp-tab.dot:after{margin:0;position:absolute;top:7px;right:calc(50% - 18px)}:root[data-layout=phone] .cp-tab-more{display:none}:root[data-layout=phone] .cp-tabs.more-open .cp-tab-more{letter-spacing:.06em;border:1px solid var(--ui-accent-line);background:#080c14f7;flex-direction:row;justify-content:space-between;min-height:56px;padding:0 18px;font-size:13px;display:flex;position:fixed;left:8px;right:8px}:root[data-layout=phone] .cp-tabs.more-open .cp-tab-more .cp-tab-icon{order:2}:root[data-layout=phone] .cp-tabs.more-open [data-tab=journal]{bottom:calc(var(--ph-bottom) + 8px + 2 * 56px)}:root[data-layout=phone] .cp-tabs.more-open [data-tab=log]{bottom:calc(var(--ph-bottom) + 8px + 56px)}:root[data-layout=phone] .cp-tabs.more-open [data-tab=menu]{bottom:calc(var(--ph-bottom) + 8px)}:root:not([data-layout=phone]) .cp-tab-icon,:root:not([data-layout=phone]) .cp-tab-phone{display:none}:root[data-layout=phone] .cp-sheet{top:var(--ph-safe-top);width:100vw;max-height:none;left:0;bottom:var(--ph-bottom);padding:8px var(--ph-gap) var(--ph-gap);gap:10px;transform:translateY(12px)}:root[data-layout=phone] .cp-sheet.open{transform:none}:root[data-layout=phone] .cp-sheet-head{gap:4px 12px;padding-bottom:8px}:root[data-layout=phone] .cp-sheet-title{font-size:18px}:root[data-layout=phone] .cp-sheet-close{min-width:var(--ph-touch);min-height:var(--ph-touch);font-size:20px}:root[data-layout=phone] .cp-sheet-body{grid-auto-columns:auto;grid-auto-flow:row;gap:14px}:root[data-layout=phone] .cp-col-blueprint{position:static}:root[data-layout=phone] .cp-touch{min-height:var(--ph-touch)}:root[data-layout=phone] .cp-repair-cost{grid-template-columns:1fr 34px 100px 14px}:root[data-layout=phone] .cp-sheet-col+.cp-sheet-col{border-left:0;border-top:1px solid var(--ui-hairline);padding-top:14px;padding-left:0}:root[data-layout=phone] :is(.briefing,.logbook,.report){top:auto;left:8px;right:8px;bottom:calc(var(--ph-bottom) + 8px);width:auto;max-height:calc(100vh - var(--ph-bottom) - var(--ph-safe-top) - 16px);border-radius:14px;overflow-y:auto;transform:translateY(12px)}:root[data-layout=phone] :is(.briefing,.logbook,.report).open{transform:none}:root[data-layout=phone] :is(.briefing,.logbook,.report) :is(button,.ui-button){min-height:var(--ph-touch)}:root[data-layout=phone] .settings{top:var(--ph-safe-top);left:0;bottom:var(--ph-bottom);border-width:1px 0 0;border-radius:0;width:100vw;height:auto;transform:translateY(12px)}:root[data-layout=phone] .settings.open{transform:none}:root[data-layout=phone] .target-card.pinned.has-actions{top:auto;left:8px;right:8px;bottom:calc(var(--ph-above-strip) + 8px);white-space:normal;border-radius:0 12px 12px 0;min-width:0;max-width:none;padding:14px 14px 12px;font-size:14px;transform:none!important}:root[data-layout=phone] .target-card.pinned.has-actions .tc-name,:root[data-layout=phone] .target-card.pinned.has-actions .tc-hint,:root[data-layout=phone] .target-card.pinned.has-actions.has-title .tc-chip{display:none}:root[data-layout=phone] .target-card.pinned.has-actions .tc-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;display:block;overflow:hidden}:root[data-layout=phone] .target-card.pinned.has-actions{touch-action:none;box-sizing:border-box;background:#06080ded}:root[data-layout=phone] .target-card.pinned.has-actions:before{content:"";background:#ffffff29;border-radius:2px;width:34px;height:4px;margin-left:-17px;position:absolute;top:5px;left:50%}:root[data-layout=phone] .target-card.pinned.has-actions.from-top:before{top:auto;bottom:5px}:root[data-layout=phone] .target-card.pinned.has-actions .tc-body{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brief brief""route route""note note""more more""rows rows""act act";align-items:center;column-gap:10px;display:grid}:root[data-layout=phone] .target-card.pinned.has-actions.one-action .tc-body{grid-template-areas:"brief act""route act""note act""more act""rows rows"}:root[data-layout=phone] .target-card.pinned.has-actions .tc-brief{white-space:nowrap;flex-wrap:wrap;grid-area:brief;align-items:center;column-gap:5px;margin-top:4px;font-size:13px;display:flex}:root[data-layout=phone] .target-card.pinned.has-actions .tc-sep{color:#4a5464}:root[data-layout=phone] .target-card.pinned.has-actions .tc-brief .tc-label{letter-spacing:0;text-transform:none;font-size:12px}:root[data-layout=phone] .target-card.pinned.has-actions .tc-brief-route{grid-area:route;margin-top:6px;font-size:13px;display:block}:root[data-layout=phone] .target-card.pinned.has-actions .tc-note{grid-area:note;margin-top:4px;font-size:12px}:root[data-layout=phone] .target-card.pinned.has-actions .tc-more{color:#7f8a99;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;grid-area:more;justify-self:start;min-height:32px;margin:2px 0 0 -6px;padding:0 6px;font:500 11px/1 system-ui,sans-serif;display:block}:root[data-layout=phone] .target-card.pinned.has-actions .tc-rows{grid-area:rows;margin-top:2px;display:none}:root[data-layout=phone] .target-card.pinned.has-actions.details .tc-body:has(>.tc-more)>.tc-rows{display:block}:root[data-layout=phone] .target-card.pinned.has-actions .tc-row.route,:root[data-layout=phone] .target-card.pinned.has-actions .tc-row.fuel{display:none}:root[data-layout=phone] .target-card.pinned.has-actions .tc-actions{grid-area:act}:root[data-layout=phone] .target-card.pinned.has-actions.one-action .tc-actions{margin-top:0}:root[data-layout=phone] .target-card.pinned.has-actions.one-action .tc-action{padding:0 14px}:root[data-layout=phone] .target-leader.detached{display:none}:root[data-layout=phone] .target-card.pinned.has-actions.from-top{top:calc(var(--ph-top) + 8px);padding:10px 14px 16px;bottom:auto}:root[data-layout=phone] .target-card.pinned.has-actions.show{animation:.28s cubic-bezier(.16,1,.3,1) card-rise}:root[data-layout=phone] .target-card.pinned.has-actions.from-top.show{animation-name:card-drop}@keyframes card-rise{0%{opacity:0;translate:0 18px}}@keyframes card-drop{0%{opacity:0;translate:0 -18px}}@media (prefers-reduced-motion:reduce){:root[data-layout=phone] .target-card.pinned.has-actions.show{animation:none}}:root[data-layout=phone] .target-card.pinned.has-actions .tc-fold{max-width:none}:root[data-layout=phone] .target-card.pinned.has-actions .tc-label{font-size:11px}:root[data-layout=phone] .cp-objective>.cp-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}:root[data-layout=phone] body:has(.target-card.pinned.has-actions.show:not(.from-top)) .cp-zoom-reset{opacity:0;pointer-events:none}:root[data-layout=phone] .cp-zoom-reset{right:var(--ph-gap);bottom:calc(var(--ph-above-strip) + 12px);width:var(--ph-touch);height:var(--ph-touch);padding:10px}:root[data-layout=phone] .target-card{font-size:13px}:root[data-layout=phone] .target-card .tc-label{font-size:10.5px}:root[data-layout=phone] .target-card .tc-unit{font-size:11.5px}:root[data-layout=phone] .cp-scale{left:var(--ph-gap);bottom:calc(var(--ph-above-strip) + 16px)}:root[data-layout=phone] .cp-console>:nth-child(3){flex-wrap:wrap;justify-content:flex-end;align-items:center;column-gap:8px;display:flex}:root[data-layout=phone] .cp-console>:nth-child(3) .cp-label{width:100%}:root[data-layout=phone] .cp-follow{height:32px;margin-top:0;padding:0 10px 0 8px}:root[data-layout=phone] .cp-follow:after{inset:-6px -4px}:root[data-layout=phone] .cp-follow-pill{top:calc(var(--ph-top) + 8px);font-size:11.5px}:root[data-layout=phone] .cp-probe.has-follow .cp-label{display:none}:root[data-layout=phone] .cp-probe.has-follow .cp-probe-state{width:100%;font-size:11px;line-height:1.3}.turn-upright{z-index:900;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#dfe8f5;text-align:center;opacity:0;visibility:hidden;background:#03040ae0;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-family:system-ui,sans-serif;transition:opacity .4s,visibility 0s linear .4s;display:flex;position:fixed;inset:0}.turn-upright.show{opacity:1;visibility:visible;transition:opacity .4s}.turn-upright svg{fill:none;stroke:#8fdcf5;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:64px;height:64px}.turn-upright.show .turn-phone{transform-box:fill-box;transform-origin:50%;animation:2.6s ease-in-out infinite turn-upright}@keyframes turn-upright{0%,15%{transform:rotate(-90deg)}45%,to{transform:rotate(0)}}.turn-title{letter-spacing:.06em;font-size:18px;font-weight:300}.turn-line{color:#6c768b;font-size:13px}@media (prefers-reduced-motion:reduce){.turn-upright.show .turn-phone{animation:none}}:root[data-layout=phone] .back-hint{bottom:calc(var(--ph-above-strip) + 24px)}[data-group=salvage]{--group:var(--ui-salvage)}[data-group=materials]{--group:var(--ui-materials)}[data-group=probes]{--group:var(--ui-probes)}[data-group=finds]{--group:var(--ui-finds)}[data-group=journey]{--group:var(--ui-journey)}[data-group=legacy]{--group:var(--ui-dim)}.cp-medal{width:46px;height:46px;overflow:visible}.cp-medal .frame{fill:none;stroke:#8ca0be47;stroke-width:2px}.cp-medal .inner{fill:#ffffff08;stroke:#8ca0be24;stroke-width:1px}.cp-medal .glyph{fill:#8ca0be4d}.cp-medal .ring{fill:none;stroke:var(--group);stroke-width:2px;stroke-linecap:round;opacity:.7}.cp-medal.lit .frame{stroke:var(--group);filter:drop-shadow(0 0 4px var(--group))}.cp-medal.lit .inner{fill:color-mix(in srgb, var(--group) 16%, transparent);stroke:color-mix(in srgb, var(--group) 55%, transparent)}.cp-medal.lit .glyph{fill:var(--group)}.cp-journal{grid-template-rows:auto auto minmax(0,1fr)}.cp-journal-switch{justify-content:flex-end;gap:2px;margin-top:-10px;display:flex}.cp-journal-view{min-height:34px;color:var(--ui-dim);font:600 11px var(--ui-font);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #4fd8ff38;padding:0 14px}.cp-journal-view.on{color:var(--ui-accent);background:#4fd8ff24}.cp-journal-view:disabled{color:#8ca0be59;cursor:default;border-color:#8ca0be1f}:root:not([data-layout=phone]) .cp-journal-view[data-view]{display:none}.cp-journal-body,.cp-journal .cp-sheet-body{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,.9fr);grid-auto-flow:row}.cp-journal-group+.cp-journal-group{margin-top:14px}.cp-journal-group-label{border-bottom:1px solid var(--ui-hairline);color:var(--group);justify-content:space-between;padding-bottom:6px;display:flex}.cp-journal-group-label .cp-num{color:var(--ui-dim)}.cp-journal-row{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.cp-journal-medal{width:76px;min-height:76px;color:var(--ui-dim);font:11px/1.25 var(--ui-font);text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #0000;flex-direction:column;align-items:center;gap:4px;padding:4px 2px;display:flex;position:relative}.cp-journal-medal.reached{color:var(--ui-text)}.cp-journal-medal.selected{border-color:var(--ui-accent-line);background:#4fd8ff0f}.cp-journal-medal.new:after{background:var(--ui-accent);width:7px;height:7px;box-shadow:0 0 6px var(--ui-accent);content:"";border-radius:50%;position:absolute;top:4px;right:14px}.cp-journal-more{min-height:44px;color:var(--ui-dim);font:11px var(--ui-font);cursor:pointer;background:0 0;border:1px dashed #8ca0be40;align-self:center;padding:0 12px}.cp-journal-detail{text-align:center}.cp-journal-kicker{color:var(--group)}.cp-journal-big .cp-medal{width:104px;height:104px;margin:12px 0 6px}.cp-journal-title{margin:0;font-size:20px;font-weight:500}.cp-journal-line{color:var(--ui-dim);margin:4px 0 12px}.cp-journal-bar{background:var(--ui-track);height:5px;margin:0 0 10px}.cp-journal-bar i{background:var(--group);height:100%;display:block}.cp-journal-rows{text-align:left}.cp-journal-rows .cp-dim,.cp-journal-records .cp-dim{color:var(--ui-dim)}.cp-journal-card-close{display:none}.cp-journal-dot{flex:none;width:8px;height:8px;transform:rotate(45deg)}.cp-journal-empty{color:var(--ui-dim)}:root[data-layout=phone] .cp-journal .cp-sheet-body{grid-template-columns:minmax(0,1fr)}:root[data-layout=phone] .cp-journal-switch{justify-content:stretch;margin-top:0}:root[data-layout=phone] .cp-journal-view{min-height:var(--ph-touch);flex:1}:root[data-layout=phone] .cp-journal[data-view=milestones] .cp-journal-records,:root[data-layout=phone] .cp-journal[data-view=records] .cp-journal-medals,:root[data-layout=phone] .cp-journal[data-view=records] .cp-journal-detail{display:none}:root[data-layout=phone] .cp-journal-records{border-top:0;padding-top:0}:root[data-layout=phone] .cp-journal-records-label{display:none}:root[data-layout=phone] .cp-journal-medal{width:calc((100vw - 2 * var(--ph-gap) - 12px) / 4)}:root[data-layout=phone] .cp-journal-detail{z-index:12;left:8px;right:8px;bottom:calc(var(--ph-bottom) + 8px);border:1px solid color-mix(in srgb, var(--group,var(--ui-accent)) 35%, transparent);border-top:0;border-left:2px solid var(--ui-accent);text-align:left;opacity:0;pointer-events:none;background:#06080df7;padding:14px 16px 16px;transition:opacity .2s,translate .28s cubic-bezier(.16,1,.3,1);position:fixed;translate:0 18px}:root[data-layout=phone] .cp-journal-detail.card-open{opacity:1;pointer-events:auto;translate:0}:root[data-layout=phone] .cp-journal-big .cp-medal{float:left;width:56px;height:56px;margin:0 12px 0 0}:root[data-layout=phone] .cp-journal-title{font-size:17px}:root[data-layout=phone] .cp-journal-line{clear:both;padding-top:8px}:root[data-layout=phone] .cp-journal-card-close{min-width:var(--ph-touch);min-height:var(--ph-touch);color:var(--ui-dim);background:0 0;border:0;font-size:18px;display:block;position:absolute;top:2px;right:2px}@media (prefers-reduced-motion:reduce){:root[data-layout=phone] .cp-journal-detail{translate:none}}.report.away-report{z-index:13;background:#06080df7;flex-direction:column;width:min(560px,100vw - 32px);max-height:min(86vh,780px);padding:16px 18px 14px;transition:opacity .2s ease-in,transform .2s ease-in,box-shadow .3s;display:flex;box-shadow:0 0 0 100vmax #02040800}.report.away-report.open{transition:opacity .34s cubic-bezier(.33,0,.2,1),transform .42s cubic-bezier(.16,1,.3,1),box-shadow .6s;box-shadow:0 0 0 100vmax #02040873}.report.away-report[hidden]{display:none}.ar-body{overscroll-behavior:contain;scrollbar-width:thin;margin:0 -6px;padding:0 6px 2px;overflow:hidden auto}.ar-time{color:#f4f7fc;letter-spacing:.01em;font-variant-numeric:tabular-nums;margin-top:2px;font-size:32px;font-weight:300;display:block}.ar-note{color:#8a94a8;margin:4px 0 0;font-size:12px}.ar-note.warn{color:#e6a65a}.ar-kicker,.ar-stat span{color:#8a94a8;letter-spacing:.14em;text-transform:uppercase;font-size:10px}.ar-stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-top:12px;display:grid}.ar-stat{background:#ffffff06;border:1px solid #8ca0be29;border-radius:9px;padding:10px 12px 9px}.ar-stat b{color:#f4f7fc;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:22px;font-weight:400;display:block}.ar-stat.ar-distance b{color:#4fd8ff}.ar-highlights{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:10px;display:grid}.ar-highlight{--tone:#4fd8ff;border:1px solid color-mix(in srgb, var(--tone) 42%, transparent);background:radial-gradient(130% 100% at 0% 0%, color-mix(in srgb, var(--tone) 15%, transparent), transparent 62%), #0a0e16b3;border-radius:10px;flex-direction:column;gap:4px;min-width:0;padding:11px 12px 10px;display:flex}.ar-highlight.rare{--tone:#e6a65a}.ar-highlight.mission{--tone:#3dff9a}.ar-highlight.milestone{--tone:#c9b8ff}.ar-highlight .ar-kicker{color:var(--tone)}.ar-hl-title{color:#f4f7fc;align-items:center;gap:7px;font-size:14px;font-weight:500;display:flex}.ar-hl-title .item-icon{flex:none}.ar-hl-line{color:#8a94a8;font-size:11.5px}.ar-sections{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.ar-card{background:#ffffff05;border:1px solid #8ca0be24;border-radius:10px;min-width:0;padding:10px 12px 8px}.ar-card.ar-collected,.ar-card.ar-crafted{grid-column:1/-1}.ar-card-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:7px;display:flex}.ar-total{color:#cfd6e6;font-variant-numeric:tabular-nums;font-size:12px}.ar-tiles{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:6px;display:grid}.ar-tile{text-align:center;background:#ffffff06;border:1px solid #8ca0be1f;border-radius:8px;flex-direction:column;align-items:center;gap:3px;min-width:0;padding:9px 4px 7px;display:flex;position:relative}.ar-tile b{color:#f4f7fc;font-variant-numeric:tabular-nums;font-size:15px;font-weight:500}.ar-tile span{color:#8a94a8;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;max-width:100%;font-size:10.5px;line-height:1.2;display:-webkit-box;overflow:hidden}.ar-tile.uncommon{border-color:#4fd8ff52}.ar-tile.rare{background:#e6a65a12;border-color:#e6a65a8c}.ar-tile.rare b{color:#f0c48a}.ar-first{color:#4fd8ff;letter-spacing:.1em;text-transform:uppercase;font-size:8.5px;position:absolute;top:4px;right:5px}.ar-row{color:#cfd6e6;border-top:1px solid #8ca0be17;justify-content:space-between;gap:8px;padding:5px 0;font-size:12.5px;display:flex}.ar-row:first-child{border-top:0}.ar-row b{font-variant-numeric:tabular-nums;font-weight:500}.ar-row b.done{color:#3dff9a}.ar-card:not(.unfolded) .extra{display:none}.ar-more{color:#4fd8ff;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;min-height:32px;margin-top:4px;padding:0;font:600 11px/1 system-ui,sans-serif}.ar-quiet{color:#8a94a8;margin:12px 0 0}.away-report.more-below .ar-body{-webkit-mask-image:linear-gradient(#000 calc(100% - 56px),#0000);mask-image:linear-gradient(#000 calc(100% - 56px),#0000)}.ar-foot{padding-top:12px;position:relative}.ar-more-below{color:#4fd8ff;letter-spacing:.14em;text-align:center;text-transform:uppercase;opacity:0;pointer-events:none;font-size:10px;transition:opacity .25s;position:absolute;top:-14px;left:0;right:0}.away-report.more-below .ar-more-below{opacity:.85}.ar-foot .ui-button{width:100%}.away-report.open :is(.ar-hero,.ar-stats,.ar-quiet,.ar-card),.away-report.open .ar-highlight{animation:.55s cubic-bezier(.2,.8,.2,1) both ar-in;animation-delay:calc(.2s + var(--i,0) * .11s)}.away-report.open .ar-highlight{--i:2}.away-report.open .ar-highlight:nth-child(2){animation-delay:.53s}.away-report.open .ar-highlight:nth-child(3){animation-delay:.64s}@keyframes ar-in{0%{opacity:0;translate:0 8px}}@media (prefers-reduced-motion:reduce){.away-report.open :is(.ar-hero,.ar-stats,.ar-quiet,.ar-card),.away-report.open .ar-highlight{animation:none}}:root[data-layout=phone] .report.away-report{top:auto;left:0;right:0;bottom:var(--ph-bottom);max-height:calc(100dvh - var(--ph-bottom) - var(--ph-safe-top));border-width:1px 0;border-radius:14px 14px 0 0;padding:12px 16px 10px;overflow:hidden}:root[data-layout=phone] .ar-time{font-size:28px}:root[data-layout=phone] .ar-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}:root[data-layout=phone] .ar-stat.ar-distance,:root[data-layout=phone] .ar-stat:last-child:nth-child(2n){grid-column:1/-1}:root[data-layout=phone] .ar-stat{padding:8px 10px 7px}:root[data-layout=phone] .ar-stat b{font-size:18px}:root[data-layout=phone] .ar-highlights{grid-template-columns:minmax(0,1fr);gap:6px}:root[data-layout=phone] .ar-highlight{border-left-width:3px;border-radius:0 10px 10px 0;gap:2px;padding:8px 12px}:root[data-layout=phone] .ar-hl-title{font-size:14.5px}:root[data-layout=phone] .ar-sections{grid-template-columns:minmax(0,1fr)}:root[data-layout=phone] .ar-tiles{grid-template-columns:repeat(auto-fill,minmax(72px,1fr))}:root[data-touch=true] .ar-more{min-height:44px}.cp-app-card,.cp-app-update{z-index:30;box-sizing:border-box;width:min(380px,100vw - 16px);font-family:var(--ui-font);opacity:0;transition:opacity .25s,transform .3s cubic-bezier(.16,1,.3,1);position:fixed;left:50%}.cp-app-card{border-left:2px solid var(--ui-accent);bottom:24px;transform:translate(-50%,14px)}.cp-app-update{border-left:2px solid var(--ui-green);width:min(320px,100vw - 16px);top:16px;transform:translate(-50%,-14px)}.cp-app-card.open,.cp-app-update.open{opacity:1;transform:translate(-50%)}.cp-app-card[hidden],.cp-app-update[hidden]{display:none}.cp-app-head{align-items:center;gap:12px;display:flex}.cp-app-icon{border-radius:10px;flex:none;width:44px;height:44px}.cp-app-title{margin-top:2px;font-size:15px}.cp-app-new{color:var(--ui-green)}.cp-app-line{color:var(--ui-dim);margin:8px 0 12px;line-height:1.45}.cp-app-share{vertical-align:-3px;fill:none;width:16px;height:16px;stroke:var(--ui-accent);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;margin:0 2px}.cp-app-card .cp-actions,.cp-app-update .cp-actions{gap:8px;margin:0;display:flex}.cp-app-card .cp-button,.cp-app-update .cp-button{flex:1;min-height:44px}:root[data-layout=phone] .cp-app-card{bottom:calc(var(--ph-above-strip) + 10px)}:root[data-layout=phone] .cp-app-update{top:calc(var(--ph-top) + 8px);width:calc(100vw - 16px)}:root[data-app=installed][data-touch=true] .fullscreen-button,:root[data-app=installed][data-touch=true] .settings-fullscreen{display:none}@media (prefers-reduced-motion:reduce){.cp-app-card,.cp-app-update{transition:opacity .25s}}:root{--dev-bg:#121317f7;--dev-card:#1e2027;--dev-raise:#262932;--dev-well:#0e0f12;--dev-line:#2f323c;--dev-yellow:#fc3;--dev-yellow-soft:#ffcc3324;--dev-text:#e8e9ed;--dev-dim:#a0a4b2;--dev-faint:#6d7180;--dev-green:#6ee7a0;--dev-red:#ff7a7a;--dev-radius:10px;--dev-target:34px;--dev-sans:"Segoe UI", system-ui, -apple-system, "Helvetica Neue", sans-serif;--dev-mono:ui-monospace, "Cascadia Mono", Consolas, monospace}:root[data-touch=true]{--dev-target:44px}.dev-ribbon{z-index:1001;background:var(--dev-yellow);color:#141414;font:800 10px/1.4 var(--dev-sans);letter-spacing:.1em;cursor:pointer;opacity:.85;border:0;border-radius:0 0 6px 6px;padding:2px 10px 3px;position:fixed;top:0;left:50%;transform:translate(-50%)}.dev-ribbon:before{content:"";position:absolute;inset:-4px -22px -26px}.dev-ribbon:hover{opacity:1}.dev-ribbon.open{display:none}.dev-drawer{z-index:1000;border-left:1px solid var(--dev-line);background:var(--dev-bg);width:min(460px,100vw);color:var(--dev-text);font:13px/1.4 var(--dev-sans);touch-action:manipulation;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-18px 0 40px #00000073}.dev-drawer[hidden]{display:none}.dev-drawer button{font-family:var(--dev-sans)}.dev-grip{display:none}.dev-head{align-items:center;gap:10px;padding:12px 14px 8px;display:flex}.dev-badge{background:var(--dev-yellow);color:#141414;letter-spacing:.08em;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:800}.dev-key{color:var(--dev-faint);font-size:12px}.dev-spacer{flex:1}.dev-fps{color:var(--dev-green);font:600 12px var(--dev-mono);font-variant-numeric:tabular-nums;background:#6ee7a01f;border-radius:6px;padding:3px 8px}.dev-fps:empty{display:none}.dev-drawer .dev-close{width:var(--dev-target);padding:0;font-size:16px}.dev-search{border:1px solid var(--dev-line);border-radius:var(--dev-radius);background:var(--dev-well);min-height:42px;color:var(--dev-faint);align-items:center;gap:8px;margin:0 14px 10px;padding:0 10px;display:flex}.dev-search:focus-within{border-color:var(--dev-yellow)}.dev-search input{min-width:0;min-height:40px;color:var(--dev-text);font:14px var(--dev-sans);background:0 0;border:0;outline:none;flex:1}.dev-kbd{border:1px solid var(--dev-line);font:11px var(--dev-mono);border-radius:5px;padding:0 6px}:root[data-touch=true] .dev-kbd{display:none}.dev-icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.dev-changed{border-radius:var(--dev-radius);background:var(--dev-yellow-soft);color:var(--dev-yellow);flex-wrap:wrap;align-items:center;gap:6px;margin:0 14px 10px;padding:8px 10px;font-size:12px;display:flex}.dev-changed[hidden]{display:none}.dev-changed b{margin-right:2px}.dev-chip{color:#ffe08a;cursor:pointer;background:#fc33;border:0;border-radius:999px;min-height:28px;padding:2px 10px;font-size:12px}:root[data-touch=true] .dev-chip{min-height:36px}.dev-reset-all{color:var(--dev-yellow);cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:12px;font-weight:700;text-decoration:underline}.dev-main{border-top:1px solid var(--dev-line);flex:1;min-height:0;display:flex}.dev-nav{border-right:1px solid var(--dev-line);scrollbar-width:none;flex-direction:column;flex:none;gap:2px;width:84px;padding:8px 6px;display:flex;overflow-y:auto}.dev-cat{color:var(--dev-dim);cursor:pointer;background:0 0;border:0;border-radius:8px;flex-direction:column;align-items:center;gap:3px;padding:8px 2px;font-size:11px;display:flex}.dev-cat:hover{color:var(--dev-text)}.dev-cat.on{background:var(--dev-yellow-soft);color:var(--dev-yellow)}.dev-drawer.searching .dev-cat{opacity:.45}.dev-content{overscroll-behavior:contain;flex:1;min-width:0;padding:10px 14px 16px;overflow-y:auto}.dev-section h2{margin:0;font-size:18px}.dev-section p{color:var(--dev-dim);margin:2px 0 12px}.dev-list-title{color:var(--dev-dim);letter-spacing:.1em;text-transform:uppercase;margin:12px 0 8px;font-size:11px;font-weight:700}.dev-hint{color:var(--dev-faint);margin:8px 0}.dev-tiles{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;display:grid}.dev-tile{border:1px solid var(--dev-line);border-radius:var(--dev-radius);background:var(--dev-card);min-height:52px;color:var(--dev-text);text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;font-weight:600;display:flex}.dev-tile small{color:var(--dev-faint);font-size:11px;font-weight:400}.dev-tile:hover{border-color:var(--dev-yellow)}.dev-group{border:1px solid var(--dev-line);border-radius:var(--dev-radius);background:var(--dev-card);margin-bottom:10px;padding:10px 12px 12px}.dev-group[hidden]{display:none}.dev-group-head{align-items:center;gap:8px;display:flex}.dev-group-title{min-height:30px;color:var(--dev-text);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:6px;padding:0;font-size:14px;font-weight:650;display:flex}.dev-group-title:after{color:var(--dev-faint);content:"▾";margin-left:auto}.dev-group.folded .dev-group-title:after{content:"▸"}.dev-star{width:30px;height:30px;color:var(--dev-faint);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;font-size:16px;display:grid}:root[data-touch=true] .dev-star{width:44px;height:44px}.dev-star.on{color:var(--dev-yellow)}.dev-purpose{color:var(--dev-dim);margin:0 0 6px;font-size:12.5px}.dev-purpose:empty,.dev-group.folded .dev-group-body,.dev-group.folded .dev-purpose{display:none}.dev-drawer.searching .dev-group.folded .dev-group-body{display:block}.dev-row{flex-wrap:wrap;align-items:center;gap:6px;padding:3px 0;display:flex}.dev-row[hidden]{display:none}.dev-button,.dev-drawer .ui-button{min-height:var(--dev-target);border:1px solid var(--dev-line);background:var(--dev-raise);color:var(--dev-text);font:500 13px var(--dev-sans);cursor:pointer;clip-path:none;border-radius:8px;padding:4px 12px}.dev-button:hover,.dev-drawer .ui-button:hover{border-color:#5a5e6b}.dev-button:active{transform:translateY(1px)}.dev-button.on{border-color:var(--dev-yellow);background:var(--dev-yellow);color:#141414;font-weight:700}.dev-button:disabled,.dev-drawer .ui-button:disabled{opacity:.4;cursor:default}.dev-drawer .ui-button.unavailable{color:var(--dev-dim);border-style:dashed}.dev-toggle{min-height:var(--dev-target);cursor:pointer;justify-content:space-between}.dev-toggle input{cursor:pointer;appearance:none;background:#3a3e4a;border-radius:11px;flex:none;width:40px;height:22px;margin:0;transition:background .15s;position:relative}.dev-toggle input:after{content:"";background:#cfd2da;border-radius:50%;width:16px;height:16px;transition:left .15s;position:absolute;top:3px;left:3px}.dev-toggle input:checked{background:var(--dev-yellow)}.dev-toggle input:checked:after{background:#141414;left:21px}.dev-slider{grid-template-columns:minmax(0,1fr);gap:2px;padding:6px 0;display:grid}.dev-slider span{color:var(--dev-dim);font-variant-numeric:tabular-nums}.dev-slider input{width:100%;height:var(--dev-target);accent-color:var(--dev-yellow);cursor:pointer;background:0 0;margin:0}.dev-note,.dev-drawer .debug-note,.dev-drawer .debug-queue{color:var(--dev-dim);font-variant-numeric:tabular-nums;font-size:12.5px}.dev-note:empty{display:none}.dev-status{border-left:3px solid var(--dev-yellow);background:#22231c;border-radius:6px;padding:7px 10px;font-size:12.5px}.dev-heading{color:var(--dev-dim);letter-spacing:.1em;text-transform:uppercase;border-top:1px solid #ffffff12;margin-top:10px;padding-top:10px;font-size:11px;font-weight:700}.dev-group-body>.dev-heading:first-child{border-top:0;margin-top:0;padding-top:2px}.dev-choice{grid-template-columns:76px minmax(0,1fr);gap:8px;display:grid}.dev-choice-label{color:var(--dev-dim)}.dev-choice-options{background:var(--dev-well);border-radius:9px;gap:2px;padding:2px;display:flex}.dev-choice-option{min-height:calc(var(--dev-target) - 4px);color:var(--dev-dim);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:1;padding:2px 6px;font-size:13px}.dev-choice-option[aria-pressed=true]{color:#141414;background:#e8e9ed;font-weight:700}.dev-fold{border-top:1px dashed var(--dev-line);display:block}.dev-fold>summary{min-height:var(--dev-target);color:var(--dev-text);cursor:pointer;align-items:center;gap:6px;list-style:none;display:flex}.dev-fold>summary::-webkit-details-marker{display:none}.dev-fold>summary:before{width:14px;color:var(--dev-yellow);content:"▸"}.dev-fold[open]>summary:before{content:"▾"}.dev-input,.dev-drawer .debug-select,.dev-drawer .debug-number,.dev-drawer select{min-height:var(--dev-target);border:1px solid var(--dev-line);background:var(--dev-well);color:var(--dev-text);font:13px var(--dev-sans);border-radius:8px;padding:2px 8px}.dev-input:focus,.dev-drawer select:focus{border-color:var(--dev-yellow);outline:none}.dev-save-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.dev-state,.dev-feed{background:var(--dev-well);color:var(--dev-text);font:12px/1.45 var(--dev-mono);font-variant-numeric:tabular-nums;white-space:pre-wrap;word-break:break-word;border-radius:8px;padding:8px;display:block}.dev-feed{max-height:40vh;color:var(--dev-dim);overflow-y:auto}.dev-graph{background:var(--dev-well);border-radius:6px;width:100%;height:56px;display:block}.dev-foot{padding:8px 14px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--dev-line);flex-wrap:wrap;gap:6px;display:flex}.dev-foot .dev-button{color:var(--dev-dim);background:0 0}.dev-drawer .debug-buttons{flex-wrap:wrap;gap:6px;margin:0;padding:3px 0;display:flex}[data-layout=phone] .dev-drawer{border-top:1px solid var(--dev-line);border-left:0;border-radius:18px 18px 0 0;width:auto;height:52dvh;top:auto;left:0;box-shadow:0 -18px 40px #0000008c}[data-layout=phone] .dev-drawer[data-sheet=full]{height:calc(100dvh - env(safe-area-inset-top))}[data-layout=phone] .dev-grip{touch-action:none;cursor:grab;flex:none;justify-content:center;align-items:center;height:22px;display:flex}[data-layout=phone] .dev-grip:before{content:"";background:#3a3e4a;border-radius:3px;width:44px;height:5px}[data-layout=phone] .dev-head{padding-top:0}[data-layout=phone] .dev-key{display:none}[data-layout=phone] .dev-main{border-top:0;flex-direction:column}[data-layout=phone] .dev-nav{scrollbar-width:none;border-right:0;flex-direction:row;width:auto;padding:0 14px 10px;overflow:auto hidden}[data-layout=phone] .dev-cat{border:1px solid var(--dev-line);background:var(--dev-card);border-radius:999px;flex-direction:row;flex:none;gap:6px;min-height:40px;padding:0 12px;font-size:13px}[data-layout=phone] .dev-cat.on{border-color:var(--dev-yellow);background:var(--dev-yellow-soft)}.dev-all,.dev-picker{display:none}.dev-nav-wrap{display:flex;position:relative}[data-layout=phone] .dev-nav-wrap{border-bottom:1px solid var(--dev-line)}[data-layout=phone] .dev-nav{border-bottom:0;flex:1}[data-layout=phone] .dev-nav-wrap.more:after{width:56px;color:var(--dev-yellow);content:"▸";pointer-events:none;background:linear-gradient(90deg,#0000,#121317 70%);justify-content:flex-end;align-items:center;padding-right:6px;font-size:18px;display:flex;position:absolute;top:0;bottom:10px;right:0}[data-layout=phone] .dev-all{border-style:dashed;display:flex}[data-layout=phone] .dev-all.on{border-style:solid}[data-layout=phone] .dev-picker:not([hidden]){flex:1;padding:4px 14px 14px;display:block;overflow-y:auto}.dev-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.dev-picker-tile{border:1px solid var(--dev-line);border-radius:var(--dev-radius);background:var(--dev-card);min-height:76px;color:var(--dev-text);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:13px;display:flex}.dev-picker-tile .dev-icon{width:24px;height:24px;color:var(--dev-dim)}.dev-picker-tile.on{border-color:var(--dev-yellow);background:var(--dev-yellow-soft);color:var(--dev-yellow)}.dev-picker-tile.on .dev-icon{color:var(--dev-yellow)}.dev-content[hidden]{display:none}[data-layout=phone] .dev-ribbon{writing-mode:vertical-rl;border-radius:6px 0 0 6px;padding:10px 3px;top:38%;left:auto;right:0;transform:none}[data-layout=phone] .dev-ribbon:before{inset:-6px 0 -6px -30px}.dev-colours{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:4px 8px;display:grid}.dev-colour{min-height:var(--dev-target);align-items:center;gap:6px;display:flex}.dev-colour input{border:1px solid var(--dev-line);background:0 0;border-radius:6px;width:32px;height:28px;padding:0}.dev-planets{gap:4px;display:grid}.dev-planet{background:var(--dev-well);border-left:3px solid #0000;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;padding:4px 4px 4px 10px;display:grid}.dev-planet.selected{border-left-color:var(--dev-yellow);background:#222218}.dev-planet-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dev-planet-state{color:var(--dev-dim);font-size:11px;display:block}.dev-planet .dev-buttons{flex-wrap:nowrap;padding:0}.dev-types{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:6px;display:grid}.dev-types .dev-button{width:100%}.dev-types .dev-button.random{border-color:var(--dev-yellow);color:var(--dev-yellow)}.dev-editor{gap:0;display:grid}.dev-editor[hidden]{display:none}.dev-drawer .debug-row{flex-wrap:wrap;align-items:center;gap:6px;padding:3px 0;display:flex}.dev-drawer .debug-row>input[type=search],.dev-drawer .debug-row>select{flex:1;min-width:0}.dev-drawer .debug-number{width:84px}.dev-drawer .ui-button.primary,.dev-button.primary{border-color:var(--dev-yellow);background:var(--dev-yellow);color:#141414;font-weight:700}.dev-setups{gap:4px;display:grid}.dev-setup{background:var(--dev-well);border-radius:8px;padding:4px 4px 4px 10px}.dev-setup-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.dev-input{flex:1;width:100%}.dev-pin{width:30px;height:30px;color:var(--dev-faint);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.dev-pin .dev-icon{width:16px;height:16px}:root[data-touch=true] .dev-pin{width:44px;height:44px}.dev-pin.on{color:var(--dev-yellow)}.dev-pins{z-index:999;top:calc(env(safe-area-inset-top) + 64px);width:min(340px,100vw - 24px);max-height:60vh;color:var(--dev-text);font:13px/1.4 var(--dev-sans);gap:8px;display:grid;position:fixed;left:12px;overflow-y:auto}.dev-pins[hidden]{display:none}.dev-pins .dev-group{background:#1e2027eb;margin:0;box-shadow:0 8px 24px #00000073}.dev-pins .dev-purpose{display:none}.dev-pinned-note{border:1px dashed var(--dev-line);border-radius:var(--dev-radius);color:var(--dev-dim);align-items:center;gap:8px;margin-bottom:10px;padding:8px 10px;display:flex}.dev-pinned-note span{flex:1}
