@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font:"Space Grotesk Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"JetBrains Mono Variable", ui-monospace, monospace;--bg:#eef1f5;--panel:#fff;--panel2:#f6f8fa;--border:#d8dee6;--line:#e6eaf0;--text:#0e1621;--muted:#566273;--accent:#0a64d6;--accent-ink:#fff;--selected:#e6f0fc;--ok:#0f8a4f;--wait:#9a6300;--fail:#c9302c;--off:#5f6b78;--busy:#0a64d6;--rail:#0e1621;--rail-text:#9aa7b6;--rail-on:#fff;--rail-on-bg:#1e2a38;--radius:14px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0a0e13;--panel:#111720;--panel2:#161e29;--border:#222c38;--line:#1a222d;--text:#e6edf3;--muted:#8d9aab;--accent:#6cb6ff;--accent-ink:#06121f;--selected:#13253a;--ok:#3fd68a;--wait:#f2b84b;--fail:#ff6b6b;--off:#7d8998;--busy:#6cb6ff;--rail:#070a0e;--rail-text:#7d8998;--rail-on:#e6edf3;--rail-on-bg:#18212d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font:14px/1.5 var(--font);margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1{letter-spacing:-.01em;margin:0 0 16px;font-size:24px;font-weight:600}h2{margin:28px 0 12px;font-size:16px;font-weight:600}h3{font-size:14px;font-weight:600}p{margin:0 0 12px}code,pre,.mono{font-family:var(--mono);font-size:12.5px}.icon{flex:none;width:18px;height:18px}.muted{color:var(--muted);font-size:13px}.error{color:var(--fail)}button,.button{border:1px solid var(--border);background:var(--panel2);min-height:38px;color:var(--text);font:500 14px var(--font);cursor:pointer;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 14px;text-decoration:none;display:inline-flex}button:hover,.button:hover{border-color:var(--muted);text-decoration:none}button:disabled{opacity:.55;cursor:default}button .icon,.button .icon{width:16px;height:16px}button[type=submit],button.primary,.button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}button.danger{color:var(--fail);border-color:color-mix(in srgb, var(--fail) 45%, transparent);background:0 0}button.danger:hover{background:color-mix(in srgb, var(--fail) 10%, transparent);border-color:var(--fail)}button.link{min-height:0;color:var(--accent);background:0 0;border:none;padding:0;text-decoration:underline}button.icon-button{width:40px;min-height:40px;color:var(--muted);background:0 0;border-color:#0000;padding:0}button.icon-button:hover{background:var(--panel2);color:var(--text)}a.icon-button{width:40px;height:40px;color:var(--muted);border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex}a.icon-button:hover{background:var(--panel2);color:var(--text);text-decoration:none}button.icon-button.small,a.icon-button.small{border-radius:8px;width:32px;height:32px;min-height:32px}button.icon-button:disabled:hover{color:var(--muted);background:0 0}[data-tip]{position:relative}@media (hover:hover){[data-tip]:hover:after,[data-tip]:focus-visible:after{content:attr(data-tip);z-index:30;background:var(--text);color:var(--bg);font:500 12px var(--font);white-space:nowrap;pointer-events:none;border-radius:6px;padding:4px 8px;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}}input,select,textarea{font:14px var(--font);color:var(--text);background:var(--panel2);border:1px solid var(--border);border-radius:10px;min-height:38px;padding:8px 12px}input,select{max-width:100%}input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:0;border-color:var(--accent)}input[type=checkbox],input[type=radio]{width:16px;height:16px;min-height:0;accent-color:var(--accent)}input[type=file]{padding:6px}label.checkbox{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;display:flex}label.field,div.field{flex-direction:column;gap:6px;max-width:40rem;margin-bottom:16px;font-weight:500;display:flex}.actions{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.actions input{flex:1;min-width:16rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));align-items:end;gap:16px;margin-bottom:16px;display:grid}.form-grid label{flex-direction:column;gap:6px;font-weight:500;display:flex}fieldset{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);min-width:0;margin:0 0 16px;padding:14px 18px 8px}legend{padding:0 6px;font-weight:600}details{margin:0 0 16px}summary{cursor:pointer;margin-bottom:10px;font-weight:500}.badge{height:22px;font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;vertical-align:middle;color:var(--off);border:1px solid color-mix(in srgb, currentColor 35%, transparent);background:color-mix(in srgb, currentColor 10%, transparent);border-radius:6px;align-items:center;gap:6px;padding:0 8px;display:inline-flex}.badge .dot{width:6px;height:6px}.badge.succeeded{color:var(--ok)}.badge.pending{color:var(--wait)}.badge.delivered,.badge.busy{color:var(--busy)}.badge.failed{color:var(--fail)}.badge.offline{color:var(--off)}.dot{background:currentColor;border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.dot.online{color:var(--ok);box-shadow:0 0 0 3px color-mix(in srgb, var(--ok) 22%, transparent)}.dot.asleep{color:var(--wait)}.dot.offline{color:var(--off)}table{border-collapse:separate;border-spacing:0;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);width:100%;margin-bottom:12px;overflow:hidden}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:10px 14px}tr:last-child td{border-bottom:0}th{font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--panel2);border-bottom-color:var(--border);white-space:nowrap}tbody tr:hover td{background:var(--panel2)}td.row-actions{text-align:right;white-space:nowrap}td.row-actions button+button{margin-left:8px}dl{grid-template-columns:max-content 1fr;gap:8px 20px;margin:0 0 12px;display:grid}dt{color:var(--muted)}dd{overflow-wrap:anywhere;margin:0}.notice{border:1px solid color-mix(in srgb, var(--wait) 40%, transparent);background:color-mix(in srgb, var(--wait) 8%, transparent);border-radius:10px;padding:12px 16px}.code-box{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);margin:16px 0;padding:16px 18px}.code{font-family:var(--mono);letter-spacing:.15em;font-size:2rem}code.wrap{word-break:break-all}pre.command{white-space:pre-wrap;word-break:break-all;background:var(--panel2);border:1px solid var(--line);border-radius:10px;margin:0 0 8px;padding:10px 12px}.tabs{border-bottom:1px solid var(--border);gap:2px;margin-bottom:16px;display:flex}.tabs a{color:var(--muted);border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-weight:500;text-decoration:none}.tabs a.active{color:var(--text);border-bottom-color:var(--accent)}.app-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.activity{margin:0;padding:0;list-style:none}.activity li{align-items:baseline;gap:8px;display:flex}.activity li+li{margin-top:6px}.choices{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:16px;margin-bottom:16px;display:grid}.choice{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);color:var(--text);flex-direction:column;gap:8px;padding:18px;display:flex}.choice strong{font-size:16px;font-weight:600}.choice:hover,.choice:focus-visible{border-color:var(--accent);text-decoration:none}.stepper{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px 24px;margin:24px 0 16px;padding:0 0 12px 20px;display:flex}.stepper li{color:var(--muted)}.stepper li.current{color:var(--text);font-weight:600}.step{max-width:48rem}.qr-options{margin:0 0 16px}.qr{flex-wrap:wrap;gap:24px;margin-top:16px;display:flex}.qr img{background:#fff;border-radius:10px;max-width:100%;height:auto;padding:8px}.qr pre{white-space:pre-wrap;word-break:break-all;font-size:.75rem}.shell{min-height:100vh;display:flex}.rail{background:var(--rail);flex-direction:column;flex:none;align-items:center;gap:6px;width:80px;height:100vh;padding:16px 0;display:flex;position:sticky;top:0}.logo{background:var(--accent);width:38px;height:38px;color:var(--accent-ink);border-radius:10px;place-items:center;margin-bottom:14px;display:grid}.rail a,.bottom-bar a{color:var(--rail-text);flex-direction:column;align-items:center;gap:4px;font-size:11px;font-weight:500;text-decoration:none;display:flex}.rail a{border-radius:10px;width:64px;padding:8px 0}.rail a:hover{color:var(--rail-on)}.rail a.active{background:var(--rail-on-bg);color:var(--rail-on)}.rail a .icon,.bottom-bar a .icon{width:20px;height:20px}.rail a.logo{width:38px;color:var(--accent-ink);padding:0}.rail-icon,a.help-bell{position:relative}.rail-icon{display:flex}.rail-icon .count,a.help-bell .count{background:var(--fail);min-width:18px;height:18px;color:var(--panel);text-align:center;border-radius:9px;padding:0 5px;font-size:11px;font-weight:600;line-height:18px;position:absolute;top:-6px;right:-10px}a.help-bell .count{top:2px;right:0}.help-banner{border:1px solid color-mix(in srgb, var(--wait) 40%, transparent);background:color-mix(in srgb, var(--wait) 10%, var(--panel));border-radius:12px;align-items:center;gap:12px;margin-bottom:20px;padding:10px 12px 10px 16px;display:flex}.help-banner>.icon{color:var(--wait);flex:none}.help-banner-text{overflow-wrap:anywhere;flex:1;min-width:0}.help-marker{vertical-align:-3px;color:var(--wait);margin-right:6px;display:inline-flex}.help-marker .icon{width:16px;height:16px}.help-alerts{max-width:48rem;margin-top:24px}.rail-foot{flex-direction:column;align-items:center;gap:6px;margin-top:auto;display:flex}.rail button.icon-button{color:var(--rail-text)}.rail button.icon-button:hover{background:var(--rail-on-bg);color:var(--rail-on)}.avatar{background:var(--rail-on-bg);width:32px;height:32px;color:var(--rail-on);text-transform:uppercase;border-radius:50%;place-items:center;font-size:12px;font-weight:600;display:grid}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{background:var(--panel);border-bottom:1px solid var(--border);z-index:5;align-items:center;gap:12px;min-height:64px;padding:0 28px;display:flex;position:sticky;top:0}.topbar .brand{color:var(--text);align-items:center;gap:10px;font-size:16px;font-weight:600;display:none}.topbar .brand .logo{width:32px;height:32px;margin:0}.topbar>.button.primary{margin-left:auto}.topbar .phone-only{display:none}.page{min-width:0;padding:24px 28px 48px}.bottom-bar{display:none}.theme-menu{display:flex;position:relative}.theme-options{z-index:20;background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:2px;min-width:170px;padding:4px;display:flex;position:absolute;box-shadow:0 8px 24px #00000040}.theme-menu.right .theme-options{bottom:0;left:calc(100% + 32px)}.theme-menu.right .theme-options:before{content:"";width:34px;position:absolute;top:0;bottom:0;left:-34px}.theme-menu.below .theme-options{top:calc(100% + 6px);right:0}.theme-options button{width:100%;min-height:36px;color:var(--text);background:0 0;border:0;justify-content:flex-start}.theme-options button:hover{background:var(--panel2)}.theme-options button[aria-checked=true]{color:var(--accent)}.checkmark{margin-left:auto;display:flex}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);min-width:0;overflow:hidden}.panel-head{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:14px 18px;display:flex}.panel-head h2{margin:0;font-size:15px}.panel-body{padding:16px 18px}.panel-body>:last-child{margin-bottom:0}.panel table{border:0;border-radius:0;margin:0}.spacer{flex:1}.page-head{flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:18px;display:flex}.page-head h1{margin:0}.title-edit{margin-bottom:16px}.title-edit .actions{max-width:48rem;margin-bottom:0}.title-edit input{font-size:20px;font-weight:600}.title-edit .error{margin:8px 0 0}.page-title{align-items:center;gap:4px;margin-bottom:16px;display:flex}.page-title h1{margin:0}.page-info{display:flex;position:relative}.page-info-pop{z-index:20;background:var(--panel);border:1px solid var(--border);border-radius:12px;width:min(32rem,100vw - 32px);padding:12px 16px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 24px #00000040}.page-info-pop:before{content:"";height:8px;position:absolute;top:-8px;left:0;right:0}.page-info-pop>:last-child{margin-bottom:0}.page-info-text{max-width:48rem;margin-bottom:16px}.page-info-text p{margin:0 0 8px}.live{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:inline-flex}.live .dot{width:8px;height:8px;color:var(--ok);box-shadow:0 0 0 4px color-mix(in srgb, var(--ok) 20%, transparent)}.section-label{font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.back{color:var(--muted);align-items:center;gap:4px;margin-bottom:12px;font-weight:500;display:inline-flex}.back .icon{width:16px;height:16px}.battery{font-family:var(--mono);align-items:center;gap:6px;font-size:12px;display:inline-flex}.cells{gap:2px;display:flex}.cells span{background:var(--line);border-radius:1.5px;width:5px;height:12px}.cells span.full{background:var(--ok)}.cells.low span.full{background:var(--fail)}.health{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:10px;margin-bottom:18px;padding:16px 18px;display:flex}.health-bar{background:var(--line);border-radius:5px;gap:3px;height:10px;display:flex;overflow:hidden}.legend{flex-wrap:wrap;gap:8px 22px;font-size:13px;display:flex}.legend div{align-items:center;gap:8px;display:flex}.legend b{font-size:18px;font-weight:600}.legend .dot{width:8px;height:8px;box-shadow:none}.split{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:18px;display:grid}.device-row{border-bottom:1px solid var(--line);color:var(--text);grid-template-columns:12px minmax(170px,1.5fr) minmax(120px,1fr) 130px 90px 100px minmax(150px,1.4fr);align-items:center;gap:14px;padding:12px 18px;text-decoration:none;display:grid}.device-row:last-child{border-bottom:0}a.device-row:hover{background:var(--panel2);text-decoration:none}@media (width>=1281px){a.device-row.selected{background:var(--selected);box-shadow:inset 3px 0 0 var(--accent)}}.device-row .activity li{align-items:center;min-width:0}.device-row .activity-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.device-row.head{background:var(--panel2);padding-top:10px;padding-bottom:10px}.device-row>*{min-width:0}.device-row .name{font-weight:600}.group-row{border-bottom:1px solid var(--line);color:var(--text);grid-template-columns:36px minmax(180px,1.3fr) minmax(180px,1.3fr) 100px;align-items:center;gap:16px;padding:12px 18px;text-decoration:none;display:grid}.group-row:last-child{border-bottom:0}a.group-row:hover{background:var(--panel2);text-decoration:none}@media (width>=1281px){a.group-row.selected{background:var(--selected);box-shadow:inset 3px 0 0 var(--accent)}}.group-row.head{background:var(--panel2);padding-top:10px;padding-bottom:10px}.group-row>*{min-width:0}.group-tile{background:var(--panel2);border:1px solid var(--line);width:36px;height:36px;color:var(--muted);border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}a.group-row:hover .group-tile{background:var(--panel)}.group-row .name{font-size:15px;font-weight:600}.group-row .name .muted{font-weight:400}.group-devices b{font-size:17px;font-weight:600}.policy-line{align-items:center;gap:4px;min-width:0;display:flex}.policy-line select{flex:1;min-width:0}.policy-summary{font-weight:400}.group-editor{flex-direction:column;gap:18px;display:flex}.group-editor form>:last-child{margin-bottom:0}.group-editor textarea{resize:vertical;font-weight:400}.editor-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.wifi-networks{flex-direction:column;gap:8px;font-weight:400;display:flex}.wifi-networks table{margin:0}.wifi-password{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.wifi-password input{flex:1;min-width:10rem}.wifi-add{flex-direction:column;align-items:stretch;gap:8px;display:flex}.wifi-add label.checkbox{margin-bottom:0}.wifi-add button{align-self:flex-start}.danger-zone{border-top:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:8px;padding-top:16px;display:flex}.danger-zone p{margin:0}.group-page{max-width:40rem}.new-group{background:var(--selected);border-bottom:1px solid var(--line);grid-template-columns:minmax(12rem,1fr) minmax(12rem,1fr);align-items:end;gap:12px 16px;padding:16px 18px;display:grid}.new-group label{flex-direction:column;gap:6px;font-weight:500;display:flex}.new-group .wide,.new-group .error{grid-column:1/-1}.new-group-actions{gap:8px;display:flex}.new-group .error{margin:0}.clip{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.inspector{position:sticky;top:84px}.inspector .panel-body{flex-direction:column;gap:16px;display:flex}.vitals{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.vital{background:var(--panel2);border:1px solid var(--line);border-radius:10px;min-width:0;padding:10px 12px}.vital .value{margin-top:2px;font-size:19px;font-weight:600}.task{border:1px solid color-mix(in srgb, var(--busy) 40%, transparent);background:color-mix(in srgb, var(--busy) 7%, transparent);border-radius:10px;padding:12px}.task.quiet{border-color:var(--line);background:var(--panel2)}.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.device-head{flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:18px;display:flex}.device-head h1{margin:0;font-size:26px}.chips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.device-head .actions{margin:0 0 0 auto}.vitals.wide{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.vitals.wide .vital{background:var(--panel);border-color:var(--border);padding:14px 16px}.vitals.wide .value{font-size:22px}.columns{grid-template-columns:minmax(0,1.7fr) minmax(320px,1fr);align-items:start;gap:18px;display:grid}.stack{flex-direction:column;gap:18px;min-width:0;display:flex}.stack>.notice,.stack>.error{margin:0}.compliance{margin:0;padding:0;list-style:none}.compliance li{align-items:baseline;gap:8px;padding:4px 0;display:flex}.compliance .icon{align-self:center;width:16px;height:16px}.restart-progress{justify-items:start;gap:4px;max-width:18rem;display:grid}.restart-progress .muted,.restart-progress .error{font-size:.9em}.remote-screen{background:var(--rail);border-radius:var(--radius);place-items:center;min-height:50vh;margin-bottom:12px;padding:16px;display:grid;position:relative}.remote-screen canvas{border-radius:8px;max-width:100%;max-height:calc(100vh - 240px);display:block}.remote-screen canvas.empty{visibility:hidden}.remote-screen canvas.controlling{cursor:crosshair;touch-action:none}.remote-screen canvas:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.remote-controls{margin-bottom:12px}.remote-keys{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.remote-dpad{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel2);grid-template-columns:repeat(3,40px);grid-template-areas:".up.""left center right"".down.";margin-right:8px;display:grid}.remote-dpad .dpad-up{grid-area:up}.remote-dpad .dpad-left{grid-area:left}.remote-dpad .dpad-center{grid-area:center}.remote-dpad .dpad-right{grid-area:right}.remote-dpad .dpad-down{grid-area:down}.remote-overlay{text-align:center;color:var(--rail-on);background:color-mix(in srgb, var(--rail) 70%, transparent);border-radius:var(--radius);place-items:center;padding:24px;display:grid;position:absolute;inset:0}.remote-overlay p{max-width:28rem;margin:0}.remote-overlay .remote-problem{color:var(--fail)}.connect-steps{text-align:left;width:min(30rem,100%)}.remote-overlay .connect-steps-head{justify-content:space-between;align-items:baseline;max-width:none;margin-bottom:12px;font-weight:600;display:flex}.connect-steps-timer,.connect-step-time{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--rail-text)}.connect-steps ol{margin:0;padding:0;list-style:none}.connect-steps li{grid-template-columns:20px 1fr auto;align-items:start;gap:10px;padding:5px 0;display:grid}.connect-steps li.todo{color:var(--rail-text)}.connect-step-text .muted{color:var(--rail-text);margin-top:2px;font-size:.9em;display:block}.connect-step-mark{border:2px solid var(--rail-text);border-radius:50%;place-items:center;width:20px;height:20px;margin-top:1px;display:grid}.connect-steps li.done .connect-step-mark{border-color:var(--ok);color:var(--ok)}.connect-step-mark svg{width:12px;height:12px}.connect-steps li.current .connect-step-mark{border-color:var(--rail-on)}.connect-steps li.current .connect-step-mark:after{content:"";background:var(--rail-on);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite connect-pulse}@keyframes connect-pulse{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.connect-steps li.current .connect-step-mark:after{animation:none}}.remote-overlay .connect-steps-hint{max-width:none;color:var(--wait);border:1px solid color-mix(in srgb, var(--wait) 50%, transparent);border-radius:8px;margin-top:12px;padding:8px 10px}.login{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:380px;padding:28px}.login-card .logo{margin-bottom:18px}.login-card h1{margin-bottom:20px}.login-card form{flex-direction:column;gap:16px;display:flex}.login-card label{flex-direction:column;gap:6px;font-weight:500;display:flex}dialog.confirm{background:var(--panel);width:min(28rem,100vw - 32px);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:20px 22px 18px;box-shadow:0 16px 48px #00000059}dialog.confirm::backdrop{background:color-mix(in srgb, var(--rail) 55%, transparent)}dialog.confirm h2{margin:0 0 10px}.confirm-message{color:var(--muted);margin-bottom:18px}.confirm-message>:last-child{margin-bottom:0}.confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}button.danger.solid{background:var(--fail);border-color:var(--fail);color:var(--panel)}button.danger.solid:hover:not(:disabled){background:color-mix(in srgb, var(--fail) 85%, var(--text))}@media (width<=1280px){.split{grid-template-columns:1fr}.inspector{display:none}}@media (width<=1100px){.columns{grid-template-columns:1fr}.device-row{grid-template-columns:12px minmax(160px,1.5fr) minmax(110px,1fr) 130px 90px minmax(140px,1.3fr)}.device-row .seen{display:none}}@media (width<=760px){.rail{display:none}.topbar{gap:4px;min-height:56px;padding:0 12px 0 16px}.topbar .brand,.topbar .phone-only{display:flex}.help-banner{flex-wrap:wrap}.help-banner-text{flex-basis:calc(100% - 80px)}.wide-only{display:none}.topbar .brand{margin-right:auto}.page{padding:16px 16px 96px}h1{font-size:21px}table:has(thead){background:0 0;border:0;border-radius:0;display:block;overflow:visible}table:has(thead) thead{display:none}table:has(thead) tbody{gap:10px;display:grid}table:has(thead) tr{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;padding:14px 16px;display:grid}table:has(thead) td{overflow-wrap:anywhere;border:0;min-width:0;padding:0}table:has(thead) tbody tr:hover td{background:0 0}table:has(thead) td:first-child{grid-column:1/-1;font-weight:600}table:has(thead) td:first-child .muted{font-weight:400}table:has(thead) td[data-label]:before{content:attr(data-label);font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:4px;display:block}table:has(thead) td.full{grid-column:1/-1}table:has(thead) td.row-actions{border-top:1px solid var(--line);text-align:left;flex-wrap:wrap;grid-column:1/-1;gap:8px;padding-top:12px;display:flex}table:has(thead) td.row-actions button+button{margin-left:0}table:has(thead) td:empty{display:none}.panel table:has(thead) tbody{gap:0}.panel table:has(thead) tr{border:0;border-bottom:1px solid var(--line);border-radius:0}.panel table:has(thead) tr:last-child{border-bottom:0}.legend{gap:6px 16px}.device-row.head,.group-row.head{display:none}.group-row{grid-template-columns:36px minmax(0,1fr) auto;grid-template-areas:"tile name devices"".policy policy";row-gap:6px;padding:14px 16px}.group-tile{grid-area:tile;align-self:start}.group-name{grid-area:name}.group-policy{grid-area:policy}.group-devices{text-align:right;grid-area:devices;align-self:start}.new-group{grid-template-columns:1fr}.device-row{grid-template-columns:12px minmax(0,1fr) auto;grid-template-areas:"dot device status"".group group"".activity activity";row-gap:6px;padding:14px 16px}.device-row .dot{grid-area:dot;align-self:start;margin-top:6px}.device-row .device{grid-area:device}.device-row .status{text-align:right;grid-area:status}.device-row .group{grid-area:group}.device-row .activity-cell{grid-area:activity}.device-row .activity-cell.empty,.device-row .power,.device-row .seen{display:none}.device-head .actions{grid-template-columns:1fr 1fr;width:100%;margin:0;display:grid}.device-head .actions .danger:last-child{grid-column:span 2}.vitals.wide{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}dl{grid-template-columns:1fr;gap:2px}dd{margin-bottom:10px}.bottom-bar{background:var(--rail);z-index:10;grid-template-columns:repeat(5,1fr);height:64px;display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-bar a{justify-content:center}.bottom-bar a.active{color:var(--rail-on)}.bottom-bar a.active .icon{color:var(--accent)}}
