:root{--bg-primary: #0a0a10;--bg-surface: #12131e;--bg-surface-elevated: #1a1b2b;--border-subtle: #25283d;--border-accent: #3d4266;--color-kick: #ff3344;--color-snare: #00e5ff;--color-clhat: #ffcc00;--color-ophat: #ff8800;--color-clap: #ff00aa;--color-synth: #9933ff;--p1-color: #00ffff;--p2-color: #ff007f;--p3-color: #39ff14;--p4-color: #ffe600;--p5-color: #a855f7;--p6-color: #ff6b2b;--text-primary: #f0f3ff;--text-muted: #8088a8;--text-dim: #4d5475;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;user-select:none;-webkit-user-select:none;touch-action:manipulation}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body{width:100%;height:100%;overflow:hidden;background-color:var(--bg-primary);color:var(--text-primary);position:fixed;top:0;right:0;bottom:0;left:0}#app{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.header-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;padding-top:max(8px,env(safe-area-inset-top,8px));background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);z-index:10;gap:12px;flex-shrink:0}.brand{display:flex;align-items:center;gap:8px}.brand-title{font-size:1.15rem;font-weight:800;letter-spacing:2px;text-transform:uppercase;background:linear-gradient(135deg,#0ff,#ff007f);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.header-row,.header-row-top{display:flex;align-items:center;gap:10px}.header-actions-top{display:flex;align-items:center;gap:8px}.header-row-bottom{display:flex;align-items:center;gap:10px}.playback-controls{display:flex;align-items:center;gap:8px}.btn-transport-play{min-width:52px;height:40px;padding:0 14px;font-size:1.25rem;font-weight:800;border-radius:8px;line-height:1}.btn-transport-stop,.btn-transport-clear{min-width:42px;height:40px;padding:0 10px;font-size:1.15rem;font-weight:800;border-radius:8px;line-height:1}.btn{display:inline-flex;align-items:center;justify-content:center;padding:7px 14px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-surface-elevated);color:var(--text-primary);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s ease;outline:none}.btn-icon{min-width:34px;height:32px;padding:0 6px;font-size:.95rem;line-height:1}.btn:active{transform:scale(.96)}.btn-primary{background:#0ff;color:#05050a;border-color:#0ff;box-shadow:0 0 12px #0ff6}.btn-primary.is-playing{background:#f05;color:#fff;border-color:#f05;box-shadow:0 0 12px #f056}.tempo-box{display:flex;align-items:center;gap:8px;background:var(--bg-surface-elevated);padding:4px 12px;border-radius:8px;border:1px solid var(--border-subtle);height:40px;box-sizing:border-box}.tempo-label{font-size:.75rem;color:var(--text-muted);font-weight:800;letter-spacing:.5px}.tempo-value{font-size:.95rem;font-weight:800;color:#0ff;min-width:28px;text-align:right;font-family:monospace}.tempo-slider{width:110px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ffffff1f;height:6px;border-radius:3px;outline:none;cursor:pointer;accent-color:#00ffff}.tempo-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:#0ff;box-shadow:0 0 10px #00ffffb3;cursor:pointer;border:2px solid #ffffff;transition:transform .1s ease}.tempo-slider::-webkit-slider-thumb:active{transform:scale(1.15)}.tempo-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#0ff;box-shadow:0 0 10px #00ffffb3;cursor:pointer;border:2px solid #ffffff}.preset-select{background:var(--bg-surface-elevated);color:var(--text-primary);border:1px solid var(--border-subtle);padding:8px 14px;border-radius:8px;font-size:.95rem;font-weight:600;min-height:38px;min-width:175px;outline:none;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #0000004d}.preset-select:hover{border-color:var(--accent-cyan)}.preset-select:focus{border-color:var(--accent-cyan);box-shadow:0 0 10px #00ffff59}.preset-select option,.preset-select optgroup{background:#121420;color:#e0e6ed;font-size:.92rem;padding:6px 10px}.canvas-container{flex:1 1 0;min-height:0;height:0;width:100%;position:relative;overflow:hidden;background-color:var(--bg-primary)}#hex-canvas{position:absolute;top:0;left:0;width:100%;height:100%;display:block;touch-action:none}.bottom-bar{background:var(--bg-surface);border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;padding:8px 16px;padding-bottom:max(10px,env(safe-area-inset-bottom,10px));gap:8px;z-index:20;flex-shrink:0;box-sizing:border-box;width:100%}.bottom-status-row{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px}.status-left{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.status-right{display:flex;align-items:center;flex-shrink:0}.status-chip{font-family:monospace;font-size:.82rem;color:var(--text-muted);letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cell-hud{display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.btn-hud{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:40px;min-height:40px;padding:0 16px;font-size:.85rem;font-weight:700;border-radius:8px;cursor:pointer;border:1px solid var(--border-subtle);background:var(--bg-surface-elevated);color:var(--text-primary);transition:all .15s ease;white-space:nowrap;line-height:1;flex:1;max-width:180px}.btn-hud-icon{font-size:1rem;line-height:1}.btn-hud-text{font-size:.82rem;font-weight:700;letter-spacing:.3px}.btn-hud:hover:not(:disabled){border-color:#cbd5e1;background:#25283d}.btn-hud:disabled{opacity:.65;cursor:not-allowed;pointer-events:none;border-color:#ffffff1f;color:var(--text-muted)}.btn-tool{position:relative;-webkit-user-select:none;user-select:none;border-width:1.5px}#btn-tool-beat.active{background:#00ffff2e;border-color:#0ff;color:#0ff;box-shadow:0 0 12px #00ffff73}#btn-tool-beat:hover:not(.active){border-color:#0ff6}#btn-tool-wall.active{background:#ff334438;border-color:#f34;color:#f56;box-shadow:0 0 12px #ff334473}#btn-tool-wall:hover:not(.active){border-color:#f346}@keyframes tool-glow-pulse{0%,to{box-shadow:0 0 5px #f346;border-color:#f349}50%{box-shadow:0 0 16px 4px #ff3344e6;border-color:#f34;transform:scale(1.06)}}.btn-tool.tool-callout{animation:tool-glow-pulse 1.2s ease-in-out infinite!important;color:#f56!important}#btn-tool-route.active{background:#ffe6002e;border-color:#ffe600;color:#ffe600;box-shadow:0 0 12px #ffe60073}#btn-tool-route:hover:not(.active){border-color:#ffe60066}#btn-tool-route.active #tool-route-arrow{display:inline-block;transform:scale(1.15);transition:transform .15s ease}.btn-hud-clear:hover{background:#ff3c3c59;color:#fff;box-shadow:0 0 10px #ff3c3c80}.status-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.btn-stop{background:#ff3c3c26;border-color:#ff3c3c80;color:#f56}.btn-stop:hover{background:#ff3c3c59;box-shadow:0 0 10px #ff3c3c66;color:#fff}.btn-share{background:#00e5ff1f;border-color:#00e5ff80;color:#00e5ff}.btn-share:hover{background:#00e5ff47;box-shadow:0 0 10px #00e5ff66;color:#fff}.btn-item-share{background:#00e5ff1f;border-color:#00e5ff66;color:#00e5ff}.btn-item-share:hover{background:#00e5ff;color:#000}.github-btn{display:inline-flex;align-items:center;justify-content:center;color:var(--text-dim);padding:4px;border-radius:6px;transition:all .2s ease;text-decoration:none;flex-shrink:0;width:26px;height:26px;box-sizing:border-box}.github-icon{width:16px;height:16px;display:block}.github-btn:hover{color:#0ff;background:var(--bg-surface-elevated);box-shadow:0 0 8px #00ffff40}.btn-help,.btn-lang{display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;min-height:26px;border-radius:6px;font-size:.75rem;font-weight:800;cursor:pointer;border:1px solid var(--border-subtle);background:var(--bg-surface-elevated);color:var(--text-muted);transition:all .15s ease;line-height:1}.btn-help:hover,.btn-lang:hover{color:#0ff;border-color:#0ff;background:#00ffff1f;box-shadow:0 0 8px #00ffff40}.btn-lang{letter-spacing:.8px;color:#0ff;border-color:#00ffff59;min-width:32px}.btn-save{border-color:#39ff1473;color:#39ff14;background:#39ff1414}.btn-save:hover{background:#39ff1438;box-shadow:0 0 10px #39ff1473;color:#fff}.btn-load{border-color:#00ffff73;color:#0ff;background:#00ffff14}.btn-load:hover{background:#00ffff38;box-shadow:0 0 10px #00ffff73;color:#fff}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#05050cbf;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.modal-overlay.hidden{display:none!important}.modal-card{background:#111320;border:1px solid rgba(0,255,255,.35);border-radius:12px;box-shadow:0 0 28px #00ffff40;width:100%;max-width:390px;display:flex;flex-direction:column;overflow:hidden;animation:modalPop .16s cubic-bezier(.16,1,.3,1)}.modal-card-lg{max-width:450px}.modal-card-sm{max-width:360px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-subtle);background:var(--bg-surface)}.modal-title{font-size:.95rem;font-weight:800;color:#fff;margin:0;letter-spacing:.5px}.modal-close{background:transparent;border:none;color:var(--text-muted);font-size:1.15rem;cursor:pointer;padding:4px;line-height:1;border-radius:4px;transition:all .15s ease}.modal-close:hover{color:#f36;background:#ff334426}.modal-body{padding:16px;display:flex;flex-direction:column;gap:12px}.modal-label{font-size:.72rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.modal-input{background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:8px;color:#fff;font-size:.88rem;padding:9px 12px;outline:none;transition:border-color .15s ease;font-family:inherit}.modal-input:focus{border-color:#0ff;box-shadow:0 0 8px #00ffff59}.project-summary-box{display:flex;justify-content:space-between;background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:8px;padding:9px 12px;font-size:.76rem;color:var(--text-muted)}.project-summary-box strong{color:#0ff}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--border-subtle);background:var(--bg-surface)}.load-modal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px}.load-subtitle{font-size:.74rem;font-weight:700;color:var(--text-muted);text-transform:uppercase}.btn-import{padding:5px 10px;font-size:.75rem;cursor:pointer;background:#00ffff1a;border-color:#00ffff59;color:#0ff}.btn-import:hover{background:#00ffff38}.saved-projects-list{display:flex;flex-direction:column;gap:7px;max-height:230px;overflow-y:auto;padding-right:2px}.saved-project-item{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:8px;gap:8px;transition:all .15s ease}.saved-project-item:hover{border-color:#0ff6}.project-item-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.project-item-name{font-size:.85rem;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-item-meta{font-size:.68rem;color:var(--text-dim)}.project-item-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.btn-sm{padding:3px 8px;font-size:.72rem;border-radius:6px;min-height:unset}.btn-item-load{background:#00ffff26;border-color:#0ff;color:#0ff}.btn-item-load:hover{background:#0ff;color:#000}.btn-item-export{background:#ffffff14;border-color:var(--border-subtle);color:#cbd5e1}.btn-item-export:hover{background:#fff3;color:#fff}.btn-item-delete{background:#ff334426;border-color:#f346;color:#f56}.btn-item-delete:hover{background:#f34;color:#fff}.empty-projects-msg{text-align:center;color:var(--text-dim);font-size:.78rem;padding:24px 10px;font-style:italic}.modal-desc{font-size:.78rem;color:var(--text-muted);margin-bottom:12px;line-height:1.4}.route-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:14px}.btn-route-opt{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;padding:9px 12px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-surface-elevated);color:var(--text-primary);font-size:.8rem;font-weight:700;cursor:pointer;transition:all .15s ease;font-family:inherit}.btn-route-opt:hover{background:#25283d;border-color:#0ff;color:#0ff}.btn-route-opt.active{background:#00e5ff38;border-color:#0ff;color:#0ff;box-shadow:0 0 10px #00e5ff66}.route-arrow{font-size:1.15rem;line-height:1;color:#0ff}.btn-route-opt.active .route-arrow{color:#fff;filter:drop-shadow(0 0 6px #00ffff)}.route-clear-container{padding-top:10px;border-top:1px solid var(--border-subtle)}.btn-remove-route{width:100%;background:#ff334426;border-color:#ff334480;color:#f56;font-size:.82rem;font-weight:800;padding:9px 14px;border-radius:8px;cursor:pointer;transition:all .15s ease;text-align:center;justify-content:center}.btn-remove-route:hover{background:#f34;color:#fff;box-shadow:0 0 12px #ff334480}@keyframes modalPop{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@media(max-width:720px){.header-bar{flex-direction:column;padding:6px 8px;padding-top:max(6px,env(safe-area-inset-top,6px));gap:6px}.header-row{width:100%;justify-content:space-between}.header-row-top{gap:4px;overflow:visible}.brand{flex-shrink:0;gap:6px}.header-actions-top{gap:3px;flex-shrink:0;overflow:visible}.header-row-bottom{gap:8px}.brand-title{font-size:.85rem;letter-spacing:.5px;white-space:nowrap;display:inline-block}.preset-select{max-width:140px;min-width:110px;min-height:34px;font-size:.82rem;padding:3px 6px}.tempo-box{flex:1;min-width:120px;height:40px;padding:2px 8px;gap:6px}.tempo-slider{flex:1;width:auto;min-width:65px}.tempo-label{font-size:.72rem}.tempo-value{font-size:.9rem;min-width:26px}.playback-controls{gap:6px}.btn-transport-play{min-width:52px;height:40px;font-size:1.3rem}.btn-transport-stop,.btn-transport-clear{min-width:44px;height:40px;font-size:1.15rem}.btn-icon{width:28px;height:28px;min-width:28px;padding:0;font-size:.85rem;flex-shrink:0}.btn-help,.btn-lang{padding:0 4px;min-height:26px;font-size:.72rem;flex-shrink:0}.btn-lang{min-width:26px}.github-btn{width:24px;height:26px;padding:0;flex-shrink:0}.bottom-bar{padding:6px 10px;padding-bottom:max(8px,env(safe-area-inset-bottom,8px));gap:6px}.status-left .status-chip{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-hud{height:40px;min-height:40px;padding:0 12px;font-size:.82rem;gap:6px;flex:1;max-width:none}.btn-hud-icon{font-size:1rem}.btn-hud-text{font-size:.82rem}}@media(max-width:480px){.brand{gap:4px;flex-shrink:0}.brand-logo{width:18px;height:18px}.brand-title{font-size:.8rem;letter-spacing:.2px;white-space:nowrap;display:inline-block}.preset-select{max-width:128px;min-width:105px;min-height:32px;font-size:.78rem;padding:3px 5px}.btn-icon{width:25px;height:25px;min-width:25px;font-size:.78rem}.btn-help,.btn-lang{min-height:25px;font-size:.68rem;padding:0 3px}.github-btn{width:23px;height:25px}.bottom-bar{padding:6px 8px;padding-bottom:max(8px,env(safe-area-inset-bottom,8px));gap:6px;flex-shrink:0}.btn-hud{height:40px;min-height:40px;padding:0 10px;font-size:.82rem;flex:1;max-width:none}}@media(max-width:380px){.header-bar{padding:4px 6px;padding-top:max(4px,env(safe-area-inset-top,4px));gap:3px}.brand{gap:3px;flex-shrink:0}.brand-logo{width:16px;height:16px}.brand-title{font-size:.74rem;letter-spacing:0;white-space:nowrap;display:inline-block}.preset-select{max-width:115px;min-width:95px;min-height:30px;font-size:.75rem;padding:2px 4px}.header-actions-top{gap:2px}.btn-icon{width:23px;height:24px;min-width:23px;font-size:.75rem}.btn-help,.btn-lang{min-height:24px;padding:0 2px;font-size:.65rem}.btn-lang{min-width:22px}.github-btn{width:22px;height:24px}.tempo-box{padding:2px 4px;gap:4px;min-width:105px}.tempo-slider{min-width:50px}.btn-transport-play{min-width:44px;height:38px;font-size:1.15rem}.btn-transport-stop,.btn-transport-clear{min-width:36px;height:38px;font-size:1rem}.bottom-bar{padding:4px 6px;padding-bottom:max(6px,env(safe-area-inset-bottom,6px));gap:4px;flex-shrink:0}.btn-hud{height:38px;min-height:38px;padding:0 8px;flex:1;max-width:none}.btn-hud-text{font-size:.76rem}}.toast{position:fixed;top:58px;left:50%;transform:translate(-50%) translateY(0);background:#101424f2;border:1px solid #00ffff;box-shadow:0 4px 22px #0ff6;color:#fff;padding:8px 18px;border-radius:20px;font-size:.82rem;font-weight:700;letter-spacing:.3px;z-index:1000;pointer-events:none;transition:opacity .25s ease,transform .25s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);max-width:90vw;text-align:center}.toast.hidden{display:none;opacity:0}.toast.visible{display:block;opacity:1;animation:toastFadeIn .25s cubic-bezier(.16,1,.3,1)}@keyframes toastFadeIn{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.modal-card-tut{max-width:520px;max-height:90vh;display:flex;flex-direction:column}.tutorial-tabs{display:flex;gap:4px;padding:8px 12px;background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);overflow-x:auto;scrollbar-width:none;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.tutorial-tabs::-webkit-scrollbar{display:none}.tutorial-tab{background:transparent;border:1px solid transparent;color:var(--text-muted);font-size:.72rem;font-weight:700;padding:5px 8px;border-radius:6px;cursor:pointer;white-space:nowrap;transition:all .15s ease;font-family:inherit}.tutorial-tab:hover{color:var(--text-primary);background:#ffffff0d}.tutorial-tab.active{background:#00ffff26;color:#0ff;border-color:#0ff6;box-shadow:0 0 8px #0ff3}.tutorial-slide-body{padding:16px;overflow-y:auto;flex:1 1 auto;min-height:240px;max-height:56vh}.tut-slide{display:flex;flex-direction:column;gap:12px}.tut-icon-hero{font-size:2.2rem;text-align:center;color:#0ff;filter:drop-shadow(0 0 12px rgba(0,255,255,.5));line-height:1;margin-bottom:4px}.tut-title{font-size:1.05rem;font-weight:800;color:#fff;margin:0;letter-spacing:.3px}.tut-p{font-size:.85rem;line-height:1.5;color:var(--text-primary);margin:0}.tut-p strong{color:#0ff}.tut-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-top:4px}.tut-badge-card{display:flex;gap:10px;background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);padding:10px 12px;border-radius:8px;font-size:.78rem;line-height:1.4}.tut-badge-card strong{display:block;color:#fff;margin-bottom:2px;font-size:.82rem}.tut-badge-card p{color:var(--text-muted);margin:0}.tut-badge-icon{font-size:1.3rem;line-height:1;flex-shrink:0}.tut-heads-list{display:flex;flex-direction:column;gap:6px;margin-top:4px}.tut-head-row{display:flex;align-items:center;gap:10px;padding:6px 10px;background:var(--bg-surface-elevated);border:1px solid var(--border-subtle);border-radius:6px;font-size:.8rem}.tut-head-num{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--hcolor, #00ffff);color:#000;font-weight:800;font-size:.75rem;box-shadow:0 0 8px var(--hcolor);flex-shrink:0}.tut-head-name{font-weight:700;color:#fff;flex:1}.tut-head-desc{color:var(--text-muted);font-size:.74rem}.tut-tip{font-size:.8rem;color:#ffe600;background:#ffe60014;border:1px dashed rgba(255,230,0,.35);padding:8px 12px;border-radius:6px;margin-top:4px;line-height:1.4}.tut-callout{background:#00ffff12;border-left:3px solid #00ffff;padding:8px 12px;border-radius:4px;font-size:.8rem;line-height:1.45}.tut-callout strong{color:#0ff;display:block;margin-bottom:2px}.tut-callout p{margin:0;color:var(--text-primary)}.tut-callout-red{background:#ff334414;border-left-color:#f34}.tut-callout-red strong{color:#f56}.tutorial-footer{display:flex;align-items:center;justify-content:space-between}.tut-footer-right{display:flex;gap:8px}.btn-academy{border-color:#ffe60073;color:#ffe600;background:#ffe60014}.btn-academy:hover{background:#ffe60038;box-shadow:0 0 10px #ffe60073;color:#fff}.quest-hud{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:100;width:calc(100% - 24px);max-width:520px;background:#0e121ee0;border:1px solid rgba(0,255,255,.4);box-shadow:0 4px 20px #0009,0 0 12px #0ff3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:12px;padding:10px 14px;display:flex;flex-direction:column;gap:6px;animation:questSlideDown .35s cubic-bezier(.16,1,.3,1);pointer-events:auto}@keyframes questSlideDown{0%{opacity:0;transform:translate(-50%,-16px)}to{opacity:1;transform:translate(-50%)}}.quest-hud.hidden{display:none!important}.quest-hud-header{display:flex;align-items:center;gap:8px}.quest-stars-badge{font-size:.72rem;font-weight:700;color:#ffe600;background:#ffe6001f;border:1px solid rgba(255,230,0,.35);padding:2px 6px;border-radius:4px;white-space:nowrap}.quest-badge{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#05070f;background:#0ff;padding:2px 7px;border-radius:4px;box-shadow:0 0 8px #00ffff80}.quest-title{font-size:.95rem;font-weight:700;color:#fff;letter-spacing:.3px}.quest-hud-body{margin:0}.quest-desc{font-size:.82rem;color:#cbd5e1;line-height:1.35;margin:0}.quest-hud-footer{display:flex;align-items:center;justify-content:space-between;margin-top:2px;padding-top:6px;border-top:1px solid rgba(255,255,255,.08)}.quest-goal-pill{font-size:.8rem;font-weight:600;color:#ffe600;background:#ffe6001f;border:1px solid rgba(255,230,0,.35);padding:3px 9px;border-radius:12px}.quest-actions{display:flex;gap:6px}.btn-quest-action{background:#1e2438cc;border:1px solid rgba(255,255,255,.15);color:#cbd5e1;padding:3px 8px;font-size:.82rem;border-radius:6px}.btn-quest-action:hover{background:#2d3755e6;color:#fff;border-color:#ffffff4d}.btn-quest-quit:hover{border-color:#f34;color:#f34;background:#ff334426}.academy-quests-list{display:flex;flex-direction:column;gap:10px;margin-top:12px;max-height:60vh;overflow-y:auto;padding-right:4px}.academy-quest-card{display:flex;align-items:center;justify-content:space-between;background:#141826d9;border:1px solid rgba(40,48,72,.7);border-radius:8px;padding:12px 14px;transition:all .2s ease}.academy-quest-card:hover{border-color:#0ff6;background:#191e32e6}.academy-quest-card.is-completed{border-color:#39ff1459}.academy-quest-card.is-locked{opacity:.55}.academy-quest-meta{display:flex;flex-direction:column;gap:3px}.academy-quest-title{font-size:.95rem;font-weight:700;color:#fff}.academy-quest-desc{font-size:.8rem;color:#94a3b8;line-height:1.35}.academy-quest-status{font-size:.75rem;font-weight:600;margin-top:2px}.academy-stars{color:#ffe600;letter-spacing:1px;font-size:.82rem;text-shadow:0 0 6px rgba(255,230,0,.4);margin-right:4px}.status-completed{color:#39ff14}.status-ready{color:#0ff}.status-locked{color:#64748b}.btn-quest-launch{min-width:80px}.modal-card-victory{text-align:center;border-color:#39ff1480;box-shadow:0 0 25px #39ff1440}.victory-stars{font-size:2rem;margin-bottom:8px;animation:victoryStarsBounce .6s ease}@keyframes victoryStarsBounce{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.victory-quest-name{font-size:1.15rem;font-weight:800;color:#fff;margin:4px 0 8px}.victory-footer{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.btn-victory-retry{background:#ffe60026;border-color:#ffe6008c;color:#ffe600;font-weight:700}.btn-victory-retry:hover{background:#ffe60047;border-color:#ffe600;box-shadow:0 0 10px #ffe60073;color:#fff}
