@layer stage-ui {
/* Shared stage UI: charcoal surfaces, warm ivory type, amber interaction. */
:root{
 --stage-ui-bg:rgba(22,23,24,.46)!important;--stage-ui-raised:rgba(12,14,16,.24)!important;--stage-ui-hover:rgba(255,248,235,.16)!important;
 --stage-ui-text:#f3ede3!important;--stage-ui-muted:#d0c7bb!important;--stage-ui-line:rgba(255,250,240,.36)!important;--stage-ui-accent:#e6b77a!important;
 --cs-panel-bg:var(--stage-ui-bg)!important;--cs-panel-item:var(--stage-ui-raised)!important;--cs-panel-item-hover:var(--stage-ui-hover)!important;
 --cs-panel-border:var(--stage-ui-line)!important;--cs-panel-item-border:var(--stage-ui-line)!important;--cs-panel-text:var(--stage-ui-text)!important;--cs-panel-muted:var(--stage-ui-muted)!important;
 --cs-panel-shadow:inset 0 1px 0 #fff6,inset 1px 0 0 #fff2,inset 0 -1px 0 #fff2,0 16px 48px #0005!important;--cs-cream:var(--stage-ui-text)!important;--cs-pattern:var(--stage-ui-accent)!important;--cs-groove:var(--stage-ui-accent)!important;--cs-tempo:var(--stage-ui-accent)!important;--cs-volume:var(--stage-ui-accent)!important;--cs-songs:var(--stage-ui-accent)!important;--cs-start:var(--stage-ui-accent)!important;
}
.cat-sync-ui,#catSyncTuner,#rhythmSheet,.setlist-save-choice,.community-consent{font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",system-ui,sans-serif!important;color:var(--stage-ui-text)!important;font-variant-numeric:tabular-nums;}
.cat-sync-bottom{gap:8px!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}
.cat-sync-bottom .cat-sync-card{background:rgba(23,23,23,.91)!important;background-image:none!important;border:1px solid var(--stage-ui-line)!important;border-radius:12px!important;box-shadow:0 6px 20px #0004!important;transform:none!important;overflow:hidden!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
.cat-sync-bottom .cat-sync-card-label{background:rgba(230,183,122,.08)!important;background-image:none!important;color:var(--stage-ui-muted)!important;border:0!important;border-bottom:1px solid var(--stage-ui-line)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.045em!important;text-shadow:none!important;box-shadow:none!important;}
.cat-sync-bottom .cat-sync-control-row{background:transparent!important;border:0!important;}
.cat-sync-bottom .cat-sync-control-row button,.cat-sync-bottom .cat-sync-control-row select{background:transparent!important;background-image:none!important;color:var(--stage-ui-text)!important;border-color:var(--stage-ui-line)!important;box-shadow:none!important;text-shadow:none!important;font-weight:650!important;}
.cat-sync-bottom .cat-sync-control-row button:hover{background:rgba(230,183,122,.12)!important;}
.cat-sync-bottom .cat-sync-control-row .v{color:inherit!important;font-weight:650!important;letter-spacing:0!important;}
#catSyncTempo,#catSyncMute{font-variant-numeric:tabular-nums;}
/* Keep Settings discoverable on the stage, including native desktop apps. */
#catSyncMenu{display:flex!important;}
#catSyncSongs,#catSyncSetlistPlayer,.cat-sync-setlist-deck,#catSyncTunerToggle,#prototypeMiniToggle,#bookmarkSettingSaveToggle,#catSyncMenu,#prototypeGenres button{background:rgba(23,23,23,.9)!important;background-image:none!important;color:var(--stage-ui-text)!important;border:1px solid var(--stage-ui-line)!important;border-radius:12px!important;box-shadow:0 4px 16px #0003!important;}
#catSyncSongs{min-height:38px!important;letter-spacing:.07em!important;}
#catSyncSongs .cat-sync-songs-home,#catSyncSongs .cat-sync-songs-label,#catSyncSongs .cat-sync-songs-icon{color:var(--stage-ui-text)!important;}
#catSyncMenu:hover,#catSyncTunerToggle:hover,#prototypeMiniToggle:hover,#bookmarkSettingSaveToggle:hover,#catSyncSongs:hover,#prototypeGenres button:hover{border-color:var(--stage-ui-accent)!important;background:var(--stage-ui-hover)!important;}
#prototypeGenres button{width:38px!important;height:48px!important;font-size:15px!important;}
.cat-sync-sheet,.cat-sync-groove-popover,#rhythmSheet,#catSyncTuner,.setlist-save-choice,.bookmark-setting-save-dialog,.community-consent{background:var(--stage-ui-bg)!important;background-image:none!important;border:1px solid var(--stage-ui-line)!important;border-radius:18px!important;color:var(--stage-ui-text)!important;box-shadow:var(--cs-panel-shadow)!important;}
.cat-sync-sheet-head,.rhythm-sheet-head,#catSyncTuner .tn-header{background:transparent!important;background-image:none!important;border-color:var(--stage-ui-line)!important;}
.cat-sync-sheet-title,.cat-sync-groove-popover-title,.rhythm-sheet-title,#catSyncTuner h1,.setlist-save-choice h2,.community-consent h2{color:var(--stage-ui-text)!important;font-size:14px!important;font-weight:650!important;letter-spacing:.06em!important;text-shadow:none!important;}
.cat-sync-close,.rhythm-sheet-close,#catSyncTuner .tn-close{background:var(--stage-ui-raised)!important;color:var(--stage-ui-muted)!important;border:1px solid var(--stage-ui-line)!important;border-radius:10px!important;box-shadow:none!important;font-weight:400!important;}
.cat-sync-sheet button,.cat-sync-groove-popover button,#rhythmSheet button,.setlist-save-choice button,.community-consent button,#catSyncTuner button{box-shadow:none!important;text-shadow:none!important;}
.cat-sync-option,.cat-sync-groove-choice,.rhythm-option,.song-card,.bookmark-card,.setlist-item,#prototypePlaybackModes button,[data-drum-pattern],.setlist-save-choice button,.community-consent button{background:var(--stage-ui-raised)!important;background-image:none!important;color:var(--stage-ui-text)!important;border:1px solid var(--stage-ui-line)!important;border-radius:10px!important;box-shadow:none!important;font-weight:600!important;}
.cat-sync-option:hover,.cat-sync-groove-choice:hover,.rhythm-option:hover,.song-card:hover,[data-drum-pattern]:hover{background:var(--stage-ui-hover)!important;border-color:var(--stage-ui-accent)!important;}
.cat-sync-option.active,.cat-sync-groove-choice.active,.rhythm-option.selected,.song-card.selected,#prototypePlaybackModes button[aria-selected="true"],[data-drum-pattern][aria-pressed="true"],#bookmarkSettingSaveConfirm{background:var(--stage-ui-accent)!important;color:#231c16!important;border-color:var(--stage-ui-accent)!important;}
#prototypePlaybackModes{gap:6px!important;padding:4px!important;background:rgba(0,0,0,.22)!important;border:1px solid var(--stage-ui-line)!important;border-radius:12px!important;}
#prototypeModeNotice{color:var(--stage-ui-muted)!important;font-size:11px!important;}
.cat-sync-sheet input,.cat-sync-sheet select,#rhythmSheet input,#rhythmSheet select,.setlist-save-choice input,.setlist-save-choice select,#catSyncTuner input,#catSyncTuner select{background:#1c1c1c!important;background-image:none!important;border:1px solid var(--stage-ui-line)!important;border-radius:10px!important;color:var(--stage-ui-text)!important;box-shadow:none!important;color-scheme:dark;}
.cat-sync-sheet input::placeholder,#rhythmSheet input::placeholder,.setlist-save-choice input::placeholder{color:#958a81!important;}
.cat-sync-setting-label,.cat-sync-tempo-unit,.song-card-title,.setlist-item-title{color:var(--stage-ui-text)!important;font-weight:650!important;}
.song-card-artist,.song-card-meta,.cat-sync-setting-hint,#catSyncTuner .tn-detection,#catSyncTuner .tn-help,.community-consent p{color:var(--stage-ui-muted)!important;}
#catSyncTuner{--tn-accent:var(--stage-ui-accent);--tn-muted:var(--stage-ui-muted);}
#catSyncTuner .tn-note{font-weight:600!important;}
#catSyncTuner .tn-string{background:var(--stage-ui-raised)!important;border:1px solid var(--stage-ui-line)!important;border-radius:9px!important;}
#catSyncTuner .tn-string[aria-checked="true"]{background:var(--stage-ui-accent)!important;color:#231c16!important;border-color:var(--stage-ui-accent)!important;}
.cat-sync-backdrop,.rhythm-sheet-backdrop,#catSyncTunerBackdrop{background:rgba(8,8,8,.62)!important;backdrop-filter:blur(6px)!important;-webkit-backdrop-filter:blur(6px)!important;}
.cat-sync-ui button:focus-visible,#catSyncTuner button:focus-visible,#rhythmSheet button:focus-visible,.setlist-save-choice button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--stage-ui-accent)!important;outline-offset:3px!important;}
@media(max-width:520px){.cat-sync-bottom{gap:5px!important;}.cat-sync-bottom .cat-sync-card{border-radius:10px!important;}.cat-sync-bottom .cat-sync-card-label{font-size:9px!important;letter-spacing:0!important;}#catSyncSongs{min-height:34px!important;}}
.cat-sync-sheet{max-width:800px!important;margin-left:auto!important;margin-right:auto!important;}
.cat-sync-sheet-body p{white-space:normal!important;overflow-wrap:anywhere;line-height:1.65!important;color:var(--stage-ui-muted)!important;font-size:12px!important;}
.cat-sync-sheet-body h3{font-size:12px!important;font-weight:650!important;letter-spacing:.06em!important;color:var(--stage-ui-muted)!important;}
body:has(.cat-sync-sheet:not([hidden]),#rhythmSheet:not([hidden]),#catSyncTuner:not([hidden]),.community-consent,.setlist-save-choice:not([hidden])) #prototypeGenres{visibility:hidden!important;}
#bookmarkSettingSavePanel button:not(#bookmarkSettingSaveConfirm){background:var(--stage-ui-raised)!important;color:var(--stage-ui-text)!important;border:1px solid var(--stage-ui-line)!important;}
#bookmarkSettingSavePanel label,.setlist-save-choice label{color:var(--stage-ui-muted)!important;font-size:11px!important;}
#bookmarkSettingSavePanel input{font-size:14px!important;}
#bookmarkSettingSavePanel button{font-size:12px!important;min-height:40px;}
#rhythmSheet .song-card,#rhythmSheet .rhythm-option{background:var(--stage-ui-raised)!important;background-image:none!important;color:var(--stage-ui-text)!important;border:1px solid var(--stage-ui-line)!important;border-radius:10px!important;box-shadow:none!important;}
#rhythmSheet .song-card.selected,#rhythmSheet .rhythm-option.selected{background:rgba(230,183,122,.14)!important;border-color:var(--stage-ui-accent)!important;}
#rhythmSheet .song-deck-tabs{gap:6px!important;border:0!important;padding:4px!important;background:rgba(0,0,0,.22)!important;border:1px solid var(--stage-ui-line)!important;border-radius:12px!important;}
#rhythmSheet .song-deck-tab{height:38px!important;padding:6px 8px!important;border:1px solid var(--stage-ui-line)!important;border-radius:9px!important;background:var(--stage-ui-raised)!important;color:var(--stage-ui-muted)!important;font-size:11px!important;font-weight:600!important;letter-spacing:.03em!important;}
#rhythmSheet .song-deck-tab[aria-selected="true"]{background:var(--stage-ui-accent)!important;color:#231c16!important;}
#rhythmSheet .song-deck-tab::after{display:none!important;}
.community-consent button:first-of-type{background:var(--stage-ui-accent)!important;color:#231c16!important;border-color:var(--stage-ui-accent)!important;}

/* Legacy panel colors must not survive on secondary buttons and setlists. */

:is(#rhythmSheet,.cat-sync-sheet,.cat-sync-groove-popover,.setlist-save-choice,.setlist-name-dialog,.community-consent) button{
 background:var(--stage-ui-raised)!important;background-image:none!important;color:var(--stage-ui-text)!important;border-color:var(--stage-ui-line)!important;box-shadow:none!important;
}
:is(#rhythmSheet,.cat-sync-sheet,.cat-sync-groove-popover,.setlist-save-choice,.setlist-name-dialog,.community-consent) button:hover{
 background:var(--stage-ui-hover)!important;border-color:var(--stage-ui-accent)!important;
}
:is(#rhythmSheet,.cat-sync-sheet,.cat-sync-groove-popover) button:is(.active,.selected,[aria-selected="true"],[aria-pressed="true"]),
#bookmarkSettingSaveConfirm,.community-consent button:first-of-type{
 background:var(--stage-ui-accent)!important;color:#231c16!important;border-color:var(--stage-ui-accent)!important;
}
.setlist-name-dialog{background:var(--stage-ui-bg)!important;background-image:none!important;color:var(--stage-ui-text)!important;border:1px solid var(--stage-ui-line)!important;border-radius:18px!important;box-shadow:var(--cs-panel-shadow)!important;}
:is(#rhythmSheet,.setlist-name-dialog,.setlist-save-choice) :is(input,select){background:#1c1c1c!important;color:var(--stage-ui-text)!important;border-color:var(--stage-ui-line)!important;box-shadow:none!important;}
#rhythmSheet :is(.setlist-section-tab,.setlist-action-btn,.song-search-submit,.song-outage-actions button,.setlist-library-item){background:var(--stage-ui-raised)!important;background-image:none!important;color:var(--stage-ui-text)!important;border-color:var(--stage-ui-line)!important;box-shadow:none!important;}
#rhythmSheet :is(.setlist-section-tab.active,.setlist-action-btn.active,.setlist-library-item.active){background:var(--stage-ui-accent)!important;color:#231c16!important;border-color:var(--stage-ui-accent)!important;}
#rhythmSheet :is(.setlist-section-tab,.setlist-action-btn):is(:hover,:focus){background:var(--stage-ui-hover)!important;border-color:var(--stage-ui-accent)!important;}
#rhythmSheet .song-card:before,#rhythmSheet .song-card:after{border-color:var(--stage-ui-line)!important;}
#rhythmSheet button:is(.active,.selected,[aria-selected="true"],[aria-pressed="true"]):is(:hover,:focus){background:var(--stage-ui-accent)!important;color:#231c16!important;border-color:var(--stage-ui-accent)!important;}
/* Older WebKit text-fill rules bypass ordinary color, including TEMPO. */
.cat-sync-ui :is(button,span,div,input,select),.cat-sync-sheet :is(input,span,button),#rhythmSheet :is(button,input,select,span),#catSyncTuner :is(button,input,select),.setlist-save-choice :is(button,input){-webkit-text-fill-color:currentColor!important;}
#catSyncTempo,#catSyncTempo .v,.cat-sync-sheet[data-panel="tempo"] .cat-sync-tempo-input,.cat-sync-sheet[data-panel="tempo"] .cat-sync-tempo-unit{color:var(--stage-ui-text)!important;-webkit-text-fill-color:var(--stage-ui-text)!important;caret-color:var(--stage-ui-accent)!important;}
#rhythmSheet *, .cat-sync-sheet *, .cat-sync-groove-popover *, .setlist-save-choice *, .setlist-name-dialog *, .community-consent *,#catSyncTuner *{-webkit-text-fill-color:currentColor!important;}
#rhythmSheet :is(.song-card-title,.song-card-artist,.song-card-meta,.setlist-library-title,.setlist-library-meta,.setlist-empty,.song-card-empty,.song-search-status,.song-list-label){color:var(--stage-ui-text)!important;}
/* Selected numeric/search text had a separate legacy black-on-black rule. */
.cat-sync-sheet input::selection,#rhythmSheet input::selection,.setlist-save-choice input::selection,.setlist-name-dialog input::selection,#catSyncTuner input::selection{background:var(--stage-ui-accent)!important;color:#231c16!important;-webkit-text-fill-color:#231c16!important;}
#catSyncSongs :is(.cat-sync-songs-marquee,.cat-sync-songs-track,.cat-sync-song-repeat,.cat-sync-songs-divider),#catSyncSetlistPlayer :is(.cat-sync-setlist-current,.cat-sync-setlist-current-marquee,.cat-sync-setlist-current-track,.cat-sync-setlist-current-repeat,.cat-sync-setlist-index){color:var(--stage-ui-text)!important;-webkit-text-fill-color:var(--stage-ui-text)!important;text-shadow:none!important;}
#catSyncSetlistPlayer button{color:var(--stage-ui-text)!important;-webkit-text-fill-color:var(--stage-ui-text)!important;background:transparent!important;background-image:none!important;border-color:var(--stage-ui-line)!important;}
#catSyncSetlistPlayer,#catSyncSetlistPlayer *{color:var(--stage-ui-text)!important;-webkit-text-fill-color:var(--stage-ui-text)!important;}
#catSyncSetlistPlayer :is(.cat-sync-setlist-prev-label,.cat-sync-setlist-prev-title,.cat-sync-setlist-next-label,.cat-sync-setlist-next-title){color:var(--stage-ui-muted)!important;-webkit-text-fill-color:var(--stage-ui-muted)!important;}

/* Lightweight liquid-glass preview: one blur per surface, never per list item. */

.cat-sync-bottom .cat-sync-card,
:is(#catSyncSongs,#catSyncSetlistPlayer,.cat-sync-setlist-deck,#catSyncTunerToggle,#prototypeMiniToggle,#bookmarkSettingSaveToggle,#catSyncMenu,#prototypeGenres button),
:is(.cat-sync-sheet,.cat-sync-groove-popover,#rhythmSheet,#catSyncTuner,.setlist-save-choice,.bookmark-setting-save-dialog,.community-consent,.setlist-name-dialog){
 background:linear-gradient(145deg,rgba(255,250,238,.22),rgba(255,250,238,.015) 38%,rgba(0,0,0,.08) 78%,rgba(255,250,238,.08)),var(--stage-ui-bg)!important;
 background-image:linear-gradient(145deg,rgba(255,250,238,.22),rgba(255,250,238,.015) 38%,rgba(0,0,0,.08) 78%,rgba(255,250,238,.08))!important;
 border-color:var(--stage-ui-line)!important;
 box-shadow:var(--cs-panel-shadow)!important;
 backdrop-filter:blur(12px) saturate(140%)!important;-webkit-backdrop-filter:blur(12px) saturate(140%)!important;
}
.cat-sync-bottom .cat-sync-card{border-radius:18px!important;}
.cat-sync-bottom .cat-sync-card-label{background:rgba(255,255,255,.035)!important;color:#d8cec1!important;}
:is(.cat-sync-sheet,.cat-sync-groove-popover,#rhythmSheet,#catSyncTuner,.setlist-save-choice,.bookmark-setting-save-dialog,.community-consent,.setlist-name-dialog){border-radius:24px!important;}
:is(#rhythmSheet,.cat-sync-sheet,.cat-sync-groove-popover,.setlist-save-choice,.setlist-name-dialog,.community-consent) button,
#catSyncTuner .tn-string{
 border-radius:13px!important;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 2px 6px #0001!important;
 transition:background-color .15s,border-color .15s,transform .12s!important;
}
:is(#rhythmSheet,.cat-sync-sheet,.cat-sync-groove-popover) button:is(.active,.selected,[aria-selected="true"],[aria-pressed="true"]),#bookmarkSettingSaveConfirm,.community-consent button:first-of-type{
 background:linear-gradient(155deg,#f0d2a5,#ddb07a)!important;
 background-image:linear-gradient(155deg,#f0d2a5,#ddb07a)!important;
 box-shadow:inset 0 1px 0 #fff7,0 3px 12px #0002!important;
}
.cat-sync-ui button:active,#rhythmSheet button:active,.cat-sync-sheet button:active,#catSyncTuner button:active{transform:scale(.98)!important;}
.cat-sync-backdrop,.rhythm-sheet-backdrop,#catSyncTunerBackdrop{background:rgba(8,8,8,.36)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}
@media(max-width:520px){
 .cat-sync-bottom .cat-sync-card{border-radius:14px!important;}
 :is(.cat-sync-sheet,#rhythmSheet,#catSyncTuner){backdrop-filter:blur(10px) saturate(125%)!important;-webkit-backdrop-filter:blur(10px) saturate(125%)!important;}
}
@media(prefers-reduced-motion:reduce){button{transition:none!important;}.cat-sync-ui button:active,#rhythmSheet button:active,.cat-sync-sheet button:active,#catSyncTuner button:active{transform:none!important;}}
@media(prefers-reduced-transparency:reduce){
 :root{--stage-ui-bg:#20201f!important;--stage-ui-raised:#30302e!important;}
 :is(.cat-sync-sheet,#rhythmSheet,#catSyncTuner,.cat-sync-bottom .cat-sync-card){backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}
}
#rhythmSheet summary,#catSyncTuner summary{color:var(--stage-ui-muted)!important;-webkit-text-fill-color:currentColor!important;}
/* Keep small labels legible over the clearer glass without dimming the whole pane. */
:is(.cat-sync-sheet,#rhythmSheet,#catSyncTuner) :is(p,small,h3,label){text-shadow:0 1px 2px #0008!important;}
.cat-sync-bottom .cat-sync-card-label{background:rgba(0,0,0,.12)!important;color:#e1d9ce!important;}
@media(max-width:699px),(pointer:coarse){
 #catSyncMenu{display:flex!important;left:calc(50% - 100px)!important;right:auto!important;margin:0!important;}
 #catSyncTunerToggle{left:calc(50% - 48px)!important;right:auto!important;margin:0!important;}
 #prototypeMiniToggle{left:calc(50% + 4px)!important;right:auto!important;margin:0!important;}
 #bookmarkSettingSaveToggle{left:calc(50% + 56px)!important;right:auto!important;margin:0!important;}
}
/* SMILE belongs to the stage action row, immediately after the tuning fork. */
#prototypeMiniToggle{position:absolute;top:auto;bottom:var(--cat-sync-actions-bottom)!important;width:44px!important;height:44px!important;padding:0!important;margin:0!important;z-index:47;left:calc(50% + 4px)!important;right:auto!important;}
#prototypeMiniToggle svg{display:block;pointer-events:none;}
@media(min-width:700px) and (hover:hover) and (pointer:fine){
 #catSyncMenu{right:calc(max(9px,(100vw - 800px) / 2) + 156px)!important;}
 #catSyncTunerToggle{right:calc(max(9px,(100vw - 800px) / 2) + 104px)!important;}
 #prototypeMiniToggle{left:auto!important;right:calc(max(9px,(100vw - 800px) / 2) + 52px)!important;}
}
/* Preserve translucent glass colors; avoid recomputing live backdrop blur on phones. */
@media(pointer:coarse) and (hover:none){
 :is(.cat-sync-sheet,.cat-sync-groove-popover,#rhythmSheet,#catSyncTuner,.cat-sync-bottom .cat-sync-card,#catSyncSongs,#catSyncSetlistPlayer,.cat-sync-setlist-deck,.setlist-save-choice,.bookmark-setting-save-dialog,.community-consent,.setlist-name-dialog,.setlist-name-backdrop,.setlist-save-choice-backdrop,.cat-sync-small-btn,.cat-sync-training-status,#catSyncMenu,#catSyncTunerToggle,#prototypeMiniToggle,#bookmarkSettingSaveToggle,#prototypeGenres button){backdrop-filter:none!important;-webkit-backdrop-filter:none!important;}
}

}

/* Static six-stage chooser: glass surface, one current scene, no live previews. */
#prototypeStagePicker{
 box-sizing:border-box;width:min(520px,calc(100vw - 28px));max-height:calc(100vh - 28px);max-height:calc(100dvh - 28px);margin:auto;padding:18px 18px 20px;overflow:auto;
 color:#f3ede3;background:linear-gradient(140deg,#fffaee1f,transparent 45%),#161719f0;border:1px solid #fff5;border-radius:22px;
 box-shadow:inset 0 1px 0 #fff6,0 20px 70px #0008;font:13px -apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN',system-ui,sans-serif;
 overscroll-behavior:contain;-webkit-text-fill-color:currentColor;
}
#prototypeStagePicker::backdrop{background:#080a0dc9;}
#prototypeStagePicker header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;}
#prototypeStagePicker h2{font-size:17px;line-height:1.4;margin:0;font-weight:650;letter-spacing:.02em;}
#prototypeStagePicker header button{width:36px;height:36px;flex-shrink:0;padding:0;border:1px solid #fff4;border-radius:50%;background:#ffffff0d;color:inherit;font-size:25px;line-height:1;cursor:pointer;}
#prototypeStagePicker .stage-picker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
#prototypeStagePicker [data-stage-choice]{position:relative;min-width:0;padding:0;overflow:hidden;display:block;text-align:start;border:1px solid #fff3;border-radius:12px;background:#0d1017;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;}
#prototypeStagePicker img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:#17191b;}
#prototypeStagePicker .stage-picker-name{display:block;min-height:1.4em;padding:8px 10px;font-size:12px;font-weight:550;line-height:1.4;overflow-wrap:anywhere;}
#prototypeStagePicker [aria-current=true]{border-color:#e6b77a;box-shadow:0 0 0 1px #e6b77a66;}
#prototypeStagePicker .stage-picker-check{position:absolute;top:7px;right:7px;width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#e6b77a;color:#211b15;font-size:15px;font-weight:800;box-shadow:0 2px 8px #0008;}
#prototypeStagePicker button:focus-visible{outline:2px solid #f7d9ab;outline-offset:2px;}
#prototypeStagePicker [data-stage-choice]:hover{border-color:#e6b77a;}
@media(max-width:400px){#prototypeStagePicker{padding:14px;border-radius:18px;}#prototypeStagePicker .stage-picker-name{padding:7px 8px;font-size:11px;}}
@media(max-height:540px) and (min-width:620px){#prototypeStagePicker{width:min(780px,calc(100vw - 28px));}#prototypeStagePicker .stage-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}#prototypeStagePicker img{aspect-ratio:16/7;}#prototypeStagePicker header{margin-bottom:10px;}}

/* A selected song/active setlist uses the title as the entry back into Song Deck. */
#catSyncSongs.has-current-song .cat-sync-songs-home,
#catSyncSongs.has-current-song .cat-sync-songs-divider,
#catSyncSetlistPlayerDeck{display:none!important;}
#catSyncSetlistPlayer{grid-template-columns:minmax(0,1fr)!important;max-width:calc(100vw - 16px)!important;}
#catSyncSongs.has-current-song{--cat-sync-deck-home-width:0px;max-width:calc(100vw - 16px)!important;}

/* The stage logo is gone: selected songs and setlists can share the full header. */
#catSyncSongClear{color:#fff!important;-webkit-text-fill-color:#fff!important;height:100%!important;}
#catSyncSongClear::after{border-right-color:var(--stage-ui-line)!important;}
@media(max-width:699px),(pointer:coarse) and (hover:none){
 .cat-sync-top-actions:has(.cat-sync-deck-controls:is(.has-selected-song,.is-setlist)){
  left:max(12px,env(safe-area-inset-left))!important;
  right:max(12px,env(safe-area-inset-right))!important;
  width:auto!important;min-width:0!important;
 }
 .cat-sync-deck-controls:is(.has-selected-song,.is-setlist){flex:1 1 0!important;min-width:0!important;}
 .cat-sync-deck-controls #catSyncSongs.has-current-song,
 .cat-sync-deck-controls.is-setlist #catSyncSetlistPlayer{
  width:100%!important;min-width:0!important;max-width:100%!important;flex:1 1 0!important;
 }
}

/* Touch-phone landscape playback: reveal the controls with the first tap. */
:is(.cat-sync-bottom,#catSyncMenu,#catSyncTunerToggle,#prototypeMiniToggle,#bookmarkSettingSaveToggle,#prototypeGenres,#prototypeGenres button,#prototypeStatus,#catSyncStageHint,#catSyncSongs,#catSyncSetlistPlayer){transition:opacity .22s ease,visibility 0s linear 0s;}
html[data-stage-controls-hidden="true"] :is(.cat-sync-bottom,#catSyncMenu,#catSyncTunerToggle,#prototypeMiniToggle,#bookmarkSettingSaveToggle,#prototypeGenres,#prototypeGenres button,#prototypeStatus,#catSyncStageHint,#catSyncSongs,#catSyncSetlistPlayer){opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .22s ease,visibility 0s linear .22s;}
@media(prefers-reduced-motion:reduce){html[data-stage-controls-hidden="true"] :is(.cat-sync-bottom,#catSyncMenu,#catSyncTunerToggle,#prototypeMiniToggle,#bookmarkSettingSaveToggle,#prototypeGenres,#prototypeGenres button,#prototypeStatus,#catSyncStageHint,#catSyncSongs,#catSyncSetlistPlayer){transition:none;}}

/* iPhone MINI follows Home/app return; there is no explicit launch button. */
html[data-mini-activation="background"] #prototypeMiniToggle{display:none!important;}
@media(max-width:699px),(pointer:coarse){
 html[data-mini-activation="background"] #catSyncMenu{left:calc(50% - 74px)!important;right:auto!important;}
 html[data-mini-activation="background"] #catSyncTunerToggle{left:calc(50% - 22px)!important;right:auto!important;}
 html[data-mini-activation="background"] #bookmarkSettingSaveToggle{left:calc(50% + 30px)!important;right:auto!important;}
}

/* A quiet accent for the optional store review action at the end of the sheet. */
.cat-sync-sheet .cat-sync-store-review-button{color:#f2dfb7!important;-webkit-text-fill-color:currentColor!important;border-color:rgba(214,180,112,.6)!important;background:linear-gradient(135deg,rgba(214,180,112,.15),rgba(214,180,112,.035))!important;font-weight:750!important;letter-spacing:.025em!important;box-shadow:inset 0 1px 0 rgba(255,236,195,.15)!important;}
.cat-sync-sheet .cat-sync-store-review-button:hover{background:rgba(214,180,112,.2)!important;border-color:#d6b470!important;}
.cat-sync-sheet .cat-sync-store-review-button:focus-visible{outline:2px solid #e2c58e!important;outline-offset:3px;}

/* Keep the iPhone's three surviving actions in one centered layout group. */
#catSyncStageActions{position:absolute;left:50%;right:auto;bottom:var(--cat-sync-actions-bottom);transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:8px;width:max-content;z-index:47;pointer-events:auto;}
#catSyncStageActions>:is(#catSyncMenu,#catSyncTunerToggle,#bookmarkSettingSaveToggle){position:static!important;left:auto!important;right:auto!important;bottom:auto!important;margin:0!important;width:44px!important;height:44px!important;flex:0 0 44px;display:flex!important;}

/* Small static portraits share the stage picker assets; no additional models. */
.cat-sync-character-access{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cat-sync-character-access-card{min-width:0;overflow:hidden;border:1px solid #ffffff38;border-radius:12px;background:#ffffff08;display:flex;flex-direction:column;padding-bottom:10px;gap:5px}
.cat-sync-character-access-card img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.cat-sync-character-access-card strong,.cat-sync-character-access-card span{padding:0 9px;line-height:1.4;overflow-wrap:anywhere}
.cat-sync-character-access-card strong{font-size:13px;color:#fff}
.cat-sync-character-access-card span{font-size:11px;color:#eee}
.cat-sync-character-access-card .cat-sync-access-free{color:#ffe4aa;font-weight:650}
@media(max-width:540px){.cat-sync-character-access{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}}

#prototypeStagePicker .stage-picker-access{display:block;padding:0 10px 10px;font-size:11px;line-height:1.4;color:#ffe4aa}
#prototypeStagePicker [data-access-ended="true"] img{opacity:.48}
#prototypeStagePicker [data-access-ended="true"] .stage-picker-access{color:#eee}
