/* Administration only: source documents never load this stylesheet. */
.has-section-navigation #overlayCategoryNavigation,.has-section-navigation [data-page] > .page-tabs,.has-section-navigation [data-page^="twitch/"] > .sub-tabs { display:none!important; }
.nav-subgroup { margin:2px 0 12px 17px; padding-left:10px; border-left:1px solid var(--line); display:grid; gap:3px; }
.nav-subgroup[hidden] { display:none; }
.nav-subitem { display:block; border-radius:6px; padding:9px 10px; font-size:13px; color:var(--muted); line-height:1.4; text-decoration:none; overflow-wrap:anywhere; }
.nav-subitem:hover,.nav-subitem.selected { background:var(--accent-dark); color:var(--accent); }
.nav-subitem:focus-visible { outline:2px solid var(--accent); outline-offset:1px; }
.collection-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin:0 0 18px; }
.collection-toolbar input { flex:1 1 220px; min-width:0; }.collection-toolbar select { flex:0 1 180px; min-width:0; }.collection-toolbar .help-text { margin:0; }
.collection-rows { display:grid; gap:0; }.collection-row { display:flex; flex-wrap:wrap; align-items:center; gap:16px; padding:14px 0; border-bottom:1px solid var(--line); min-width:0; }
.collection-copy { flex:1 1 240px; min-width:0; }.collection-copy strong { font-size:15px; }.collection-summary { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; overflow-wrap:anywhere; margin:5px 0 0; font-size:13px; }
.collection-actions { display:flex; align-items:center; gap:8px; flex:none; }.collection-actions .button { min-height:36px; }.collection-add { margin-top:18px; }
.draft-list-dialog { width:min(620px,calc(100vw - 32px)); max-height:90dvh; overflow:auto; }
.draft-list-dialog form { display:grid; gap:16px; }.draft-list-dialog .field { display:grid; gap:8px; margin:0; }.draft-list-dialog input,.draft-list-dialog select,.draft-list-dialog textarea { width:100%; min-width:0; }.draft-list-dialog input[type=checkbox] { width:20px; height:20px; }
.draft-list-dialog .help-text { margin:0; }.action-feedback { margin:12px 0; white-space:normal; overflow-wrap:anywhere; }
.inventory-tools { margin:0 0 14px; display:flex; gap:10px; align-items:center; }.inventory-tools input { width:100%; min-width:0; }.inventory-list { max-height:420px; overflow:auto; }
.standard-command-search { width:min(100%,420px); margin-bottom:16px; }.command-catalog .command-item { min-width:0; }
.discord-settings-section { border-bottom:1px solid var(--line); padding:16px 0; }.discord-settings-section > summary { cursor:pointer; font-weight:600; font-size:16px; }.discord-settings-section > .settings-group { margin:18px 0 0; }
.discord-welcome-preview { border:1px solid var(--line); padding:14px; border-radius:8px; white-space:pre-wrap; overflow-wrap:anywhere; font-size:14px; background:var(--panel-soft); }
.management-dialog { width:min(640px,calc(100vw - 28px)); max-height:90dvh; overflow:auto; }.management-dialog > form.panel { margin:0; border:0; padding:0; }.management-dialog-heading { display:flex; justify-content:space-between; gap:12px; margin-bottom:18px; }
.management-dialog .field { margin:0 0 16px; }.management-dialog .dialog-actions { margin-top:18px; }
.form-dialog { width:min(680px,calc(100vw - 28px)); max-height:90dvh; overflow:auto; }.form-dialog > form.panel { margin:0; border:0; padding:0; }.form-dialog > h2 { margin-bottom:20px; }.form-dialog .form-grid { grid-template-columns:1fr; }.form-dialog-discard { margin-top:16px; }.form-dialog-discard button + button { margin-left:8px; }
.poll-settings { padding-top:20px; }#twitchCommandList { grid-template-columns:1fr; }#twitchCommandList .command-item { padding:16px 0; }
.schedule-layout { display:block; }.schedule-layout > .panel { width:100%; }
.management-quicklinks { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:24px; }.management-quicklinks a { font-size:13px; }
.main-content .help-text { font-size:max(12px,1em); line-height:1.6; }
@media (max-width:600px) { .collection-actions { width:100%; justify-content:flex-end; }.collection-toolbar select { flex:1; }.collection-toolbar .help-text { flex-basis:100%; }.draft-list-dialog { padding:20px; } }

