:root{--bg:#f4f1ea;--card-bg:#fff;--card-border:#e7e2d8;--text:#1f1b16;--text-muted:#5c554a;--text-faint:#8a8272;--accent:#e8590c;--accent-2:#f2994a;--font-body:"Inter", system-ui, "Segoe UI", Roboto, sans-serif;--font-heading:"Fredoka", var(--font-body);font:18px/145% var(--font-body);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#15141a;--card-bg:#1e1c24;--card-border:#322f3b;--text:#f3f1ec;--text-muted:#b3aca0;--text-faint:#85806f;--accent:#ff8a3d;--accent-2:#ffb066}}*{box-sizing:border-box}body{margin:0}body:before{content:"";opacity:.035;filter:grayscale();pointer-events:none;z-index:-1;background-image:url(/favicon.png);background-repeat:repeat;background-size:140px 140px;position:fixed;inset:-100%;transform:rotate(-45deg)}#root{min-height:100svh}.page{box-sizing:border-box;max-width:1200px;min-height:100vh;margin:0 auto;padding:2rem 1.5rem}.fab-tooltip-wrap{z-index:150;position:fixed;right:1rem}.fab-feedback-wrap{bottom:1rem}.fab-share-wrap{z-index:160;bottom:4.1rem}.fab-stats-wrap{bottom:7.2rem}.fab-tooltip{z-index:50;background:var(--card-bg);border:1px solid var(--card-border);width:max-content;max-width:220px;color:var(--text-muted);text-align:left;opacity:0;visibility:hidden;pointer-events:none;border-radius:8px;padding:.5rem .75rem;font-size:.75rem;line-height:1.4;transition:opacity .1s;position:absolute;top:50%;right:calc(100% + .6rem);transform:translateY(-50%);box-shadow:0 12px 30px -10px #00000059}.fab-tooltip-wrap:hover .fab-tooltip{opacity:1;visibility:visible}.feedback-btn{border:1px solid var(--card-border);background:var(--card-bg);width:2.5rem;height:2.5rem;color:var(--text-muted);cursor:pointer;filter:grayscale();border-radius:999px;justify-content:center;align-items:center;font-size:1.2rem;line-height:1;transition:filter .15s,border-color .15s,color .15s;animation:3s ease-in-out feedback-pulse;display:flex;box-shadow:0 8px 20px -8px #0000004d}@keyframes feedback-pulse{0%,to{transform:scale(1)}16.67%,50%,83.33%{transform:scale(1.15)}33.33%,66.67%{transform:scale(1)}}.feedback-btn:hover{border-color:var(--accent);color:var(--accent);filter:grayscale(.4)}.fab-icon{width:1.3rem;height:1.3rem}.header{text-align:center;margin-bottom:1.5rem}.lang-switcher{flex-wrap:wrap;justify-content:center;gap:.35rem;margin-bottom:1rem;display:flex}.lang-btn{border:1px solid var(--card-border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:999px;padding:.3rem .7rem;font-size:.8rem;font-weight:600;transition:background .15s,color .15s,border-color .15s}.lang-btn:hover{border-color:var(--accent);color:var(--accent)}.lang-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.header h1{font-family:var(--font-heading);justify-content:center;align-items:center;gap:.5rem;margin:0 0 .4rem;font-size:2.25rem;font-weight:600;display:flex}.logo{width:2.25rem;height:2.25rem}.maintenance-card{text-align:center;background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;max-width:480px;margin:3rem auto 0;padding:2rem 1.5rem}.maintenance-title{font-family:var(--font-heading);margin:0 0 .75rem;font-size:1.4rem;font-weight:600}.maintenance-message{color:var(--text-muted);margin:0}.logo-wrap{display:inline-block;position:relative}.logo-tooltip{z-index:50;background:var(--card-bg);border:1px solid var(--card-border);width:max-content;max-width:220px;color:var(--text-faint);pointer-events:none;border-radius:8px;padding:.5rem .75rem;font-size:.75rem;font-style:italic;animation:.2s ease-out milestone-in;position:absolute;top:calc(100% + .5rem);left:50%;transform:translate(-50%);box-shadow:0 12px 30px -10px #00000059}.tagline{color:var(--text-muted);margin:0}.streak-badge{color:var(--text-muted);margin:.5rem 0 0;font-size:.85rem;font-weight:600}.spotlight-banner{color:var(--text);background:#f5c51826;border:1px solid #f5c518;border-radius:999px;margin:.75rem auto 0;padding:.4rem .9rem;font-size:.85rem;font-weight:600;display:inline-block}.global-goal{text-align:center;max-width:360px;margin:.9rem auto 0}.share-fab-btn{border:1px solid var(--card-border);background:var(--card-bg);width:2.5rem;height:2.5rem;color:var(--text-muted);cursor:pointer;filter:grayscale();border-radius:999px;justify-content:center;align-items:center;font-size:1.2rem;line-height:1;transition:filter .15s,border-color .15s,color .15s;display:flex;box-shadow:0 8px 20px -8px #0000004d}.share-fab-btn:hover,.share-fab-btn.active{border-color:var(--accent);color:var(--accent);filter:grayscale(.4)}.share-pill-panel{flex-direction:column;gap:.5rem;width:11rem;display:flex;position:absolute;bottom:calc(100% + .6rem);right:0}.share-pill-btn{color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:999px;align-items:center;gap:.5rem;padding:.55rem 1rem;font-size:.85rem;font-weight:700;transition:filter .15s;display:flex;box-shadow:0 8px 20px -8px #0000004d}.share-pill-btn:hover{filter:brightness(.92)}.share-pill-icon{flex-shrink:0;width:1.1rem;height:1.1rem}.share-pill-facebook{background:#1877f2}.share-pill-x{background:#000}.share-pill-copy{background:var(--card-bg);color:var(--text);border:1px solid var(--card-border)}.share-pill-copy:hover{filter:none;border-color:var(--accent);color:var(--accent)}.stats-fab-btn{border:1px solid var(--card-border);background:var(--card-bg);width:2.5rem;height:2.5rem;color:var(--text-muted);cursor:pointer;filter:grayscale();border-radius:999px;justify-content:center;align-items:center;font-size:1.2rem;line-height:1;transition:filter .15s,border-color .15s,color .15s;display:flex;box-shadow:0 8px 20px -8px #0000004d}.stats-fab-btn:hover{border-color:var(--accent);color:var(--accent);filter:grayscale(.4)}.global-goal-title{color:var(--text);margin:0 0 .35rem;font-size:.85rem;font-weight:600}.global-goal-bar{background:var(--card-border);border-radius:999px;width:100%;height:8px;overflow:hidden}.global-goal-fill{background:linear-gradient(90deg, var(--accent), #f5c518);height:100%;transition:width .4s}.global-goal-progress{color:var(--text-faint);margin:.3rem 0 0;font-size:.75rem}.underdog-banner{color:var(--text);background:#38a1691f;border:1px solid #38a169;border-radius:999px;margin:.75rem auto 0;padding:.4rem .9rem;font-size:.85rem;font-weight:600;display:inline-block}.spotlight-banner+.underdog-banner{margin-left:.6rem}.duel-banner{background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;flex-direction:column;gap:.5rem;padding:1.25rem;display:flex}.duel-title{font-family:var(--font-heading);margin:0;font-size:1rem;font-weight:600}.duel-names{color:var(--text);margin:0;font-size:.9rem;font-weight:600}.duel-bar{background:var(--accent-2);border-radius:999px;width:100%;height:6px;overflow:hidden}.duel-bar-fill{background:var(--accent);height:100%;transition:width .4s}.duel-score{color:var(--text-faint);margin:0;font-size:.75rem}.duel-countdown{color:var(--text-faint);font-variant-numeric:tabular-nums;margin:-.35rem 0 0;font-size:.75rem}.duel-wins{color:var(--text-faint);margin-left:.15rem;font-size:.75rem}.milestone-toast{z-index:250;background:var(--card-bg);border:1px solid #f5c518;border-radius:999px;padding:.5rem 1.1rem;font-size:.9rem;font-weight:600;animation:.3s ease-out milestone-in;position:fixed;top:1rem;left:50%;transform:translate(-50%);box-shadow:0 12px 30px -10px #00000059}@keyframes milestone-in{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}.cultural-overlay-toast{z-index:250;background:var(--card-bg);border:1px solid #2f6fed;border-radius:999px;padding:.5rem 1.1rem;font-size:.9rem;font-weight:600;animation:.3s ease-out milestone-in;position:fixed;top:4rem;left:50%;transform:translate(-50%);box-shadow:0 12px 30px -10px #00000059}.badge-toast{z-index:250;background:var(--card-bg);border:1px solid var(--accent);border-radius:999px;padding:.5rem 1.1rem;font-size:.9rem;font-weight:600;animation:.3s ease-out milestone-in;position:fixed;top:1rem;left:50%;transform:translate(-50%);box-shadow:0 12px 30px -10px #00000059}.badges-shelf{background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;padding:1.25rem}.badges-shelf h3{font-family:var(--font-heading);margin:0 0 .75rem;font-size:1rem;font-weight:600}.badges-grid{flex-wrap:wrap;gap:.5rem;display:flex}.badge-chip{background:var(--accent-2);border:1px solid var(--card-border);color:#fff;cursor:default;border-radius:999px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:flex}.badge-icon{width:1.35rem;height:1.35rem}.badge-chip.locked{filter:grayscale();opacity:.35}.activity-feed{background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;padding:1.25rem}.activity-feed h3{font-family:var(--font-heading);margin:0 0 .75rem;font-size:1rem;font-weight:600}.activity-feed ul{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.activity-feed li{justify-content:space-between;font-size:.85rem;display:flex}.activity-amount{color:var(--accent);font-weight:600}.activity-feed .empty{color:var(--text-faint);justify-content:center}.spotlight-name-btn{font:inherit;color:var(--text);cursor:pointer;background:0 0;border:none;padding:0;font-weight:700}.spotlight-name-btn:hover{color:var(--accent)}.help-toggle{color:var(--accent);font-size:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.modal-backdrop{z-index:200;background:#0000008c;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.help-card{background:var(--card-bg);border:1px solid var(--card-border);text-align:left;border-radius:12px;width:100%;max-width:480px;max-height:100%;padding:1.1rem 3.25rem 1.1rem 1.25rem;position:relative;overflow-y:auto;box-shadow:0 30px 80px -20px #00000080}.help-card ul{color:var(--text-muted);margin:0;padding-left:1.1rem;font-size:.9rem;line-height:1.5}.recap-title{font-family:var(--font-heading);margin:0 0 .75rem;font-size:1.1rem;font-weight:600}.help-card li{margin-bottom:.6rem}.help-card li:last-child{margin-bottom:0}.stats-list{padding-left:0;list-style:none}.stats-list li{align-items:center;gap:.5rem;display:flex}.stats-line-icon{width:1.1rem;height:1.1rem;color:var(--accent);flex-shrink:0}.help-card strong{color:var(--text)}.help-close{border:1px solid var(--card-border);background:var(--card-bg);width:2.25rem;height:2.25rem;color:var(--text-muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;display:flex;position:absolute;top:.75rem;right:.75rem}.tool-icon{width:1.1rem;height:1.1rem}.help-close:hover{color:var(--accent);border-color:var(--accent)}.country-fix-desc{color:var(--text-muted);margin:0 0 .85rem;font-size:.9rem}.country-fix-select{width:100%;font:inherit;border:1px solid var(--card-border);background:var(--bg);color:var(--text);border-radius:8px;margin-bottom:.75rem;padding:.5rem .6rem}.country-fix-select:focus{outline:2px solid var(--accent);outline-offset:1px}.passport-grid{border-top:1px solid var(--card-border);flex-wrap:wrap;gap:.4rem;margin-top:.9rem;padding-top:.9rem;display:flex}.passport-flag{background:var(--accent-2);border:1px solid var(--card-border);cursor:default;border-radius:8px;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;font-size:1.2rem;display:flex}.passport-empty{color:var(--text-faint);margin:0;font-size:.85rem}.layout{grid-template-columns:1fr 320px;align-items:start;gap:1.5rem;display:grid}@media (width<=860px){.layout{grid-template-columns:1fr}}.panel-row{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:1.5rem;display:grid}@media (width<=860px){.panel-row{grid-template-columns:1fr}}.map-wrap{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;padding:.5rem;position:relative;overflow:hidden}.map-wrap.maximized{z-index:101;position:fixed;inset:2rem;overflow:auto;box-shadow:0 30px 80px -20px #00000080}.map-backdrop{z-index:100;background:#0000008c;position:fixed;inset:0}.map{width:100%;height:auto}.map-wrap.maximized .map{width:2400px;max-width:none;height:auto;display:block}.maximize-btn{z-index:1;border:1px solid var(--card-border);background:var(--card-bg);width:2.25rem;height:2.25rem;color:var(--text-muted);cursor:pointer;filter:grayscale();border-radius:8px;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;transition:filter .15s,color .15s,border-color .15s;display:flex;position:absolute;top:.75rem;right:.75rem}.maximize-btn:hover{color:var(--accent);border-color:var(--accent);filter:grayscale(.4)}.sound-toggle-btn{z-index:1;border:1px solid var(--card-border);background:var(--card-bg);width:2.25rem;height:2.25rem;color:var(--text-muted);cursor:pointer;filter:grayscale();border-radius:8px;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;transition:filter .15s,color .15s,border-color .15s;display:flex;position:absolute;top:.75rem;right:3.5rem}.sound-toggle-btn:hover{color:var(--accent);border-color:var(--accent);filter:grayscale(.4)}.map-wrap.maximized .sound-toggle-btn{position:fixed;top:2.75rem;right:5.5rem}.map-tool-tooltip-wrap{z-index:1;position:absolute;top:.75rem;right:6.25rem}.map-wrap.maximized .map-tool-tooltip-wrap{position:fixed;top:2.75rem;right:8.25rem}.my-country-btn{border:1px solid var(--card-border);background:var(--card-bg);width:2.25rem;height:2.25rem;color:var(--text-muted);cursor:pointer;filter:grayscale();border-radius:8px;justify-content:center;align-items:center;font-size:1.1rem;line-height:1;transition:filter .15s,color .15s,border-color .15s;display:flex}.my-country-btn:hover{color:var(--accent);border-color:var(--accent);filter:grayscale(.4)}.map-tool-tooltip{z-index:50;background:var(--card-bg);border:1px solid var(--card-border);width:max-content;max-width:220px;color:var(--text-muted);text-align:left;opacity:0;visibility:hidden;pointer-events:none;border-radius:8px;padding:.5rem .75rem;font-size:.75rem;line-height:1.4;transition:opacity .1s;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 12px 30px -10px #00000059}.map-tool-tooltip-wrap:hover .map-tool-tooltip{opacity:1;visibility:visible}.hover-tag{background:var(--card-bg);border:1px solid var(--card-border);pointer-events:none;border-radius:8px;padding:.35rem .7rem;font-size:.85rem;position:absolute;top:.75rem;left:.75rem}.map-wrap.maximized .maximize-btn{position:fixed;top:2.75rem;right:2.75rem}.map-wrap.maximized .hover-tag{position:fixed;top:2.75rem;left:2.75rem}.maximized-selected{z-index:5;width:280px;max-width:calc(100vw - 5.5rem);position:fixed;bottom:2.75rem;left:2.75rem}.maximized-selected .selected-card{box-shadow:0 20px 50px -15px #0006}.flag-pole-flag{animation:1.8s ease-in-out infinite flag-wave}@keyframes flag-wave{0%,to{transform:skewY(0)scaleX(1)}50%{transform:skewY(-8deg)scaleX(.97)}}.flag-pole-shadow{animation:1.8s ease-in-out infinite pole-shadow-wave}@keyframes pole-shadow-wave{0%,to{opacity:.25;transform:scaleX(1)}50%{opacity:.2;transform:scaleX(.92)}}.floating-reaction{animation:1.8s ease-out forwards reaction-float}@keyframes reaction-float{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}.reaction-strip{gap:.4rem;margin:.75rem 0 0;display:flex}.reaction-btn{border:1px solid var(--card-border);background:var(--card-bg);cursor:pointer;border-radius:999px;width:2.25rem;height:2.25rem;font-size:1.1rem;line-height:1}.reaction-btn:hover{border-color:var(--accent)}@keyframes selected-grow{0%,to{transform:scale(1)}50%{transform:scale(var(--pulse-max,1.18))}}.panel{flex-direction:column;gap:1rem;display:flex}.banner{background:var(--card-bg);border:1px solid var(--card-border);color:var(--text-muted);border-radius:12px;padding:.85rem 1rem;font-size:.9rem}.selected-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;padding:1.25rem}.selected-card h2{font-family:var(--font-heading);margin:0 0 .3rem;font-size:1.3rem;font-weight:600}.selected-card-empty h2{color:var(--text-muted)}.selected-card-empty-hint{color:var(--text-faint);margin:0 0 1rem;font-size:.85rem}.boost-btn:disabled,.alliance-btn:disabled,.reaction-btn:disabled{opacity:.5;cursor:not-allowed}.boost-btn:disabled:hover{background:var(--accent)}.alliance-btn:disabled:hover{background:0 0}.reaction-btn:disabled:hover{border-color:var(--card-border)}.count{font-family:var(--font-heading);color:var(--accent);margin:0;font-size:1.6rem;font-weight:700}.remaining{color:var(--text-faint);margin:.2rem 0 1rem;font-size:.8rem}.boost-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;padding:.75rem 1rem;font-size:.95rem;font-weight:700}.boost-btn:hover{background:var(--accent-2)}.boost-note{color:var(--text-faint);margin:.6rem 0 0;font-size:.75rem}.boost-why{color:var(--text-faint);margin:.4rem 0 0;font-size:.75rem;font-style:italic}.boost-puzzle-expr{text-align:center;margin:0 0 .85rem;font-size:1.4rem;font-weight:700}.boost-puzzle-wrong{color:var(--text-muted);text-align:center;margin:-.4rem 0 .75rem;font-size:.85rem}.boost-puzzle-options{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.boost-puzzle-option{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:.75rem 1rem;font-size:1rem;font-weight:700}.boost-puzzle-option:hover{background:var(--accent-2)}.boost-puzzle-option:disabled{background:var(--card-border);color:var(--text-faint);cursor:not-allowed}.alliance-btn{color:#2f6fed;cursor:pointer;background:0 0;border:1px solid #2f6fed;border-radius:10px;justify-content:center;align-items:center;gap:.4rem;width:100%;margin-top:.6rem;padding:.65rem 1rem;font-size:.9rem;font-weight:700;display:inline-flex}.alliance-btn-icon{flex-shrink:0;width:1.05rem;height:1.05rem}.alliance-btn:hover{background:#2f6fed1a}.alliance-remaining{color:var(--text-faint);margin:.4rem 0 0;font-size:.75rem}.cultural-overlay-note{color:#2f6fed;margin:.2rem 0 1rem;font-size:.75rem;font-style:italic}.leaderboard{background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;padding:1.25rem}.leaderboard h3{font-family:var(--font-heading);margin:0 0 .75rem;font-size:1rem;font-weight:600}.leaderboard ol{flex-direction:column;gap:.1rem;margin:0;padding:0;list-style:none;display:flex}.leaderboard li{font-size:.9rem}.lb-entry{width:100%;font:inherit;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:space-between;margin:0 -.4rem;padding:.2rem .4rem;display:flex}.lb-entry:hover{background:var(--bg)}.lb-count{color:var(--accent);font-weight:700}.lb-rank-up,.lb-rank-down{margin-left:.3rem;font-size:.7rem;font-weight:700}.lb-rank-up{color:#2f9e44}.lb-rank-down{color:var(--text-faint)}.leaderboard .empty{color:var(--text-faint);justify-content:center}.page-footer{text-align:center;color:var(--text-faint);margin-top:2.5rem;font-size:.78rem}.footer-support{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;max-width:720px;margin:0 auto .75rem;padding:1.5rem 2.25rem 1.2rem;box-shadow:0 12px 24px -18px #1f1b16b3}.footer-support h2{color:var(--text);font-family:var(--font-heading);margin:0 0 1rem;font-size:1.8rem;line-height:1.15}.footer-support-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.footer-support p{color:var(--text-muted);margin:1rem 0 0;font-size:.9rem;line-height:1.35}.footer-support-btn{letter-spacing:.015em;color:#fff;text-transform:uppercase;border:0;border-radius:10px;justify-content:center;align-items:center;gap:.4rem;min-height:3.25rem;padding:.65rem 1rem;font-size:.9rem;font-weight:800;line-height:1.2;text-decoration:none;transition:transform .15s,box-shadow .15s,filter .15s;display:flex;box-shadow:0 5px 9px -6px #000000bf}.footer-support-btn-kofi{background:#168c9d}.footer-support-btn-monobank{background:#000}.footer-support-btn:hover{color:#fff;filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 8px 14px -7px #000c}.footer-support-icon{flex:none;width:1.3rem;height:1.3rem}.footer-cookie-note{margin:0 0 .5rem}.footer-copyright{font-size:.78rem}@media (width<=560px){.footer-support{padding:1.3rem 1rem 1rem}.footer-support h2{font-size:1.5rem}.footer-support-actions{grid-template-columns:1fr;gap:.7rem}}.contact-form{text-align:left;flex-direction:column;gap:.85rem;display:flex}.contact-form h3{margin:0;font-size:1.1rem}.contact-form label{color:var(--text-muted);flex-direction:column;gap:.3rem;font-size:.85rem;display:flex}.contact-form input,.contact-form textarea{font:inherit;border:1px solid var(--card-border);background:var(--bg);color:var(--text);resize:vertical;border-radius:8px;padding:.5rem .6rem}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.contact-form .boost-btn:disabled{opacity:.6;cursor:not-allowed}.contact-error{color:var(--accent);margin:0;font-size:.85rem}.contact-sent{margin:0;padding:.5rem 0;font-size:1rem}.game-launch-btn{border:1px solid var(--accent);background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;width:100%;font-size:1rem;font-weight:700;font-family:var(--font-heading);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.85rem 1rem;transition:transform .12s,filter .12s;display:flex;box-shadow:0 10px 24px -10px #00000073}.game-launch-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.game-launch-beta{letter-spacing:.06em;background:#ffffff3d;border-radius:4px;padding:.1rem .4rem;font-size:.65rem;font-weight:800;line-height:1.6}.game-backdrop{z-index:300}.game-card{background:var(--card-bg);border:1px solid var(--card-border);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:880px;max-height:100%;padding:1.25rem 1.5rem 1.5rem;display:flex;position:relative;overflow-y:auto;box-shadow:0 30px 80px -20px #0000008c}@media (width<=640px){.game-card{gap:.75rem;padding:1rem .85rem 1.25rem}.game-countdown-num{font-size:3rem}}.game-head{text-align:center}.game-title{font-family:var(--font-heading);margin:0;font-size:1.15rem}.game-subtitle{color:var(--text-muted);margin:.25rem 0 0;font-size:.85rem}.game-idle{flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem 0 .5rem;display:flex}.game-play-btn{border:1px solid var(--accent);background:var(--accent);color:#fff;font-size:1.05rem;font-weight:700;font-family:var(--font-heading);cursor:pointer;border-radius:999px;padding:.9rem 2.2rem;transition:filter .12s}.game-play-btn:hover:not(:disabled){filter:brightness(1.08)}.game-play-btn:disabled{opacity:.55;cursor:not-allowed}.game-hint{color:var(--text-faint);max-width:360px;margin:0;font-size:.8rem}.game-error{color:#e5484d;margin:.6rem 0 0;font-size:.85rem}.game-waiting{flex-direction:column;align-items:center;gap:1rem;padding:2rem 0;display:flex}.game-spinner{border:3px solid var(--card-border);border-top-color:var(--accent);border-radius:50%;width:2.5rem;height:2.5rem;animation:.9s linear infinite game-spin}@keyframes game-spin{to{transform:rotate(1turn)}}.game-waiting-text{color:var(--text-muted);margin:0;font-size:.9rem}.game-wait-bar{background:var(--card-border);border-radius:2px;width:180px;max-width:100%;height:4px;overflow:hidden}.game-wait-fill{background:var(--accent);height:100%;transition:width .25s linear}.game-wait-left{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:.8rem}.game-cancel-btn{border:1px solid var(--card-border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:999px;padding:.5rem 1.4rem;font-size:.85rem;font-weight:600;transition:color .12s,border-color .12s}.game-cancel-btn:hover{color:var(--text);border-color:var(--accent)}.game-scores{justify-content:space-between;align-items:center;gap:1rem;width:100%;display:flex}.game-score-side{flex-direction:column;align-items:center;gap:.15rem;display:flex}.game-name{color:var(--text);font-size:.9rem;font-weight:600}.game-score-num{font-variant-numeric:tabular-nums;color:var(--accent);font-size:1.6rem;font-weight:800}.game-score-vs{color:var(--text-faint);font-size:.85rem;font-weight:700}.game-panel{aspect-ratio:8/5;border:1px solid var(--card-border);touch-action:manipulation;cursor:crosshair;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 50% 40%,#1a2a3a,#0d1520);border-radius:12px;width:100%;max-width:800px;position:relative;overflow:hidden;container-type:size}.game-countdown-overlay{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.game-countdown-num{color:var(--accent);text-shadow:0 0 30px #ffffff40;font-size:4.5rem;font-weight:900}.game-target{width:0;height:0;position:absolute}.game-ring,.game-target-core{width:calc(var(--game-diameter) * 1cqw);height:calc(var(--game-diameter) * 1cqw);box-sizing:border-box;border-radius:50%;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.game-ring{border:2px solid #ffffff8c;transition:width .2s linear,height .2s linear}.game-target-core{background:var(--accent);box-shadow:0 0 12px var(--accent)}.game-gain-pop{color:#38a169;text-shadow:0 0 10px #0009;pointer-events:none;font-size:1.6rem;font-weight:800;animation:.5s forwards gain-pop;position:absolute;top:12%;left:50%;transform:translate(-50%)}@keyframes gain-pop{0%{opacity:0;transform:translate(-50%,10px)}20%{opacity:1}to{opacity:0;transform:translate(-50%,-24px)}}.game-gain-miss{color:#e5484d}.game-clock{background:#ffffff1f;width:100%;height:4px;position:absolute;top:0;left:0}.game-clock-fill{background:var(--accent);height:100%;transition:width .2s linear}.game-result{flex-direction:column;align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.game-result-title{font-size:1.5rem;font-weight:800;font-family:var(--font-heading);margin:0}.game-recent{border-top:1px solid var(--card-border);width:100%;max-width:420px;margin-top:.75rem;padding-top:.75rem}.game-recent-title{font-family:var(--font-heading);color:var(--text-muted);margin:0 0 .5rem;font-size:.9rem}.game-recent-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.game-recent-list li{color:var(--text-muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;font-size:.85rem;display:grid}.game-recent-list li>span:first-child{text-align:right}.game-recent-list li>span:last-child{text-align:left}.game-recent-score{font-variant-numeric:tabular-nums;color:var(--text);font-weight:700}.game-recent-winner{color:var(--text);font-weight:600}.duel-invite{z-index:250;background:var(--card-bg);border:1px solid var(--accent);border-radius:999px;align-items:center;gap:.75rem;max-width:calc(100vw - 2rem);padding:.5rem .6rem .5rem 1.1rem;animation:.3s ease-out milestone-in;display:flex;position:fixed;top:1rem;left:50%;transform:translate(-50%);box-shadow:0 12px 30px -10px #00000059}.duel-invite-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.9rem;font-weight:600;overflow:hidden}.duel-invite-accept{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border-radius:999px;flex-shrink:0;padding:.35rem 1rem;font-size:.85rem;font-weight:700;transition:filter .12s}.duel-invite-accept:hover{filter:brightness(1.08)}.duel-invite-dismiss{color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex-shrink:0;padding:.25rem;display:flex}.duel-invite-dismiss:hover{color:var(--text)}.game-invite-line{color:var(--accent);margin:0;font-size:.9rem;font-weight:600}.game-empty-text{color:var(--text-muted);margin:0;font-size:.95rem}
