@font-face{font-family:Accidentals;src:local("Apple Symbols"),local("Arial Unicode MS"),local("STIXGeneral"),local("Segoe UI Symbol"),local("DejaVu Sans");unicode-range:U+266D-266F}:root{--music-font: "Bravura";--color-bach: #a2c4ec;--color-beethoven: #9fdcb9;--color-brahms: #813545;--color-chopin: #f3e68e;--color-mozart: #fac48c;--color-rachmaninoff: #f7a08a;--color-tchaikovsky: #caa6dd;--color-vivaldi: #ef8590;--color-grave: #caa6dd;--color-lento: #a2c4ec;--color-adagio: #9fdcb9;--color-andante: #f3e68e;--color-allegro: #fac48c;--color-vivace: #f7a08a;--color-presto: #ef8590;--color-gold: hsl(50, 100%, 50%);--color-orange: #ffa500;--color-red: #d62828;--color-green: #10aa2e;--color-purple-light: #667eea;--color-purple-dark: #764ba2;--brand-dark: #003693;--brand-mid: #0055c4;--brand-bright: #0082F7;--brand-gradient: linear-gradient(135deg, #003693 0%, #0082F7 100%);--brand-gradient-hover: linear-gradient(135deg, #0044b8 0%, #1a9aff 100%);--landing-bg: linear-gradient(135deg, #003693 0%, #0055c4 55%, #0082F7 100%);--card-bg: #ffffff;--card-text: #0a1a3e;--card-text-muted: #4a6aaa;--card-text-placeholder: #7a90b8;--card-border: rgba(0, 54, 147, .18);--card-shadow: 0 28px 64px rgba(0, 36, 120, .22), 0 2px 8px rgba(0, 54, 147, .1);--input-border-card: rgba(0, 54, 147, .25);--input-bg-card: transparent;--input-focus-border: var(--brand-bright);--composer-selected-opacity: .5;--tempo-selected-opacity: .5;--color-difficulty-easy: #4caf50;--color-difficulty-medium: #e0a30b;--color-difficulty-hard: #e5534b;--color-quiz-correct: var(--color-stat-helped-text);--color-quiz-incorrect: var(--color-stat-harmed-text);--color-stat-normal-block: #4A90E2;--color-stat-helped-block: #10AA2E;--color-stat-harmed-block: #F04A4A;--color-stat-mixed-block: #B070EE;--color-stat-normal-text: #1B5CAA;--color-stat-helped-text: #0A7A22;--color-stat-harmed-text: #C01818;--color-stat-mixed-text: #7226B8;--color-stat-upgrades: #1B5CAA;--hud-self: #8F5F00;--hud-bg: rgba(255, 255, 255, .72);--hud-ink: #000000;--hud-line: rgba(0, 0, 0, .25);--hud-fill: rgba(0, 0, 0, .07);--hud-fill-hover: rgba(0, 0, 0, .15);--hud-paper: #ffffff;--bg-black-50: rgba(0, 0, 0, .5);--bg-black-70: rgba(0, 0, 0, .7);--bg-black-80: rgba(0, 0, 0, .8);--bg-white-10: rgba(255, 255, 255, .1);--bg-white-20: rgba(255, 255, 255, .2);--bg-white-30: rgba(255, 255, 255, .3);--border-white-30: none;--border-white-50: var(--stroke-width) solid rgba(255, 255, 255, .5);--btn-primary-bg: var(--brand-gradient);--btn-primary-bg-hover: var(--brand-gradient-hover);--btn-primary-color: white;--btn-primary-padding: var(--spacing-md);--btn-primary-font-size: var(--font-size-xl);--btn-primary-border-radius: var(--radius-md);--btn-primary-shadow: 0 4px 20px rgba(0, 54, 147, .35);--btn-primary-shadow-hover: 0 8px 28px rgba(0, 54, 147, .45);--cooldown-active: linear-gradient(90deg, #ff5722 0%, #ff9800 100%);--smiley-size: 50px;--smiley-img-size: 40px;--smiley-border-radius: 8px;--smiley-bg: rgba(0, 54, 147, .04);--smiley-border: rgba(0, 54, 147, .18);--smiley-bg-hover: rgba(0, 130, 247, .08);--smiley-border-hover: rgba(0, 130, 247, .5);--smiley-bg-selected: rgba(0, 130, 247, .28);--smiley-border-selected: var(--brand-bright);--spacing-xs: 5px;--spacing-sm: 10px;--spacing-md: 15px;--spacing-lg: 20px;--spacing-xl: 30px;--spacing-xxl: 40px;--radius-sm: 3px;--radius-md: 10px;--radius-lg: 15px;--radius-xl: 20px;--radius-circle: 50%;--transition-fast: all .2s ease;--transition-normal: all .3s ease;--z-canvas: 0;--z-ui: 10;--z-hud: 10;--z-mobile: calc(var(--z-composer-hud) + 1);--z-modal: 1000;--z-composer-hud: 1500;--z-entry-modal: 10000;--font-family: "Accidentals", "Spectral", "Georgia", serif;--font-size-xs: 10px;--font-size-sm: 12px;--font-size-md: 14px;--font-size-base: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-xxl: 24px;--font-size-huge: 48px;--stroke-width: 1.28px;--hud-width: 295px;--hud-column: calc(var(--spacing-lg) + var(--hud-width) + 25px);--toggle-height: 34px;--button-size-sm: 24px;--button-size-md: 60px;--button-size-composer: 140px;--button-height-composer: 180px}*{margin:0;padding:0;box-sizing:border-box}canvas,#composer-hud-stack,#composer-selection-hud,#tempo-selection-hud,#hud,#left-column,#right-column,#upgrade-panel,#minimap{will-change:transform;transform:translateZ(0);backface-visibility:hidden}*{scroll-behavior:auto!important;-webkit-user-drag:none}html{height:100%}button,input,select,textarea{font-family:inherit}body{font-family:var(--font-family);background:#fff;overflow:hidden;height:100%;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.landing-container{user-select:text;-webkit-user-select:text;position:fixed;top:0;left:0;width:100%;height:100%;background:#0000001a;display:flex;align-items:center;justify-content:center;z-index:var(--z-entry-modal);pointer-events:auto}.landing-container .modal-content,#death-modal .modal-content{background:var(--card-bg);border:var(--stroke-width) solid var(--card-border);color:var(--card-text);border-radius:var(--radius-xl);padding:20px;box-shadow:var(--card-shadow);width:600px;max-width:calc(100% - 2 * var(--spacing-lg));text-align:center;max-height:calc(100% - 2 * var(--spacing-lg));overflow-y:auto;scrollbar-width:thin}.collapsible-toggle{display:block;padding:10px 16px;font-size:var(--font-size-base);font-weight:700;color:var(--brand-dark);cursor:pointer;text-align:center}.collapsible-toggle:before{content:"";display:inline-block;width:.8em;height:.8em;background:currentColor;clip-path:polygon(0 0,100% 50%,0 100%);vertical-align:-.05em;margin-right:6px;transition:transform .5s cubic-bezier(.25,.46,.45,.94)}:checked+.collapsible-toggle:before{transform:rotate(90deg)}.collapsible-body{interpolate-size:allow-keywords;height:0;opacity:0;overflow:hidden;transition:height .35s ease,opacity .35s ease}:checked+.collapsible-toggle+.collapsible-body{height:auto;opacity:1}label[for=toggle-goals]{margin-top:15px}.modal-details-text{text-align:center;margin:0 0 20px;font-size:var(--font-size-base);color:var(--card-text);line-height:1.35}.king-composer{display:flex;align-items:flex-end;justify-content:space-between;width:100%;margin-bottom:20px}.king-center{display:flex;flex-direction:column;align-items:center}.king-crown{width:48px;margin-bottom:-3px;z-index:1}.king-portrait{width:116px;height:116px;border-radius:50%}.composer-preview{display:flex;flex-direction:column;align-items:center;margin-bottom:20px}.preview-portrait{position:relative;width:var(--player-diameter, 150px);height:var(--player-diameter, 150px)}.preview-portrait .king-portrait{width:100%;height:100%}.preview-portrait:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;box-shadow:inset 0 0 0 var(--stroke-width) #000}.composer-preview-name{margin-top:6px;font-weight:700;color:var(--brand-dark)}.pick-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin:16px 0}.pick-option{aspect-ratio:1;padding:0;border:var(--stroke-width) solid transparent;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;background:none;outline:none;transition:var(--transition-fast);position:relative;min-width:0}.pick-option:hover,.pick-option.selected{transform:scale(1.1)}.pick-option.selected{border-color:#000}.pick-option .composer-svg,.pick-option .tempo-circle{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;flex:none;border-radius:50%;overflow:hidden}.pick-option .composer-svg img{transform:scale(1.05)}.game-title{font-size:var(--font-size-huge);font-weight:700;font-style:italic;margin-bottom:10px;background:var(--brand-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}#debug-version{font-size:var(--font-size-sm);color:var(--card-text-muted);margin-top:-14px;margin-bottom:8px;letter-spacing:.05em}.game-subtitle{font-size:var(--font-size-lg);margin-top:0;margin-bottom:20px;color:var(--card-text-muted);font-weight:700}#join-form{margin-bottom:0}.name-row{display:flex;gap:20px;align-items:stretch;margin-bottom:20px}.name-row .floating-label-input{flex:1;margin-bottom:0}.name-shuffle{flex:0 0 56px;width:56px;height:56px;align-self:center;padding:0;border:none;border-radius:var(--btn-primary-border-radius);background:var(--btn-primary-bg);box-shadow:var(--btn-primary-shadow);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-normal)}.name-shuffle:hover{transform:translateY(-2px);background:var(--btn-primary-bg-hover);box-shadow:var(--btn-primary-shadow-hover)}.name-shuffle img{width:32px;height:32px;filter:brightness(0) invert(1)}.floating-label-input{position:relative;width:100%;margin-bottom:20px}.name-input,.respawn-name-input{width:100%;height:56px;padding:var(--btn-primary-padding);font-size:var(--btn-primary-font-size);border:var(--stroke-width) solid var(--input-border-card);border-radius:var(--btn-primary-border-radius);background:var(--input-bg-card);color:var(--card-text);transition:var(--transition-fast);box-sizing:border-box;font-family:inherit;line-height:normal}.name-input::placeholder,.respawn-name-input::placeholder{color:transparent}.name-input:focus,.respawn-name-input:focus{outline:none;border-color:var(--input-focus-border);background:transparent}.floating-label{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:var(--font-size-lg);color:var(--card-text-placeholder);pointer-events:none;transition:all .2s cubic-bezier(.4,0,.2,1);background:transparent;padding:0 4px;line-height:1;font-family:inherit;transform-origin:left center}.name-input:focus~.floating-label,.name-input:not(:placeholder-shown)~.floating-label,.respawn-name-input:focus~.floating-label,.respawn-name-input:not(:placeholder-shown)~.floating-label{top:0;transform:translateY(-50%) scale(.75);color:var(--input-focus-border);background:var(--card-bg)}.play-button,.respawn-button{width:100%;padding:var(--btn-primary-padding);font-size:var(--btn-primary-font-size);font-weight:800;letter-spacing:.4px;border:none;border-radius:var(--btn-primary-border-radius);background:var(--btn-primary-bg);color:var(--btn-primary-color);cursor:pointer;transition:var(--transition-normal);box-shadow:var(--btn-primary-shadow)}.play-button:hover,.respawn-button:hover{transform:translateY(-2px);background:var(--btn-primary-bg-hover);box-shadow:var(--btn-primary-shadow-hover)}.play-button:active,.respawn-button:active{transform:scale(.98)}.play-button:disabled,.respawn-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.smiley-grid{display:flex;justify-content:center;gap:10px;margin:20px 0}.smiley-option{width:var(--smiley-size);height:var(--smiley-size);border:var(--stroke-width) solid var(--smiley-border);border-radius:var(--smiley-border-radius);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-fast);background:var(--smiley-bg)}.smiley-option:hover{border-color:var(--smiley-border-hover);background:var(--smiley-bg-hover);transform:scale(1.1)}.smiley-option.selected{border-color:var(--smiley-border-selected);background:var(--smiley-bg-selected);transform:scale(1.1)}.smiley-option img{width:var(--smiley-img-size);height:var(--smiley-img-size);object-fit:contain}.key-icon{display:inline-block;vertical-align:middle;height:1.2em;width:auto;position:relative;top:-1px}.controls-table{border-collapse:separate;border-spacing:0;margin:0 auto 20px;border:var(--stroke-width) solid var(--input-border-card);border-radius:var(--btn-primary-border-radius);overflow:hidden}.controls-table td{padding:8px 12px;border-bottom:var(--stroke-width) solid var(--input-border-card);text-align:left;white-space:nowrap}.controls-table tr:last-child td{border-bottom:none}.controls-table .controls-key{font-weight:700;white-space:nowrap;border-right:var(--stroke-width) solid var(--input-border-card)}.game-info p{text-align:center;margin:0}#game-container{position:relative;width:100%;height:100%;min-width:1150px;min-height:800px}#ground-canvas,#gl-canvas{position:absolute;top:0;left:0;display:block;pointer-events:none}#ground-canvas{z-index:0}#gl-canvas{z-index:1}#game-canvas{position:relative;z-index:2;display:block;width:100%;height:100%;touch-action:none;cursor:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"><line x1="16" y1="4" x2="16" y2="12" stroke="black" stroke-width="2"/><line x1="16" y1="20" x2="16" y2="28" stroke="black" stroke-width="2"/><line x1="4" y1="16" x2="12" y2="16" stroke="black" stroke-width="2"/><line x1="20" y1="16" x2="28" y2="16" stroke="black" stroke-width="2"/></svg>') 16 16,crosshair;transform:translateZ(0);will-change:contents;-webkit-transform:translateZ(0)}#blur-overlay{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:5;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}#local-player-canvas{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:6;transform:translateZ(0);will-change:contents;-webkit-transform:translateZ(0)}#ui-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:var(--z-ui)}#hud,#leaderboard,#quiz-panel,#chat-panel,#upgrade-panel,#map-panel{background:var(--hud-bg);border:var(--border-white-30);border-radius:var(--radius-md);color:var(--hud-ink);font-size:var(--font-size-base);z-index:var(--z-modal);pointer-events:none;overflow:hidden}#map-panel{position:fixed}.panel-content{padding:20px}.panel-toggle{display:block;width:100%;background:transparent;border:none;border-bottom:var(--stroke-width) solid var(--hud-line);color:var(--hud-ink);font-size:var(--font-size-base);font-weight:700;padding:7px 0;cursor:pointer;pointer-events:auto;text-align:center;transition:background .15s,color .15s}.panel-toggle:hover{background:var(--hud-fill)}.panel-toggle:focus,.panel-toggle:focus-visible{outline:none}#game-container *:focus,#game-container *:focus-visible{outline:none}.collapsed>:not(.panel-toggle){display:none}.collapsed>.panel-toggle{border:none}#hud,#leaderboard,#quiz-panel,#chat-panel,#upgrade-panel,#map-panel{width:var(--hud-width)}#left-column{position:fixed;top:var(--spacing-lg);bottom:var(--spacing-lg);left:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-lg);pointer-events:none;z-index:var(--z-modal)}#hud,#upgrade-panel{flex:none}#chat-panel{flex:0 1 auto;min-height:2.2em;display:flex;flex-direction:column}#chat-panel:not(.collapsed) .panel-content{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;padding-bottom:8px}#upgrade-panel{margin-top:auto}#chat-log{display:flex;flex-direction:column;justify-content:flex-end;width:100%;height:11.2em;flex:0 1 auto;min-height:0;overflow:hidden;font-size:var(--font-size-base);line-height:1.4;overflow-wrap:anywhere}.chat-name{font-weight:700;color:color-mix(in srgb,var(--player) 70%,black)}.chat-hint{display:flex;align-items:center;gap:8px;padding:0 20px 14px;font-size:var(--font-size-base);color:color-mix(in srgb,var(--hud-ink) 75%,transparent)}#chat-bar{--chat-bubble: #f1f1f1;position:fixed;transform:translate(-50%);padding:8px 14px;background:var(--chat-bubble);border:2px solid var(--hud-ink);border-radius:var(--radius-md);z-index:var(--z-modal);pointer-events:auto}#chat-bar:before{content:"";position:absolute;top:-7px;left:50%;width:12px;height:12px;margin-left:-6px;background:var(--chat-bubble);border:solid var(--hud-ink);border-width:2px 0 0 2px;transform:rotate(45deg)}#chat-input{field-sizing:content;min-width:14ch;max-width:50ch;background:transparent;border:none;outline:none;color:var(--hud-ink);font:inherit;font-size:var(--font-size-base)}#chat-input::placeholder{color:color-mix(in srgb,var(--hud-ink) 50%,transparent)}#hud .panel-content div{margin-bottom:var(--spacing-xs)}.display-none{display:none}#right-column{position:fixed;top:var(--spacing-lg);right:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-lg);pointer-events:none;z-index:var(--z-modal)}#leaderboard-list{font-size:var(--font-size-base);line-height:1.4}#quiz-question{font-size:var(--font-size-base);line-height:1.5;margin-bottom:12px}.quiz-answers{display:flex;flex-direction:column;gap:6px}.quiz-answer-btn{width:100%;padding:8px 12px;background:var(--hud-fill);border:var(--stroke-width) solid var(--hud-line);border-radius:var(--radius-md);color:var(--hud-ink);font-family:inherit;font-size:var(--font-size-base);text-align:left;cursor:pointer;pointer-events:auto;transition:background .15s}.quiz-answer-btn:hover{background:var(--hud-fill-hover)}.quiz-answer-btn.correct{background:#a8f5bc26;border-color:color-mix(in srgb,var(--color-quiz-correct) 40%,black);color:color-mix(in srgb,var(--color-quiz-correct) 40%,black)}.quiz-answer-btn.incorrect{background:#f5a8a826;border-color:color-mix(in srgb,var(--color-quiz-incorrect) 40%,black);color:color-mix(in srgb,var(--color-quiz-incorrect) 40%,black)}.quiz-difficulty{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:var(--font-size-base);font-weight:700}.quiz-difficulty-buttons{display:flex;gap:4px}.quiz-difficulty .toggle-button,.auto-upgrade-section .toggle-button{--toggle-bg: var(--hud-fill-hover)}.quiz-difficulty .toggle-button:not(.active),.auto-upgrade-section .toggle-button:not(.active){color:var(--hud-ink)}.quiz-difficulty .toggle-button{padding:4px 8px}#quiz-points{white-space:nowrap}.toggle-button[data-difficulty=easy]{--toggle-active: var(--color-difficulty-easy)}.toggle-button[data-difficulty=medium]{--toggle-active: var(--color-difficulty-medium)}.toggle-button[data-difficulty=hard]{--toggle-active: var(--color-difficulty-hard)}.quiz-points-float{position:fixed;pointer-events:none;font-size:22px;font-weight:700;color:#000;white-space:nowrap;opacity:0;transform:translateY(0);z-index:calc(var(--z-modal) + 1)}@keyframes quiz-float-up{0%{opacity:1;transform:translateY(0)}70%{opacity:1;transform:translateY(-20px)}to{opacity:0;transform:translateY(-30px)}}.quiz-points-float.quiz-float--visible{animation:quiz-float-up 1s ease-out forwards}.settings-gear{position:fixed;top:calc(var(--spacing-lg) - 10px);right:calc(var(--spacing-lg) + var(--hud-width) + 15px);background:var(--bg-black-70);border:var(--stroke-width) solid rgba(255,255,255,.4);border-radius:50%;width:45px;height:45px;font-size:24px;color:#fff;cursor:pointer;z-index:calc(var(--z-modal) + 1);pointer-events:auto;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.settings-gear:hover{background:var(--bg-black-80);border-color:#fff9;transform:scale(1.1) rotate(30deg)}.settings-gear:active{transform:scale(.95) rotate(30deg)}.settings-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:400px;max-width:90%;background:var(--bg-black-80);border:var(--stroke-width) solid rgba(255,255,255,.5);border-radius:var(--radius-md);padding:30px;color:#fff;z-index:calc(var(--z-modal) + 2);pointer-events:auto;box-shadow:0 10px 40px #000c}.settings-panel.hidden{display:none}.settings-panel h3{margin-top:0;margin-bottom:25px;text-align:center;color:var(--color-gold);font-size:24px;border-bottom:var(--stroke-width) solid rgba(255,255,255,.3);padding-bottom:10px}.settings-content{margin-bottom:25px}.setting-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.setting-row label{font-size:16px;color:#ffffffe6}.setting-row select{padding:8px 12px;background:var(--bg-black-70);border:var(--stroke-width) solid rgba(255,255,255,.3);border-radius:6px;color:#fff;font-size:15px;cursor:pointer;min-width:150px}.setting-row select:hover{border-color:#ffffff80}.setting-row select:focus{outline:none;border-color:var(--color-gold)}.settings-close-btn{width:100%;padding:12px;background:var(--color-gold);color:#000;border:none;border-radius:6px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease}.settings-close-btn:hover{background:var(--color-orange);transform:scale(1.02)}.settings-close-btn:active{transform:scale(.98)}[data-position=bottom]>.panel-toggle{border-bottom:none;border-top:var(--stroke-width) solid var(--hud-line)}#map-panel{right:var(--spacing-lg);bottom:var(--spacing-lg)}#map-panel:not(.collapsed){border-top-left-radius:0;border-top-right-radius:0}.panel-toggle:after{content:none}[data-position=top]>.panel-toggle:before{content:"▼ "}[data-position=top].collapsed>.panel-toggle:before{content:"▲ "}[data-position=bottom]>.panel-toggle:before{content:"▲ "}[data-position=bottom].collapsed>.panel-toggle:before{content:"▼ "}.upgrade-panel-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;font-weight:700}.upgrades-label{text-align:left;flex:1}.upgrade-count{color:var(--hud-ink)}.auto-upgrade-section{display:flex;align-items:center;gap:6px}.auto-key-indicator{min-width:24px;height:24px;background:#fff;border:var(--stroke-width) solid #000000;border-radius:4px;color:#000;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;pointer-events:none}.toggle-button{padding:4px 12px;background:var(--toggle-bg, rgba(255, 255, 255, .2));border:none;border-radius:4px;color:#fff;font-size:12px;font-weight:700;text-transform:uppercase;cursor:pointer;transition:all .2s ease;pointer-events:auto;outline:none}.toggle-button.active{background:var(--toggle-active, #4caf50);color:#fff}.toggle-button:disabled{opacity:.4;cursor:not-allowed}.graphics-options{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px 12px;text-align:left}.graphics-options .toggle-button{--toggle-bg: rgba(0, 0, 0, .25)}.upgrade-panel-stats{display:flex;flex-direction:column;gap:6px}.upgrade-panel-instructions{text-align:center;margin-top:12px;color:var(--hud-ink);font-size:var(--font-size-base);font-weight:400}.upgrade-row{display:flex;align-items:center;gap:8px;cursor:pointer;transition:var(--transition-fast);padding:2px;border-radius:4px}.upgrade-row:hover{background:#ffd7001a}.key-indicator{width:var(--button-size-sm);height:var(--button-size-sm);background:#fff;border:var(--stroke-width) solid #000000;box-sizing:border-box;color:#000;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-md);font-weight:700;flex-shrink:0}.stat-bar{position:relative;display:flex;gap:1px;height:var(--button-size-sm);width:100%;padding:1px;align-items:center;justify-content:center;background:var(--hud-fill);border-radius:4px;color:var(--hud-ink);font-size:var(--font-size-base)}.stat-segment{width:calc(10% - .9px);height:calc(100% - 2px);background:var(--color-green);border-radius:2px;flex-shrink:0;margin:1px;position:absolute;top:1px}#upgrade-panel-instructions{text-align:center;margin-top:var(--spacing-sm);font-size:var(--font-size-sm);opacity:.8}.selection-title-bar{position:fixed;left:var(--hud-column);right:var(--hud-column);z-index:var(--z-composer-hud);text-align:center;pointer-events:none}.selection-title-bar>.panel-toggle{pointer-events:auto;width:fit-content;background:var(--hud-bg);border:var(--border-white-30);border-radius:var(--radius-md);box-sizing:border-box;height:var(--toggle-height);padding:0 20px;line-height:var(--toggle-height);margin:0 auto}.selection-title-bar>.panel-toggle:hover{background:#ffffffd9}#tempo-title-bar{bottom:var(--spacing-lg)}.composer-hud-stack{position:fixed;top:var(--spacing-lg);left:var(--hud-column);right:var(--hud-column);z-index:var(--z-composer-hud);display:flex;flex-direction:column;align-items:center;pointer-events:none}.composer-hud-stack .selection-title-bar{position:static;left:auto;right:auto;width:100%}.composer-hud-stack .selection-title-bar>.panel-toggle{pointer-events:auto}#composer-selection-hud{display:none;position:static;width:100%;z-index:var(--z-composer-hud);pointer-events:none}#composer-selection-hud .composer-btn-hud{pointer-events:auto}.weapon-indicator{position:fixed;display:flex;flex-direction:column;gap:4px;pointer-events:none;z-index:var(--z-hud)}.weapon-indicator-text{font-size:var(--font-size-base);font-weight:700;white-space:nowrap;color:#000}.label-short{display:none}@media(max-width:1400px){.label-full{display:none}.label-short{display:inline}}#defensive-ability-indicator{top:var(--spacing-lg);left:calc(var(--spacing-lg) + var(--hud-width) + 20px);right:calc(50% + var(--hud-width) / 2 + 20px);align-items:center}#offensive-ability-indicator{top:var(--spacing-lg);left:calc(50% + var(--hud-width) / 2 + 20px);right:calc(var(--spacing-lg) + var(--hud-width) + 20px);align-items:center}#primary-weapon-ui{bottom:var(--spacing-lg);left:calc(var(--spacing-lg) + var(--hud-width) + 20px);right:calc(50% + var(--hud-width) / 2 + 20px);align-items:center}#secondary-weapon-ui{bottom:var(--spacing-lg);left:calc(50% + var(--hud-width) / 2 + 20px);right:calc(var(--spacing-lg) + var(--hud-width) + 20px);align-items:center}.ability-cooldown-bar{width:100%;min-width:40px;max-width:180px;height:8px;background:#00000080;border-radius:4px;overflow:hidden;position:relative}.ability-cooldown-bar:after{content:"";position:absolute;left:0;top:0;height:100%;width:var(--cooldown-progress, 0%);background:var(--cooldown-active);border-radius:0}.composer-grid-container{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);align-items:flex-start;justify-content:center;pointer-events:none;padding:20px}.composer-btn-hud{flex:0 1 var(--button-size-composer);min-width:80px;aspect-ratio:140 / 180;overflow:hidden;background:var(--hud-bg);border:none;border-radius:var(--radius-md);color:var(--hud-ink);cursor:pointer;display:flex;flex-direction:column;align-items:center;padding:0;font-size:var(--font-size-md);transition:var(--transition-fast);pointer-events:auto}.composer-btn-hud.selected,.tempo-btn-hud.selected{border:var(--stroke-width) solid}.composer-btn-hud:hover{transform:scale(1.05)}.composer-name,.tempo-name{flex:2;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:clamp(9px,1.2vw,var(--font-size-base));min-height:0}.composer-svg,.tempo-circle{flex:5;aspect-ratio:1;display:flex;align-items:center;justify-content:center;min-height:0}.composer-svg img{width:100%;height:100%;object-fit:contain}.composer-desc,.tempo-desc{flex:2;display:flex;align-items:center;justify-content:center;font-size:clamp(8px,1vw,var(--font-size-md));opacity:.9;min-height:0}.composer-btn-hud.selected[data-composer=Bach]{background:color-mix(in srgb,var(--color-bach) calc(var(--composer-selected-opacity) * 100%),transparent)!important;border-color:var(--color-bach)!important;color:#000!important}.composer-btn-hud.selected[data-composer=Beethoven]{background:color-mix(in srgb,var(--color-beethoven) calc(var(--composer-selected-opacity) * 100%),transparent)!important;border-color:var(--color-beethoven)!important;color:#000!important}.composer-btn-hud.selected[data-composer=Brahms]{background:color-mix(in srgb,var(--color-brahms) calc(var(--composer-selected-opacity) * 100%),transparent)!important;border-color:var(--color-brahms)!important;color:#000!important}.composer-btn-hud.selected[data-composer=Chopin]{background:color-mix(in srgb,var(--color-chopin) calc(var(--composer-selected-opacity) * 100%),transparent)!important;border-color:var(--color-chopin)!important;color:#000!important}.composer-btn-hud.selected[data-composer=Mozart]{background:color-mix(in srgb,var(--color-mozart) calc(var(--composer-selected-opacity) * 100%),transparent)!important;border-color:var(--color-mozart)!important;color:#000!important}.composer-btn-hud.selected[data-composer=Rachmaninoff]{background:color-mix(in srgb,var(--color-rachmaninoff) calc(var(--composer-selected-opacity) * 100%),transparent)!important;border-color:var(--color-rachmaninoff)!important;color:#000!important}.composer-btn-hud.selected[data-composer=Tchaikovsky]{background:color-mix(in srgb,var(--color-tchaikovsky) calc(var(--composer-selected-opacity) * 100%),transparent)!important;border-color:var(--color-tchaikovsky)!important;color:#000!important}.composer-btn-hud.selected[data-composer=Vivaldi]{background:color-mix(in srgb,var(--color-vivaldi) calc(var(--composer-selected-opacity) * 100%),transparent)!important;border-color:var(--color-vivaldi)!important;color:#000!important}#now-playing{position:static;width:100%;margin-top:0;text-align:center;color:#000;font-size:var(--font-size-base);font-weight:400;pointer-events:none;display:flex;align-items:center;justify-content:center;gap:4px}.track-arrow{pointer-events:auto;padding:0 6px;border:none;background:none;color:inherit;font:inherit;cursor:pointer}.track-arrow:hover{opacity:.6}#now-playing-warning{width:14px;height:14px;color:#e53e3e;flex-shrink:0}#now-playing.error{color:#e53e3e}.composer-hud-stack:has(#composer-title-bar.collapsed) #now-playing{margin-top:20px}#tempo-selection-hud{display:none;position:fixed;bottom:calc(var(--spacing-lg) + var(--toggle-height));left:var(--hud-column);right:var(--hud-column);z-index:var(--z-composer-hud);pointer-events:none}#tempo-selection-hud .tempo-btn-hud{pointer-events:auto}.tempo-grid-container{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);align-items:flex-start;justify-content:center;pointer-events:none;padding:20px}.tempo-btn-hud{flex:0 1 var(--button-size-composer);min-width:80px;aspect-ratio:140 / 180;overflow:hidden;background:var(--hud-bg);border:none;border-radius:var(--radius-md);color:var(--hud-ink);cursor:pointer;display:flex;flex-direction:column;align-items:center;padding:0;font-size:var(--font-size-md);transition:var(--transition-fast);pointer-events:auto}.tempo-btn-hud:hover{transform:scale(1.05)}.tempo-circle{border-radius:50%}.tempo-circle img{width:60%;height:60%;object-fit:contain}.tempo-circle-grave img{width:45%;height:45%}.tempo-circle-grave{background:var(--color-grave)}.tempo-circle-lento{background:var(--color-lento)}.tempo-circle-adagio{background:var(--color-adagio)}.tempo-circle-andante{background:var(--color-andante)}.tempo-circle-allegro{background:var(--color-allegro)}.tempo-circle-vivace{background:var(--color-vivace)}.tempo-circle-presto{background:var(--color-presto)}.tempo-btn-hud.selected[data-tempo=Grave]{background:color-mix(in srgb,var(--color-grave) calc(var(--tempo-selected-opacity) * 100%),transparent)!important;border-color:var(--color-grave)!important;color:#000!important}.tempo-btn-hud.selected[data-tempo=Lento]{background:color-mix(in srgb,var(--color-lento) calc(var(--tempo-selected-opacity) * 100%),transparent)!important;border-color:var(--color-lento)!important;color:#000!important}.tempo-btn-hud.selected[data-tempo=Adagio]{background:color-mix(in srgb,var(--color-adagio) calc(var(--tempo-selected-opacity) * 100%),transparent)!important;border-color:var(--color-adagio)!important;color:#000!important}.tempo-btn-hud.selected[data-tempo=Andante]{background:color-mix(in srgb,var(--color-andante) calc(var(--tempo-selected-opacity) * 100%),transparent)!important;border-color:var(--color-andante)!important;color:#000!important}.tempo-btn-hud.selected[data-tempo=Allegro]{background:color-mix(in srgb,var(--color-allegro) calc(var(--tempo-selected-opacity) * 100%),transparent)!important;border-color:var(--color-allegro)!important;color:#000!important}.tempo-btn-hud.selected[data-tempo=Vivace]{background:color-mix(in srgb,var(--color-vivace) calc(var(--tempo-selected-opacity) * 100%),transparent)!important;border-color:var(--color-vivace)!important;color:#000!important}.tempo-btn-hud.selected[data-tempo=Presto]{background:color-mix(in srgb,var(--color-presto) calc(var(--tempo-selected-opacity) * 100%),transparent)!important;border-color:var(--color-presto)!important;color:#000!important}.mouse-icon{display:inline-block;vertical-align:middle;width:18px;height:18px;margin:0 2px;position:relative;top:-1px}#secondary-weapon-cooldown-bar{width:100%;min-width:40px;max-width:180px;height:8px;background:#00000080;border-radius:4px;overflow:hidden;position:relative}#secondary-weapon-cooldown-bar:after{content:"";position:absolute;left:0;top:0;height:100%;width:var(--cooldown-progress, 0%);background:var(--cooldown-active);border-radius:0}#death-modal,#reload-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:10000}#death-modal{background:#0000001a;-webkit-backdrop-filter:none;backdrop-filter:none}#reload-modal{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.death-modal-content{background:#fff;border-radius:15px;padding:30px;text-align:center;color:#333;min-width:400px;max-width:500px}.death-modal-content h1{font-size:48px;color:var(--color-red);margin:0 0 20px;display:none}.death-killer{font-size:1.8rem;margin-bottom:24px;color:var(--color-red);font-weight:700}.death-stats{background:transparent;border:none;padding:0;margin:20px 0}.death-stats h3{margin:0 0 12px;font-size:18px;color:#333;font-weight:700}.death-stat-row{display:flex;justify-content:space-between;padding:8px 0;font-size:16px}.death-stat-row:last-child{border-bottom:none}.death-stat-row span:first-child{opacity:.8}.death-stat-row span:last-child{font-weight:700;color:#333}.death-music-row{align-items:center}.death-music-row .toggle-button{--toggle-bg: rgba(0, 0, 0, .25);min-width:56px}.respawn-name-section{width:100%}.name-row:has(.respawn-name-section){margin:20px 0 16px}.respawn-button{margin-top:20px}.modal{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--bg-black-80);display:flex;justify-content:center;align-items:center;z-index:var(--z-modal);pointer-events:auto}.modal-content{background:linear-gradient(135deg,var(--color-purple-light) 0%,var(--color-purple-dark) 100%);padding:var(--spacing-xl);border-radius:var(--radius-xl);text-align:center;color:#fff;max-width:80%;max-height:80%;overflow-y:auto}.modal-content h2{margin-bottom:var(--spacing-lg);font-size:var(--font-size-xxl)}#touch-controls,.touch-only{display:none}html{--touch-scale: 1}html.touch{--touch-pad: calc(var(--spacing-lg) + env(safe-area-inset-bottom, 0px))}html.touch .touch-only{display:table}html.touch #touch-controls{display:block}html.touch .key-hint{display:none!important}html.touch #game-container{min-width:0;min-height:0}html.touch body{overscroll-behavior:none;touch-action:none}html.touch #game-canvas{cursor:default}html.touch{--touch-joy: calc(120px * var(--touch-scale));--touch-btn: calc(72px * var(--touch-scale));--touch-arc: calc((var(--touch-joy) + var(--touch-btn)) / 2 + 12px);--touch-side: calc(var(--spacing-lg) * 2 + var(--hud-width));--touch-cx: calc(var(--touch-side) + var(--touch-joy) / 2);--touch-cy: calc(var(--touch-pad) + var(--touch-joy) / 2)}html.phone{--touch-side: var(--spacing-lg)}html.touch #primary-weapon-ui{display:none!important}#joystick{position:fixed;left:var(--touch-side);bottom:var(--touch-pad);width:var(--touch-joy);height:var(--touch-joy);background:#fff3;border:var(--stroke-width) solid rgba(255,255,255,.4);border-radius:var(--radius-circle);touch-action:none;z-index:var(--z-mobile)}#joystick-knob{position:absolute;top:50%;left:50%;width:calc(48px * var(--touch-scale));height:calc(48px * var(--touch-scale));margin:calc(-24px * var(--touch-scale)) 0 0 calc(-24px * var(--touch-scale));background:#ffffff80;border-radius:var(--radius-circle);pointer-events:none}#touch-buttons{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:var(--z-mobile)}#touch-buttons button{position:absolute;left:calc(var(--touch-cx) + var(--dx) * var(--touch-arc) - var(--touch-btn) / 2);bottom:calc(var(--touch-cy) + var(--dy) * var(--touch-arc) - var(--touch-btn) / 2);pointer-events:auto;width:var(--touch-btn);height:var(--touch-btn);border-radius:var(--radius-circle);border:var(--stroke-width) solid rgba(255,255,255,.5);background:#ffffff40;color:#fff;font-size:var(--font-size-sm);font-weight:700;text-shadow:0 0 3px black;touch-action:none;-webkit-tap-highlight-color:transparent}#touch-buttons button:nth-child(1){--dx: 0;--dy: 1}#touch-buttons button:nth-child(2){--dx: .7071;--dy: .7071}#touch-buttons button:nth-child(3){--dx: 1;--dy: 0}#touch-buttons button:active{background:#ffffff8c}html.phone #ui-overlay,html.phone #map-panel,html.phone #chat-bar,html.phone #quiz-points-float{display:none!important}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@media(max-width:1200px){#composer-hud-stack,#tempo-selection-hud{left:calc(var(--hud-column) - 100px)!important;right:calc(var(--hud-column) - 100px)!important}.composer-btn-hud,.tempo-btn-hud{flex-basis:120px!important}}@media(max-width:1000px){.composer-btn-hud,.tempo-btn-hud{flex-basis:110px!important}}@media(max-width:800px){.composer-btn-hud,.tempo-btn-hud{flex-basis:100px!important}}@media(max-width:480px){#hud{font-size:var(--font-size-sm);padding:var(--spacing-sm)}#leaderboard{font-size:var(--font-size-xs);padding:var(--spacing-sm);min-width:150px}.modal-content{padding:var(--spacing-lg);max-width:95%}}.hidden{display:none!important}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.text-center{text-align:center}.text-gold{color:var(--color-gold)}.font-bold{font-weight:700}.composer-btn-hud,.tempo-btn-hud{outline:none;box-shadow:none;-webkit-tap-highlight-color:transparent}.composer-btn-hud:focus,.composer-btn-hud:focus-visible,.tempo-btn-hud:focus,.tempo-btn-hud:focus-visible{outline:none!important;box-shadow:none!important}.composer-btn-hud::-moz-focus-inner,.tempo-btn-hud::-moz-focus-inner{border:0}.home-footer{display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:end;gap:12px;min-height:56px}.corner-button{position:relative;width:56px;height:56px;padding:0;border:none;border-radius:var(--btn-primary-border-radius);background:var(--btn-primary-bg);box-shadow:var(--btn-primary-shadow);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-normal)}.corner-button:hover{transform:translateY(-2px);background:var(--btn-primary-bg-hover);box-shadow:var(--btn-primary-shadow-hover)}.corner-button img{width:32px;height:32px}#hud{position:relative}.info-gear{position:absolute;right:12px;bottom:12px;width:26px;height:26px;padding:0;border:none;background:linear-gradient(135deg,#c2c2c2,#6e6e6e);-webkit-mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='100%25'%20height='100%25'%20viewBox='0%200%2024%2024'%3e%3cdefs%3e%3cmask%20id='hole'%3e%3crect%20width='24'%20height='24'%20fill='white'/%3e%3ccircle%20cx='12'%20cy='12'%20r='3.3'%20fill='black'/%3e%3c/mask%3e%3c/defs%3e%3cg%20fill='white'%20mask='url(%23hole)'%3e%3ccircle%20cx='12'%20cy='12'%20r='7.2'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'%20transform='rotate(45%2012%2012)'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'%20transform='rotate(90%2012%2012)'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'%20transform='rotate(135%2012%2012)'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'%20transform='rotate(180%2012%2012)'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'%20transform='rotate(225%2012%2012)'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'%20transform='rotate(270%2012%2012)'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'%20transform='rotate(315%2012%2012)'/%3e%3c/g%3e%3c/svg%3e") center / contain no-repeat;mask:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='100%25'%20height='100%25'%20viewBox='0%200%2024%2024'%3e%3cdefs%3e%3cmask%20id='hole'%3e%3crect%20width='24'%20height='24'%20fill='white'/%3e%3ccircle%20cx='12'%20cy='12'%20r='3.3'%20fill='black'/%3e%3c/mask%3e%3c/defs%3e%3cg%20fill='white'%20mask='url(%23hole)'%3e%3ccircle%20cx='12'%20cy='12'%20r='7.2'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'%20transform='rotate(45%2012%2012)'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'%20transform='rotate(90%2012%2012)'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'%20transform='rotate(135%2012%2012)'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'%20transform='rotate(180%2012%2012)'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'%20transform='rotate(225%2012%2012)'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'%20transform='rotate(270%2012%2012)'/%3e%3crect%20x='10'%20y='1.6'%20width='4'%20height='6'%20rx='1.4'%20transform='rotate(315%2012%2012)'/%3e%3c/g%3e%3c/svg%3e") center / contain no-repeat;cursor:pointer;pointer-events:auto}.info-gear:hover{background:linear-gradient(135deg,#a8a8a8,#4a4a4a)}#coffee-bg #bmc-wbtn{position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:auto!important;height:auto!important;background:transparent!important;box-shadow:none!important;z-index:auto!important}#coffee-bg #bmc-wbtn img,#coffee-proxy img{filter:brightness(0) invert(1)}#coffee-proxy img{width:36px;height:36px}#bmc-iframe{left:auto!important;right:var(--spacing-lg)!important;top:var(--spacing-lg)!important;bottom:auto!important;height:calc(100% - 2 * var(--spacing-lg))!important;min-height:0!important;max-height:none!important;max-width:calc(100% - 2 * var(--spacing-lg))!important}.home-footer-text .controls-table{max-width:100%;margin-bottom:4px}.home-footer-text .modal-details-text{margin-bottom:4px}.prefs-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0000001a;z-index:calc(var(--z-entry-modal) + 3);pointer-events:auto;user-select:none;-webkit-user-select:none}.prefs-version{margin-top:10px;text-align:center;font-size:var(--font-size-sm);opacity:.55;cursor:default;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}#perf-overlay{position:fixed;left:50%;top:4px;transform:translate(-50%);max-width:96vw;padding:3px 8px;border-radius:6px;background:#000000b8;color:#fff;font:11px/1.3 ui-monospace,Menlo,monospace;text-align:center;pointer-events:none;z-index:100000}.prefs-card{box-sizing:border-box;width:min(420px,calc(100% - 2 * var(--spacing-lg)));min-width:max-content;max-height:calc(100% - 2 * var(--spacing-lg));overflow:hidden auto;padding:24px;background:var(--card-bg);color:var(--card-text);border:var(--stroke-width) solid var(--card-border);border-radius:var(--radius-xl);box-shadow:var(--card-shadow)}.prefs-card h2{margin:0 0 18px;text-align:center;font-size:var(--font-size-xxl);color:var(--brand-dark)}.prefs-card .graphics-options{margin-bottom:22px}html,body{touch-action:manipulation}html.touch .key-indicator{font-size:0}html.touch .key-indicator:after{content:"+";font-size:var(--font-size-lg);line-height:1}.death-stats-table{width:88%;margin:0 auto 12px}.death-stats-table th,.death-stats-table td{padding:6px 12px;text-align:center;width:33%}.death-stats-table th{color:var(--brand-dark);font-weight:700;border-bottom:var(--stroke-width) solid var(--input-border-card)}.death-stats-table th:nth-child(2),.death-stats-table .controls-key{border-left:var(--stroke-width) solid var(--input-border-card);border-right:var(--stroke-width) solid var(--input-border-card);text-align:center}#death-modal .home-footer{margin-top:20px}#death-modal .game-title{margin-bottom:10px;overflow-wrap:anywhere}#death-modal .name-row:has(.respawn-name-section){margin:20px 0 8px}html.touch.left-handed #joystick{left:auto;right:var(--touch-side)}html.touch.left-handed #touch-buttons button{left:auto;right:calc(var(--touch-cx) + var(--dx) * var(--touch-arc) - var(--touch-btn) / 2)}.prefs-row{display:grid;grid-template-columns:7.5em 1fr;align-items:center;gap:10px 14px;margin-bottom:16px;font-size:var(--font-size-lg);font-weight:700;color:var(--brand-dark)}.prefs-control{white-space:nowrap;display:flex;align-items:center;gap:12px;min-width:0}.prefs-card .toggle-button{--toggle-bg: rgba(0, 0, 0, .25)}.prefs-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;min-width:0;height:14px;margin:0;padding:0;border:var(--stroke-width) solid var(--input-border-card);border-radius:8px;background:var(--brand-gradient) 0 / var(--fill, 50%) 100% no-repeat,#00000014;touch-action:none;cursor:pointer}.prefs-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:22px;height:22px;border:var(--stroke-width) solid #000000;border-radius:50%;background:#fff}.prefs-slider::-moz-range-thumb{width:18px;height:18px;border:var(--stroke-width) solid #000000;border-radius:50%;background:#fff}.touch-row{display:none}html.touch .touch-row{display:grid}#prefs-reset{justify-self:start;background:linear-gradient(135deg,#d9200e,#ff6a2e)}.composer-btn-hud[data-composer]:hover,.tempo-btn-hud[data-tempo]:hover{background:var(--hud-paper)!important}.composer-btn-hud.selected[data-composer],.tempo-btn-hud.selected[data-tempo]{background:var(--hud-paper)!important;border-color:#000!important}.pad-only{display:none}html.pad .pad-only{display:table}.pad-focus{outline:calc(var(--stroke-width) * 2) solid #0082f7!important;outline-offset:3px;position:relative;z-index:1}html.pad .upgrade-row.pad-row{background:#0082f729;outline:var(--stroke-width) solid #0082f7}html.pad .quiz-answer-btn:before{content:attr(data-pad);display:inline-block;width:1.5em;margin-right:8px;text-align:center;font-weight:700;background:#fff;border:var(--stroke-width) solid #000000;border-radius:50%}#reload-modal p{white-space:pre-line}.chat-system{font-style:italic;opacity:.7}#quiz-panel{flex:0 1 auto;min-height:2.2em}@media(max-width:600px),(max-height:500px){.landing-container,#death-modal,.prefs-overlay{align-items:stretch}.landing-container .modal-content,#death-modal .modal-content,.prefs-card{box-sizing:border-box;width:100%;min-width:0;max-width:none;height:100%;max-height:none;border-width:0;border-radius:0;box-shadow:none;overflow-x:hidden;overflow-y:auto}.death-modal-content{box-sizing:border-box;width:100%;min-width:0;max-width:none;border-radius:0;padding:20px}.prefs-row{grid-template-columns:1fr}.prefs-control{flex-wrap:wrap}.prefs-slider{min-width:120px}}#phone-gear-btn{display:none}html.phone #phone-gear-btn{display:block;top:var(--spacing-lg);right:auto;bottom:auto;left:var(--spacing-lg);width:44px;height:44px;background:linear-gradient(135deg,#6e6e6e,#2f2f2f);z-index:var(--z-modal)}html.phone :is(#defensive-ability-indicator,#offensive-ability-indicator){left:76px;right:180px}html.phone #offensive-ability-indicator{top:62px}html.phone #secondary-weapon-ui{left:auto;right:var(--spacing-lg)}html.phone #now-playing{display:none!important}html.phone #composer-hud-stack{top:120px;left:var(--spacing-lg)!important;right:var(--spacing-lg)!important}html.phone #tempo-title-bar{top:120px;bottom:auto;left:var(--spacing-lg);right:var(--spacing-lg)}html.phone .composer-hud-stack .selection-title-bar>.panel-toggle{margin:0 auto 0 0}html.phone #tempo-title-bar>.panel-toggle{margin:0 0 0 auto}html.phone #tempo-selection-hud{top:290px;bottom:auto;left:var(--spacing-lg)!important;right:var(--spacing-lg)!important}html.phone :is(.composer-grid-container,.tempo-grid-container){flex-wrap:nowrap;gap:4px;padding:6px 0}html.phone :is(.composer-btn-hud,.tempo-btn-hud){flex:1 1 0;min-width:0}html.phone :is(.composer-name,.composer-desc,.tempo-name,.tempo-desc){display:none}#fps-display{font-variant-numeric:tabular-nums;white-space:pre-wrap}