/* Work areas share a compact task navigation; only the selected task is open. */
.task-tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:0 0 8px;margin:0 0 18px}
.task-tab{min-height:38px;padding:8px 13px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:13px;cursor:pointer}
.task-tab[aria-selected=true]{background:var(--accent-dark);border-color:var(--line);color:var(--accent)}
.task-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.task-panel{min-width:0}.task-panel[hidden]{display:none!important}
.task-panel>details[open]>summary{display:none}.task-panel>details,.task-panel>section{border:0;margin:0;padding:0}
.main-content .page-heading{margin-bottom:24px}
.main-content .panel-heading{gap:12px;margin-bottom:18px}
.main-content .panel-heading h2,.main-content .panel>h2{font-size:17px}
.main-content .field label{line-height:1.5;font-size:13px}
.main-content input:not([type=checkbox]):not([type=range]):not([type=color]),.main-content select,.main-content textarea{font-size:14px}
.main-content :is(.button,.text-button){font-size:13px}
.main-content :is(.panel,.task-panel,.field,.form-grid)>*{min-width:0}
.main-content .form-footer{gap:12px;flex-wrap:wrap}
.main-content .panel:has(>.task-tabs){min-width:0}

/* Effect forms: rendering, sound and triggers no longer compete in one column. */
.route-page .overlay-detail-layout{grid-template-columns:minmax(0,1.7fr) minmax(260px,.8fr);align-items:start;gap:20px}
.route-page .overlay-side-column{position:static;display:grid;gap:16px}
.route-page .overlay-side-column>.panel{margin:0}
.overlay-setting-tasks{margin-top:18px}
.overlay-setting-tasks .overlay-form-section>h3{margin:0 0 16px}
.overlay-setting-tasks .overlay-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
.overlay-setting-tasks .overlay-fields>.field>label{min-height:1.5em}
.overlay-setting-tasks .overlay-audio-settings{border:0;margin:0;padding:0}
.overlay-setting-tasks .game-class-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.overlay-setting-tasks .game-class-row{padding:12px;grid-template-columns:minmax(0,1fr) auto;align-content:start;background:var(--input);border:1px solid var(--line);border-radius:8px;gap:8px}
.overlay-setting-tasks .game-class-row>.help-text{grid-column:1/-1}
.route-page .overlay-source-panel>summary{font-size:15px;cursor:pointer;font-weight:600}
.route-page .overlay-source-panel[open]>summary{margin-bottom:14px}
.route-page .overlay-save-footer{position:static;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 0 0;margin-top:22px;border-top:1px solid var(--line)}
.route-page .overlay-save-footer>p{font-size:12px}
.route-page .overlay-card{padding:18px;display:flex;flex-direction:column;gap:10px}
.route-page .overlay-card h2{font-size:17px;margin:0}
.route-page .overlay-card p{margin:0;line-height:1.5}
.route-page .overlay-card>.overlay-card-points:empty{display:none}
.route-page .overlay-card-actions{margin-top:auto;padding-top:8px;gap:8px}
.route-page .overlay-card-top{margin:0}.route-page .overlay-card .feature-icon{width:32px;height:32px}
.route-page .overlay-card .overlay-card-description{font-size:13px;color:var(--muted)}
.route-page .overlay-catalog{grid-template-columns:repeat(auto-fill,minmax(min(100%,275px),1fr));gap:16px}
.route-page .overlay-catalog-search{display:grid;grid-template-columns:minmax(0,480px) auto;gap:8px 16px;align-items:end}
.route-page .overlay-catalog-search>label{grid-column:1/-1}

/* Alert editing starts above the fold; a full event list is optional. */
.route-page .alerts-picker{display:grid;grid-template-columns:minmax(180px,360px) auto;align-items:center;gap:10px 16px;padding:16px 20px;margin:18px 0}
.route-page .alerts-picker>label{grid-column:1/-1;width:auto}
.route-page .alerts-picker>select{display:block;max-width:none;width:100%}
.route-page .alerts-picker>.help-text{margin:0}
.route-page .alerts-event-overview{grid-column:1/-1}
.alerts-event-overview>summary{cursor:pointer;color:var(--muted);font-size:13px}
.alerts-event-overview[open]>.alerts-event-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:16px}
.route-page .alerts-admin-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}
.route-page .alerts-design-grid{grid-template-columns:repeat(auto-fit,minmax(95px,1fr));gap:8px}
.route-page .alerts-design-artwork{max-height:92px;min-height:60px}
.route-page .alerts-design-label{font-size:12px;padding:8px 4px}
.route-page .alerts-preview-column{position:static}
.route-page .alerts-queue>summary{list-style:revert;font-size:15px}
.route-page .alerts-queue>summary::-webkit-details-marker{display:revert}
.route-page .alerts-queue:not([open])>:not(summary){display:none}

