.avatar{border-radius:50%;object-fit:cover;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.avatar--sm{width:28px;height:28px;font-size:.7rem}.avatar--md{width:40px;height:40px;font-size:1rem}.avatar--lg{width:72px;height:72px;font-size:1.75rem}.avatar--initials{color:#fff;font-weight:700;letter-spacing:0;-webkit-user-select:none;user-select:none}.notification-bell{position:relative}.notification-bell-btn{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;position:relative;padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:color var(--transition-fast)}.notification-bell-btn:hover{color:var(--color-primary)}.notification-badge{position:absolute;top:-2px;right:-2px;background:var(--color-error, #ef4444);color:#fff;font-size:.65rem;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px;line-height:1}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:340px;max-height:420px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 8px 24px #00000026;z-index:200;overflow:hidden;display:flex;flex-direction:column}.notification-dropdown-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border)}.notification-dropdown-title{font-weight:600;font-size:.875rem}.notification-mark-all-btn{background:none;border:none;color:var(--color-primary);font-size:.75rem;cursor:pointer;padding:2px 4px;border-radius:var(--radius-sm)}.notification-mark-all-btn:hover{text-decoration:underline}.notification-list{overflow-y:auto;flex:1}.notification-empty{padding:var(--spacing-xl);text-align:center;color:var(--color-text-muted);font-size:.875rem}.notification-item{border-bottom:1px solid var(--color-border);transition:background var(--transition-fast)}.notification-item:last-child{border-bottom:none}.notification-item:hover{background:var(--color-surface-hover, rgba(0, 0, 0, .03))}.notification-item.unread{background:var(--color-primary-bg, rgba(99, 102, 241, .06))}.notification-item.unread:hover{background:var(--color-primary-bg-hover, rgba(99, 102, 241, .1))}.notification-link,.notification-content{display:flex;flex-direction:column;gap:2px;padding:var(--spacing-sm) var(--spacing-md);text-decoration:none;color:inherit}.notification-message{font-size:.8125rem;line-height:1.4;color:var(--color-text)}.notification-time{font-size:.7rem;color:var(--color-text-muted)}@media(max-width:768px){.notification-dropdown{width:300px;right:-60px}}.inbox-bell{position:relative}.inbox-bell-btn{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;position:relative;padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:color var(--transition-fast)}.inbox-bell-btn:hover{color:var(--color-primary)}.inbox-badge{position:absolute;top:-2px;right:-2px;background:var(--color-error, #ef4444);color:#fff;font-size:.65rem;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px;line-height:1}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg);animation:fadeIn .2s ease}.modal{background:var(--color-surface);border-radius:var(--radius-lg);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;animation:slideUp .2s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.modal-title{margin:0;font-size:1.25rem}.modal-close{background:none;border:none;font-size:1.25rem;color:var(--color-text-muted);cursor:pointer;padding:var(--spacing-xs);transition:color var(--transition-fast)}.modal-close:hover{color:var(--color-text)}.modal-content{padding:var(--spacing-lg)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--color-surface-elevated);border-top:1px solid var(--color-border);padding:var(--spacing-lg);z-index:1000;box-shadow:0 -4px 12px #0000004d}.cookie-banner-content{max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg)}.cookie-banner-text{color:var(--color-text-secondary);font-size:.875rem;margin:0;line-height:1.5}.cookie-banner-text a{color:var(--color-primary);text-decoration:underline}.cookie-banner-actions{display:flex;gap:var(--spacing-sm);flex-shrink:0}.cookie-preferences{display:flex;flex-direction:column;gap:var(--spacing-lg)}.cookie-category{padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.cookie-category-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md)}.cookie-category-desc{color:var(--color-text-muted);font-size:.8125rem;margin:var(--spacing-xs) 0 0}.cookie-always-on{color:var(--color-text-muted);font-size:.75rem;white-space:nowrap;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-surface-elevated);border-radius:var(--radius-sm)}.cookie-toggle{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.cookie-toggle input{opacity:0;width:0;height:0}.cookie-toggle-slider{position:absolute;cursor:pointer;inset:0;background:var(--color-border);border-radius:24px;transition:background var(--transition-fast)}.cookie-toggle-slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;bottom:3px;background:var(--color-text);border-radius:50%;transition:transform var(--transition-fast)}.cookie-toggle input:checked+.cookie-toggle-slider{background:var(--color-primary)}.cookie-toggle input:checked+.cookie-toggle-slider:before{transform:translate(20px)}.cookie-preferences-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm)}@media(max-width:768px){.cookie-banner-content{flex-direction:column;text-align:center}.cookie-banner-actions{width:100%;justify-content:center}}.import-prompt-desc{color:var(--color-text-secondary);line-height:1.5;margin:0}.import-options p{color:var(--color-text-secondary);line-height:1.5}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.75rem;background:var(--color-surface-elevated);border-radius:8px}.checkbox-label input[type=checkbox]{width:1.25rem;height:1.25rem;accent-color:var(--color-primary)}.import-note{font-size:.875rem;color:var(--color-text-muted);font-style:italic}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.import-summary h4{margin:0 0 1rem;color:var(--color-text)}.import-warning{font-size:.875rem;color:var(--color-warning);background:color-mix(in srgb,var(--color-warning) 10%,transparent);border:1px solid color-mix(in srgb,var(--color-warning) 30%,transparent);border-radius:6px;padding:.75rem 1rem;margin:.5rem 0}.stat{display:flex;flex-direction:column;align-items:center;padding:.75rem 1rem;background:var(--color-surface-elevated);border-radius:8px;min-width:80px}.stat-value{font-size:1.5rem;font-weight:600;color:var(--color-text)}.stat-label{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase}.stat-success .stat-value{color:var(--color-success)}.stat-updated .stat-value{color:#3b82f6}.stat-skipped .stat-value{color:var(--color-warning)}.stat-failed .stat-value{color:var(--color-danger)}.username-setup-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.username-setup-description{color:var(--color-text-secondary);margin:0;line-height:1.5}.username-input-group{display:flex;align-items:center;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.username-prefix{padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-sm) var(--spacing-md);color:var(--color-text-muted);font-size:.7rem;white-space:nowrap;-webkit-user-select:none;user-select:none}.username-input{flex:1;border:none;background:transparent;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) 0;font-size:.75rem;color:var(--color-text);outline:none}.username-input::placeholder{color:var(--color-text-muted)}.username-status{margin:0;font-size:.875rem}.username-status--success{color:var(--color-success, #22c55e)}.username-status--error{color:var(--color-error, #ef4444)}.username-status--checking{color:var(--color-text-muted)}.username-submit{align-self:flex-end;margin-top:var(--spacing-sm)}.theme-step{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg)}.theme-step-desc{color:var(--color-text-secondary);margin:0;line-height:1.5;text-align:center}.theme-options{display:flex;gap:var(--spacing-md);width:100%}.theme-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);background:none;border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-sm);cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);color:var(--color-text)}.theme-option:hover{border-color:var(--color-primary)}.theme-option--selected{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary)}.theme-option-preview{width:100%;aspect-ratio:4 / 3;border-radius:var(--radius-md);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;overflow:hidden}.theme-option-label{font-weight:600;font-size:.9rem}.theme-option-desc{font-size:.75rem;color:var(--color-text-muted)}.theme-step-continue{min-width:140px}.steam-step{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);text-align:center}.steam-step-icon{color:#1b2838;margin-bottom:var(--spacing-sm)}[data-theme=dark] .steam-step-icon,:root .steam-step-icon{color:#c6d4df}.steam-step-desc{color:var(--color-text-secondary);margin:0;line-height:1.5}.steam-step-note{font-size:.8125rem;color:var(--color-text-muted);margin:0;line-height:1.5}.steam-step-note a{color:var(--color-text-muted);text-decoration:underline}.btn-steam{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;border:none;background:#1b2838;color:#fff;transition:background .2s ease}.onboarding-skip{background:none;border:none;color:var(--color-text-muted);font-size:.875rem;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px}.onboarding-skip:hover{color:var(--color-text-secondary)}.toast-container{position:fixed;bottom:var(--spacing-lg);right:var(--spacing-lg);z-index:1000;display:flex;flex-direction:column;gap:var(--spacing-sm)}.toast{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);background:var(--color-surface-elevated);box-shadow:var(--shadow-lg);cursor:pointer;animation:slideIn .3s ease;min-width:250px}.toast-success{border-left:4px solid var(--color-success)}.toast-error{border-left:4px solid var(--color-danger)}.toast-info{border-left:4px solid var(--color-primary)}.toast-icon{font-weight:700}.toast-success .toast-icon{color:var(--color-success)}.toast-error .toast-icon{color:var(--color-danger)}.toast-info .toast-icon{color:var(--color-primary)}.toast-message{flex:1}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.layout{min-height:100vh;display:flex;flex-direction:column}.header{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:0 var(--spacing-lg);position:sticky;top:0;z-index:100}.header-content{max-width:var(--max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:center;height:64px}.logo{display:flex;align-items:center;gap:var(--spacing-sm);text-decoration:none;color:var(--color-text);font-weight:700;font-size:1.25rem}.logo-icon{font-size:1.5rem}.logo-text{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav{display:flex;align-items:center;gap:var(--spacing-lg)}.nav-link{color:var(--color-text-secondary);text-decoration:none;font-weight:500;transition:color var(--transition-fast);white-space:nowrap}.nav-link:hover{color:var(--color-primary)}.nav-link-wrapper{position:relative;display:inline-flex;align-items:center}.nav-badge-dot{position:absolute;top:-3px;right:-6px;width:8px;height:8px;background:var(--color-error, #ef4444);border-radius:50%;pointer-events:none}.user-menu{display:flex;align-items:center;gap:var(--spacing-sm)}.user-avatar{width:32px;height:32px;border-radius:50%}.nav-avatar-link{display:flex;flex-shrink:0}.user-name{font-weight:500;color:var(--color-text-secondary);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.user-name:hover{color:var(--color-primary)}.nav-level-badge{display:inline-block;margin-left:var(--spacing-xs);padding:1px 6px;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;font-size:.65rem;font-weight:700;border-radius:var(--radius-sm);vertical-align:middle}.main{flex:1;max-width:var(--max-width);margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg);width:100%}.footer{background:var(--color-surface);border-top:1px solid var(--color-border);padding:var(--spacing-lg);text-align:center;color:var(--color-text-muted);font-size:.875rem}.footer-links{margin-top:var(--spacing-sm);display:flex;justify-content:center;gap:var(--spacing-sm)}.footer-link{color:var(--color-text-muted);text-decoration:none;transition:color var(--transition-fast)}.footer-link:hover{color:var(--color-primary)}.footer-separator{color:var(--color-border)}.mobile-drawer{display:flex;align-items:center;gap:var(--spacing-lg)}.retro-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:1.1rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);color:var(--color-text)}.retro-toggle:hover{background:var(--color-surface-elevated)}.retro-toggle.retro-active{border-color:var(--color-primary);background:var(--color-surface-elevated)}.retro-toggle.retro-c64{box-shadow:0 0 8px #a8a8ff80}.retro-toggle.retro-bbc{box-shadow:0 0 8px #ffff0080}.drawer-retro-toggle,.burger-btn{display:none}@media(max-width:1180px){.logo-text,.retro-toggle{display:none}.drawer-retro-toggle{display:block;width:100%;text-align:left;background:none;border:none;border-bottom:1px solid var(--color-border);padding:var(--spacing-md) var(--spacing-lg);font-size:1rem;color:var(--color-text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.drawer-retro-toggle:hover{background:var(--color-surface-elevated)}.drawer-retro-toggle.retro-active{color:var(--color-primary)}.burger-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;transition:background var(--transition-fast)}.burger-btn:hover{background:var(--color-surface-elevated)}.mobile-drawer{position:fixed;top:64px;right:-280px;width:280px;height:calc(100vh - 64px);background:var(--color-surface);border-left:1px solid var(--color-border);display:flex;flex-direction:column;padding:var(--spacing-md) 0;z-index:101;transition:right var(--transition-normal);overflow-y:auto}.mobile-drawer.open{right:0}.mobile-drawer .nav-link{display:block;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);font-size:1rem}.mobile-drawer .nav-link:hover{background:var(--color-surface-elevated)}.mobile-drawer .user-menu{margin-top:auto;padding:var(--spacing-lg);border-top:1px solid var(--color-border)}.mobile-drawer .user-name{display:inline}.drawer-backdrop{position:fixed;inset:64px 0 0;background:#00000080;z-index:100;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}}.game-card{background:var(--color-surface);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border);transition:transform var(--transition-fast),box-shadow var(--transition-fast);display:flex;flex-direction:column}.game-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.game-card-link{text-decoration:none;color:inherit;display:block}.game-card-cover{aspect-ratio:3 / 4;background:var(--color-surface-elevated);overflow:hidden;position:relative}.game-card-score{position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);padding:2px 6px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:700;line-height:1.2;color:#fff}.score-green{background:#16a34a}.score-yellow{background:#ca8a04}.score-red{background:#dc2626}.game-card-completed{position:absolute;top:var(--spacing-xs);left:var(--spacing-xs);padding:2px 6px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:700;line-height:1.2;color:#fff;background:#16a34a}.game-card-image{width:100%;height:100%;object-fit:contain}.game-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;background:linear-gradient(135deg,var(--color-surface),var(--color-surface-elevated))}.game-card-info{padding:var(--spacing-md)}.game-card-title{font-size:1rem;font-weight:600;margin:0 0 var(--spacing-xs) 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-card-year{font-size:.875rem;color:var(--color-text-muted)}.game-card-playtime{display:block;font-size:.875rem;color:var(--color-primary);margin-top:var(--spacing-xs)}.game-card-actions{padding:0 var(--spacing-md) var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:auto}.game-card-actions .btn{flex:1;white-space:normal;word-break:break-word}.search-input-container{position:relative;display:flex;align-items:center}.search-input{width:100%;padding:var(--spacing-md) var(--spacing-xl);font-size:1rem;border:2px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.search-input-spinner{position:absolute;right:var(--spacing-md);width:20px;height:20px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.search-input-clear{position:absolute;right:var(--spacing-md);background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:var(--spacing-xs);font-size:.875rem;transition:color var(--transition-fast)}.search-input-clear:hover{color:var(--color-text)}.empty-state{text-align:center;padding:var(--spacing-xxl);max-width:400px;margin:0 auto}.empty-state-icon{font-size:4rem;display:block;margin-bottom:var(--spacing-lg)}.empty-state-title{font-size:1.25rem;font-weight:600;margin:0 0 var(--spacing-sm) 0;color:var(--color-text)}.empty-state-description{color:var(--color-text-secondary);margin:0 0 var(--spacing-lg) 0}.empty-state-action{margin-top:var(--spacing-lg)}.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl)}.error-boundary-content{text-align:center;max-width:500px}.error-boundary-icon{font-size:4rem;display:block;margin-bottom:var(--spacing-lg)}.error-boundary-content h1{margin:0 0 var(--spacing-sm) 0}.error-boundary-content p{color:var(--color-text-secondary);margin:0 0 var(--spacing-lg) 0}.error-boundary-details{background:var(--color-surface);padding:var(--spacing-md);border-radius:var(--radius-md);font-size:.875rem;overflow-x:auto;margin-bottom:var(--spacing-lg);color:var(--color-danger)}.theme-toggle{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);font-size:1.2rem;padding:0;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.theme-toggle:hover{background:var(--color-border);transform:scale(1.1)}.theme-toggle:active{transform:scale(.95)}.steam-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:1.5rem;overflow:hidden}.steam-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:1rem 1.5rem;background:none;border:none;cursor:pointer;color:inherit;text-align:left;transition:background-color .2s}.steam-header:hover{background:var(--surface-hover)}.steam-header-left{display:flex;align-items:center;gap:.75rem}.steam-section h3{margin:0;font-size:1.125rem;color:var(--text-primary)}.steam-header-status{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;padding:.125rem .5rem;border-radius:4px}.steam-header-linked{color:var(--success);background:color-mix(in srgb,var(--success) 12%,transparent)}.steam-header-not-linked{color:var(--text-muted);background:var(--surface-hover)}.steam-status-icon{font-size:.875rem}.steam-chevron{font-size:.75rem;color:var(--text-muted);transition:transform .25s ease}.steam-chevron.open{transform:rotate(180deg)}.steam-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease}.steam-body.open{grid-template-rows:1fr}.steam-body-inner{overflow:hidden}.steam-body-content{padding:0 1.5rem 1.5rem}.steam-linked{display:flex;flex-direction:column;gap:1rem}.steam-id{font-family:monospace;font-size:.875rem;color:var(--text-muted);margin-left:.5rem}.import-warning{font-size:.875rem;color:var(--warning, #b45309);background:var(--warning-bg, #fef3c7);border:1px solid var(--warning-border, #fde68a);border-radius:6px;padding:.75rem 1rem;margin:.5rem 0}.import-warning a{color:inherit;font-weight:600}.steam-note{font-size:.875rem;color:var(--text-muted);margin:0 0 .5rem}.steam-actions{display:flex;gap:.75rem;flex-wrap:wrap}.steam-not-linked p{color:var(--text-secondary);margin:0 0 1rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;border:none;transition:all .2s ease}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary{background:var(--surface-hover);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--border)}.btn-steam{background:#1b2838;color:#fff}.btn-steam:hover:not(:disabled){background:#2a475e}.steam-icon{flex-shrink:0}.import-options{display:flex;flex-direction:column;gap:1rem}.import-options p{color:var(--text-secondary);line-height:1.5}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.75rem;background:var(--surface-hover);border-radius:8px}.checkbox-label input[type=checkbox]{width:1.25rem;height:1.25rem;accent-color:var(--primary)}.import-note{font-size:.875rem;color:var(--text-muted);font-style:italic}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.import-results{display:flex;flex-direction:column;gap:1.5rem}.import-summary h4{margin:0 0 1rem;color:var(--text-primary)}.import-stats{display:flex;gap:1rem;flex-wrap:wrap}.stat{display:flex;flex-direction:column;align-items:center;padding:.75rem 1rem;background:var(--surface-hover);border-radius:8px;min-width:80px}.stat-value{font-size:1.5rem;font-weight:600;color:var(--text-primary)}.stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase}.stat-success .stat-value{color:var(--success)}.stat-updated .stat-value{color:var(--info, #3b82f6)}.stat-skipped .stat-value{color:var(--warning)}.stat-failed .stat-value{color:var(--error)}.import-list{max-height:200px;overflow-y:auto}.import-list h5{margin:0 0 .5rem;font-size:.875rem;color:var(--text-secondary)}.import-list ul{list-style:none;padding:0;margin:0}.import-list li{display:flex;align-items:center;gap:.5rem;padding:.375rem 0;font-size:.875rem;color:var(--text-primary);border-bottom:1px solid var(--border)}.import-list li:last-child{border-bottom:none}.import-list li.more{color:var(--text-muted);font-style:italic}.badge{font-size:.625rem;padding:.125rem .375rem;border-radius:4px;text-transform:uppercase;font-weight:600}.badge-igdb{background:var(--primary);color:#fff}.playtime,.reason{margin-left:auto;color:var(--text-muted);font-size:.75rem}.import-list-skipped{opacity:.8}@media(max-width:565px){.steam-header-left{flex-direction:column;align-items:flex-start;gap:.25rem}}@media(max-width:974px){.steam-actions .btn{width:100%}}.friend-btn{font-size:.875rem}.friend-btn-group{display:flex;align-items:center;gap:var(--spacing-sm)}.friend-label{color:var(--color-text-secondary);font-weight:600;font-size:.875rem;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.friend-remove-btn{font-size:.75rem}.poll-section{margin-bottom:var(--spacing-xl)}.poll-accordion-header{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:none;padding:0;cursor:pointer;color:var(--color-text);text-align:left;margin-bottom:var(--spacing-lg)}.poll-accordion-header h2{margin:0}.poll-accordion-meta{display:flex;align-items:center;gap:var(--spacing-md)}.poll-accordion-chevron{font-size:.75rem;color:var(--color-text-muted)}.daily-poll-loading{display:flex;justify-content:center;padding:var(--spacing-xl)}.poll-category{color:var(--color-text-secondary);font-size:1rem;margin:calc(-1 * var(--spacing-sm)) 0 var(--spacing-lg) 0;font-style:italic}.poll-vote-count{font-size:.85rem;color:var(--color-text-muted)}.poll-options{display:flex;flex-direction:column;gap:var(--spacing-sm)}.poll-option{position:relative;overflow:hidden;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0;cursor:pointer;text-align:left;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}.poll-option:not(:disabled):hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.poll-option--selected{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,var(--color-surface))}.poll-option--voted{cursor:default}.poll-option:disabled{cursor:default}.poll-option-inner{position:relative;z-index:1;display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.poll-option-cover{width:40px;height:56px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.poll-option-cover--placeholder{display:flex;align-items:center;justify-content:center;background:var(--color-surface-elevated, var(--color-surface));border:1px solid var(--color-border);font-size:1.4rem}.poll-option-name{flex:1;font-weight:500;font-size:.95rem;color:var(--color-text)}.poll-option-pct{font-size:.85rem;font-weight:600;color:var(--color-primary);min-width:3.5ch;text-align:right}.poll-option-bar{position:absolute;inset-block:0;left:0;background:color-mix(in srgb,var(--color-primary) 14%,transparent);border-radius:var(--radius-md);transition:width .6s ease;z-index:0}.poll-option--selected .poll-option-bar{background:color-mix(in srgb,var(--color-primary) 22%,transparent)}.poll-total-votes{font-size:.8rem;color:var(--color-text-muted);margin:var(--spacing-sm) 0 0 0;text-align:right}.poll-previous{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.poll-previous-header{margin-bottom:0}.poll-previous-title{font-size:.9rem;color:var(--color-text-secondary);font-weight:500}.poll-previous-category{margin-top:var(--spacing-md);font-size:.9rem}.quiz-section{margin-bottom:var(--spacing-xl)}.daily-quiz-loading{display:flex;justify-content:center;padding:var(--spacing-xl)}.quiz-widget{display:flex;flex-direction:column;gap:var(--spacing-md)}.quiz-date-label{font-size:.8rem;color:var(--color-text-muted);margin:0}.quiz-question{color:var(--color-text-secondary);font-size:1rem;font-style:italic;margin:0}.quiz-option-icon{font-size:.9rem;font-weight:700;flex-shrink:0}.quiz-option-icon--correct{color:var(--color-success, #22c55e)}.quiz-option-icon--wrong{color:var(--color-error, #ef4444)}.quiz-options{display:flex;flex-direction:column;gap:var(--spacing-sm)}.quiz-options--tf{flex-direction:row;gap:var(--spacing-md)}@media(max-width:480px){.quiz-options--tf{flex-direction:column}}.quiz-option{position:relative;overflow:hidden;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0;cursor:pointer;text-align:left;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}.quiz-option:not(:disabled):hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.quiz-option:disabled{cursor:default}.quiz-option--tf{flex:1;text-align:center}.quiz-option--tf .quiz-option-inner{justify-content:center;padding:var(--spacing-md)}.quiz-option--result{cursor:default}.quiz-option--correct{border-color:var(--color-success, #22c55e);background:color-mix(in srgb,var(--color-success, #22c55e) 8%,var(--color-surface))}.quiz-option--wrong{border-color:var(--color-error, #ef4444);background:color-mix(in srgb,var(--color-error, #ef4444) 8%,var(--color-surface))}.quiz-option--selected.quiz-option--correct{background:color-mix(in srgb,var(--color-success, #22c55e) 14%,var(--color-surface))}.quiz-option--selected.quiz-option--wrong{background:color-mix(in srgb,var(--color-error, #ef4444) 14%,var(--color-surface))}.quiz-option-inner{position:relative;z-index:1;display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.quiz-option:not(.quiz-option--tf) .quiz-option-inner:has(.quiz-option-name:only-child){justify-content:center;padding:var(--spacing-md)}.quiz-option-cover{width:40px;height:56px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.quiz-option-cover--placeholder{display:flex;align-items:center;justify-content:center;background:var(--color-surface-elevated, var(--color-surface));border:1px solid var(--color-border);font-size:1.4rem}.quiz-option-name{flex:1;font-weight:500;font-size:.95rem;color:var(--color-text)}.quiz-option-pct{font-size:.85rem;font-weight:600;color:var(--color-primary);min-width:3.5ch;text-align:right}.quiz-option-bar{position:absolute;inset-block:0;left:0;background:color-mix(in srgb,var(--color-primary) 14%,transparent);border-radius:var(--radius-md);transition:width .6s ease;z-index:0}.quiz-option--correct .quiz-option-bar{background:color-mix(in srgb,var(--color-success, #22c55e) 18%,transparent)}.quiz-option--wrong .quiz-option-bar{background:color-mix(in srgb,var(--color-error, #ef4444) 18%,transparent)}.quiz-total-answers{font-size:.8rem;color:var(--color-text-muted);margin:var(--spacing-sm) 0 0 0;text-align:right}.lb-avatar-link{display:flex;flex-shrink:0}.lb-widget-section{margin-bottom:var(--spacing-xl)}.lb-accordion-header{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:none;padding:0;cursor:pointer;color:var(--color-text);text-align:left;margin-bottom:var(--spacing-lg)}.lb-accordion-header h2{margin:0;white-space:nowrap}.lb-accordion-meta{display:flex;align-items:center;gap:var(--spacing-md);flex-shrink:0}.lb-chevron{font-size:.75rem;color:var(--color-text-muted)}.lb-tabs{display:flex;gap:2px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:2px}.lb-tab{padding:4px 12px;font-size:.8rem;font-weight:500;background:none;border:none;border-radius:calc(var(--radius-md) - 2px);cursor:pointer;color:var(--color-text-secondary);transition:background var(--transition-fast),color var(--transition-fast);white-space:nowrap}.lb-tab--active{background:var(--color-primary);color:#fff}.lb-loading{display:flex;justify-content:center;padding:var(--spacing-xl)}.lb-empty{color:var(--color-text-secondary);font-size:.9rem;text-align:center;padding:var(--spacing-lg) 0;margin:0}.lb-list{display:flex;flex-direction:column;gap:2px}.lb-row{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);transition:background var(--transition-fast)}.lb-row:hover{background:var(--color-surface)}.lb-row--me{background:color-mix(in srgb,var(--color-primary) 8%,var(--color-surface))}.lb-row--me:hover{background:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface))}.lb-rank{font-size:.85rem;font-weight:600;color:var(--color-text-muted);min-width:2.5rem;text-align:right;flex-shrink:0}.lb-rank--gold{color:#d4a017}.lb-rank--silver{color:#8a8a8a}.lb-rank--bronze{color:sienna}.lb-name{flex:1;font-size:.95rem;display:flex;align-items:center;gap:var(--spacing-sm);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-name-link{color:var(--color-text);text-decoration:none;overflow:hidden;text-overflow:ellipsis;min-width:0}.lb-name-link:hover{color:var(--color-primary);text-decoration:underline}.lb-you-badge{font-size:.7rem;font-weight:600;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 15%,transparent);padding:1px 6px;border-radius:var(--radius-sm);flex-shrink:0}.lb-level{font-size:.78rem;font-weight:600;color:var(--color-text-secondary);background:var(--color-surface);border:1px solid var(--color-border);padding:2px 6px;border-radius:var(--radius-sm);flex-shrink:0}.lb-xp{font-size:.85rem;font-weight:600;color:var(--color-text-secondary);min-width:6rem;text-align:right;flex-shrink:0}.lb-ellipsis{text-align:center;color:var(--color-text-muted);font-size:1.1rem;letter-spacing:4px;padding:var(--spacing-xs) 0}.lb-footer{margin-top:var(--spacing-md);text-align:right}.lb-view-all{font-size:.85rem;color:var(--color-primary);text-decoration:none}.lb-view-all:hover{text-decoration:underline}@media(max-width:580px){.lb-accordion-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.lb-accordion-meta{width:100%;justify-content:space-between}}.af-avatar-link{display:flex;flex-shrink:0}.af-section{margin-bottom:var(--spacing-xl)}.af-loading{display:flex;justify-content:center;padding:var(--spacing-xl)}.af-empty{color:var(--color-text-secondary);font-size:.9rem;text-align:center;padding:var(--spacing-lg) 0;margin:0}.af-list{display:flex;flex-direction:column;gap:2px}.af-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);transition:background var(--transition-fast)}.af-item:hover{background:var(--color-surface)}.af-cover-link{flex-shrink:0;display:block}.af-cover{width:36px;height:48px;object-fit:cover;border-radius:var(--radius-sm);display:block}.af-cover-placeholder{width:36px;height:48px;border-radius:var(--radius-sm);background:var(--color-surface);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}.af-content{flex:1;min-width:0}.af-text{margin:0 0 2px;font-size:.9rem;line-height:1.4;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.af-link{color:var(--color-primary);text-decoration:none;font-weight:500}.af-link:hover{text-decoration:underline}.af-time{font-size:.78rem;color:var(--color-text-muted)}.af-show-more{display:block;margin:var(--spacing-md) auto 0;background:none;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);font-size:.85rem;color:var(--color-text-secondary);cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast)}.af-show-more:hover{border-color:var(--color-primary);color:var(--color-primary)}.retroarch-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:1.5rem;overflow:hidden}.retroarch-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:1rem 1.5rem;background:none;border:none;cursor:pointer;color:inherit;text-align:left;transition:background-color .2s}.retroarch-header:hover{background:var(--surface-hover)}.retroarch-header-left{display:flex;align-items:center;gap:.75rem}.retroarch-section h3{margin:0;font-size:1.125rem;color:var(--text-primary)}.retroarch-header-badge{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.125rem .5rem;border-radius:4px;background:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary)}.retroarch-chevron{font-size:.75rem;color:var(--text-muted);transition:transform .25s ease}.retroarch-chevron.open{transform:rotate(180deg)}.retroarch-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease}.retroarch-body.open{grid-template-rows:1fr}.retroarch-body-inner{overflow:hidden}.retroarch-body-content{padding:0 1.5rem 1.5rem}.retroarch-desc{font-size:.875rem;color:var(--text-secondary);margin:0 0 1rem;line-height:1.5}.retroarch-desc code{font-family:monospace;background:var(--surface-hover);padding:.125rem .375rem;border-radius:4px;font-size:.8125rem}.retroarch-actions{display:flex;gap:.75rem;flex-wrap:wrap}.retroarch-unsupported{font-size:.875rem;color:var(--text-muted);background:var(--surface-hover);border-radius:8px;padding:.75rem 1rem;margin:0}.retroarch-error{font-size:.875rem;color:var(--error, #dc2626);margin:.75rem 0 0}.retroarch-warning{font-size:.875rem;color:var(--warning, #b45309);background:var(--warning-bg, #fef3c7);border:1px solid var(--warning-border, #fde68a);border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem;line-height:1.5}.retroarch-stats{display:flex;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.retroarch-matched-section,.retroarch-unmatched-section{margin-bottom:1.25rem}.retroarch-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.retroarch-list-header h5,.retroarch-unmatched-section h5{margin:0 0 .5rem;font-size:.875rem;color:var(--text-secondary)}.retroarch-select-controls{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--text-muted)}.btn-link{background:none;border:none;cursor:pointer;color:var(--primary);font-size:.8125rem;padding:0;text-decoration:underline;text-underline-offset:2px}.btn-link:hover{opacity:.8}.retroarch-game-list{list-style:none;padding:0;margin:0;max-height:280px;overflow-y:auto;border:1px solid var(--color-border);border-radius:8px}.retroarch-game-item{border-bottom:1px solid var(--color-border)}.retroarch-game-item:last-child{border-bottom:none}.retroarch-game-label{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;cursor:pointer;transition:background .15s}.retroarch-game-label:hover{background:var(--surface-hover)}.retroarch-game-label input[type=checkbox]{flex-shrink:0;width:1rem;height:1rem;accent-color:var(--primary)}.retroarch-cover{width:32px;height:42px;object-fit:cover;border-radius:3px;flex-shrink:0}.retroarch-game-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.retroarch-game-name{font-size:.875rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.retroarch-input-name{font-size:.75rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.retroarch-platform{font-size:.75rem;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.retroarch-unmatched-list{list-style:none;padding:0;margin:0;max-height:140px;overflow-y:auto;border:1px solid var(--color-border);border-radius:8px;opacity:.7}.retroarch-unmatched-list li{display:flex;align-items:center;justify-content:space-between;padding:.375rem .75rem;font-size:.8125rem;color:var(--text-secondary);border-bottom:1px solid var(--color-border)}.retroarch-unmatched-list li:last-child{border-bottom:none}.retroarch-more{color:var(--text-muted)!important;font-style:italic}.retroarch-done{display:flex;flex-direction:column;gap:1rem}.retroarch-done-msg{font-size:1rem;color:var(--text-primary);margin:0}@media(max-width:565px){.retroarch-header-left{flex-direction:column;align-items:flex-start;gap:.25rem}}.game-passwords{border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.game-passwords-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--card-bg);border:none;cursor:pointer;color:var(--text-primary);font-size:.95rem;font-weight:500;transition:background .15s}.game-passwords-toggle:hover{background:var(--hover-bg)}.game-passwords-toggle-chevron{font-size:.75rem;color:var(--text-secondary)}.game-passwords-body{padding:1rem;border-top:1px solid var(--border-color);background:var(--bg-secondary);display:flex;flex-direction:column;gap:.75rem}.game-passwords-empty{color:var(--text-secondary);font-size:.9rem;margin:0}.game-passwords-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.game-password-item{display:flex;flex-direction:column;gap:.25rem;padding:.6rem .75rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px}.game-password-main{display:flex;align-items:center;gap:.5rem}.game-password-text{flex:1;font-family:monospace;font-size:.95rem;color:var(--text-primary);word-break:break-all}.game-password-delete{color:var(--text-secondary);padding:.2rem .5rem}.game-password-delete:hover{color:var(--danger-color, #e53e3e)}.game-password-label{font-size:.8rem;font-weight:500;color:var(--text-secondary)}.game-password-notes{font-size:.8rem;color:var(--text-secondary);font-style:italic}.game-password-form{display:flex;flex-direction:column;gap:.5rem}.game-password-input{width:100%;padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:6px;background:var(--input-bg, var(--card-bg));color:var(--text-primary);font-size:.9rem;box-sizing:border-box}.game-password-input:focus{outline:none;border-color:var(--accent-color)}.game-password-form-actions{display:flex;gap:.5rem}.game-passwords-tabs{display:flex;border-bottom:1px solid var(--border-color);margin-bottom:.75rem}.game-passwords-tab{padding:.5rem 1rem;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:.875rem;color:var(--text-secondary);margin-bottom:-1px;transition:color .15s,border-color .15s}.game-passwords-tab:hover{color:var(--text-primary)}.game-passwords-tab.active{color:var(--text-primary);border-bottom-color:var(--accent-color, #4a9eff);font-weight:500}.game-passwords-tab-content{display:flex;flex-direction:column;gap:.75rem}.game-password-public-toggle{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary);cursor:pointer}.game-password-public-toggle input{width:auto;cursor:pointer}.game-password-badge{font-size:.7rem;font-weight:600;padding:.1rem .4rem;border-radius:4px;background:var(--accent-color, #4a9eff);color:#fff;text-transform:uppercase;letter-spacing:.03em}.game-password-submitter{font-size:.8rem;color:var(--text-secondary)}.indie-spotlight{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:linear-gradient(135deg,var(--color-surface) 0%,var(--color-surface-elevated) 100%);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.indie-spotlight-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--spacing-lg)}.indie-spotlight-title{font-size:1.25rem;font-weight:700;margin:0 0 var(--spacing-xs) 0}.indie-spotlight-subtitle{font-size:.875rem;color:var(--color-text-secondary);margin:0}.indie-spotlight-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--spacing-md)}@media(max-width:480px){.indie-spotlight-grid{grid-template-columns:repeat(2,1fr)}}.twitch-streams{margin-top:2rem}.twitch-streams-title{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.twitch-live-dot{width:10px;height:10px;border-radius:50%;background:#ef4444;animation:pulse 2s infinite;flex-shrink:0}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.twitch-embed-wrapper{margin-bottom:1rem;border-radius:8px;overflow:hidden;background:#000}.twitch-embed{width:100%;aspect-ratio:16 / 9;border:none;display:block}.twitch-embed-close{display:block;width:100%;padding:.5rem;background:var(--bg-secondary);border:none;border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:background .15s}.twitch-embed-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.twitch-stream-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.twitch-stream-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden;cursor:pointer;text-align:left;padding:0;transition:border-color .15s,transform .15s;width:100%}.twitch-stream-card:hover{border-color:#9147ff;transform:translateY(-2px)}.twitch-stream-card.active{border-color:#9147ff;box-shadow:0 0 0 2px #9147ff4d}.twitch-thumbnail-wrapper{position:relative;width:100%;aspect-ratio:16 / 9;background:#000}.twitch-thumbnail{width:100%;height:100%;object-fit:cover;display:block}.twitch-viewer-count{position:absolute;bottom:.35rem;left:.35rem;background:#000000bf;color:#fff;font-size:.72rem;font-weight:600;padding:.15rem .4rem;border-radius:4px}.twitch-stream-info{padding:.5rem .6rem;display:flex;flex-direction:column;gap:.2rem}.twitch-stream-user{font-size:.85rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.twitch-stream-title{font-size:.78rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.twitch-section{border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--spacing-lg)}.twitch-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-surface);border:none;cursor:pointer;text-align:left}.twitch-header:hover{background:var(--color-surface-hover)}.twitch-header-left{display:flex;align-items:center;gap:var(--spacing-md)}.twitch-header h3{margin:0;font-size:1rem}.twitch-header-status{font-size:.8rem;padding:2px 8px;border-radius:var(--radius-sm)}.twitch-header-linked{background:rgba(var(--color-success-rgb, 34, 197, 94),.15);color:var(--color-success, #22c55e)}.twitch-header-not-linked{background:var(--color-surface-secondary);color:var(--color-text-muted)}.twitch-status-icon{margin-right:4px}.twitch-chevron{font-size:.85rem;color:var(--color-text-muted);transition:transform var(--transition-fast)}.twitch-chevron.open{transform:rotate(180deg)}.twitch-body{max-height:0;overflow:hidden;transition:max-height .3s ease}.twitch-body.open{max-height:300px}.twitch-body-inner{padding:var(--spacing-lg);border-top:1px solid var(--color-border);background:var(--color-background)}.twitch-linked p,.twitch-not-linked p{margin:0 0 var(--spacing-md) 0;color:var(--color-text-secondary);font-size:.9rem}.twitch-actions{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.btn-twitch{display:inline-flex;align-items:center;gap:var(--spacing-sm);background:#9147ff;color:#fff;border:none;padding:var(--spacing-sm) var(--spacing-lg);font-size:.9rem;font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}@media(max-width:565px){.twitch-header-left{flex-direction:column;align-items:flex-start;gap:.25rem}}@media(max-width:974px){.twitch-actions .btn{width:100%}}.landing-page{max-width:900px;margin:0 auto}.hero{text-align:center;padding:var(--spacing-xxl) 0}.hero-title{font-size:clamp(2rem,5vw,3.5rem);font-weight:800;line-height:1.2;margin:0 0 var(--spacing-lg) 0}.hero-title-accent{display:block;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.25rem;color:var(--color-text-secondary);max-width:600px;margin:0 auto var(--spacing-xl) auto;line-height:1.6}.hero-actions{display:flex;justify-content:center;gap:var(--spacing-md)}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);padding:var(--spacing-xl) 0}.feature-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.feature-icon{font-size:3rem;display:block;margin-bottom:var(--spacing-md)}.feature-title{margin:0 0 var(--spacing-sm) 0;font-size:1.25rem}.feature-description{margin:0;color:var(--color-text-secondary);line-height:1.6}.login-page{min-height:calc(100vh - 200px);display:flex;align-items:center;justify-content:center;text-align:center}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xxl);max-width:400px;width:100%}.login-header{margin-bottom:var(--spacing-xl)}.login-icon{font-size:4rem;display:block;margin-bottom:var(--spacing-md)}.login-title{font-size:1.5rem;margin:0 0 var(--spacing-sm) 0}.login-subtitle{color:var(--color-text-secondary);margin:0}.btn-google{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);background:#fff;color:#333;border:1px solid #ddd;padding:var(--spacing-md) var(--spacing-lg);font-size:1rem;font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast),box-shadow var(--transition-fast)}.btn-google:hover{background:#f5f5f5;box-shadow:var(--shadow-md)}.google-icon{width:20px;height:20px}.login-divider{text-align:center;color:var(--color-text-muted);font-size:.85rem;margin:var(--spacing-md) 0}.btn-twitch{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);background:#9147ff;color:#fff;border:none;padding:var(--spacing-md) var(--spacing-lg);font-size:1rem;font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.btn-twitch:hover{background:#7c2fe8}.btn-steam{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);background:#1b2838;color:#fff;border:none;padding:var(--spacing-md) var(--spacing-lg);font-size:1rem;font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);margin-bottom:var(--spacing-sm)}.btn-steam:hover{background:#2a475e}.login-disclaimer{margin-top:var(--spacing-lg);font-size:.75rem;color:var(--color-text-muted)}.collection-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);text-align:center;display:flex;flex-direction:column;gap:var(--spacing-xs)}.stat-card-link{text-decoration:none;transition:border-color .15s,box-shadow .15s}.stat-card-link:hover{border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 15%,transparent)}.stat-value{font-size:1.5rem;font-weight:700;color:var(--color-primary)}.stat-label{font-size:.875rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}@media(max-width:640px){.collection-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:400px){.collection-stats{grid-template-columns:1fr}}.collection-filters{margin-bottom:1.5rem}.filters-row{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.search-wrapper{position:relative;flex:1;min-width:200px;max-width:400px}.search-input{width:100%;padding:.625rem 2rem .625rem .875rem;font-size:.9375rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);color:var(--color-text);transition:border-color .2s,box-shadow .2s}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-alpha)}.search-input::placeholder{color:var(--color-text-muted)}.search-clear{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:.25rem;font-size:1rem;line-height:1;border-radius:4px}.search-clear:hover{color:var(--color-text);background:var(--color-surface-elevated)}.filters-toggle{display:none}.filter-controls{display:flex;gap:1rem;flex-wrap:wrap}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-size:.875rem;color:var(--color-text-muted);white-space:nowrap}.filter-select{padding:.5rem 2rem .5rem .75rem;font-size:.875rem;border:1px solid var(--color-border);border-radius:6px;background-color:var(--color-surface);color:var(--color-text);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}.filter-select:focus{outline:none;border-color:var(--color-primary)}.filter-results{margin-top:.75rem;font-size:.875rem;color:var(--color-text-muted)}.mobile-sort-row,.filters-panel{display:none}@media(max-width:640px){.filters-row{flex-direction:row;align-items:center;flex-wrap:nowrap}.search-wrapper{max-width:none;min-width:0}.filter-controls{display:none}.mobile-sort-row{display:flex;align-items:center;gap:.5rem;margin-top:.75rem}.mobile-sort-row .filter-select{flex:1}.filters-toggle{display:flex;align-items:center;justify-content:center;gap:.375rem;width:100%;margin-top:.75rem;padding:.625rem .875rem;font-size:.9375rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);color:var(--color-text);cursor:pointer;white-space:nowrap;transition:border-color .2s,background-color .2s}.filters-toggle:hover{background:var(--color-surface-elevated)}.filters-toggle-icon{font-size:.75rem;transition:transform .2s}.filters-toggle-icon.open{transform:rotate(180deg)}.filters-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s ease}.filters-panel.open{grid-template-rows:1fr}.filters-panel-grid{overflow:hidden;display:grid;grid-template-columns:1fr 1fr 1fr;gap:.75rem}.filters-panel.open .filters-panel-grid{padding-top:.75rem}.filters-panel .filter-group{flex-direction:column;align-items:stretch;gap:.25rem}.filters-panel .filter-select{width:100%}}.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--spacing-lg)}@media(max-width:480px){.game-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}}.suggest-modal{display:flex;flex-direction:column;gap:var(--spacing-md)}.suggest-search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font-size:.95rem}.suggest-results{list-style:none;padding:0;margin:0;max-height:250px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-md)}.suggest-result-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background var(--transition-fast)}.suggest-result-item:hover{background:var(--color-surface-hover, rgba(255, 255, 255, .05))}.suggest-result-item+.suggest-result-item{border-top:1px solid var(--color-border)}.suggest-result-cover{width:32px;height:42px;object-fit:cover;border-radius:var(--radius-sm)}.suggest-result-name{font-weight:500}.suggest-result-username{color:var(--color-text-secondary);font-size:.85rem}.suggest-selected{padding:var(--spacing-sm);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.suggest-selected-game{display:flex;align-items:center;gap:var(--spacing-sm)}.suggest-selected-cover{width:32px;height:42px;object-fit:cover;border-radius:var(--radius-sm)}.suggest-selected-name{font-weight:500;flex:1}.suggest-selected-username{color:var(--color-text-secondary);font-size:.85rem}.suggest-change-btn{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:.85rem;padding:var(--spacing-xs)}.suggest-change-btn:hover{text-decoration:underline}.suggest-message textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font-family:inherit;font-size:.9rem;resize:vertical}.suggest-send-btn{width:100%}.suggest-empty{color:var(--color-text-secondary);text-align:center;padding:var(--spacing-lg)}.suggestion-card{position:relative;min-width:200px;max-width:200px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.suggestion-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.suggestion-card-link{display:flex;flex-direction:column;text-decoration:none;color:var(--color-text)}.suggestion-cover{width:100%;aspect-ratio:3/4;object-fit:cover}.suggestion-cover-placeholder{width:100%;aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;background:var(--color-bg);font-size:2rem}.suggestion-info{padding:var(--spacing-sm);display:flex;flex-direction:column;gap:2px}.suggestion-game-name{font-weight:600;font-size:.85rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.suggestion-from{font-size:.75rem;color:var(--color-text-secondary)}.suggestion-sender-link{color:var(--color-primary);text-decoration:none}.suggestion-sender-link:hover{text-decoration:underline}.suggestion-message{font-size:.75rem;color:var(--color-text-secondary);font-style:italic;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:2px}.suggestion-dismiss{position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);background:#0009;border:none;color:#fff;width:24px;height:24px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.7rem;opacity:0;transition:opacity var(--transition-fast)}.suggestion-card:hover .suggestion-dismiss{opacity:1}.suggestion-dismiss:hover{background:#000c}.suggestions-scroll{display:flex;gap:var(--spacing-md);overflow-x:auto;padding-bottom:var(--spacing-sm);scrollbar-width:thin}.suggestions-scroll::-webkit-scrollbar{height:6px}.suggestions-scroll::-webkit-scrollbar-track{background:transparent}.suggestions-scroll::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.dashboard-page{max-width:1000px;margin:0 auto}.community-widgets{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.community-widgets .poll-section,.community-widgets .quiz-section{margin-top:0;margin-bottom:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg)}@media(max-width:700px){.community-widgets{grid-template-columns:1fr}}.dashboard-header{margin-bottom:var(--spacing-xl)}.dashboard-header h1{margin:0 0 var(--spacing-xs) 0}.dashboard-subtitle{color:var(--color-text-secondary);margin:0}.dashboard-section{margin-top:var(--spacing-xl)}.section-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.section-header h2{margin:0}.section-description{color:var(--color-text-secondary);margin:calc(-1 * var(--spacing-sm)) 0 var(--spacing-md) 0;font-size:.9rem}.club-dashboard-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--spacing-md)}.club-dashboard-card{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-decoration:none;color:var(--color-text);transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.club-dashboard-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-primary)}.club-dashboard-card-name{font-weight:600;font-size:1rem}.club-dashboard-card-action{font-size:.85rem;font-weight:500;color:var(--color-text-secondary)}.club-action-vote{color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 12%,transparent);padding:2px 8px;border-radius:var(--radius-sm);align-self:flex-start}.club-action-review,.club-action-nominate{color:var(--color-accent, var(--color-primary))}.club-action-view{color:var(--color-text-muted)}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.quick-action-card{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xl);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-decoration:none;color:var(--color-text);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.quick-action-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-primary)}.quick-action-icon{font-size:2rem}.quick-action-label{font-weight:500}.search-page{max-width:1000px;margin:0 auto}.search-header{text-align:center;margin-bottom:var(--spacing-xl)}.search-header h1{margin:0 0 var(--spacing-xs) 0}.search-subtitle{color:var(--color-text-secondary);margin:0}.search-container{max-width:600px;margin:0 auto var(--spacing-xl) auto}.search-results{min-height:300px}.results-count{color:var(--color-text-secondary);margin-bottom:var(--spacing-lg)}.in-collection-badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-success);color:#fff;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.collection-page{max-width:1000px;margin:0 auto}.collection-header{margin-bottom:var(--spacing-xl)}.collection-header-top{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.collection-header-top h1{margin:0 0 var(--spacing-xs) 0}.collection-subtitle{color:var(--color-text-secondary);margin:0}@media(max-width:480px){.collection-header-top{flex-direction:column;align-items:flex-start}.collection-header-top .btn{align-self:flex-start}}.no-results{text-align:center;padding:3rem 1rem;color:var(--color-text-muted)}.no-results p{margin:0 0 1rem;font-size:1.1rem}.play-session-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.duration-inputs{display:flex;gap:var(--spacing-md)}.duration-input{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.duration-label{font-size:.875rem;color:var(--color-text-muted)}.play-session-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.play-session-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.play-session-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.play-session-duration{font-weight:600;color:var(--color-primary)}.play-session-date{font-size:.875rem;color:var(--color-text-muted)}.play-session-delete{background:none;border:none;cursor:pointer;padding:var(--spacing-xs);font-size:1rem;opacity:.6;transition:opacity var(--transition-fast)}.play-session-delete:hover{opacity:1}.play-session-delete:disabled{opacity:.3;cursor:not-allowed}.play-session-empty{color:var(--color-text-muted);text-align:center;padding:var(--spacing-lg)}.club-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.25rem;cursor:pointer;transition:border-color .15s,box-shadow .15s}.club-card:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #00000026}.club-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.club-card-name{margin:0;font-size:1.05rem;font-weight:600;flex:1}.club-badge{font-size:.7rem;font-weight:600;padding:.15rem .5rem;border-radius:9999px;text-transform:uppercase;letter-spacing:.05em}.club-badge-public{background:#d1fae5;color:#065f46}.club-badge-private{background:#fef3c7;color:#92400e}.club-card-description{font-size:.875rem;color:var(--color-text-muted);margin:0 0 .75rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.club-card-meta{display:flex;flex-wrap:wrap;gap:.4rem 1rem;font-size:.8rem;color:var(--color-text-muted);margin-bottom:.75rem}.club-card-round{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;font-size:.8rem;margin-bottom:.75rem}.club-round-game{color:var(--color-text-muted);font-style:italic}.club-join-btn{width:100%;margin-top:.25rem}.club-round-status,.round-status-pill{display:inline-block;padding:.2rem .6rem;border-radius:9999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.club-round-status-nominating,.round-status-pill-nominating{background:#dbeafe;color:#1e40af}.club-round-status-voting,.round-status-pill-voting{background:#ede9fe;color:#5b21b6}.club-round-status-playing,.round-status-pill-playing{background:#d1fae5;color:#065f46}.club-round-status-reviewing,.round-status-pill-reviewing{background:#fef3c7;color:#92400e}.club-round-status-completed,.round-status-pill-completed{background:var(--color-border);color:var(--color-text-muted)}.round-banner{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.25rem;margin-bottom:1.5rem}.round-banner-nominating{border-left:4px solid #3b82f6}.round-banner-voting{border-left:4px solid #8b5cf6}.round-banner-playing{border-left:4px solid #10b981}.round-banner-reviewing{border-left:4px solid #f59e0b}.round-banner-completed{border-left:4px solid var(--color-border)}.round-banner-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.round-banner-title{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.round-banner-round{font-weight:600;font-size:.9rem}.round-banner-deadline{font-size:.8rem;color:var(--color-text-muted);text-decoration:underline}.round-banner-desc{font-size:.875rem;color:var(--color-text-muted);margin:0 0 .75rem}.round-banner-game{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.round-game-cover{width:40px;height:56px;object-fit:cover;border-radius:4px}.round-game-name{font-weight:600}.round-banner-score{font-size:.9rem;margin-bottom:.75rem}.round-banner-actions{display:flex;gap:.75rem;flex-wrap:wrap}.round-banner-already-done{font-size:.875rem;color:var(--color-text-muted);font-style:italic}.nominations-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.nomination-item{display:flex;align-items:center;gap:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.75rem}.nomination-item.nomination-voted{border-color:var(--color-primary)}.nomination-game-info{display:flex;align-items:center;gap:.75rem;flex:1}.nomination-cover{width:36px;height:50px;object-fit:cover;border-radius:3px}.nomination-details{display:flex;flex-direction:column;gap:.15rem}.nomination-game-name{font-weight:600;font-size:.9rem}.nomination-by{font-size:.75rem;color:var(--color-text-muted)}.nomination-vote-area{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.vote-bar-wrap{display:flex;align-items:center;gap:.5rem;min-width:80px}.vote-bar{height:6px;background:var(--color-primary);border-radius:3px;transition:width .3s;min-width:2px}.vote-count{color:var(--color-text-muted);white-space:nowrap}@media(max-width:600px){.nomination-item{flex-direction:column;align-items:flex-start}.nomination-cover{display:none}.nomination-vote-area{width:100%}.vote-bar-wrap{flex:1}}.club-members-list{display:flex;flex-direction:column;gap:.5rem}.club-member-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);gap:.75rem}.club-member-info{display:flex;align-items:center;gap:.5rem}.club-member-name{font-weight:500;font-size:.9rem;color:inherit;text-decoration:none}.club-member-name:hover{text-decoration:underline}.club-member-username{font-size:.8rem;color:var(--color-text-muted)}.club-member-role{font-size:.7rem;font-weight:600;text-transform:uppercase;padding:.1rem .4rem;border-radius:9999px}.club-member-role-owner{background:#fef3c7;color:#92400e}.club-member-role-admin{background:#dbeafe;color:#1e40af}.club-member-role-member{background:var(--color-border);color:var(--color-text-muted)}.club-member-actions{display:flex;align-items:center;gap:.5rem}@media(max-width:600px){.club-member-row{align-items:flex-start;flex-wrap:wrap}.club-member-info{flex-direction:column;align-items:flex-start;gap:.25rem}}.club-confirm-row{display:flex;align-items:center;gap:.5rem;font-size:.8rem}.club-modal-form{display:flex;flex-direction:column;gap:1rem}.club-form-field{display:flex;flex-direction:column;gap:.4rem}.club-form-field label{font-size:.875rem;font-weight:500}.club-form-toggle{flex-direction:column;align-items:flex-start}.club-form-toggle label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.club-form-toggle label input[type=checkbox]{width:1.1rem;height:1.1rem;flex-shrink:0;cursor:pointer}.club-form-error{margin:.25rem 0 0;font-size:.8rem;color:#dc2626}.club-form-hint{font-size:.75rem;color:var(--color-text-muted);margin:.25rem 0 0 1.5rem}.review-score-slider{width:100%;accent-color:var(--color-primary)}.review-score-labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--color-text-muted)}.club-empty-text{font-size:.875rem;color:var(--color-text-muted);font-style:italic}.club-score-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem 1.25rem}.club-score-value{font-size:2rem;font-weight:700;color:var(--color-primary);line-height:1}.club-score-meta{font-size:.8rem;color:var(--color-text-muted);margin-top:.25rem}.invite-banner{background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--radius-md);padding:.875rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.invite-banner-text{font-size:.9rem}.invite-banner-actions{display:flex;gap:.5rem;flex-shrink:0}.btn-sm{padding:.25rem .6rem;font-size:.8rem}.btn-danger{background:#dc2626;color:#fff;border:none}.btn-danger:hover:not(:disabled){background:#b91c1c}.game-club-reviews-section{margin-top:2rem}.game-club-reviews-section h2{font-size:1.1rem;font-weight:600;margin:0 0 1rem}.game-club-reviews-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem 1.25rem;margin-bottom:1rem}.game-club-reviews-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.875rem}.game-club-reviews-name{font-weight:600;font-size:.95rem;color:var(--color-primary);text-decoration:none}.game-club-reviews-name:hover{text-decoration:underline}.game-club-reviews-avg{display:flex;align-items:baseline;gap:.4rem;flex-shrink:0}.game-club-reviews-avg-value{font-size:1.25rem;font-weight:700;color:var(--color-primary)}.game-club-reviews-avg-label{font-size:.8rem;color:var(--color-text-muted)}.game-club-reviews-list{display:flex;flex-direction:column;gap:.25rem}.game-club-review-item{border-radius:var(--radius-sm);overflow:hidden}.game-club-review-row{display:flex;align-items:center;gap:.5rem;width:100%;background:none;border:none;border-radius:var(--radius-sm);padding:.5rem .625rem;text-align:left;cursor:pointer;color:inherit;font-size:.875rem;transition:background .15s}.game-club-review-row:hover:not(.no-comment){background:var(--color-border)}.game-club-review-row.no-comment{cursor:default}.game-club-review-user{flex:1;font-weight:500;color:inherit;text-decoration:none}.game-club-review-user:hover{text-decoration:underline}.game-club-review-score{font-weight:700;font-size:.9rem;color:var(--color-primary);min-width:2rem;text-align:right}.game-club-review-chevron{font-size:.65rem;color:var(--color-text-muted);margin-left:.25rem}.game-club-review-comment{margin:0;padding:.375rem .625rem .625rem;font-size:.85rem;color:var(--color-text-muted);line-height:1.5}.game-club-reviews-load-more{margin-top:.5rem;width:100%}.game-club-reviews-join{margin-top:.75rem;width:100%}.game-detail-page{max-width:900px;margin:0 auto}.back-button{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-sm) 0;font-size:1rem;margin-bottom:var(--spacing-lg);transition:color var(--transition-fast)}.back-button:hover{color:var(--color-primary)}.game-detail-content{display:grid;grid-template-columns:250px 1fr;grid-template-areas:"cover info" "twitch info";gap:var(--spacing-xl)}.game-detail-cover{grid-area:cover;position:sticky;top:80px;align-self:start;z-index:1}.game-external-links{display:flex;flex-direction:column;gap:.4rem;margin-top:.75rem}.game-external-link{font-size:.8rem;color:var(--text-muted);text-decoration:none;text-align:center}.game-external-link:hover{color:var(--accent);text-decoration:underline}.game-detail-twitch{grid-area:twitch;align-self:start}.game-detail-info{grid-area:info}.cover-image{width:100%;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.cover-placeholder{width:100%;aspect-ratio:3 / 4;background:var(--color-surface-elevated);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:4rem}.game-title{margin:0 0 var(--spacing-sm) 0;font-size:2rem}.game-release{color:var(--color-text-secondary);margin:0 0 var(--spacing-lg) 0}.game-critic-score{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);font-weight:600}.critic-score-value{font-size:1.5rem;font-weight:700;color:#fff;background:currentColor;-webkit-background-clip:text}.game-critic-score .critic-score-value{color:inherit}.critic-score-label{font-size:.875rem;opacity:.8}.critic-green{background:#16a34a26;color:#16a34a}.critic-yellow{background:#ca8a0426;color:#ca8a04}.critic-red{background:#dc262626;color:#dc2626}.game-club-score{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:rgba(var(--color-primary-rgb, 99, 102, 241),.08);border:1px solid rgba(var(--color-primary-rgb, 99, 102, 241),.25);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.club-score-value{font-size:1.5rem;font-weight:700;color:var(--color-primary)}.club-score-info{display:flex;flex-direction:column;gap:.1rem}.club-score-label{font-size:.875rem;font-weight:600;color:var(--color-primary)}.club-score-meta{font-size:.75rem;color:var(--color-text-muted)}.game-playtime{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.playtime-icon{font-size:1.5rem}.playtime-value{font-size:1.25rem;font-weight:700;color:var(--color-primary)}.playtime-label{color:var(--color-text-muted)}.game-summary{margin-bottom:var(--spacing-xl)}.game-summary h2{font-size:1.25rem;margin:0 0 var(--spacing-sm) 0}.game-summary p{color:var(--color-text-secondary);line-height:1.7;margin:0}.game-actions{display:flex;gap:var(--spacing-md);flex-wrap:wrap;margin-bottom:var(--spacing-xl)}.sessions-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.sessions-header h2{font-size:1.25rem;margin:0}.not-found{text-align:center;padding:var(--spacing-xxl)}.game-status-section{margin-bottom:var(--spacing-xl);padding:var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.game-status-section h3{margin:0 0 var(--spacing-sm) 0;font-size:1rem;color:var(--color-text-secondary)}.status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;margin-bottom:var(--spacing-md)}.status-backlog{background:var(--color-warning-bg, #fef3c7);color:var(--color-warning, #92400e)}.status-playing{background:var(--color-info-bg, #dbeafe);color:var(--color-info, #1e40af)}.status-completed{background:var(--color-success-bg, #d1fae5);color:var(--color-success, #065f46)}.status-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.btn-success{background:var(--color-success, #10b981);color:#fff}.btn-success:hover{background:var(--color-success-hover, #059669)}.btn-ghost{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-ghost:hover{background:var(--color-surface-elevated);color:var(--color-text)}@media(max-width:768px){.game-detail-content{grid-template-columns:1fr;grid-template-areas:"cover" "info" "twitch"}.game-detail-cover{position:static;max-width:200px;margin:0 auto var(--spacing-lg) auto}}.not-found-page{text-align:center;padding:var(--spacing-xxl);min-height:calc(100vh - 200px);display:flex;flex-direction:column;align-items:center;justify-content:center}.not-found-icon{font-size:6rem;margin-bottom:var(--spacing-lg)}.not-found-page h1{margin:0 0 var(--spacing-sm) 0}.not-found-page p{color:var(--color-text-secondary);margin:0 0 var(--spacing-xl) 0}.profile-page{max-width:1000px;margin:0 auto}.profile-header{margin-bottom:var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-xs)}.profile-identity{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.profile-live-badge{display:inline-flex;align-items:center;gap:6px;background:#9147ff;color:#fff;font-size:.75rem;font-weight:700;letter-spacing:.05em;padding:3px 10px;border-radius:4px;text-decoration:none;transition:background var(--transition-fast)}.profile-live-badge:hover{background:#7c2fe8}.live-dot{width:7px;height:7px;border-radius:50%;background:#ff4040;animation:live-pulse 1.4s ease-in-out infinite;flex-shrink:0}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.4}}.live-viewers{font-weight:400;opacity:.9}.profile-display-name{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.profile-username{color:var(--color-text-muted);font-size:1.1rem}.profile-member-since{color:var(--color-text-secondary);font-size:.875rem}.profile-own-badge{display:inline-block;align-self:flex-start;background:var(--color-primary);color:#fff;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.profile-xp-section{margin-bottom:var(--spacing-lg)}.profile-xp-level{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.profile-xp-level-badge{display:inline-block;padding:2px 10px;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;font-size:.8rem;font-weight:700;border-radius:var(--radius-md)}.profile-xp-level-name{font-weight:600;font-size:1rem}.profile-xp-total{color:var(--color-text-muted);font-size:.875rem;margin-left:auto}.profile-xp-bar-track{height:10px;background:var(--color-border);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--spacing-xs)}.profile-xp-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:var(--radius-sm);transition:width .6s ease}.profile-xp-bar-labels{display:flex;justify-content:space-between;color:var(--color-text-muted);font-size:.75rem}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.profile-section{margin-top:var(--spacing-xl)}.profile-section h2{margin:0 0 var(--spacing-lg) 0}.profile-friends-list{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.profile-friend-card{display:flex;flex-direction:column;gap:2px;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);text-decoration:none;color:inherit;transition:border-color var(--transition-fast)}.profile-friend-card:hover{border-color:var(--color-primary)}.profile-friend-name{font-weight:600;font-size:.875rem}.profile-friend-username{color:var(--color-text-muted);font-size:.75rem}.suggestion-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:var(--spacing-xs) 0}.suggestion-from{color:var(--color-text-muted);font-size:.75rem}.btn-dismiss{font-size:.75rem;padding:var(--spacing-xs) var(--spacing-sm);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.btn-dismiss:hover{border-color:var(--color-danger, #e74c3c);color:var(--color-danger, #e74c3c)}.btn-dismiss:disabled{opacity:.5;cursor:not-allowed}@media(max-width:950px){.profile-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:400px){.profile-stats{grid-template-columns:1fr}}@media(max-width:370px){.profile-xp-level{flex-wrap:wrap}.profile-xp-level-name{order:3;flex-basis:100%;font-size:.875rem}}.player-search,.player-search-input-wrapper{position:relative}.player-search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:.9375rem;transition:border-color var(--transition-fast)}.player-search-input:focus{outline:none;border-color:var(--color-primary)}.player-search-spinner{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:translateY(-50%) rotate(360deg)}}.player-search-results{list-style:none;padding:0;margin:var(--spacing-sm) 0 0 0;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;background:var(--color-surface)}.player-search-result{border-bottom:1px solid var(--color-border)}.player-search-result:last-child{border-bottom:none}.player-search-link{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);text-decoration:none;color:inherit;transition:background var(--transition-fast)}.player-search-link:hover{background:var(--color-surface-hover, rgba(0, 0, 0, .03))}.player-search-info{display:flex;flex-direction:column;gap:2px}.player-search-display-name{font-weight:600;font-size:.9375rem}.player-search-username{color:var(--color-text-muted);font-size:.8125rem}.player-search-games{color:var(--color-text-secondary);font-size:.8125rem;white-space:nowrap}.player-search-empty{padding:var(--spacing-md);text-align:center;color:var(--color-text-muted);font-size:.875rem}.friends-list-loading{padding:var(--spacing-lg);text-align:center;color:var(--color-text-muted)}.friends-section{margin-bottom:var(--spacing-xl)}.friends-section h3{margin:0 0 var(--spacing-md) 0}.friends-subsection{margin-bottom:var(--spacing-md)}.friends-subsection-title{margin:0 0 var(--spacing-sm) 0;font-size:.8125rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.friends-entries{list-style:none;padding:0;margin:0;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.friends-entry{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border)}.friends-entry:last-child{border-bottom:none}.friends-entry-info{display:flex;flex-direction:column;gap:2px;text-decoration:none;color:inherit}.friends-entry-info:hover .friends-entry-name{color:var(--color-primary)}.friends-entry-name{font-weight:600;font-size:.9375rem;transition:color var(--transition-fast)}.friends-entry-username{color:var(--color-text-muted);font-size:.8125rem}.friends-entry-actions{display:flex;gap:var(--spacing-xs)}.friends-entry-pending{color:var(--color-text-muted);font-size:.8125rem;font-style:italic}.friends-entry-since{color:var(--color-text-muted);font-size:.8125rem;white-space:nowrap}.friends-empty{color:var(--color-text-muted);font-size:.875rem}@media(max-width:400px){.friends-entry{flex-wrap:wrap;gap:var(--spacing-sm)}.friends-entry-actions{width:100%}}.friends-page{max-width:800px;margin:0 auto}.friends-page h1{margin:0 0 var(--spacing-xl) 0}.friends-page-search{margin-bottom:var(--spacing-xl)}.friends-page-search h2{margin:0 0 var(--spacing-md) 0}.friends-page-steam{margin-bottom:var(--spacing-xl)}.friends-page-steam h2{margin:0 0 var(--spacing-sm) 0}.steam-suggestions-hint{margin:0 0 var(--spacing-md) 0;color:var(--text-secondary);font-size:.9rem}.steam-suggestions-results{margin-top:var(--spacing-md)}.steam-suggestions-empty{color:var(--text-secondary);font-size:.9rem}.steam-suggestions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.steam-suggestion-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--surface-secondary);border-radius:var(--radius-md)}.steam-suggestion-info{display:flex;flex-direction:column;gap:2px}.steam-suggestion-name{font-weight:500}.steam-suggestion-username{font-size:.85rem;color:var(--text-secondary)}.friends-page-list{margin-top:var(--spacing-lg)}.compare-page{max-width:1000px;margin:0 auto}.compare-header{margin-bottom:var(--spacing-xl)}.compare-header h1{margin:0 0 var(--spacing-xs) 0}.compare-back-link{color:var(--color-text-secondary);text-decoration:none;font-size:.9rem}.compare-back-link:hover{color:var(--color-text-primary)}.compare-summary{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.compare-stat{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);text-align:center;flex:1;min-width:120px}.compare-stat-value{display:block;font-size:1.5rem;font-weight:700;color:var(--color-text-primary)}.compare-stat-label{display:block;font-size:.8rem;color:var(--color-text-secondary);margin-top:2px}.compare-tabs{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-md);flex-wrap:wrap}.compare-tab{padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;font-size:.9rem;transition:all .15s ease}.compare-tab:hover{border-color:var(--color-text-secondary)}.compare-tab.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.compare-search{margin-bottom:var(--spacing-lg)}.compare-search input{width:100%;max-width:400px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);font-size:.9rem}.compare-search input::placeholder{color:var(--color-text-muted)}.clubs-page{max-width:900px;margin:0 auto;padding:2rem 1rem}.clubs-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.clubs-page-header h1{margin:0;font-size:1.75rem;font-weight:700}.clubs-section{margin-bottom:2.5rem}.clubs-section h2{font-size:1.15rem;font-weight:600;margin:0 0 1rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem}.clubs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.clubs-empty{font-size:.9rem;color:var(--color-text-muted);font-style:italic}.clubs-loading{font-size:.9rem;color:var(--color-text-muted)}.invites-list{display:flex;flex-direction:column;gap:.75rem}.club-detail-page{max-width:900px;margin:0 auto;padding:2rem 1rem}.club-detail-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.club-detail-name{font-size:1.75rem;font-weight:700;margin:0 0 .25rem;word-break:break-word}.club-social-links{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.75rem}.club-social-link{display:inline-block;padding:.25rem .75rem;border-radius:999px;font-size:.8rem;font-weight:600;text-decoration:none;transition:opacity .15s;min-width:6.5rem!important;text-align:center}.club-social-link:hover{opacity:.85}.club-social-discord{background:#5865f2;color:#fff}.club-social-whatsapp{background:#25d366;color:#fff}.club-social-reddit{background:#ff4500;color:#fff}.club-social-youtube{background:red;color:#fff}.club-detail-desc{font-size:.9rem;color:var(--color-text-muted);margin:0 0 .5rem}.club-detail-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;font-size:.8rem;color:var(--color-text-muted)}.club-detail-info{flex-grow:1;min-width:0}.club-detail-actions{display:flex;gap:.75rem;flex-wrap:wrap}.club-section{margin-bottom:2.5rem}.club-section h2{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin:0 0 .75rem}.club-section h3{font-size:.9rem;font-weight:600;margin:1.25rem 0 .75rem}.club-nominations-section,.club-reviews-section{margin-top:1rem}.club-reviews-list{display:flex;flex-direction:column;gap:.75rem}.club-review-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.875rem 1rem}.club-review-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}.club-review-author{font-weight:600;font-size:.9rem;color:inherit;text-decoration:none}.club-review-author:hover{text-decoration:underline}.club-review-score{font-weight:700;font-size:1rem;color:var(--color-primary)}.club-review-comment{font-size:.875rem;color:var(--color-text-muted);margin:0}.past-rounds-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.past-round-row{display:flex;align-items:center;justify-content:space-between;padding:.6rem .875rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s}.past-round-row:hover{border-color:var(--color-primary)}.past-round-row.past-round-selected{border-color:var(--color-primary);background:rgba(var(--color-primary-rgb),.04)}.past-round-info{display:flex;align-items:center;gap:.75rem}.past-round-number{font-weight:600;font-size:.875rem}.past-round-game{font-size:.875rem;color:var(--color-text-muted)}.past-round-game-link{font-size:.875rem;color:var(--color-primary);text-decoration:none}.past-round-game-link:hover{text-decoration:underline}.past-round-score{font-weight:700;color:var(--color-primary);font-size:.9rem}.invite-friends-list{min-height:100px}@media(max-width:600px){.past-round-row{flex-wrap:wrap;gap:.4rem}.past-round-info{flex-wrap:wrap}}.inbox-page{display:flex;height:calc(100vh - 144px);gap:0;border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface)}.inbox-sidebar{width:280px;flex-shrink:0;border-right:1px solid var(--color-border);display:flex;flex-direction:column;overflow:hidden}.inbox-sidebar-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between}.inbox-sidebar-header h2{margin:0;font-size:1rem;font-weight:600}.inbox-friend-picker{border-bottom:1px solid var(--color-border);background:var(--color-surface-elevated);padding:var(--spacing-sm) 0}.inbox-friend-picker-label{margin:0 0 var(--spacing-xs) 0;padding:0 var(--spacing-lg);font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.inbox-friend-picker-list{list-style:none;margin:0;padding:0;max-height:200px;overflow-y:auto}.inbox-friend-picker-item{display:flex;flex-direction:column;gap:1px;padding:var(--spacing-sm) var(--spacing-lg);cursor:pointer;transition:background var(--transition-fast)}.inbox-friend-picker-item:hover{background:var(--color-surface)}.inbox-friend-picker-name{font-size:.875rem;font-weight:600;color:var(--color-text)}.inbox-friend-picker-username{font-size:.75rem;color:var(--color-text-muted)}.inbox-friend-picker-empty{margin:0;padding:var(--spacing-sm) var(--spacing-lg);font-size:.875rem;color:var(--color-text-muted)}.inbox-empty-sidebar{padding:var(--spacing-xl) var(--spacing-lg);color:var(--color-text-muted);font-size:.875rem;text-align:center}.conversation-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.conversation-item{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);cursor:pointer;transition:background var(--transition-fast)}.conversation-item:hover{background:var(--color-surface-elevated)}.conversation-item.active{background:var(--color-surface-elevated);border-left:3px solid var(--color-primary)}.conversation-header{display:flex;justify-content:space-between;align-items:baseline;gap:var(--spacing-sm);margin-bottom:2px}.conversation-name{font-weight:600;font-size:.875rem;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-time{font-size:.75rem;color:var(--color-text-muted);flex-shrink:0}.conversation-preview-row{display:flex;align-items:center;gap:var(--spacing-sm)}.conversation-preview{font-size:.8rem;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.conversation-unread-badge{background:var(--color-primary);color:#fff;font-size:.7rem;font-weight:700;border-radius:10px;padding:1px 6px;flex-shrink:0}.inbox-thread{flex:1;display:flex;flex-direction:column;overflow:hidden}.inbox-empty-thread{flex:1;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:.95rem}.inbox-thread-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);font-weight:600}.inbox-thread-friend-link{color:var(--color-text);text-decoration:none;font-size:1rem;font-weight:600}.inbox-thread-friend-link:hover{color:var(--color-primary)}.inbox-messages{flex:1;overflow-y:auto;padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-sm)}.inbox-no-messages{text-align:center;color:var(--color-text-muted);font-size:.875rem;margin:auto}.message-bubble-wrapper{display:flex}.message-bubble-wrapper.mine{justify-content:flex-end}.message-bubble-wrapper.theirs{justify-content:flex-start}.message-bubble{max-width:65%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:2px}.bubble-mine{background:var(--color-primary);color:#fff;border-bottom-right-radius:4px}.bubble-theirs{background:var(--color-surface-elevated);color:var(--color-text);border-bottom-left-radius:4px}.message-content{font-size:.9rem;white-space:pre-wrap;word-break:break-word}.message-time{font-size:.7rem;opacity:.7;align-self:flex-end}.inbox-compose{display:flex;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border);background:var(--color-surface);align-items:flex-end}.inbox-textarea{flex:1;resize:none;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);font-size:.9rem;font-family:inherit;background:var(--color-background);color:var(--color-text);min-height:40px;max-height:120px;overflow-y:auto;line-height:1.4}.inbox-textarea:focus{outline:none;border-color:var(--color-primary)}.inbox-send-btn{flex-shrink:0;height:40px;padding:0 var(--spacing-md)}@media(max-width:640px){.inbox-page{height:calc(100vh - 124px)}.inbox-sidebar{width:100%;border-right:none}.inbox-thread,.inbox-page.thread-active .inbox-sidebar{display:none}.inbox-page.thread-active .inbox-thread{display:flex;width:100%}}.lb-page{max-width:700px;margin:0 auto}.lb-page-header{margin-bottom:var(--spacing-xl)}.lb-page-header h1{margin:0 0 var(--spacing-xs) 0}.lb-page-subtitle{color:var(--color-text-secondary);margin:0}.lb-page-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-sm)}.lb-page-tab{padding:var(--spacing-sm) var(--spacing-lg);font-size:.95rem;font-weight:500;background:none;border:none;border-radius:var(--radius-md);cursor:pointer;color:var(--color-text-secondary);transition:background var(--transition-fast),color var(--transition-fast)}.lb-page-tab:hover{background:var(--color-surface);color:var(--color-text)}.lb-page-tab--active,.lb-page-tab--active:hover{background:var(--color-primary);color:#fff}.lb-page-loading{display:flex;justify-content:center;padding:var(--spacing-xl)}.lb-page-empty{text-align:center;padding:var(--spacing-xl) 0;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg);color:var(--color-text-secondary)}.lb-page-empty-text{text-align:center;color:var(--color-text-secondary);padding:var(--spacing-xl) 0}.lb-page-list{display:flex;flex-direction:column;gap:2px}.lb-page-row{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);transition:background var(--transition-fast)}.lb-page-row:hover{background:var(--color-surface)}.lb-page-row--me{background:color-mix(in srgb,var(--color-primary) 8%,var(--color-surface))}.lb-page-row--me:hover{background:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface))}.lb-page-rank{font-size:.9rem;font-weight:700;color:var(--color-text-muted);min-width:3rem;text-align:right;flex-shrink:0}.lb-page-rank--gold{color:#d4a017}.lb-page-rank--silver{color:#8a8a8a}.lb-page-rank--bronze{color:sienna}.lb-page-name{flex:1;font-size:.95rem;display:flex;align-items:center;gap:var(--spacing-sm);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-page-name-link{color:var(--color-text);text-decoration:none}.lb-page-name-link:hover{color:var(--color-primary);text-decoration:underline}.lb-page-you-badge{font-size:.7rem;font-weight:600;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 15%,transparent);padding:1px 6px;border-radius:var(--radius-sm);flex-shrink:0}.lb-page-level{font-size:.78rem;font-weight:600;color:var(--color-text-secondary);background:var(--color-surface);border:1px solid var(--color-border);padding:2px 7px;border-radius:var(--radius-sm);flex-shrink:0}.lb-page-xp{font-size:.9rem;font-weight:600;color:var(--color-text-secondary);min-width:7rem;text-align:right;flex-shrink:0}.lb-page-ellipsis{text-align:center;color:var(--color-text-muted);font-size:1.1rem;letter-spacing:4px;padding:var(--spacing-sm) 0}.admin-page{max-width:700px;margin:0 auto}.admin-page h1{margin:0 0 var(--spacing-xs) 0}.admin-subtitle{color:var(--color-text-secondary);margin:0 0 var(--spacing-xl) 0}.admin-section{margin-bottom:var(--spacing-xl)}.admin-section h2{font-size:1.1rem;margin:0 0 var(--spacing-md) 0}.admin-empty{color:var(--color-text-muted);font-size:.9rem}.admin-featured-list,.admin-search-results{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.admin-featured-item,.admin-search-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.admin-game-cover{width:36px;height:48px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.admin-game-name{flex:1;font-weight:500;font-size:.95rem}.admin-game-meta{font-size:.8rem;color:var(--color-text-muted);flex-shrink:0}.admin-search-input{width:100%;padding:.6rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:.95rem;margin-bottom:var(--spacing-md);box-sizing:border-box}.admin-search-input:focus{outline:none;border-color:var(--color-primary)}:root{--color-background: #0f0f14;--color-surface: #1a1a24;--color-surface-elevated: #252532;--color-border: #2a2a3a;--color-primary: #6366f1;--color-primary-hover: #5558e3;--color-accent: #a855f7;--color-success: #22c55e;--color-warning: #f59e0b;--color-danger: #ef4444;--color-text: #f5f5f7;--color-text-secondary: #a1a1aa;--color-text-muted: #71717a;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-xxl: 3rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .4);--transition-fast: .15s ease;--transition-normal: .25s ease;--max-width: 1200px}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;background-color:var(--color-background);color:var(--color-text);line-height:1.5;min-height:100vh}img{display:block;max-width:100%}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:700}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-size:1rem;font-weight:500;border-radius:var(--radius-md);border:none;cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast);text-decoration:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface-elevated);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-border)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-warning{background:#d97706;color:#fff}.btn-warning:hover:not(:disabled){background:#b45309}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:.875rem;white-space:nowrap}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:1.125rem}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-label{font-weight:500;font-size:.875rem;color:var(--color-text-secondary)}.form-input{padding:var(--spacing-sm) var(--spacing-md);font-size:1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);transition:border-color var(--transition-fast)}.form-input:focus{outline:none;border-color:var(--color-primary)}.form-input::placeholder{color:var(--color-text-muted)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl);gap:var(--spacing-md)}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.policy-page{max-width:800px;line-height:1.7}.policy-page h1{margin-bottom:var(--spacing-sm)}.policy-page .policy-updated{color:var(--color-text-muted);font-size:.875rem;margin-bottom:var(--spacing-xl)}.policy-page section{margin-bottom:var(--spacing-xl)}.policy-page h2{margin-bottom:var(--spacing-sm)}.policy-page p{margin-bottom:var(--spacing-sm);color:var(--color-text-secondary)}.policy-page ul{padding-left:var(--spacing-lg);margin-bottom:var(--spacing-sm);color:var(--color-text-secondary)}.policy-page li{margin-bottom:var(--spacing-xs)}.policy-page a{color:var(--color-primary)}.policy-page code{background:var(--color-surface-elevated);padding:.1em .4em;border-radius:var(--radius-sm);font-size:.875em}.policy-table{width:100%;border-collapse:collapse;margin-bottom:var(--spacing-md);font-size:.875rem}.policy-table th,.policy-table td{text-align:left;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border)}.policy-table th{background:var(--color-surface-elevated);color:var(--color-text);font-weight:600}.policy-table td{color:var(--color-text-secondary)}@keyframes crt-flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.97}94%{opacity:1}}body[data-retro=true]{font-family:"Press Start 2P",monospace;font-size:8px;line-height:2;animation:crt-flicker 8s infinite}body[data-retro=true] input,body[data-retro=true] button,body[data-retro=true] select,body[data-retro=true] textarea{font-family:"Press Start 2P",monospace}body[data-retro=true] *{min-width:0;overflow-wrap:break-word;word-break:break-word}body[data-retro=true]:after{content:"";position:fixed;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.12) 2px,rgba(0,0,0,.12) 4px);pointer-events:none;z-index:9999}body[data-retro=true] .btn{border:2px solid var(--color-primary);border-radius:0;text-transform:uppercase;letter-spacing:.05em}body[data-retro-style=c64]{text-shadow:0 0 6px rgba(168,168,255,.5)}body[data-retro-style=bbc]{text-shadow:0 0 6px rgba(255,255,0,.35)}body[data-retro-style=spectrum]{text-shadow:0 0 6px rgba(255,255,255,.4)}body[data-retro=true] .btn-sm{padding:3px 6px;font-size:.7rem}body[data-retro-style=bbc] .btn-primary,body[data-retro-style=bbc] .nav-level-badge,body[data-retro-style=bbc] .compare-tab.active,body[data-retro-style=bbc] .conversation-unread-badge,body[data-retro-style=bbc] .bubble-mine,body[data-retro-style=bbc] .lb-page-tab--active,body[data-retro-style=bbc] .lb-page-tab--active:hover,body[data-retro-style=bbc] .lb-tab--active,body[data-retro-style=bbc] .profile-status-badge,body[data-retro-style=bbc] .profile-own-badge,body[data-retro-style=bbc] .profile-xp-level-badge,body[data-retro-style=spectrum] .btn-primary,body[data-retro-style=spectrum] .nav-level-badge,body[data-retro-style=spectrum] .compare-tab.active,body[data-retro-style=spectrum] .conversation-unread-badge,body[data-retro-style=spectrum] .bubble-mine,body[data-retro-style=spectrum] .lb-page-tab--active,body[data-retro-style=spectrum] .lb-page-tab--active:hover,body[data-retro-style=spectrum] .lb-tab--active,body[data-retro-style=spectrum] .profile-status-badge,body[data-retro-style=spectrum] .profile-own-badge,body[data-retro-style=spectrum] .profile-xp-level-badge{color:#000}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-surface)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-md)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}@media(max-width:480px){.modal-actions{flex-direction:column-reverse}.modal-actions .btn{width:100%}}
