.performance-shell{display:grid;gap:10px}.performance-bar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;gap:15px;align-items:center;padding:10px 14px;background:#101820;color:#fff;border-radius:8px}.performance-bar h1{margin:1px 0;font-size:1.35rem}.performance-controls,.performance-controls form{display:flex;flex-wrap:wrap;gap:7px}.performance-layout{display:grid;grid-template-columns:minmax(180px,260px) minmax(0,1fr);gap:10px;min-height:70vh}.performance-setlist{max-height:78vh;overflow:auto;padding:8px;background:#17212b;border-radius:8px}.performance-setlist h2{color:#fff}.performance-setlist form{margin:0}.performance-setlist button{display:block;width:100%;padding:9px;border:0;border-bottom:1px solid #34424d;background:transparent;color:#fff;text-align:left}.performance-setlist button small{display:block;color:#b8c4ca}.performance-setlist .current button{background:#176b87;border-radius:5px}.performance-stage{min-width:0}.performance-materials{display:flex;gap:6px;overflow:auto;margin-bottom:7px}.performance-materials a{padding:5px 9px;background:#e8edef;border-radius:5px;white-space:nowrap}.performance-materials a.current{background:#176b87;color:#fff}.performance-document{width:100%;height:76vh;border:0;background:#fff}.performance-image{display:block;max-width:100%;max-height:76vh;margin:auto}.performance-finish{display:flex;justify-content:flex-end;gap:7px}.performance-hide-annotations .material-annotation-layer,.performance-hide-annotations .material-annotation-tools{display:none!important}@media(max-width:700px){.performance-bar{align-items:flex-start;flex-direction:column}.performance-layout{grid-template-columns:1fr}.performance-setlist{max-height:150px}.performance-document{height:68vh}}
.performance-hide-annotations .material-annotation-panel{display:none!important}
.performance-settings{position:sticky;top:82px;z-index:19;display:flex;flex-wrap:wrap;gap:10px;align-items:end;padding:10px;background:#f4f7f8;border:1px solid #bdcbd1;border-radius:7px}.performance-settings label{display:grid;gap:3px;font-size:12px}.performance-settings input[readonly]{width:115px}.performance-settings output{font-size:12px}.performance-stage:fullscreen{height:100vh;overflow:auto;padding:8px;background:#101820}.performance-stage:fullscreen .performance-document{height:calc(100vh - 50px)}
.secure-session-content img,.secure-session-content iframe{-webkit-user-drag:none;-webkit-touch-callout:none}
.performance-audio-dock{position:sticky;top:72px;z-index:18;padding:7px;background:#eef4f6;border:1px solid #b7c8cf;border-radius:7px}.performance-audio-dock audio{margin:4px 0 0}.performance-stage:fullscreen .performance-audio-dock{top:0}.performance-stage:fullscreen .performance-document{height:calc(100vh - 110px)!important;transform:none!important;width:100%!important}.performance-stage:fullscreen .practice-document-controls{display:none}
.performance-song-request{display:flex;flex-wrap:wrap;align-items:end;gap:10px;padding:8px 10px;border:1px solid #bdcbd1;border-radius:7px;background:#f4f7f8}.performance-song-request>div:first-child{min-width:230px;flex:1}.performance-song-request small{display:block}.performance-song-request label{display:grid;gap:3px}.performance-song-request input{min-width:min(420px,75vw)}.performance-song-results{display:flex;flex-wrap:wrap;gap:6px;width:100%}.performance-song-results form{margin:0}.performance-song-results button{text-align:left}.performance-song-results button small{display:block}
.performance-public-links{display:flex;flex-wrap:wrap;align-items:end;gap:10px;padding:8px 10px;border:1px solid #8298a2;border-radius:7px;background:#eef4f6}.performance-public-links>div:first-child{min-width:260px;flex:1}.performance-public-links small{display:block}.performance-public-link-list{display:grid;gap:4px;width:100%}.performance-public-link-list>div{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.performance-public-link-list form{margin:0}
.performance-offline-packages{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 10px;border:1px solid #8298a2;border-radius:7px;background:#eef4f6}.performance-offline-packages>div:first-child{min-width:260px;flex:1}.performance-offline-packages small,.performance-offline-packages span{display:block}
body.performance-stage-active{overflow:hidden;background:#202a30}.performance-shell.performance-stage-mode{position:fixed;z-index:100;inset:0;display:block;height:100dvh;padding:6px 6px 58px;background:#263238}.performance-shell.performance-stage-mode>*{display:none!important}.performance-shell.performance-stage-mode>.performance-layout{display:grid!important;grid-template-columns:1fr;height:calc(100dvh - 64px)}.performance-shell.performance-stage-mode>.stage-dock{display:flex!important}.performance-shell.performance-stage-mode .performance-stage{display:block;height:100%;overflow:hidden}.performance-shell.performance-stage-mode .performance-setlist{display:none}.performance-shell.performance-stage-mode .performance-document{height:calc(100dvh - 105px)!important}.performance-shell.performance-stage-mode .performance-materials{height:34px;margin:0 0 5px}.performance-shell.performance-stage-mode .performance-audio-dock{display:none}.performance-shell.performance-stage-mode .stage-floating-panel{display:none!important}.performance-shell.performance-stage-mode .stage-floating-panel.stage-panel-open{display:block!important;position:fixed;z-index:130;left:50%;bottom:62px;transform:translateX(-50%);width:min(94vw,900px);max-height:55vh;overflow:auto;margin:0;padding:12px;background:#fff;border:1px solid #81949d;border-radius:10px;box-shadow:0 14px 40px #0008}.performance-shell.performance-stage-mode .performance-setlist.stage-panel-open{color:#fff;background:#17212b}.performance-shell.performance-stage-mode .performance-setlist.stage-panel-open h2{color:#fff}
.performance-cast{margin:0 0 18px;padding:14px;border:1px solid #c9d4d9;border-radius:9px}.performance-cast-grid,.performance-readiness-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.performance-cast-grid label{margin:0;padding:9px;border:1px solid #dce4e8;border-radius:7px}.performance-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.performance-section-heading h2{margin:0}.readiness-status{padding:7px 11px;border-radius:999px;color:#fff;font-weight:800}.readiness-status.ready{background:#2e7d32}.readiness-status.waiting{background:#b35a00}.readiness-person{display:grid;grid-template-columns:auto 1fr;gap:4px 8px;align-items:center;padding:9px;border:1px solid #d5dde1;border-radius:8px;background:#fff7e8}.readiness-person.ready{background:#ecf8ee;border-color:#77b77e}.readiness-person .button{grid-column:1/-1}.readiness-person small{grid-column:2}.readiness-locked audio{opacity:.45}.performance-collapsible-section{position:relative;padding-top:50px!important;border-color:#c62828!important;box-shadow:inset 0 0 0 1px #c62828}.performance-section-toggle{position:absolute!important;top:7px;left:8px;z-index:6}.performance-section-collapsed{min-height:38px!important;max-height:48px!important;overflow:hidden!important;padding:5px 8px 5px 180px!important;border-color:#2e7d32!important;box-shadow:inset 0 0 0 1px #2e7d32}.performance-section-collapsed>*:not(.performance-section-toggle):not(.stage-panel-handle){display:none!important}.performance-material-panel h2{margin:0 0 8px}.performance-viewer-panel{padding:8px}.performance-viewer-panel .performance-document{min-height:72vh}.performance-setlist .session-list{max-height:720px;overflow:auto}.performance-setlist .session-row{display:block;padding:7px;border-bottom:1px solid #dbe3e7}.performance-setlist .session-row.current{background:#ddecf5}.performance-shell>.panel,.performance-stage>.panel{margin:0}
@media(max-width:700px){.performance-cast-grid,.performance-readiness-grid{grid-template-columns:1fr}.performance-section-heading{align-items:stretch;flex-direction:column}.performance-viewer-panel .performance-document{min-height:68vh}}
.performance-readiness:not(.material-ready){display:none}.performance-readiness.material-ready{animation:performance-readiness-in .18s ease-out}.performance-readiness.readiness-attention{position:fixed;z-index:1200;top:18px;left:50%;transform:translateX(-50%);width:min(920px,calc(100vw - 24px));max-height:calc(100vh - 36px);overflow:auto;box-shadow:0 18px 70px #102c3a66;border:2px solid #b35a00;animation:performance-readiness-popup .18s ease-out}.performance-readiness.readiness-attention.performance-section-collapsed{width:min(420px,calc(100vw - 24px));max-height:48px}.performance-metronome{margin:0!important}.performance-metronome>small{color:var(--muted)}@keyframes performance-readiness-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes performance-readiness-popup{from{opacity:0;transform:translate(-50%,-6px)}to{opacity:1;transform:translate(-50%,0)}}
.performance-stage-exit,.performance-device-fullscreen{display:none;position:fixed;z-index:170;top:max(8px,env(safe-area-inset-top));height:42px;padding:0;border:2px solid #fff;color:#fff;line-height:1;box-shadow:0 3px 14px #0008;cursor:pointer}.performance-stage-exit{right:max(8px,env(safe-area-inset-right));width:42px;border-radius:50%;background:#9f2828;font-size:28px}.performance-device-fullscreen{right:max(58px,calc(env(safe-area-inset-right) + 58px));min-width:42px;padding:0 8px;border-radius:21px;background:#176b87;font-size:20px}.performance-shell.performance-stage-mode>.performance-stage-exit,.performance-shell.performance-stage-mode>.performance-device-fullscreen{display:block!important}.performance-shell.performance-stage-mode .performance-stage>*{display:none!important}.performance-shell.performance-stage-mode .performance-stage>.performance-viewer-panel{display:block!important;box-sizing:border-box;height:calc(100dvh - 70px);padding:4px;overflow:hidden}.performance-shell.performance-stage-mode .performance-stage>.stage-floating-panel.stage-panel-open{display:block!important}.performance-shell.performance-stage-mode .performance-viewer-panel .performance-document,.performance-shell.performance-stage-mode .performance-viewer-panel .performance-image{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;object-fit:contain}.performance-shell.performance-stage-mode.performance-stage-controls-hidden{padding:4px}.performance-shell.performance-stage-mode.performance-stage-controls-hidden>.performance-layout{height:calc(100dvh - 8px)}.performance-shell.performance-stage-mode.performance-stage-controls-hidden .performance-stage>.performance-viewer-panel{height:calc(100dvh - 8px)}.performance-shell.performance-stage-mode.performance-stage-controls-hidden>.stage-dock,.performance-shell.performance-stage-mode.performance-stage-controls-hidden>.performance-stage-exit,.performance-shell.performance-stage-mode.performance-stage-controls-hidden>.performance-device-fullscreen{display:none!important}
.performance-document-navigation{display:flex;align-items:center;justify-content:flex-start;gap:10px;margin:0 0 10px}.performance-display-panel{margin:0 0 10px!important}.performance-display-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}.performance-display-controls select{min-height:38px;padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:#fff}.performance-controls>.performance-finish{margin:0}.performance-shell.performance-stage-mode .performance-viewer-panel .pdfjs-reader{height:100%!important;min-height:0;margin:0}.performance-shell.performance-stage-mode .performance-viewer-panel .pdfjs-toolbar,.performance-shell.performance-stage-mode .performance-viewer-panel>.performance-document-navigation{display:none!important}
.performance-shell .hidden{display:none!important}.performance-shell.performance-stage-mode>.metronome-visual.visible{display:flex!important}
.performance-audio-dock{position:relative!important;top:auto!important;margin-bottom:10px!important}.performance-metronome{position:relative;margin-top:10px!important}.performance-controls .button.active,.stage-dock button.active{border-color:#77d5f2!important;background:#176b87!important;color:#fff!important;box-shadow:0 0 0 2px #77d5f266}.performance-hide-annotations .material-annotation-layer{display:none!important}.performance-hide-annotations .material-annotation-tools{display:flex!important}.performance-document-editor-panel{margin:10px 0!important}.performance-tool-frame{display:block;width:100%;height:min(70vh,760px);margin-top:8px;border:1px solid #bdcbd1;border-radius:7px;background:#fff}.performance-section-collapsed>.performance-tool-frame{display:none!important}.performance-shell.performance-stage-mode .performance-document-editor-panel:not(.stage-panel-open){display:none!important}
.performance-setlist{max-height:none;overflow:visible!important}
.performance-setlist .session-list{height:min(960px,82vh);max-height:960px;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable}
.performance-shell.performance-stage-mode .performance-setlist.stage-panel-open{overflow:hidden!important}
.performance-shell.performance-stage-mode .performance-setlist.stage-panel-open .session-list{height:min(840px,68vh);max-height:68vh;overflow-y:auto}
.performance-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:12px 0}.performance-settings-grid label,.performance-message-editors label{display:grid;gap:6px;align-content:start}.performance-setting-checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:8px;margin:12px 0}.performance-message-editors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.performance-message-editors textarea{width:100%;min-height:110px;resize:vertical}@media(max-width:800px){.performance-message-editors{grid-template-columns:1fr}}
.performance-shell.performance-readiness-required::before{content:"";position:fixed;inset:0;z-index:1199;background:rgba(4,18,25,.72);backdrop-filter:blur(2px)}.performance-shell.performance-readiness-required .performance-readiness.readiness-attention{top:50%;transform:translate(-50%,-50%);z-index:1200}.performance-shell.performance-readiness-required .performance-readiness .performance-section-toggle{display:none!important}
.performance-shell.performance-stage-mode.performance-readiness-required>.performance-readiness{display:block!important}.performance-shell.performance-stage-mode>.performance-start-banner:not([hidden]){display:block!important;z-index:1400}
.performance-seek-control{display:grid;grid-template-columns:auto minmax(120px,1fr) auto;align-items:center;gap:8px;margin-top:5px}.performance-seek-control input{width:100%}.performance-seek-control output{font-variant-numeric:tabular-nums;white-space:nowrap}
