@import"/css/vietnamese-fonts.css?v=1";:root{--primary: #6C5CE7;--primary-light: #A29BFE;--primary-dark: #5A4BD1;--secondary: #00CEC9;--secondary-light: #81ECEC;--accent: #FDCB6E;--accent-dark: #F0B429;--success: #00B894;--success-light: #55EFC4;--danger: #FF7675;--danger-dark: #D63031;--warning: #FFEAA7;--info: #74B9FF;--rarity-common: #95A5A6;--rarity-rare: #3498DB;--rarity-epic: #9B59B6;--rarity-legendary: #F39C12;--bg-main: #FFFFFF;--bg-card: #FFFFFF;--bg-dark: #2D3436;--bg-darker: #1E272E;--text-primary: #2D3436;--text-secondary: #636E72;--text-light: #B2BEC3;--text-white: #FFFFFF;--border: #E8ECF0;--border-light: #F4F6F8;--shadow-sm: 0 2px 8px rgba(108, 92, 231, .08);--shadow-md: 0 4px 20px rgba(108, 92, 231, .12);--shadow-lg: 0 8px 40px rgba(108, 92, 231, .16);--shadow-glow: 0 0 20px rgba(108, 92, 231, .3);--font-family: "Baloo 2", "Nunito", -apple-system, BlinkMacSystemFont, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--font-size-3xl: 2.5rem;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 50%;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--transition-bounce: .4s cubic-bezier(.34, 1.56, .64, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-family);color:var(--text-primary);background:var(--bg-main);line-height:1.6;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}body.app-paused *,body.app-paused *:before,body.app-paused *:after{animation-play-state:paused!important}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button{cursor:pointer;border:none;background:none;font-family:inherit}input,select,textarea{font-family:inherit}.splash-screen{position:fixed;inset:0;background:#314b3c url(/images/splash-bg-october.webp) center / cover no-repeat;display:flex;align-items:center;justify-content:center;z-index:10000;transition:opacity .6s ease,transform .6s ease;overflow:hidden}.splash-screen:before{content:none}.splash-screen:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,#28140526,#140802a6);pointer-events:none}.splash-enter-prompt{margin-top:24px;font-size:1.2rem;font-weight:700;color:#fffffff2;animation:splashPromptPulse 1.5s ease-in-out infinite;cursor:pointer;letter-spacing:1.5px;text-shadow:0 0 16px rgba(255,200,0,.6),0 2px 6px rgba(0,0,0,.7);user-select:none;display:none;padding:12px 28px;border:1.5px solid rgba(255,200,0,.4);border-radius:30px;background:#ffb4001f;backdrop-filter:blur(4px);transition:transform .2s}.splash-enter-prompt:hover{transform:scale(1.05);background:#ffb40033}.splash-enter-prompt.visible{display:block}@keyframes splashPromptPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@media(min-width:768px){.splash-enter-prompt{font-size:1.3rem}}@media(min-width:1200px){.splash-enter-prompt{font-size:1.5rem}}.splash-screen.splash-exit{opacity:0;transform:scale(1.05);pointer-events:none}.splash-content{text-align:center;color:#fff;position:relative;z-index:2}.splash-piece{animation:splashFloat 2s ease-in-out infinite;filter:drop-shadow(0 0 30px rgba(255,215,0,.6)) drop-shadow(0 0 60px rgba(162,155,254,.4));margin-bottom:16px}@keyframes splashFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}.splash-knight{animation:splashAssemble .8s ease-out both;width:100px;height:120px}@keyframes splashAssemble{0%{opacity:0;transform:scale(.5) rotate(-15deg);filter:blur(8px)}to{opacity:1;transform:scale(1) rotate(0);filter:blur(0)}}.splash-particles{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}.splash-particles .sp{position:absolute;width:8px;height:8px;border-radius:50%;animation:splashParticle 3s ease-in-out infinite}.sp:nth-child(1){left:15%;top:25%;animation-delay:0s;background:radial-gradient(circle,rgba(255,215,0,.9) 0%,transparent 70%);width:10px;height:10px}.sp:nth-child(2){left:75%;top:15%;animation-delay:.5s;background:radial-gradient(circle,rgba(162,155,254,.9) 0%,transparent 70%)}.sp:nth-child(3){left:35%;top:75%;animation-delay:1s;background:radial-gradient(circle,rgba(129,236,236,.9) 0%,transparent 70%);width:10px;height:10px}.sp:nth-child(4){left:85%;top:55%;animation-delay:1.5s;background:radial-gradient(circle,rgba(253,203,110,.9) 0%,transparent 70%)}.sp:nth-child(5){left:8%;top:55%;animation-delay:.7s;background:radial-gradient(circle,rgba(255,118,117,.8) 0%,transparent 70%);width:12px;height:12px}.sp:nth-child(6){left:55%;top:85%;animation-delay:1.2s;background:radial-gradient(circle,rgba(0,206,201,.9) 0%,transparent 70%)}@keyframes splashParticle{0%,to{opacity:0;transform:translateY(0) scale(.5)}50%{opacity:1;transform:translateY(-25px) scale(1.2)}}.splash-title{font-size:3.2rem;font-weight:800;margin-bottom:6px;letter-spacing:3px;text-shadow:0 0 20px rgba(255,215,0,.5),0 0 40px rgba(108,92,231,.3),0 2px 4px rgba(0,0,0,.5)}.splash-title .sl{display:inline-block;opacity:0;transform:translateY(20px);animation:splashLetterIn .4s ease forwards;animation-delay:calc(.3s + var(--i) * .06s);background:linear-gradient(180deg,gold,orange,#ff8c00);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.splash-title .sl.gap{width:.5em}@keyframes splashLetterIn{to{opacity:1;transform:translateY(0)}}.splash-subtitle{font-size:1.3rem;margin-bottom:8px;animation:fadeIn .5s 1.2s ease both;background:linear-gradient(90deg,#81ecec,#74b9ff,#a29bfe);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700;letter-spacing:2px;text-shadow:none}.splash-org{font-size:1rem;opacity:.65;margin-bottom:28px;letter-spacing:2px;font-weight:600;color:#fdcb6e;text-shadow:0 1px 3px rgba(0,0,0,.5);animation:fadeIn .5s 1.4s ease both}.splash-progress{width:320px;height:6px;background:#ffffff1f;border-radius:3px;margin:0 auto 12px;overflow:hidden;box-shadow:0 0 15px #6c5ce733}.splash-progress-fill{height:100%;width:0%;background:linear-gradient(90deg,#6c5ce7,#a29bfe,#81ecec,#55efc4);border-radius:3px;transition:width .4s ease;box-shadow:0 0 8px #81ecec80}.splash-status{font-size:.95rem;opacity:.7;min-height:1.4em;color:#dfe6e9;text-shadow:0 1px 3px rgba(0,0,0,.5);font-weight:500}.splash-version{font-size:.8rem;opacity:.35;margin-top:20px;letter-spacing:1px;color:#b2bec3}@media(min-width:768px){.splash-title{font-size:4.5rem;letter-spacing:5px}.splash-subtitle{font-size:1.6rem;letter-spacing:3px}.splash-org{font-size:1.15rem}.splash-status{font-size:1.05rem}.splash-progress{width:400px;height:7px}.splash-knight{width:120px;height:144px}.splash-piece{margin-bottom:24px}}@media(min-width:1200px){.splash-title{font-size:5.5rem;letter-spacing:6px}.splash-subtitle{font-size:1.9rem}.splash-org{font-size:1.25rem}.splash-progress{width:480px;height:8px}.splash-knight{width:140px;height:168px}}#app{transition:opacity .2s ease,transform .2s ease}#app.page-exit{opacity:0;transform:scale(.98);pointer-events:none}#app.page-enter{opacity:0;transform:translateY(10px)}#app.page-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeletonPulse 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes skeletonPulse{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:14px;margin-bottom:8px;width:80%}.skeleton-text:last-child{width:60%}.skeleton-title{height:22px;width:50%;margin-bottom:12px}.skeleton-circle{width:48px;height:48px;border-radius:50%}.skeleton-card{height:120px;border-radius:var(--radius-lg);margin-bottom:var(--space-md)}.btn--loading{pointer-events:none;opacity:.7;position:relative}.btn--loading:before{content:"";width:16px;height:16px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:btnSpin .6s linear infinite;margin-right:6px;display:inline-block;vertical-align:middle}@keyframes btnSpin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.app-header{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;padding:var(--space-sm) var(--space-md);position:sticky;top:0;z-index:100;box-shadow:var(--shadow-md);min-height:44px}.header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.header-logo{font-size:var(--font-size-xl);font-weight:800;display:flex;align-items:center;gap:var(--space-sm)}.header-logo .logo-icon{font-size:1.5em}.header-stats{display:flex;gap:var(--space-md);align-items:center}.stat-badge{background:#ffffff26;backdrop-filter:blur(10px);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-xl);font-weight:700;font-size:var(--font-size-sm);display:flex;align-items:center;gap:var(--space-xs);transition:var(--transition-normal);border:1px solid rgba(255,255,255,.2)}.stat-badge:hover{background:#ffffff40;transform:scale(1.05)}.stat-badge .stat-icon{font-size:1.2em}.header-user{display:flex;align-items:center;gap:var(--space-md)}.user-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:700;border:2px solid rgba(255,255,255,.5)}.user-info{text-align:right;max-width:180px;overflow:visible}.user-name{font-weight:700;font-size:var(--font-size-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-rank{font-size:var(--font-size-xs);opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-membership{margin-top:2px;display:flex;justify-content:flex-end}.header-actions{display:flex;gap:var(--space-sm)}.header-btn{background:#ffffff26;color:#fff;padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:600;transition:var(--transition-fast)}.header-btn:hover{background:#ffffff4d}.header-btn--music{position:relative;transition:var(--transition-fast),transform .2s cubic-bezier(.34,1.56,.64,1);font-size:1rem}.header-btn--music:hover{background:#ffffff4d;transform:scale(1.1)}.header-btn--music.music-on{background:#ffd75033;border:1px solid rgba(255,215,80,.35);animation:musicBtnGlow 2.5s ease-in-out infinite}@keyframes musicBtnGlow{0%,to{box-shadow:0 0 #ffd75000}50%{box-shadow:0 0 8px 3px #ffd75040}}.desktop-only{display:inline-flex}@media(max-width:767px){.desktop-only{display:none!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);font-weight:700;font-size:var(--font-size-base);transition:var(--transition-normal);position:relative;overflow:hidden}.btn:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.2) 0%,transparent 50%);pointer-events:none}.btn:active{transform:scale(.96)}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;box-shadow:0 4px #4834b0,var(--shadow-md)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px #4834b0,var(--shadow-lg)}.btn-primary:active{transform:translateY(2px);box-shadow:0 2px #4834b0}.btn-success{background:linear-gradient(135deg,var(--success),#00A381);color:#fff;box-shadow:0 4px #008e71,var(--shadow-md)}.btn-success:hover{transform:translateY(-2px)}.btn-success:active{transform:translateY(2px);box-shadow:0 2px #008e71}.btn-accent{background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:var(--text-primary);box-shadow:0 4px #d4a017,var(--shadow-md)}.btn-accent:hover{transform:translateY(-2px)}.btn-accent:active{transform:translateY(2px);box-shadow:0 2px #d4a017}.btn-danger{background:linear-gradient(135deg,var(--danger),var(--danger-dark));color:#fff;box-shadow:0 4px #b71c1c}.btn-outline{background:transparent;border:2px solid var(--primary);color:var(--primary)}.btn-outline:hover{background:var(--primary);color:#fff}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn-sm{padding:var(--space-xs) var(--space-md);font-size:var(--font-size-sm)}.btn-lg{padding:var(--space-md) var(--space-xl);font-size:var(--font-size-lg)}.card{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);overflow:hidden;transition:var(--transition-normal)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-header{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border-light);font-weight:700;font-size:var(--font-size-lg);display:flex;align-items:center;gap:var(--space-sm)}.card-body{padding:var(--space-lg)}.card-footer{padding:var(--space-md) var(--space-lg);border-top:1px solid var(--border-light)}.form-group{margin-bottom:var(--space-md)}.form-label{display:block;font-weight:700;margin-bottom:var(--space-xs);font-size:var(--font-size-sm);color:var(--text-secondary)}.form-input{width:100%;padding:var(--space-sm) var(--space-md);border:2px solid var(--border);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:var(--transition-fast);background:var(--bg-card)}.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #6c5ce726}.form-input::placeholder{color:var(--text-light)}.form-select{width:100%;padding:var(--space-sm) var(--space-md);border:2px solid var(--border);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--bg-card);cursor:pointer}.village-map{width:100%;height:calc(100vh - var(--header-h, 44px));overflow:auto;background:radial-gradient(circle at 18% 18%,rgba(254,240,138,.45) 0%,transparent 35%),radial-gradient(ellipse at 50% 10%,rgba(255,255,255,.7) 0%,transparent 60%),radial-gradient(ellipse at 85% 25%,rgba(186,230,253,.5) 0%,transparent 50%),linear-gradient(180deg,#60a5fa,#93c5fd,#bfdbfe,#dbeafe,#eff6ff);user-select:none}.village-map-inner{position:relative;aspect-ratio:2752 / 1536;width:100%;max-width:calc((100vh - var(--header-h, 44px)) * 2752 / 1536);max-height:calc(100vh - var(--header-h, 44px));margin:auto}.village-map-inner:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:2;box-shadow:inset 0 0 40px 10px #ffffff4d;border-radius:inherit}@media(max-height:500px){.village-map-inner{min-height:380px;min-width:calc(380px * 2752 / 1536)}}@media(max-width:600px){.village-map-inner{min-width:580px;min-height:calc(580px * 1536 / 2752)}}@media(max-aspect-ratio:1/1){.village-map{height:calc(100vh - var(--header-h, 46px) - 64px);height:calc(100dvh - var(--header-h, 46px) - 64px);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.village-map-inner{height:calc(100vh - var(--header-h, 46px) - 64px);height:calc(100dvh - var(--header-h, 46px) - 64px);max-height:none;width:auto;max-width:none;aspect-ratio:2752 / 1536}}.village-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none}.building{position:absolute;transform:translate(-50%,-50%);cursor:pointer;z-index:10;animation:buildingBob 3s ease-in-out infinite;width:clamp(50px,8vw,120px);height:clamp(50px,8vw,120px)}.building--large{width:clamp(60px,10vw,150px);height:clamp(60px,10vw,150px)}.building:nth-child(2){animation-delay:-.5s}.building:nth-child(3){animation-delay:-1s}.building:nth-child(4){animation-delay:-1.5s}.building:nth-child(5){animation-delay:-2s}.building:nth-child(6){animation-delay:-2.5s}.building:nth-child(7){animation-delay:-.7s}@keyframes buildingBob{0%,to{transform:translate(-50%,-50%)}50%{transform:translate(-50%,calc(-50% - 6px))}}.building:hover{animation-play-state:paused;transform:translate(-50%,-50%) scale(1.12);z-index:20;filter:drop-shadow(0 0 18px var(--glow-color, rgba(255, 255, 255, .5)));transition:transform .3s cubic-bezier(.34,1.56,.64,1),filter .3s ease}.building:active{transform:translate(-50%,-50%) scale(.95)}.building--entering{animation:buildingFlash .5s ease}@keyframes buildingFlash{0%{filter:brightness(1)}50%{filter:brightness(1.8) drop-shadow(0 0 25px rgba(255,255,200,.9))}to{filter:brightness(1)}}.building-label{position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(10px);background:#000000d1;color:#fff;padding:6px 14px;border-radius:14px;font-size:.75rem;font-weight:700;white-space:nowrap;display:flex;align-items:center;gap:5px;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.15);box-shadow:0 4px 16px #0006;z-index:5;opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s cubic-bezier(.34,1.56,.64,1)}.building:hover .building-label{opacity:1;transform:translate(-50%) translateY(-6px)}.building-label--gold{background:#a06e00e0;border-color:#ffc8324d}.building-label--green{background:#14501ee0;border-color:#64ff6433}.building-label--purple{background:#3c1e78e0;border-color:#b482ff4d}.building-label--dark{background:#0f0a08eb;border-color:#ff503233}.label-icon{font-size:1rem}.label-text{letter-spacing:.3px}.lock-badge{font-size:.55rem;opacity:.8;margin-left:3px}.building-particles{position:absolute;inset:-35px;pointer-events:none;opacity:.8;transition:opacity .4s ease}.building:hover .building-particles{opacity:1}.particles--sparkles .p{position:absolute;width:10px;height:10px;background:radial-gradient(circle,#fff 0%,#ffd700 60%,transparent 100%);border-radius:50%;box-shadow:0 0 6px 2px #ffd70066;animation:sparkleF 1.5s ease-in-out infinite}.particles--sparkles .p:nth-child(1){left:15%;top:20%;animation-delay:0s}.particles--sparkles .p:nth-child(2){left:75%;top:10%;animation-delay:.3s}.particles--sparkles .p:nth-child(3){left:50%;top:60%;animation-delay:.6s}.particles--sparkles .p:nth-child(4){left:85%;top:45%;animation-delay:.9s}.particles--sparkles .p:nth-child(5){left:30%;top:75%;animation-delay:1.2s}.particles--sparkles .p:nth-child(6){left:60%;top:30%;animation-delay:.15s}.particles--sparkles .p:nth-child(7){left:10%;top:50%;animation-delay:.7s}.particles--sparkles .p:nth-child(8){left:90%;top:70%;animation-delay:1s}@keyframes sparkleF{0%,to{transform:scale(0) translateY(0);opacity:0}30%{transform:scale(1.3) translateY(-8px);opacity:1}70%{transform:scale(.6) translateY(-18px);opacity:.7}}.particles--butterflies .p{position:absolute;font-size:1.6rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));animation:bflyF 2.5s ease-in-out infinite}.particles--butterflies .p:nth-child(1){left:10%;top:30%;animation-delay:0s}.particles--butterflies .p:nth-child(2){left:60%;top:15%;animation-delay:.6s}.particles--butterflies .p:nth-child(3){left:80%;top:55%;animation-delay:1.2s}.particles--butterflies .p:nth-child(4){left:35%;top:70%;animation-delay:1.8s}.particles--butterflies .p:nth-child(5){left:55%;top:40%;animation-delay:.3s}.particles--butterflies .p:nth-child(6){left:20%;top:80%;animation-delay:.9s}@keyframes bflyF{0%,to{transform:translate(0) rotate(0) scale(.7);opacity:.3}25%{transform:translate(10px,-14px) rotate(15deg) scale(1);opacity:1}50%{transform:translate(-6px,-22px) rotate(-10deg) scale(1.1);opacity:.9}75%{transform:translate(14px,-10px) rotate(10deg) scale(.9);opacity:.6}}.particles--golden .p{position:absolute;font-size:1.4rem;filter:drop-shadow(0 0 4px rgba(255,215,0,.5));animation:goldR 2s ease-out infinite}.particles--golden .p:nth-child(1){left:20%;top:70%;animation-delay:0s}.particles--golden .p:nth-child(2){left:50%;top:80%;animation-delay:.4s}.particles--golden .p:nth-child(3){left:75%;top:65%;animation-delay:.8s}.particles--golden .p:nth-child(4){left:40%;top:75%;animation-delay:1.2s}.particles--golden .p:nth-child(5){left:65%;top:80%;animation-delay:.2s}.particles--golden .p:nth-child(6){left:30%;top:85%;animation-delay:1s}@keyframes goldR{0%{transform:translateY(0) scale(.5);opacity:0}30%{transform:translateY(-15px) scale(1);opacity:1}to{transform:translateY(-40px) scale(.3);opacity:0}}.particles--coins .p{position:absolute;font-size:1.4rem;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3));animation:coinB 1.8s ease-in-out infinite}.particles--coins .p:nth-child(1){left:15%;top:50%;animation-delay:0s}.particles--coins .p:nth-child(2){left:55%;top:30%;animation-delay:.3s}.particles--coins .p:nth-child(3){left:80%;top:60%;animation-delay:.6s}.particles--coins .p:nth-child(4){left:35%;top:70%;animation-delay:.9s}.particles--coins .p:nth-child(5){left:70%;top:40%;animation-delay:.15s}.particles--coins .p:nth-child(6){left:20%;top:80%;animation-delay:1.2s}@keyframes coinB{0%,to{transform:translateY(0) rotateY(0);opacity:.4}25%{transform:translateY(-10px) rotateY(90deg);opacity:1}50%{transform:translateY(-5px) rotateY(180deg);opacity:.9}75%{transform:translateY(-12px) rotateY(270deg);opacity:.7}}.particles--fireflies .p{position:absolute;width:10px;height:10px;background:radial-gradient(circle,#7fff00,#32cd32 50%,transparent 100%);border-radius:50%;box-shadow:0 0 8px 3px #7fff0066;animation:ffGlow 2s ease-in-out infinite}.particles--fireflies .p:nth-child(1){left:20%;top:25%;animation-delay:0s}.particles--fireflies .p:nth-child(2){left:70%;top:15%;animation-delay:.5s}.particles--fireflies .p:nth-child(3){left:45%;top:55%;animation-delay:1s}.particles--fireflies .p:nth-child(4){left:80%;top:40%;animation-delay:1.5s}.particles--fireflies .p:nth-child(5){left:30%;top:70%;animation-delay:.7s}.particles--fireflies .p:nth-child(6){left:55%;top:30%;animation-delay:.2s}.particles--fireflies .p:nth-child(7){left:10%;top:50%;animation-delay:1.2s}.particles--fireflies .p:nth-child(8){left:90%;top:65%;animation-delay:1.8s}@keyframes ffGlow{0%,to{transform:translate(0) scale(.3);opacity:0;box-shadow:none}50%{transform:translate(5px,-8px) scale(1);opacity:1;box-shadow:0 0 8px #7fff00}}.particles--snow .p{position:absolute;width:8px;height:8px;background:#fff;border-radius:50%;box-shadow:0 0 6px 2px #ffffff80;animation:snowF 2.5s linear infinite;opacity:.9}.particles--snow .p:nth-child(1){left:20%;top:-5%;animation-delay:0s}.particles--snow .p:nth-child(2){left:45%;top:-5%;animation-delay:.3s}.particles--snow .p:nth-child(3){left:70%;top:-5%;animation-delay:.6s}.particles--snow .p:nth-child(4){left:35%;top:-5%;animation-delay:.9s}.particles--snow .p:nth-child(5){left:80%;top:-5%;animation-delay:1.2s}.particles--snow .p:nth-child(6){left:55%;top:-5%;animation-delay:.15s}.particles--snow .p:nth-child(7){left:10%;top:-5%;animation-delay:1.5s}.particles--snow .p:nth-child(8){left:90%;top:-5%;animation-delay:1.8s}@keyframes snowF{0%{transform:translateY(0) translate(0);opacity:0}10%{opacity:.9}to{transform:translateY(100px) translate(15px);opacity:0}}.particles--embers .p{position:absolute;width:10px;height:10px;background:radial-gradient(circle,#ff4500,#ff6347 50%,transparent 100%);border-radius:50%;box-shadow:0 0 8px 3px #ff450080;animation:embR 1.8s ease-out infinite}.particles--embers .p:nth-child(1){left:40%;top:80%;animation-delay:0s}.particles--embers .p:nth-child(2){left:55%;top:75%;animation-delay:.3s}.particles--embers .p:nth-child(3){left:65%;top:85%;animation-delay:.6s}.particles--embers .p:nth-child(4){left:50%;top:70%;animation-delay:.9s}.particles--embers .p:nth-child(5){left:30%;top:90%;animation-delay:.15s}.particles--embers .p:nth-child(6){left:75%;top:65%;animation-delay:1.2s}.particles--embers .p:nth-child(7){left:45%;top:60%;animation-delay:.45s}@keyframes embR{0%{transform:translateY(0) scale(1);opacity:0}20%{opacity:1}to{transform:translateY(-50px) translate(10px) scale(0);opacity:0}}.building--locked .building-label{filter:grayscale(.5);opacity:.5!important}.building--locked:hover .building-label{opacity:.85!important}.building--locked:hover{transform:translate(-50%,-50%) scale(1.02)}.player-character{position:absolute;transform:translate(-50%,-50%);z-index:30;pointer-events:none;transition:left 0s,top 0s}.player-body{font-size:clamp(1.8rem,3vw,2.8rem);text-align:center;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5));transition:transform .15s ease}.player-shadow{width:clamp(20px,3vw,36px);height:clamp(6px,.8vw,10px);background:radial-gradient(ellipse,rgba(0,0,0,.35),transparent 70%);border-radius:50%;margin:0 auto;position:absolute;bottom:-4px;left:50%;transform:translate(-50%)}.player-name{position:absolute;top:100%;left:50%;transform:translate(-50%);background:#6c5ce7d9;color:#fff;padding:2px 8px;border-radius:10px;font-size:clamp(.55rem,1vw,.7rem);font-weight:700;white-space:nowrap;margin-top:2px;box-shadow:0 2px 8px #0000004d;backdrop-filter:blur(4px)}.player--walking .player-body{animation:playerWalk .35s ease-in-out infinite}.player--flip .player-body{transform:scaleX(-1)}@keyframes playerWalk{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.player--flip.player--walking .player-body{animation:playerWalkFlip .35s ease-in-out infinite}@keyframes playerWalkFlip{0%,to{transform:scaleX(-1) translateY(0)}50%{transform:scaleX(-1) translateY(-4px)}}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:2000;opacity:0;pointer-events:none;transition:opacity var(--transition-normal);backdrop-filter:blur(4px);padding:var(--space-md)}.modal-overlay.active{opacity:1;pointer-events:all}.modal-content{background:var(--bg-card);border-radius:var(--radius-xl);width:100%;max-width:600px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-lg);transform:scale(.9) translateY(20px);transition:transform var(--transition-bounce);position:relative}.modal-overlay.active .modal-content{transform:scale(1) translateY(0)}.modal-content.modal-lg{max-width:800px}.modal-content.modal-xl{max-width:1000px}.modal-content.modal-fullscreen{max-width:95vw;max-height:92vh;width:100%}.modal-header{padding:var(--space-lg);border-bottom:1px solid var(--border-light);display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:var(--font-size-xl);font-weight:800;display:flex;align-items:center;gap:var(--space-sm)}.modal-close{width:36px;height:36px;border-radius:var(--radius-full);background:var(--border-light);display:flex;align-items:center;justify-content:center;font-size:1.5rem;transition:var(--transition-fast);color:var(--text-secondary)}.modal-close:hover{background:var(--danger);color:#fff}.modal-body{padding:var(--space-lg);flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0}.modal-content.modal-dark{background:linear-gradient(135deg,#1a1a2e,#16213e);color:#eee;border:1px solid rgba(255,255,255,.1)}.modal-dark .modal-header{border-bottom-color:#ffffff1a}.modal-dark .modal-title{color:#fff}.modal-dark .modal-close{background:#ffffff1a;color:#ffffffb3}.modal-dark .modal-close:hover{background:var(--danger);color:#fff}.modal-dark .empty-state{color:#fff6}@media(max-width:1024px),(hover:none){.building-label{opacity:.85!important;transform:translate(-50%) translateY(-4px)!important;pointer-events:none;font-size:.6rem;padding:4px 8px}}@media(hover:none){.btn-sm{min-height:36px;min-width:36px;padding:var(--space-sm) var(--space-md)}.building{width:clamp(60px,10vw,130px);height:clamp(60px,10vw,130px)}.building:active{transform:translate(-50%,-50%) scale(.9);filter:brightness(1.3) drop-shadow(0 0 20px var(--glow-color, rgba(255, 255, 255, .6)));transition:transform .1s ease,filter .1s ease}}#school-daily-tab,#school-weekly-tab{transition:opacity .25s ease}#school-daily-tab.hidden,#school-weekly-tab.hidden{opacity:0;pointer-events:none;position:absolute}.milestone-list{list-style:none;padding:0}.milestone-item{display:flex;gap:var(--space-md);padding:var(--space-md) 0;position:relative;cursor:pointer;transition:var(--transition-fast)}.milestone-item:hover{background:#6c5ce708;border-radius:var(--radius-md)}.milestone-connector{width:4px;position:absolute;left:23px;top:50px;bottom:-16px;background:var(--border)}.milestone-item.completed .milestone-connector{background:var(--success)}.milestone-item:last-child .milestone-connector{display:none}.milestone-icon-wrap{width:48px;height:48px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;border:3px solid var(--border);background:var(--bg-main);z-index:1}.milestone-item.completed .milestone-icon-wrap{border-color:var(--success);background:#e8fff5}.milestone-item.current .milestone-icon-wrap{border-color:var(--primary);background:#f0edff;box-shadow:var(--shadow-glow);animation:currentPulse 2s ease-in-out infinite}.milestone-item.locked .milestone-icon-wrap{opacity:.5}@keyframes currentPulse{0%,to{box-shadow:0 0 #6c5ce74d}50%{box-shadow:0 0 0 8px #6c5ce700}}.milestone-info{flex:1;min-width:0}.milestone-title{font-weight:700;font-size:var(--font-size-base)}.milestone-stars{font-size:var(--font-size-sm);color:var(--text-secondary)}.milestone-progress-bar{height:6px;background:var(--border-light);border-radius:3px;overflow:hidden;margin-top:var(--space-xs)}.milestone-progress-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--primary),var(--secondary));transition:width .5s ease}.milestone-item.completed .milestone-progress-fill{background:var(--success)}.quest-card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-light);transition:var(--transition-normal);margin-bottom:var(--space-sm)}.quest-card:hover{box-shadow:var(--shadow-sm);transform:translate(4px)}.quest-card.completed{opacity:.7;background:#f0f9f4}.quest-card.completed .quest-title{text-decoration:line-through}.quest-icon{width:40px;height:40px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}.quest-info{flex:1}.quest-title{font-weight:600;font-size:var(--font-size-sm)}.quest-reward{font-size:var(--font-size-xs);color:var(--accent-dark);font-weight:700}.wheel-container{position:relative;width:300px;height:300px;margin:var(--space-lg) auto}.wheel-canvas{width:100%;height:100%;border-radius:var(--radius-full);box-shadow:0 0 30px #6c5ce74d;transition:transform 4s cubic-bezier(.17,.67,.12,.99);border:6px solid var(--primary)}.wheel-pointer{position:absolute;top:-16px;left:50%;transform:translate(-50%);width:0;height:0;border-left:16px solid transparent;border-right:16px solid transparent;border-top:28px solid var(--danger);filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));z-index:2}.wheel-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:50px;height:50px;border-radius:var(--radius-full);background:var(--primary);border:3px solid white;display:flex;align-items:center;justify-content:center;font-size:1.5rem;z-index:2;box-shadow:var(--shadow-md)}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-md)}.shop-card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-light);overflow:hidden;transition:var(--transition-normal);text-align:center}.shop-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.shop-card-icon{font-size:3rem;padding:var(--space-lg) 0 var(--space-sm);background:linear-gradient(180deg,#F8F6FF,transparent);display:flex;align-items:center;justify-content:center;min-height:80px}.shop-card-body{padding:var(--space-md)}.shop-card-name{font-weight:700;margin-bottom:var(--space-xs)}.shop-card-price{color:var(--accent-dark);font-weight:700;font-size:var(--font-size-sm)}.shop-filter-btn{font-size:.8rem;padding:7px 14px;border-radius:10px;font-weight:600;background:#ffffffe0;border:2px solid rgba(0,0,0,.1);color:var(--text-primary);cursor:pointer;transition:all .2s ease;white-space:nowrap}.shop-filter-btn:hover{background:#6c5ce714;border-color:#6c5ce740}.shop-filter-btn--active{background:linear-gradient(135deg,#6c5ce740,#a855f72e);border-color:var(--primary);color:var(--primary-dark);box-shadow:0 2px 8px #6c5ce733}.leaderboard-list{list-style:none;padding:0}.leaderboard-row{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);margin-bottom:var(--space-xs);transition:var(--transition-fast)}.leaderboard-row:hover{background:#6c5ce70d}.leaderboard-row.current-user{background:#6c5ce714;border:2px solid var(--primary-light)}.leaderboard-row:nth-child(1){background:linear-gradient(90deg,#fff7d6,#ffe68a);border:1px solid #F1C40F}.leaderboard-row:nth-child(2){background:linear-gradient(90deg,#eef2f3,#e0e5e9);border:1px solid #BDC3C7}.leaderboard-row:nth-child(3){background:linear-gradient(90deg,#ffe0c2,#f5cbaa);border:1px solid #CD7F32}.leaderboard-rank{font-size:1.5rem;width:40px;text-align:center}.leaderboard-name{flex:1;font-weight:600}.leaderboard-score{font-weight:700;color:var(--primary)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f0c29,#302b63,#24243e);padding:var(--space-lg);position:relative;overflow:hidden}.login-page:before{content:"\265f\265c\265e\265d\265b\265a";position:absolute;inset:0;font-size:8rem;color:#ffffff08;letter-spacing:2rem;line-height:10rem;white-space:nowrap;overflow:hidden;animation:loginBgScroll 30s linear infinite;word-break:break-all;pointer-events:none}@keyframes loginBgScroll{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.login-page:after{content:"";position:absolute;width:400px;height:400px;background:radial-gradient(circle,rgba(108,92,231,.3) 0%,transparent 70%);top:-100px;right:-100px;border-radius:50%;animation:loginOrb 8s ease-in-out infinite alternate;pointer-events:none}@keyframes loginOrb{0%{transform:translate(0) scale(1);opacity:.5}to{transform:translate(-50px,50px) scale(1.2);opacity:.8}}.login-card{background:#ffffff14;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:var(--radius-xl);padding:var(--space-2xl);width:100%;max-width:420px;box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff1a;position:relative;z-index:1;border:1px solid rgba(255,255,255,.12);color:#fff}.login-logo{text-align:center;margin-bottom:var(--space-lg)}.login-logo-img{width:clamp(64px,15vw,96px);height:clamp(64px,15vw,96px);object-fit:contain;border-radius:24px;margin-bottom:var(--space-md);animation:splashFloat 2s ease-in-out infinite;filter:drop-shadow(0 4px 20px rgba(108,92,231,.4))}.login-logo-text{font-size:clamp(1.5rem,5vw,2.2rem);font-weight:800;letter-spacing:.5px;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.3)}.logo-accent{background:linear-gradient(135deg,gold,orange,gold);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:logoShimmer 3s ease-in-out infinite}@keyframes logoShimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.login-logo-sub{font-size:clamp(.65rem,2.5vw,.85rem);color:#ffffff80;margin-top:4px;letter-spacing:1px}.header-logo-img{width:28px;height:28px;object-fit:contain;border-radius:6px;filter:drop-shadow(0 1px 4px rgba(108,92,231,.3))}.header-logo-text{font-weight:800;font-size:clamp(.8rem,2.5vw,1rem);letter-spacing:.3px}.login-error{background:#ff767526;color:#ff7675;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);margin-bottom:var(--space-md);display:none;border:1px solid rgba(255,118,117,.2)}.login-error.visible{display:block;animation:fadeIn .3s ease}.login-tabs{display:flex;margin-bottom:var(--space-lg);background:#ffffff0f;border-radius:var(--radius-md);padding:4px;border:1px solid rgba(255,255,255,.08)}.login-tab{flex:1;padding:var(--space-sm);text-align:center;font-weight:700;font-size:var(--font-size-sm);border-radius:var(--radius-sm);transition:var(--transition-fast);color:#ffffff80}.login-tab.active{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;box-shadow:0 2px 10px #6c5ce766}.guest-entry{margin-bottom:20px;padding:16px;border:1px solid rgba(129,236,236,.2);border-radius:14px;background:#00b89414;text-align:center}.guest-entry .btn{width:100%}.guest-entry p,.guest-signin-note{margin:10px 0 0;color:#ffffffbf;font-size:.85rem;line-height:1.55}.guest-signin-note{margin:0 0 16px}.guest-account-banner{position:sticky;top:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px max(16px,env(safe-area-inset-right)) 10px max(16px,env(safe-area-inset-left));background:#182339;border-bottom:1px solid rgba(129,236,236,.3);color:#fff}.guest-account-banner strong{display:block;font-size:.85rem}.guest-account-banner span{display:block;margin-top:3px;font-size:.75rem;color:#cbd5e1}.guest-account-banner .btn{flex-shrink:0;font-size:.8rem}@media(max-width:480px){.guest-account-banner{flex-wrap:wrap;gap:8px}.guest-account-banner .btn{width:100%;padding:8px 12px}}.login-card .form-label{color:#ffffffb3}.login-card .form-input{background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#fff;transition:all .2s ease}.login-card .form-input::placeholder{color:#ffffff4d}.login-card .form-input:focus{border-color:var(--primary-light);box-shadow:0 0 0 3px #6c5ce733;background:#ffffff1f}.password-strength{height:3px;border-radius:2px;margin-top:6px;background:#ffffff1a;overflow:hidden;transition:all .3s ease}.password-strength-fill{height:100%;border-radius:2px;transition:width .3s ease,background .3s ease;width:0%}.password-strength-fill.weak{width:33%;background:#ff7675}.password-strength-fill.medium{width:66%;background:#fdcb6e}.password-strength-fill.strong{width:100%;background:#00b894}.toast-container{position:fixed;top:var(--space-lg);right:var(--space-lg);z-index:99999999!important;display:flex;flex-direction:column;gap:var(--space-sm)}.toast{background:#fff;color:#1a1a2e;border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);box-shadow:0 4px 20px #0000004d,0 0 0 1px #00000014;display:flex;align-items:center;gap:var(--space-md);min-width:280px;max-width:400px;animation:toastIn .4s var(--transition-bounce);border-left:4px solid var(--success)}.toast.error{border-left-color:var(--danger)}.toast.warning{border-left-color:var(--accent)}.toast.info{border-left-color:var(--info)}.toast-icon{font-size:1.5rem}.toast-message{font-weight:600;font-size:var(--font-size-sm);color:#1a1a2e}.toast.removing{animation:toastOut .3s ease forwards}@keyframes toastIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toastOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.celebration-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#000000bf;backdrop-filter:blur(10px);opacity:0;pointer-events:none;transition:opacity .3s ease;cursor:pointer}.celebration-overlay.active{opacity:1;pointer-events:all}.celebration-content{text-align:center;color:#fff;animation:celebrationPop .5s var(--transition-bounce);padding:20px}.celebration-icon{font-size:5rem;margin-bottom:var(--space-lg);animation:celebrationBounce .8s ease;display:flex;align-items:center;justify-content:center}.celebration-icon img{width:200px!important;height:200px!important;min-width:200px;min-height:200px;object-fit:contain;border-radius:16px;filter:drop-shadow(0 8px 30px rgba(255,165,0,.5))}.celebration-title{font-size:var(--font-size-3xl);font-weight:800;margin-bottom:var(--space-sm);text-shadow:0 2px 10px rgba(0,0,0,.5)}.celebration-subtitle{font-size:var(--font-size-lg);opacity:.8;margin-bottom:16px}.celebration-dismiss{font-size:.75rem;opacity:.4;margin-top:20px;animation:celebrationDismissPulse 2s ease-in-out infinite}@keyframes celebrationPop{0%{transform:scale(.3)}to{transform:scale(1)}}@keyframes celebrationBounce{0%{transform:scale(.2) translateY(40px);opacity:0}50%{transform:scale(1.15) translateY(-10px);opacity:1}to{transform:scale(1) translateY(0)}}@keyframes celebrationDismissPulse{0%,to{opacity:.3}50%{opacity:.6}}.tabs{display:flex;gap:var(--space-xs);margin-bottom:var(--space-lg)}.tab{padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);font-weight:700;font-size:var(--font-size-sm);color:var(--text-secondary);transition:var(--transition-fast);border:2px solid transparent}.tab:hover{background:#6c5ce70d}.tab.active{background:var(--primary);color:#fff;border-color:var(--primary-dark)}.locked-content{text-align:center;padding:var(--space-2xl)}.locked-icon{font-size:4rem;margin-bottom:var(--space-md);opacity:.5}.locked-title{font-size:var(--font-size-xl);font-weight:700;color:var(--text-secondary)}.locked-desc{color:var(--text-light);margin-top:var(--space-sm)}.locked-progress{max-width:300px;margin:var(--space-lg) auto 0}.countdown-badge{display:inline-flex;align-items:center;gap:var(--space-xs);background:#6c5ce71a;color:var(--primary);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-xl);font-weight:700;font-size:var(--font-size-sm)}.puzzle-container{max-width:1000px;margin:0 auto;padding:var(--space-lg)}.puzzle-layout{display:grid;grid-template-columns:3fr 2fr;gap:var(--space-lg);align-items:start}.puzzle-board-wrapper{position:relative;z-index:10}.puzzle-info{display:flex;flex-direction:column;gap:var(--space-md);min-width:0;overflow:hidden}.puzzle-stars{display:flex;gap:var(--space-xs)}.puzzle-star{font-size:2rem;opacity:.3;transition:var(--transition-normal)}.puzzle-star.earned{opacity:1;animation:starPop .4s var(--transition-bounce)}@keyframes starPop{0%{transform:scale(.3) rotate(-30deg)}to{transform:scale(1) rotate(0)}}.stars-display{display:inline-flex;gap:2px}.stars-display .star{font-size:1rem}.stars-display .star.filled{color:#f39c12}.stars-display .star.empty{color:#dfe6e9}.admin-container{max-width:1200px;margin:0 auto;padding:var(--space-lg)}.admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-lg)}.admin-stat-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--space-lg);text-align:center;box-shadow:var(--shadow-sm)}.admin-stat-value{font-size:var(--font-size-3xl);font-weight:800;color:var(--primary)}.admin-stat-label{font-size:var(--font-size-sm);color:var(--text-secondary)}.admin-table{width:100%;border-collapse:collapse}.admin-table th{text-align:left;padding:var(--space-sm) var(--space-md);font-weight:700;font-size:var(--font-size-sm);color:var(--text-secondary);border-bottom:2px solid var(--border)}.admin-table td{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-light);font-size:var(--font-size-sm)}.admin-table tr:hover td{background:#6c5ce705}.status-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:20px;font-size:var(--font-size-xs);font-weight:700}.status-active{background:#e8fff5;color:var(--success)}.status-pending{background:#fff8e1;color:#f0b429}.status-suspended{background:#ffe8e7;color:var(--danger)}.empty-state{text-align:center;padding:var(--space-2xl);color:var(--text-light)}.empty-state-icon{font-size:3rem;margin-bottom:var(--space-md);opacity:.5}.empty-state-text{font-size:var(--font-size-lg);font-weight:600}@media(max-width:768px)and (min-height:600px){.header-inner{flex-wrap:wrap}.header-stats{order:3;width:100%;justify-content:center;gap:var(--space-xs);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap}.header-stats::-webkit-scrollbar{display:none}.stat-badge{font-size:var(--font-size-xs);padding:2px 8px;flex-shrink:0}.adventure-map{aspect-ratio:4/5;border-radius:var(--radius-lg)}.hotspot-icon{width:48px;height:48px;font-size:1.5rem}.puzzle-layout{grid-template-columns:1fr}.shop-grid{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}.modal-content{border-radius:var(--radius-lg);max-height:85vh}.login-card{padding:var(--space-lg)}.user-info{max-width:80px}.building-label{font-size:.65rem;padding:4px 10px}}@media(max-width:480px){html{font-size:14px}.shop-grid{grid-template-columns:1fr}.header-logo{font-size:var(--font-size-base)}.header-logo .logo-icon{font-size:1.2em}.user-avatar{width:28px;height:28px;font-size:.9rem}.user-info{max-width:60px}.header-btn{padding:2px 8px;font-size:var(--font-size-xs)}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-light)}::selection{background:var(--primary-light);color:#fff}.hidden{display:none!important}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--text-secondary)}.text-small{font-size:var(--font-size-sm)}.text-xs{font-size:var(--font-size-xs)}.font-bold{font-weight:700}.mt-1{margin-top:var(--space-sm)}.mt-2{margin-top:var(--space-md)}.mt-3{margin-top:var(--space-lg)}.mb-1{margin-bottom:var(--space-sm)}.mb-2{margin-bottom:var(--space-md)}.mb-3{margin-bottom:var(--space-lg)}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.gap-1{gap:var(--space-sm)}.gap-2{gap:var(--space-md)}.gap-3{gap:var(--space-lg)}.tower-menu{padding:var(--space-sm) 0}.tower-intro{text-align:center;color:var(--text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--space-lg);line-height:1.6}.tower-grid{display:flex;flex-direction:column;gap:var(--space-md)}.tower-card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);background:var(--bg-secondary);border:2px solid var(--border-light);cursor:pointer;transition:all .25s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden}.tower-card:before{content:"";position:absolute;inset:0;opacity:0;transition:opacity .25s ease;pointer-events:none}.tower-card--woodpecker:before{background:linear-gradient(135deg,#6c9eff14,#6c5ce714)}.tower-card--courses:before{background:linear-gradient(135deg,#fdcb6e14,#f0b42914)}.tower-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--primary-light)}.tower-card:hover:before{opacity:1}.tower-card:active{transform:translateY(0) scale(.98)}.tower-card-icon{font-size:2.2rem;flex-shrink:0;width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:#6c5ce71a}.tower-card--woodpecker .tower-card-icon{background:#6c9eff26}.tower-card--courses .tower-card-icon{background:#fdcb6e26}.tower-card-info{flex:1;min-width:0}.tower-card-title{font-weight:700;font-size:var(--font-size-lg);color:var(--text-primary);margin-bottom:2px}.tower-card-desc{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.4}.tower-card-arrow{font-size:1.5rem;color:var(--primary);font-weight:700;flex-shrink:0;transition:transform .2s ease}.tower-card:hover .tower-card-arrow{transform:translate(4px)}.tower-card-badge{flex-shrink:0;background:linear-gradient(135deg,var(--accent),var(--accent-dark));color:var(--text-primary);padding:4px 12px;border-radius:var(--radius-xl);font-size:var(--font-size-xs);font-weight:700}.tower-card--coming{opacity:.7}.tower-card--coming:hover{opacity:.9;border-color:var(--accent)}.cbc-wrapper{max-width:1000px;margin:0 auto;padding:var(--space-md)}.cbc-session-bar{display:flex;align-items:center;justify-content:space-between;background:var(--bg-card);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:var(--space-md);flex-wrap:wrap;gap:var(--space-sm)}.cbc-mode-badge{color:#fff;padding:4px 14px;border-radius:var(--radius-xl);font-size:var(--font-size-sm);font-weight:700;letter-spacing:.5px}.cbc-session-stats{display:flex;gap:var(--space-md);font-weight:600;font-size:var(--font-size-sm);align-items:center}.cbc-focus-warning{color:#e74c3c;font-weight:700;animation:focusPulse 2s infinite}@keyframes focusPulse{0%,to{opacity:1}50%{opacity:.5}}.cbc-layout{display:grid;grid-template-columns:1fr 300px;gap:var(--space-md);align-items:start}@media(max-width:768px){.cbc-layout{grid-template-columns:1fr}}.cbc-board-area{position:relative;border-radius:4px;overflow:visible;max-width:504px}.cbc-arrow-layer{position:absolute;inset:0;pointer-events:none;z-index:50}.cbc-arrow-anim{animation:arrowGlow 1.5s ease-in-out infinite}@keyframes arrowGlow{0%,to{stroke-opacity:.85}50%{stroke-opacity:.4}}.cbc-board-area{position:relative}#cbc-arrow-layer{position:absolute;inset:0;pointer-events:none;z-index:150}.cbc-wrapper{position:relative;border-radius:16px;overflow:hidden;transition:background .3s ease}.cbc-wrapper.cbc-themed:before{content:"";position:absolute;inset:0;background-image:var(--theme-bg);background-size:cover;background-position:center;opacity:.35;z-index:0;pointer-events:none}.cbc-wrapper.cbc-themed>*{position:relative;z-index:1}.cbc-board-area{position:relative;border:none;border-radius:4px;overflow:visible;box-shadow:0 0 0 4px var(--board-border, #8b6914),0 4px 20px #0000004d}body.cbc-no-scroll{overflow:hidden!important}.cbc-fullscreen-overlay{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;z-index:9990;background:var(--cbc-overlay-bg, #1a1a2e);display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;overflow:hidden;animation:cbc-fs-fadein .3s ease}@keyframes cbc-fs-fadein{0%{opacity:0}to{opacity:1}}.cbc-fs-container{width:100%;height:100%;position:relative;display:flex;flex-direction:column;overflow:hidden}.cbc-fullscreen-overlay .cbc-wrapper{width:100%;height:100%;border-radius:0;display:flex;flex-direction:column;overflow:hidden}.cbc-fullscreen-overlay .cbc-wrapper.cbc-themed:before{opacity:1;z-index:0}.cbc-fullscreen-overlay .cbc-wrapper.cbc-themed>*{z-index:1;position:relative}.cbc-fullscreen-overlay .cbc-session-bar{background:#0009;backdrop-filter:blur(10px);border-radius:0;padding:8px 64px 8px 16px;z-index:200;color:#fff;flex-shrink:0;width:100%;box-sizing:border-box;height:44px;min-height:44px;max-height:44px;flex-wrap:nowrap!important;overflow:hidden;display:flex;align-items:center;justify-content:space-between}.cbc-fullscreen-overlay .cbc-session-stats{display:flex;align-items:center;gap:12px;flex-shrink:0;white-space:nowrap}.cbc-fullscreen-overlay .cbc-session-bar .cbc-session-stats,.cbc-fullscreen-overlay .cbc-session-bar .cbc-session-stats span{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.8);white-space:nowrap}#cbc-timer{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";min-width:54px;display:inline-block;text-align:left;white-space:nowrap}#cbc-solved-count{min-width:40px;display:inline-block;white-space:nowrap}.cbc-fullscreen-overlay .cbc-session-bar .cbc-mode-badge{text-shadow:0 1px 2px rgba(0,0,0,.5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.cbc-fullscreen-overlay .cbc-layout{flex:1;display:flex;align-items:center;justify-content:center;gap:24px;padding:16px;min-height:0;overflow:hidden;box-sizing:border-box}.cbc-fullscreen-overlay .cbc-board-area{width:min(75vh,720px);height:min(75vh,720px);flex-shrink:0;border:none;border-radius:4px;overflow:visible;box-shadow:0 0 0 5px var(--board-border, #8b6914),0 8px 40px #00000080,0 0 60px #0000004d}.cbc-fullscreen-overlay .cbc-info-panel{width:280px;min-width:280px;max-height:100%;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden}.cbc-fullscreen-overlay .cbc-info-panel .card{background:#00000073;backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15);border-radius:16px;color:#fff;display:flex;flex-direction:column;max-height:100%;overflow:hidden}.cbc-fullscreen-overlay .cbc-info-panel .card-header{background:#ffffff1a;border-bottom:1px solid rgba(255,255,255,.1);color:#fff;flex-shrink:0}.cbc-fullscreen-overlay .cbc-info-panel .card-body{overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0}.cbc-fullscreen-overlay .cbc-info-panel .text-muted{color:#fff9!important}.cbc-fullscreen-overlay .cbc-status{color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.8),0 0 8px rgba(0,0,0,.4)}.cbc-fs-close{position:fixed;top:12px;right:16px;z-index:9999;width:44px;height:44px;border-radius:50%;background:#0009;backdrop-filter:blur(8px);border:2px solid rgba(255,255,255,.3);color:#fff;font-size:1.6rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:1}.cbc-fs-close:hover{background:#e74c3ccc;transform:scale(1.1)}@media(max-width:960px),(max-width:1024px)and (orientation:portrait){.cbc-fullscreen-overlay .cbc-layout{flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;padding:8px 12px 12px;overflow:hidden!important}.cbc-fullscreen-overlay .cbc-board-area{width:min(92vw,440px,48vh);height:min(92vw,440px,48vh);flex-shrink:0!important}.cbc-fullscreen-overlay .cbc-session-bar{padding:4px 54px 4px 10px;font-size:.82rem;height:38px;min-height:38px;max-height:38px;flex-wrap:nowrap!important;overflow:hidden;display:flex;align-items:center;justify-content:space-between}.cbc-fullscreen-overlay .cbc-session-stats{gap:8px}.cbc-fullscreen-overlay .cbc-mode-badge{max-width:120px;padding:3px 10px;font-size:.78rem}.cbc-fullscreen-overlay .cbc-info-panel{width:100%;max-width:min(92vw,440px);min-width:0;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.cbc-fullscreen-overlay .cbc-info-panel .card{padding:0;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.cbc-fullscreen-overlay .cbc-info-panel .card-header{padding:4px 10px;font-size:.82rem;flex-shrink:0}.cbc-fullscreen-overlay .cbc-info-panel .card-body{padding:6px 10px;flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.cbc-fullscreen-overlay .cbc-status{font-size:.82rem}.cbc-fullscreen-overlay .cbc-meta{font-size:.8rem}.cbc-fullscreen-overlay .cbc-actions{margin-top:4px;padding-top:4px}}@media(max-width:400px),(max-height:600px){.cbc-fullscreen-overlay .cbc-board-area{width:min(94vw,42vh,360px);height:min(94vw,42vh,360px)}.cbc-fullscreen-overlay .cbc-layout{padding:4px 6px 8px;gap:6px}.cbc-fullscreen-overlay .cbc-session-bar{padding:2px 46px 2px 8px;font-size:.76rem;height:34px;min-height:34px;max-height:34px;flex-wrap:nowrap!important;overflow:hidden;display:flex;align-items:center;justify-content:space-between}.cbc-fullscreen-overlay .cbc-mode-badge{max-width:95px;padding:2px 8px;font-size:.74rem}.cbc-fullscreen-overlay .cbc-info-panel .card-header{padding:3px 8px;font-size:.78rem}.cbc-fullscreen-overlay .cbc-info-panel .card-body{padding:4px 8px}}#cbc-skin-modal{z-index:10001!important}.cbc-theme-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;max-height:60vh;overflow-y:auto;padding:4px}.cbc-theme-option{display:flex;flex-direction:column;gap:8px;padding:8px;border:2px solid transparent;border-radius:12px;cursor:pointer;transition:all .2s ease;background:var(--bg-card);position:relative}.cbc-theme-option:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.cbc-theme-option.active{border-color:var(--success);background:var(--bg-success, rgba(16, 185, 129, .1))}.cbc-theme-preview{width:100%;height:80px;border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center;position:relative}.cbc-theme-mini-board{box-shadow:0 2px 8px #0000004d}.cbc-theme-info{text-align:center}.cbc-theme-check{position:absolute;top:6px;right:6px;font-size:1rem}#cbc-board{width:100%;aspect-ratio:1 / 1;position:relative}#cbc-board .cg-wrap{position:absolute;top:0;left:0;width:100%;height:100%}#cbc-board.cbc-pieces-hidden .cg-wrap piece{opacity:0!important;visibility:hidden!important;transition:none!important}body.cbc-memory-hidden .cg-wrap piece.dragging,body.cbc-memory-hidden .cg-wrap piece.ghost,body.cbc-memory-hidden .cg-wrap piece{opacity:0!important;visibility:hidden!important}.modal-content.has-chessboard,.modal-content.has-chessboard .modal-body,.modal-overlay,.modal-overlay .modal-content{overflow:visible!important}.modal-overlay #cbc-board,.modal-overlay [id$=-cbc-container]{z-index:1001;position:relative}.cbc-highlight-selected{box-shadow:inset 0 0 0 3px var(--primary)!important;background-color:#6c5ce74d!important}.cbc-highlight-move{position:relative}.cbc-highlight-move:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:30%;height:30%;background:#6c5ce780;border-radius:50%;pointer-events:none}.cbc-flash-move{animation:cbcFlashGlow .8s ease-in-out 3;position:relative;z-index:10}.cbc-flash-move:before{content:"";position:absolute;inset:0;background:radial-gradient(circle,rgba(142,68,173,.7) 0%,rgba(142,68,173,.2) 60%,transparent 80%);border-radius:3px;pointer-events:none;animation:cbcFlashGlow .8s ease-in-out 3;z-index:200}@keyframes cbcFlashGlow{0%,to{box-shadow:inset 0 0 0 3px #8e44ad4d}50%{box-shadow:inset 0 0 12px 4px #8e44adcc,0 0 16px #8e44ad80}}.cbc-memory-overlay{position:absolute;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:background .5s ease}.cbc-memory-overlay--show{pointer-events:auto}.cbc-memory-countdown{font-size:1.2rem;font-weight:800;text-align:center;transition:all .3s ease}.cbc-memory-hidden-msg{text-align:center;color:#fff;animation:memoryFadeIn .5s ease}@keyframes memoryFadeIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.cbc-info-panel .card{margin-bottom:var(--space-md)}.cbc-info-panel .card:hover{transform:none}.cbc-status{font-size:1.1rem;font-weight:700;margin-bottom:12px;transition:color .3s ease;text-shadow:0 1px 3px rgba(0,0,0,.3)}.cbc-stars{display:flex;gap:4px;margin-bottom:8px}.cbc-star{font-size:1.5rem;opacity:.25;transition:all .3s var(--transition-bounce);filter:grayscale(1)}.cbc-star.earned{opacity:1;filter:grayscale(0);animation:starPop .5s var(--transition-bounce)}@keyframes starPop{0%{transform:scale(.3) rotate(-30deg)}50%{transform:scale(1.3) rotate(10deg)}to{transform:scale(1) rotate(0)}}.cbc-meta{margin-top:12px}.cbc-actions{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap}.cbc-comment{background:#6c5ce714;border-left:3px solid var(--primary);padding:6px 10px;border-radius:0 8px 8px 0;margin:6px 0;font-size:.85rem;color:var(--text-secondary);line-height:1.4;animation:cbcFadeIn .3s ease;max-height:80px;overflow-y:auto;overscroll-behavior:contain;word-break:break-word;scrollbar-width:thin}@keyframes cbcFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.cbc-sq-highlight{animation:cbcSqPulse 1.5s ease-in-out infinite}@keyframes cbcSqPulse{0%,to{opacity:.5}50%{opacity:.8}}.cbc-skin-list{display:flex;flex-direction:column;gap:8px}.cbc-skin-option{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--radius-md);background:var(--bg-secondary);border:2px solid transparent;cursor:pointer;transition:all .2s ease}.cbc-skin-option:hover{border-color:var(--primary-light);background:#6c5ce70d}.cbc-skin-option.active{border-color:var(--primary);background:#6c5ce71a;box-shadow:0 0 0 2px #6c5ce733}.cbc-variation-info{background:#6c5ce71a;border:1px solid rgba(108,92,231,.2);padding:8px 12px;border-radius:8px;margin-bottom:12px;font-size:.85rem;color:var(--text-primary);text-shadow:0 1px 2px rgba(0,0,0,.2)}.cbc-fullscreen-overlay .cbc-variation-info{background:#00000080;border-color:#fff3;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.8)}.cbc-fullscreen-overlay .cbc-comment{background:#0006;color:#ffffffe6;text-shadow:0 1px 3px rgba(0,0,0,.6);max-height:80px;overflow-y:auto;overscroll-behavior:contain;word-break:break-word;scrollbar-width:thin}.cbc-fullscreen-overlay .cbc-meta,.cbc-fullscreen-overlay .cbc-meta span{color:#ffffffd9!important;text-shadow:0 1px 3px rgba(0,0,0,.5)}.cbc-fullscreen-overlay .cbc-actions .btn{text-shadow:none}.cbc-summary{text-align:center;padding:var(--space-md)}.cbc-summary-reason{font-size:1.1rem;font-weight:600;margin-bottom:var(--space-lg);color:var(--text-secondary)}.cbc-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-md);margin-bottom:var(--space-md)}@media(max-width:480px){.cbc-summary-grid{grid-template-columns:repeat(2,1fr)}}.cbc-summary-item{text-align:center}.cbc-summary-value{font-size:1.8rem;font-weight:800;color:var(--primary)}.cbc-summary-label{font-size:var(--font-size-xs);color:var(--text-secondary);margin-top:4px}.cbc-mode-selector{display:flex;gap:8px;margin-bottom:var(--space-md);flex-wrap:wrap}.cbc-mode-btn{padding:8px 16px;border-radius:var(--radius-md);font-weight:700;font-size:var(--font-size-sm);border:2px solid var(--border);background:var(--bg-card);color:var(--text-primary);cursor:pointer;transition:var(--transition-normal)}.cbc-mode-btn:hover{border-color:var(--primary);background:#6c5ce70d}.cbc-mode-btn.active{border-color:var(--primary);background:var(--primary);color:#fff}.cbc-mode-btn--focus{border-color:#e74c3c}.cbc-mode-btn--focus.active{background:#e74c3c}.cbc-mode-btn--memory{border-color:#8e44ad}.cbc-mode-btn--memory.active{background:#8e44ad}.cbc-mode-btn--opening{border-color:#27ae60}.cbc-mode-btn--opening.active{background:#27ae60}@keyframes cbc-elo-float{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}40%{transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-120%) scale(.8)}}@keyframes reward-popup-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}50%{transform:translate(-50%,-50%) scale(1.1)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes reward-popup-out{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.5)}}.reward-popup{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10001;background:var(--bg-card);border:2px solid var(--primary);border-radius:20px;padding:28px 36px;text-align:center;box-shadow:0 12px 40px #00000040;animation:reward-popup-in .4s ease forwards;min-width:260px}.reward-popup.hiding{animation:reward-popup-out .3s ease forwards}.reward-popup-icon{font-size:3rem;margin-bottom:8px}.reward-popup-title{font-size:1.1rem;font-weight:700;color:var(--text-primary);margin-bottom:12px}.reward-popup-items{display:flex;gap:16px;justify-content:center;margin-bottom:12px}.reward-popup-item{display:flex;flex-direction:column;align-items:center;gap:4px}.reward-popup-value{font-size:1.5rem;font-weight:800;color:var(--success)}.reward-popup-label{font-size:.75rem;color:var(--text-muted)}.tower-climb-container{max-width:1200px;margin:0 auto;padding:24px 16px 60px}.tower-climb-layout{display:grid;grid-template-columns:340px 1fr;gap:24px;align-items:start}@media(max-width:900px){.tower-climb-layout{grid-template-columns:1fr}}.tower-visual{background:var(--bg-card);border:1px solid var(--border);border-radius:20px;padding:20px 16px;position:sticky;top:80px}@media(max-width:900px){.tower-visual{position:static}}.tower-peak{text-align:center;padding:16px 0 12px;position:relative}.tower-peak-icon{font-size:2.5rem;animation:towerPeakGlow 3s ease-in-out infinite}.tower-peak-label{font-size:.75rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:1px;margin-top:4px}@keyframes towerPeakGlow{0%,to{filter:drop-shadow(0 0 8px rgba(255,210,0,.4));transform:scale(1)}50%{filter:drop-shadow(0 0 20px rgba(255,210,0,.8));transform:scale(1.05)}}.tower-base{text-align:center;padding:12px 0 8px;opacity:.6}.tower-base-icon{font-size:1.5rem}.tower-base-label{font-size:.7rem;color:var(--text-muted);margin-top:2px}.tower-floors{display:flex;flex-direction:column;gap:0}.tower-floor-wrapper{display:flex;flex-direction:column;align-items:center}.tower-connector{width:6px;height:20px;background:var(--border);border-radius:3px;transition:background .3s}.tower-connector.completed{background:linear-gradient(180deg,var(--success),#34d399)}.tower-floor{width:100%;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:14px;border:2px solid var(--border);background:var(--bg-secondary);cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.tower-floor:hover:not(.locked){transform:translate(4px);border-color:var(--primary-light);box-shadow:0 4px 16px #6c5ce71f}.tower-floor.completed{border-color:var(--success);background:linear-gradient(135deg,#10b98114,#34d3990a)}.tower-floor.current{border-color:var(--primary);background:linear-gradient(135deg,#6c5ce71a,#a855f70d);box-shadow:0 0 0 4px #6c5ce726,0 4px 20px #6c5ce726;animation:towerFloorPulse 2.5s infinite}@keyframes towerFloorPulse{0%,to{box-shadow:0 0 0 4px #6c5ce726}50%{box-shadow:0 0 0 8px #6c5ce714,0 4px 24px #6c5ce733}}.tower-floor.locked{opacity:.5;filter:grayscale(.5);cursor:not-allowed}.tower-floor.locked:hover{transform:none;box-shadow:none}.tower-floor-number{font-size:.65rem;font-weight:800;color:var(--text-muted);background:var(--bg-main);padding:2px 8px;border-radius:8px;flex-shrink:0;min-width:30px;text-align:center}.tower-floor.current .tower-floor-number{background:var(--primary);color:#fff}.tower-floor.completed .tower-floor-number{background:var(--success);color:#fff}.tower-floor-icon{font-size:1.3rem;flex-shrink:0}.tower-floor-info{flex:1;min-width:0}.tower-floor-name{font-weight:700;font-size:.85rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tower-floor-stars{font-size:.7rem;color:var(--text-muted);margin-top:1px}.tower-floor-progress-text{font-size:.65rem;color:var(--primary);font-weight:600;margin-top:2px}.tower-floor-status{flex-shrink:0}.tower-floor-badge{font-size:.6rem;font-weight:700;padding:3px 8px;border-radius:8px;white-space:nowrap}.tower-floor-badge--done{background:#d1fae5;color:#059669}.tower-floor-badge--current{background:var(--primary-light);color:var(--primary)}.tower-floor-badge--locked{background:#ef44441a;color:#ef4444}.tower-floor-badge--promote{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;animation:tower-promote-pulse 1.5s infinite}@keyframes tower-promote-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05);box-shadow:0 0 12px #f59e0b66}}.tower-floor.promotable{border-color:#f59e0b;background:linear-gradient(135deg,#fffbeb,#fef3c7);box-shadow:0 0 20px #f59e0b4d;animation:tower-floor-glow 2s infinite}@keyframes tower-floor-glow{0%,to{box-shadow:0 0 15px #f59e0b33}50%{box-shadow:0 0 30px #f59e0b66,0 0 60px #f59e0b26}}.tower-floor.promotable .tower-floor-number{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.tower-floor.promotable:hover{transform:translateY(-3px)}.tower-promote-panel{text-align:center;padding:40px 24px;position:relative;overflow:hidden;background:linear-gradient(135deg,#fffbeb,#fef3c7,#fde68a);border-radius:20px;border:2px solid #f59e0b}.tower-promote-glow{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(245,158,11,.15) 0%,transparent 50%);animation:tower-promote-rotate 6s linear infinite}@keyframes tower-promote-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tower-promote-icon{font-size:3.5rem;position:relative;z-index:1;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1))}.tower-promote-title{font-size:1.4rem;font-weight:800;margin-top:12px;position:relative;z-index:1;color:#92400e}.tower-promote-floor{font-size:.85rem;color:#b45309;font-weight:600;position:relative;z-index:1}.tower-promote-desc{font-size:.85rem;color:#92400e;margin:12px 0;position:relative;z-index:1}.tower-promote-req{display:flex;flex-direction:column;gap:8px;margin:20px 0;position:relative;z-index:1}.tower-promote-req-item{padding:8px 16px;border-radius:12px;font-size:.85rem;font-weight:600}.tower-promote-req-ok{background:#10b98126;color:#059669}.tower-promote-req-fail{background:#ef444426;color:#ef4444}.tower-promote-btn{position:relative;z-index:1;padding:14px 36px;font-size:1.1rem;font-weight:800;border:none;border-radius:16px;background:linear-gradient(135deg,#f59e0b,#d97706,#b45309);color:#fff;cursor:pointer;box-shadow:0 6px 24px #f59e0b66;transition:all .3s;letter-spacing:.5px}.tower-promote-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 32px #f59e0b80}.tower-promote-btn:disabled{opacity:.6;cursor:not-allowed}.levelup-ceremony{position:fixed;inset:0;z-index:99999;background:radial-gradient(ellipse at center,#0f172aeb,#000000f7);display:flex;align-items:center;justify-content:center;animation:levelup-fadein .5s ease}@keyframes levelup-fadein{0%{opacity:0}to{opacity:1}}.levelup-ceremony.levelup-fadeout{animation:levelup-fadeout .5s ease forwards}@keyframes levelup-fadeout{0%{opacity:1}to{opacity:0}}.levelup-content{text-align:center;position:relative;z-index:2;animation:levelup-pop .6s cubic-bezier(.175,.885,.32,1.275)}@keyframes levelup-pop{0%{transform:scale(.3);opacity:0}to{transform:scale(1);opacity:1}}.levelup-badge-ring{width:120px;height:120px;border-radius:50%;margin:0 auto 20px;display:flex;align-items:center;justify-content:center;background:conic-gradient(#f59e0b,#ef4444,#8b5cf6,#3b82f6,#10b981,#f59e0b);animation:levelup-ring-spin 3s linear infinite;padding:4px}@keyframes levelup-ring-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.levelup-badge{width:112px;height:112px;border-radius:50%;background:radial-gradient(circle,#1e1b4b,#0f172a);display:flex;align-items:center;justify-content:center;font-size:3.5rem;animation:levelup-badge-float 2s ease-in-out infinite}@keyframes levelup-badge-float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(5deg)}}.levelup-label{font-size:1rem;font-weight:800;color:#fbbf24;letter-spacing:4px;text-transform:uppercase;margin-bottom:8px;text-shadow:0 0 20px rgba(251,191,36,.5)}.levelup-rank{font-size:2rem;font-weight:900;background:linear-gradient(135deg,#fbbf24,#f59e0b,#ef4444,#8b5cf6);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:levelup-gradient 3s ease infinite;margin-bottom:8px}@keyframes levelup-gradient{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.levelup-floor{font-size:.9rem;color:#fff9;margin-bottom:16px}.levelup-message{font-size:.95rem;color:#fffc;margin-bottom:24px;max-width:400px;margin-left:auto;margin-right:auto}.levelup-ok-btn{padding:12px 40px;font-size:1rem;font-weight:700;border:none;border-radius:14px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;cursor:pointer;box-shadow:0 6px 24px #f59e0b66;transition:all .3s}.levelup-ok-btn:hover{transform:translateY(-2px);box-shadow:0 8px 32px #f59e0b99}.levelup-particles{position:absolute;inset:0;overflow:hidden;z-index:1}.levelup-particle{position:absolute;width:8px;height:8px;border-radius:50%;background:#fbbf24;left:var(--x);bottom:-20px;animation:levelup-particle-rise var(--d) ease-out infinite;opacity:0;transform:scale(var(--s))}.levelup-particle:nth-child(odd){background:#f59e0b;width:6px;height:6px}.levelup-particle:nth-child(3n){background:#ef4444;width:10px;height:10px}.levelup-particle:nth-child(5n){background:#8b5cf6}.levelup-particle:nth-child(7n){background:#3b82f6;width:5px;height:5px}@keyframes levelup-particle-rise{0%{transform:translateY(0) scale(var(--s));opacity:0}10%{opacity:1}to{transform:translateY(-100vh) scale(0);opacity:0}}.tower-floor-progressbar{position:absolute;bottom:0;left:0;right:0;height:3px;background:#6c5ce71a}.tower-floor-progressbar-fill{height:100%;background:linear-gradient(90deg,var(--primary),#a78bfa);border-radius:0 0 14px 14px;transition:width .6s ease}.tower-detail-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:20px;padding:24px;min-height:400px}.tower-detail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:var(--text-muted);gap:12px}.tower-detail-empty-icon{font-size:4rem;opacity:.4}.tower-detail-header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.tower-detail-icon{font-size:2.5rem;width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:var(--primary-light);border-radius:16px;flex-shrink:0}.tower-detail-title{font-size:1.4rem;font-weight:700;color:var(--text-primary);margin:0}.tower-detail-desc{font-size:.85rem;color:var(--text-secondary);margin-top:4px}.tower-detail-progress{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:24px}.tower-detail-progress-text{display:flex;justify-content:space-between;font-size:.85rem;color:var(--text-secondary);margin-bottom:10px}.tower-detail-progress-bar{height:10px;background:var(--bg-main);border-radius:5px;overflow:hidden}.tower-detail-progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),#a78bfa);border-radius:5px;transition:width .6s ease}.tower-detail-groups{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media(max-width:768px){.tower-detail-groups{grid-template-columns:1fr}}.tower-group-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:16px;overflow:hidden;transition:box-shadow .2s;border-top:3px solid var(--group-color, var(--primary))}.tower-group-card:hover{box-shadow:0 4px 20px #00000014}.tower-group-header{display:flex;align-items:center;gap:12px;padding:16px}.tower-group-icon{font-size:1.6rem;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--bg-main);border-radius:12px;flex-shrink:0}.tower-group-info{flex:1}.tower-group-name{font-weight:700;font-size:.95rem;color:var(--text-primary)}.tower-group-stat{font-size:.75rem;color:var(--text-muted);margin-top:2px}.tower-group-pct{font-size:1.2rem;font-weight:800}.tower-group-bar{height:4px;background:var(--bg-main);margin:0 16px}.tower-group-bar-fill{height:100%;border-radius:2px;transition:width .6s ease}.tower-group-tasks{padding:8px 16px 16px}.tower-task-item{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid var(--border)}.tower-task-item:last-child{border-bottom:none}.tower-task-check{font-size:1rem;margin-top:2px;flex-shrink:0}.tower-task-content{flex:1;min-width:0}.tower-task-title{font-size:.85rem;font-weight:600;color:var(--text-primary)}.tower-task-item.completed .tower-task-title{text-decoration:line-through;opacity:.6}.tower-task-desc{font-size:.75rem;color:var(--text-muted);margin-top:2px}.tower-task-reward{font-size:.7rem;color:var(--text-secondary);margin-top:3px}.tower-task-action{flex-shrink:0}.tower-task-done-badge{font-size:.7rem;background:#d1fae5;color:#059669;padding:3px 10px;border-radius:12px;font-weight:600;white-space:nowrap}.tower-empty-tasks{text-align:center;color:var(--text-muted);font-size:.8rem;padding:16px}.mountain-container{display:none}.school-container{max-width:800px;margin:0 auto;padding:24px 16px 60px}.school-tabs{display:flex;gap:8px;margin-bottom:20px}.school-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;border:2px solid var(--border);border-radius:14px;background:var(--bg-card);cursor:pointer;font-weight:600;font-size:.95rem;transition:all .2s;color:var(--text-secondary)}.school-tab:hover{border-color:var(--primary)}.school-tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}.school-tab-badge{font-size:.75rem;background:#fff3;padding:2px 8px;border-radius:10px;font-weight:700}.school-tab:not(.active) .school-tab-badge{background:var(--bg-main);color:var(--text-muted)}.school-quests-list{display:flex;flex-direction:column;gap:10px}.school-quest-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--bg-card);border:1px solid var(--border);border-radius:14px;transition:box-shadow .2s}.school-quest-card:hover{box-shadow:0 2px 12px #0000000f}.school-quest-card.completed{opacity:.7}.school-quest-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}.school-quest-info{flex:1;min-width:0}.school-quest-title{font-weight:600;font-size:.9rem;color:var(--text-primary)}.school-quest-reward{font-size:.75rem;color:var(--text-secondary);margin-top:3px}.school-quest-action{flex-shrink:0;display:flex;gap:6px}.quest-attend-badge{display:inline-flex;align-items:center;gap:2px;padding:1px 7px;border-radius:8px;font-size:.68rem;font-weight:700;background:linear-gradient(135deg,#eef2ff,#e0e7ff);color:#6c5ce7;border:1px solid #C7D2FE}.quest-attend-badge.earned{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#059669;border-color:#6ee7b7}.attendance-card{background:linear-gradient(135deg,#667eea11,#764ba211);border:1px solid var(--border);border-radius:16px;padding:16px 18px;margin-bottom:16px}.attendance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.attendance-title{font-weight:700;font-size:.9rem;color:var(--text-primary)}.attendance-pts{font-size:1.5rem;font-weight:800;background:linear-gradient(135deg,#6c5ce7,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.attendance-pts-label{font-size:.7rem;font-weight:600}.attendance-bar-wrap{margin-bottom:14px}.attendance-bar{position:relative;height:12px;background:var(--bg-main);border-radius:6px;overflow:visible;border:1px solid var(--border)}.attendance-fill{height:100%;background:linear-gradient(90deg,#6c5ce7,#a78bfa,#c084fc);border-radius:6px;transition:width .8s cubic-bezier(.34,1.56,.64,1);position:relative;z-index:1}.attendance-marker{position:absolute;top:-4px;transform:translate(-50%);z-index:2;display:flex;flex-direction:column;align-items:center}.attendance-marker-dot{width:20px;height:20px;border-radius:50%;background:var(--bg-card);border:3px solid #d1d5db;transition:all .3s}.attendance-marker-dot.reached{background:#6c5ce7;border-color:#6c5ce7;box-shadow:0 0 8px #6c5ce780}.attendance-marker-label{font-size:.6rem;font-weight:700;color:var(--text-muted);margin-top:2px}.attendance-milestones{display:flex;gap:10px}.attendance-milestone{flex:1;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;background:var(--bg-card);border:1px solid var(--border);transition:all .2s}.attendance-milestone.locked{opacity:.6}.attendance-milestone.claimable{border-color:#6c5ce7;background:linear-gradient(135deg,#eef2ff,#f5f3ff);cursor:pointer;animation:milestoneGlow 2s ease-in-out infinite}.attendance-milestone.claimable:hover{transform:translateY(-2px);box-shadow:0 4px 16px #6c5ce74d}.attendance-milestone.claimed{background:linear-gradient(135deg,#d1fae5,#ecfdf5);border-color:#6ee7b7}@keyframes milestoneGlow{0%,to{box-shadow:0 0 #6c5ce700}50%{box-shadow:0 0 12px #6c5ce740}}.attendance-milestone-icon{font-size:1.4rem;flex-shrink:0}.attendance-milestone-icon.pulse{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.attendance-milestone-info{flex:1;min-width:0}.attendance-milestone-name{font-weight:700;font-size:.82rem;color:var(--text-primary)}.attendance-milestone-reward{font-size:.7rem;color:var(--text-secondary);margin-top:1px}.attendance-claim-btn{padding:5px 14px;border-radius:8px;background:linear-gradient(135deg,#6c5ce7,#a78bfa);color:#fff;font-weight:700;font-size:.78rem;flex-shrink:0}.attendance-remain{font-size:.65rem;color:var(--text-muted);flex-shrink:0;white-space:nowrap}.admin-ms-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;margin-bottom:10px;overflow:hidden;transition:box-shadow .2s}.admin-ms-card:hover{box-shadow:0 2px 12px #0000000f}.admin-ms-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;cursor:pointer;gap:12px;transition:background .15s}.admin-ms-header:hover{background:var(--bg-main)}.admin-ms-header-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.admin-ms-icon{font-size:1.6rem;flex-shrink:0}.admin-ms-title{font-weight:700;font-size:.95rem;color:var(--text-primary)}.admin-ms-meta{font-size:.75rem;color:var(--text-muted);margin-top:2px}.admin-ms-header-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.admin-ms-chevron{font-size:.8rem;color:var(--text-muted);transition:transform .2s;margin-left:6px}.admin-ms-body{border-top:1px solid var(--border)}.admin-ms-groups{padding:16px;display:flex;flex-direction:column;gap:16px}.admin-group-section{border:1px solid var(--border);border-radius:10px;overflow:hidden}.admin-group-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--bg-main);font-weight:600;font-size:.85rem}.admin-group-count{font-size:.75rem;font-weight:500;color:var(--text-muted)}.admin-group-tasks{padding:4px 0}.admin-task-row{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;border-bottom:1px solid var(--border)}.admin-task-row:last-child{border-bottom:none}.admin-task-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.admin-task-title{font-size:.85rem;font-weight:600;color:var(--text-primary)}.admin-task-desc{font-size:.75rem;color:var(--text-muted)}.admin-task-meta{font-size:.7rem;color:var(--text-secondary)}.admin-task-actions{flex-shrink:0;margin-left:8px}.admin-add-task-btn{width:100%;border-radius:0 0 10px 10px;border-top:1px dashed var(--border);padding:8px;font-size:.8rem}.stats-dashboard{display:flex;flex-direction:column;gap:var(--space-md)}.stats-summary-row{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-sm)}.stats-card{background:linear-gradient(135deg,var(--bg-card),var(--bg-main));border-radius:var(--radius-lg);padding:var(--space-md);text-align:center;border:1px solid var(--border-light);position:relative;overflow:hidden}.stats-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px}.stats-card-elo:before{background:var(--primary)}.stats-card-solved:before{background:var(--success)}.stats-card-streak:before{background:#f39c12}.stats-card-stars:before{background:var(--accent-dark)}.stats-card-icon{font-size:1.8rem;margin-bottom:4px}.stats-card-value{font-size:1.8rem;font-weight:800;color:var(--text-primary);line-height:1.1}.stats-card-label{font-size:.8rem;font-weight:600;color:var(--text-secondary);margin-top:2px}.stats-card-sub{font-size:.7rem;color:var(--text-light);margin-top:4px}.stats-charts-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.stats-chart-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--space-md);border:1px solid var(--border-light)}.stats-chart-title{font-size:.9rem;font-weight:700;margin-bottom:var(--space-sm);color:var(--text-primary)}.stats-empty{text-align:center;padding:var(--space-lg);color:var(--text-light);font-size:.85rem}.calendar-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:4px}.calendar-day{aspect-ratio:1;border-radius:var(--radius-sm);background:var(--bg-main);display:flex;align-items:center;justify-content:center;border:1px solid var(--border-light);position:relative}.calendar-day.active{background:var(--success);border-color:var(--success);color:#fff}.calendar-day.today{border:2px solid var(--primary)}.calendar-day-num{font-size:.65rem;font-weight:600}@media(max-width:768px)and (min-height:600px){.header-inner{flex-wrap:wrap;gap:8px;padding:8px 12px}.header-stats{order:3;width:100%;justify-content:center;gap:12px;font-size:.75rem}.header-logo{font-size:1rem}.header-actions{gap:4px}.header-btn{padding:4px 8px;font-size:.75rem}.modal-content{width:95vw!important;max-width:95vw!important;max-height:85vh;margin:2vh auto}.modal-content.modal-lg,.modal-content.modal-xl{width:95vw!important;max-width:95vw!important}.modal-body{padding:12px;max-height:70vh}.stats-summary-row{grid-template-columns:repeat(2,1fr)}.stats-charts-row{grid-template-columns:1fr}.stats-card-value,.stats-card-icon{font-size:1.4rem}.admin-tab-btn{padding:6px 10px;font-size:.75rem}.admin-tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}.admin-tabs::-webkit-scrollbar{display:none}.milestone-timeline{padding-left:20px}.milestone-node{padding:12px}.village-map-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.board-container,#cbc-board-container{max-width:90vw;margin:0 auto}.tower-modes{grid-template-columns:1fr}.leaderboard-row{padding:8px 10px;font-size:.85rem}.puzzle-layout{flex-direction:column}.puzzle-sidebar{width:100%}.calendar-grid{grid-template-columns:repeat(7,1fr)}}@media(max-width:480px){.header-inner{padding:6px 8px}.header-user,.header-stats .stat-item span:first-child{display:none}.header-btn{padding:4px 6px;font-size:.7rem;min-width:32px}.modal-content{width:100vw!important;max-width:100vw!important;max-height:88vh;margin:0;border-radius:0;animation:none}.modal-header{padding:10px 12px}.modal-title{font-size:1rem}.modal-body{padding:8px;max-height:calc(88vh - 50px)}.stats-summary-row{grid-template-columns:repeat(2,1fr);gap:6px}.stats-card{padding:10px}.stats-card-value{font-size:1.2rem}.stats-card-label{font-size:.7rem}.board-container,#cbc-board-container{max-width:95vw}.admin-tab-btn{padding:5px 8px;font-size:.7rem;white-space:nowrap}#admin-tab-content [style*="grid-template-columns: 1fr 1fr"]{grid-template-columns:1fr!important}body{font-size:14px}.calendar-grid{grid-template-columns:repeat(6,1fr);gap:3px}.calendar-day-num{font-size:.55rem}.tabs{overflow-x:auto;flex-wrap:nowrap}.tab{white-space:nowrap;font-size:.8rem;padding:6px 10px}}.building-label--pink{background:#78143ce0;border-color:#ff64964d}.building-label--blue{background:#143c78e0;border-color:#3498db66}@keyframes portalFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-6px) scale(1.03)}}.building-landmark{pointer-events:none}.gacha-container{text-align:center}.gacha-hero{padding:20px 0}.gacha-lotus{font-size:4rem;animation:lotusFloat 3s ease-in-out infinite}@keyframes lotusFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-12px) scale(1.05)}}.gacha-subtitle{font-size:.95rem;color:var(--text-secondary);margin-top:8px}.gacha-balance{margin:16px 0;display:flex;justify-content:center}.gacha-warning{background:#ffa5001a;border:1px solid rgba(255,165,0,.3);border-radius:var(--radius-md);padding:12px;margin:12px 0;color:#e67e22;font-weight:600}.gacha-actions{margin:20px 0}.gacha-btn{font-size:1.1rem!important;padding:14px 36px!important;border-radius:var(--radius-xl)!important}.gacha-animation{padding:40px 0}.gacha-spin-lotus{font-size:4rem;animation:lotusRevealSpin 1.5s cubic-bezier(.4,0,.2,1) infinite}@keyframes lotusRevealSpin{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.3)}to{transform:rotate(360deg) scale(1)}}.gacha-reveal{padding:30px;border-radius:var(--radius-lg);border:2px solid var(--border);animation:revealPop .5s cubic-bezier(.34,1.56,.64,1)}.gacha-reveal--common{border-color:#9e9e9e;background:#9e9e9e0d}.gacha-reveal--rare{border-color:#2196f3;background:#2196f314}.gacha-reveal--epic{border-color:#9c27b0;background:#9c27b01a;box-shadow:0 0 30px #9c27b033}.gacha-reveal--legendary{border-color:#ff9800;background:#ff98001f;box-shadow:0 0 40px #ff98004d}@keyframes revealPop{0%{transform:scale(.3);opacity:0}to{transform:scale(1);opacity:1}}.gacha-pool-list{max-height:300px;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.gacha-pool-item{display:flex;align-items:center;padding:8px 12px;background:var(--bg-main);border-radius:var(--radius-sm);gap:10px;text-align:left}.gacha-pool-icon{font-size:1.3rem;flex-shrink:0}.gacha-pool-info{flex:1;min-width:0}.gacha-pool-name{font-weight:600;font-size:.85rem}.gacha-pool-stats{font-size:.75rem;color:var(--text-secondary)}.gacha-pool-rarity{font-size:.7rem;font-weight:600;flex-shrink:0}.gacha-result{margin:16px 0}.gacha-rates{font-size:.85rem;color:var(--text-secondary)}.dragon-den{text-align:center}.dragon-display{padding:20px;background:linear-gradient(135deg,#ff450014,#ffa50014);border-radius:var(--radius-lg);margin-bottom:16px}.dragon-avatar{font-size:5rem;animation:dragonHover 2.5s ease-in-out infinite}@keyframes dragonHover{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.dragon-name-level{margin:8px 0}.dragon-name{font-size:1.4rem;font-weight:800}.dragon-level{font-size:1rem;color:var(--text-secondary);font-weight:600}.dragon-exp-bar{width:100%;max-width:300px;height:20px;background:var(--bg-main);border-radius:10px;margin:10px auto 0;position:relative;overflow:hidden;border:1px solid var(--border)}.dragon-exp-fill{height:100%;background:linear-gradient(90deg,#00b894,#55efc4);border-radius:10px;transition:width .5s ease}.dragon-exp-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:var(--text-primary)}.dragon-stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:16px}.dragon-stat{background:var(--bg-main);border-radius:var(--radius-sm);padding:10px 6px;text-align:center}.dragon-stat-label{display:block;font-size:.75rem;color:var(--text-secondary);font-weight:600}.dragon-stat-value{display:block;font-size:1.2rem;font-weight:800;color:var(--text-primary)}.dragon-stat-bonus{display:block;font-size:.7rem;color:var(--success);font-weight:600}.equip-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:16px}.equip-slot{background:var(--bg-main);border:2px dashed var(--border);border-radius:var(--radius-md);padding:10px 4px;text-align:center;transition:var(--transition-normal);min-height:80px;display:flex;flex-direction:column;align-items:center;justify-content:center}.equip-slot--filled{border-style:solid;background:var(--bg-card);box-shadow:var(--shadow-sm)}.equip-slot-icon{font-size:1.5rem}.equip-slot-label{font-size:.65rem;font-weight:600;margin-top:4px;color:var(--text-secondary)}.equip-slot-rarity{font-size:.6rem;font-weight:700}.equip-card{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-card);border-radius:var(--radius-md);margin-bottom:8px;box-shadow:var(--shadow-sm);text-align:left}.equip-card-icon{font-size:1.8rem;flex-shrink:0}.equip-card-info{flex:1;min-width:0}.equip-card-name{font-weight:700;font-size:.9rem}.equip-card-stats{font-size:.8rem;color:var(--text-secondary)}.equip-card-rarity{font-size:.75rem;font-weight:600}.daily-reward-banner{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:linear-gradient(135deg,#fdcb6e33,#ffa50026);border:1px solid rgba(255,165,0,.3);border-radius:var(--radius-md);margin-bottom:12px;font-weight:700;animation:bannerGlow 2s ease-in-out infinite}@keyframes bannerGlow{0%,to{box-shadow:0 0 5px #ffa5001a}50%{box-shadow:0 0 15px #ffa5004d}}.daily-reward-banner--claimed{background:#00b8941a;border-color:#00b8944d;color:var(--success);justify-content:center;animation:none}@media(max-width:600px){.dragon-stats-grid,.equip-grid{grid-template-columns:repeat(3,1fr)}}.reward-tiers-box{background:linear-gradient(135deg,#6c5ce714,#00cec914);border:1px solid rgba(108,92,231,.2);border-radius:var(--radius-md);padding:12px 16px;margin-bottom:12px;text-align:center}.reward-tiers-title{font-weight:700;font-size:.9rem;margin-bottom:8px;color:var(--primary)}.reward-tiers-table{width:100%;font-size:.85rem;border-collapse:collapse}.reward-tiers-table td{padding:4px 12px;border-bottom:1px solid var(--border-light)}.reward-tiers-table tr:last-child td{border-bottom:none}.reward-tiers-table td:first-child{font-weight:700;text-align:left}.reward-tiers-table td:nth-child(2),.reward-tiers-table td:nth-child(3){text-align:center;font-weight:600}.shop-limit-badge{display:inline-block;font-size:.65rem;background:#ffa50026;color:#e67e22;padding:1px 6px;border-radius:8px;font-weight:600;margin-left:4px;vertical-align:middle}@keyframes cloudDrift{0%{left:-10%;opacity:0}10%{opacity:.25}90%{opacity:.25}to{left:110%;opacity:0}}@keyframes smokeRise{0%{opacity:.3;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-40px) scale(2)}}@keyframes bounce{0%,to{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-10px)}}@keyframes pulse{0%,to{box-shadow:0 0 #6c5ce766}50%{box-shadow:0 0 0 12px #6c5ce700}}.progress-trail{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:8px 14px;margin-bottom:8px;transition:all .3s}.progress-trail:hover{background:#ffffff12;border-color:#6c5ce74d}.progress-trail-label{display:flex;justify-content:space-between;font-size:.75rem;font-weight:600;color:#ffffffb3;margin-bottom:4px}.progress-trail-bar{height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden;position:relative}.progress-trail-fill{height:100%;background:linear-gradient(90deg,#6c5ce7,#a855f7,#ffd200);border-radius:3px;transition:width 1.5s cubic-bezier(.4,0,.2,1);position:relative}.progress-trail-fill:after{content:"";position:absolute;right:0;top:-2px;width:10px;height:10px;background:#ffd200;border-radius:50%;box-shadow:0 0 8px #ffd20099;animation:trailGlow 1.5s ease-in-out infinite}@keyframes trailGlow{0%,to{box-shadow:0 0 4px #ffd20066}50%{box-shadow:0 0 12px #ffd200cc}}@keyframes dragonEvolve{0%{transform:scale(.5) rotate(-10deg);opacity:0}50%{transform:scale(1.3) rotate(5deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}@keyframes evolveParticle{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(var(--dx),var(--dy)) scale(0);opacity:0}}@keyframes moodBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes dragonPet{0%{transform:scale(1)}30%{transform:scale(1.15) rotate(3deg)}60%{transform:scale(.95) rotate(-2deg)}to{transform:scale(1) rotate(0)}}@keyframes heartFloat{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-40px) scale(1.5)}}@keyframes badgeShine{0%,to{filter:drop-shadow(0 0 0 transparent)}50%{filter:drop-shadow(0 0 8px rgba(255,215,0,.6))}}@keyframes coinBump{0%{transform:scale(1)}40%{transform:scale(1.3);color:#ffd200}to{transform:scale(1)}}.shop-card{transition:all .3s cubic-bezier(.34,1.56,.64,1)!important}.shop-card:hover{transform:translateY(-4px) scale(1.02)!important;box-shadow:0 8px 30px #6c5ce74d!important}.shop-card:hover .shop-card-icon{animation:shopItemBounce .5s ease-out}@keyframes shopItemBounce{0%{transform:scale(1) rotate(0)}30%{transform:scale(1.3) rotate(-10deg)}60%{transform:scale(1.1) rotate(5deg)}to{transform:scale(1) rotate(0)}}.touch-ripple{position:absolute;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);animation:rippleExpand .6s ease-out forwards;pointer-events:none;z-index:100}@keyframes rippleExpand{0%{width:0;height:0;opacity:.5}to{width:150px;height:150px;opacity:0}}@media(max-width:768px){.building{width:clamp(60px,10vw,130px)!important;height:clamp(60px,10vw,130px)!important}}.music-controls{position:fixed;bottom:80px;right:20px;z-index:100;display:flex;flex-direction:column;gap:8px}.music-btn{width:40px;height:40px;border-radius:50%;background:#00000080;backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15);color:#fff;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.music-btn:hover{background:#6c5ce799;transform:scale(1.1)}.music-btn.active{background:#6c5ce780;border-color:#a855f780}.user-avatar{cursor:pointer;transition:all .3s}.user-avatar:hover{transform:scale(1.15);box-shadow:0 0 12px #ffd70066}.header-btn-badge{background:linear-gradient(135deg,#ffd70033,#ffa50033);border:1px solid rgba(255,215,0,.3)}@media(max-width:1100px){.header-logo{font-size:1.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex-shrink:1}.header-logo .logo-icon{font-size:1.1em}.stat-badge{font-size:.75rem;padding:2px 8px}.header-btn{padding:4px 8px;font-size:.8rem}.user-info{max-width:100px}.user-avatar{width:30px;height:30px}}@media(orientation:landscape)and (max-height:600px){:root{--header-h: 36px}.app-header{padding:2px var(--space-sm);min-height:36px}.header-inner{flex-wrap:nowrap;gap:var(--space-sm)}.header-logo{font-size:.85rem;white-space:nowrap}.header-logo .logo-icon{font-size:1em}.header-stats{order:unset;width:auto;gap:4px;flex-shrink:1;overflow-x:auto;scrollbar-width:none}.header-stats::-webkit-scrollbar{display:none}.stat-badge{font-size:.65rem;padding:1px 6px;gap:2px}.stat-badge .stat-icon{font-size:.85em}.header-user{gap:4px}.user-info{display:none}.user-avatar{width:26px;height:26px;font-size:.8rem}.header-actions{gap:3px}.header-btn{padding:2px 5px;font-size:.65rem;min-width:28px}.village-map{height:calc(100vh - 36px)}}@media(max-width:480px){:root{--header-h: 36px}.app-header{padding:2px var(--space-sm);min-height:36px}.header-inner{flex-wrap:nowrap;gap:6px}.header-logo{font-size:.85rem;white-space:nowrap}.header-logo .logo-icon{font-size:1em}.header-stats,.header-user{display:none}.header-actions{gap:3px;flex-shrink:0}.header-btn{padding:3px 6px;font-size:.75rem;min-width:28px}}.sidebar-toggle{display:none;background:#ffffff26;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:1.1rem;width:32px;height:32px;border-radius:8px;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .2s}.sidebar-toggle:hover{background:#ffffff4d}@media(max-width:768px){.sidebar-toggle{display:flex}}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0009;z-index:1199;opacity:0;transition:opacity .3s ease}.sidebar-overlay.sidebar-open{display:block;opacity:1}.sidebar-drawer{position:fixed;top:0;left:0;width:280px;max-width:85vw;height:100vh;background:linear-gradient(180deg,#2d1b69,#1a1145,#0f0b2e);z-index:1200;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:4px 0 30px #00000080;overflow-y:auto}.sidebar-drawer.sidebar-open{transform:translate(0)}.sidebar-header{padding:24px 20px 20px;background:linear-gradient(135deg,#6c5ce74d,#a29bfe26);border-bottom:1px solid rgba(255,255,255,.1);position:relative;text-align:center}.sidebar-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-dark));display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin:0 auto 10px;border:3px solid rgba(255,255,255,.3);cursor:pointer;transition:transform .2s}.sidebar-avatar:hover{transform:scale(1.1)}.sidebar-user-name{color:#fff;font-weight:700;font-size:1rem}.sidebar-user-rank{color:#fff9;font-size:.75rem;margin-top:2px}.sidebar-close{position:absolute;top:12px;right:12px;background:#ffffff1a;border:none;color:#fff9;width:28px;height:28px;border-radius:50%;font-size:.9rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.sidebar-close:hover{background:#fff3;color:#fff}.sidebar-stats{padding:16px 20px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.sidebar-stat{background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px 10px;text-align:center}.sidebar-stat-icon{display:block;font-size:1.3rem;margin-bottom:4px}.sidebar-stat-label{display:block;color:#ffffff80;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.sidebar-stat-value{display:block;color:#fff;font-size:1.1rem;font-weight:800;margin-top:2px}.sidebar-actions{padding:12px 20px;flex:1;display:flex;flex-direction:column;gap:6px}.sidebar-action-btn{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:10px;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit}.sidebar-action-btn:hover{background:#ffffff1f}.sidebar-action-btn--danger{color:#ff7675;margin-top:auto}.btn{position:relative;overflow:hidden}.ripple,.btn .ripple,.task-action-btn .ripple{position:absolute!important;border-radius:50%!important;background:#fff6!important;transform:scale(0)!important;animation:rippleAnim .6s ease-out!important;pointer-events:none!important}@keyframes rippleAnim{to{transform:scale(4);opacity:0}}.badge-rarity{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:20px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.badge-rarity--common{background:#95a5a626;color:#95a5a6;border:1px solid rgba(149,165,166,.3)}.badge-rarity--rare{background:#3498db1f;color:#3498db;border:1px solid rgba(52,152,219,.3)}.badge-rarity--epic{background:#9b59b61f;color:#9b59b6;border:1px solid rgba(155,89,182,.3);box-shadow:0 0 8px #9b59b633}.badge-rarity--legendary{background:#f39c121f;color:#f39c12;border:1px solid rgba(243,156,18,.3);box-shadow:0 0 12px #f39c1240;animation:legendaryPulse 2s ease-in-out infinite}.badge-rarity--mythic{background:linear-gradient(135deg,#e74c3c26,#9b59b626);color:#e74c3c;border:1px solid rgba(231,76,60,.3);box-shadow:0 0 16px #e74c3c4d;animation:mythicGlow 1.5s ease-in-out infinite alternate}@keyframes legendaryPulse{0%,to{box-shadow:0 0 8px #f39c1233}50%{box-shadow:0 0 16px #f39c1280}}@keyframes mythicGlow{0%{box-shadow:0 0 10px #e74c3c4d}to{box-shadow:0 0 20px #9b59b680}}.stat-bar{display:flex;align-items:center;gap:8px;margin-bottom:6px}.stat-bar-label{font-size:.75rem;font-weight:700;min-width:36px;color:var(--text-secondary)}.stat-bar-track{flex:1;height:8px;background:var(--border-light);border-radius:4px;overflow:hidden}.stat-bar-fill{height:100%;border-radius:4px;transition:width .5s ease}.stat-bar-fill--hp{background:linear-gradient(90deg,#00b894,#55efc4)}.stat-bar-fill--att{background:linear-gradient(90deg,#e74c3c,#ff7675)}.stat-bar-fill--def{background:linear-gradient(90deg,#0984e3,#74b9ff)}.stat-bar-fill--spd{background:linear-gradient(90deg,#fdcb6e,#f0b429)}.stat-bar-value{font-size:.7rem;font-weight:700;min-width:28px;text-align:right}.card-premium{background:var(--bg-card);border-radius:var(--radius-lg);overflow:hidden;transition:all .3s ease;position:relative}.card-premium:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:2px;background:linear-gradient(135deg,transparent 40%,rgba(108,92,231,.3));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none}.card-premium:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.card-premium--rare:before{background:linear-gradient(135deg,transparent 40%,rgba(52,152,219,.5))}.card-premium--epic:before{background:linear-gradient(135deg,transparent 30%,rgba(155,89,182,.5))}.card-premium--legendary:before{background:linear-gradient(135deg,#f39c1233,#f39c1299)}.card-premium--mythic:before{background:linear-gradient(135deg,#e74c3c4d,#9b59b699)}.building--locked{opacity:.45;filter:grayscale(.7) brightness(.8);transition:opacity .4s ease,filter .4s ease}.building--locked .building-particles{display:none}.building--locked:hover{opacity:.7;filter:grayscale(.4) brightness(.9)}.progress-ring{position:relative;display:inline-flex;align-items:center;justify-content:center}.progress-ring svg{transform:rotate(-90deg)}.progress-ring-circle{fill:none;stroke-width:4;stroke-linecap:round;transition:stroke-dashoffset .5s ease}.progress-ring-bg{stroke:var(--border-light)}.progress-ring-fg{stroke:var(--primary)}.progress-ring-text{position:absolute;font-size:.65rem;font-weight:700;color:var(--text-primary)}.toast-progress{position:absolute;bottom:0;left:0;height:3px;background:currentColor;opacity:.3;border-radius:0 0 var(--radius-md) var(--radius-md);animation:toastCountdown var(--toast-duration, 3s) linear forwards}@keyframes toastCountdown{0%{width:100%}to{width:0%}}@media(max-width:480px){.login-card{padding:var(--space-lg);border-radius:var(--radius-lg)}.splash-title{font-size:1.6rem}.header-stats{gap:var(--space-sm)}.stat-badge{padding:2px 8px;font-size:.7rem}.toast-container{left:var(--space-md);right:var(--space-md);top:var(--space-md)}.toast{min-width:auto;max-width:none}}.confirm-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10001;animation:fadeIn .2s ease}.confirm-card{background:var(--bg-card);border-radius:var(--radius-xl);padding:var(--space-xl);max-width:360px;width:90%;text-align:center;box-shadow:var(--shadow-lg);animation:confirmBounce .3s var(--transition-bounce)}@keyframes confirmBounce{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.confirm-icon{font-size:3rem;margin-bottom:var(--space-md)}.confirm-title{font-size:var(--font-size-lg);font-weight:800;margin-bottom:var(--space-sm)}.confirm-text{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--space-lg)}.confirm-actions{display:flex;gap:var(--space-md);justify-content:center}.admin-drag-handle{cursor:grab;color:var(--text-light);font-size:1.1rem;padding:4px 6px;border-radius:4px;transition:all .15s;flex-shrink:0;user-select:none}.admin-drag-handle:hover{color:var(--primary);background:#6c5ce71a}.admin-task-row[draggable=true]{transition:opacity .2s,box-shadow .2s}.admin-task-row.admin-task-dragging{opacity:.4;box-shadow:none}.admin-task-row.admin-drag-above{border-top:3px solid var(--primary)!important}.admin-task-row.admin-drag-below{border-bottom:3px solid var(--primary)!important}.activity-ticker{display:none;align-items:center;justify-content:center;position:sticky;top:0;left:0;right:0;z-index:50;background:linear-gradient(135deg,#0f0b2eeb,#2d1b69e0);border-bottom:1px solid rgba(108,92,231,.3);overflow:hidden;height:28px;backdrop-filter:blur(8px);box-shadow:0 2px 12px #0000004d;padding:0 16px}.ticker-content{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.72rem;color:#ffffffd9;text-align:center;transition:opacity .4s ease,transform .4s ease;max-width:100%}.ticker-item{display:inline}.ticker-time{color:#fff6;font-size:.62rem;margin-left:4px}@media(max-width:600px){.activity-ticker{height:24px}.ticker-content{font-size:.65rem}}.os-study-layout{display:grid;grid-template-columns:minmax(260px,1fr) min(calc(100vh - 220px),55vw) minmax(280px,1.5fr);gap:16px;align-items:start;width:100%;max-width:100%}@media(max-width:900px){.os-study-layout{grid-template-columns:1fr;gap:10px}.os-center-panel{order:1}.os-right-panel{order:2}.os-left-panel{order:3;display:none}.os-left-panel.os-left-panel--open{display:block}.os-mobile-toggle{display:flex!important}.os-moves-display{display:none}}.os-left-panel{background:linear-gradient(135deg,#f5f0e8,#ede6d6);border-radius:16px;border:1px solid rgba(180,160,120,.3);overflow:hidden;box-shadow:0 2px 12px #00000014;display:flex;flex-direction:column;max-height:calc(100vh - 120px)}.os-tab-bar{display:flex;border-bottom:2px solid rgba(0,0,0,.08);background:#ffffff80}.os-tab{flex:1;padding:10px 8px;background:none;border:none;color:#3c322880;font-weight:700;font-size:.8rem;cursor:pointer;transition:all .2s;position:relative;font-family:inherit}.os-tab.active{color:#2c3e50;background:#fff9}.os-tab.active:after{content:"";position:absolute;bottom:0;left:20%;right:20%;height:3px;background:#27ae60;border-radius:2px}.os-tab-badge{display:inline-block;min-width:18px;padding:0 5px;height:18px;line-height:18px;border-radius:9px;background:#27ae6040;color:#27ae60;font-size:.65rem;font-weight:800;text-align:center;margin-left:4px}.os-badge-review{background:#e74c3c33;color:#e74c3c}.os-var-list{flex:1;overflow-y:auto;padding:4px 0;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.15) transparent}.os-var-item{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;transition:background .15s;font-size:.82rem;border-left:3px solid transparent}.os-var-item:hover{background:#0000000d}.os-var-item.active{background:#27ae601f;border-left-color:#27ae60}.os-var-icon{font-size:.9rem;flex-shrink:0}.os-var-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#2c3e50;font-weight:600;font-size:.85rem}.os-var-rep{font-size:.68rem;color:#7f8c8d;background:#0000000f;padding:1px 6px;border-radius:8px;font-weight:700;flex-shrink:0}.os-center-panel{position:relative;margin:0 auto;width:100%}.os-study-status{margin-bottom:6px}.os-arrow-layer{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10}.os-board-controls{display:flex;flex-direction:column;gap:8px;justify-content:center;align-items:center;margin-top:8px;padding-bottom:4px}.os-mobile-toggle{display:none;align-items:center;justify-content:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#f5f0e8,#ede6d6);border:1px solid rgba(180,160,120,.3);border-radius:12px;color:#2c3e50;font-weight:700;font-size:.82rem;cursor:pointer;font-family:inherit;transition:all .2s;width:100%}.os-right-panel{background:linear-gradient(135deg,#faf7f0,#f0ebe0);border-radius:16px;padding:16px;border:1px solid rgba(180,160,120,.3);box-shadow:0 2px 12px #00000014;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.15) transparent;min-width:0;word-wrap:break-word;overflow-wrap:break-word;max-height:calc(100vh - 120px)}.os-mobile-toggle:hover{background:linear-gradient(135deg,#ede6d6,#e5dcc8);border-color:#b4a07880}.os-right-panel{background:linear-gradient(135deg,#faf7f0,#f0ebe0);border-radius:16px;padding:16px;border:1px solid rgba(180,160,120,.3);box-shadow:0 2px 12px #00000014;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.15) transparent;min-width:0;word-wrap:break-word;overflow-wrap:break-word}.os-moves-display{margin-bottom:12px;padding:10px;background:#ffffffb3;border-radius:10px;max-height:200px;overflow-y:auto;border:1px solid rgba(0,0,0,.06)}.os-comment{font-size:.95rem;line-height:1.7;color:#2c3e50;word-wrap:break-word;overflow-wrap:break-word;min-width:0}@media(max-width:600px){div[style*="grid-template-columns:1fr 1fr 1fr"]{grid-template-columns:1fr!important}}body.hide-chat #chat-float-btn{display:none!important}.os-read-moves{display:block;line-height:2.2;font-size:.95rem;word-wrap:break-word;overflow-wrap:break-word}.os-read-movenum{color:#7f8c8d;font-weight:700;font-size:.82rem;margin-right:1px;user-select:none}.os-read-move{display:inline;padding:2px 5px;border-radius:5px;font-weight:600;color:#2c3e50;cursor:pointer;transition:all .15s;user-select:none}.os-read-move:hover{background:#27ae6026;color:#27ae60}.os-read-move--active{background:#27ae6040!important;color:#27ae60!important;box-shadow:0 0 8px #27ae6033;border-radius:5px}.os-read-move--side{color:#2980b9;font-weight:500;font-size:.88rem}.os-read-move--side:hover{background:#2980b926;color:#2471a3}.os-read-move--side-active{background:#2980b940!important;color:#2471a3!important;box-shadow:0 0 6px #2980b933}.os-read-move--null{opacity:.45;font-style:italic;color:#95a5a6;font-size:.82rem}.os-read-inline-comment{display:inline;color:#5a4e3c;font-style:italic;font-size:.88rem;font-weight:400;margin:0 2px;opacity:.85}.os-read-comment{padding:10px 14px;background:#00000008;border-radius:12px;font-size:.92rem;line-height:1.7;margin-bottom:10px;color:#34495e}.os-read-intro{border-left:3px solid #3498db;background:#3498db0f}.os-read-sideline{display:inline;color:#2980b9;font-size:.88rem;margin:0 2px}.os-read-sideline--nested{color:#7f8c8d;font-size:.82rem}.os-read-sideline-title{font-weight:700;font-size:.72rem;color:#27ae60;margin-right:3px}.mobile-perf-mode .building-particles{display:none!important}.mobile-perf-mode .building,.mobile-perf-mode .activity-ticker,.mobile-perf-mode .player-character,.mobile-perf-mode .area-trigger{animation:none!important}@media(prefers-reduced-motion:reduce){.building-particles{display:none!important}.building,.player-character,.activity-ticker{animation:none!important;transition:none!important}#ambient-layer{display:none!important}}.splash-event-banner{display:inline-flex;align-items:center;gap:12px;background:linear-gradient(135deg,#ff6b6b33,#c822ff33);border:1px solid rgba(255,255,255,.3);padding:8px 24px;border-radius:50px;margin-bottom:24px;box-shadow:0 4px 15px #ff6b6b66,inset 0 0 10px #fff3;backdrop-filter:blur(10px);animation:splashEventFloat 2s ease-in-out infinite}.seb-badge{background:linear-gradient(135deg,#ff4757,#ff6b81);color:#fff;font-size:.8rem;font-weight:900;padding:4px 10px;border-radius:12px;box-shadow:0 2px 8px #ff475780;letter-spacing:1px;animation:sebPulse 1.5s infinite}.seb-text{font-size:1.1rem;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:2px;background:linear-gradient(90deg,#ff9a9e,#fecfef 99% 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 2px 10px rgba(255,154,158,.5)}@keyframes splashEventFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes sebPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1);box-shadow:0 4px 12px #ff4757cc}}body.zen-mode #sc-page>div,body.zen-mode #et-page>div,body.zen-mode .pgn-page>div,body.zen-mode #opening-study-main,body.zen-mode #endgame-study-main,body.zen-mode #app>div:nth-child(1){opacity:0!important;pointer-events:none!important;transition:opacity .3s ease}body.zen-mode #os-course-list,body.zen-mode #sc-course-list,body.zen-mode #et-section-list,body.zen-mode #pgn-collection-list{display:none!important}body:not(.zen-mode) #sc-page>div,body:not(.zen-mode) #et-page>div,body:not(.zen-mode) .pgn-page>div,body:not(.zen-mode) #opening-study-main,body:not(.zen-mode) #endgame-study-main,body:not(.zen-mode) #app>div:nth-child(1){transition:opacity .3s ease}@media(min-width:901px){body.hide-chat{overflow:hidden}body.hide-chat #os-page{overflow:hidden;height:calc(100vh - 56px)}}#os-timer{display:none!important}@media(max-width:900px){#zen-mode-toggle{display:none!important}}.snowfall-overlay{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden;border-radius:inherit}.snowflake{position:absolute;top:-8px;background:radial-gradient(circle,#fff 0%,rgba(255,255,255,.6) 50%,transparent 100%);border-radius:50%;opacity:0;pointer-events:none;animation:snowfall-fall linear infinite,snowfall-sway ease-in-out infinite;will-change:transform,opacity}@keyframes snowfall-fall{0%{transform:translateY(-10px) translate(0);opacity:0}5%{opacity:1}90%{opacity:.8}to{transform:translateY(calc(100vh + 10px)) translate(var(--snow-drift, 0px));opacity:0}}@keyframes snowfall-sway{0%,to{margin-left:0}25%{margin-left:var(--snow-sway, 15px)}75%{margin-left:calc(-1 * var(--snow-sway, 15px))}}.login-page{min-height:100dvh}.login-welcome,.login-access{min-width:0}@media(min-width:900px){.login-page{padding:20px}.login-card{max-width:900px;padding:28px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:0 32px;align-items:center}.login-welcome{padding-right:26px;border-right:1px solid #ffffff1a}.login-logo{margin-bottom:18px}.login-logo-img{width:92px;height:92px;margin:0 auto 10px}.login-logo-text{font-size:30px}.login-logo-sub{line-height:1.55;font-size:12px}.login-welcome .guest-entry{padding:13px;margin:18px 0 0}.login-welcome .guest-entry p{font-size:12px}.login-card .login-tabs{margin-bottom:16px}.login-card .form-group{margin-bottom:14px}.login-card .form-input{min-height:42px;padding:10px 12px}.login-card .form-label{margin-bottom:6px;font-size:13px}.login-card #register-form:not(.hidden){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.login-card #reg-submit-btn{grid-column:1/-1}.login-card #register-form .form-group>div:has(input[type=radio]){gap:6px!important}.login-card #register-form label:has(input[type=radio]){padding:8px 6px!important;gap:4px!important}.login-card .login-footer{grid-column:1/-1;margin-top:18px!important;padding-top:10px!important}}@media(min-width:900px)and (max-height:720px){.login-page{padding:12px 20px}.login-card{padding:20px 26px}.login-logo-img{width:76px;height:76px}.login-card .form-group{margin-bottom:10px}.login-card .login-tabs{margin-bottom:12px}.login-card .login-footer{margin-top:12px!important;padding-top:8px!important}}.cc-overlay{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;background:#0000;backdrop-filter:blur(0px);transition:background .25s ease,backdrop-filter .25s ease;padding:16px}.cc-overlay.cc-active{background:#0009;backdrop-filter:blur(6px)}.cc-overlay.cc-closing{background:#0000;backdrop-filter:blur(0px)}.cc-card{background:linear-gradient(145deg,#1e1240,#2a1a5e,#1a0f38);border:1px solid rgba(140,120,255,.3);border-radius:20px;padding:28px 24px 20px;max-width:380px;width:100%;text-align:center;box-shadow:0 20px 60px #00000080,0 0 30px #7850ff26,inset 0 1px #ffffff14;transform:scale(.85) translateY(20px);opacity:0;transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .25s ease}.cc-active .cc-card{transform:scale(1) translateY(0);opacity:1}.cc-closing .cc-card{transform:scale(.9) translateY(10px);opacity:0;transition:transform .2s ease,opacity .15s ease}.cc-icon{font-size:2.5rem;margin-bottom:8px;filter:drop-shadow(0 4px 12px rgba(255,200,100,.3));animation:ccIconPulse 2s ease-in-out infinite}@keyframes ccIconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.cc-title{font-size:1.15rem;font-weight:700;color:#fff;margin-bottom:10px;letter-spacing:.02em}.cc-message{font-size:.88rem;color:#fffc;line-height:1.5;margin-bottom:22px;word-break:break-word}.cc-buttons{display:flex;gap:10px;justify-content:center}.cc-btn{flex:1;padding:10px 18px;border-radius:12px;border:none;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .2s ease;letter-spacing:.02em;max-width:160px}.cc-btn:active{transform:scale(.96)}.cc-btn-cancel{background:#ffffff14;color:#ffffffb3;border:1px solid rgba(255,255,255,.12)}.cc-btn-cancel:hover{background:#ffffff24;color:#fff}.cc-btn-confirm{background:linear-gradient(135deg,#6c5ce7,#a78bfa);color:#fff;box-shadow:0 4px 15px #6c5ce766}.cc-btn-confirm:hover{background:linear-gradient(135deg,#7c6cf7,#b79cff);box-shadow:0 6px 20px #6c5ce780;transform:translateY(-1px)}.cc-btn-confirm:focus-visible{outline:2px solid #a78bfa;outline-offset:2px}.cc-btn-danger{background:linear-gradient(135deg,#e74c3c,#ff6b6b);box-shadow:0 4px 15px #e74c3c66}.cc-btn-danger:hover{background:linear-gradient(135deg,#ff5e4e,#ff7b7b);box-shadow:0 6px 20px #e74c3c80}.cc-input{width:100%;padding:12px 16px;border-radius:12px;border:1.5px solid rgba(140,120,255,.3);background:#ffffff0f;color:#fff;font-size:1rem;font-weight:600;font-family:inherit;text-align:center;margin-bottom:18px;outline:none;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.cc-input:focus{border-color:#a78bfa;box-shadow:0 0 12px #a78bfa4d}.cc-input::placeholder{color:#ffffff4d;font-weight:400}.cc-input[type=number]{-moz-appearance:textfield;appearance:textfield}.cc-input[type=number]::-webkit-inner-spin-button,.cc-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.area-bg-stage{width:100%;aspect-ratio:1 / 1;max-height:70vh;border-radius:16px;position:relative;display:flex;align-items:flex-end;justify-content:center;padding-bottom:24px;overflow:hidden}.school-container .area-bg-stage,.tower-climb-container .area-bg-stage{aspect-ratio:auto;height:70vh;max-height:70vh;border-radius:0}.area-trigger-btn{display:flex;align-items:center;gap:10px;padding:14px 28px;border:none;border-radius:50px;font-family:inherit;font-size:1rem;font-weight:700;cursor:pointer;z-index:5;position:relative;background:#ffffffeb;color:#2d3436;box-shadow:0 4px 20px #0003,0 0 0 2px #fff9,inset 0 1px #fffc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:areaTriggerBounce 2s ease-in-out infinite;transition:all .3s ease}.area-trigger-btn:hover{transform:scale(1.08);box-shadow:0 6px 28px #0000004d,0 0 0 3px #6c5ce766,inset 0 1px #fffc;animation:none}.area-trigger--dark{background:#1e143cd9;color:#fff;box-shadow:0 4px 20px #0006,0 0 0 2px #ffffff26,0 0 30px #c896ff33}.area-trigger--dark:hover{box-shadow:0 6px 28px #00000080,0 0 0 3px #c896ff4d,0 0 40px #c896ff4d}.area-trigger-emoji{font-size:1.4rem}.area-trigger-label{letter-spacing:.5px}.area-trigger--hidden{opacity:0;pointer-events:none;transform:translateY(20px)}@keyframes areaTriggerBounce{0%,to{transform:translateY(0)}30%{transform:translateY(-12px)}50%{transform:translateY(-4px)}70%{transform:translateY(-8px)}}.area-trigger-btn:before{content:"";position:absolute;inset:-4px;border-radius:54px;background:transparent;border:2px solid rgba(108,92,231,.3);animation:areaTriggerPulse 2s ease-in-out infinite}.area-trigger--dark:before{border-color:#c896ff4d}@keyframes areaTriggerPulse{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.15);opacity:0}}.area-content-panel{position:absolute;bottom:0;left:0;right:0;max-height:0;overflow:hidden;transition:max-height .5s cubic-bezier(.4,0,.2,1),opacity .3s ease;opacity:0;z-index:10;border-radius:16px 16px 0 0}.area-content-panel.area-panel--visible{max-height:96%;opacity:1;overflow-y:auto}.area-panel--light{background:#fff0;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 -4px 20px #0000000d}.area-panel--dark{background:#0f0c2926;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 -4px 20px #00000026;color:#fff}.area-content-panel>div[style*=padding]{padding:8px!important}.area-panel--light .tabs,.area-panel--light .school-tabs,.area-panel--light .attendance-card,.area-panel--light .school-quest-card,.area-panel--light .shop-card,.area-panel--light .reward-tiers-box,.area-panel--light .leaderboard-list{background:#ffffffd9!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:12px;border:1px solid rgba(255,255,255,.5);box-shadow:0 2px 8px #0000000d}.area-panel--light .tower-climb-layout{background:#ffffff26!important;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);border-radius:12px;border:none;box-shadow:none}.area-panel--dark .pond-balance,.area-panel--dark .pond-actions,.area-panel--dark .pond-rates{background:#0f0c29bf!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:12px;border:1px solid rgba(255,255,255,.1)}.area-content-panel:before{content:"";display:block;width:40px;height:4px;background:#00000026;border-radius:4px;margin:10px auto 6px}.area-panel--dark:before{background:#fff3}.area-panel-close{position:sticky;top:0;text-align:right;padding:4px 12px;z-index:11}.area-panel-close button{background:#0000000f;border:none;border-radius:50%;width:32px;height:32px;font-size:1rem;cursor:pointer;color:#636e72;transition:all .2s}.area-panel-close button:hover{background:#0000001f;transform:scale(1.1)}#shop-modal .modal-body,#hall-modal .modal-body,#pond-modal .modal-body,#wheel-modal .modal-body{position:relative;padding:0!important;overflow:hidden;flex:1;min-height:0}#shop-modal .modal-content,#hall-modal .modal-content,#wheel-modal .modal-content{max-width:900px!important;height:95vh!important;max-height:95vh!important}#pond-modal .modal-content{height:95vh!important;max-height:95vh!important}#shop-modal .area-bg-stage,#hall-modal .area-bg-stage,#pond-modal .area-bg-stage,#wheel-modal .area-bg-stage{aspect-ratio:auto;height:100%;max-height:none;border-radius:0}.school-container,.tower-climb-container{position:relative;min-height:100vh}.mascot-overlay{position:fixed;inset:0;z-index:10000;background:#0000008c;backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;opacity:0;transition:opacity .4s ease;pointer-events:none}.mascot-overlay.active{opacity:1;pointer-events:all}.mascot-container{display:flex;align-items:flex-end;gap:0;max-width:520px;width:95%;margin-bottom:20px;transform:translateY(120%);transition:transform .6s cubic-bezier(.34,1.56,.64,1)}.mascot-overlay.active .mascot-container{transform:translateY(0)}.mascot-img{width:120px;height:120px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 4px 16px rgba(0,0,0,.4));animation:mascotBounce 2s ease-in-out infinite;margin-bottom:-8px}@keyframes mascotBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes tutorialGlow{0%,to{filter:drop-shadow(0 0 25px rgba(255,215,0,1)) drop-shadow(0 0 50px rgba(255,215,0,.7)) brightness(1.3);transform:scale(1.15)}50%{filter:drop-shadow(0 0 40px rgba(255,215,0,1)) drop-shadow(0 0 70px rgba(255,215,0,.9)) brightness(1.5);transform:scale(1.22)}}.speech-bubble{position:relative;background:linear-gradient(135deg,#fffffff2,#f0f0fff2);border-radius:20px 20px 20px 4px;padding:18px 22px;color:#1a1a2e;font-size:.92rem;line-height:1.6;box-shadow:0 8px 32px #00000040,0 0 0 2px #6c5ce74d;flex:1;min-height:80px}.speech-bubble:before{content:"";position:absolute;bottom:16px;left:-12px;width:0;height:0;border:8px solid transparent;border-right-color:#fffffff2;border-left:0}.speech-title{font-weight:800;font-size:1.05rem;margin-bottom:6px;background:linear-gradient(135deg,#6c5ce7,#e74c3c);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.speech-text{font-weight:500;color:#333;min-height:36px}.speech-text .typing-cursor{display:inline-block;width:2px;height:1em;background:#6c5ce7;margin-left:2px;animation:cursorBlink .8s infinite;vertical-align:text-bottom}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}.speech-actions{display:flex;gap:8px;margin-top:14px;justify-content:flex-end}.speech-actions button{padding:8px 20px;border-radius:12px;font-weight:700;font-size:.82rem;cursor:pointer;border:none;transition:all .2s;font-family:inherit}.speech-btn-next{background:linear-gradient(135deg,#6c5ce7,#a855f7);color:#fff;box-shadow:0 3px 12px #6c5ce74d}.speech-btn-next:hover{transform:translateY(-2px);box-shadow:0 5px 16px #6c5ce766}.speech-btn-skip{background:#00000014;color:#666}.speech-btn-skip:hover{background:#0000001f}.speech-steps{display:flex;gap:6px;justify-content:center;margin-top:10px}.speech-step-dot{width:8px;height:8px;border-radius:50%;background:#6c5ce733;transition:all .3s}.speech-step-dot.active{background:#6c5ce7;width:24px;border-radius:4px}.speech-step-dot.done{background:#2ecc71}.area-help-btn{position:fixed;top:70px;left:16px;z-index:900;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#6c5ce7,#a855f7);color:#fff;border:3px solid rgba(255,255,255,.3);font-size:1.3rem;font-weight:900;cursor:pointer;box-shadow:0 4px 20px #6c5ce780;animation:helpPulse 2.5s ease-in-out infinite;display:flex;align-items:center;justify-content:center;transition:transform .2s}.area-help-btn:hover{transform:scale(1.15);animation:none}@keyframes helpPulse{0%,to{box-shadow:0 4px 20px #6c5ce780}50%{box-shadow:0 4px 30px #6c5ce7cc,0 0 0 8px #6c5ce726}}.help-modal-content{max-height:70vh;overflow-y:auto}.help-section{padding:14px;border-radius:14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);margin-bottom:10px}.help-section-title{font-weight:800;font-size:.95rem;margin-bottom:6px;display:flex;align-items:center;gap:8px}.help-section-text{font-size:.82rem;line-height:1.6;opacity:.8}.help-mascot-row{display:flex;align-items:center;gap:12px;padding:12px;background:linear-gradient(135deg,#6c5ce71a,#a855f70d);border-radius:14px;border:1.5px solid rgba(108,92,231,.2);margin-bottom:14px}.help-mascot-img{width:60px;height:60px;object-fit:contain;flex-shrink:0}.unlock-celebration{position:fixed;inset:0;z-index:10001;display:flex;align-items:center;justify-content:center;background:#0009;backdrop-filter:blur(6px);opacity:0;transition:opacity .5s;pointer-events:none}.unlock-celebration.active{opacity:1;pointer-events:all}.unlock-card{text-align:center;padding:28px 36px;background:linear-gradient(135deg,#1e1e3cf2,#141432fa);border-radius:24px;border:2px solid rgba(255,215,0,.4);box-shadow:0 12px 48px #00000080,0 0 60px #ffd70026;transform:scale(.7);transition:transform .5s cubic-bezier(.34,1.56,.64,1);max-width:340px}.unlock-celebration.active .unlock-card{transform:scale(1)}.unlock-icon{font-size:4rem;margin-bottom:8px;animation:unlockBounce .8s cubic-bezier(.34,1.56,.64,1)}@keyframes unlockBounce{0%{transform:scale(0) rotate(-20deg)}60%{transform:scale(1.2) rotate(5deg)}to{transform:scale(1) rotate(0)}}.unlock-title{font-weight:900;font-size:1.4rem;background:linear-gradient(135deg,gold,#ff8c00);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:4px}.unlock-subtitle{font-size:.85rem;color:#ffffffe6;margin-bottom:12px}.unlock-mascot{width:80px;height:80px;object-fit:contain;margin:8px auto;animation:mascotBounce 1.5s ease-in-out infinite}.confetti-particle{position:fixed;width:8px;height:8px;border-radius:2px;z-index:10002;pointer-events:none;animation:confettiFall var(--duration, 3s) linear forwards}@keyframes confettiFall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.area-intro-overlay{position:fixed;inset:0;z-index:9999;background:#00000080;backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .4s;pointer-events:none}.area-intro-overlay.active{opacity:1;pointer-events:all}.area-intro-card{background:linear-gradient(135deg,#1e1e3cf2,#141432fa);border-radius:20px;border:2px solid rgba(108,92,231,.3);padding:24px;max-width:400px;width:90%;text-align:center;color:#fff;transform:translateY(30px);transition:transform .5s cubic-bezier(.34,1.56,.64,1)}.area-intro-card div{color:#fff}.area-intro-overlay.active .area-intro-card{transform:translateY(0)}.school-promo-banner{background:linear-gradient(135deg,#0b1528,#1c3664);border:2px solid rgba(100,149,237,.5);border-radius:16px;padding:24px;margin-bottom:24px;box-shadow:0 12px 40px #00000080,inset 0 0 30px #3b82f633;position:relative;overflow:hidden;color:#fff;font-family:var(--font-family, "Baloo 2", sans-serif)}.school-promo-banner:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:30px 30px;opacity:.8;pointer-events:none}.spb-header{display:flex;align-items:center;justify-content:center;margin-bottom:24px;gap:16px;position:relative;z-index:2}.spb-logo-wrap{width:64px;height:64px;background:#fff;border-radius:50%;padding:6px;box-shadow:0 0 20px #fff6;flex-shrink:0;display:flex;align-items:center;justify-content:center}.spb-logo{width:100%;height:100%;object-fit:contain}.spb-title{font-size:2.2rem;font-weight:900;margin:0;background:linear-gradient(to bottom,#aee2ff,#2980b9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-transform:uppercase;letter-spacing:2px;text-shadow:0px 4px 10px rgba(0,0,0,.5);line-height:1.1;text-align:center}.spb-cards{display:flex;gap:20px;margin-bottom:24px;position:relative;z-index:2}.spb-card{flex:1;border-radius:16px;overflow:hidden;box-shadow:0 10px 25px #0006;border:1px solid rgba(255,255,255,.15);display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease}.spb-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #0009}.spb-card-basic .spb-card-top{background:linear-gradient(135deg,#48dbfb,#0abde3)}.spb-card-intermediate .spb-card-top{background:linear-gradient(135deg,#feca57,#ff9f43)}.spb-card-advanced .spb-card-top{background:linear-gradient(135deg,#5f27cd,#341f97)}.spb-card-top{padding:16px;text-align:center;position:relative;border-bottom:4px solid rgba(0,0,0,.2)}.spb-card-header{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:12px}.spb-card-icon{width:54px;height:54px;background:radial-gradient(circle,#f5f6fa,#dcdde1);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;color:#2f3640;box-shadow:0 4px 10px #0006,inset 0 -3px 8px #00000026;border:3px solid rgba(255,255,255,.8);position:relative}.spb-card-basic .spb-card-icon:after,.spb-card-intermediate .spb-card-icon:after,.spb-card-advanced .spb-card-icon:after{content:"";position:absolute;inset:-6px;border-radius:50%;z-index:-1;filter:blur(8px)}.spb-card-basic .spb-card-icon:after{background:#48dbfb80}.spb-card-intermediate .spb-card-icon:after{background:#feca5780}.spb-card-advanced .spb-card-icon:after{background:#5f27cd80}.spb-card-header h3{margin:0;font-size:1.6rem;font-weight:800;color:#fff;text-shadow:1px 2px 4px rgba(0,0,0,.4);letter-spacing:1px}.spb-card-elo{font-size:1.5rem;font-weight:800;color:#fff;text-shadow:1px 2px 5px rgba(0,0,0,.6);line-height:1.1}.spb-card-elo span{font-size:.85rem;font-weight:600;opacity:.9}.spb-card-info{padding:16px;text-align:center;font-size:.95rem;color:#ffffffd9;flex-grow:1;display:flex;flex-direction:column;justify-content:center}.spb-card-basic .spb-card-info{background:linear-gradient(to bottom,#113f4d,#0b2229)}.spb-card-intermediate .spb-card-info{background:linear-gradient(to bottom,#593e11,#2f1d03)}.spb-card-advanced .spb-card-info{background:linear-gradient(to bottom,#161b40,#080a1c)}.spb-card-info p{margin:4px 0;line-height:1.4}.spb-price{font-weight:800;font-size:1.1rem;color:#f6e58d;margin-top:10px!important;text-shadow:0 1px 3px rgba(0,0,0,.5)}.spb-footer{display:flex;justify-content:space-between;gap:20px;font-size:.9rem;color:#dcdde1;background:#00000059;padding:16px;border-radius:12px;margin-bottom:24px;position:relative;z-index:2;border:1px solid rgba(255,255,255,.05)}.spb-footer-text p{margin:6px 0;display:flex;align-items:center;gap:8px;font-weight:500}.spb-footer-right p:first-child{color:#48dbfb;font-weight:800;font-size:.95rem;text-shadow:0 0 10px rgba(72,219,251,.3)}.spb-cta{display:flex;align-items:center;justify-content:center;gap:30px;position:relative;z-index:2}.spb-btn-register{background:linear-gradient(135deg,coral,#ff4757);color:#fff;border:none;padding:14px 40px;font-size:1.4rem;font-weight:900;border-radius:40px;cursor:pointer;box-shadow:0 6px 20px #ff475766,inset 0 -3px #0003;transition:transform .2s,box-shadow .2s;text-transform:uppercase;letter-spacing:1px}.spb-btn-register:hover{transform:translateY(-3px);box-shadow:0 8px 25px #ff475799,inset 0 -3px #0003}.spb-btn-register:active{transform:translateY(1px);box-shadow:0 3px 10px #ff475766}.spb-contact{display:flex;flex-direction:column;font-size:1rem;color:#f5f6fa;background:#0003;padding:8px 16px;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.spb-hotline{font-weight:800;font-size:1.2rem;color:#48dbfb;text-shadow:0 1px 3px rgba(0,0,0,.5)}@media(max-width:900px){.spb-cards{flex-direction:column}.spb-footer{flex-direction:column;gap:12px}.spb-header{flex-direction:column;text-align:center}.spb-cta{flex-direction:column;gap:16px;text-align:center}.spb-title{font-size:1.8rem}}.event-tag{font-size:.65rem;padding:3px 9px;border-radius:20px;font-weight:600;white-space:nowrap;border:1px solid transparent}.event-tag--gold{background:#ffb40026;border-color:#ffb40066;color:#ffcf48}.event-tag--purple{background:#ff64351f;border-color:#ff643559;color:#ff8a5c}.event-tag--blue{background:#64c8ff1f;border-color:#64c8ff59;color:#87ceeb}.event-banner-desktop{position:fixed;top:54px;left:50%;transform:translate(-50%);z-index:850;width:min(480px,90vw);transition:all .4s cubic-bezier(.4,0,.2,1);display:block}.event-banner-inner{background:linear-gradient(135deg,#b45000ed,#782800f5);border:1.5px solid rgba(255,180,60,.5);border-radius:14px;overflow:hidden;box-shadow:0 4px 24px #ff780040,0 0 40px #ffb40014;backdrop-filter:blur(12px)}.event-banner-pill{display:none;cursor:pointer;padding:5px 14px;align-items:center;gap:8px;justify-content:center}.event-banner-pill-dot{width:6px;height:6px;border-radius:50%;background:#ffb340;animation:pillDotPulse 1.8s ease-in-out infinite;flex-shrink:0}@keyframes pillDotPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}.event-banner-pill-text{font-size:.7rem;color:#ffd28cf2;font-weight:600}.event-banner-row{display:flex;align-items:center;gap:10px;padding:9px 13px 7px}.event-banner-icon{font-size:1.3rem;filter:drop-shadow(0 0 10px rgba(255,180,0,.8));animation:float 2.5s ease-in-out infinite;flex-shrink:0}.event-banner-content{flex:1;min-width:0}.event-banner-title{font-size:.8rem;font-weight:800;color:gold;letter-spacing:.4px;text-shadow:0 1px 6px rgba(0,0,0,.5),0 0 12px rgba(255,180,0,.3)}.event-banner-desc{font-size:.68rem;color:#ffe6bef2;margin-top:3px;line-height:1.5}.event-banner-close{background:none;border:none;color:#ffffff73;font-size:1rem;cursor:pointer;padding:2px 5px;border-radius:6px;flex-shrink:0;transition:color .2s}.event-banner-close:hover{color:#fffc}.event-banner-tags{display:flex;gap:5px;padding:0 13px 9px;flex-wrap:wrap;align-items:center}.event-tag-btn{margin-left:auto;background:linear-gradient(135deg,#ffa0284d,#c850004d);border:1px solid rgba(255,180,60,.5);color:#ffcf48;font-size:.65rem;font-weight:700;padding:4px 10px;border-radius:20px;cursor:pointer;white-space:nowrap;transition:background .2s,transform .15s}.event-tag-btn:hover{background:linear-gradient(135deg,#ffa02880,#c8500080);transform:scale(1.04)}.event-lb-desktop{position:fixed;top:60px;right:14px;z-index:840;width:240px;transition:all .3s;pointer-events:auto;display:block}.event-lb-card{background:linear-gradient(135deg,#3c1905f5,#1e0c02fa);border:1.5px solid rgba(255,160,40,.35);border-radius:12px;overflow:hidden;box-shadow:0 6px 28px #00000061,0 0 20px #ff780014;backdrop-filter:blur(8px)}.event-lb-header{padding:9px 11px;background:linear-gradient(90deg,rgba(255,140,0,.2),transparent);display:flex;align-items:center;justify-content:space-between;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.05);user-select:none}.event-lb-title{font-size:.7rem;font-weight:700;color:#ffcf48;letter-spacing:.2px}.event-lb-toggle{background:none;border:none;color:#ffffff8c;font-size:.85rem;cursor:pointer;padding:0 2px;line-height:1}.event-lb-body{display:block}.event-lb-desc{padding:7px 11px;font-size:.62rem;color:#ffffff94;line-height:1.4;background:#0000002e}.event-lb-list{max-height:220px;overflow-y:auto;padding:5px;scrollbar-width:thin;scrollbar-color:rgba(255,160,40,.3) transparent}.event-lb-month-bar{padding:6px 8px;background:#00000047;border-bottom:1px solid rgba(255,255,255,.07)}.event-month-pills{display:flex;gap:3px;width:100%}.event-month-pill{flex:1;padding:4px 1px;background:#281205a6;border:1px solid rgba(255,180,40,.25);border-radius:6px;color:#ffffffb8;font-size:.67rem;font-weight:700;cursor:pointer;text-align:center;transition:all .18s ease;user-select:none}.event-month-pill:hover{background:#ffb42840;color:#ffcf48;border-color:#ffb42880}.event-month-pill.active{background:linear-gradient(135deg,#f59e0b,#d97706);color:#111;font-weight:800;border-color:#fcd34d;box-shadow:0 0 8px #f59e0b73}.mobile-event-month-bar{display:flex;gap:6px;padding:10px 14px 6px;background:#00000038;border-bottom:1px solid rgba(255,255,255,.08);overflow-x:auto;scrollbar-width:none}.mobile-event-month-bar::-webkit-scrollbar{display:none}.mobile-event-month-pill{flex:1;min-width:58px;padding:6px 4px;background:#2d1405bf;border:1px solid rgba(255,180,40,.3);border-radius:8px;color:#ffffffbf;font-size:.76rem;font-weight:700;cursor:pointer;text-align:center;white-space:nowrap;transition:all .18s ease;user-select:none}.mobile-event-month-pill:hover,.mobile-event-month-pill:active{background:#ffb42840;color:#ffcf48}.mobile-event-month-pill.active{background:linear-gradient(135deg,#f59e0b,#d97706);color:#111;font-weight:800;border-color:#fcd34d;box-shadow:0 0 10px #f59e0b80}.mobile-event-pill{display:none;position:fixed;bottom:74px;left:12px;z-index:900;background:linear-gradient(135deg,#c85a00eb,#8c3200f2);border:1.5px solid rgba(255,180,60,.55);border-radius:30px;padding:6px 12px;align-items:center;gap:6px;color:#ffdcaaf2;font-size:.74rem;font-weight:700;cursor:pointer;box-shadow:0 4px 18px #ff78004d;backdrop-filter:blur(10px);user-select:none;transition:transform .2s,box-shadow .2s;animation:pillFloat 2.8s ease-in-out infinite}.mobile-event-pill:active{transform:scale(.95)}@keyframes pillFloat{0%,to{transform:translateY(0);box-shadow:0 4px 18px #ff78004d}50%{transform:translateY(-4px);box-shadow:0 8px 24px #ff780073}}.mobile-event-pill-dot{width:7px;height:7px;border-radius:50%;background:#ffb340;animation:pillDotPulse 1.8s ease-in-out infinite;flex-shrink:0}.mobile-event-pill-arrow{font-size:.65rem;opacity:.7;transition:transform .25s}.mobile-event-overlay{display:none;position:fixed;inset:0;background:#0000;z-index:910;transition:background .3s;pointer-events:none}.mobile-event-overlay--visible{display:block;background:#00000073;pointer-events:auto}.mobile-event-sheet{display:none;position:fixed;bottom:0;left:0;right:0;z-index:920;background:linear-gradient(160deg,#411905fa,#190a02fc);border-top:1.5px solid rgba(255,160,40,.4);border-radius:20px 20px 0 0;box-shadow:0 -8px 40px #00000080;transform:translateY(100%);transition:transform .38s cubic-bezier(.4,0,.2,1);max-height:75vh;overflow:hidden;backdrop-filter:blur(14px);padding-bottom:env(safe-area-inset-bottom,0px)}.mobile-event-sheet--open{display:block;transform:translateY(0)}.mobile-event-sheet-handle{width:40px;height:4px;border-radius:2px;background:#ffa02866;margin:10px auto 0}.mobile-event-tabs{display:flex;gap:6px;padding:10px 16px 0;border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:0}.mobile-event-tab{flex:1;padding:8px 0;background:none;border:none;border-bottom:2.5px solid transparent;color:#ffffff80;font-size:.82rem;font-weight:600;cursor:pointer;transition:color .2s,border-color .2s;font-family:inherit}.mobile-event-tab--active{color:#ffcf48;border-bottom-color:#ffb340}.mobile-event-panel{padding:14px 16px;overflow-y:auto;max-height:calc(75vh - 90px);scrollbar-width:thin;scrollbar-color:rgba(255,160,40,.3) transparent}.met-event-hero{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:12px;background:#ff8c001a;border:1px solid rgba(255,160,40,.25);border-radius:12px}.met-event-hero-icon{font-size:2.2rem;filter:drop-shadow(0 0 12px rgba(255,160,0,.7));animation:float 2.5s ease-in-out infinite;flex-shrink:0}.met-event-hero-title{font-size:1rem;font-weight:800;color:gold;letter-spacing:.3px;text-shadow:0 1px 6px rgba(0,0,0,.6),0 0 14px rgba(255,180,0,.3)}.met-event-hero-sub{font-size:.75rem;color:#ff8a5c;font-weight:600;margin-top:2px}.met-event-body{font-size:.8rem;color:#ffe6c8eb;line-height:1.65;margin:0 0 12px}.met-event-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.met-event-cta{width:100%;padding:12px;background:linear-gradient(135deg,#ff8c004d,#c8460066);border:1px solid rgba(255,160,40,.5);border-radius:12px;color:#ffcf48;font-size:.85rem;font-weight:700;cursor:pointer;transition:transform .2s,background .2s;font-family:inherit}.met-event-cta:active{transform:scale(.97)}.met-lb-header{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding:10px 12px;background:#ff8c001a;border:1px solid rgba(255,160,40,.25);border-radius:12px}.met-lb-title{font-size:.8rem;font-weight:800;color:#ffcf48;letter-spacing:.2px}.met-lb-sub{font-size:.68rem;color:#ff8a5c;font-weight:600;margin-top:2px}.met-lb-list{display:flex;flex-direction:column;gap:2px}@media(min-width:768px){.mobile-event-pill,.mobile-event-overlay,.mobile-event-sheet{display:none!important}.event-banner-desktop,.event-lb-desktop{display:block}}@media(max-width:767px){.event-banner-desktop,.event-lb-desktop{display:none!important}.mobile-event-pill{display:flex!important}.mobile-event-sheet--open{display:block!important}}.event-prize-head,.event-prize-row{display:grid;grid-template-columns:20px minmax(0,1fr) 32px 100px;gap:6px;align-items:center;padding:8px;color:#e5eee9;font-family:Be Vietnam Pro,Segoe UI,Arial,sans-serif}.event-prize-head{font-size:10px;font-weight:700;color:#c5ded2;border-bottom:1px solid #c5ded233}.event-prize-row{border-bottom:1px solid #c5ded222;font-size:12px;min-height:58px}.event-prize-top{background:#fff09918;border-radius:8px}.event-prize-top .event-prize-name{color:#ffe674;font-weight:700}.event-prize-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-prize-rank{text-align:center;font-weight:700}.event-prize-points{font-weight:800;color:#e9bfff;text-align:center}.event-prize-cell{display:flex;flex-direction:column;align-items:center;gap:4px;color:#ecf5e4}.event-prize-cell small{font-size:10px;color:#c8dfd1}.event-prize-gift{display:flex;align-items:center;gap:4px;font-size:10px;line-height:1.5}.event-prize-gift img{width:27px;height:30px;object-fit:contain}.event-prize-claim{border:1px solid #e5cb70;background:#fff2b9;color:#294e3d;border-radius:8px;font-size:11px;font-weight:700;min-height:34px;padding:5px 8px;cursor:pointer}.event-prize-claim:disabled{opacity:.55;cursor:wait}.event-lb-desktop{width:330px!important;max-width:calc(100vw - 28px)}@media(max-width:760px){.event-prize-row{min-height:62px}.event-prize-claim{min-height:40px}}:root{--rpg-bg-deep: #0D0B1C;--rpg-bg-card: rgba(22, 18, 44, .78);--rpg-bg-card-hover: rgba(35, 29, 68, .9);--rpg-bg-glass: rgba(255, 255, 255, .08);--rpg-bg-glass-active: rgba(255, 255, 255, .16);--rpg-border-subtle: rgba(255, 255, 255, .14);--rpg-border-gold: rgba(255, 215, 0, .5);--rpg-border-purple: rgba(168, 85, 247, .45);--rpg-border-cyan: rgba(56, 189, 248, .45);--rpg-gold: #FFD700;--rpg-gold-light: #FFE873;--rpg-gold-dark: #D4AF37;--rpg-gold-gradient: linear-gradient(135deg, #FFE57F 0%, #FFC107 50%, #FFA000 100%);--rpg-gold-glow: 0 0 20px rgba(255, 215, 0, .5);--rpg-arcane: #A855F7;--rpg-arcane-light: #C084FC;--rpg-arcane-gradient: linear-gradient(135deg, #A855F7 0%, #7E22CE 100%);--rpg-arcane-glow: 0 0 20px rgba(168, 85, 247, .5);--rpg-cyan: #38BDF8;--rpg-cyan-gradient: linear-gradient(135deg, #38BDF8 0%, #0284C7 100%);--rpg-cyan-glow: 0 0 18px rgba(56, 189, 248, .45);--rpg-emerald: #10B981;--rpg-emerald-gradient: linear-gradient(135deg, #34D399 0%, #059669 100%);--rpg-emerald-glow: 0 0 18px rgba(16, 185, 129, .45);--realm-bronze: #CD7F32;--realm-bronze-gradient: linear-gradient(135deg, #D97706, #78350F);--realm-bronze-glow: 0 0 15px rgba(205, 127, 50, .45);--realm-silver: #94A3B8;--realm-silver-gradient: linear-gradient(135deg, #CBD5E1, #475569);--realm-silver-glow: 0 0 15px rgba(148, 163, 184, .45);--realm-gold: #F59E0B;--realm-gold-gradient: linear-gradient(135deg, #FBBF24, #B45309);--realm-gold-glow: 0 0 20px rgba(245, 158, 11, .55);--realm-diamond: #38BDF8;--realm-diamond-gradient: linear-gradient(135deg, #67E8F9 0%, #2563EB 50%, #7C3AED 100%);--realm-diamond-glow: 0 0 25px rgba(56, 189, 248, .65);--rpg-shadow-card: 0 8px 32px rgba(0, 0, 0, .4);--rpg-shadow-elevated: 0 16px 48px rgba(0, 0, 0, .6);--rpg-blur: blur(14px)}.rpg-glass-panel{background:var(--rpg-bg-card);backdrop-filter:var(--rpg-blur);-webkit-backdrop-filter:var(--rpg-blur);border:1px solid var(--rpg-border-subtle);border-radius:18px;box-shadow:var(--rpg-shadow-card)}.rpg-gold-badge{background:var(--rpg-gold-gradient);color:#381a00;font-weight:800;border-radius:999px;box-shadow:0 2px 10px #ffc10766}@keyframes rpgFloatGlow{0%,to{transform:translateY(0);filter:drop-shadow(0 4px 12px rgba(255,215,0,.3))}50%{transform:translateY(-5px);filter:drop-shadow(0 10px 24px rgba(255,215,0,.6))}}@keyframes rpgPulseRune{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@keyframes rpgShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes rpgPortalSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes chestWiggle{0%,85%,to{transform:rotate(0) scale(1)}88%{transform:rotate(-8deg) scale(1.1)}92%{transform:rotate(8deg) scale(1.1)}96%{transform:rotate(-4deg) scale(1.1)}}.modern-hud-header{background:linear-gradient(180deg,#162656eb,#1e367ae0);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:2px solid rgba(255,215,0,.35);box-shadow:0 8px 30px #0f172a4d,inset 0 -1px #ffffff26;position:sticky;top:0;z-index:1000;padding:8px 16px}.hud-inner{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px}.hud-brand-group{display:flex;align-items:center;gap:14px}.hud-logo{display:flex;align-items:center;gap:10px;cursor:pointer;text-decoration:none}.hud-logo-img{height:38px;width:auto;filter:drop-shadow(0 2px 8px rgba(255,215,0,.4));transition:transform .25s ease}.hud-logo:hover .hud-logo-img{transform:scale(1.08) rotate(-3deg)}.hud-logo-text{font-size:1.25rem;font-weight:900;letter-spacing:.5px;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.6);line-height:1.1;display:flex;flex-direction:column}.hud-logo-subtitle{font-size:.65rem;color:var(--rpg-gold);font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.view-mode-toggle{display:flex;align-items:center;background:#00000073;border:1.5px solid rgba(255,215,0,.3);border-radius:24px;padding:3px;position:relative;box-shadow:inset 0 2px 6px #00000080}.view-mode-btn{border:none;background:transparent;color:#fff9;font-size:.78rem;font-weight:800;padding:6px 14px;border-radius:20px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:6px;white-space:nowrap}.view-mode-btn.active{background:var(--rpg-gold-gradient);color:#2d1400;box-shadow:0 2px 10px #ffc10780;transform:scale(1.02)}.hud-resources{display:flex;align-items:center;gap:10px}.hud-pill{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#ffffff14,#ffffff05);border:1px solid rgba(255,255,255,.15);border-radius:24px;padding:4px 12px 4px 6px;box-shadow:0 4px 12px #0000004d,inset 0 1px #ffffff1a;transition:all .25s ease;cursor:default}.hud-pill:hover{transform:translateY(-2px);border-color:#ffd70066;box-shadow:0 6px 16px #ffd70033}.hud-pill-icon{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.95rem;background:#00000059;border:1px solid rgba(255,255,255,.15);box-shadow:inset 0 1px 3px #0006}.hud-pill-val{font-size:.9rem;font-weight:900;color:#fff;letter-spacing:.3px;text-shadow:0 1px 3px rgba(0,0,0,.8)}.hud-pill--stars .hud-pill-val{color:#ffe066}.hud-pill--coins .hud-pill-val{color:#ffb84d}.hud-coins-compact{display:none}@media(max-width:768px){.hud-coins-full{display:none}.hud-coins-compact{display:inline}.hud-resources .hud-pill-val{white-space:nowrap}}.hud-pill--elo .hud-pill-val{color:#6ee7b7}.hud-pill--streak .hud-pill-val{color:#ff7675}.hud-pill--elo{cursor:pointer}.hud-pill--elo:hover{border-color:#6ee7b766;box-shadow:0 6px 16px #6ee7b733}.hud-pill-tag{font-size:.72em;font-weight:800;opacity:.85;letter-spacing:.4px;margin-right:2px}.hud-actions-group{display:flex;align-items:center;gap:12px}.hud-user-profile{display:flex;align-items:center;gap:10px;background:#ffffff0d;border:1.5px solid rgba(255,215,0,.3);padding:3px 12px 3px 4px;border-radius:30px;cursor:pointer;transition:all .25s ease}.hud-user-profile:hover{background:#ffffff1a;border-color:var(--rpg-gold);box-shadow:0 0 15px #ffd7004d;transform:translateY(-1px)}.hud-avatar-ring{position:relative;width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,gold,#ff8c00);padding:2px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 10px #ffd70066}.hud-avatar-inner{width:100%;height:100%;border-radius:50%;background:#1a103c;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.hud-user-meta{display:flex;flex-direction:column;text-align:left;max-width:130px}.hud-user-name{font-size:.85rem;font-weight:800;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.hud-user-rank{font-size:.68rem;font-weight:700;color:var(--rpg-gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.9}.hud-btn{width:38px;height:38px;border-radius:12px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#fff;font-size:1.1rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);position:relative}.hud-btn:hover{transform:translateY(-3px) scale(1.08);background:#ffffff2e;border-color:#ffd70080;box-shadow:0 6px 16px #0006}.hud-btn-badge{position:absolute;top:-4px;right:-4px;background:#e74c3c;color:#fff;font-size:.62rem;font-weight:900;min-width:18px;height:18px;line-height:18px;border-radius:9px;text-align:center;border:2px solid #0D0B1C;box-shadow:0 2px 6px #e74c3c99}.modern-map-wrapper{position:relative;width:100%;min-height:calc(100vh - 60px);overflow:hidden;background:radial-gradient(circle at 18% 18%,rgba(254,240,138,.45) 0%,transparent 35%),radial-gradient(ellipse at 50% 10%,rgba(255,255,255,.7) 0%,transparent 60%),radial-gradient(ellipse at 85% 25%,rgba(186,230,253,.5) 0%,transparent 50%),linear-gradient(180deg,#60a5fa,#93c5fd,#bfdbfe,#dbeafe,#eff6ff)}.modern-hotspot{position:absolute;transform:translate(-50%,-50%);cursor:pointer;z-index:20;transition:z-index .2s ease;width:var(--hotspot-w, clamp(90px, 12vw, 160px));height:var(--hotspot-h, clamp(90px, 12vw, 160px));display:flex;flex-direction:column;align-items:center;justify-content:center}.modern-hotspot:hover,.modern-hotspot.active-touch{z-index:70}.hotspot-sprite{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(1);width:var(--sprite-w, clamp(120px, 16vw, 220px));height:auto;max-width:none;pointer-events:none;user-select:none;opacity:0;transition:opacity .26s cubic-bezier(.25,1,.5,1),transform .32s cubic-bezier(.34,1.56,.64,1),filter .3s ease;will-change:opacity,transform,filter}.modern-hotspot:hover .hotspot-sprite,.modern-hotspot.active-touch .hotspot-sprite{opacity:1;transform:translate(-50%,-55%) scale(1.08);filter:drop-shadow(0 0 18px var(--glow-color, #ffd700)) drop-shadow(0 0 35px var(--glow-color, rgba(255, 215, 0, .6))) drop-shadow(0 12px 24px rgba(0,0,0,.75)) brightness(1.18)}.hotspot-beacon{position:absolute;bottom:var(--beacon-y, calc(100% - 15px) );left:50%;transform:translate(-50%) translateY(12px) scale(.85);opacity:0;pointer-events:none;display:flex;flex-direction:column;align-items:center;transition:opacity .25s cubic-bezier(.25,1,.5,1),transform .3s cubic-bezier(.34,1.56,.64,1);z-index:80;white-space:nowrap}.modern-hotspot:hover .hotspot-beacon,.modern-hotspot.active-touch .hotspot-beacon{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0) scale(1)}.hotspot-card{background:#0e0a20eb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1.5px solid var(--glow-color, rgba(255, 215, 0, .6));border-radius:20px;padding:5px 14px;display:flex;align-items:center;gap:7px;box-shadow:0 6px 20px #000000b3,0 0 16px var(--glow-color, rgba(255, 215, 0, .35));white-space:nowrap;user-select:none;transition:all .25s ease}.modern-hotspot:hover .hotspot-card,.modern-hotspot.active-touch .hotspot-card{background:#181034f5;border-color:#fff;box-shadow:0 10px 28px #000c,0 0 24px var(--glow-color, rgba(255, 215, 0, .7))}.hotspot-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;flex-shrink:0;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.hotspot-icon svg{width:100%;height:100%;filter:drop-shadow(0 2px 6px rgba(0,0,0,.7))}.modern-hotspot:hover .hotspot-icon,.modern-hotspot.active-touch .hotspot-icon{transform:scale(1.15) rotate(2deg)}.hotspot-label{font-size:.86rem;font-weight:800;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.9);letter-spacing:.3px}.hotspot-pillar{width:3px;height:16px;background:linear-gradient(180deg,var(--glow-color, #FFD700) 0%,transparent 100%);box-shadow:0 0 8px var(--glow-color, #FFD700);opacity:.8}.hotspot-lock{background:#e74c3c4d;border:1px solid rgba(231,76,60,.7);color:#ffa3a3;padding:1px 6px;border-radius:10px;font-size:.65rem}.building--activity-locked{filter:saturate(.4) brightness(.75);transition:filter .35s ease}.building--activity-locked .hotspot-sprite{filter:grayscale(.75) brightness(.65) drop-shadow(0 0 12px rgba(231,76,60,.5))!important}.building--activity-locked:hover .hotspot-sprite,.building--activity-locked.active-touch .hotspot-sprite{filter:grayscale(.5) brightness(.8) drop-shadow(0 0 20px rgba(231,76,60,.8))!important}.hotspot-lock--activity{background:linear-gradient(135deg,#e74c3c73,#c0392ba6)!important;border:1.2px solid #ff7675!important;color:#ffeaa7!important;font-weight:800;box-shadow:0 0 10px #e74c3c99;animation:actLockGlow 2.5s ease-in-out infinite}.realm-hotspot--activity-locked{opacity:.85}.realm-hotspot-lock--activity{background:linear-gradient(135deg,#e74c3c73,#c0392ba6)!important;border:1.2px solid #ff7675!important;color:#ffeaa7!important;font-weight:800;font-size:.62rem;padding:2px 7px;border-radius:10px;box-shadow:0 0 10px #e74c3c80;animation:actLockGlow 2.5s ease-in-out infinite}@keyframes actLockGlow{0%,to{box-shadow:0 0 6px #e74c3c66;transform:scale(1)}50%{box-shadow:0 0 14px #e74c3cd9;transform:scale(1.05)}}.quick-hub-container{max-width:1320px;margin:0 auto;padding:24px 20px 80px;display:flex;flex-direction:column;gap:32px;animation:hubFadeIn .35s ease forwards}@keyframes hubFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.hub-tower-hero{background:linear-gradient(135deg,#1e3a8aeb,#4338cae0,#6d28d9d9),url(/images/bg-tower.png) center/cover no-repeat;background-blend-mode:overlay;border:2px solid rgba(255,215,0,.5);border-radius:24px;padding:32px;display:flex;align-items:center;justify-content:space-between;gap:24px;box-shadow:0 16px 40px #1e3a8a59,0 0 30px #ffd70040,inset 0 0 60px #ffffff1f;position:relative;overflow:hidden}.hub-tower-hero:after{content:"";position:absolute;top:0;right:0;width:300px;height:100%;background:radial-gradient(circle at 80% 50%,rgba(255,215,0,.15),transparent 70%);pointer-events:none}.hub-tower-content{max-width:650px;z-index:2}.hub-tower-tag{display:inline-flex;align-items:center;gap:6px;background:var(--rpg-gold-gradient);color:#2d1400;font-size:.75rem;font-weight:900;padding:4px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px;box-shadow:0 2px 10px #ffc10766}.hub-tower-title{font-size:2.2rem;font-weight:900;color:#fff;margin:0 0 8px;text-shadow:0 2px 12px rgba(0,0,0,.8);display:flex;align-items:center;gap:12px}.hub-tower-desc{font-size:.95rem;color:#ffffffbf;line-height:1.6;margin-bottom:20px}.hub-tower-progress-box{background:#00000073;border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:14px 18px;max-width:480px;margin-bottom:20px}.hub-progress-header{display:flex;justify-content:space-between;font-size:.82rem;font-weight:800;color:#ffffffd9;margin-bottom:8px}.hub-progress-bar{width:100%;height:10px;background:#ffffff1f;border-radius:5px;overflow:hidden}.hub-progress-fill{height:100%;background:var(--rpg-gold-gradient);border-radius:5px;box-shadow:0 0 10px #ffd70099;transition:width .6s ease}.hub-tower-cta{background:linear-gradient(135deg,gold,#ffa000);border:none;color:#261100;font-size:1.1rem;font-weight:900;padding:14px 34px;border-radius:16px;cursor:pointer;box-shadow:0 8px 24px #ffa50080,inset 0 2px #ffffff80;display:inline-flex;align-items:center;gap:10px;transition:all .25s cubic-bezier(.34,1.56,.64,1);letter-spacing:.5px}.hub-tower-cta:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 12px 32px #ffa500b3}.hub-tower-graphic{font-size:8rem;filter:drop-shadow(0 0 35px rgba(255,215,0,.4));animation:rpgFloatGlow 4s ease-in-out infinite;user-select:none}.hub-section-title{font-size:1.35rem;font-weight:900;color:#fff;display:flex;align-items:center;gap:10px;margin-bottom:16px;letter-spacing:.5px}.hub-section-title span{font-size:1.4rem}.hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.hub-card{background:var(--rpg-bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1.5px solid rgba(255,255,255,.12);border-radius:20px;padding:20px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden;min-height:160px}.hub-card:hover:not(.locked){transform:translateY(-5px) scale(1.02);border-color:var(--card-glow, rgba(255, 215, 0, .6));box-shadow:0 12px 32px #00000080,0 0 20px var(--card-glow, rgba(255, 215, 0, .25));background:var(--rpg-bg-card-hover)}.hub-card.locked{opacity:.65;filter:grayscale(.4);cursor:not-allowed}.hub-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.hub-card-icon{width:52px;height:52px;border-radius:16px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;font-size:2rem;box-shadow:inset 0 2px 6px #0000004d}.hub-card-badge{padding:4px 10px;border-radius:12px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.hub-card-name{font-size:1.15rem;font-weight:800;color:#fff;margin-bottom:4px}.hub-card-sub{font-size:.8rem;color:#fff9;line-height:1.4;margin-bottom:16px}.hub-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}.hub-card-action{font-size:.82rem;font-weight:800;color:var(--rpg-gold);display:flex;align-items:center;gap:4px}.smart-quest-capsule{position:fixed;bottom:24px;left:24px;z-index:800}.quest-capsule-btn{background:linear-gradient(135deg,#16122cf2,#28194be6);border:1.5px solid rgba(255,215,0,.4);backdrop-filter:blur(14px);border-radius:30px;padding:8px 18px 8px 12px;display:flex;align-items:center;gap:10px;cursor:pointer;box-shadow:0 8px 24px #00000080,0 0 15px #ffd70033;transition:all .25s ease;color:#fff}.quest-capsule-btn:hover{transform:translateY(-2px) scale(1.03);border-color:var(--rpg-gold);box-shadow:0 10px 28px #0009,0 0 20px #ffd70059}.quest-capsule-dot{width:10px;height:10px;border-radius:50%;background:#10b981;box-shadow:0 0 8px #10b981;animation:beaconPulse 1.5s infinite}.quest-capsule-text{font-size:.85rem;font-weight:800;letter-spacing:.3px}.mobile-bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;height:64px;background:#0d0b1cf0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1.5px solid rgba(255,215,0,.25);z-index:1000;align-items:center;justify-content:space-around;padding:0 8px;box-shadow:0 -4px 20px #00000080}.mob-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:transparent;border:none;color:#fff9;cursor:pointer;padding:6px 10px;border-radius:12px;transition:all .2s ease}.mob-nav-item.active{color:var(--rpg-gold);transform:translateY(-2px)}.mob-nav-icon{font-size:1.35rem;line-height:1}.mob-nav-label{font-size:.65rem;font-weight:800;letter-spacing:.3px}@media(max-width:768px){.mobile-bottom-nav{display:flex}.smart-quest-capsule{bottom:124px;left:12px}.modern-hud-header{padding:6px 12px}.hud-inner{gap:8px;flex-wrap:nowrap}.hud-brand-group{gap:8px}.hud-logo{gap:6px}.hud-logo-img{height:28px}.hud-logo-text{font-size:.95rem;line-height:1.1}.hud-logo-subtitle{display:none!important}.sidebar-toggle{display:flex!important;width:32px;height:32px;font-size:1.25rem;align-items:center;justify-content:center}.hud-resources{display:flex!important;gap:6px;align-items:center}.hud-pill{padding:3px 8px 3px 5px;gap:4px;border-radius:14px}.hud-pill-icon{width:20px;height:20px;font-size:.75rem}.hud-pill-val{font-size:.78rem}.hud-actions-group{gap:6px}.hud-btn{width:32px;height:32px;font-size:1rem;border-radius:10px}.hud-user-profile{padding:0;border:none;background:transparent}.hud-avatar-ring{width:32px;height:32px;padding:1.5px}.hud-avatar-inner{font-size:1.05rem}.modern-map-wrapper{min-height:calc(100vh - 110px);min-height:calc(100dvh - 110px)}.quick-hub-container{padding-bottom:90px}.hub-tower-hero{flex-direction:column;padding:20px;text-align:center}.hub-tower-title{font-size:1.6rem;justify-content:center}.hub-tower-graphic{font-size:5rem}}@media(max-width:480px){.modern-hud-header{padding:5px 8px}.hud-inner{gap:5px}.hud-brand-group{gap:6px}.hud-logo-img{height:26px}.hud-logo-text{font-size:.88rem}.hud-resources{gap:4px}.hud-pill{padding:2px 6px 2px 4px;gap:3px}.hud-pill-icon{width:18px;height:18px;font-size:.7rem}.hud-pill-val{font-size:.72rem}.hud-btn{width:30px;height:30px;font-size:.95rem}.hud-avatar-ring{width:30px;height:30px}}@media(max-width:350px){.hud-logo-text span:last-child{display:none}.hud-pill--coins{display:none!important}.hud-pill-tag{display:none}}.sky-ambience-container{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:5}.sky-cloud{position:absolute;background:radial-gradient(ellipse at center,rgba(255,255,255,.45) 0%,rgba(255,255,255,.18) 50%,transparent 80%);filter:blur(14px);border-radius:50%;opacity:.6;animation:driftCloud linear infinite;pointer-events:none}.sky-cloud--1{width:320px;height:90px;top:15%;left:-320px;animation-duration:48s}.sky-cloud--2{width:450px;height:120px;top:65%;left:-450px;animation-duration:62s;animation-delay:-20s;opacity:.4}.sky-cloud--3{width:260px;height:80px;bottom:5%;left:-260px;animation-duration:38s;animation-delay:-10s;opacity:.5}@keyframes driftCloud{0%{transform:translate(0)}to{transform:translate(calc(100vw + 500px))}}.sky-sunbeams{position:absolute;top:-50px;left:0;width:60%;height:60%;background:radial-gradient(circle at 10% 10%,rgba(255,240,180,.18) 0%,rgba(255,220,120,.08) 40%,transparent 70%);pointer-events:none;mix-blend-mode:screen}.hud-mode-switcher{display:inline-flex;align-items:center;background:#0f172ab3;border:1.5px solid rgba(255,215,0,.4);border-radius:20px;padding:2px 4px;gap:3px;margin-left:10px;box-shadow:0 4px 14px #00000059;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.hud-mode-pill{background:transparent;border:none;color:#ffffffbf;font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:14px;cursor:pointer;transition:all .22s ease;display:flex;align-items:center;gap:4px;white-space:nowrap;outline:none}.hud-mode-pill:hover{color:#fff;background:#ffffff1f}.hud-mode-pill.active{background:linear-gradient(135deg,gold,#ff9f43);color:#111;box-shadow:0 2px 10px #ffa0008c;font-weight:800}.hud-time-switcher{display:none!important}.hud-time-pill{background:transparent;border:none;font-size:.85rem;padding:3px 6px;border-radius:12px;cursor:pointer;transition:all .2s cubic-bezier(.34,1.56,.64,1);outline:none;line-height:1;display:inline-flex;align-items:center;justify-content:center;filter:grayscale(.5);opacity:.75}.hud-time-pill:hover{transform:scale(1.18);filter:grayscale(0);opacity:1;background:#ffffff26}.hud-time-pill.active{filter:grayscale(0);opacity:1;background:#ffffff40;box-shadow:0 0 10px #ffd70080;transform:scale(1.12)}.multirealm-wrapper{position:relative;width:100%;height:calc(100vh - 60px);overflow:hidden;user-select:none;background:#0a0f24;transition:background .8s ease}body.time-dawn .multirealm-wrapper{background:#3b1d54}body.time-day .multirealm-wrapper{background:#1e3a8a}body.time-sunset .multirealm-wrapper{background:#450a0a}body.time-night .multirealm-wrapper{background:#030712}.supermap-sky-layer{position:absolute;inset:-150px;pointer-events:none;z-index:1;will-change:transform}.sky-celestial-body{position:absolute;border-radius:50%;pointer-events:none;transition:all .8s ease}.time-dawn .sky-celestial-body{width:140px;height:140px;bottom:22%;left:45%;background:radial-gradient(circle,#FFF7ED 0%,#FFEDD5 40%,#FDBA74 70%,transparent 100%);box-shadow:0 0 80px 30px #fdba74b3,0 0 160px 60px #f472b666;opacity:.95}.time-day .sky-celestial-body{width:160px;height:160px;top:6%;left:18%;background:radial-gradient(circle,#FFFFFF 0%,#FEF08A 45%,#FBBF24 75%,transparent 100%);box-shadow:0 0 100px 40px #fef08ad9,0 0 200px 80px #fbbf2473;opacity:1}.time-sunset .sky-celestial-body{width:180px;height:180px;bottom:18%;left:48%;background:radial-gradient(circle,#FFFBEB 0%,#FDE047 30%,#F97316 70%,#DC2626 95%,transparent 100%);box-shadow:0 0 100px 40px #f97316cc,0 0 220px 90px #dc262680;opacity:.95}.time-night .sky-celestial-body{width:120px;height:120px;top:10%;right:18%;background:radial-gradient(circle,#FFFFFF 0%,#E0E7FF 50%,#C7D2FE 80%,transparent 100%);box-shadow:0 0 60px 25px #e0e7ffa6,0 0 140px 60px #818cf84d;opacity:.95}.sky-stars-layer{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .8s ease;background-image:radial-gradient(2px 2px at 15% 15%,#ffffff 100%,transparent),radial-gradient(2px 2px at 45% 25%,#ffd700 100%,transparent),radial-gradient(3px 3px at 75% 18%,#ffffff 100%,transparent),radial-gradient(1.5px 1.5px at 85% 45%,#93c5fd 100%,transparent),radial-gradient(2.5px 2.5px at 25% 65%,#ffffff 100%,transparent),radial-gradient(2px 2px at 60% 75%,#fbcfe8 100%,transparent),radial-gradient(3px 3px at 35% 85%,#fde047 100%,transparent),radial-gradient(1.5px 1.5px at 90% 88%,#ffffff 100%,transparent),radial-gradient(2px 2px at 10% 40%,#c4b5fd 100%,transparent),radial-gradient(2px 2px at 55% 10%,#ffffff 100%,transparent);background-size:600px 600px;animation:starsTwinkleAnim 4s ease-in-out infinite alternate}.time-night .sky-stars-layer{opacity:1}.time-sunset .sky-stars-layer{opacity:.45}@keyframes starsTwinkleAnim{0%{opacity:.65;transform:scale(1)}to{opacity:1;transform:scale(1.02)}}.supermap-viewport{position:absolute;inset:0;overflow:hidden;cursor:grab;z-index:5}.supermap-viewport.is-dragging{cursor:grabbing}.supermap-world{position:absolute;width:2000px;height:1300px;transform-origin:0 0;will-change:transform;pointer-events:auto;background:url(/img/map/sky/sky-day.jpg) center center / cover no-repeat;transition:background-image .8s cubic-bezier(.4,0,.2,1);border-radius:24px}body.time-dawn .supermap-world,.multirealm-wrapper.time-dawn .supermap-world{background-image:url(/img/map/sky/sky-dawn.jpg)}body.time-day .supermap-world,.multirealm-wrapper.time-day .supermap-world{background-image:url(/img/map/sky/sky-day.jpg)}body.time-sunset .supermap-world,.multirealm-wrapper.time-sunset .supermap-world{background-image:url(/img/map/sky/sky-sunset.jpg)}body.time-night .supermap-world,.multirealm-wrapper.time-night .supermap-world{background-image:url(/img/map/sky/sky-night.jpg)}.supermap-particles{position:absolute;inset:0;pointer-events:none;z-index:15;overflow:hidden}.ambient-particle{position:absolute;width:4px;height:4px;border-radius:50%;background:radial-gradient(circle,#ffd700e6,#ffd70000);box-shadow:0 0 6px 2px #ffd70066;animation:particleFloat var(--p-dur, 8s) ease-in-out infinite;animation-delay:var(--p-delay, 0s);opacity:0}.time-night .ambient-particle{background:radial-gradient(circle,#93c5fde6,#93c5fd00);box-shadow:0 0 6px 2px #93c5fd66}.time-sunset .ambient-particle{background:radial-gradient(circle,#fb923ce6,#fb923c00);box-shadow:0 0 6px 2px #fb923c66}@keyframes particleFloat{0%{transform:translate(0) scale(0);opacity:0}15%{opacity:.8;transform:translate(var(--p-dx, 30px),var(--p-dy, -60px)) scale(1)}50%{opacity:.6;transform:translate(calc(var(--p-dx, 30px) * 2),calc(var(--p-dy, -60px) * 1.5)) scale(.8)}85%{opacity:.3;transform:translate(calc(var(--p-dx, 30px) * 2.5),calc(var(--p-dy, -60px) * 2)) scale(.5)}to{transform:translate(calc(var(--p-dx, 30px) * 3),calc(var(--p-dy, -60px) * 2.5)) scale(0);opacity:0}}.supermap-connections{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:6}.starlight-bridge{fill:none;stroke-width:3;stroke-dasharray:12 8;stroke-linecap:round;filter:drop-shadow(0 0 8px rgba(255,215,0,.6)) drop-shadow(0 0 16px rgba(255,215,0,.3));animation:starlightDashAnim 25s linear infinite;opacity:.65}.time-night .starlight-bridge{filter:drop-shadow(0 0 10px rgba(147,197,253,.7)) drop-shadow(0 0 20px rgba(99,102,241,.4));opacity:.85}@keyframes starlightDashAnim{to{stroke-dashoffset:-1000}}.super-floating-island{position:absolute;transform:translate(-50%,-50%);z-index:10;cursor:pointer;user-select:none;transition:filter .3s ease,z-index 0s}.super-floating-island:hover{z-index:30}.island-float-group{display:flex;flex-direction:column;align-items:center;animation:superIslandFloat 5s ease-in-out infinite alternate;transition:transform .35s cubic-bezier(.34,1.56,.64,1)}.super-floating-island:hover .island-float-group{transform:scale(1.06) translateY(-8px)}@keyframes superIslandFloat{0%{transform:translateY(0)}to{transform:translateY(-14px)}}.island-crest-badge{background:linear-gradient(135deg,#0f0a23d9,#1e0f37cc);border:1.5px solid rgba(255,215,0,.5);border-radius:20px;padding:5px 14px;display:flex;align-items:center;gap:6px;box-shadow:0 6px 20px #0009,0 0 15px var(--island-glow, rgba(255, 215, 0, .4)),inset 0 1px #ffffff1f;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);margin-bottom:-8px;z-index:25;transition:all .3s cubic-bezier(.34,1.56,.64,1);opacity:0;transform:translateY(8px) scale(.9);animation:crestFadeIn .5s ease forwards;animation-delay:var(--island-delay, 0s)}@keyframes crestFadeIn{to{opacity:1;transform:translateY(0) scale(1)}}.super-floating-island:hover .island-crest-badge{transform:translateY(-6px) scale(1.08);box-shadow:0 10px 30px #000000bf,0 0 28px var(--island-glow, #FFD700),inset 0 1px #fff3;border-color:var(--island-glow, #FFD700)}.crest-icon{font-size:.95rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.crest-text{font-size:.7rem;font-weight:800;letter-spacing:.8px;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.8);white-space:nowrap}.island-card-frame{position:relative;width:300px;display:flex;flex-direction:column;align-items:center;padding-top:8px}.island-art-wrap{position:relative;width:280px;height:220px;display:flex;align-items:center;justify-content:center;z-index:14;transition:transform .4s cubic-bezier(.34,1.56,.64,1),filter .4s ease}.super-floating-island:hover .island-art-wrap{transform:scale(1.08) translateY(-6px)}.island-sprite-art{max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 14px 28px rgba(0,0,0,.65)) drop-shadow(0 0 16px var(--island-glow, rgba(255, 215, 0, .35)));transition:filter .35s ease}.super-floating-island:hover .island-sprite-art{filter:drop-shadow(0 18px 36px rgba(0,0,0,.75)) drop-shadow(0 0 26px var(--island-glow, #FFD700)) drop-shadow(0 0 45px var(--island-glow, rgba(255, 215, 0, .45)))}.island-aura-glow{position:absolute;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,var(--island-glow, rgba(255, 215, 0, .25)) 0%,transparent 65%);filter:blur(28px);opacity:.4;z-index:-1;pointer-events:none;animation:auraGlowPulse 3s ease-in-out infinite alternate}@keyframes auraGlowPulse{0%{opacity:.3;transform:scale(1)}to{opacity:.65;transform:scale(1.15)}}.super-floating-island:hover .island-aura-glow{opacity:.85;transform:scale(1.25);animation-play-state:paused}.island-floating-crown{position:absolute;top:-18px;font-size:2.1rem;filter:drop-shadow(0 0 14px rgba(255,215,0,.95)) drop-shadow(0 4px 8px rgba(0,0,0,.6));animation:floatingCrownAnim 2.5s ease-in-out infinite alternate}@keyframes floatingCrownAnim{0%{transform:translateY(0) scale(1) rotate(-3deg)}to{transform:translateY(-8px) scale(1.1) rotate(3deg)}}.island-name-plaque{position:relative;background:linear-gradient(135deg,gold,#f59e0b,#d97706);border:2px solid rgba(255,255,255,.9);border-radius:24px;padding:6px 18px;text-align:center;box-shadow:0 6px 18px #00000080,0 0 16px #ffd70073,inset 0 1.5px #fff9,inset 0 -1.5px #00000026;z-index:20;margin-top:-6px;transition:all .3s cubic-bezier(.34,1.56,.64,1);min-width:170px}.super-floating-island:hover .island-name-plaque{transform:translateY(-3px) scale(1.04);box-shadow:0 10px 26px #000000a6,0 0 24px #ffd700a6,inset 0 1.5px #ffffffb3,inset 0 -1.5px #00000026}.plaque-title{font-size:.85rem;font-weight:900;color:#1a1302;letter-spacing:.4px;text-shadow:0 1px 1px rgba(255,255,255,.8);white-space:nowrap}.plaque-sub{font-size:.64rem;font-weight:700;color:#1a1302d9;margin-top:1px;white-space:nowrap}.island-actions-dock{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px;z-index:22;opacity:0;transform:translateY(8px);transition:opacity .35s ease,transform .35s ease}.super-floating-island:hover .island-actions-dock{opacity:1;transform:translateY(0)}.super-floating-island.island--focused{z-index:60}.super-floating-island.island--focused .island-float-group{transform:scale(1.16) translateY(-14px)}.super-floating-island.island--focused .island-art-wrap{transform:scale(1.08)}.super-floating-island.island--focused .island-sprite-art{filter:drop-shadow(0 26px 48px rgba(0,0,0,.8)) drop-shadow(0 0 35px var(--island-glow, #FFD700)) drop-shadow(0 0 65px var(--island-glow, rgba(255, 215, 0, .5)))}.super-floating-island.island--focused .island-aura-glow{opacity:.95;transform:scale(1.4)}.super-floating-island.island--focused .island-name-plaque{transform:translateY(-5px) scale(1.07);box-shadow:0 16px 40px #000000b3,0 0 35px #ffd700e6}.super-floating-island.island--focused .island-actions-dock{opacity:1;transform:translateY(0)}.super-floating-island.island--focused .super-island-action{animation:focusedActionPulse 1.8s ease-in-out infinite alternate}@keyframes focusedActionPulse{0%{box-shadow:0 4px 16px #00000080,0 0 10px var(--island-glow, #FFD700);transform:scale(1)}to{box-shadow:0 8px 26px #0009,0 0 24px var(--island-glow, #FFD700);transform:scale(1.06)}}.super-floating-island.island--dimmed{opacity:.52;filter:blur(1.5px) brightness(.85);transition:all .5s cubic-bezier(.4,0,.2,1)}.super-island-action{background:linear-gradient(135deg,#0f0a23eb,#231446e0);border:1.5px solid var(--island-glow, rgba(255, 215, 0, .6));border-radius:18px;padding:6px 14px;color:#fff;font-size:.78rem;font-weight:800;cursor:pointer;box-shadow:0 4px 16px #00000080,inset 0 1px #ffffff14;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .25s cubic-bezier(.34,1.56,.64,1);display:inline-flex;align-items:center;gap:6px;outline:none;white-space:nowrap}.super-island-action:hover{background:linear-gradient(135deg,gold,#f59e0b);color:#111;border-color:#fff;transform:translateY(-3px) scale(1.06);box-shadow:0 8px 24px #ffb40099,0 0 12px #ffd70066}.super-island-action.action--locked,.super-island-action.action--activity-locked{opacity:.65;border-color:#ef444480;background:#140a14e6;filter:grayscale(.3)}.action-lock-badge{font-size:.68rem;padding:1px 5px;border-radius:8px;background:#ef444466;border:1px solid rgba(248,113,113,.6);color:#fca5a5;font-weight:700}.action-lock-badge--activity{background:#ea580c66;border-color:#fb923c99;color:#fdba74}.supermap-quick-dock{position:absolute;bottom:20px;left:50%;transform:translate(-50%);z-index:50;max-width:95vw}.quick-dock-container{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#0a0f24e0,#19143cd9);border:1.5px solid rgba(255,215,0,.35);border-radius:36px;padding:6px 14px;box-shadow:0 12px 40px #000000bf,0 0 20px #ffd70026,inset 0 1px #ffffff14;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.quick-dock-scroll{display:flex;align-items:center;gap:6px;overflow-x:auto;scrollbar-width:none;max-width:72vw}.quick-dock-scroll::-webkit-scrollbar{display:none}.quick-dock-btn{background:transparent;border:1px solid transparent;border-radius:24px;padding:6px 14px;color:#ffffffc7;font-size:.78rem;font-weight:700;cursor:pointer;transition:all .2s cubic-bezier(.2,.8,.2,1);display:flex;align-items:center;gap:6px;white-space:nowrap;outline:none}.quick-dock-btn:hover{background:#ffffff1f;color:#fff;transform:translateY(-2px)}.quick-dock-btn.active{background:linear-gradient(135deg,gold,#f59e0b);color:#111;font-weight:800;border-color:#ffe066;box-shadow:0 4px 16px #ffb4008c;transform:translateY(-2px) scale(1.04)}.dock-btn-icon{font-size:.95rem}.quick-dock-controls{display:flex;align-items:center;gap:4px;padding-left:8px;border-left:1px solid rgba(255,255,255,.12)}.supermap-center-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.18);border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.8rem;cursor:pointer;transition:all .2s ease;outline:none}.supermap-center-btn:hover{background:#ffd70040;border-color:gold;transform:scale(1.1);box-shadow:0 0 10px #ffd7004d}@media(max-width:768px){.hud-mode-switcher{margin-left:4px}.hud-mode-pill{padding:3px 6px;font-size:.65rem}.hud-time-switcher{margin-left:4px}.hud-time-pill{font-size:.75rem;padding:2px 4px}.quick-dock-container{padding:4px 8px;gap:6px}.quick-dock-btn{padding:4px 8px;font-size:.7rem}.quick-dock-btn .dock-btn-name{display:none}.quick-dock-btn.active .dock-btn-name{display:inline}.supermap-center-btn{width:28px;height:28px;font-size:.72rem}.island-card-frame{width:290px}.island-art-wrap{width:250px;height:220px}.island-name-plaque{padding:6px 16px;min-width:180px}.plaque-title{font-size:.86rem}.island-actions-dock{opacity:1;transform:translateY(0)}}#hall-modal .modal-content,#shop-modal .modal-content,#wheel-modal .modal-content,#mountain-modal .modal-content,#garden-modal .modal-content,#pond-modal .modal-content{background:radial-gradient(ellipse at top center,#1e163cf5,#0d0a1cfa)!important;border:1.5px solid rgba(255,215,0,.35)!important;border-radius:24px!important;box-shadow:0 20px 60px #000c,0 0 40px #6c5ce740,inset 0 1px #fff3!important;backdrop-filter:blur(24px)!important;-webkit-backdrop-filter:blur(24px)!important;color:#f1f2f6;overflow:hidden}.modal-title>span{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;vertical-align:middle}.modal-title>span svg{width:100%;height:100%;filter:drop-shadow(0 2px 8px rgba(255,215,0,.5))}#hall-modal .modal-body::-webkit-scrollbar,#shop-modal .modal-body::-webkit-scrollbar,#wheel-modal .modal-body::-webkit-scrollbar,#mountain-modal .modal-body::-webkit-scrollbar,#garden-modal .modal-body::-webkit-scrollbar,#pond-modal .modal-body::-webkit-scrollbar{width:6px}#hall-modal .modal-body::-webkit-scrollbar-thumb,#shop-modal .modal-body::-webkit-scrollbar-thumb,#wheel-modal .modal-body::-webkit-scrollbar-thumb,#mountain-modal .modal-body::-webkit-scrollbar-thumb,#garden-modal .modal-body::-webkit-scrollbar-thumb,#pond-modal .modal-body::-webkit-scrollbar-thumb{background:#ffd7004d;border-radius:10px}.landmark-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(180deg,#ffffff14,#ffffff05);border-bottom:1.5px solid rgba(255,215,0,.25)}.landmark-header-left{display:flex;align-items:center;gap:12px}.landmark-header-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;filter:drop-shadow(0 2px 8px rgba(255,215,0,.5))}.landmark-header-icon svg{width:100%;height:100%}.landmark-header-title{font-size:1.25rem;font-weight:800;letter-spacing:.5px;background:linear-gradient(135deg,#fff9c4,gold,#ffa000);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 2px 10px rgba(255,215,0,.3)}.landmark-header-sub{font-size:.72rem;color:#ffffffa6;font-weight:500}.pantheon-container{padding:10px 6px}.podium-wrap{display:flex;align-items:flex-end;justify-content:center;gap:14px;margin:12px auto 20px;max-width:480px;padding:14px 10px 0}.podium-slot{flex:1;display:flex;flex-direction:column;align-items:center;position:relative;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.podium-slot:hover{transform:translateY(-6px)}.podium-crown{font-size:1.4rem;margin-bottom:-6px;z-index:2;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5));animation:crownFloat 2.4s ease-in-out infinite}@keyframes crownFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.podium-avatar{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.35rem;font-weight:800;position:relative;box-shadow:0 4px 15px #00000080}.podium-slot--1 .podium-avatar{width:62px;height:62px;font-size:1.6rem;background:linear-gradient(135deg,#ffe57f,#ffc107);border:3px solid #FFF59D;box-shadow:0 0 25px #ffd70099}.podium-slot--2 .podium-avatar{background:linear-gradient(135deg,#e2e8f0,#94a3b8);border:3px solid #F1F5F9;box-shadow:0 0 18px #94a3b880}.podium-slot--3 .podium-avatar{background:linear-gradient(135deg,#fdba74,#c2410c);border:3px solid #FFEDD5;box-shadow:0 0 18px #ea580c80}.podium-name{font-size:.82rem;font-weight:700;margin-top:6px;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.podium-val{font-size:.72rem;font-weight:800;color:gold;margin-bottom:6px}.podium-base{width:100%;border-radius:12px 12px 4px 4px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:900;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.6);box-shadow:inset 0 2px #ffffff4d}.podium-slot--1 .podium-base{height:70px;background:linear-gradient(180deg,#ffc10759,#ffa00026);border:1.5px solid rgba(255,215,0,.5)}.podium-slot--2 .podium-base{height:52px;background:linear-gradient(180deg,#94a3b84d,#47556926);border:1.5px solid rgba(203,213,225,.4)}.podium-slot--3 .podium-base{height:40px;background:linear-gradient(180deg,#d977064d,#92400e26);border:1.5px solid rgba(251,146,60,.4)}.modern-tabs{display:flex;gap:8px;margin-bottom:12px;background:#ffffff0d;padding:4px;border-radius:14px;border:1px solid rgba(255,255,255,.1)}.modern-tab{flex:1;padding:8px 12px;border:none;background:transparent;color:#fff9;font-weight:700;font-size:.82rem;border-radius:10px;cursor:pointer;transition:all .25s ease;display:flex;align-items:center;justify-content:center;gap:6px}.modern-tab:hover{color:#fff;background:#ffffff14}.modern-tab.active{background:linear-gradient(135deg,#6c5ce7,#a855f7);color:#fff;box-shadow:0 4px 15px #6c5ce766}.leaderboard-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.leaderboard-row{display:flex;align-items:center;gap:12px;padding:8px 14px;border-radius:12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);transition:all .2s ease}.leaderboard-row:hover{background:#ffffff14;transform:translate(4px);border-color:#ffd7004d}.leaderboard-row.current-user{background:linear-gradient(90deg,#6c5ce740,#a855f726);border:1.5px solid rgba(168,85,247,.6);box-shadow:0 0 15px #a855f740}.leaderboard-rank{font-weight:800;font-size:.95rem;min-width:28px;text-align:center}.leaderboard-name{flex:1;font-weight:600;font-size:.88rem;color:#f1f2f6}.leaderboard-score{font-weight:800;font-size:.88rem;color:gold}.shop-currency-bar{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}.shop-currency-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;background:#ffffff0f;border:1px solid rgba(255,255,255,.15);font-size:.82rem;font-weight:700;box-shadow:inset 0 1px #ffffff1a}.shop-currency-pill--stars{border-color:#ffd70066;color:#ffe082;background:#ffd70014}.shop-currency-pill--coins{border-color:#fb923c66;color:#fdba74;background:#fb923c14}.shop-currency-pill--tickets{border-color:#34d39966;color:#6ee7b7;background:#34d39914}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;max-height:52vh;overflow-y:auto;padding:4px}.shop-card{border-radius:16px;background:#ffffff0a;border:1.5px solid rgba(255,255,255,.1);padding:12px;text-align:center;display:flex;flex-direction:column;justify-content:space-between;transition:all .25s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden}.shop-card:hover{transform:translateY(-4px);background:#ffffff12;box-shadow:0 8px 24px #00000080}.shop-card[data-category=special],.shop-card.rarity-epic{border-color:#a855f780;box-shadow:0 0 16px #a855f733}.shop-card[data-category=dragon],.shop-card.rarity-legendary{border-color:#ffd70080;box-shadow:0 0 18px #ffd70033}.shop-card[data-category=garden]{border-color:#34d39980}.shop-card-icon{width:64px;height:64px;margin:4px auto 8px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.12) 0%,transparent 70%)}.shop-card-name{font-size:.88rem;font-weight:700;color:#fff;margin-bottom:4px}.shop-card-price{font-size:.95rem;font-weight:800;color:gold;margin:6px 0}.shop-stepper-box{display:flex;align-items:center;justify-content:center;gap:4px;background:#00000040;border-radius:10px;padding:3px 6px;border:1px solid rgba(255,255,255,.12)}.shop-stepper-btn{width:26px;height:26px;border:none;border-radius:6px;background:#ffffff1f;color:#fff;font-weight:700;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.shop-stepper-btn:hover:not(:disabled){background:#6c5ce799}.shop-stepper-input{width:32px;text-align:center;border:none;background:transparent;color:#fff;font-weight:800;font-size:.85rem}.wheel-stage-wrapper{position:relative;padding:10px;text-align:center}.wheel-container{position:relative;width:340px;height:340px;margin:0 auto;border-radius:50%;padding:8px;background:radial-gradient(circle,#ffd70026,#0d0a1ccc 70%);box-shadow:0 0 35px #ffd70059,inset 0 0 20px #0009;border:3px solid rgba(255,215,0,.5)}.wheel-pointer{position:absolute;top:-12px;left:50%;transform:translate(-50%);width:0;height:0;border-left:14px solid transparent;border-right:14px solid transparent;border-top:28px solid #FF4757;z-index:10;filter:drop-shadow(0 4px 8px rgba(0,0,0,.6))}.wheel-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,gold,#ffa000);border:3px solid #FFF59D;display:flex;align-items:center;justify-content:center;font-size:1.4rem;box-shadow:0 0 20px #ffd700cc;z-index:5}.wheel-spin-btn{padding:12px 36px;font-size:1.15rem;font-weight:800;border-radius:30px;border:2px solid rgba(255,255,255,.4);background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff;cursor:pointer;box-shadow:0 8px 25px #2ecc7173;transition:all .25s ease;letter-spacing:.5px}.wheel-spin-btn:hover:not(:disabled){transform:scale(1.06) translateY(-2px);box-shadow:0 10px 30px #2ecc71a6}.wheel-spin-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.mountain-gateway-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:10px 4px}@media(max-width:600px){.mountain-gateway-grid{grid-template-columns:1fr}}.mountain-portal-card{border-radius:18px;padding:18px 16px;cursor:pointer;display:flex;align-items:center;gap:14px;background:#ffffff0d;border:1.5px solid rgba(255,255,255,.12);position:relative;overflow:hidden;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.mountain-portal-card:hover{transform:translateY(-5px) scale(1.02);background:#ffffff14;box-shadow:0 10px 30px #0006}.mountain-portal-icon{font-size:2.2rem;flex-shrink:0;filter:drop-shadow(0 4px 10px rgba(0,0,0,.5))}.mountain-portal-title{font-size:1.05rem;font-weight:800;color:#fff;margin-bottom:2px}.mountain-portal-desc{font-size:.75rem;color:#ffffffa6;line-height:1.4}.mountain-portal-arrow{margin-left:auto;font-size:1.2rem;color:#fff6;transition:transform .25s ease}.mountain-portal-card:hover .mountain-portal-arrow{transform:translate(4px);color:gold}.garden-terrace-wrapper{padding:6px}.garden-mascot-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:20px;background:#2ecc7126;border:1px solid rgba(46,204,113,.4);font-weight:700;font-size:.82rem;color:#7bed9f;margin-bottom:12px}.garden-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:440px;margin:0 auto 16px}.garden-plot-card{aspect-ratio:1 / 1;border-radius:16px;background:linear-gradient(180deg,#78350f99,#451a03cc);border:2px solid rgba(180,83,9,.4);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;cursor:pointer;box-shadow:0 6px 16px #0006,inset 0 2px 4px #ffffff1a;transition:all .25s cubic-bezier(.34,1.56,.64,1)}.garden-plot-card:hover{transform:translateY(-4px) scale(1.04);border-color:#f59e0b;box-shadow:0 10px 24px #0009,0 0 15px #f59e0b66}.garden-plot-card.can-harvest{border-color:#10b981;box-shadow:0 0 20px #10b98199;animation:harvestPulse 1.8s ease-in-out infinite}@keyframes harvestPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.school-quest-board{max-width:860px;margin:0 auto;padding:14px}.quest-milestone-bar{display:flex;align-items:center;justify-content:space-between;background:#ffffff0d;border:1.5px solid rgba(255,215,0,.3);border-radius:16px;padding:12px 18px;margin-bottom:18px}.quest-card-item{display:flex;align-items:center;gap:14px;padding:12px 16px;border-radius:14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.09);margin-bottom:8px;transition:all .2s ease}.quest-card-item:hover{background:#ffffff12;transform:translate(4px);border-color:#ffd7004d}.quest-card-icon{font-size:1.8rem;flex-shrink:0}.quest-card-info{flex:1}.quest-card-title{font-size:.92rem;font-weight:700;color:#fff}.quest-card-reward{font-size:.78rem;color:gold;font-weight:700;margin-top:2px}.expedition-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:800px;margin:20px auto}@media(max-width:650px){.expedition-hero-grid{grid-template-columns:1fr}}.expedition-hub-card{border-radius:22px;padding:32px 20px;text-align:center;cursor:pointer;background:#ffffff0d;border:2px solid rgba(255,255,255,.15);position:relative;overflow:hidden;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.expedition-hub-card:hover{transform:translateY(-8px) scale(1.03);box-shadow:0 16px 40px #0009}.expedition-hub-card--chess{border-color:#38bdf866}.expedition-hub-card--chess:hover{border-color:#38bdf8;box-shadow:0 16px 40px #0009,0 0 25px #38bdf859}.expedition-hub-card--dragon{border-color:#ef444466}.expedition-hub-card--dragon:hover{border-color:#ef4444;box-shadow:0 16px 40px #0009,0 0 25px #ef444459}.expedition-hub-icon{font-size:3.5rem;margin-bottom:12px;filter:drop-shadow(0 6px 12px rgba(0,0,0,.5))}.expedition-hub-title{font-size:1.25rem;font-weight:900;color:#fff;margin-bottom:6px;letter-spacing:.5px}.expedition-hub-desc{font-size:.8rem;color:#ffffffa6}#hvp-root{font-family:Be Vietnam Pro,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;box-sizing:border-box;z-index:10850}#hvp-root *,#hvp-root *:before,#hvp-root *:after{box-sizing:border-box}#hvp-root.hvp-hidden{display:none!important}.hvp-backdrop{position:fixed;inset:0;background:#0f1a169e;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:10840;opacity:0;pointer-events:none;transition:opacity .22s ease}.hvp-backdrop.is-active{opacity:1;pointer-events:auto}.hvp-mini-pill{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:10850;display:none;align-items:center;gap:8px;padding:9px 15px 9px 11px;border-radius:999px;background:linear-gradient(135deg,#fffaf0,#f4ebd9);color:#263e35;border:1.5px solid #c9b38c;box-shadow:0 8px 24px #153b3547,inset 0 1px #fff;font-size:12.5px;font-weight:800;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.hvp-mini-pill:hover{transform:translateY(-2px);border-color:#ad8545;box-shadow:0 12px 28px #153b355c,0 0 0 2px #ffe8a78c}.hvp-mini-pill-icon{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0;box-shadow:0 2px 6px #dc262659}.hvp-mini-pill-badge{background:#2f5e48;color:#fff9e8;font-size:10.5px;font-weight:800;padding:2px 7px;border-radius:999px}#hvp-root.is-pill .hvp-mini-pill{display:inline-flex}#hvp-root.is-pill .hvp-panel{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(16px) scale(.96)}.hvp-panel{position:fixed;z-index:10850;background:#fffcf5;color:#243830;border:1.5px solid #d5c4a1;box-shadow:0 16px 42px #122b2452,inset 0 1px #fff;display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .18s ease}.hvp-panel.hvp-panel--card{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));width:min(396px,calc(100vw - 16px));max-height:min(550px,calc(100dvh - 76px));border-radius:18px}.hvp-panel.hvp-panel--card.has-active-video{max-height:min(630px,calc(100dvh - 48px))}.hvp-panel.hvp-panel--mini{right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));width:min(362px,calc(100vw - 16px));max-height:calc(100dvh - 32px);border-radius:16px;border-color:#b89b67;box-shadow:0 18px 46px #0a1c167a,inset 0 1px #fff}.hvp-panel.hvp-panel--mini .hvp-header{padding:6px 10px}.hvp-panel.hvp-panel--mini .hvp-subtitle,.hvp-panel.hvp-panel--mini .hvp-sort-pill,.hvp-panel.hvp-panel--mini .hvp-browser,.hvp-panel.hvp-panel--mini .hvp-now-sub,.hvp-panel.hvp-panel--mini .hvp-play-guide.is-playing{display:none!important}.hvp-panel.hvp-panel--mini .hvp-watch-banner{padding:5px 10px;gap:3px}.hvp-panel.hvp-panel--mini .hvp-stage{display:flex;border-bottom:none}.hvp-panel.hvp-panel--mini .hvp-player-box{min-width:200px;min-height:205px;aspect-ratio:16 / 9}.hvp-panel.hvp-panel--mini .hvp-stage-meta{padding:7px 10px;gap:5px}.hvp-panel.hvp-panel--mini .hvp-now-title{font-size:11.5px;-webkit-line-clamp:1}.hvp-panel.hvp-panel--theater{inset:0;transform:none;width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0;border:none;box-shadow:none;z-index:11200}.hvp-panel--theater .hvp-header{padding:6px 14px}.hvp-panel--theater .hvp-subtitle,.hvp-panel--theater .hvp-sort-pill{display:none}.hvp-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;background:linear-gradient(180deg,#f8f1e0,#efe4cc);border-bottom:1px solid #dfd1b4;flex-shrink:0}.hvp-brand{display:flex;align-items:center;gap:9px;min-width:0}.hvp-brand-icon{width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;box-shadow:0 2px 8px #dc26264d}.hvp-brand-text{min-width:0}.hvp-title-row{display:flex;align-items:center;gap:6px}.hvp-title{margin:0;font-size:13px;font-weight:800;color:#233b32;letter-spacing:-.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hvp-sort-pill{display:inline-flex;align-items:center;gap:3px;padding:1.5px 6px;border-radius:999px;background:#e1efe6;color:#1f5c3f;border:1px solid #b8d8c5;font-size:9.5px;font-weight:800;white-space:nowrap}.hvp-subtitle{font-size:10.5px;color:#627264;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.hvp-header-actions{display:flex;align-items:center;gap:5px;flex-shrink:0}.hvp-hdr-btn{height:28px;padding:0 9px;border-radius:8px;border:1px solid #d5c5a7;background:#fffdf7;color:#324b3f;font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:4px;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .12s ease;white-space:nowrap}.hvp-hdr-btn:hover{background:#fff3d1;border-color:#b58d47;color:#1e3329}.hvp-hdr-btn--primary{background:#2f5e48;color:#fff9ec;border-color:#244b38}.hvp-hdr-btn--primary:hover{background:#234937;border-color:#1a382a;color:#fff}.hvp-hdr-btn--icon{width:28px;padding:0;font-size:13px}.hvp-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.hvp-panel--theater .hvp-body{flex-direction:row}.hvp-stage{display:none;flex-direction:column;background:#101b17;color:#f4f6f5;border-bottom:1px solid #d8c8ab;flex-shrink:0;scroll-behavior:smooth}.hvp-stage::-webkit-scrollbar{width:8px}.hvp-stage::-webkit-scrollbar-track{background:#0a1612b3}.hvp-stage::-webkit-scrollbar-thumb{background:#34d39973;border-radius:999px}.hvp-stage::-webkit-scrollbar-thumb:hover{background:#34d399bf}.hvp-panel.has-active-video .hvp-stage,.hvp-panel--theater .hvp-stage{display:flex}.hvp-panel--card.has-comments-open .hvp-stage,.hvp-panel--mini.has-comments-open .hvp-stage{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden}.hvp-panel--card.has-comments-open .hvp-browser{display:none}.hvp-panel--theater .hvp-stage{flex:1 1 auto;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;border-bottom:none;border-right:1px solid #dfd1b4;justify-content:flex-start}.hvp-player-box{position:relative;width:100%;min-width:200px;min-height:210px;aspect-ratio:16 / 9;background:#070d0b;overflow:hidden;flex-shrink:0}.hvp-panel--theater .hvp-player-box{flex:0 0 auto;width:100%;aspect-ratio:auto;height:calc(100dvh - 132px);min-height:460px}.hvp-panel--theater.has-comments-open .hvp-player-box{flex:0 0 auto;width:100%;aspect-ratio:auto;height:calc(100dvh - 210px);min-height:380px}.hvp-player-box iframe{position:absolute;inset:0;width:100%;height:100%;min-width:200px;min-height:205px;border:0}.hvp-play-guide{padding:5px 12px;font-size:10.5px;font-weight:800;color:#fde68a;background:#b4530959;border-top:1px solid rgba(251,191,36,.28);display:flex;align-items:center;justify-content:space-between;gap:6px;flex-shrink:0}.hvp-play-guide.is-verified-playing{display:none!important}.hvp-play-guide.is-playing{color:#a7f3d0;background:#05966952;border-top-color:#34d3994d}.hvp-play-guide.is-warning{color:#fecaca;background:#b91c1c7a;border-top-color:#f8717173}.hvp-unmute-inline-btn{padding:2px 8px;border-radius:999px;border:1px solid #f59e0b;background:#fef3c7;color:#92400e;font-size:10px;font-weight:800;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .14s ease}.hvp-unmute-inline-btn:hover{background:#fde68a;border-color:#d97706;transform:scale(1.03)}.hvp-player-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center;background:radial-gradient(circle at center,#1d352c,#0c1713);color:#e6efe9}.hvp-stage-meta{padding:8px 12px 14px;background:#162620;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:8px;flex-shrink:0}.hvp-panel--theater .hvp-stage-meta{padding:10px 16px 20px}.hvp-stage-top-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.hvp-stage-title-col{flex:1 1 260px;min-width:0;display:flex;flex-direction:column;gap:3px}.hvp-now-title{font-size:12.5px;font-weight:800;color:#fff9eb;line-height:1.3;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.hvp-panel--theater .hvp-now-title{font-size:14px}.hvp-now-sub{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:10.5px;color:#a9c1b6}.hvp-stage-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px}.hvp-stage-nav{display:flex;align-items:center;gap:6px;flex-shrink:0}.hvp-stage-btn{height:30px;padding:0 12px;border-radius:8px;border:1px solid rgba(255,255,255,.16);background:#ffffff14;color:#f1f5f3;font-size:11.5px;font-weight:800;display:inline-flex;align-items:center;gap:6px;cursor:pointer;text-decoration:none;transition:background .15s ease,border-color .15s ease}.hvp-stage-btn:hover{background:#ffffff29;border-color:#ffffff4d}.hvp-stage-btn--yt{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:#f87171;color:#fff}.hvp-stage-btn--yt:hover{background:linear-gradient(135deg,#f87171,#ef4444);border-color:#fca5a5}.hvp-stage-btn--gold{background:#f59e0b33;border-color:#f59e0b80;color:#fde68a}.hvp-stage-btn--gold:hover{background:#f59e0b52}.hvp-browser{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;background:#fffcf5}.hvp-panel--theater .hvp-browser{flex:0 0 308px;width:308px;max-width:308px}.hvp-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:7px 8px;background:#f5ecda;border-bottom:1px solid #e2d4b7;flex-shrink:0}.hvp-tab{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:6px 8px;border-radius:10px;border:1.5px solid #dccbb0;background:#fffaf0;color:#42594c;font-size:11px;font-weight:800;cursor:pointer;transition:all .16s ease;text-align:left;min-width:0}.hvp-tab:hover{border-color:#b99352;background:#fff5de}.hvp-tab.is-active{background:linear-gradient(135deg,#2d5c46,#204534);color:#fff9eb;border-color:#1c3d2e;box-shadow:0 3px 10px #20453440}.hvp-tab-label{display:flex;align-items:center;gap:5px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hvp-tab-count{font-size:10px;font-weight:800;padding:1.5px 6px;border-radius:999px;background:#2d5c461f;color:#2d5c46;flex-shrink:0}.hvp-tab.is-active .hvp-tab-count{background:#fff9eb33;color:#fde68a}.hvp-playlist-bar{display:none}.hvp-playlist-bar-desc{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.hvp-playlist-yt-link{display:inline-flex;align-items:center;gap:4px;color:#b91c1c;font-weight:800;font-size:11px;text-decoration:none;white-space:nowrap;flex-shrink:0}.hvp-playlist-yt-link:hover{text-decoration:underline}.hvp-search-row{display:none;align-items:center;gap:6px;padding:6px 8px;background:#f8efe0;border-bottom:1px solid #e6d8be;flex-shrink:0}.hvp-panel--theater .hvp-search-row{display:flex}.hvp-search-input{flex:1;min-width:0;height:28px;padding:0 10px;border-radius:8px;border:1px solid #d4c3a3;background:#fff;color:#233b32;font-size:11.5px;outline:none}.hvp-search-input:focus{border-color:#2d5c46;box-shadow:0 0 0 2px #2d5c4626}.hvp-filter-pills{display:none;align-items:center;gap:4px}.hvp-filter-pill{height:26px;padding:0 8px;border-radius:999px;border:1px solid #d4c3a3;background:#fffaf0;color:#4c6355;font-size:10.5px;font-weight:700;cursor:pointer}.hvp-filter-pill.is-active{background:#2d5c46;color:#fff;border-color:#2d5c46}.hvp-list{flex:1;min-height:0;overflow-y:auto;padding:8px 9px;display:flex;flex-direction:column;gap:6px}.hvp-list::-webkit-scrollbar{width:6px}.hvp-list::-webkit-scrollbar-thumb{background:#d2c09e;border-radius:999px}.hvp-item{display:flex;align-items:center;gap:9px;padding:7px 8px;border-radius:12px;border:1px solid #eadec7;background:#fff;transition:background .15s ease,border-color .15s ease,transform .12s ease;cursor:pointer}.hvp-item:hover{background:#fff6e0;border-color:#c8a86b}.hvp-item.is-playing{background:#e9f5ee;border-color:#2d6a4f;box-shadow:0 2px 8px #2d6a4f1f}.hvp-thumb-wrap{position:relative;width:96px;height:54px;border-radius:8px;overflow:hidden;background:#1b2a24;flex-shrink:0}.hvp-panel--theater .hvp-thumb-wrap{width:90px;height:51px}.hvp-thumb{width:100%;height:100%;object-fit:cover;display:block}.hvp-thumb-play{position:absolute;inset:0;background:#0c181359;color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;opacity:0;transition:opacity .15s ease}.hvp-item:hover .hvp-thumb-play,.hvp-item.is-playing .hvp-thumb-play{opacity:1}.hvp-item.is-playing .hvp-thumb-play{background:#1d5c3fad;font-size:13px;font-weight:800}.hvp-dur-badge{position:absolute;right:4px;bottom:4px;padding:1px 5px;border-radius:4px;background:#000000d1;color:#fff;font-size:9.5px;font-weight:700;line-height:1.3}.hvp-new-badge{position:absolute;left:4px;top:4px;padding:1px 5px;border-radius:4px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:8.5px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;box-shadow:0 1px 4px #00000059}.hvp-short-badge{display:inline-block;padding:1px 5px;border-radius:4px;background:#fee2e2;color:#b91c1c;font-size:9px;font-weight:800;margin-right:4px}.hvp-item-info{flex:1;min-width:0}.hvp-item-title{font-size:11.8px;font-weight:700;color:#21372e;line-height:1.32;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hvp-item.is-playing .hvp-item-title{color:#164e35;font-weight:800}.hvp-item-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-top:3px;font-size:10px;color:#6b7d70}.hvp-item-actions{display:flex;flex-direction:column;gap:4px;flex-shrink:0}.hvp-item-yt{width:28px;height:28px;border-radius:8px;border:1px solid #e5d5b8;background:#fff9ed;color:#b91c1c;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;text-decoration:none;transition:all .14s ease}.hvp-item-yt:hover{background:#fee2e2;border-color:#f87171;transform:scale(1.06)}.hvp-footer{display:none;align-items:center;justify-content:space-between;gap:8px;padding:8px 11px;background:#f5ecda;border-top:1px solid #e1d3b5;flex-shrink:0}.hvp-footer-btn{flex:1;height:32px;padding:0 10px;border-radius:10px;border:1px solid #2d5c46;background:linear-gradient(135deg,#2d5c46,#204534);color:#fff9eb;font-size:11.5px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:5px;cursor:pointer;text-decoration:none;transition:filter .15s ease}.hvp-footer-btn:hover{filter:brightness(1.08)}.hvp-footer-btn--yt{flex:0 0 auto;background:#fffdf8;color:#b91c1c;border-color:#deb8b8}.hvp-footer-btn--yt:hover{background:#fef2f2;border-color:#f87171}@media(max-width:860px){.hvp-panel.hvp-panel--theater{inset:0;width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}.hvp-panel--theater .hvp-body{flex-direction:column}.hvp-panel--theater .hvp-stage{flex:0 0 auto;border-right:none;border-bottom:1px solid #dfd1b4}.hvp-panel--theater.has-comments-open .hvp-stage{flex:1 1 auto;min-height:0;overflow-y:auto}.hvp-panel--theater.has-comments-open .hvp-browser{display:none}.hvp-panel--theater .hvp-player-box,.hvp-panel--theater.has-comments-open .hvp-player-box{height:auto;aspect-ratio:16 / 9;min-height:210px;flex:none}.hvp-panel--theater .hvp-browser{width:100%;max-width:none;flex:1}}@media(max-width:600px){.hvp-panel.hvp-panel--card{right:10px;left:10px;bottom:12px;width:auto;max-height:min(460px,calc(100dvh - 76px))}.hvp-mini-pill{right:12px;bottom:16px;padding:8px 12px 8px 9px;font-size:11.5px}.hvp-sort-pill{display:none}}.hvp-watch-banner{display:flex;flex-direction:column;gap:5px;padding:7px 12px;background:linear-gradient(90deg,#fff7e6,#fef3c7);border-bottom:1px solid #e6d3a3;flex-shrink:0}.hvp-watch-banner.is-met{background:linear-gradient(90deg,#ecfdf5,#d1fae5);border-bottom-color:#86efac}.hvp-watch-banner.is-warning{background:linear-gradient(90deg,#fef2f2,#fee2e2);border-bottom-color:#fca5a5}.hvp-watch-banner.is-warning .hvp-watch-row{color:#991b1b}.hvp-watch-row{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:11px;font-weight:800;color:#78350f}.hvp-watch-banner.is-met .hvp-watch-row{color:#065f46}.hvp-watch-label{display:flex;align-items:center;gap:5px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hvp-watch-right{display:flex;align-items:center;gap:5px;flex-shrink:0}.hvp-watch-time{padding:2px 7px;border-radius:999px;font-size:10.2px;font-weight:900;background:#d9770629;color:#92400e;flex-shrink:0}.hvp-watch-banner.is-met .hvp-watch-time{background:#10b98133;color:#047857}.hvp-watch-tiers-btn{padding:2px 7px;border-radius:999px;border:1px solid rgba(180,83,9,.35);background:#fffbeb;color:#92400e;font-size:10px;font-weight:800;cursor:pointer;transition:all .15s ease;white-space:nowrap}.hvp-watch-tiers-btn:hover{background:#fde68a;border-color:#b45309}.hvp-watch-banner.is-met .hvp-watch-tiers-btn{border-color:#05966959;background:#ecfdf5;color:#065f46}.hvp-watch-track{width:100%;height:5px;border-radius:999px;background:#b4530929;overflow:hidden}.hvp-watch-banner.is-met .hvp-watch-track{background:#0596692e}.hvp-watch-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#f59e0b,#ea580c);transition:width .35s ease}.hvp-watch-banner.is-met .hvp-watch-fill{background:linear-gradient(90deg,#10b981,#059669)}.hvp-milestones-drawer{display:none;flex-direction:column;gap:4px;margin-top:4px;padding-top:6px;border-top:1px dashed rgba(180,83,9,.28);max-height:185px;overflow-y:auto}.hvp-milestones-drawer.is-open{display:flex}.hvp-milestones-note{font-size:9.8px;font-weight:700;color:#92400e;display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:2px}.hvp-watch-banner.is-met .hvp-milestones-note{color:#065f46}.hvp-milestone-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 8px;border-radius:7px;background:#ffffffb8;border:1px solid rgba(217,119,6,.22);font-size:10.2px;color:#451a03}.hvp-milestone-item.is-claimed{background:#d1fae5d9;border-color:#10b98166;color:#064e3b}.hvp-milestone-item.is-next{background:#fffbeb;border-color:#f59e0b;box-shadow:0 0 0 1px #f59e0b40;font-weight:800}.hvp-milestone-item.is-jackpot{background:linear-gradient(90deg,#fef3c7f2,#fde68ae6);border-color:#d97706}.hvp-milestone-left{display:flex;align-items:center;gap:5px;font-weight:800;white-space:nowrap}.hvp-milestone-right{text-align:right;font-weight:700}.hvp-stage-btn--comment{background:linear-gradient(135deg,#10b98140,#05966961);border-color:#34d39973;color:#ecfdf5}.hvp-stage-btn--comment:hover,.hvp-stage-btn--comment.is-active{background:linear-gradient(135deg,#059669,#047857);border-color:#6ee7b7;color:#fff}.hvp-cmt-count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:16px;padding:0 5px;border-radius:999px;background:#fff3;color:#fff;font-size:10px;font-weight:800}.hvp-comments-panel{display:none;flex:0 0 100%;width:100%;margin-top:6px;padding:10px 12px;border-radius:10px;background:#0b1813e0;border:1px solid rgba(52,211,153,.28);color:#e6efe9;flex-direction:column;gap:8px}.hvp-comments-panel.is-open{display:flex}.hvp-cmt-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.hvp-cmt-title{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:11.5px;font-weight:800;color:#ecfdf5}.hvp-cmt-policy-badge{font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;background:#10b98133;border:1px solid rgba(52,211,153,.35);color:#a7f3d0}.hvp-cmt-close-btn{background:transparent;border:none;color:#9ca3af;cursor:pointer;font-size:12px;padding:2px 5px}.hvp-cmt-close-btn:hover{color:#fff}.hvp-cmt-form,.hvp-cmt-step-box{display:flex;flex-direction:column;gap:7px;padding:9px 11px;border-radius:9px;background:#ffffff0d;border:1px solid rgba(255,255,255,.14)}.hvp-cmt-step-box--pending{background:#f59e0b1a;border-color:#fbbf2473}.hvp-cmt-step-box--verified{background:#10b98124;border-color:#34d39973}.hvp-cmt-step-header{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:11px;color:#fef3c7}.hvp-cmt-step-badge{font-size:9.5px;font-weight:900;text-transform:uppercase;padding:2px 6px;border-radius:999px;background:#f59e0b;color:#451a03}.hvp-cmt-input{width:100%;padding:7px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.18);background:#ffffff12;color:#fff9eb;font-family:inherit;font-size:11.5px;line-height:1.4;resize:vertical}.hvp-cmt-input:focus{outline:none;border-color:#34d399;background:#ffffff1c}.hvp-cmt-form-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.hvp-cmt-hint{font-size:10.5px;color:#a7f3d0;line-height:1.35;flex:1 1 220px}.hvp-cmt-form-btns{display:flex;align-items:center;gap:6px}.hvp-cmt-submit-btn{padding:6px 12px;border-radius:8px;border:1px solid #f59e0b;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-size:11px;font-weight:800;cursor:pointer;transition:opacity .15s ease,transform .12s ease}.hvp-cmt-submit-btn:hover:not(:disabled){transform:translateY(-1px);background:linear-gradient(135deg,#fbbf24,#b45309)}.hvp-cmt-submit-btn:disabled{opacity:.6;cursor:not-allowed}.hvp-cmt-copy-preview{display:flex;flex-direction:column;gap:5px}.hvp-cmt-copy-label{font-size:10.5px;color:#fde68a}.hvp-cmt-copy-box{padding:7px 10px;border-radius:7px;background:#00000059;border:1px dashed rgba(251,191,36,.55);color:#fffbeb;font-size:11.5px;font-weight:700;line-height:1.4;word-break:break-word}.hvp-cmt-copy-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.hvp-cmt-secondary-btn{padding:4px 9px;border-radius:7px;border:1px solid rgba(255,255,255,.22);background:#ffffff1a;color:#f3f4f6;font-size:10.5px;font-weight:700;text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.hvp-cmt-secondary-btn:hover{background:#ffffff2e}.hvp-cmt-verify-row{display:flex;align-items:center;justify-content:flex-end;margin-top:2px}.hvp-cmt-verify-btn{width:100%;padding:7px 14px;border-radius:8px;border:1px solid #34d399;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:11.5px;font-weight:800;cursor:pointer;text-align:center;transition:transform .12s ease,opacity .15s ease}.hvp-cmt-verify-btn:hover:not(:disabled){transform:translateY(-1px);background:linear-gradient(135deg,#059669,#047857)}.hvp-cmt-verify-btn:disabled{opacity:.65;cursor:not-allowed}.hvp-cmt-verified-title{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;font-size:11.5px;color:#a7f3d0}.hvp-cmt-yt-link{font-size:10.5px;font-weight:800;color:#fef08a;text-decoration:none}.hvp-cmt-yt-link:hover{text-decoration:underline}.hvp-cmt-verified-meta{font-size:10.5px;color:#d1fae5}.hvp-cmt-sig-pill{padding:1px 6px;border-radius:999px;background:#ffffff29;color:#fef3c7;font-weight:800}.hvp-cmt-verified-quote{font-size:11.5px;font-style:italic;color:#fff;background:#00000038;padding:5px 8px;border-radius:6px}.hvp-cmt-error{padding:6px 9px;border-radius:7px;background:#b91c1c61;border:1px solid rgba(248,113,113,.45);color:#fecaca;font-size:11px;font-weight:700}.hvp-cmt-feedback{padding:6px 9px;border-radius:7px;background:#05966952;border:1px solid rgba(52,211,153,.4);color:#d1fae5;font-size:11px;font-weight:700}.hvp-cmt-list{display:flex;flex-direction:column;gap:6px;max-height:155px;overflow-y:auto;padding-right:2px}.hvp-cmt-empty{font-size:11px;color:#9ca3af;text-align:center;padding:8px 4px}.hvp-cmt-item{padding:6px 9px;border-radius:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.09);display:flex;flex-direction:column;gap:3px}.hvp-cmt-item-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.hvp-cmt-author{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:11px;color:#fef3c7}.hvp-cmt-badge{font-size:9.5px;font-weight:700;padding:1px 6px;border-radius:999px;text-decoration:none}.hvp-cmt-badge--synced{background:#10b98138;border:1px solid rgba(52,211,153,.4);color:#6ee7b7}.hvp-cmt-del-btn{background:transparent;border:none;cursor:pointer;font-size:11px;opacity:.7;padding:0 3px}.hvp-cmt-del-btn:hover{opacity:1}.hvp-cmt-body{font-size:11.5px;color:#f3f4f6;line-height:1.38;word-break:break-word}
