@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#111514;--panel:#1a201e;--border:#303a34;--text:#f4f5eb;--muted:#99aaa0;--lime:#ddf889;--green:#9bd6b3;--sidebar:#151a17;--red:#f2a2a0;font-family:'DM Sans',system-ui,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}a{color:var(--lime);text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand{font-family:'Space Grotesk',system-ui,sans-serif}h1{font-size:32px;letter-spacing:-1.4px;margin:8px 0 0;font-weight:500}h2{font-size:20px;font-weight:500;letter-spacing:-.6px;margin:0}h3{font-size:16px;font-weight:500;margin:0}.shell{display:grid;grid-template-columns:218px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--sidebar);border-right:1px solid var(--border);padding:30px 20px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{font-size:30px;letter-spacing:-1.5px;display:flex;align-items:center;gap:8px;color:var(--text);font-weight:600}.brand-icon{display:inline-flex;align-items:center;justify-content:center;background:var(--lime);color:#25331b;width:34px;height:38px;border-radius:10px 10px 15px 10px;font-size:32px;font-style:italic;line-height:1}.brand-dot{color:var(--lime);margin-left:-9px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:600;color:var(--muted)}.sidebar>.eyebrow{margin:50px 12px 16px}nav{display:grid;gap:8px}.nav{background:transparent;color:var(--muted);border:0;text-align:left;padding:13px 12px;border-radius:7px;font-weight:500;display:flex;align-items:center}.nav:hover{background:#222b24;color:var(--text)}.nav.active{background:#293425;color:var(--lime)}.badge{font-size:11px;padding:3px 7px;background:#34422f;color:var(--lime);border-radius:5px;display:inline-flex;align-items:center;justify-content:center;min-width:22px}.nav .badge{margin-left:auto}.sidebar-bottom{margin-top:auto;padding:25px 10px 0}.connection{font-size:12px;display:flex;align-items:center;gap:8px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green)}.sidebar-bottom p{font-size:12px;color:var(--muted);line-height:1.8;margin:14px 0 28px}.version{font-size:9px;letter-spacing:1px;color:#6d8173}main{padding:36px 34px 18px;min-width:0}header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.header-actions{display:flex;align-items:center;gap:10px}.button{border:1px solid transparent;padding:11px 15px;border-radius:6px;font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap}.primary{background:var(--lime);color:#23301c}.primary:hover{background:#edffb6}.secondary{border-color:var(--border);background:#202822;color:var(--text)}.secondary:hover{border-color:var(--muted)}.danger{background:#352827;border-color:#60413c;color:var(--red)}.pill{font-size:9px;font-weight:600;letter-spacing:1px;border:1px solid var(--border);padding:6px 8px;border-radius:5px;color:var(--muted);white-space:nowrap}.pill.youtube{color:#ffc3b6;border-color:#62423d;background:#352723}.pill.karafun{color:#b9c8ff;border-color:#444b68;background:#252b3b}.stats{display:grid;grid-template-columns:1fr 1fr 1fr 1.2fr;border:1px solid var(--border);background:#171d19;border-radius:9px;margin-bottom:26px;padding:20px 24px}.stats>div{padding:0 20px;border-right:1px solid var(--border)}.stats>div:first-child{padding-left:0}.stats>div:last-child{border-right:0;padding-right:0}.stat-label{font-size:9px;letter-spacing:1.5px;color:var(--muted);display:block;margin-bottom:9px}.stats strong{font-family:'Space Grotesk',sans-serif;font-size:28px;font-weight:500}.stats small{font-family:'DM Sans',sans-serif;font-size:12px;color:var(--muted);font-weight:400}.stat-note{display:flex;align-items:center;gap:16px;font-size:12px;color:var(--muted);line-height:1.8}.stat-note b{color:var(--text);font-weight:500}.spark{font-size:45px;color:var(--lime)}.show-grid{display:grid;grid-template-columns:minmax(390px,1fr) 340px;gap:22px;align-items:start}.panel{background:var(--panel);border:1px solid var(--border);border-radius:9px;overflow:hidden}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px}.panel-heading .eyebrow{font-size:8px;letter-spacing:1.2px;margin-bottom:9px}.panel-heading h2 .badge{vertical-align:middle;margin-left:5px}.rotation-columns{padding:12px 22px;background:#161c18;color:#809587;font-size:8px;letter-spacing:1.5px;display:grid;grid-template-columns:45% 45% 10%;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.singer-row{display:grid;grid-template-columns:45% 45% 10%;padding:22px;align-items:center;border-bottom:1px solid var(--border);gap:0}.singer-row.current{background:#263021}.singer-id{display:flex;gap:13px;align-items:center;min-width:0}.order{color:#6f8275;font-size:12px;min-width:16px}.avatar{background:#333e32;color:#c8dbbd;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Space Grotesk',sans-serif;flex:none;font-size:12px}.singer-row:nth-child(3n+2) .avatar{background:#3b333e;color:#e0c9e8}.singer-row:nth-child(3n) .avatar{background:#3c3829;color:#e8d3a5}.singer-name{font-weight:600;font-size:13px;overflow-wrap:anywhere}.singer-meta{font-size:10px;color:var(--muted);margin-top:4px}.song-info{min-width:0;padding-right:10px}.song-title{font-size:12px;margin-bottom:7px;overflow-wrap:anywhere}.song-artist{font-size:10px;color:var(--muted);margin-bottom:6px}.song-info .pill{font-size:8px;padding:3px 5px}.reorder{display:grid;gap:3px;justify-content:end}.icon-button{border:1px solid var(--border);background:#222b25;color:var(--muted);border-radius:4px;padding:3px 6px;cursor:pointer}.icon-button:hover{color:var(--text)}.songs-more{padding:10px 22px 15px;color:var(--muted);border-bottom:1px solid var(--border);font-size:11px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.songs-more button{font-size:10px}.panel-foot{display:flex;gap:8px;align-items:center;color:#7f9585;font-size:10px;padding:15px 22px}.empty{padding:65px 25px;text-align:center;color:var(--muted)}.empty .empty-icon{font-size:42px;color:var(--lime);margin-bottom:18px;display:block}.empty h3{color:var(--text);font-size:19px;margin-bottom:10px}.empty p{font-size:12px;line-height:1.8;margin-bottom:20px}.right-column{display:grid;gap:18px}.now-panel .panel-heading{padding-bottom:10px}.now-center{text-align:center;padding:24px 22px 14px}.now-center .mic{font-size:30px;display:inline-flex;justify-content:center;align-items:center;width:64px;height:64px;border-radius:50%;background:#273323;color:var(--lime);margin-bottom:18px}.now-center h3{font-size:25px;letter-spacing:-1px;overflow-wrap:anywhere}.now-center p{font-size:12px;color:var(--muted);margin:7px 0}.now-center .status{font-size:9px;color:var(--lime);letter-spacing:1.5px;margin-top:13px;text-transform:uppercase}.transport{padding:12px 22px;display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.transport .button{padding:9px 12px}.progress{height:3px;background:#303b32;margin:12px 22px 8px}.progress i{height:3px;display:block;background:var(--lime);width:0}.time-labels{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);padding:0 22px}.helper{font-size:11px;line-height:1.7;color:var(--muted);font-weight:400}.now-panel>.helper{padding:8px 22px 15px;margin:0}.compact{padding-bottom:20px}.compact .panel-heading{padding-bottom:0}.compact>.helper{padding:0 22px;margin:12px 0}.file-button{display:block;padding:9px 12px;background:#242e26;border:1px dashed #53604f;border-radius:5px;cursor:pointer;margin:0 22px;font-size:11px;color:var(--green)}audio{width:calc(100% - 44px);height:32px;margin:12px 22px 0}.volume-label{display:flex;align-items:center;gap:12px;margin:12px 22px 0;color:var(--muted);font-size:10px}.volume-label input{width:100%;accent-color:var(--lime)}.request-card{background:#293626;border:1px solid #4d6141;border-radius:9px;padding:24px}.request-card .eyebrow{color:#a9be8d;font-size:8px;letter-spacing:1.1px}.request-card h2{color:#e7f2d2;margin:12px 0}.request-card p{color:#b1c29e;font-size:12px;line-height:1.8}.request-card .button{background:#3b4c31;border-color:#566b46;color:#e7f2d2;width:100%;justify-content:space-between}footer{padding:35px 0 0;font-size:8px;letter-spacing:1.7px;color:#6a7e70;display:flex;justify-content:space-between}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:25px 0}.section-heading h2{font-size:28px;margin-top:10px}.notice{background:#283023;border:1px solid #4c5b3b;border-radius:6px;color:#ccdcb5;padding:15px;font-size:12px;line-height:1.7}.notice a{overflow-wrap:anywhere}.rotation-panel>.notice{margin:0 22px 15px}.cards{display:grid;gap:12px;margin-top:22px}.request-row{padding:22px;display:flex;justify-content:space-between;align-items:center;gap:18px}.request-row .row-actions{display:flex;gap:8px}.request-row p{font-size:12px;color:var(--muted);margin:7px 0}.request-row .pill{margin-right:7px}.settings-form{padding:28px;max-width:650px}.settings-form>.notice{margin-top:22px}label{display:grid;gap:8px;font-size:12px;color:#d1dbcf;font-weight:500;margin-bottom:18px}input:not([type=checkbox]):not([type=range]):not([type=file]),select{background:#111813;border:1px solid #3b483d;padding:12px;border-radius:5px;color:var(--text);width:100%;min-width:0}input::placeholder{color:#6c8071}input:focus,select:focus{border-color:var(--lime)}.check{display:flex;align-items:center;gap:9px;font-size:12px}input[type=checkbox]{accent-color:var(--lime);width:16px;height:16px}dialog{background:var(--panel);color:var(--text);border:1px solid #465540;border-radius:12px;padding:26px;width:min(560px,calc(100vw - 32px));max-height:90vh}dialog::backdrop{background:#000b;backdrop-filter:blur(4px)}dialog .panel-heading{padding:0 0 28px}.form-row{display:grid;grid-template-columns:1.2fr 1fr;gap:15px}.dialog-foot{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:24px;font-size:11px}.error{color:var(--red);font-size:12px;line-height:1.6}.error:empty{display:none}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:min(600px,90vw);z-index:50;background:var(--lime);color:#213219;padding:14px 22px;border-radius:7px;box-shadow:0 8px 50px #0008;font-size:13px}#toast.error{background:#f4b0a7;color:#3a1d19}[hidden]{display:none!important}.guest-main{width:min(540px,100%);margin:0 auto;padding:30px 20px}.guest-main .brand{justify-content:center}.guest-intro{text-align:center;padding:45px 0 15px}.guest-intro h1{font-size:38px;margin:14px 0}.guest-intro p{color:var(--muted);line-height:1.8;font-size:14px}.guest-form{padding:26px;margin:20px 0}.guest-form h2{margin-bottom:28px}.guest-form>a{display:block;font-size:12px;margin-bottom:20px}.full{width:100%}.guest-form>.helper{text-align:center;margin:14px 0 0}.guest-lineup{padding:26px}.guest-lineup h2{margin:8px 0 20px}.guest-singer{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--border);font-size:13px}.guest-singer>span{color:var(--lime);min-width:20px}.guest-singer small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.guest-main footer{justify-content:center;padding-bottom:25px}#guestMessage:not(:empty){margin-top:18px;padding:12px;border:1px solid var(--border);border-radius:5px;color:var(--green);line-height:1.6;font-size:13px}.audience-body{background:#0b100d;overflow:hidden;height:100vh;display:flex;flex-direction:column}.audience-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;border-bottom:1px solid var(--border);gap:15px}.audience-toolbar .brand{font-size:23px}.audience-toolbar>span:nth-child(2){color:var(--muted);font-size:11px}.audience-ticker{padding:18px 32px;display:flex;justify-content:space-between;gap:30px;background:#26331f;color:var(--lime);font-size:15px;flex-shrink:0}.audience-stage{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center}#idleScreen{text-align:center;padding:30px;max-width:100%}.stage-spark{font-size:100px;color:var(--lime);display:block;margin-bottom:30px}#idleScreen h1{font-size:clamp(38px,5vw,85px);margin:15px 0 20px}#audienceTagline{font-size:clamp(15px,2vw,24px);color:var(--muted)}#audienceSinger{margin-top:40px;color:var(--lime);font-size:28px}#videoWrap{width:100%;height:100%;background:black;display:flex;justify-content:center;align-items:center}#youtubePlayer{width:100%;height:100%;min-height:200px;min-width:200px}.audience-error{background:#3c2825;color:#ffd2c9;padding:14px 25px;text-align:center;flex-shrink:0}body:fullscreen .audience-toolbar{display:none}.audience-body:fullscreen{height:100vh;width:100vw}#playerError{margin:15px 22px 0;font-size:11px}
@media(min-width:1500px){main{padding:42px 50px}.show-grid{grid-template-columns:minmax(450px,1fr) 390px}.singer-row{padding:25px}.panel-heading{padding:25px}}
@media(max-width:1200px){.shell{grid-template-columns:180px 1fr}.sidebar{padding:26px 14px}main{padding:28px 22px}.header-actions .pill{display:none}.show-grid{grid-template-columns:minmax(330px,1fr) 300px;gap:16px}.panel-heading{padding:18px;gap:8px}.rotation-panel>.panel-heading{flex-wrap:wrap}.stat-note{display:none!important}.stats{grid-template-columns:repeat(3,1fr)}.stats>div:nth-child(3){border:0}.singer-row{padding:18px}.rotation-columns{padding:12px 18px}h1{font-size:27px}}
@media(max-width:960px){.show-grid{grid-template-columns:1fr}.right-column{grid-template-columns:1fr 1fr}.request-card{grid-column:1/-1}.header-actions{flex-wrap:wrap;justify-content:end}.sidebar{width:180px}.stats{padding:18px}.stats>div{padding:0 12px}.stats strong{font-size:24px}}
@media(max-width:680px){.shell{display:block}.sidebar{height:auto;width:100%;position:static;padding:20px;border-right:0;border-bottom:1px solid var(--border)}.sidebar>.eyebrow,.sidebar-bottom{display:none}.sidebar .brand{font-size:26px}nav{display:flex;margin-top:20px;gap:3px;overflow-x:auto}.nav{padding:10px;font-size:11px;white-space:nowrap}.nav .badge{margin-left:8px}.nav:first-child{margin-left:0}main{padding:25px 16px}header{display:block}.header-actions{justify-content:start;margin-top:20px}.header-actions .button{font-size:11px}.stats{padding:16px 12px}.stat-label{font-size:8px;letter-spacing:.7px}.stats strong{font-size:23px}.stats small{display:block;font-size:10px}.show-grid{display:block}.right-column{display:grid;grid-template-columns:1fr;margin-top:18px}.request-card{grid-column:auto}.singer-row{grid-template-columns:44% 46% 10%;padding:17px 12px}.singer-id{gap:8px}.avatar{width:30px;height:30px;font-size:10px}.order{min-width:12px;font-size:10px}.singer-name{font-size:12px}.song-title{font-size:11px}.rotation-columns{padding:12px}.panel-heading{padding:18px 14px}.rotation-panel .panel-heading .eyebrow{font-size:7px}.rotation-panel .panel-heading .button{font-size:10px;padding:9px}footer span{display:none}.request-row{align-items:start;flex-direction:column}.settings-form{padding:22px}.section-heading{align-items:start;gap:15px}.section-heading h2{font-size:24px}.form-row{grid-template-columns:1fr;gap:0}.dialog-foot{align-items:start;flex-direction:column}.dialog-foot .button{width:100%}.audience-ticker{font-size:12px;padding:15px;flex-wrap:wrap}.audience-toolbar{padding:10px 15px}.audience-toolbar>span:nth-child(2){display:none}}
.song-results{margin:16px 0;max-height:420px;overflow:auto}.song-result{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;border-top:1px solid var(--border)}.song-result h3{font-size:14px;overflow-wrap:anywhere}.song-result p{font-size:11px;color:var(--muted);margin:6px 0}.song-result a{font-size:11px}.song-result .button{flex-shrink:0}#manualRequest{margin:20px 0;color:var(--muted);font-size:12px}#manualRequest summary{cursor:pointer;margin-bottom:18px}#chosenSong{margin:16px 0}#karafunWrap{position:absolute;inset:0;background:#000;display:flex;align-items:center;justify-content:center}#karafunFrame{width:100%;height:100%;object-fit:contain}

