:root{--bg-dark: #0a0c10;--panel-bg: rgba(14, 17, 24, .97);--panel-border: rgba(255, 255, 255, .09);--panel-border-focus: #06b6d4;--accent-cyan: #06b6d4;--accent-cyan-light: #22d3ee;--accent-gold: #fbbf24;--accent-red: #ef4444;--accent-green: #10b981;--accent-blue: #3b82f6;--accent-purple: #a855f7;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "Courier New", Courier, monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;user-select:none;-webkit-user-select:none}html,body{width:100%;height:100%;overflow:hidden;background:#060810;color:var(--text-primary);font-family:var(--font)}#canvas-container{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1}#canvas-container canvas{display:block;width:100%;height:100%;cursor:none}#crosshair-container{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:100;visibility:hidden}#crosshair-container.active{visibility:visible}#crosshairCanvas{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}#hitmarker{position:absolute;top:50%;left:50%;width:28px;height:28px;transform:translate(-50%,-50%) scale(.6);pointer-events:none;opacity:0;transition:opacity 55ms ease-out,transform 55ms ease-out}#hitmarker.active{opacity:1;transform:translate(-50%,-50%) scale(1.1)}.hm-line{position:absolute;width:10px;height:2.5px;background:#f43f5e;box-shadow:0 0 7px #f43f5ef2;border-radius:1px}.hm-tl{top:5px;left:5px;transform:rotate(45deg)}.hm-tr{top:5px;right:5px;transform:rotate(-45deg)}.hm-bl{bottom:5px;left:5px;transform:rotate(-45deg)}.hm-br{bottom:5px;right:5px;transform:rotate(45deg)}#game-hud{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10;display:none;flex-direction:column;justify-content:space-between;padding:18px 28px 14px;opacity:0;transition:opacity .18s ease}#game-hud.active{display:flex;opacity:1}.hud-top-bar{display:flex;justify-content:space-between;align-items:flex-start;width:100%;gap:16px}.hud-group{display:flex;flex-direction:column;gap:2px;min-width:110px}.hud-group.center{align-items:center;flex:1}.hud-group.right{align-items:flex-end}.hud-label{font-size:.6rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted)}.hud-val{font-size:2.2rem;font-weight:900;letter-spacing:1px;line-height:1;font-variant-numeric:tabular-nums}.hud-val.cyan{color:var(--accent-cyan-light)}.hud-val.gold{color:var(--accent-gold)}.hud-val.red{color:var(--accent-red)}.time-bar-wrap{width:220px;height:3px;background:#ffffff1a;border-radius:2px;margin-top:4px;overflow:hidden}#timeBarFill{height:100%;width:100%;background:var(--accent-cyan-light);border-radius:2px;transition:background .5s ease}.phase-pill{margin-top:5px;font-size:.65rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--text-secondary);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:3px 12px}.combo-streak-label{font-size:.65rem;font-weight:700;letter-spacing:1.5px;color:var(--text-muted);text-transform:uppercase;margin-top:3px}#hudBanner{position:absolute;top:26%;left:50%;transform:translate(-50%);text-align:center;pointer-events:none;opacity:0;transition:opacity .22s ease;white-space:nowrap}#hudBanner.active{opacity:1}.banner-title{font-size:2.4rem;font-weight:900;letter-spacing:4px;text-transform:uppercase;color:#fff;text-shadow:0 0 24px rgba(6,182,212,.6),0 2px 8px rgba(0,0,0,.6)}.banner-sub{font-size:.85rem;letter-spacing:2px;color:var(--text-secondary);text-transform:uppercase;margin-top:4px}.hud-hint{font-size:.65rem;color:#64748b99;letter-spacing:1.5px;text-transform:uppercase;text-align:center}.ui-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:none;align-items:center;justify-content:center;background:#060810c7;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fadeIn .18s ease}.ui-layer.active{display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.panel-card{background:var(--panel-bg);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:36px 40px 32px;max-width:540px;width:94%;box-shadow:0 24px 60px #000000a6,0 0 0 1px #06b6d412;position:relative;overflow:hidden}.panel-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent-cyan),transparent);opacity:.6}.panel-title{font-size:2.4rem;font-weight:900;letter-spacing:4px;text-transform:uppercase;color:var(--text-primary);margin-bottom:4px;line-height:1}.panel-subtitle{font-size:.72rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--text-muted);margin-bottom:24px}.aim-btn{display:block;width:100%;padding:13px 24px;font-family:var(--font);font-size:.8rem;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;border:1px solid rgba(255,255,255,.12);border-radius:6px;background:#ffffff0a;color:var(--text-secondary);cursor:pointer;transition:background .15s,border-color .15s,color .15s,transform .08s;outline:none;text-align:center;white-space:nowrap}.aim-btn:hover{background:#ffffff17;border-color:#ffffff38;color:var(--text-primary)}.aim-btn:active{transform:translateY(1px)}.aim-btn.primary{background:var(--accent-cyan);border-color:var(--accent-cyan);color:#040810;font-weight:800}.aim-btn.primary:hover{background:var(--accent-cyan-light);border-color:var(--accent-cyan-light)}.aim-btn.secondary{border-color:#06b6d44d;color:var(--accent-cyan-light)}.aim-btn.secondary:hover{background:#06b6d414;border-color:var(--accent-cyan);color:var(--accent-cyan-light)}.aim-btn.danger{border-color:#ef44444d;color:var(--accent-red)}.aim-btn.danger:hover{background:#ef44441a;border-color:var(--accent-red)}.btn-col{display:flex;flex-direction:column;gap:10px;margin-top:8px}.btn-row{display:flex;gap:10px;margin-top:16px}.btn-row .aim-btn{flex:1}.operator-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 10px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:20px;font-size:.72rem;letter-spacing:1.5px;color:var(--text-secondary);margin-bottom:20px}.operator-badge strong{color:var(--accent-cyan-light);font-weight:800}.edit-name-btn{background:#06b6d41f;border:1px solid rgba(6,182,212,.3);color:var(--accent-cyan);border-radius:4px;font-size:.6rem;font-weight:700;letter-spacing:1.5px;padding:2px 8px;cursor:pointer;transition:background .15s}.edit-name-btn:hover{background:#06b6d438}.input-group{margin-bottom:16px}.input-label{display:block;font-size:.65rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--text-muted);margin-bottom:7px}.aim-input{width:100%;padding:11px 14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:var(--text-primary);font-family:var(--font);font-size:.95rem;outline:none;transition:border-color .15s}.aim-input:focus{border-color:var(--accent-cyan)}.input-hint{font-size:.7rem;margin-top:5px;color:var(--text-muted)}.settings-section{margin-bottom:20px}.settings-section-title{font-size:.6rem;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--accent-cyan);border-bottom:1px solid rgba(6,182,212,.15);padding-bottom:6px;margin-bottom:14px}.slider-group{margin-bottom:14px;display:flex;align-items:center;gap:12px}.slider-label{font-size:.65rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-secondary);min-width:140px;flex-shrink:0}.aim-slider{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:3px;background:#ffffff1a;border-radius:2px;outline:none;cursor:pointer}.aim-slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent-cyan);cursor:pointer;box-shadow:0 0 6px #06b6d499}.aim-slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent-cyan);cursor:pointer;border:none}.slider-val{font-size:.75rem;font-weight:700;color:var(--accent-cyan-light);min-width:44px;text-align:right;font-variant-numeric:tabular-nums}.pill-row{display:flex;gap:8px}.quality-pill{flex:1;padding:8px 10px;font-family:var(--font);font-size:.65rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:#ffffff0a;color:var(--text-muted);cursor:pointer;transition:all .15s;text-align:center}.quality-pill:hover,.quality-pill.selected{background:#06b6d41f;border-color:var(--accent-cyan);color:var(--accent-cyan-light)}.crosshair-picker{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.ch-style-btn{width:56px;height:56px;border:2px solid rgba(255,255,255,.1);border-radius:7px;background:#ffffff08;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s;position:relative;flex-shrink:0}.ch-style-btn:hover{border-color:#06b6d466;background:#06b6d40f}.ch-style-btn.selected{border-color:var(--accent-cyan);background:#06b6d41f}.ch-style-btn.selected:after{content:"✓";position:absolute;top:2px;right:4px;font-size:9px;color:var(--accent-cyan);font-weight:900}.ch-style-btn canvas{pointer-events:none}.crosshair-preview-wrap{background:#3a4050;border:1px solid rgba(255,255,255,.1);border-radius:7px;width:100%;height:110px;display:flex;align-items:center;justify-content:center;position:relative;margin-bottom:14px;overflow:hidden}.crosshair-preview-wrap:before{content:"PREVIEW";position:absolute;top:6px;left:10px;font-size:.55rem;font-weight:700;letter-spacing:2px;color:#ffffff40}#previewCrosshairCanvas{pointer-events:none}.color-swatch-row{display:flex;gap:8px;margin-bottom:10px}.color-swatch{width:28px;height:28px;border-radius:50%;border:2px solid rgba(255,255,255,.15);cursor:pointer;transition:transform .12s,border-color .12s}.color-swatch:hover{transform:scale(1.15)}.color-swatch.selected{border-color:#fff;transform:scale(1.15);box-shadow:0 0 8px #fff6}.tut-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:14px;text-align:left}.tut-card{background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:7px;padding:10px 12px;display:flex;align-items:center;gap:10px}.tut-dot{width:22px;height:22px;border-radius:50%;flex-shrink:0;box-shadow:0 0 8px currentColor}.tut-info h4{font-size:.75rem;font-weight:700;letter-spacing:1px;margin-bottom:2px}.tut-info p{font-size:.68rem;color:var(--text-muted);line-height:1.3}.results-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0;text-align:left}.res-card{background:#ffffff08;border:1px solid rgba(255,255,255,.07);border-radius:7px;padding:12px 14px}.res-label{font-size:.6rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.res-val{font-size:1.4rem;font-weight:800;color:var(--text-primary);font-variant-numeric:tabular-nums}.record-badge{display:inline-block;padding:4px 14px;background:#fbbf2424;border:1px solid var(--accent-gold);color:var(--accent-gold);border-radius:4px;font-size:.72rem;font-weight:800;letter-spacing:1.5px;margin-bottom:10px;text-transform:uppercase}.lb-table-wrap{max-height:300px;overflow-y:auto;margin:14px 0;border:1px solid rgba(255,255,255,.09);border-radius:7px}.lb-table{width:100%;border-collapse:collapse;font-size:.8rem;text-align:left}.lb-table th{background:#ffffff0a;padding:9px 12px;color:var(--text-secondary);font-weight:700;letter-spacing:1.5px;text-transform:uppercase;font-size:.65rem;border-bottom:1px solid rgba(255,255,255,.09)}.lb-table td{padding:9px 12px;border-bottom:1px solid rgba(255,255,255,.04)}.lb-table tr:hover td{background:#06b6d40a}.rank-1{color:var(--accent-gold);font-weight:800}.rank-2{color:#e2e8f0;font-weight:700}.rank-3{color:#cd7f32;font-weight:700}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:#0003}::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:3px}:root{--accent-cyan-light: #d5e1ec;--accent-gold: #e4ebf3;--panel-bg: rgba(22, 29, 39, .97);--panel-border-focus: #8aaac8}#game-hud{padding:22px 30px 18px}.hud-top-bar{align-items:flex-start}.hud-group{padding:11px 16px;min-width:125px;border-radius:9px;background:#111822a6;border:1px solid rgba(210,225,240,.12);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.hud-group.center,.hud-group.right{min-width:235px}.hud-label{color:#aab6c5;font-size:.63rem;letter-spacing:1.2px}.hud-val{color:#f3f6fa!important;font-size:1.66rem;font-weight:700;letter-spacing:.4px;text-shadow:none}#hudScore,#hudTimer{font-size:2rem}#hudAccuracy{font-size:1.55rem!important}#hudCombo{font-size:1.5rem!important;color:#d4e1ee!important}.phase-pill{margin-top:7px;padding:0;background:transparent;border:0;border-radius:0;letter-spacing:1.3px;color:#b7c8d9;font-size:.64rem}#timeBarFill{background:#94b6d0}.combo-streak-label{font-weight:600;letter-spacing:.8px;color:#9faaba}.hud-hint{color:#c6d3e0b8;letter-spacing:.6px;font-size:.64rem;background:#0f172180;border-radius:8px;padding:7px 12px;align-self:center}#hudBanner{display:none!important}.difficulty-picker{padding:15px;margin:18px 0 20px;border:1px solid rgba(181,204,224,.18);background:#84a0b80e;border-radius:9px}.picker-heading{display:block;text-align:left;color:#bbcbdc;font-size:.72rem;letter-spacing:1.4px;font-weight:750;margin-bottom:12px}.difficulty-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.difficulty-option{-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:7px;background:#232d39;border:1px solid #435064;color:#d0dce9;padding:11px 4px 9px;cursor:pointer;font-weight:750;letter-spacing:.6px;display:flex;align-items:center;flex-direction:column;gap:5px;transition:border-color .15s,background .15s}.difficulty-option small{font-size:.58rem;font-weight:650;color:#9cabbc;letter-spacing:.8px}.difficulty-option:hover{border-color:#a4b9ca}.difficulty-option.selected{border:2px solid #b9d6ec;padding-top:10px;background:#314a60;color:#fff;box-shadow:inset 0 0 0 1px #ffffff0f}.difficulty-option.selected small{color:#e0e9f4}.difficulty-description{margin:11px 0 0;text-align:center;font-size:.74rem;color:#b4c1d1;min-height:1.3em}.tutorial-note{color:#d9e5f1;background:#25313f;border:1px solid #41556b;border-radius:8px;padding:13px 15px;margin-bottom:16px;font-size:.78rem;line-height:1.55}.tutorial-note strong{display:block;letter-spacing:.7px;margin-bottom:5px}.tutorial-note p{margin:0;color:#c2cfdc}.leaderboard-toolbar{display:flex;align-items:center;justify-content:end;gap:10px;margin:10px 0 16px}.leaderboard-toolbar label{font-size:.69rem;font-weight:700;letter-spacing:1px;color:#acbdd0}.filter-select{padding:9px 10px;background:#263440;border:1px solid #53687a;border-radius:6px;color:#fff;font:inherit;font-size:.78rem}.lb-empty{text-align:center;padding:22px;color:#c1cdd9}.score-cell{color:#ecf2f8;font-weight:750;font-variant-numeric:tabular-nums}.difficulty-cell{color:#b6c9dc;font-size:.76rem;font-weight:700}#resScore{color:#f1f5f9!important}#resOperator,#resAccuracy{color:#dce9f4!important}@media (max-width: 750px){#game-hud{padding:8px}.hud-group{padding:7px;min-width:0!important}.hud-val,#hudScore,#hudTimer{font-size:1.25rem!important}.hud-label{font-size:.5rem}.hud-group.right{min-width:0}.time-bar-wrap{width:100%}.difficulty-options{gap:5px}}:root{--accent-cyan: #438ee6;--accent-cyan-light: #f2f6fa;--accent-gold: #f2f6fa}#hudScore,#hudTimer,#hudAccuracy,#hudCombo{font-family:var(--font)!important;font-size:1.65rem!important;font-weight:750!important;color:#f5f7f9!important;text-shadow:none!important;letter-spacing:.01em!important}#hudCombo{font-size:1.35rem!important}.hud-group{border:1px solid rgba(223,230,236,.15);background:#101720a8}.hud-label{font-size:.64rem;letter-spacing:.08em;font-weight:600}#hudDifficulty{letter-spacing:.08em}.target-legend{display:flex;justify-content:center;gap:10px;margin:-4px 0 16px;flex-wrap:wrap}.target-legend span{display:flex;gap:7px;align-items:center;padding:7px 11px;border-radius:7px;color:#e9eef3;background:#8093a61c;border:1px solid rgba(215,228,238,.14);font-weight:700;font-size:.74rem}.target-legend small{color:#aeb9c7;font-size:.64rem;font-weight:600}.target-legend i{display:inline-block;width:11px;height:11px;border-radius:50%}.legend-blue{background:#2187f1}.legend-red{background:#e64d58}#game-hud{padding:14px 18px 12px!important}.hud-top-bar{position:relative;display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.hud-group{flex:0 0 auto!important;min-width:112px!important;padding:8px 11px!important;background:#212a37c7!important;border:1px solid rgba(236,242,249,.14)!important;border-radius:7px!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.hud-group.center{position:absolute!important;top:0;left:50%;transform:translate(-50%);min-width:184px!important;width:184px!important;max-width:184px!important;align-items:center;flex:none!important}.hud-group.right{min-width:155px!important;align-items:flex-end}.hud-label{color:#becbd9!important;font-size:.6rem!important;letter-spacing:.07em!important}#hudScore,#hudTimer,#hudAccuracy{font-size:1.42rem!important}#hudCombo{font-size:1.2rem!important}.time-bar-wrap{width:144px!important;height:3px!important}.phase-pill{font-size:.59rem!important;margin-top:5px!important}.combo-streak-label{font-size:.58rem!important}.hud-hint{font-size:.61rem!important;background:#202a3894!important}@media (max-width: 650px){#game-hud{padding:8px 7px!important}.hud-group{min-width:74px!important;padding:6px!important}.hud-group.center{min-width:116px!important;width:116px!important}.hud-group.right{min-width:94px!important}#hudScore,#hudTimer,#hudAccuracy{font-size:1.08rem!important}#hudCombo{font-size:.95rem!important}.hud-label{font-size:.49rem!important}.time-bar-wrap{width:95px!important}.phase-pill{font-size:.49rem!important}}#countdownOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:32;display:none;align-items:center;justify-content:center;flex-direction:column;pointer-events:none;-webkit-user-select:none;user-select:none;background:radial-gradient(ellipse at center,rgba(13,22,36,.22),transparent 65%)}#countdownOverlay.active{display:flex}.countdown-caption{font-size:.72rem;font-weight:750;letter-spacing:.22em;color:#edf5ffd1;text-shadow:0 2px 9px #172337}.countdown-value{font-size:clamp(5rem,14vw,9.8rem);font-weight:900;line-height:1.15;color:#f4f8fc;text-shadow:0 4px 28px rgba(13,22,38,.65);font-variant-numeric:tabular-nums}.countdown-pop{animation:countdownPulse .22s ease-out}@keyframes countdownPulse{0%{transform:scale(1.12);opacity:.6}to{transform:scale(1);opacity:1}}.history-summary{margin-top:12px;color:#cbd5e1;background:#ffffff09;border:1px solid rgba(255,255,255,.08);border-radius:7px;padding:10px 12px;text-align:center;letter-spacing:.04em;font-size:.73rem;font-weight:700}#historyModal .lb-table-wrap{max-height:355px}#historyModal .panel-card,#resultsOverlay .panel-card{max-height:92vh;overflow-y:auto}@media (max-width: 650px){#historyModal .panel-card{padding:22px 12px}#historyModal .lb-table{font-size:.66rem}#historyModal .lb-table td,#historyModal .lb-table th{padding:7px 5px}}#resultsOverlay .btn-row{flex-wrap:wrap}#resultsOverlay .btn-row .aim-btn{flex:1 1 45%;min-width:150px}
