/* Space Cam additions on top of the Space Prompter design (same tokens, same patterns). */
[hidden]{display:none!important}

/* Dual Monitor only: no device switchers. No QR pairing (needs the prompter relay). */
.device-picker,
#right-rail .sec:has(> .device-picker),
#left-rail .left-device,
#pair-btn, #pair-pill{display:none!important}

.sc-sec .sec-title .sc-state{font-family:var(--mono);font-size:10px;letter-spacing:.04em;text-transform:none;color:var(--fg-dim);display:inline-flex;align-items:center;gap:6px}
.sc-state::before{content:"";width:7px;height:7px;border-radius:50%;background:#4a4a50}
.sc-state.on{color:var(--fg)} .sc-state.on::before{background:#30D158}
.sc-state.rec{color:#fff} .sc-state.rec::before{background:var(--red);animation:scBlink 1s steps(2,start) infinite}
@keyframes scBlink{to{visibility:hidden}}

/* camera preview */
.sc-preview{position:relative;aspect-ratio:16/9;background:#000;border:1px solid var(--hair);border-radius:12px;overflow:hidden;margin-bottom:10px}
.sc-preview img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sc-grid{position:absolute;inset:0;pointer-events:none}
.sc-grid i{position:absolute;background:rgba(255,255,255,.35)}
.sc-grid i:nth-child(1){left:33.333%;top:0;bottom:0;width:1px}
.sc-grid i:nth-child(2){left:66.666%;top:0;bottom:0;width:1px}
.sc-grid i:nth-child(3){top:33.333%;left:0;right:0;height:1px}
.sc-grid i:nth-child(4){top:66.666%;left:0;right:0;height:1px}
.sc-badge{position:absolute;top:7px;left:7px;display:inline-flex;align-items:center;gap:6px;background:var(--red);color:#fff;font:700 11px var(--mono);padding:3px 8px;border-radius:6px}
.sc-badge i{width:7px;height:7px;border-radius:50%;background:#fff;animation:scBlink 1s steps(2,start) infinite}
.sc-badge.warn{background:#C77700}
.sc-fps{position:absolute;top:7px;right:8px;font:600 10px var(--mono);color:rgba(255,255,255,.55)}
.sc-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:radial-gradient(ellipse at center,#141416 0%,#000 75%)}
.sc-empty .btn{flex:none;min-width:0;padding:10px 18px}
.sc-empty small{font-size:10.5px;color:var(--fg-dim)}
.sc-info{font:11px var(--mono);color:var(--fg-dim);margin:-2px 0 12px;display:flex;flex-wrap:wrap;gap:4px 6px}
.sc-info b{color:var(--fg);font-weight:600}
.sc-info i{font-style:normal;color:#4a4a50}
.sc-focus{margin-bottom:12px}
.tbtn kbd{margin-left:auto}
.tbtn.held{background:var(--fg);color:var(--accent-fg);border-color:var(--fg)}
.tbtn.held kbd{background:transparent;color:var(--accent-fg);border-color:rgba(0,0,0,.3)}
.tbtn:disabled{opacity:.4;cursor:not-allowed}
.tbtn[aria-pressed="true"]{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.4)}
.sc-wide{justify-content:center}
.sc-link{background:none;border:0;color:var(--fg-dim);font-size:12px;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:3px}
.sc-link:hover{color:var(--fg)}
.sc-problem{margin-top:12px;border:1px solid #4a3a12;background:#15120a;border-radius:10px;padding:12px;font-size:12px;line-height:1.5;color:#dcdcde}
.sc-problem b{color:#FFD60A}
.sc-problem p{margin:6px 0}
.sc-problem ol{margin:6px 0 0;padding-left:18px}
.sc-problem li{margin:5px 0}
.sc-problem small{display:block;color:var(--fg-dim);margin-top:6px;word-break:break-all}
.sc-cmd{display:flex;align-items:center;gap:6px;background:#050506;border:1px solid var(--hair);border-radius:7px;padding:5px 5px 5px 8px;margin:5px 0}
.sc-cmd code{flex:1;font:10.5px var(--mono);overflow-x:auto;white-space:nowrap}
.sc-cmd button{background:var(--raised);border:1px solid var(--hair);border-radius:6px;font-size:11px;padding:3px 8px;cursor:pointer;color:var(--fg)}

/* audio */
.sc-select{width:100%;background:var(--raised);border:1px solid var(--hair);border-radius:10px;padding:9px 10px;color:var(--fg);font-size:13px;font-family:inherit;margin-bottom:10px}
.sc-meter{margin-bottom:14px}
.sc-meter-bar{position:relative;height:8px;border-radius:4px;background:#1c1c1e;overflow:hidden}
.sc-meter-bar i{position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,#30D158 0%,#30D158 70%,#FFD60A 85%,var(--red) 97%);background-size:var(--meter-w,256px) 100%;}
.sc-meter-bar b{position:absolute;top:0;bottom:0;width:2px;background:#fff;left:0}
.sc-meter-label{display:flex;justify-content:space-between;margin-top:5px;font:10.5px var(--mono);color:var(--fg-dim)}
.sc-clip{padding:0 5px;border-radius:3px;color:#4a4a50}
.sc-clip.on{background:var(--red);color:#fff}
.sc-folder{margin-bottom:10px}
.sc-folder-row{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--fg-dim);margin-bottom:8px}
.sc-folder-row b{color:var(--fg);font-weight:600;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* record button in the bottom bar */
.cap-side.sc-rec{width:150px;color:var(--fg);border-color:rgba(232,70,58,.55)}
.cap-side.sc-rec i{width:12px;height:12px;border-radius:50%;background:var(--red);flex:none;transition:border-radius .15s}
.cap-side.sc-rec.unarmed{opacity:.55}
.cap-side.sc-rec.on{background:var(--red);border-color:var(--red);color:#fff;font-family:var(--mono);box-shadow:0 0 22px rgba(232,70,58,.45)}
.cap-side.sc-rec.on i{background:#fff;border-radius:2px}
.cap-side.sc-rec.warn{background:#C77700;border-color:#C77700}
.cap-side.sc-rec:hover{background:rgba(232,70,58,.14)}
.cap-side.sc-rec.on:hover{background:var(--red)}

/* takes (left rail): above Scripts, same row style as scripts */
#new-script-btn{display:none!important}          /* new scripts start from the main paste page */
.sc-takes{margin-top:0}
.sc-takes .scripts-head{margin-top:28px}
#scTakeList{display:flex;flex-direction:column;gap:8px}
.sc-mini-btn{font-family:'Archivo',system-ui,sans-serif;font-weight:600;font-size:12px;background:transparent;border:1px dashed var(--hair);border-radius:8px;color:var(--fg-dim);padding:5px 10px;cursor:pointer}
.sc-mini-btn:hover{color:var(--fg);border-color:var(--fg-dim)}
.sc-none{font-size:12px;color:var(--fg-dim);line-height:1.6}
.script-tab.sc-take{flex-direction:column;align-items:stretch;gap:0;padding:0;cursor:default}
.sc-take-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:10px 10px 10px 13px;cursor:pointer;border-radius:10px;outline:none}
.sc-take-head:focus-visible{box-shadow:0 0 0 2px rgba(255,255,255,.35)}
.script-tab.sc-take.open .sc-take-head{padding-bottom:6px}
.sc-tp{padding:2px 12px 12px 13px;display:flex;flex-direction:column;gap:8px;cursor:default}
.sc-tp-wave{width:100%;height:48px;display:block;cursor:pointer;border-radius:6px;background:rgba(0,0,0,.25)}
.sc-tp-row{display:flex;align-items:center;gap:10px}
.sc-tp-play{width:34px;height:34px;border-radius:50%;border:1px solid var(--accent);background:var(--accent);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none}
.sc-tp-play svg{width:16px;height:16px;fill:var(--accent-fg)}
.sc-tp-time{font:11.5px var(--mono);color:var(--fg);flex:1}
.sc-tp-dl{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;color:var(--fg-dim)}
.sc-tp-dl:hover{background:rgba(255,255,255,.08);color:var(--fg)}
.sc-tp-dl svg{width:16px;height:16px;fill:currentColor}
.sc-tp-file{font:10.5px var(--mono);color:var(--fg-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sc-tp-loading,.sc-tp-msg{font-size:12px;color:var(--fg-dim);padding:6px 0}
.sc-tp-msg{color:#FFD60A}
.sc-strip-wrap .sec-title .sc-mini-btn{letter-spacing:0;text-transform:none}
.sc-take-main{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.sc-take-sub{font-family:'Public Sans',system-ui,sans-serif;font-weight:400;font-size:11px;line-height:1.45;color:var(--fg-dim)}
.sc-take-sub em{font-style:normal;color:#FFD60A}
.script-tab.sc-take.unsaved{border-color:#4a3a12}
.script-tab.sc-take .script-tab-actions{padding-top:1px}
#left-rail .scripts-head:not(.sc-takes .scripts-head){margin-top:30px}

/* popups: play / rename / delete take, edit script text */
.sc-modal{position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;padding:24px}
.sc-modal-card{width:min(440px,100%);background:var(--panel);border:1px solid var(--hair);border-radius:16px;padding:20px;box-shadow:0 30px 80px rgba(0,0,0,.6);display:flex;flex-direction:column;gap:14px}
.sc-modal-card.sc-modal-wide{width:min(860px,100%);height:min(80vh,760px)}
.sc-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.sc-modal-title{font-family:'Archivo',system-ui,sans-serif;font-weight:700;font-size:17px}
.sc-modal-name{font-size:12.5px;color:var(--fg-dim);margin-top:4px}
.sc-modal-x{background:none;border:0;color:var(--fg-dim);font-size:16px;cursor:pointer;padding:4px 6px;border-radius:8px}
.sc-modal-x:hover{color:var(--fg);background:rgba(255,255,255,.08)}
.sc-modal-text{flex:1;min-height:0;resize:none;background:var(--raised);border:1px solid var(--hair);border-radius:12px;padding:16px 18px;color:var(--fg);font:15px/1.6 'Public Sans',system-ui,sans-serif;outline:none}
.sc-modal-text:focus{border-color:rgba(255,255,255,.4)}
.sc-modal-input{background:var(--raised);border:1px solid var(--hair);border-radius:10px;padding:11px 12px;color:var(--fg);font:14px 'Public Sans',system-ui,sans-serif;outline:none}
.sc-modal-input:focus{border-color:rgba(255,255,255,.4)}
.sc-modal-hint{font-size:12px;color:var(--fg-dim);margin-right:auto}
.sc-modal-p{margin:0;font-size:13.5px;line-height:1.55;color:#cfcfd2}
.sc-modal-meta{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--fg-dim)}
.sc-modal-meta code{font:11.5px var(--mono);color:var(--fg);word-break:break-all}
.sc-modal audio{width:100%}
.sc-modal-row{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.sc-modal-row .btn{padding:10px 18px}
.sc-modal-row .btn.primary{flex:none;min-width:0;box-shadow:none}
.sc-modal-row .btn.primary.danger{background:var(--red);border-color:var(--red);color:#fff}

/* toast */
.sc-toast{position:fixed;left:50%;bottom:110px;transform:translateX(-50%);z-index:50;max-width:min(640px,80vw);background:rgba(20,20,22,.96);border:1px solid var(--hair);border-radius:12px;padding:10px 16px;font-size:13px;color:var(--fg);box-shadow:0 10px 40px rgba(0,0,0,.5)}
.sc-toast.error{border-color:var(--red)} .sc-toast.ok{border-color:#30D158}

/* big floating preview (Document Picture-in-Picture window) */
body.sc-big{margin:0;height:100vh;display:flex;flex-direction:column;background:#000;color:#F0F0EE;font:13px 'Public Sans',system-ui,sans-serif;--red:#E8463A;--mono:ui-monospace,Menlo,monospace}
.sc-big-stage{position:relative;flex:1;min-height:0;container-type:size}
/* 16:9 box, the framing the video records (A7 III live view is 3:2, so top and bottom are cropped) */
.sc-big-stage>img,.sc-big-stage>.sc-grid{position:absolute;inset:0;margin:auto;width:min(100cqw,calc(100cqh*16/9));height:auto;aspect-ratio:16/9}
.sc-big-stage>img{object-fit:cover}
.sc-big-bar{display:flex;gap:6px;padding:8px;background:#0E0E0F;border-top:1px solid #2A2A2C}
.sc-big-bar button{flex:1;background:#1A1A1B;border:1px solid #2A2A2C;border-radius:9px;color:#F0F0EE;padding:9px 6px;font:600 13px 'Archivo',system-ui,sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}
.sc-big-bar button.held{background:#F0F0EE;color:#070707}
.sc-big-bar button.rec{border-color:rgba(232,70,58,.6)}
.sc-big-bar button.rec i{width:11px;height:11px;border-radius:50%;background:#E8463A}
.sc-big-bar button.rec.on{background:#E8463A;color:#fff;font-family:ui-monospace,Menlo,monospace}
.sc-big-bar button.rec.on i{background:#fff;border-radius:2px}
.sc-big-bar button:disabled{opacity:.4}

/* "Before you shoot" strip on the first (paste) screen */
.sc-strip-wrap{margin:0 0 26px}
.sc-strip{display:grid;grid-template-columns:1fr 1fr .82fr;gap:10px;align-items:stretch}
.sc-stack{display:flex;flex-direction:column;gap:10px;min-width:0}
.sc-stack .sc-card{flex:1}
.sc-card{border:1px solid var(--hair);border-radius:12px;background:var(--surface);padding:14px;display:flex;flex-direction:column;gap:4px;min-width:0}
.sc-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.sc-card-title{font-family:'Archivo',system-ui,sans-serif;font-weight:700;font-size:14px}
.sc-card .sc-state{font-family:var(--mono);font-size:10.5px;color:var(--fg-dim);display:inline-flex;align-items:center;gap:6px}
.sc-card-sub{font-size:12px;color:var(--fg-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:18px}
#scProblem2{margin-top:10px}

/* first page: shoot name; no device/pedal row (Bluetooth comes back later somewhere else) */
#setup .setup-device{display:none!important}
.sc-shoot-wrap{margin:0 0 22px}
.sc-shoot-input{width:100%;background:var(--raised);border:1px solid var(--hair);border-radius:12px;padding:14px 16px;color:var(--fg);font:700 20px 'Archivo',system-ui,sans-serif;outline:none}
.sc-shoot-input:focus{border-color:rgba(255,255,255,.45)}
.sc-shoot-input::placeholder{color:#55555c;font-weight:600}
.sc-shoot-hint{font-size:12px;color:var(--fg-dim);margin-top:8px}
/* Takes header carries the current take name */
.sc-takes-title{display:flex;align-items:center;justify-content:flex-start;gap:6px;min-width:0;flex:1}
.sc-cur{display:inline-flex;align-items:center;gap:6px;min-width:0;cursor:pointer;color:var(--fg);letter-spacing:.02em;text-transform:none;font-weight:700;font-size:12.5px}
.sc-cur i{font-style:normal;color:var(--fg-dim)}
.sc-cur span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}
.sc-cur svg{width:13px;height:13px;fill:var(--fg-dim);flex:none}
.sc-cur:hover svg{fill:var(--fg)}
.sc-shoot-rail.empty,.sc-cur.empty span{color:var(--fg-dim);font-weight:600}
.sc-takes .scripts-head{gap:8px}
.sc-head-btns{display:flex;gap:6px}

.sc-help{margin-top:12px;border:1px solid var(--hair);border-radius:10px;padding:10px 12px;font-size:12px;line-height:1.5;color:#dcdcde;background:#0d0d0f}
.sc-help summary{cursor:pointer;font-weight:600;color:var(--fg);list-style:none;display:flex;align-items:center;gap:6px}
.sc-help summary::-webkit-details-marker{display:none}
.sc-help summary::before{content:'▸';color:var(--fg-dim);transition:transform .15s}
.sc-help[open] summary::before{transform:rotate(90deg)}
.sc-help ol{margin:8px 0 0;padding-left:18px}
.sc-help li{margin:6px 0}
.sc-help small{display:block;color:var(--fg-dim);margin-top:4px}
.sc-help small code{font:10.5px var(--mono)}
.sc-help .sc-agent{margin:2px 0 4px}

/* card status: green dot + green text when ready */
.sc-status{font-family:var(--mono);font-size:11px;letter-spacing:.02em;color:var(--fg-dim);display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.sc-status::before{content:"";width:8px;height:8px;border-radius:50%;background:#4a4a50}
.sc-status.on{color:#30D158;font-weight:600}.sc-status.on::before{background:#30D158;box-shadow:0 0 0 3px rgba(48,209,88,.18)}
.sc-status.wait{color:#FFD60A}.sc-status.wait::before{background:#FFD60A}
.sc-status.rec{color:#fff}.sc-status.rec::before{background:var(--red);animation:scBlink 1s steps(2,start) infinite}
/* camera feed / audio wave: same 16:9 box so both cards line up */
.sc-media{position:relative;width:100%;aspect-ratio:16/9;border-radius:8px;background:#000;overflow:hidden;margin-top:8px;display:grid;place-items:center}
.sc-media>span{font-size:12px;color:var(--fg-dim)}
.sc-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none}
.sc-media.live img{display:block}.sc-media.live>span{display:none}
.sc-media canvas{position:absolute;inset:0;width:100%;height:100%}
.sc-media-db{position:absolute;right:8px;bottom:6px;font:600 10.5px var(--mono);color:var(--fg-dim)}
/* card buttons: Connect stands out, Disconnect stays quiet; always on the bottom row */
.sc-cbtn{margin-top:auto;width:100%;height:38px;border-radius:9px;border:1px solid var(--hair);background:transparent;color:var(--fg-dim);font:600 13px 'Public Sans',system-ui,sans-serif;cursor:pointer;transition:background .15s,color .15s}
.sc-card>.sc-media+.sc-cbtn,.sc-card>.sc-card-sub+.sc-cbtn{margin-top:auto}
.sc-card-big .sc-cbtn{margin-top:12px}
.sc-cbtn:hover:not(:disabled){color:var(--fg);background:rgba(255,255,255,.05)}
.sc-cbtn.primary{background:#F0F0EE;border-color:#F0F0EE;color:#0a0a0b}
.sc-cbtn.primary:hover:not(:disabled){background:#fff;color:#0a0a0b}
.sc-cbtn:disabled{opacity:.5;cursor:default}
.sc-stack .sc-cbtn{margin-top:auto}
.sc-stack .sc-card-sub{margin-bottom:10px}
