@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Plus+Jakarta+Sans:wght@600;700;800&display=swap');
:root{--bg:#f5f7fb;--panel:#fff;--panel2:#f1f3f9;--line:#e2e6ef;--text:#172033;--muted:#738096;--mint:#6c5ce7;--mint2:#5546d7;--red:#ef5d6b;--amber:#e99a2d;--blue:#3978e8;--radius:18px}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(circle at 80% 0,#e9e7ff 0,transparent 30%),var(--bg);color:var(--text);font:14px 'Inter',sans-serif;min-height:100vh}
a{color:inherit}
.sidebar{position:fixed;inset:0 auto 0 0;width:230px;border-right:0;background:linear-gradient(180deg,#25304a,#1c253b);padding:25px 16px;display:flex;flex-direction:column;z-index:10;color:#fff;box-shadow:12px 0 35px #26345012}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;letter-spacing:.12em;font-size:12px;margin:0 8px 34px}
.brand span,.login-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,#8b7cf6,#6275ec);color:white;font-weight:800;font-size:18px;box-shadow:0 8px 22px #6c5ce755}
.sidebar nav{display:grid;gap:5px}
.sidebar nav a{padding:10px 12px;text-decoration:none;color:var(--muted);border-radius:9px;font-weight:600}
.sidebar nav a:hover,.sidebar nav a.active{background:#ffffff12;color:white}
.sidebar form{margin-top:auto}
.nav-logout{width:100%;background:none;border:1px solid var(--line);color:var(--muted);padding:9px;border-radius:9px;cursor:pointer}
.shell{margin-left:230px;padding:42px;max-width:1700px}
.pagehead{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}
.pagehead h1,.panel h2{font-family:'Plus Jakarta Sans',sans-serif}.pagehead h1{font-size:32px;margin:4px 0;letter-spacing:-.035em}
.muted{color:var(--muted);margin:0;line-height:1.6}
.eyebrow{color:var(--mint);font:600 11px 'JetBrains Mono';letter-spacing:.16em;margin:0}
.primary,.secondary,button{border:0;border-radius:10px;padding:11px 16px;font-weight:700;font-family:inherit;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.primary{background:linear-gradient(135deg,#7666ec,#5c70e8);color:white;box-shadow:0 8px 24px #6c5ce72a}
.secondary{background:var(--panel2);border:1px solid var(--line);color:var(--text)}
.wide{width:100%}
.type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.type-card{background:linear-gradient(145deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:var(--radius);padding:20px;text-decoration:none;transition:.2s}
.type-card:hover{transform:translateY(-3px);border-color:#3b725f}
.type-top{display:flex;justify-content:space-between}
.type-icon{font-size:24px;color:var(--mint)}
.health{font-size:11px;border-radius:20px;padding:5px 9px}
.health.good{background:#4de4ad18;color:var(--mint)}
.health.warn{background:#ff6b7218;color:var(--red)}
.type-card h2{font-size:14px;color:var(--muted);margin:22px 0 4px}
.type-card .big{font:600 38px 'JetBrains Mono'}
.split{display:flex;flex-wrap:wrap;gap:11px;margin-top:15px;padding-top:14px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}
.dot,.status-dot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:5px}
.green{background:var(--mint)}
.red{background:var(--red)}
.amber{background:var(--amber)}
.report-grid,.install-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:15px;margin-top:15px}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:0 8px 28px #26345008}
.panel-head{display:flex;justify-content:space-between;margin-bottom:12px}
.panel h2{font-size:17px;margin:4px 0}
.compact-list{display:grid}
.compact-list a{display:grid;grid-template-columns:12px 100px 1fr auto;align-items:center;text-decoration:none;border-top:1px solid var(--line);padding:13px 2px;color:var(--muted)}
.compact-list b{color:var(--text)}
.compact-list em{font-style:normal;font:11px 'JetBrains Mono';color:var(--amber)}
.bars{display:grid;gap:17px;margin-top:16px}
.bars label{display:flex;justify-content:space-between;margin-bottom:7px;color:var(--muted)}
.bars i{display:block;height:7px;background:#07100e;border-radius:9px;overflow:hidden}
.bars i span{display:block;height:100%;background:linear-gradient(90deg,var(--mint),#53a8ff);border-radius:9px}
.toolbar{display:grid;grid-template-columns:1fr 180px 180px auto;gap:10px;margin-bottom:12px}
.geo-toolbar{grid-template-columns:minmax(260px,1.6fr) repeat(4,minmax(140px,.8fr)) auto}
input,select,textarea{width:100%;background:#fafbfe;color:var(--text);border:1px solid var(--line);border-radius:11px;padding:11px 13px;font:inherit;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--mint)}
.table-panel{padding:0;overflow:auto}
table{width:100%;border-collapse:collapse;min-width:1000px}
th{text-align:left;color:var(--muted);font:600 10px 'JetBrains Mono';letter-spacing:.1em;text-transform:uppercase;padding:13px 15px;border-bottom:1px solid var(--line)}
td{padding:14px 15px;border-bottom:1px solid var(--line);vertical-align:middle}
td small{display:block;color:var(--muted);margin-top:4px;font-size:11px}
code,.metric{font:12px 'JetBrains Mono';color:var(--mint2)}
.pill{display:inline-flex;padding:5px 9px;border-radius:20px;background:#ffc65b18;color:var(--amber);font-size:11px}
.pill.online,[data-state=online] .state{background:#4de4ad18;color:var(--mint)}
.pill.offline{background:#ff6b7218;color:var(--red)}
.customer-status-list{max-width:800px;padding:0 20px}
.customer-status-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 2px;border-bottom:1px solid var(--line)}
.customer-status-row:last-child{border-bottom:0}
.customer-accounts{margin-top:18px}
.customer-account-row{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}
.customer-account-row>div{min-width:180px;flex:1}
.customer-account-row small{display:block;color:var(--muted);margin-top:4px}
.customer-account-row form{display:flex;gap:8px}
.customer-account-row input{min-width:200px}
@media(max-width:800px){.customer-account-row{align-items:stretch;flex-direction:column}.customer-account-row form{flex-wrap:wrap}}
[data-state=offline] .state{background:#ff6b7218;color:var(--red)}
[data-state=disabled] .state{background:#ffffff10;color:var(--muted)}
.actions{white-space:nowrap}
.actions a,.actions button{background:none;padding:4px 6px;font-size:11px;color:var(--blue);font-weight:600}
.actions .danger{color:var(--red)}
.empty{text-align:center;color:var(--muted);padding:28px}
.form-panel{max-width:1000px}
.type-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.type-picker input{position:absolute;opacity:0}
.type-picker span{display:grid;background:var(--panel);border:1px solid var(--line);padding:16px;border-radius:13px;cursor:pointer}
.type-picker input:checked+span{border-color:var(--mint);box-shadow:inset 0 0 0 1px var(--mint)}
.type-picker small{color:var(--muted);margin-top:5px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-grid label{display:grid;gap:7px;color:var(--muted);font-size:12px}
.full{grid-column:1/-1}
.form-actions{display:flex!important;justify-content:flex-end;gap:10px}
.command-card pre{white-space:pre-wrap;word-break:break-word;background:#202943;border:1px solid #34405f;padding:16px;border-radius:10px;color:#e9e7ff;font:12px/1.7 'Inter'}
.install-steps ol{padding-left:20px;color:var(--muted);line-height:1.8}
.note{background:#ffc65b10;color:var(--amber);padding:12px;border-radius:9px}
.waiting{display:flex;gap:10px;align-items:center;justify-content:center;color:var(--muted);margin-top:15px}
.waiting i{width:9px;height:9px;background:var(--amber);border-radius:50%;animation:pulse 1.3s infinite}
.success-text{color:var(--mint)}
@keyframes pulse{50%{opacity:.2}
}
.detail-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:15px}
.detail-strip span{display:grid;gap:5px}
.detail-strip small{color:var(--muted)}
.detail-strip b{font:600 14px 'JetBrains Mono'}
.flash{padding:12px 15px;border-radius:10px;margin-bottom:15px;background:#4de4ad16;color:var(--mint)}
.flash.error{background:#ff6b7216;color:var(--red)}
.toast{position:fixed;right:25px;bottom:25px;background:var(--mint);color:#06261c;padding:12px 18px;border-radius:10px;font-weight:700;transform:translateY(80px);opacity:0;transition:.2s}
.toast.show{transform:none;opacity:1}
.login-shell{min-height:100vh;display:grid;place-items:center}
.login-card{width:min(400px,92vw);background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:34px}
.login-card h1{font-size:30px;margin:14px 0 3px}
.login-card form{display:grid;gap:15px;margin-top:28px}
.login-card label{display:grid;gap:7px;color:var(--muted)}
.error-page{text-align:center;padding-top:15vh}
.error-page>b{font:700 80px 'JetBrains Mono';color:var(--mint)}
@media(max-width:1100px){.type-grid{grid-template-columns:1fr 1fr}
.toolbar{grid-template-columns:1fr 1fr}
.report-grid{grid-template-columns:1fr}
}
@media(max-width:720px){.sidebar{position:static;width:auto;height:auto}
.sidebar nav{grid-template-columns:repeat(2,1fr)}
.sidebar form{margin-top:15px}
.shell{margin:0;padding:22px}
.type-grid,.type-picker,.form-grid,.install-grid,.detail-strip{grid-template-columns:1fr}
.pagehead{align-items:start;flex-direction:column}
.toolbar{grid-template-columns:1fr}
.full{grid-column:auto}
}

/* Compact action controls + archive */
.icon-actions{display:flex;align-items:center;gap:6px;padding-top:18px;padding-bottom:18px}
.icon-btn{width:32px;height:32px;padding:0!important;border-radius:9px!important;border:1px solid var(--line)!important;background:#10211c!important;color:var(--muted)!important;font-size:16px!important;text-decoration:none;display:inline-grid!important;place-items:center;transition:.16s}
.icon-btn:hover{border-color:#4b7c6c!important;color:var(--mint2)!important;background:#153027!important;transform:translateY(-1px)}
.icon-btn.danger:hover{border-color:#ff6b7270!important;color:var(--red)!important;background:#ff6b7212!important}
.icon-btn.archive-btn:hover{border-color:#ffc65b70!important;color:var(--amber)!important;background:#ffc65b12!important}
.archive-count{padding:8px 12px;border:1px solid var(--line);border-radius:20px;color:var(--muted);font:11px 'JetBrains Mono'}
.archive-toolbar{grid-template-columns:1fr 220px}
.archive-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}
.archive-card{background:linear-gradient(145deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:var(--radius);padding:18px}
.archive-card-top{display:flex;justify-content:space-between;align-items:center}
.device-glyph{color:var(--mint);font-size:24px}
.archive-card h2{font:600 22px 'JetBrains Mono';margin:18px 0 4px}
.archive-card>p{color:var(--muted);margin:0}
.archive-card dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}
.archive-card dl div{display:grid;gap:3px}
.archive-card dt{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.archive-card dd{margin:0;font:12px 'JetBrains Mono';color:var(--mint2)}
.archive-actions{display:flex;gap:8px;border-top:1px solid var(--line);padding-top:14px}
.archive-actions button{flex:1;font-size:11px}
.delete-button{background:#ff6b7210;color:var(--red);border:1px solid #ff6b7235}
@media(max-width:720px){.archive-toolbar{grid-template-columns:1fr}.archive-actions{flex-direction:column}}
.sidebar nav .nav-device{display:flex;align-items:center;justify-content:space-between;gap:8px}
.sidebar nav .nav-device b{min-width:39px;text-align:center;padding:3px 6px;border-radius:12px;background:#4de4ad12;color:var(--mint);font:600 10px 'JetBrains Mono'}
.sidebar nav .nav-device.active b{background:#4de4ad22;color:var(--mint2)}
.toast.bad{background:var(--red);color:white}
.service-chip{display:inline-flex;margin:4px 4px 0 0;padding:2px 6px;border-radius:10px;font:9px 'JetBrains Mono';background:#4de4ad12;color:var(--mint)}
.service-chip.down{background:#ff6b7212;color:var(--red)}
.nav-label{display:block;color:#8190ac;font-size:9px;letter-spacing:.16em;font-weight:700;margin:22px 12px 5px}
.sidebar nav .nav-device b{background:#ffffff12!important;color:#cbd4e6!important;font-family:'Inter'!important}
.type-card,.archive-card{background:linear-gradient(145deg,#fff,#f7f8fc)}
.icon-btn{background:#f5f7fb!important}.icon-btn:hover{background:#edeaff!important;border-color:#a99ff6!important;color:var(--mint)!important}
.fleet-path{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:18px;color:var(--muted)}.fleet-path span{background:#f0eeff;color:var(--mint2);font-weight:700;padding:9px 14px;border-radius:20px}.fleet-path i{font-style:normal;color:#a4aec0}
.manage-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.manage-card{min-width:0}.fleet-card{grid-column:1/-1}.manage-title{display:flex;align-items:center;gap:12px;margin-bottom:20px}.manage-title h2{margin:0 0 3px}.manage-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#eeeaff;color:var(--mint);font-size:18px}.manage-icon.coral{background:#fff0f1;color:var(--red)}.manage-icon.blue{background:#eaf2ff;color:var(--blue)}
.stack{display:grid;gap:12px;padding:16px;background:#f7f8fc;border-radius:14px}.stack label,.assignment-card label{display:grid;gap:6px;color:var(--muted);font-size:12px}.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.record-list{display:grid;margin-top:15px;max-height:240px;overflow:auto}.record-list>div{display:grid;gap:3px;padding:11px 3px;border-bottom:1px solid var(--line)}.record-list small{color:var(--muted)}
.assignment-card{display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:24px;margin-bottom:14px}.assignment-card h2{margin:4px 0}.legacy-note{grid-column:1/-1;margin:0;padding:10px 12px;border-radius:9px;background:#fff7e8;color:#9a681d}.form-grid label small{font-size:10px;color:var(--muted)}button:disabled{opacity:.5;cursor:not-allowed}
.location-fields,.location-entry{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding-top:14px;border-top:1px solid var(--line)}.location-fields label,.location-entry label{display:grid;gap:6px;color:var(--muted);font-size:12px}
.simple-assignment{display:grid;gap:18px;margin-bottom:14px}.simple-title h2{margin:4px 0}.assignment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.assignment-grid label{display:grid;gap:6px;color:var(--muted);font-size:12px}.assignment-grid .service-select{grid-column:span 2}.form-hint{margin:0;color:var(--muted);font-size:12px}.form-hint a{color:var(--mint);font-weight:700}
@media(max-width:1100px){.assignment-grid{grid-template-columns:1fr 1fr}}@media(max-width:720px){.assignment-grid{grid-template-columns:1fr}.assignment-grid .service-select{grid-column:auto}}
@media(max-width:900px){.manage-grid{grid-template-columns:1fr}.fleet-card{grid-column:auto}.assignment-card{grid-template-columns:1fr}.fleet-path{align-items:stretch;flex-direction:column}.fleet-path i{display:none}}
.work-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:15px}.work-card{text-decoration:none;display:grid;gap:11px}.work-card h2{margin:2px 0}.work-top{display:flex;align-items:center;justify-content:space-between;color:var(--muted)}.progress{display:flex;align-items:center;gap:12px}.progress i{height:8px;flex:1;background:#edf0f6;border-radius:8px;overflow:hidden}.progress i span{display:block;height:100%;background:linear-gradient(90deg,#7766ec,#48a6ef)}.progress b{font-size:11px}.failure{color:var(--red)}.work-form{display:grid;gap:15px;max-width:1200px}.target-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:9px}.target-picker label{position:relative}.target-picker input{position:absolute;opacity:0}.target-picker span{display:grid;gap:4px;border:1px solid var(--line);border-radius:13px;padding:13px;cursor:pointer}.target-picker small{color:var(--muted)}.target-picker em{font-style:normal;font-size:11px;color:var(--blue)}.target-picker input:checked+span{border-color:var(--mint);background:#f1efff;box-shadow:inset 0 0 0 1px var(--mint)}.automation-panel{display:grid;gap:13px}.automation-panel textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#202943;color:#eef1ff}.confirm{display:flex!important;align-items:center;gap:8px}.confirm input{width:auto}.script-summary{display:flex;align-items:center;gap:15px;margin-bottom:15px}.script-summary code{word-break:break-all}.state{display:inline-flex;padding:5px 9px;border-radius:14px;font-size:11px}.work-success{background:#e5f8ef;color:#16805a}.work-failed{background:#ffecef;color:var(--red)}.work-pending{background:#fff4df;color:#a56a14}.work-running{background:#e8f1ff;color:var(--blue)}details pre{max-width:480px;max-height:220px;overflow:auto;white-space:pre-wrap;background:#202943;color:#eef1ff;padding:10px;border-radius:8px;font-size:11px}

/* Fleet visual refresh */
:root{--bg:#f5f6f3;--panel:#fff;--panel2:#f7f8f6;--line:#e3e8e5;--text:#1c2d3b;--muted:#697987;--mint:#087f74;--mint2:#086b63;--red:#c55461;--amber:#a96b22;--blue:#4760a9;--radius:20px}
body{background:linear-gradient(145deg,#f6f8f7 0%,#f4f6f3 50%,#eef3f2 100%);color:var(--text)}
.sidebar{background:#193344;color:#eaf4f2;box-shadow:10px 0 34px #15334018;padding:26px 16px 20px}
.brand{margin:0 9px 3px;letter-spacing:.1em;font-size:13px;color:#fff}
.brand span,.login-mark{background:#d5eddb;color:#184139;box-shadow:none;font-family:'Plus Jakarta Sans',sans-serif}
.brand em{font-style:normal;color:#a5d8c5}
.sidebar-intro{margin:1px 9px 30px;color:#9ab5b8;font-size:12px}
.sidebar nav{gap:3px;overflow:auto}
.sidebar nav a{color:#bbced1;padding:11px 13px;border-radius:12px;transition:background .16s,color .16s}
.sidebar nav a:hover,.sidebar nav a.active{background:#ffffff18;color:#fff}
.sidebar nav .nav-device b,.sidebar nav .nav-device.active b{background:#ffffff1b!important;color:#d8ece9!important;font-size:10px}
.nav-label{color:#7ea1a7;margin:20px 13px 8px}
.nav-logout{border-color:#50707b;color:#d2e1e1;background:#ffffff0b;text-align:left}
.nav-logout:hover{background:#ffffff1d;color:white}
.shell{padding:42px clamp(22px,3vw,52px) 64px;max-width:1800px}
.pagehead{margin-bottom:30px;align-items:center}
.pagehead h1{font-size:clamp(28px,2.7vw,40px);line-height:1.15;letter-spacing:-.045em;margin:8px 0}
.pagehead .muted{font-size:14px}
.eyebrow{color:var(--mint);font-family:'Inter',sans-serif;font-size:10px;letter-spacing:.15em;font-weight:800}
.primary{background:#087f74;color:#fff;box-shadow:0 9px 20px #087f7425;border-radius:11px}
.primary:hover{background:#096b63;transform:translateY(-1px)}
.secondary{background:#fff;border-color:#dbe4e1}
.secondary:hover{background:#f4f8f6;border-color:#bdd3cb}
.panel{border-color:#e5eae7;box-shadow:0 8px 28px #25483d0b}
.type-grid{gap:18px}
.type-card,.archive-card{background:#fff;border-color:#e2e9e4;box-shadow:0 10px 26px #25483d0a}
.type-card{padding:22px 23px;min-height:204px;border-top:4px solid #bfded2}
.type-card:nth-child(2){border-top-color:#d8d1ee}
.type-card:nth-child(3){border-top-color:#d8e6ee}
.type-card:nth-child(4){border-top-color:#f0dfc5}
.type-card:hover,.archive-card:hover{border-color:#b7d4c9;box-shadow:0 18px 36px #25483d13;transform:translateY(-2px)}
.type-icon{display:grid;place-items:center;width:40px;height:40px;background:#e9f5ef;border-radius:12px;color:#187a67;font-size:21px}
.type-card h2{margin:21px 0 2px;color:#536672;font-size:13px}
.type-card .big{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:38px;color:#243c49}
.health.good{background:#e6f5ec;color:#168263}.health.warn{background:#fff0ee;color:#bd5b5b}
.split{border-color:#edf0ed;color:#667985}
.green{background:#2ca87d}.red{background:#d6676c}.amber{background:#d29a4d}
.report-grid{gap:18px;margin-top:18px}
.panel-head{margin-bottom:16px}.panel h2{color:#263b48}
.compact-list a{grid-template-columns:12px minmax(110px,1.1fr) minmax(90px,1fr) auto;gap:12px;padding:14px 4px;border-color:#edf1ee}
.compact-list a:hover{background:#f8faf8}
.compact-list b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.compact-list em{font-family:'Inter',sans-serif;color:#b26064;white-space:nowrap}
.bars i{background:#edf2ef}.bars i span{background:linear-gradient(90deg,#1b8d7c,#87c5ac)}
.toolbar{background:#fff;padding:12px;border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 24px #25483d0a}
input,select,textarea{background:#fff;border-color:#dce5e1;border-radius:10px}
input:focus,select:focus,textarea:focus{border-color:#76b8a2;box-shadow:0 0 0 3px #bce5d544}
.table-panel{border-radius:18px}.table-panel table{min-width:1080px}
th{background:#f7f9f7;color:#71818b;font-family:'Inter',sans-serif;font-size:10px;font-weight:800;padding:15px 16px;border-color:#edf1ee}
.sort-head{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-align:left;text-transform:inherit;cursor:pointer}
.sort-head span{font-size:14px;line-height:1;color:#9aaca8}
.sort-head:hover,.sort-head:focus-visible,th[aria-sort="ascending"] .sort-head,th[aria-sort="descending"] .sort-head{color:#157866}
th[aria-sort="ascending"] .sort-head span,th[aria-sort="descending"] .sort-head span{color:#157866}
td{padding:16px;border-color:#eef1ef}tbody tr:hover{background:#f8fbf9}
td>b{font-weight:700}.metric,code{color:#146d64;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.uptime-cell{white-space:nowrap;color:#286b61;font-weight:700;font-size:12px}
.uptime-note{font-weight:500;color:#84928e}
.fleet-table td{vertical-align:middle;line-height:1.38}
.fleet-table .device-name,.fleet-table .client-name{display:block;font-weight:700;overflow:hidden;text-overflow:ellipsis}
.fleet-table .device-name,.fleet-table .client-name{white-space:nowrap}
.fleet-table .client-location{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;max-height:2.8em;overflow:hidden}
.fleet-table .mac{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;white-space:nowrap;letter-spacing:-.025em}
.fleet-table .resource-cell{white-space:nowrap}
.fleet-table .resource-cell small{white-space:normal;overflow-wrap:anywhere}
@media(min-width:901px){
  .table-panel .fleet-table{table-layout:fixed;min-width:1260px}
  .fleet-table.type-board th:nth-child(1),.fleet-table.type-vps th:nth-child(1){width:7%}
  .fleet-table.type-board th:nth-child(2),.fleet-table.type-vps th:nth-child(2){width:15%}
  .fleet-table.type-board th:nth-child(3),.fleet-table.type-vps th:nth-child(3){width:20%}
  .fleet-table.type-board th:nth-child(4),.fleet-table.type-vps th:nth-child(4){width:6%}
  .fleet-table.type-board th:nth-child(5),.fleet-table.type-vps th:nth-child(5){width:14%}
  .fleet-table.type-board th:nth-child(6),.fleet-table.type-vps th:nth-child(6){width:10%}
  .fleet-table.type-board th:nth-child(7),.fleet-table.type-vps th:nth-child(7){width:12%}
  .fleet-table.type-board th:nth-child(8),.fleet-table.type-vps th:nth-child(8){width:16%}
  .fleet-table.type-pos th:nth-child(1),.fleet-table.type-mikrotik th:nth-child(1){width:8%}
  .fleet-table.type-pos th:nth-child(2),.fleet-table.type-mikrotik th:nth-child(2){width:17%}
  .fleet-table.type-pos th:nth-child(3),.fleet-table.type-mikrotik th:nth-child(3){width:22%}
  .fleet-table.type-pos th:nth-child(4),.fleet-table.type-mikrotik th:nth-child(4){width:7%}
  .fleet-table.type-pos th:nth-child(5),.fleet-table.type-mikrotik th:nth-child(5){width:15%}
  .fleet-table.type-pos th:nth-child(6),.fleet-table.type-mikrotik th:nth-child(6){width:13%}
  .fleet-table.type-pos th:nth-child(7),.fleet-table.type-mikrotik th:nth-child(7){width:18%}
  .fleet-table td.icon-actions{display:table-cell;white-space:nowrap;padding:14px 10px;vertical-align:middle}
  .fleet-table td.icon-actions .icon-btn{display:inline-grid!important;vertical-align:middle;margin:0 2px}
}
.pill{font-weight:700;border-radius:999px}.pill.online,[data-state=online] .state{background:#e5f5ec;color:#147d58}.pill.offline,[data-state=offline] .state{background:#fcebec;color:#b34c56}
.icon-btn{background:#f4f7f5!important;border-color:#e1e9e3!important;color:#536b70!important}
.icon-btn:hover{background:#e9f5ef!important;border-color:#bad8ca!important;color:#087f74!important}
.login-shell{background:radial-gradient(circle at 18% 20%,#d4eadf,transparent 35%),radial-gradient(circle at 90% 88%,#d9e3ec,transparent 35%),#f5f7f4;padding:26px}
.login-card{width:min(430px,94vw);padding:40px;border-color:#e2e9e4;box-shadow:0 22px 60px #233f321c}
.login-mark{width:48px;height:48px;border-radius:15px;font-size:24px}
.login-card h1{font-family:'Plus Jakarta Sans',sans-serif;font-size:32px;letter-spacing:-.04em}
.customer-view .shell{max-width:1200px}
.customer-pagehead{background:#dfeee8;border:1px solid #cfe5da;border-radius:24px;padding:30px 34px;margin-bottom:23px}
.customer-pagehead h1{margin:8px 0 6px}
.live-indicator{display:inline-flex;align-items:center;gap:9px;padding:9px 13px;background:#ffffffb8;color:#376858;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}
.live-indicator i{width:8px;height:8px;background:#23a778;border-radius:50%;box-shadow:0 0 0 4px #23a77820}
.customer-status-list{max-width:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px;padding:0;background:none;border:0;box-shadow:none}
.customer-status-row{display:flex;align-items:center;gap:13px;min-height:80px;padding:16px;background:#fff;border:1px solid #e0e9e3;border-radius:16px;box-shadow:0 8px 24px #25483d0b}
.customer-status-row:last-child{border-bottom:1px solid #e0e9e3}
.customer-device-icon{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:11px;background:#eaf4f0;color:#17765d;font-size:20px}
.customer-status-row b{flex:1;min-width:0;overflow-wrap:anywhere;font-size:13px;line-height:1.35}
.customer-status-row .pill{margin-left:auto;white-space:nowrap}
.customer-status-list>.empty{grid-column:1/-1;background:#fff;border:1px solid var(--line);border-radius:16px}
@media(max-width:1100px){.geo-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}.geo-toolbar input{grid-column:1/-1}}
@media(max-width:720px){.sidebar{padding:16px}.sidebar-intro{margin-bottom:16px}.sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.sidebar nav .nav-label{grid-column:1/-1}.shell{padding:24px 16px 48px}.pagehead{align-items:flex-start}.customer-pagehead{padding:23px;align-items:flex-start}.geo-toolbar{grid-template-columns:1fr}.geo-toolbar input{grid-column:auto}.compact-list a{grid-template-columns:10px minmax(80px,1fr) auto}.compact-list a span:nth-child(3){display:none}}
@media(max-width:900px){.table-panel{background:none;border:0;box-shadow:none;overflow:visible}.table-panel table{display:block;min-width:0}.table-panel thead{display:none}.table-panel tbody{display:grid;gap:14px}.table-panel tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 18px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:15px;box-shadow:0 8px 24px #25483d0a}.table-panel tbody tr[hidden]{display:none}.table-panel td{display:block;padding:5px 2px;border:0;min-width:0;overflow-wrap:anywhere}.table-panel td::before{content:attr(data-label);display:block;margin-bottom:5px;color:#82918c;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.table-panel td:nth-child(1),.table-panel td:nth-child(2),.table-panel td:last-child{grid-column:1/-1}.table-panel td:nth-child(1){padding-bottom:0}.table-panel td:nth-child(2){padding-top:0;font-size:16px}.table-panel td:last-child{border-top:1px solid var(--line);margin-top:5px;padding-top:12px}.table-panel td.icon-actions::before{margin-right:8px}.table-panel td small{line-height:1.45}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
