@import"https://fonts.googleapis.com/css2?family=Lexend:wght@400;500;600;700;800;900&display=swap";.hearts-container{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;overflow:hidden;z-index:99999}.falling-heart{position:absolute;top:-10%;color:#f36;pointer-events:none;animation-name:fall-heart-anim;animation-timing-function:linear;animation-iteration-count:infinite;text-shadow:0 0 10px rgba(255,51,102,.5);-webkit-user-select:none;user-select:none}@keyframes fall-heart-anim{0%{transform:translateY(0) rotate(var(--r)) scale(.8);opacity:0}15%{opacity:1}85%{opacity:1}to{transform:translateY(115vh) rotate(calc(var(--r) + 90deg)) scale(1.2);opacity:0}}.falling-flower{position:absolute;top:-10%;pointer-events:none;animation-name:fall-heart-anim;animation-timing-function:linear;animation-iteration-count:infinite;text-shadow:0 0 10px rgba(255,105,180,.4);-webkit-user-select:none;user-select:none}.falling-star{position:absolute;top:-10%;pointer-events:none;animation-name:fall-heart-anim;animation-timing-function:linear;animation-iteration-count:infinite;text-shadow:0 0 15px rgba(255,215,0,.8);-webkit-user-select:none;user-select:none}.ekg-flyer{position:fixed;top:50%;left:-400px;transform:translateY(-50%);animation:fly-ekg 4.5s linear infinite;z-index:100000;pointer-events:none;filter:drop-shadow(0 0 15px rgba(255,105,180,.8))}@keyframes fly-ekg{0%{left:-400px;opacity:0}5%{opacity:1}95%{opacity:1}to{left:100vw;opacity:0}}:root{--cv2-overlay-bg: rgba(243, 244, 246, .85);--cv2-panel-bg: #ffffff;--cv2-panel-border: rgba(0, 0, 0, .05);--cv2-preview-bg: #eff2f6;--cv2-preview-border: transparent;--cv2-preview-text: #64748b;--cv2-preview-circle-bg: #ffffff;--cv2-preview-circle-border: transparent;--cv2-preview-circle-shadow: 0 10px 40px rgba(0, 0, 0, .08);--cv2-header-bg: #ffffff;--cv2-header-text: #0f172a;--cv2-content-bg: #ffffff;--cv2-close-btn-bg: #f1f5f9;--cv2-close-btn-color: #64748b;--cv2-section-title: #475569;--cv2-section-title-line: rgba(0, 0, 0, .1);--cv2-card-bg: #f3e8ff;--cv2-card-border: #d8b4fe;--cv2-card-hover: #faf5ff;--cv2-card-text: #1e293b;--cv2-card-active-bg: #e9d5ff;--cv2-slider-box-bg: rgba(241, 245, 249, .8);--cv2-slider-header: #475569;--cv2-slider-track: rgba(0, 0, 0, .1);--cv2-shadow-color: rgba(0, 0, 0, .1)}body.dark-mode{--cv2-overlay-bg: rgba(15, 23, 42, .85);--cv2-panel-bg: #1e293b;--cv2-panel-border: rgba(255, 255, 255, .1);--cv2-preview-bg: #0f172a;--cv2-preview-border: rgba(255, 255, 255, .08);--cv2-preview-text: #94a3b8;--cv2-preview-circle-bg: #1e293b;--cv2-preview-circle-border: rgba(255, 255, 255, .1);--cv2-preview-circle-shadow: 0 10px 40px rgba(0, 0, 0, .5);--cv2-header-bg: #1e293b;--cv2-header-text: #f8fafc;--cv2-content-bg: #1e293b;--cv2-close-btn-bg: rgba(255, 255, 255, .05);--cv2-close-btn-color: #cbd5e1;--cv2-section-title: #e2e8f0;--cv2-section-title-line: rgba(255, 255, 255, .1);--cv2-card-bg: rgba(255, 255, 255, .03);--cv2-card-border: rgba(255, 255, 255, .08);--cv2-card-hover: rgba(255, 255, 255, .08);--cv2-card-text: #cbd5e1;--cv2-card-active-bg: rgba(139, 92, 246, .15);--cv2-slider-box-bg: rgba(0, 0, 0, .2);--cv2-slider-header: #cbd5e1;--cv2-slider-track: rgba(255, 255, 255, .05);--cv2-shadow-color: rgba(0, 0, 0, .5)}.customizer-v2-overlay{position:fixed;inset:0;background:var(--cv2-overlay-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeInOverlay .4s ease-out}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.customizer-v2-panel{display:flex;width:95vw;max-width:1600px;height:90vh;max-height:1200px;background:var(--cv2-panel-bg);border:1px solid var(--cv2-panel-border);border-radius:24px;box-shadow:0 25px 80px var(--cv2-shadow-color);overflow:hidden;position:relative;transform-origin:center;animation:scaleUpPanel .4s cubic-bezier(.16,1,.3,1)}@keyframes scaleUpPanel{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.customizer-v2-preview{flex:0 0 380px;background:var(--cv2-preview-bg);border-right:1px solid var(--cv2-preview-border);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;position:relative;z-index:2}.v2-preview-badge{position:relative;text-transform:uppercase;letter-spacing:4px;font-size:.8rem;color:var(--cv2-preview-text);font-weight:800;margin-bottom:25px}.v2-preview-circle{width:200px;height:200px;border-radius:50%;background:var(--cv2-preview-circle-bg);border:1px solid var(--cv2-preview-circle-border);display:flex;align-items:center;justify-content:center;position:relative;margin-bottom:30px;box-shadow:var(--cv2-preview-circle-shadow)}.v2-preview-character{display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.v2-preview-emoji{font-size:100px;line-height:1}.v2-nav-btn{border:none;border-radius:12px;padding:14px 20px;color:#fff;font-weight:700;font-size:.95rem;letter-spacing:.5px;cursor:pointer;display:flex;align-items:center;justify-content:flex-start;gap:12px;transition:all .2s ease;width:100%}.blue-nav-btn{background:#4f46e5;box-shadow:0 4px 14px #4f46e54d}.green-nav-btn{background:#10b981;box-shadow:0 4px 14px #10b9814d}.orange-nav-btn{background:#d97706;box-shadow:0 4px 14px #d977064d}.v2-nav-btn:hover{transform:translateY(-2px);filter:brightness(1.1)}.v2-nav-btn:active{transform:translateY(1px)}.customizer-v2-content{flex:1;display:flex;flex-direction:column;background:var(--cv2-content-bg)}.v2-header{padding:24px 36px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--cv2-panel-border);background:var(--cv2-header-bg);z-index:10}.v2-header h3{margin:0;color:var(--cv2-header-text);font-size:1.4rem;font-weight:800;letter-spacing:.5px}.v2-close-btn{background:var(--cv2-close-btn-bg);border:none;color:var(--cv2-close-btn-color);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;cursor:pointer;transition:all .2s ease}.v2-close-btn:hover{background:#ef4444;color:#fff}.v2-tabs-container{display:flex;gap:8px;background:var(--cv2-slider-box-bg);padding:6px;border-radius:14px;align-self:flex-start}.v2-tab-btn{background:transparent;border:none;border-radius:10px;padding:10px 24px;font-size:.95rem;font-weight:700;color:var(--cv2-preview-text);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.v2-tab-btn:hover{color:var(--cv2-header-text);background:#00000008}body.dark-mode .v2-tab-btn:hover{background:#ffffff0d}.v2-tab-btn.active{background:var(--cv2-panel-bg);color:var(--cv2-header-text);box-shadow:0 2px 8px var(--cv2-shadow-color)}.v2-settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-top:16px}.v2-scroll-area{flex:1;padding:36px;overflow-y:auto;display:flex;flex-direction:column;gap:36px}.v2-scroll-area::-webkit-scrollbar{width:8px}.v2-scroll-area::-webkit-scrollbar-track{background:#0000000d}.v2-scroll-area::-webkit-scrollbar-thumb{background:#6464644d;border-radius:4px}.v2-section-title{color:var(--cv2-section-title);font-size:1.05rem;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:20px;display:flex;align-items:center;gap:12px}.v2-section-title:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--cv2-section-title-line),transparent)}.v2-emblem-categories{display:flex;flex-direction:column;gap:24px}.v2-emblem-group-title{color:var(--cv2-preview-text);font-size:.85rem;margin-bottom:10px;text-transform:lowercase;font-variant:small-caps;font-weight:600}.v2-grid-emojis{display:grid;grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:12px}.v2-emoji-btn{aspect-ratio:1;background:var(--cv2-card-bg);border:1px solid var(--cv2-card-border);border-radius:14px;font-size:1.8rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.v2-emoji-btn:hover{background:var(--cv2-card-hover);transform:translateY(-2px);border-color:var(--cv2-preview-border)}.v2-emoji-btn.active{background:#38bdf826;border-color:#38bdf8;box-shadow:0 0 15px #38bdf833;transform:scale(1.08)}.v2-emoji-btn.locked{opacity:.3;filter:grayscale(1);cursor:not-allowed}.v2-emoji-btn.locked:hover{transform:none;background:var(--cv2-card-bg)}.v2-grid-auras{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}.v2-aura-card{background:var(--cv2-card-bg);border:1px solid var(--cv2-card-border);border-radius:16px;padding:14px 16px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:all .2s ease;color:var(--cv2-card-text)}.v2-aura-card:hover{background:var(--cv2-card-hover);border-color:var(--cv2-preview-border)}.v2-aura-card.active{background:var(--cv2-card-active-bg);border-color:var(--cv2-card-border);color:var(--cv2-header-text);box-shadow:0 0 15px #d8b4fe4d}.v2-aura-card.locked{opacity:.4;cursor:not-allowed}.v2-aura-icon{font-size:1.4rem}.v2-aura-label{font-size:.85rem;font-weight:700;flex:1}.v2-lock-badge{position:absolute;bottom:6px;right:6px;font-size:.75rem;background:#0009;color:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center}.v2-slider-box{background:var(--cv2-slider-box-bg);border:1px solid var(--cv2-panel-border);border-radius:16px;padding:20px 24px;display:flex;flex-direction:column;gap:16px}.v2-slider-header{display:flex;justify-content:space-between;color:var(--cv2-slider-header);font-size:.9rem;font-weight:700}.v2-slider-track{width:100%;height:8px;background:var(--cv2-slider-track);border-radius:4px;-webkit-appearance:none;appearance:none;outline:none}.v2-slider-track::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:#38bdf8;box-shadow:0 0 12px #38bdf880;cursor:pointer;transition:transform .1s}.v2-slider-track::-webkit-slider-thumb:hover{transform:scale(1.25)}.v2-pulse-toggle{flex:1;background:var(--cv2-slider-box-bg);border:1px solid var(--cv2-panel-border);border-radius:16px;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:all .3s}.v2-pulse-toggle.active{background:var(--cv2-card-active-bg);border-color:#38bdf8}.v2-pulse-text{display:flex;flex-direction:column;gap:4px}.v2-pulse-title{color:var(--cv2-header-text);font-size:.9rem;font-weight:700}.v2-pulse-desc{color:var(--cv2-section-title);font-size:.75rem}.v2-switch{width:44px;height:24px;border-radius:12px;background:var(--cv2-slider-track);position:relative;transition:all .3s}.v2-pulse-toggle.active .v2-switch,.v2-aura-card.active .v2-switch{background:#a855f7;box-shadow:0 0 10px #a855f766}.v2-switch-thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 4px #0003}.v2-pulse-toggle.active .v2-switch-thumb,.v2-aura-card.active .v2-switch-thumb{left:23px;box-shadow:0 2px 6px #0000004d}@media(max-width:900px){.customizer-v2-panel{flex-direction:column;height:90vh}.customizer-v2-preview{flex:0 0 280px;padding:20px}.v2-preview-circle{width:160px;height:160px;margin-bottom:20px}.v2-preview-emoji{font-size:80px}}.v2-diamond-balance{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#38bdf826,#8b5cf626);border:1px solid rgba(56,189,248,.3);border-radius:16px;padding:12px 24px;margin-bottom:20px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);position:relative}.v2-diamond-info-icon{position:absolute;top:-8px;right:-8px;width:22px;height:22px;border-radius:50%;background:#38bdf8;color:#fff;font-size:.85rem;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:help;box-shadow:0 2px 8px #38bdf866}.v2-diamond-tooltip{position:absolute;top:-5px;left:calc(100% + 15px);width:200px;background:var(--cv2-panel-bg);border:1px solid var(--cv2-panel-border);box-shadow:0 10px 30px var(--cv2-shadow-color);padding:12px;border-radius:12px;font-size:.75rem;color:var(--cv2-preview-text);line-height:1.4;opacity:0;visibility:hidden;transform:translate(-10px);transition:all .2s ease;z-index:10;pointer-events:none;text-align:left}.v2-diamond-info-icon:hover .v2-diamond-tooltip{opacity:1;visibility:visible;transform:translate(0)}.v2-control-info-icon{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:var(--cv2-section-title);color:var(--cv2-panel-bg);font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:help;box-shadow:0 2px 4px #0003;z-index:5}.v2-control-tooltip{position:absolute;top:-5px;left:calc(100% + 15px);width:200px;background:var(--cv2-panel-bg);border:1px solid var(--cv2-panel-border);box-shadow:0 10px 30px var(--cv2-shadow-color);padding:12px;border-radius:12px;font-size:.75rem;color:var(--cv2-preview-text);line-height:1.4;opacity:0;visibility:hidden;transform:translate(-10px);transition:all .2s ease;z-index:10;pointer-events:none;text-align:left}.v2-control-info-icon:hover .v2-control-tooltip{opacity:1;visibility:visible;transform:translate(0)}.v2-diamond-icon{font-size:1.5rem;animation:diamondPulse 2s ease-in-out infinite}@keyframes diamondPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.v2-diamond-count{font-size:1.4rem;font-weight:900;background:linear-gradient(135deg,#38bdf8,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.v2-diamond-label{font-size:.8rem;color:var(--cv2-preview-text);font-weight:600;text-transform:uppercase;letter-spacing:1px}.v2-price-badge{display:flex;align-items:center;gap:3px;background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#000;font-size:.7rem;font-weight:900;border-radius:10px;padding:3px 8px;margin-left:auto;box-shadow:0 2px 8px #fbbf2466;white-space:nowrap}.v2-aura-card.locked.purchasable{opacity:.75;cursor:pointer;border:1px dashed rgba(251,191,36,.5);background:#fbbf240d}.v2-aura-card.locked.purchasable:hover{opacity:1;border-color:#fbbf24;background:#fbbf241f;transform:translateY(-2px);box-shadow:0 6px 20px #fbbf2433}.v2-emoji-btn.locked.purchasable{opacity:.5;filter:grayscale(.5);cursor:pointer;border:1px dashed rgba(251,191,36,.4)}.v2-emoji-btn.locked.purchasable:hover{opacity:.85;filter:grayscale(0);transform:translateY(-2px) scale(1.05);border-color:#fbbf24;background:#fbbf241a;box-shadow:0 4px 12px #fbbf2440}.v2-emoji-lock-icon{position:absolute;bottom:-2px;right:-2px;font-size:.65rem;z-index:2;background:#00000080;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center}.v2-emoji-price-hint{font-size:.7rem;font-weight:600;color:#fbbf24;text-transform:none;letter-spacing:0;margin-left:8px}.v2-purchase-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:10001;animation:fadeIn .2s ease}.v2-purchase-modal{background:linear-gradient(145deg,#1e293bf2,#0f172afa);border:1px solid rgba(255,255,255,.15);border-radius:28px;padding:40px;max-width:380px;width:90%;text-align:center;box-shadow:0 30px 80px #00000080,0 0 60px #8b5cf626;animation:scaleUpPanel .3s cubic-bezier(.16,1,.3,1)}.v2-purchase-item-preview{font-size:3.5rem;margin-bottom:16px;filter:drop-shadow(0 4px 12px rgba(0,0,0,.3))}.v2-purchase-title{color:#e2e8f0;font-size:1.2rem;font-weight:700;margin:0 0 20px}.v2-purchase-cost{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:8px}.v2-purchase-diamond{font-size:2rem;animation:diamondPulse 1.5s ease-in-out infinite}.v2-purchase-amount{font-size:2.5rem;font-weight:900;background:linear-gradient(135deg,#38bdf8,#a78bfa,#f472b6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.v2-purchase-balance{color:#94a3b8;font-size:.9rem;margin-bottom:24px;font-weight:600}.v2-purchase-insufficient{color:#ef4444;font-weight:700}.v2-purchase-actions{display:flex;flex-direction:column;gap:10px}.v2-purchase-buy-btn{background:linear-gradient(135deg,#8b5cf6,#6366f1,#3b82f6);background-size:200% 200%;animation:gradientShift 3s ease infinite;border:none;border-radius:16px;padding:16px 32px;color:#fff;font-weight:800;font-size:1.1rem;letter-spacing:1px;cursor:pointer;box-shadow:0 10px 30px #6366f166,inset 0 2px 4px #fff3;transition:all .3s ease}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.v2-purchase-buy-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 15px 40px #6366f180,inset 0 2px 4px #ffffff4d}.v2-purchase-buy-btn:active:not(:disabled){transform:translateY(1px)}.v2-purchase-buy-btn:disabled{opacity:.4;cursor:not-allowed;animation:none;background:#475569}.v2-purchase-cancel-btn{background:transparent;border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:12px 24px;color:#94a3b8;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s ease}.v2-purchase-cancel-btn:hover{background:#ffffff0d;color:#e2e8f0;border-color:#fff3}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}:root{--surface-page: #eceff4;--surface-raised: #ffffff;--surface-sunken: #e2e7ef;--surface-hover: #f1f4f9;--border: #cdd4e0;--border-strong: #a8b2c4;--text-strong: #15202b;--text: #2b3542;--text-muted: #586374;--text-on-accent: #ffffff;--brand: #2563c9;--brand-strong: #1b4ea3;--brand-bg: #e7eefb;--accent: #d9480f;--accent-strong: #b23708;--accent-bg: #fdeae0;--success: #1f8a4c;--success-bg: #e3f5ea;--success-text: #0f5630;--error: #d32f2f;--error-bg: #fdeaea;--error-text: #8e1c1c;--warning: #b9770a;--warning-bg: #fdf3e0;--warning-text: #6f4905;--info: #1c6fc9;--info-bg: #e7f1fc;--info-text: #114a86;--focus-ring-color: #1a73e8;--focus-ring: 0 0 0 3px rgba(26, 115, 232, .55);--cat-orange: #e69f00;--cat-sky: #56b4e9;--cat-green: #009e73;--cat-yellow: #efcd00;--cat-blue: #0072b2;--cat-red: #d55e00;--cat-purple: #cc79a7;--cat-gray: #5b6470;--font-sans: "Lexend", system-ui, sans-serif;--font-mono: "Lexend", ui-monospace, monospace;--fs-xs: .8125rem;--fs-sm: .9375rem;--fs-base: 1.125rem;--fs-md: 1.25rem;--fs-lg: 1.5rem;--fs-xl: 2rem;--fs-2xl: 2.75rem;--fs-3xl: 3.5rem;--fw-regular: 500;--fw-medium: 600;--fw-bold: 700;--fw-black: 800;--lh-tight: 1.2;--lh: 1.55;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-8: 3rem;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-xl: 28px;--radius-pill: 999px;--shadow-sm: 0 1px 3px rgba(20, 30, 50, .08), 0 1px 2px rgba(20, 30, 50, .06);--shadow-md: 0 6px 18px rgba(20, 30, 50, .1), 0 2px 6px rgba(20, 30, 50, .06);--shadow-lg: 0 18px 48px rgba(20, 30, 50, .16), 0 6px 16px rgba(20, 30, 50, .08);--touch-min: 48px;--motion-fast: .12s;--motion: .2s;--motion-slow: .36s;--bg-color: var(--surface-page);--text-primary: var(--brand);--text-active: var(--text-strong);--text-secondary: var(--text-muted);--grid-empty: transparent;--grid-path: var(--success);--grid-path-hover: var(--success-text);--grid-cell-soft-bg: rgba(120, 135, 165, .16);--grid-cell-shadow-bright: rgba(255, 255, 255, .7);--grid-cell-shadow-dark: rgba(20, 30, 50, .06);--player-color: #d6336c;--error-color: var(--error);--success-color: var(--success);--panel-bg: var(--surface-raised);--panel-border: var(--border);--panel-hover: var(--surface-hover)}body.dark-mode{--surface-page: #0f1420;--surface-raised: #1a2233;--surface-sunken: #10151f;--surface-hover: #232d42;--border: #2d3650;--border-strong: #46527a;--text-strong: #f1f4f9;--text: #cdd6e4;--text-muted: #93a0b5;--text-on-accent: #0c1320;--brand: #62a8f5;--brand-strong: #8cc0ff;--brand-bg: #16243c;--accent: #ff9d4d;--accent-strong: #ffb877;--accent-bg: #3a2415;--success: #3ecf7f;--success-bg: #103225;--success-text: #8ff0bb;--error: #ff6b6b;--error-bg: #3a1c1c;--error-text: #ffb3b3;--warning: #ffc14d;--warning-bg: #3a2c10;--warning-text: #ffdd99;--info: #62a8f5;--info-bg: #14243c;--info-text: #aacdf7;--focus-ring-color: #7cc0ff;--focus-ring: 0 0 0 3px rgba(124, 192, 255, .6);--cat-orange: #f0b132;--cat-sky: #7cc6f0;--cat-green: #2cc295;--cat-yellow: #f3d840;--cat-blue: #4a9eea;--cat-red: #f07a3c;--cat-purple: #e09bc2;--cat-gray: #95a0b2;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 6px 18px rgba(0, 0, 0, .45);--shadow-lg: 0 18px 48px rgba(0, 0, 0, .55);--bg-color: var(--surface-page);--text-primary: var(--brand);--text-active: var(--text-strong);--text-secondary: var(--text-muted);--panel-bg: var(--surface-raised);--panel-border: var(--border);--panel-hover: var(--surface-hover);--grid-path: var(--success);--grid-path-hover: var(--success-text);--error-color: var(--error);--success-color: var(--success);--grid-cell-soft-bg: rgba(255, 255, 255, .05);--grid-cell-shadow-bright: rgba(255, 255, 255, .03);--grid-cell-shadow-dark: rgba(0, 0, 0, .4);--player-color: #f06595}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);font-family:var(--font-sans);font-weight:var(--fw-regular);overflow:hidden;color:var(--text)}.app-container{width:100vw;height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center}body.dark-mode .customizer-panel,body.dark-mode .prof-customizer,body.dark-mode .custom-modal-panel,body.dark-mode .settings-panel,body.dark-mode .stats-container,body.dark-mode .stats-panel,body.dark-mode .admin-panel,body.dark-mode .admin-panel-container,body.dark-mode .leaderboard-container,body.dark-mode .leaderboard-panel,body.dark-mode .level-select-container,body.dark-mode .level-card,body.dark-mode .message-modal-panel,body.dark-mode .board-controls-panel,body.dark-mode .customizer-v2-panel,body.dark-mode .v2-header,body.dark-mode .customizer-v2-content,body.dark-mode .v2-emoji-btn,body.dark-mode .v2-aura-card,body.dark-mode .v2-slider-box,body.dark-mode .statistics-modal,body.dark-mode .statistics-content,body.dark-mode .leaderboard-modal,body.dark-mode .leaderboard-content,body.dark-mode .stats-cards,body.dark-mode .stats-card,body.dark-mode .stats-timing-section,body.dark-mode .stats-usage-section,body.dark-mode .stats-usage-item,body.dark-mode .stats-attempts-list{background:var(--panel-bg)!important;border-color:var(--panel-border)!important;color:var(--text-active)!important}body.dark-mode .admin-table-row,body.dark-mode .list-item,body.dark-mode .setting-item{background:var(--panel-hover)!important;border-color:var(--panel-border)!important;color:var(--text-active)!important}body.dark-mode .admin-table-row:hover,body.dark-mode .setting-item:hover,body.dark-mode .v2-emoji-btn:hover,body.dark-mode .v2-aura-card:hover{background:var(--border)!important}body.dark-mode .v2-pulse-toggle.active{background:#62a8f52e!important}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible,[role=button]:focus-visible{outline:3px solid transparent;outline-offset:2px;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}.lc-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-min);padding:0 var(--space-5);border:2px solid transparent;border-radius:var(--radius-pill);background:var(--brand);color:var(--text-on-accent);font-family:var(--font-sans);font-size:var(--fs-base);font-weight:var(--fw-bold);line-height:1;cursor:pointer;text-decoration:none;transition:transform var(--motion-fast) ease,background-color var(--motion) ease,box-shadow var(--motion) ease}.lc-btn>.lc-ico{font-size:1.2em;line-height:1}.lc-btn:hover{background:var(--brand-strong)}.lc-btn:active{transform:scale(.97)}.lc-btn--secondary{background:var(--surface-raised);color:var(--text-strong);border-color:var(--border-strong)}.lc-btn--secondary:hover{background:var(--surface-hover)}.lc-btn--ghost{background:transparent;color:var(--text);border-color:transparent}.lc-btn--ghost:hover{background:var(--surface-hover)}.lc-btn--accent{background:var(--accent)}.lc-btn--accent:hover{background:var(--accent-strong)}.lc-btn--danger{background:var(--error);color:#fff}.lc-btn--lg{min-height:60px;padding:0 var(--space-6);font-size:var(--fs-md)}.lc-btn--block{width:100%}.lc-btn:disabled,.lc-btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.lc-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--touch-min);height:var(--touch-min);border:2px solid var(--border);border-radius:50%;background:var(--surface-raised);color:var(--text-strong);font-size:var(--fs-md);cursor:pointer;transition:transform var(--motion-fast) ease,background-color var(--motion) ease}.lc-icon-btn:hover{background:var(--surface-hover);border-color:var(--border-strong)}.lc-icon-btn:active{transform:scale(.94)}.lc-icon-label{display:inline-flex;align-items:center;gap:var(--space-2)}.lc-card{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm);color:var(--text)}.lc-panel{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);color:var(--text);overflow:hidden}.lc-panel-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.lc-panel-title{font-size:var(--fs-lg);font-weight:var(--fw-black);color:var(--text-strong);margin:0}.lc-panel-body{padding:var(--space-5)}.lc-modal-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:#0a101e8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.lc-modal{width:min(560px,96vw);max-height:92vh;overflow:auto;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);color:var(--text)}.lc-chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--surface-sunken);color:var(--text-strong);font-size:var(--fs-sm);font-weight:var(--fw-bold)}.lc-chip--success{background:var(--success-bg);color:var(--success-text)}.lc-chip--error{background:var(--error-bg);color:var(--error-text)}.lc-chip--warning{background:var(--warning-bg);color:var(--warning-text)}.lc-chip--info{background:var(--info-bg);color:var(--info-text)}.lc-field{display:flex;flex-direction:column;gap:var(--space-2)}.lc-field>label{font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text-strong)}.lc-input{min-height:var(--touch-min);padding:0 var(--space-4);border:2px solid var(--border);border-radius:var(--radius-md);background:var(--surface-raised);color:var(--text-strong);font-family:var(--font-sans);font-size:var(--fs-base)}.lc-input:hover{border-color:var(--border-strong)}.lc-input::placeholder{color:var(--text-muted)}.lc-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.home-screen{text-align:center;animation:fadeIn .8s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.2rem;position:relative;z-index:1;isolation:isolate;padding:2rem;width:100vw;min-height:100vh;overflow-y:auto;overflow-x:hidden}.home-glow{display:none}@keyframes glowPulse{0%,to{opacity:.3;transform:translate(-50%,-60%) scale(.85)}50%{opacity:1;transform:translate(-50%,-60%) scale(1.35)}}.home-particles{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.particle{position:absolute;border-radius:50%;opacity:0;animation:particleFloat linear infinite}.p0{width:6px;height:6px;background:#1c7ed640;left:8%;animation-duration:12s;animation-delay:0s}.p1{width:10px;height:10px;background:#845ef733;left:22%;animation-duration:15s;animation-delay:2s}.p2{width:5px;height:5px;background:#4facfe4d;left:40%;animation-duration:10s;animation-delay:4s}.p3{width:8px;height:8px;background:#00f2fe33;left:58%;animation-duration:14s;animation-delay:1s}.p4{width:4px;height:4px;background:#1c7ed64d;left:75%;animation-duration:11s;animation-delay:3s}.p5{width:7px;height:7px;background:#845ef740;left:90%;animation-duration:13s;animation-delay:5s}@keyframes particleFloat{0%{transform:translateY(100vh) scale(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-10vh) scale(1);opacity:0}}.home-logo{width:clamp(100px,22vmin,200px);height:clamp(100px,22vmin,200px);object-fit:contain;border-radius:24px;mix-blend-mode:screen;z-index:1}@keyframes logoFloat{0%,to{transform:translateY(0) scale(1) rotate(-2deg);filter:drop-shadow(0 6px 12px rgba(28,126,214,.2))}50%{transform:translateY(-20px) scale(1.1) rotate(2deg);filter:drop-shadow(0 25px 35px rgba(132,94,247,.6)) drop-shadow(0 0 20px rgba(28,126,214,.5))}}.home-screen h1{font-size:clamp(2.5rem,7vmin,4.5rem);color:var(--text-active);margin:0;text-transform:uppercase;letter-spacing:-2px;line-height:1.1;white-space:nowrap}.home-screen h1 span{background:linear-gradient(135deg,#1c7ed6,#845ef7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.home-tagline{font-size:clamp(1rem,2.5vmin,1.3rem);color:var(--text-muted);margin:0;letter-spacing:1px;white-space:nowrap}.home-sticky-notes-wrapper{position:absolute;top:10%;right:4%;z-index:10;display:flex;flex-direction:column;align-items:center;gap:15px;background:#ffffffd9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:24px 28px;border-radius:28px;border:1px solid rgba(0,0,0,.08);box-shadow:0 12px 40px #0000001f;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.home-sticky-notes-wrapper:hover{background:#ffffff26;box-shadow:0 12px 40px #0003;transform:translateY(-2px)}.announcements-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:5px;border-bottom:2px dashed rgba(0,0,0,.1);padding-bottom:12px;width:100%;cursor:pointer;transition:opacity .2s}.announcements-header:hover{opacity:.8}.announcements-header h3{margin:0;font-family:var(--font-sans);font-size:1.25rem;font-weight:900;letter-spacing:1px;text-transform:uppercase;background:linear-gradient(135deg,#1c7ed6,#845ef7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 1px 2px rgba(255,255,255,.5)}.board-toggle-icon{font-size:.95rem;color:#495057;background:#0000000d;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .4s cubic-bezier(.4,0,.2,1);transform:rotate(-90deg);box-shadow:inset 0 1px 3px #0000000d}.board-toggle-icon.open{transform:rotate(0);background:#1c7ed61a;color:#1c7ed6}.parchment-content{display:grid;grid-template-rows:0fr;transition:grid-template-rows .7s cubic-bezier(.4,0,.2,1),opacity .5s;opacity:0;width:100%}.parchment-content.open{grid-template-rows:1fr;opacity:1}.parchment-inner{overflow:hidden;transform-origin:top center;transition:transform .7s cubic-bezier(.4,0,.2,1);transform:rotateX(-45deg) scaleY(.7);width:100%}.parchment-content.open .parchment-inner{transform:rotateX(0) scaleY(1)}.water-icon{font-size:1.4rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));animation:floatIcon 2.5s ease-in-out infinite}@keyframes floatIcon{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.home-sticky-notes-container{display:flex;flex-direction:column;gap:15px;position:relative}.home-sticky-note{position:relative;width:200px;min-height:200px;background:linear-gradient(135deg,#fef9a7,#fdf281 40%,#f8e871);transform:rotate(4deg);box-shadow:3px 4px 8px #0000001f,inset 0 -4px 6px #0000000a,0 1px 2px #00000014;font-family:var(--font-sans);color:#343a40;transition:transform .3s ease,box-shadow .3s ease,z-index 0s;border-bottom-right-radius:40px 5px;display:flex;flex-direction:column}.home-sticky-note:hover{transform:rotate(0) scale(1.08)!important;box-shadow:6px 10px 20px #0000002e,inset 0 -4px 6px #0000000a;z-index:100}.home-sticky-note.collapsed{min-height:auto;height:60px;overflow:hidden;cursor:pointer}.home-sticky-note.collapsed:hover{transform:rotate(0) scale(1.04)!important}.home-sticky-note.collapsed .sticky-content,.home-sticky-note.collapsed .sticky-replies,.home-sticky-note.collapsed .sticky-reply-section,.home-sticky-note.collapsed .sticky-timestamp{display:none}.home-sticky-note.collapsed .sticky-sender{margin-top:26px;font-weight:700}.home-sticky-note.expanded{height:auto;cursor:default}.sticky-unread-badge{position:absolute;top:-12px;right:-12px;z-index:10;animation:bounceBadge 2s infinite;filter:drop-shadow(0 4px 6px rgba(0,0,0,.3))}.sticky-unread-icon{background:#40c057;color:#fff;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:2px solid white;font-size:16px;font-weight:700;filter:sepia(1) hue-rotate(100deg) brightness(2)}@keyframes bounceBadge{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.sticky-pin{position:absolute;top:10px;left:50%;transform:translate(-50%);width:14px;height:14px;background:radial-gradient(circle at 30% 30%,#ff6b6b,#c92a2a);border-radius:50%;box-shadow:1px 2px 4px #0000004d,inset -2px -2px 4px #0003;z-index:2}.sticky-sender{margin-top:32px;padding:0 10px 5px;width:100%;text-align:center;font-family:Courier New,Courier,monospace;font-weight:800;color:#7d8b99;border-bottom:2px solid rgba(0,0,0,.1);white-space:nowrap;letter-spacing:.5px;pointer-events:none}.sticky-icon{font-size:1.6rem;padding:2px 20px 0;line-height:1}.sticky-title{padding:0 20px;font-weight:700;margin-bottom:4px;line-height:1.2}.sticky-content{padding:10px 20px 20px;font-size:1.3rem;line-height:1.4;white-space:pre-wrap;flex-grow:1}.home-sticky-note.shape-rounded{border-radius:24px}.home-sticky-note.shape-bordered{border-width:3px!important;border-style:dashed!important;border-bottom-right-radius:24px}.home-sticky-note.shape-gradient{border-bottom-right-radius:40px 5px}.sticky-replies{padding:6px 14px 4px;display:flex;flex-direction:column;gap:3px;border-top:1px dashed rgba(0,0,0,.12)}.sticky-reply{font-family:var(--font-sans);font-size:.7rem;line-height:1.3;opacity:.75}.sticky-reply strong{font-weight:700}.sticky-reply-time{font-size:.58rem;opacity:.5;margin-top:1px}.sticky-timestamp{position:absolute;top:6px;left:10px;font-family:var(--font-sans);font-size:.55rem;pointer-events:none;letter-spacing:.3px}.home-sticky-note-positioned{position:absolute;z-index:20;transform:rotate(2deg)!important;margin-top:0!important}.sticky-note-admin-bar{display:flex;align-items:center;gap:4px;position:absolute;top:4px;right:4px;z-index:5}.sticky-drag-handle{font-size:16px;cursor:grab;opacity:.4;-webkit-user-select:none;user-select:none;touch-action:none;line-height:1;transition:opacity .15s;padding:2px}.sticky-drag-handle:hover{opacity:.8}.sticky-drag-handle:active{cursor:grabbing;opacity:1}.sticky-reorder-btns{display:flex;flex-direction:column;gap:1px}.sticky-reorder-btn{background:#fff6;border:1px solid rgba(0,0,0,.1);border-radius:4px;cursor:pointer;font-size:9px;line-height:1;padding:2px 4px;opacity:.5;transition:opacity .15s,background .15s}.sticky-reorder-btn:hover{opacity:1;background:#ffffffb3}.sticky-reset-btn{font-size:12px;padding:2px 5px}.sticky-reply-section{padding:6px 12px 10px}.sticky-reply-btn{background:#00000014;border:none;border-radius:8px;padding:5px 12px;font-size:.72rem;cursor:pointer;font-family:var(--font-sans);transition:all .15s;width:100%}.sticky-reply-btn:hover{background:#00000024}.sticky-reply-input-wrap{display:flex;gap:4px}.sticky-reply-input-wrap input{flex:1;border:1px solid rgba(0,0,0,.15);border-radius:6px;padding:4px 8px;font-size:.72rem;font-family:var(--font-sans);background:#fff9;min-width:0}.sticky-reply-input-wrap button{background:#1c7ed6;color:#fff;border:none;border-radius:6px;padding:4px 10px;font-size:.68rem;cursor:pointer;font-family:var(--font-sans);white-space:nowrap}.sticky-reply-input-wrap button:disabled{opacity:.4;cursor:not-allowed}.sticky-reply-input-wrap button.cancel{background:#868e96;padding:4px 6px}@media(max-width:768px){.home-screen{justify-content:flex-start;padding-top:5.5rem;padding-bottom:2.5rem}.home-sticky-notes-wrapper{position:relative;top:auto;right:auto;margin:20px auto;width:90%}.home-sticky-notes-container{align-items:center}}.unread-msg-icon{animation:blink-envelope 1s infinite alternate;display:inline-block}@keyframes blink-envelope{0%{transform:scale(1);opacity:1;filter:drop-shadow(0 0 2px rgba(224,49,49,.2))}to{transform:scale(1.2);opacity:.8;filter:drop-shadow(0 0 6px rgba(224,49,49,.8))}}.home-quote-container{display:flex;flex-direction:column;align-items:flex-start;position:absolute;bottom:50px;left:24px;max-width:380px;z-index:5;padding:0;text-align:left}.stars-container{position:absolute;top:-20px;left:0;width:100%;height:calc(100% + 40px);pointer-events:none;overflow:hidden;z-index:10}.quote-star{position:absolute;font-size:1.2rem;opacity:0;animation:starRain linear infinite;filter:drop-shadow(0 2px 5px rgba(255,212,59,.5))}.star1{left:15%;animation-duration:3s;animation-delay:0s;font-size:1rem}.star2{left:45%;animation-duration:3.5s;animation-delay:1.2s;font-size:1.5rem}.star3{left:85%;animation-duration:4s;animation-delay:2s;font-size:.8rem}.star4{left:30%;animation-duration:2.8s;animation-delay:.7s;font-size:1.3rem}.star5{left:70%;animation-duration:3.2s;animation-delay:1.8s;font-size:1.1rem}@keyframes starRain{0%{transform:translateY(-20px) rotate(0);opacity:0}15%{opacity:1}75%{opacity:1}to{transform:translateY(120px) rotate(180deg);opacity:0}}.quote-with-flower{display:flex;align-items:center;gap:16px;margin-bottom:.5rem}.home-quote{font-family:var(--font-sans);font-size:clamp(1.1rem,2.8vmin,1.5rem);color:#1c7ed6;background:linear-gradient(135deg,#1c7ed6,#845ef7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-align:left;line-height:1.4;margin:0;font-weight:700;filter:drop-shadow(0 2px 4px rgba(28,126,214,.1))}.home-quote-flower{font-size:clamp(2rem,5vmin,3rem);filter:drop-shadow(0 4px 10px rgba(0,0,0,.15));flex-shrink:0}@keyframes floatFlower{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(15deg)}}.home-quote-author{font-family:var(--font-sans);font-size:.9rem;color:var(--text-muted);font-style:italic;font-weight:600;align-self:flex-end;margin-right:2rem}.start-btn{background:linear-gradient(135deg,#2563eb,#1d4ed8 55%,#1e40af);color:#fff;border:1px solid rgba(255,255,255,.16);padding:0 32px 0 22px;height:64px;font-size:1.15rem;font-family:var(--font-sans);font-weight:800;border-radius:999px;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,background .22s ease;box-shadow:0 1px #ffffff38 inset,0 10px 24px #1d4ed86b,0 0 0 6px #2563eb1a;letter-spacing:.02em;position:relative;overflow:hidden;z-index:1;display:inline-flex;align-items:center;gap:14px;margin-top:.8rem}.home-info-badge{display:flex;align-items:center;gap:10px;margin-top:1rem;font-size:.85rem;color:var(--text-muted);z-index:1;letter-spacing:.5px;animation:fadeIn 1.5s ease}.home-info-badge span{white-space:nowrap}.info-dot{font-size:1.2rem;color:#ced4da;line-height:1}.start-btn:before{content:"";position:absolute;top:0;left:-120%;width:60%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transform:skew(-22deg);z-index:0;animation:shineStartBtn 4.5s ease-in-out infinite}@keyframes shineStartBtn{0%,60%{left:-120%}to{left:220%}}.start-btn>*{position:relative;z-index:1}.home-footer-credits{position:absolute;bottom:16px;right:24px;font-size:.75rem;color:var(--text-muted);z-index:5;letter-spacing:.3px;opacity:.7}.home-footer-credits strong{color:var(--text-secondary);font-weight:600}.start-btn-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#ffffff2e;border:1px solid rgba(255,255,255,.28);color:#fff;flex-shrink:0;box-shadow:inset 0 1px #ffffff3d}.start-btn-icon svg{margin-left:2px}.start-btn-label{line-height:1;font-weight:800}.start-btn-arrow{display:inline-flex;align-items:center;justify-content:center;color:#fff;opacity:.85;transition:transform .22s ease,opacity .22s ease}.start-btn:hover{background:linear-gradient(135deg,#3b82f6,#2563eb 55%,#1d4ed8);box-shadow:0 1px #ffffff42 inset,0 14px 32px #1d4ed880,0 0 0 8px #2563eb24}.start-btn:hover .start-btn-arrow{transform:translate(4px);opacity:1}.start-btn:active{box-shadow:0 1px #ffffff38 inset,0 6px 14px #1d4ed85c}.portal-container{position:relative;z-index:10;display:flex;align-items:center;justify-content:center;animation:portalAppear .5s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes portalAppear{0%{transform:scale(0);opacity:0}60%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}.portal-circle{width:180px;height:180px;border-radius:50%;position:relative;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 35% 35%,#e7f5ff,#a5d8ff,#4dabf7 60%,#1c7ed6);box-shadow:inset 0 3px 8px #ffffff80,inset 0 -3px 6px #0000001a,0 0 30px #4dabf780,0 0 60px #1c7ed64d;animation:portalGrow 1.2s ease-out forwards,portalPulse 1s ease-in-out .5s infinite alternate}@keyframes portalGrow{0%{width:40px;height:40px}to{width:180px;height:180px}}@keyframes portalPulse{0%{box-shadow:inset 0 3px 8px #ffffff80,0 0 30px #4dabf780,0 0 60px #1c7ed64d}to{box-shadow:inset 0 3px 8px #ffffff80,0 0 50px #4dabf7b3,0 0 100px #1c7ed666}}.portal-ring{position:absolute;border-radius:50%;border:2px solid transparent}.portal-ring.ring1{width:100%;height:100%;border-top-color:#fff9;border-right-color:#ffffff4d;animation:portalSpin 1.5s linear infinite}.portal-ring.ring2{width:75%;height:75%;border-bottom-color:#ffd43b99;border-left-color:#ffd43b4d;animation:portalSpin 1.1s linear infinite reverse}.portal-ring.ring3{width:50%;height:50%;border-top-color:#ffffff80;border-right-color:#845ef766;animation:portalSpin .8s linear infinite}@keyframes portalSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.portal-vortex{width:60%;height:60%;border-radius:50%;position:relative;animation:vortexSpin 2s linear infinite}@keyframes vortexSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.vortex-spiral{position:absolute;width:100%;height:100%;border-radius:50%;border:3px solid transparent}.vortex-spiral.s1{border-top-color:#ffffffb3;transform:scale(1)}.vortex-spiral.s2{border-right-color:#4dabf7cc;transform:scale(.75) rotate(45deg)}.vortex-spiral.s3{border-bottom-color:#845ef7b3;transform:scale(.5) rotate(90deg)}.vortex-spiral.s4{border-left-color:#ffd43b99;transform:scale(.3) rotate(135deg)}.vortex-core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:18px;height:18px;border-radius:50%;background:radial-gradient(circle,#0b4888 0%,#1c7ed6 50%,transparent 100%);box-shadow:0 0 15px #0b4888cc;animation:coreFlicker .5s ease-in-out infinite alternate}@keyframes coreFlicker{0%{transform:translate(-50%,-50%) scale(.8);opacity:.7}to{transform:translate(-50%,-50%) scale(1.2);opacity:1}}.home-screen.gravity-broken{overflow:hidden!important;height:100vh!important;max-height:100vh!important}.home-screen.gravity-broken *{animation-play-state:paused!important}.home-screen.gravity-broken>:not(.home-particles):not(.home-glow){animation-play-state:running!important}.home-screen.gravity-broken>:not(.home-particles):not(.home-glow){position:absolute!important;top:auto!important;margin:0!important;width:max-content!important;pointer-events:none!important;transform-origin:center center!important}.home-screen.gravity-broken>:nth-child(5n){left:10%!important;bottom:20px!important;animation:fallA 1.3s cubic-bezier(.55,.08,.68,1.2) forwards!important}.home-screen.gravity-broken>:nth-child(5n+1){left:30%!important;bottom:5px!important;animation:fallB 1.1s cubic-bezier(.55,.08,.68,1.2) forwards!important}.home-screen.gravity-broken>:nth-child(5n+2){left:50%!important;bottom:15px!important;transform:translate(-50%)!important;animation:fallC 1.4s cubic-bezier(.55,.08,.68,1.2) forwards!important}.home-screen.gravity-broken>:nth-child(5n+3){left:70%!important;bottom:-5px!important;animation:fallA 1.2s cubic-bezier(.55,.08,.68,1.2) forwards!important}.home-screen.gravity-broken>:nth-child(5n+4){left:auto!important;right:10%!important;bottom:25px!important;animation:fallB 1.5s cubic-bezier(.55,.08,.68,1.2) forwards!important}@keyframes fallA{0%{transform:translateY(-100vh) rotate(-30deg)}60%{transform:translateY(0) rotate(10deg)}80%{transform:translateY(-40px) rotate(20deg)}to{transform:translateY(0) rotate(35deg) scale(.9);opacity:.8;filter:grayscale(.2)}}@keyframes fallB{0%{transform:translateY(-90vh) rotate(45deg)}60%{transform:translateY(0) rotate(-30deg)}80%{transform:translateY(-30px) rotate(-15deg)}to{transform:translateY(0) rotate(-25deg) scale(.85);opacity:.85;filter:sepia(.3)}}@keyframes fallC{0%{transform:translate(-50%,-100vh) rotate(15deg)}60%{transform:translate(-50%) rotate(-10deg)}80%{transform:translate(-50%,-20px) rotate(5deg)}to{transform:translate(-50%) rotate(-15deg) scale(.95);opacity:.9;filter:grayscale(.4)}}body.dark-mode .home-sticky-notes-wrapper{background:#1a2233eb;border-color:var(--border);box-shadow:0 12px 40px #00000080}body.dark-mode .announcements-header{border-bottom-color:#ffffff1f}body.dark-mode .board-toggle-icon{color:var(--text-secondary);background:#ffffff14}body.dark-mode .board-toggle-icon.open{background:#62a8f52e;color:var(--brand)}body.dark-mode .home-screen h1{color:var(--text-strong)}.home-top-left-auth{position:absolute;top:24px;left:24px;z-index:100}.login-trigger-btn{display:flex;align-items:center;gap:8px;background:#ffffff26;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#1c7ed6;border:1px solid rgba(28,126,214,.3);padding:10px 22px;border-radius:50px;font-weight:800;font-size:.9rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #1c7ed61f;letter-spacing:.5px}.login-trigger-btn:hover{background:linear-gradient(135deg,#1c7ed6,#845ef7);color:#fff;border-color:transparent;transform:translateY(-2px);box-shadow:0 8px 30px #845ef759}.login-trigger-btn svg{flex-shrink:0}.profile-widget{position:relative}.profile-avatar-btn{width:52px;height:52px;border-radius:50%;border:3px solid rgba(28,126,214,.4);background:#fff3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:all .3s ease;box-shadow:0 4px 20px #1c7ed626}.profile-avatar-btn:hover{border-color:#845ef7;box-shadow:0 4px 25px #845ef759;transform:scale(1.08)}.profile-char{width:30px;height:30px;border:2px solid;transition:all .2s}.profile-char.shape-circle{border-radius:50%}.profile-char.shape-square{border-radius:6px}.profile-char.shape-diamond{border-radius:4px;transform:rotate(45deg);width:24px;height:24px}.profile-menu-backdrop{position:fixed;inset:0;z-index:998}.profile-dropdown{position:absolute;top:calc(100% + 12px);left:0;width:260px;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:16px;box-shadow:0 20px 50px #0000002e;z-index:999;overflow:hidden;animation:dropdownSlide .25s cubic-bezier(.175,.885,.32,1.275)}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.profile-dropdown-header{display:flex;align-items:center;gap:12px;padding:16px;background:linear-gradient(135deg,#1c7ed60f,#845ef70f)}.profile-dropdown-char{width:40px;height:40px;border:2px solid;flex-shrink:0}.profile-dropdown-char.shape-circle{border-radius:50%}.profile-dropdown-char.shape-square{border-radius:8px}.profile-dropdown-char.shape-diamond{border-radius:4px;transform:rotate(45deg);width:32px;height:32px}.profile-dropdown-info{display:flex;flex-direction:column;gap:2px}.profile-dropdown-info strong{font-size:.95rem;color:#212529}.profile-dropdown-info small{font-size:.75rem;color:var(--text-muted);font-weight:600}.admin-badge-text{font-size:.75rem;background:linear-gradient(135deg,#f59f00,#e67700);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800;letter-spacing:.5px}.profile-dropdown-divider{height:1px;background:var(--surface-sunken);margin:0}.profile-dropdown-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:none;background:transparent;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:700;color:var(--text-secondary);transition:all .15s;text-align:left}.profile-dropdown-item:hover{background:var(--surface-hover);color:#1c7ed6}.profile-dropdown-item:hover svg{color:#1c7ed6}.profile-dropdown-item.logout{color:#e03131}.profile-dropdown-item.logout:hover{background:#fff5f5;color:#c92a2a}.profile-dropdown-item.logout:hover svg{color:#c92a2a}.profile-dropdown-item svg{color:var(--text-muted);flex-shrink:0;transition:color .15s}.profile-item-badge{margin-left:auto;background:var(--surface-sunken);color:var(--text-muted);padding:2px 8px;border-radius:6px;font-size:.7rem;font-weight:800}.auth-overlay{position:fixed;inset:0;background:#080c18bf;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:authFadeIn .35s cubic-bezier(.16,1,.3,1);overflow:hidden}.auth-ambient-orb-1,.auth-ambient-orb-2{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:0;opacity:.45;animation:orbDrift 20s infinite alternate ease-in-out}.auth-ambient-orb-1{width:300px;height:300px;background:radial-gradient(circle,#845ef7,#845ef700 70%);top:-50px;left:-50px}.auth-ambient-orb-2{width:350px;height:350px;background:radial-gradient(circle,#00d2ff,#00d2ff00 70%);bottom:-80px;right:-80px;animation-delay:-5s}@keyframes orbDrift{0%{transform:translate(0) scale(1)}to{transform:translate(40px,30px) scale(1.15)}}@keyframes authFadeIn{0%{opacity:0}to{opacity:1}}.auth-modal{position:relative;width:92%;max-width:410px;background:#0f172aa6;color:var(--surface-hover);border-radius:28px;padding:3rem 2.2rem 2.2rem;box-shadow:0 30px 80px #0009,inset 0 1px #ffffff26,0 0 40px #845ef726;border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);animation:authSlideUp .5s cubic-bezier(.34,1.56,.64,1);overflow:hidden;z-index:10}@keyframes authSlideUp{0%{opacity:0;transform:translateY(50px) scale(.93)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-modal-glow{position:absolute;top:-80px;left:50%;transform:translate(-50%);width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,rgba(132,94,247,.3) 0%,rgba(0,210,255,.15) 50%,transparent 75%);filter:blur(40px);pointer-events:none;z-index:-1}.auth-modal-logo{display:block;width:80px;height:80px;object-fit:contain;margin:0 auto 1.5rem;border-radius:20px;border:2px solid rgba(255,255,255,.1);background:#0f172a66;box-shadow:0 10px 25px #0000004d,0 0 20px #845ef733;transition:transform .3s ease}.auth-modal-logo:hover{transform:scale(1.05) rotate(3deg)}.auth-modal-close{position:absolute;top:18px;right:18px;background:#ffffff0d;border:1px solid rgba(255,255,255,.05);font-size:1.3rem;color:var(--text-muted);cursor:pointer;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .25s ease;z-index:15}.auth-modal-close:hover{background:#ffffff26;color:#fff;transform:rotate(90deg)}.auth-tabs{display:flex;background:#0f172a80;border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:5px;margin-bottom:1.8rem;position:relative}.auth-tab{flex:1;padding:11px;border:none;background:transparent;border-radius:12px;font-weight:800;font-size:.9rem;color:var(--text-muted);cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);position:relative;z-index:1}.auth-tab:hover{color:#fff}.auth-tab.active{background:linear-gradient(135deg,#845ef740,#00d2ff33);color:#fff;box-shadow:0 4px 15px #845ef733,inset 0 1px #ffffff1a;border:1.5px solid rgba(132,94,247,.4)}.auth-modal-form{display:flex;flex-direction:column;gap:14px}.auth-field{display:flex;align-items:center;gap:14px;background:#0f172a66;border:1.5px solid rgba(255,255,255,.08);border-radius:16px;padding:2px 18px;transition:all .3s ease}.auth-field:hover{border-color:#845ef74d;background:#0f172a80}.auth-field:focus-within{border-color:#845ef7;background:#0f172a99;box-shadow:0 0 18px #845ef740,inset 0 1px #ffffff0d}.auth-field-icon{font-size:1.1rem;flex-shrink:0;opacity:.7;transition:transform .3s ease;display:flex;align-items:center}.auth-field:focus-within .auth-field-icon{transform:scale(1.15);color:#00d2ff;opacity:1}.auth-field input{flex:1;border:none;background:transparent;padding:13px 0;font-family:inherit;font-size:.98rem;color:#fff;outline:none}.auth-field input::placeholder{color:#5c6370}.auth-modal-submit{background:linear-gradient(135deg,#845ef7,#3b5bdb,#00d2ff);background-size:200% auto;color:#fff;border:none;border-radius:16px;padding:15px;font-size:1.05rem;font-weight:800;cursor:pointer;margin-top:8px;transition:all .4s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;justify-content:center;min-height:52px;box-shadow:0 8px 24px #845ef74d;letter-spacing:.5px}.auth-modal-submit:hover:not(:disabled){background-position:right center;transform:translateY(-2px);box-shadow:0 12px 30px #00d2ff73,0 0 15px #845ef74d}.auth-modal-submit:active:not(:disabled){transform:translateY(0)}.auth-modal-submit:disabled{background:#ffffff14;color:#5c6370;box-shadow:none;cursor:not-allowed}.auth-spinner{width:22px;height:22px;border:3.5px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:authSpin .7s cubic-bezier(.5,0,.5,1) infinite}@keyframes authSpin{to{transform:rotate(360deg)}}.auth-modal-error{background:#e031311a;color:#ff8787;padding:12px 16px;border-radius:14px;font-size:.88rem;font-weight:700;border:1px solid rgba(224,49,49,.35);box-shadow:0 4px 15px #e0313126;display:flex;align-items:center;gap:10px;line-height:1.4;animation:errorShake .4s ease}@keyframes errorShake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.auth-divider{display:flex;align-items:center;text-align:center;margin:1.5rem 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1.5px solid rgba(255,255,255,.08)}.auth-divider span{padding:0 14px;color:#5c6370;font-size:.75rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase}.auth-social-buttons{display:flex;flex-direction:column;gap:12px}.auth-google-btn,.auth-guest-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:13px;border-radius:16px;font-size:.95rem;font-weight:800;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);min-height:50px;box-shadow:inset 0 1px #ffffff0d}.auth-google-btn{background:#ffffff08;color:var(--text-muted);border:1.5px solid rgba(255,255,255,.08)}.auth-google-btn:hover:not(:disabled){background:#ffffff14;border-color:#fff3;color:#fff;transform:translateY(-1.5px);box-shadow:0 6px 20px #00000026}.auth-guest-btn{background:#00d2ff14;color:#00d2ff;border:1.5px solid rgba(0,210,255,.2)}.auth-guest-btn:hover:not(:disabled){background:#00d2ff26;border-color:#00d2ff73;transform:translateY(-1.5px);box-shadow:0 8px 24px #00d2ff33,0 0 12px #00d2ff1a}.auth-social-buttons button:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.profile-char,.profile-dropdown-char{display:flex!important;align-items:center!important;justify-content:center!important}.profile-emoji{font-size:22px;line-height:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.profile-dropdown-char .profile-emoji{font-size:28px}.game-board-container{width:100vw;max-width:100%;height:100vh;display:flex;flex-direction:column;position:relative;overflow:hidden}.game-header{padding:.75rem 1.25rem .35rem;display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;position:relative}.game-header-main{flex:1;text-align:center}.game-header h1{font-size:clamp(1rem,2.5vh,1.8rem);color:var(--text-active);margin-bottom:.2vh}.game-header p{color:var(--text-muted);font-size:clamp(.75rem,1.8vh,1.1rem);margin:0}body.dark-mode .code-display{background:#e9eef7f5;border-color:#46527aa6}.game-header-actions{display:flex;align-items:center;gap:.65rem}.game-home-btn,.tutorial-reopen-btn{width:42px;height:42px;border-radius:50%;border:2px solid rgba(255,122,24,.3);background:#ff7a181f;color:#ff7a18;font-size:1rem;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:10}.tutorial-reopen-btn{animation:tutorialBtnPulse 3s infinite ease-in-out}.game-home-btn:hover,.tutorial-reopen-btn:hover{background:#ff7a1838;border-color:#ff7a18;transform:scale(1.08);box-shadow:0 0 18px #ff7a1847}.game-home-btn:active,.tutorial-reopen-btn:active{transform:scale(.95)}@keyframes tutorialBtnPulse{0%,to{box-shadow:0 0 #6366f100}50%{box-shadow:0 0 12px 3px #6366f140}}.guide-toggle-btn{width:42px;height:42px;border-radius:50%;border:2px solid rgba(56,189,248,.3);background:#38bdf81f;color:#38bdf8;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:10}.guide-toggle-btn:hover{background:#38bdf838;border-color:#38bdf8;transform:scale(1.08);box-shadow:0 0 18px #38bdf847}.guide-toggle-btn:active{transform:scale(.95)}.level-guide-dropdown{overflow:hidden;margin:0 auto;width:100%;max-width:min(1100px,96vw);position:relative;z-index:30}.guide-dropdown-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.65rem;padding:.75rem 1rem 2.5rem;background:#fffffff7;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:0 0 20px 20px;border:1px solid rgba(255,122,24,.18);border-top:none;box-shadow:0 12px 40px #0000001a}.guide-chip{display:flex;flex-direction:column;gap:.18rem;min-width:min(240px,100%);padding:.8rem .95rem;background:linear-gradient(135deg,#fffffff2,#fff7edf5);border:1px solid rgba(255,122,24,.14);border-radius:16px;box-shadow:0 10px 30px #94a3b81f;color:#4b5563}.guide-chip strong{color:#c2410c;font-size:.88rem}.guide-chip span{font-size:.78rem;line-height:1.45}.guide-dismiss-btn{border:none;border-radius:999px;padding:.75rem 1rem;background:linear-gradient(135deg,#ff7a18,#ffb347);color:#fff;font-weight:700;cursor:pointer;box-shadow:0 10px 24px #ff7a182e;transition:transform .2s,box-shadow .2s}.guide-dismiss-btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px #ff7a1842}.hint-btn{display:flex;align-items:center;justify-content:center;gap:8px;margin:6px auto;padding:8px 20px;border:none;border-radius:25px;background:linear-gradient(135deg,#ffd43b,#fab005);color:#7c4a00;font-size:.85rem;font-weight:700;cursor:pointer;transition:all .3s ease;animation:hintPulse 2s infinite alternate;box-shadow:0 4px 15px #fab00566}.hint-btn:hover{transform:scale(1.05);box-shadow:0 6px 20px #fab00599}.hint-btn-warn{font-size:.65rem;font-weight:600;opacity:.8}@keyframes hintPulse{0%{box-shadow:0 4px 15px #fab0054d}to{box-shadow:0 4px 20px #fab00599}}.hint-banner{display:flex;align-items:center;gap:10px;margin:6px auto;padding:10px 18px;max-width:min(500px,95vw);background:linear-gradient(135deg,#ffe06626,#ffd43b1a);border:1px solid rgba(250,176,5,.3);border-left:4px solid #fab005;border-radius:12px;animation:hintSlideIn .4s ease}.hint-banner-icon{font-size:1.3rem;flex-shrink:0}.hint-banner-text{font-size:.8rem;font-weight:600;color:#7c4a00;line-height:1.4}@keyframes hintSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.game-area{flex:1;display:flex;justify-content:center;align-items:center;gap:clamp(4vw,20vw,20vw);padding:.5rem 1rem 1.5rem 12vw;margin-top:0;overflow:hidden}.grid-and-code-wrapper{width:100%;height:100%;display:flex;flex-direction:column;min-height:0}.panel{display:flex;justify-content:center;align-items:center}.left-panel{display:flex;flex-direction:column;justify-content:center;align-items:center;padding-bottom:1vh}.right-panel{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:45vw;max-height:85vh;overflow:visible;padding:1vh 0}.controls-container{margin-bottom:2rem}.help-toggle{display:flex;align-items:center;cursor:pointer}.help-checkbox{display:none}.help-icon{display:flex;justify-content:center;align-items:center;width:44px;height:44px;border-radius:50%;background-color:var(--grid-empty);color:#adb5bd;transition:all .3s cubic-bezier(.175,.885,.32,1.275);box-shadow:inset 0 2px 4px #0000000d}.help-checkbox:checked+.help-icon{background-color:var(--player-color);color:#fff;box-shadow:0 0 15px #fcc41999;transform:scale(1.1)}.help-icon svg{width:24px;height:24px}.feedback-overlay{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;z-index:10;animation:flash .3s forwards;pointer-events:none}.error-overlay{background:#e031311a;color:var(--error-color);flex-direction:column;gap:4px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.success-overlay{background:#37b24d1a;color:var(--success-color);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.feedback-overlay span{font-size:3rem;font-weight:800;text-shadow:0 2px 10px rgba(0,0,0,.1)}.error-msg-main{font-size:clamp(.85rem,2.5vw,1.4rem)!important;font-weight:700!important;text-align:center;line-height:1.4}.error-msg-sub{font-size:clamp(.7rem,1.8vw,.9rem)!important;font-weight:600!important;opacity:.7}.grid-visualizer{display:flex;flex-direction:column;gap:clamp(2px,1vmin,20px)}.grid-row{display:flex;gap:clamp(2px,1vmin,20px)}.grid-cell{width:clamp(18px,min(6.9vmin,7.6vh),108px);height:clamp(18px,min(6.9vmin,7.6vh),108px);border-radius:50%;background-color:transparent;display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,filter .3s ease}.grid-cell.path:hover,.grid-cell.path-themed:hover,.grid-cell.path-hint:hover,.grid-cell.path-special:hover,.grid-cell.path-yellow:hover,.grid-cell.path-red:hover,.grid-cell.path-blue:hover,.grid-cell.path-orange:hover,.grid-cell.path-mor:hover,.grid-cell.path-accent:hover{transform:scale(1.08) translateY(-2px);filter:brightness(1.1)}.grid-cell.path-blocked{background:repeating-linear-gradient(45deg,rgba(120,130,150,.18) 0 6px,transparent 6px 12px),radial-gradient(circle at 35% 35%,#ffffff8c,#d2d7e180);border:3px solid rgba(120,130,150,.55);box-shadow:inset 0 2px 4px #ffffff4d;opacity:.85}.cell-symbol{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:clamp(.8rem,min(4vmin,4.4vh),2rem);font-weight:800;line-height:1;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.55),0 0 2px rgba(0,0,0,.85);pointer-events:none;-webkit-user-select:none;user-select:none}.grid-cell.path-blocked .cell-symbol{color:#4a5263;text-shadow:0 1px 1px rgba(255,255,255,.7)}.cond-swatch{display:inline-flex;align-items:center;justify-content:center;width:1.2em;height:1.2em;margin:0 .2em;border-radius:50%;border:2px solid rgba(15,23,42,.22);box-shadow:0 0 0 2px #fff9;position:relative;top:.08em;vertical-align:middle}.cond-symbol{font-size:.74em;font-weight:900;line-height:1;color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.6),0 0 1px rgba(0,0,0,.95)}.grid-cell.path{background:var(--grid-cell-soft-bg);box-shadow:inset 0 -4px #141e321a}.grid-cell.path-themed{box-shadow:inset 0 -5px #00000038}.grid-cell.path-hint{background:#2fbf71;box-shadow:inset 0 -5px #00000038}.grid-cell.path-special{background:#3ec3ea;box-shadow:inset 0 -5px #00000038;animation:goalPulse 2s ease-in-out infinite}@keyframes goalPulse{0%,to{box-shadow:inset 0 -5px #00000038,0 0 #3ec3ea00;transform:scale(1)}50%{box-shadow:inset 0 -5px #00000038,0 0 0 6px #3ec3ea40;transform:scale(1.03)}}@keyframes goalShimmer{0%{filter:brightness(1) saturate(1)}50%{filter:brightness(1.15) saturate(1.2)}to{filter:brightness(1) saturate(1)}}.grid-cell.path-yellow{background:#ffc83d;box-shadow:inset 0 -5px #00000038}.grid-cell.path-red{background:#ef5350;box-shadow:inset 0 -5px #00000038}.grid-cell.path-blue{background:#4287f5;box-shadow:inset 0 -5px #00000038}.grid-cell.path-orange{background:#ff8b2c;box-shadow:inset 0 -5px #00000038}.grid-cell.path-mor{background:#a266dd;box-shadow:inset 0 -5px #00000038}@keyframes playerEntrance{0%{transform:scale(0);opacity:0}60%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:1}}.grid-cell.player .player-inner{width:54%;height:54%;animation:playerBreathing 2.5s infinite ease-in-out;box-shadow:none;display:flex;justify-content:center;align-items:center}.grid-cell.player .player-emoji{font-size:clamp(1rem,min(4.1vmin,4.5vh),2rem)}.player-layout-wrapper{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.player-inner.shape-diamond .player-emoji{transform:rotate(-45deg)}.grid-cell.player-error .player-inner{animation:shake .4s}@keyframes gridErrorFlash{0%,to{filter:none}25%,75%{filter:drop-shadow(0 0 4px rgba(239,68,68,.3))}}.layout-error .grid-visualizer{animation:gridErrorFlash .5s ease}@keyframes gridSuccessGlow{0%{filter:none}50%{filter:brightness(1.08) drop-shadow(0 0 6px rgba(64,192,87,.4))}to{filter:none}}.layout-success .grid-visualizer{animation:gridSuccessGlow .8s ease}@keyframes cellPulseRing{0%{transform:scale(.8);opacity:.3}to{transform:scale(1.3);opacity:0}}@keyframes cellVisitedPop{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1.04)}}.grid-cell.cell-active{z-index:2}.grid-cell.cell-active:after{content:"";position:absolute;inset:-1px;border-radius:50%;border:1px solid rgba(255,255,255,.4);animation:cellPulseRing 3s ease-out infinite;pointer-events:none}.grid-cell.cell-active:before{display:none}.grid-cell.cell-visited{animation:cellVisitedPop .35s ease-out forwards;box-shadow:inset 0 0 12px #ffffff59,0 0 8px #ffffff26}.grid-cell.cell-visited:after{content:"";position:absolute;inset:15%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.25) 0%,transparent 70%);pointer-events:none;animation:trailDotFade .5s ease-out forwards}@keyframes trailDotFade{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2);opacity:.6}to{transform:scale(1);opacity:.3}}.code-display{font-family:var(--font-mono, "Courier New");font-weight:700;letter-spacing:1.5px;color:#334155;display:flex;flex-direction:column;align-items:flex-start;white-space:nowrap;gap:clamp(0px,calc(3vh / var(--line-count, 10)),5px);background:#ffffffd1;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:16px;border:1px solid rgba(170,182,205,.55);box-shadow:0 4px 20px #0000000f,inset 0 1px #fffc;position:relative;overflow:hidden;max-width:100%;line-height:1.25;font-size:clamp(.6rem,min(calc(55vh/(max(var(--line-count, 10),10)*1.6)),calc(38vw / max(var(--char-count, 10),12) / .7)),5rem);padding:.6em 1em}.code-display:before{content:"● ● ●";position:absolute;top:8px;left:14px;font-size:.55rem;letter-spacing:4px;color:#64748b4d;pointer-events:none}.syntax-command{font-weight:800;text-shadow:none;transition:text-shadow .2s ease}.syntax-keyword{font-weight:900;font-style:italic}.syntax-number{font-weight:800}.syntax-paren{opacity:.7}.syntax-brace{font-weight:900}.code-line{padding:.15em 10px;border-radius:8px;transition:all .2s ease,background-color .3s ease;position:relative}.code-line.active.help-on{color:#1e293b;background:linear-gradient(90deg,#6366f11f,#6366f1);border-left:3px solid #6366f1;padding-left:7px;box-shadow:0 0 12px #7d66f1}.code-line.active.help-on:before{content:"▶";position:absolute;left:-40px;color:#4e51f7;font-size:.8em;top:50%;transform:translateY(-50%);animation:arrowPoint 1s infinite alternate ease-in-out;text-shadow:0 0 6px rgba(0,4,255,1)}@keyframes arrowPoint{0%{transform:translateY(-50%) translate(-8px);opacity:.6}to{transform:translateY(-50%) translate(0);opacity:1}}.code-line.error{color:#dc2626;background:linear-gradient(90deg,#ef44441f,#ef444408);border-left:3px solid #ef4444;animation:shake .4s,codeLineErrorFlash .6s ease}@keyframes codeLineErrorFlash{0%,to{box-shadow:none}30%{box-shadow:0 0 16px #ef444440}}.code-block-wrapper{display:flex;flex-direction:column;gap:clamp(1px,calc(8vh / var(--line-count, 10)),10px)}.code-block-header{color:var(--text-active)}.code-block-content{position:relative;margin-left:20px;display:flex;flex-direction:column;gap:clamp(1px,calc(8vh / var(--line-count, 10)),10px)}.code-block-content:before{content:"";position:absolute;left:-6px;top:-.7em;bottom:1.25em;width:3px;background-color:var(--block-color, rgba(94, 108, 116, .4));border-radius:2px;pointer-events:none}.code-display.hide-lines .code-block-content:before{background-color:transparent!important}.code-block-body{padding-left:3rem;display:flex;flex-direction:column;gap:clamp(0px,calc(4vh / var(--line-count, 10)),6px);padding-top:clamp(0px,calc(3vh / var(--line-count, 10)),4px);padding-bottom:clamp(0px,calc(3vh / var(--line-count, 10)),4px)}.code-line.closing-brace{margin-left:-20px;align-self:flex-start}.game-quick-controls{display:flex;align-items:center;justify-content:center;gap:1rem;padding:.2rem 1rem .8rem;flex-wrap:wrap}.game-controls-copy{display:flex;flex-direction:column;gap:.18rem;text-align:center;color:var(--text-muted)}.game-controls-copy strong{font-size:.88rem;color:var(--text-strong)}.game-controls-copy span{font-size:.76rem}.game-dpad{display:grid;grid-template-columns:repeat(3,minmax(58px,72px));grid-template-areas:". up ." "left down right";gap:.55rem;justify-content:center}.game-dir-btn{min-height:58px;border:1px solid rgba(59,130,246,.18);border-radius:18px;background:linear-gradient(135deg,#fff,#eff6ff);box-shadow:0 10px 22px #94a3b824;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.18rem;color:#1d4ed8;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.game-dir-btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px #3b82f62e;border-color:#3b82f657}.game-dir-btn small{font-size:.68rem;font-weight:700}.game-dir-btn.up{grid-area:up}.game-dir-btn.left{grid-area:left}.game-dir-btn.down{grid-area:down}.game-dir-btn.right{grid-area:right}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}50%{transform:translate(5px)}75%{transform:translate(-5px)}}@keyframes flash{0%{opacity:0}20%{opacity:1}to{opacity:.8}}.tutorial-overlay{position:fixed;inset:0;z-index:9999;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;animation:tutorialFadeIn .4s ease}.tutorial-overlay.tutorial-hidden{animation:tutorialFadeOut .4s ease forwards}@keyframes tutorialFadeIn{0%{opacity:0}to{opacity:1}}@keyframes tutorialFadeOut{0%{opacity:1}to{opacity:0}}.tutorial-content{display:flex;flex-direction:column;align-items:center;gap:24px;animation:tutorialSlideUp .5s cubic-bezier(.34,1.56,.64,1)}@keyframes tutorialSlideUp{0%{opacity:0;transform:translateY(40px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.tutorial-bubble{display:flex;align-items:flex-start;gap:14px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:20px 26px;border-radius:20px;box-shadow:0 8px 32px #00000026;max-width:380px;position:relative}.tutorial-bubble:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%) rotate(45deg);width:20px;height:20px;background:#fffffff2;box-shadow:4px 4px 8px #0000000d}.tutorial-bubble-icon{font-size:2.2rem;flex-shrink:0;animation:tutorialBounce 2s infinite}@keyframes tutorialBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.tutorial-bubble-text{display:flex;flex-direction:column;gap:6px}.tutorial-bubble-text strong{font-size:1.1rem;color:#1c7ed6}.tutorial-bubble-text p{margin:0;font-size:.9rem;color:#495057;line-height:1.5}.tutorial-hint-text{font-size:.8rem!important;color:#868e96!important;background:#f1f3f5;padding:6px 10px;border-radius:8px;border-left:3px solid #4facfe}.tutorial-hint-text code{background:#e7f5ff;padding:2px 6px;border-radius:4px;font-weight:700;color:#1c7ed6}.tutorial-keyboard{display:flex;flex-direction:column;align-items:center;gap:6px}.tutorial-key-row{display:flex;gap:6px}.tutorial-key{width:56px;height:52px;border-radius:10px;background:linear-gradient(180deg,#f8f9fa,#e9ecef);border:2px solid #ced4da;border-bottom-width:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:1rem;color:#495057;transition:all .15s;box-shadow:0 2px 8px #00000014}.tutorial-key small{font-size:.55rem;color:#adb5bd;margin-top:1px}.tutorial-key.highlight-key{background:linear-gradient(180deg,#4facfe,#1c7ed6);border-color:#1971c2;color:#fff;box-shadow:0 0 20px #4facfe80,0 4px 12px #1c7ed64d;animation:keyPulse 1.2s infinite alternate ease-in-out;transform:scale(1.08)}.tutorial-key.highlight-key small{color:#ffffffb3}@keyframes keyPulse{0%{box-shadow:0 0 15px #4facfe66,0 4px 12px #1c7ed633;transform:scale(1.05) translateY(0)}to{box-shadow:0 0 30px #4facfeb3,0 4px 16px #1c7ed666;transform:scale(1.12) translateY(-3px)}}.tutorial-mobile{display:flex;justify-content:center}.tutorial-phone-area{width:120px;height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.tutorial-finger{position:relative;z-index:2;animation:fingerSwipeUp 1.8s infinite ease-in-out}.tutorial-finger-emoji{font-size:3rem;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2))}@keyframes fingerSwipeUp{0%{transform:translateY(40px);opacity:.4}20%{opacity:1}60%{transform:translateY(-30px);opacity:1}80%{opacity:.3}to{transform:translateY(-30px);opacity:0}}.tutorial-swipe-trail{position:absolute;width:3px;height:70px;top:50%;left:50%;transform:translate(-50%);background:linear-gradient(to top,transparent,rgba(79,172,254,.6),transparent);border-radius:2px;animation:trailPulse 1.8s infinite ease-in-out}@keyframes trailPulse{0%,to{opacity:0}30%,50%{opacity:.6}}.tutorial-swipe-label{position:absolute;bottom:-5px;font-size:.75rem;color:#fffc;font-weight:600;text-align:center;white-space:nowrap}.tutorial-dismiss-btn{padding:12px 28px;border:none;border-radius:30px;background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;font-size:1rem;font-weight:700;cursor:pointer;box-shadow:0 4px 16px #4facfe66;transition:all .2s}.tutorial-dismiss-btn:hover{transform:scale(1.05);box-shadow:0 6px 20px #4facfe99}.tutorial-dismiss-btn:active{transform:scale(.98)}.focus-mode-overlay{position:fixed;inset:0;background:radial-gradient(circle at 50% 50%,#0000 10%,#000000d9 60%,#000000fa);z-index:5;pointer-events:none;animation:fadeInFocus .6s ease forwards}@keyframes fadeInFocus{0%{opacity:0}to{opacity:1}}.focus-mode-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;cursor:pointer;transition:all .3s ease;position:absolute;top:15px;left:20px;z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);box-shadow:0 4px 10px #0003}.focus-mode-btn:hover{background:#ffffff40;transform:scale(1.1);box-shadow:0 0 15px #ffffff4d}.focus-mode-active .grid-and-code-wrapper,.focus-mode-active .game-header{position:relative;z-index:10}.ls-view{width:100vw;max-width:100%;height:100vh;margin:0;padding:3rem 2rem 4rem;display:flex;flex-direction:column;align-items:center;overflow-y:auto;overflow-x:hidden;background:radial-gradient(ellipse at 20% 50%,#1a1147 0%,transparent 55%),radial-gradient(ellipse at 80% 20%,#0d2847 0%,transparent 50%),radial-gradient(ellipse at 50% 80%,#1a0a2e 0%,transparent 60%),linear-gradient(180deg,#050510,#0a0a2e 40%,#0d0d35,#050510);position:relative;z-index:1}.ls-view:before,.ls-view:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.ls-view:before{background-image:radial-gradient(1px 1px at 10% 15%,rgba(255,255,255,.8),transparent),radial-gradient(1px 1px at 25% 35%,rgba(255,255,255,.6),transparent),radial-gradient(1.5px 1.5px at 40% 10%,rgba(255,255,255,.9),transparent),radial-gradient(1px 1px at 55% 45%,rgba(200,220,255,.7),transparent),radial-gradient(1px 1px at 70% 20%,rgba(255,255,255,.5),transparent),radial-gradient(1.5px 1.5px at 85% 55%,rgba(255,220,180,.8),transparent),radial-gradient(1px 1px at 15% 70%,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 35% 85%,rgba(200,200,255,.7),transparent),radial-gradient(1.5px 1.5px at 60% 75%,rgba(255,255,255,.9),transparent),radial-gradient(1px 1px at 80% 90%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 45% 60%,rgba(255,200,200,.6),transparent),radial-gradient(1px 1px at 90% 30%,rgba(255,255,255,.7),transparent),radial-gradient(2px 2px at 5% 50%,rgba(255,255,255,1),transparent),radial-gradient(1px 1px at 50% 25%,rgba(180,200,255,.8),transparent),radial-gradient(1px 1px at 95% 75%,rgba(255,255,255,.6),transparent),radial-gradient(1.5px 1.5px at 20% 90%,rgba(255,220,255,.7),transparent),radial-gradient(1px 1px at 75% 5%,rgba(255,255,255,.8),transparent);animation:starTwinkle 4s ease-in-out infinite alternate}.ls-view:after{background-image:radial-gradient(2px 2px at 12% 28%,rgba(100,180,255,.9),transparent),radial-gradient(2.5px 2.5px at 78% 42%,rgba(255,200,100,.8),transparent),radial-gradient(2px 2px at 32% 68%,rgba(200,150,255,.7),transparent),radial-gradient(3px 3px at 65% 12%,rgba(255,255,200,1),transparent),radial-gradient(2px 2px at 88% 82%,rgba(150,200,255,.8),transparent),radial-gradient(2.5px 2.5px at 48% 92%,rgba(255,180,220,.7),transparent),radial-gradient(2px 2px at 8% 85%,rgba(200,255,200,.6),transparent);animation:starTwinkle 5s ease-in-out 1s infinite alternate-reverse}@keyframes starTwinkle{0%{opacity:.6}50%{opacity:1}to{opacity:.7}}.space-decorations{position:fixed;inset:0;pointer-events:none;z-index:1;overflow:hidden}.shooting-star{position:absolute;width:2px;height:2px;background:#fff;border-radius:50%;box-shadow:0 0 6px 2px #fff9;opacity:0}.shooting-star:after{content:"";position:absolute;top:0;right:0;width:50px;height:1px;background:linear-gradient(90deg,rgba(255,255,255,.8),transparent);transform-origin:right center}@keyframes shootingStar{0%{opacity:0;transform:translate(0) rotate(-35deg)}5%{opacity:1}20%{opacity:1}30%{opacity:0;transform:translate(-250px,150px) rotate(-35deg)}to{opacity:0}}.ss1{top:8%;left:75%;animation:shootingStar 6s 1s infinite}.ss2{top:25%;left:90%;animation:shootingStar 8s 3s infinite}.ss3{top:45%;left:60%;animation:shootingStar 7s 5s infinite}.ss4{top:15%;left:40%;animation:shootingStar 9s 7s infinite}.ss5{top:65%;left:85%;animation:shootingStar 6s 4s infinite}.space-planet{position:absolute;border-radius:50%}.planet1{width:35px;height:35px;top:18%;right:6%;background:radial-gradient(circle at 35% 35%,#ffa8a8,#e03131 70%);box-shadow:inset -6px -4px 8px #0000004d,inset 3px 2px 6px #fff3,0 0 15px #e0313133;animation:planetFloat1 20s ease-in-out infinite}.planet2{width:22px;height:22px;top:55%;left:4%;background:radial-gradient(circle at 30% 30%,#b197fc,#7048e8 70%);box-shadow:inset -4px -3px 6px #0000004d,inset 2px 1px 4px #fff3,0 0 12px #7048e833;animation:planetFloat2 15s ease-in-out 2s infinite}.planet3{width:28px;height:28px;bottom:20%;right:10%;background:radial-gradient(circle at 35% 35%,#ffd43b,#e67700 60%);box-shadow:inset -5px -3px 7px #00000040,inset 2px 2px 5px #ffffff4d,0 0 20px #e6770026;animation:planetFloat1 25s ease-in-out 5s infinite}.planet3:after{content:"";position:absolute;top:50%;left:50%;width:150%;height:30%;border:2px solid rgba(255,212,59,.35);border-radius:50%;transform:translate(-50%,-50%) rotate(-20deg)}@keyframes planetFloat1{0%,to{transform:translate(0)}25%{transform:translate(-8px,12px)}50%{transform:translate(5px,-8px)}75%{transform:translate(-3px,5px)}}@keyframes planetFloat2{0%,to{transform:translate(0)}33%{transform:translate(10px,-6px)}66%{transform:translate(-7px,10px)}}.black-hole{position:absolute;border-radius:50%;display:flex;align-items:center;justify-content:center}.bh1{width:45px;height:45px;top:35%;left:3%;background:radial-gradient(circle,#000 0%,#000 40%,rgba(80,40,120,.4) 60%,transparent 75%);box-shadow:0 0 25px 5px #50287833;animation:bhPulse 4s ease-in-out infinite}.bh2{width:30px;height:30px;bottom:15%;left:8%;background:radial-gradient(circle,#000 0%,#000 35%,rgba(28,126,214,.3) 55%,transparent 70%);box-shadow:0 0 20px 3px #1c7ed626;animation:bhPulse 5s ease-in-out 2s infinite}.bh-ring{width:130%;height:130%;border-radius:50%;border:1.5px solid transparent;border-top-color:#b197fc80;border-right-color:#b197fc33;animation:bhSpin 3s linear infinite;position:absolute}.bh2 .bh-ring{border-top-color:#74c0fc80;border-right-color:#74c0fc33;animation-duration:4s;animation-direction:reverse}@keyframes bhSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bhPulse{0%,to{transform:scale(1);box-shadow:0 0 25px 5px #50287833}50%{transform:scale(1.08);box-shadow:0 0 35px 8px #5028784d}}.ls-home-btn{position:fixed;top:24px;left:24px;width:52px;height:52px;border-radius:14px;border:3px solid rgba(255,255,255,.4);background:linear-gradient(135deg,#4dabf7,#1c7ed6);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 6px #0000001a,inset 0 2px 4px #fff6,inset 0 -2px 4px #0000001a;transition:all .2s cubic-bezier(.2,.8,.2,1);z-index:100}.ls-home-btn:after{content:"";position:absolute;inset:0;border-radius:10px;background:linear-gradient(to bottom right,rgba(255,255,255,.4),transparent);pointer-events:none}.ls-home-btn:hover{transform:translateY(-4px) scale(1.05);box-shadow:0 8px 15px #1c7ed64d,inset 0 2px 4px #fff9,inset 0 -2px 4px #0000001a;border-color:#fffc}.ls-home-btn:active{transform:translateY(2px) scale(.95);box-shadow:inset 0 2px 4px #0003}.ls-title{display:flex;align-items:center;justify-content:center;gap:12px;font-size:clamp(1.8rem,5vw,2.8rem);background:linear-gradient(135deg,#74c0fc,#b197fc,#ffa8a8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#74c0fc;margin-bottom:2rem;position:relative;font-weight:800;letter-spacing:2px;animation:slideDown .6s ease-out forwards;z-index:2;filter:drop-shadow(0 4px 8px rgba(100,150,255,.3))}.ls-title-emoji{-webkit-text-fill-color:initial;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));font-size:.9em}.ls-map-grid{display:grid;grid-template-columns:repeat(var(--cols, 7),125px);grid-auto-rows:115px;gap:0;justify-content:center;padding-bottom:2rem;z-index:2;position:relative}.ls-map-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;opacity:1;animation:cellFadeIn .4s ease-out both}.ls-map-cell.ls-offset-row{transform:translate(63px)}@keyframes cellFadeIn{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.ls-map-cell.ls-offset-row{animation:cellFadeInOffset .4s ease-out both}@keyframes cellFadeInOffset{0%{opacity:0;transform:translate(63px) scale(.7)}to{opacity:1;transform:translate(63px) scale(1)}}.ls-node{position:relative;display:flex;align-items:center;justify-content:center}@media(max-width:768px){.ls-map-grid{grid-template-columns:repeat(var(--cols, 4),100px);grid-auto-rows:95px}.ls-map-cell.ls-offset-row{transform:translate(50px)}@keyframes cellFadeInOffset{0%{opacity:0;transform:translate(50px) scale(.7)}to{opacity:1;transform:translate(50px) scale(1)}}}@media(max-width:480px){.ls-map-grid{grid-template-columns:repeat(var(--cols, 3),90px);grid-auto-rows:90px}.ls-map-cell.ls-offset-row{transform:translate(45px)}@keyframes cellFadeInOffset{0%{opacity:0;transform:translate(45px) scale(.7)}to{opacity:1;transform:translate(45px) scale(1)}}}.ls-question-btn{position:absolute;top:-14px;right:-14px;width:30px;height:30px;border-radius:50%;border:3px solid #ff922b;background:linear-gradient(135deg,#ffd43b,#ff922b);color:#fff;font-weight:900;font-size:1rem;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;box-shadow:0 3px 8px #ff922b66;transition:transform .2s cubic-bezier(.175,.885,.32,1.275);text-shadow:0 1px 2px rgba(0,0,0,.2)}.ls-question-btn:hover{transform:scale(1.25) rotate(15deg)}.ls-info-panel{background:#0f0f37e6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:1rem 1.4rem;border-radius:18px;border:2px solid rgba(77,171,247,.4);box-shadow:0 8px 30px #0006,0 4px 10px #4dabf726;position:absolute;bottom:calc(100% + 16px);left:50%;transform:translate(-50%) scale(.8);width:260px;text-align:center;opacity:0;pointer-events:none;transition:all .3s cubic-bezier(.175,.885,.32,1.275);z-index:50}.ls-info-panel.show-panel{opacity:1;pointer-events:auto;transform:translate(-50%) scale(1)}.ls-info-panel.panel-left,.ls-info-panel.panel-right{bottom:calc(100% + 16px);left:50%;right:auto;transform:translate(-50%) scale(.8)}.ls-info-panel.show-panel.panel-left,.ls-info-panel.show-panel.panel-right{transform:translate(-50%) scale(1)}.ls-info-panel:after{content:"";position:absolute;bottom:-12px;left:50%;transform:translate(-50%);border-width:14px 10px 0 10px;border-style:solid;border-color:rgba(77,171,247,.4) transparent transparent transparent}.ls-info-panel h3{margin:0 0 6px;color:#74c0fc;font-size:1.1rem;font-weight:900;letter-spacing:.5px}.ls-info-panel p{margin:0;color:#ffffffbf;font-size:.88rem;line-height:1.5;font-weight:600}.ls-circle{width:75px;height:75px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--font-mono);font-size:2.2rem;font-weight:900;cursor:pointer;transition:all .25s cubic-bezier(.175,.885,.32,1.275);z-index:2;position:relative;text-shadow:0 2px 4px rgba(0,0,0,.2)}.ls-circle:before{content:"";position:absolute;inset:-4px;border-radius:50%;border:3px solid transparent;border-top-color:#fff9;border-right-color:#fff3;animation:none;pointer-events:none}.ls-circle:after{content:none}@keyframes lsCircleSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ls-circle:not(:disabled):hover{transform:translateY(-6px) scale(1.12)}.ls-circle:not(:disabled):hover:before{animation:lsCircleSpin 1.5s linear infinite}.ls-circle:not(:disabled):active{transform:translateY(2px) scale(.95);transition:all .05s}.ls-circle.completed{background:#44c767;color:#fff;box-shadow:inset 0 -5px #0003,0 4px 12px #37b24d4d}.ls-circle.completed:before{border-top-color:#ffffff80;border-right-color:#69db7c66}.ls-circle.completed:hover{box-shadow:inset 0 -5px #0003,0 8px 20px #37b24d73}.ls-circle.completed:active{box-shadow:inset 0 -2px #0003,0 2px 6px #37b24d4d}.ls-circle.completed svg{width:34px;height:34px}.ls-circle.current{background:#ffc83d;color:#5c4504;box-shadow:inset 0 -5px #0000002e,0 4px 12px #fab00559;animation:portalCurrentPulse 2s infinite alternate ease-in-out}.ls-circle.current:before{border-top-color:#ffffffb3;border-right-color:#ffd43b80;animation:lsCircleSpin 2s linear infinite}.ls-circle.current:hover{box-shadow:inset 0 -5px #0000002e,0 8px 20px #fab00573;animation:none;transform:translateY(-6px) scale(1.12)}.ls-circle.current:active{box-shadow:inset 0 -2px #0000002e,0 2px 8px #fab00566}@keyframes portalCurrentPulse{0%{transform:translateY(0) scale(1);box-shadow:inset 0 -5px #0000002e,0 4px 12px #fab00559}to{transform:translateY(-4px) scale(1.05);box-shadow:inset 0 -5px #0000002e,0 6px 16px #fab00573}}.ls-circle.locked{background:var(--surface-sunken);color:var(--text-muted);box-shadow:inset 0 -4px #141e321a;cursor:not-allowed;text-shadow:none;transform:none}.ls-circle.locked:before{border-top-color:#ced4da66;border-right-color:transparent;animation:none}.ls-circle.locked:after{opacity:.3}.ls-circle.locked svg{width:26px;height:26px;color:var(--text-muted);filter:none}.ls-level-name{display:block;font-size:.65rem;font-weight:700;color:#ffffff80;text-align:center;margin-top:2px;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:.3px;line-height:1.2}.ls-level-name.completed{color:#8ce99acc}.ls-level-name.current{color:#ffd43be6;font-weight:800}.ls-stats-panel{margin-top:2rem;padding:1.2rem 2rem;background:#0a0a3299;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:20px;border:1px solid rgba(100,150,255,.15);box-shadow:0 4px 20px #0000004d;display:flex;flex-direction:column;align-items:center;gap:12px;max-width:min(500px,95vw);width:90%;animation:fadeIn .8s ease;z-index:2;position:relative}.ls-stats-progress{width:100%;display:flex;flex-direction:column;align-items:center;gap:8px}.ls-stats-bar{width:100%;height:10px;background:#ffffff1a;border-radius:10px;overflow:hidden}.ls-stats-bar-fill{height:100%;background:linear-gradient(90deg,#51cf66,#37b24d);border-radius:10px;transition:width .8s cubic-bezier(.175,.885,.32,1.275)}.ls-stats-text{font-size:.82rem;font-weight:700;color:#fffc;letter-spacing:.3px}.ls-stats-badges{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.ls-badge{font-size:.78rem;font-weight:700;padding:4px 12px;border-radius:12px;background:#4dabf726;color:#74c0fc;border:1px solid rgba(77,171,247,.25)}.ls-badge.gold{background:#ffd43b26;color:#ffd43b;border-color:#ffd43b4d}.ls-badge.diamond{background:#b197fc26;color:#b197fc;border-color:#b197fc40}.shooting-star,.space-planet,.black-hole,.bh-ring,.ls-circle:before{will-change:transform}.ls-map-cell{contain:layout style}@media(prefers-reduced-motion:reduce){.shooting-star,.space-planet,.black-hole,.bh-ring{animation:none!important}.ls-circle:before{animation:none!important}.ls-circle.current:before{animation:none!important}.ls-map-cell{animation:none!important;opacity:1!important}.ls-view:before,.ls-view:after{animation:none!important}.shooting-star{display:none}}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.player-inner{cursor:pointer;transition:border-radius .3s,border-color .3s,transform .2s}.player-inner:hover{transform:scale(1.1)}.player-inner.shape-circle,.profile-icon.shape-circle{border-radius:50%}.player-inner.shape-square,.profile-icon.shape-square{border-radius:8px}.player-inner.shape-diamond,.profile-icon.shape-diamond{border-radius:4px;transform:rotate(45deg)}.player-inner.shape-diamond:hover{transform:rotate(45deg) scale(1.1)}.customizer-overlay{position:fixed;inset:0;background:#0b223980;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999}.code-section{flex:1;background-color:var(--bg-code);display:flex;justify-content:center;align-items:center;padding:1rem 1rem 2rem;overflow:hidden;position:relative;box-shadow:inset 5px 0 15px #0000000d}.customizer-panel{background-color:var(--cv2-panel-bg);border:1px solid var(--cv2-panel-border);padding:2rem;border-radius:28px;width:90%;max-width:min(500px,95vw);box-shadow:0 10px 30px var(--cv2-shadow-color);position:relative;text-align:center}.customizer-panel.admin-panel{text-align:left}.admin-table-row:hover{background-color:var(--surface-hover)!important}.customizer-panel .close-btn{position:absolute;top:10px;right:15px;background:none;border:none;font-size:2rem;color:var(--text-muted);cursor:pointer}.customizer-panel h3{color:var(--text-active);margin-bottom:1.5rem;font-size:1.8rem}.prof-customizer{padding:0;overflow:hidden;width:95%;max-width:1200px}.prof-customizer .close-btn{top:15px;right:15px;z-index:10;color:var(--text-secondary);font-size:1.5rem;background:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 5px #0000001a;transition:all .2s}.prof-customizer .close-btn:hover{background:var(--surface-hover);transform:scale(1.1)}.prof-customizer h3{margin:0;padding:20px 0;background:var(--surface-hover);border-bottom:1px solid var(--surface-sunken);font-size:1.4rem;color:#212529}.customizer-preview-area{background:linear-gradient(135deg,#e8f4f8,#f0e6ff,#e8f4f8);background-size:200% 200%;animation:previewGradientShift 6s ease-in-out infinite;padding:40px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;border-bottom:1px solid var(--border);gap:15px;position:relative;overflow:hidden}@keyframes previewGradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.preview-surprise-btn{position:absolute;top:12px;right:12px;width:44px;height:44px;border-radius:50%;border:none;background:linear-gradient(135deg,#ff6b6b,#ee5a24);color:#fff;font-size:1.4rem;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #ee5a2459,0 0 0 3px #fff6;transition:all .25s cubic-bezier(.175,.885,.32,1.275);z-index:5}.preview-surprise-btn:hover{transform:scale(1.15) rotate(15deg);box-shadow:0 6px 18px #ee5a2473,0 0 0 4px #fff9}.preview-surprise-btn:active{transform:scale(.95) rotate(-10deg)}.preview-grid-cell{width:160px;height:160px;border-radius:50%;background:#c8c8dc26;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.preview-character{display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 12px 35px #0000002e;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.preview-character.shape-circle{border-radius:50%}.preview-emoji{font-size:5rem;line-height:1}.preview-label{font-size:.85rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px}.customizer-options-container{padding:25px 30px;display:flex;flex-direction:column;gap:25px;max-height:50vh;overflow-y:auto}.customizer-section{margin-bottom:0;text-align:left;padding-top:20px;border-top:1px solid var(--surface-sunken)}.customizer-section:first-child,.customizer-section.presets-section{border-top:none;padding-top:0}.customizer-section h4{font-size:.95rem;font-weight:700;color:var(--text-secondary);margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.options-row{display:flex;gap:12px;flex-wrap:wrap}.emoji-option.locked,.aura-option.locked{position:relative;opacity:.5;pointer-events:auto;cursor:not-allowed;overflow:hidden}.emoji-option.locked:after,.aura-option.locked:after{content:"";position:absolute;inset:0;background:#00000040;border-radius:inherit;pointer-events:none}.lock-icon{position:absolute;bottom:-2px;right:-2px;font-size:1rem;z-index:2;filter:drop-shadow(0 1px 3px rgba(0,0,0,.4));line-height:1}.aura-option .lock-icon{position:relative;bottom:auto;right:auto;margin-left:4px;font-size:.85rem}.sliders-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.slider-card{background:linear-gradient(135deg,var(--surface-hover) 0%,#ffffff 100%);border:1px solid var(--surface-sunken);border-left:3px solid #1c7ed6;border-radius:10px;padding:10px 12px 12px;display:flex;flex-direction:column;gap:6px;transition:all .25s cubic-bezier(.175,.885,.32,1.275);position:relative}.slider-card:nth-child(1){border-left-color:#1c7ed6}.slider-card:nth-child(2){border-left-color:#f783ac}.slider-card:nth-child(3){border-left-color:#fcc419}.slider-card:nth-child(4){border-left-color:#20c997}.slider-card:hover{border-color:var(--border);transform:translateY(-1px);box-shadow:0 4px 12px #0000000f}.slider-card:hover .slider-value{transform:scale(1.05)}.slider-card-header{display:flex;justify-content:space-between;align-items:center}.slider-label{font-size:.72rem;font-weight:800;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.slider-value{font-size:.68rem;font-weight:800;color:#fff;background:linear-gradient(135deg,#1c7ed6,#845ef7);padding:2px 10px;border-radius:10px;letter-spacing:.5px;box-shadow:0 2px 6px #1c7ed633;transition:transform .2s ease}.slider-card:nth-child(2) .slider-value{background:linear-gradient(135deg,#f783ac,#e64980)}.slider-card:nth-child(3) .slider-value{background:linear-gradient(135deg,#fcc419,#f59f00)}.slider-card:nth-child(4) .slider-value{background:linear-gradient(135deg,#20c997,#0ca678)}.premium-range{-webkit-appearance:none;appearance:none;width:100%;height:5px;border-radius:4px;background:linear-gradient(90deg,var(--surface-sunken) 0%,var(--border) 100%);outline:none;cursor:pointer;margin:2px 0}.premium-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:linear-gradient(135deg,#1c7ed6,#845ef7);border:2.5px solid #fff;box-shadow:0 2px 8px #1c7ed666;cursor:pointer;transition:all .15s ease}.premium-range::-webkit-slider-thumb:hover{transform:scale(1.25);box-shadow:0 3px 12px #1c7ed680}.premium-range::-webkit-slider-thumb:active{transform:scale(1.1);box-shadow:0 2px 6px #1c7ed699}.premium-range::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:linear-gradient(135deg,#1c7ed6,#845ef7);border:2.5px solid #fff;box-shadow:0 2px 8px #1c7ed666;cursor:pointer}.premium-range::-moz-range-track{height:5px;border-radius:4px;background:linear-gradient(90deg,var(--surface-sunken) 0%,var(--border) 100%)}.slider-card:nth-child(2) .premium-range::-webkit-slider-thumb{background:linear-gradient(135deg,#f783ac,#e64980);box-shadow:0 2px 8px #f783ac66}.slider-card:nth-child(3) .premium-range::-webkit-slider-thumb{background:linear-gradient(135deg,#fcc419,#f59f00);box-shadow:0 2px 8px #fcc41966}.slider-card:nth-child(4) .premium-range::-webkit-slider-thumb{background:linear-gradient(135deg,#20c997,#0ca678);box-shadow:0 2px 8px #20c99766}.grid-row-emojis{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:8px}.emoji-option{aspect-ratio:1;border-radius:10px;border:2px solid var(--surface-sunken);background:#fff;cursor:pointer;font-size:1.5rem;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.175,.885,.32,1.275)}.emoji-option:hover{background:var(--surface-hover);border-color:var(--border);transform:translateY(-2px)}.emoji-option.active{border-color:#1c7ed6;background:#e7f5ff;box-shadow:0 4px 12px #1c7ed626;transform:scale(1.05)}.premium-toggle-card{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;background:linear-gradient(145deg,#ffffff,var(--surface-hover));border:1px solid var(--surface-sunken);border-radius:14px;margin-bottom:20px;box-shadow:0 4px 15px #00000008;transition:all .3s ease}.premium-toggle-card:hover{border-color:var(--border);box-shadow:0 6px 20px #0000000f;transform:translateY(-1px)}.premium-toggle-info{display:flex;align-items:center;gap:12px}.toggle-icon{font-size:1.5rem;background:#e7f5ff;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:10px;box-shadow:0 2px 8px #1c7ed626}.toggle-text{display:flex;flex-direction:column;gap:2px}.toggle-title{font-size:.95rem;font-weight:700;color:#343a40}.toggle-desc{font-size:.75rem;color:var(--text-muted)}.premium-switch{width:52px;height:28px;border-radius:14px;border:none;background:var(--border);cursor:pointer;position:relative;transition:background .3s cubic-bezier(.175,.885,.32,1.275);box-shadow:inset 0 2px 4px #0000001a}.premium-switch.active{background:linear-gradient(135deg,#339af0,#1c7ed6);box-shadow:0 4px 12px #1c7ed64d}.switch-thumb{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #0003;transition:left .3s cubic-bezier(.175,.885,.32,1.275)}.premium-switch.active .switch-thumb{left:27px}.grid-row-auras{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:12px}.aura-card{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#fff;border:1.5px solid var(--surface-sunken);border-radius:12px;color:var(--text-secondary);cursor:pointer;transition:all .25s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden;text-align:left}.aura-card:hover{border-color:var(--text-muted);background:var(--surface-hover);transform:translateY(-2px);box-shadow:0 6px 16px #0000000f}.aura-card.active{background:linear-gradient(135deg,#e7f5ff,#f3f0ff);border-color:#339af0;box-shadow:0 4px 15px #1c7ed626}.aura-icon{font-size:1.3rem;line-height:1}.aura-label{font-size:.8rem;font-weight:700;white-space:nowrap}.active-check{margin-left:auto;font-size:.9rem;color:#1c7ed6;font-weight:900}@keyframes auraPulseScale{0%,to{scale:1}50%{scale:1.1}}@keyframes auraSpinRotate{to{rotate:360deg}}@keyframes auraShakeTranslate{0%,to{translate:0px 0px;rotate:0deg}25%{translate:-3px 0px;rotate:-3deg}75%{translate:3px 0px;rotate:3deg}}@keyframes auraBounceTranslate{0%,to{translate:0px 0px}50%{translate:0px -8px}}@keyframes auraFloatTranslate{0%,to{translate:0px 0px}50%{translate:0px -5px}}@keyframes auraFlashOpacity{0%,to{opacity:1}50%{opacity:.2}}@keyframes auraWobbleRotate{0%,to{rotate:0deg}25%{rotate:-15deg}75%{rotate:15deg}}@keyframes auraRainbowHue{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}@keyframes auraGrowScale{0%,to{scale:1}50%{scale:1.25}}@keyframes auraVibrateTranslate{0%{translate:0px 0px}25%{translate:-1px 1px}50%{translate:1px -1px}75%{translate:-1px -1px}to{translate:1px 1px}}@keyframes auraShadowDance{0%,to{box-shadow:5px 5px 15px #0000004d}25%{box-shadow:-5px 5px 20px #6432c866}50%{box-shadow:-5px -5px 15px #3296c866}75%{box-shadow:5px -5px 20px #c8326466}}.slider-card-disabled{opacity:.45;pointer-events:none}.slider-hint{font-size:.6rem;font-weight:600;color:#e67700;margin-left:4px;letter-spacing:0;text-transform:none}.sliders-container{display:flex;flex-direction:column;gap:15px;background:var(--surface-hover);padding:15px;border-radius:8px;border:1px solid var(--surface-sunken)}.slider-row{display:flex;flex-direction:column;gap:8px}.slider-row label{font-size:.85rem;font-weight:700;color:var(--text-secondary)}.slider-row input[type=range]{width:100%;accent-color:#1c7ed6}.emojis-section{display:flex;flex-direction:column;gap:20px}.emoji-category h5{font-size:.8rem;color:var(--text-muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.player-emoji{font-size:4rem;line-height:1;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.profile-emoji{font-size:1.6rem;line-height:1;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.sp-container{background:var(--cv2-panel-bg);border:1px solid var(--cv2-panel-border);border-radius:28px;width:min(440px,95vw);padding:0;box-shadow:0 25px 80px var(--cv2-shadow-color),inset 0 0 0 1px #ffffff0d;animation:popIn .35s cubic-bezier(.175,.885,.32,1.275);overflow:hidden;color:var(--cv2-card-text)}.sp-header{display:flex;align-items:center;gap:12px;padding:1.3rem 1.6rem;background:var(--cv2-header-bg);border-bottom:1px solid var(--cv2-panel-border);color:var(--cv2-header-text);font-size:1.25rem;font-weight:800;letter-spacing:.3px}.sp-header svg{opacity:.85;filter:drop-shadow(0 1px 3px rgba(0,0,0,.15))}.sp-header span{flex:1}.sp-close{background:var(--cv2-close-btn-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--cv2-panel-border);color:var(--cv2-close-btn-color);font-size:1.3rem;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.sp-close:hover{background:#ef4444;color:#fff;border-color:#ef4444;transform:rotate(90deg)}.sp-nav-group{padding:1.2rem 1.4rem;display:flex;flex-direction:column;gap:10px}.sp-nav-btn{display:flex;align-items:center;gap:14px;width:100%;padding:14px 18px;background:linear-gradient(135deg,var(--surface-hover) 0%,#fff 100%);border:1.5px solid var(--surface-sunken);border-left:4px solid #1c7ed6;border-radius:14px;cursor:pointer;transition:all .25s cubic-bezier(.175,.885,.32,1.275);font-family:inherit;text-align:left}.sp-nav-btn:hover{border-color:var(--border);background:linear-gradient(135deg,var(--surface-sunken) 0%,#fff 100%);transform:translate(6px);box-shadow:0 4px 16px #0000000f}.sp-nav-btn:hover>svg:last-child{transform:translate(3px);color:#1c7ed6}.sp-nav-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 3px 10px #0000001a}.sp-nav-customize .sp-nav-icon{background:linear-gradient(135deg,#339af0,#1c7ed6);color:#fff}.sp-nav-customize{border-left-color:#1c7ed6}.sp-nav-levels .sp-nav-icon{background:linear-gradient(135deg,#f06595,#e22d64);color:#fff}.sp-nav-levels{border-left-color:#e22d64}.sp-nav-text{flex:1;display:flex;flex-direction:column;gap:3px}.sp-nav-text strong{font-size:1rem;font-weight:800;color:#212529}.sp-nav-text small{font-size:.78rem;color:var(--text-muted);font-weight:500}.sp-nav-btn>svg:last-child{color:#ced4da;flex-shrink:0;transition:all .2s}.sp-divider{height:1px;background:linear-gradient(90deg,transparent,var(--surface-sunken),transparent);margin:0 2rem}.sp-toggles{display:flex;justify-content:center;gap:12px;padding:1.4rem 1.5rem 1.6rem}.sp-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:85px;height:85px;border-radius:16px;border:2px solid var(--surface-sunken);background:linear-gradient(180deg,var(--surface-hover) 0%,#fff 100%);color:var(--text-muted);cursor:pointer;transition:all .25s cubic-bezier(.175,.885,.32,1.275);font-family:inherit;font-size:.78rem;font-weight:700;letter-spacing:.2px}.sp-toggle:hover{background:linear-gradient(180deg,var(--surface-sunken) 0%,var(--surface-hover) 100%);border-color:var(--border);transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.sp-toggle.on{border-color:#40c057;background:linear-gradient(180deg,#40c0570f,#40c05705);color:#2b8a3e;box-shadow:0 4px 14px #40c0572e,inset 0 0 0 1px #40c0571a}.sp-toggle.on:hover{box-shadow:0 6px 18px #40c05740,inset 0 0 0 1px #40c05726}.sp-toggle-icon{display:flex;align-items:center;justify-content:center}.profile-btn{position:absolute;top:2.2rem;left:2.2rem;background:linear-gradient(135deg,#ffffff,var(--surface-sunken));border:1px solid var(--text-muted);cursor:pointer;width:80px;height:80px;padding:0;border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s;box-shadow:0 4px 20px #00000026,0 0 0 4px #6366f11a;z-index:5}.profile-btn:hover{transform:scale(1.08);box-shadow:0 6px 24px #0003,0 0 0 5px #6366f133;border-color:#6366f1}.profile-icon{width:52px;height:52px;transition:border-radius .3s,transform .2s}.level-complete-panel{text-align:center;padding:3rem 2rem;animation:popIn .4s cubic-bezier(.175,.885,.32,1.275)}.level-complete-panel h2{font-size:2.5rem;color:var(--success-color);margin-top:1rem;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(43,138,62,.2)}.attempts-text{font-size:1.2rem;color:var(--text-secondary);margin-bottom:2rem}.attempts-text strong{font-size:1.5rem;color:#1c7ed6}.next-level-btn{width:100%;padding:1.2rem;font-size:1.4rem;background-color:#40c057}.next-level-btn:hover{background-color:#2b8a3e}.stars-container{display:flex;justify-content:center;gap:15px;margin-bottom:1rem}.star-icon{animation:popIn .5s cubic-bezier(.175,.885,.32,1.275);transition:transform .3s}.star-icon:hover{transform:scale(1.1)}.star-icon.filled{color:#fcc419;filter:drop-shadow(0 2px 5px rgba(252,196,25,.4))}.star-icon.empty{color:var(--surface-sunken)}.celebration-overlay{background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10001;overflow:hidden}.confetti-piece{position:absolute;top:-20px;opacity:0;animation:confettiPro var(--fall-duration, 3s) var(--fall-delay, 0s) ease-out forwards}.confetti-type-star{width:12px;height:12px;background:hsl(calc(var(--hue, 0) * 60),85%,60%);clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}.confetti-type-circle{width:10px;height:10px;border-radius:50%;background:hsl(calc(var(--hue, 0) * 120 + 30),80%,65%)}.confetti-type-rect{width:14px;height:6px;border-radius:2px;background:hsl(calc(var(--hue, 0) * 90 + 60),85%,55%)}.confetti-type-sparkle{width:10px;height:10px;background:hsl(calc(var(--hue, 0) * 50 + 40),90%,70%);clip-path:polygon(50% 0%,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0% 50%,40% 40%)}.confetti-type-ring{width:10px;height:10px;border-radius:50%;border:2.5px solid hsl(calc(var(--hue, 0) * 80 + 120),80%,60%);background:transparent}.confetti-type-diamond{width:9px;height:9px;background:hsl(calc(var(--hue, 0) * 100 + 200),75%,65%);transform:rotate(45deg);border-radius:2px}@keyframes confettiPro{0%{opacity:1;top:-20px;transform:translate(0) rotate(0) scale(1)}15%{opacity:1}to{opacity:0;top:110vh;transform:translate(var(--drift, 0px)) rotate(var(--spin, 720deg)) scale(.3)}}.celebration-robot-area{display:flex;align-items:center;justify-content:center;gap:12px;margin:.8rem 0 1.5rem;animation:titleSlide .6s ease-out .6s both}.celebration-robot{flex-shrink:0}.cel-robot-body{position:relative;width:50px;height:55px;animation:robotCelebrate 1.2s ease-in-out infinite alternate}.cel-robot-head{width:42px;height:32px;margin:0 auto;background:linear-gradient(180deg,#74c0fc,#339af0);border-radius:12px 12px 8px 8px;position:relative;box-shadow:0 2px 8px #339af04d}.cel-robot-head:before{content:"";position:absolute;top:-6px;left:50%;transform:translate(-50%);width:6px;height:6px;background:#fcc419;border-radius:50%;box-shadow:0 0 6px #fcc41999;animation:antennaGlow .8s ease-in-out infinite alternate}.cel-robot-eye{position:absolute;width:8px;height:8px;background:#fff;border-radius:50%;top:10px;animation:robotBlink 3s infinite}.cel-eye-l{left:8px}.cel-eye-r{right:8px}.cel-robot-eye:after{content:"";position:absolute;width:4px;height:4px;background:#1a1a2e;border-radius:50%;top:2px;left:2px}.cel-robot-mouth{position:absolute;bottom:5px;left:50%;transform:translate(-50%);width:14px;height:7px;border:2px solid #fff;border-top:none;border-radius:0 0 10px 10px}.cel-robot-arm{position:absolute;width:6px;height:20px;background:linear-gradient(180deg,#339af0,#1c7ed6);border-radius:3px;bottom:8px;transform-origin:top center}.cel-arm-l{left:-2px;animation:armWaveL .5s ease-in-out infinite alternate}.cel-arm-r{right:-2px;animation:armWaveR .5s ease-in-out infinite alternate}@keyframes robotCelebrate{0%{transform:translateY(0) rotate(-3deg)}to{transform:translateY(-6px) rotate(3deg)}}@keyframes armWaveL{0%{transform:rotate(-30deg)}to{transform:rotate(20deg)}}@keyframes armWaveR{0%{transform:rotate(30deg)}to{transform:rotate(-20deg)}}@keyframes antennaGlow{0%{box-shadow:0 0 4px #fcc41966}to{box-shadow:0 0 10px #fcc419e6}}@keyframes robotBlink{0%,95%,to{transform:scaleY(1)}97%{transform:scaleY(.1)}}.celebration-robot-bubble{background:linear-gradient(135deg,var(--surface-sunken),var(--surface-sunken));border-radius:14px;padding:10px 16px;font-size:.9rem;font-weight:600;color:#343a40;position:relative;box-shadow:0 2px 8px #00000014;max-width:200px;animation:bubblePop .4s ease-out .8s both}.celebration-robot-bubble:before{content:"";position:absolute;left:-8px;top:50%;transform:translateY(-50%);border:6px solid transparent;border-right-color:var(--surface-sunken)}@keyframes bubblePop{0%{opacity:0;transform:scale(.8) translate(10px)}to{opacity:1;transform:scale(1) translate(0)}}.celebration-panel{position:relative;overflow:visible;padding:2.5rem 2.5rem 2rem!important;background:linear-gradient(180deg,#fff,#f8fffe,#f0fff4)!important;border:2px solid rgba(64,192,87,.15);box-shadow:0 20px 60px #00000026,0 0 0 1px #40c0571a,inset 0 1px #fffc;animation:celebrationPop .5s cubic-bezier(.175,.885,.32,1.275)!important}@keyframes celebrationPop{0%{opacity:0;transform:scale(.5) translateY(30px)}60%{transform:scale(1.05) translateY(-5px)}to{opacity:1;transform:scale(1) translateY(0)}}.celebration-emoji-burst{position:absolute;top:50%;left:50%;width:0;height:0;pointer-events:none}.burst-emoji{position:absolute;font-size:1.8rem;animation:emojiBurst 1.2s ease-out forwards;opacity:0}.burst-1{animation-delay:.1s;--bx: -80px;--by: -90px}.burst-2{animation-delay:.2s;--bx: 85px;--by: -70px}.burst-3{animation-delay:.15s;--bx: -90px;--by: 30px}.burst-4{animation-delay:.25s;--bx: 75px;--by: 40px}.burst-5{animation-delay:.3s;--bx: 0px;--by: -100px}@keyframes emojiBurst{0%{opacity:1;transform:translate(0) scale(.3)}50%{opacity:1;transform:translate(var(--bx),var(--by)) scale(1.2)}to{opacity:0;transform:translate(calc(var(--bx) * 1.5),calc(var(--by) * 1.5)) scale(.5)}}.celebration-stars{gap:20px;margin-bottom:.5rem}.celebration-stars .star-icon{animation:starBounce .6s cubic-bezier(.175,.885,.32,1.275) both}.celebration-stars .star-icon.filled{filter:drop-shadow(0 3px 8px rgba(252,196,25,.5));animation:starBounce .6s cubic-bezier(.175,.885,.32,1.275) both,starGlow 2s ease-in-out infinite 1s,starSwing 3s ease-in-out infinite 1.5s}@keyframes starBounce{0%{opacity:0;transform:scale(0) rotate(-30deg)}50%{transform:scale(1.3) rotate(10deg)}70%{transform:scale(.9) rotate(-5deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes starGlow{0%,to{filter:drop-shadow(0 3px 8px rgba(252,196,25,.5))}50%{filter:drop-shadow(0 4px 20px rgba(252,196,25,.9)) drop-shadow(0 0 6px rgba(255,200,0,.4))}}@keyframes starSwing{0%,to{transform:rotate(0)}25%{transform:rotate(5deg)}75%{transform:rotate(-5deg)}}.celebration-title{font-size:2.2rem!important;font-weight:900;background:linear-gradient(135deg,#40c057,#1c7ed6,#845ef7);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-top:.8rem!important;margin-bottom:.3rem!important;animation:titleSlide .6s ease-out .3s both}@keyframes titleSlide{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.celebration-attempt-msg{font-size:1.1rem;color:var(--text-secondary);margin-bottom:1.8rem;font-weight:500;animation:titleSlide .6s ease-out .5s both}.celebration-next-btn{background:linear-gradient(135deg,#40c057,#2b8a3e)!important;border-radius:14px!important;font-weight:800!important;box-shadow:0 4px 15px #40c0574d;animation:titleSlide .6s ease-out .7s both;transition:all .3s cubic-bezier(.175,.885,.32,1.275)!important;position:relative;overflow:hidden}.celebration-next-btn:before{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:skew(-20deg);animation:celebBtnShine 2.5s infinite 1.5s}@keyframes celebBtnShine{0%{left:-100%}30%,to{left:200%}}.celebration-next-btn:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 8px 25px #40c05780!important;background:linear-gradient(135deg,#51cf66,#2b8a3e)!important}.diff-badge{display:inline-block;padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:800;text-transform:uppercase;color:#fff;margin-bottom:8px;margin-left:12px;vertical-align:middle;box-shadow:0 2px 4px #00000026;letter-spacing:.5px}.diff-kolay{background:linear-gradient(135deg,#40c057,#2b8a3e)}.diff-normal{background:linear-gradient(135deg,#339af0,#1864ab)}.diff-orta{background:linear-gradient(135deg,#fcc419,#d9480f)}.diff-zor{background:linear-gradient(135deg,#ff8787,#c92a2a)}.diff-çok-zor{background:linear-gradient(135deg,#845ef7,#5f3dc4)}.user-unique-id{font-family:Courier New,Courier,monospace;font-size:.78rem;color:#8da2b6;background:var(--surface-sunken);padding:2px 6px;border-radius:4px;display:inline-block;opacity:.8;letter-spacing:.5px}button.locked{opacity:.4;cursor:not-allowed!important;position:relative}.lock-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.2rem;z-index:2;pointer-events:none}.custom-modal-overlay{position:fixed;inset:0;background:#00000073;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:modalOverlayIn .25s ease-out}@keyframes modalOverlayIn{0%{opacity:0}to{opacity:1}}.custom-modal-panel{background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:20px;padding:36px 40px 28px;max-width:min(420px,95vw);width:90vw;text-align:center;box-shadow:0 20px 60px #00000026,0 0 0 1px #ffffff4d inset;animation:modalPanelIn .35s cubic-bezier(.34,1.56,.64,1);outline:none;border-top:3px solid var(--modal-accent, #3b82f6)}@keyframes modalPanelIn{0%{opacity:0;transform:scale(.85) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.custom-modal-icon{font-size:3rem;margin-bottom:8px;animation:modalIconBounce .6s cubic-bezier(.34,1.56,.64,1) .15s both}@keyframes modalIconBounce{0%{opacity:0;transform:scale(0) rotate(-20deg)}to{opacity:1;transform:scale(1) rotate(0)}}.custom-modal-title{font-family:Poppins,sans-serif;font-size:1.35rem;font-weight:800;color:#1a1a2e;margin:0 0 8px}.custom-modal-message{font-family:Poppins,sans-serif;font-size:.95rem;font-weight:500;color:#4a5568;line-height:1.6;margin:0 0 24px;white-space:pre-line}.custom-modal-btn{font-family:Poppins,sans-serif;font-size:1rem;font-weight:700;color:#fff;border:none;border-radius:12px;padding:12px 40px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px #00000026;letter-spacing:.3px}.custom-modal-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0003;filter:brightness(1.1)}.custom-modal-btn:active{transform:translateY(0);box-shadow:0 2px 8px #00000026}.premium-reward-panel{background:#ffffffe0!important;backdrop-filter:blur(28px)!important;-webkit-backdrop-filter:blur(28px)!important;border:2px solid rgba(255,255,255,.6)!important;box-shadow:0 25px 70px #8b5cf647,0 0 120px #8b5cf61f inset,0 0 0 1px #fff6 inset!important;border-top:4px solid #8b5cf6!important;position:relative;overflow:hidden;padding:40px 36px 32px!important}.premium-glow-aura{position:absolute;top:-80px;left:50%;transform:translate(-50%);width:250px;height:250px;background:radial-gradient(circle,#8b5cf638,#8b5cf600 70%);pointer-events:none;z-index:0}.premium-reward-header{display:flex;justify-content:center;align-items:center;gap:15px;margin-bottom:8px;position:relative;z-index:1}.premium-badge-sparkle{font-size:1.5rem;animation:sparkleFloat 2s ease-in-out infinite}@keyframes sparkleFloat{0%,to{transform:translateY(0) scale(1);opacity:.8}50%{transform:translateY(-6px) scale(1.2);opacity:1;filter:drop-shadow(0 0 8px rgba(253,224,71,.8))}}.premium-reward-icon-container{width:72px;height:72px;background:linear-gradient(135deg,#fef08a,#facc15);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #facc1566,0 0 0 4px #ffffffe6;animation:prizeScale .65s cubic-bezier(.175,.885,.32,1.275) both}@keyframes prizeScale{0%{transform:scale(0) rotate(-45deg)}to{transform:scale(1) rotate(0)}}.premium-congrats-emoji{font-size:2.3rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.premium-reward-title{font-family:Poppins,sans-serif;font-size:1.6rem;font-weight:900;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:8px 0 4px!important;position:relative;z-index:1}.premium-reward-subtitle{font-family:Poppins,sans-serif;font-size:.95rem;font-weight:600;color:#4b5563;margin:0 0 20px!important;line-height:1.5;position:relative;z-index:1}.premium-total-diamonds-badge{background:#ffffffb3;border:1px solid rgba(139,92,246,.15);border-radius:20px;padding:14px 28px;display:inline-flex;align-items:center;gap:12px;margin-bottom:24px;position:relative;box-shadow:0 8px 24px #8b5cf614,inset 0 1px #ffffffe6;z-index:1}.diamond-glow-ring{position:absolute;inset:-2px;border-radius:22px;background:linear-gradient(90deg,#8b5cf6,#ec4899,#3b82f6);opacity:.25;filter:blur(4px);z-index:-1;animation:glowRingRot 6s linear infinite}@keyframes glowRingRot{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}.total-diamonds-icon{font-size:2.1rem;filter:drop-shadow(0 0 12px rgba(6,182,212,.6));animation:diamPulse 2s ease-in-out infinite}@keyframes diamPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1);filter:drop-shadow(0 0 18px rgba(6,182,212,.8))}}.total-diamonds-number{font-family:Poppins,sans-serif;font-size:2.2rem;font-weight:900;color:#1e1b4b;line-height:1;letter-spacing:-.5px}.total-diamonds-label{font-family:Poppins,sans-serif;font-size:.8rem;font-weight:800;text-transform:uppercase;color:#8b5cf6;letter-spacing:.5px;align-self:flex-end;margin-bottom:4px}.premium-rewards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:28px;position:relative;z-index:1}.reward-item{background:#ffffffa6;border:1px solid rgba(229,231,235,.5);border-radius:14px;padding:12px 10px;display:flex;flex-direction:column;align-items:center;gap:4px;box-shadow:0 4px 10px #00000008;transition:all .25s cubic-bezier(.175,.885,.32,1.275)}.reward-item:hover{transform:translateY(-2px);background:#ffffffd9;border-color:#8b5cf640;box-shadow:0 8px 16px #8b5cf614}.reward-icon{font-size:1.4rem;margin-bottom:2px}.reward-label{font-family:Poppins,sans-serif;font-size:.74rem;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.3px;text-align:center}.reward-value{font-family:Poppins,sans-serif;font-size:1.1rem;font-weight:800;color:#1e1b4b}.premium-reward-btn{font-family:Poppins,sans-serif;font-size:1.05rem;font-weight:800;color:#fff;border:none;border-radius:14px;padding:14px 48px;cursor:pointer;background:linear-gradient(135deg,#8b5cf6,#ec4899)!important;box-shadow:0 8px 24px #8b5cf659,0 0 0 1px #ffffff26 inset;transition:all .25s cubic-bezier(.175,.885,.32,1.275);letter-spacing:.5px;position:relative;overflow:hidden;z-index:1;width:100%}.premium-reward-btn:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 30px #8b5cf680,0 0 0 1px #fff3 inset;background:linear-gradient(135deg,#a78bfa,#f472b6)!important}.premium-reward-btn:active{transform:translateY(0);box-shadow:0 4px 12px #8b5cf64d}body.dark-mode .premium-reward-panel{background:#1a152ce0!important;border-color:#8b5cf633!important}body.dark-mode .premium-reward-subtitle{color:#d1d5db}body.dark-mode .premium-total-diamonds-badge{background:#0f0c1e99;border-color:#8b5cf64d}body.dark-mode .total-diamonds-number{color:#fff}body.dark-mode .reward-item{background:#0f0c1e80;border-color:#8b5cf61a}body.dark-mode .reward-value{color:#fff}.statistics-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .25s ease}.statistics-modal{background:linear-gradient(145deg,#ffffff,var(--surface-hover));border-radius:24px;width:100%;max-width:min(560px,95vw);max-height:85vh;overflow-y:auto;box-shadow:0 25px 80px #0003,0 0 0 1px #fff9;position:relative;animation:popIn .35s cubic-bezier(.175,.885,.32,1.275)}.statistics-close{position:absolute;top:18px;right:18px;background:#0000000f;border:none;width:36px;height:36px;border-radius:50%;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;color:var(--text-secondary);z-index:5}.statistics-close:hover{background:#0000001f;transform:scale(1.1)}.statistics-title{text-align:center;font-size:1.6rem;font-weight:800;padding:28px 20px 10px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0}.statistics-content{padding:10px 24px 28px;display:flex;flex-direction:column;gap:20px}.statistics-loading{display:flex;flex-direction:column;align-items:center;gap:16px;padding:60px 20px;color:var(--text-muted)}.stats-spinner{width:40px;height:40px;border:4px solid var(--surface-sunken);border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.stats-progress-section{background:linear-gradient(135deg,var(--surface-sunken),var(--surface-sunken));border-radius:16px;padding:18px 20px}.stats-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-weight:700;font-size:.95rem;color:#343a40}.stats-progress-count{color:#667eea;font-weight:800}.stats-progress-bar{height:12px;background:var(--border);border-radius:6px;overflow:hidden}.stats-progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:6px;transition:width 1s cubic-bezier(.4,0,.2,1);min-width:2%}.stats-progress-percent{text-align:right;font-size:.8rem;color:var(--text-muted);margin-top:6px;font-weight:600}.stats-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stats-card{background:#fff;border-radius:16px;padding:18px 12px;text-align:center;box-shadow:0 2px 12px #0000000f;border:1px solid rgba(0,0,0,.04);transition:transform .2s}.stats-card:hover{transform:translateY(-2px)}.stats-card-icon{font-size:1.8rem;margin-bottom:6px}.stats-card-value{font-size:1.8rem;font-weight:900;line-height:1.1}.stars-card .stats-card-value{color:#f59f00}.attempts-card .stats-card-value{color:#228be6}.rate-card .stats-card-value{color:#40c057}.stats-card-label{font-size:.75rem;color:var(--text-muted);font-weight:600;margin-top:4px;text-transform:uppercase;letter-spacing:.5px}.stats-card-sub{font-size:.7rem;color:var(--text-muted);margin-top:4px}.stats-details{display:flex;flex-direction:column;gap:10px}.stats-detail-card{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:14px;background:#fff;box-shadow:0 2px 10px #0000000d;border-left:4px solid}.stats-detail-card.hardest{border-color:#ff6b6b}.stats-detail-card.easiest{border-color:#51cf66}.stats-detail-emoji{font-size:2rem;flex-shrink:0}.stats-detail-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);font-weight:700}.stats-detail-value{font-size:.95rem;font-weight:700;color:#343a40}.stats-detail-sub{font-size:.8rem;color:var(--text-muted)}.stats-level-grid{background:var(--surface-hover);border-radius:16px;padding:18px}.stats-level-grid h3{font-size:.9rem;font-weight:700;color:var(--text-secondary);margin:0 0 14px;text-transform:uppercase;letter-spacing:.5px}.stats-level-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:8px}.stats-level-item{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;border-radius:10px;background:#fff;box-shadow:0 1px 4px #0000000f;transition:transform .15s;cursor:default}.stats-level-item:hover{transform:scale(1.08)}.stats-level-num{font-size:.85rem;font-weight:800;color:#343a40}.stats-level-stars{display:flex;gap:1px}.stats-star{font-size:.65rem;line-height:1}.stats-star.filled{color:#f59f00}.stats-star.empty{color:var(--border)}.stats-empty{text-align:center;padding:40px 20px;color:var(--text-muted)}.stats-empty-icon{font-size:3rem;margin-bottom:12px}.stats-empty p{font-size:1rem;font-weight:600;color:var(--text-secondary);margin:0}.stats-empty-sub{font-size:.85rem!important;color:var(--text-muted)!important;font-weight:400!important;margin-top:6px!important}.home-action-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:14px}.home-stats-btn{display:inline-flex;align-items:center;gap:8px;margin-top:0;padding:10px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:30px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .25s;box-shadow:0 4px 18px #667eea59;letter-spacing:.3px}.home-lb-btn{background:linear-gradient(135deg,#fcc419,#f59f00)!important;box-shadow:0 4px 18px #fcc41959!important;color:#7c4a00!important}.home-lb-btn:hover{box-shadow:0 6px 24px #fcc41980!important}.home-stats-btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px #667eea80}.home-stats-btn:active{transform:translateY(0)}.home-stats-btn svg{stroke:#fff}.lb-panel{max-width:min(580px,95vw)!important;width:92%!important;max-height:90vh!important;overflow-y:auto!important;padding:24px!important;color:var(--cv2-card-text)}.lb-header{text-align:center;margin-bottom:16px}.lb-header h2{font-size:1.4rem;color:#1c7ed6;margin:0 0 4px}.lb-header p{color:var(--text-muted);font-size:.85rem;margin:0}.lb-my-rank-card{display:flex;align-items:center;gap:12px;padding:14px 18px;background:linear-gradient(135deg,#667eea15,#764ba215);border:1px solid #667eea30;border-radius:14px;margin-bottom:14px}.lb-my-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0;box-shadow:0 2px 8px #0000001a}.lb-my-info{flex:1;display:flex;flex-direction:column}.lb-my-name{font-weight:700;font-size:.95rem;color:#343a40}.lb-my-code{font-size:.7rem;color:var(--text-muted);font-weight:600}.lb-my-stats{display:flex;gap:14px}.lb-my-stat{display:flex;flex-direction:column;align-items:center}.lb-my-stat-value{font-weight:800;font-size:1.1rem;color:#1c7ed6}.lb-my-stat-label{font-size:.6rem;color:var(--text-muted);font-weight:600;text-transform:uppercase}.lb-add-friend{display:flex;gap:8px;margin-bottom:14px}.lb-friend-input{flex:1;padding:10px 14px;border-radius:10px;border:1px solid var(--border);font-size:.85rem;outline:none;transition:border .2s}.lb-friend-input:focus{border-color:#667eea}.lb-friend-btn{padding:10px 16px;background:linear-gradient(135deg,#20c997,#12b886);color:#fff;border:none;border-radius:10px;cursor:pointer;font-weight:700;font-size:.85rem;transition:all .2s;white-space:nowrap}.lb-friend-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #20c99759}.lb-friend-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.lb-tabs{display:flex;gap:6px;margin-bottom:14px;background:var(--surface-sunken);border-radius:10px;padding:4px}.lb-tab{flex:1;padding:8px 12px;background:transparent;border:none;border-radius:8px;font-size:.8rem;font-weight:700;color:var(--text-muted);cursor:pointer;transition:all .25s}.lb-tab.active{background:#fff;color:#1c7ed6;box-shadow:0 2px 8px #00000014}.lb-list{max-height:45vh;overflow-y:auto}.lb-section-title{font-size:.75rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;padding:8px 4px 6px;margin-top:4px}.lb-section-divider{height:1px;background:var(--surface-sunken);margin:8px 0}.lb-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;margin-bottom:4px;transition:background .2s;position:relative}.lb-row:hover{background:var(--surface-hover)}.lb-row-me{background:linear-gradient(135deg,#667eea08,#764ba208);border:1px solid #667eea20}.lb-row-friend{background:#e6fcf5}.lb-row-rank{width:36px;text-align:center;font-weight:800;font-size:1rem;color:var(--text-muted);flex-shrink:0}.lb-rank-gold .lb-row-rank{font-size:1.3rem}.lb-rank-silver .lb-row-rank{font-size:1.2rem}.lb-rank-bronze .lb-row-rank{font-size:1.1rem}.lb-row-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.lb-row-info{flex:1;min-width:0;display:flex;flex-direction:column}.lb-row-name{font-weight:700;font-size:.85rem;color:#343a40;display:flex;align-items:center;gap:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-row-code{font-size:.65rem;color:var(--text-muted);font-weight:600}.lb-badge-me{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:.6rem;padding:1px 6px;border-radius:10px;font-weight:700}.lb-badge-friend{background:linear-gradient(135deg,#20c997,#12b886);color:#fff;font-size:.6rem;padding:1px 6px;border-radius:10px;font-weight:700}.lb-row-value{font-weight:800;font-size:.9rem;color:#1c7ed6;white-space:nowrap;flex-shrink:0}.lb-row-value small{font-weight:600;font-size:.65rem;color:var(--text-muted)}.lb-unfollow-btn{background:none;border:none;color:var(--border);cursor:pointer;font-size:.8rem;padding:4px;transition:color .2s;flex-shrink:0}.lb-unfollow-btn:hover{color:#fa5252}.lb-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px 0;color:var(--text-muted);font-size:.9rem}.lb-empty{text-align:center;padding:30px;color:var(--text-muted)}.lb-rank-gold{background:linear-gradient(135deg,#fff9db,#fff3bf)!important;border:1px solid #ffd43b40}.lb-rank-silver{background:linear-gradient(135deg,var(--surface-hover),var(--surface-sunken))!important;border:1px solid var(--border)40}.lb-rank-bronze{background:linear-gradient(135deg,#fff4e6,#ffe8cc)!important;border:1px solid #ffa94d40}.stats-detail-header{padding:18px 24px 0;text-align:center}.stats-back-btn{position:absolute;top:18px;left:18px;background:#0000000f;border:none;padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:600;cursor:pointer;color:var(--text-secondary);transition:all .2s;z-index:5}.stats-back-btn:hover{background:#0000001f}.stats-detail-subtitle{font-size:.9rem;color:var(--text-muted);margin:2px 0 0}.stats-cards-4{grid-template-columns:repeat(4,1fr)!important}.stats-cards-4 .stats-card{padding:14px 8px}.stats-cards-4 .stats-card-icon{font-size:1.3rem;margin-bottom:4px}.stats-cards-4 .stats-card-value{font-size:1.4rem}.stats-cards-4 .stats-card-label{font-size:.65rem}.stats-usage-section{display:flex;flex-direction:column;gap:12px;background:var(--surface-hover);border-radius:14px;padding:16px}.stats-usage-item{display:flex;align-items:center;gap:12px}.stats-usage-icon{font-size:1.4rem;flex-shrink:0}.stats-usage-info{flex:1}.stats-usage-label{font-size:.8rem;font-weight:700;color:var(--text-secondary);margin-bottom:4px}.stats-usage-bar-bg{height:8px;background:var(--border);border-radius:4px;overflow:hidden}.stats-usage-bar-fill{height:100%;border-radius:4px;transition:width .8s ease;min-width:2%}.stats-usage-bar-fill.help-bar{background:linear-gradient(90deg,#ffd43b,#fab005)}.stats-usage-bar-fill.lines-bar{background:linear-gradient(90deg,#74c0fc,#339af0)}.stats-usage-count{font-size:.7rem;color:var(--text-muted);margin-top:3px}.skill-card-wrapper{transition:box-shadow .2s ease}.skill-info-btn{width:22px;height:22px;border-radius:50%;border:1.5px solid #ced4da;background:#fff;color:var(--text-muted);font-size:.72rem;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.175,.885,.32,1.275);flex-shrink:0;line-height:1;padding:0}.skill-info-btn:hover{border-color:#339af0;color:#339af0;background:#e7f5ff;transform:scale(1.15)}.skill-info-btn.active{border-color:#1c7ed6;color:#fff;background:#1c7ed6;box-shadow:0 2px 8px #1c7ed659;transform:scale(1.1)}.skill-tooltip{margin-top:12px;padding:14px;background:linear-gradient(135deg,#f0f4ff,#fff5f5);border:1px solid #d0ebff;border-radius:12px;font-size:.82rem;color:#343a40;line-height:1.55;animation:tooltipSlideIn .25s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 4px 16px #1c7ed614}.skill-tooltip-title{font-weight:900;font-size:.88rem;color:#1c7ed6;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid rgba(28,126,214,.15)}.skill-tooltip-section{display:flex;flex-direction:column;gap:3px;margin-bottom:8px}.skill-tooltip-section:last-child{margin-bottom:0}.skill-tooltip-label{font-weight:800;font-size:.78rem;color:var(--text-secondary)}@keyframes tooltipSlideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}body.dark-mode .skill-info-btn{border-color:var(--text-secondary);background:#21262d;color:#8b949e}body.dark-mode .skill-info-btn:hover{border-color:#38bdf8;color:#38bdf8;background:#38bdf81a}body.dark-mode .skill-info-btn.active{border-color:#38bdf8;color:#0d1117;background:#38bdf8;box-shadow:0 2px 8px #38bdf859}body.dark-mode .skill-tooltip{background:linear-gradient(135deg,#161b22,#1a1e2e);border-color:#30363d;color:#c9d1d9;box-shadow:0 4px 16px #0000004d}body.dark-mode .skill-tooltip-title{color:#38bdf8;border-bottom-color:#38bdf826}body.dark-mode .skill-tooltip-label{color:#8b949e}.stats-attempts-list{background:var(--surface-hover);border-radius:14px;padding:16px}.stats-attempts-list h3{font-size:.9rem;font-weight:700;color:var(--text-secondary);margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.stats-no-data{color:var(--text-muted);text-align:center;padding:20px;font-size:.9rem}.stats-attempt-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;margin-bottom:6px;background:#fff;border-left:3px solid;box-shadow:0 1px 3px #0000000a}.stats-attempt-row.success{border-color:#51cf66}.stats-attempt-row.error{border-color:#ff6b6b}.stats-attempt-num{font-size:.8rem;font-weight:800;color:var(--text-muted);min-width:28px}.stats-attempt-info{flex:1;min-width:0}.stats-attempt-outcome{font-size:.85rem;font-weight:700}.stats-attempt-row.success .stats-attempt-outcome{color:#2b8a3e}.stats-attempt-row.error .stats-attempt-outcome{color:#c92a2a}.stats-attempt-error{font-size:.75rem;color:#e8590c;margin-top:2px}.stats-attempt-step{color:var(--text-muted)}.stats-attempt-time{font-size:.7rem;color:var(--text-muted);margin-top:2px}.stats-attempt-badges{display:flex;gap:4px;flex-shrink:0}.stats-badge{font-size:1rem;opacity:.7}.stats-level-item.clickable{cursor:pointer}.stats-level-item.clickable:hover{transform:scale(1.12);box-shadow:0 3px 12px #667eea33}.stats-level-hint{font-weight:400;font-size:.7rem;color:var(--text-muted);text-transform:none;letter-spacing:0}.timing-card .stats-card-value{color:#845ef7}.stats-timing-section{background:var(--surface-hover);border-radius:14px;padding:16px}.stats-timing-section h3{font-size:.9rem;font-weight:700;color:var(--text-secondary);margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.stats-focus-section{background:var(--surface-hover);border-radius:14px;padding:16px}.stats-usage-bar-fill.focus-bar.good{background:linear-gradient(90deg,#51cf66,#2b8a3e)}.stats-usage-bar-fill.focus-bar.medium{background:linear-gradient(90deg,#fcc419,#f59f00)}.stats-usage-bar-fill.focus-bar.low{background:linear-gradient(90deg,#ff6b6b,#e03131)}.stats-badge.timing-badge,.stats-badge.duration-badge{font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:12px;opacity:1;white-space:nowrap}.stats-badge.timing-badge{background:linear-gradient(135deg,#e5dbff,#d0bfff);color:#5f3dc4}.stats-badge.duration-badge{background:linear-gradient(135deg,#d3f9d8,#b2f2bb);color:#2b8a3e}.stats-error-pos-section{padding-bottom:14px;margin-bottom:12px;border-bottom:1px solid var(--surface-sunken)}.stats-error-pos-section h4{font-size:.85rem;font-weight:700;color:var(--text-secondary);margin:0 0 10px}.error-pos-summary{display:flex;align-items:center;gap:10px;margin-bottom:10px}.error-pos-emoji{font-size:1.4rem;flex-shrink:0}.error-pos-label{font-size:.8rem;color:var(--text-secondary)}.error-pos-desc{font-size:.7rem;color:var(--text-muted);margin-top:2px}.error-pos-bar{display:flex;height:8px;border-radius:4px;overflow:hidden;background:var(--surface-sunken);gap:1px}.error-pos-segment{height:100%;min-width:4px;transition:width .6s ease}.error-pos-segment.pos-early{background:linear-gradient(90deg,#ff6b6b,#fa5252)}.error-pos-segment.pos-mid-early{background:linear-gradient(90deg,#ffa94d,#fd7e14)}.error-pos-segment.pos-mid-late{background:linear-gradient(90deg,#ffd43b,#fab005)}.error-pos-segment.pos-late{background:linear-gradient(90deg,#69db7c,#40c057)}.error-pos-legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}.legend-item{display:flex;align-items:center;gap:4px;font-size:.65rem;color:var(--text-muted);font-weight:600}.legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.legend-dot.pos-early{background:#ff6b6b}.legend-dot.pos-mid-early{background:#ffa94d}.legend-dot.pos-mid-late{background:#ffd43b}.legend-dot.pos-late{background:#69db7c}.stats-badge.error-pos-badge{font-size:.65rem;font-weight:700;padding:2px 7px;border-radius:12px;opacity:1;white-space:nowrap}.stats-badge.error-pos-badge.pos-early{background:linear-gradient(135deg,#ffe3e3,#ffc9c9);color:#c92a2a}.stats-badge.error-pos-badge.pos-mid-early{background:linear-gradient(135deg,#fff3e0,#ffe0b2);color:#e8590c}.stats-badge.error-pos-badge.pos-mid-late{background:linear-gradient(135deg,#fff9db,#fff3bf);color:#e67700}.stats-badge.error-pos-badge.pos-late{background:linear-gradient(135deg,#d3f9d8,#b2f2bb);color:#2b8a3e}@media(max-width:600px){.ls-home-btn{top:15px;left:15px;width:44px;height:44px;border-width:2px}.ls-title{margin-top:55px;font-size:2.2rem;margin-bottom:2.5rem}.ls-circle{width:62px;height:62px;font-size:1.8rem;border-width:3px}.ls-line-h.to-right{left:28px}.ls-line-h.to-left{right:28px}.ls-line-v{top:28px}.ls-info-panel{width:230px}}@media(max-width:1024px){.game-board-container{height:100vh;height:100dvh;min-height:0;overflow:hidden}.game-area{padding:.5rem 2vw 1rem;gap:clamp(1rem,4vw,4rem);margin-top:0;overflow:hidden}.profile-btn{top:8px;left:8px;width:44px;height:44px;border-width:2px}.profile-icon{width:24px;height:24px}.game-header-actions{gap:6px}.game-home-btn,.tutorial-reopen-btn,.guide-toggle-btn{width:38px;height:38px}.guide-dropdown-inner{padding:0 10px;gap:8px}.guide-chip{min-width:100%;padding:10px 12px}.game-quick-controls{padding-bottom:10px;gap:10px}.game-dpad{grid-template-columns:repeat(3,minmax(52px,64px))}.game-dir-btn{min-height:52px}}@media(max-width:1024px)and (orientation:portrait){.game-area{flex-direction:column;justify-content:center;align-items:center;gap:2vh;padding:1vh 3vw}.left-panel{width:100%;max-width:96vw;max-height:48vh;align-items:center;justify-content:center;flex-shrink:0;padding-bottom:0;overflow:hidden}.right-panel{width:100%;max-width:96vw;max-height:44vh;align-items:center;flex-shrink:1;overflow:hidden;padding:0}.code-display-group{align-items:center;width:100%}.code-display{align-items:flex-start;width:fit-content;max-width:96vw;max-height:44vh;margin:0;overflow:hidden;font-size:clamp(.65rem,min(calc(92vw / max(var(--char-count, 10),12) / .72),calc(40vh/max(var(--line-count, 10),10)/1.6)),2.2rem)}}@media(max-width:600px)and (orientation:portrait){.game-header{padding:8px 10px 4px;align-items:center}.game-header h1{font-size:1.2rem}.game-header p{font-size:.75rem}.grid-cell{width:clamp(10px,min(8vw,6.2vh),48px);height:clamp(10px,min(8vw,6.2vh),48px)}.grid-visualizer{gap:clamp(1px,1vmin,5px);max-width:100%}.grid-row{gap:clamp(1px,1vmin,5px)}}@media(orientation:landscape)and (max-height:600px){.game-header{padding:4px 12px 2px;align-items:center}.game-header h1{font-size:clamp(.85rem,3.2vh,1.3rem);margin-bottom:0}.game-header p{font-size:clamp(.62rem,2.4vh,.85rem)}.game-header-actions{gap:6px}.game-home-btn,.tutorial-reopen-btn,.guide-toggle-btn{width:34px;height:34px}.game-area{flex-direction:row;align-items:center;justify-content:center;gap:clamp(1rem,4vw,3.5rem);padding:.25rem 2vw .5rem}.left-panel{max-width:52vw;max-height:84vh;padding-bottom:0;flex-shrink:1}.right-panel{max-width:46vw;max-height:84vh;align-items:flex-start;padding:0;flex-shrink:1}.grid-cell{width:clamp(10px,min(6vw,9vh),56px);height:clamp(10px,min(6vw,9vh),56px)}.grid-visualizer,.grid-row{gap:clamp(1px,.9vh,6px)}.code-display{max-width:46vw;max-height:84vh;overflow:hidden;font-size:clamp(.55rem,min(calc(44vw / max(var(--char-count, 10),12) / .66),calc(80vh / max(var(--line-count, 10),10) / 1.55)),2rem)}.profile-btn{top:6px;left:6px;width:38px;height:38px}.game-quick-controls{padding-bottom:4px;gap:6px}.game-controls-copy{display:none}.game-dpad{grid-template-columns:repeat(3,minmax(40px,48px))}.game-dir-btn{min-height:38px}.game-dir-btn small{display:none}}@media(max-width:480px){.sp-container{border-radius:16px}.sp-header{padding:1rem 1.2rem}.sp-header-title{font-size:1rem}.sp-body{padding:.8rem 1rem}.customizer-panel{padding:1.2rem;border-radius:10px}.customizer-panel.admin-panel{padding:16px}.statistics-modal{border-radius:16px}.stats-header{padding:16px 16px 12px}.stats-header h2{font-size:1.1rem}.stats-overview-grid{gap:8px;padding:0 12px}.stats-overview-card{padding:10px 6px}.stats-overview-value{font-size:1.1rem}.stats-levels-grid{padding:0 12px 16px;gap:6px}.lb-panel{padding:16px!important}.lb-header h2{font-size:1.15rem}.lb-my-rank-card{padding:10px 12px;gap:8px}.lb-my-stat-value{font-size:.95rem}.lb-row{padding:8px;gap:6px}.lb-row-avatar{width:28px;height:28px;font-size:14px}.lb-row-name{font-size:.78rem}.custom-modal-panel{padding:24px 20px 20px;border-radius:16px}.home-quote{font-size:1rem}.home-quote-container{padding:0 12px}.start-btn{padding:14px 40px;font-size:1rem}.home-action-btns{gap:8px}.home-stats-btn{padding:8px 16px;font-size:.85rem}.profile-dropdown{right:-10px;min-width:220px}.hint-banner{padding:8px 12px;gap:6px}.hint-banner-text{font-size:.78rem}.game-header-main{text-align:left}.game-controls-copy{width:100%}}@media(max-width:600px){.celebration-panel{padding:1.5rem 1.2rem 1.2rem!important;max-width:92vw!important}.celebration-title{font-size:1.6rem!important}.celebration-attempt-msg{font-size:.9rem;margin-bottom:1rem}.celebration-stars{gap:12px}.celebration-stars .star-icon svg{width:40px;height:40px}.celebration-robot-area{flex-direction:column;gap:8px;margin:.5rem 0 1rem}.celebration-robot-bubble{font-size:.8rem;padding:8px 12px;max-width:100%}.celebration-robot-bubble:before{left:50%;top:-10px;transform:translate(-50%);border:6px solid transparent;border-bottom-color:#f1f3f5;border-right-color:transparent}.cel-robot-body{width:40px;height:45px}.cel-robot-head{width:34px;height:26px}.celebration-next-btn{font-size:1rem!important;padding:.8rem!important}.confetti-piece:nth-child(n+35){display:none}.burst-emoji{font-size:1.3rem}}*{-webkit-tap-highlight-color:transparent}@media(pointer:coarse){.ls-circle{min-width:54px;min-height:54px}.ls-question-btn{min-width:28px;min-height:28px}.ls-home-btn{min-width:44px;min-height:44px}.ls-circle:hover:before{animation:none}}@supports (padding: env(safe-area-inset-top)){.ls-view{padding-top:calc(3rem + env(safe-area-inset-top));padding-bottom:calc(4rem + env(safe-area-inset-bottom));padding-left:calc(2rem + env(safe-area-inset-left));padding-right:calc(2rem + env(safe-area-inset-right))}.game-board-container{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}}@media(max-height:500px)and (orientation:landscape){.ls-view{padding-top:1rem;padding-bottom:2rem}.ls-title{font-size:1.5rem;margin-bottom:1rem}.celebration-panel{max-height:90vh;overflow-y:auto;padding:1rem 1rem .8rem!important}.celebration-stars .star-icon svg{width:32px;height:32px}.celebration-title{font-size:1.3rem!important}.celebration-robot-area{flex-direction:row;margin:.3rem 0 .5rem}}.rotate-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:2rem;text-align:center;background:linear-gradient(160deg,#0a0a1a,#161630 60%,#1f1147);color:#fff;padding-top:calc(2rem + env(safe-area-inset-top));padding-bottom:calc(2rem + env(safe-area-inset-bottom))}.rotate-overlay-content{display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:320px}.rotate-phone-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;color:#ffb347;filter:drop-shadow(0 0 16px rgba(255,122,24,.45));animation:rotatePhoneTilt 2.2s ease-in-out infinite}.rotate-phone-icon .rotate-arrow{position:absolute;right:-28px;top:-6px;color:#38bdf8;animation:rotateArrowPulse 2.2s ease-in-out infinite}.rotate-title{margin:0;font-size:1.4rem;font-weight:800;color:#fff}.rotate-text{margin:0;font-size:.95rem;line-height:1.5;color:#ffffffbf}@keyframes rotatePhoneTilt{0%,45%{transform:rotate(0)}70%,to{transform:rotate(-90deg)}}@keyframes rotateArrowPulse{0%,45%{opacity:1;transform:scale(1)}70%,to{opacity:.35;transform:scale(.85)}}@media(prefers-reduced-motion:reduce){.rotate-phone-icon,.rotate-phone-icon .rotate-arrow{animation:none}}:root{--surface-page: #f4f7fb;--surface-raised: #ffffff;--surface-sunken: #e8eef6;--surface-hover: #eef4fb;--border: #d8e0ec;--border-strong: #aebbd0;--text-strong: #172033;--text: #2f3a4d;--text-muted: #657084;--brand: #2563c9;--brand-strong: #174ea6;--brand-bg: #e8f0fe;--accent: #0f9f6e;--accent-strong: #087a55;--accent-bg: #e4f7ef;--warning: #c98212;--warning-bg: #fff4dc;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 18px;--shadow-sm: 0 1px 2px rgba(18, 28, 45, .05), 0 1px 8px rgba(18, 28, 45, .05);--shadow-md: 0 8px 22px rgba(18, 28, 45, .09);--shadow-lg: 0 20px 50px rgba(18, 28, 45, .14);--bg-color: radial-gradient(circle at 8% 10%, rgba(37, 99, 201, .08), transparent 28%), radial-gradient(circle at 92% 12%, rgba(15, 159, 110, .07), transparent 30%), linear-gradient(135deg, #f7f9fd 0%, #eef3f9 52%, #f8fafc 100%)}body{background:var(--bg-color);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.dark-mode{--surface-page: #0f1522;--surface-raised: #171f2f;--surface-sunken: #101726;--surface-hover: #202a3e;--border: #2f3a50;--border-strong: #4b5870;--text-strong: #f3f7fd;--text: #d5deeb;--text-muted: #9aa8bc;--brand: #7ab2ff;--brand-strong: #a8ceff;--brand-bg: #172a46;--accent: #5bd2a1;--accent-strong: #88e5be;--accent-bg: #143326;--bg-color: radial-gradient(circle at 12% 10%, rgba(122, 178, 255, .13), transparent 30%), radial-gradient(circle at 88% 14%, rgba(91, 210, 161, .1), transparent 28%), linear-gradient(135deg, #0d1320 0%, #121827 58%, #0b111d 100%)}button,input,select,textarea{font:inherit}button{letter-spacing:0}button:not(:disabled){cursor:pointer}.app-container{background:var(--bg-color)}.home-screen,.game-board-container,.sky-map,.ls-view{background:var(--bg-color)!important}.home-particles,.space-decorations,.ls-view:before,.ls-view:after,.galaxy-nebula{opacity:.22}.home-screen h1,.ls-title,.sky-title{letter-spacing:0;text-transform:none;color:var(--text-strong);filter:none}.home-screen h1 span,.home-quote,.announcements-header h3{background:linear-gradient(135deg,var(--brand),var(--accent));-webkit-background-clip:text;background-clip:text}.home-tagline,.sky-subtitle,.wc-subtitle,.game-header p{color:var(--text-muted)}.start-btn,.settings-btn,.guide-dismiss-btn,.sticky-reply-input-wrap button,.tutorial-dismiss-btn,.ls-home-btn,.sky-nav-btn,.game-home-btn,.tutorial-reopen-btn,.guide-toggle-btn{border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.18);background:linear-gradient(135deg,var(--brand),var(--brand-strong));color:#fff;box-shadow:0 10px 24px #2563c933;text-shadow:none}.start-btn{min-width:220px;height:60px;padding:0 24px}.start-btn:before{display:none}.start-btn:hover,.settings-btn:hover,.guide-dismiss-btn:hover,.tutorial-dismiss-btn:hover,.ls-home-btn:hover,.sky-nav-btn:hover,.game-home-btn:hover,.tutorial-reopen-btn:hover,.guide-toggle-btn:hover{transform:translateY(-1px);box-shadow:0 14px 32px #2563c93d}.game-home-btn,.tutorial-reopen-btn,.guide-toggle-btn,.ls-home-btn,.sky-nav-icon-only{width:44px;height:44px;border-radius:12px;flex:0 0 44px}.tutorial-reopen-btn{animation:none}.home-sticky-notes-wrapper,.guide-dropdown-inner,.hint-banner,.code-display,.tutorial-bubble,.ls-info-panel,.ls-stats-panel,.sky-top-bar,.sky-progress-pill,.world-card,.next-island-wrapper,.customizer-panel,.custom-modal-panel,.settings-panel,.message-modal-panel,.leaderboard-panel,.stats-panel,.admin-panel,.auth-card,.auth-panel{background:color-mix(in srgb,var(--surface-raised) 92%,transparent)!important;border:1px solid var(--border)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-md)!important;color:var(--text)!important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.home-sticky-notes-wrapper:hover,.world-card:hover,.ls-stats-panel:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)!important}.home-sticky-note{border-radius:var(--radius-md)!important;box-shadow:var(--shadow-sm)!important;transform:none!important}.home-sticky-note:hover{transform:translateY(-2px)!important}.sticky-pin{display:none}.announcements-header{border-bottom:1px solid var(--border)}.board-toggle-icon,.start-btn-icon{border-radius:10px;box-shadow:none}.game-header{width:min(1180px,calc(100vw - 24px));margin:12px auto 0;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface-raised) 88%,transparent);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.game-header-main{text-align:left}.game-header h1{font-size:clamp(1rem,2.2vh,1.45rem);letter-spacing:0}.grid-and-code-wrapper{padding:12px}.game-area{gap:clamp(20px,5vw,70px);padding:1rem}.grid-cell{border-radius:50%}.grid-cell.path,.grid-cell.path-themed,.grid-cell.path-hint,.grid-cell.path-special,.grid-cell.path-yellow,.grid-cell.path-red,.grid-cell.path-blue,.grid-cell.path-orange,.grid-cell.path-mor{box-shadow:inset 0 -3px #0f172a29,0 6px 14px #121c2d1a}.grid-cell.path-special{background:#0ea5b7}.code-display{letter-spacing:0;border-radius:var(--radius-lg);background:#ffffffeb!important;color:#263244}.code-display:before{content:""}.code-line{border-radius:8px}.code-line.active.help-on{background:linear-gradient(90deg,#2563c924,#2563c90a);border-left-color:var(--brand);box-shadow:none}.hint-btn,.hint-banner{border-radius:var(--radius-md);animation:none}.hint-btn{background:var(--warning-bg);color:var(--warning-text);border:1px solid rgba(201,130,18,.22);box-shadow:var(--shadow-sm)}.game-dir-btn,.ls-circle{border-radius:var(--radius-md)}.game-dir-btn{background:var(--surface-raised);border-color:var(--border);color:var(--brand);box-shadow:var(--shadow-sm)}.game-controls-copy strong,.sky-progress-label,.ls-info-panel h3{color:var(--text-strong)}.sky-map{min-height:100vh}.sky-top-bar{width:min(960px,calc(100vw - 28px));margin:16px auto 0}.world-cards-container{padding:0 16px 48px}.world-card{overflow:hidden}.wc-accent{opacity:.7}.wc-status-pill,.lc-chip,.ls-badge{border-radius:999px;border:1px solid var(--border);box-shadow:none}.ls-view{color:var(--text)}.ls-title{margin-top:.25rem;margin-bottom:1.5rem}.ls-circle{width:70px;height:70px;text-shadow:none}.ls-circle:before{display:none}.ls-circle.completed{background:linear-gradient(135deg,#22a06b,#14764d)}.ls-circle.current{background:linear-gradient(135deg,#f4c542,#d89412);color:#2d2206;animation:none}.ls-circle.locked{background:var(--surface-sunken)}.ls-question-btn{border-radius:9px;border:1px solid rgba(201,130,18,.26);background:var(--warning-bg);color:var(--warning-text);box-shadow:var(--shadow-sm)}.ls-info-panel{background:var(--surface-raised)!important}.ls-info-panel p,.ls-stats-text,.ls-level-name{color:var(--text-muted)}.ls-info-panel:after{border-top-color:var(--border)}.customizer-v2-overlay,.custom-modal-overlay,.modal-overlay,.leaderboard-modal,.statistics-modal{background:#0c121e8a!important;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.celebration-panel{border-radius:var(--radius-xl)!important}.celebration-title{color:var(--text-strong)}.celebration-next-btn{background:linear-gradient(135deg,var(--accent),var(--accent-strong))}@media(max-width:768px){.home-screen{gap:1rem;padding:5rem 1rem 2rem}.home-screen h1{font-size:clamp(2rem,12vw,3.25rem);white-space:normal}.home-tagline,.home-info-badge span{white-space:normal}.game-header{align-items:stretch;flex-direction:column;gap:.75rem}.game-header-actions{justify-content:center}.grid-and-code-wrapper{padding:8px}.ls-map-grid{transform:scale(.96);transform-origin:top center}}.sky-map{--bg-top: #1e3a8a;--bg-mid: #38bdf8;--bg-bottom: #dff6ff;--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .82);--text-muted: rgba(255, 255, 255, .56);--card-border: rgba(255, 255, 255, .72);--card-shadow: 0 20px 40px rgba(15, 23, 42, .18);--card-shadow-hover: 0 28px 60px rgba(15, 23, 42, .26)}.sky-map{min-height:100vh;background:linear-gradient(180deg,#1e3a8a,#3b82f6 38%,#7dd3fc 75%,#e0f2fe);position:relative;overflow-x:hidden;overflow-y:auto;padding:0 0 72px}.sky-top-bar{position:fixed;top:0;left:0;z-index:1000;display:flex;align-items:center;gap:12px;padding:16px 20px;background:linear-gradient(180deg,rgba(15,23,42,.16),transparent)}.sky-nav-btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border:1px solid rgba(255,255,255,.22);border-radius:12px;background:#0f172a52;color:#fff;font-size:.86rem;font-weight:700;cursor:pointer;transition:transform .18s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 6px 14px #0f172a2e}.sky-nav-btn svg{flex-shrink:0}.sky-nav-btn span{line-height:1;letter-spacing:.01em}.sky-nav-btn:hover{background:#0f172a73;border-color:#ffffff5c;box-shadow:0 8px 18px #0f172a42}.sky-nav-icon-only{padding:0;width:40px;justify-content:center}.sky-progress-pill{display:flex;flex-direction:column;gap:6px;background:#0f172a52;padding:10px 16px 12px;border-radius:16px;font-weight:700;border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);min-width:180px;box-shadow:0 8px 20px #0f172a2e}.sky-progress-text-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.sky-progress-label{font-size:.72rem;color:#ffffffc7;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.sky-progress-numbers{display:inline-flex;align-items:baseline;gap:2px}.sky-progress-count{font-size:1.15rem;color:#fde047;font-weight:900}.sky-progress-sep{color:#ffffff73;font-size:.9rem}.sky-progress-total{font-size:.9rem;color:#ffffffc7;font-weight:700}.sky-progress-bar-track{height:6px;background:#ffffff24;border-radius:999px;overflow:hidden;position:relative}.sky-progress-bar-fill{height:100%;background:linear-gradient(90deg,#fde047,#facc15 60%,#f59e0b);border-radius:999px;box-shadow:0 0 12px #facc1599;transition:width .6s cubic-bezier(.4,0,.2,1)}.sky-title-area{text-align:center;padding:96px 20px 40px;position:relative;z-index:1}.sky-title{margin:0;font-size:clamp(2rem,4vw,3.1rem);font-weight:900;color:#fff;text-shadow:0 6px 18px rgba(0,0,0,.22);letter-spacing:-.04em;line-height:1.06}.sky-subtitle{margin:12px auto 0;font-size:1rem;color:var(--text-secondary);font-weight:500;max-width:760px;line-height:1.6}.world-cards-container{position:relative;z-index:1;max-width:900px;margin:0 auto;padding:24px 20px 84px;display:flex;flex-direction:column;gap:14px}.world-card{position:relative;overflow:hidden;border-radius:20px;padding:20px 22px;background:#fff;border:1px solid rgba(15,23,42,.08);box-shadow:0 1px 3px #0f172a0f,0 8px 24px #0f172a14;display:flex;flex-direction:row;align-items:center;gap:16px;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;isolation:isolate;min-height:0;cursor:pointer}.wc-accent{position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,var(--theme-panel, #4f46e5) 0%,color-mix(in srgb,var(--theme-panel, #4f46e5) 70%,#000 30%) 100%);box-shadow:0 0 14px var(--theme-glow, transparent);pointer-events:none}.world-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 100% 0%,var(--theme-glow, transparent) 0%,transparent 55%);opacity:.18;pointer-events:none;z-index:0}.world-card>*{position:relative;z-index:1}.world-card:hover{transform:translateY(-3px);box-shadow:0 1px 3px #0f172a14,0 16px 36px #0f172a24,0 0 0 1px var(--theme-panel, transparent)}.world-card-active{box-shadow:0 1px 3px #0f172a0f,0 12px 30px #0f172a1f,0 0 0 2px var(--theme-panel, #4f46e5),0 0 24px var(--theme-glow, transparent)}.wc-ribbon{position:absolute;top:0;right:0;transform:none;background:linear-gradient(135deg,var(--theme-panel, #4f46e5),color-mix(in srgb,var(--theme-panel, #4f46e5) 70%,#000 30%));color:#fff;font-size:.58rem;font-weight:900;letter-spacing:.12em;padding:5px 14px;border-radius:0 20px 0 12px;box-shadow:0 4px 12px #0f172a38;z-index:2}.world-card.status-mastered{border-color:#22c55e47;background:linear-gradient(135deg,#fff,#f0fdf4)}.world-card.status-locked{background:#f1f5f9;border-color:#0f172a0d;box-shadow:0 1px 2px #0f172a0a;cursor:not-allowed;opacity:.7}.world-card.status-locked .wc-accent{filter:grayscale(.7);opacity:.4}.world-card.status-locked .wc-icon-wrap{filter:grayscale(.8);opacity:.5}.world-card.status-locked .wc-title{color:#94a3b8}.world-card.status-locked .wc-subtitle{color:#cbd5e1}.world-card.status-locked:before{opacity:0}.world-card.status-locked:hover{transform:none;box-shadow:0 1px 2px #0f172a0a}.wc-icon-wrap{position:relative;width:56px;height:56px;min-width:56px;border-radius:16px;background:color-mix(in srgb,var(--theme-panel, #4f46e5) 12%,#ffffff);border:1px solid color-mix(in srgb,var(--theme-panel, #4f46e5) 18%,transparent);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px var(--theme-glow, rgba(15, 23, 42, .06));flex-shrink:0}.wc-icon{font-size:1.8rem;filter:drop-shadow(0 2px 4px rgba(15,23,42,.16))}.wc-icon-lock{position:absolute;right:-5px;bottom:-5px;width:22px;height:22px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.68rem;background:#475569;color:#fff;border:2px solid #fff;box-shadow:0 3px 8px #0f172a33}.wc-icon-check{position:absolute;right:-5px;bottom:-5px;width:22px;height:22px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:900;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:2px solid #fff;box-shadow:0 3px 8px #22c55e5c}.wc-info{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.wc-title{font-size:1rem;font-weight:800;color:#0f172a;margin:0;line-height:1.25;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wc-subtitle{font-size:.78rem;font-weight:500;line-height:1.4;color:#64748b;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.wc-progress{display:flex;align-items:center;gap:8px;min-width:90px;flex-shrink:0}.wc-progress-track{flex:1;height:6px;background:#eef2f6;border-radius:999px;overflow:hidden;min-width:48px}.wc-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--theme-panel, #4f46e5),color-mix(in srgb,var(--theme-panel, #4f46e5) 70%,#fff 30%));box-shadow:0 0 6px var(--theme-glow, transparent);transition:width .6s cubic-bezier(.4,0,.2,1)}.wc-progress-text{font-size:.72rem;font-weight:800;color:#475569;font-variant-numeric:tabular-nums;min-width:26px;text-align:right;white-space:nowrap}.world-card.status-mastered .wc-progress-fill{background:linear-gradient(90deg,#22c55e,#16a34a);box-shadow:0 0 8px #22c55e66}.world-card.status-locked .wc-progress-track{background:#e2e8f0}.wc-status-pill{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.01em;flex-shrink:0;white-space:nowrap}.wc-pill-icon{font-size:.72rem;line-height:1}.wc-pill-label{line-height:1}.wc-status-pill.pill-locked{background:#e2e8f0;color:#94a3b8}.wc-status-pill.pill-mastered{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#15803d;border:1px solid rgba(34,197,94,.28)}.wc-status-pill.pill-active{background:linear-gradient(135deg,var(--theme-panel, #4f46e5),color-mix(in srgb,var(--theme-panel, #4f46e5) 65%,#000 35%));color:#fff;box-shadow:0 4px 12px var(--theme-glow, rgba(15, 23, 42, .18));animation:pillPulse 1.8s ease-in-out infinite}.wc-status-pill.pill-open{background:color-mix(in srgb,var(--theme-panel, #4f46e5) 12%,#ffffff);color:color-mix(in srgb,var(--theme-panel, #4f46e5) 50%,#000 50%);border:1px solid color-mix(in srgb,var(--theme-panel, #4f46e5) 24%,transparent)}@keyframes pillPulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.wc-nodes{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;padding-top:18px;width:100%;border-top:1px solid rgba(255,255,255,.14)}.wc-node-wrapper{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px}.wc-node{width:60px;height:60px;border-radius:50%;border:2px solid rgba(255,255,255,.22);background:linear-gradient(180deg,color-mix(in srgb,var(--node-color, #60a5fa) 82%,#fff 18%),color-mix(in srgb,var(--node-color, #60a5fa) 92%,#000 8%));display:flex;align-items:center;justify-content:center;font-size:1.15rem;font-weight:900;color:#fff;cursor:pointer;box-shadow:0 6px 16px #00000029;transition:all .2s ease;text-shadow:0 2px 4px rgba(0,0,0,.22)}.wc-node:hover{transform:translateY(-2px);box-shadow:0 10px 22px #0003}.wc-node.node-locked{background:linear-gradient(180deg,#94a3b8,#64748b);cursor:not-allowed;opacity:.6;box-shadow:0 4px 10px #0000001a;border-color:#ffffff1a}.wc-node.node-mastered{border:2px solid rgba(255,221,87,.8);box-shadow:0 0 0 3px #ffd54f1f,0 8px 20px #ffd54f3d}.wc-node.node-active{animation:levelFloat 2.4s ease-in-out infinite}@keyframes levelFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.theme-direction{--theme-panel: #0ea5e9;--theme-glow: rgba(14, 165, 233, .5)}.theme-loop{--theme-panel: #eab308;--theme-glow: rgba(234, 179, 8, .5)}.theme-sequential_loop{--theme-panel: #f97316;--theme-glow: rgba(249, 115, 22, .5)}.theme-condition{--theme-panel: #22c55e;--theme-glow: rgba(34, 197, 94, .5)}.theme-nested_loop{--theme-panel: #f59e0b;--theme-glow: rgba(245, 158, 11, .5)}.theme-checkpoint_loop{--theme-panel: #3b82f6;--theme-glow: rgba(59, 130, 246, .5)}.theme-condition_else{--theme-panel: #34d399;--theme-glow: rgba(52, 211, 153, .5)}.theme-nested_condition{--theme-panel: #10b981;--theme-glow: rgba(16, 185, 129, .5)}.theme-condition_loop{--theme-panel: #facc15;--theme-glow: rgba(250, 204, 21, .5)}.theme-checkpoint_if{--theme-panel: #06b6d4;--theme-glow: rgba(6, 182, 212, .5)}.theme-while{--theme-panel: #2563eb;--theme-glow: rgba(37, 99, 235, .5)}.theme-while_condition{--theme-panel: #34d399;--theme-glow: rgba(52, 211, 153, .5)}.theme-while_loop{--theme-panel: #fbbf24;--theme-glow: rgba(251, 191, 36, .5)}.theme-checkpoint_while{--theme-panel: #38bdf8;--theme-glow: rgba(56, 189, 248, .5)}.theme-array{--theme-panel: #4ade80;--theme-glow: rgba(74, 222, 128, .5)}.theme-array_loop{--theme-panel: #f97316;--theme-glow: rgba(249, 115, 22, .5)}.theme-array_condition{--theme-panel: #14b8a6;--theme-glow: rgba(20, 184, 166, .5)}.theme-checkpoint_array{--theme-panel: #60a5fa;--theme-glow: rgba(96, 165, 250, .5)}.theme-function{--theme-panel: #a3e635;--theme-glow: rgba(163, 230, 53, .5)}.theme-function_loop{--theme-panel: #fcd34d;--theme-glow: rgba(252, 211, 77, .5)}.theme-function_condition{--theme-panel: #2dd4bf;--theme-glow: rgba(45, 212, 191, .5)}.theme-function_while{--theme-panel: #818cf8;--theme-glow: rgba(129, 140, 248, .5)}.theme-function_array{--theme-panel: #fb923c;--theme-glow: rgba(251, 146, 60, .5)}.theme-checkpoint_func{--theme-panel: #67e8f9;--theme-glow: rgba(103, 232, 249, .5)}.theme-combined{--theme-panel: #be123c;--theme-glow: rgba(190, 18, 60, .45)}.cloud-popup{width:290px;position:absolute;top:52px;background:#fffffff5;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:22px;padding:18px;box-shadow:0 18px 48px #0f172a29,0 0 0 1px #ffffff5c;z-index:50}.popup-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.popup-emoji{font-size:1.9rem;flex-shrink:0}.popup-title{margin:0;font-size:1rem;font-weight:800;color:#0f172a}.popup-desc{margin:4px 0 0;font-size:.78rem;color:#475569;line-height:1.5}.popup-progress{margin-bottom:14px}.popup-progress-track{height:8px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin-bottom:6px}.popup-progress-fill{height:100%;border-radius:999px;transition:width .5s ease}.popup-progress-text{font-size:.72rem;color:#64748b;font-weight:700}.popup-play-btn{width:100%;padding:13px 14px;border:none;border-radius:14px;color:#fff;background:linear-gradient(135deg,#22c55e,#16a34a);font-size:1rem;font-weight:800;cursor:pointer;letter-spacing:.02em;box-shadow:0 8px 22px #22c55e47;transition:all .2s ease}.popup-play-btn:hover{transform:translateY(-1px);filter:brightness(1.03);box-shadow:0 12px 28px #22c55e57}.popup-mastered{text-align:center;font-size:1rem;font-weight:800;color:#f59e0b;padding:10px 0}.sky-end-sign{text-align:center;padding:40px 20px;color:#ffffff85}.sky-end-sign span{font-size:2.3rem;display:block;margin-bottom:8px;animation:cloudBounce 2.5s ease-in-out infinite}.sky-end-sign p{margin:0;font-size:.88rem;font-weight:600;color:#ffffff6b}@keyframes cloudBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.concept-stages-snake{display:flex;flex-direction:column;gap:10px;position:relative;background:#ffffff0f;border-radius:20px;padding:24px;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.snake-row{display:flex;gap:14px;justify-content:flex-start;position:relative}.snake-row-reversed{justify-content:flex-end}.snake-row:not(:last-child):after{content:"";position:absolute;bottom:-10px;width:3px;height:10px;background:#ffffff26;border-radius:2px}.snake-row:not(.snake-row-reversed):not(:last-child):after{right:36px}.snake-row-reversed:not(:last-child):after{left:36px}.concept-stages-snake .wc-node-wrapper{display:flex;flex-direction:column;align-items:center;gap:5px;margin:0}.concept-stages-snake .wc-node{width:64px;height:64px;font-size:1.4rem}.wc-node.node-failed{background:linear-gradient(145deg,#ef444480,#b91c1c99);border-color:#ef444466;color:#fca5a5;cursor:not-allowed;box-shadow:0 4px 14px #ef444433}.wc-node.node-completed{cursor:not-allowed;opacity:.8;pointer-events:none}.wc-node.node-completed:hover{transform:none}.stage-label{font-size:.66rem;color:#ffffff80;font-weight:500;text-align:center;white-space:nowrap}.next-island-wrapper{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:24px;padding-top:24px;border-top:2px dashed rgba(255,255,255,.15)}.next-island-label-text{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:#ffffff80}.next-island-wrapper .world-card{width:320px;max-width:100%}@media(max-width:900px){.world-cards-container{gap:12px;padding:20px 16px 60px}.sky-progress-pill{min-width:150px;padding:8px 14px 10px}}@media(max-width:600px){.sky-title{font-size:1.7rem}.sky-subtitle{font-size:.86rem;max-width:94%}.sky-title-area{padding:80px 16px 28px}.sky-top-bar{padding:12px 14px;gap:8px}.sky-progress-pill{min-width:0;flex:1;padding:8px 12px 10px}.sky-progress-label{font-size:.62rem}.sky-nav-btn{padding:0 10px;height:38px;font-size:.78rem}.sky-nav-btn span{display:none}.sky-nav-btn{padding:0;width:40px;justify-content:center}.world-cards-container{padding:12px 12px 44px;gap:10px}.world-card{padding:16px 14px 16px 18px;border-radius:16px;gap:12px}.wc-icon-wrap{width:46px;height:46px;min-width:46px;border-radius:13px}.wc-icon{font-size:1.4rem}.wc-title{font-size:.9rem}.wc-subtitle{font-size:.7rem;-webkit-line-clamp:1}.wc-status-pill{font-size:.66rem;padding:5px 10px}.wc-progress{min-width:70px}.wc-progress-text{font-size:.65rem}.wc-progress-track{min-width:36px}.wc-ribbon{font-size:.52rem;padding:4px 12px}.concept-stages-snake{padding:16px 12px;border-radius:14px}.snake-row{gap:8px}.concept-stages-snake .wc-node{width:50px;height:50px;font-size:1.1rem}.stage-label{font-size:.58rem}.cloud-popup{width:min(240px,calc(100vw - 24px));padding:16px}}@media(max-width:380px){.world-card{flex-wrap:wrap;gap:10px}.wc-progress{width:100%;min-width:0}.wc-status-pill{margin-left:auto}}
