:root{color-scheme:dark;--bg:#0d1015;--sidebar:#101318;--surface:#171b23;--surface2:#1d222c;--border:#292f3a;--faint:#3a414d;--text:#f0f1f3;--muted:#88929f;--accent:#fb792e;--accent-dark:#aa4e1e;--green:#39d596;--red:#f46e70;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.43;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hidden{display:none!important}h1,h2,h3,p{margin:0}h1{font-size:27px;letter-spacing:-.8px}h2{font-size:18px;letter-spacing:-.3px}h3{font-size:14px}p{line-height:1.6;color:var(--muted)}.shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}.sidebar{border-right:1px solid #262b32;background:var(--sidebar);padding:28px 16px 20px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;min-height:640px}.brand{display:flex;align-items:center;gap:11px;margin:0 7px 56px}.brand-mark{display:flex;align-items:center;justify-content:center;flex:none;width:39px;height:39px;border-radius:11px;background:linear-gradient(145deg,#fb8b45,#db5721);color:white;font-weight:900;font-size:13px;box-shadow:0 9px 26px #f57e2c35;letter-spacing:-2px}.brand-mark span{font-size:17px}.brand strong{font-size:15px;letter-spacing:-.5px;display:block;white-space:nowrap}.brand strong b{color:var(--accent)}.brand small{display:block;font-size:9px;letter-spacing:2px;color:#798492;margin-top:5px}.side-section{font-size:10px;letter-spacing:1.9px;color:#627080;margin:0 17px 16px;font-weight:700}.side-section.second{margin-top:42px}.nav{display:flex;flex-direction:column;gap:5px}.nav-item,.nav-static{border:0;width:100%;display:flex;align-items:center;gap:13px;height:46px;border-radius:9px;padding:0 15px;text-align:left;color:#929dac;font-weight:550;font-size:13px;background:transparent}.nav-item:hover{background:#222832;color:#eee}.nav-item.current{color:#fff;background:#32271f;border:1px solid #654126}.nav-icon{font-size:19px;width:22px;color:#788696;text-align:center}.current .nav-icon{color:var(--accent)}.nav-count,.nav-meta{margin-left:auto;color:#8290a0;font-size:11px}.nav-count{background:#262c35;border-radius:6px;padding:3px 7px}.side-led{margin-left:auto;width:7px;height:7px;border-radius:50%;background:#717987}.side-led.online{background:var(--green);box-shadow:0 0 10px #3bdc9a}.side-bottom{margin-top:auto}.side-device{display:flex;gap:10px;align-items:center;background:#1a1e26;border:1px solid #2b313b;border-radius:10px;padding:12px}.side-device-icon{width:33px;height:33px;display:grid;place-items:center;border-radius:9px;background:#272e36;color:var(--accent);font-size:20px}.side-device strong{display:block;font-size:11px;letter-spacing:.5px}.side-device small{font-size:10px;color:#758493}.logout{border:0;background:transparent;color:#8c99a6;margin:17px 12px 0;font-size:12px;display:flex;gap:15px}.workspace{min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;padding:32px 36px 25px;gap:20px;border-bottom:1px solid #252a33}.breadcrumb{letter-spacing:1.7px;font-size:10px;color:#697687;font-weight:700;margin-bottom:12px}.breadcrumb span{color:var(--accent)}.h1-emoji{font-size:15px;color:var(--accent);vertical-align:middle}.topbar p{margin-top:7px;font-size:12px}.top-actions{display:flex;align-items:center;gap:18px}.lab-pill{font-size:10px;letter-spacing:1px;color:#b5bdc7;white-space:nowrap}.lab-pill span{display:inline-block;width:7px;height:7px;border-radius:50%;background:#faac58;margin-right:7px;box-shadow:0 0 9px #ef7e35}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;padding:10px 16px;border-radius:8px;font-weight:700;font-size:12px;min-height:39px;white-space:nowrap;transition:filter .15s}.btn:hover:not(:disabled){filter:brightness(1.12)}.btn-accent{background:var(--accent);color:#111}.btn-dark{background:#252b35;border-color:#353d47;color:#e8ebef}main{padding:26px 36px 40px;flex:1;max-width:1600px;width:100%;margin:0 auto}.overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:29px}.stat{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;min-height:123px}.stat-head{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1.5px;color:#8d98a7;font-weight:750}.stat-head i{font-style:normal;font-size:19px;color:#626d79}.stat-head i.orange{color:var(--accent)}.stat strong{font-size:32px;display:block;letter-spacing:-1px;margin-top:9px;line-height:1.1}.stat .stat-status{font-size:20px;margin:17px 0 4px}.stat small{color:#758391;font-size:11px;display:block;margin-top:7px}.studio-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(255px,.76fr);gap:22px}.section-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.mini-kicker{display:block;color:var(--accent);font-weight:800;font-size:9px;letter-spacing:2px;margin-bottom:8px}.status-chip{font-size:10px;font-weight:750;color:#d18e90;letter-spacing:.5px;border:1px solid #603e45;background:#3b262d;border-radius:5px;padding:6px 10px}.status-chip.active{color:#52dca7;background:#17382d;border-color:#2b6a50}.player{position:relative;aspect-ratio:16/9;background:#080b0f;border:1px solid #343b45;border-radius:12px;overflow:hidden;box-shadow:0 10px 50px #0004}.player video{position:absolute;width:100%;height:100%;object-fit:contain;z-index:1;background:#07090c}.player-placeholder{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 40%,#20242c 0%,#0d1116 68%);z-index:2;display:grid;place-items:center}.scope{position:relative;width:70%;height:65%;border:1px dashed #313741;border-radius:6px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;text-align:center}.scope strong{font-size:16px;letter-spacing:-.3px}.scope small{max-width:310px;color:#7e8b99;font-size:11px;line-height:1.5}.camera-symbol{font-size:35px;color:var(--accent);margin-bottom:6px}.scope-corner{position:absolute;width:25px;height:25px;border-color:var(--accent);border-style:solid;opacity:.8}.scope-corner.tl{top:-1px;left:-1px;border-width:2px 0 0 2px}.scope-corner.tr{top:-1px;right:-1px;border-width:2px 2px 0 0}.scope-corner.bl{bottom:-1px;left:-1px;border-width:0 0 2px 2px}.scope-corner.br{bottom:-1px;right:-1px;border-width:0 2px 2px 0}.player-label{position:absolute;bottom:13px;left:15px;right:15px;z-index:3;display:flex;gap:7px;align-items:center;font-size:10px;letter-spacing:.6px;color:#bac4cd;pointer-events:none;text-shadow:0 2px 5px #000}.player-label span:last-child{margin-left:auto}.player-dot{color:var(--accent)}.player-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;background:var(--surface);border:1px solid var(--border);padding:10px;border-radius:10px}.select-wrap{display:flex;gap:10px;align-items:center;min-width:0}.select-wrap span{font-size:9px;font-weight:750;letter-spacing:1.4px;color:#8e99a5}.control-buttons{display:flex;gap:7px;align-items:center}.player-actions select{min-width:110px;max-width:210px;background:#232934;border:1px solid #333b46;border-radius:7px;padding:9px;color:#eceff2;font-size:12px}.stage-note{display:flex;gap:10px;background:#201e1c;border:1px solid #3f342b;color:#af9b87;border-radius:9px;padding:13px;font-size:11px;line-height:1.6;margin-top:11px}.stage-note>span{color:var(--accent);font-size:16px}.icon-circle{color:#9ea8b3;border:1px solid #323b45;width:28px;height:28px;display:grid;place-items:center;border-radius:50%}.source-list{display:flex;flex-direction:column;gap:9px}.source-card{display:flex;align-items:center;gap:11px;text-align:left;width:100%;background:#171b22;border:1px solid #2c333d;color:#dce0e5;border-radius:10px;padding:14px;cursor:pointer}.source-card:hover,.source-card.selected{border-color:#90603e;background:#211f20}.source-avatar{width:38px;height:38px;background:#262e38;color:#b8c1ca;border-radius:9px;display:grid;place-items:center;font-size:20px}.source-data{min-width:0;flex:1}.source-data strong{font-size:12px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-data small{font-size:10px;color:#8995a2;margin-top:5px;display:block}.tiny-status{font-size:9px;letter-spacing:.5px;color:#b97d7d}.tiny-status.active{color:#4dd99d}.quick-help{border-radius:12px;background:linear-gradient(150deg,#2b241f,#1c2029 67%);border:1px solid #49382f;padding:21px;margin-top:17px}.quick-icon{font-size:24px;color:#ff963f}.quick-help h3{font-size:14px;margin:11px 0}.quick-help p{font-size:11px;line-height:1.8}.link-btn{border:0;background:none;padding:0;color:var(--accent);font-weight:750;font-size:11px;margin-top:13px}.lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}.panel{min-height:175px;border:1px solid var(--border);border-radius:12px;background:#151920;padding:19px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.panel-head .link-btn{margin:0}.quiet{font-size:9px;color:#5d6c7c;letter-spacing:1.3px}.event{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:11px;padding:11px 0;border-bottom:1px solid #282e38}.event:last-child{border:0}.event strong{color:#d0d5db;font-weight:600}.event small{color:#83909c}.event a{color:var(--accent);text-decoration:none}.empty{padding:23px 8px;color:#83909e;font-size:12px;line-height:1.7}.content-head{display:flex;justify-content:space-between;gap:20px;margin-bottom:25px}.content-head h2{font-size:22px}.content-head p{font-size:12px;margin-top:8px}.camera-grid,.clips-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.camera-item,.clip-item{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:21px;min-width:0}.camera-card-icon{display:grid;place-items:center;width:45px;height:45px;background:#2b302d;border-radius:11px;font-size:23px;color:var(--accent);margin-bottom:15px}.camera-item h3,.clip-item h3{font-size:14px;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.camera-item p,.clip-item p{font-size:11px}.camera-meta{color:#7b8998;font-size:10px;margin-top:16px}.camera-card-buttons{display:flex;gap:9px;margin-top:18px;flex-wrap:wrap}.clip-icon{font-size:28px;color:var(--accent);margin-bottom:12px}.footer{padding:16px 36px;border-top:1px solid #252b34;display:flex;justify-content:space-between;gap:20px;color:#56616e;font-size:9px;letter-spacing:1.2px}.login-layer{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at 58% 7%,#382923 0%,transparent 45%),#0b0f13;padding:24px}.login-panel{width:min(100%,480px);padding:43px;background:#151a21;border:1px solid #343237;border-radius:19px;box-shadow:0 50px 100px #0008}.brand-login{margin:0 0 48px}.login-panel h1{font-size:27px;margin-bottom:12px}.login-panel>p{font-size:13px;margin-bottom:28px}.login-panel label,.modal label{display:block;color:#abb6c1;font-size:11px;font-weight:700;margin:0 0 9px}.login-panel input,.modal input{display:block;width:100%;background:#212831;color:#fff;border:1px solid #3b444f;border-radius:8px;padding:13px 14px;font-size:13px}.login-panel .btn{width:100%;margin-top:14px;justify-content:space-between;padding:13px 17px}.form-error{color:#ee9797;font-size:11px;margin-top:14px}.login-panel footer{font-size:9px;color:#778290;letter-spacing:1.3px;margin-top:40px;text-align:center}.modal-backdrop{position:fixed;inset:0;background:#020406c9;display:flex;align-items:center;justify-content:center;z-index:20;padding:22px}.modal{width:min(100%,520px);padding:27px;background:#171c24;border:1px solid #41434a;border-radius:15px;box-shadow:0 45px 80px #000a}.modal-top{display:flex;justify-content:space-between;align-items:start}.close{border:0;background:transparent;color:#a0abb6;font-size:26px;line-height:1}.modal-icon{margin:5px 0 14px;width:50px;height:50px;display:grid;place-items:center;border-radius:13px;background:#3b2c24;color:var(--accent);font-size:27px}.modal-icon.done{color:#42dc9f;background:#203c32}.modal h2{font-size:22px}.modal p{font-size:12px;margin:10px 0 25px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}.modal .copyline{display:flex;gap:8px;align-items:center;margin:0 0 19px}.modal .copyline input{font-size:10px;min-width:0}.modal-created label{margin-top:17px}.warning{color:#bda78b;background:#2b2521;border:1px solid #5a4231;border-radius:8px;font-size:11px;padding:13px;line-height:1.7;margin:14px 0}.full{width:100%}.toast{position:fixed;bottom:25px;right:25px;z-index:30;background:#292e36;border:1px solid #555c66;color:#fff;padding:14px 18px;border-radius:9px;font-size:12px;box-shadow:0 12px 35px #0008;max-width:min(450px,calc(100vw - 30px))}@media(max-width:1250px){.sidebar{width:215px}.shell{grid-template-columns:215px minmax(0,1fr)}main{padding:24px}.topbar{padding:28px 24px}.studio-layout{grid-template-columns:minmax(0,1.5fr) minmax(240px,.8fr)}.player-actions{flex-wrap:wrap}.overview{gap:9px}.stat{padding:15px}.camera-grid,.clips-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:980px){.studio-layout{grid-template-columns:1fr}.source-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.quick-help{margin-top:12px}.overview{grid-template-columns:repeat(2,minmax(0,1fr))}.top-actions .lab-pill{display:none}}@media(max-width:680px){.shell{display:block}.sidebar{position:relative;width:auto;height:auto;min-height:0;padding:14px;border-right:0;border-bottom:1px solid #292f39}.brand{margin:0 0 15px}.nav{flex-direction:row;overflow-x:auto}.nav-item{white-space:nowrap;width:auto;padding:0 11px}.side-section,.side-section.second,.sidebar>.nav:nth-of-type(2),.side-bottom{display:none}.topbar{padding:22px 16px;align-items:flex-start;flex-direction:column}.topbar h1{font-size:24px}.top-actions{width:100%;justify-content:flex-end}main{padding:18px 12px}.stat{min-height:100px}.stat strong{font-size:25px}.overview{gap:8px}.studio-layout{gap:20px}.source-list,.lower-grid,.camera-grid,.clips-grid{grid-template-columns:1fr}.player-actions{align-items:stretch}.select-wrap,.control-buttons{flex-wrap:wrap}.control-buttons .btn{flex:1}.scope{width:84%;height:72%}.scope strong{font-size:13px}.scope small{font-size:10px}.footer{padding:17px;flex-direction:column}.modal{padding:19px}.modal .copyline{flex-wrap:wrap}}

/* Compact mobile navigation, no clipped third item or redundant system controls. */
@media(max-width:680px){.sidebar>.nav:nth-of-type(1){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;overflow:visible}.sidebar>.nav:nth-of-type(1) .nav-item{min-width:0;white-space:nowrap;width:100%;justify-content:center;font-size:11px;padding:0 5px;gap:6px}.sidebar>.nav:nth-of-type(1) .nav-icon{font-size:16px;width:17px}.sidebar>.nav:nth-of-type(2){display:none}.sidebar>.side-section{display:none}#camera-add-inline{display:none}.content-head{margin-bottom:20px}}

@media(max-width:680px){.sidebar .system-nav{display:none}}

.signal-check { margin-top: 10px; }
.signal-check strong { color: var(--ink, #e9e9e9); }
.signal-check p { margin: 6px 0 0; overflow-wrap: anywhere; }
.signal-check .link-btn { display: inline; white-space: normal; }

/* 0.1.2: Time Shift timeline. No hidden background dismissal for modals. */
.replay-panel{margin-top:12px;background:#161c25;border:1px solid #323c48;border-radius:11px;padding:17px}.replay-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.replay-heading h3{font-size:15px;margin:8px 0 4px}.replay-heading p{font-size:11px;max-width:410px}.replay-controls{display:flex;gap:7px;flex-wrap:wrap}.replay-list{display:flex;flex-direction:column;gap:7px;margin-top:14px}.replay-list>p{font-size:11px}.replay-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;background:#222936;border:1px solid #333b46;border-radius:9px}.replay-item>div{display:flex;flex-direction:column;gap:4px;min-width:0}.replay-item strong{font-size:12px;color:#ebf0f5}.replay-item small{font-size:10px;color:#9baab9}.replay-item button{white-space:nowrap;font-size:11px}.replay-item[aria-current="true"]{border-color:var(--accent)}@media(max-width:680px){.replay-heading{align-items:flex-start;flex-direction:column}.replay-item{flex-wrap:wrap}.replay-item button{width:100%}.replay-controls{width:100%}}

/* 0.1.3 — Camera matrix + private archive */
.source-filters{display:flex;gap:6px;margin:0 0 13px}.filter-chip{padding:7px 12px;background:#1c242e;border:1px solid #34404d;border-radius:7px;color:#a8b6c6;font-size:11px;cursor:pointer}.filter-chip.is-active{color:#ffb37c;background:#33271f;border-color:#b06a38}.matrix-count{font-size:10px;color:#95a4b4}.source-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.source-card.source-tile{display:flex;flex-wrap:wrap;gap:7px;padding:10px;align-content:start;position:relative}.source-tile-screen{width:100%;aspect-ratio:16/8;display:grid;place-items:center;background:radial-gradient(circle,#283444,#0d131c 75%);border:1px solid #34404e;border-radius:8px;position:relative;overflow:hidden}.tile-frame{font-size:24px;color:#536477}.source-tile-status{position:absolute;right:7px;top:7px;font-size:9px;color:#b8a5a4;background:#100d0cb0;border:1px solid #564343;border-radius:5px;padding:3px 5px}.source-tile-status.active{color:#57e0a8;border-color:#245e4c}.source-card.source-tile .source-data{padding:0 2px;max-width:calc(100% - 25px)}.tile-arrow{color:#95a5b3;margin-left:auto}.source-card.source-tile.selected{border-color:#ef833b}.matrix-note{font-size:10px;color:#8191a1;line-height:1.6;margin-top:12px}.archive-toolbar{display:grid;grid-template-columns:minmax(180px,2fr) minmax(150px,1fr) minmax(145px,1fr);gap:12px;background:#171d26;border:1px solid #303a46;padding:15px;border-radius:11px;margin-bottom:13px}.archive-toolbar label{display:flex;flex-direction:column;gap:8px;font-size:10px;color:#9eacbb;font-weight:700}.archive-toolbar input,.archive-toolbar select{background:#232a35;color:#edf0f3;border:1px solid #3d4955;border-radius:8px;padding:10px;font-size:12px;min-width:0;width:100%}.archive-summary{font-size:11px;margin:0 0 15px;color:#9daebf}.clip-item{padding:14px}.clip-card-top{display:flex;justify-content:space-between;color:#abb4c0;font-size:9px;letter-spacing:1px}.clip-length{color:#ff9a57}.clip-preview-placeholder{height:128px;display:grid;place-items:center;background:radial-gradient(circle,#303a47,#0d1118 75%);border:1px solid #3a424d;border-radius:9px;margin:12px 0;position:relative}.clip-preview-placeholder:after{content:'ARCHIV · KEINE VORSCHAU';position:absolute;bottom:10px;left:10px;font-size:9px;color:#7e8d9d;letter-spacing:.7px}.clip-preview-placeholder span{font-size:28px;color:#ff8435}.clip-item h3{margin:0 0 8px;line-height:1.5}.clip-item .camera-card-buttons{gap:6px}.clip-modal-inner{width:min(100%,760px);max-height:90vh;overflow:auto}.clip-modal-inner #clip-video{display:block;width:100%;aspect-ratio:16/9;background:#06080c;border:1px solid #3b4450;border-radius:10px;margin:15px 0}.clip-modal-meta{color:#9cabba}.clip-edit-row{display:flex;align-items:center;gap:8px}.clip-edit-row input{flex:1;min-width:0}.clip-modal-actions{display:flex;justify-content:space-between;gap:10px;margin-top:18px}.clip-modal-actions a{text-decoration:none}.clip-modal-actions .btn{display:inline-flex;align-items:center;justify-content:center}
@media(max-width:1200px){.source-list{grid-template-columns:1fr 1fr}}@media(max-width:760px){.archive-toolbar{grid-template-columns:1fr}.source-list{grid-template-columns:repeat(2,minmax(0,1fr))}.clip-edit-row{flex-wrap:wrap}.clip-edit-row .btn{width:100%}}
@media(max-width:410px){.source-list{grid-template-columns:1fr}.clip-modal-actions{flex-direction:column}.clip-modal-actions .btn{width:100%}}

/* 0.1.4 Director: bounded clip selection and quick camera switching. */
.director-switch{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:7px;padding:11px 11px 9px;margin-bottom:11px;background:#1b232d;border:1px solid #343e4b;border-radius:9px}
.director-switch>span{font-size:10px;font-weight:800;letter-spacing:1px;color:#ffad78}.director-switch>div{display:flex;gap:5px}.director-switch .btn{padding:7px 9px;font-size:11px}.director-switch small{flex-basis:100%;font-size:10px;color:#96a8b9}
.director-editor{margin-top:16px;background:linear-gradient(145deg,#222a35,#1b222c);border:1px solid #8c5b40;border-radius:11px;padding:15px}.director-top{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;align-items:center}.director-top strong{font-size:12px;color:#ffbd8b}.director-rail{margin:18px 0 11px}.director-rail input{display:block;width:100%;accent-color:#ff792d;cursor:pointer}.director-ticks{display:flex;justify-content:space-between;font-size:10px;color:#9baab7;margin-top:6px}.director-fields{display:grid;grid-template-columns:minmax(110px,1fr) minmax(170px,2fr);gap:12px}.director-fields label{display:flex;flex-direction:column;gap:7px;font-size:10px;font-weight:700;color:#a3b2c1}.director-fields select,.director-fields input{width:100%;min-width:0;background:#101821;border:1px solid #3b4755;color:#e8edf3;border-radius:8px;padding:10px;font:inherit;font-size:12px}.director-actions{display:flex;flex-wrap:wrap;gap:9px;justify-content:flex-end;margin-top:14px}.director-actions button:disabled{opacity:.45;cursor:not-allowed}.director-status{margin-top:11px;font-size:10px;line-height:1.55;color:#9aabba}.source-tile .tile-arrow{font-size:11px;font-weight:700}
@media(max-width:680px){.director-fields{grid-template-columns:1fr}.director-actions .btn{flex:1}.director-switch>div{width:100%}.director-switch .btn{flex:1}}

/* 0.1.5 Director Pro: physical preview/program distinction; no server-side mix. */
.director-pro{background:linear-gradient(160deg,#1d252f,#161c25);border:1px solid #45404a;border-radius:13px;padding:15px;margin-bottom:21px}
.director-pro-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:11px}
.director-pro-head h3{font-size:15px}.director-mode{font-size:9px;border:1px solid #664a39;border-radius:6px;color:#ffb581;padding:6px;white-space:nowrap}
.preview-feed{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:9px;border:1px solid #4d5a65;background:#070b10}
.preview-feed video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#06090d}
.preview-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;background:radial-gradient(ellipse at 50% 30%,#263443,#0b1118 70%)}
.preview-empty span{color:#8395a9;font-size:27px}.preview-empty strong{color:#bdc9d4;font-size:11px;font-weight:500}
.preview-footer{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;gap:7px;padding:11px;background:linear-gradient(0deg,#05070eea,#05070e11);font-size:9px;pointer-events:none}
.preview-footer span{font-weight:800;color:#ff9a5e}.preview-footer strong{max-width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-footer small{margin-left:auto;font-weight:750;color:#c48e8e}.preview-footer small.active{color:#46e1a5}
.preview-toolbar{display:flex;align-items:end;gap:8px;margin-top:10px}.preview-toolbar label{flex:1;min-width:0;font-size:9px;letter-spacing:1px;color:#98aaba;font-weight:700}.preview-toolbar select{display:block;width:100%;min-width:0;margin-top:6px;background:#232c38;border:1px solid #3b4a58;border-radius:7px;padding:10px 8px;color:#fff;font-size:11px}.preview-toolbar .btn{padding:8px;font-size:10px}
.preview-note{color:#8f9da9;font-size:10px;line-height:1.55;margin:11px 0 16px}.scenes-head{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #36414d;padding-top:14px;margin-bottom:9px}.scenes-head strong{font-size:12px}.scenes-head span{font-size:10px;color:#96a5b5}
.scenes-list{display:grid;gap:6px;max-height:265px;overflow:auto}.scenes-list>p{font-size:10px;padding:6px 0}.scene-tile{display:flex;align-items:stretch;border:1px solid #364452;border-radius:8px;background:#232b35;overflow:hidden}.scene-choice{border:0;color:#eef1f5;background:transparent;text-align:left;flex:1;min-width:0;padding:9px 10px}.scene-choice strong,.scene-choice small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scene-choice strong{font-size:11px}.scene-choice small{color:#9aaab8;font-size:9px;margin-top:3px}.scene-take,.scene-delete{border:0;border-left:1px solid #3b4856;background:#283442;color:#ffb37e;padding:0 8px;font-size:10px;font-weight:800}.scene-delete{color:#bac4cc;font-size:18px}.scene-take:hover{background:#66412b}.scene-delete:hover{background:#543139}
.scene-form{display:flex;align-items:end;gap:7px;margin-top:11px}.scene-form label{flex:1;min-width:0;font-size:9px;color:#9babb9}.scene-form input{width:100%;min-width:0;border:1px solid #435062;background:#161d27;color:#fff;padding:9px;border-radius:7px;margin-top:6px;font-size:11px}.scene-form .btn{padding:8px;font-size:10px}.scene-status{min-height:10px;color:#d6a081;font-size:10px;margin-top:5px}
@media(max-width:780px){.preview-toolbar,.scene-form{flex-wrap:wrap}.preview-toolbar .btn,.scene-form .btn{width:100%}}

/* 0.1.6 Codec Lab: compact controls, consistent with the existing Director Pro. */
.codec-panel{margin-top:14px;background:#171c25;border:1px solid #303746;border-radius:13px;padding:16px}
.codec-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.codec-head h3{margin:4px 0 0;font-size:16px;color:#f7f8fa}
.codec-status{font-size:10px;font-weight:700;letter-spacing:.06em;border:1px solid #755335;background:#2e251d;color:#ffac71;padding:6px 9px;border-radius:16px;white-space:nowrap}
.codec-note,.codec-explainer,.codec-save-status{font-size:12px;line-height:1.5;color:#aeb9c9}.codec-note{margin:10px 0}
.codec-form{display:grid;gap:9px}.codec-form label{display:grid;gap:5px;font-size:11px;color:#adb5c3;font-weight:600}
.codec-form select{min-width:0;width:100%;background:#222834;border:1px solid #3b4352;border-radius:8px;color:#f1f4f8;padding:10px}
.codec-form .codec-ack{display:flex;align-items:flex-start;gap:8px;line-height:1.4;color:#ffc39e}
.codec-ack input{margin-top:2px;accent-color:#ff792d}.codec-explainer{margin:4px 0 3px}.codec-form button{justify-self:start}.codec-save-status{margin:6px 0 0;color:#67d4a4}
@media(max-width:480px){.codec-head{align-items:flex-start;flex-wrap:wrap}.codec-panel{padding:13px}}

/* 0.1.7 Hardware Check: read-only and compact. */
.encoder-panel{margin-top:12px;margin-bottom:19px;background:#171c25;border:1px solid #303746;border-radius:13px;padding:16px}
.encoder-panel .codec-head h3{margin:4px 0 0;font-size:16px;color:#f7f8fa}
.encoder-panel>.btn{font-size:11px}
.encoder-status{margin:10px 0;color:#aeb9c9;font-size:11px;line-height:1.55}
.encoder-results{margin-top:12px;display:grid;gap:6px}
.encoder-result-row{background:#202834;border:1px solid #303c4a;border-radius:7px;display:flex;justify-content:space-between;gap:10px;padding:8px 10px;font-size:11px}
.encoder-result-row span{color:#9dabbc;min-width:0;overflow-wrap:anywhere}
.encoder-result-row strong{color:#f0f4f8;text-align:right;font-size:10px;overflow-wrap:anywhere}
@media(max-width:480px){.encoder-panel{padding:13px}.encoder-result-row{flex-wrap:wrap}.encoder-result-row strong{text-align:left}}

/* 0.1.8 multistream foundation */
.multistream-panel{background:#191e27;border:1px solid #2c3543;border-radius:15px;padding:19px;margin-top:16px;margin-bottom:18px}
.outputs-list{display:grid;gap:8px;margin:14px 0}
.output-item{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid #323a49;background:#111821;padding:11px;border-radius:10px}
.output-item strong{font-size:13px;color:#f1f3f6}
.output-item small{display:block;font-size:11px;color:#a4b0c1;margin-top:3px;word-break:break-all}
.output-form{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
.output-form label,.bandwidth-panel label{display:flex;flex-direction:column;gap:6px;color:#a4b0c1;font-size:12px}
.output-form input,.output-form select,.bandwidth-panel input{background:#111821;color:#f6f6f7;border:1px solid #3d4654;border-radius:7px;padding:9px;min-width:0;box-sizing:border-box;width:100%}
.output-form label:has(input[type=checkbox]){display:flex;flex-direction:row;grid-column:1/-1;align-items:center}.output-form input[type=checkbox]{width:auto}
.output-form button{grid-column:1/-1}.bandwidth-panel{border-top:1px solid #303744;padding-top:13px;margin-top:15px}.bandwidth-panel p{font-size:12px;color:#e1e8ef;line-height:1.6}
@media(max-width:720px){.output-form{grid-template-columns:1fr}.output-item{flex-wrap:wrap}}

/* 0.1.9 · manually gated Direct Stream */
.output-gate{font-size:12px;background:#33291d;color:#ffc58c;border:1px solid #72502e;padding:10px 12px;border-radius:8px;margin:12px 0}
.output-gate.enabled{background:#18342e;color:#98efd0;border-color:#2f6955}
.output-source-label{display:flex;flex-direction:column;gap:6px;color:#adb9cb;font-size:12px;margin:12px 0}
.output-source-label select{background:#111821;color:#f4f5f8;border:1px solid #3d4654;border-radius:7px;padding:9px;width:100%}
.output-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.output-actions .btn{white-space:nowrap;padding:8px 10px;font-size:11px}
.output-actions .btn:disabled{opacity:.42;cursor:not-allowed}
.output-state{color:#96b7dc!important}.output-state.is-running{color:#f2ad77!important}

/* 0.1.11 Media Engine: read-only, no hidden processing. */
.engine-panel{background:#171e27;border:1px solid #35465a;border-radius:13px;padding:16px;margin:15px 0 18px}
.engine-panel .btn{font-size:11px}.engine-panel .mini-kicker{color:#ff9c5d}
@media(max-width:480px){.engine-panel{padding:13px}}

/* 0.1.12 admission-only performance guard */
.performance-panel{background:#171d25;border:1px solid #35495a;border-radius:13px;padding:16px;margin:15px 0 18px}
.performance-panel .mini-kicker{color:#ff9c5d}.performance-panel .btn{font-size:11px}
@media(max-width:480px){.performance-panel{padding:13px}}

/* 0.1.14: reliability history, visually aligned with Performance Guard. */
.reliability-panel .encoder-results{max-height:390px;overflow-y:auto}.reliability-panel .encoder-result-row{gap:16px}

/* 0.1.15 Alert Center: event log and acknowledgement, no remote notifications */
.alert-panel .alerts-results{display:grid;gap:7px;max-height:320px;overflow:auto;margin-top:12px}
.alert-entry{display:flex;align-items:center;justify-content:space-between;gap:9px;border:1px solid #354052;border-radius:9px;background:#202833;padding:10px}
.alert-entry.alert-open{border-left:3px solid var(--accent);background:#292521}
.alert-summary{min-width:0}.alert-summary strong{display:block;font-size:12px;color:#f2f4f8}.alert-summary small{display:block;font-size:10px;color:#9ba9b8;margin-top:4px;overflow-wrap:anywhere}
.alert-entry .btn{font-size:10px;min-height:29px;padding:5px 9px}.alert-status{color:#9caab9;font-size:10px}.alert-has-open{color:#ffad72;border-color:#9b5a37}
@media(max-width:470px){.alert-entry{align-items:flex-start;flex-wrap:wrap}}

/* 0.1.16: compact, opt-in-expanded local notification inbox */
.notifications-panel{margin-top:12px}.notifications-panel summary{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;list-style:none}
.notifications-panel summary::-webkit-details-marker{display:none}.notifications-panel summary strong{display:block;color:#f5f5f6;font-size:15px;margin-top:5px}
.notifications-panel summary::before{content:'▸';color:#ff944d;font-size:17px}.notifications-panel[open] summary::before{content:'▾'}
.notifications-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}
.notifications-form label{display:flex;flex-direction:column;gap:5px;font-size:11px;color:#adb9c7}
.notifications-form select,.notifications-form input[type=time]{width:100%;min-width:0;border:1px solid #435063;border-radius:7px;background:#151c25;color:#f1f4f8;padding:9px}
.notifications-form .notify-check{flex-direction:row;align-items:center;color:#cad2da;gap:8px}.notifications-form input[type=checkbox]{accent-color:#ff792d}
.notify-times{display:grid;grid-template-columns:1fr 1fr;gap:8px}.notifications-form button{grid-column:1/-1;justify-self:start}
.notifications-inbox-head{display:flex;align-items:center;justify-content:space-between;margin:12px 0 6px}.notifications-inbox-head strong{font-size:13px}
.notifications-panel .alerts-results{display:grid;gap:7px;max-height:250px;overflow:auto}
@media(max-width:650px){.notifications-form{grid-template-columns:1fr}.notifications-panel summary{flex-wrap:wrap}}

/* LIVE 0.1.17: separate, lightweight viewer launch from Studio */
.viewer-link{text-decoration:none;margin-top:5px;flex:none;}
@media(max-width:680px){.viewer-link{margin-top:7px;height:38px;background:#1d242d;color:#e9edf2;justify-content:center;border:1px solid #353d47;}}

/* 0.1.19 · External HLS receiver links, collapsed in the desktop studio by default */
.external-viewer-panel{margin-top:14px}
.external-viewer-panel summary{display:flex;justify-content:space-between;gap:14px;align-items:center;cursor:pointer;list-style:none}
.external-viewer-panel summary::-webkit-details-marker{display:none}
.external-viewer-panel summary strong{display:block;font-size:16px;margin-top:4px;color:#f4f5f7}
.external-viewer-panel summary:before{content:'▸';color:#ff792d;font-size:18px;margin-right:7px}
.external-viewer-panel[open] summary:before{content:'▾'}
.external-viewer-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:14px 0}
.external-viewer-form label{font-size:11px;color:#adb9c7;display:flex;flex-direction:column;gap:6px;min-width:0}
.external-viewer-form select,.external-viewer-form input{width:100%;min-width:0;border:1px solid #425063;background:#151c25;color:#f1f4f8;border-radius:8px;padding:10px}
.external-viewer-form button{grid-column:1/-1;justify-self:start}
.external-viewer-created{padding:13px;border:1px solid #95602e;background:#30241d;border-radius:10px;margin-bottom:13px}
.external-viewer-created p,.external-viewer-created small{display:block;color:#ffcca4;font-size:11px;margin:4px 0 10px}
.external-viewer-created .copyline{display:flex;gap:8px;min-width:0;align-items:center;margin:7px 0}
.external-viewer-created .copyline input{width:100%;min-width:0;background:#131a24;border:1px solid #4c5563;border-radius:7px;color:#fff;padding:10px}
.external-viewer-list{display:grid;gap:8px;max-height:270px;overflow:auto}
.external-viewer-item{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#202936;border:1px solid #384351;border-radius:9px;padding:11px}
.external-viewer-item strong{font-size:12px;color:#f1f4f8}
.external-viewer-item small{display:block;color:#a5b0bf;font-size:10px;margin-top:5px}
.external-viewer-item .btn{min-height:32px;font-size:11px;white-space:nowrap}
@media(max-width:720px){.external-viewer-form{grid-template-columns:1fr}.external-viewer-item{flex-wrap:wrap}.external-viewer-created .copyline{flex-wrap:wrap}}

/* Security workspace · 0.1.20 */
.security-view{max-width:1200px}.security-view>p{color:#abb6c6;font-size:13px}
.security-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:17px 0}
.security-card{border:1px solid #343f50;background:#1a212d;border-radius:12px;padding:20px;min-width:0}
.security-card h3{margin:0 0 13px;color:#f5f7fa}.security-card p{color:#aab6c5;font-size:12px;line-height:1.5}
.security-form{display:grid;gap:12px}.security-form label{display:grid;gap:6px;color:#aab6c5;font-size:12px}
.security-form input,.security-form select{width:100%;min-width:0;color:#fff;background:#131922;border:1px solid #445064;border-radius:8px;padding:11px}
.security-form fieldset{border:1px solid #394457;border-radius:8px;padding:10px}.security-form legend{color:#c4cbd5;font-size:12px;padding:0 6px}
.security-form .sec-camera-option{display:flex;align-items:center;gap:9px;margin:5px 0}.sec-camera-option input{width:18px;accent-color:#ff792d}
.security-users{display:grid;gap:7px}.security-user{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;border-radius:9px;background:#232d39}
.security-user strong{font-size:13px}.security-user small{display:block;color:#9ba9b8;margin-top:4px}.security-actions{display:flex;gap:6px;flex-wrap:wrap}
.security-actions .btn{padding:7px 9px;min-height:32px;font-size:11px}.totp-secret{display:block;overflow-wrap:anywhere;color:#ffb883;margin:10px 0;padding:12px;background:#10151d}
#sec-message{min-height:18px;color:#ffb883}
@media(max-width:880px){.security-grid{grid-template-columns:1fr}.security-user{align-items:flex-start;flex-direction:column}}

.security-inline-role{color:#fff;background:#151c25;border:1px solid #475264;border-radius:8px;padding:7px;font-size:12px}
.security-access{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-top:1px solid #455060;width:100%;padding-top:10px}
.security-access label{display:flex;align-items:center;gap:5px;color:#b7c4d3;font-size:12px}.security-access input{accent-color:#ff792d}
.security-user{flex-wrap:wrap}

.security-recovery{border:1px solid #f97316;border-radius:12px;padding:16px;background:#2c221d;margin:12px 0;color:#fff}.security-recovery pre{white-space:pre-wrap;overflow-wrap:anywhere;user-select:text;letter-spacing:.07em;line-height:1.8;color:#fbc49d}.security-recovery button{margin:6px 6px 0 0}.security-recovery p{font-size:.9rem;color:#d8c8ba}


/* 0.1.30 — calm, compact studio layout. OBS & diagnostics are actual separate pages. */
.sidebar .nav-item{min-height:41px;padding:10px 13px}
.sidebar .side-section.second{margin-top:22px}
.topbar{padding:20px 27px 16px}
.topbar .breadcrumb{margin-bottom:5px}
.topbar h1{font-size:26px}
.workspace main{padding:19px 27px 26px}
.overview{gap:11px;margin-bottom:14px}
.overview .stat{padding:13px 15px}
.studio-layout{grid-template-columns:minmax(0,1.65fr) minmax(270px,.85fr);gap:15px}
.studio-layout .section-title{margin-bottom:10px}
.right-block>.director-pro{margin-top:0}
.right-block .director-pro{margin-bottom:14px}
.right-block .source-filters{margin-bottom:8px}
.right-block .matrix-note{margin:7px 0}
.stage-note{padding:9px 12px;font-size:11px}
.signal-check{margin-top:8px}
#replay-panel{margin:10px 0 7px;padding:0;border:1px solid #333b48;border-radius:10px;background:#171d25;overflow:hidden}
#replay-panel>.replay-summary{padding:12px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer;color:#d2d8df;font-size:12px;font-weight:750}
#replay-panel>.replay-summary::-webkit-details-marker{display:none}
#replay-panel>.replay-summary:hover{background:#212a35}
#replay-panel .replay-expand{white-space:nowrap;color:#ff9b5a;font-size:11px}
#replay-panel[open] .replay-expand{font-size:0}
#replay-panel[open] .replay-expand:after{content:'Schließen ▴';font-size:11px}
#replay-panel>.replay-heading,#replay-panel>.replay-list,#replay-panel>.director-editor{margin:10px 13px 13px}

.feature-head{margin:0 0 16px}
.view-tools{min-width:0}
.view-tools .feature-head h2{font-size:23px}
.view-tools .feature-head p{color:#93a1b2;max-width:880px}
.tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.tool-grid>.tool-wide{grid-column:1/-1;min-width:0}
.tool-grid>.tool-half{min-width:0}
.tool-grid .performance-panel,.tool-grid .codec-panel,.tool-grid .multistream-panel,.tool-grid .engine-panel,.tool-grid .encoder-panel{margin:0;min-width:0;height:auto}
.tool-grid .performance-panel,.tool-grid .codec-panel,.tool-grid .engine-panel,.tool-grid .encoder-panel,.tool-grid .multistream-panel{border-radius:12px}
.tool-grid .tool-half>.performance-panel,.tool-grid .tool-half>.encoder-panel{height:100%}
#view-outputs .external-viewer-panel{padding:16px 19px}
#view-outputs .external-viewer-form{margin-top:16px}
#view-outputs .external-viewer-panel summary{cursor:pointer}
#view-outputs .multistream-panel{max-width:none}
#view-outputs .codec-panel{max-width:none}
.obs-onboarding{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 20px;padding:18px 20px;margin-bottom:16px;border:1px solid #614229;border-radius:13px;background:linear-gradient(115deg,#28231f 0%,#171d25 65%);box-shadow:0 5px 24px #0002}
.obs-onboarding h3{font-size:17px;margin-bottom:5px}
.obs-onboarding p{font-size:12px;line-height:1.6;color:#aab6c1}
.obs-setup-actions{display:flex;align-items:center;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.obs-setup-pill{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;font-size:10px;font-weight:750;letter-spacing:.4px;border-radius:7px;background:#423126;border:1px solid #825632;color:#ffbd83;white-space:nowrap}
.obs-setup-pill.ready{background:#1e3930;border-color:#326950;color:#83dfae}
.obs-setup-status{grid-column:1/-1;padding-top:8px;border-top:1px solid #574331;font-size:12px;color:#e0c3a9}
#camera-rename-modal .modal>p{margin:12px 0 20px;color:#aeb8c4;font-size:13px;line-height:1.6}
#camera-rename-modal .modal-actions{margin-top:18px}
#camera-rename-modal .form-error{min-height:16px;margin:8px 0}
#view-cameras .camera-item{padding:18px}
#view-cameras .camera-card-buttons .btn{padding:8px 10px;font-size:11px}
#view-cameras .camera-meta{margin-top:10px}
#view-cameras .camera-card-buttons{margin-top:13px}

@media(max-width:1180px){
 .studio-layout{grid-template-columns:minmax(0,1.35fr) minmax(270px,.8fr)}
 .tool-grid{grid-template-columns:minmax(0,1fr)}
 .tool-grid>.tool-half{grid-column:1/-1}
}
@media(max-width:860px){
 .studio-layout{grid-template-columns:minmax(0,1fr)}
 .topbar{padding:18px 20px}
 .workspace main{padding:16px 18px}
 .obs-onboarding{grid-template-columns:1fr}
 .obs-setup-actions{justify-content:flex-start}
}
@media(max-width:560px){
 .obs-onboarding{padding:13px}
 #view-outputs .external-viewer-form{grid-template-columns:minmax(0,1fr)}
 .tool-grid{gap:11px}
 .sidebar .nav-item{font-size:12px}
}
