:root{color-scheme:dark;--bg:#090c11;--panel:#12171f;--line:#29313d;--text:#e9edf4;--muted:#8c98a9;--accent:#b0bffb;--blue:#8198ef}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:var(--bg);color:var(--text);font:14px/1.5 system-ui,-apple-system,sans-serif}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}[hidden]{display:none!important}#viewer{position:fixed;inset:0;background:radial-gradient(ellipse at 50% 35%,#162030 0%,#0b1018 40%,#07090e 85%)}#canvas{position:absolute;inset:0;overflow:hidden;background:transparent}video{width:100%;height:100%;object-fit:contain;transform-origin:50% 50%;background:#000}body.signed-in #viewer{background:#05070a}.topbar{position:absolute;inset:0 0 auto;height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:linear-gradient(#070a10c9,transparent);z-index:2;pointer-events:none}.identity{display:flex;align-items:center;gap:12px;font-size:12px;letter-spacing:2px}.identity b{display:block;letter-spacing:2.2px;font-weight:450;font-size:8px;color:var(--muted);margin-top:2px}.appmark{display:grid;place-items:center;border:1px solid #71809d63;width:32px;height:32px;border-radius:9px;font-size:17px;font-weight:600;letter-spacing:0}.status{font-size:9px;letter-spacing:1.8px;display:flex;align-items:center;gap:8px;color:#bbc5d4}.status:before,.live-dot{content:'';width:5px;height:5px;background:#7a8597;border-radius:50%;display:inline-block}.status.live:before{background:#8be0b2;box-shadow:0 0 8px #8be0b280}.center-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(360px,calc(100% - 44px));z-index:5;text-align:center;padding:18px 0;max-height:calc(100dvh - 150px);overflow:auto;scrollbar-width:thin}h1{font-size:29px;font-weight:500;letter-spacing:-.9px;line-height:1.2;margin:20px 0 10px}h2{font-size:22px;font-weight:550;letter-spacing:-.5px;margin:4px 0 0}h3{font-size:16px;font-weight:550;margin:28px 0 14px}h3:first-child{margin-top:0}.center-panel p{color:var(--muted);font-size:13px;margin:10px 0 24px}.lock-icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid #5f718e58;background:#1f2b3f5c;border-radius:15px;margin:auto;color:#c4d0f3;font-size:33px;line-height:1}.kicker{color:var(--accent)!important;font-size:9px!important;letter-spacing:1.7px;font-weight:650;margin:0!important}.primary,.secondary{border-radius:6px;min-height:42px;padding:11px 15px;font-size:12px;font-weight:550}.primary{color:#111a31;border:1px solid var(--accent);background:var(--accent)}.secondary{color:var(--text);border:1px solid #394558;background:#1a222f}.center-panel .primary{width:100%;margin-top:18px}.primary span{float:right}.text-button{border:0;background:transparent;color:var(--muted);font-size:11px;padding:10px;min-height:38px}.text-button:hover,.text-link:hover{color:#d2dcff}.center-panel>.text-button{margin-top:14px}.center-panel input{background:#151d2a9c}.center-panel label{text-align:left}.center-panel .hint{font-size:11px;margin:14px 0}.center-panel img{border-radius:8px;background:#fff;margin:0 auto 10px;display:block}details{color:var(--muted);font-size:11px}summary{cursor:pointer}code{display:block;word-break:break-all;color:var(--text);font:12px/1.7 monospace;padding:12px}label{display:block;color:#b7c2d2;font-size:11px;margin:14px 0 0}input:not([type=checkbox]):not([type=range]),select{width:100%;min-height:43px;border:1px solid #344055;border-radius:6px;background:#0e141e;color:var(--text);padding:10px 12px;margin-top:6px}input::placeholder{color:#626e80}#guestPassword{margin-top:8px}input[type=range]{width:100%;margin:12px 0 0;accent-color:var(--accent)}output{float:right;color:var(--accent)}.toolbar{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:30px 30px 24px;background:linear-gradient(transparent,#05070ae6);z-index:3;font-size:11px;color:#bac4d2}.toolbar>div:first-child{display:flex;align-items:center;gap:8px}.tools{display:flex;gap:8px}.tools button{color:#d4dce9;background:#151d299e;border:1px solid #4d5b715c;border-radius:5px;font-size:11px;padding:8px 12px;min-height:36px}.tools button:hover{background:#2a3548}#offline{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}#offline h1{font-size:24px;margin:16px 0 8px}#offline p{font-size:13px;color:var(--muted);max-width:400px;margin:0}.pulse{width:10px;height:10px;border-radius:50%;background:#3b4b65;box-shadow:0 0 0 10px #24314740}#admin{position:fixed;right:0;top:0;bottom:0;width:480px;max-width:100%;z-index:10;background:var(--panel);border-left:1px solid #313c4e;display:flex;flex-direction:column;box-shadow:-20px 0 80px #0008}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 18px}.icon-button{background:transparent;border:1px solid var(--line);color:var(--muted);width:32px;height:32px;border-radius:6px;font-size:23px}.security-line{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;padding:0 24px 20px}.security-line>span:first-child{color:#a8d9ba}.tabs{display:flex;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 14px;gap:4px}.tabs button{flex:1;padding:14px 5px;background:none;border:0;border-bottom:2px solid transparent;color:#8693a7;font-size:10px}.tabs button.selected{color:var(--accent);border-bottom-color:var(--accent)}.panel-body{padding:24px;overflow:auto;flex:1;scrollbar-width:thin}.panel-body form>.primary,.panel-body form>.secondary{margin-top:18px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fields label{margin:0}.hint{font-size:11px;color:var(--muted);line-height:1.65}.button-row{display:flex;gap:10px;align-items:center;margin-top:12px}.window{border:1px solid var(--line);border-radius:6px;padding:14px;margin:16px 0}.days{display:flex;flex-wrap:wrap;gap:9px}.days label{display:flex;gap:3px;align-items:center;margin:0;font-size:10px}.days input{accent-color:var(--accent)}.times{display:flex;gap:10px;align-items:end}.times label{flex:1}.times input{min-width:0}.times button{margin-bottom:1px}.compact{padding:7px 10px;min-height:33px;font-size:10px}#scheduleForm>.primary{display:block;width:100%}.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px}.section-title h3{margin:0}.security-card{margin-top:25px;padding:16px;background:#17251f;border:1px solid #385443;border-radius:6px;font-size:12px;color:#b6dec3}.security-card span{display:block;font-size:11px;margin-top:5px;color:#86aa93}.text-link{display:block;color:var(--accent);font-size:12px;margin:24px 0 8px;text-decoration:none}.camera-group{border:1px solid var(--line);border-radius:7px;margin:14px 0}.camera-group summary{padding:15px;font-size:12px;color:#d5ddeb}.camera-group form{padding:0 15px 18px}.setting-heading{font-size:11px;color:var(--accent);margin:20px 0 0}.camera-group input,.camera-group select{font-size:12px}.camera-group label{margin-top:12px}.camera-group .primary{margin-top:18px}.recovery-panel{width:min(400px,calc(100% - 44px));background:var(--bg);padding:22px;border:1px solid var(--line);border-radius:12px}.recovery-panel p{margin-bottom:15px}#recoveryCodes{font:12px/2 monospace;display:grid;grid-template-columns:1fr 1fr;gap:5px 12px;padding:14px 0;user-select:all;color:#bfcdf9}#message{position:fixed;bottom:82px;left:50%;transform:translateX(-50%);z-index:30;margin:0;padding:12px 18px;border:1px solid #4f617d;background:#1a2536;color:#e1e9f8;border-radius:7px;max-width:min(540px,90vw);font-size:12px;white-space:pre-line;box-shadow:0 10px 40px #0008}#message.error{border-color:#834c52;background:#342127;color:#ffccd0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body.panel-open #viewer{right:480px}body.panel-open .topbar{padding:0 24px}.viewer-ready .topbar,.viewer-ready .toolbar{opacity:.25;transition:opacity .2s}.viewer-ready #viewer:hover .topbar,.viewer-ready #viewer:hover .toolbar,.viewer-ready #viewer:focus-within .toolbar{opacity:1}@media(max-width:800px){body.panel-open #viewer{right:0}#admin{width:min(480px,100%)}.topbar{height:70px;padding:0 20px}.toolbar{padding:24px 16px 16px;align-items:end}.tools{gap:4px;flex-wrap:wrap;justify-content:flex-end}.tools button{font-size:10px;padding:7px 9px}.toolbar>div:first-child{font-size:10px;max-width:100px}.status{font-size:8px}.center-panel{max-height:calc(100dvh - 120px)}#recoveryCodes{font-size:10px;gap:4px}#message{bottom:90px}.panel-body{padding:20px}.panel-head{padding:20px}}
