.auth-view{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.auth-container{width:100%;max-width:450px;background:var(--bg-primary, #1a1a1a);border-radius:16px;box-shadow:0 20px 60px #00000080;overflow:hidden}.auth-header{background:linear-gradient(135deg,#667eea,#764ba2);padding:40px 30px;text-align:center;color:#fff}.auth-logo{font-size:64px;margin-bottom:15px;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.auth-header h1{margin:0 0 10px;font-size:32px;font-weight:700}.auth-header p{margin:0;font-size:16px;opacity:.9}.auth-message{margin:20px 30px 0;padding:15px;border-radius:8px;font-size:14px;line-height:1.5}.auth-message.success{background:#4caf5033;border:1px solid #4caf50;color:#4caf50}.auth-message.error{background:#ef444433;border:1px solid #ef4444;color:#ef4444}.auth-form{padding:30px}.auth-form h2{margin:0 0 10px;font-size:24px;color:var(--text-primary, #ffffff)}.form-description{margin:0 0 25px;font-size:14px;color:var(--text-secondary, #b0b0b0);line-height:1.5}.form-field{margin-bottom:20px}.form-field label{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:var(--text-primary, #ffffff)}.form-field input{width:100%;padding:12px 16px;background:var(--bg-secondary, #2a2a2a);border:1px solid var(--border-color, #3a3a3a);border-radius:8px;color:var(--text-primary, #ffffff);font-size:15px;transition:all .2s}.form-field input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-field input::placeholder{color:var(--text-tertiary, #666)}.form-field small{display:block;margin-top:5px;font-size:12px;color:var(--text-secondary, #b0b0b0)}.auth-btn{width:100%;padding:14px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;margin-top:10px}.auth-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.auth-btn.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.auth-btn.primary:active:not(:disabled){transform:translateY(0)}.auth-btn.primary:disabled{opacity:.6;cursor:not-allowed}.auth-btn.secondary{background:transparent;color:var(--text-primary, #ffffff);border:2px solid var(--border-color, #3a3a3a)}.auth-btn.secondary:hover:not(:disabled){background:var(--bg-hover, #2a2a2a);border-color:#667eea}.auth-links{display:flex;justify-content:space-between;margin:15px 0 20px}.link-btn{background:none;border:none;color:#667eea;font-size:13px;cursor:pointer;text-decoration:none;transition:all .2s}.link-btn:hover{text-decoration:underline;color:#764ba2}.auth-divider{display:flex;align-items:center;margin:25px 0;color:var(--text-secondary, #b0b0b0);font-size:14px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border-color, #3a3a3a)}.auth-divider span{padding:0 15px}.auth-footer{padding:20px 30px;border-top:1px solid var(--border-color, #3a3a3a);text-align:center}.auth-footer p{margin:0;font-size:12px;color:var(--text-secondary, #b0b0b0);line-height:1.5}@media (max-width: 500px){.auth-container{max-width:100%;border-radius:0}.auth-header{padding:30px 20px}.auth-form{padding:20px}.auth-links{flex-direction:column;gap:10px;align-items:flex-start}}@media (prefers-color-scheme: dark){.form-field input{background:#1a1a1a;border-color:#2a2a2a}.form-field input:focus{background:#202020}}.achievement-toast{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:8px;border-left:4px solid #1eff00;padding:16px;min-width:350px;max-width:450px;box-shadow:0 8px 32px #0009;opacity:0;transform:translate(400px);transition:all .5s cubic-bezier(.68,-.55,.265,1.55);position:relative;overflow:hidden}.achievement-toast:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transform:translate(-100%);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.achievement-toast.visible{opacity:1;transform:translate(0)}.achievement-toast.exiting{opacity:0;transform:translate(400px)}.achievement-icon{flex-shrink:0;width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border-radius:8px;overflow:hidden}.achievement-icon img{width:100%;height:100%;object-fit:cover}.achievement-icon-placeholder{font-size:32px;filter:drop-shadow(0 0 8px rgba(255,255,0,.6));animation:bounce 1s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.achievement-content{flex:1;display:flex;flex-direction:column;gap:4px}.achievement-header{font-size:12px;font-weight:600;text-transform:uppercase;color:gold;letter-spacing:1px;text-shadow:0 0 8px rgba(255,215,0,.6)}.achievement-name{font-size:18px;font-weight:700;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.4)}.achievement-description{font-size:14px;color:#b0b0b0;line-height:1.4}.achievement-close{position:absolute;top:8px;right:8px;width:24px;height:24px;border:none;background:#ffffff1a;color:#fff;border-radius:4px;cursor:pointer;font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0}.achievement-close:hover{background:#fff3;transform:scale(1.1)}.achievement-close:active{transform:scale(.95)}.achievement-toast-container{position:fixed;top:80px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:12px;pointer-events:none}.achievement-toast-container>*{pointer-events:all}.error-boundary-container{padding:60px 24px;text-align:center;color:#e0e0e0;max-width:700px;margin:40px auto;background:#1e1e32e6;border-radius:16px;border:1px solid rgba(255,82,82,.3);box-shadow:0 8px 32px #0000004d}.error-boundary-container.retry{border-color:#667eea4d}.error-icon{font-size:4rem;margin-bottom:24px;animation:error-pulse 2s ease-in-out infinite}@keyframes error-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}.error-header{margin-bottom:24px}.error-header h2{font-size:2rem;margin-bottom:12px;color:#fff}.error-type{display:inline-block;padding:6px 16px;background:#ff525233;border:1px solid rgba(255,82,82,.4);border-radius:20px;color:#ff5252;font-size:.9rem;font-weight:600}.error-message{font-size:1.1rem;line-height:1.6;color:#bbb;margin-bottom:32px;padding:0 20px}.error-actions{display:flex;gap:16px;justify-content:center;margin-bottom:32px;flex-wrap:wrap}.error-actions button{padding:12px 32px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea99}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:#323246cc;color:#e0e0e0;border:1px solid rgba(102,126,234,.3)}.btn-secondary:hover{background:#3c3c50e6;border-color:#667eea80}.error-suggestions{text-align:left;background:#32324680;padding:24px;border-radius:12px;margin-bottom:24px}.error-suggestions h3{font-size:1.1rem;color:#667eea;margin-bottom:16px}.error-suggestions ul{list-style-position:inside;color:#bbb;line-height:2}.error-suggestions li{margin-bottom:8px;padding-left:8px}.error-suggestions li::marker{color:#667eea}.error-details{text-align:left;margin-top:24px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1)}.error-details summary{font-size:1rem;color:#888;cursor:pointer;padding:8px;border-radius:6px;transition:background .2s ease}.error-details summary:hover{background:#32324680}.error-stack,.error-component-stack{margin-top:16px}.error-stack h4,.error-component-stack h4{font-size:.9rem;color:#888;margin-bottom:8px}.error-stack pre,.error-component-stack pre{background:#14141ecc;padding:16px;border-radius:8px;overflow-x:auto;font-size:.85rem;line-height:1.5;color:#ff9800;border:1px solid rgba(255,152,0,.2)}.error-footer{margin-top:32px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1);font-size:.85rem;color:#666}.loading-spinner{margin:20px auto;width:50px;height:50px;border:4px solid rgba(102,126,234,.2);border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite}.api-error-fallback{padding:40px;text-align:center;color:#bbb}.api-error-fallback p{margin-bottom:20px;font-size:1.1rem}@media (max-width: 768px){.error-boundary-container{padding:40px 20px;margin:20px}.error-header h2{font-size:1.5rem}.error-icon{font-size:3rem}.error-message{font-size:1rem}.error-actions{flex-direction:column}.error-actions button{width:100%}}:root{--bg-main: #050814;--bg-elevated: #0b1020;--accent: #20c463;--accent-soft: rgba(32, 196, 99, .1);--accent-blue: #1f9bff;--text-main: #f5f7fa;--text-muted: #9ca3af;--border-subtle: #1f2933;--radius-lg: 16px;--radius-md: 12px}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Inter,Segoe UI,sans-serif;background:var(--bg-main);color:var(--text-main)}.app-root{display:flex;height:100vh;width:100vw;overflow:hidden}.sidebar{width:260px;background:radial-gradient(circle at top,#0f172a,#020617);border-right:1px solid var(--border-subtle);padding:20px 16px;display:flex;flex-direction:column}.sidebar-logo{display:flex;align-items:center;gap:10px;margin-bottom:24px}.logo-image{width:40px;height:40px;border-radius:10px;object-fit:contain;background:#020617}.logo-text{display:flex;flex-direction:column}.logo-title{font-weight:600;font-size:1rem}.logo-tagline{font-size:.75rem;color:var(--text-muted)}.sidebar-nav{display:flex;flex-direction:column;gap:6px;margin-top:8px}.nav-item{border:none;background:transparent;color:var(--text-muted);text-align:left;padding:8px 10px;border-radius:999px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;gap:8px}.nav-item:hover{background:#94a3b81f;color:var(--text-main)}.nav-item.active{background:var(--accent-soft);color:var(--accent)}.app-main{flex:1;display:flex;flex-direction:column}.app-header{padding:16px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-subtle);background:linear-gradient(90deg,#020617,#020617 40%,#020617e6)}.header-subtitle{margin-top:4px;font-size:.85rem;color:var(--text-muted)}.search-input{background:#020617;border-radius:999px;border:1px solid var(--border-subtle);padding:8px 14px;color:var(--text-main);min-width:260px}.search-input::placeholder{color:var(--text-muted)}.app-content{flex:1;padding:16px 24px;overflow:auto;background:radial-gradient(circle at top left,#020617,#000)}.panel{background:var(--bg-elevated);border-radius:var(--radius-lg);padding:16px 18px;border:1px solid var(--border-subtle)}.panel-empty{text-align:center;padding:40px 24px}.panel-empty h2{margin-bottom:8px}.game-grid{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.game-card{background:#020617;border-radius:var(--radius-md);border:1px solid var(--border-subtle);overflow:hidden;display:flex;flex-direction:column}.game-cover-placeholder{height:120px;background:radial-gradient(circle at top,#1f2937,#020617);display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:700;color:var(--accent)}.game-info{padding:10px 12px 12px}.game-info h3{margin:0;font-size:1rem}.game-meta{margin:2px 0;font-size:.8rem;color:var(--text-muted)}.primary-button{margin-top:8px;width:100%;padding:6px 10px;border-radius:999px;border:none;background:linear-gradient(135deg,var(--accent),var(--accent-blue));color:#fff;font-size:.85rem;font-weight:600;cursor:pointer}.primary-button:hover{filter:brightness(1.08)}.status-bar{height:28px;padding:0 18px;border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;font-size:.75rem;background:#020617;color:var(--text-muted)}.header-right{display:flex;align-items:center;gap:10px}.header-add-button{border:none;border-radius:999px;padding:8px 16px;background:linear-gradient(135deg,var(--accent),var(--accent-blue));color:#fff;font-size:.8rem;font-weight:600;cursor:pointer}.header-add-button:hover{filter:brightness(1.08)}body[data-theme=minimal]{--bg-main: #0b1020;--bg-elevated: #050814;--accent: #38bdf8;--accent-soft: rgba(56, 189, 248, .15);--accent-blue: #38bdf8}body[data-theme=neon]{--bg-main: #020617;--bg-elevated: #020617;--accent: #22c55e;--accent-soft: rgba(34, 197, 94, .2);--accent-blue: #22d3ee}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:40}.modal{width:420px;max-width:90vw;max-height:90vh;background:var(--bg-elevated);border-radius:16px;border:1px solid var(--border-subtle);padding:20px 22px;box-shadow:0 20px 60px #0009;overflow-y:auto;display:flex;flex-direction:column}.modal h2{margin-top:0;margin-bottom:12px}.modal::-webkit-scrollbar{width:8px}.modal::-webkit-scrollbar-track{background:#0003;border-radius:4px}.modal::-webkit-scrollbar-thumb{background:#8b5cf680;border-radius:4px}.modal::-webkit-scrollbar-thumb:hover{background:#8b5cf6b3}.modal-section{margin-top:16px}.modal-section h3{margin:0 0 8px;font-size:.9rem}.option-row{display:flex;flex-direction:column;gap:4px}.option-row label{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--text-muted)}.modal-form{display:flex;flex-direction:column;gap:12px}.modal-field{display:flex;flex-direction:column;gap:4px;font-size:.85rem}.modal-field span{color:var(--text-muted)}.modal-field input,.modal-field textarea,.search-input{border-radius:8px;border:1px solid var(--border-subtle);background:#020617;color:var(--text-main);padding:6px 10px;font-size:.85rem;pointer-events:auto!important;user-select:text!important;-webkit-user-select:text!important}.modal-actions{margin-top:16px;display:flex;justify-content:flex-end;gap:8px}.secondary-button{border-radius:999px;border:1px solid var(--border-subtle);background:transparent;padding:6px 14px;color:var(--text-main);font-size:.85rem;cursor:pointer}.secondary-button.danger{border-color:#b91c1c;color:#fca5a5}.secondary-button:hover{background:#94a3b81f}.game-header-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.game-actions-inline{display:flex;gap:6px}.game-action-link{border:none;background:transparent;color:var(--accent);font-size:.75rem;cursor:pointer;padding:0}.game-actions-menu{position:relative}.game-menu-button{border:1px solid var(--border-subtle);border-radius:999px;background:transparent;color:var(--text-muted);font-size:.75rem;padding:3px 8px;cursor:pointer}.game-actions-menu:hover .game-menu-dropdown{display:flex}.game-menu-dropdown{display:none;position:absolute;right:0;top:22px;background:#020617;border-radius:8px;border:1px solid var(--border-subtle);flex-direction:column;min-width:120px;z-index:10}.game-menu-item{border:none;background:transparent;color:var(--text-main);font-size:.8rem;padding:6px 10px;text-align:left;cursor:pointer}.game-menu-item:hover{background:#94a3b826}.game-menu-item.danger{color:#fca5a5}.game-footer-actions{margin-top:8px;display:flex;gap:8px}.drop-zone{margin-bottom:16px;padding:16px 18px;border-radius:16px;border:1px dashed var(--border-subtle);background:#020617;text-align:center;transition:background .15s ease,border-color .15s ease}.drop-zone-title{margin:0 0 4px;font-size:.95rem}.drop-zone-subtitle{margin:0;font-size:.8rem;color:var(--text-muted)}.drop-zone-active{border-color:var(--accent);background:#20c46314}.drop-zone-importing{opacity:.7}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:2000}.modal{background:#1e1e1e;padding:20px;border-radius:12px;width:400px;box-shadow:0 0 20px #0000004d}.modal-actions{display:flex;justify-content:flex-end;margin-top:15px;gap:10px}input:focus{color:#02b7ff}input{color:#02b7ff}.header{display:flex;align-items:center;padding:12px 20px;border-bottom:1px solid var(--border-color);background:var(--header-bg)}.header-title h1{margin:0;font-size:22px;color:var(--text-color)}.header-spacer{flex-grow:1}.header-actions{display:flex;align-items:center;gap:10px}.header-btn{padding:8px 12px;background:var(--button-bg);border:1px solid var(--border-color);color:var(--text-color);border-radius:6px;cursor:pointer;transition:background .15s}.header-btn:hover{background:var(--button-hover-bg)}.header-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.wallet-display{display:flex;align-items:center;padding:6px 10px;background:var(--wallet-bg);border-radius:6px;border:1px solid var(--border-color)}.coin-icon{margin-right:6px}.coin-amount{font-weight:700;color:var(--text-color)}.header-user{display:flex;align-items:center;gap:10px;padding:6px 12px;background:var(--wallet-bg);border-radius:6px;border:1px solid var(--border-color);color:var(--text-color);font-size:14px;font-weight:500}.role-badge{padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.role-badge.admin{background:#d32f2f;color:#fff}.logout-btn{background:#d32f2f!important;border-color:#d32f2f!important;color:#fff!important}.logout-btn:hover{background:#b71c1c!important;border-color:#b71c1c!important}[data-theme=premium]{--header-bg: #111;--button-bg: #222;--button-hover-bg: #333;--wallet-bg: #1a1a1a;--accent: #bb86fc}[data-theme=minimal]{--header-bg: #f0f0f0;--button-bg: #fff;--button-hover-bg: #eee;--wallet-bg: #fff;--accent: #0077cc}[data-theme=neon]{--header-bg: #0a0a16;--button-bg: #111133;--button-hover-bg: #18185e;--wallet-bg: #111133;--accent: #76fffb}.sidebar{width:220px;min-width:220px;background:var(--bg-sidebar, #0f172a);border-right:1px solid var(--border-subtle, #1e293b);display:flex;flex-direction:column;height:100%;position:relative}.sidebar-logo{padding:12px 16px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--border-subtle, #1e293b)}.logo-image{width:140px;height:auto;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}.sidebar-nav{display:flex;flex-direction:column;padding:8px 12px;gap:2px;overflow-y:auto;overflow-x:hidden;flex:1}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:3px;transition:background .2s}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#94a3b880}.sidebar-item{position:relative;display:flex;align-items:center;gap:10px;padding:8px 14px;border-radius:8px;border:none;background:transparent;color:var(--text-muted, #94a3b8);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:left;width:100%;overflow:hidden}.sidebar-item:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:10px;opacity:0;background:linear-gradient(135deg,var(--accent-soft) 0%,transparent 100%);transition:opacity .2s ease}.sidebar-item:hover{color:var(--text-main, #f1f5f9)}.sidebar-item:hover:before{opacity:1}.sidebar-item.active{color:var(--text-main, #f1f5f9);background:var(--accent-soft, rgba(168, 85, 247, .15))}.sidebar-item.active:before{opacity:1;background:linear-gradient(135deg,var(--accent-soft) 0%,transparent 50%)}.sidebar-item-icon{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:7px;background:#ffffff0d;transition:all .2s ease}.sidebar-item:hover .sidebar-item-icon{background:#ffffff1a;transform:scale(1.05)}.sidebar-item.active .sidebar-item-icon{background:var(--accent, #a855f7);color:#fff;box-shadow:0 4px 12px #a855f766}.sidebar-label{position:relative;z-index:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-active-indicator{position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:24px;background:var(--accent, #a855f7);border-radius:0 3px 3px 0;box-shadow:0 0 10px var(--accent, #a855f7)}.sidebar-spacer{flex:1}.sidebar-item-bottom{margin:0 12px 8px}.sidebar-version{padding:8px 16px;font-size:.65rem;color:var(--text-dim, #64748b);text-align:center;border-top:1px solid var(--border-subtle, #1e293b)}.sidebar-item.active:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent);box-shadow:0 0 10px var(--accent),0 0 20px var(--accent);border-radius:0 2px 2px 0}[data-theme=steam] .sidebar-item.active .sidebar-item-icon{background:linear-gradient(to bottom,#75b022,#588a1b);box-shadow:0 4px 12px #75b02266}[data-theme=steam] .sidebar-active-indicator,[data-theme=steam] .sidebar-item.active:after{background:#66c0f4;box-shadow:0 0 10px #66c0f4}[data-theme=xbox] .sidebar-item.active{background:#107c1033}[data-theme=xbox] .sidebar-item.active .sidebar-item-icon{background:#107c10;box-shadow:0 4px 12px #107c1080}[data-theme=xbox] .sidebar-active-indicator,[data-theme=xbox] .sidebar-item.active:after{background:#107c10;box-shadow:0 0 10px #107c10}[data-theme=gog] .sidebar-item.active .sidebar-item-icon{background:linear-gradient(135deg,#8b5cf6,#7c3aed);box-shadow:0 4px 12px #8b5cf680}[data-theme=gog] .sidebar-active-indicator,[data-theme=gog] .sidebar-item.active:after{background:#8b5cf6;box-shadow:0 0 10px #8b5cf6}@media (max-width: 900px){.sidebar{width:72px;min-width:72px}.sidebar-logo{padding:16px 8px}.logo-image{width:48px}.sidebar-nav{padding:12px 8px}.sidebar-item{justify-content:center;padding:12px}.sidebar-label,.sidebar-active-indicator{display:none}.sidebar-item-icon{margin:0}.sidebar-item-bottom{margin:0 8px 8px}.sidebar-version{font-size:.6rem;padding:8px}}.statusbar{height:32px;padding:0 18px;border-top:1px solid var(--border-subtle);display:flex;align-items:center;gap:16px;font-size:.75rem;background:linear-gradient(180deg,#020617,#0a0f1a);color:var(--text-muted)}.status-group{display:flex;align-items:center;gap:8px}.status-icon{width:8px;height:8px;border-radius:50%;display:inline-block;box-shadow:0 0 6px currentColor}.status-text{color:var(--text-muted);font-size:.75rem}.latency{color:#94a3b899;font-size:.7rem}.status-update{display:flex;align-items:center;gap:6px;padding:3px 10px;background:#6366f126;border:1px solid rgba(99,102,241,.3);border-radius:999px;animation:pulse-update 2s ease-in-out infinite}@keyframes pulse-update{0%,to{opacity:1}50%{opacity:.7}}.update-text{color:#a5b4fc;font-size:.7rem;font-weight:500}.spacer{flex:1}.version-label{color:#94a3b880;font-size:.7rem;letter-spacing:.05em}.wallet{display:flex;align-items:center;gap:4px;padding:3px 10px;background:#eab3081a;border:1px solid rgba(234,179,8,.25);border-radius:999px}.wallet .coin-icon{font-size:.8rem;color:#fbbf24}.wallet .coin-number{color:#fcd34d;font-weight:600;font-size:.75rem}.game-card{background:#020617;border-radius:var(--radius-md);border:1px solid var(--border-subtle);overflow:hidden;display:flex;flex-direction:column;height:100%;transition:transform .15s ease,box-shadow .15s ease}.game-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0006}.game-cover{position:relative;width:100%;aspect-ratio:3 / 4;overflow:hidden;background:radial-gradient(circle at top,#1f2937,#020617)}.game-cover-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.game-card:hover .game-cover-image{transform:scale(1.05)}.game-cover-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:700;color:var(--accent);background:radial-gradient(circle at top left,#1f2937,#020617 70%)}.game-warning-badge{position:absolute;top:8px;left:8px;padding:4px 8px;border-radius:6px;font-size:.7rem;font-weight:700;background:#ea580ce6;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px #ea580c4d;cursor:help}.game-version-badge{position:absolute;top:8px;left:8px;padding:4px 8px;border-radius:6px;font-size:.7rem;font-weight:600;background:#3b82f6e6;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px #3b82f64d;cursor:help}.game-bundle-badge{position:absolute;bottom:8px;left:8px;padding:4px 8px;border-radius:6px;font-size:.7rem;font-weight:700;background:#a855f7e6;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px #a855f74d;cursor:help}.game-collection-badge{position:absolute;bottom:8px;left:8px;padding:4px 8px;border-radius:6px;font-size:.7rem;font-weight:700;background:#3b82f6e6;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px #3b82f64d;cursor:help}.game-warning-badge+.game-version-badge{top:40px}.game-rating-badge{position:absolute;top:8px;right:8px;padding:4px 8px;border-radius:6px;font-size:.75rem;font-weight:600;background:#000000b3;color:#fbbf24;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.game-cloud-badge{position:absolute;bottom:8px;right:8px;width:26px;height:26px;border-radius:50%;background:#38bdf8d9;color:#fff;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 8px #38bdf866;z-index:2}.action-btn.cloud-action,.game-action-link.cloud-action{color:#38bdf8!important}.action-btn.cloud-action:hover,.game-action-link.cloud-action:hover{color:#7dd3fc!important;background:#38bdf826!important}.game-info{padding:12px 14px 14px;display:flex;flex-direction:column;gap:4px;flex:1}.game-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.game-title{margin:0;font-size:.95rem;font-weight:600;color:var(--text-main);line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.6rem;max-height:2.6rem}.game-meta{margin:0;font-size:.8rem;color:var(--text-muted)}.game-genres{margin:0;font-size:.75rem;color:var(--accent);opacity:.8}.game-emulator{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;opacity:.6}.game-playtime{font-size:.75rem;color:#94a3b8b3}.game-actions-inline{display:flex;gap:6px;flex-shrink:0}.game-action-link{border:none;background:transparent;color:var(--accent);font-size:.7rem;cursor:pointer;padding:2px 4px;border-radius:4px;transition:background .15s ease}.game-action-link:hover{background:var(--accent-soft)}.game-action-link.danger{color:#fca5a5}.game-action-link.danger:hover{background:#ef444426}.game-action-link:disabled{opacity:.5;cursor:not-allowed}.game-card .primary-button{margin-top:auto;padding-top:8px}.game-grid{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;align-items:stretch}@media (min-width: 1200px){.game-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media (min-width: 1600px){.game-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}.fetch-all-metadata-btn{margin-left:auto;padding:6px 12px;border-radius:6px;border:1px solid var(--border-subtle);background:#6366f11a;color:#a5b4fc;font-size:.8rem;cursor:pointer;transition:all .15s ease}.fetch-all-metadata-btn:hover{background:#6366f133;border-color:#6366f166}.fetch-all-metadata-btn:disabled{opacity:.5;cursor:not-allowed}.library-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:12px}.library-header h2{margin:0}.library-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:8px;background:var(--bg-elevated, #1e293b);border:1px solid var(--border-subtle, #334155);border-radius:8px;padding:6px 12px;min-width:200px}.search-box svg{color:var(--text-muted);flex-shrink:0}.search-input{border:none;background:transparent;color:var(--text-main);font-size:.85rem;outline:none;width:100%}.search-input::placeholder{color:var(--text-dim)}.search-clear{border:none;background:transparent;color:var(--text-muted);font-size:1.2rem;cursor:pointer;padding:0 4px;line-height:1}.search-clear:hover{color:var(--text-main)}.filter-select{background:var(--bg-elevated, #1e293b);border:1px solid var(--border-subtle, #334155);border-radius:8px;padding:8px 12px;color:var(--text-main);font-size:.85rem;cursor:pointer;outline:none}.filter-select:focus{border-color:var(--accent)}.filter-select option{background:var(--bg-elevated);color:var(--text-main)}.filter-results{color:var(--text-muted);font-size:.85rem;margin:0 0 12px}.no-results{text-align:center;padding:40px 20px;color:var(--text-muted)}.no-results p{margin-bottom:16px}.game-card-wrapper{transition:transform .15s ease,opacity .15s ease;display:flex;flex-direction:column}.game-card-wrapper[draggable=true]{cursor:grab}.game-card-wrapper[draggable=true]:active{cursor:grabbing}.game-card-wrapper.dragging{opacity:.5;transform:scale(.98)}.game-card-wrapper.drag-over{transform:translate(8px)}.game-card-wrapper.drag-over:before{content:"";position:absolute;left:-4px;top:0;bottom:0;width:3px;background:var(--accent);border-radius:2px}.default-cover{width:100%;height:100%;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center}.default-cover-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.default-cover-logo{position:relative;z-index:1;opacity:.8}.default-cover-initial{position:relative;z-index:1;font-size:3rem;font-weight:800;margin-top:8px;text-shadow:0 2px 10px rgba(0,0,0,.5)}.default-cover-platform{position:absolute;bottom:8px;left:8px;right:8px;padding:4px 8px;border-radius:4px;font-size:.65rem;font-weight:600;text-align:center;color:#fff;text-transform:uppercase;letter-spacing:.05em;z-index:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-cover{position:relative;cursor:pointer}.game-cover-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000;display:flex;align-items:flex-start;justify-content:flex-end;padding:8px;opacity:0;transition:all .2s ease}.game-card:hover .game-cover-overlay{opacity:1;background:#0000004d}.cover-menu-btn{width:28px;height:28px;border-radius:6px;border:none;background:#000000b3;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease}.cover-menu-btn:hover{background:var(--accent)}.cover-dropdown{position:absolute;top:40px;right:8px;background:var(--bg-elevated, #1e293b);border:1px solid var(--border-subtle, #334155);border-radius:8px;padding:6px;display:flex;flex-direction:column;gap:2px;min-width:120px;z-index:100;box-shadow:0 4px 20px #0006}.game-actions-dropdown{position:relative}.dropdown-trigger{width:24px;height:24px;border-radius:4px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center}.dropdown-trigger:hover{background:var(--bg-elevated);color:var(--text-main)}.dropdown-menu{position:absolute;top:100%;right:0;margin-top:4px;background:var(--bg-elevated, #1e293b);border:1px solid var(--border-subtle, #334155);border-radius:8px;padding:6px;display:flex;flex-direction:column;gap:2px;min-width:100px;z-index:100;box-shadow:0 4px 20px #0006}.game-actions-footer{display:flex;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid var(--border-subtle, #1e293b)}.action-btn{width:28px;height:28px;border-radius:6px;border:1px solid var(--border-subtle, #334155);background:var(--bg-card, #0f172a);color:var(--text-muted, #94a3b8);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.action-btn:hover{background:var(--bg-elevated);color:var(--accent);border-color:var(--accent)}.action-btn.danger{color:#f87171}.action-btn.danger:hover{background:#ef444426;border-color:#f87171;color:#f87171}.action-btn:disabled{opacity:.4;cursor:not-allowed}.cover-dropdown .action-btn,.dropdown-menu .game-action-link{width:100%;justify-content:flex-start;padding:6px 10px;gap:8px}.dropdown-menu .game-action-link{display:flex;align-items:center;border-radius:4px}.dropdown-menu .game-action-link:hover{background:var(--accent-soft)}.play-btn{width:100%;margin-top:auto;padding-top:10px;display:flex;align-items:center;justify-content:center;gap:6px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fetch-all-metadata-btn.loading:before{content:"";display:inline-block;width:12px;height:12px;border:2px solid rgba(165,180,252,.3);border-top-color:#a5b4fc;border-radius:50%;margin-right:6px;animation:spin .8s linear infinite}.select-mode-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;border:1px solid var(--border-subtle, #334155);background:var(--bg-card, #0f172a);color:var(--text-muted, #94a3b8);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.select-mode-btn:hover{background:var(--bg-elevated, #1e293b);color:var(--text-main, #f1f5f9);border-color:var(--accent, #a855f7)}.select-mode-btn.active{background:var(--accent, #a855f7);color:#fff;border-color:var(--accent, #a855f7)}.select-action-btn{padding:8px 12px;border-radius:6px;border:1px solid var(--border-subtle, #334155);background:transparent;color:var(--text-muted, #94a3b8);font-size:.85rem;cursor:pointer;transition:all .2s}.select-action-btn:hover{background:var(--bg-elevated, #1e293b);color:var(--text-main, #f1f5f9)}.selection-count{padding:8px 12px;font-size:.9rem;color:var(--accent, #a855f7);font-weight:600}.bulk-delete-btn{padding:8px 14px;border-radius:6px;border:1px solid rgba(239,68,68,.5);background:#ef44441a;color:#f87171;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.bulk-delete-btn:hover{background:#ef444433;border-color:#f87171}.game-card-wrapper{position:relative;cursor:pointer}.game-card-wrapper.selected .game-card{border-color:var(--accent, #a855f7);box-shadow:0 0 0 2px #a855f74d;transform:scale(.98)}.game-selection-overlay{position:absolute;top:8px;right:8px;z-index:10;pointer-events:none}.game-checkbox{width:28px;height:28px;border-radius:6px;border:2px solid rgba(255,255,255,.6);background:#0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;transition:all .2s}.game-checkbox.checked{background:var(--accent, #a855f7);border-color:var(--accent, #a855f7);box-shadow:0 2px 8px #a855f766}.game-collections-container{position:absolute;top:8px;right:8px;display:flex;gap:4px;z-index:5}.game-collection-tag{padding:4px 6px;border-radius:4px;font-size:.7rem;font-weight:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 6px #0000004d;border:1px solid;display:flex;align-items:center;justify-content:center}.game-collection-tag.game-collection-more{background:#000000b3;border-color:#fff3;color:#fff;font-size:.65rem}.collections-dropdown{position:absolute;bottom:100%;left:0;right:0;margin-bottom:8px;background:#1e1e1e;border:1px solid #3a3a3a;border-radius:8px;box-shadow:0 8px 24px #0006;z-index:1000;max-height:300px;display:flex;flex-direction:column}.collections-dropdown-header{display:flex;justify-content:space-between;align-items:center;padding:12px;border-bottom:1px solid #3a3a3a;font-weight:600;font-size:.9rem}.collections-dropdown-list{overflow-y:auto;max-height:250px}.collection-item{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;transition:background .15s ease;border-bottom:1px solid rgba(255,255,255,.05)}.collection-item:last-child{border-bottom:none}.collection-item:hover{background:#a855f71a}.collection-item.active{background:#a855f726}.collection-icon{font-size:1.1rem;flex-shrink:0}.collection-name{flex:1;font-size:.85rem}.collection-check{color:#10b981;font-weight:700;font-size:1rem}.collection-item-empty{padding:20px;text-align:center;color:#888;font-size:.85rem}.game-tags{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0}.game-tag{display:inline-block;padding:3px 8px;background:#a855f726;border:1px solid rgba(168,85,247,.3);border-radius:4px;font-size:.7rem;color:#c084fc;font-weight:500}.tags-dropdown{position:absolute;bottom:100%;left:0;right:0;margin-bottom:8px;background:#1e1e1e;border:1px solid #3a3a3a;border-radius:8px;box-shadow:0 8px 24px #0006;z-index:1000;max-height:350px;display:flex;flex-direction:column}.tags-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #3a3a3a;font-weight:600;font-size:.9rem}.tags-dropdown-content{padding:12px;overflow-y:auto;max-height:300px}.tags-current{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #3a3a3a}.tag-item{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#a855f733;border:1px solid rgba(168,85,247,.4);border-radius:6px;font-size:.85rem;transition:all .2s}.tag-item:hover{background:#a855f74d;transform:translateY(-1px)}.tag-name{color:#e0d0f5;font-weight:500}.tag-remove{background:none;border:none;color:#aaa;cursor:pointer;font-size:1.2rem;line-height:1;padding:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.tag-remove:hover{background:#ffffff1a;color:#f87171}.tags-add-section{display:flex;gap:8px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #3a3a3a}.tag-input{flex:1;padding:8px 12px;background:#2a2a2a;border:1px solid #3a3a3a;border-radius:6px;color:#e0e0e0;font-size:.85rem;transition:all .2s}.tag-input:focus{outline:none;border-color:#a855f7;background:#333}.tag-input::placeholder{color:#666}.tag-add-btn{padding:8px 16px;background:#a855f7;border:none;border-radius:6px;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.tag-add-btn:hover:not(:disabled){background:#9333ea;transform:translateY(-1px);box-shadow:0 4px 12px #a855f74d}.tag-add-btn:disabled{background:#555;cursor:not-allowed;opacity:.5}.tags-suggestions{display:flex;flex-direction:column;gap:8px}.tags-suggestions-header{font-size:.75rem;color:#888;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.tags-suggestions-list{display:flex;flex-wrap:wrap;gap:6px}.tag-suggestion{padding:6px 12px;background:#2a2a2a;border:1px solid #3a3a3a;border-radius:6px;color:#aaa;font-size:.8rem;cursor:pointer;transition:all .2s;white-space:nowrap}.tag-suggestion:hover{background:#a855f726;border-color:#a855f74d;color:#c084fc;transform:translateY(-1px)}:root,[data-theme=steam],.theme-steam{--bg-main: #1b2838;--bg-sidebar: #171a21;--bg-elevated: #2a475e;--bg-card: #1b2838;--bg-header: #171a21;--text-main: #c7d5e0;--text-muted: #8f98a0;--text-dim: #66727b;--accent: #66c0f4;--accent-soft: rgba(102, 192, 244, .15);--accent-hover: #4fc3f7;--accent-secondary: #4c6b22;--accent-green: #a4d007;--border-subtle: #2a475e;--border-accent: rgba(102, 192, 244, .4);--success: #a4d007;--error: #cd5c5c;--warning: #e5c100;--gradient-header: linear-gradient(to right, #171a21, #1b2838);--gradient-card: linear-gradient(135deg, #1b2838 0%, #2a475e 100%)}[data-theme=steam] .primary-button,.theme-steam .primary-button{background:linear-gradient(to bottom,#75b022,#588a1b);border:none;text-shadow:0 1px 2px rgba(0,0,0,.3)}[data-theme=steam] .primary-button:hover,.theme-steam .primary-button:hover{background:linear-gradient(to bottom,#8bc926,#6ba31e)}[data-theme=steam] .sidebar,.theme-steam .sidebar{background:linear-gradient(to bottom,#171a21,#1b2838)}[data-theme=steam] .game-card,.theme-steam .game-card{background:linear-gradient(135deg,#1b2838,#2a475e);border:1px solid #2a475e}[data-theme=steam] .game-card:hover,.theme-steam .game-card:hover{border-color:#66c0f4;box-shadow:0 0 20px #66c0f433}[data-theme=steam] .logo-play,.theme-steam .logo-play{color:#66c0f4}[data-theme=xbox],.theme-xbox{--bg-main: #0e0e0e;--bg-sidebar: #1a1a1a;--bg-elevated: #2d2d2d;--bg-card: #1f1f1f;--bg-header: #0e0e0e;--text-main: #ffffff;--text-muted: #b3b3b3;--text-dim: #808080;--accent: #107c10;--accent-soft: rgba(16, 124, 16, .2);--accent-hover: #0e6b0e;--accent-bright: #0e7a0d;--accent-glow: #5dc21e;--border-subtle: #2d2d2d;--border-accent: rgba(16, 124, 16, .5);--success: #107c10;--error: #e81123;--warning: #ffd700}[data-theme=xbox] .primary-button,.theme-xbox .primary-button{background:#107c10;border:none;font-weight:600;text-transform:uppercase;letter-spacing:.05em}[data-theme=xbox] .primary-button:hover,.theme-xbox .primary-button:hover{background:#0e6b0e;box-shadow:0 0 20px #107c1066}[data-theme=xbox] .sidebar-item.active,.theme-xbox .sidebar-item.active{background:#107c10;color:#fff}[data-theme=xbox] .sidebar-item.active:hover,.theme-xbox .sidebar-item.active:hover{background:#0e6b0e}[data-theme=xbox] .game-card,.theme-xbox .game-card{background:#1f1f1f;border:none;border-radius:4px}[data-theme=xbox] .game-card:hover,.theme-xbox .game-card:hover{transform:scale(1.02);box-shadow:0 8px 30px #0009}[data-theme=xbox] .logo-play,.theme-xbox .logo-play{color:#107c10}[data-theme=xbox] .game-cover,.theme-xbox .game-cover{border-radius:4px 4px 0 0}[data-theme=xbox] .fetch-all-metadata-btn,.theme-xbox .fetch-all-metadata-btn{background:#107c10;border:none;color:#fff}[data-theme=gog],.theme-gog{--bg-main: #1c1c24;--bg-sidebar: #14141a;--bg-elevated: #262633;--bg-card: #1c1c24;--bg-header: #14141a;--text-main: #f5f5f5;--text-muted: #9e9ea7;--text-dim: #6b6b75;--accent: #8b5cf6;--accent-soft: rgba(139, 92, 246, .15);--accent-hover: #7c3aed;--accent-secondary: #d946ef;--border-subtle: #2e2e3a;--border-accent: rgba(139, 92, 246, .4);--success: #10b981;--error: #ef4444;--warning: #f59e0b}[data-theme=gog] .primary-button,.theme-gog .primary-button{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;font-weight:500}[data-theme=gog] .primary-button:hover,.theme-gog .primary-button:hover{background:linear-gradient(135deg,#a78bfa,#8b5cf6);box-shadow:0 4px 20px #8b5cf666}[data-theme=gog] .sidebar,.theme-gog .sidebar{background:#14141a;border-right:1px solid #2e2e3a}[data-theme=gog] .sidebar-item.active,.theme-gog .sidebar-item.active{background:#8b5cf626;color:#a78bfa;border-left:3px solid #8b5cf6;padding-left:9px}[data-theme=gog] .game-card,.theme-gog .game-card{background:#1c1c24;border:1px solid #2e2e3a;border-radius:8px}[data-theme=gog] .game-card:hover,.theme-gog .game-card:hover{border-color:#8b5cf6;box-shadow:0 0 30px #8b5cf626}[data-theme=gog] .logo-play,.theme-gog .logo-play{color:#8b5cf6}[data-theme=gog] .header,.theme-gog .header{background:linear-gradient(90deg,#14141a,#1c1c24,#14141a)}[data-theme=gog] .drop-zone,.theme-gog .drop-zone{border:2px dashed #2e2e3a;background:#8b5cf608}[data-theme=gog] .drop-zone:hover,.theme-gog .drop-zone:hover{border-color:#8b5cf6;background:#8b5cf614}body,.sidebar,.header,.panel,.game-card,.sidebar-item,.primary-button,.secondary-button{transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}.primary-button{background:var(--accent);color:#fff;border:none;padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .15s ease}.primary-button:hover{background:var(--accent-hover);transform:translateY(-1px)}.primary-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.secondary-button{background:var(--bg-elevated);color:var(--text-main);border:1px solid var(--border-subtle);padding:8px 16px;border-radius:6px;font-weight:500;cursor:pointer;transition:all .15s ease}.secondary-button:hover{background:var(--bg-card);border-color:var(--border-accent)}.secondary-button.danger{color:var(--error);border-color:#ef44444d}.secondary-button.danger:hover{background:#ef44441a;border-color:var(--error)}.modal-overlay{background:#000000bf}.modal-content{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:12px;color:var(--text-main)}.modal-content h2,.modal-content h3,.modal-content h4{color:var(--text-main)}.modal-content p,.modal-content label{color:var(--text-muted)}.modal-content input[type=radio]+span,.modal-content label span{color:var(--text-main)}input[type=text],input[type=password],input[type=email],textarea,select{background:var(--bg-main);border:1px solid var(--border-subtle);color:var(--text-main);border-radius:6px;padding:8px 12px}input[type=text]:focus,input[type=password]:focus,input[type=email]:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}input::placeholder,textarea::placeholder{color:var(--text-dim)}.settings-modal{max-width:600px;width:90%;max-height:85vh;overflow-y:auto;padding:24px}.settings-modal h2{margin:0 0 20px;font-size:1.4rem}.settings-modal h3{margin:0 0 12px;font-size:1rem;color:var(--text-muted)}.settings-section{margin-bottom:28px}.theme-options{display:flex;gap:16px;flex-wrap:wrap}.theme-option{flex:1;min-width:140px;display:flex;flex-direction:column;align-items:center;padding:12px;border:2px solid var(--border-subtle);border-radius:12px;cursor:pointer;transition:all .2s ease;background:var(--bg-main)}.theme-option:hover{border-color:var(--text-muted)}.theme-option.selected{border-color:var(--accent);background:var(--accent-soft)}.theme-option input[type=radio]{display:none}.theme-preview{width:100%;height:80px;border-radius:8px;display:flex;overflow:hidden;margin-bottom:10px}.preview-sidebar{width:30%;height:100%}.preview-content{flex:1;padding:8px;display:flex;gap:6px}.preview-card{flex:1;border-radius:4px}.steam-preview{background:#1b2838}.steam-preview .preview-sidebar{background:#171a21}.steam-preview .preview-card{background:#2a475e;border:1px solid #66c0f4}.xbox-preview{background:#0e0e0e}.xbox-preview .preview-sidebar{background:#1a1a1a}.xbox-preview .preview-card{background:#1f1f1f;border:1px solid #107c10}.gog-preview{background:#1c1c24}.gog-preview .preview-sidebar{background:#14141a}.gog-preview .preview-card{background:#262633;border:1px solid #8b5cf6}.theme-name{font-weight:600;font-size:.95rem;color:var(--text-main);margin-bottom:2px}.theme-desc{font-size:.75rem;color:var(--text-muted);text-align:center}.menu-style-options{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.menu-option{display:flex;align-items:center;gap:10px;padding:12px 16px;border:2px solid var(--border-subtle);border-radius:10px;cursor:pointer;transition:all .2s ease;background:var(--bg-main)}.menu-option:hover{border-color:var(--text-muted)}.menu-option.selected{border-color:var(--accent);background:var(--accent-soft)}.menu-option input[type=radio]{display:none}.menu-option svg{color:var(--text-muted);flex-shrink:0}.menu-option.selected svg{color:var(--accent)}.menu-option span{font-size:.9rem;color:var(--text-main)}.modal-actions{display:flex;justify-content:flex-end;margin-top:20px;padding-top:16px;border-top:1px solid var(--border-subtle)}@media (max-width: 500px){.theme-options{flex-direction:column}.menu-style-options{grid-template-columns:1fr}}.achievement-toast{position:fixed;top:20px;right:20px;z-index:10000;animation:slideIn .5s cubic-bezier(.34,1.56,.64,1)}.achievement-toast.exiting{animation:slideOut .5s ease-in forwards}@keyframes slideIn{0%{transform:translate(120%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOut{0%{transform:translate(0);opacity:1}to{transform:translate(120%);opacity:0}}.achievement-toast-inner{display:flex;align-items:flex-start;gap:16px;padding:20px;border-radius:16px;border:2px solid;max-width:420px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:glow 2s ease-in-out infinite alternate}@keyframes glow{0%{filter:brightness(1)}to{filter:brightness(1.1)}}.achievement-icon{width:64px;height:64px;border-radius:12px;border:3px solid;display:flex;align-items:center;justify-content:center;background:#0000004d;flex-shrink:0;animation:iconPulse 1s ease-in-out infinite}@keyframes iconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.achievement-emoji{font-size:2rem}.achievement-content{flex:1}.achievement-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.achievement-tier{font-size:.7rem;font-weight:700;letter-spacing:.1em;padding:3px 8px;border-radius:4px}.tier-bronze{background:#cd7f324d;color:#cd7f32}.tier-silver{background:#c0c0c04d;color:#e0e0e0}.tier-gold{background:#ffd7004d;color:gold}.tier-legendary{background:#9b59b64d;color:#d8a8ff;animation:legendaryPulse 1.5s ease-in-out infinite}@keyframes legendaryPulse{0%,to{text-shadow:0 0 5px #9b59b6}50%{text-shadow:0 0 20px #9b59b6,0 0 30px #9b59b6}}.achievement-coins{font-size:.85rem;font-weight:600;color:gold}.achievement-name{margin:0 0 4px;font-size:1.1rem;font-weight:700;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.5)}.achievement-description{margin:0 0 12px;font-size:.85rem;color:#fffc}.achievement-announcement{background:#0000004d;border-radius:8px;padding:10px 12px;font-style:italic}.announcement-text{display:block;font-size:.8rem;color:#ffffffe6;line-height:1.4}.announcement-source{display:block;font-size:.7rem;color:#ffffff80;text-align:right;margin-top:6px;font-style:normal}.achievement-close{position:absolute;top:8px;right:8px;width:24px;height:24px;border:none;background:#ffffff1a;color:#fff9;border-radius:50%;cursor:pointer;font-size:1.2rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.achievement-close:hover{background:#fff3;color:#fff}.lootbox-modal{display:flex;flex-direction:column;align-items:center;text-align:center;padding:30px}.lootbox-modal h2{margin:0 0 20px;font-size:1.5rem}.lootbox-options{display:flex;gap:16px;margin-bottom:24px}.lootbox-option{padding:20px;border-radius:12px;border:2px solid var(--border-subtle);background:var(--bg-main);cursor:pointer;transition:all .2s ease;min-width:140px}.lootbox-option:hover{border-color:var(--accent);transform:translateY(-2px)}.lootbox-option.selected{border-color:var(--accent);background:var(--accent-soft)}.lootbox-option h4{margin:0 0 8px;font-size:1rem}.lootbox-cost{font-size:1.2rem;font-weight:700;color:gold}.lootbox-odds{font-size:.7rem;color:var(--text-muted);margin-top:8px}.loot-results{margin-top:20px}.loot-announcement{background:#0000004d;padding:16px;border-radius:10px;margin-bottom:20px;font-style:italic;color:var(--text-main)}.loot-items{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.loot-item{padding:16px;border-radius:10px;border:2px solid;min-width:200px;max-width:250px;text-align:left}.loot-item.rarity-common{border-color:#9ca3af;background:#9ca3af1a}.loot-item.rarity-uncommon{border-color:#22c55e;background:#22c55e1a}.loot-item.rarity-rare{border-color:#3b82f6;background:#3b82f61a}.loot-item.rarity-epic{border-color:#a855f7;background:#a855f71a}.loot-item.rarity-legendary{border-color:#f59e0b;background:#f59e0b26;animation:legendaryGlow 2s ease-in-out infinite}@keyframes legendaryGlow{0%,to{box-shadow:0 0 10px #f59e0b4d}50%{box-shadow:0 0 25px #f59e0b99}}.loot-item-name{font-weight:700;font-size:.95rem;margin-bottom:4px}.loot-item-desc{font-size:.8rem;color:var(--text-muted);font-style:italic}.loot-item-value{font-size:.85rem;color:gold;margin-top:8px}.achievements-panel{padding:20px}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.achievement-card{padding:16px;border-radius:12px;border:2px solid var(--border-subtle);background:var(--bg-elevated);display:flex;gap:14px;transition:all .2s ease}.achievement-card.unlocked{border-color:var(--accent)}.achievement-card.locked{opacity:.6;filter:grayscale(.5)}.achievement-card-icon{width:48px;height:48px;border-radius:10px;background:var(--bg-main);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.achievement-card.unlocked .achievement-card-icon{background:var(--accent-soft)}.achievement-card-content{flex:1}.achievement-card-name{font-weight:700;font-size:.95rem;margin-bottom:2px}.achievement-card-desc{font-size:.8rem;color:var(--text-muted)}.achievement-card-reward{font-size:.85rem;color:gold;margin-top:6px}.achievements-view{padding:20px;max-width:1400px;margin:0 auto}.achievements-header h1{margin:0 0 24px;font-size:2rem;font-weight:700}.achievements-stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:16px;padding:20px;display:flex;align-items:center;gap:16px}.stat-card.level-card{flex-direction:column;align-items:stretch}.stat-icon{font-size:2.5rem;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);border-radius:12px;flex-shrink:0}.stat-info{flex:1}.stat-label{font-size:.85rem;color:var(--text-muted);margin-bottom:4px}.stat-value{font-size:2rem;font-weight:700;color:var(--text-main)}.stat-subtext{font-size:.8rem;color:var(--text-muted);margin-top:4px}.level-progress{margin-top:16px}.progress-bar{height:12px;background:var(--bg-main);border-radius:6px;overflow:hidden;margin-bottom:8px}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-hover));border-radius:6px;transition:width .3s ease}.progress-text{font-size:.8rem;color:var(--text-muted);text-align:center}.stat-card.rarity-breakdown{flex-direction:column;align-items:stretch}.rarity-stats{display:flex;flex-direction:column;gap:8px;margin-top:12px}.rarity-stat{display:flex;align-items:center;gap:10px;font-size:.85rem}.rarity-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.rarity-label{flex:1;color:var(--text-main)}.rarity-count{font-weight:700;color:var(--text-main)}.tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid var(--border-subtle);padding-bottom:0}.tabs button{background:transparent;border:none;color:var(--text-muted);padding:12px 24px;font-size:.95rem;font-weight:600;cursor:pointer;position:relative;transition:color .2s ease;display:flex;align-items:center;gap:8px}.tabs button:hover{color:var(--text-main)}.tabs button.active{color:var(--accent)}.tabs button.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--accent)}.tab-count{background:var(--accent-soft);color:var(--accent);padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:700}.achievements-filters{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap;align-items:center}.filter-group label{font-size:.9rem;color:var(--text-muted);font-weight:500}.filter-group select{background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:8px;padding:8px 12px;color:var(--text-main);font-size:.9rem;cursor:pointer;transition:border-color .2s ease}.filter-group select:hover{border-color:var(--accent)}.filter-group select:focus{outline:none;border-color:var(--accent)}.achievements-grid .achievement-card{cursor:pointer;border-width:2px;border-style:solid;transition:all .2s ease}.achievements-grid .achievement-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000004d}.achievement-icon-container{position:relative;flex-shrink:0}.achievement-icon{width:80px;height:80px;border-radius:12px;object-fit:cover}.achievement-icon.grayscale{filter:grayscale(100%)}.achievement-icon-placeholder{width:80px;height:80px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:2.5rem}.achievement-unlocked-badge{position:absolute;top:-8px;right:-8px;width:28px;height:28px;background:#22c55e;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1rem;border:3px solid var(--bg-elevated)}.achievement-info{flex:1}.achievement-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}.achievement-name{font-size:1.1rem;font-weight:700;color:var(--text-main);margin:0}.achievement-rarity-badge{padding:4px 10px;border-radius:12px;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#fff;flex-shrink:0}.achievement-game{font-size:.85rem;color:var(--text-muted);margin-bottom:6px}.achievement-points{font-size:.9rem;color:gold;font-weight:600;margin-bottom:12px}.achievement-progress{margin-top:12px}.achievement-unlock-date{font-size:.8rem;color:var(--text-muted);margin-top:8px}.progress-bar-small{height:8px;background:var(--bg-main);border-radius:4px;overflow:hidden;margin-bottom:6px}.progress-fill-small{height:100%;background:var(--accent);border-radius:4px;transition:width .3s ease}.progress-text-small{font-size:.75rem;color:var(--text-muted)}.achievement-card.common{border-color:#9b9b9b}.achievement-card.uncommon{border-color:#2ecc71}.achievement-card.rare{border-color:#00d4ff}.achievement-card.epic{border-color:#9945ff}.achievement-card.legendary{border-color:gold;animation:legendaryCardGlow 2s ease-in-out infinite}@keyframes legendaryCardGlow{0%,to{box-shadow:0 0 20px #ffd7004d}50%{box-shadow:0 0 40px #ffd70099}}.leaderboard-view{padding:0}.leaderboard-header{margin-bottom:24px}.leaderboard-tabs{display:flex;gap:12px;margin-bottom:16px}.leaderboard-tabs button{background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:10px;padding:12px 24px;color:var(--text-main);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.leaderboard-tabs button:hover{border-color:var(--accent)}.leaderboard-tabs button.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.timeframe-selector{display:flex;gap:8px}.timeframe-selector button{background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:8px;padding:8px 16px;color:var(--text-muted);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.timeframe-selector button:hover{color:var(--text-main);border-color:var(--accent)}.timeframe-selector button.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.user-rank-banner{background:var(--accent-soft);border:2px solid var(--accent);border-radius:12px;padding:16px 24px;margin-bottom:24px;display:flex;align-items:center;gap:12px;font-size:1.1rem;font-weight:700;color:var(--accent)}.rank-icon{font-size:1.5rem}.leaderboard-list{display:flex;flex-direction:column;gap:12px}.leaderboard-entry{background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:12px;padding:16px 20px;display:flex;align-items:center;gap:20px;transition:all .2s ease}.leaderboard-entry:hover{border-color:var(--accent);transform:translate(4px)}.leaderboard-entry.current-user{background:var(--accent-soft);border-color:var(--accent)}.leaderboard-entry.top-three{background:linear-gradient(135deg,var(--bg-elevated) 0%,rgba(255,215,0,.1) 100%)}.entry-rank{flex-shrink:0;width:60px;text-align:center}.rank-badge{font-size:1.5rem;font-weight:700}.entry-user{display:flex;align-items:center;gap:14px;flex:1;min-width:200px}.user-avatar{width:50px;height:50px;border-radius:50%;object-fit:cover;border:3px solid var(--border-subtle)}.user-avatar-placeholder{width:50px;height:50px;border-radius:50%;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:700;color:var(--accent);border:3px solid var(--border-subtle)}.user-info{flex:1}.username{font-size:1rem;font-weight:700;color:var(--text-main);display:flex;align-items:center;gap:8px}.user-badge{background:var(--accent);color:#fff;padding:2px 8px;border-radius:8px;font-size:.7rem;font-weight:700}.user-level{font-size:.85rem;color:var(--text-muted);margin-top:2px}.entry-stats{display:flex;gap:32px;flex-shrink:0}.entry-stats .stat-item{display:flex;flex-direction:column;align-items:center}.entry-stats .stat-label{font-size:.75rem;color:var(--text-muted);margin-bottom:4px}.entry-stats .stat-value{font-size:1.1rem;font-weight:700;color:var(--text-main)}.btn-load-more{background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:10px;padding:14px 28px;color:var(--text-main);font-size:.95rem;font-weight:600;cursor:pointer;margin:20px auto 0;display:block;transition:all .2s ease}.btn-load-more:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.challenges-tab{padding:0}.challenges-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.challenges-header h2{margin:0;font-size:1.5rem;font-weight:700}.challenges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:24px}.challenge-card{background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:16px;padding:24px;transition:all .2s ease}.challenge-card:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 8px 24px #0000004d}.challenge-card.daily{border-left:4px solid #3b82f6}.challenge-card.weekly{border-left:4px solid #8b5cf6}.challenge-card.monthly{border-left:4px solid #ec4899}.challenge-card.special{border-left:4px solid #f59e0b}.challenge-card.limited_time{border-left:4px solid #ef4444}.challenge-header{display:flex;gap:16px;margin-bottom:16px}.challenge-icon{width:64px;height:64px;border-radius:12px;object-fit:cover;flex-shrink:0}.challenge-icon-placeholder{width:64px;height:64px;border-radius:12px;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;font-size:2rem;flex-shrink:0}.challenge-title-section{flex:1}.challenge-title{font-size:1.2rem;font-weight:700;color:var(--text-main);margin:0 0 8px}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.status-badge.active{background:#22c55e33;color:#22c55e}.status-badge.completed{background:#3b82f633;color:#3b82f6}.status-badge.claimable{background:#f59e0b33;color:#f59e0b;animation:pulse 2s ease-in-out infinite}.status-badge.expired{background:#9ca3af33;color:#9ca3af}.status-badge.locked{background:#ef444433;color:#ef4444}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.challenge-description{font-size:.9rem;color:var(--text-muted);line-height:1.5;margin-bottom:16px}.challenge-meta{display:flex;gap:20px;margin-bottom:20px}.meta-item{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--text-muted)}.meta-icon{font-size:1rem}.challenge-requirements{margin-bottom:20px}.challenge-requirements h4{font-size:.9rem;font-weight:700;color:var(--text-main);margin:0 0 12px}.challenge-requirements ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.challenge-requirements li{background:var(--bg-main);border-radius:8px;padding:12px}.challenge-requirements li.completed{background:#22c55e1a}.requirement-text{font-size:.85rem;color:var(--text-main);margin-bottom:8px}.requirement-progress{display:flex;align-items:center;gap:10px}.requirement-progress .progress-bar-small{flex:1}.challenge-rewards{margin-bottom:20px}.challenge-rewards h4{font-size:.9rem;font-weight:700;color:var(--text-main);margin:0 0 12px}.rewards-list{display:flex;flex-wrap:wrap;gap:10px}.reward-item{background:var(--bg-main);border-radius:8px;padding:8px 12px;display:flex;align-items:center;gap:8px;font-size:.85rem}.reward-icon{font-size:1.1rem}.reward-text{color:var(--text-main);font-weight:600}.challenge-actions{display:flex;gap:10px}.challenge-actions button{flex:1;padding:12px 20px;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:2px solid}.btn-join{background:var(--accent);border-color:var(--accent);color:#fff}.btn-join:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-join:disabled{opacity:.5;cursor:not-allowed}.btn-claim{background:#f59e0b;border-color:#f59e0b;color:#fff}.btn-claim:hover{background:#d97706;border-color:#d97706}.btn-details{background:transparent;border-color:var(--border-subtle);color:var(--text-main)}.btn-details:hover{border-color:var(--accent);color:var(--accent)}@media (max-width: 1200px){.challenges-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}}@media (max-width: 768px){.achievements-stats-overview,.achievements-grid,.challenges-grid{grid-template-columns:1fr}.entry-stats{flex-direction:column;gap:8px}.leaderboard-entry{flex-direction:column;align-items:flex-start}}.metadata-fetch-progress{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:#0f172afa;border:1px solid rgba(168,85,247,.3);border-radius:12px;padding:16px 20px;min-width:400px;max-width:500px;box-shadow:0 8px 32px #0006;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1000;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translate(-50%) translateY(100px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.fetch-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.fetch-progress-info{display:flex;flex-direction:column;gap:4px}.fetch-progress-title{font-size:.95rem;font-weight:600;color:#e2e8f0}.fetch-progress-stats{font-size:.85rem;color:#94a3b8;font-family:Consolas,Monaco,monospace}.fetch-cancel-btn{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;border-radius:6px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;transition:all .2s}.fetch-cancel-btn:hover{background:#ef444433;border-color:#ef444480;transform:scale(1.05)}.fetch-progress-bar-container{width:100%;height:8px;background:#1e293bcc;border-radius:4px;overflow:hidden;margin-bottom:10px}.fetch-progress-bar{height:100%;background:linear-gradient(90deg,#a855f7,#ec4899);border-radius:4px;transition:width .3s ease-out;box-shadow:0 0 10px #a855f780}.fetch-current-game{font-size:.8rem;color:#cbd5e1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-style:italic}.api-status-loading,.api-status-error,.api-status-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;min-height:200px}.api-status-loading .spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.1);border-top-color:var(--accent-color, #00d9ff);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.api-status-loading p{color:var(--text-secondary, #aaa);font-size:14px}.api-status-error{color:var(--error-color, #ff4444)}.api-status-error .error-icon{font-size:48px;margin-bottom:16px}.api-status-error h3{margin:0 0 8px;font-size:18px;font-weight:600}.api-status-error p{margin:0;font-size:14px;opacity:.8}.api-status-empty{color:var(--text-secondary, #888)}.api-status-empty .empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.api-status-empty p{margin:0;font-size:16px}.search-bar{position:relative;width:100%;max-width:500px}.search-input{width:100%;padding:10px 40px 10px 16px;background:var(--bg-secondary, #1a1a1a);border:1px solid var(--border-color, #333);border-radius:8px;color:var(--text-primary, #fff);font-size:14px;transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--accent-color, #00d9ff);box-shadow:0 0 0 3px #00d9ff1a}.search-input::placeholder{color:var(--text-secondary, #666)}.search-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-secondary, #888);cursor:pointer;font-size:18px;padding:4px;transition:color .2s ease}.search-clear:hover{color:var(--text-primary, #fff)}.infinite-scroll-container{overflow-y:auto;height:100%;max-height:100%}.infinite-scroll-loading,.infinite-scroll-end{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center}.infinite-scroll-loading .spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--accent-color, #00d9ff);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:12px}.infinite-scroll-loading p{color:var(--text-secondary, #aaa);font-size:13px;margin:0}.infinite-scroll-end p{color:var(--text-secondary, #666);font-size:12px;margin:0;opacity:.7}.card{background:var(--bg-secondary, #1a1a1a);border:1px solid var(--border-color, #333);border-radius:8px;padding:16px;transition:all .2s ease}.card:hover{border-color:var(--accent-color, #00d9ff);box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.card-title{font-size:16px;font-weight:600;margin:0;color:var(--text-primary, #fff)}.card-subtitle{font-size:13px;color:var(--text-secondary, #888);margin:4px 0 0}.card-content{color:var(--text-primary, #ddd);font-size:14px;line-height:1.5}.card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-color, #333)}.btn{padding:8px 16px;background:var(--accent-color, #00d9ff);color:#000;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn:hover{background:var(--accent-hover, #00b8d4);transform:translateY(-1px);box-shadow:0 4px 12px #00d9ff4d}.btn:active{transform:translateY(0)}.btn-secondary{background:var(--bg-tertiary, #333);color:var(--text-primary, #fff)}.btn-secondary:hover{background:var(--bg-hover, #444);box-shadow:0 4px 12px #0000004d}.btn-small{padding:6px 12px;font-size:13px}.btn-large{padding:12px 24px;font-size:16px}.badge{display:inline-flex;align-items:center;padding:4px 10px;background:var(--badge-bg, #333);color:var(--text-primary, #fff);border-radius:12px;font-size:12px;font-weight:500}.badge-success{background:#22c55e;color:#000}.badge-warning{background:#f59e0b;color:#000}.badge-error{background:#ef4444;color:#fff}.badge-info{background:#3b82f6;color:#fff}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width: 1200px){.grid-4{grid-template-columns:repeat(3,1fr)}}@media (max-width: 900px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.ai-recommendations-view{padding:24px;max-width:1400px;margin:0 auto;height:100%;overflow-y:auto}.view-header{margin-bottom:32px}.view-header h1{font-size:32px;font-weight:700;margin:0 0 8px;color:var(--text-primary, #fff)}.view-subtitle{font-size:16px;color:var(--text-secondary, #888);margin:0}.tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid var(--border-color, #333)}.tab{padding:12px 24px;background:none;border:none;color:var(--text-secondary, #888);font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent;margin-bottom:-2px}.tab:hover{color:var(--text-primary, #fff);background:#ffffff0d}.tab.active{color:var(--accent-color, #00d9ff);border-bottom-color:var(--accent-color, #00d9ff)}.recommendation-card{display:flex;flex-direction:column;height:100%}.recommendation-card .recommendation-footer{margin-top:auto;padding-top:12px}.recommendation-header{display:flex;gap:12px;margin-bottom:16px}.recommendation-cover{width:80px;height:80px;object-fit:cover;border-radius:8px;background:var(--bg-tertiary, #333)}.recommendation-info{flex:1;display:flex;flex-direction:column;gap:6px}.recommendation-title{font-size:16px;font-weight:600;margin:0;color:var(--text-primary, #fff)}.recommendation-platform{font-size:13px;color:var(--text-secondary, #888);margin:0}.recommendation-score{margin-bottom:12px}.score-bar-container{height:8px;background:var(--bg-tertiary, #333);border-radius:4px;overflow:hidden;margin-bottom:6px}.score-bar-fill{height:100%;background:linear-gradient(90deg,#00d9ff,#0fa);transition:width .3s ease}.score-text{font-size:13px;font-weight:600;color:var(--accent-color, #00d9ff)}.recommendation-reason{font-size:14px;color:var(--text-primary, #ddd);line-height:1.5;margin:0 0 12px;font-style:italic}.recommendation-description{font-size:13px;color:var(--text-secondary, #aaa);line-height:1.5;margin:0 0 12px}.recommendation-actions{display:flex;gap:8px;justify-content:center}.genre-selector{background:var(--bg-secondary, #1a1a1a);border:1px solid var(--border-color, #333);border-radius:12px;padding:24px}.genre-section,.mood-section{margin-bottom:24px}.genre-section:last-child,.mood-section:last-child{margin-bottom:0}.genre-section h3,.mood-section h3{font-size:18px;font-weight:600;margin:0 0 16px;color:var(--text-primary, #fff)}.genre-grid,.mood-grid{display:flex;flex-wrap:wrap;gap:10px}.genre-chip{padding:10px 18px;background:var(--bg-tertiary, #333);border:2px solid transparent;border-radius:20px;color:var(--text-primary, #fff);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.genre-chip:hover{background:var(--bg-hover, #444);transform:translateY(-2px)}.genre-chip.active{background:var(--accent-color, #00d9ff);color:#000;border-color:var(--accent-color, #00d9ff)}.mood-chip{padding:12px 20px;background:var(--bg-tertiary, #333);border:2px solid var(--border-color, #444);border-radius:12px;color:var(--text-primary, #fff);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.mood-chip:hover{border-color:var(--accent-color, #00d9ff);transform:translateY(-2px);box-shadow:0 4px 12px #00d9ff33}.mood-emoji{font-size:20px}.mood-label{font-size:14px;font-weight:500}.genre-results{margin-top:32px}.genre-results h2{font-size:24px;font-weight:600;margin:0 0 20px;color:var(--text-primary, #fff)}.mood-banner{display:flex;align-items:center;justify-content:space-between;background:var(--accent-color, #00d9ff);color:#000;padding:16px 20px;border-radius:8px;margin-bottom:24px}.mood-banner p{margin:0;font-size:14px;font-weight:500}.mood-banner strong{font-weight:700;text-transform:capitalize}.hidden-gems-container{margin-top:24px}.section-title{font-size:28px;font-weight:700;margin:0 0 24px;color:var(--text-primary, #fff);display:flex;flex-direction:column;gap:6px}.section-subtitle{font-size:14px;font-weight:400;color:var(--text-secondary, #888)}.hidden-gem-card{transition:all .3s ease}.hidden-gem-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0006}.gem-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.gem-title{font-size:18px;font-weight:600;margin:0;color:var(--text-primary, #fff);flex:1}.gem-score{flex-shrink:0}.gem-platform{font-size:13px;color:var(--text-secondary, #888);margin:0 0 12px}.gem-reason{font-size:14px;color:var(--text-primary, #ddd);line-height:1.5;margin:0 0 16px}.gem-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding-top:12px;border-top:1px solid var(--border-color, #333)}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-label{font-size:11px;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:14px;font-weight:600;color:var(--text-primary, #fff)}.tab-content{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.ai-recommendations-view{padding:16px}.view-header h1{font-size:24px}.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.tab{white-space:nowrap}.recommendation-header{flex-direction:column}.recommendation-cover{width:100%;height:200px}.mood-banner{flex-direction:column;gap:12px;text-align:center}}.themes-view{padding:24px;max-width:1400px;margin:0 auto;height:100%;overflow-y:auto}.marketplace-controls{display:flex;gap:16px;margin-bottom:24px;align-items:center}.sort-select{padding:10px 16px;background:var(--bg-secondary, #1a1a1a);border:1px solid var(--border-color, #333);border-radius:8px;color:var(--text-primary, #fff);font-size:14px;cursor:pointer}.sort-select:focus{outline:none;border-color:var(--accent-color, #00d9ff)}.theme-card{display:flex;flex-direction:column;height:100%;overflow:hidden}.theme-card.theme-active{border-color:var(--accent-color, #00d9ff);box-shadow:0 0 0 2px #00d9ff33}.theme-preview{position:relative;width:100%;height:200px;border-radius:8px;overflow:hidden;cursor:pointer;transition:transform .2s ease}.theme-preview:hover{transform:scale(1.02)}.theme-preview-image{width:100%;height:100%;object-fit:cover}.theme-preview-colors{display:grid;grid-template-columns:repeat(2,1fr);height:100%;gap:2px}.color-swatch{width:100%;height:100%;transition:transform .2s ease}.color-swatch:hover{transform:scale(1.1);z-index:1}.theme-active-badge{position:absolute;top:12px;right:12px}.theme-info{flex:1;padding:16px 0}.theme-title{font-size:16px;font-weight:600;margin:0 0 8px;color:var(--text-primary, #fff)}.theme-description{font-size:13px;color:var(--text-secondary, #888);margin:0 0 12px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.theme-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.theme-stats{display:flex;align-items:center;gap:16px;font-size:13px;color:var(--text-secondary, #888)}.theme-actions{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid var(--border-color, #333)}.theme-purchase,.theme-owner-actions{display:flex;gap:8px}.color-picker{display:flex;flex-direction:column;gap:8px}.color-picker-label{display:flex;flex-direction:column;gap:4px}.label-text{font-size:14px;font-weight:500;color:var(--text-primary, #fff)}.label-description{font-size:12px;color:var(--text-secondary, #666)}.color-picker-input{display:flex;align-items:center;gap:12px}.color-input{width:50px;height:40px;border:1px solid var(--border-color, #333);border-radius:6px;cursor:pointer;background:transparent}.color-text-input{flex:1;padding:10px;background:var(--bg-secondary, #1a1a1a);border:1px solid var(--border-color, #333);border-radius:6px;color:var(--text-primary, #fff);font-size:14px;font-family:monospace}.color-text-input:focus{outline:none;border-color:var(--accent-color, #00d9ff)}.color-preview{width:40px;height:40px;border:1px solid var(--border-color, #333);border-radius:6px;flex-shrink:0}.theme-editor{display:flex;flex-direction:column;height:100%;background:var(--bg-primary, #0a0a0a)}.theme-editor-header{padding:24px;border-bottom:1px solid var(--border-color, #333)}.theme-editor-header h2{font-size:24px;font-weight:600;margin:0;color:var(--text-primary, #fff)}.theme-editor-content{flex:1;overflow-y:auto;padding:24px}.editor-section{margin-bottom:32px;padding:24px;background:var(--bg-secondary, #1a1a1a);border:1px solid var(--border-color, #333);border-radius:12px}.editor-section h3{font-size:18px;font-weight:600;margin:0 0 20px;color:var(--text-primary, #fff)}.form-group{margin-bottom:20px}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:var(--text-primary, #fff)}.form-input,.form-textarea{width:100%;padding:10px 16px;background:var(--bg-tertiary, #222);border:1px solid var(--border-color, #333);border-radius:8px;color:var(--text-primary, #fff);font-size:14px;font-family:inherit}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--accent-color, #00d9ff);box-shadow:0 0 0 3px #00d9ff1a}.form-textarea{resize:vertical;min-height:80px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:400}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.color-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}@media (max-width: 768px){.color-grid{grid-template-columns:1fr}}.tag-input-group{display:flex;gap:8px}.tags-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.tag-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-tertiary, #333);border:1px solid var(--border-color, #444);border-radius:16px;font-size:13px;color:var(--text-primary, #fff)}.tag-remove{background:none;border:none;color:var(--text-secondary, #888);cursor:pointer;padding:0;font-size:14px;transition:color .2s ease}.tag-remove:hover{color:var(--error-color, #ef4444)}.theme-preview-panel{padding:24px;border-radius:12px}.preview-card{padding:20px;border-radius:8px}.preview-card h4{margin:0 0 12px;font-size:18px}.preview-card p{margin:0 0 16px;line-height:1.6}.theme-editor-footer{padding:20px 24px;border-top:1px solid var(--border-color, #333);display:flex;justify-content:flex-end;gap:12px;background:var(--bg-secondary, #1a1a1a)}@media (max-width: 768px){.themes-view{padding:16px}.marketplace-controls{flex-direction:column}.theme-editor-content,.editor-section{padding:16px}}.social-view{width:100%;height:100%;display:flex;flex-direction:column;background:var(--background, #0a0e27);color:var(--text-primary, #e4e6eb);overflow:hidden}.social-view .tabs{display:flex;gap:0;padding:20px 24px 0;border-bottom:2px solid var(--border-color, rgba(255, 255, 255, .1));background:var(--surface, #1a1f3a)}.social-view .tabs button{position:relative;padding:12px 24px;background:none;border:none;color:var(--text-secondary, #8b92a8);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border-bottom:3px solid transparent;margin-bottom:-2px}.social-view .tabs button:hover{color:var(--text-primary, #e4e6eb);background:#ffffff0d}.social-view .tabs button.active{color:var(--primary, #00d4ff);border-bottom-color:var(--primary, #00d4ff)}.social-view .tabs button span{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;margin-left:8px;background:var(--danger, #ff4757);color:#fff;border-radius:10px;font-size:11px;font-weight:700}.social-view .tab-content{flex:1;overflow-y:auto;padding:24px}.social-view .tab-content::-webkit-scrollbar{width:8px}.social-view .tab-content::-webkit-scrollbar-track{background:#ffffff0d}.social-view .tab-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.social-view .tab-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.post-composer{background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;padding:20px;margin-bottom:24px}.post-composer .composer-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.post-composer .composer-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--primary, #00d4ff)}.post-composer .composer-input{flex:1}.post-composer textarea{width:100%;min-height:100px;padding:12px 16px;background:var(--background, #0a0e27);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:8px;color:var(--text-primary, #e4e6eb);font-size:14px;font-family:inherit;resize:vertical;transition:all .2s}.post-composer textarea:focus{outline:none;border-color:var(--primary, #00d4ff);box-shadow:0 0 0 3px #00d4ff1a}.post-composer textarea::placeholder{color:var(--text-secondary, #8b92a8)}.post-composer .composer-footer{display:flex;justify-content:space-between;align-items:center;margin-top:16px}.post-composer .game-tag-section{display:flex;align-items:center;gap:12px}.post-composer .game-tag-section label{color:var(--text-secondary, #8b92a8);font-size:13px}.post-composer .game-tag-section input{padding:6px 12px;background:var(--background, #0a0e27);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:6px;color:var(--text-primary, #e4e6eb);font-size:13px}.post-composer .composer-actions{display:flex;gap:12px}.post-composer button{padding:8px 20px;background:var(--primary, #00d4ff);color:var(--background, #0a0e27);border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.post-composer button:hover:not(:disabled){background:var(--primary-hover, #00b8e6);transform:translateY(-1px)}.post-composer button:disabled{opacity:.5;cursor:not-allowed}.post-card{background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;padding:20px;margin-bottom:16px;transition:all .2s}.post-card:hover{border-color:#fff3;box-shadow:0 4px 12px #0003}.post-card .post-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.post-card .post-user-info{display:flex;align-items:center;gap:12px}.post-card .post-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid var(--primary, #00d4ff)}.post-card .post-user-details{display:flex;flex-direction:column;gap:4px}.post-card .post-username{font-size:15px;font-weight:600;color:var(--text-primary, #e4e6eb)}.post-card .post-timestamp{font-size:12px;color:var(--text-secondary, #8b92a8)}.post-card .post-delete-btn{padding:6px 12px;background:transparent;border:1px solid var(--danger, #ff4757);border-radius:6px;color:var(--danger, #ff4757);font-size:12px;cursor:pointer;transition:all .2s}.post-card .post-delete-btn:hover{background:var(--danger, #ff4757);color:#fff}.post-card .post-game-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#00d4ff1a;border:1px solid var(--primary, #00d4ff);border-radius:6px;color:var(--primary, #00d4ff);font-size:12px;font-weight:600;margin-bottom:12px}.post-card .post-content{margin-bottom:16px;color:var(--text-primary, #e4e6eb);font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.post-card .post-media{margin-bottom:16px;border-radius:8px;overflow:hidden}.post-card .post-media img{width:100%;height:auto;display:block}.post-card .post-actions{display:flex;gap:24px;padding-top:12px;border-top:1px solid var(--border-color, rgba(255, 255, 255, .1))}.post-card .post-actions button{display:flex;align-items:center;gap:8px;padding:8px 12px;background:transparent;border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:6px;color:var(--text-secondary, #8b92a8);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.post-card .post-actions button:hover{background:#ffffff0d;border-color:#fff3;color:var(--text-primary, #e4e6eb)}.post-card .post-actions button span:first-child{font-size:16px}.post-card .comments-section{margin-top:20px;padding-top:20px;border-top:1px solid var(--border-color, rgba(255, 255, 255, .1))}.post-card .comment-composer{display:flex;gap:12px;margin-bottom:20px}.post-card .comment-composer textarea{flex:1;padding:10px 14px;background:var(--background, #0a0e27);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:8px;color:var(--text-primary, #e4e6eb);font-size:13px;font-family:inherit;resize:none;min-height:60px}.post-card .comment-composer textarea:focus{outline:none;border-color:var(--primary, #00d4ff)}.post-card .comment-composer button{padding:8px 16px;background:var(--primary, #00d4ff);color:var(--background, #0a0e27);border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;align-self:flex-end}.post-card .comment-composer button:disabled{opacity:.5;cursor:not-allowed}.post-card .comments-list{display:flex;flex-direction:column;gap:16px}.post-card .comment-item{display:flex;gap:12px;padding:12px;background:var(--background, #0a0e27);border-radius:8px}.post-card .comment-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}.post-card .comment-content{flex:1}.post-card .comment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.post-card .comment-username{font-size:13px;font-weight:600;color:var(--text-primary, #e4e6eb)}.post-card .comment-timestamp{font-size:11px;color:var(--text-secondary, #8b92a8)}.post-card .comment-text{font-size:13px;color:var(--text-primary, #e4e6eb);line-height:1.5;margin-bottom:8px}.post-card .comment-actions{display:flex;gap:16px}.post-card .comment-actions button{padding:4px 8px;background:transparent;border:none;color:var(--text-secondary, #8b92a8);font-size:12px;cursor:pointer}.post-card .comment-actions button:hover{color:var(--primary, #00d4ff)}.event-card{background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;padding:20px;margin-bottom:16px;transition:all .2s}.event-card:hover{border-color:#fff3;box-shadow:0 4px 12px #0003}.event-card .event-header{display:flex;gap:16px;margin-bottom:16px}.event-card .event-date-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;width:70px;height:70px;background:linear-gradient(135deg,var(--primary, #00d4ff),var(--secondary, #9945ff));border-radius:12px;flex-shrink:0}.event-card .event-date-month{font-size:12px;font-weight:600;text-transform:uppercase;color:#fff;opacity:.9}.event-card .event-date-day{font-size:28px;font-weight:700;color:#fff;line-height:1}.event-card .event-info{flex:1}.event-card .event-title{font-size:18px;font-weight:700;color:var(--text-primary, #e4e6eb);margin-bottom:8px}.event-card .event-details{display:flex;flex-direction:column;gap:6px}.event-card .event-detail-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary, #8b92a8)}.event-card .event-detail-item span:first-child{font-size:16px}.event-card .event-game-tag{display:inline-flex;align-items:center;padding:4px 10px;background:#00d4ff1a;border:1px solid var(--primary, #00d4ff);border-radius:4px;color:var(--primary, #00d4ff);font-size:12px;font-weight:600}.event-card .event-description{margin:16px 0;color:var(--text-primary, #e4e6eb);font-size:14px;line-height:1.6}.event-card .event-footer{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid var(--border-color, rgba(255, 255, 255, .1))}.event-card .event-participants{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary, #8b92a8)}.event-card .event-status-badge{padding:4px 10px;border-radius:4px;font-size:11px;font-weight:700;text-transform:uppercase}.event-card .event-status-badge.full{background:#ff47571a;color:var(--danger, #ff4757);border:1px solid var(--danger, #ff4757)}.event-card .event-status-badge.upcoming{background:#00d4ff1a;color:var(--primary, #00d4ff);border:1px solid var(--primary, #00d4ff)}.event-card .event-rsvp-btn{padding:8px 20px;background:var(--primary, #00d4ff);color:var(--background, #0a0e27);border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.event-card .event-rsvp-btn:hover:not(:disabled){background:var(--primary-hover, #00b8e6);transform:translateY(-1px)}.event-card .event-rsvp-btn:disabled{opacity:.5;cursor:not-allowed}.event-card .event-rsvp-btn.attending{background:var(--success, #2ecc71)}.notifications-list{display:flex;flex-direction:column;gap:12px}.notification-item{display:flex;align-items:flex-start;gap:16px;padding:16px;background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;transition:all .2s;cursor:pointer}.notification-item:hover{background:#ffffff0d;border-color:#fff3}.notification-item.unread{background:#00d4ff0d;border-color:var(--primary, #00d4ff)}.notification-item .notification-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--primary, #00d4ff);border-radius:50%;font-size:20px;flex-shrink:0}.notification-item .notification-content{flex:1}.notification-item .notification-message{font-size:14px;color:var(--text-primary, #e4e6eb);line-height:1.5;margin-bottom:6px}.notification-item .notification-timestamp{font-size:12px;color:var(--text-secondary, #8b92a8)}.notification-item .notification-unread-dot{width:10px;height:10px;background:var(--primary, #00d4ff);border-radius:50%;flex-shrink:0;margin-top:5px}.notifications-empty{text-align:center;padding:60px 20px;color:var(--text-secondary, #8b92a8)}.notifications-empty .empty-icon{font-size:64px;margin-bottom:16px;opacity:.3}.notifications-empty p{font-size:16px}@media (max-width: 768px){.social-view .tab-content{padding:16px}.social-view .tabs{padding:16px 16px 0}.social-view .tabs button{padding:10px 16px;font-size:13px}.post-composer{padding:16px}.post-composer textarea{min-height:80px}.post-composer .composer-footer{flex-direction:column;align-items:stretch;gap:12px}.post-card{padding:16px}.post-card .post-actions{flex-wrap:wrap;gap:12px}.event-card{padding:16px}.event-card .event-header{flex-direction:column}.event-card .event-date-badge{width:100%;flex-direction:row;height:auto;padding:12px;justify-content:center;gap:8px}.event-card .event-date-day{font-size:24px}.event-card .event-footer{flex-direction:column;gap:12px;align-items:stretch}}.tournaments-view{width:100%;height:100%;display:flex;flex-direction:column;background:var(--background, #0a0e27);color:var(--text-primary, #e4e6eb);overflow:hidden}.tournaments-view .tabs{display:flex;gap:0;padding:20px 24px 0;border-bottom:2px solid var(--border-color, rgba(255, 255, 255, .1));background:var(--surface, #1a1f3a)}.tournaments-view .tabs button{position:relative;padding:12px 24px;background:none;border:none;color:var(--text-secondary, #8b92a8);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border-bottom:3px solid transparent;margin-bottom:-2px}.tournaments-view .tabs button:hover{color:var(--text-primary, #e4e6eb);background:#ffffff0d}.tournaments-view .tabs button.active{color:var(--primary, #00d4ff);border-bottom-color:var(--primary, #00d4ff)}.tournaments-view .tab-content{flex:1;overflow-y:auto;padding:24px}.tournaments-view .tab-content::-webkit-scrollbar{width:8px}.tournaments-view .tab-content::-webkit-scrollbar-track{background:#ffffff0d}.tournaments-view .tab-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.tournaments-view .tab-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.browse-header{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.filter-buttons{display:flex;gap:12px;flex-wrap:wrap}.filter-buttons button{padding:8px 20px;background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:8px;color:var(--text-secondary, #8b92a8);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.filter-buttons button:hover{background:#ffffff0d;border-color:#fff3}.filter-buttons button.active{background:var(--primary, #00d4ff);color:var(--background, #0a0e27);border-color:var(--primary, #00d4ff)}.tournaments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.tournament-card{position:relative;background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;padding:20px;transition:all .2s}.tournament-card:hover{border-color:#fff3;box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.tournament-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.tournament-info{flex:1}.tournament-title{font-size:18px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0 0 8px}.tournament-meta{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--text-secondary, #8b92a8)}.tournament-organizer,.tournament-game{display:flex;align-items:center;gap:6px}.tournament-status-badge{padding:6px 12px;border-radius:6px;font-size:11px;font-weight:700;text-transform:uppercase;flex-shrink:0}.tournament-status-badge.status-gray{background:#9b9b9b1a;color:#9b9b9b;border:1px solid #9b9b9b}.tournament-status-badge.status-blue{background:#00d4ff1a;color:var(--primary, #00d4ff);border:1px solid var(--primary, #00d4ff)}.tournament-status-badge.status-green{background:#2ecc711a;color:#2ecc71;border:1px solid #2ecc71}.tournament-status-badge.status-purple{background:#9945ff1a;color:#9945ff;border:1px solid #9945ff}.tournament-status-badge.status-red{background:#ff47571a;color:var(--danger, #ff4757);border:1px solid var(--danger, #ff4757)}.tournament-description{font-size:14px;color:var(--text-secondary, #8b92a8);line-height:1.5;margin-bottom:16px}.tournament-details{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px}.tournament-detail-item{display:flex;align-items:center;gap:10px;padding:10px;background:var(--background, #0a0e27);border-radius:8px}.detail-icon{font-size:20px;flex-shrink:0}.detail-content{flex:1;min-width:0}.detail-label{font-size:11px;color:var(--text-secondary, #8b92a8);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}.detail-value{font-size:14px;color:var(--text-primary, #e4e6eb);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.detail-value.prize{color:gold}.tournament-progress{margin-bottom:16px}.progress-bar{height:8px;background:var(--background, #0a0e27);border-radius:4px;overflow:hidden;margin-bottom:6px}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary, #00d4ff),var(--secondary, #9945ff));transition:width .3s ease}.progress-label{font-size:12px;color:var(--text-secondary, #8b92a8);text-align:right}.tournament-actions{display:flex;gap:12px;flex-wrap:wrap}.tournament-actions button{flex:1;min-width:120px;padding:10px 16px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-join{background:var(--primary, #00d4ff);color:var(--background, #0a0e27)}.btn-join:hover{background:var(--primary-hover, #00b8e6);transform:translateY(-1px)}.btn-leave{background:var(--danger, #ff4757);color:#fff}.btn-leave:hover{background:#ff3142}.btn-view{background:var(--surface, #1a1f3a);color:var(--text-primary, #e4e6eb);border:1px solid var(--border-color, rgba(255, 255, 255, .1))}.btn-view:hover{background:#ffffff0d;border-color:#fff3}.btn-spectate{background:linear-gradient(135deg,var(--primary, #00d4ff),var(--secondary, #9945ff));color:#fff}.btn-spectate:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00d4ff4d}.btn-disabled{background:var(--surface, #1a1f3a);color:var(--text-secondary, #8b92a8);border:1px solid var(--border-color, rgba(255, 255, 255, .1));cursor:not-allowed;opacity:.6}.tournament-participant-badge{position:absolute;top:-10px;right:-10px;padding:6px 12px;background:var(--success, #2ecc71);color:#fff;border-radius:20px;font-size:12px;font-weight:700;box-shadow:0 2px 8px #2ecc7166}.bracket-tab{display:flex;flex-direction:column;height:100%}.bracket-header{display:flex;flex-direction:column;gap:16px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .1))}.back-button{align-self:flex-start;padding:8px 16px;background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:8px;color:var(--text-primary, #e4e6eb);font-size:14px;cursor:pointer;transition:all .2s}.back-button:hover{background:#ffffff0d;border-color:#fff3}.tournament-header-info h2{font-size:24px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0 0 8px}.tournament-header-info .tournament-meta{display:flex;gap:20px;font-size:14px;color:var(--text-secondary, #8b92a8)}.bracket-view{flex:1;overflow-x:auto;overflow-y:auto;padding:20px}.bracket-container{display:flex;gap:40px;min-width:min-content;padding:20px 0}.bracket-round{display:flex;flex-direction:column;gap:16px;min-width:280px}.round-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--surface, #1a1f3a);border-radius:8px;border:1px solid var(--border-color, rgba(255, 255, 255, .1))}.round-header h4{font-size:16px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0}.round-count{font-size:12px;color:var(--text-secondary, #8b92a8)}.round-matches{display:flex;flex-direction:column;gap:16px}.bracket-match{background:var(--surface, #1a1f3a);border:2px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:10px;padding:12px;cursor:pointer;transition:all .2s}.bracket-match:hover{border-color:var(--primary, #00d4ff);box-shadow:0 4px 12px #00d4ff33}.bracket-match.user-match{border-color:gold;background:#ffd7000d}.bracket-match.user-match:hover{border-color:gold;box-shadow:0 4px 12px #ffd7004d}.bracket-match.completed{opacity:.8}.bracket-match.in_progress{border-color:var(--success, #2ecc71);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 0 #2ecc7166}50%{box-shadow:0 0 0 8px #2ecc7100}}.match-player{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:var(--background, #0a0e27);border-radius:6px;margin-bottom:6px}.match-player:last-child{margin-bottom:0}.match-player.winner{background:linear-gradient(90deg,#00d4ff26,#00d4ff0d);border-left:3px solid var(--primary, #00d4ff)}.player-name{font-size:14px;font-weight:600;color:var(--text-primary, #e4e6eb)}.player-score{font-size:16px;font-weight:700;color:var(--primary, #00d4ff);min-width:30px;text-align:right}.match-divider{display:flex;justify-content:center;align-items:center;margin:4px 0}.vs{font-size:11px;color:var(--text-secondary, #8b92a8);font-weight:700}.live-indicator{font-size:10px;font-weight:700;color:var(--success, #2ecc71);background:#2ecc711a;padding:2px 8px;border-radius:4px;animation:blink 1.5s ease-in-out infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.match-time{text-align:center;font-size:11px;color:var(--text-secondary, #8b92a8);margin-top:8px}.double-elimination{display:flex;flex-direction:column;gap:40px}.winners-bracket,.losers-bracket{width:100%}.bracket-title{font-size:20px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0 0 20px;padding:16px;background:var(--surface, #1a1f3a);border-radius:8px;border-left:4px solid var(--primary, #00d4ff)}.losers-bracket .bracket-title{border-left-color:var(--danger, #ff4757)}.grand-final{margin-top:40px;padding:20px;background:linear-gradient(135deg,#00d4ff1a,#9945ff1a);border-radius:12px;border:2px solid var(--primary, #00d4ff)}.grand-final .round-header{background:transparent;border:none;margin-bottom:16px}.grand-final .round-header h4{font-size:20px}.round-robin .matches-grid{display:flex;flex-direction:column;gap:24px}.round-robin-round{background:var(--surface, #1a1f3a);border-radius:12px;padding:20px}.round-title{font-size:16px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0 0 16px}.round-matches-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.swiss-rounds{display:flex;flex-direction:column;gap:24px}.swiss-round{background:var(--surface, #1a1f3a);border-radius:12px;padding:20px;border:1px solid var(--border-color, rgba(255, 255, 255, .1))}.round-status{font-size:13px;color:var(--text-secondary, #8b92a8)}.swiss-matches{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:16px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.match-score-modal{background:var(--surface, #1a1f3a);border-radius:16px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;border:1px solid var(--border-color, rgba(255, 255, 255, .1));animation:slideUp .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .1))}.modal-header h3{font-size:20px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0}.modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-secondary, #8b92a8);font-size:24px;cursor:pointer;border-radius:6px;transition:all .2s}.modal-close:hover{background:#ffffff1a;color:var(--text-primary, #e4e6eb)}.modal-content{padding:24px}.match-info{margin-bottom:24px}.match-players{display:flex;align-items:center;justify-content:space-between;padding:20px;background:var(--background, #0a0e27);border-radius:12px}.player-info{display:flex;flex-direction:column;align-items:center;gap:8px}.player-info .player-name{font-size:16px;font-weight:600;color:var(--text-primary, #e4e6eb)}.you-badge{padding:4px 10px;background:var(--primary, #00d4ff);color:var(--background, #0a0e27);border-radius:12px;font-size:11px;font-weight:700}.vs-text{font-size:14px;font-weight:700;color:var(--text-secondary, #8b92a8)}.score-section{margin-bottom:24px}.score-section h4{font-size:16px;font-weight:600;color:var(--text-primary, #e4e6eb);margin:0 0 16px}.score-inputs{display:flex;align-items:center;justify-content:center;gap:16px}.score-input-group{display:flex;flex-direction:column;align-items:center;gap:8px}.score-input-group label{font-size:13px;color:var(--text-secondary, #8b92a8)}.score-input{width:80px;height:60px;text-align:center;font-size:24px;font-weight:700;background:var(--background, #0a0e27);border:2px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:8px;color:var(--text-primary, #e4e6eb)}.score-input:focus{outline:none;border-color:var(--primary, #00d4ff)}.score-divider{font-size:28px;font-weight:700;color:var(--text-secondary, #8b92a8)}.winner-section{margin-bottom:24px}.winner-section h4{font-size:16px;font-weight:600;color:var(--text-primary, #e4e6eb);margin:0 0 16px}.winner-buttons{display:flex;gap:12px}.winner-btn{flex:1;padding:12px 20px;background:var(--surface, #1a1f3a);border:2px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:8px;color:var(--text-primary, #e4e6eb);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.winner-btn:hover{background:#ffffff0d;border-color:#fff3}.winner-btn.selected{background:var(--primary, #00d4ff);color:var(--background, #0a0e27);border-color:var(--primary, #00d4ff)}.warning-message,.info-message{padding:12px 16px;border-radius:8px;font-size:13px;line-height:1.5}.warning-message{background:#ffc1071a;color:#ffc107;border:1px solid #ffc107}.info-message{background:#00d4ff1a;color:var(--primary, #00d4ff);border:1px solid var(--primary, #00d4ff)}.modal-actions{display:flex;gap:12px;padding:20px 24px;border-top:1px solid var(--border-color, rgba(255, 255, 255, .1))}.btn-cancel{flex:1;padding:12px 20px;background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:8px;color:var(--text-primary, #e4e6eb);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#ffffff0d}.btn-submit{flex:1;padding:12px 20px;background:var(--primary, #00d4ff);color:var(--background, #0a0e27);border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-submit:hover:not(:disabled){background:var(--primary-hover, #00b8e6);transform:translateY(-1px)}.btn-submit:disabled{opacity:.5;cursor:not-allowed}.loading-bracket{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px}.spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.1);border-top-color:var(--primary, #00d4ff);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.loading-bracket p{font-size:16px;color:var(--text-secondary, #8b92a8)}@media (max-width: 1024px){.tournaments-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.bracket-container{gap:30px}.bracket-round{min-width:250px}}@media (max-width: 768px){.tournaments-view .tab-content{padding:16px}.tournaments-grid,.tournament-details{grid-template-columns:1fr}.bracket-container{flex-direction:column;gap:24px}.bracket-round{min-width:unset}.match-score-modal{width:95%}.score-inputs{flex-direction:column;gap:24px}.score-divider{transform:rotate(90deg)}.winner-buttons{flex-direction:column}}.tournament-chat{display:flex;flex-direction:column;height:100%;background:var(--surface, #1a1f3a);border-radius:8px;overflow:hidden}.chat-connection-status{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--background, #0a0e27);border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .1));font-size:12px;font-weight:600}.chat-connection-status .status-dot{width:8px;height:8px;border-radius:50%;animation:pulse 2s infinite}.chat-connection-status.connected{color:var(--success, #10b981)}.chat-connection-status.connected .status-dot{background:var(--success, #10b981)}.chat-connection-status.disconnected{color:var(--warning, #f59e0b)}.chat-connection-status.disconnected .status-dot{background:var(--warning, #f59e0b)}.chat-connection-status.connecting{color:var(--info, #3b82f6)}.chat-connection-status.connecting .status-dot{background:var(--info, #3b82f6)}.chat-connection-status.reconnecting{color:var(--warning, #f59e0b)}.chat-connection-status.reconnecting .status-dot{background:var(--warning, #f59e0b);animation:pulse 1s infinite}.chat-connection-status.error{color:var(--error, #ef4444)}.chat-connection-status.error .status-dot{background:var(--error, #ef4444);animation:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:#ffffff0d}.chat-messages::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.chat-load-more{align-self:center;padding:8px 16px;background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:6px;color:var(--text-secondary, #8b92a8);font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:8px}.chat-load-more:hover:not(:disabled){background:#ffffff0d;border-color:var(--primary, #00d4ff);color:var(--primary, #00d4ff)}.chat-load-more:disabled{opacity:.5;cursor:not-allowed}.chat-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary, #8b92a8);font-style:italic}.chat-message{padding:12px;border-radius:8px;background:#ffffff0d;max-width:80%}.chat-message.own{align-self:flex-end;background:var(--primary-alpha, rgba(0, 212, 255, .1));border:1px solid var(--primary, #00d4ff)}.chat-message.system{align-self:center;background:#8b5cf61a;border:1px solid rgba(139,92,246,.3);max-width:90%;text-align:center}.message-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px;gap:12px}.message-username{font-weight:600;color:var(--primary, #00d4ff);font-size:13px}.chat-message.own .message-username{color:var(--success, #10b981)}.message-time{font-size:11px;color:var(--text-muted, #6b7280);white-space:nowrap}.message-content{color:var(--text-primary, #e4e6eb);line-height:1.5;word-wrap:break-word;font-size:14px}.system-message-content{display:flex;align-items:center;justify-content:center;gap:8px;color:#8b5cf6;font-size:13px;font-weight:500}.system-icon{font-size:16px}.chat-input-form{display:flex;gap:8px;padding:16px;background:var(--background, #0a0e27);border-top:1px solid var(--border-color, rgba(255, 255, 255, .1))}.chat-input{flex:1;padding:12px 16px;background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:8px;color:var(--text-primary, #e4e6eb);font-size:14px;outline:none;transition:all .2s}.chat-input:focus{border-color:var(--primary, #00d4ff);box-shadow:0 0 0 3px #00d4ff1a}.chat-input:disabled{opacity:.5;cursor:not-allowed}.chat-input::placeholder{color:var(--text-muted, #6b7280)}.chat-send-btn{padding:12px 20px;background:var(--primary, #00d4ff);border:none;border-radius:8px;color:var(--text-on-primary, #0a0e27);font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;min-width:60px}.chat-send-btn:hover:not(:disabled){background:var(--primary-hover, #00bce6);transform:translateY(-1px)}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.chat-char-count{position:absolute;bottom:60px;right:24px;font-size:11px;color:var(--text-muted, #6b7280);background:var(--background, #0a0e27);padding:4px 8px;border-radius:4px}.tournament-chat.loading{display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #8b92a8)}.loading-spinner{font-style:italic}.tournament-wizard{max-width:800px;width:90vw;max-height:90vh;display:flex;flex-direction:column}.wizard-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:2px solid var(--border-color, rgba(255, 255, 255, .1))}.wizard-header h2{margin:0;font-size:24px;color:var(--text-primary, #e4e6eb)}.close-btn{width:36px;height:36px;border-radius:50%;border:none;background:#ffffff1a;color:var(--text-primary, #e4e6eb);font-size:24px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:#ef444433;color:#ef4444;transform:rotate(90deg)}.wizard-steps{display:flex;align-items:center;padding:32px 24px;background:var(--surface, #1a1f3a)}.step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1}.step-number{width:40px;height:40px;border-radius:50%;background:#ffffff1a;color:var(--text-secondary, #8b92a8);display:flex;align-items:center;justify-content:center;font-weight:600;transition:all .3s}.step.active .step-number{background:var(--primary, #00d4ff);color:var(--background, #0a0e27);box-shadow:0 0 20px #00d4ff66}.step.completed .step-number{background:var(--success, #10b981);color:#fff}.step-label{font-size:12px;color:var(--text-secondary, #8b92a8);font-weight:500;text-align:center}.step.active .step-label{color:var(--primary, #00d4ff);font-weight:600}.step-divider{flex:1;height:2px;background:#ffffff1a;margin:0 8px 28px}.step.active~.step-divider,.step.completed~.step-divider{background:var(--primary, #00d4ff)}.wizard-content{flex:1;overflow-y:auto;padding:24px}.wizard-content::-webkit-scrollbar{width:8px}.wizard-content::-webkit-scrollbar-track{background:#ffffff0d}.wizard-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.wizard-step h3{margin:0 0 8px;font-size:20px;color:var(--text-primary, #e4e6eb)}.step-description{margin:0 0 32px;color:var(--text-secondary, #8b92a8);font-size:14px}.form-group{margin-bottom:24px}.form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:var(--text-primary, #e4e6eb)}.form-input,.form-select,.form-textarea{width:100%;padding:12px 16px;background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:8px;color:var(--text-primary, #e4e6eb);font-size:14px;transition:all .2s;outline:none}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--primary, #00d4ff);box-shadow:0 0 0 3px #00d4ff1a}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--error, #ef4444)}.form-textarea{resize:vertical;font-family:inherit;line-height:1.5}.form-hint{display:block;margin-top:6px;font-size:12px;color:var(--text-muted, #6b7280);font-style:italic}.error-message{display:block;margin-top:6px;font-size:12px;color:var(--error, #ef4444)}.input-with-prefix{position:relative;display:flex;align-items:center}.input-with-prefix .prefix{position:absolute;left:16px;color:var(--text-secondary, #8b92a8);font-weight:600;pointer-events:none}.input-with-prefix .form-input{padding-left:36px}.prize-distribution{display:flex;flex-direction:column;gap:12px;padding:16px;background:#ffffff08;border-radius:8px}.prize-row{display:flex;align-items:center;gap:12px}.prize-row span:first-child{flex:1;font-weight:500;color:var(--text-primary, #e4e6eb)}.prize-row input{width:80px;padding:8px 12px;background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:6px;color:var(--text-primary, #e4e6eb);text-align:center}.prize-row span:last-child{color:var(--text-secondary, #8b92a8)}.checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.checkbox-label span{font-weight:500;color:var(--text-primary, #e4e6eb)}.review-step{background:#ffffff05;border-radius:12px;padding:24px}.review-section{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .1))}.review-section:last-child{border-bottom:none;margin-bottom:0}.review-section h4{margin:0 0 16px;font-size:16px;color:var(--primary, #00d4ff);text-transform:uppercase;letter-spacing:.5px}.review-item{display:flex;justify-content:space-between;padding:12px 0;gap:16px}.review-label{font-weight:500;color:var(--text-secondary, #8b92a8)}.review-value{font-weight:600;color:var(--text-primary, #e4e6eb);text-align:right}.wizard-actions{display:flex;justify-content:space-between;gap:12px;padding:24px;border-top:2px solid var(--border-color, rgba(255, 255, 255, .1));background:var(--surface, #1a1f3a)}.wizard-actions button{flex:1;padding:14px 24px;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.wizard-actions .btn-secondary{background:#ffffff1a;color:var(--text-primary, #e4e6eb)}.wizard-actions .btn-secondary:hover:not(:disabled){background:#ffffff26}.wizard-actions .btn-primary{background:var(--primary, #00d4ff);color:var(--background, #0a0e27)}.wizard-actions .btn-primary:hover:not(:disabled){background:var(--primary-hover, #00bce6);transform:translateY(-2px);box-shadow:0 4px 12px #00d4ff4d}.wizard-actions button:disabled{opacity:.5;cursor:not-allowed;transform:none}.wizard-error{padding:16px;margin:0 24px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;font-size:14px;text-align:center}@media (max-width: 768px){.tournament-wizard{width:95vw;max-height:95vh}.wizard-steps{padding:24px 16px}.step-label{display:none}.wizard-content,.wizard-actions{padding:16px}}.bracket-match.live-match{border:2px solid var(--live, #ef4444);box-shadow:0 0 20px #ef44444d,0 4px 12px #0000004d;animation:livePulse 2s infinite;background:linear-gradient(135deg,rgba(239,68,68,.05) 0%,transparent 50%,rgba(239,68,68,.05) 100%)}@keyframes livePulse{0%,to{box-shadow:0 0 20px #ef44444d,0 4px 12px #0000004d}50%{box-shadow:0 0 30px #ef444480,0 6px 16px #0006}}.live-indicator{display:flex;align-items:center;gap:6px;padding:4px 12px;background:var(--live, #ef4444);color:#fff;font-size:11px;font-weight:700;border-radius:12px;letter-spacing:.5px;animation:liveGlow 1.5s infinite}@keyframes liveGlow{0%,to{opacity:1}50%{opacity:.8}}.live-dot{width:6px;height:6px;border-radius:50%;background:#fff;animation:liveDotPulse 1s infinite}@keyframes liveDotPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.7}}.bracket-match.just-completed{animation:completeFlash .5s ease-out;border-color:var(--success, #10b981)!important}@keyframes completeFlash{0%{background:#10b9814d;transform:scale(1.02)}to{background:transparent;transform:scale(1)}}.completed-indicator{display:flex;align-items:center;gap:6px;padding:4px 12px;background:var(--success, #10b981);color:#fff;font-size:11px;font-weight:700;border-radius:12px;letter-spacing:.5px;animation:completeFadeIn .3s ease-out}@keyframes completeFadeIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.bracket-match.score-updated .player-score{animation:scoreUpdate .6s ease-out}@keyframes scoreUpdate{0%{background:var(--primary, #00d4ff);color:var(--background, #0a0e27);transform:scale(1.3)}50%{transform:scale(1.1)}to{background:transparent;color:inherit;transform:scale(1)}}.match-player.winner{background:linear-gradient(90deg,#10b98126,#10b9810d);border-left:3px solid var(--success, #10b981);font-weight:600}.match-player.winner .player-name{color:var(--success, #10b981);position:relative}.match-player.winner .player-name:before{content:"👑";position:absolute;left:-20px;font-size:14px;animation:crownBounce 1s ease-in-out infinite}@keyframes crownBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.match-player.winner .player-score{background:var(--success, #10b981);color:#fff;font-weight:700;box-shadow:0 2px 8px #10b9814d}.bracket-match{transition:all .3s cubic-bezier(.4,0,.2,1)}.bracket-match:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.bracket-match.in_progress{background:#ef444408}.bracket-match.completed{opacity:.9}.bracket-match.completed:hover{opacity:1}.bracket-view{position:relative}.realtime-badge{position:absolute;top:16px;right:16px;display:flex;align-items:center;gap:8px;padding:8px 16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:20px;font-size:12px;font-weight:600;color:var(--live, #ef4444);z-index:10}.realtime-badge .status-dot{width:8px;height:8px;border-radius:50%;background:var(--live, #ef4444);animation:liveDotPulse 1s infinite}.live-matches-count{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:16px;font-size:13px;font-weight:600;color:var(--live, #ef4444);margin-left:12px}.live-matches-count .count{background:var(--live, #ef4444);color:#fff;padding:2px 8px;border-radius:10px;min-width:24px;text-align:center}.round-header{position:relative}.round-header .live-count{position:absolute;top:50%;right:0;transform:translateY(-50%);display:flex;align-items:center;gap:6px;padding:4px 10px;background:#ef444426;border-radius:12px;font-size:11px;font-weight:600;color:var(--live, #ef4444)}.round-header .live-count .dot{width:6px;height:6px;border-radius:50%;background:var(--live, #ef4444);animation:liveDotPulse 1s infinite}.bracket-match:after{content:"";position:absolute;right:-20px;top:50%;width:20px;height:2px;background:var(--border-color, rgba(255, 255, 255, .1));transition:all .3s}.bracket-match.completed:after{background:var(--success, #10b981);box-shadow:0 0 10px #10b9814d}.bracket-match.live-match:after{background:var(--live, #ef4444);animation:progressionPulse 1.5s infinite}@keyframes progressionPulse{0%,to{opacity:.5;box-shadow:0 0 5px #ef44444d}50%{opacity:1;box-shadow:0 0 15px #ef444499}}@media (max-width: 768px){.live-indicator,.completed-indicator{font-size:9px;padding:3px 8px}.match-player.winner .player-name:before{left:-16px;font-size:12px}.realtime-badge{top:8px;right:8px;padding:6px 12px;font-size:10px}}.browse-header-top{display:flex;align-items:center;gap:16px;margin-bottom:20px}.browse-header-top .search-bar{flex:1}.create-tournament-btn{padding:12px 24px;background:linear-gradient(135deg,var(--primary, #00d4ff),var(--accent, #a855f7));color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .3s ease;box-shadow:0 4px 12px #00d4ff4d}.create-tournament-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00d4ff66}.create-tournament-btn:active{transform:translateY(0)}.chat-tab{display:flex;flex-direction:column;height:calc(100vh - 200px);background:var(--surface, #1a1f3a);border-radius:12px;overflow:hidden}.chat-header{display:flex;align-items:center;gap:16px;padding:20px 24px;background:var(--background, #0a0e27);border-bottom:1px solid var(--border, rgba(255, 255, 255, .1))}.chat-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #ffffff)}.chat-container{flex:1;overflow:hidden;display:flex;flex-direction:column}.chat-container .tournament-chat{height:100%}.back-button{padding:8px 16px;background:transparent;color:var(--text-secondary, #b8c5d6);border:1px solid var(--border, rgba(255, 255, 255, .1));border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s ease}.back-button:hover{background:var(--surface-hover, rgba(255, 255, 255, .05));color:var(--text-primary, #ffffff);border-color:var(--primary, #00d4ff)}@media (max-width: 768px){.browse-header-top{flex-direction:column;align-items:stretch}.create-tournament-btn{width:100%}.chat-tab{height:calc(100vh - 150px)}.chat-header{padding:16px}.chat-header h3{font-size:16px}}.spectator-count{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--surface, #1a1f3a);border-radius:20px;border:1px solid var(--border, rgba(255, 255, 255, .1));font-size:13px;transition:all .3s ease}.spectator-icon{font-size:16px;filter:grayscale(.3)}.spectator-number{font-weight:600;color:var(--text-primary, #ffffff);min-width:24px;text-align:center;transition:transform .3s ease}.spectator-label{color:var(--text-secondary, #b8c5d6);font-size:12px}.spectator-count.count-increase .spectator-number{color:var(--success, #10b981);transform:scale(1.2)}.spectator-count.count-decrease .spectator-number{color:var(--text-secondary, #b8c5d6);transform:scale(.9)}.spectator-count.live{background:linear-gradient(135deg,#ef44441a,#ef44440d);border-color:var(--live, #ef4444)}.spectator-count.live .spectator-icon{animation:pulse 2s infinite;filter:none}@media (max-width: 768px){.spectator-label{display:none}.spectator-count{padding:6px 12px;gap:6px}}.tournament-admin-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:500px;background:var(--surface, #1a1f3a);border-radius:12px;box-shadow:0 8px 32px #00000080;z-index:1000;overflow:hidden}.admin-panel-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:var(--background, #0a0e27);border-bottom:1px solid var(--border, rgba(255, 255, 255, .1))}.admin-panel-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #ffffff)}.admin-panel-header .close-btn{background:transparent;border:none;color:var(--text-secondary, #b8c5d6);font-size:32px;line-height:1;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.admin-panel-header .close-btn:hover{color:var(--text-primary, #ffffff)}.admin-panel-content{padding:24px}.admin-status{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--border, rgba(255, 255, 255, .1))}.status-label{font-size:14px;color:var(--text-secondary, #b8c5d6)}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.status-registration{background:#3b82f633;color:#3b82f6}.status-badge.status-check_in{background:#f59e0b33;color:#f59e0b}.status-badge.status-in_progress{background:#ef444433;color:#ef4444}.status-badge.status-completed{background:#10b98133;color:#10b981}.admin-stats{display:flex;gap:24px;margin-bottom:24px}.stat-item{flex:1;display:flex;flex-direction:column;align-items:center;padding:16px;background:var(--background, #0a0e27);border-radius:8px}.stat-value{font-size:24px;font-weight:700;color:var(--primary, #00d4ff);margin-bottom:4px}.stat-label{font-size:12px;color:var(--text-secondary, #b8c5d6);text-transform:uppercase}.admin-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.admin-btn{padding:12px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.admin-btn:disabled{opacity:.5;cursor:not-allowed}.start-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.start-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.advance-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.advance-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #3b82f666}.complete-btn{background:linear-gradient(135deg,#a855f7,#9333ea);color:#fff}.complete-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #a855f766}.cancel-btn{background:transparent;border:1px solid var(--error, #ef4444);color:var(--error, #ef4444)}.cancel-btn:hover:not(:disabled){background:#ef44441a}.admin-info{padding:16px;background:var(--background, #0a0e27);border-radius:8px;border-left:3px solid var(--primary, #00d4ff)}.admin-info h4{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text-primary, #ffffff)}.admin-info ul{margin:0;padding-left:20px;font-size:13px;color:var(--text-secondary, #b8c5d6);line-height:1.8}@media (max-width: 768px){.tournament-admin-panel{width:95%;max-width:none}.admin-panel-content{padding:16px}.admin-stats{gap:12px}}.bracket-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.bracket-header-left{display:flex;align-items:center;gap:12px}.admin-control-btn{padding:10px 18px;background:linear-gradient(135deg,#a855f7,#9333ea);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px;box-shadow:0 2px 8px #a855f74d}.admin-control-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #a855f766}.tournament-admin-panel:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;z-index:-1}@media (max-width: 768px){.bracket-header{flex-direction:column;align-items:stretch}.bracket-header-left{width:100%}.admin-control-btn{width:100%;justify-content:center}}.creator-dashboard-view{width:100%;height:100%;display:flex;flex-direction:column;background:var(--background, #0a0e27);color:var(--text-primary, #e4e6eb);overflow:hidden}.dashboard-header{display:flex;justify-content:space-between;align-items:center;padding:24px;background:var(--surface, #1a1f3a);border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .1))}.dashboard-header h1{font-size:28px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0}.header-actions{display:flex;gap:12px}.btn-export{padding:10px 20px;background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:8px;color:var(--text-primary, #e4e6eb);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-export:hover{background:#ffffff0d;border-color:#fff3}.creator-dashboard-view .tabs{display:flex;gap:0;padding:20px 24px 0;border-bottom:2px solid var(--border-color, rgba(255, 255, 255, .1));background:var(--surface, #1a1f3a)}.creator-dashboard-view .tabs button{position:relative;padding:12px 24px;background:none;border:none;color:var(--text-secondary, #8b92a8);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border-bottom:3px solid transparent;margin-bottom:-2px}.creator-dashboard-view .tabs button:hover{color:var(--text-primary, #e4e6eb);background:#ffffff0d}.creator-dashboard-view .tabs button.active{color:var(--primary, #00d4ff);border-bottom-color:var(--primary, #00d4ff)}.creator-dashboard-view .tab-content{flex:1;overflow-y:auto;padding:24px}.creator-dashboard-view .tab-content::-webkit-scrollbar{width:8px}.creator-dashboard-view .tab-content::-webkit-scrollbar-track{background:#ffffff0d}.creator-dashboard-view .tab-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.overview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.period-selector{display:flex;gap:8px;padding:4px;background:var(--surface, #1a1f3a);border-radius:8px;border:1px solid var(--border-color, rgba(255, 255, 255, .1))}.period-selector button{padding:8px 16px;background:transparent;border:none;border-radius:6px;color:var(--text-secondary, #8b92a8);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.period-selector button:hover{background:#ffffff0d;color:var(--text-primary, #e4e6eb)}.period-selector button.active{background:var(--primary, #00d4ff);color:var(--background, #0a0e27)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:24px}.stat-card{background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;padding:20px;transition:all .2s}.stat-card:hover{border-color:#fff3;box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.stat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.stat-title{font-size:13px;color:var(--text-secondary, #8b92a8);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.stat-icon{font-size:24px;opacity:.8}.stat-value{font-size:32px;font-weight:700;color:var(--text-primary, #e4e6eb);margin-bottom:8px}.stat-change{display:flex;align-items:center;gap:6px;font-size:13px}.stat-change.positive{color:var(--success, #2ecc71)}.stat-change.negative{color:var(--danger, #ff4757)}.change-arrow{font-size:16px;font-weight:700}.change-value{font-weight:700}.change-label{color:var(--text-secondary, #8b92a8);margin-left:4px}.balance-section{margin-bottom:32px}.balance-card{background:linear-gradient(135deg,#00d4ff1a,#9945ff1a);border:2px solid var(--primary, #00d4ff);border-radius:16px;padding:32px;text-align:center}.balance-card h3{font-size:18px;font-weight:600;color:var(--text-primary, #e4e6eb);margin:0 0 16px}.balance-amount{font-size:48px;font-weight:700;color:var(--primary, #00d4ff);margin-bottom:8px}.balance-pending{font-size:14px;color:var(--text-secondary, #8b92a8);margin-bottom:24px}.btn-payout{padding:12px 32px;background:var(--primary, #00d4ff);color:var(--background, #0a0e27);border:none;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s}.btn-payout:hover:not(:disabled){background:var(--primary-hover, #00b8e6);transform:translateY(-2px);box-shadow:0 4px 16px #00d4ff66}.btn-payout:disabled{opacity:.5;cursor:not-allowed}.chart-section{background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;padding:24px;margin-bottom:32px}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.chart-header h3{font-size:18px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0}.chart-type-selector{display:flex;gap:8px}.chart-type-selector button{padding:8px 16px;background:var(--background, #0a0e27);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:6px;color:var(--text-secondary, #8b92a8);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.chart-type-selector button:hover{background:#ffffff0d}.chart-type-selector button.active{background:var(--primary, #00d4ff);color:var(--background, #0a0e27);border-color:var(--primary, #00d4ff)}.analytics-chart{width:100%}.chart-tooltip{background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .2));border-radius:8px;padding:12px;box-shadow:0 4px 12px #0006}.tooltip-date{font-size:12px;color:var(--text-secondary, #8b92a8);margin-bottom:8px}.tooltip-item{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:4px}.tooltip-item:last-child{margin-bottom:0}.tooltip-label{font-size:13px;color:var(--text-secondary, #8b92a8)}.tooltip-value{font-size:14px;font-weight:700;color:var(--text-primary, #e4e6eb)}.top-content-section{background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;padding:24px}.top-content-section h3{font-size:18px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0 0 20px}.content-list{display:flex;flex-direction:column;gap:12px}.content-item{display:flex;align-items:center;gap:16px;padding:16px;background:var(--background, #0a0e27);border-radius:8px;transition:all .2s}.content-item:hover{background:#ffffff0d}.content-thumb{width:60px;height:60px;border-radius:8px;object-fit:cover;flex-shrink:0}.content-info{flex:1;min-width:0}.content-title{font-size:15px;font-weight:600;color:var(--text-primary, #e4e6eb);margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.content-stats{display:flex;gap:12px;font-size:13px;color:var(--text-secondary, #8b92a8)}.content-rating{font-size:14px;font-weight:700;color:gold;flex-shrink:0}.earnings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.earnings-header h3{font-size:20px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0}.earnings-total{font-size:18px;font-weight:700;color:var(--primary, #00d4ff)}.earnings-table{background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;overflow:hidden}.earnings-table table{width:100%;border-collapse:collapse}.earnings-table thead{background:var(--background, #0a0e27)}.earnings-table th{padding:16px;text-align:left;font-size:13px;font-weight:700;color:var(--text-secondary, #8b92a8);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .1))}.earnings-table td{padding:16px;font-size:14px;color:var(--text-primary, #e4e6eb);border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .05))}.earnings-table tbody tr:hover{background:#ffffff05}.earning-amount{font-weight:700;color:var(--primary, #00d4ff)}.type-badge,.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:700;text-transform:uppercase}.type-badge.sale{background:#2ecc711a;color:#2ecc71}.type-badge.subscription{background:#00d4ff1a;color:var(--primary, #00d4ff)}.type-badge.tip{background:#ffc1071a;color:#ffc107}.type-badge.royalty{background:#9945ff1a;color:#9945ff}.status-badge.pending{background:#ffc1071a;color:#ffc107}.status-badge.processing,.status-badge.approved{background:#00d4ff1a;color:var(--primary, #00d4ff)}.status-badge.completed{background:#2ecc711a;color:#2ecc71}.status-badge.failed,.status-badge.rejected{background:#ff47571a;color:var(--danger, #ff4757)}.content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.content-header h3{font-size:20px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0}.btn-create-content{padding:10px 20px;background:var(--primary, #00d4ff);color:var(--background, #0a0e27);border:none;border-radius:8px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s}.btn-create-content:hover{background:var(--primary-hover, #00b8e6);transform:translateY(-1px)}.content-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.content-card{background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;overflow:hidden;transition:all .2s}.content-card:hover{border-color:#fff3;box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.content-card-thumb{position:relative;width:100%;height:160px;overflow:hidden}.content-card-thumb img{width:100%;height:100%;object-fit:cover}.status-overlay{position:absolute;top:12px;right:12px;padding:6px 12px;border-radius:6px;font-size:11px;font-weight:700;text-transform:uppercase;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.status-overlay.draft{color:#8b92a8}.status-overlay.pending_review{color:#ffc107}.status-overlay.published{color:#2ecc71}.status-overlay.rejected{color:var(--danger, #ff4757)}.content-card-body{padding:20px}.content-card-body h4{font-size:16px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0 0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content-description{font-size:13px;color:var(--text-secondary, #8b92a8);line-height:1.5;margin-bottom:16px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.content-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.content-price{font-size:20px;font-weight:700;color:var(--primary, #00d4ff)}.content-stats-row{display:flex;gap:12px;font-size:12px;color:var(--text-secondary, #8b92a8)}.content-actions{display:flex;gap:8px}.content-actions button{flex:1;padding:8px;background:var(--background, #0a0e27);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:6px;color:var(--text-primary, #e4e6eb);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.content-actions button:hover{background:#ffffff0d;border-color:#fff3}.btn-edit{color:var(--primary, #00d4ff)!important}.btn-analytics{color:#9945ff!important}.subscribers-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.subscribers-header h3{font-size:20px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0}.subscribers-count{font-size:16px;color:var(--text-secondary, #8b92a8)}.subscribers-list{display:flex;flex-direction:column;gap:12px}.subscriber-item{display:flex;align-items:center;gap:16px;padding:16px;background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;transition:all .2s}.subscriber-item:hover{border-color:#fff3;box-shadow:0 4px 12px #0003}.subscriber-avatar{width:50px;height:50px;border-radius:50%;object-fit:cover;border:2px solid var(--primary, #00d4ff);flex-shrink:0}.subscriber-info{flex:1;min-width:0}.subscriber-name{font-size:16px;font-weight:600;color:var(--text-primary, #e4e6eb);margin-bottom:4px}.subscriber-meta{font-size:13px;color:var(--text-secondary, #8b92a8)}.subscriber-stats{text-align:right;flex-shrink:0}.subscriber-spent{font-size:18px;font-weight:700;color:var(--primary, #00d4ff);margin-bottom:4px}.subscriber-label{font-size:11px;color:var(--text-secondary, #8b92a8);text-transform:uppercase;letter-spacing:.5px}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.content-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media (max-width: 768px){.creator-dashboard-view .tab-content{padding:16px}.dashboard-header{flex-direction:column;gap:16px;align-items:flex-start}.stats-grid,.content-grid{grid-template-columns:1fr}.earnings-table{overflow-x:auto}.earnings-table table{min-width:600px}.chart-header{flex-direction:column;gap:16px;align-items:flex-start}.period-selector{width:100%}.period-selector button{flex:1}}.plugin-browser-view{width:100%;height:100%;display:flex;flex-direction:column;background:var(--background, #0a0e27);color:var(--text-primary, #e4e6eb);overflow:hidden}.browser-header{display:flex;justify-content:space-between;align-items:center;padding:24px;background:var(--surface, #1a1f3a);border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .1))}.browser-header h1{font-size:28px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0}.plugin-browser-view .tabs{display:flex;gap:0;padding:20px 24px 0;border-bottom:2px solid var(--border-color, rgba(255, 255, 255, .1));background:var(--surface, #1a1f3a)}.plugin-browser-view .tabs button{position:relative;padding:12px 24px;background:none;border:none;color:var(--text-secondary, #8b92a8);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border-bottom:3px solid transparent;margin-bottom:-2px}.plugin-browser-view .tabs button:hover{color:var(--text-primary, #e4e6eb);background:#ffffff0d}.plugin-browser-view .tabs button.active{color:var(--primary, #00d4ff);border-bottom-color:var(--primary, #00d4ff)}.tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;margin-left:8px;background:var(--primary, #00d4ff);color:var(--background, #0a0e27);border-radius:10px;font-size:11px;font-weight:700}.plugin-browser-view .tab-content{flex:1;overflow-y:auto;padding:24px}.plugin-browser-view .tab-content::-webkit-scrollbar{width:8px}.plugin-browser-view .tab-content::-webkit-scrollbar-track{background:#ffffff0d}.plugin-browser-view .tab-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.browse-header{margin-bottom:32px}.browse-filters{display:flex;gap:16px;margin-top:16px;flex-wrap:wrap}.filter-group{display:flex;align-items:center;gap:8px}.filter-group label{font-size:13px;color:var(--text-secondary, #8b92a8);font-weight:600}.filter-group select{padding:8px 12px;background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:6px;color:var(--text-primary, #e4e6eb);font-size:13px;cursor:pointer}.filter-group select:focus{outline:none;border-color:var(--primary, #00d4ff)}.featured-section{margin-bottom:48px}.featured-section h2{font-size:22px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0 0 20px}.featured-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.plugins-section h2{font-size:20px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0 0 20px}.plugins-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.plugin-card{background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;overflow:hidden;transition:all .2s;display:flex;flex-direction:column}.plugin-card:hover{border-color:#fff3;box-shadow:0 4px 12px #0000004d;transform:translateY(-2px)}.plugin-card-header{position:relative;width:100%;height:160px;overflow:hidden;background:var(--background, #0a0e27)}.plugin-thumbnail,.plugin-thumbnail-placeholder{width:100%;height:100%;object-fit:cover}.plugin-thumbnail-placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#00d4ff1a,#9945ff1a)}.plugin-type-icon-large{font-size:64px;opacity:.6}.compatibility-badge{position:absolute;top:12px;left:12px;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700;text-transform:uppercase;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.compatibility-badge.green{color:#2ecc71;border:1px solid #2ecc71}.compatibility-badge.yellow{color:#ffc107;border:1px solid #ffc107}.compatibility-badge.red{color:var(--danger, #ff4757);border:1px solid var(--danger, #ff4757)}.compatibility-badge.gray{color:#8b92a8;border:1px solid #8b92a8}.installed-badge{position:absolute;top:12px;right:12px;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700;background:#2ecc71e6;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.update-badge{position:absolute;bottom:12px;right:12px;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700;background:#00d4ffe6;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:pulse-badge 2s ease-in-out infinite}@keyframes pulse-badge{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.plugin-card-body{padding:20px;flex:1;display:flex;flex-direction:column}.plugin-card-title-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.plugin-title{font-size:16px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.verified-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:var(--primary, #00d4ff);color:#fff;border-radius:50%;font-size:12px;flex-shrink:0}.plugin-author{font-size:13px;color:var(--text-secondary, #8b92a8);margin-bottom:12px}.plugin-description{font-size:13px;color:var(--text-secondary, #8b92a8);line-height:1.5;margin-bottom:12px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.plugin-meta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.plugin-meta-item{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary, #8b92a8)}.meta-icon{font-size:14px}.plugin-stats{display:flex;gap:16px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .1))}.stat-item{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-primary, #e4e6eb)}.stat-icon{font-size:16px}.stat-value{font-weight:600}.stat-count{color:var(--text-secondary, #8b92a8)}.plugin-game-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#00d4ff1a;border:1px solid var(--primary, #00d4ff);border-radius:6px;color:var(--primary, #00d4ff);font-size:12px;font-weight:600;margin-bottom:12px;align-self:flex-start}.plugin-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.plugin-tag{padding:4px 10px;background:var(--background, #0a0e27);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;font-size:11px;color:var(--text-secondary, #8b92a8)}.plugin-tag-more{padding:4px 10px;font-size:11px;color:var(--text-secondary, #8b92a8);font-weight:600}.plugin-card-footer{display:flex;gap:8px;padding:16px 20px;border-top:1px solid var(--border-color, rgba(255, 255, 255, .1));background:#0003}.plugin-card-footer button{flex:1;padding:8px 12px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.btn-install{background:var(--primary, #00d4ff);color:var(--background, #0a0e27)}.btn-install:hover{background:var(--primary-hover, #00b8e6);transform:translateY(-1px)}.btn-update{background:var(--primary, #00d4ff);color:var(--background, #0a0e27)}.btn-update:hover{background:var(--primary-hover, #00b8e6)}.btn-configure{background:var(--background, #0a0e27);border:1px solid var(--border-color, rgba(255, 255, 255, .2));color:var(--text-primary, #e4e6eb)}.btn-configure:hover{background:#ffffff0d}.btn-uninstall{background:transparent;border:1px solid var(--danger, #ff4757);color:var(--danger, #ff4757)}.btn-uninstall:hover{background:var(--danger, #ff4757);color:#fff}.btn-details{background:var(--background, #0a0e27);border:1px solid var(--border-color, rgba(255, 255, 255, .2));color:var(--text-primary, #e4e6eb)}.btn-details:hover{background:#ffffff0d;border-color:var(--primary, #00d4ff)}.installed-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.installed-header h2{font-size:20px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0}.btn-update-all{padding:10px 20px;background:var(--primary, #00d4ff);color:var(--background, #0a0e27);border:none;border-radius:8px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s}.btn-update-all:hover{background:var(--primary-hover, #00b8e6);transform:translateY(-1px)}.updates-banner{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#00d4ff1a;border:1px solid var(--primary, #00d4ff);border-radius:8px;margin-bottom:24px}.updates-icon{font-size:24px}.updates-text{font-size:14px;color:var(--text-primary, #e4e6eb);font-weight:600}.filter-bar{margin-bottom:24px}.installed-list{display:flex;flex-direction:column;gap:12px}.installed-item{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:var(--surface, #1a1f3a);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;transition:all .2s}.installed-item:hover{border-color:#fff3;box-shadow:0 4px 12px #0003}.installed-info{flex:1;min-width:0}.installed-name{display:flex;align-items:center;gap:10px;margin-bottom:8px}.plugin-type-icon{font-size:20px}.name-text{font-size:16px;font-weight:600;color:var(--text-primary, #e4e6eb)}.version-badge{padding:2px 8px;background:var(--background, #0a0e27);border:1px solid var(--border-color, rgba(255, 255, 255, .2));border-radius:4px;font-size:11px;color:var(--text-secondary, #8b92a8)}.installed-meta{display:flex;align-items:center;gap:12px}.status-badge{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:700;text-transform:uppercase}.status-badge.active{background:#2ecc711a;color:#2ecc71}.status-badge.inactive{background:#9b9b9b1a;color:#9b9b9b}.status-badge.disabled{background:#ffc1071a;color:#ffc107}.status-badge.error{background:#ff47571a;color:var(--danger, #ff4757)}.status-badge.updating{background:#00d4ff1a;color:var(--primary, #00d4ff)}.update-available-badge{padding:4px 10px;background:#00d4ff1a;border:1px solid var(--primary, #00d4ff);border-radius:12px;font-size:11px;font-weight:700;color:var(--primary, #00d4ff)}.installed-actions{display:flex;gap:8px}.installed-actions button{padding:6px 14px;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.btn-update-sm{background:var(--primary, #00d4ff);color:var(--background, #0a0e27)}.btn-update-sm:hover{background:var(--primary-hover, #00b8e6)}.btn-configure-sm{background:var(--background, #0a0e27);border:1px solid var(--border-color, rgba(255, 255, 255, .2));color:var(--text-primary, #e4e6eb)}.btn-configure-sm:hover{background:#ffffff0d}.btn-uninstall-sm{background:transparent;border:1px solid var(--danger, #ff4757);color:var(--danger, #ff4757)}.btn-uninstall-sm:hover{background:var(--danger, #ff4757);color:#fff}.collections-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.collections-header h2{font-size:20px;font-weight:700;color:var(--text-primary, #e4e6eb);margin:0}.btn-create-collection{padding:10px 20px;background:var(--primary, #00d4ff);color:var(--background, #0a0e27);border:none;border-radius:8px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s}.btn-create-collection:hover{background:var(--primary-hover, #00b8e6);transform:translateY(-1px)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:var(--text-secondary, #8b92a8)}.empty-icon{font-size:80px;margin-bottom:16px;opacity:.3}.empty-state p{font-size:16px}@media (max-width: 1024px){.plugins-grid,.featured-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media (max-width: 768px){.plugin-browser-view .tab-content,.browser-header{padding:16px}.browse-filters{flex-direction:column}.filter-group{width:100%}.filter-group select{flex:1}.plugins-grid,.featured-grid{grid-template-columns:1fr}.plugin-card-footer{flex-wrap:wrap}.plugin-card-footer button{min-width:calc(50% - 4px)}.installed-item{flex-direction:column;align-items:flex-start;gap:12px}.installed-actions{width:100%}.installed-actions button{flex:1}}.cloud-gaming-view{padding:20px;max-width:1600px;margin:0 auto}.cloud-gaming-header{margin-bottom:30px}.cloud-gaming-header h1{margin:0 0 8px;font-size:2rem;font-weight:700;color:var(--text-main)}.header-subtitle{color:var(--text-muted);font-size:1rem;margin:0}.cloud-library{padding:0}.library-header{margin-bottom:30px}.library-header h2{margin:0 0 8px;font-size:1.5rem;font-weight:700}.library-subtitle{color:var(--text-muted);margin:0}.cloud-games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}.cloud-game-card{background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:16px;overflow:hidden;transition:all .2s ease;display:flex;flex-direction:column}.cloud-game-card:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 8px 24px #0000004d}.cloud-game-card .game-cover{width:100%;height:200px;object-fit:cover;background:var(--bg-main)}.cloud-game-card .game-info{padding:16px;flex:1}.cloud-game-card .game-title{margin:0 0 4px;font-size:1.1rem;font-weight:700;color:var(--text-main)}.cloud-game-card .game-platform{color:var(--text-muted);font-size:.85rem;margin:0 0 12px}.cloud-game-card .game-stats{display:flex;gap:12px;margin-bottom:12px;font-size:.85rem;color:var(--text-muted)}.cloud-game-card .game-requirements{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.req-item{background:var(--bg-main);padding:4px 10px;border-radius:6px;font-size:.75rem;color:var(--text-muted)}.btn-play-cloud{background:var(--accent);border:none;border-radius:0;padding:14px;color:#fff;font-size:1rem;font-weight:700;cursor:pointer;width:100%;transition:background .2s ease}.btn-play-cloud:hover:not(:disabled){background:var(--accent-hover)}.btn-play-cloud:disabled{background:var(--bg-main);color:var(--text-muted);cursor:not-allowed}.launch-time-estimate{background:var(--bg-main);padding:8px;text-align:center;font-size:.75rem;color:var(--text-muted)}.cloud-history{padding:0}.history-header{margin-bottom:24px}.history-header h2{margin:0;font-size:1.5rem;font-weight:700}.history-list{display:flex;flex-direction:column;gap:16px}.history-item{background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:12px;padding:20px;display:flex;justify-content:space-between;align-items:center;gap:24px}.history-game h4{margin:0 0 4px;font-size:1.1rem;font-weight:700;color:var(--text-main)}.history-date{color:var(--text-muted);font-size:.85rem;margin:0}.history-stats{display:flex;gap:32px;flex-shrink:0}.history-stat{display:flex;flex-direction:column;align-items:center}.history-stat .stat-label{font-size:.75rem;color:var(--text-muted);margin-bottom:4px}.history-stat .stat-value{font-size:1.1rem;font-weight:700;color:var(--text-main)}.cloud-gaming-stream{position:fixed;top:0;left:0;right:0;bottom:0;background:#000;z-index:1000}.stream-container{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.stream-player{position:relative;width:100%;height:100%}.stream-video{width:100%;height:100%;object-fit:contain;background:#000}.stream-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;z-index:10}.loading-spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.1);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{font-size:1.3rem;font-weight:600;color:#fff}.loading-subtext{font-size:1rem;color:#fff9}.stream-error-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;z-index:10}.error-icon{font-size:4rem}.error-text{font-size:1.5rem;font-weight:700;color:#ef4444}.error-subtext{font-size:1rem;color:#fff9}.stream-status-indicator{position:absolute;top:20px;right:20px;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:8px 16px;border-radius:20px;font-size:.75rem;font-weight:700;color:#fff;display:flex;align-items:center;gap:8px;z-index:20}.status-dot{width:8px;height:8px;border-radius:50%;background:currentColor;animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.stream-controls{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.9),transparent);padding:40px 20px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;opacity:0;transition:opacity .3s ease;z-index:30}.stream-container:hover .stream-controls,.stream-controls:hover{opacity:1}.controls-left,.controls-center,.controls-right{display:flex;align-items:center;gap:12px}.controls-center{gap:16px}.control-btn{background:#ffffff1a;border:2px solid rgba(255,255,255,.2);border-radius:8px;padding:10px 16px;color:#fff;font-size:1.2rem;cursor:pointer;transition:all .2s ease}.control-btn.active{background:var(--accent);border-color:var(--accent)}.control-btn-stop{background:#ef444433;border-color:#ef444466}.control-btn-stop:hover{background:#ef444466;border-color:#ef444499}.volume-control{display:flex;align-items:center;gap:10px}.volume-slider{width:100px;height:4px;background:#fff3;border-radius:2px;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;background:#fff;border-radius:50%;cursor:pointer}.volume-slider::-moz-range-thumb{width:14px;height:14px;background:#fff;border-radius:50%;cursor:pointer;border:none}.quality-badge,.codec-badge{background:#0009;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:6px 12px;border-radius:6px;font-size:.85rem;font-weight:600;color:#fff}.stream-settings-panel{position:absolute;bottom:80px;right:20px;background:#000000f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:2px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;min-width:280px;z-index:40}.settings-section{margin-bottom:20px}.settings-section:last-child{margin-bottom:0}.settings-section h4{margin:0 0 12px;font-size:.9rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.05em}.settings-options{display:flex;flex-direction:column;gap:8px}.settings-option{background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:8px;padding:10px 16px;color:#fff;font-size:.9rem;cursor:pointer;text-align:left;transition:all .2s ease}.settings-option:hover{background:#ffffff1a;border-color:#fff3}.settings-option.active{background:var(--accent);border-color:var(--accent)}.stream-stats-overlay{position:absolute;top:20px;left:20px;background:#000000e6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:2px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;min-width:320px;z-index:20}.stats-header{font-size:1rem;font-weight:700;color:#fff;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid rgba(255,255,255,.1)}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.stat-item{background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:8px;padding:12px;display:flex;flex-direction:column;align-items:center;gap:6px}.stat-label{font-size:.75rem;color:#fff9;text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:1.3rem;font-weight:700;color:#fff}.stat-status{font-size:.75rem;font-weight:600}.btn-toggle-stats{position:absolute;top:80px;right:20px;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(255,255,255,.2);border-radius:50%;width:44px;height:44px;color:#fff;font-size:1.2rem;cursor:pointer;z-index:20;transition:all .2s ease}.btn-toggle-stats:hover{background:#000000e6;border-color:#fff6}.server-selector-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.server-selector-content{background:var(--bg-main);border:2px solid var(--border-subtle);border-radius:16px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;padding:30px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid var(--border-subtle)}.modal-header h2{margin:0;font-size:1.5rem;font-weight:700;color:var(--text-main)}.modal-close{background:transparent;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;padding:4px;line-height:1;transition:color .2s ease}.modal-close:hover{color:var(--text-main)}.server-filters{margin-bottom:24px}.best-server-banner{background:linear-gradient(135deg,#ffd70026,#ffd7000d);border:2px solid rgba(255,215,0,.3);border-radius:10px;padding:16px 20px;margin-bottom:24px;display:flex;align-items:center;gap:12px}.banner-icon{font-size:1.5rem}.banner-text{font-weight:600;color:var(--text-main)}.servers-list{display:flex;flex-direction:column;gap:16px}.server-card{background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:12px;padding:20px;transition:all .2s ease}.server-card:hover{border-color:var(--accent);transform:translate(4px)}.server-card.best-server{border-color:#ffd70080;background:linear-gradient(135deg,var(--bg-elevated),rgba(255,215,0,.05))}.server-card.unavailable{opacity:.5;filter:grayscale(.5)}.server-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.server-name h3{margin:0 0 4px;font-size:1.2rem;font-weight:700;color:var(--text-main)}.server-location{color:var(--text-muted);font-size:.85rem;margin:0}.best-badge{display:inline-block;background:linear-gradient(135deg,gold,#ffed4e);color:#000;padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:700;margin-bottom:8px}.server-unavailable-badge{background:#ef444433;color:#ef4444;padding:6px 12px;border-radius:8px;font-size:.75rem;font-weight:700}.server-stats{display:flex;gap:24px;margin-bottom:16px;padding-bottom:16px;border-bottom:2px solid var(--border-subtle)}.server-stat{display:flex;flex-direction:column;gap:4px}.server-stat .stat-label{font-size:.75rem;color:var(--text-muted)}.server-stat .stat-value{font-size:1.1rem;font-weight:700}.server-specs{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.spec-item{background:var(--bg-main);padding:8px 12px;border-radius:8px;display:flex;align-items:center;gap:6px;font-size:.85rem}.spec-icon{font-size:1rem}.server-actions{display:flex;gap:10px}.btn-test-latency,.btn-select-server{flex:1;padding:12px 20px;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:2px solid}.btn-test-latency{background:transparent;border-color:var(--border-subtle);color:var(--text-main)}.btn-test-latency:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn-select-server{background:var(--accent);border-color:var(--accent);color:#fff}.btn-select-server:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-test-latency:disabled,.btn-select-server:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.cloud-games-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.history-item{flex-direction:column;align-items:flex-start}.history-stats{flex-direction:column;gap:12px;width:100%}.stats-grid{grid-template-columns:1fr}.server-stats{flex-direction:column;gap:12px}}.remote-play-enhanced-view{padding:20px;max-width:1600px;margin:0 auto}.remote-play-header{margin-bottom:30px}.remote-play-header h1{margin:0 0 8px;font-size:2rem;font-weight:700;color:var(--text-main)}.devices-tab{padding:0}.devices-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.devices-header h2{margin:0;font-size:1.5rem;font-weight:700}.btn-pair-new{background:var(--accent);border:none;border-radius:10px;padding:12px 24px;color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s ease}.btn-pair-new:hover{background:var(--accent-hover)}.device-list{padding:0}.device-section{margin-bottom:40px}.section-title{margin:0 0 20px;font-size:1.2rem;font-weight:700;color:var(--text-main);padding-bottom:12px;border-bottom:2px solid var(--border-subtle)}.devices-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:24px}.device-card{background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:16px;padding:24px;transition:all .2s ease}.device-card:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 8px 24px #0000004d}.device-card.trusted{border-color:#22c55e4d}.device-card.offline{opacity:.6;filter:grayscale(.3)}.device-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px}.device-icon{font-size:2.5rem;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);border-radius:12px;flex-shrink:0}.device-info{flex:1}.device-name{margin:0 0 4px;font-size:1.1rem;font-weight:700;color:var(--text-main);display:flex;align-items:center;gap:8px}.trusted-badge{background:#22c55e33;color:#22c55e;padding:2px 8px;border-radius:8px;font-size:.7rem;font-weight:700}.device-owner{color:var(--text-muted);font-size:.85rem;margin:0}.device-status{display:flex;align-items:center;gap:6px;flex-shrink:0}.status-dot{width:10px;height:10px;border-radius:50%}.status-dot.online{background:#22c55e;box-shadow:0 0 8px #22c55e80;animation:pulse-dot 2s ease-in-out infinite}.status-dot.offline{background:#64748b}.status-text{font-size:.85rem;font-weight:600;color:var(--text-muted)}.device-specs{background:var(--bg-main);border-radius:8px;padding:12px;margin-bottom:16px}.spec-row{display:flex;justify-content:space-between;padding:6px 0;font-size:.85rem}.spec-label{color:var(--text-muted)}.spec-value{color:var(--text-main);font-weight:600}.device-network{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.network-item{background:var(--bg-main);padding:6px 12px;border-radius:8px;display:flex;align-items:center;gap:6px;font-size:.85rem}.network-icon{font-size:1rem}.network-text{color:var(--text-main);font-weight:600}.hardware-encoding-badge{background:linear-gradient(135deg,#8b5cf633,#8b5cf61a);border:2px solid rgba(139,92,246,.3);border-radius:8px;padding:8px 12px;text-align:center;font-size:.85rem;font-weight:600;color:#a78bfa;margin-bottom:16px}.device-actions{display:flex;gap:10px}.device-actions button{flex:1;padding:10px 16px;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:2px solid}.btn-pair{background:transparent;border-color:var(--border-subtle);color:var(--text-main)}.btn-pair:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn-test{background:transparent;border-color:var(--border-subtle);color:var(--text-main)}.btn-test:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btn-connect{background:var(--accent);border-color:var(--accent);color:#fff}.btn-connect:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-pair:disabled,.btn-test:disabled,.btn-connect:disabled{opacity:.5;cursor:not-allowed}.device-last-seen{margin-top:12px;padding-top:12px;border-top:2px solid var(--border-subtle);font-size:.75rem;color:var(--text-muted);text-align:center}.pairing-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.pairing-modal{background:var(--bg-main);border:2px solid var(--border-subtle);border-radius:16px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;padding:30px}.pairing-tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid var(--border-subtle)}.pairing-tabs button{background:transparent;border:none;padding:12px 24px;color:var(--text-muted);font-size:.95rem;font-weight:600;cursor:pointer;position:relative;transition:color .2s ease}.pairing-tabs button.active{color:var(--accent)}.pairing-tabs button.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--accent)}.pairing-content{padding:0}.pairing-device-info{background:var(--bg-elevated);border-radius:12px;padding:20px;margin-bottom:20px;text-align:center}.pairing-device-info h3{margin:0 0 8px;font-size:1.2rem;font-weight:700}.pairing-device-info p{margin:4px 0;color:var(--text-muted)}.device-platform{color:var(--text-main);font-weight:600}.pairing-description{color:var(--text-muted);line-height:1.6;margin-bottom:20px}.btn-send-request{width:100%;background:var(--accent);border:none;border-radius:10px;padding:14px 24px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s ease}.btn-send-request:hover:not(:disabled){background:var(--accent-hover)}.btn-send-request:disabled{opacity:.5;cursor:not-allowed}.pairing-method-section{margin-bottom:30px}.pairing-method-section h3{margin:0 0 12px;font-size:1.1rem;font-weight:700}.method-description{color:var(--text-muted);font-size:.9rem;margin-bottom:16px;line-height:1.5}.btn-generate-code,.btn-pair-code{width:100%;background:var(--accent);border:none;border-radius:10px;padding:12px 24px;color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s ease}.btn-generate-code:hover:not(:disabled),.btn-pair-code:hover:not(:disabled){background:var(--accent-hover)}.btn-generate-code:disabled,.btn-pair-code:disabled{opacity:.5;cursor:not-allowed}.generated-code-display{margin-top:20px;background:var(--bg-elevated);border-radius:12px;padding:20px;text-align:center}.code-label{color:var(--text-muted);font-size:.85rem;margin-bottom:12px}.code-value{font-size:2.5rem;font-weight:700;color:var(--accent);font-family:Courier New,monospace;letter-spacing:.2em;margin-bottom:12px}.code-hint{color:var(--text-muted);font-size:.85rem;line-height:1.4}.pairing-divider{position:relative;text-align:center;margin:30px 0}.pairing-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:2px;background:var(--border-subtle)}.pairing-divider span{position:relative;background:var(--bg-main);padding:0 16px;color:var(--text-muted);font-weight:600}.pairing-code-input{width:100%;background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:10px;padding:14px 20px;color:var(--text-main);font-size:1.5rem;font-family:Courier New,monospace;text-align:center;letter-spacing:.2em;margin-bottom:16px;transition:border-color .2s ease}.pairing-code-input:focus{outline:none;border-color:var(--accent)}.connection-quality-overlay{position:absolute;top:20px;left:20px;background:#000000e6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:2px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;min-width:300px;z-index:20}.quality-header{margin-bottom:16px}.quality-indicator{padding:10px 20px;border-radius:8px;text-align:center}.quality-rating{font-weight:700;font-size:1.1rem;color:#fff;letter-spacing:.1em}.quality-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.quality-stat{background:#ffffff0d;border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:6px}.performance-stats{border-top:2px solid rgba(255,255,255,.1);padding-top:16px;margin-bottom:20px}.performance-stats h4{margin:0 0 12px;font-size:.9rem;font-weight:700;color:#fff}.perf-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.perf-item{background:#ffffff0d;border-radius:6px;padding:8px;display:flex;flex-direction:column;align-items:center;gap:4px}.perf-label{font-size:.75rem;color:#fff9}.perf-value{font-size:1.1rem;font-weight:700;color:#fff}.quality-issues{border-top:2px solid rgba(255,255,255,.1);padding-top:16px}.quality-issues h4{margin:0 0 12px;font-size:.9rem;font-weight:700;color:#fff}.issue-item{background:#ffffff0d;border-radius:6px;padding:10px 12px;margin-bottom:8px;display:flex;align-items:center;gap:10px}.issue-item.error{background:#ef444433;border:1px solid rgba(239,68,68,.4)}.issue-item.warning{background:#eab30833;border:1px solid rgba(234,179,8,.4)}.issue-icon{font-size:1.2rem;flex-shrink:0}.issue-message{font-size:.85rem;color:#fff;line-height:1.4}.touch-controls-overlay{position:absolute;top:0;left:0;right:0;bottom:0;z-index:30;pointer-events:none}.touch-button,.touch-joystick-container,.touch-dpad{pointer-events:auto}.touch-button{position:absolute;background:#ffffff26;border:3px solid rgba(255,255,255,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.2rem;transform:translate(-50%,-50%);transition:all .1s ease;user-select:none;-webkit-user-select:none}.touch-button.active{background:#fff6;border-color:#fff9;transform:translate(-50%,-50%) scale(.95)}.button-label{text-shadow:0 2px 4px rgba(0,0,0,.5)}.touch-joystick-container{position:absolute;transform:translate(-50%,-50%)}.joystick-base{width:100%;height:100%;background:#ffffff1a;border:3px solid rgba(255,255,255,.3);border-radius:50%}.joystick-stick{position:absolute;top:50%;left:50%;width:40%;height:40%;background:#fff9;border:3px solid rgba(255,255,255,.8);border-radius:50%;transform:translate(-50%,-50%);transition:transform .05s ease}.touch-dpad{position:absolute;width:120px;height:120px;transform:translate(-50%,-50%);pointer-events:auto}.dpad-up,.dpad-down,.dpad-left,.dpad-right{position:absolute;width:40px;height:40px;background:#ffffff26;border:3px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem}.dpad-up{top:0;left:50%;transform:translate(-50%);border-radius:8px 8px 0 0}.dpad-down{bottom:0;left:50%;transform:translate(-50%);border-radius:0 0 8px 8px}.dpad-left{left:0;top:50%;transform:translateY(-50%);border-radius:8px 0 0 8px}.dpad-right{right:0;top:50%;transform:translateY(-50%);border-radius:0 8px 8px 0}.remote-play-streaming{position:fixed;top:0;left:0;right:0;bottom:0;background:#000;z-index:1000}.stream-header{position:relative;z-index:10;background:#000000e6;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.stream-title h3{margin:0 0 4px;font-size:1.2rem;font-weight:700;color:#fff}.stream-host{margin:0;font-size:.85rem;color:#fff9}.status-indicator{padding:6px 14px;border-radius:12px;font-size:.75rem;font-weight:700;color:#fff}.btn-end-session{background:#ef444433;border:2px solid rgba(239,68,68,.4);border-radius:8px;padding:10px 20px;color:#ef4444;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-end-session:hover{background:#ef444466;border-color:#ef444499}.stream-video-container{position:relative;width:100%;height:calc(100vh - 120px);background:#000}.stream-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.placeholder-icon{font-size:4rem}.placeholder-subtext{color:#fff9}.stream-controls{position:relative;z-index:10;background:#000000e6;padding:16px 20px;display:flex;gap:12px;justify-content:center}.control-btn{background:#ffffff1a;border:2px solid rgba(255,255,255,.2);border-radius:8px;padding:10px 20px;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.control-btn:hover{background:#fff3;border-color:#fff6}.host-tab{padding:0}.host-header{margin-bottom:30px}.host-header h2{margin:0;font-size:1.5rem;font-weight:700}.host-content{display:grid;grid-template-columns:2fr 1fr;gap:30px}.host-info-card{background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:16px;padding:30px;text-align:center}.info-icon{font-size:4rem;margin-bottom:20px}.host-info-card h3{margin:0 0 16px;font-size:1.5rem;font-weight:700}.host-info-card p{color:var(--text-muted);line-height:1.6;margin-bottom:24px}.host-requirements{background:var(--bg-main);border-radius:12px;padding:20px;margin-bottom:24px;text-align:left}.host-requirements h4{margin:0 0 12px;font-size:1rem;font-weight:700}.host-requirements ul{list-style:none;padding:0;margin:0}.host-requirements li{padding:8px 0;color:var(--text-muted);line-height:1.4}.btn-start-host{background:var(--accent);border:none;border-radius:10px;padding:14px 32px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s ease}.btn-start-host:hover{background:var(--accent-hover)}.host-tips{background:var(--bg-elevated);border:2px solid var(--border-subtle);border-radius:16px;padding:24px}.host-tips h4{margin:0 0 16px;font-size:1rem;font-weight:700}.host-tips ul{list-style:none;padding:0;margin:0}.host-tips li{color:var(--text-muted);line-height:1.5;padding:8px 0 8px 24px;position:relative}.host-tips li:before{content:"💡";position:absolute;left:0}@media (max-width: 1024px){.host-content{grid-template-columns:1fr}}@media (max-width: 768px){.devices-grid{grid-template-columns:1fr}.device-actions{flex-direction:column}.quality-stats,.perf-grid{grid-template-columns:1fr}}.ai-coaching-view{display:flex;flex-direction:column;gap:24px;padding:24px;min-height:100vh;background:var(--bg-primary, #0a0e27);color:var(--text-primary, #ffffff)}.coaching-header{text-align:center;margin-bottom:8px}.coaching-header h1{font-size:32px;font-weight:700;color:#00d9ff;margin:0 0 8px;text-transform:uppercase;letter-spacing:1px}.coaching-header p{font-size:16px;color:var(--text-secondary, #94a3b8);margin:0}.usage-stats-bar{display:flex;gap:24px;padding:16px 24px;background:linear-gradient(135deg,#1a1f3a,#0f1729);border:1px solid rgba(0,217,255,.2);border-radius:12px;box-shadow:0 4px 12px #0000004d}.usage-stat-item{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0}.usage-stat-label{font-size:12px;font-weight:500;color:var(--text-secondary, #94a3b8);text-transform:uppercase;letter-spacing:.5px}.usage-stat-value{font-size:22px;font-weight:700;color:#00d9ff;white-space:nowrap}.coaching-tabs{display:flex;gap:8px;padding:8px;background:var(--bg-secondary, #0f1729);border-radius:12px;border:1px solid rgba(255,255,255,.1)}.coaching-tabs .tab{flex:1;padding:12px 20px;background:transparent;border:none;border-radius:8px;font-size:14px;font-weight:600;color:var(--text-secondary, #94a3b8);cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.coaching-tabs .tab:hover{background:#00d9ff1a;color:#00d9ff}.coaching-tabs .tab.active{background:linear-gradient(135deg,#00d9ff,#09c);color:#000;box-shadow:0 2px 8px #00d9ff66}.coaching-content{flex:1}.overview-tab,.sessions-tab,.assessments-tab,.recommendations-tab{display:flex;flex-direction:column;gap:24px}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.tab-header h2{font-size:24px;font-weight:700;color:#00d9ff;margin:0}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.action-card{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px;background:linear-gradient(135deg,#1a1f3a,#0f1729);border:2px solid rgba(0,217,255,.2);border-radius:12px;cursor:pointer;transition:all .3s;text-align:center}.action-card:hover{border-color:#00d9ff;transform:translateY(-4px);box-shadow:0 8px 24px #00d9ff4d}.action-icon{font-size:48px;line-height:1}.action-card h3{font-size:18px;font-weight:700;color:#fff;margin:0}.action-card p{font-size:14px;color:var(--text-secondary, #94a3b8);margin:0}.coaching-session-card{background:linear-gradient(135deg,#1a1f3a,#0f1729);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;transition:all .3s}.coaching-session-card:hover{border-color:#00d9ff80;transform:translateY(-2px);box-shadow:0 6px 20px #00d9ff33}.session-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:16px}.session-type-icon{width:56px;height:56px;min-width:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:28px;box-shadow:0 4px 12px #0000004d}.session-info{flex:1;min-width:0}.session-info h3{font-size:18px;font-weight:700;color:#fff;margin:0 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-type{font-size:14px;font-weight:600;color:#00d9ff;margin:0 0 4px;text-transform:capitalize}.session-date{font-size:13px;color:var(--text-secondary, #94a3b8);margin:0}.session-rating{font-size:18px;line-height:1;margin-left:auto}.session-details{display:flex;flex-direction:column;gap:12px}.focus-areas{display:flex;flex-direction:column;gap:8px}.focus-areas strong{font-size:13px;color:var(--text-secondary, #94a3b8);text-transform:uppercase;letter-spacing:.5px}.tags{display:flex;flex-wrap:wrap;gap:8px}.tag{padding:6px 12px;background:#00d9ff26;border:1px solid rgba(0,217,255,.3);border-radius:6px;font-size:12px;font-weight:600;color:#00d9ff;white-space:nowrap}.tag.strength{background:#22c55e26;border-color:#22c55e4d;color:#22c55e}.tag.weakness{background:#ef444426;border-color:#ef44444d;color:#ef4444}.session-stats{display:flex;gap:16px;font-size:13px;color:var(--text-secondary, #94a3b8)}.sessions-list,.assessments-list,.recommendations-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:16px}.assessment-card{background:linear-gradient(135deg,#1a1f3a,#0f1729);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;transition:all .3s}.assessment-card:hover{border-color:#00d9ff80;transform:translateY(-2px);box-shadow:0 6px 20px #00d9ff33}.assessment-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.assessment-header h3{font-size:18px;font-weight:700;color:#fff;margin:0;flex:1;min-width:0}.skill-level-badge{padding:8px 16px;border-radius:8px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;box-shadow:0 2px 8px #0000004d}.assessment-date{font-size:13px;color:var(--text-secondary, #94a3b8);margin-bottom:16px}.skills-section{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.skills-section:last-child{margin-bottom:0}.skills-section strong{font-size:13px;color:var(--text-secondary, #94a3b8);text-transform:uppercase;letter-spacing:.5px}.recommendation-card{background:linear-gradient(135deg,#1a1f3a,#0f1729);border:1px solid rgba(255,255,255,.1);border-left:4px solid var(--priority-color, #00d9ff);border-radius:12px;padding:20px;transition:all .3s}.recommendation-card:hover{border-color:#00d9ff80;border-left-color:var(--priority-color, #00d9ff);transform:translateY(-2px);box-shadow:0 6px 20px #00d9ff33}.recommendation-card.priority-high{--priority-color: #ef4444}.recommendation-card.priority-medium{--priority-color: #f59e0b}.recommendation-card.priority-low{--priority-color: #22c55e}.rec-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.rec-icon{font-size:24px;line-height:1}.rec-header h4{font-size:16px;font-weight:700;color:#fff;margin:0;flex:1;min-width:0}.priority-badge{padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.priority-badge.priority-high{background:#ef444433;color:#ef4444;border:1px solid #ef4444}.priority-badge.priority-medium{background:#f59e0b33;color:#f59e0b;border:1px solid #f59e0b}.priority-badge.priority-low{background:#22c55e33;color:#22c55e;border:1px solid #22c55e}.rec-description{font-size:14px;color:var(--text-secondary, #94a3b8);line-height:1.6;margin:0 0 16px}.rec-footer{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.rec-difficulty,.rec-time{padding:4px 10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:12px;color:var(--text-secondary, #94a3b8);white-space:nowrap}.completed-badge{padding:6px 12px;background:#22c55e33;border:1px solid #22c55e;border-radius:6px;font-size:12px;font-weight:600;color:#22c55e;margin-left:auto}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:linear-gradient(135deg,#1a1f3a,#0f1729);border:2px solid rgba(0,217,255,.3);border-radius:16px;max-width:500px;width:90%;max-height:85vh;overflow-y:auto;padding:32px;box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-content h2{font-size:24px;font-weight:700;color:#00d9ff;margin:0 0 24px}.modal-content p{font-size:15px;color:var(--text-secondary, #94a3b8);line-height:1.6;margin:0 0 20px}.form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.form-group label{font-size:14px;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.5px}.form-group input,.form-group select{padding:12px 16px;background:#0000004d;border:1px solid rgba(255,255,255,.2);border-radius:8px;font-size:14px;color:#fff;transition:all .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#00d9ff;box-shadow:0 0 0 3px #00d9ff1a}.form-group input::placeholder{color:var(--text-secondary, #94a3b8)}.modal-actions{display:flex;gap:12px;margin-top:24px}.rating-selector{display:flex;gap:8px;justify-content:center;margin:24px 0}.star-btn{background:transparent;border:none;font-size:36px;cursor:pointer;transition:all .2s;opacity:.3;filter:grayscale(1)}.star-btn:hover,.star-btn.active{opacity:1;filter:grayscale(0);transform:scale(1.1)}.btn{padding:12px 24px;background:linear-gradient(135deg,#00d9ff,#09c);border:none;border-radius:8px;font-size:14px;font-weight:700;color:#000;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #00d9ff66}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-small{padding:8px 16px;font-size:12px}.btn-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.btn-secondary:hover:not(:disabled){background:#ffffff26;box-shadow:0 4px 12px #ffffff1a}.empty-state{padding:60px 20px;text-align:center;background:#0003;border:2px dashed rgba(255,255,255,.1);border-radius:12px}.empty-state p{font-size:16px;color:var(--text-secondary, #94a3b8);margin:0}.recent-activity,.active-recommendations{display:flex;flex-direction:column;gap:16px}.recent-activity h2,.active-recommendations h2{font-size:20px;font-weight:700;color:#00d9ff;margin:0}@media (max-width: 1024px){.sessions-list,.assessments-list,.recommendations-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width: 768px){.ai-coaching-view{padding:16px;gap:16px}.coaching-header h1{font-size:24px}.coaching-header p{font-size:14px}.usage-stats-bar{flex-direction:column;gap:16px}.coaching-tabs{flex-wrap:wrap}.coaching-tabs .tab{flex:1 1 calc(50% - 4px);min-width:120px}.quick-actions,.sessions-list,.assessments-list,.recommendations-list{grid-template-columns:1fr}.session-header{flex-wrap:wrap}.modal-content{width:95%;max-height:90vh;padding:24px}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}.tab-header{flex-direction:column;align-items:flex-start;gap:12px}.tab-header .btn{width:100%}}@media (max-width: 480px){.coaching-session-card,.assessment-card,.recommendation-card{padding:16px}.session-type-icon{width:48px;height:48px;min-width:48px;font-size:24px}.star-btn{font-size:28px}}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#0003;border-radius:4px}.modal-content::-webkit-scrollbar-thumb{background:#00d9ff4d;border-radius:4px}.modal-content::-webkit-scrollbar-thumb:hover{background:#00d9ff80}.toast-container{position:fixed;top:80px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:12px;max-width:400px;pointer-events:none}.toast{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--surface, #1a1f3a);border-radius:8px;box-shadow:0 4px 12px #0000004d,0 2px 4px #0003;border-left:4px solid var(--border, #ffffff20);pointer-events:auto;animation:toastSlideIn .3s ease-out;min-width:300px;max-width:400px}@keyframes toastSlideIn{0%{transform:translate(calc(100% + 20px));opacity:0}to{transform:translate(0);opacity:1}}.toast.toast-removing{animation:toastSlideOut .2s ease-in forwards}@keyframes toastSlideOut{0%{transform:translate(0);opacity:1}to{transform:translate(calc(100% + 20px));opacity:0}}.toast-success{border-left-color:var(--success, #10b981)}.toast-success .toast-icon{color:var(--success, #10b981)}.toast-error{border-left-color:var(--error, #ef4444)}.toast-error .toast-icon{color:var(--error, #ef4444)}.toast-warning{border-left-color:var(--warning, #f59e0b)}.toast-warning .toast-icon{color:var(--warning, #f59e0b)}.toast-info{border-left-color:var(--info, #3b82f6)}.toast-info .toast-icon{color:var(--info, #3b82f6)}.toast-icon{font-size:20px;font-weight:700;line-height:1;flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--background, #0a0e27);border-radius:50%;padding:4px}.toast-content{flex:1;display:flex;flex-direction:column;gap:4px}.toast-title{font-size:14px;font-weight:600;color:var(--text-primary, #ffffff);line-height:1.4}.toast-message{font-size:13px;color:var(--text-secondary, #b8c5d6);line-height:1.5}.toast-action{margin-top:8px;padding:6px 12px;background:transparent;color:var(--primary, #00d4ff);border:1px solid var(--primary, #00d4ff);border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;align-self:flex-start;transition:all .2s ease}.toast-action:hover{background:var(--primary, #00d4ff);color:var(--background, #0a0e27)}.toast-close{background:transparent;border:none;color:var(--text-secondary, #b8c5d6);font-size:24px;line-height:1;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .2s ease}.toast-close:hover{color:var(--text-primary, #ffffff)}@media (max-width: 768px){.toast-container{top:60px;right:12px;left:12px;max-width:none}.toast{min-width:auto;max-width:none}}.toast.toast-match-update{border-left-color:var(--live, #ef4444)}.toast.toast-match-update .toast-icon{color:var(--live, #ef4444);animation:pulse 2s infinite}.toast.toast-tournament-start{border-left-color:var(--primary, #00d4ff);background:linear-gradient(135deg,#1a1f3a,#0a0e27)}.toast:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--primary, #00d4ff);opacity:.3;animation:toastProgress var(--duration, 5s) linear}@keyframes toastProgress{0%{transform:scaleX(1);transform-origin:left}to{transform:scaleX(0);transform-origin:left}}.toast.toast-persistent:after{display:none}
