.picker-setup { width:100%; max-width:660px; margin:12px auto; padding:16px; border:1px solid var(--border-hover); border-radius:16px; background:var(--bg-surface-solid); text-align:left; color:var(--text-primary); }
.picker-setup-top { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.picker-setup-label { font-size:.85rem; font-weight:600; }
.picker-mode-switch { display:flex; padding:3px; border:1px solid var(--border-color); border-radius:10px; background:var(--input-bg); }
.picker-mode-switch button,.picker-vibes button { font:inherit; font-size:.82rem; color:var(--text-secondary); background:transparent; border:1px solid transparent; border-radius:8px; padding:8px 14px; min-height:38px; cursor:pointer; }
.picker-mode-switch button[aria-pressed=true] { background:var(--accent); color:white; }
.picker-vibes { display:flex; gap:6px; flex-wrap:wrap; margin-top:14px; }
.picker-vibes button { border-color:var(--border-hover); }
.picker-vibes button[aria-pressed=true] { border-color:var(--accent); color:var(--accent); background:color-mix(in srgb,var(--accent) 12%,transparent); }
.picker-refinements { display:flex; align-items:center; flex-wrap:wrap; gap:14px; margin-top:14px; font-size:.8rem; }
.picker-refinements label { display:flex; gap:8px; align-items:center; }
.picker-refinements select { min-height:38px; padding:6px 9px; border:1px solid var(--border-hover); background:var(--bg-card-solid); color:var(--text-primary); border-radius:8px; font:inherit; }
.picker-taste input { width:17px; height:17px; accent-color:var(--accent); }
.picker-pool-status { margin-top:10px; color:var(--text-secondary); font-size:.78rem; line-height:1.5; }
.picker-previews { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:12px; }
.picker-preview { display:flex; align-items:center; gap:8px; min-width:0; text-align:left; border:1px solid var(--border-color); background:var(--bg-card-solid); border-radius:10px; padding:8px; font:inherit; color:var(--text-primary); cursor:pointer; }
.picker-preview img,.picker-poster-fallback { width:34px; height:51px; object-fit:cover; border-radius:4px; flex-shrink:0; }
.picker-poster-fallback { display:grid; place-items:center; background:var(--input-bg); color:var(--accent); }
.picker-preview>span { min-width:0; }
.picker-preview strong { font-size:.72rem; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; line-height:1.35; }
.picker-preview small { display:block; color:var(--text-secondary); font-size:.65rem; line-height:1.35; margin-top:4px; }
.picker-source { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; margin-top:10px; font-size:.78rem; }
.picker-source button { font:inherit; color:var(--accent); background:transparent; border:0; cursor:pointer; padding:6px; }
.picker-setup button:focus-visible,.picker-setup input:focus-visible,.picker-setup select:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.picker-setup button:disabled { opacity:.5; cursor:default; }
.suite-toolbar-actions { display:flex; flex-shrink:0; align-items:center; gap:8px; }
.suite-toolbar-actions .btn { white-space:nowrap; }
.suite-detail-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:12px; }
.suite-result-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; width:100%; }
.suite-result-actions .btn { min-height:42px; font-size:.85rem; padding:10px 14px; }
.suite-discover-tools { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.suite-icon-button { position:relative; display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; background:var(--bg-card); border:1px solid var(--border-hover); border-radius:12px; color:var(--text-secondary); cursor:pointer; }
.suite-icon-button:hover { color:var(--accent); border-color:var(--accent); }
.suite-icon-button svg { width:20px; height:20px; }
.showdown-guest-invite { font-size:.8rem; min-height:40px; margin:0 auto 8px; display:flex; }
.showdown-ready-options .picker-setup { box-shadow:none; margin-bottom:0; }
.roulette-container:has(.picker-setup) { max-height:calc(100dvh - 32px); overflow-y:auto; }
body.suite-picker-open { overflow:hidden; }
.roulette-container,.coop-game-container { scrollbar-width:thin; scrollbar-color:var(--border-hover) transparent; }
.roulette-container>.modal-close,.coop-game-container>.modal-close { position:sticky; top:12px; margin-left:auto; margin-bottom:-40px; display:flex; z-index:20; background:var(--bg-surface-solid); }
.coop-game-container:has(.picker-setup,.suite-result-actions) { overflow-y:auto; }
.showdown-shell.showdown-lobby:has(.picker-setup) .showdown-banner h3 { font-size:clamp(1.65rem,3.2vw,2.5rem); line-height:1.05; }
.showdown-shell.showdown-lobby:has(.picker-setup) .showdown-room-code-card { gap:.55rem; }
.showdown-shell.showdown-lobby:has(.picker-setup) .showdown-room-code-card>strong { font-size:3.8rem; }
.showdown-shell,#roulette-modal .roulette-container { --bg-surface-solid:#111522; --bg-card-solid:#191e2b; --input-bg:#202638; --text-primary:#f8fafc; --text-secondary:#bec6d6; --border-hover:#48516b; --border-color:#30384c; --accent:#a78bfa; }
.coop-game-content:has(.picker-setup,.suite-result-actions) { zoom:1; }
#coop-game-modal .modal-close,#roulette-modal .modal-close { background:#191e2b; color:#e2e8f0; }
.showdown-finale .showdown-actions { position:sticky; bottom:0; z-index:20; padding:12px; border-radius:12px; background:#111522; }
.showdown-shell .suite-result-actions .btn,.showdown-shell .showdown-guest-invite,.roulette-container .suite-result-actions .btn { background:#202638; color:#f8fafc; border:1px solid #48516b; min-height:44px; }
.showdown-shell.showdown-lobby:has(.picker-setup) .showdown-lobby-stage { min-height:0; }
.showdown-lobby .showdown-stage { overflow-y:auto; }
@media(max-width:600px) {
 .showdown-shell.showdown-lobby:has(.picker-setup) .showdown-lobby-match-card { grid-template-columns:1fr 1fr; gap:8px; }
 .showdown-shell.showdown-lobby:has(.picker-setup) .showdown-lobby-player { display:flex; flex-direction:column; min-height:130px; padding:10px; gap:8px; }
 .showdown-shell.showdown-lobby:has(.picker-setup) .showdown-lobby-player.is-host { grid-column:1; grid-row:1; }
 .showdown-shell.showdown-lobby:has(.picker-setup) .showdown-lobby-player.is-guest { grid-column:2; grid-row:1; }
 .showdown-shell.showdown-lobby:has(.picker-setup) .showdown-lobby-center-stack { grid-column:1/-1; grid-row:2; gap:4px; }
 .showdown-shell.showdown-lobby:has(.picker-setup) .showdown-lobby-vs { display:none; }
 .showdown-shell.showdown-lobby:has(.picker-setup) .showdown-lobby-avatar-ring { width:56px; height:56px; }
 .picker-setup { padding:12px; border-radius:12px; }
 .picker-setup-label { font-size:.77rem; }
 .picker-mode-switch button { padding:7px 11px; }
 .picker-vibes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
 .picker-vibes button { padding:8px 5px; min-height:42px; }
 .picker-previews { grid-template-columns:1fr; gap:6px; }
 .picker-preview { padding:7px 9px; }
 .picker-preview img { width:26px; height:39px; }
 .picker-preview strong { font-size:.78rem; -webkit-line-clamp:1; }
 .picker-preview small { font-size:.69rem; }
 .picker-refinements { gap:10px; }
 .suite-toolbar-actions .btn { padding:11px; }
 .suite-toolbar-actions .btn span { display:none; }
 .suite-detail-actions .btn { flex:1 1 120px; }
 .roulette-container:has(.picker-setup) { max-height:calc(100dvh - 16px); }
}
