:root{--paper:#090b09;--ink:#dddeda;--muted:#9a9f97;--line:#30362e;--lime:#78f878;--green:#78f878;--dark:#101610;--dark-line:#354035}
body{background:#090b09}.director-page{--header-height:78px;--camera-picker-height:0px;height:100vh;height:100dvh;overflow:hidden;display:flex;flex-direction:column}.director-page #main{flex:1;min-height:0}.director-header{flex-shrink:0}.director-header{height:78px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:22px;background:#050605;font:11px var(--mono);letter-spacing:.08em}.director-header a:hover{color:#78f878}.social-link{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.social-link svg{width:29px;height:29px;fill:currentColor;stroke:none}.director-identity{display:flex;align-items:center;gap:28px;min-width:0}.director-brand{display:inline-flex;align-items:center;gap:13px;white-space:nowrap}.director-logo{display:block;width:46px;height:46px;flex-shrink:0}.director-wordmark{font:700 21px/1 var(--mono);letter-spacing:-.06em;color:#e4ebdf}.director-wordmark>span{font-weight:400;color:#b7c4b0}.director-identity .social-link{border-left:1px solid #31392c;padding-left:28px}.director-header nav{display:flex;align-items:center;gap:27px}.control-room{height:100%;min-height:0;display:flex;flex-direction:column;background:#050605;padding-top:0}.scene-viewport{width:100%;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#000}.control-scene{position:relative;width:min(100%,calc((100dvh - var(--header-height) - var(--camera-picker-height))*1672/941));margin:auto;flex-shrink:0;isolation:isolate;line-height:0}.control-scene>img{display:block;width:100%;height:auto}.control-scene canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.camera-target{position:absolute;overflow:hidden;border:0;background:transparent;padding:0;cursor:zoom-in;color:#8bff89;isolation:isolate}.camera-target::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,#00000021 3px 4px);pointer-events:none}.camera-target::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px #9aff8530;opacity:0;transition:opacity .2s}.camera-target:hover::after,.camera-target:focus-visible::after{opacity:1;box-shadow:inset 0 0 0 2px #9aff85,inset 0 0 25px #70ed591c}.camera-target:focus-visible{outline:2px solid #9aff85;outline-offset:2px;z-index:3}.camera-sweep{position:absolute;inset:-30% 0 auto;height:27%;background:linear-gradient(transparent,#c5ffc012,transparent);animation:camera-sweep var(--speed) linear infinite!important;animation-delay:var(--delay);pointer-events:none}.camera-rec{position:absolute;left:3%;top:3.5%;width:2%;aspect-ratio:1;border-radius:50%;background:#80ff86;box-shadow:0 0 7px #80ff86;animation:rec 2.9s steps(1) infinite!important;animation-delay:var(--delay)}.camera-time{position:absolute;right:1%;bottom:1%;font:bold clamp(5px,1.05vw,19px)/1.2 var(--mono);background:#031003;padding:1px 4px;color:#8bff89;font-variant-numeric:tabular-nums}.mobile-cameras{display:none}.camera-dialog{padding:0;background:#070c07;color:#bce6ac;border:1px solid #739567;width:min(900px,calc(100% - 28px));max-height:92svh;box-shadow:0 0 100px #000;overflow:auto}.camera-dialog::backdrop{background:#000d;backdrop-filter:blur(5px)}.camera-dialog-header,.camera-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px;font:10px var(--mono)}.camera-dialog h2{font:12px var(--mono);letter-spacing:.05em}.camera-dialog button{background:transparent;color:#bce6ac;font:10px var(--mono);border:1px solid #3b5434;padding:10px}.camera-dialog button:hover{background:#163017}.camera-detail{position:relative;overflow:hidden;background:#000;width:100%;isolation:isolate}.camera-detail img{position:absolute;max-width:none;height:auto}.camera-detail::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(transparent 0 3px,#0002 3px 4px)}.detail-scan{position:absolute;top:-30%;width:100%;height:25%;background:linear-gradient(transparent,#8fff8420,transparent);animation:camera-sweep 6s linear infinite!important}.detail-badge{position:absolute;left:14px;bottom:14px;padding:7px;background:#071006de;font:9px var(--mono);letter-spacing:.1em;color:#8dff89}.closing{color:#142314}.closing-symbol{color:#62cc61}.closing .button{background:#142314;color:#ceffc3}.readiness-icon{background:#172916;color:#a6ea8a;border-color:#36552b}.detail-tag{color:#a1b395}.code-note code{overflow-wrap:anywhere}.status-title .text-link{color:#afe18e}.readiness-list dd{white-space:normal}
@keyframes camera-sweep{to{transform:translateY(490%)}}@keyframes rec{0%,90%,100%{opacity:1}94%{opacity:.25}}
@media(min-width:1800px){.camera-time{font-size:19px}}
@media(max-width:800px){.director-page{--header-height:68px}.director-header{padding:0 16px;height:68px;gap:14px}.director-identity{gap:20px}.director-logo{width:40px;height:40px}.director-wordmark{font-size:19px}.director-identity .social-link{padding-left:20px}.director-header nav{gap:15px}}
@media(max-width:520px){.director-page{--header-height:65px;--camera-picker-height:172px}.director-header{height:65px;gap:9px}.director-identity{gap:14px}.director-brand{gap:10px}.director-logo{width:36px;height:36px}.director-wordmark{font-size:17px}.director-identity .social-link{padding-left:14px}.director-header nav{gap:10px;font-size:9px}.camera-time{font-size:clamp(3px,1.05vw,6px);padding:0 1px}.mobile-cameras{height:var(--camera-picker-height);flex-shrink:0;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,1fr);gap:6px;padding:12px}.mobile-cameras button{background:#0e130c;border:1px solid #303e2b;color:#a9c69e;padding:12px 4px;font:9px var(--mono);min-height:44px}.mobile-cameras button span{display:block;font-size:7px;color:#77886d;margin-top:5px}.mobile-cameras button:hover{border-color:#8cfa77;color:#8cfa77}.camera-dialog-header,.camera-dialog-footer{padding:10px;font-size:8px}.camera-dialog h2{font-size:10px}.camera-dialog button{font-size:8px}.detail-badge{font-size:7px;left:8px;bottom:8px}}

.detail-clock{position:absolute;right:1%;bottom:1%;background:#031003;color:#8bff89;font:bold clamp(16px,3.4vw,36px)/1.2 var(--mono);padding:3px 7px;font-variant-numeric:tabular-nums;z-index:1}


@media(max-height:420px){.director-page{--camera-picker-height:0px}.mobile-cameras{display:none}}
