:root{font-family:Segoe UI Variable,Segoe UI,system-ui,sans-serif;color:#23332c;background:#eef0f2;font-synthesis:none;font-size:14px;--forest:#074633;--muted:#637168;--line:#dce1e3;--orange:#e87830}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 14px;border:1px solid #cbd6ce;border-radius:6px;background:#fff;color:var(--forest);cursor:pointer;text-decoration:none;font-weight:550;transition:background .16s,border-color .16s}button:hover,.button:hover{background:#eef5f0;border-color:#90a99a}button:disabled{cursor:wait;opacity:.6}button.primary,.primary{background:var(--forest);border-color:var(--forest);color:#fff}button.primary:hover{background:#10634a}.text-button{border:0;background:transparent;padding:4px;min-height:30px;color:var(--forest);text-decoration:none;display:inline-flex;align-items:center;gap:6px}.muted,p,small{color:var(--muted)}p{line-height:1.65}h1,h2,h3,p{margin-top:0}h2{font-size:18px;font-weight:600;letter-spacing:-.025em;margin-bottom:8px}h3{font-size:16px;margin-bottom:6px}small{font-size:12px}strong{font-weight:600}a{color:var(--forest)}:focus-visible{outline:3px solid #b96532;outline-offset:3px}.sidebar{width:248px;position:fixed;inset:0 auto 0 0;background:#074633;color:#d2e0d7;display:flex;flex-direction:column;z-index:10}.brand{display:flex;gap:12px;align-items:center;padding:27px 25px}.brand img{height:44px;width:44px;border-radius:10px}.brand b{color:#fff;font-size:24px;letter-spacing:-.7px}.brand small{display:block;font-size:10px;letter-spacing:2px;color:#b3ccbc;margin-top:3px}.workspace-label{margin:0 14px 25px;padding:14px 12px;display:flex;gap:10px;align-items:center;border:1px solid #ffffff29;border-radius:7px;font-size:10px;color:#bcd3c5}.workspace-label strong{display:block;color:#fff;font-size:12px;margin-top:3px}.nav-label{font-size:10px;letter-spacing:1.6px;padding:0 25px 12px;color:#a7c3b2}.sidebar nav{padding:0 12px;display:grid;gap:5px}.sidebar nav button{justify-content:flex-start;position:relative;color:#d3e0d8;background:transparent;border:0;font-size:13px;padding:13px 14px;gap:12px}.sidebar nav button:hover{background:#ffffff0a;color:#fff}.sidebar nav button.active{background:#ffffff12;color:#fff}.sidebar nav button.active:before{content:"";position:absolute;left:0;top:12px;bottom:12px;background:var(--orange);width:3px;border-radius:2px}.nav-count{margin-left:auto;border-radius:12px;background:#e87830;color:#fff;min-width:20px;text-align:center}.sidebar-bottom{margin-top:auto;border-top:1px solid #ffffff22;padding:22px 25px;background:#053b2b}.sidebar-bottom strong,.sidebar-bottom small{display:block;margin:5px 0;color:#e9f1ec}.sidebar-bottom small{color:#a7c3b2}.sidebar-bottom button{margin-top:16px;background:transparent;border-color:#ffffff35;color:#fff;width:100%;font-size:12px}.link-status{display:flex;align-items:center;gap:7px;font-size:11px;color:#bcd3c5;margin-bottom:19px}.dot{width:6px;height:6px;border-radius:50%;background:#a1ca75}.dot.down{background:#efa24b}.workspace{margin-left:248px}.topbar{height:68px;padding:0 36px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}.topbar>div{display:flex;align-items:center;gap:13px;font-size:12px;color:var(--muted)}.topbar b{font-weight:550;color:#30443a}main{padding:34px 36px 20px;max-width:1740px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.eyebrow{display:block;font-size:10px;font-weight:650;letter-spacing:1.6px;color:#6c8073;margin-bottom:10px}.page-heading h1{font-size:28px;letter-spacing:-.9px;font-weight:550;margin-bottom:8px}.page-heading p{font-size:13px;margin-bottom:0}.heading-actions,.actions{display:flex;gap:9px;flex-shrink:0}.badge{display:inline-flex;gap:5px;align-items:center;white-space:nowrap;border-radius:5px;padding:4px 8px;background:#edf1ee;color:#617269;font-size:10px;font-weight:600;letter-spacing:.2px;vertical-align:middle}.badge.green{background:#e5f1e7;color:#38774b}.badge.orange{background:#fff0df;color:#9a541b}.badge.purple{background:#eeeafb;color:#7054a1}.badge.red{background:#f9e6e4;color:#b4473a}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:8px 0 24px;margin-bottom:24px;border-bottom:1px solid var(--line)}.kpis>div{padding:0 25px;position:relative;border-right:1px solid var(--line)}.kpis>div:first-child{padding-left:0}.kpis>div:last-child{border:0}.kpis span{font-size:12px;color:var(--muted);display:block;margin-bottom:10px}.kpis strong{font-size:32px;font-weight:550;letter-spacing:-1px}.kpis strong small{display:block;font-size:11px;font-weight:400;letter-spacing:0;margin-top:8px}.kpis svg{position:absolute;right:23px;top:1px;color:#799383;stroke-width:1.5}.card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 2px #162b2009;overflow:hidden;margin-bottom:22px}.card-head{display:flex;align-items:center;justify-content:space-between;padding:23px 24px;gap:20px}.card-head h2{margin-bottom:4px}.card-head p{font-size:12px;margin:0}.card-note{background:#f8faf8;border-top:1px solid #e5ebe6;padding:13px 22px;font-size:11px;color:#68796e;display:flex;align-items:center;gap:10px;line-height:1.7}.overview-grid{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(260px,1fr);gap:22px}.signal-card{display:flex;flex-direction:column;justify-content:space-between}.signal-path{display:flex;align-items:center;justify-content:center;padding:22px 16px 42px}.path-node{min-width:92px;text-align:center}.node-icon{height:66px;width:66px;border:1px solid #dce5de;background:#f4f7f4;border-radius:16px;color:#7b8d81;display:grid;place-items:center;margin:0 auto 13px}.path-node.ready .node-icon{background:#e7f1e9;color:#336c49;border-color:#c0d9c7}.path-node strong{display:block;font-size:12px;margin-bottom:6px}.path-node small{font-size:10px;display:block}.path-connector{padding:0 8px 34px;color:#a9b8af;display:grid;justify-items:center;gap:9px;min-width:42px}.path-connector span{font-size:9px;letter-spacing:1px}.next-step{padding:24px;background:linear-gradient(135deg,#fbfdfb,#f0f5f0);display:flex;flex-direction:column}.next-step h2{font-size:19px}.next-step p{font-size:12px;margin-bottom:20px}.next-step button{align-self:flex-start}.step-illustration{display:flex;gap:21px;color:#3e7554;align-items:center;height:74px}.step-illustration span{font-size:19px;color:#92ad9a}.info{display:flex;gap:13px;align-items:flex-start;padding:17px 20px;border:1px solid #d7e4dc;border-radius:8px;background:#edf5ef;color:#4e6e5a;font-size:12px;line-height:1.6;margin:0 0 22px}.info>svg{flex:none;margin-top:2px}.info strong{display:block;margin-bottom:3px}.info span{display:block}.empty{min-height:210px;padding:45px 22px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;color:#8da193}.empty strong{display:block;font-size:14px;color:#40584a;margin-top:17px}.empty p{font-size:12px;margin:10px 0 0;max-width:500px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{padding:13px 23px;background:#f5f7f5;border-block:1px solid #e3e8e4;color:#78877d;font-size:10px;letter-spacing:.5px;text-transform:uppercase;font-weight:550}td{padding:17px 23px;border-bottom:1px solid #e8ede9}tr:last-child td{border:0}td strong{font-size:13px}td small{display:flex;align-items:center;gap:4px;font-size:10px;margin-top:5px}td button{font-size:11px;min-height:33px;padding:7px 10px}.alarm-text{color:#b9493b!important}.device-cell{display:flex;align-items:center;gap:13px}.device-icon{height:43px;width:43px;background:#eef4ef;color:#427455;border-radius:10px;display:grid;place-items:center}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.toolbar{display:flex;align-items:center;gap:10px;background:#fbfcfb;padding:12px 23px;border-top:1px solid var(--line);color:#849489}.toolbar input{border:0;background:transparent;outline:0;flex:1;padding:6px}.toolbar.tabs button{border:0;background:transparent;font-size:12px;min-height:34px}.toolbar.tabs button.selected{background:#e5eee7}.toolbar.tabs small{margin-left:auto;font-size:10px}.padded{padding:26px}.padded p{font-size:13px}.setup-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.setup-step{padding:25px;display:flex;flex-direction:column}.step-number{width:39px;height:39px;background:#f2f5f2;border:1px solid #dae3dc;color:#718478;border-radius:50%;display:grid;place-items:center;margin-bottom:25px}.step-number.done{background:#e4f2e7;color:#39794e}.setup-step h2{font-size:16px}.setup-step p{font-size:12px;flex:1}.setup-step button{font-size:11px;padding:10px;justify-content:space-between}.diagnostic-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:0 24px 25px;gap:25px}.diagnostic-grid span{display:block;font-size:11px;color:var(--muted);margin-bottom:8px}.diagnostic-grid strong{font-size:13px}.audit-list{padding:0 24px 16px}.audit-list>div{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid #eef1ee;font-size:12px}.audit-list svg{color:#7c9c86}.audit-list small{margin-left:auto}.audit-list span{color:var(--muted)}.test-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:22px}.test-grid h2{margin-top:18px}.test-grid>section>small{display:block;margin-top:20px;font-size:11px}.test-list{padding:0 24px}.test-list article{padding:20px 0;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;gap:10px}.test-list article>div{flex:1}.test-list article small{display:block;margin-top:6px}.test-list article>small,.test-list article>p{width:100%;margin:2px 0;font-size:12px}.firmware-list article{display:flex;align-items:center;gap:22px;padding:25px;border-top:1px solid var(--line)}.firmware-list article>svg{color:#4b7859;flex-shrink:0}.firmware-list article>div{flex:1;min-width:0}.firmware-list p{font-size:12px;margin-bottom:8px}.firmware-list code{display:block;overflow-wrap:anywhere;font-size:10px;color:var(--muted);margin-top:10px}.docs-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.document{display:block;padding:28px;text-decoration:none}.document>svg{color:#5b8065;margin-bottom:23px}.document p{font-size:13px}.document span{display:flex;gap:7px;align-items:center;font-size:12px}footer{display:flex;gap:20px;justify-content:space-between;padding:18px 0;border-top:1px solid var(--line);font-size:10px;color:#7c8981;margin-top:12px}footer strong{font-weight:550}label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#3f5749;margin-bottom:18px}input,select,textarea{width:100%;min-height:42px;border:1px solid #ccd7ce;border-radius:6px;padding:10px 12px;background:#fff;color:#23332c}textarea{resize:vertical;min-height:95px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#13352677;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:32px;z-index:30}.modal{width:min(940px,95vw);max-height:90vh;overflow:auto;background:#fff;padding:30px;border-radius:16px;box-shadow:0 22px 80px #12271d40}.modal.wide{width:min(1100px,95vw)}.modal header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:26px}.modal header h2{font-size:24px;margin:0}.modal header button{border:0}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.device-detail{display:grid;grid-template-columns:260px 1fr;gap:35px}.qr-panel{display:flex;align-items:center;flex-direction:column;text-align:center;gap:10px;padding:15px;background:#f7faf7;border-radius:8px}.qr-panel img{width:180px;height:180px}.qr-panel strong{font-size:11px}.qr-panel small{line-height:1.7;font-size:10px}.provision-panel{border-top:1px solid var(--line);margin-top:25px;padding-top:25px;display:flex;gap:20px;align-items:center;justify-content:space-between}.provision-panel p{font-size:12px;margin-bottom:0}.provision-panel button{flex:none}.error{background:#fff1ed;border:1px solid #edc8bd;color:#a23f2b;padding:13px 16px;margin-bottom:18px;display:flex;gap:12px;align-items:center;border-radius:7px;font-size:12px}.error button{margin-left:auto;border:0;background:transparent;color:inherit;padding:3px;min-height:25px}.toast{position:fixed;bottom:25px;left:calc(50% + 124px);transform:translate(-50%);background:#164d36;color:#fff;padding:16px 22px;display:flex;gap:11px;align-items:center;border-radius:10px;box-shadow:0 9px 30px #12332633;z-index:50;font-size:13px;max-width:80vw}.login-shell{min-height:100vh;background:radial-gradient(ellipse at 95% 15%,#acc0b326,transparent 65%),#edf1ee;padding:35px 6vw;display:flex;flex-direction:column}.login-brand{display:flex;align-items:center;gap:12px;font-size:26px;font-weight:650;color:var(--forest)}.login-brand img{width:43px;height:43px}.login-card{margin:45px auto;max-width:470px;width:100%;padding:38px;background:#fff;border:1px solid #dce4de;border-radius:16px;box-shadow:0 8px 40px #0a3c2107}.login-card h1{font-size:32px;line-height:1.25;font-weight:550;letter-spacing:-1px;margin:23px 0 15px}.login-card p{font-size:13px;margin-bottom:25px}.login-card form button{width:100%;margin-top:7px;justify-content:space-between}.login-card>small{margin-top:24px;display:flex;align-items:center;gap:8px;font-size:10px}.login-caption{display:flex;justify-content:space-between;color:#708376;font-size:11px;margin-top:auto}.loading{display:flex;align-items:center;justify-content:center;min-height:100vh;gap:15px;color:var(--forest)}.spin{animation:spin 1.2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1750px){main{padding-top:45px}.signal-path{padding-block:30px 50px}.node-icon{width:78px;height:78px}.path-connector{min-width:70px}.path-node{min-width:120px}}@media(max-width:1200px){.sidebar{width:215px}.workspace{margin-left:215px}.brand{padding:25px 17px}.brand b{font-size:21px}main{padding:26px 22px}.topbar{padding:0 22px}.overview-grid{grid-template-columns:1fr}.next-step{display:none}.setup-grid,.diagnostic-grid{grid-template-columns:repeat(2,1fr)}.kpis strong small{max-width:135px}.kpis svg{display:none}.test-grid{grid-template-columns:1fr}.toast{left:calc(50% + 107px)}}@media(max-width:760px){.sidebar{position:static;width:100%}.workspace-label,.nav-label,.sidebar-bottom{display:none}.brand{padding:12px 18px}.sidebar nav{display:flex;overflow:auto;padding:0 10px 10px}.sidebar nav button{white-space:nowrap;flex-shrink:0;padding:10px}.workspace{margin:0}.topbar{height:53px}.topbar>div{font-size:10px;gap:5px}.topbar>div>b{display:none}main{padding:22px 15px}.page-heading{display:block}.page-heading h1{font-size:24px}.heading-actions{margin-top:18px}.kpis{grid-template-columns:1fr 1fr;gap:22px}.kpis>div:nth-child(odd){padding-left:0}.kpis>div:nth-child(2n){border:0}.kpis strong{font-size:28px}.kpis strong small{max-width:none}.signal-path{overflow:auto;justify-content:flex-start;padding-inline:12px}.path-node{min-width:80px}.path-connector{padding-inline:2px;min-width:25px}.node-icon{width:48px;height:48px;border-radius:11px}.path-node small{font-size:9px}.path-node strong{font-size:10px}.card-head{padding:20px 17px}.setup-grid,.docs-grid{grid-template-columns:1fr;gap:0}.form-grid,.device-detail{grid-template-columns:1fr}.qr-panel{margin-bottom:20px}.modal-backdrop{padding:12px}.modal{padding:23px;max-height:94vh}.modal header h2{font-size:21px}.provision-panel{display:block}.provision-panel button{margin-top:16px}.toolbar.tabs{flex-wrap:wrap}.toolbar.tabs small{width:100%;margin:0}.toast{left:50%}.firmware-list article{flex-wrap:wrap}.firmware-list article>div{min-width:180px}.audit-list>div{flex-wrap:wrap}.audit-list small{margin-left:0}footer span:last-child{display:none}.login-card{padding:28px}.card-note{font-size:10px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
