:root{--bg-primary: #0A0F1A;--bg-card: #364A5E;--bg-error: #4A2E2E;--color-primary: #F29170;--color-primary-hover: #FA9E7D;--color-primary-pressed: #E07857;--color-secondary: #4D6B8A;--color-error: #FF6B6B;--text-primary: #F2F2F2;--text-secondary: #99BFB3;--text-muted: #999999;--text-on-primary: #FFFFFF;--border-neutral: #4D6B8A;--progress-bg: rgba(255, 255, 255, .15);--disabled-bg: #4A5A6B;--disabled-text: #8A9BA8;--shadow: rgba(0, 0, 0, .3)}.landing-container{display:flex;justify-content:center;align-items:center;min-height:100dvh;width:100vw;background:var(--bg-primary);padding:24px;transition:opacity .5s ease-out;overflow-y:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.logo{font-size:48px;font-weight:700;color:var(--color-primary);margin:0 0 12px;letter-spacing:-.5px}.tagline{font-size:20px;color:var(--text-secondary);margin:0;font-weight:400}.progress-container{width:100%;display:flex;flex-direction:column;gap:12px;align-items:center}.progress-bar{width:100%;height:8px;background:var(--progress-bg);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:var(--color-primary);transition:width .2s ease-out;border-radius:4px}.progress-text{font-size:14px;color:var(--text-secondary);font-weight:500}.error-container{width:100%;display:flex;flex-direction:column;gap:16px;align-items:center}.error-message{background:var(--bg-error);border:2px solid var(--color-error);border-radius:8px;padding:16px 24px;color:var(--color-error);font-size:16px;text-align:center;width:100%}.retry-button{background:var(--bg-card);border:2px solid var(--color-primary);color:var(--color-primary);font-size:16px;font-weight:600;padding:12px 32px;border-radius:8px;cursor:pointer;transition:all .15s cubic-bezier(.22,1,.36,1);min-height:48px;min-width:120px}.retry-button:hover{background:var(--color-primary);color:var(--text-on-primary)}.retry-button:active{transform:scale(.98)}.retry-button:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.play-button{background:var(--color-primary);color:var(--text-on-primary);font-family:inherit;font-size:clamp(28px,6vw,56px);font-weight:700;border:none;border-radius:16px;cursor:pointer;transition:all .15s cubic-bezier(.22,1,.36,1);box-shadow:0 6px 20px var(--shadow);width:100%;height:120px;min-height:120px;margin-bottom:8px}.play-button:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-2px);box-shadow:0 6px 16px var(--shadow)}.play-button:active:not(:disabled){background:var(--color-primary-pressed);transform:translateY(0);box-shadow:0 2px 8px var(--shadow)}.play-button:disabled{background:var(--disabled-bg);color:var(--disabled-text);cursor:not-allowed;box-shadow:none}.play-button.loading{position:relative;display:flex;align-items:center;justify-content:center;gap:12px}.play-button.loading:before{content:"";width:24px;height:24px;border:3px solid currentColor;border-top-color:transparent;border-radius:50%;animation:play-button-spin .8s linear infinite;opacity:.8}@keyframes play-button-spin{to{transform:rotate(360deg)}}.notification-cue{margin-top:12px;font-size:14px;color:var(--text-muted);text-align:center;font-style:italic;animation:cue-fade-in .3s ease-out}@keyframes cue-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 640px){.landing-container{padding:16px}.logo{font-size:clamp(32px,12vw,48px)}.tagline{font-size:clamp(16px,5vw,20px)}}button{min-height:48px}#main-content{position:relative;z-index:9999}#main-content.game-active{pointer-events:none}button:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.main-card{background:var(--bg-card);border-radius:24px;box-shadow:0 8px 20px var(--shadow);padding:48px 40px;width:100%;max-width:480px;display:flex;flex-direction:column;align-items:center;gap:20px;position:relative;z-index:1}.title-section{text-align:center}.main-card .logo{font-size:clamp(48px,10vw,80px);text-align:center}.main-card .tagline{font-size:clamp(16px,3vw,22px);text-align:center}.high-score-text{font-size:clamp(18px,3.5vw,28px);font-weight:700;color:var(--color-primary);margin:8px 0 0;text-align:center}.leaderboard-link{display:inline-block;background:none;border:none;color:var(--text-secondary);font-family:inherit;font-size:clamp(14px,2.5vw,18px);font-weight:500;text-align:center;text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1.5px;cursor:pointer;padding:4px 8px;margin:4px 0 0;min-height:44px;transition:color .15s cubic-bezier(.22,1,.36,1)}.leaderboard-link:hover:not(:disabled){color:var(--color-primary)}.leaderboard-link:disabled{opacity:.5;cursor:not-allowed}.leaderboard-link:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px;border-radius:4px}.beta-chip{display:inline-block;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--text-on-primary);background:var(--color-primary);padding:4px 10px;border-radius:999px;margin-bottom:12px}.beta-disclaimer{width:100%;text-align:center;margin-top:4px}.beta-disclaimer-line{font-size:13px;line-height:1.4;color:var(--text-secondary);margin:0 0 4px}.beta-bug-link{display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:var(--color-primary);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1.5px;min-height:48px;padding:4px 8px}.beta-bug-link:hover{color:var(--color-primary-hover)}.beta-bug-link:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px;border-radius:4px}.known-issues{width:100%;text-align:left;margin:8px 0 12px;padding:12px 16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px}.known-issues-title{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 8px}.known-issues-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.known-issues-item{margin:0;padding:0}.known-issues-link{display:block;font-size:14px;line-height:1.4;color:var(--text-primary);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1.5px;padding:4px 0;word-break:break-word}.known-issues-link:hover{color:var(--color-primary-hover)}.known-issues-link:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px;border-radius:4px}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;width:100%;margin-top:8px}.feature-grid-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:var(--bg-card);color:var(--text-primary);border:2px solid var(--border-neutral);border-radius:16px;cursor:pointer;padding:16px;min-height:90px;min-width:44px;transition:all .15s cubic-bezier(.22,1,.36,1);font-family:inherit;font-weight:600;font-size:clamp(14px,2.5vw,16px)}.feature-grid-btn:hover:not(:disabled){background:var(--bg-primary);border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px)}.feature-grid-btn:active:not(:disabled){transform:translateY(0)}.feature-grid-btn:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.feature-grid-btn:disabled{opacity:.5;cursor:not-allowed}.feature-grid-btn .btn-icon{font-size:clamp(20px,4vw,26px)}.secondary-buttons{display:flex;gap:12px;width:100%;margin-top:8px}.secondary-button{flex:1;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:clamp(14px,2.5vw,18px);font-weight:600;height:56px;min-height:56px;border:2px solid var(--border-neutral);border-radius:12px;cursor:pointer;transition:all .15s cubic-bezier(.22,1,.36,1)}.secondary-button:hover{background:var(--bg-primary);border-color:var(--color-secondary);color:var(--text-primary);transform:translateY(-1px)}.secondary-button:active{transform:translateY(0)}.secondary-button:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.card-divider{width:100%;height:1px;background:var(--border-neutral);opacity:.5}.copyright{font-size:14px;color:var(--text-muted);opacity:.5;margin:0;text-align:center;text-decoration:none}.copyright:hover{opacity:.8;text-decoration:underline}.copyright:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.decorative-pattern{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:0}.letter-tile{position:absolute;top:-100px;width:60px;height:60px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-family:inherit;font-weight:700;font-size:28px;color:var(--text-primary);will-change:transform,opacity}.tile-1{--base-opacity: .08;--static-top: 100px;--static-left: 50px;--static-rotate: 10deg;background:var(--color-secondary);left:7%;animation:fall-a 24s linear infinite;animation-delay:-4s}.tile-2{--base-opacity: .09;--static-top: 200px;--static-right: 50px;--static-rotate: -15deg;background:var(--color-primary);left:82%;animation:fall-b 28s linear infinite;animation-delay:-12s}.tile-3{--base-opacity: .06;--static-bottom: 160px;--static-left: 80px;--static-rotate: 20deg;background:var(--color-secondary);left:22%;animation:fall-c 22s linear infinite;animation-delay:-18s}.tile-4{--base-opacity: .08;--static-bottom: 100px;--static-right: 60px;--static-rotate: -10deg;background:var(--color-primary);left:68%;animation:fall-d 30s linear infinite;animation-delay:-2s}.tile-5{--base-opacity: .08;--static-top: 350px;--static-left: 40px;--static-rotate: -8deg;background:var(--color-secondary);left:15%;animation:fall-a 26s linear infinite;animation-delay:-8s}.tile-6{--base-opacity: .07;--static-top: 450px;--static-right: 80px;--static-rotate: 12deg;background:var(--color-primary);left:76%;animation:fall-b 32s linear infinite;animation-delay:-15s}.tile-7{--base-opacity: .1;--static-bottom: 350px;--static-left: 60px;--static-rotate: -12deg;background:var(--color-secondary);left:30%;animation:fall-c 20s linear infinite;animation-delay:-22s}.tile-8{--base-opacity: .06;--static-bottom: 280px;--static-right: 40px;--static-rotate: 8deg;background:var(--color-primary);left:89%;animation:fall-d 29s linear infinite;animation-delay:-10s}@keyframes fall-a{0%{transform:translateY(0) translate(0) rotate(-10deg);opacity:0}15%{opacity:var(--base-opacity, .08)}85%{opacity:var(--base-opacity, .08)}to{transform:translateY(calc(100vh + 120px)) translate(40px) rotate(45deg);opacity:0}}@keyframes fall-b{0%{transform:translateY(0) translate(0) rotate(15deg);opacity:0}15%{opacity:var(--base-opacity, .08)}85%{opacity:var(--base-opacity, .08)}to{transform:translateY(calc(100vh + 120px)) translate(-50px) rotate(-30deg);opacity:0}}@keyframes fall-c{0%{transform:translateY(0) translate(0) rotate(-5deg);opacity:0}15%{opacity:var(--base-opacity, .08)}85%{opacity:var(--base-opacity, .08)}to{transform:translateY(calc(100vh + 120px)) translate(30px) rotate(25deg);opacity:0}}@keyframes fall-d{0%{transform:translateY(0) translate(0) rotate(20deg);opacity:0}15%{opacity:var(--base-opacity, .08)}85%{opacity:var(--base-opacity, .08)}to{transform:translateY(calc(100vh + 120px)) translate(-40px) rotate(-15deg);opacity:0}}@media (max-height: 500px){.decorative-pattern{display:none!important}}@media (max-width: 560px){.main-card{padding:36px 24px;gap:16px}.secondary-button{height:52px;min-height:52px;font-size:15px}.play-button{height:100px;min-height:100px;font-size:clamp(24px,7vw,40px)}}.screen-header{display:flex;align-items:center;width:100%;gap:16px}.back-button{background:none;border:none;color:var(--color-primary);font-family:inherit;font-size:16px;font-weight:600;cursor:pointer;padding:8px 12px;min-height:48px;border-radius:8px;transition:background-color .15s cubic-bezier(.22,1,.36,1)}.back-button:hover{background:var(--bg-primary)}.back-button:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.screen-title{font-size:28px;font-weight:700;color:var(--text-primary);margin:0;flex:1;text-align:center}.settings-group{width:100%;display:flex;flex-direction:column;gap:12px}.settings-label{font-size:13px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.radio-group{display:flex;gap:12px}.radio-option{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;border:2px solid var(--border-neutral);border-radius:12px;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;color:var(--text-primary);transition:all .15s cubic-bezier(.22,1,.36,1)}.radio-option.selected{border-color:var(--color-primary);background:var(--bg-primary);color:var(--color-primary)}.radio-option:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.radio-option input[type=radio]{display:none}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}.toggle-text{display:flex;flex-direction:column;gap:4px;flex:1}.toggle-label{font-size:16px;font-weight:600;color:var(--text-primary)}.toggle-desc{font-size:13px;color:var(--text-secondary);line-height:1.4}.toggle-switch{position:relative;width:52px;height:30px;border-radius:15px;border:none;cursor:pointer;flex-shrink:0;transition:background .22s cubic-bezier(.22,1,.36,1),box-shadow .22s cubic-bezier(.22,1,.36,1);padding:0}.toggle-switch.toggle-on{background:var(--color-primary, #4f8ef7);box-shadow:0 0 12px color-mix(in srgb,var(--color-primary, #4f8ef7) 40%,transparent)}.toggle-switch.toggle-off{background:var(--border-neutral, #3a3a4a)}.toggle-switch:focus-visible{outline:3px solid var(--color-primary, #4f8ef7);outline-offset:2px}.toggle-knob{position:absolute;top:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #00000040;transition:left .22s cubic-bezier(.22,1,.36,1)}.toggle-on .toggle-knob{left:25px}.toggle-off .toggle-knob{left:3px}.stats-card{overflow-y:auto;max-height:90dvh;gap:24px;max-width:560px}.stats-section{width:100%;display:flex;flex-direction:column;gap:10px}.stats-section-title{font-size:12px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;margin:0}.stat-row{display:flex;justify-content:space-between;align-items:baseline}.stat-label{font-size:16px;color:var(--text-secondary)}.stat-value{font-size:20px;font-weight:700;color:var(--text-primary)}.stats-empty{font-size:14px;color:var(--text-muted);text-align:center;margin:0}.history-chart{width:100%;height:120px;border-radius:8px;background:var(--bg-primary)}.leaderboard-row{display:flex;align-items:center;gap:12px;font-size:16px;color:var(--text-primary)}.lb-rank{color:var(--text-muted);width:24px;flex-shrink:0}.lb-name{flex:1}.lb-score{font-weight:700;color:var(--color-primary)}.header-actions{display:flex;gap:8px}.icon-button{background:none;border:2px solid var(--border-neutral);color:var(--text-secondary);font-family:inherit;font-size:13px;font-weight:600;padding:6px 12px;border-radius:8px;cursor:pointer;min-height:48px}.icon-button-danger{color:var(--color-error);border-color:var(--color-error)}.icon-button:hover{background:var(--bg-primary);border-color:var(--color-secondary)}.icon-button:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.icon-button.definition-icon{min-height:32px;padding:4px 8px;font-size:16px}.stat-value-with-button{display:inline-flex;align-items:center;gap:8px}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100}.confirm-dialog{background:var(--bg-card);border-radius:16px;padding:32px;max-width:320px;width:90%;display:flex;flex-direction:column;gap:20px;font-size:16px;color:var(--text-primary)}.confirm-actions{display:flex;gap:12px}.confirm-danger-button{background:var(--color-error)!important;height:52px;min-height:52px;font-size:16px}.definition-dialog{max-width:420px;text-align:center}.definition-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.definition-word{font-size:32px;font-weight:600;color:var(--color-accent-secondary, #F29170);margin:0}.definition-pos{font-size:18px;color:var(--text-secondary);font-style:italic;margin:0 0 12px}.definition-text{font-size:18px;color:var(--text-primary);line-height:1.5;margin:0}.definition-loading,.definition-error{font-size:16px;color:var(--text-secondary);padding:20px 0}.definition-error{color:var(--color-error)}.tutorial-prompt-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100;animation:fade-in .2s ease-out}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.tutorial-prompt-modal{background:var(--bg-card);border-radius:16px;padding:32px;max-width:340px;width:90%;display:flex;flex-direction:column;gap:16px;text-align:center;animation:scale-in .2s ease-out}@keyframes scale-in{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.tutorial-prompt-title{font-size:22px;font-weight:600;color:var(--color-primary);margin:0}.tutorial-prompt-message{font-size:16px;color:var(--text-primary);margin:0;line-height:1.5}.tutorial-prompt-buttons{display:flex;gap:12px;margin-top:8px}.tutorial-prompt-yes,.tutorial-prompt-no{flex:1;height:48px;min-height:48px;border-radius:12px;font-size:16px;font-weight:500;cursor:pointer;transition:all .15s cubic-bezier(.22,1,.36,1);border:none}.tutorial-prompt-yes{background:var(--color-primary);color:var(--text-on-primary)}.tutorial-prompt-yes:hover{background:var(--color-primary-hover)}.tutorial-prompt-yes:active{background:var(--color-primary-pressed)}.tutorial-prompt-no{background:transparent;color:var(--text-secondary);border:2px solid var(--border-neutral)}.tutorial-prompt-no:hover{background:var(--progress-bg)}.rules-card{max-height:90dvh;overflow:hidden;padding:32px}.rules-content{overflow-y:auto;padding-right:8px;margin-right:-8px;flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:var(--color-secondary) transparent}.rules-content::-webkit-scrollbar{width:6px}.rules-content::-webkit-scrollbar-track{background:transparent}.rules-content::-webkit-scrollbar-thumb{background:var(--color-secondary);border-radius:3px}.rules-h1{font-size:24px;font-weight:700;color:var(--text-primary);margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid var(--color-primary)}.rules-h2{font-size:18px;font-weight:700;color:var(--color-primary);margin:24px 0 12px}.rules-h3{font-size:16px;font-weight:600;color:var(--text-secondary);margin:20px 0 10px}.rules-p{font-size:15px;line-height:1.6;color:var(--text-primary);margin:0 0 12px}.rules-ul,.rules-ol{margin:0 0 16px;padding-left:20px}.rules-li{font-size:15px;line-height:1.6;color:var(--text-primary);margin-bottom:6px}.rules-blockquote{background:var(--bg-primary);border-left:4px solid var(--color-primary);padding:12px 16px;margin:16px 0;font-style:italic}.rules-blockquote p{margin:0}.rules-strong{font-weight:700;color:var(--text-primary)}.rules-table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14px}.rules-th{background:var(--bg-primary);color:var(--text-primary);font-weight:700;text-align:left;padding:10px 12px;border-bottom:2px solid var(--color-primary)}.rules-td{padding:8px 12px;border-bottom:1px solid var(--border-neutral);color:var(--text-primary)}.rules-tr:last-child .rules-td{border-bottom:none}@media (max-width: 560px){.rules-card{padding:20px;max-height:95dvh}.rules-h1{font-size:20px}.rules-h2{font-size:16px}.rules-h3{font-size:15px}.rules-p,.rules-li{font-size:14px}.rules-table{font-size:13px}.rules-th,.rules-td{padding:8px}}#godot-loader{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#0a0f1a;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999}.godot-loader-spinner{width:48px;height:48px;border:4px solid #4D6B8A;border-top-color:#f29170;border-radius:50%}.godot-loader-text{margin-top:16px;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;font-weight:500;color:#f2f2f2;letter-spacing:.3px}.tutorial-prompt-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.tutorial-prompt-modal{background-color:var(--bg-card);border-radius:16px;padding:32px 24px;max-width:320px;width:90%;text-align:center;box-shadow:0 8px 32px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.tutorial-prompt-title{font-size:24px;font-weight:700;color:var(--text-primary);margin:0 0 16px}.tutorial-prompt-message{font-size:16px;color:var(--text-secondary);margin:0 0 24px;line-height:1.5}.tutorial-prompt-buttons{display:flex;flex-direction:column;gap:12px}.tutorial-prompt-yes{background-color:var(--color-primary);color:var(--text-on-primary);border:none;border-radius:12px;padding:14px 24px;font-size:17px;font-weight:600;cursor:pointer;transition:background-color .15s cubic-bezier(.22,1,.36,1)}.tutorial-prompt-yes:hover{background-color:var(--color-primary-hover)}.tutorial-prompt-yes:active{background-color:var(--color-primary-pressed)}.tutorial-prompt-no{background-color:transparent;color:var(--text-secondary);border:2px solid var(--border-neutral);border-radius:12px;padding:12px 24px;font-size:16px;font-weight:500;cursor:pointer;transition:all .15s cubic-bezier(.22,1,.36,1)}.tutorial-prompt-no:hover{background-color:var(--border-neutral);color:var(--text-primary)}.rules-tutorial-section{margin-top:24px;padding-top:24px;border-top:1px solid var(--border-neutral);text-align:center}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.text-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.text-wrap{word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.flex-item-safe{min-width:0;overflow:hidden}.grid-item-safe{min-width:0;min-height:0;overflow:hidden}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:.01ms!important;scroll-behavior:auto!important}.tutorial-prompt-overlay,.confirm-overlay,.tutorial-prompt-modal,.confirm-dialog{animation:none!important}}[dir=rtl]{direction:rtl}[dir=rtl] .screen-header{flex-direction:row-reverse}[dir=rtl] .back-button{margin-left:0;margin-right:auto}[dir=rtl] .stat-row,[dir=rtl] .leaderboard-row{flex-direction:row-reverse}[dir=rtl] .lb-rank{margin-right:0;margin-left:12px}[dir=rtl] .rules-ul,[dir=rtl] .rules-ol{padding-left:0;padding-right:20px}[dir=rtl] .rules-blockquote{border-left:none;border-right:4px solid var(--color-primary)}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.skeleton{background:var(--progress-bg);border-radius:4px;animation:skeleton-pulse 1.5s ease-in-out infinite}.skeleton-text{height:1em;margin-bottom:.5em}.skeleton-title{height:1.5em;width:60%;margin-bottom:1em}.skeleton-button{height:48px;width:100%;border-radius:12px}.skeleton-stat{height:24px;width:80px}.error-container-enhanced{width:100%;display:flex;flex-direction:column;gap:16px;align-items:center;padding:16px;border-radius:12px}.error-icon{font-size:48px;margin-bottom:8px}.error-title{font-size:18px;font-weight:700;color:var(--color-error);margin:0}.error-details{font-size:14px;color:var(--text-secondary);text-align:center;word-break:break-word;max-width:100%}.error-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.offline-indicator{position:fixed;top:0;left:0;right:0;background:var(--color-error);color:var(--text-on-primary);padding:12px 24px;text-align:center;font-weight:600;z-index:10001;animation:slide-down .3s ease-out}@keyframes slide-down{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 24px;text-align:center;gap:12px}.empty-state-icon{font-size:48px;opacity:.5}.empty-state-title{font-size:18px;font-weight:700;color:var(--text-primary);margin:0}.empty-state-message{font-size:14px;color:var(--text-muted);margin:0;max-width:280px}.lb-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.tutorial-prompt-overlay:focus,.confirm-overlay:focus{outline:none}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-primary);color:var(--text-on-primary);padding:8px 16px;z-index:10002;transition:top .3s}.skip-link:focus{top:0}@media (prefers-contrast: high){.play-button,.secondary-button,.feature-grid-btn{border:3px solid currentColor}.error-message{border-width:3px}.radio-option.selected{outline:3px solid var(--color-primary);outline-offset:2px}}.waterfall-transition{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-primary);display:flex;align-items:center;justify-content:center;z-index:9998;opacity:0;pointer-events:none;transition:opacity .3s ease}.waterfall-transition.active{opacity:1;pointer-events:auto}.loader-card{max-width:520px;width:calc(100% - 48px);padding:32px 28px 28px;border-radius:18px;background:var(--color-card-bg, rgba(255, 255, 255, .04));border:1px solid var(--color-border, rgba(255, 255, 255, .08));box-shadow:0 20px 60px #00000059;display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.loader-spinner{width:36px;height:36px;border-radius:50%;border:3px solid var(--color-border, rgba(255, 255, 255, .15));border-top-color:var(--color-primary, #f29170);animation:loader-spin .9s linear infinite}@keyframes loader-spin{to{transform:rotate(360deg)}}.loader-title{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:18px;font-weight:600;color:var(--text-primary);letter-spacing:.2px}.loader-tip{width:100%;min-height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px 14px;border-radius:12px;background:var(--color-tip-bg, rgba(242, 145, 112, .08));transition:opacity .4s ease,transform .4s ease}.loader-tip.is-visible{opacity:1;transform:translateY(0)}.loader-tip.is-hidden{opacity:0;transform:translateY(6px)}.loader-tip-label{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--color-primary, #f29170);opacity:.85}.loader-tip-text{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:15px;line-height:1.45;font-weight:400;color:var(--text-secondary, rgba(255, 255, 255, .78));max-width:440px}.loader-progress{width:100%;height:4px;border-radius:2px;background:var(--color-border, rgba(255, 255, 255, .08));overflow:hidden}.loader-progress-bar{height:100%;width:35%;border-radius:2px;background:linear-gradient(90deg,transparent 0%,var(--color-primary, #f29170) 50%,transparent 100%);animation:loader-progress-slide 1.6s ease-in-out infinite}@keyframes loader-progress-slide{0%{transform:translate(-100%)}to{transform:translate(320%)}}@media (prefers-reduced-motion: reduce){.loader-spinner,.loader-progress-bar{animation:none}.loader-spinner{border-top-color:var(--color-border, rgba(255, 255, 255, .15))}}.main-card{animation:card-entrance .6s cubic-bezier(.22,1,.36,1) forwards}@keyframes card-entrance{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.main-card>*{opacity:0;animation:content-fade-in .4s cubic-bezier(.22,1,.36,1) forwards}.main-card>*:nth-child(1){animation-delay:.1s}.main-card>*:nth-child(2){animation-delay:.18s}.main-card>*:nth-child(3){animation-delay:.26s}.main-card>*:nth-child(4){animation-delay:.34s}.main-card>*:nth-child(5){animation-delay:.42s}.main-card>*:nth-child(6){animation-delay:.5s}.main-card>*:nth-child(7){animation-delay:.58s}.main-card>*:nth-child(8){animation-delay:.66s}@keyframes content-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.main-card,.main-card>*{animation:none;opacity:1;transform:none}}.auth-section{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:12px;padding:8px 0;width:100%}.user-status{display:flex;flex-direction:row;align-items:center;gap:12px}.user-email{font-size:12px;color:var(--text-muted, #666);word-break:break-all}.google-sign-in-button{padding:8px 16px;background-color:#4285f4;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .15s}.google-sign-in-button:hover:not(:disabled){background-color:#3367d6}.google-sign-in-button:disabled{opacity:.6;cursor:not-allowed}.sign-out-button{font-size:12px;padding:4px 12px;height:32px;min-height:32px}.auth-unavailable{font-size:13px;color:var(--text-muted);text-align:center;padding:8px 0}#godot-canvas,#godot-canvas:focus,#godot-canvas:active{display:block!important;width:100%!important;height:100%!important;outline:none!important;border:none!important;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;touch-action:none!important}.powerups-card{max-width:680px;width:100%;max-height:90dvh;overflow-y:auto}.shop-tabs-container{display:flex;gap:8px;margin-bottom:24px;width:100%}.shop-tab-btn{background:#ffffff0d;color:var(--text-muted);border:1px solid rgba(255,255,255,.1);padding:10px 20px;border-radius:8px;font-family:inherit;font-size:16px;font-weight:600;cursor:pointer;transition:all .15s ease}.shop-tab-btn:hover{background:#ffffff1a;color:var(--text-primary)}.shop-tab-btn.active{background:var(--color-primary);color:var(--bg-primary);border-color:var(--color-primary)}.coin-display-container{display:flex;justify-content:center;margin-bottom:24px}.coin-display-pill{display:flex;align-items:center;gap:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);padding:12px 24px;border-radius:50px;box-shadow:inset 0 2px 4px #0003}.coin-icon-img{width:28px;height:28px}.coin-text-group{display:flex;flex-direction:column;align-items:flex-start}.coin-label{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted)}.coin-value{font-size:24px;font-weight:700;color:var(--color-primary)}.loadout-section{width:100%;margin-bottom:24px}.section-title{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 16px;text-align:left}.loadout-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;width:100%}.loadout-slot-btn{aspect-ratio:1;border-radius:12px;border:2px dashed rgba(255,255,255,.15);background:#0003;cursor:pointer;padding:8px;display:flex;justify-content:center;align-items:center;transition:all .15s ease;position:relative;overflow:hidden}.loadout-slot-btn.filled{border:2px solid var(--color-primary);background:#f291701a}.loadout-slot-btn.filled:hover{border-color:var(--color-error);background:#ff6b6b1a}.slot-inner{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;height:100%;justify-content:center}.slot-icon-glyph{font-size:24px;transition:transform .15s ease}.slot-name-label{font-size:11px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.unequip-hint{position:absolute;bottom:0;left:0;right:0;background:var(--color-error);color:#fff;font-size:10px;font-weight:600;padding:2px 0;opacity:0;transition:opacity .15s ease}.loadout-slot-btn.filled:hover .unequip-hint{opacity:1}.loadout-slot-btn.filled:hover .slot-icon-glyph{transform:scale(.9) translateY(-2px)}.slot-lock{font-size:24px;color:#ffffff4d;transition:color .15s ease}.loadout-slot-btn.locked{border:2px solid rgba(255,255,255,.08);background:#00000040;cursor:not-allowed;opacity:.8}.loadout-slot-btn.locked:hover{border-color:#ffffff1f}.loadout-slot-btn.locked:hover .slot-lock{color:#ffffff80}.powerups-shop{width:100%;margin-top:24px}.powerups-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;width:100%}@media (max-width: 480px){.powerups-grid{grid-template-columns:1fr}}.powerup-shop-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;transition:all .2s ease;position:relative}.powerup-shop-card:hover{background:#ffffff0d;border-color:#ffffff26}.powerup-shop-card.card-equipped{border-color:var(--color-primary);box-shadow:0 0 12px #f2917026}.card-header-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;width:100%}.card-glyph{font-size:24px}.card-name{font-size:16px;font-weight:600;margin:0;color:var(--text-primary);flex-grow:1}.starter-badge{font-size:10px;background:#ffffff1a;padding:2px 6px;border-radius:4px;color:var(--text-secondary);font-weight:500}.card-description{font-size:13px;color:var(--text-muted);margin:0 0 16px;line-height:1.4;flex-grow:1}.card-action-btn{width:100%;height:38px;border-radius:8px;border:none;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease}.unlock-btn.affordable{background:var(--color-primary);color:var(--bg-primary)}.unlock-btn.affordable:hover{background:var(--color-primary-hover)}.unlock-btn.locked{background:#ffffff0f;color:var(--text-muted);border:1px solid rgba(255,255,255,.05)}.unlock-btn.locked:hover{background:#ff6b6b1a;color:var(--color-error);border-color:#ff6b6b33}.equip-btn{background:transparent;border:1px solid var(--color-primary);color:var(--color-primary)}.equip-btn:hover{background:var(--color-primary);color:var(--bg-primary)}.equipped-btn{background:#fcfcfc14;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary)}.equipped-btn:hover{background:#ff6b6b1a;color:var(--color-error);border-color:#ff6b6b33}.coming-soon-btn{background:#ffffff05;color:#fff3;border:1px solid rgba(255,255,255,.02);cursor:not-allowed}.shop-coming-soon{opacity:.6}.profile-tabs-container{display:flex;gap:8px;margin-bottom:24px;width:100%}.profile-tab-btn{background:#ffffff0d;color:var(--text-muted);border:1px solid rgba(255,255,255,.1);padding:10px 20px;border-radius:8px;font-family:inherit;font-size:16px;font-weight:600;cursor:pointer;transition:all .15s ease;flex:1;text-align:center}.profile-tab-btn:hover{background:#ffffff1a;color:var(--text-primary)}.profile-tab-btn.active{background:var(--color-primary);color:var(--bg-primary);border-color:var(--color-primary)}.leaderboard-card{max-width:560px;height:90dvh;max-height:800px;display:flex;flex-direction:column;padding:24px 20px;gap:16px;overflow:hidden}.leaderboard-subheader{display:flex;justify-content:space-between;align-items:center;width:100%;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}.scope-subtitle{font-size:14px;color:var(--text-secondary);font-weight:500}.language-toggle{display:flex;align-items:center;gap:6px;background:#0003;padding:4px 8px;border-radius:20px;border:1px solid rgba(255,255,255,.08)}.toggle-globe{font-size:14px}.toggle-btn{background:transparent;border:none;color:var(--text-muted);font-size:13px;font-weight:700;cursor:pointer;padding:2px 6px;border-radius:10px;min-height:auto;transition:all .2s ease}.toggle-btn:hover{color:var(--text-primary)}.toggle-btn.active{color:var(--color-primary);background:#f2917026}.toggle-divider{color:#ffffff26;font-size:12px}.pull-to-refresh-indicator{display:flex;align-items:center;justify-content:center;overflow:hidden;width:100%;background:#00000026;border-radius:8px;margin-bottom:4px}.refresh-spinner{font-size:20px;display:inline-block;transition:transform .2s ease}.refresh-spinner.ready{transform:scale(1.2)}.refresh-spinner.spinning{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.leaderboard-list-wrapper{flex:1;width:100%;overflow-y:auto;padding-right:4px;display:flex;flex-direction:column;gap:8px;scrollbar-width:thin}.leaderboard-rows-list{display:flex;flex-direction:column;gap:8px;padding-bottom:24px}.leaderboard-row-container{background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.05);overflow:hidden;transition:all .2s cubic-bezier(.22,1,.36,1)}.leaderboard-row-container:hover{background:#ffffff0f;border-color:#ffffff1a;transform:translateY(-1px)}.leaderboard-row-main{display:grid;grid-template-columns:50px 1fr 100px 50px;align-items:center;padding:12px 16px;cursor:pointer;-webkit-user-select:none;user-select:none}.rank-col{font-size:16px;font-weight:700;color:var(--text-secondary)}.name-col{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600}.handle-text{color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}.you-badge{font-size:10px;font-weight:800;background:#50b4ff;color:#0a0f1a;padding:2px 6px;border-radius:4px;letter-spacing:.5px}.score-col{font-size:18px;font-weight:700;text-align:right;color:var(--text-primary)}.delta-col{font-size:14px;font-weight:600;text-align:right}.delta-up{color:#ffd86b}.delta-down{color:var(--color-error)}.delta-neutral{color:var(--text-muted);opacity:.6}.rank-first-row{background:#ffd86b14!important;border:1.5px solid #ffd86b!important;box-shadow:0 0 12px #ffd86b26}.rank-first-row .handle-text{color:#ffd86b}.rank-first-row .score-col{color:#ffd86b;text-shadow:0 0 8px rgba(255,216,107,.3)}.you-row{background:#50b4ff14;border:1.5px solid #50b4ff}.leaderboard-row-preview{border-top:1px solid rgba(255,255,255,.05);background:#00000026;padding:12px 16px}.preview-grid{display:flex;justify-content:space-around;gap:12px}.preview-item{display:flex;flex-direction:column;align-items:center;gap:4px}.preview-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.preview-val{font-size:15px;font-weight:700;color:var(--text-primary)}.your-row-summary-sticky{width:calc(100% + 40px);margin:16px -20px -24px;background:#1e2d3e;border-top:2px solid #50b4ff;padding:16px 24px;border-bottom-left-radius:24px;border-bottom-right-radius:24px;box-shadow:0 -4px 15px #0003;z-index:10}.your-row-main{display:grid;grid-template-columns:60px 80px 1fr auto;align-items:center;width:100%}.label-col-summary{font-size:14px;font-weight:800;color:#50b4ff;letter-spacing:1px}.rank-col-summary,.score-col-summary{font-size:18px;font-weight:800;color:var(--text-primary)}.delta-col-summary{font-size:13px;font-weight:600;text-align:right}.leaderboard-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px 20px;text-align:center;flex:1}.empty-state-icon{font-size:48px}.empty-state-icon.animate-pulse{animation:pulseScale 2s infinite ease-in-out}@keyframes pulseScale{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.empty-state-play-btn{max-width:200px;height:48px;min-height:48px;font-size:18px;border-radius:8px;margin-top:8px}.leaderboard-loading-skeleton{display:flex;flex-direction:column;gap:10px;width:100%;padding:10px 0}.row-skeleton{display:flex;align-items:center;gap:12px;background:#ffffff05;padding:16px;border-radius:12px}.skeleton-circle{width:24px;height:24px;border-radius:50%;background:#ffffff0d}.skeleton-bar{height:12px;border-radius:6px;background:#ffffff0d}.animate-pulse-once{animation:pulseOnce .6s ease-out}@keyframes pulseOnce{0%{box-shadow:0 0 #50b4ff00}50%{box-shadow:0 0 16px #50b4ff80}to{box-shadow:0 0 #50b4ff00}}.animate-expand{animation:slideDown .25s cubic-bezier(.16,1,.3,1);transform-origin:top}@keyframes slideDown{0%{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}}@media (prefers-reduced-motion: reduce){.leaderboard-row-container,.your-row-summary-sticky,.animate-expand,.empty-state-icon.animate-pulse,.animate-pulse-once{animation:none!important;transition:none!important;transform:none!important}}
