:root{--hud-accent-rgb:84 224 199;--hud-gold-rgb:245 197 66;--hud-text-rgb:230 232 238;--hud-surface-rgb:17 21 31;--hud-sheet-rgb:14 20 28;--hud-danger-rgb:255 0 0;--hud-danger-soft-rgb:255 107 107;--hud-accent:rgb(var(--hud-accent-rgb));--hud-accent-text:#eafff9;--hud-accent-surface:#0f1f25f0;--hud-accent-glow:0 0 18px rgb(var(--hud-accent-rgb) / .2);--hud-gold:rgb(var(--hud-gold-rgb));--hud-text:rgb(var(--hud-text-rgb));--hud-text-muted:#8b93a7;--hud-border:#26304a;--hud-surface:rgb(var(--hud-surface-rgb) / .82);--hud-surface-solid:rgb(var(--hud-surface-rgb) / .88);--hud-sheet-surface:rgb(var(--hud-sheet-rgb) / .96);--hud-danger:#ff2f2f;--hud-danger-soft:rgb(var(--hud-danger-soft-rgb));--hud-danger-text:#ffe7e7;--hud-warn:#ffb347;--hud-warn-text:#ffdfae;--hud-reserve-tick:rgb(var(--hud-text-rgb) / .85);--mine-hotbar-clear:calc(68px + env(safe-area-inset-bottom));--mine-sheet-bottom:calc(84px + env(safe-area-inset-bottom))}*{box-sizing:border-box}html,body{color:var(--hud-text);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;background:#0b0e14;margin:0;padding:0;font-family:system-ui,-apple-system,sans-serif}input,textarea{-webkit-user-select:text;user-select:text}button,a{touch-action:manipulation}button{transition:filter .12s,background-color .14s,border-color .14s,box-shadow .14s}button:not(:disabled):active{filter:brightness(.84)}button:focus-visible{outline:2px solid var(--hud-accent);outline-offset:2px}.workshop-tabs button,.carousel-arrow,.inspector-actions button,.workshop-ready-chip{transition:transform 90ms,filter .12s,background-color .14s,border-color .14s,box-shadow .14s}.workshop-tabs button:not(:disabled):active,.carousel-arrow:not(:disabled):active,.inspector-actions button:not(:disabled):active,.workshop-ready-chip:not(:disabled):active{filter:brightness(.92);transform:translateY(1px)scale(.97)}.app-error-screen{min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) 20px max(24px, env(safe-area-inset-bottom));background:radial-gradient(circle at 52% 22%, rgb(var(--hud-accent-rgb) / .16), transparent 28%), linear-gradient(180deg, #0b0e14 0%, #121520 54%, #17120d 100%);place-items:center;display:grid}.app-error-panel{color:#eef2f7;text-align:center;border:1px solid rgb(var(--hud-accent-rgb) / .44);background:#0a0e17db;border-radius:8px;justify-items:center;gap:18px;width:min(420px,100%);padding:24px;display:grid;box-shadow:0 24px 64px #00000070}.app-error-mark{color:#121520;background:var(--hud-gold);width:54px;height:54px;box-shadow:0 0 24px rgb(var(--hud-gold-rgb) / .28);border:2px solid #ffe28a;border-radius:50%;place-items:center;font-size:32px;font-weight:900;line-height:1;display:grid}.app-error-copy{gap:8px;display:grid}.app-error-copy h1,.app-error-copy p{margin:0}.app-error-kicker{color:var(--hud-accent);text-transform:uppercase;font-size:13px;font-weight:800}.app-error-copy h1{color:#fff;font-size:clamp(26px,6vw,40px);line-height:1.05}.app-error-copy p{color:#c8d0dd;font-size:16px;line-height:1.45}.app-error-copy .app-error-code{color:#8fe9f2;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}.app-error-actions{flex-wrap:wrap;justify-content:center;gap:10px;width:100%;display:flex}.app-error-actions button{color:#07110f;background:var(--hud-accent);cursor:pointer;border:1px solid #8ff4e4;border-radius:8px;min-width:112px;min-height:44px;padding:10px 16px;font-size:15px;font-weight:800}.app-error-actions .app-error-action-secondary{color:#eef2f7;border-color:rgb(var(--hud-text-rgb) / .24);background:#ffffff14}.workshop-stage{width:100%;height:100dvh;position:relative}.workshop-header{z-index:11;background:rgb(var(--hud-surface-rgb) / .92);border:1px solid var(--hud-border);border-radius:10px;flex-direction:column;gap:6px;padding:8px 12px;display:flex;position:absolute;top:14px;left:170px;right:20px}.workshop-header-title{font-size:.9rem;font-weight:600}.workshop-header-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.workshop-ready-chip{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;flex:none;padding:2px 10px;font-size:.78rem;font-weight:700}.workshop-ready-chip-ok{color:#54e0c7;border-color:#54e0c766}.workshop-ready-chip-bad{color:#ff6b6b;border-color:#ff6b6b80}.workshop-meters{gap:12px;display:flex}.workshop-meter{min-width:0;color:var(--hud-text-muted);flex:1 1 0;grid-template-columns:auto 1fr auto;align-items:center;gap:6px;font-size:.72rem;display:grid}.workshop-meter-label{white-space:nowrap;font-weight:600}.workshop-meter-track{background:#1a2133;border:1px solid #26304a;border-radius:3px;height:6px;display:block;overflow:hidden}.workshop-meter-fill{background:var(--hud-accent);border-radius:3px;height:100%;transition:width .22s;display:block}.workshop-meter-value{font-variant-numeric:tabular-nums;color:var(--hud-text);white-space:nowrap}.workshop-meter-over .workshop-meter-fill,.workshop-meter-flash .workshop-meter-fill{background:#ff6b6b}.workshop-meter-over .workshop-meter-value{color:#ff6b6b}.workshop-meter-flash{animation:.9s ease-out workshop-meter-flash}@keyframes workshop-meter-flash{0%{color:#ff6b6b;transform:translate(0)}20%{transform:translate(-3px)}40%{transform:translate(3px)}60%{transform:translate(-2px)}to{color:inherit;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.workshop-meter-flash{animation:none}}.workshop-budget-reason{color:#ffd166;margin:0;font-size:.74rem;font-weight:600}.workshop-budget-reason-ok{color:var(--hud-text-muted)}.workshop-coach{background:#54e0c71f;border:1px solid #54e0c773;border-radius:8px;align-items:center;gap:8px;margin:0 2px 8px;padding:8px 10px;font-size:.78rem;line-height:1.3;display:flex}.workshop-coach-title{color:#54e0c7;white-space:nowrap;flex:none;font-weight:700}.workshop-coach-line{min-width:0;color:var(--hud-text);flex:auto}.workshop-coach-skip{background:var(--hud-border);color:var(--hud-text);cursor:pointer;touch-action:none;border:1px solid #344061;border-radius:999px;flex:none;padding:4px 10px;font-size:.72rem;font-weight:600}.workshop-thumb-bar{align-items:center;gap:6px;padding:0 2px 6px;display:flex}.workshop-thumb-button{background:var(--hud-border);min-width:0;min-height:38px;color:var(--hud-text);white-space:nowrap;cursor:pointer;touch-action:none;border:1px solid #344061;border-radius:8px;flex:1 1 0;padding:6px 4px;font-size:.78rem;font-weight:600}.workshop-thumb-button:disabled{color:#5a6378;cursor:not-allowed;background:#161b28}.workshop-thumb-button.workshop-thumb-active{background:#2f7d6b;border-color:#54e0c7}.workshop-thumb-button.workshop-thumb-primary{background:var(--hud-accent);color:#0b0e14;flex:1.5 1 0}.workshop-thumb-button.workshop-thumb-primary:disabled{color:#5a6378;background:#161b28}.workshop-thumb-button:not(:disabled):active{transform:translateY(1px)scale(.97)}.workshop-fight-menu{flex:1.5 1 0;min-width:0;display:flex;position:relative}.workshop-fight-menu>.workshop-thumb-button{flex:1 1 0}.workshop-fight-menu-panel{z-index:19;background:rgb(var(--hud-surface-rgb) / .98);border:1px solid #344061;border-radius:10px;flex-direction:column;gap:6px;width:220px;padding:8px;display:flex;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 8px 24px #00000080}.workshop-fight-action{background:var(--hud-accent);color:#0b0e14;cursor:pointer;border:1px solid #344061;border-radius:6px;width:100%;padding:8px 10px;font-size:.9rem;font-weight:600}.workshop-fight-rival{background:#7aa8ff}.workshop-fight-hint{opacity:.7;margin-top:2px;font-size:.7rem;font-weight:500;display:block}.workshop-fight-action:disabled{color:#5a6378;cursor:not-allowed;background:#161b28}.workshop-sheet{z-index:12;max-width:560px;padding:0 12px calc(8px + env(safe-area-inset-bottom));border:1px solid var(--hud-border);background:#0d111af7;border-bottom:none;border-radius:16px 16px 0 0;flex-direction:column;margin:0 auto;transition:transform .2s;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 30px #00000080}.workshop-sheet-drag{touch-action:none;cursor:grab}.workshop-sheet-drag button{touch-action:none}.workshop-sheet-handle{cursor:grab;touch-action:none;background:0 0;border:none;flex-direction:column;align-items:center;gap:3px;width:100%;padding:8px 0 6px;display:flex}.workshop-sheet-grip{background:#4a5578;border-radius:2px;width:40px;height:4px}.workshop-sheet-loading{justify-content:center;align-items:center;min-height:120px;padding:20px;display:flex}.workshop-spinner{border:3px solid var(--hud-border);border-top-color:var(--hud-accent);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite workshop-spin}@keyframes workshop-spin{to{transform:rotate(360deg)}}.workshop-sheet-hint{letter-spacing:.02em;color:var(--hud-text-muted);font-size:.68rem;font-weight:600}.workshop-tabs{gap:4px;padding:2px;display:flex}.workshop-tabs button{color:#aeb6c8;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;flex:1;padding:8px 6px;font-size:.85rem}.workshop-tabs button.workshop-tab-active{background:var(--hud-border);color:var(--hud-text);border-color:#344061}.workshop-build-panels{flex-direction:column;gap:12px;max-height:30dvh;padding:8px 2px;transition:max-height .22s,opacity .16s,padding .22s;display:flex;overflow-y:auto}.workshop-sheet-collapsed .workshop-build-panels{opacity:0;pointer-events:none;max-height:0;padding-top:0;padding-bottom:0;overflow:hidden}.workshop-sheet-dragging .workshop-build-panels{opacity:1;pointer-events:auto;padding:8px 2px;overflow:hidden}.workshop-inspector{z-index:13;background:rgb(var(--hud-surface-rgb) / .95);border:1px solid #344061;border-radius:12px;flex-direction:column;gap:5px;min-width:248px;max-width:340px;padding:8px 14px;display:flex;position:absolute;bottom:96px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #00000073}.inspector-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.inspector-name{font-size:.95rem;font-weight:600}.inspector-level{opacity:.85;align-items:center;gap:6px;font-size:.78rem;display:inline-flex}.inspector-durability{background:#1b2233;border-radius:8px;height:15px;position:relative;overflow:hidden}.inspector-durability-fill{background:linear-gradient(90deg, var(--hud-accent), #7aa8ff);height:100%;position:absolute;inset:0 auto 0 0}.inspector-durability-text{color:#0b0e14;text-align:center;font-size:.7rem;font-weight:600;line-height:15px;display:block;position:relative}.inspector-actions{gap:8px;display:flex}.inspector-actions button{flex:1;padding:6px 8px}.part-remove-handle{z-index:14;color:#fff;cursor:pointer;background:#c2373a;border:1px solid #ff8f8f;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;padding:0;font-size:.9rem;line-height:1;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 10px #00000080}.part-remove-handle:active{background:#a82c2f}.fight-debrief{border:1px solid var(--hud-border);background:rgb(var(--hud-surface-rgb) / .94);border-radius:10px;padding:10px 12px}.fight-debrief-headline{margin:0 0 6px;font-size:.9rem;font-weight:700}.fight-debrief-lesson{flex-direction:column;gap:6px;margin-top:6px;display:flex}.fight-debrief-lesson p{margin:0;font-size:.8rem;line-height:1.3}.fight-debrief-fix{min-height:32px;color:var(--hud-text);cursor:pointer;background:#2f7d6b;border:1px solid #54e0c7;border-radius:999px;align-self:flex-start;padding:4px 12px;font-size:.8rem;font-weight:600}.fight-debrief-fix:not(:disabled):active{transform:translateY(1px)scale(.97)}.paint-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.paint-row-label{color:var(--hud-text-muted);flex:0 0 40px;font-size:.78rem}.paint-swatches{flex-wrap:wrap;gap:6px;display:flex}.paint-swatch{cursor:pointer;border:2px solid #ffffff2e;border-radius:50%;width:28px;height:28px;padding:0}.paint-swatch.paint-swatch-active{border-color:#fff;box-shadow:0 0 0 2px #0b0e14,0 0 0 4px #54e0c7}.paint-swatch:not(:disabled):active{transform:scale(.94)}.carousel-overlay-chips{pointer-events:auto;flex-wrap:wrap;gap:6px;display:flex}.carousel-chip{border:1px solid var(--hud-border);background:rgb(var(--hud-surface-rgb) / .86);min-height:30px;color:var(--hud-text-muted);cursor:pointer;border-radius:999px;padding:4px 10px;font-size:.74rem;font-weight:600}.carousel-chip.carousel-chip-active{color:var(--hud-text);background:#2f7d6b;border-color:#54e0c7}.carousel-chip:not(:disabled):active{transform:translateY(1px)scale(.97)}.carousel-arrow{background:var(--hud-border);width:40px;height:40px;color:var(--hud-text);cursor:pointer;border:1px solid #344061;border-radius:8px;flex:none;font-size:1rem;line-height:1}.carousel-arrow:hover{background:#303c5c}.chassis-option{color:#aeb6c8;cursor:pointer;background:#1a2133;border:1px solid #2b3550;border-radius:7px;flex:1;padding:8px 6px;font-size:.82rem;font-weight:600;transition:transform 90ms,filter .12s,background-color .14s,border-color .14s}.chassis-option:not(:disabled):active{filter:brightness(.92);transform:translateY(1px)scale(.97)}.chassis-option.chassis-active{color:#0b0e14;background:var(--hud-accent);border-color:#8ff4e4}.mirror-toggle{color:#aeb6c8;cursor:pointer;background:#1a2133;border:1px solid #2b3550;border-radius:7px;width:100%;margin-top:8px;padding:8px 10px;font-size:.82rem;font-weight:600;transition:transform 90ms,filter .12s,background-color .14s,border-color .14s}.mirror-toggle:not(:disabled):active{filter:brightness(.92);transform:translateY(1px)scale(.98)}.mirror-toggle.mirror-active{color:#0b0e14;background:#7aa8ff;border-color:#a9c6ff}.blueprint-option{text-align:left;color:var(--hud-text);cursor:pointer;background:#1a2133;border:1px solid #2b3550;border-radius:8px;flex-direction:column;gap:2px;padding:10px 12px;transition:transform 90ms,filter .12s,border-color .14s;display:flex}.blueprint-option:not(:disabled):active{filter:brightness(.92);transform:translateY(1px)scale(.99)}.blueprint-option:hover{border-color:#3d496b}.blueprint-label{font-size:.9rem;font-weight:600}.blueprint-blurb{opacity:.7;font-size:.72rem}.carousel-overlay{z-index:11;pointer-events:none;position:absolute;inset:0}.carousel-overlay-name{pointer-events:none;background:rgb(var(--hud-surface-rgb) / .72);border:1px solid var(--hud-border);white-space:nowrap;border-radius:999px;padding:4px 14px;font-size:1rem;font-weight:600;transition:top .2s;position:absolute;top:60%;left:50%;transform:translate(-50%)}.carousel-overlay-arrows{justify-content:space-between;padding:0 28px;transition:top .2s;display:flex;position:absolute;top:68%;left:0;right:0}.carousel-overlay-raised .carousel-overlay-name{top:54%}.carousel-overlay-raised .carousel-overlay-arrows{top:62%}.carousel-overlay-lifted .carousel-overlay-name{top:40%}.carousel-overlay-lifted .carousel-overlay-arrows{top:48%}.carousel-overlay-arrows .carousel-arrow{pointer-events:auto}.inspector-count{font-size:.85rem;font-weight:600}.inspector-stats{opacity:.75;margin:0;font-size:.78rem}.inspector-copy{flex-direction:column;display:flex}.inspector-blurb{opacity:.9;margin:0;font-size:.78rem;line-height:1.25}@keyframes count-consumed{0%{transform:scale(1)}30%{color:#ffe08a;transform:scale(1.55)}to{transform:scale(1)}}.count-consumed{animation:.6s ease-out count-consumed}@media (max-width:700px) and (orientation:portrait){.workshop-header{position:fixed;top:60px;left:12px;right:12px}.workshop-inspector{min-width:0;max-width:none;left:12px;right:12px;transform:none}}