#libraryForm{margin-top:20px}#archivedVideos{margin-top:24px;color:var(--muted);font-size:13px}#archivedVideos summary{cursor:pointer}.songs-more .button{padding:5px 10px;font-size:10px}#youtubeExternal{margin:14px 0;line-height:1.7}

.queued-song{display:flex;align-items:center;gap:10px;width:100%;flex-wrap:wrap}.queued-song>span{flex:1;min-width:140px}
.key-control{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;margin:6px 0}.key-control b{min-width:48px;text-align:center}.queued-song{flex-wrap:wrap}
.pairing-code{font-size:28px;letter-spacing:4px}.clean-display{background:#000;overflow:hidden}.clean-display #picture{width:100vw;height:100vh;object-fit:contain;display:block}.clean-display #displayTools{position:fixed;right:12px;top:12px;background:#111d;padding:10px;border-radius:8px}.clean-display #displayTools p{margin:8px 0 0;font-size:12px}.clean-display:fullscreen #displayTools{display:none}.settings-form+.settings-form{margin-top:20px}

/* Server video stays centered inside the existing singer/next-up stage. */
.audience-body{height:100dvh}.audience-stage{overflow:hidden}
#streamWrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#000}
#streamVideo{display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;object-position:50% 50%}
.audience-toolbar{flex-shrink:0}.audience-ticker>span{overflow-wrap:anywhere}
@media(max-width:680px){.audience-ticker{gap:8px}.audience-toolbar .button{padding:8px;font-size:11px}}

.header-actions{flex-wrap:wrap;justify-content:flex-end}
#audienceQRDialog{width:min(460px,calc(100vw - 32px))}
#audienceQRDialog .panel-heading{padding:0 0 14px;align-items:flex-start}
#audienceQRDialog>.helper{margin-bottom:18px}
#audienceQRCode{width:min(320px,100%);margin:18px auto;background:white;border-radius:8px;overflow:hidden}
#audienceQRCode svg{display:block;width:100%;height:auto;aspect-ratio:1}
.audience-qr-link{text-align:center}
@media(max-width:680px){.header-actions{justify-content:flex-start}}

/* Keep video previews readable without squeezing the phone search controls. */
.song-result.has-thumbnail{display:grid;grid-template-columns:112px minmax(0,1fr) auto}
.song-result-thumbnail{display:block;width:112px;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:8px;background:var(--border)}
.song-result-details{min-width:0}
@media(max-width:540px){
  .song-result.has-thumbnail{grid-template-columns:88px minmax(0,1fr);align-items:start}
  .song-result-thumbnail{width:88px}
  .song-result.has-thumbnail>.button{grid-column:2;justify-self:start}
}

.chosen-song{display:flex;flex-direction:column;align-items:flex-start;gap:12px;scroll-margin-top:20px}
.chosen-song[hidden],.song-results[hidden]{display:none}
#chosenSongText{overflow-wrap:anywhere}

.automatic-panel{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.automatic-panel h2{font-size:18px}.automatic-panel .helper{margin-bottom:0}@media(max-width:700px){.automatic-panel{align-items:flex-start;flex-direction:column}.automatic-panel .row-actions{flex-wrap:wrap}}

.seek-control{margin:10px 22px 0}.seek-slider{--seek-percent:0%;appearance:none;-webkit-appearance:none;display:block;width:100%;height:32px;margin:0;background:transparent;cursor:pointer;touch-action:none;padding:0;border:0}
.seek-slider::-webkit-slider-runnable-track{height:6px;border-radius:6px;background:linear-gradient(to right,var(--lime) var(--seek-percent),#354239 var(--seek-percent))}
.seek-slider::-moz-range-track{height:6px;border-radius:6px;background:linear-gradient(to right,var(--lime) var(--seek-percent),#354239 var(--seek-percent))}
.seek-slider::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:20px;height:20px;margin-top:-7px;border-radius:50%;background:var(--lime);border:2px solid #1a201e;box-shadow:0 0 0 1px var(--lime)}
.seek-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--lime);border:2px solid #1a201e;box-shadow:0 0 0 1px var(--lime)}
.seek-slider:disabled{cursor:default;opacity:.4}.seek-slider:focus-visible{outline:2px solid var(--lime);border-radius:6px}#seekStatus{font-size:11px;margin:2px 0 0;min-height:14px}

.host-preview{margin:14px 22px 0}.host-preview[hidden]{display:none}.host-preview video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#000;border:1px solid var(--border);border-radius:7px}.host-preview .helper{font-size:10px;line-height:1.5;margin:8px 0}.host-preview .button{margin-bottom:4px}

#hostLoginDialog{width:min(440px,calc(100vw - 32px))}#hostLoginQRCode{max-width:300px;margin:18px auto;background:#fff;border-radius:8px;padding:8px}#hostLoginQRCode svg{display:block;width:100%;height:auto}.host-key{display:block;overflow-wrap:anywhere;padding:12px;margin:12px 0;background:var(--bg);border-radius:6px;color:var(--lime);font-size:16px}#hostKeyForm{margin:20px 0}#controllerPanel details{margin:16px 0}#controllerPanel summary{cursor:pointer}

.playback-state{margin:10px 22px;padding:9px 12px;border:1px solid var(--border);border-radius:6px;color:var(--muted);font-size:12px;font-weight:600}.playback-state[hidden]{display:none}.playback-state[data-state="playing"]{color:var(--lime);background:#293425}.playback-state[data-state="paused"]{color:#ffdba5;background:#332d22}.playback-state[data-state="waiting"],.playback-state[data-state="buffering"]{color:#b9d8ff}.playback-state[data-state="error"],.playback-state[data-state="disconnected"],.playback-state[data-state="blocked"]{color:var(--red)}.transport .transport-selected{border-color:var(--lime);opacity:1;background:#293425;color:var(--lime)}

.audience-display{display:flex;flex:1;min-height:0;overflow:hidden}
.audience-requests{flex:0 0 clamp(130px,15vw,210px);padding:18px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;background:#172016;border-left:1px solid var(--border)}
#requestQRCode{width:100%;max-width:180px;background:white;border-radius:8px;overflow:hidden;line-height:0}
#requestQRCode svg{display:block;width:100%;height:auto}
.audience-requests strong{color:var(--lime);font-size:clamp(14px,1.5vw,20px)}
.audience-requests span{font-size:clamp(11px,1.1vw,15px);line-height:1.5}
.audience-requests .request-wifi{color:var(--muted);font-size:11px}
@media(max-width:480px){.audience-requests{flex-basis:104px;padding:10px 8px;gap:7px}.audience-requests strong{font-size:13px}.audience-requests span{font-size:10px}}

.song-thumbnail-pick{display:block;padding:0;border:0;border-radius:8px;background:transparent;cursor:pointer;justify-self:start;align-self:start}
.song-thumbnail-pick:hover{filter:brightness(1.12)}
.song-thumbnail-pick:focus-visible{outline:3px solid var(--lime);outline-offset:4px}

.song-title-pick{padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;line-height:inherit}
.song-title-pick:hover{text-decoration:underline;text-underline-offset:3px}
.song-title-pick:focus-visible{outline:2px solid var(--lime);outline-offset:3px;border-radius:2px}
