@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";.countdown{display:flex;align-items:center;justify-content:center;gap:.5rem;font-family:Inter,sans-serif;margin:2rem 0}.countdown-segment{display:flex;flex-direction:column;align-items:center;gap:.25rem}.countdown-number{font-size:1.2rem;font-weight:800;color:#fff;line-height:1;text-shadow:0 4px 12px rgba(0,0,0,.3)}.countdown-label{font-size:.75rem;font-weight:600;color:#ffffffe6;letter-spacing:1px}.countdown-separator{font-size:1rem;font-weight:700;color:#fff;margin:0 .25rem;padding-bottom:1rem}@media (max-width: 768px){.countdown{gap:.25rem}.countdown-number{font-size:.8rem}.countdown-label{font-size:.45rem}.countdown-separator{font-size:.7rem;margin:0 .1rem}}.snowflakes-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden;z-index:1}.snowflake-item{position:absolute;-webkit-user-select:none;user-select:none;pointer-events:none;filter:drop-shadow(0 0 8px rgba(255,255,255,1)) drop-shadow(0 0 4px rgba(255,255,255,1)) brightness(1.3)}.party-login{width:100%;height:100%;background:linear-gradient(180deg,#e74c3c,#c0392b);position:fixed;top:0;left:0;overflow-y:auto;overflow-x:hidden;display:flex;align-items:center;justify-content:center;padding:2rem;-webkit-overflow-scrolling:touch}.ornament{position:absolute;width:70px;height:auto;z-index:8}.ornament-1{top:8%;left:12%}.ornament-2{top:10%;right:12%}.candy{position:absolute;width:55px;height:auto;z-index:8}.candy-1{top:15%;right:22%}.star{position:absolute;font-size:2rem;z-index:8;filter:drop-shadow(0 0 10px rgba(255,255,255,.8))}.star-1{top:12%;left:22%}.star-2{top:18%;right:30%}.star-3{top:25%;left:35%}.nutcracker{position:absolute;bottom:5%;width:120px;height:auto;z-index:25;filter:drop-shadow(0 8px 16px rgba(0,0,0,.3))}.nutcracker-left{left:5%}.nutcracker-right{right:5%}.flying-element{position:absolute;width:120px;height:auto;z-index:15;filter:drop-shadow(0 8px 16px rgba(0,0,0,.3));pointer-events:auto}.clickable-character{cursor:pointer;transition:filter .2s ease}.clickable-character:hover{filter:brightness(1.2) drop-shadow(0 0 15px rgba(255,255,255,.6))}.speech-bubble{position:fixed;transform:translate(-50%,calc(-100% - 20px));background:#fff;color:#2c3e50;padding:.75rem 1.25rem;border-radius:20px;font-size:1rem;font-weight:600;box-shadow:0 8px 24px #0000004d;z-index:200;max-width:280px;min-width:200px;text-align:center;border:3px solid #e74c3c;pointer-events:none;line-height:1.4;white-space:normal;word-wrap:break-word}.thematic-image{position:fixed;width:150px;height:auto;z-index:250;pointer-events:none;filter:drop-shadow(0 8px 24px rgba(0,0,0,.5));transform-origin:center}.lyrics-caption{position:fixed;top:0;left:0;right:0;z-index:101;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.1);min-height:50px;display:flex;align-items:center;justify-content:center;padding:.75rem 1.5rem}.lyrics-content{color:#fff;font-size:1.3rem;font-weight:600;text-align:center;text-shadow:0 2px 6px rgba(0,0,0,.8);line-height:1.4;width:100%}.music-notes{font-size:1.8rem;display:flex;gap:.5rem;align-items:center;justify-content:center;filter:drop-shadow(0 0 8px rgba(255,255,255,.4))}.music-toggle{position:fixed;top:60px;right:20px;z-index:102;background:#fffffff2;border:none;border-radius:50%;width:60px;height:60px;padding:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 24px #0000004d;transition:all .3s ease}.music-toggle:hover{background:#fff;box-shadow:0 12px 32px #0006}.music-toggle img{width:100%;height:100%;object-fit:contain}.music-elf{position:fixed;top:80px;right:95px;width:70px;height:auto;z-index:101;filter:drop-shadow(0 4px 12px rgba(0,0,0,.3))}.music-elf-bubble{position:fixed;top:40px;right:70px;background:#fff;color:#2c3e50;padding:.65rem 1rem;border-radius:18px;font-size:.9rem;font-weight:600;box-shadow:0 6px 20px #0000004d;z-index:102;max-width:200px;text-align:center;border:3px solid #27ae60;pointer-events:none;line-height:1.3;white-space:normal;word-wrap:break-word}.login-content{position:relative;z-index:10;text-align:center;width:100%;max-width:500px}.party-logo{width:400px;height:auto;margin:0 auto 1.5rem;display:block;filter:drop-shadow(0 8px 24px rgba(0,0,0,.5));position:relative;z-index:5}.login-form-container{margin-top:2rem;position:relative;z-index:20;max-width:380px;margin-left:auto;margin-right:auto}.party-login-form{display:flex;flex-direction:column;gap:1rem}.party-input{padding:1rem 1.5rem;font-size:16px;border:none;border-radius:50px;background:#fff;color:#2c3e50;font-weight:600;text-align:center;box-shadow:0 4px 12px #0003;transition:all .3s ease}.party-input:focus{outline:none}.party-input::placeholder{color:#95a5a6}.party-error{padding:.75rem 1rem;background:#fffffff2;border-radius:12px;color:#e74c3c;font-weight:600;font-size:.95rem}.party-button{padding:1rem 2rem;font-size:1.1rem;font-weight:800;border:none;border-radius:50px;background:linear-gradient(135deg,#27ae60,#229954);color:#fff;cursor:pointer;box-shadow:0 8px 24px #27ae6066;transition:all .3s ease;letter-spacing:1px}.party-button:disabled{opacity:.7;cursor:not-allowed}@media (max-width: 768px){.party-login{padding:1rem}.party-logo{width:280px}.ornament{width:45px;height:auto}.ornament-1{left:8%}.ornament-2{right:8%}.candy{width:38px;height:auto}.candy-1{right:18%}.star{font-size:1.3rem}.star-3{display:none}.nutcracker{width:80px}.nutcracker-left{left:2%}.nutcracker-right{right:2%}.flying-element{width:90px}.login-form-container{max-width:340px}.party-input{padding:.875rem 1.25rem;font-size:16px}.party-button{padding:.875rem 1.5rem;font-size:1rem}.music-toggle{width:50px;height:50px;font-size:1.5rem;top:55px;right:15px}.music-elf{width:60px;top:70px;right:80px}.music-elf-bubble{top:35px;right:60px;font-size:.85rem;max-width:180px;padding:.6rem .9rem}.lyrics-caption{padding:.65rem 1.25rem;min-height:45px}.lyrics-content{font-size:1.1rem}.music-notes{font-size:1.5rem;gap:.4rem}.speech-bubble{font-size:.9rem;max-width:240px;padding:.65rem 1rem}.thematic-image{width:120px}}@media (max-width: 480px){.ornament{width:35px;height:auto}.candy-1{display:none}.star{font-size:1rem}.star-1{top:8%;left:15%}.star-2{top:12%;right:20%}.party-logo{width:220px}.nutcracker{width:60px}.flying-element{width:70px}.login-form-container{max-width:300px}.party-input{padding:.75rem 1rem;font-size:16px}.party-button{padding:.75rem 1.25rem;font-size:.95rem}.music-toggle{width:45px;height:45px;font-size:1.3rem;top:50px;right:10px}.music-elf{width:50px;top:65px;right:65px}.music-elf-bubble{top:30px;right:50px;font-size:.8rem;max-width:160px;padding:.55rem .8rem}.lyrics-caption{padding:.6rem 1rem;min-height:40px}.lyrics-content{font-size:.95rem}.music-notes{font-size:1.3rem;gap:.3rem}.speech-bubble{font-size:.85rem;max-width:200px;padding:.6rem .9rem}.thematic-image{width:90px}}@media (max-width: 768px){.party-login *{will-change:auto}}.welcome-section{margin-bottom:3rem}.welcome-card{background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);border-radius:24px;padding:3rem;text-align:center;box-shadow:0 20px 60px #6366f14d}.welcome-emoji{font-size:4rem;margin-bottom:1rem;animation:rotate 3s linear infinite}@keyframes rotate{0%{transform:rotate(0)}25%{transform:rotate(-10deg)}50%{transform:rotate(0)}75%{transform:rotate(10deg)}to{transform:rotate(0)}}.welcome-card h2{font-size:2rem;font-weight:800;color:#fff;margin-bottom:2rem}.party-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:2rem}.detail-item{background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:1.5rem;display:flex;align-items:center;gap:1rem;transition:all .3s}.detail-item:hover{background:#ffffff40;transform:translateY(-2px)}.detail-icon{font-size:2rem}.detail-item h3{font-size:.9rem;font-weight:600;color:#ffffffe6;margin-bottom:.25rem}.detail-item p{font-size:1.1rem;font-weight:700;color:#fff}@media (max-width: 768px){.welcome-card{padding:2rem 1.5rem}.welcome-card h2{font-size:1.5rem}.welcome-emoji{font-size:3rem}.party-details{grid-template-columns:1fr;gap:1rem}.detail-item{padding:1rem}}.party-schedule{margin-bottom:3rem}.section-title{font-size:2rem;font-weight:800;color:var(--text);margin-bottom:2rem;text-align:center}.timeline{position:relative;padding:2rem 0}.timeline:before{content:"";position:absolute;left:30px;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--primary),var(--secondary))}.timeline-item{position:relative;padding-left:80px;margin-bottom:2rem}.timeline-marker{position:absolute;left:20px;top:8px;width:22px;height:22px;border-radius:50%;background:var(--primary);border:4px solid var(--background);box-shadow:0 0 0 3px var(--primary)}.timeline-content{background:var(--surface);border-radius:16px;padding:1.5rem;transition:all .3s}.timeline-content:hover{transform:translate(8px);box-shadow:0 8px 24px #6366f133}.timeline-time{font-size:1.1rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}.timeline-activity{font-size:1rem;color:var(--text);line-height:1.6}@media (max-width: 768px){.section-title{font-size:1.5rem}.timeline:before{left:20px}.timeline-item{padding-left:60px}.timeline-marker{left:10px}.timeline-content{padding:1rem}}.photo-gallery{margin-bottom:3rem}.upload-section{text-align:center;margin-bottom:2rem}.upload-button{display:inline-block;padding:1rem 2rem;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;font-size:1.1rem;font-weight:700;border-radius:12px;cursor:pointer;transition:all .3s}.upload-button:hover{transform:translateY(-2px);box-shadow:0 10px 30px #6366f166}.upload-progress{margin-top:1rem;color:var(--success);font-weight:600}.empty-gallery{text-align:center;padding:4rem 2rem;background:var(--surface);border-radius:16px}.empty-gallery p{color:var(--text-secondary);font-size:1.1rem}.photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.photo-item{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;cursor:pointer;transition:all .3s}.photo-item:hover{transform:scale(1.05);box-shadow:0 8px 24px #0000004d}.photo-item img{width:100%;height:100%;object-fit:cover}.photo-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);padding:1rem;opacity:0;transition:opacity .3s}.photo-item:hover .photo-overlay{opacity:1}.photo-overlay span{color:#fff;font-size:.9rem;font-weight:600}.lightbox{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center}.lightbox-close{position:absolute;top:-40px;right:0;background:none;color:#fff;font-size:2rem;cursor:pointer;padding:.5rem;transition:all .2s}.lightbox-close:hover{transform:scale(1.1)}.lightbox-content img{max-width:100%;max-height:80vh;border-radius:12px;object-fit:contain}.lightbox-info{margin-top:1rem;color:#fff;font-size:1rem;font-weight:600}@media (max-width: 768px){.photos-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem}.upload-button{padding:.8rem 1.5rem;font-size:1rem}}.games-list{margin-bottom:3rem}.games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.game-card{background:var(--surface);border-radius:16px;padding:2rem;position:relative;transition:all .3s;border:2px solid transparent}.game-card:hover{border-color:var(--primary);transform:translateY(-4px);box-shadow:0 12px 36px #6366f133}.game-number{position:absolute;top:-12px;right:20px;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;box-shadow:0 4px 12px #6366f166}.game-card h3{font-size:1.3rem;font-weight:700;color:var(--text);margin-bottom:1rem}.game-card p{font-size:1rem;color:var(--text-secondary);line-height:1.6}@media (max-width: 768px){.games-grid{grid-template-columns:1fr}.game-card{padding:1.5rem}}.online-users-container{position:fixed;top:0;left:0;right:0;z-index:9998;background:transparent;padding:10px 0;pointer-events:none}.online-users-scroll{display:flex;gap:16px;padding:0 20px;overflow:visible;pointer-events:auto}.online-users-scroll::-webkit-scrollbar{height:4px}.online-users-scroll::-webkit-scrollbar-track{background:transparent}.online-users-scroll::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:2px}.online-users-scroll::-webkit-scrollbar-thumb:hover{background:#ffffff80}.floating-avatar{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;flex-shrink:0}.floating-avatar .user-avatar-wrapper{animation:sweetFloat 4s cubic-bezier(.45,.05,.55,.95) infinite}@keyframes sweetFloat{0%,to{transform:translateY(0) rotate(0) scale(1)}25%{transform:translateY(-8px) rotate(-2deg) scale(1.03)}50%{transform:translateY(-12px) rotate(0) scale(1.05)}75%{transform:translateY(-8px) rotate(2deg) scale(1.03)}}.floating-avatar:hover .user-avatar-wrapper{animation:sweetBounce .6s cubic-bezier(.68,-.55,.265,1.55) infinite}@keyframes sweetBounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-15px) scale(1.08)}}.online-user{pointer-events:auto}.user-avatar-wrapper{position:relative;width:50px;height:50px;cursor:pointer}.user-avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.6);box-shadow:0 4px 12px #0000004d,0 0 20px #4ade804d;transition:all .3s ease}.user-avatar:hover{border-color:#4ade80cc;box-shadow:0 6px 16px #0006,0 0 30px #4ade8080}.user-avatar-placeholder{width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px;color:#fff;border:3px solid rgba(255,255,255,.6);box-shadow:0 4px 12px #0000004d,0 0 20px #4ade804d;transition:all .3s ease}.user-avatar-placeholder:hover{border-color:#4ade80cc;box-shadow:0 6px 16px #0006,0 0 30px #4ade8080}.online-indicator{position:absolute;bottom:2px;right:2px;width:14px;height:14px;background:#4ade80;border:3px solid white;border-radius:50%;box-shadow:0 0 0 2px #4ade804d,0 0 12px #4ade80cc;animation:pulse-green 2s ease-in-out infinite}.user-info{display:flex;flex-direction:column;align-items:center;gap:2px;background:#000000b3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:6px 12px;border-radius:12px;box-shadow:0 4px 12px #0000004d;border:1px solid rgba(255,255,255,.1);min-width:100px;text-align:center;transition:all .3s ease}.floating-avatar:hover .user-info{background:#000000d9;border-color:#4ade804d;box-shadow:0 6px 16px #0006}.user-name{font-size:13px;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.user-game{font-size:10px;font-weight:500;color:#4ade80;text-shadow:0 0 8px rgba(74,222,128,.6);white-space:nowrap;animation:game-pulse 1.5s ease-in-out infinite}@keyframes pulse-green{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.15)}}@keyframes game-pulse{0%,to{opacity:1}50%{opacity:.6}}@media (max-width: 600px){.online-users-container{padding:8px 0}.online-users-scroll{gap:12px;padding:0 12px}.user-avatar-wrapper{width:40px;height:40px}.online-indicator{width:12px;height:12px;border-width:2px}.user-name{font-size:11px;max-width:80px}.user-game{font-size:9px}.user-info{padding:4px 8px;min-width:80px}}.unanswered-surveys-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#000000d9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:20px;pointer-events:auto}.survey-drop-container{max-width:600px;width:100%;perspective:1000px;pointer-events:auto}.survey-card-floating{position:relative;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:24px;padding:40px;box-shadow:0 20px 60px #00000080,0 0 100px #667eea4d,inset 0 0 100px #ffffff1a;border:2px solid rgba(255,255,255,.2);overflow:hidden;pointer-events:auto}.survey-card-glow{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.3) 0%,transparent 70%);animation:glow-rotate 8s linear infinite;pointer-events:none}@keyframes glow-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.survey-badge{display:inline-flex;align-items:center;gap:8px;background:#fffffff2;color:#667eea;padding:8px 20px;border-radius:50px;font-weight:700;font-size:14px;box-shadow:0 4px 20px #0003;margin-bottom:24px;animation:badge-pulse 2s ease-in-out infinite}@keyframes badge-pulse{0%,to{transform:scale(1);box-shadow:0 4px 20px #0003}50%{transform:scale(1.05);box-shadow:0 6px 30px #667eea66}}.badge-icon{font-size:18px;animation:shake 1s ease-in-out infinite}@keyframes shake{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}.badge-text{font-size:14px;letter-spacing:.5px}.survey-content{margin-bottom:32px}.survey-title{font-size:28px;font-weight:800;color:#fff;margin:0 0 16px;text-shadow:0 2px 10px rgba(0,0,0,.3);line-height:1.3}.survey-description{font-size:16px;color:#ffffffe6;margin:0 0 24px;line-height:1.6}.survey-info{display:flex;gap:24px;flex-wrap:wrap}.info-item{display:flex;align-items:center;gap:8px;background:#ffffff26;padding:10px 16px;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.info-icon{font-size:20px}.info-text{font-size:14px;font-weight:600;color:#fff}.survey-actions{display:flex;flex-direction:column;gap:12px}.survey-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 32px;border-radius:16px;font-size:16px;font-weight:700;border:none;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #0003}.survey-btn.primary{background:#fff;color:#667eea}.survey-btn.primary:hover{background:#f0f0f0;box-shadow:0 6px 30px #ffffff4d}.survey-btn.secondary{background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.3)}.survey-btn.secondary:hover{background:#ffffff4d;border-color:#ffffff80}.survey-btn.tertiary{background:#ffffff1a;color:#fffc;border:1px solid rgba(255,255,255,.2);font-size:14px;padding:12px 24px}.survey-btn.tertiary:hover{background:#ffffff26;color:#fff;border-color:#ffffff4d}.secondary-actions{display:flex;flex-direction:column;gap:10px}.btn-icon{font-size:20px}.survey-counter{display:flex;justify-content:center;gap:8px;margin-top:20px}.counter-dot{width:10px;height:10px;border-radius:50%;background:#ffffff4d;transition:all .3s ease}.counter-dot.active{background:#fff;transform:scale(1.3);box-shadow:0 0 10px #fffc}@keyframes confetti{0%{transform:translateY(-100%) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}@media (max-width: 768px){.unanswered-surveys-overlay{padding:16px}.survey-card-floating{padding:28px 24px}.survey-title{font-size:22px}.survey-description{font-size:14px}.survey-btn{padding:14px 24px;font-size:15px}.info-item{padding:8px 12px}.info-icon{font-size:18px}.info-text{font-size:13px}}@media (max-width: 480px){.survey-card-floating{padding:24px 20px}.survey-title{font-size:20px}.survey-info{gap:12px}.info-item{flex:1;min-width:calc(50% - 6px)}}.party-portal{min-height:100vh;background:var(--background);position:relative;overflow-x:hidden}.portal-header{background:linear-gradient(180deg,#1e293bf2,#0f172ae6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:2px solid;border-image:var(--gradient-festive) 1;padding:var(--spacing-xl) var(--spacing-xl);position:sticky;top:0;z-index:100;box-shadow:0 4px 20px #0000004d;display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.header-content{flex:1}.portal-title{font-size:1.75rem;font-weight:800;margin:0;background:var(--gradient-festive);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:flex;align-items:center;gap:var(--spacing-sm);line-height:1.2}.title-icon,.title-sparkle{font-size:1.5rem;animation:pulse 2s ease-in-out infinite}.title-sparkle{animation:sparkle 1.5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}@keyframes sparkle{0%,to{transform:rotate(0) scale(1);opacity:1}50%{transform:rotate(180deg) scale(1.2);opacity:.6}}.portal-subtitle{font-size:.875rem;color:var(--text-secondary);margin:var(--spacing-xs) 0 0;font-weight:500;letter-spacing:.5px}.logout-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:#dc26261a;border:2px solid var(--primary-light);border-radius:var(--radius-lg);color:var(--text);font-weight:600;font-size:.95rem;cursor:pointer;transition:var(--transition-base);white-space:nowrap}.logout-btn:hover{background:var(--gradient-red-gold);transform:translateY(-2px);box-shadow:0 4px 12px var(--primary-glow)}.logout-btn .btn-icon{font-size:1.1rem}.portal-content{max-width:1400px;margin:0 auto;padding:var(--spacing-2xl) var(--spacing-xl)}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--spacing-xl);margin-bottom:var(--spacing-3xl)}.action-card{position:relative;background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-2xl);padding:var(--spacing-2xl);transition:var(--transition-base);overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:var(--shadow-md)}.action-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:var(--gradient-festive);opacity:0;transition:var(--transition-base);z-index:0}.action-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl);border-color:var(--border-light)}.action-card:hover:before{opacity:.05}.card-glow{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(220,38,38,.1) 0%,transparent 70%);opacity:0;transition:var(--transition-slow);pointer-events:none}.action-card:hover .card-glow{opacity:1;animation:rotate 10s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.card-icon{position:relative;z-index:1;font-size:4rem;margin-bottom:var(--spacing-lg);filter:drop-shadow(0 4px 12px rgba(0,0,0,.3));transition:var(--transition-base)}.action-card:hover .card-icon{transform:scale(1.15) rotate(5deg)}.card-content{position:relative;z-index:1;margin-bottom:var(--spacing-xl);flex:1}.card-title{font-size:1.75rem;font-weight:800;margin-bottom:var(--spacing-md);color:var(--text)}.card-description{font-size:1rem;color:var(--text-secondary);line-height:1.6}.card-action-btn{position:relative;z-index:1;width:100%;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-size:1.1rem}.card-action-btn .btn-icon{font-size:1.3rem}.games-card{border-color:var(--primary-light)}.games-card .card-glow{background:radial-gradient(circle,var(--primary-glow) 0%,transparent 70%)}.survey-card{border-color:var(--secondary-light)}.survey-card .card-glow{background:radial-gradient(circle,var(--secondary-glow) 0%,transparent 70%)}.guests-card{border-color:var(--accent-light)}.guests-card .card-glow{background:radial-gradient(circle,var(--accent-glow) 0%,transparent 70%)}.unanswered-surveys-card{border-color:#f59e0b;animation:pulse-attention 2s ease-in-out infinite}.unanswered-surveys-card.completed{border-color:#10b981;animation:none}.unanswered-surveys-card.completed .card-glow{background:radial-gradient(circle,rgba(16,185,129,.3) 0%,transparent 70%)}.unanswered-surveys-card.completed .surveys-icon{color:#10b981}.unanswered-surveys-card .card-glow{background:radial-gradient(circle,rgba(245,158,11,.3) 0%,transparent 70%)}.unanswered-surveys-card .surveys-icon{color:#f59e0b}.btn-accent{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;padding:var(--spacing-md) var(--spacing-xl);border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #f59e0b4d}.btn-accent:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f59e0b66;background:linear-gradient(135deg,#fbbf24,#f59e0b)}@keyframes pulse-attention{0%,to{box-shadow:0 10px 40px #0003,0 0 #f59e0b66}50%{box-shadow:0 10px 40px #0003,0 0 0 8px #f59e0b00}}.portal-footer{margin-top:var(--spacing-3xl);padding:var(--spacing-2xl) var(--spacing-xl);background:linear-gradient(180deg,transparent 0%,rgba(30,41,59,.5) 100%);border-top:2px solid;border-image:var(--gradient-festive) 1}.footer-content{max-width:1400px;margin:0 auto;text-align:center}.footer-text{color:var(--text-secondary);font-size:.95rem;margin-bottom:var(--spacing-sm)}.footer-year{background:var(--gradient-red-gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:1.1rem;font-weight:700;margin:0}@media (max-width: 768px){.portal-header{padding:var(--spacing-lg) var(--spacing-md);flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.portal-title{font-size:1.4rem}.title-icon,.title-sparkle{font-size:1.2rem}.portal-subtitle{font-size:.8rem}.logout-btn{width:100%;justify-content:center;padding:var(--spacing-md);font-size:.9rem}.portal-content{padding:var(--spacing-xl) var(--spacing-md)}.quick-actions-grid{grid-template-columns:1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.action-card{padding:var(--spacing-xl)}.card-icon{font-size:3rem;margin-bottom:var(--spacing-md)}.card-title{font-size:1.5rem}.card-description{font-size:.9rem}.card-action-btn{font-size:1rem;padding:var(--spacing-md) var(--spacing-lg)}.portal-footer{padding:var(--spacing-xl) var(--spacing-md)}.footer-text{font-size:.85rem}.footer-year{font-size:1rem}}@media (max-width: 480px){.portal-title{font-size:1.2rem;flex-wrap:wrap}.card-icon{font-size:2.5rem}.card-title{font-size:1.3rem}.action-card{padding:var(--spacing-lg)}}@media (min-width: 769px) and (max-width: 1024px){.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1400px){.portal-content{padding:var(--spacing-3xl) var(--spacing-2xl)}.quick-actions-grid{gap:var(--spacing-2xl)}.card-title{font-size:2rem}.card-description{font-size:1.1rem}}.guest-list-page{min-height:100vh;background:var(--background);position:relative}.guest-list-page:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 30% 40%,var(--secondary-glow) 0%,transparent 50%),radial-gradient(circle at 70% 60%,var(--primary-glow) 0%,transparent 50%);pointer-events:none;z-index:0}.guest-list-header{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-lg);padding:var(--spacing-2xl) var(--spacing-xl);margin-bottom:var(--spacing-2xl);background:linear-gradient(180deg,rgba(30,41,59,.9) 0%,transparent 100%)}.guest-list-header h1{font-size:2.25rem;font-weight:800;margin:0;background:var(--gradient-festive);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:none}.subtitle{color:var(--text-secondary);font-size:1.1rem;font-weight:500;margin:var(--spacing-sm) 0 0 0}.back-btn{background:#dc26261a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid var(--primary-light);color:var(--text);padding:var(--spacing-md) var(--spacing-xl);font-size:1rem;font-weight:600;border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-base);white-space:nowrap}.guest-list-content{position:relative;z-index:1;max-width:1400px;margin:0 auto;padding:0 var(--spacing-xl) var(--spacing-3xl)}.search-container{background:var(--surface);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:var(--spacing-xl);border-radius:var(--radius-2xl);margin-bottom:var(--spacing-2xl);border:2px solid var(--border);box-shadow:var(--shadow-lg);display:flex;gap:var(--spacing-lg);align-items:center;flex-wrap:wrap}.search-input{flex:1;min-width:250px;padding:var(--spacing-md) var(--spacing-lg);font-size:1rem;border:2px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-light);color:var(--text);outline:none;transition:var(--transition-base)}.search-input:focus{border-color:var(--accent-light);box-shadow:0 0 0 4px var(--accent-glow);background:var(--surface)}.search-input::placeholder{color:var(--text-muted)}.guest-count{color:var(--text);font-size:1rem;font-weight:600;padding:var(--spacing-md) var(--spacing-lg);background:var(--gradient-red-gold);border-radius:var(--radius-full);box-shadow:0 4px 12px var(--primary-glow)}.guests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-xl);margin-bottom:var(--spacing-2xl)}.guest-card{background:var(--surface);border-radius:var(--radius-2xl);padding:var(--spacing-xl);display:flex;align-items:center;gap:var(--spacing-lg);box-shadow:var(--shadow-md);transition:var(--transition-base);border:2px solid var(--border);position:relative;overflow:hidden}.guest-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--gradient-festive);opacity:0;transition:var(--transition-base)}.guest-card:hover{transform:translateY(-4px);border-color:var(--accent-light);box-shadow:0 8px 24px var(--accent-glow)}.guest-card:hover:before{opacity:.05}.guest-avatar-container{position:relative;z-index:1;flex-shrink:0}.guest-avatar{width:70px;height:70px;border-radius:var(--radius-full);object-fit:cover;border:3px solid var(--accent-light);box-shadow:0 4px 12px var(--accent-glow)}.guest-avatar-placeholder{width:70px;height:70px;border-radius:var(--radius-full);background:var(--gradient-green-ice);display:flex;align-items:center;justify-content:center;font-size:1.75rem;font-weight:800;color:var(--text);border:3px solid var(--secondary-light);box-shadow:0 4px 12px var(--secondary-glow)}.guest-info{position:relative;z-index:1;flex:1;min-width:0}.guest-name{font-size:1.25rem;font-weight:700;color:var(--text);margin:0 0 var(--spacing-xs) 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.guest-email{font-size:.95rem;color:var(--text-secondary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.no-guests{grid-column:1 / -1;text-align:center;padding:var(--spacing-3xl);background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-2xl);border:2px solid var(--border);box-shadow:var(--shadow-md)}.no-guests p{font-size:1.25rem;color:var(--text-secondary);margin:0}.loading{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:1.5rem;color:var(--text);background:var(--background)}@media (max-width: 768px){.guest-list-header{flex-direction:column;align-items:flex-start;padding:var(--spacing-xl) var(--spacing-md)}.guest-list-header h1{font-size:1.75rem}.subtitle{font-size:1rem}.back-btn{width:100%;text-align:center;justify-content:center}.guest-list-content{padding:0 var(--spacing-md) var(--spacing-2xl)}.guests-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.search-container{flex-direction:column;align-items:stretch;padding:var(--spacing-lg)}.search-input{width:100%;min-width:0}.guest-count{text-align:center}.guest-card{padding:var(--spacing-lg)}.guest-avatar,.guest-avatar-placeholder{width:60px;height:60px;font-size:1.5rem}.guest-name{font-size:1.1rem}.guest-email{font-size:.9rem}}@media (max-width: 480px){.guest-list-header h1{font-size:1.5rem}.subtitle{font-size:.9rem}.search-container{padding:var(--spacing-md)}.guest-card{padding:var(--spacing-md);gap:var(--spacing-md)}}@media (min-width: 1400px){.guests-grid{grid-template-columns:repeat(3,1fr)}}.admin-login{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e293b,#0f172a);padding:2rem;position:fixed;top:0;left:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:none}.admin-login-container{background:var(--surface);border-radius:24px;padding:3rem;width:100%;max-width:480px;box-shadow:0 20px 60px #00000080;border:1px solid var(--border)}.admin-login-header{text-align:center;margin-bottom:2rem}.admin-login-header h1{font-size:2rem;font-weight:800;margin-bottom:.5rem;color:var(--text)}.admin-login-header p{color:var(--text-secondary);font-size:1rem}.admin-login-form{display:flex;flex-direction:column;gap:1.5rem}.admin-login-button{padding:1rem 2rem;background:var(--primary);color:#fff;font-size:1.1rem;font-weight:700;border-radius:12px;cursor:pointer;transition:all .3s;margin-top:.5rem}.admin-login-button:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 10px 30px #6366f14d}.admin-login-button:active:not(:disabled){transform:translateY(0)}.admin-login-button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.admin-login-container{padding:2rem 1.5rem}.admin-login-header h1{font-size:1.75rem}}.admin-section{width:100%}.admin-section h2{font-size:1.75rem;font-weight:800;color:var(--text);margin-bottom:2rem}.admin-section h3{font-size:1.3rem;font-weight:700;color:var(--text);margin-bottom:1rem}.loading-small{text-align:center;padding:2rem;color:var(--text-secondary)}.admin-form{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.form-group{display:flex;flex-direction:column;gap:.5rem;flex:1}.form-group label{font-weight:600;color:var(--text);font-size:.95rem}.form-group input,.form-group textarea{padding:.75rem 1rem;border:2px solid var(--border);border-radius:8px;background:var(--background);color:var(--text);font-size:1rem;transition:all .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #6366f11a}.form-group small{color:var(--text-secondary);font-size:.85rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.toggle-label{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--background);border-radius:12px}.toggle-switch{position:relative;width:56px;height:28px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border);transition:.3s;border-radius:28px}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--success)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(28px)}.status-badge{padding:.4rem 1rem;border-radius:20px;font-weight:600;font-size:.9rem;background:var(--error);color:#fff}.status-badge.active{background:var(--success)}.submit-btn{padding:.875rem 1.75rem;background:var(--primary);color:#fff;font-size:1rem;font-weight:700;border-radius:8px;cursor:pointer;transition:all .2s;align-self:flex-start}.submit-btn:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-1px)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.submit-btn.small{padding:.625rem 1.25rem;font-size:.9rem}.success-message{padding:1rem;background:#10b9811a;border:1px solid var(--success);border-radius:8px;color:var(--success);font-weight:600;margin-bottom:1rem}.add-form{background:var(--background);padding:1.5rem;border-radius:12px;margin-bottom:2rem}.guests-list,.content-subsection{margin-top:2rem}.content-subsection{padding:1.5rem;background:var(--background);border-radius:12px;margin-bottom:2rem}.empty-state{text-align:center;padding:2rem;color:var(--text-secondary);font-style:italic}.table-container{overflow-x:auto;margin-top:1rem}table{width:100%;border-collapse:collapse;background:var(--surface)}thead{background:var(--background)}th{padding:1rem;text-align:left;font-weight:700;color:var(--text);border-bottom:2px solid var(--border)}td{padding:1rem;border-bottom:1px solid var(--border);color:var(--text);background:var(--surface)}tbody tr{background:var(--surface)}tbody tr:hover{background:var(--surface-light)}.delete-btn{padding:.5rem 1rem;background:var(--error);color:#fff;font-size:.9rem;font-weight:600;border-radius:6px;cursor:pointer;transition:all .2s}.delete-btn.small{padding:.4rem .8rem;font-size:.85rem}.items-list{margin-top:1rem;display:flex;flex-direction:column;gap:.75rem}.list-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--surface);border-radius:8px;border:1px solid var(--border)}.list-item.vertical{flex-direction:column;align-items:flex-start;gap:1rem}.list-item .item-content{display:flex;gap:1rem;align-items:center;flex:1}.list-item.vertical .item-content{flex-direction:column;align-items:flex-start;gap:.5rem;width:100%}.list-item strong{color:var(--primary);font-weight:700}.list-item p{color:var(--text-secondary);margin:0;line-height:1.6}.photo-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:var(--background);padding:1.5rem;border-radius:12px;display:flex;flex-direction:column;align-items:center;text-align:center}.stat-number{font-size:2.5rem;font-weight:800;color:var(--primary)}.stat-label{font-size:.95rem;color:var(--text-secondary);margin-top:.5rem}.admin-photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.admin-photo-item{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;background:var(--background)}.admin-photo-item img{width:100%;height:100%;object-fit:cover}.photo-info{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);padding:1rem;display:flex;flex-direction:column;gap:.25rem}.photo-info small{color:#fff;font-size:.85rem}.delete-btn.overlay{position:absolute;top:.5rem;right:.5rem;padding:.5rem .75rem;font-size:.85rem;opacity:0;transition:opacity .2s}.admin-photo-item:hover .delete-btn.overlay{opacity:1}@media (max-width: 768px){.admin-section h2{font-size:1.5rem}.form-row{grid-template-columns:1fr}.admin-photos-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}table{font-size:.9rem}th,td{padding:.75rem .5rem}}.couple-management{width:100%}.couple-management h2{font-size:1.75rem;font-weight:800;color:var(--text);margin-bottom:2rem}.couple-management h3{font-size:1.3rem;font-weight:700;color:var(--text);margin-bottom:1rem}.error-message{padding:1rem;background:#ef44441a;border:1px solid var(--error);border-radius:8px;color:var(--error);font-weight:600;margin-bottom:1rem}.couples-list{margin-top:2rem}.couples-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;margin-top:1rem}.couple-card{background:var(--surface);border:2px solid var(--border);border-radius:12px;padding:1.5rem;transition:all .3s}.couple-card:hover{border-color:var(--primary);box-shadow:0 4px 12px #6366f11a;transform:translateY(-2px)}.couple-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.relationship-badge{display:inline-block;padding:.35rem .85rem;border-radius:20px;font-size:.85rem;font-weight:600;background:#6366f11a;color:var(--primary)}.couple-details{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.guest-info{flex:1;text-align:center}.guest-name{font-size:1.1rem;font-weight:700;color:var(--text);margin-bottom:.25rem}.guest-email{font-size:.85rem;color:var(--text-secondary)}.couple-connector{font-size:1.5rem;color:var(--primary);font-weight:700}.couple-date{text-align:center;font-size:.8rem;color:var(--text-secondary);margin-top:.5rem}@media (max-width: 768px){.couple-management{padding:1rem}.couples-grid{grid-template-columns:1fr}.couple-details{flex-direction:column;gap:.5rem}.couple-connector{transform:rotate(90deg)}}.visitor-tracking{padding:2rem}.visitor-tracking h2{margin-bottom:1.5rem;color:#2c3e50}.visitor-tracking h3{margin:2rem 0 1rem;color:#34495e;font-size:1.2rem}.stat-card.highlight{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.stat-label{font-size:.9rem;opacity:.8}.visitors-table{width:100%;border-collapse:collapse}.visitors-table thead{background:#f8f9fa;border-bottom:2px solid #e9ecef}.visitors-table th{padding:1rem;text-align:left;font-weight:600;color:#495057;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.visitors-table td{padding:1rem;border-bottom:1px solid #f1f3f5;font-size:.95rem}.visitors-table tbody tr:hover{background:#f8f9fa}.device-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600}.device-badge.desktop{background:#e3f2fd;color:#1976d2}.device-badge.mobile{background:#fce4ec;color:#c2185b}.device-badge.tablet{background:#f3e5f5;color:#7b1fa2}.referrer{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#6c757d;font-size:.85rem}@media (max-width: 768px){.visitor-tracking{padding:1rem}.stats-grid{grid-template-columns:1fr}.table-container{overflow-x:scroll}.visitors-table{font-size:.85rem}.visitors-table th,.visitors-table td{padding:.75rem .5rem}}.login-attempts{padding:2rem}.login-attempts h2{margin-bottom:1.5rem;color:#2c3e50}.login-attempts h3{margin:2rem 0 1rem;color:#34495e;font-size:1.2rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;text-align:center;box-shadow:0 2px 8px #0000001a;transition:transform .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.stat-card.success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.stat-card.failed{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff}.stat-card.highlight{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.stat-value{font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.stat-label{font-size:.9rem;opacity:.9}.filter-buttons{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.filter-buttons button{padding:.75rem 1.5rem;border:2px solid #dee2e6;background:#fff;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.95rem}.filter-buttons button:hover{border-color:#adb5bd;transform:translateY(-1px)}.filter-buttons button.active{background:#495057;color:#fff;border-color:#495057}.filter-buttons button.active.success{background:#10b981;border-color:#10b981;color:#fff}.filter-buttons button.active.failed{background:#f97316;border-color:#f97316;color:#fff}.table-container{overflow-x:auto;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.attempts-table{width:100%;border-collapse:collapse}.attempts-table thead{background:#f8f9fa;border-bottom:2px solid #e9ecef}.attempts-table th{padding:1rem;text-align:left;font-weight:600;color:#495057;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.attempts-table td{padding:1rem;border-bottom:1px solid #f1f3f5;font-size:.95rem}.attempts-table tbody tr:hover{background:#f8f9fa}.attempts-table tbody tr.success-row{background:#f0fdf4}.attempts-table tbody tr.failed-row{background:#fef2f2}.attempts-table tbody tr.success-row:hover{background:#dcfce7}.attempts-table tbody tr.failed-row:hover{background:#fee2e2}.ip-address{font-family:Courier New,monospace;color:#6c757d;font-weight:500}.attempted-name{font-weight:600;color:#495057}.attempted-code{font-family:Courier New,monospace;background:#f8f9fa;padding:.25rem .5rem;border-radius:4px;font-size:.9rem;color:#212529!important;font-weight:600}.status-badge{display:inline-block;padding:.35rem .85rem;border-radius:20px;font-size:.85rem;font-weight:600}.status-badge.success{background:#d1fae5;color:#065f46}.status-badge.failed{background:#fee2e2;color:#991b1b}.error-message{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dc2626;font-size:.9rem;font-style:italic}@media (max-width: 768px){.login-attempts{padding:1rem}.stats-grid{grid-template-columns:1fr}.filter-buttons{flex-direction:column}.filter-buttons button{width:100%}.table-container{overflow-x:scroll}.attempts-table{font-size:.85rem}.attempts-table th,.attempts-table td{padding:.75rem .5rem}}.admin-survey-management{padding:2rem;max-width:1400px;margin:0 auto}.admin-survey-management h2{margin-bottom:2rem;color:var(--text)}.surveys-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.survey-card{padding:1.5rem;background:var(--surface);border-radius:12px;border:2px solid var(--border);cursor:pointer;transition:all .3s ease}.survey-card:hover{border-color:var(--primary);box-shadow:0 4px 12px #6366f11a;transform:translateY(-2px)}.survey-card h3{margin:0 0 .5rem;color:var(--text)}.survey-card p{margin:0 0 1rem;color:var(--text-secondary);font-size:.9rem}.survey-card .status{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:600}.status.active{background:#dcfce7;color:#16a34a}.status.inactive{background:#fee2e2;color:#dc2626}.survey-responses{background:var(--surface);padding:2rem;border-radius:12px;box-shadow:0 1px 3px #0000001a}.back-btn{margin-bottom:1rem;padding:.5rem 1rem;background:var(--surface-light);border:none;border-radius:6px;cursor:pointer;font-weight:600;color:var(--text);transition:all .2s}.back-btn:hover{background:var(--border)}.responses-table{overflow-x:auto;margin-top:1.5rem}.responses-table table{width:100%;border-collapse:collapse;min-width:800px;background:var(--surface)}.responses-table th,.responses-table td{padding:.75rem;text-align:left;border-bottom:1px solid var(--border)}.responses-table th{background:var(--background);font-weight:600;color:var(--text);position:sticky;top:0;z-index:10}.responses-table td{background:var(--surface);color:var(--text)}.guest-name{font-weight:600;color:var(--text);min-width:150px;background:var(--surface)}.responses-table select,.responses-table input{width:100%;padding:.5rem;border:1px solid var(--border);border-radius:6px;font-size:.9rem;background:var(--background);color:var(--text);transition:all .2s}.responses-table select:focus,.responses-table input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #6366f11a}.rating-input{max-width:80px}.text-input{min-width:200px}.checkbox-group{display:flex;flex-direction:column;gap:.5rem;min-width:200px}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.25rem 0;transition:all .2s}.checkbox-label:hover{background:var(--surface-light);padding-left:.25rem;border-radius:4px}.checkbox-label input[type=checkbox]{width:auto;min-width:18px;height:18px;cursor:pointer;accent-color:var(--primary)}.checkbox-label span{color:var(--text);font-size:.9rem}.admin-loading{text-align:center;padding:3rem;color:var(--text-secondary)}@media (max-width: 768px){.admin-survey-management{padding:1rem}.surveys-list{grid-template-columns:1fr}.responses-table{font-size:.85rem}.responses-table th,.responses-table td{padding:.5rem}}.survey-management{padding:2rem}.survey-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.survey-header h2{margin:0;color:#1e293b}.new-survey-btn{background:#3b82f6;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.new-survey-btn:hover{background:#2563eb;transform:translateY(-1px)}.back-btn{background:#64748b;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;margin-bottom:1rem;transition:all .2s}.back-btn:hover{background:#475569}.surveys-list{display:grid;gap:1rem}.survey-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;transition:all .2s;cursor:default;pointer-events:auto}.survey-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.survey-card-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:.75rem}.survey-card-header h3{margin:0;color:#1e293b;font-size:1.25rem}.survey-badges{display:flex;gap:.5rem;flex-wrap:wrap;position:relative;z-index:5}.badge{padding:.35rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600}.badge.active{background:#dcfce7;color:#166534}.badge.inactive{background:#f1f5f9;color:#64748b}.badge.results{background:#dbeafe;color:#1e40af}.survey-description{color:#64748b;margin:.5rem 0 1rem;font-size:.95rem}.survey-actions{display:flex;gap:.75rem;flex-wrap:wrap}.survey-actions button{padding:.6rem 1.2rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;font-size:.9rem;transition:all .2s;position:relative;z-index:10;pointer-events:auto}.edit-btn{background:#f59e0b;color:#fff}.edit-btn:hover{background:#d97706;transform:translateY(-1px)}.response-btn{background:#8b5cf6;color:#fff}.response-btn:hover{background:#7c3aed;transform:translateY(-1px)}.delete-btn{background:#ef4444;color:#fff}.delete-btn:hover{background:#dc2626;transform:translateY(-1px)}.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;border:2px dashed #cbd5e1}.empty-state p{color:#64748b;font-size:1.1rem;margin-bottom:1.5rem}.create-first-btn{background:#3b82f6;color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-weight:600;cursor:pointer;font-size:1rem;transition:all .2s}.create-first-btn:hover{background:#2563eb;transform:translateY(-2px)}.survey-editor{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #00000014;max-width:800px}.survey-editor h2{margin:0 0 1.5rem;color:#1e293b}.survey-editor h3{margin:2rem 0 1rem;color:#334155;font-size:1.1rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#475569;font-weight:600;font-size:.95rem}.form-group input[type=text],.form-group textarea,.form-group select{width:100%;padding:.75rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:border-color .2s}.form-group input[type=text]:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#3b82f6}.form-group textarea{resize:vertical;font-family:inherit}.form-row{display:flex;gap:2rem;align-items:center;margin-bottom:1.5rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;color:#475569;font-weight:600;cursor:pointer}.checkbox-label input[type=checkbox]{width:1.25rem;height:1.25rem;cursor:pointer}.questions-section{margin-top:2rem}.question-editor{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;margin-bottom:1rem}.question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.question-number{font-weight:700;color:#3b82f6;font-size:1rem}.remove-btn{background:#ef4444;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-weight:600;cursor:pointer;font-size:.85rem;transition:all .2s}.remove-btn:hover{background:#dc2626}.options-section{margin-top:1rem;padding:1rem;background:#fff;border-radius:8px}.options-section label{display:block;margin-bottom:.75rem;color:#475569;font-weight:600;font-size:.9rem}.option-row{display:flex;gap:.75rem;margin-bottom:.75rem;align-items:center}.option-row input{flex:1;padding:.6rem;border:2px solid #e2e8f0;border-radius:6px;font-size:.95rem}.option-row input:focus{outline:none;border-color:#3b82f6}.remove-option-btn{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:.25rem;transition:transform .2s}.remove-option-btn:hover{transform:scale(1.2)}.add-option-btn{background:#3b82f6;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:6px;font-weight:600;cursor:pointer;font-size:.9rem;transition:all .2s}.add-option-btn:hover{background:#2563eb}.add-question-btn{background:#10b981;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;margin-top:1rem;width:100%;font-size:1rem;transition:all .2s}.add-question-btn:hover{background:#059669}.editor-actions{display:flex;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:2px solid #e2e8f0}.cancel-btn{flex:1;background:#64748b;color:#fff;border:none;padding:.875rem;border-radius:8px;font-weight:600;cursor:pointer;font-size:1rem;transition:all .2s}.cancel-btn:hover{background:#475569}.save-btn{flex:2;background:#10b981;color:#fff;border:none;padding:.875rem;border-radius:8px;font-weight:600;cursor:pointer;font-size:1rem;transition:all .2s}.save-btn:hover{background:#059669}@media (max-width: 768px){.survey-management{padding:1rem}.survey-header{flex-direction:column;gap:1rem;align-items:stretch}.survey-editor{padding:1.5rem}.form-row{flex-direction:column;gap:1rem;align-items:flex-start}.survey-actions{flex-direction:column}.survey-actions button{width:100%}.editor-actions{flex-direction:column}}.online-users-tracking{padding:20px}.tracking-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #e5e7eb}.tracking-header h2{font-size:24px;color:#1f2937;margin:0;display:flex;align-items:center;gap:10px}.online-count-badge{background:linear-gradient(135deg,#4ade80,#22c55e);color:#fff;padding:8px 20px;border-radius:20px;font-weight:600;font-size:14px;box-shadow:0 4px 12px #4ade804d}.no-users{text-align:center;padding:60px 20px;background:#f9fafb;border-radius:12px;border:2px dashed #d1d5db}.no-users p{font-size:18px;color:#6b7280;margin:0}.users-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.user-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000d;transition:all .3s ease}.user-card:hover{box-shadow:0 8px 24px #0000001a;transform:translateY(-2px);border-color:#4ade80}.user-card-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #f3f4f6}.user-avatar-section{position:relative;flex-shrink:0}.user-avatar-img,.user-avatar-placeholder-admin{width:50px;height:50px;border-radius:50%;object-fit:cover}.user-avatar-img{border:3px solid #4ade80;box-shadow:0 0 0 2px #4ade8033}.user-avatar-placeholder-admin{background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px;color:#fff;border:3px solid #4ade80;box-shadow:0 0 0 2px #4ade8033}.online-dot{position:absolute;bottom:2px;right:2px;width:14px;height:14px;background:#4ade80;border:3px solid white;border-radius:50%;box-shadow:0 0 8px #4ade8099;animation:pulse-dot 2s ease-in-out infinite}.user-details{flex:1;min-width:0}.user-name-admin{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-time{font-size:13px;color:#6b7280;margin:0}.user-activity{display:flex;flex-direction:column;gap:12px}.activity-item{display:flex;align-items:flex-start;gap:10px;padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.activity-item.game{background:linear-gradient(135deg,#4ade801a,#22c55e0d);border-color:#4ade804d}.activity-icon{font-size:20px;flex-shrink:0}.activity-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.activity-label{font-size:11px;font-weight:600;text-transform:uppercase;color:#6b7280;letter-spacing:.5px}.activity-value{font-size:14px;font-weight:500;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-value.game-name{color:#22c55e;font-weight:600}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.15)}}@media (max-width: 768px){.users-grid{grid-template-columns:1fr}.tracking-header{flex-direction:column;align-items:flex-start;gap:12px}.online-count-badge{align-self:stretch;text-align:center}}.incomplete-surveys{padding:var(--spacing-md)}.incomplete-surveys-loading{display:flex;justify-content:center;align-items:center;padding:var(--spacing-3xl);color:var(--text-secondary);font-size:1.1rem}.incomplete-surveys-header{display:flex;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);flex-wrap:wrap}.incomplete-surveys-header h2{margin:0;color:var(--text);font-size:1.5rem;font-weight:700}.filter-buttons{display:flex;gap:var(--spacing-sm)}.filter-buttons button{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);font-size:.875rem;font-weight:500}.filter-buttons button:hover{background:var(--surface-light);border-color:var(--border-light);color:var(--text)}.filter-buttons button.active{background:var(--secondary);color:#fff;border-color:var(--secondary)}.refresh-btn{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text-secondary);cursor:pointer;margin-left:auto;transition:all var(--transition-fast);font-weight:500}.refresh-btn:hover{background:var(--surface-light);border-color:var(--accent);color:var(--accent)}.empty-state{text-align:center;padding:var(--spacing-3xl);color:var(--text-muted);background:var(--surface);border-radius:var(--radius-lg);border:1px dashed var(--border)}.surveys-completion-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.survey-completion-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);overflow:hidden;transition:all var(--transition-fast)}.survey-completion-card:hover{border-color:var(--border-light)}.survey-completion-header{display:flex;align-items:center;padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;transition:background var(--transition-fast);gap:var(--spacing-lg)}.survey-completion-header:hover{background:var(--surface-light)}.survey-info{flex:1;min-width:200px}.survey-info h3{margin:0 0 var(--spacing-xs) 0;font-size:1.1rem;font-weight:600;color:var(--text)}.question-count{font-size:.8rem;color:var(--text-muted)}.completion-stats{display:flex;align-items:center;gap:var(--spacing-lg)}.stat{display:flex;flex-direction:column;align-items:center;min-width:65px}.stat-value{font-size:1.25rem;font-weight:700;color:var(--text)}.stat-value.completed{color:var(--success)}.stat-value.incomplete{color:var(--accent)}.stat-label{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.completion-bar{width:120px;height:8px;background:var(--surface-lighter);border-radius:var(--radius-full);overflow:hidden}.completion-fill{height:100%;background:linear-gradient(90deg,var(--secondary),var(--secondary-light));border-radius:var(--radius-full);transition:width .4s ease}.completion-percent{font-size:.9rem;font-weight:600;color:var(--text-secondary);min-width:45px;text-align:right}.expand-icon{font-size:.75rem;color:var(--text-muted);transition:transform var(--transition-fast)}.expand-icon.expanded{color:var(--accent)}.guests-list{border-top:1px solid var(--border);max-height:500px;overflow-y:auto}.guests-list::-webkit-scrollbar{width:6px}.guests-list::-webkit-scrollbar-track{background:var(--surface)}.guests-list::-webkit-scrollbar-thumb{background:var(--surface-lighter);border-radius:var(--radius-full)}.all-complete-message{padding:var(--spacing-xl);text-align:center;color:var(--success);font-weight:500}.guest-status{border-bottom:1px solid var(--border)}.guest-status:last-child{border-bottom:none}.guest-status-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;transition:background var(--transition-fast)}.guest-status.complete .guest-status-header{cursor:default;background:#05966914}.guest-status.incomplete .guest-status-header:hover{background:var(--surface-light)}.guest-info{display:flex;align-items:center;gap:var(--spacing-md)}.guest-avatar{width:36px;height:36px;border-radius:var(--radius-full);object-fit:cover;border:2px solid var(--border)}.guest-name{font-weight:600;color:var(--text);font-size:.95rem}.guest-progress{display:flex;align-items:center;gap:var(--spacing-md)}.progress-text{font-size:.875rem;color:var(--text-secondary);min-width:50px;font-weight:500}.mini-progress-bar{width:80px;height:6px;background:var(--surface-lighter);border-radius:var(--radius-full);overflow:hidden}.mini-progress-fill{height:100%;background:var(--accent);border-radius:var(--radius-full);transition:width .3s ease}.mini-progress-fill.complete{background:var(--success)}.progress-percent{font-size:.8rem;color:var(--text-muted);min-width:40px;text-align:right}.status-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.complete{background:#05966926;color:var(--success)}.status-badge.incomplete{background:#f59e0b26;color:var(--accent)}.guest-expand-icon{font-size:.7rem;color:var(--text-muted);margin-left:var(--spacing-sm);transition:transform var(--transition-fast)}.unanswered-questions{background:var(--background-light);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--border)}.unanswered-questions h4{margin:0 0 var(--spacing-md) 0;font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.unanswered-questions ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.unanswered-questions li{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border);flex-wrap:wrap}.question-number{font-weight:600;color:var(--text-muted);font-size:.75rem;min-width:55px}.question-text{flex:1;color:var(--text);font-size:.875rem;min-width:200px}.question-type{padding:3px 8px;border-radius:var(--radius-sm);font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.question-type.single_choice{background:#3b82f626;color:var(--info)}.question-type.multiple_choice{background:#8b5cf626;color:#a78bfa}.question-type.text{background:#f59e0b26;color:var(--accent)}.question-type.rating{background:#05966926;color:var(--success)}.question-type.yes_no{background:#6366f126;color:#818cf8}.required-badge{padding:2px 6px;border-radius:var(--radius-sm);font-size:.6rem;background:#dc262626;color:var(--error);font-weight:600;text-transform:uppercase;letter-spacing:.3px}@media (max-width: 900px){.survey-completion-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.completion-stats{width:100%;justify-content:flex-start;flex-wrap:wrap;gap:var(--spacing-md)}.completion-bar{width:100px}}@media (max-width: 768px){.incomplete-surveys-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.refresh-btn{margin-left:0}.guest-status-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.guest-progress{width:100%;flex-wrap:wrap;gap:var(--spacing-sm)}.unanswered-questions li{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.question-text{min-width:auto}.stat{min-width:50px}.stat-value{font-size:1.1rem}}.admin-dashboard{width:100%;min-height:100vh;background:var(--background)}.admin-header{background:var(--surface);padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border)}.admin-header h1{font-size:1.75rem;font-weight:800;color:var(--text)}.admin-content{max-width:1400px;margin:0 auto;padding:2rem}.admin-tabs{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.admin-tabs button{padding:.75rem 1.5rem;background:var(--surface);color:var(--text);border-radius:12px;font-weight:600;transition:all .2s;border:2px solid transparent}.admin-tabs button:hover{background:var(--surface-light);transform:translateY(-1px)}.admin-tabs button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.admin-panel{background:var(--surface);border-radius:16px;padding:2rem}@media (max-width: 768px){.admin-header{padding:1rem 1.5rem}.admin-header h1{font-size:1.3rem}.admin-content{padding:1.5rem}.admin-tabs{gap:.5rem}.admin-tabs button{padding:.6rem 1rem;font-size:.9rem}.admin-panel{padding:1.5rem}}.maintenance-page{width:100%;height:100%;background:linear-gradient(180deg,#e74c3c,#c0392b);position:fixed;top:0;left:0;overflow-y:auto;overflow-x:hidden;display:flex;align-items:center;justify-content:center;padding:2rem;-webkit-overflow-scrolling:touch}.maintenance-page .ornament{position:absolute;width:70px;height:70px;z-index:2}.maintenance-page .ornament-1{top:8%;left:12%}.maintenance-page .ornament-2{top:10%;right:12%}.maintenance-page .candy{position:absolute;width:55px;height:55px;z-index:2}.maintenance-page .candy-1{top:15%;right:22%}.maintenance-page .star{position:absolute;font-size:2rem;z-index:2;filter:drop-shadow(0 0 10px rgba(255,255,255,.8))}.maintenance-page .star-1{top:12%;left:22%}.maintenance-page .star-2{top:18%;right:30%}.maintenance-page .star-3{top:25%;left:35%}.maintenance-page .nutcracker{position:absolute;bottom:5%;width:120px;height:auto;z-index:2;filter:drop-shadow(0 8px 16px rgba(0,0,0,.3))}.maintenance-page .nutcracker-left{left:5%}.maintenance-page .nutcracker-right{right:5%}.maintenance-page .flying-element{position:absolute;width:120px;height:auto;z-index:3;filter:drop-shadow(0 8px 16px rgba(0,0,0,.3))}.maintenance-content{position:relative;z-index:10;text-align:center;width:100%;max-width:500px}.maintenance-page .party-title{font-size:4rem;font-weight:900;color:#fff;text-shadow:0 8px 24px rgba(0,0,0,.4);margin-bottom:1rem;line-height:1;letter-spacing:3px}.maintenance-page .christmas-tree{width:180px;height:auto;margin:2rem auto;display:block;filter:drop-shadow(0 8px 20px rgba(0,0,0,.4))}.maintenance-message{font-size:1.5rem;font-weight:700;color:#fff;margin:2rem 0;text-shadow:0 4px 12px rgba(0,0,0,.4);line-height:1.6}.loading-dots{display:flex;gap:.75rem;justify-content:center;margin-top:2rem}.loading-dots span{width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 4px 12px #fff9}@media (max-width: 768px){.maintenance-page{padding:1rem}.maintenance-page .party-title{font-size:2.5rem;letter-spacing:2px}.maintenance-page .ornament{width:45px;height:45px}.maintenance-page .candy{width:38px;height:38px}.maintenance-page .star{font-size:1.3rem}.maintenance-page .star-3{display:none}.maintenance-page .christmas-tree{width:140px}.maintenance-page .nutcracker{width:80px}.maintenance-page .nutcracker-left{left:2%}.maintenance-page .nutcracker-right{right:2%}.maintenance-page .flying-element{width:90px}.maintenance-message{font-size:1.2rem}.loading-dots span{width:12px;height:12px}}@media (max-width: 480px){.maintenance-page .party-title{font-size:2rem;letter-spacing:1px}.maintenance-page .ornament{width:35px;height:35px}.maintenance-page .candy-1{display:none}.maintenance-page .star{font-size:1rem}.maintenance-page .star-1{top:8%;left:15%}.maintenance-page .star-2{top:12%;right:20%}.maintenance-page .christmas-tree{width:110px}.maintenance-page .nutcracker{width:60px}.maintenance-page .flying-element{width:70px}.maintenance-message{font-size:1rem}.loading-dots span{width:10px;height:10px}}@media (max-width: 768px){.maintenance-page *{will-change:auto}}.leaderboard{width:100%;max-width:600px;margin:0 auto;padding:1rem;background:linear-gradient(135deg,#6366f11a,#ec48991a);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000004d}.leaderboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid rgba(255,255,255,.1)}.leaderboard-header h2{font-size:1.5rem;margin:0;background:linear-gradient(135deg,#fbbf24,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800}.live-indicator{display:flex;align-items:center;gap:.5rem;padding:.4rem .8rem;background:#ef444433;border:1px solid rgba(239,68,68,.5);border-radius:20px;font-size:.75rem;font-weight:700;color:#fca5a5;letter-spacing:.5px}.pulse-dot{width:8px;height:8px;background:#ef4444;border-radius:50%;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}.leaderboard-content{display:flex;flex-direction:column;gap:.75rem}.leaderboard-row{display:flex;align-items:center;gap:1rem;padding:1rem;background:#0f172a80;border-radius:12px;border:1px solid rgba(255,255,255,.05);transition:all .3s ease;position:relative;overflow:hidden}.leaderboard-row:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,#6366f100,#6366f10d,#6366f100);opacity:0;transition:opacity .3s ease}.leaderboard-row:hover:before{opacity:1}.leaderboard-row:hover{border-color:#6366f14d;transform:translate(5px);box-shadow:0 4px 20px #6366f133}.leaderboard-row.top-three{background:linear-gradient(135deg,#fbbf241a,#f59e0b0d);border-color:#fbbf244d}.leaderboard-row.top-three:hover{box-shadow:0 4px 25px #fbbf244d}.leaderboard-row.current-user{background:linear-gradient(135deg,#ec489933,#db27771a);border-color:#ec489980;border-width:2px}.leaderboard-row.current-user:after{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,#ec4899,#db2777)}.rank-section{display:flex;align-items:center;justify-content:center;min-width:40px;font-weight:700}.rank-medal{font-size:2rem;display:inline-block;filter:drop-shadow(0 0 10px rgba(251,191,36,.5))}.rank-number{font-size:1.2rem;color:#ffffff80;font-weight:700}.player-info{flex:1;display:flex;flex-direction:column;gap:.25rem;min-width:0}.player-name{font-size:1rem;font-weight:600;color:#fff;display:flex;align-items:center;gap:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.you-badge{display:inline-block;padding:.15rem .5rem;background:linear-gradient(135deg,#ec4899,#db2777);border-radius:12px;font-size:.65rem;font-weight:700;letter-spacing:.5px;color:#fff;animation:glow 2s ease-in-out infinite}@keyframes glow{0%,to{box-shadow:0 0 5px #ec489980}50%{box-shadow:0 0 15px #ec4899cc}}.player-stats-mini{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.player-stats-mini .stat{font-size:.75rem;color:#fff9;display:flex;align-items:center;gap:.25rem}.score-section{display:flex;flex-direction:column;align-items:flex-end;min-width:80px}.score-value{font-size:1.5rem;font-weight:800;background:linear-gradient(135deg,#fbbf24,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.score-label{font-size:.7rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem}.leaderboard-loading,.leaderboard-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center}.loading-spinner{font-size:3rem;animation:spin 1s linear infinite}.empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.7}.leaderboard-empty h3{font-size:1.3rem;margin:.5rem 0;color:#fff}.leaderboard-empty p{color:#fff9;font-size:.95rem}.leaderboard-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1);text-align:center}.update-info{display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.8rem;color:#ffffff80;margin:0}.leaderboard-compact{padding:.75rem;max-width:400px}.leaderboard-compact .leaderboard-header h2{font-size:1.2rem}.leaderboard-compact .leaderboard-row{padding:.75rem;gap:.75rem}.leaderboard-compact .rank-medal{font-size:1.5rem}.leaderboard-compact .player-name{font-size:.9rem}.leaderboard-compact .score-value{font-size:1.2rem}@media (max-width: 480px){.leaderboard{padding:.75rem;border-radius:15px}.leaderboard-header h2{font-size:1.2rem}.live-indicator{font-size:.65rem;padding:.3rem .6rem}.leaderboard-row{padding:.75rem;gap:.75rem}.rank-section{min-width:35px}.rank-medal{font-size:1.5rem}.rank-number{font-size:1rem}.player-name{font-size:.9rem}.player-stats-mini .stat{font-size:.7rem}.score-value{font-size:1.2rem}.score-label{font-size:.65rem}.you-badge{font-size:.6rem;padding:.1rem .4rem}}@media (max-width: 360px){.leaderboard-row{gap:.5rem}.rank-section{min-width:30px}.player-name{font-size:.85rem}.score-value{font-size:1.1rem}}.game-lobby{min-height:100vh;background:linear-gradient(135deg,var(--background) 0%,var(--background-light) 50%,var(--background) 100%);color:var(--text);padding-bottom:var(--spacing-3xl);position:relative}.game-lobby:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 20% 50%,rgba(220,38,38,.03) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(5,150,105,.03) 0%,transparent 50%),radial-gradient(circle at 40% 20%,rgba(251,191,36,.03) 0%,transparent 50%);pointer-events:none;z-index:0}.lobby-header{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:12px 16px;background:linear-gradient(180deg,rgba(0,0,0,.8) 0%,rgba(0,0,0,.6) 70%,transparent 100%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:none;box-shadow:none;pointer-events:none}.lobby-header h1{flex:1;text-align:center;font-size:1.25rem;font-weight:800;margin:0;background:var(--gradient-festive);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:.5px;pointer-events:auto}.back-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:8px 16px;background:#fff3;border:none;border-radius:20px;color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s ease;white-space:nowrap;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #0003;pointer-events:auto}.back-btn:hover{background:#ffffff4d;transform:translate(-4px);box-shadow:0 6px 16px #0000004d}.player-badge{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#fff3;border:none;border-radius:20px;font-size:14px;font-weight:600;color:#fff;white-space:nowrap;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #0003;pointer-events:auto}.player-icon{font-size:1.1rem}.lobby-nav{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:90;display:flex;gap:12px;padding:8px;background:#0009;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:50px;box-shadow:0 8px 32px #0006;pointer-events:auto}.nav-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;background:transparent;border:none;border-radius:50px;color:#fff9;font-weight:600;font-size:15px;cursor:pointer;transition:all .3s ease;position:relative;white-space:nowrap}.nav-btn:hover{color:#ffffffe6;background:#ffffff1a}.nav-btn.active{background:linear-gradient(135deg,#dc2626,#fbbf24);color:#fff;box-shadow:0 4px 16px #dc262680}.nav-icon{font-size:1.2rem}.lobby-content{position:relative;z-index:1;padding:100px var(--spacing-xl) 100px;max-width:1600px;margin:0 auto}.games-view,.leaderboard-view{width:100%}.active-sessions-section,.games-section{margin-bottom:var(--spacing-3xl);animation:slideUpFade .6s ease-out forwards}@keyframes slideUpFade{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.active-sessions-section h2,.games-section h2{font-size:1.75rem;font-weight:800;margin:0 0 var(--spacing-sm) 0;background:var(--gradient-red-gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section-subtitle{margin:0 0 var(--spacing-xl) 0;color:var(--text-secondary);font-size:1rem;font-weight:500}.sessions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-xl)}.session-card{position:relative;padding:var(--spacing-xl);background:linear-gradient(135deg,#1e293be6,#0f172acc);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid var(--primary-light);border-radius:var(--radius-2xl);box-shadow:0 8px 24px #dc262633;transition:var(--transition-base);overflow:hidden}.session-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at top right,rgba(220,38,38,.1) 0%,transparent 60%);opacity:0;transition:var(--transition-base)}.session-card:hover{transform:translateY(-6px);box-shadow:0 12px 32px #dc26264d;border-color:var(--accent-light)}.session-card:hover:before{opacity:1}.session-icon{position:relative;z-index:1;font-size:3.5rem;text-align:center;margin-bottom:var(--spacing-md);filter:drop-shadow(0 4px 16px rgba(220,38,38,.4));animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.session-card h3{position:relative;z-index:1;margin:0 0 var(--spacing-lg) 0;font-size:1.4rem;text-align:center;color:var(--text);font-weight:700}.session-info{position:relative;z-index:1;display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.info-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:#0000004d;border-radius:var(--radius-md);border-left:3px solid var(--accent-light)}.info-row .label{font-size:.85rem;color:var(--text-muted);font-weight:600}.info-row .value{font-size:.95rem;color:var(--text);font-weight:700}.join-btn{position:relative;z-index:1;width:100%;padding:var(--spacing-md) var(--spacing-lg);background:var(--gradient-red-gold);border:none;border-radius:var(--radius-lg);color:var(--text);font-weight:700;font-size:1.05rem;cursor:pointer;transition:var(--transition-base);box-shadow:0 4px 16px var(--primary-glow)}.join-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px var(--primary-glow)}.join-btn:disabled{opacity:.5;cursor:not-allowed}.status-badge{position:absolute;top:var(--spacing-lg);right:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-full);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;z-index:2}.status-waiting{background:linear-gradient(135deg,#0596694d,#05966933);border:2px solid var(--secondary-light);color:var(--ice-blue);box-shadow:0 0 12px #05966966}.status-active{background:linear-gradient(135deg,#fbbf244d,#fbbf2433);border:2px solid var(--accent-light);color:var(--accent-light);box-shadow:0 0 12px var(--accent-glow);animation:pulse-badge 2s ease-in-out infinite}@keyframes pulse-badge{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-xl)}.game-card{position:relative;padding:var(--spacing-2xl);background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);transition:var(--transition-base);display:flex;flex-direction:column;overflow:hidden}.game-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--gradient-festive);opacity:0;transition:var(--transition-base)}.game-card:hover{transform:translateY(-6px) scale(1.02);box-shadow:var(--shadow-xl);border-color:var(--border-light)}.game-card:hover:before{opacity:.04}.game-icon{position:relative;z-index:1;font-size:4rem;text-align:center;margin-bottom:var(--spacing-lg);filter:drop-shadow(0 4px 12px rgba(0,0,0,.3));transition:var(--transition-base)}.game-card:hover .game-icon{transform:scale(1.1) rotate(-5deg);filter:drop-shadow(0 8px 20px rgba(220,38,38,.5))}.game-card h3{position:relative;z-index:1;margin:0 0 var(--spacing-md) 0;font-size:1.5rem;text-align:center;color:var(--text);font-weight:800}.game-description{position:relative;z-index:1;flex:1;margin:0 0 var(--spacing-lg) 0;color:var(--text-secondary);font-size:.95rem;line-height:1.6;text-align:center}.game-meta{position:relative;z-index:1;display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:#0003;border-radius:var(--radius-lg)}.meta-item{font-size:.8rem;color:var(--text-secondary);font-weight:600}.game-type{padding:var(--spacing-xs) var(--spacing-md);background:var(--gradient-red-gold);border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;color:var(--text);font-weight:700}.top-scorer-info{position:relative;z-index:1;display:flex;align-items:center;gap:var(--spacing-md);margin:var(--spacing-md) 0 var(--spacing-lg) 0;padding:var(--spacing-md);background:linear-gradient(135deg,#fbbf2426,#dc262626);border:1px solid rgba(251,191,36,.3);border-radius:var(--radius-lg);transition:var(--transition-base)}.game-card:hover .top-scorer-info{background:linear-gradient(135deg,#fbbf2440,#dc262640);border-color:#fbbf2480;box-shadow:0 4px 12px #fbbf244d}.scorer-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;border:2px solid var(--accent-light);box-shadow:0 0 12px #fbbf2480;flex-shrink:0;background:linear-gradient(135deg,var(--primary-light),var(--accent));display:flex;align-items:center;justify-content:center}.scorer-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{font-size:24px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.scorer-details{flex:1;display:flex;flex-direction:column;gap:2px}.scorer-label{font-size:.7rem;color:var(--accent-light);font-weight:700;text-transform:uppercase;letter-spacing:.5px;text-shadow:0 0 8px rgba(251,191,36,.6)}.scorer-name{font-size:.95rem;color:var(--text);font-weight:700;line-height:1.2}.scorer-score{font-size:.85rem;color:var(--accent-light);font-weight:600}.top-scorer-hint{font-size:.7rem;color:var(--text-secondary);font-weight:500;margin-top:4px;padding-top:4px;border-top:1px solid rgba(255,255,255,.1)}.start-btn{position:relative;z-index:1;width:100%;padding:var(--spacing-md) var(--spacing-xl);background:var(--gradient-green-ice);border:none;border-radius:var(--radius-lg);color:var(--text);font-weight:700;font-size:1.05rem;cursor:pointer;transition:var(--transition-base);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);box-shadow:0 4px 12px var(--secondary-glow)}.start-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px var(--secondary-glow)}.btn-icon{font-size:1.2rem}.game-card.solo-game{border-color:var(--accent-light);background:linear-gradient(135deg,#1e293be6,#0f172ae6)}.game-card.solo-game:hover{border-color:var(--accent-light);box-shadow:0 12px 32px var(--accent-glow)}.solo-badge{background:var(--gradient-red-gold);color:var(--text)!important;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:.75rem!important;font-weight:700;box-shadow:0 2px 8px var(--accent-glow)}.start-btn.solo-btn{background:var(--gradient-red-gold);box-shadow:0 4px 12px var(--accent-glow)}.start-btn.solo-btn:hover{box-shadow:0 8px 20px var(--accent-glow)}.game-card.multiplayer-game{border-color:var(--secondary-light)}.game-card.multiplayer-game:hover{border-color:var(--secondary-light);box-shadow:0 12px 32px var(--secondary-glow)}.game-lobby-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:var(--background);color:var(--text)}.game-lobby-loading .loading-spinner{font-size:5rem;animation:bounce 1.2s ease-in-out infinite;filter:drop-shadow(0 4px 16px var(--primary-glow))}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-30px)}}.game-lobby-loading p{margin-top:var(--spacing-xl);font-size:1.2rem;color:var(--text-secondary);font-weight:600}@media (max-width: 768px){.lobby-header{top:0;padding:var(--spacing-sm) var(--spacing-md);flex-wrap:nowrap;gap:var(--spacing-sm)}.lobby-header h1{font-size:1rem}.back-btn{padding:6px 10px;font-size:.8rem;max-width:70px}.player-badge{font-size:.75rem;padding:6px 10px;max-width:120px;overflow:hidden;text-overflow:ellipsis}.lobby-nav{padding:var(--spacing-md);gap:var(--spacing-sm)}.nav-btn{padding:var(--spacing-sm) var(--spacing-md);font-size:.9rem}.nav-icon{font-size:1.1rem}.lobby-content{padding:100px var(--spacing-md) 100px}.sessions-grid,.games-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.game-card,.session-card{padding:var(--spacing-lg)}.game-icon,.session-icon{font-size:3rem}.game-card h3,.session-card h3{font-size:1.25rem}.game-description{font-size:.9rem}.active-sessions-section h2,.games-section h2{font-size:1.5rem}}@media (max-width: 480px){.lobby-header{top:0;padding:6px 8px;gap:6px}.lobby-header h1{font-size:.85rem;flex:1;min-width:0}.back-btn{padding:4px 8px;font-size:.7rem;min-width:fit-content;max-width:60px}.player-badge{padding:4px 8px;font-size:.65rem;min-width:fit-content;max-width:100px}.game-card,.session-card{padding:var(--spacing-md)}.game-icon,.session-icon{font-size:2.5rem}.start-btn,.join-btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:.95rem}}@media (min-width: 769px) and (max-width: 1024px){.sessions-grid,.games-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1400px){.lobby-content{padding:var(--spacing-2xl) var(--spacing-3xl)}.sessions-grid,.games-grid{grid-template-columns:repeat(3,1fr);gap:var(--spacing-2xl)}.game-card h3,.session-card h3{font-size:1.6rem}.game-description{font-size:1rem}}.hizli-parmak{min-height:100vh;background:linear-gradient(135deg,#1e1b4b,#312e81,#1e1b4b);color:#fff;display:flex;flex-direction:column}.game-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:2px solid rgba(251,191,36,.3);position:sticky;top:0;z-index:100}.leave-btn{padding:.5rem 1rem;background:#ef444433;border:1px solid rgba(239,68,68,.5);border-radius:8px;color:#ef4444;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:.9rem}.leave-btn:hover{background:#ef44444d;transform:translate(-3px)}.game-info{display:flex;flex-direction:column;align-items:center;gap:.25rem}.game-info h1{font-size:1.2rem;margin:0;background:linear-gradient(135deg,#fbbf24,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.round-indicator{padding:.25rem .75rem;background:#fbbf2433;border:1px solid rgba(251,191,36,.5);border-radius:12px;font-size:.75rem;font-weight:700;color:#fbbf24}.host-badge{padding:.5rem 1rem;background:linear-gradient(135deg,#fbbf244d,#f59e0b4d);border:1px solid rgba(251,191,36,.5);border-radius:8px;font-size:.85rem;font-weight:700;color:#fbbf24}.game-container{display:grid;grid-template-columns:200px 1fr 200px;gap:1rem;padding:1rem;flex:1;max-width:1400px;margin:0 auto;width:100%}.players-sidebar{background:#0000004d;border-radius:12px;padding:1rem;height:fit-content;border:1px solid rgba(255,255,255,.1)}.players-sidebar h3{margin:0 0 1rem;font-size:1rem;color:#fffc}.players-list{display:flex;flex-direction:column;gap:.5rem}.player-item{display:flex;align-items:center;justify-content:space-between;padding:.5rem;background:#ffffff0d;border-radius:8px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.player-item.current{background:#ec489933;border-color:#ec489980}.player-name{font-size:.9rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crown{font-size:1rem}.game-area{display:flex;align-items:center;justify-content:center;background:#0003;border-radius:16px;border:2px solid rgba(251,191,36,.3);min-height:500px;position:relative;overflow:hidden}.phase-container{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;width:100%}.phase-container h2{font-size:2rem;margin:0 0 1rem;color:#fff}.phase-container p{font-size:1.1rem;color:#ffffffb3;margin:0 0 2rem}.start-round-btn{padding:1rem 2rem;background:linear-gradient(135deg,#fbbf24,#f59e0b);border:none;border-radius:12px;color:#1e1b4b;font-weight:800;font-size:1.2rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #fbbf2480}.start-round-btn:hover{transform:translateY(-3px);box-shadow:0 6px 30px #fbbf24b3}.waiting-text{font-size:1rem;color:#fff9;font-style:italic}.countdown-phase{background:radial-gradient(circle,rgba(251,191,36,.2) 0%,transparent 70%)}.countdown-number{font-size:8rem;font-weight:900;background:linear-gradient(135deg,#fbbf24,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 30px rgba(251,191,36,.8))}.waiting-phase{background:radial-gradient(circle,rgba(99,102,241,.2) 0%,transparent 70%)}.waiting-indicator{font-size:6rem;margin-bottom:1rem;filter:drop-shadow(0 0 20px rgba(99,102,241,.5))}.tap-phase{background:radial-gradient(circle,rgba(34,197,94,.3) 0%,transparent 70%)}.tap-button{width:300px;height:300px;border-radius:50%;background:linear-gradient(135deg,#fbbf24,#f59e0b);border:6px solid #ffffff;color:#1e1b4b;font-size:2.5rem;font-weight:900;cursor:pointer;transition:all .2s ease;box-shadow:0 10px 50px #fbbf24cc;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.tap-button:active:not(:disabled){transform:scale(.9)}.tap-button.clicked{background:linear-gradient(135deg,#22c55e,#16a34a);cursor:not-allowed;animation:success-pulse .5s ease-out}@keyframes success-pulse{0%{transform:scale(1);box-shadow:0 0 #22c55eb3}50%{transform:scale(1.1);box-shadow:0 0 0 50px #22c55e00}to{transform:scale(1);box-shadow:0 0 #22c55e00}}.result-phase{background:radial-gradient(circle,rgba(251,191,36,.2) 0%,transparent 70%)}.winner-announcement{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-bottom:2rem}.trophy{font-size:5rem;filter:drop-shadow(0 0 20px rgba(251,191,36,.8));animation:trophy-bounce .6s ease-out}@keyframes trophy-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.winner-announcement h2{font-size:2.5rem;margin:0;background:linear-gradient(135deg,#fbbf24,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.reaction-time{font-size:1.8rem;font-weight:700;padding:.75rem 1.5rem;background:#fbbf2433;border:2px solid rgba(251,191,36,.5);border-radius:12px;color:#fbbf24}.you-won-badge{padding:.5rem 1.5rem;background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:20px;font-size:1rem;font-weight:700;color:#fff;animation:glow 1.5s ease-in-out infinite}.next-round-btn{padding:1rem 2rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:12px;color:#fff;font-weight:700;font-size:1.1rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #6366f180}.next-round-btn:hover{transform:translateY(-3px);box-shadow:0 6px 30px #6366f1b3}.finished-phase{background:radial-gradient(circle,rgba(236,72,153,.2) 0%,transparent 70%)}.final-winner{margin:2rem 0;padding:2rem;background:#fbbf241a;border:2px solid rgba(251,191,36,.5);border-radius:16px}.winner-icon{font-size:4rem;margin-bottom:1rem;filter:drop-shadow(0 0 15px rgba(251,191,36,.7))}.final-winner h3{font-size:1.8rem;margin:.5rem 0;color:#fbbf24}.winner-score{font-size:2rem;font-weight:800;background:linear-gradient(135deg,#fbbf24,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.back-lobby-btn{padding:1rem 2rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:12px;color:#fff;font-weight:700;font-size:1.1rem;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #6366f180}.back-lobby-btn:hover{transform:translateY(-3px);box-shadow:0 6px 30px #6366f1b3}.session-leaderboard{background:#0000004d;border-radius:12px;padding:1rem;height:fit-content;border:1px solid rgba(255,255,255,.1)}.session-leaderboard h3{margin:0 0 1rem;font-size:1rem;color:#fffc}.leaderboard-list{display:flex;flex-direction:column;gap:.5rem}.leaderboard-entry{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:.5rem;padding:.5rem;background:#ffffff0d;border-radius:8px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.leaderboard-entry.current{background:#ec489933;border-color:#ec489980}.leaderboard-entry .rank{font-weight:700;color:#fbbf24;text-align:center}.leaderboard-entry .name{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leaderboard-entry .score{font-weight:700;color:#fbbf24}.no-scores{text-align:center;color:#ffffff80;font-size:.9rem;padding:1rem}.hizli-parmak-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#1e1b4b,#312e81);color:#fff}.hizli-parmak-loading .loading-spinner{font-size:4rem;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hizli-parmak-loading p{margin-top:1rem;font-size:1.1rem;color:#ffffffb3}@media (max-width: 1024px){.game-container{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}.players-sidebar,.session-leaderboard{width:100%;max-width:500px;margin:0 auto}.game-area{order:1;min-height:400px}.players-sidebar{order:0}.session-leaderboard{order:2}}@media (max-width: 768px){.game-header h1{font-size:1rem}.tap-button{width:250px;height:250px;font-size:2rem}.countdown-number{font-size:6rem}.winner-announcement h2{font-size:2rem}.reaction-time{font-size:1.5rem}}@media (max-width: 480px){.game-header{padding:.75rem}.game-container{padding:.75rem;gap:.75rem}.tap-button{width:200px;height:200px;font-size:1.8rem}.countdown-number{font-size:5rem}.phase-container h2,.winner-announcement h2{font-size:1.5rem}.trophy{font-size:4rem}}.flappy-santa{position:fixed;top:0;left:0;width:100%;height:100vh;height:100dvh;z-index:9999;background:linear-gradient(180deg,#1a1a2e,#0f3460,#16213e);color:#fff;overflow:hidden;box-sizing:border-box}.flappy-santa .floating-header{position:absolute;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:linear-gradient(180deg,rgba(0,0,0,.4) 0%,rgba(0,0,0,.2) 70%,transparent 100%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);pointer-events:none}.flappy-santa .floating-back-btn{background:#fff3;border:none;color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;pointer-events:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #0003}.flappy-santa .floating-back-btn:hover{background:#ffffff4d;transform:translate(-4px);box-shadow:0 6px 16px #0000004d}.flappy-santa .floating-stats{display:flex;gap:8px;pointer-events:auto}.flappy-santa .stat-pill{display:flex;align-items:center;gap:6px;background:#fff3;padding:6px 12px;border-radius:20px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 12px #0003}.flappy-santa .stat-pill .stat-icon{font-size:16px}.flappy-santa .stat-pill .stat-value{font-size:15px;font-weight:700;color:#fff;min-width:35px;text-align:center}.flappy-santa .game-container-fullscreen{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.flappy-santa .countdown-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:15}.flappy-santa .countdown-circle{width:140px;height:140px;border-radius:999px;background:radial-gradient(circle at 30% 30%,#fffbe6,#ffd54f);display:flex;align-items:center;justify-content:center;font-size:56px;font-weight:800;color:#b71c1c;box-shadow:0 0 40px #ffeb3bcc;border:4px solid rgba(255,255,255,.9);text-shadow:0 0 20px rgba(183,28,28,.7)}.flappy-santa .player-info{font-size:16px;opacity:.9;margin:8px 0 4px;font-weight:500}.flappy-santa .top-scorer-info{font-size:14px;color:gold;font-weight:700;text-shadow:0 0 8px rgba(255,215,0,.6);background:#ffd70026;padding:6px 12px;border-radius:12px;margin:4px 0 16px;display:inline-block}.flappy-santa .game-header{width:100%;max-width:500px;display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:10px;flex-shrink:0}.flappy-santa .back-btn{background:#ffffff1a;border:2px solid rgba(255,255,255,.2);color:#fff;padding:10px 20px;border-radius:10px;font-size:16px;cursor:pointer;transition:all .3s ease;white-space:nowrap}.flappy-santa .back-btn:hover{background:#fff3;transform:translate(-5px)}.flappy-santa .game-title{flex:1;text-align:center}.flappy-santa .game-title h1{margin:0;font-size:24px;font-weight:700;text-shadow:0 0 10px rgba(255,215,0,.5)}.flappy-santa .player-name{font-size:14px;opacity:.8;display:block;margin-top:5px}.flappy-santa .top-scorer{font-size:13px;opacity:1;display:block;margin-top:5px;color:gold;font-weight:700;text-shadow:0 0 8px rgba(255,215,0,.6);background:#ffd7001a;padding:4px 8px;border-radius:8px;border:1px solid rgba(255,215,0,.3)}.flappy-santa .scores{display:flex;gap:15px}.flappy-santa .current-score,.flappy-santa .best-score{display:flex;flex-direction:column;align-items:center;background:#ffffff1a;padding:8px 16px;border-radius:10px;border:2px solid rgba(255,215,0,.3)}.flappy-santa .current-score{border-color:#ff450080}.flappy-santa .scores .label{font-size:12px;opacity:.7;text-transform:uppercase}.flappy-santa .scores .value{font-size:20px;font-weight:700;color:gold}.flappy-santa .game-container{position:relative;width:100%;max-width:500px;flex:1;margin:0 auto;border-radius:20px;overflow:hidden;box-shadow:0 10px 50px #00000080;display:flex;flex-direction:column}.flappy-santa .game-canvas{display:block;width:100%;height:auto;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.flappy-santa .game-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.flappy-santa .overlay-content{text-align:center;padding:30px;background:#dc143c33;border:3px solid rgba(255,215,0,.5);border-radius:20px;max-width:80%}.flappy-santa .overlay-content h2{font-size:32px;margin:0 0 20px;text-shadow:0 0 20px rgba(255,215,0,.5)}.flappy-santa .instructions{font-size:18px;margin:15px 0;color:gold}.flappy-santa .controls{font-size:14px;opacity:.8;margin-bottom:20px}.flappy-santa .start-btn,.flappy-santa .retry-btn,.flappy-santa .lobby-btn{padding:15px 40px;font-size:18px;border:none;border-radius:15px;cursor:pointer;font-weight:700;transition:all .3s ease;margin:5px}.flappy-santa .start-btn{background:linear-gradient(135deg,gold,orange);color:#1a1a2e}.flappy-santa .start-btn:hover{transform:scale(1.05);box-shadow:0 5px 20px #ffd70080}.flappy-santa .retry-btn{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.flappy-santa .lobby-btn{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff}.flappy-santa .retry-btn:hover,.flappy-santa .lobby-btn:hover{transform:scale(1.05);box-shadow:0 5px 20px #ffffff4d}.flappy-santa .final-score{margin:20px 0;display:flex;flex-direction:column;gap:10px}.flappy-santa .final-score .label{font-size:16px;opacity:.8}.flappy-santa .final-score .value{font-size:48px;font-weight:700;color:gold;text-shadow:0 0 20px rgba(255,215,0,.8)}.flappy-santa .new-record{display:block;font-size:18px;color:#4caf50;margin-top:10px;animation:pulse 1s infinite}.flappy-santa .stats{display:flex;justify-content:center;gap:30px;margin:20px 0}.flappy-santa .stat{display:flex;flex-direction:column;align-items:center}.flappy-santa .stat-label{font-size:12px;opacity:.7;margin-bottom:5px}.flappy-santa .stat-value{font-size:24px;font-weight:700;color:gold}.flappy-santa .actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px}.flappy-santa .game-tips{margin-top:20px;display:flex;gap:20px;flex-wrap:wrap;justify-content:center;max-width:500px}.flappy-santa .tip{display:flex;align-items:center;gap:8px;background:#ffffff1a;padding:10px 15px;border-radius:10px;font-size:14px}.flappy-santa .tip-icon{font-size:20px}@media (max-width: 600px){.flappy-santa{padding:8px}.flappy-santa .game-header{flex-wrap:wrap}.flappy-santa .game-title h1{font-size:20px}.flappy-santa .scores{gap:10px}.flappy-santa .current-score,.flappy-santa .best-score{padding:6px 12px}.flappy-santa .scores .value{font-size:18px}.flappy-santa .overlay-content h2{font-size:24px}.flappy-santa .final-score .value{font-size:36px}.flappy-santa .game-tips{flex-direction:column;gap:10px}}.snowflake-catch{position:fixed;top:0;left:0;width:100%;height:100vh;height:100dvh;z-index:9999;background:linear-gradient(180deg,#0f2027,#203a43,#2c5364);color:#fff;overflow:hidden;box-sizing:border-box}.snowflake-catch .floating-header{position:absolute;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:linear-gradient(180deg,rgba(0,0,0,.4) 0%,rgba(0,0,0,.2) 70%,transparent 100%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);pointer-events:none}.snowflake-catch .floating-back-btn{background:#fff3;border:none;color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;pointer-events:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #0003}.snowflake-catch .floating-back-btn:hover{background:#ffffff4d;transform:translate(-4px);box-shadow:0 6px 16px #0000004d}.snowflake-catch .floating-stats{display:flex;gap:8px;pointer-events:auto}.snowflake-catch .stat-pill{display:flex;align-items:center;gap:6px;background:#fff3;padding:6px 12px;border-radius:20px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 12px #0003}.snowflake-catch .stat-pill .stat-icon{font-size:16px}.snowflake-catch .stat-pill .stat-value{font-size:15px;font-weight:700;color:#fff;min-width:35px;text-align:center}.snowflake-catch .game-container-fullscreen{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.snowflake-catch .player-info{font-size:16px;opacity:.9;margin:8px 0 4px;font-weight:500}.snowflake-catch .top-scorer-info{font-size:14px;color:gold;font-weight:700;text-shadow:0 0 8px rgba(255,215,0,.6);background:#ffd70026;padding:6px 12px;border-radius:12px;margin:4px 0 16px;display:inline-block}.snowflake-catch .game-header{width:100%;max-width:500px;display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:10px;flex-shrink:0}.snowflake-catch .back-btn{background:#ffffff1a;border:2px solid rgba(255,255,255,.2);color:#fff;padding:10px 20px;border-radius:10px;font-size:16px;cursor:pointer;transition:all .3s ease;white-space:nowrap}.snowflake-catch .back-btn:hover{background:#fff3;transform:translate(-5px)}.snowflake-catch .game-title{flex:1;text-align:center}.snowflake-catch .game-title h1{margin:0;font-size:24px;font-weight:700;text-shadow:0 0 10px rgba(135,206,250,.5)}.snowflake-catch .player-name{font-size:14px;opacity:.8;display:block;margin-top:5px}.snowflake-catch .top-scorer{font-size:13px;opacity:1;display:block;margin-top:5px;color:gold;font-weight:700;text-shadow:0 0 8px rgba(255,215,0,.6);background:#ffd7001a;padding:4px 8px;border-radius:8px;border:1px solid rgba(255,215,0,.3)}.snowflake-catch .game-stats{display:flex;gap:15px}.snowflake-catch .stat{display:flex;flex-direction:column;align-items:center;background:#ffffff1a;padding:8px 16px;border-radius:10px;border:2px solid rgba(135,206,250,.3)}.snowflake-catch .stat-label{font-size:12px;opacity:.7}.snowflake-catch .stat-value{font-size:20px;font-weight:700;color:#87ceeb}.snowflake-catch .game-container{position:relative;width:100%;max-width:500px;flex:1;margin:0 auto;border-radius:20px;overflow:hidden;box-shadow:0 10px 50px #00000080;display:flex;flex-direction:column}.snowflake-catch .game-canvas{display:block;width:100%;height:100%;max-height:500px;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none}.snowflake-catch .game-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.snowflake-catch .overlay-content{text-align:center;padding:30px;background:#0f2027e6;border:3px solid rgba(135,206,250,.5);border-radius:20px;max-width:85%}.snowflake-catch .overlay-content h2{font-size:32px;margin:0 0 20px;text-shadow:0 0 20px rgba(135,206,250,.8)}.snowflake-catch .instructions{margin:20px 0;display:flex;flex-direction:column;gap:15px}.snowflake-catch .instruction-item{display:flex;align-items:center;gap:10px;background:#ffd7001a;padding:12px;border-radius:10px;border:2px solid rgba(255,215,0,.3)}.snowflake-catch .instruction-item.bad{background:#ff44441a;border-color:#ff44444d}.snowflake-catch .instruction-item .icon{font-size:24px}.snowflake-catch .instruction-item .text{font-size:14px;text-align:left}.snowflake-catch .best-score-display{margin:15px 0;font-size:16px;opacity:.8}.snowflake-catch .best-score-display .value{color:gold;font-weight:700;font-size:20px;margin-left:5px}.snowflake-catch .start-btn,.snowflake-catch .retry-btn,.snowflake-catch .lobby-btn{padding:15px 40px;font-size:18px;border:none;border-radius:15px;cursor:pointer;font-weight:700;transition:all .3s ease;margin:5px}.snowflake-catch .start-btn{background:linear-gradient(135deg,#87ceeb,#4682b4);color:#fff}.snowflake-catch .start-btn:hover{transform:scale(1.05);box-shadow:0 5px 20px #87cefa80}.snowflake-catch .retry-btn{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.snowflake-catch .lobby-btn{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff}.snowflake-catch .retry-btn:hover,.snowflake-catch .lobby-btn:hover{transform:scale(1.05);box-shadow:0 5px 20px #ffffff4d}.snowflake-catch .final-score{margin:20px 0;display:flex;flex-direction:column;gap:10px}.snowflake-catch .final-score .label{font-size:16px;opacity:.8}.snowflake-catch .final-score .value{font-size:48px;font-weight:700;color:#87ceeb;text-shadow:0 0 20px rgba(135,206,250,.8)}.snowflake-catch .new-record{display:block;font-size:18px;color:#4caf50;margin-top:10px;animation:pulse 1s infinite}.snowflake-catch .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:15px;margin:20px 0}.snowflake-catch .stat-box{display:flex;flex-direction:column;align-items:center;background:#ffffff0d;padding:15px;border-radius:10px;border:2px solid rgba(255,255,255,.1)}.snowflake-catch .stat-box.good{border-color:#4caf5080;background:#4caf501a}.snowflake-catch .stat-box.bad{border-color:#ff444480;background:#ff44441a}.snowflake-catch .stat-icon{font-size:24px;margin-bottom:5px}.snowflake-catch .stat-box .stat-label{font-size:12px;opacity:.7;margin-bottom:5px}.snowflake-catch .stat-box .stat-value{font-size:24px;font-weight:700;color:gold}.snowflake-catch .actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px}.snowflake-catch .game-legend{margin-top:8px;display:flex;gap:20px;justify-content:center;max-width:500px;flex-shrink:0}.snowflake-catch .legend-item{display:flex;align-items:center;gap:8px;background:#ffffff1a;padding:10px 20px;border-radius:10px;border:2px solid rgba(255,215,0,.3)}.snowflake-catch .legend-item.bad{border-color:#ff44444d}.snowflake-catch .legend-icon{font-size:20px}.snowflake-catch .legend-text{font-size:14px;font-weight:700}.snowflake-catch .score-popup{position:fixed;font-size:32px;font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.5);z-index:10000;transform:translate(-50%,-50%)}.snowflake-catch .score-popup.good{color:#4ade80;text-shadow:0 0 10px rgba(74,222,128,.8),0 2px 8px rgba(0,0,0,.5)}.snowflake-catch .score-popup.bad{color:#f44;text-shadow:0 0 10px rgba(255,68,68,.8),0 2px 8px rgba(0,0,0,.5)}@media (max-width: 600px){.snowflake-catch{padding:6px}.snowflake-catch .game-header{flex-wrap:nowrap;margin-bottom:6px}.snowflake-catch .game-title h1{font-size:18px}.snowflake-catch .player-name{font-size:12px}.snowflake-catch .overlay-content{padding:20px}.snowflake-catch .overlay-content h2{font-size:24px;margin-bottom:15px}.snowflake-catch .final-score .value{font-size:36px}.snowflake-catch .stats-grid{grid-template-columns:repeat(2,1fr);margin:15px 0}.snowflake-catch .game-legend{margin-top:6px;gap:10px}.snowflake-catch .legend-item{padding:8px 15px}.snowflake-catch .instructions{margin:15px 0;gap:10px}}.math-rush{position:fixed;top:0;left:0;width:100%;height:100vh;height:100dvh;z-index:9999;background:linear-gradient(180deg,#1e3c72,#2a5298,#7e22ce);color:#fff;overflow:hidden;box-sizing:border-box}.math-rush .floating-header{position:absolute;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:linear-gradient(180deg,rgba(0,0,0,.4) 0%,rgba(0,0,0,.2) 70%,transparent 100%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);pointer-events:none}.math-rush .floating-back-btn{background:#fff3;border:none;color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;pointer-events:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #0003}.math-rush .floating-back-btn:hover{background:#ffffff4d;transform:translate(-4px);box-shadow:0 6px 16px #0000004d}.math-rush .floating-stats{display:flex;gap:8px;pointer-events:auto}.math-rush .stat-pill{display:flex;align-items:center;gap:6px;background:#fff3;padding:6px 12px;border-radius:20px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 12px #0003}.math-rush .stat-pill .stat-icon{font-size:16px}.math-rush .stat-pill .stat-value{font-size:15px;font-weight:700;color:#fff;min-width:35px;text-align:center}.math-rush .game-container-fullscreen{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-y:auto;overflow-x:hidden}.math-rush .player-info{font-size:16px;opacity:.9;margin:8px 0 4px;font-weight:500}.math-rush .top-scorer-info{font-size:14px;color:gold;font-weight:700;text-shadow:0 0 8px rgba(255,215,0,.6);background:#ffd70026;padding:6px 12px;border-radius:12px;margin:4px 0 16px;display:inline-block}.math-rush .game-header{width:100%;max-width:600px;display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:10px;flex-shrink:0}.math-rush .back-btn{background:#ffffff1a;border:2px solid rgba(255,255,255,.2);color:#fff;padding:10px 20px;border-radius:10px;font-size:16px;cursor:pointer;transition:all .3s ease;white-space:nowrap}.math-rush .back-btn:hover{background:#fff3;transform:translate(-5px)}.math-rush .game-title{flex:1;text-align:center}.math-rush .game-title h1{margin:0;font-size:24px;font-weight:700;text-shadow:0 0 10px rgba(126,34,206,.5)}.math-rush .player-name{font-size:14px;opacity:.8;display:block;margin-top:5px}.math-rush .top-scorer{font-size:13px;opacity:1;display:block;margin-top:5px;color:gold;font-weight:700;text-shadow:0 0 8px rgba(255,215,0,.6);background:#ffd7001a;padding:4px 8px;border-radius:8px;border:1px solid rgba(255,215,0,.3)}.math-rush .game-stats{display:flex;gap:15px}.math-rush .stat{display:flex;flex-direction:column;align-items:center;background:#ffffff1a;padding:8px 16px;border-radius:10px;border:2px solid rgba(147,51,234,.3)}.math-rush .stat-label{font-size:12px;opacity:.7}.math-rush .stat-value{font-size:20px;font-weight:700;color:#c084fc}.math-rush .game-container{width:100%;max-width:600px;flex:1;display:flex;flex-direction:column;background:#ffffff0d;border-radius:20px;padding:20px;box-shadow:0 10px 50px #0000004d;overflow-y:auto;overflow-x:hidden}.math-rush .game-screen{position:relative;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100%;width:100%;padding:20px;box-sizing:border-box}.math-rush .christmas-tree{font-size:80px;margin-bottom:20px;animation:sway 2s ease-in-out infinite}@keyframes sway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.math-rush .ready-screen h2,.math-rush .gameover-screen h2{font-size:32px;margin:0 0 30px;text-shadow:0 0 20px rgba(192,132,252,.8)}.math-rush .instructions{margin:20px 0;display:flex;flex-direction:column;gap:12px;width:100%;max-width:400px}.math-rush .instruction-item{display:flex;align-items:center;gap:10px;background:#9333ea1a;padding:12px;border-radius:10px;border:2px solid rgba(147,51,234,.3)}.math-rush .instruction-item .icon{font-size:20px}.math-rush .instruction-item .text{font-size:14px;text-align:left}.math-rush .best-score-display{margin:20px 0;font-size:16px;opacity:.8}.math-rush .best-score-display .value{color:gold;font-weight:700;font-size:20px;margin-left:5px}.math-rush .start-btn,.math-rush .retry-btn,.math-rush .lobby-btn{padding:15px 40px;font-size:18px;border:none;border-radius:15px;cursor:pointer;font-weight:700;transition:all .3s ease;margin:5px;position:relative;z-index:110;pointer-events:auto}.math-rush .start-btn{background:linear-gradient(135deg,#9333ea,#7e22ce);color:#fff}.math-rush .start-btn:hover{transform:scale(1.05);box-shadow:0 5px 20px #9333ea80}.math-rush .retry-btn{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.math-rush .lobby-btn{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff}.math-rush .retry-btn:hover,.math-rush .lobby-btn:hover{transform:scale(1.05);box-shadow:0 5px 20px #ffffff4d}.math-rush .question-header{width:100%;display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.math-rush .question-number{font-size:18px;opacity:.8}.math-rush .streak-badge{background:linear-gradient(135deg,#ff6b6b,#ff8787);padding:8px 16px;border-radius:20px;font-size:14px;font-weight:700;animation:pulse 1s infinite}.math-rush .question{position:relative;margin:30px 0;width:100%;display:flex;justify-content:center;align-items:center}.math-rush .math-expression{display:flex;align-items:center;gap:15px;background:#ffffff1a;padding:25px 35px;border-radius:20px;border:3px solid rgba(192,132,252,.5);font-size:40px;font-weight:700}.math-rush .number{color:#fbbf24;min-width:60px;text-align:center}.math-rush .operator{color:#c084fc;font-size:48px}.math-rush .equals{color:#60a5fa}.math-rush .question-mark{color:#fff;animation:pulse 1.5s infinite}.math-rush .options{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;width:100%;margin-top:30px;position:relative;z-index:10}.math-rush .option-btn{padding:25px;font-size:32px;font-weight:700;border:3px solid rgba(255,255,255,.3);border-radius:15px;background:#ffffff1a;color:#fff;cursor:pointer;transition:all .3s ease;position:relative;z-index:10;pointer-events:auto}.math-rush .option-btn:hover:not(:disabled){background:#fff3;border-color:#c084fc80}.math-rush .option-btn:disabled{cursor:not-allowed}.math-rush .option-btn.correct{background:linear-gradient(135deg,#4caf50,#45a049);border-color:#4caf50;animation:correctPulse .5s ease}.math-rush .option-btn.wrong{background:linear-gradient(135deg,#f44336,#d32f2f);border-color:#f44336;animation:wrongShake .5s ease}.math-rush .option-btn.show-correct{border-color:#4caf50;border-width:4px}@keyframes correctPulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes wrongShake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.math-rush .stats-bar{display:flex;gap:20px;margin-top:30px;justify-content:center}.math-rush .stats-bar .stat-item{display:flex;align-items:center;gap:8px;background:#ffffff1a;padding:10px 20px;border-radius:10px;font-size:18px}.math-rush .stats-bar .icon{font-size:24px}.math-rush .stats-bar .value{font-weight:700}.math-rush .final-score{margin:20px 0;display:flex;flex-direction:column;gap:10px}.math-rush .final-score .label{font-size:16px;opacity:.8}.math-rush .final-score .value{font-size:48px;font-weight:700;color:#c084fc;text-shadow:0 0 20px rgba(192,132,252,.8)}.math-rush .new-record{display:block;font-size:18px;color:#4caf50;margin-top:10px;animation:pulse 1s infinite}.math-rush .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:15px;margin:20px 0;width:100%}.math-rush .stat-box{display:flex;flex-direction:column;align-items:center;background:#ffffff0d;padding:15px;border-radius:10px;border:2px solid rgba(255,255,255,.1)}.math-rush .stat-box.good{border-color:#4caf5080;background:#4caf501a}.math-rush .stat-box.bad{border-color:#f4433680;background:#f443361a}.math-rush .stat-icon{font-size:28px;margin-bottom:8px}.math-rush .stat-box .stat-label{font-size:12px;opacity:.7;margin-bottom:5px;text-align:center}.math-rush .stat-box .stat-value{font-size:24px;font-weight:700;color:gold}.math-rush .actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px;position:relative;z-index:100;pointer-events:auto}@media (max-width: 600px){.math-rush{padding:6px}.math-rush .game-container{padding:15px 12px}.math-rush .game-header{flex-wrap:nowrap;margin-bottom:6px}.math-rush .game-title h1{font-size:18px}.math-rush .player-name{font-size:12px}.math-rush .question{margin:20px 0}.math-rush .math-expression{font-size:28px;padding:18px 20px;gap:8px}.math-rush .number{min-width:45px}.math-rush .operator{font-size:34px}.math-rush .option-btn{padding:18px;font-size:26px}.math-rush .final-score .value{font-size:36px}.math-rush .stats-grid{grid-template-columns:repeat(2,1fr)}.math-rush .christmas-tree{font-size:50px;margin-bottom:15px}.math-rush .instructions{margin:15px 0;gap:10px}.math-rush .instruction-item{padding:10px}}.gift-runner{position:fixed;top:0;left:0;width:100%;height:100vh;height:100dvh;z-index:9999;background:linear-gradient(180deg,#4a148c,#6a1b9a,#8e24aa);color:#fff;overflow:hidden;box-sizing:border-box}.gift-runner .floating-header{position:absolute;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:linear-gradient(180deg,rgba(0,0,0,.4) 0%,rgba(0,0,0,.2) 70%,transparent 100%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);pointer-events:none}.gift-runner .floating-back-btn{background:#fff3;border:none;color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;pointer-events:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #0003}.gift-runner .floating-back-btn:hover{background:#ffffff4d;transform:translate(-4px);box-shadow:0 6px 16px #0000004d}.gift-runner .floating-stats{display:flex;gap:8px;pointer-events:auto}.gift-runner .stat-pill{display:flex;align-items:center;gap:6px;background:#fff3;padding:6px 12px;border-radius:20px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 12px #0003}.gift-runner .stat-pill .stat-icon{font-size:16px}.gift-runner .stat-pill .stat-value{font-size:15px;font-weight:700;color:#fff;min-width:35px;text-align:center}.gift-runner .game-container-fullscreen{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.gift-runner .player-info{font-size:16px;opacity:.9;margin:8px 0 4px;font-weight:500}.gift-runner .top-scorer-info{font-size:14px;color:gold;font-weight:700;text-shadow:0 0 8px rgba(255,215,0,.6);background:#ffd70026;padding:6px 12px;border-radius:12px;margin:4px 0 16px;display:inline-block}.gift-runner .game-header{width:100%;max-width:500px;display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:10px;flex-shrink:0}.gift-runner .back-btn{background:#ffffff1a;border:2px solid rgba(255,255,255,.2);color:#fff;padding:10px 20px;border-radius:10px;font-size:16px;cursor:pointer;transition:all .3s ease;white-space:nowrap}.gift-runner .back-btn:hover{background:#fff3;transform:translate(-5px)}.gift-runner .game-title{flex:1;text-align:center}.gift-runner .game-title h1{margin:0;font-size:24px;font-weight:700;text-shadow:0 0 10px rgba(255,107,107,.5)}.gift-runner .player-name{font-size:14px;opacity:.8;display:block;margin-top:5px}.gift-runner .top-scorer{font-size:13px;opacity:1;display:block;margin-top:5px;color:gold;font-weight:700;text-shadow:0 0 8px rgba(255,215,0,.6);background:#ffd7001a;padding:4px 8px;border-radius:8px;border:1px solid rgba(255,215,0,.3)}.gift-runner .best-score{display:flex;flex-direction:column;align-items:center;background:#ffffff1a;padding:8px 16px;border-radius:10px;border:2px solid rgba(255,215,0,.3)}.gift-runner .best-score .label{font-size:12px;opacity:.7;text-transform:uppercase}.gift-runner .best-score .value{font-size:20px;font-weight:700;color:gold}.gift-runner .game-container{position:relative;width:100%;max-width:500px;flex:1;margin:0 auto;border-radius:20px;overflow:hidden;box-shadow:0 10px 50px #00000080;display:flex;flex-direction:column}.gift-runner .game-canvas{display:block;width:100%;height:auto;touch-action:none;user-select:none;-webkit-user-select:none}.gift-runner .game-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.gift-runner .overlay-content{text-align:center;padding:30px;background:#4a148ce6;border:3px solid rgba(255,107,107,.5);border-radius:20px;max-width:85%}.gift-runner .overlay-content h2{font-size:32px;margin:0 0 20px;text-shadow:0 0 20px rgba(255,107,107,.8)}.gift-runner .instructions{margin:20px 0;display:flex;flex-direction:column;gap:12px}.gift-runner .instruction-item{display:flex;align-items:center;gap:10px;background:#4caf501a;padding:12px;border-radius:10px;border:2px solid rgba(76,175,80,.3)}.gift-runner .instruction-item.bad{background:#ff6b6b1a;border-color:#ff6b6b4d}.gift-runner .instruction-item .icon{font-size:24px}.gift-runner .instruction-item .text{font-size:14px;text-align:left}.gift-runner .controls-info{margin:20px 0;display:flex;flex-direction:column;gap:10px;background:#ffffff0d;padding:15px;border-radius:10px}.gift-runner .control-item{display:flex;align-items:center;gap:10px;font-size:13px}.gift-runner .control-icon{font-size:20px;min-width:30px}.gift-runner .control-text{text-align:left}.gift-runner .best-score-display{margin:15px 0;font-size:16px;opacity:.8}.gift-runner .best-score-display .value{color:gold;font-weight:700;font-size:20px;margin-left:5px}.gift-runner .start-btn,.gift-runner .retry-btn,.gift-runner .lobby-btn{padding:15px 40px;font-size:18px;border:none;border-radius:15px;cursor:pointer;font-weight:700;transition:all .3s ease;margin:5px}.gift-runner .start-btn{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff}.gift-runner .start-btn:hover{transform:scale(1.05);box-shadow:0 5px 20px #ff6b6b80}.gift-runner .retry-btn{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.gift-runner .lobby-btn{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff}.gift-runner .retry-btn:hover,.gift-runner .lobby-btn:hover{transform:scale(1.05);box-shadow:0 5px 20px #ffffff4d}.gift-runner .final-score{margin:20px 0;display:flex;flex-direction:column;gap:10px}.gift-runner .final-score .label{font-size:16px;opacity:.8}.gift-runner .final-score .value{font-size:48px;font-weight:700;color:#ff6b6b;text-shadow:0 0 20px rgba(255,107,107,.8)}.gift-runner .new-record{display:block;font-size:18px;color:#4caf50;margin-top:10px;animation:pulse 1s infinite}.gift-runner .stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin:20px 0}.gift-runner .stat-box{display:flex;flex-direction:column;align-items:center;background:#ffffff0d;padding:15px;border-radius:10px;border:2px solid rgba(255,255,255,.1)}.gift-runner .stat-box.good{border-color:#ff6b6b80;background:#ff6b6b1a}.gift-runner .stat-box.star{border-color:#ffd70080;background:#ffd7001a}.gift-runner .stat-icon{font-size:28px;margin-bottom:8px}.gift-runner .stat-box .stat-label{font-size:12px;opacity:.7;margin-bottom:5px}.gift-runner .stat-box .stat-value{font-size:24px;font-weight:700;color:gold}.gift-runner .actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px}.gift-runner .game-legend{margin-top:20px;display:flex;gap:20px;justify-content:center;max-width:500px;flex-wrap:wrap}.gift-runner .legend-item{display:flex;align-items:center;gap:8px;background:#ffffff1a;padding:10px 15px;border-radius:10px;border:2px solid rgba(76,175,80,.3)}.gift-runner .legend-item.bad{border-color:#ff6b6b4d}.gift-runner .legend-icon{font-size:20px}.gift-runner .legend-text{font-size:14px;font-weight:700}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@media (max-width: 600px){.gift-runner{padding:8px}.gift-runner .game-header{flex-wrap:wrap}.gift-runner .game-title h1{font-size:20px}.gift-runner .overlay-content h2{font-size:24px}.gift-runner .final-score .value{font-size:36px}.gift-runner .stats-grid{grid-template-columns:repeat(2,1fr)}.gift-runner .game-legend{gap:10px}}.candy-match{position:fixed;top:0;left:0;width:100%;height:100vh;height:100dvh;z-index:9999;background:linear-gradient(180deg,#ec4899,#db2777,#be185d);color:#fff;overflow:hidden;box-sizing:border-box}.candy-match .floating-header{position:absolute;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:linear-gradient(180deg,rgba(0,0,0,.4) 0%,rgba(0,0,0,.2) 70%,transparent 100%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);pointer-events:none}.candy-match .floating-back-btn{background:#fff3;border:none;color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap;pointer-events:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #0003}.candy-match .floating-back-btn:hover{background:#ffffff4d;transform:translate(-4px);box-shadow:0 6px 16px #0000004d}.candy-match .floating-stats{display:flex;gap:8px;pointer-events:auto}.candy-match .stat-pill{display:flex;align-items:center;gap:6px;background:#fff3;padding:6px 12px;border-radius:20px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 12px #0003}.candy-match .stat-pill .stat-icon{font-size:16px}.candy-match .stat-pill .stat-value{font-size:15px;font-weight:700;color:#fff;min-width:35px;text-align:center}.candy-match .game-container-fullscreen{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.candy-match .player-info{font-size:16px;opacity:.9;margin:8px 0 4px;font-weight:500}.candy-match .top-scorer-info{font-size:14px;color:gold;font-weight:700;text-shadow:0 0 8px rgba(255,215,0,.6);background:#ffd70026;padding:6px 12px;border-radius:12px;margin:4px 0 16px;display:inline-block}.candy-match .game-header{width:100%;max-width:600px;display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:10px;flex-shrink:0}.candy-match .back-btn{background:#ffffff1a;border:2px solid rgba(255,255,255,.2);color:#fff;padding:10px 20px;border-radius:10px;font-size:16px;cursor:pointer;transition:all .3s ease;white-space:nowrap}.candy-match .back-btn:hover{background:#fff3;transform:translate(-5px)}.candy-match .game-title{flex:1;text-align:center}.candy-match .game-title h1{margin:0;font-size:24px;font-weight:700;text-shadow:0 0 10px rgba(255,182,193,.5)}.candy-match .player-name{font-size:14px;opacity:.8;display:block;margin-top:5px}.candy-match .top-scorer{font-size:13px;opacity:1;display:block;margin-top:5px;color:gold;font-weight:700;text-shadow:0 0 8px rgba(255,215,0,.6);background:#ffd7001a;padding:4px 8px;border-radius:8px;border:1px solid rgba(255,215,0,.3)}.candy-match .game-stats{display:flex;gap:15px}.candy-match .stat{display:flex;flex-direction:column;align-items:center;background:#ffffff1a;padding:8px 16px;border-radius:10px;border:2px solid rgba(255,182,193,.3)}.candy-match .stat-label{font-size:12px;opacity:.7}.candy-match .stat-value{font-size:20px;font-weight:700;color:#ffb6c1}.candy-match .game-container{width:100%;max-width:600px;flex:1;display:flex;flex-direction:column;background:#ffffff0d;border-radius:20px;padding:15px;box-shadow:0 10px 50px #0000004d;overflow-y:auto;overscroll-behavior:none;-webkit-overflow-scrolling:touch}.candy-match .game-screen{position:relative;z-index:50;display:flex;flex-direction:column;align-items:center;min-height:520px}.candy-match .ready-screen h2,.candy-match .gameover-screen h2{font-size:32px;margin:20px 0;text-shadow:0 0 20px rgba(255,182,193,.8)}.candy-match .instructions{margin:20px 0;width:100%;max-width:400px}.candy-match .instruction-item{background:#ffffff1a;padding:12px;border-radius:10px;margin-bottom:10px;text-align:center}.candy-match .instruction-item .text{font-size:14px}.candy-match .scoring-info{margin-top:20px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.candy-match .score-item{display:flex;flex-direction:column;align-items:center;background:#ec489933;padding:8px;border-radius:10px;border:2px solid rgba(255,182,193,.3)}.candy-match .score-item .icon{font-size:24px;margin-bottom:5px}.candy-match .score-item .text{font-size:12px;text-align:center}.candy-match .best-score-display{margin:20px 0;font-size:16px;opacity:.8}.candy-match .best-score-display .value{color:gold;font-weight:700;font-size:20px;margin-left:5px}.candy-match .start-btn,.candy-match .retry-btn,.candy-match .lobby-btn{padding:15px 40px;font-size:18px;border:none;border-radius:15px;cursor:pointer;font-weight:700;transition:all .3s ease;margin:10px 5px}.candy-match .start-btn{background:linear-gradient(135deg,#ec4899,#db2777);color:#fff}.candy-match .start-btn:hover{transform:scale(1.05);box-shadow:0 5px 20px #ec489980}.candy-match .retry-btn{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.candy-match .lobby-btn{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff}.candy-match .retry-btn:hover,.candy-match .lobby-btn:hover{transform:scale(1.05);box-shadow:0 5px 20px #ffffff4d}.candy-match .combo-indicator{position:absolute;top:20px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#ff6b6b,#ee5a6f);padding:10px 20px;border-radius:20px;font-size:16px;font-weight:700;animation:pulse 1s infinite;z-index:10;box-shadow:0 5px 20px #ff6b6b80}.candy-match .grid-container{display:flex;flex-direction:column;gap:4px;background:#0003;padding:8px;border-radius:15px;margin:20px 0}.candy-match .grid-row{display:flex;gap:4px}.candy-match .candy-cell{width:60px;height:60px;background:#fff3;border:2px solid rgba(255,255,255,.3);border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.candy-match .candy-cell:hover{background:#ffffff4d;border-color:#ffffff80}.candy-match .candy-cell.selected{background:#ffd7004d;border-color:gold;border-width:3px;box-shadow:0 0 20px #ffd70080}.candy-match .candy-cell.matched{background:#4caf504d;border-color:#4caf50}.candy-match .candy-icon{font-size:36px;pointer-events:none}.candy-match .game-info-bar{display:flex;justify-content:center;gap:30px;margin-top:20px;padding:15px;background:#ffffff1a;border-radius:10px}.candy-match .info-item{display:flex;gap:8px;align-items:center}.candy-match .info-item .label{font-size:14px;opacity:.8}.candy-match .info-item .value{font-size:18px;font-weight:700;color:gold}.candy-match .final-score{margin:20px 0;display:flex;flex-direction:column;gap:10px}.candy-match .final-score .label{font-size:16px;opacity:.8}.candy-match .final-score .value{font-size:48px;font-weight:700;color:#ec4899;text-shadow:0 0 20px rgba(236,72,153,.8)}.candy-match .new-record{display:block;font-size:18px;color:#4caf50;margin-top:10px;animation:pulse 1s infinite}.candy-match .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:15px;margin:20px 0;width:100%}.candy-match .stat-box{display:flex;flex-direction:column;align-items:center;background:#ffffff0d;padding:15px;border-radius:10px;border:2px solid rgba(255,255,255,.1)}.candy-match .stat-icon{font-size:28px;margin-bottom:8px}.candy-match .stat-box .stat-label{font-size:12px;opacity:.7;margin-bottom:5px;text-align:center}.candy-match .stat-box .stat-value{font-size:24px;font-weight:700;color:gold}.candy-match .actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px}@keyframes pulse{0%,to{transform:scale(1) translate(-50%)}50%{transform:scale(1.1) translate(-50%)}}@media (max-width: 600px){.candy-match{padding:8px}.candy-match .game-container{padding:15px 10px}.candy-match .game-header{flex-wrap:wrap}.candy-match .game-title h1{font-size:20px}.candy-match .candy-cell{width:45px;height:45px}.candy-match .candy-icon{font-size:28px}.candy-match .grid-container{padding:5px;gap:3px}.candy-match .grid-row{gap:3px}.candy-match .final-score .value{font-size:36px}.candy-match .scoring-info{grid-template-columns:1fr}.candy-match .combo-indicator{font-size:14px;padding:8px 16px}}@media (max-width: 400px){.candy-match .candy-cell{width:38px;height:38px}.candy-match .candy-icon{font-size:24px}}.survey-results{min-height:100vh;background:var(--background);position:relative;padding-bottom:var(--spacing-3xl)}.survey-results:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 20% 30%,var(--accent-glow) 0%,transparent 50%),radial-gradient(circle at 80% 70%,var(--primary-glow) 0%,transparent 50%);pointer-events:none;z-index:0}.results-header{position:sticky;top:0;z-index:100;background:linear-gradient(180deg,#1e293bfa,#0f172af2);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:var(--spacing-xl) var(--spacing-2xl);border-bottom:2px solid;border-image:var(--gradient-festive) 1;display:flex;align-items:center;gap:var(--spacing-xl);box-shadow:0 4px 20px #0000004d}.results-header h1{margin:0;font-size:1.8rem;font-weight:800;background:var(--gradient-festive);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.back-btn{padding:var(--spacing-md) var(--spacing-xl);background:#dc26261a;border:2px solid var(--primary-light);border-radius:var(--radius-lg);font-weight:600;font-size:1rem;color:var(--text);cursor:pointer;transition:var(--transition-base);white-space:nowrap}.back-btn:hover{background:var(--gradient-red-gold);transform:translateY(-2px);box-shadow:0 4px 12px var(--primary-glow)}.back-link{display:inline-block;margin-bottom:var(--spacing-xl);color:var(--accent-light);text-decoration:none;font-weight:600;cursor:pointer;border:none;background:none;font-size:1rem;transition:var(--transition-fast)}.back-link:hover{color:var(--accent-dark);text-decoration:underline}.surveys-selection{position:relative;z-index:1;max-width:1400px;margin:0 auto;padding:var(--spacing-3xl) var(--spacing-xl)}.surveys-selection h2{text-align:center;color:var(--text);font-size:2rem;font-weight:800;margin-bottom:var(--spacing-3xl);background:var(--gradient-red-gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.surveys-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-2xl)}.survey-card{background:var(--surface);padding:var(--spacing-2xl);border-radius:var(--radius-2xl);border:2px solid var(--border);cursor:pointer;transition:var(--transition-base);box-shadow:var(--shadow-md);position:relative;overflow:hidden}.survey-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--gradient-festive);opacity:0;transition:var(--transition-base)}.survey-card:hover{border-color:var(--accent-light);box-shadow:0 12px 32px var(--accent-glow);transform:translateY(-6px)}.survey-card:hover:before{opacity:.05}.survey-card h3{position:relative;z-index:1;margin:0 0 var(--spacing-md) 0;color:var(--text);font-size:1.4rem;font-weight:700}.survey-card p{position:relative;z-index:1;margin:0 0 var(--spacing-xl) 0;color:var(--text-secondary);line-height:1.6;font-size:1rem}.view-btn{position:relative;z-index:1;width:100%;padding:var(--spacing-md) var(--spacing-lg);background:var(--gradient-red-gold);border:none;border-radius:var(--radius-lg);color:var(--text);font-weight:700;font-size:1.05rem;cursor:pointer;transition:var(--transition-base);box-shadow:0 4px 12px var(--primary-glow)}.view-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px var(--primary-glow)}.results-content{position:relative;z-index:1;max-width:1400px;margin:0 auto;padding:var(--spacing-2xl)}.survey-header{background:var(--surface);padding:var(--spacing-2xl);border-radius:var(--radius-2xl);margin-bottom:var(--spacing-2xl);box-shadow:var(--shadow-lg);border:2px solid var(--border)}.survey-header h2{margin:0 0 var(--spacing-sm) 0;color:var(--text);font-size:2rem;font-weight:800}.survey-header p{margin:0;color:var(--text-secondary);font-size:1.1rem}.questions-stats{display:flex;flex-direction:column;gap:var(--spacing-2xl)}.question-stat-card{background:var(--surface);padding:var(--spacing-2xl);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);border:2px solid var(--border);transition:var(--transition-base)}.question-stat-card:hover{border-color:var(--border-light);box-shadow:var(--shadow-xl)}.question-stat-card h3{margin:0 0 var(--spacing-sm) 0;color:var(--text);font-size:1.4rem;font-weight:700;line-height:1.5;display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-sm)}.q-number{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-xs) var(--spacing-md);background:var(--gradient-red-gold);color:var(--text);border-radius:var(--radius-md);font-size:.85rem;font-weight:700;box-shadow:0 2px 8px var(--primary-glow)}.response-count{margin:0 0 var(--spacing-xl) 0;color:var(--text-muted);font-size:.95rem;font-weight:500}.charts-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-2xl);margin-bottom:var(--spacing-2xl)}.chart-wrapper{background:#0003;padding:var(--spacing-xl);border-radius:var(--radius-xl);border:1px solid var(--border)}.chart-wrapper h4{margin:0 0 var(--spacing-lg) 0;color:var(--text-secondary);font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stats-table{display:flex;flex-direction:column;gap:var(--spacing-md)}.stat-row{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-lg);background:#0003;border-radius:var(--radius-lg);border-left:4px solid var(--accent-light);transition:var(--transition-fast)}.stat-header{display:grid;grid-template-columns:1fr auto;gap:var(--spacing-lg);align-items:center}.stat-row:hover{background:#0000004d;transform:translate(4px)}.stat-label{display:flex;align-items:center;gap:var(--spacing-md);font-weight:600;color:var(--text);font-size:1rem}.color-dot{width:18px;height:18px;border-radius:var(--radius-full);flex-shrink:0;box-shadow:0 2px 8px #0000004d}.stat-values{display:flex;gap:var(--spacing-xl);align-items:center}.count{color:var(--text-secondary);font-size:.95rem;font-weight:500}.percentage{font-size:1.2rem;font-weight:800;background:var(--gradient-red-gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;min-width:60px;text-align:right}.stat-bar{height:10px;background:#0000004d;border-radius:var(--radius-md);overflow:hidden}.stat-fill{height:100%;border-radius:var(--radius-md);transition:width .8s cubic-bezier(.4,0,.2,1);box-shadow:0 0 12px #ffffff4d}.text-responses{display:flex;flex-direction:column;gap:var(--spacing-lg)}.text-response-card{background:#0003;border-radius:var(--radius-xl);padding:var(--spacing-xl);border:1px solid var(--border);transition:var(--transition-fast)}.text-response-card:hover{background:#0000004d;border-color:var(--border-light)}.text-response-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.text-response-avatar img,.text-response-avatar .avatar-placeholder{width:40px;height:40px;border-radius:50%;border:2px solid var(--accent-light);box-shadow:0 2px 8px #0000004d}.text-response-avatar img{object-fit:cover}.text-response-avatar .avatar-placeholder{background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;color:#fff}.text-response-info{display:flex;flex-direction:column;gap:2px}.text-response-name{font-weight:600;color:var(--text);font-size:1rem}.text-response-date{font-size:.85rem;color:var(--text-muted)}.text-response-content{color:var(--text);font-size:1.05rem;line-height:1.6;padding:var(--spacing-md);background:#6366f11a;border-radius:var(--radius-lg);border-left:3px solid var(--accent-light)}.no-responses{text-align:center;padding:var(--spacing-2xl);color:var(--text-muted);font-size:1rem;background:#0000001a;border-radius:var(--radius-lg)}.voters-section{padding-top:var(--spacing-sm)}.voters-avatars{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.voter-avatar{position:relative;cursor:pointer;transition:transform .2s ease}.voter-avatar:hover{transform:scale(1.15);z-index:10}.voter-avatar img,.voter-avatar-placeholder{width:32px;height:32px;border-radius:50%;border:2px solid rgba(255,255,255,.3);box-shadow:0 2px 8px #0000004d}.voter-avatar img{object-fit:cover}.voter-avatar-placeholder{background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;color:#fff}.survey-loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-size:1.2rem;color:var(--text-secondary);font-weight:600}@media (max-width: 768px){.results-header{flex-direction:column;align-items:flex-start;padding:var(--spacing-lg) var(--spacing-md)}.results-header h1{font-size:1.5rem}.back-btn{width:100%;text-align:center}.surveys-selection{padding:var(--spacing-2xl) var(--spacing-md)}.surveys-selection h2{font-size:1.5rem}.surveys-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.results-content{padding:var(--spacing-md)}.survey-header{padding:var(--spacing-xl)}.survey-header h2{font-size:1.5rem}.survey-header p{font-size:1rem}.question-stat-card{padding:var(--spacing-xl)}.question-stat-card h3{font-size:1.2rem}.charts-container{display:none}.stat-row{grid-template-columns:1fr;padding:var(--spacing-md)}.stat-values{justify-content:space-between}.percentage{font-size:1.1rem}.stats-table{gap:var(--spacing-lg)}.stat-label{font-size:1.05rem}.stat-bar{height:12px}}@media (max-width: 480px){.survey-header{padding:var(--spacing-lg)}.survey-header h2{font-size:1.25rem}.question-stat-card{padding:var(--spacing-lg)}.chart-wrapper{padding:var(--spacing-md)}.stat-row{padding:var(--spacing-sm) var(--spacing-md)}.stat-label{font-size:.9rem}}@media (min-width: 1400px){.surveys-grid{grid-template-columns:repeat(3,1fr)}}.survey-page{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;padding:20px}.survey-container{width:100%;max-width:700px;background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;overflow:hidden;position:relative}.survey-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:30px;position:relative}.close-btn{position:absolute;top:15px;right:15px;background:#fff3;border:none;color:#fff;width:40px;height:40px;border-radius:50%;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.survey-title-section h1{margin:0 0 10px;font-size:28px;font-weight:700}.survey-title-section p{margin:0;opacity:.9;font-size:16px}.survey-progress{margin-top:20px}.progress-text{font-size:14px;font-weight:600;margin-bottom:8px;opacity:.9}.progress-bar{width:100%;height:8px;background:#fff3;border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:#fff;border-radius:10px;transition:width .3s ease}.question-container{padding:40px 30px;min-height:400px}.question-header{margin-bottom:30px}.question-header h2{font-size:22px;color:#2d3748;margin:0 0 10px;line-height:1.4}.required{color:#e53e3e;font-size:14px;font-weight:600}.question-options{width:100%}.options-list{display:flex;flex-direction:column;gap:12px}.option-btn{width:100%;padding:16px 20px;background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;display:flex;align-items:center;gap:15px;cursor:pointer;transition:all .2s ease;font-size:16px;text-align:left}.option-btn:hover{background:#edf2f7;border-color:#cbd5e0}.option-btn.selected{background:#e6fffa;border-color:#38b2ac;color:#234e52;font-weight:600}.option-radio{width:24px;height:24px;border:2px solid #cbd5e0;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease}.option-btn.selected .option-radio{border-color:#38b2ac}.radio-dot{width:12px;height:12px;background:#38b2ac;border-radius:50%}.option-checkbox{width:24px;height:24px;border:2px solid #cbd5e0;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease;font-size:16px;font-weight:700;color:#fff}.option-btn.selected .option-checkbox{background:#38b2ac;border-color:#38b2ac}.text-input{width:100%;padding:16px;border:2px solid #e2e8f0;border-radius:12px;font-size:16px;font-family:inherit;resize:vertical;transition:all .2s ease}.text-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.rating-options{display:flex;gap:12px;justify-content:center;margin:20px 0}.rating-btn{width:60px;height:60px;background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;font-size:24px;font-weight:700;cursor:pointer;transition:all .2s ease;color:#718096}.rating-btn:hover{background:#edf2f7;border-color:#cbd5e0;transform:translateY(-2px)}.rating-btn.selected{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff;box-shadow:0 4px 12px #667eea66}.yes-no-options{display:flex;gap:20px;justify-content:center;margin:20px 0}.yn-btn{flex:1;max-width:200px;padding:20px;border:2px solid #e2e8f0;border-radius:12px;font-size:18px;font-weight:600;cursor:pointer;transition:all .2s ease}.yn-btn.yes{background:#f0fff4;color:#22543d}.yn-btn.yes:hover{background:#c6f6d5;border-color:#48bb78}.yn-btn.yes.selected{background:#48bb78;border-color:#38a169;color:#fff;box-shadow:0 4px 12px #48bb7866}.yn-btn.no{background:#fff5f5;color:#742a2a}.yn-btn.no:hover{background:#fed7d7;border-color:#fc8181}.yn-btn.no.selected{background:#fc8181;border-color:#f56565;color:#fff;box-shadow:0 4px 12px #fc818166}.survey-footer{padding:20px 30px;background:#f7fafc;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;gap:15px}.nav-btn{padding:14px 28px;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.nav-btn.secondary{background:#fff;color:#4a5568;border:2px solid #e2e8f0}.nav-btn.secondary:hover:not(:disabled){background:#edf2f7;border-color:#cbd5e0}.nav-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:2px solid transparent}.nav-btn.primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.nav-btn.submit{background:linear-gradient(135deg,#48bb78,#38a169)}.nav-btn.submit:hover:not(:disabled){box-shadow:0 4px 12px #48bb7866}.nav-btn:disabled{opacity:.5;cursor:not-allowed}.question-dots{padding:20px;display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.dot{width:10px;height:10px;background:#cbd5e0;border-radius:50%;cursor:pointer;transition:all .2s ease}.dot.active{background:#667eea;transform:scale(1.3)}.dot.answered{background:#48bb78}.dot:hover{transform:scale(1.2)}.survey-loading{padding:60px;text-align:center;font-size:20px;color:#fff;font-weight:600}@media (max-width: 768px){.survey-header{padding:20px}.survey-title-section h1{font-size:22px}.question-container{padding:30px 20px;min-height:300px}.question-header h2{font-size:18px}.rating-options{gap:8px}.rating-btn{width:50px;height:50px;font-size:20px}.yes-no-options{flex-direction:column}.yn-btn{max-width:100%}.survey-footer{padding:15px 20px}.nav-btn{padding:12px 20px;font-size:14px}}:root{--primary: #8B1538;--primary-light: #DC2626;--primary-dark: #5B0A1F;--primary-glow: rgba(220, 38, 38, .3);--secondary: #065F46;--secondary-light: #059669;--secondary-dark: #064E3B;--secondary-glow: rgba(5, 150, 105, .3);--accent: #F59E0B;--accent-light: #FBBF24;--accent-dark: #D97706;--accent-glow: rgba(251, 191, 36, .4);--ice-blue: #DBEAFE;--ice-blue-dark: #93C5FD;--ice-blue-glow: rgba(147, 197, 253, .2);--background: #0A0F1E;--background-light: #0F172a;--surface: #1E293b;--surface-light: #334155;--surface-lighter: #475569;--text: #F8FAFC;--text-secondary: #CBD5E1;--text-muted: #94a3b8;--success: #059669;--error: #DC2626;--warning: #F59E0B;--info: #3B82F6;--border: #334155;--border-light: #475569;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .1);--shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--gradient-red-gold: linear-gradient(135deg, var(--primary-light) 0%, var(--accent) 100%);--gradient-green-ice: linear-gradient(135deg, var(--secondary) 0%, var(--ice-blue-dark) 100%);--gradient-festive: linear-gradient(135deg, var(--primary-light) 0%, var(--accent-light) 50%, var(--secondary-light) 100%);--gradient-winter: linear-gradient(135deg, #1E293b 0%, #0F172a 50%, #1E293b 100%);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--transition-fast: .15s ease-in-out;--transition-base: .3s ease-in-out;--transition-slow: .5s ease-in-out}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--background);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior-y:none;-webkit-overflow-scrolling:touch;line-height:1.6;font-size:16px}.loading{display:flex;justify-content:center;align-items:center;height:100vh;font-size:1.5rem;color:var(--text-secondary)}button{cursor:pointer;border:none;background:none;font-family:inherit}input,textarea{font-family:inherit;font-size:16px}a{color:var(--primary-light);text-decoration:none;transition:var(--transition-fast)}a:hover{color:var(--accent-light);text-decoration:underline}.gradient-text-festive{background:var(--gradient-festive);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-text-red-gold{background:var(--gradient-red-gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-text-green-ice{background:var(--gradient-green-ice);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.holiday-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-md);transition:var(--transition-base)}.holiday-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--border-light)}.btn-primary{background:var(--gradient-red-gold);color:var(--text);padding:var(--spacing-md) var(--spacing-xl);border:none;border-radius:var(--radius-lg);font-weight:600;font-size:1rem;cursor:pointer;transition:var(--transition-base);box-shadow:0 4px 12px var(--primary-glow);position:relative;overflow:hidden}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px var(--primary-glow)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--gradient-green-ice);color:var(--text);padding:var(--spacing-md) var(--spacing-xl);border:none;border-radius:var(--radius-lg);font-weight:600;font-size:1rem;cursor:pointer;transition:var(--transition-base);box-shadow:0 4px 12px var(--secondary-glow)}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 8px 20px var(--secondary-glow)}.btn-outline{background:transparent;color:var(--text);padding:var(--spacing-md) var(--spacing-xl);border:2px solid var(--border-light);border-radius:var(--radius-lg);font-weight:600;font-size:1rem;cursor:pointer;transition:var(--transition-base)}.btn-outline:hover{border-color:var(--accent-light);background:#fbbf241a;transform:translateY(-2px)}.glow-red{box-shadow:0 0 20px var(--primary-glow),0 0 40px var(--primary-glow)}.glow-green{box-shadow:0 0 20px var(--secondary-glow),0 0 40px var(--secondary-glow)}.glow-gold{box-shadow:0 0 20px var(--accent-glow),0 0 40px var(--accent-glow)}.snow-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;overflow:hidden}.holiday-icon{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;background:var(--gradient-red-gold);border-radius:var(--radius-full);font-size:1.5rem;box-shadow:var(--shadow-md)}.section-header{margin-bottom:var(--spacing-xl)}.section-title{font-size:1.75rem;font-weight:800;margin-bottom:var(--spacing-sm);color:var(--text)}.section-subtitle{font-size:1rem;color:var(--text-secondary);font-weight:400}.border-festive{border:2px solid transparent;background-image:linear-gradient(var(--surface),var(--surface)),var(--gradient-festive);background-origin:border-box;background-clip:padding-box,border-box}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--text)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}@media (max-width: 768px){h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.125rem}}*{box-sizing:border-box}html{font-size:16px}body{margin:0;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;width:100%}
