: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}.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-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}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}.report{width:min(400px,100vw - 32px);padding:16px 18px}.report-time{color:#f1f4fa;margin:0 0 12px;font-size:19px;font-weight:500}.report-tiles{grid-template-columns:1fr 1fr;gap:8px;display:grid}.report-tiles>div{border:1px solid #8ca0be2e;border-radius:8px;padding:9px 11px}.report-value{color:#e8edf6;font-variant-numeric:tabular-nums;font-size:16px;display:block}.report-value .scrap{color:#e6c39a}.report-note{color:#7a849a;margin:10px 0 0;font-size:12px}.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-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-section{font-size:12.5px}.debug-fps{color:#8a94a8;justify-content:space-between;margin-bottom:4px;display:flex}.debug-fps span{color:#8fdcf5;font-variant-numeric:tabular-nums}.debug-section .ui-switch-row{color:#cfd6e6;padding:5px 0}.debug-heading{color:#6c768b;letter-spacing:.1em;text-transform:uppercase;margin:14px 0 6px;font-size:10.5px}.debug-slider{color:#cfd6e6;padding:4px 0;display:block}.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=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.has-actions{pointer-events:auto}.tc-actions{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}.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.primary{background:#4fd8ff2e;border-color:#4fd8ffb3}.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-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}@media (prefers-reduced-motion:reduce){.target-card,.tc-fold,.tc-body{transition:opacity .2s}}.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-next-goals{border-top:1px solid var(--ui-hairline);margin-top:22px;padding-top:12px}.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=milestone]{--kind:var(--ui-materials)}.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-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-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;gap:10px;display:flex}.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-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-slot{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-slot.locked{color:var(--ui-dim);border-style:dashed;border-color:#ffffff24}.cp-slot-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-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%)}}.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 .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-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]{--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-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-safe-top) + var(--ph-header-h) + 30px);width:calc(100vw - 2 * var(--ph-gap));grid-template-columns:34px 1fr;column-gap:10px;padding:10px 14px 12px 12px}: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-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-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:10px 14px 12px;font-size:14px;transform:none!important}:root[data-layout=phone] .target-card.pinned.has-actions .tc-name{font-size:17px}:root[data-layout=phone] .target-leader.detached{display:none}:root[data-layout=phone] .target-card.pinned.has-actions.from-top{top:calc(var(--ph-safe-top) + var(--ph-header-h) + var(--ph-objective-actions-h) + 8px);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] .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)}