/* The actual music settings occupy the main area, playback gets its own side. */
.music-admin-grid[data-task=player]{grid-template-columns:minmax(0,1.2fr) minmax(320px,1fr)}
.music-player-workspace>.panel{margin:0}
.music-player-workspace .music-settings{display:block}
.music-settings-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.music-player-workspace .music-check{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px}
.music-player-workspace .music-check input{width:18px;height:18px;margin:0}
.music-admin-side{display:grid;gap:16px}.music-admin-side>.panel{margin:0}
.music-player-workspace .task-panel{margin-bottom:18px}
.music-player-workspace>.panel>.button{margin-top:12px}
.main-content .music-transport-controls{display:flex;justify-content:center;gap:8px}
.main-content .music-transport-controls .button{width:44px;height:40px;padding:8px}

/* Short command rows keep their settings directly alongside the command. */
#twitchCommandList .command-editable{grid-template-columns:minmax(0,1fr) auto auto;gap:8px 18px;align-items:center;padding:14px 0}
#twitchCommandList .command-editable>.toggle-label{grid-column:3;grid-row:1;margin:0}
#twitchCommandList .command-details{grid-column:2;grid-row:1;margin:0}
#twitchCommandList .command-details[open]{grid-column:1/-1;grid-row:2;padding:12px;border-radius:8px;background:var(--input)}
#twitchCommandList .command-details summary{font-size:12px}
#twitchCommandList .command-item p{font-size:13px;margin:6px 0 0}
.main-content .collection-actions{flex-wrap:wrap}
.route-page .draw-admin-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:20px}
.route-page .draw-admin-grid>.panel{padding:20px}
.route-page .draw-operation{background:var(--input);padding:16px}
.draw-design-picker{margin-top:18px}.draw-design-picker>summary{cursor:pointer;font-size:14px}
.route-page .draw-task-settings> .task-tabs{gap:2px}.route-page .draw-task-settings .task-tab{padding-inline:9px}
.route-page .draw-save-row{border-top:1px solid var(--line);padding-top:16px;margin-bottom:0}
.route-page .draw-preview{max-height:58dvh;aspect-ratio:1}
.route-page .source-test-tasks{margin-top:20px}
.route-page .source-test-tasks .panel{padding:0;border:0;background:none;margin:0}
.route-page .source-admin-grid{grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:20px}
.route-page .source-trigger-row{padding:14px 0;gap:14px}
@media(max-width:1100px){.route-page .draw-admin-grid{grid-template-columns:minmax(0,1fr)}.route-page .draw-preview{max-width:480px;margin-inline:auto}.route-page .source-admin-grid{grid-template-columns:1fr}}
@media(max-width:500px){.route-page .draw-designs{grid-template-columns:repeat(2,minmax(0,1fr))}.route-page .draw-options :is(td,th){padding-inline:2px}.route-page .draw-options input{padding:8px 4px}.route-page .draw-settings{grid-template-columns:1fr}}

