:root{--bg:#0a101c;--panel:#111c2d;--panel2:#17253a;--line:#26364e;--txt:#f2f6ff;--muted:#91a2b9;--accent:#57d8b9;--accent2:#2ea991;--error:#ff7e87;--warn:#ffc66c;--shadow:0 16px 48px #02070f66}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 85% -15%,#15344c 0%,transparent 35%),var(--bg);min-height:100vh;color:var(--txt);font:15px/1.5 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 clamp(20px,5vw,72px);border-bottom:1px solid var(--line);background:#0b1524df;backdrop-filter:blur(16px);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px;font-size:17px;font-weight:750;letter-spacing:-.35px}.brand-mark{display:grid;place-items:center;width:35px;height:35px;background:#163a42;border-radius:11px;color:var(--accent);font-size:23px}.top-actions{display:flex;align-items:center;gap:16px}.top-actions form{margin:0}.plain-btn{border:0;background:none;color:var(--muted);font-weight:600}.plain-btn:hover{color:var(--txt)}.wrap{max-width:1540px;margin:auto;padding:35px clamp(18px,5vw,72px) 60px}.hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:32px}.hero h1{font-size:clamp(27px,3vw,37px);letter-spacing:-1.25px;line-height:1.18;margin:9px 0 8px}.hero p{margin:0}.eyebrow{color:var(--accent);font-size:11px;letter-spacing:2.3px;font-weight:800;display:flex;gap:8px;align-items:center}.live-dot{width:8px;height:8px;background:var(--accent);box-shadow:0 0 0 5px #57d8b924;border-radius:50%;display:inline-block}.muted{color:var(--muted)}.hero-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.counter{border:1px solid var(--line);background:var(--panel);padding:9px 16px;border-radius:11px;white-space:nowrap;color:var(--muted);font-size:13px}.counter strong{color:var(--txt);font-size:18px;margin-right:5px}.btn{border:1px solid transparent;border-radius:10px;padding:10px 15px;font-weight:690;transition:background .2s ease,transform .2s ease}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{opacity:.5;cursor:wait}.btn.primary{background:var(--accent);color:#06221d}.btn.primary:hover{background:#79ebcf}.btn.secondary{background:var(--panel2);color:#d4e2f0;border-color:var(--line)}.btn.secondary:hover{background:#23364c}.btn.danger{background:#3a1e2b;color:#ff9fa5;border-color:#64303c}.btn.small{padding:7px 10px;font-size:12px}.wall{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.camera-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:var(--shadow);min-width:0;transition:border-color .2s}.camera-card:hover{border-color:#38657b}.camera-card.featured{grid-column:1/-1;border-color:var(--accent)}.camera-head{padding:15px 17px;display:flex;align-items:center;gap:15px;justify-content:space-between}.camera-name{font-size:15px;font-weight:750;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.camera-status{color:#b5c5d8;font-size:11px;display:flex;align-items:center;gap:7px;white-space:nowrap}.status-dot{display:inline-block;width:7px;height:7px;background:#6f869d;border-radius:50%;flex-shrink:0}.status-dot.loading{background:#89a3b9;animation:pulse 1.3s infinite}.status-dot.ok{background:var(--accent);box-shadow:0 0 9px #57d8b97c}.status-dot.error{background:var(--error)}.status-dot.warning{background:var(--warn)}@keyframes pulse{50%{opacity:.25}}.video-frame{position:relative;background:#05090f;aspect-ratio:16/9}.camera-video{width:100%;height:100%;object-fit:contain;display:block;background:#05090f;position:relative;z-index:1}.video-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#101b2b,#101c2a);display:grid;place-items:center;pointer-events:none;z-index:2}.play-symbol{color:#37526a;font-size:38px}.camera-foot{padding:10px 15px;display:flex;align-items:center;justify-content:space-between}.camera-foot .muted{font-size:10px;letter-spacing:1.4px;font-weight:800}.camera-tools{display:flex;gap:7px}.icon-btn{border:1px solid var(--line);background:#1a2a3e;color:#bdcde0;border-radius:9px;padding:5px 10px;min-width:36px;font-size:17px}.icon-btn:hover{color:#fff;background:#294159}.camera-card:fullscreen{background:#060a11;display:flex;flex-direction:column}.camera-card:fullscreen .video-frame{flex:1;aspect-ratio:auto;min-height:0}.hint{color:#7289a4;font-size:12px;margin:27px 0 0}.empty-state{text-align:center;border:1px dashed #2c4660;padding:65px 20px;border-radius:18px;color:var(--muted)}.empty-state h2{color:var(--txt);margin:8px 0}.empty-icon{font-size:44px;color:#4c718d}.hidden{display:none!important}.error{background:#3c1c2a;border:1px solid #753543;border-radius:10px;color:#ffb8be;padding:11px 14px}.footer{border-top:1px solid var(--line);color:#617a92;text-align:center;padding:23px;font-size:12px}.auth-panel{max-width:440px;margin:8vh auto;background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:36px;box-shadow:var(--shadow)}.auth-panel h1{margin:8px 0 6px;font-size:31px}.auth-panel p{margin:0 0 24px}.stack{display:grid;gap:18px}.stack label{display:grid;gap:7px;color:#d4e0ee;font-size:13px;font-weight:700}.stack input:not([type=checkbox]){background:#0b1626;border:1px solid #34465f;border-radius:10px;color:#e4efff;padding:12px 13px;outline:none;width:100%;min-width:0}.stack input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #57d8b92c}.stack small{color:var(--muted);font-weight:400;word-break:break-word}.admin-layout{display:grid;grid-template-columns:minmax(300px,430px) minmax(0,1fr);gap:23px;align-items:start}.panel{border:1px solid var(--line);background:var(--panel);border-radius:16px;padding:24px;box-shadow:var(--shadow)}.panel h2{margin:0 0 24px;font-size:19px}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.panel-title h2{margin:0}.input-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:end}.toggle-label{align-self:center;display:flex!important;flex-direction:row;align-items:center;gap:9px!important;padding-top:20px}.toggle-label input{width:18px;height:18px;accent-color:var(--accent)}.form-actions{display:flex;gap:8px}.form-message{margin:0;font-size:12px;min-height:18px}.form-message.good{color:var(--accent)}.form-message.bad{color:var(--error)}.admin-streams{display:grid;gap:10px}.admin-item{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:14px;background:#0c1828}.admin-item-icon{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:#1a3144;color:var(--accent);font-size:22px;flex-shrink:0}.admin-item-body{min-width:0;flex:1;display:grid;gap:4px}.admin-item-body strong{font-size:14px}.admin-item-body small.source-preview{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block}.pill{font-size:10px;font-weight:750;display:inline-block;width:max-content;border-radius:30px;padding:2px 8px}.pill.enabled{color:var(--accent);background:#173831}.pill.disabled{color:#bdc9d8;background:#243348}.admin-item-actions{display:flex;gap:7px;flex-shrink:0}@media(min-width:1300px){.wall{grid-template-columns:repeat(3,minmax(0,1fr))}.camera-card.featured{grid-column:span 2}}@media(max-width:900px){.admin-layout{grid-template-columns:1fr}.wall{gap:12px}}@media(max-width:620px){.topbar{height:65px}.brand{font-size:15px}.wrap{padding:25px 13px 45px}.hero{align-items:flex-start;flex-direction:column;gap:17px}.hero h1{font-size:28px}.wall{grid-template-columns:1fr}.camera-card.featured{grid-column:1/-1}.camera-status{font-size:10px}.admin-item{flex-wrap:wrap}.admin-item-actions{width:100%;justify-content:flex-end}.panel{padding:16px}.footer{font-size:10px}.top-actions{gap:8px}}
:root .branding-panel{display:grid;grid-template-columns:240px minmax(0,1fr);gap:28px;margin-bottom:23px;align-items:center}.branding-panel h2{margin:0 0 8px}.branding-controls>p.muted{font-size:13px;margin:0 0 18px}.branding-preview{display:flex;align-items:center;justify-content:center;min-height:175px;padding:16px;background:#0b1626;border:1px solid var(--line);border-radius:12px}.branding-preview img{display:block;width:auto;height:auto;max-width:100%;max-height:160px;object-fit:contain}.branding-preview>span{display:flex;gap:10px;align-items:center;color:#ffe4a1;font-size:23px;font-weight:800;line-height:1.05}.branding-preview>span>strong{font-family:Georgia,serif;font-size:48px;border:2px solid #d2ae64;padding:0 9px}#logo-form{display:grid;gap:9px}#logo-form>label{font-size:13px;font-weight:650}#logo-file{font-size:13px;max-width:100%;color:var(--muted)}#logo-file::file-selector-button{border:1px solid #40546e;border-radius:7px;background:#1b2b40;color:#e6efff;padding:7px 11px;margin-right:10px;cursor:pointer}#logo-form>small{color:var(--muted);font-size:11px}.branding-actions{display:flex;gap:9px;margin-top:6px}.branding-controls .form-message{margin-top:10px;min-height:18px}@media(max-width:620px){:root .branding-panel{grid-template-columns:1fr;gap:18px}.branding-preview{min-height:125px}.branding-preview img{max-height:125px}}
