:root{--bg-clean:#f4f6fb;--glass-bg:#ffffffdb;--glass-border:#fffffff2;--glass-shadow:0 14px 34px #0f172a1a, 0 3px 10px #0f172a0d;--text-primary:#0f172a;--text-secondary:#475569;--accent-amber:#d97706;--accent-blue:#2563eb;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-clean);width:100%;height:100%;font-family:var(--font-sans);color:var(--text-primary);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;touch-action:none;overflow:hidden}#canvas-container{z-index:1;opacity:0;width:100vw;height:100vh;transition:opacity .36s cubic-bezier(.22,1,.36,1);position:fixed;inset:0}#canvas-container.is-ready{opacity:1}#canvas-container canvas{touch-action:none;outline:none;width:100%;height:100%;display:block}.hud-header{top:max(16px, env(safe-area-inset-top,16px));left:max(20px, env(safe-area-inset-left,20px));right:max(20px, env(safe-area-inset-right,20px));z-index:16;pointer-events:none;justify-content:space-between;align-items:center;gap:12px;display:flex;position:fixed}.brand-badge{pointer-events:auto;background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);cursor:pointer;border-radius:14px;align-items:center;gap:11px;padding:9px 16px;transition:transform .18s,box-shadow .18s;display:inline-flex}.brand-badge:hover{transform:translateY(-1px)}.brand-badge:focus-visible,.top-action-btn:focus-visible,.nav-pill:focus-visible{outline:2.5px solid var(--accent-blue);outline-offset:2px}.status-dot{background:#10b981;border-radius:50%;flex-shrink:0;width:9px;height:9px;box-shadow:0 0 0 4px #10b9812e}.brand-title{letter-spacing:.07em;color:var(--text-primary);font-size:.86rem;font-weight:700;line-height:1.2}.brand-subtitle{color:var(--text-secondary);margin-top:1px;font-size:.71rem;font-weight:500}.top-actions{pointer-events:none;align-items:center;gap:8px;display:flex}.interaction-hint{pointer-events:auto;background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);color:var(--text-secondary);box-shadow:var(--glass-shadow);white-space:nowrap;border-radius:999px;padding:9px 15px;font-size:.75rem;font-weight:500}.hint-key{font-family:var(--font-mono);color:var(--text-primary);background:#0f172a14;border-radius:6px;padding:2px 7px;font-size:.69rem;font-weight:600}.top-action-btn{pointer-events:auto;appearance:none;color:#fafafa;min-height:40px;font-family:var(--font-sans);cursor:pointer;white-space:nowrap;background:#09090b;border:1px solid #0f172a24;border-radius:12px;align-items:center;gap:7px;padding:8px 14px;font-size:.78rem;font-weight:600;transition:transform .18s,background .18s,border-color .18s,box-shadow .18s,color .18s;display:inline-flex;box-shadow:0 8px 20px #09090b2e}.top-action-btn:hover{background:#18181b;transform:translateY(-1px)}.top-action-btn.is-active{color:#fafafa;background:#09090b;border-color:#10b98199;box-shadow:0 0 0 3px #10b9812e,0 8px 20px #09090b38}.top-action-btn.is-active svg{color:#34d399}.top-missions-btn{background:var(--glass-bg);color:var(--text-primary);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.top-missions-btn:hover{background:#fffffff5}.missions-count-badge{font-family:var(--font-mono);color:var(--text-primary);background:#0f172a14;border-radius:999px;padding:2px 7px;font-size:.7rem;font-weight:600;transition:background .18s,color .18s}.top-missions-btn.is-complete .missions-count-badge{color:#059669;background:#10b9812e}.top-missions-btn.is-active .missions-count-badge{color:#34d399;background:#34d39933}.mission-toast{top:calc(max(16px, env(safe-area-inset-top,16px)) + 58px);z-index:19;appearance:none;-webkit-backdrop-filter:blur(14px);color:#fafafa;font-family:var(--font-sans);cursor:pointer;white-space:nowrap;background:#09090bf0;border:1px solid #34d3996b;border-radius:999px;align-items:center;gap:9px;max-width:calc(100vw - 24px);padding:9px 16px;font-size:.78rem;transition:opacity .24s cubic-bezier(.22,1,.36,1),transform .24s cubic-bezier(.22,1,.36,1),visibility .24s;display:inline-flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 12px 28px #09090b42,0 0 0 3px #10b98124}.mission-toast:hover{border-color:#34d399b8;transform:translate(-50%)translateY(-1px)}.mission-toast.hidden{opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%)translateY(-10px)scale(.96)}.mission-toast-dot{background:#10b981;border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 0 3px #10b9813d}.mission-toast-tag{font-family:var(--font-mono);letter-spacing:.04em;color:#34d399;font-size:.67rem;font-weight:700}.mission-toast-title{color:#fafafa;text-overflow:ellipsis;font-weight:600;overflow:hidden}.mission-toast-cta{font-family:var(--font-mono);color:#a7f3d0;padding-left:2px;font-size:.7rem;font-weight:600}@media (width<=1140px){.interaction-hint{display:none}}.hover-tooltip{z-index:20;pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fafafa;white-space:nowrap;background:#09090bf0;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:8px;max-width:calc(100vw - 24px);padding:8px 14px;font-size:.78rem;transition:opacity .16s,transform .16s,left .14s cubic-bezier(.22,1,.36,1),top .14s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;transform:translate(-50%,-50%);box-shadow:0 10px 25px #00000038}.hover-tooltip.hidden{opacity:0;transform:translate(-50%,-44%)scale(.95)}.tooltip-tag{font-family:var(--font-mono);color:#fbbf24;font-size:.68rem;font-weight:600}.tooltip-title{font-weight:600}.tooltip-cta{color:#fafafab3;padding-left:4px;font-size:.7rem}.bottom-dock-wrapper{left:50%;bottom:max(18px, env(safe-area-inset-bottom,18px));z-index:16;pointer-events:none;flex-direction:column;align-items:center;gap:9px;max-width:calc(100vw - 24px);display:flex;position:fixed;transform:translate(-50%)}.dock-context-bar{pointer-events:none;justify-content:center;align-items:center;gap:10px;display:flex}.mobile-hint-pill{pointer-events:auto;-webkit-backdrop-filter:blur(10px);color:#fafafa;text-align:center;background:#09090bd6;border-radius:999px;padding:6px 13px;font-size:.71rem;font-weight:500;display:none;box-shadow:0 6px 18px #0f172a26}@keyframes dockLayerSwitch{0%{opacity:.72;transform:translateY(4px)scale(.975)}to{opacity:1;transform:translateY(0)scale(1)}}.hud-nav-dock{pointer-events:auto;scrollbar-width:none;background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);width:auto;max-width:calc(100vw - 24px);box-shadow:var(--glass-shadow);border-radius:18px;justify-content:center;align-items:center;gap:6px;padding:6px;display:inline-flex;overflow-x:auto}.hud-nav-dock::-webkit-scrollbar{display:none}.hud-nav-dock.is-switching{animation:.22s cubic-bezier(.22,1,.36,1) dockLayerSwitch}.nav-pill{appearance:none;min-height:44px;font-family:var(--font-sans);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:13px;flex:none;justify-content:center;align-items:center;gap:7px;padding:8px 18px;font-size:.81rem;font-weight:600;transition:background .18s,color .18s,transform .16s,opacity .18s,box-shadow .18s;display:inline-flex}.nav-pill-icon{width:44px;height:44px;color:var(--text-primary);padding:0}.nav-pill-icon svg{flex-shrink:0;display:block}.nav-pill:hover:not(:disabled){color:var(--text-primary);background:#0f172a11}.nav-pill:active:not(:disabled){transform:scale(.96)}.nav-pill.active{color:#fafafa;background:#09090b;box-shadow:0 4px 12px #09090b38}.nav-pill.active:hover:not(:disabled){color:#fafafa;background:#18181b}.nav-pill:disabled{opacity:.32;cursor:default}.print-only{display:none}@media (width<=768px){.hud-header{top:max(10px, env(safe-area-inset-top,10px));gap:6px;left:10px;right:10px}.brand-badge{-webkit-backdrop-filter:none;background:#fffffff2;border-radius:12px;flex:1;gap:8px;min-width:0;padding:7px 11px}.brand-text{min-width:0}.brand-title{letter-spacing:.05em;white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.brand-subtitle{white-space:nowrap;text-overflow:ellipsis;font-size:.63rem;overflow:hidden}.top-actions{gap:6px}.top-action-btn{border-radius:11px;gap:5px;min-height:38px;padding:7px 11px;font-size:.73rem}.top-missions-btn{-webkit-backdrop-filter:none;background:#fffffff2}.missions-btn-label{display:none}.mission-toast{top:calc(max(10px, env(safe-area-inset-top,10px)) + 50px);-webkit-backdrop-filter:none;background:#09090bf5;gap:7px;padding:7px 13px;font-size:.72rem}.mission-toast-tag{display:none}.bottom-dock-wrapper{bottom:max(12px, env(safe-area-inset-bottom,12px));gap:7px;max-width:calc(100vw - 14px)}.mobile-hint-pill{-webkit-backdrop-filter:none;background:#09090beb;display:inline-block}.hud-nav-dock{-webkit-backdrop-filter:none;background:#fffffff2;border-radius:16px;gap:4px;max-width:calc(100vw - 14px);padding:5px}.nav-pill{border-radius:11px;min-height:40px;padding:6px 11px;font-size:.73rem}.nav-pill-icon{width:40px;height:40px;padding:0}.nav-pill-label{line-height:1.1}}@media (prefers-reduced-motion:reduce){.hud-nav-dock.is-switching{transition:none!important;animation:none!important}}@media print{html,body{background:#fff;height:auto;overflow:visible}#canvas-container,.hud-header,.bottom-dock-wrapper,.hover-tooltip,.mission-toast{display:none!important}.print-only,.print-only[hidden]{color:#000;padding:24px 32px;font-size:10.5pt;line-height:1.42;display:block!important}.print-only h1{text-align:center;letter-spacing:.05em;margin-bottom:4px;font-size:18pt}.print-contact{text-align:center;border-bottom:1px solid #000;margin-bottom:14px;padding-bottom:8px;font-size:9.5pt}.print-only h2{letter-spacing:.06em;border-bottom:1px solid #000;margin:12px 0 6px;padding-bottom:2px;font-size:11pt}.print-job{margin-bottom:8px}.print-job-row{justify-content:space-between;margin-bottom:2px;display:flex}.print-only ul{padding-left:18px}}