@media(min-width:2300px){.main-content{padding-inline:clamp(32px,2vw,80px)}.route-page .overlay-detail-layout{grid-template-columns:minmax(0,2fr) minmax(320px,1fr)}.route-page .overlay-catalog{grid-template-columns:repeat(auto-fill,minmax(330px,1fr))}}
@media(max-width:1100px){.route-page .overlay-detail-layout,.route-page .alerts-admin-grid,.music-admin-grid[data-task=player]{grid-template-columns:minmax(0,1fr)}.route-page .overlay-side-column{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.route-page .alerts-preview-column{display:grid}.route-page .alerts-preview-panel{grid-row:auto}.route-page .alerts-editor{grid-row:auto}.music-admin-side{position:static}}
@media(max-width:650px){.route-page .overlay-side-column,.overlay-setting-tasks .overlay-fields,.music-settings-fields{grid-template-columns:minmax(0,1fr)}.route-page .alerts-picker{grid-template-columns:minmax(0,1fr)}.alerts-event-overview[open]>.alerts-event-chips{grid-template-columns:repeat(2,minmax(0,1fr))}.route-page .overlay-catalog-search{grid-template-columns:1fr}.route-page .overlay-save-footer{position:static}#twitchCommandList .command-editable{grid-template-columns:minmax(0,1fr) auto}#twitchCommandList .command-editable>.toggle-label{grid-column:2}#twitchCommandList .command-details{grid-column:1/-1;grid-row:2}.task-tab{flex:1 0 auto}}

/* Server hierarchy stays readable while preserving private-channel filtering. */
.inventory-list .inventory-category{color:var(--muted);font-size:12px;font-weight:650;text-transform:uppercase;letter-spacing:.06em;margin-top:12px;background:var(--input)}
.inventory-list .inventory-child{padding-left:28px}
.inventory-category[hidden],.inventory-child[hidden]{display:none}
.discord-command-reference>summary,.web-studio-output-settings>summary,.game-classes-reference>summary{cursor:pointer;font-weight:600;font-size:14px}
.discord-command-reference[open]>summary{margin-bottom:20px}
.game-classes-reference{margin-top:18px}
.command-tasks .panel{margin-top:0}
#chatSettingsForm>.save-row{flex-wrap:wrap}
.web-studio-property-tasks .task-tabs{gap:0}
.web-studio-property-tasks .task-tab{padding-inline:10px}
.web-studio-property-tasks .web-studio-fields{margin:0;padding:0}
.web-studio-property-tasks .web-studio-mixer{margin:0;padding:0;border:0}
.web-studio-canvas-tools .ui-icon-button{min-width:36px;min-height:36px;padding:7px}
.web-studio-output-settings{margin-top:20px;border:1px solid var(--line);border-radius:12px;padding:20px}
.web-studio-output-settings[open]{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.web-studio-output-settings>summary{grid-column:1/-1}
.web-studio-output-settings>.panel{margin:0}
@media(max-width:900px){.web-studio-output-settings[open]{grid-template-columns:1fr}}

.layout-list-more{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.layout-list-more>summary{cursor:pointer;padding:10px 14px;border:1px solid var(--line);border-radius:8px;font-size:13px;background:var(--input)}
.layout-list-more[open]>.button{margin:8px 6px 0 0}
.layout-editor .layout-group-tools{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}
.layout-group-tools .ui-icon-button{padding:7px;min-width:34px;min-height:34px}
.route-page .source-trigger-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
.source-trigger-pager{border-top:1px solid var(--line);padding-top:16px}
.source-trigger-pager>.help-text{margin-right:auto}
@media(max-width:1100px){.route-page .source-trigger-list{grid-template-columns:minmax(0,1fr)}}

@media(max-width:600px){.collection-toolbar>input[type=search],.collection-toolbar>select{flex:1 1 100%;width:100%;min-width:0}}
.route-page .alerts-design-grid{grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}
@media(max-width:500px){.route-page .alerts-design-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

.soundboard-grid.no-editor{grid-template-columns:minmax(0,1fr)}
.moderation-settings-tasks{margin-top:18px}
.moderation-settings-tasks .settings-group:first-child{border-top:0;padding-top:0}
.moderation-settings-tasks .settings-details{border:0;margin:0;padding:0}

.route-page .overlay-catalog-search{grid-template-columns:minmax(0,1fr) minmax(150px,220px) auto}
.overlay-catalog-search>.overlay-catalog-filters{grid-column:3;grid-row:2;display:flex;gap:8px;flex-wrap:wrap}
.overlay-game-search{grid-column:1/-1;max-width:480px;width:100%}.overlay-game-search>input{width:100%}
.overlay-game-search~.overlay-catalog-empty{grid-column:1/-1}
@media(max-width:1200px){.route-page .overlay-catalog-search{grid-template-columns:minmax(0,1fr) minmax(150px,220px)}.overlay-catalog-search>.overlay-catalog-filters{grid-column:1/-1;grid-row:auto}}
@media(max-width:600px){.route-page .overlay-catalog-search{grid-template-columns:minmax(0,1fr)}}

/* Playlist editing keeps its settings beside the ordered media, not above it. */
.playlist-selection{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:18px}
.playlist-selection>.field,.playlist-selection>.video-playlist-field{margin:0}
.music-playlist-form,.video-playlist-form{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:20px 28px;align-items:start}
.playlist-details,.playlist-order{min-width:0}.playlist-details h3,.playlist-order h3{font-size:15px;margin:0 0 14px}
.playlist-order{border-left:1px solid var(--line);padding-left:24px}
.playlist-details .music-playlist-add{grid-template-columns:minmax(0,1fr)}
.playlist-details .music-playlist-options{grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:22px}
.playlist-details .music-check{display:flex;align-items:center;justify-content:space-between;gap:12px}
.playlist-details .music-check input{width:18px;height:18px}
:is(.music-playlist-form,.video-playlist-form)>.music-controls,:is(.music-playlist-form,.video-playlist-form)>.help-text{grid-column:1/-1;margin:0}
:is(.music-playlist-form,.video-playlist-form)>.music-controls{border-top:1px solid var(--line);padding-top:16px}
@media(max-width:1100px){.music-playlist-form,.video-playlist-form{grid-template-columns:minmax(0,1fr)}.playlist-order{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}}
@media(max-width:600px){.playlist-selection{grid-template-columns:minmax(0,1fr)}}
