.lobby h2{margin-bottom:var(--spacing-lg)}.lobby-info{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background-color:var(--color-surface);border-radius:var(--radius-md)}.player-list{margin-bottom:var(--spacing-lg)}.player-list h3{margin-bottom:var(--spacing-md)}.player-list ul{list-style:none}.player-list li{align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm)var(--spacing-md);background-color:var(--color-surface);border-radius:var(--radius-sm);margin-bottom:var(--spacing-xs);display:flex}.player-list li.disconnected{opacity:.5}.ready-badge,.host-badge{padding:var(--spacing-xs)var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.ready-badge{background-color:var(--color-success);color:#000}.host-badge{background-color:var(--color-warning);color:#000}.lobby{max-width:1200px;margin:0 auto}.lobby-header{margin-bottom:var(--spacing-lg);text-align:center}.lobby-header h2{color:var(--color-primary);margin-bottom:var(--spacing-sm);font-size:2rem}.game-id{color:var(--color-text-muted);font-size:.875rem}.lobby-content{gap:var(--spacing-xl);margin-bottom:var(--spacing-xl);grid-template-columns:1fr 1fr;display:grid}.player-seat{background-color:var(--color-surface);border-radius:var(--radius-md);border:2px solid var(--color-surface-light);overflow:hidden}.seat-occupied{padding:var(--spacing-md)}.seat-header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;gap:var(--spacing-sm);display:flex}.seat-header-left{align-items:center;gap:var(--spacing-sm);min-width:0;display:flex}.seat-header-right{align-items:center;gap:var(--spacing-sm);flex-shrink:0;display:flex}.seat-header-name{color:var(--color-text);font-size:1rem;font-weight:600}.seat-header-name.unnamed{color:var(--color-text-muted);font-style:italic;font-weight:400}.name-input-container{gap:var(--spacing-sm);margin-bottom:var(--spacing-md);display:flex}.name-input{padding:var(--spacing-sm);background-color:var(--color-bg);border:1px solid var(--color-surface-light);border-radius:var(--radius-sm);color:var(--color-text);flex:1;font-size:.875rem}.name-input:focus{border-color:var(--color-primary);outline:none}.btn-small{padding:var(--spacing-xs)var(--spacing-sm);font-size:.875rem}.ready-container{justify-content:center;display:flex}.btn-ready{padding:var(--spacing-sm)var(--spacing-lg);background-color:var(--color-surface-light);color:var(--color-text);border:2px solid var(--color-surface-light)}.btn-ready:hover:not(:disabled){border-color:var(--color-success)}.btn-ready.active{background-color:var(--color-success);color:#000;font-weight:600}.player-info{gap:var(--spacing-sm);flex-direction:column;display:flex}.player-name{align-items:center;font-size:1rem;font-weight:600;display:flex}.player-name .unnamed{color:var(--color-text-muted);font-style:italic}.disconnected-badge{padding:var(--spacing-xs)var(--spacing-sm);background-color:var(--color-error);color:#fff;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;display:inline-block}.seat-empty{padding:var(--spacing-md);color:var(--color-text-muted)}.invite-code-container{justify-content:space-between;align-items:center;gap:var(--spacing-sm);flex-direction:row;display:flex}.invite-code-left{align-items:center;gap:var(--spacing-sm);display:flex}.invite-code-label{color:var(--color-text-muted);font-size:.75rem;font-style:normal}.invite-code{font-family:var(--font-mono);letter-spacing:.15em;color:var(--color-primary);background:var(--color-bg-dark);padding:var(--spacing-xs)var(--spacing-sm);border-radius:var(--radius-sm);font-size:1.25rem;font-style:normal;font-weight:600}.seat-ai{background:linear-gradient(135deg,var(--color-surface)0%,#9333ea1a 100%);border-left:3px solid var(--color-purple)}.ai-badge{background-color:var(--color-purple);color:#fff;padding:var(--spacing-2xs)var(--spacing-xs);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.ai-controls{margin-top:var(--spacing-sm);justify-content:flex-end;display:flex}.own-player-controls{gap:var(--spacing-xs);flex-direction:column;display:flex}.name-and-ready-row{gap:var(--spacing-sm);align-items:center;display:flex}.name-and-ready-row.spread{justify-content:space-between}.name-input.error{border-color:var(--color-error);background-color:#f871711a}.name-error{color:var(--color-error);padding:var(--spacing-xs)var(--spacing-sm);font-size:.75rem}.btn-ready.not-ready{background-color:var(--color-error);color:#fff;border-color:var(--color-error)}.btn-ready.not-ready:hover:not(:disabled){background-color:var(--color-red-error);border-color:var(--color-red-error)}.player-name-row{justify-content:space-between;align-items:center;gap:var(--spacing-md);display:flex}.ready-indicator{text-align:center;min-width:24px;font-size:1.25rem;font-weight:700}.ready-indicator.ready{color:var(--color-success)}.ready-indicator.not-ready{color:var(--color-error)}.host-start-button-container{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:2px solid var(--color-surface-light)}.settings-column{gap:var(--spacing-md);flex-direction:column;display:flex}.settings-column h3{color:var(--color-text);margin-bottom:var(--spacing-sm);font-size:1.25rem}.settings-panel{background-color:var(--color-surface);border-radius:var(--radius-md);padding:var(--spacing-md)}.host-settings{gap:var(--spacing-md);flex-direction:column;display:flex}.setting-group{gap:var(--spacing-xs);flex-direction:column;display:flex}.setting-group label{color:var(--color-text);font-size:.875rem;font-weight:500}.setting-group select,.setting-group input[type=number]{padding:var(--spacing-sm);background-color:var(--color-bg);border:1px solid var(--color-surface-light);border-radius:var(--radius-sm);color:var(--color-text);font-size:.875rem}.setting-group select:focus,.setting-group input[type=number]:focus{border-color:var(--color-primary);outline:none}.setting-group label input[type=checkbox]{margin-right:var(--spacing-xs);cursor:pointer}.nonhost-settings{gap:var(--spacing-sm);flex-direction:column;display:flex}.setting-display{padding:var(--spacing-sm);background-color:var(--color-bg);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;display:flex}.setting-label{color:var(--color-text-muted);font-size:.875rem}.setting-value{color:var(--color-text);font-size:.875rem;font-weight:600}.ban-section{margin-top:var(--spacing-xs)}.ban-section-header{color:var(--color-text-muted);font-size:.875rem}.ban-section-link{cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-family:inherit;text-decoration:underline}.ban-section-link:hover{color:var(--color-text)}.ban-section-count{color:var(--color-text);font-weight:600}.banned-card-list{margin:var(--spacing-xs)0 0 0;padding:0 0 0 var(--spacing-sm);flex-direction:column;gap:2px;font-size:.85rem;list-style:none;display:flex}.banned-card-entry{line-height:1.4}.banned-card-expansion{color:var(--color-text-muted);font-size:.8rem}.profiles-panel{background-color:var(--color-surface);border-radius:var(--radius-md);padding:var(--spacing-md)}.profiles-panel h4{color:var(--color-text);margin-bottom:var(--spacing-md);font-size:1rem}.save-profile{gap:var(--spacing-sm);margin-bottom:var(--spacing-md);display:flex}.profile-name-input{padding:var(--spacing-sm);background-color:var(--color-bg);border:1px solid var(--color-surface-light);border-radius:var(--radius-sm);color:var(--color-text);flex:1;font-size:.875rem}.profile-name-input:focus{border-color:var(--color-primary);outline:none}.profile-list{gap:var(--spacing-xs);flex-direction:column;display:flex}.profile-item{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background-color:var(--color-bg);border-radius:var(--radius-sm);display:flex}.profile-name{flex:1;font-size:.875rem;font-weight:500}.btn-danger{background-color:var(--color-error);color:#fff}.btn-danger:hover:not(:disabled){background-color:var(--color-red-error)}.ban-links{gap:var(--spacing-xs);flex-direction:column;display:flex}.ban-link{color:var(--color-primary);padding:var(--spacing-xs)0;font-size:.875rem;text-decoration:none;transition:color .2s}.ban-link:hover{color:var(--color-accent);text-decoration:underline}.lobby-actions{justify-content:center;gap:var(--spacing-md);padding-top:var(--spacing-lg);border-top:1px solid var(--color-surface-light);display:flex}.btn-large{padding:var(--spacing-md)var(--spacing-xl);font-size:1.125rem}.lobby-placeholder{text-align:center;padding:var(--spacing-xl);color:var(--color-text-muted)}.status-indicator.reconnecting{background-color:var(--color-warning);animation:1s infinite pulse}.latency{color:var(--color-text-muted);font-size:.75rem}