/* Coddy Observe visual refresh */
:root{--ink:#132a36;--muted:#70808a;--orange:#fa4b25;--line:#e4ebed;--bg:#f4f7f8;--nav:#102b38;--green:#16a077}
body{background:radial-gradient(circle at 88% 4%,rgba(72,199,172,.15),transparent 26rem),radial-gradient(circle at 37% 90%,rgba(255,169,119,.12),transparent 30rem),var(--bg);color:var(--ink)}
.app-shell{min-height:100vh}.sidebar{background:linear-gradient(165deg,#102b38 0%,#123e4a 52%,#0d2734 100%);box-shadow:18px 0 45px rgba(11,39,49,.08)}
.brand{padding:28px 24px 25px;border-bottom:1px solid rgba(255,255,255,.1)}.brand-mark{display:grid;place-items:center;background:#fff;box-shadow:0 9px 22px rgba(5,24,30,.28)}.brand-mark img{width:34px;height:34px;display:block}.brand-text strong{letter-spacing:-.4px}
.sidebar nav{padding:17px 0 3px}.sidebar nav a{border:1px solid transparent;border-radius:11px;margin:4px 0;transition:background .2s ease,transform .2s ease,border-color .2s ease}.sidebar nav a:hover{background:rgba(255,255,255,.1);transform:translateX(3px)}.sidebar nav a.active{background:linear-gradient(90deg,rgba(51,205,165,.26),rgba(40,159,132,.11));border-color:rgba(97,229,195,.2);box-shadow:inset 3px 0 #54d9b8}
.topbar{background:rgba(255,255,255,.82);border-bottom:1px solid rgba(221,230,233,.82);backdrop-filter:blur(16px)}main{padding:34px 38px 45px}.demo-banner{background:linear-gradient(105deg,#fff6ed,#fffaf6);border:1px solid #ffd7bd;box-shadow:0 12px 30px rgba(229,127,75,.08)}.page-heading{margin-bottom:28px}.page-heading h1,.section-title h2{letter-spacing:-.8px}.page-heading h1{font-size:30px}
.button{border-radius:10px;box-shadow:0 7px 16px rgba(21,117,89,.17);transition:transform .18s ease,box-shadow .18s ease}.button:hover{transform:translateY(-2px);box-shadow:0 11px 22px rgba(21,117,89,.24)}.button.primary{background:linear-gradient(135deg,#16a77c,#147d67)}.button.secondary{box-shadow:none}
.stats article{border:1px solid rgba(225,234,236,.9);border-radius:16px;box-shadow:0 10px 28px rgba(30,65,76,.07);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.stats article:hover{transform:translateY(-3px);box-shadow:0 17px 32px rgba(30,65,76,.11)}.stat-title span{border-radius:12px;padding:6px;box-shadow:0 7px 14px rgba(20,135,105,.12)}
.panel,.camera-card,.integration-card,.detail-card{border:1px solid rgba(224,232,234,.95);border-radius:16px;box-shadow:0 10px 30px rgba(24,57,68,.065)}.panel{overflow:hidden}.panel-heading{padding:22px 24px;border-bottom:1px solid #edf1f2;background:linear-gradient(180deg,#fff,#fcfdfd)}.panel-body{padding:0 24px 24px}.table th{background:#f7faf9;color:#65757e;font-size:10px;letter-spacing:.06em;text-transform:uppercase}.table tbody tr{transition:background .17s ease,box-shadow .17s ease}.table tbody tr:hover{background:#f3fbf8;box-shadow:inset 3px 0 #42c5a1}.badge{border-radius:999px;letter-spacing:.01em;font-weight:700}
.info-strip{border:1px solid #d8eee8;background:linear-gradient(110deg,#edf9f5,#f8fcfb);border-radius:14px;box-shadow:0 8px 20px rgba(29,117,92,.06)}.detail-grid,.integration-grid{gap:18px}.detail-card,.integration-card{background:rgba(255,255,255,.94);transition:transform .2s ease,box-shadow .2s ease}.detail-card:hover,.integration-card:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(24,57,68,.1)}
.camera-card{overflow:hidden;background:#fff;transition:transform .2s ease,box-shadow .2s ease}.camera-card:hover{transform:translateY(-4px);box-shadow:0 19px 37px rgba(19,57,66,.14)}.camera-preview{background:linear-gradient(120deg,rgba(12,45,58,.82),rgba(19,113,102,.6)),repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 4px)}.camera-preview::before{box-shadow:0 0 0 5px rgba(65,221,182,.12),0 0 24px rgba(44,222,170,.4)}.camera-preview::after{content:"LIVE";position:absolute;top:14px;left:14px;padding:5px 9px;border-radius:20px;background:rgba(255,255,255,.14);color:#fff;font-size:9px;font-weight:800;letter-spacing:.1em;backdrop-filter:blur(8px)}.camera-preview .play{box-shadow:0 12px 28px rgba(0,0,0,.25)}
.filters input,.filters select,.camera-form input,.camera-form select,.form-control{border-radius:9px;border-color:#dbe5e7;background:#fcfdfd;transition:border-color .18s ease,box-shadow .18s ease}.filters input:focus,.filters select:focus,.camera-form input:focus,.camera-form select:focus,.form-control:focus{border-color:#47b999;box-shadow:0 0 0 4px rgba(46,175,137,.12)}
.login-page{background:radial-gradient(circle at 8% 16%,rgba(73,223,183,.22),transparent 30rem),linear-gradient(125deg,#0c2c39,#164d5a 53%,#0f3542)}.login-layout{border-radius:23px;overflow:hidden;box-shadow:0 28px 70px rgba(4,22,28,.32)}.login-story{background:linear-gradient(145deg,#123b48,#0c2b38)}.login-story::after{background:linear-gradient(135deg,rgba(68,220,177,.22),transparent 58%)}.login-panel{background:rgba(255,255,255,.98)}
@media(max-width:900px){main{padding:27px 22px 36px}.panel-heading{padding:19px}.panel-body{padding:0 19px 19px}} 

/* CoddyCamp palette and administration interface */
:root{--orange:#f84a25;--nav:#211c2b;--ink:#2d2534;--bg:#fbf8f5;--muted:#7d7380}
body{background:radial-gradient(circle at 89% 3%,rgba(250,75,38,.11),transparent 27rem),radial-gradient(circle at 35% 94%,rgba(167,110,213,.1),transparent 30rem),var(--bg)}
.sidebar{background:linear-gradient(160deg,#211c2b,#30233c 52%,#2a1f33);box-shadow:16px 0 40px rgba(32,19,39,.12)}
.brand{padding:25px 12px 22px;gap:10px;font-size:21px;white-space:nowrap}.brand-camp{color:#ff875f}.brand-mark{width:46px;height:46px;flex:0 0 46px;border-radius:13px}.brand-mark img{width:34px;height:34px}.brand-sub{font-size:9px;letter-spacing:3.2px;margin-top:7px}.nav-caption{margin:38px 12px 12px;color:#b7a8c0}.sidebar nav a{color:#ded4e3}.sidebar nav a.active{background:linear-gradient(90deg,rgba(250,74,37,.32),rgba(205,79,113,.09));border-color:rgba(255,151,126,.3);box-shadow:inset 3px 0 #ff875f}.sidebar nav a:hover{background:rgba(255,255,255,.09)}
.button.primary{background:linear-gradient(135deg,#f84a25,#cc315b);box-shadow:0 8px 18px rgba(209,49,91,.21)}.button{box-shadow:0 7px 16px rgba(209,49,91,.16)}.button:hover{box-shadow:0 11px 22px rgba(209,49,91,.24)}.table tbody tr:hover{background:#fff3ee;box-shadow:inset 3px 0 #ff7758}.camera-preview{background:linear-gradient(120deg,rgba(44,24,58,.88),rgba(137,45,74,.61)),repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 4px)}.camera-preview::before{box-shadow:0 0 0 5px rgba(255,143,113,.13),0 0 24px rgba(255,123,91,.38)}.info-strip{border-color:#f4d7cc;background:linear-gradient(110deg,#fff0eb,#fffbf9)}
.locale-switcher{display:flex;align-items:center;gap:7px}.locale-switcher label{font-size:10px;color:var(--muted);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.locale-switcher select{width:auto;padding:6px 28px 6px 9px;font-size:11px;border-radius:8px;background:#fff7f4}
.admin-layout{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.5fr);gap:20px;align-items:start}.connection-form form{display:grid;gap:14px}.connection-form label{display:grid;gap:6px;font-size:12px;font-weight:700}.connection-form label small{font-weight:400;color:var(--muted)}.connection-form .button{margin-top:6px}.integration-list,.user-list{padding-top:8px}.integration-row,.user-row{display:flex;align-items:center;gap:13px;padding:16px 2px;border-bottom:1px solid #eee8e5}.integration-row:last-child,.user-row:last-child{border-bottom:0}.integration-symbol{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#fff0eb;color:#ed4b29;font-size:15px;font-weight:800}.integration-copy,.user-copy{display:grid;gap:2px;min-width:0;flex:1}.integration-copy span,.integration-copy small,.user-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:11px}.integration-copy small{color:#aa9fa8}.row-actions,.role-form{display:flex;align-items:center;gap:8px}.text-button{border:0;background:transparent;color:#b53d2d;padding:6px 4px;font-size:11px;font-weight:700}.text-button.danger{color:#bf3e59}.role-form select{width:auto;padding:7px 28px 7px 8px;font-size:11px}.empty-state{padding:55px 20px;text-align:center;color:var(--muted)}.empty-state span{display:block;font-size:34px;color:#ef7657}.empty-state strong{display:block;color:var(--ink);margin-top:8px}.empty-state p{font-size:12px}.system-status{margin-top:20px}.user-row .avatar{background:#f9dfd5;color:#a93621;flex:0 0 34px}
@media(max-width:1050px){.admin-layout{grid-template-columns:1fr}.integration-row{flex-wrap:wrap}.row-actions{margin-left:51px}}@media(max-width:720px){.locale-switcher label{display:none}.topbar-right{gap:7px}.brand{font-size:19px}.sidebar{width:224px}.workspace{margin-left:224px}.integration-row,.user-row{align-items:flex-start}.row-actions,.role-form{margin-left:51px}.role-form{flex-wrap:wrap}}
.theme-toggle{position:relative;width:54px;height:30px;border:0;border-radius:999px;background:#f1e5df;color:#c44a32;padding:3px;display:flex;align-items:center;justify-content:space-between;transition:background .2s ease,color .2s ease}.theme-toggle::after{content:"";width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 7px rgba(69,37,33,.22);position:absolute;left:3px;transition:transform .22s ease}.theme-toggle span{position:relative;z-index:1;width:24px;text-align:center;font-size:17px;line-height:1}.theme-moon{color:#806f96}.theme-night{--bg:#211d28;--ink:#f0e9f0;--muted:#b6aab9;--line:#453b4e}.theme-night body{background:radial-gradient(circle at 85% 3%,rgba(244,88,54,.14),transparent 28rem),#211d28}.theme-night .topbar,.theme-night .panel,.theme-night .stats article,.theme-night .camera-card,.theme-night .detail-card,.theme-night .integration-card,.theme-night .login-panel{background:#2c2635;color:#f0e9f0;border-color:#493f52}.theme-night .panel-heading{background:#302938;border-color:#493f52}.theme-night .table th{background:#352d3d;color:#c9bdcc}.theme-night .table tbody tr:hover{background:#3c2e3b}.theme-night input,.theme-night select,.theme-night textarea{background:#352e3e;color:#f5edf5;border-color:#554961}.theme-night .locale-switcher select{background:#352e3e}.theme-night .theme-toggle{background:#4c3c57;color:#ffb293}.theme-night .theme-toggle::after{transform:translateX(24px);background:#ffd3a8}.theme-night .theme-sun{color:#b5a6bc}.theme-night .demo-banner,.theme-night .info-strip{background:#3a2c34;border-color:#65414a;color:#f1c2a9}.theme-night footer{color:#b8abbc}
.sidebar-bottom{padding-top:20px}
.header-logout{width:30px;height:30px;border:1px solid #efdcd5;background:#fff8f5;color:#bd442d;border-radius:9px;font-size:16px;line-height:1;transition:background .2s ease,transform .2s ease}.header-logout:hover{background:#fce7df;transform:translateY(-1px)}.theme-night .header-logout{background:#352e3e;border-color:#554961;color:#ffb293}.theme-night .header-logout:hover{background:#483747}

/* Light CoddyCamp shell: one navigation area, compact utility controls. */
:root{--ink:#353039;--muted:#847c82;--orange:#f4512a;--line:#eee4df;--bg:#fffaf6;--nav:#fffdfb}
body{background:radial-gradient(circle at 98% 0,rgba(255,188,148,.24),transparent 29rem),radial-gradient(circle at 31% 100%,rgba(255,226,192,.34),transparent 32rem),var(--bg)}
.sidebar{background:#fffdfb;color:#493d43;border-right:1px solid #efe4de;box-shadow:10px 0 26px rgba(78,49,38,.04);padding:25px 18px}.brand{color:#372f35;padding:0 5px 22px;border-bottom:1px solid #eee4df}.brand-camp{color:#f4512a}.nav-caption{margin:25px 10px 9px;color:#a6979c}.sidebar nav{padding:0}.sidebar nav a{color:#5c5156}.sidebar nav a:hover{background:#fff1e9;color:#3f3439}.sidebar nav a.active{color:#3a3035;background:linear-gradient(90deg,#ffe0d1,#fff4ee);border-color:#ffd3c1;box-shadow:inset 3px 0 #f4512a}.sidebar nav a span{color:#b77c68}.sidebar nav a.active span{color:#e24d2a}
.workspace{position:relative}.topbar{height:auto;background:transparent!important;border:0!important;padding:0!important;position:absolute;top:20px;right:30px;z-index:5;backdrop-filter:none}.topbar>div:first-child{display:none}.topbar-right{gap:8px}.locale-switcher{background:#fffdfb;border:1px solid #eee4df;border-radius:10px;padding:2px 7px 2px 9px;box-shadow:0 6px 18px rgba(88,57,43,.06)}.locale-switcher select{background:transparent;border:0;padding:5px 22px 5px 5px}.theme-toggle{box-shadow:0 6px 18px rgba(88,57,43,.07)}.header-logout{box-shadow:0 6px 18px rgba(88,57,43,.07)}main{padding-top:82px}
.stats article,.panel,.camera-card,.detail-card,.integration-card{box-shadow:0 8px 24px rgba(88,57,43,.055)}.panel-heading{background:#fffdfb}.table th{background:#fff8f3}.button.primary{background:linear-gradient(135deg,#f4512a,#f78045)}
@media(max-width:720px){.topbar{top:12px;right:14px}.locale-switcher{padding-left:5px}main{padding-top:68px}.sidebar{background:#fffdfb}.theme-night .sidebar{background:#2c2635}}

/* Complete dark appearance; applied to every surface from one palette. */
body.theme-night{--ink:#f4eef4;--muted:#b7acba;--line:#48404d;--bg:#20242b;background:radial-gradient(circle at 92% 4%,rgba(248,81,42,.16),transparent 26rem),radial-gradient(circle at 20% 100%,rgba(86,106,145,.14),transparent 32rem),#20242b;color:#f4eef4}
body.theme-night .sidebar{background:#242933!important;color:#e9e4eb;border-color:#3b414d;box-shadow:10px 0 26px rgba(0,0,0,.14)}body.theme-night .brand{color:#fff;border-color:#3d434e}body.theme-night .nav-caption{color:#a5acba}body.theme-night .sidebar nav a{color:#d8d5dc}body.theme-night .sidebar nav a:hover{background:#333946;color:#fff}body.theme-night .sidebar nav a.active{background:linear-gradient(90deg,rgba(244,81,42,.32),rgba(244,81,42,.08));border-color:rgba(255,141,108,.3);color:#fff;box-shadow:inset 3px 0 #ff855f}
body.theme-night .topbar{background:transparent!important}body.theme-night .locale-switcher{background:#2d333e;border-color:#46505d;box-shadow:0 6px 18px rgba(0,0,0,.18)}body.theme-night .locale-switcher label{color:#c4bdc7}body.theme-night .locale-switcher select{background:transparent;color:#f4eef4}body.theme-night .header-logout{background:#2d333e;border-color:#46505d;color:#ffb195}body.theme-night .theme-toggle{background:#3c4655;color:#ffd0a6}
body.theme-night .panel,body.theme-night .stats article,body.theme-night .camera-card,body.theme-night .detail-card,body.theme-night .integration-card{background:#2a303a!important;color:#f4eef4;border-color:#424b58;box-shadow:0 8px 24px rgba(0,0,0,.18)}body.theme-night .panel-heading{background:#2d343f!important;border-color:#424b58}body.theme-night .table th{background:#303844;color:#c7c1cb;border-color:#424b58}body.theme-night td{border-color:#424b58}body.theme-night .table tbody tr:hover{background:#34343c;box-shadow:inset 3px 0 #ff7954}body.theme-night input,body.theme-night select,body.theme-night textarea{background:#303844!important;color:#f4eef4;border-color:#4a5564}body.theme-night .camera-preview{background:linear-gradient(120deg,#27303c,#6d3742),repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 4px)}body.theme-night .camera-card small,body.theme-night .camera-card .muted{color:#b7acba}

/* Live-monitoring camera cards */
.camera-preview{background:linear-gradient(135deg,#fffaf6,#f4ded0)!important;color:#be765e;border-bottom:1px solid #f0dcd1}.camera-preview::before{box-shadow:0 0 0 5px rgba(244,81,42,.09),0 0 20px rgba(244,81,42,.16)}.camera-preview .demo-tag{background:#fff8f2;color:#bf694b}.camera-card{border-color:#ece2dc!important}.camera-card:hover{box-shadow:0 16px 30px rgba(109,67,48,.1)}.camera-meta{border-color:#f0e5df}.camera-meta span{color:#92817a}
body.theme-night .camera-preview{background:linear-gradient(135deg,#2d3948,#495f70)!important;color:#bcd7d1;border-color:#425566}

/* Cohesive, lightweight navigation icons. */
.sidebar nav a .nav-icon{width:21px;height:21px;flex:0 0 21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;color:#b77c68;transition:color .18s ease,transform .18s ease}.sidebar nav a.active .nav-icon{color:#e24d2a}.sidebar nav a:hover .nav-icon{transform:scale(1.06)}body.theme-night .sidebar nav a .nav-icon{color:#b7bdc8}body.theme-night .sidebar nav a.active .nav-icon{color:#ff9a7c}

/* Raised surfaces keep the monitoring workspace calm and easy to scan. */
.camera-board,.content-board{background:#fffdfb;border:1px solid #fff;border-radius:22px;padding:20px;box-shadow:0 20px 42px rgba(66,55,50,.16),0 5px 12px rgba(66,55,50,.08),0 0 0 3px rgba(255,255,255,.9),0 0 32px rgba(255,255,255,.94)}.camera-board .page-heading,.content-board .page-heading{margin:4px 0 22px}.camera-board .camera-grid{gap:18px}.content-board .stats{margin-bottom:20px}.sidebar{inset:14px auto 14px 14px!important;width:222px!important;border:1px solid #fff!important;border-radius:20px;box-shadow:0 20px 42px rgba(66,55,50,.18),0 5px 12px rgba(66,55,50,.09),0 0 0 3px rgba(255,255,255,.9),0 0 32px rgba(255,255,255,.94)!important}.topbar-right{background:#fffdfb;border:1px solid #fff;border-radius:16px;padding:5px;box-shadow:0 16px 34px rgba(66,55,50,.16),0 4px 10px rgba(66,55,50,.08),0 0 0 3px rgba(255,255,255,.88),0 0 28px rgba(255,255,255,.92)}body.theme-night .camera-board,body.theme-night .content-board{background:#2a303a;border-color:#5a6472;box-shadow:0 18px 38px rgba(0,0,0,.25),0 0 0 3px rgba(117,162,189,.14),0 0 28px rgba(85,145,179,.12)}body.theme-night .sidebar{border-color:#5a6472!important;box-shadow:0 18px 38px rgba(0,0,0,.28),0 0 0 3px rgba(117,162,189,.14),0 0 28px rgba(85,145,179,.12)!important}body.theme-night .topbar-right{background:#2a303a;border-color:#5a6472;box-shadow:0 14px 30px rgba(0,0,0,.24),0 0 0 3px rgba(117,162,189,.12),0 0 24px rgba(85,145,179,.1)}

.sidebar nav a.active{border:1px solid #fff;box-shadow:inset 3px 0 #f4512a,0 8px 18px rgba(66,55,50,.13),0 0 0 2px rgba(255,255,255,.82),0 0 18px rgba(255,255,255,.95)}body.theme-night .sidebar nav a.active{border-color:#526172;box-shadow:inset 3px 0 #ff855f,0 8px 18px rgba(0,0,0,.2),0 0 0 2px rgba(117,162,189,.13),0 0 18px rgba(85,145,179,.14)}

/* Nested cards retain their own gentle elevation inside each page board. */
.content-board .panel,.content-board .stats article,.camera-board .camera-card{border-color:#fff!important;box-shadow:0 12px 25px rgba(66,55,50,.12),0 3px 8px rgba(66,55,50,.06),0 0 0 2px rgba(255,255,255,.82),0 0 20px rgba(255,255,255,.88)}.content-board .panel:hover,.content-board .stats article:hover,.camera-board .camera-card:hover{box-shadow:0 16px 30px rgba(66,55,50,.16),0 4px 10px rgba(66,55,50,.08),0 0 0 2px rgba(255,255,255,.9),0 0 24px rgba(255,255,255,.94)}body.theme-night .content-board .panel,body.theme-night .content-board .stats article,body.theme-night .camera-board .camera-card{border-color:#4c5766!important;box-shadow:0 12px 25px rgba(0,0,0,.22),0 0 0 2px rgba(117,162,189,.1),0 0 20px rgba(85,145,179,.08)}body.theme-night .content-board .panel:hover,body.theme-night .content-board .stats article:hover,body.theme-night .camera-board .camera-card:hover{box-shadow:0 16px 30px rgba(0,0,0,.28),0 0 0 2px rgba(117,162,189,.13),0 0 24px rgba(85,145,179,.11)}
@media(max-width:1200px){.sidebar{inset:12px auto 12px 10px!important;width:185px!important}.workspace{margin-left:205px!important}}@media(max-width:800px){.sidebar{inset:auto!important;width:100%!important;border-radius:0;box-shadow:none!important}.camera-board{padding:14px;border-radius:17px}.camera-board .camera-grid{gap:12px}.topbar-right{border-radius:13px;padding:3px}}
.camera-preview{position:relative;overflow:hidden}.camera-preview video{display:block;width:100%;height:100%;object-fit:cover;background:#10131a}.live-button{position:absolute;z-index:2;left:50%;top:58%;transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.92);border-radius:10px;background:rgba(255,255,255,.94);color:#34313b;padding:9px 13px;font:600 13px/1 inherit;box-shadow:0 8px 20px rgba(26,24,30,.18);cursor:pointer}.live-button:hover{background:#fff}.live-button:disabled{cursor:wait;opacity:.7}
.live-stream-modal{width:min(1080px,calc(100vw - 48px));padding:0;border:1px solid rgba(255,255,255,.98);border-radius:22px;background:#fffdfb;color:#302c35;box-shadow:0 28px 80px rgba(31,26,31,.35),0 0 0 3px rgba(255,255,255,.94)}.live-stream-modal::backdrop{background:rgba(20,22,28,.63);backdrop-filter:blur(5px)}.live-stream-modal__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #eee4df}.live-stream-modal__header h2{margin:0;font-size:18px}.live-stream-modal__header button{width:34px;height:34px;border:0;border-radius:50%;background:#f2ece8;color:#403942;font-size:27px;line-height:1;cursor:pointer}.live-stream-modal__body{position:relative;display:grid;place-items:center;min-height:min(66vh,680px);background:#10131a}.live-stream-modal__body video{width:100%;max-height:min(66vh,680px);object-fit:contain}.live-stream-modal__body p{margin:0;padding:18px;color:#fff;font-weight:600;text-align:center}@media(max-width:640px){.live-stream-modal{width:calc(100vw - 24px);border-radius:16px}.live-stream-modal__body{min-height:52vh}.live-stream-modal__header{padding:13px 15px}}
.live-stream-modal__body #ezviz-live-player{width:100%;height:min(66vh,680px)}
.recording-filter .filters{align-items:flex-end;padding-top:20px}.recording-filter .filters label span{display:block;margin-bottom:6px}.recording-list{margin-top:18px}.recording-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 0;border-bottom:1px solid var(--line)}.recording-item:last-of-type{border-bottom:0}.recording-item strong,.recording-item span{display:block}.recording-item span{margin-top:4px;color:var(--muted);font-size:12px}.manual-recording{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.manual-recording h3{grid-column:1/-1}.manual-recording label{font-size:11px}.manual-recording input{margin-top:6px}@media(max-width:700px){.recording-item{align-items:flex-start;flex-direction:column}.manual-recording{grid-template-columns:1fr}.manual-recording .button{width:100%}}
.system-metric{display:flex;align-items:baseline;gap:8px;padding:18px 0}.system-metric strong{font-size:34px}.system-metric span{color:var(--muted)}.system-next{margin-top:18px}.setup-list{margin:0 0 22px;padding-left:20px;display:grid;gap:10px;color:var(--muted)}.branch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.camera-assignment{display:grid;grid-template-columns:minmax(120px,1fr) minmax(180px,1.2fr) auto;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}.camera-assignment:last-child{border-bottom:0}.camera-assignment strong,.camera-assignment small{display:block}.camera-assignment small{margin-top:3px;color:var(--muted)}.camera-assignment select{padding:8px;font-size:12px}.room-list{display:grid;gap:9px}.room-row{display:grid;grid-template-columns:minmax(0,1fr) 52px 32px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.room-row:last-child{border-bottom:0}.room-row .badge{justify-self:center}.room-row strong,.room-row small{display:block}.room-row small{margin-top:3px;color:var(--muted)}.room-form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.room-form label{font-size:11px}.room-form input{margin-top:6px}@media(max-width:900px){.branch-grid{grid-template-columns:1fr}.camera-assignment{grid-template-columns:1fr}.camera-assignment .text-button{justify-self:start}}@media(max-width:600px){.room-form{grid-template-columns:1fr}.room-form .button{width:100%}}
.branch-create{max-width:640px}
.recording-test-button{display:flex;width:100%;align-items:center;justify-content:center;margin:12px 0 14px;padding:9px 12px;border:1px solid #d9a48e;border-radius:9px;background:#fff6f1;color:#a94c32;font:700 12px/1 inherit;cursor:pointer}.recording-test-button:hover{background:#feeae0}.recording-test-button:disabled{cursor:wait;opacity:.7}
.recording-session-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-top:22px}.recording-session-card{border:1px solid var(--line);border-radius:12px;padding:16px;background:#fffdfb}.recording-session-card h3{margin:5px 0}.recording-session-card p{margin:4px 0;color:var(--muted);font-size:12px}.scheduled-monitor{display:grid;grid-template-columns:max-content 1fr;gap:6px 12px;margin-top:14px;padding:10px 12px;border-radius:9px;background:#f5f7f5;color:var(--muted);font-size:12px}.scheduled-monitor span:not(.scheduled-indicator){grid-column:1/-1}.scheduled-indicator{padding:3px 8px;border-radius:999px;background:#e8ece9;color:#64726a;font-weight:700}.scheduled-indicator[data-state="recording"]{background:#fce9e5;color:#c64d32}.scheduled-indicator[data-state="uploading"]{background:#fff3d9;color:#8b6327}.scheduled-indicator[data-state="saved"]{background:#e5f4e9;color:#3d7d4a}.scheduled-indicator[data-state="error"]{background:#fde9e9;color:#b74242}.scheduled-player{width:100%;height:230px;margin-top:14px;background:#10131a;border-radius:9px;overflow:hidden}.scheduled-status{min-height:20px;margin-top:13px!important;font-weight:700}.scheduled-status a{color:#c64d32;text-decoration:underline}@media(max-width:800px){.recording-session-grid{grid-template-columns:1fr}}
.recording-session-select{display:flex;align-items:center;gap:8px;margin-top:13px;font-size:12px;font-weight:700;color:var(--ink)}.recording-session-select input{width:auto;margin:0}
.branch-actions,.room-actions{position:relative}.branch-actions summary,.room-actions summary{list-style:none;width:32px;height:32px;display:grid;place-items:center;border-radius:9px;cursor:pointer;color:var(--muted);font-weight:800}.branch-actions summary::-webkit-details-marker,.room-actions summary::-webkit-details-marker{display:none}.branch-actions[open] summary,.room-actions[open] summary{background:#f6ece6;color:var(--ink)}.action-menu{position:absolute;right:0;z-index:8;width:260px;padding:13px;background:#fffdfb;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 34px rgba(66,55,50,.18)}.action-menu form{display:grid;gap:8px}.action-menu form+form{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.action-menu label{font-size:10px;color:var(--muted)}.action-menu input,.action-menu select{width:100%;margin-top:4px;padding:8px;font-size:12px}.action-menu .text-button{justify-self:start}.theme-night .action-menu{background:#2d343f}
