/* Audio-panel components. All dimensions are live CSS, not baked artwork. */
.instrument-ui header{padding:12px 16px 0;background:var(--bg);border:0;box-shadow:none}
.instrument-panel{max-width:1240px;margin:auto;padding:18px 20px 12px;border:1px solid #50544e;border-radius:14px;background:linear-gradient(160deg,#343832,#232622 65%);box-shadow:0 8px 22px #0005,inset 0 1px #ffffff12}
.panel-main{display:grid;grid-template-columns:auto minmax(110px,1fr) auto auto 48px;gap:20px;align-items:start}
.panel-navigation,.panel-material-types,.panel-material-nav{display:flex;gap:8px;align-items:center}
.panel-button,.instrument-ui #panel-tray .icon,.instrument-ui #panel-tray .edit-save-actions button{display:inline-grid;place-items:center;flex:0 0 48px;width:48px;min-width:48px;height:48px;min-height:48px;padding:11px;border:1px solid #575b54;border-radius:6px;background:linear-gradient(#363b35,#272c26);box-shadow:inset 0 1px #ffffff0e,0 2px 2px #0005;color:#e6e9e3;text-decoration:none;transition:background .12s,color .12s,box-shadow .12s,border-color .12s;cursor:pointer}
.panel-button svg{display:block;width:24px;height:24px;pointer-events:none}
.panel-button:not(:disabled):hover,.panel-button:focus-visible,.instrument-ui #panel-tray button:not(:disabled):hover{border-color:var(--green);color:var(--green);background:#303a2c;box-shadow:inset 0 1px #ffffff10,0 0 7px #75b35b18}
.panel-button:focus-visible,.instrument-ui #panel-tray :focus-visible{outline:2px solid var(--green);outline-offset:3px}
.panel-button:not(:disabled):active,.panel-button[aria-pressed=true],.panel-button[data-engaged=true]{background:#1c251a;border-color:#75b35b88;box-shadow:inset 0 2px 5px #0009;color:var(--green)}
.panel-button:disabled,.panel-button:disabled:hover{opacity:.28;background:#252824;color:#9a9e97;border-color:#4a4f46;box-shadow:none;cursor:default;transition:none}
.panel-wordmark{align-self:center;display:flex;justify-content:center;font:750 27px/1 'Montserrat Local',sans-serif;letter-spacing:-1px;text-decoration:none;color:var(--green);white-space:nowrap;padding-bottom:14px}
.panel-wordmark b{color:#b9c2b3}.panel-wordmark span:first-child{color:#8a9784}
.panel-timer{display:grid;grid-template-columns:48px 112px 48px 48px;gap:8px;position:relative;width:auto;height:auto}
.timer-display{position:relative;display:grid;justify-items:center;align-content:center;gap:1px;height:48px;border:1px solid #101810;border-radius:5px;background:linear-gradient(150deg,#10170f,#151c13);box-shadow:inset 0 2px 5px #0009;overflow:hidden}
.timer-display::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,#ffffff05,transparent 55%)}
.timer-digits{font:500 25px/1.05 Consolas,'Courier New',monospace;letter-spacing:0;color:var(--green);font-variant-numeric:tabular-nums;text-shadow:0 0 5px #75b35b30}
.timer-target{font:9px/1.1 Consolas,monospace;letter-spacing:.4px;color:#87977e}
.timer-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#303c2b}.timer-progress-fill{display:block;height:100%;background:var(--green)}
.timer-status{grid-column:1/-1;text-align:center;font-size:10px;line-height:14px;color:#9ea798;letter-spacing:.06em}
.panel-timer[data-state=paused] .timer-digits{color:#b2bba9}.panel-timer[data-state=finished] .timer-display{border-color:var(--green)}
.panel-materials{display:grid;grid-template-columns:auto auto;column-gap:16px;row-gap:8px;min-width:0}.panel-counter{display:grid;place-items:center;width:36px;min-width:36px;height:48px;color:#b7c2b0;text-decoration:none;font:13px Consolas,monospace}
.panel-material-name{grid-column:1/-1;min-width:0;max-width:320px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:14px;color:#a4ae9e}
#panel-tray{margin-top:12px;padding-top:12px;border-top:1px solid #ffffff18}
.instrument-ui #panel-tray .item-management{position:static!important;top:auto!important;margin:0;padding:0;max-width:none;width:100%;border:0;border-radius:0;background:none;box-shadow:none}
.instrument-ui #panel-tray .selection-bar{padding:0;gap:8px;flex-wrap:wrap;align-items:center}
.instrument-ui #panel-tray .management-actions{flex-wrap:wrap;gap:8px}
.instrument-ui #panel-tray .icon{padding:11px}.instrument-ui #panel-tray .ui-icon{width:24px;height:24px}
.instrument-ui #panel-tray .edit-save-actions{margin-left:auto;padding-left:16px;gap:8px}.instrument-ui #panel-tray #floating-save{display:none}
.instrument-ui #panel-tray button:disabled{opacity:.28;filter:none;cursor:default}.instrument-ui #panel-tray button:disabled:hover{background:#303030;border-color:var(--line);color:var(--text)}
.instrument-ui #panel-tray .unified-destination{max-width:320px;min-height:48px;flex:1 1 190px}.instrument-ui #panel-tray [data-exercise-mode]{min-height:48px;max-width:150px}
.instrument-ui #panel-tray .media-panel{right:0;max-width:min(700px,calc(100vw - 48px));z-index:50}.instrument-ui #panel-tray .media-organizer>summary{min-width:48px;min-height:48px;display:grid;place-items:center}
.instrument-ui #panel-tray .edit-media-tools{gap:8px}.instrument-ui #panel-tray .quiet-export{display:grid;place-items:center;width:48px;height:48px;margin-left:auto}
.instrument-ui #floating-dock,.instrument-ui #section-arrows{display:none!important}
.instrument-ui main.shell{width:min(960px,calc(100% - 32px))!important;margin-left:auto!important;margin-right:auto!important}
@media(max-width:1180px){.panel-main{grid-template-columns:auto 1fr auto;gap:16px}.panel-wordmark{grid-column:2;grid-row:1;padding:0}.panel-edit-slot{grid-column:3;grid-row:1;justify-self:end}#panel-timer-slot{grid-column:1;grid-row:2}.panel-materials{grid-column:2/4;grid-row:2;justify-self:end}.instrument-panel{padding:14px 16px 10px}}
@media(max-width:650px){.instrument-ui header{padding:8px 8px 0}.instrument-panel{padding:12px}.panel-main{grid-template-columns:1fr auto;gap:12px}.panel-navigation{grid-column:1;grid-row:1;gap:4px}.panel-wordmark{grid-column:1;grid-row:2;justify-self:start;font-size:23px}.panel-edit-slot{grid-column:2;grid-row:1}.panel-main #panel-timer-slot{grid-column:1/-1;grid-row:3;justify-self:center}.panel-main .panel-materials{grid-column:1/-1;grid-row:4;justify-self:center;column-gap:8px}.panel-material-types,.panel-material-nav{gap:4px}.panel-material-name{max-width:280px}.panel-main .panel-materials:has(.panel-material-types button:disabled:nth-child(3)):not(:has(a)){display:none}.instrument-ui #panel-tray .management-actions{gap:4px}.instrument-ui #panel-tray .unified-destination{max-width:none}.instrument-ui #panel-tray .media-panel{position:fixed;left:16px;right:16px;top:100px;max-height:60vh}.instrument-ui #panel-tray .edit-save-actions{padding-left:8px}.instrument-ui #panel-tray .selection-bar{gap:6px}}
@media(prefers-reduced-motion:reduce){.instrument-panel *{transition:none!important;animation:none!important}}
@media(max-width:400px){.panel-main .panel-materials{grid-template-columns:auto;justify-items:center}.panel-material-nav{grid-row:2}.panel-material-name{grid-row:3;max-width:250px}.panel-timer{grid-template-columns:48px 108px 48px 48px;gap:6px}}
.instrument-ui #panel-tray .selection-bar{background:transparent!important;box-shadow:none!important;border:0!important}
.instrument-ui #panel-tray button.icon,.instrument-ui #panel-tray .edit-save-actions button,.instrument-ui #panel-tray .media-organizer>summary{border:1px solid #575b54!important;border-radius:0!important;background:linear-gradient(#363b35,#272c26)!important;box-shadow:inset 0 1px #ffffff0e,0 2px 2px #0005!important}
.instrument-ui #panel-tray button:not(:disabled):hover,.instrument-ui #panel-tray .media-organizer>summary:hover{border-color:var(--green)!important;color:var(--green)!important}
.instrument-ui #panel-tray button:not(:disabled):active,.instrument-ui #panel-tray .media-organizer[open]>summary{background:#1c251a!important;box-shadow:inset 0 2px 5px #0009!important}
.instrument-ui #panel-tray button:disabled:hover{border-color:#575b54!important;color:var(--text)!important}
@media(min-width:520px) and (max-width:650px){.panel-main .panel-wordmark{grid-column:1;grid-row:2}.panel-main #panel-timer-slot{grid-column:2;grid-row:2}.panel-main .panel-materials{grid-row:3}.panel-navigation{grid-column:1/3}}

/* One charcoal palette and square geometry throughout the application. */
.instrument-ui{--bg:#202020;--panel:#2b2b2b;--deep:#181818;--line:#474747;--text:#f5f5f5;--muted:#aaa;--green:#75b35b;--green-soft:#263c22}
.instrument-ui *,.instrument-ui *::before,.instrument-ui *::after{border-radius:0!important}
.instrument-ui .instrument-panel{background:var(--panel);border-color:var(--line)}
.instrument-ui .panel-button,.instrument-ui #panel-tray button.icon,.instrument-ui #panel-tray .edit-save-actions button,.instrument-ui #panel-tray .media-organizer>summary{background:#303030!important;border-color:var(--line)!important;color:var(--text)}
.instrument-ui .panel-button:not(:disabled):hover,.instrument-ui .panel-button:focus-visible,.instrument-ui #panel-tray button:not(:disabled):hover{background:#353535!important;border-color:var(--green)!important;color:var(--green)}
.instrument-ui .panel-button[aria-pressed=true],.instrument-ui .panel-button[data-engaged=true],.instrument-ui .panel-button:not(:disabled):active,.instrument-ui #panel-tray .media-organizer[open]>summary{background:var(--deep)!important;border-color:var(--green)!important;color:var(--green)}
.instrument-ui .panel-button:disabled,.instrument-ui .panel-button:disabled:hover{background:#303030!important;border-color:var(--line)!important;color:var(--muted)!important}
.instrument-ui .timer-display{background:var(--deep);border-color:var(--line)}
.instrument-ui .timer-progress{background:var(--line)}
.instrument-ui .panel-wordmark span,.instrument-ui .panel-wordmark b{color:var(--green)}
.instrument-ui .timer-target,.instrument-ui .timer-status,.instrument-ui .panel-counter,.instrument-ui .panel-material-name{color:var(--muted)}
.instrument-ui .panel-timer[data-state=paused] .timer-digits{color:var(--green)}

/* Shared LED display, master controls and tactile record shelves. */
.instrument-panel{position:relative;border-width:2px!important;padding-bottom:18px}
.panel-main{align-items:center;grid-template-columns:auto minmax(100px,1fr) auto auto 48px;gap:14px}
.panel-navigation .panel-master{width:58px;height:58px;min-width:58px;border:2px solid var(--green)!important;box-shadow:inset 0 0 0 3px #171717,0 3px 5px #0007}
.panel-section-navigation{display:grid;gap:4px}.panel-section-navigation .panel-button{width:44px;height:28px;min-height:28px;min-width:44px;padding:3px}.panel-section-navigation svg{transform:rotate(90deg);height:20px}
#workspace-button{box-shadow:inset 0 -5px #141414!important}#workspace-button svg{width:30px}
.panel-wordmark{padding:0;min-width:100px}.led-pixels{display:block;height:24px;width:auto;max-width:100%;filter:drop-shadow(0 0 3px #75b35b50);color:var(--green)}
.panel-wordmark .led-pixels{height:23px}.timer-digits .led-pixels{height:24px}
.timer-display{min-width:150px;height:58px!important;cursor:pointer}.panel-timer{grid-template-columns:36px 170px 36px 48px;align-items:center}.panel-timer>[data-time-step]{min-width:36px;width:36px;padding:5px}
.timer-status,.panel-material-name,.panel-material-nav{display:none!important}
.timer-display:after{background:repeating-linear-gradient(0deg,transparent 0 2px,#0003 2px 3px)!important}
.timer-display[data-media=true]>.timer-digits,.timer-display[data-media=true]>.timer-target,.timer-display[data-media=true]>.timer-progress{visibility:hidden}
.shared-media-display{position:absolute;inset:5px;display:grid;align-content:center;gap:6px;justify-items:center;overflow:hidden}.shared-media-display[hidden]{display:none}.led-title{max-width:100%;overflow:auto;scrollbar-width:none}.led-title::-webkit-scrollbar{display:none}.led-title .led-pixels{height:17px;max-width:none}.shared-media-display .timer-target{font-size:11px}
.panel-materials{display:flex;gap:8px}.panel-media-bank{position:relative}.cd-inlet{width:68px;min-width:68px;padding:5px}.cd-inlet svg{width:58px;height:40px}
.record-shelf,.document-shelf{position:absolute;top:100%;right:0;z-index:70;border:2px solid var(--line);background:var(--deep);padding:10px;box-shadow:0 10px 24px #0008}
.record-shelf{display:flex;gap:5px;width:min(360px,calc(100vw - 48px));overflow-x:auto;scrollbar-width:none;overscroll-behavior:contain}.record-shelf::-webkit-scrollbar{display:none}.record-shelf[hidden],.document-shelf[hidden]{display:none}
.record-spine{display:block;writing-mode:vertical-rl;flex:0 0 44px;min-width:44px;height:160px;padding:10px 8px;background:linear-gradient(90deg,#111,#383838 20%,#202020 85%,#555);border:1px solid var(--line);border-top:4px solid var(--green);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none;color:var(--text);font-size:12px}.record-spine:hover,.record-spine:focus-visible{border-color:var(--green);color:var(--green)}
.document-shelf{width:min(300px,calc(100vw - 48px));max-height:40vh;overflow:auto}.document-shelf a{display:flex;gap:10px;align-items:center;min-height:44px;padding:8px;color:var(--text);text-decoration:none}.document-shelf svg{width:24px;flex-shrink:0}
#panel-audio-controls{display:flex;gap:12px;align-items:center;border-top:1px solid var(--line);margin-top:12px;padding-top:12px}#panel-audio-controls[hidden]{display:none}#panel-audio-controls input{flex:1;accent-color:var(--green)}
.attached-workspace{position:absolute;top:100%;right:0;width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 200px);overflow:auto;background:var(--panel);border:2px solid var(--line);box-shadow:0 12px 24px #0009;z-index:100;margin-top:6px;padding:0}.attached-workspace[hidden]{display:none!important}.workspace-heading{display:flex;justify-content:space-between;align-items:center}.workspace-heading h2{font-size:18px;margin:0}.workspace-dialog svg{width:24px;height:24px;flex-shrink:0}.workspace-dialog button{min-height:48px;display:flex;align-items:center;gap:10px;padding:10px}.workspace-dialog button[hidden]{display:none!important}.workspace-pick-actions{display:flex;flex-wrap:wrap;gap:8px}.workspace-recents h3,.workspace-advanced-grid h3{font-size:12px;color:var(--muted)}#workspace-cards{display:grid;gap:8px}.workspace-card{display:grid!important;grid-template-columns:24px 1fr!important;text-align:left}.workspace-card small{grid-column:2;color:var(--muted)}.workspace-advanced-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.workspace-advanced-grid section{border:1px solid var(--line);padding:10px}.workspace-dialog summary{display:flex;align-items:center;gap:10px}.workspace-status{font-size:12px}.workspace-dialog form{padding:16px}.workspace-dialog input{min-height:44px}
.deadline-editor{display:flex;align-items:center;gap:6px}.deadline-editor svg{width:22px;height:22px}.deadline-editor input{width:150px;min-height:44px}.deadline-label,.exercise-deadline{color:var(--muted);font-size:12px}.exercise-deadline{text-align:center}.view-switch{display:flex;gap:8px;margin:14px 0}.view-switch button{display:flex;gap:8px;align-items:center;min-height:44px}.view-switch svg{width:20px;height:20px}.view-switch [aria-pressed=true]{border-color:var(--green);color:var(--green)}.urgency-entry{padding:12px 0;border-bottom:1px solid var(--line)}.urgency-subject{color:var(--muted);font-size:12px}.urgency-list .subdivision{border:0}.main-inline-media{display:inline-flex;gap:4px}.main-inline-media svg{width:22px;height:22px}.main-material-icon{min-width:44px;min-height:44px;display:inline-grid;place-items:center}.main-exercise-row{flex-wrap:wrap}.main-exercise-row input[type=date]{width:150px;min-height:44px}.course,.todo-subsection{border-width:2px!important}.course[open],.todo-subsection[open]{border-color:var(--green)}
@media(max-width:1180px){.panel-main{grid-template-columns:auto 1fr auto}.panel-materials{grid-row:2;grid-column:2/4}}
@media(max-width:650px){.panel-main{grid-template-columns:1fr auto}.panel-main #panel-timer-slot{grid-row:3;grid-column:1/-1}.panel-main .panel-materials{grid-row:4;grid-column:1/-1}.panel-wordmark{grid-row:2;grid-column:1/-1}.panel-timer{grid-template-columns:32px minmax(130px,1fr) 32px 44px;gap:5px}.panel-timer>[data-time-step]{width:32px;min-width:32px}.attached-workspace{max-height:55dvh}.record-shelf{right:-50px}.panel-main{gap:8px}.panel-section-navigation .panel-button{height:30px;min-height:30px}}

.panel-section-navigation .panel-button{height:44px;min-height:44px}.record-shelf[data-dense=true] .record-spine{flex-basis:28px;min-width:28px;padding-left:4px;padding-right:4px;font-size:10px}@media(pointer:coarse){.record-shelf[data-dense=true] .record-spine{flex-basis:44px;min-width:44px}}

.record-shelf{width:max-content;max-width:min(360px,calc(100vw - 48px))}.main-material-icon,.main-material-icon:visited{color:var(--text)}.main-material-icon:hover{color:var(--green)}

/* Compact rack faceplate: inset control banks, mechanical keys, green LED glass. */
.instrument-ui .instrument-panel{padding:16px 28px;background:linear-gradient(#353633,#292a28)!important;border:2px solid #555751;box-shadow:inset 0 1px #ffffff19,0 8px 20px #0005}
.instrument-panel::before,.instrument-panel::after{content:'⊖';position:absolute;top:5px;color:#979a90;font:16px monospace;text-shadow:1px 1px #000;pointer-events:none}
.instrument-panel::before{left:6px}.instrument-panel::after{right:6px}
.panel-main{grid-template-columns:auto minmax(85px,1fr) auto auto 44px;gap:12px}
.panel-navigation,.panel-materials{gap:6px;align-items:center}
.panel-main .panel-button{width:44px;min-width:44px;height:44px;padding:8px;box-shadow:inset 0 1px #ffffff18,0 3px 2px #1119}
.panel-main .panel-button svg{width:22px;height:22px}
.panel-navigation .panel-master{height:62px;width:46px;min-width:46px;border-width:2px!important;box-shadow:inset 0 0 0 4px #141414,0 3px 3px #0008}
.panel-section-navigation{gap:2px}.panel-section-navigation .panel-button{height:44px}
.panel-wordmark .led-pixels{height:17px}.panel-wordmark{min-width:80px}
.panel-timer{grid-template-columns:44px 170px 44px 44px;gap:5px;padding:8px;background:#20231e;box-shadow:inset 0 1px 3px #0008}
.instrument-ui .timer-display{border:2px solid #111;height:64px!important;background:linear-gradient(150deg,#11180f,#1c2119)}
.panel-main .cd-inlet{width:180px;min-width:120px;height:52px;padding:7px;background:#222!important;box-shadow:inset 0 2px 5px #000b}
.cd-aperture{display:flex;align-items:center;height:22px;width:100%;background:#080a08;border-top:3px solid #090909;border-bottom:2px solid #55584e;overflow:hidden;box-shadow:0 1px #ffffff12}
.cd-paper{display:block;width:100%;padding:1px 6px;background:#bcbeb0;color:#242722;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:italic 12px/17px 'Courier New',monospace;transform:rotate(-.5deg)}
.cd-emerging{display:none;position:absolute;top:30px;left:20px;right:20px;height:76px;overflow:hidden;pointer-events:none;z-index:69}
.cd-emerging svg{width:100%;height:100%}.cd-opening .cd-emerging{display:block;animation:disc-eject 480ms ease-out both}
@keyframes disc-eject{0%{transform:translateY(-25px);opacity:0}40%{opacity:1}75%{transform:translateY(10px);opacity:1}100%{transform:translateY(10px);opacity:0}}
.record-shelf{display:flex;flex-direction:column;gap:5px;width:260px;max-width:calc(100vw - 40px);max-height:min(340px,45dvh);overflow-x:hidden;overflow-y:auto;padding:8px;scrollbar-width:none}
.record-spine,.record-shelf[data-dense=true] .record-spine{writing-mode:horizontal-tb;flex:0 0 44px;min-width:0;height:44px;min-height:44px;padding:12px 10px 8px 18px;font:12px/18px 'Courier New',monospace;border:1px solid #55584f;border-left:6px solid var(--green);border-top:1px solid #77796f;background:linear-gradient(#454740 0 3px,#20221e 3px 7px,#bcbeb0 7px 35px,#222 35px);color:#242722;box-shadow:0 3px #080808}
.record-spine:hover,.record-spine:focus-visible{color:#152610;outline:2px solid var(--green);outline-offset:-2px}
.platform-settings p{font-size:12px;color:var(--muted)}
.instrument-ui header{padding-top:max(10px,env(safe-area-inset-top));padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}
.instrument-ui{padding-bottom:env(safe-area-inset-bottom)}
@media(max-width:1200px){.panel-main{grid-template-columns:auto 1fr auto}.panel-main .panel-wordmark{grid-column:2;grid-row:1}.panel-main .panel-edit-slot{grid-column:3;grid-row:1}.panel-main #panel-timer-slot{grid-column:1;grid-row:2}.panel-main .panel-materials{grid-column:2/4;grid-row:2}.panel-main .cd-inlet{width:150px}}
@media(max-width:720px){.instrument-ui .instrument-panel{padding:12px 16px}.panel-main{grid-template-columns:1fr auto;gap:10px}.panel-main .panel-wordmark{grid-column:2;grid-row:1}.panel-main .panel-edit-slot{grid-column:2;grid-row:2;justify-self:end}.panel-main #panel-timer-slot{grid-column:1/-1;grid-row:3;justify-self:stretch}.panel-timer{grid-template-columns:44px minmax(110px,1fr) 44px 44px}.timer-display{min-width:110px}.panel-main .panel-materials{grid-column:1;grid-row:2;justify-self:start}.panel-main .cd-inlet{width:120px}.record-shelf{left:-48px;right:auto}.panel-main .panel-wordmark{min-width:60px}.panel-wordmark .led-pixels{height:13px}.panel-navigation{gap:4px}}
/* Shared-screen rack, October 2026. */
.instrument-panel::before,.instrument-panel::after{content:none}
.rack-screws{pointer-events:none}
.rack-screws i{position:absolute;width:14px;height:14px;border-radius:50%!important;background:radial-gradient(circle at 35% 25%,#b3b5ae,#60625b 45%,#252722 70%,#080908 74%);box-shadow:0 1px 1px #ffffff35,0 0 0 2px #181a17,inset 0 1px 2px #fff6}
.rack-screws i::after{content:"";position:absolute;inset:6px 2px;background:#11130f;transform:rotate(-30deg);box-shadow:0 1px #b9bbaa70}
.rack-screws i:nth-child(1){top:7px;left:7px}.rack-screws i:nth-child(2){top:7px;right:7px}.rack-screws i:nth-child(3){bottom:7px;left:7px}.rack-screws i:nth-child(4){bottom:7px;right:7px}
.panel-main{display:grid;grid-template-columns:94px minmax(280px,1fr) 230px;gap:16px;align-items:center}
.panel-navigation{display:flex;gap:6px}.panel-navigation .panel-master{height:52px}
#panel-screen{position:relative;min-width:0}
.panel-main #panel-timer-slot{grid-area:auto;width:100%}
.panel-timer{display:grid;grid-template-columns:minmax(120px,1fr) 44px 44px;grid-template-rows:44px 44px;padding:0;gap:4px;background:none;box-shadow:none}
.panel-timer .timer-display{grid-column:1;grid-row:1/3;width:100%;min-width:0;height:92px!important;position:relative;cursor:default;box-sizing:border-box;overflow:hidden}
.panel-timer [data-time-step="-1"]{grid-column:2;grid-row:1}.panel-timer [data-time-step="1"]{grid-column:2;grid-row:2}
.panel-timer [data-timer-play]{grid-column:3;grid-row:1/3;align-self:center}
.panel-source-controls{display:grid;grid-template-columns:1fr;gap:6px;min-width:0}
.panel-source-top{display:flex;gap:6px;align-items:center}
.panel-main .bank-button{width:116px;display:flex;align-items:center;gap:10px;font-size:11px}
.panel-main .panel-materials{display:grid;grid-template-columns:44px 44px 1fr;grid-area:auto;gap:6px}
.panel-materials .record-bank{grid-column:1/-1;grid-row:2;width:100%}
.panel-main .cd-inlet{width:100%;height:44px;padding:7px 5px;min-width:0}
.panel-source-top{position:absolute;right:28px;top:16px}
.panel-source-controls{padding-top:50px}
.cd-aperture{height:18px}.cd-paper{font-size:11px}
.shared-media-display{position:absolute;inset:0;display:flex;justify-content:center;align-items:flex-start;padding:16px 12px 25px;overflow:hidden}
.led-title{display:flex;align-items:center;max-width:100%;overflow:auto;scrollbar-width:none;white-space:nowrap}
.led-brand{display:inline-flex;align-items:center;flex-shrink:0;color:var(--green);gap:0;filter:drop-shadow(0 0 3px #7bbb4540)}
.led-brand .led-pixels{height:23px;width:auto;max-width:none;stroke:currentColor;stroke-width:.15}
.brand-p,.brand-set{display:inline-flex}.brand-p{color:color-mix(in srgb,var(--green),#fff 40%)}.brand-set{color:color-mix(in srgb,var(--green),#000 22%)}
.led-context{display:inline-flex;flex-shrink:0}.led-context .led-pixels{height:17px;width:auto;max-width:none}
.mini-timer{position:absolute;right:9px;bottom:7px;color:var(--green);font:11px monospace;opacity:.75}
.shared-media-display>.timer-target{position:absolute;left:12px;bottom:6px}
#panel-bank-screen:empty{display:none}
#panel-screen.bank-open{min-height:370px}
#panel-screen.bank-open #panel-timer-slot{visibility:hidden}
#panel-bank-screen .attached-workspace{position:absolute;inset:0;top:0;width:100%;max-height:370px;min-width:0;box-sizing:border-box;overflow:auto;border:2px solid #111;background:#1b2019;box-shadow:inset 0 1px 6px #0008}
#panel-bank-screen .workspace-heading h2{font-size:16px}
#panel-bank-screen .workspace-pick-actions{display:flex;flex-wrap:wrap}
#panel-bank-screen .workspace-pick-actions button{flex:1;min-height:44px}
#panel-bank-screen .workspace-advanced-grid{grid-template-columns:1fr}
#panel-tray #floating-save,#panel-tray #floating-cancel{display:none}
.mode-icon,.deadline-editor{position:relative;display:inline-grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border:1px solid var(--line);cursor:pointer}
.mode-icon svg,.deadline-editor svg{width:22px;height:22px}
.mode-icon select,.deadline-editor input,.main-exercise-row .deadline-editor input{position:absolute;inset:0;width:100%;height:100%;min-width:0;opacity:0;cursor:pointer}
.deadline-editor input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:auto;height:auto;cursor:pointer}
.mode-icon:focus-within,.deadline-editor:focus-within{outline:2px solid var(--green)}
.main-exercise-row .layout-controls,.main-exercise-row .exercise-done{margin:0;flex-shrink:0}
.course>summary .summary-actions{order:-1;margin-left:0}
.subject-active .course>summary .layout-controls{display:inline-flex}
.subject-active .course>summary .drag-handle{display:none}
#main-delete-selected{margin-left:auto}
.course[open]>.course-body,.todo-subsection[open]>.subsection-body{animation:section-settle .55s ease-out}
@keyframes section-settle{from{opacity:.55}to{opacity:1}}
@media(max-width:1050px){.panel-main{grid-template-columns:44px minmax(250px,1fr) 180px;gap:12px}.panel-navigation{flex-direction:column}.panel-main .panel-master{width:44px;min-width:44px;height:44px}.panel-source-top{right:28px}.panel-main .cd-inlet{width:100%}}
@media(max-width:720px){.panel-main{grid-template-columns:44px minmax(0,1fr);gap:8px}.panel-main #panel-screen{grid-column:2;grid-row:1}.panel-main .panel-navigation{grid-column:1;grid-row:1}.panel-source-controls{grid-column:1/-1;padding:0;display:flex;gap:8px}.panel-source-top{position:static;flex-shrink:0}.panel-main .panel-materials{display:flex;flex:1;flex-wrap:wrap}.panel-materials .record-bank{flex:1;min-width:110px}.panel-timer{grid-template-columns:minmax(100px,1fr) 44px;grid-template-rows:44px 44px 44px}.panel-timer .timer-display{grid-row:1/4;height:140px!important}.panel-timer [data-timer-play]{grid-column:2;grid-row:3}.panel-main .bank-button{width:60px;flex-direction:column;gap:0;font-size:9px}.led-brand .led-pixels{height:17px}.led-context .led-pixels{height:14px}#panel-screen.bank-open{min-height:350px}#panel-bank-screen .attached-workspace{max-height:350px}.shared-media-display{padding:20px 8px}.panel-main .panel-button{min-width:44px}}
@media(prefers-reduced-motion:reduce){.course[open]>.course-body,.todo-subsection[open]>.subsection-body{animation:none}}
.course>summary,.category>summary,.subject>summary{display:flex;justify-content:flex-start}
.course>summary>span:not(.layout-controls),.category>summary>.category-title,.subject>summary>span:not(.layout-controls){flex:1}
.course>summary .summary-actions:empty{display:none}
.category>summary>.layout-controls,.subject>summary>.layout-controls{order:-1;margin-left:0}
.course>summary .summary-actions{flex:0 0 auto}
.shared-media-display{justify-content:flex-start}
.panel-main .panel-materials{width:100%;justify-self:stretch}
.panel-source-controls .panel-media-bank{justify-self:start}
.panel-source-controls .record-bank{justify-self:stretch}
.deadline-open svg{width:22px;height:22px}.deadline-open{min-width:44px;min-height:44px}
.todo-subsection[open]>.tracker-wrap,.todo-subsection[open]>.progress-empty{animation:section-settle .55s ease-out}
@media(prefers-reduced-motion:reduce){.todo-subsection[open]>.tracker-wrap,.todo-subsection[open]>.progress-empty{animation:none}}
