:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#1d2c3f;background:#f4f7fa;font-synthesis:none;--navy:#142c43;--teal:#087f70;--muted:#6b7a8c;--line:#e4eaf0;--red:#ba3745;--shadow:0 14px 45px #1b36460d}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button svg{flex-shrink:0}button{display:inline-flex;align-items:center;justify-content:center;gap:8px}.icon{width:20px;height:20px;display:inline-block;vertical-align:middle}h1,h2,h3,p{margin:0}button{border:0}a{color:var(--teal)}.muted{color:var(--muted)}.small{font-size:12px;line-height:1.6}.loading-screen{display:flex;min-height:100vh;align-items:center;justify-content:center;flex-direction:column;gap:16px}.loading-screen h1{font-size:26px}.loading-screen p{color:var(--muted)}.spinner{width:22px;height:22px;border:2px solid #cbd8e1;border-top-color:var(--teal);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.primary,.secondary,.danger,.ghost{padding:11px 17px;min-height:43px;border-radius:9px;font-size:13px;font-weight:650;transition:background .15s,box-shadow .15s}.primary{background:var(--teal);color:#fff;box-shadow:0 3px 5px #087f7014}.primary:hover{background:#086e62}.secondary{background:#fff;color:#34485d;border:1px solid #d8e1e9}.secondary:hover{background:#f5f8fa}.danger{background:#fff1f2;border:1px solid #f3cbd0;color:#aa293b}.danger:hover{background:#ffe4e8}.ghost{background:transparent;color:#607285;padding:9px}.ghost:hover{background:#eef3f7}.full{width:100%}.button-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.right{margin-left:auto}.field{display:flex;flex-direction:column;gap:7px;margin-top:17px}.field label,.field-label{font-size:12px;font-weight:650;color:#394d60}.field input,.field select,.search input,.filter{padding:12px 13px;border:1px solid #d8e1e9;border-radius:8px;background:#fff;color:#243a50;min-height:43px;min-width:0}.field input:focus,.search input:focus,.filter:focus{outline:2px solid #0b8c782e;border-color:#0b8c78}.field .hint{font-size:11px;color:var(--muted);line-height:1.6}.form-error{color:#a52436;background:#fff2f3;padding:11px 13px;border-radius:8px;font-size:12px;line-height:1.65;display:none}.form-error.visible{display:block}.notice{border-left:3px solid #63aa9d;padding:11px 13px;font-size:12px;color:#526b7b;background:#f0f8f6;line-height:1.7}.notice.warning{border-color:#c99b37;background:#fff9eb;color:#806426}.auth{min-height:100vh;display:grid;grid-template-columns:minmax(340px,.9fr) minmax(440px,1.1fr)}.auth-story{padding:70px 12%;background:var(--navy);color:#fff;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.auth-story:after{content:"";width:460px;height:460px;position:absolute;right:-220px;bottom:-190px;border:70px solid #ffffff05;border-radius:50%}.brand{display:flex;align-items:center;gap:12px;font-size:22px;letter-spacing:-.7px;font-weight:750}.brand img{width:42px;height:42px}.auth-story h1{font-size:42px;line-height:1.18;letter-spacing:-1.8px;margin:48px 0 20px;max-width:400px}.auth-story>p{font-size:14px;line-height:1.9;color:#b1c7d9;max-width:380px}.auth-feature{display:flex;align-items:flex-start;gap:13px;margin-top:27px;font-size:13px;line-height:1.7;color:#c8d9e7}.auth-feature .icon{color:#72d5bd;margin-top:2px}.auth-form-wrap{padding:55px 35px;display:flex;align-items:center;justify-content:center;background:#fafcfd}.auth-card{width:100%;max-width:390px}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:1.8px;font-weight:750;color:var(--teal);margin-bottom:11px}.auth-card h2{font-size:28px;letter-spacing:-.8px;margin-bottom:11px}.auth-card>p{font-size:13px;line-height:1.85;color:var(--muted)}.auth-card form{margin-top:23px}.auth-card form>.primary{margin-top:24px}.auth-footer{font-size:11px!important;margin-top:23px;text-align:center;color:#8695a4!important;word-break:break-word}.text-button{border:0;background:none;color:var(--teal);padding:10px 0;font-size:12px;text-align:left}.secret{padding:14px;background:#f2f6f8;border:1px solid var(--line);border-radius:8px;font:600 15px monospace;letter-spacing:1.5px;word-break:break-all;margin-top:10px}.recovery-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:13px;border:1px solid var(--line);border-radius:8px;margin-top:9px;background:#fff;font:12px monospace}.checkline{display:flex;gap:9px;align-items:flex-start;font-size:12px;line-height:1.65;margin:16px 0}.checkline input{margin-top:4px;accent-color:var(--teal)}.layout{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--navy);color:#bdd0df;padding:31px 20px;position:fixed;inset:0 auto 0 0;width:244px;display:flex;flex-direction:column;z-index:5}.sidebar .brand{color:#fff;padding:0 7px;font-size:20px}.sidebar .brand img{width:37px;height:37px}.workspace-label{font-size:9px;letter-spacing:1.8px;text-transform:uppercase;color:#7294ae;margin:37px 16px 13px}.nav-item{justify-content:flex-start;text-align:left;width:100%;color:#a9c1d3;background:none;border-radius:9px;padding:13px 15px;margin-bottom:6px;font-size:13px;gap:12px}.nav-item.active{color:#fff;background:#ffffff10;box-shadow:inset 3px 0 #57c7b3}.nav-item:hover{background:#ffffff0a;color:#fff}.sidebar-info{margin-top:auto;border:1px solid #ffffff12;border-radius:10px;padding:15px 14px;font-size:11px;line-height:1.8;color:#93b1c8}.sidebar-info .icon{color:#74d2bd;margin-bottom:7px}.sidebar-footer{padding:19px 10px 0;font-size:10px;color:#65859e}.main{grid-column:2;min-width:0}.topbar{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;gap:15px}.breadcrumb{font-size:12px;color:#8a99a8;display:flex;align-items:center;gap:10px}.breadcrumb strong{font-weight:550;color:#42586d}.account{display:flex;align-items:center;gap:10px}.avatar{width:33px;height:33px;border-radius:50%;background:#e6f4ef;color:#087f70;font-size:12px;display:flex;align-items:center;justify-content:center;font-weight:750}.account-name{font-size:12px;font-weight:650}.account-role{font-size:10px;color:var(--muted);margin-top:3px}.content{max-width:1450px;margin:auto;padding:35px 38px 45px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.page-head h1{font-size:27px;letter-spacing:-.8px}.page-head p{font-size:12px;color:var(--muted);margin-top:9px;line-height:1.7}.connection{font-size:11px;color:#648073;display:flex;align-items:center;gap:6px;margin-top:11px}.connection:before{content:"";width:6px;height:6px;background:#0ba887;border-radius:50%}.connection.offline{color:#9c6a42}.connection.offline:before{background:#c88e40}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:26px}.stat{background:#fff;border:1px solid var(--line);padding:21px;border-radius:12px;box-shadow:0 2px 3px #243e4e02}.stat-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#6b7f91;gap:8px}.stat-top .icon{color:#668da0}.stat-num{font-size:30px;font-weight:680;letter-spacing:-1px;margin:11px 0 6px}.stat-detail{font-size:10px;color:#8a9baa}.stat:nth-child(2) .stat-num{color:#07816d}.section-panel{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.panel-head{padding:21px 23px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #eaf0f4}.panel-head h2{font-size:15px;font-weight:650}.panel-head p{font-size:11px;color:var(--muted);margin-top:6px}.toolbar{display:flex;align-items:center;gap:11px;padding:18px 23px}.search{display:flex;position:relative;flex:1;max-width:380px}.search .icon{position:absolute;left:12px;top:12px;color:#8da1b2;width:17px;height:17px}.search input{width:100%;padding-left:38px;font-size:12px;background:#fafcfd}.filter{font-size:12px;min-height:41px;padding:10px 28px 10px 12px}.device-list{padding:0 23px 21px}.device-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:15px}.device-card{border:1px solid #dfe8ee;border-radius:11px;padding:19px;transition:border-color .15s,box-shadow .15s;min-width:0}.device-card:hover{border-color:#96bdb6;box-shadow:0 4px 17px #254c4a09}.device-card.active{border-color:#63b09f;background:#fbfefd}.device-card-top{display:flex;justify-content:space-between;align-items:flex-start}.device-icon{width:43px;height:43px;border-radius:11px;background:#edf5f8;color:#487a93;display:flex;align-items:center;justify-content:center}.device-icon .icon{width:22px;height:22px}.device-card h3{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:17px 0 6px}.device-model{font-size:11px;color:#7c8e9d;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.device-id{font-size:9px;color:#9aaab7;font-family:monospace;margin-top:8px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.device-card-bottom{border-top:1px solid #edf1f4;margin-top:17px;padding-top:14px;display:flex;justify-content:space-between;gap:8px;align-items:center}.device-card-bottom .primary,.device-card-bottom .secondary{padding:8px 10px;min-height:35px;font-size:11px}.device-card-bottom .ghost{padding:6px;min-width:30px}.last-seen{font-size:9px;color:#98a7b5;margin-top:10px}.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;font-size:9px;font-weight:600;border-radius:20px;background:#f0f4f7;color:#6b7e8c;white-space:nowrap}.badge:before{content:"";height:5px;width:5px;border-radius:50%;background:currentColor}.badge.online{color:#078168;background:#eaf7f0}.badge.active{color:#356ec5;background:#edf3fd}.badge.pending{color:#a47518;background:#fff7df}.empty-state{padding:52px 25px;text-align:center;max-width:490px;margin:auto}.empty-symbol{width:72px;height:72px;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;border-radius:20px;background:#f0f7f5;color:#7bafa5}.empty-symbol .icon{width:34px;height:34px}.empty-state h3{font-size:17px;margin-bottom:10px}.empty-state p{font-size:12px;color:var(--muted);line-height:1.9;margin-bottom:21px}.helper-row{display:flex;gap:10px;align-items:flex-start;font-size:11px;line-height:1.8;color:#7b8f9f;margin-top:20px;padding:0 2px}.helper-row .icon{color:#74a99d;width:17px;height:17px;flex-shrink:0;margin-top:2px}.audit-table-wrap{overflow:auto}.audit-table{border-collapse:collapse;width:100%;text-align:left;font-size:12px}.audit-table th{background:#f8fafc;font-weight:550;font-size:10px;color:#7a8c9d;padding:13px 23px;white-space:nowrap;border-bottom:1px solid var(--line)}.audit-table td{padding:17px 23px;border-bottom:1px solid #eef2f6;color:#50677b;font-size:11px;line-height:1.7}.audit-table td:first-child{color:#294357;font-weight:550}.audit-table tr:last-child td{border:0}.audit-table .detail{font-size:10px;color:#8ea0ae}.settings-panel{padding:25px;max-width:720px}.settings-row{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.8}.settings-row strong{font-weight:600}.settings-row span{color:var(--muted);text-align:right;word-break:break-word}.settings-row:last-child{border:0}.mobile-brand{display:none}.viewer{position:fixed;inset:0;background:#101d2b;z-index:30;color:#fff;display:flex;flex-direction:column}.viewer-header{height:72px;min-height:72px;padding:0 25px;background:#142537;border-bottom:1px solid #ffffff0d;display:flex;align-items:center;gap:14px}.viewer-name{font-size:14px;font-weight:600}.viewer-status{font-size:11px;color:#90a9be;margin-top:4px}.viewer-header .danger{margin-left:auto;background:#a02d40;border-color:#b14050;color:#fff}.viewer-stage{position:relative;min-height:0;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden}.viewer-stage video{width:100%;height:100%;object-fit:contain;touch-action:none;user-select:none}.video-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;padding:35px;text-align:center;background:#101d2b;pointer-events:none}.video-placeholder .icon{width:40px;height:40px;color:#6d98b5}.video-placeholder h2{font-size:18px;letter-spacing:-.4px}.video-placeholder p{font-size:12px;line-height:1.85;color:#8ea6bc;max-width:430px}.viewer-toolbar{background:#142537;min-height:67px;border-top:1px solid #ffffff0d;padding:13px 25px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.viewer-toolbar .secondary{background:#20384e;color:#c1d5e4;border-color:#365064;padding:8px 13px;min-height:37px;font-size:11px}.viewer-toolbar .primary{padding:8px 14px;min-height:37px;font-size:11px}.viewer-permission{font-size:10px;color:#91aabc;margin-right:auto;display:flex;align-items:center;gap:7px}.viewer-permission .icon{width:16px;height:16px}.viewer-permission.allowed{color:#74d5b7}.viewer-warning{font-size:10px;color:#b1c3d2;padding:10px 20px;background:#0e1b29;text-align:center;line-height:1.7}.viewer .spinner{border-color:#38556d;border-top-color:#76c9b7}.session-ended{font-size:12px;padding:12px;color:#aef0db;text-align:center}.dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:10px}.dialog-header h2{font-size:21px;letter-spacing:-.5px}.dialog-header .ghost{padding:2px;color:#91a2ad}.dialog-intro{font-size:12px;color:var(--muted);line-height:1.8}.dialog-actions{margin-top:23px;display:flex;gap:10px;justify-content:flex-end}.dialog-actions .primary{min-width:110px}.code-box{padding:21px;background:#edf7f3;text-align:center;border:1px solid #d7eae3;border-radius:10px;margin:20px 0}.code-box .label{font-size:10px;color:#65887c;margin-bottom:12px}.invite-code{font:700 28px monospace;letter-spacing:4px;color:#087f70;word-break:break-all}.code-box .expires{font-size:10px;color:#7d9b90;margin-top:12px}.credentials{font-size:12px;line-height:2.1;padding:13px 0;word-break:break-word}.credentials strong{color:#233e52}.safety-note{font-size:11px;color:#7d909f;line-height:1.8;margin-top:16px}.device-detail{display:grid;grid-template-columns:110px 1fr;gap:13px;font-size:12px;margin-top:22px;line-height:1.7}.device-detail dt{color:#7b8e9f}.device-detail dd{margin:0;word-break:break-all}.danger-zone{border-top:1px solid var(--line);margin-top:22px;padding-top:16px}.danger-zone p{font-size:11px;color:var(--muted);line-height:1.8;margin-bottom:12px}dialog{border:1px solid #dce5ed;border-radius:16px;padding:28px;max-width:470px;width:calc(100% - 32px);color:#243b50;box-shadow:0 25px 100px #06222f40;max-height:calc(100vh - 48px)}dialog::backdrop{background:#0a213e70;backdrop-filter:blur(3px)}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(15px);max-width:calc(100% - 35px);background:#1e3c4a;color:#fff;padding:13px 19px;border-radius:10px;z-index:100;box-shadow:0 7px 30px #102f4433;font-size:12px;line-height:1.6;pointer-events:none;opacity:0;transition:.2s}#toast.visible{opacity:1;transform:translateX(-50%) translateY(0)}.hide{display:none!important}
@media(min-width:1500px){.content{padding-top:45px}.stats{gap:21px}.device-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1000px){.layout{grid-template-columns:205px minmax(0,1fr)}.sidebar{width:205px;padding:28px 14px}.sidebar .brand{font-size:18px;gap:9px}.sidebar .brand img{width:33px;height:33px}.content{padding:28px 25px}.topbar{padding:0 25px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.device-grid{grid-template-columns:repeat(auto-fill,minmax(215px,1fr))}.auth-story{padding:45px 10%}.auth-story h1{font-size:35px}.auth{grid-template-columns:.9fr 1.1fr}}@media(max-width:700px){.auth{display:block}.auth-story{padding:28px 25px}.auth-story h1{font-size:25px;letter-spacing:-.7px;max-width:100%;margin:22px 0 10px}.auth-story>p{font-size:12px;max-width:none}.auth-feature{display:none}.auth-form-wrap{padding:30px 24px 45px}.auth-card{max-width:440px}.auth-card h2{font-size:24px}.layout{display:block;padding-bottom:75px}.sidebar{inset:auto 0 0;width:100%;height:65px;display:flex;flex-direction:row;padding:5px 12px;align-items:center;justify-content:center;gap:7px;border-top:1px solid #ffffff13}.sidebar>.brand,.workspace-label,.sidebar-info,.sidebar-footer{display:none}.nav-item{font-size:10px;justify-content:center;flex-direction:column;gap:3px;padding:7px 12px;width:85px;margin:0}.nav-item .icon{width:19px;height:19px}.nav-item.active{box-shadow:none;background:#ffffff12}.main{display:block}.topbar{height:68px;padding:0 20px}.breadcrumb{display:none}.mobile-brand{display:flex;font-size:18px;gap:9px}.mobile-brand img{width:31px;height:31px}.account-name{font-size:11px}.account-role{font-size:9px}.account .ghost{padding:8px}.content{padding:24px 18px}.page-head{gap:14px;align-items:flex-start;margin-bottom:22px}.page-head h1{font-size:23px}.page-head p{font-size:11px;margin-top:7px}.page-head>.primary{font-size:0;padding:11px;min-width:43px}.page-head>.primary .icon{width:19px;height:19px}.stats{gap:10px;margin-bottom:19px}.stat{padding:16px}.stat-num{font-size:26px}.stat-top{font-size:10px}.stat-detail{font-size:9px}.panel-head{padding:18px 17px}.panel-head h2{font-size:14px}.panel-head p{font-size:10px;line-height:1.6}.toolbar{padding:15px 17px;gap:8px}.filter{max-width:115px;padding:10px 7px;font-size:11px}.search input{font-size:11px}.device-list{padding:0 17px 17px}.device-grid{grid-template-columns:1fr}.device-card{padding:17px}.device-card h3{margin-top:14px}.device-card-bottom .primary{padding:9px 13px;font-size:12px}.empty-state{padding:38px 15px}.viewer-header{padding:0 15px;height:67px;min-height:67px;gap:10px}.viewer-header .danger{font-size:11px;padding:9px 11px}.viewer-header .danger .icon{width:16px;height:16px}.viewer-toolbar{padding:12px;gap:9px;justify-content:center}.viewer-permission{width:100%;justify-content:center;margin:0}.viewer-warning{font-size:9px;padding:8px 12px}.settings-panel{padding:15px 18px}.settings-row{font-size:11px;gap:12px}.audit-table th,.audit-table td{padding:13px 16px}.helper-row{font-size:10px}dialog{padding:24px}.dialog-header h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.settings-actions{margin-top:20px}
@media(max-width:700px){#toast{bottom:85px}}
