.vtraj-login,.vtraj-login *{box-sizing:border-box}.vtraj-login{--vtraj-navy:#0c1d31;--vtraj-gold:#f1b650;--vtraj-muted:#64748b;color:#0c1d31;background:#f7f8fa;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);min-height:100dvh;font-family:Inter,Noto Sans Arabic,Segoe UI,Arial,sans-serif;font-size:14px;line-height:1.5;display:grid}.vtraj-login[lang=ar]{font-family:Noto Sans Arabic,Tahoma,Segoe UI,Arial,sans-serif}.vtraj-login button,.vtraj-login input{font:inherit}.vtraj-login__hero{isolation:isolate;color:#f5eee5;background:radial-gradient(at 25% 14%,#294463 0%,#0c1d31 48%,#071421 88%);flex-direction:column;min-width:0;min-height:100dvh;padding:48px clamp(32px,5vw,78px);display:flex;position:relative;overflow:hidden}.vtraj-login__hero:before{content:"";z-index:-1;bottom:-535px;border:1px solid #f1b65052;border-radius:50%;width:780px;height:780px;position:absolute;inset-inline-start:-310px;transform:rotate(30deg)}.vtraj-login__hero:after{content:"";z-index:-1;inset-inline-end:-370px;border-top:2px solid #c28a428c;border-radius:50%;width:810px;height:330px;position:absolute;top:24%;transform:rotate(-23deg)}.vtraj-login__wordmark{object-fit:contain;width:min(240px,100%);height:auto;display:block}.vtraj-login__hero-content{max-width:495px;margin-block:auto;padding-block:42px}.vtraj-login__gold-line{background:var(--vtraj-gold);width:58px;height:3px;margin-bottom:29px}.vtraj-login__hero-content h1{color:#fff;letter-spacing:-.035em;max-width:430px;margin:0 0 20px;font-size:clamp(38px,4vw,55px);font-weight:760;line-height:1.1}.vtraj-login[lang=ar] .vtraj-login__hero-content h1{letter-spacing:0}.vtraj-login__hero-content p{color:#b8c9d8;max-width:370px;margin:0;font-size:17px;line-height:1.7}.vtraj-login__hero-footer{color:#91a7ba;letter-spacing:.04em;margin:0;font-size:12px}.vtraj-login__right{background:#f7f8fa;flex-direction:column;min-width:0;padding:48px clamp(22px,5vw,85px);display:flex}.vtraj-login__topbar{justify-content:flex-end;display:flex}.vtraj-login__language{color:#0c1d31;cursor:pointer;background:#fff;border:1px solid #d9e1e9;border-radius:10px;align-items:center;gap:9px;min-height:38px;padding:8px 13px;display:inline-flex}.vtraj-login__language:hover{border-color:var(--vtraj-gold)}.vtraj-login__form{flex-direction:column;width:min(100%,425px);margin:auto;padding-block:30px;display:flex}.vtraj-login__emblem{object-fit:contain;width:78px;height:78px;margin-bottom:28px;display:block}.vtraj-login__form h2{letter-spacing:-.03em;color:var(--vtraj-navy);margin:0 0 10px;font-size:clamp(26px,2.6vw,33px);font-weight:790;line-height:1.3}.vtraj-login[lang=ar] .vtraj-login__form h2{letter-spacing:0}.vtraj-login__subtitle{color:var(--vtraj-muted);margin:0 0 32px;font-size:14px}.vtraj-login__label{color:#162b43;margin-bottom:8px;font-size:12px;font-weight:670;display:block}.vtraj-login__input{color:#0c1d31;text-align:start;background:#fff;border:1px solid #d9e1e9;border-radius:11px;outline:none;width:100%;min-width:0;height:50px;margin-bottom:19px;padding:12px 15px}.vtraj-login__input::placeholder{color:#96a3b2}.vtraj-login__input:focus{border-color:#bd913f;box-shadow:0 0 0 3px #f1b65030}.vtraj-login__status:empty{display:none}.vtraj-login__success,.vtraj-login__error{border:1px solid;border-radius:9px;margin:2px 0 14px;padding:11px 12px;font-size:12px}.vtraj-login__success{color:#167357;background:#ecf8f2;border-color:#b9dfd0}.vtraj-login__error{color:#9a2835;background:#fff0f2;border-color:#f3ccd2}.vtraj-login__submit{background:var(--vtraj-navy);color:#f7d58b;cursor:pointer;border:0;border-radius:10px;width:100%;min-height:49px;margin-top:12px;padding:10px 18px;font-weight:750}.vtraj-login__submit:hover:not(:disabled){background:#172f4b}.vtraj-login__submit:disabled{cursor:wait;opacity:.64}.vtraj-login__submit:focus-visible,.vtraj-login__language:focus-visible{outline-offset:3px;outline:3px solid #f1b650bf}.vtraj-login__note{text-align:center;color:#7a8b9a;margin:17px 0 0;font-size:11px}@media (width<=920px){.vtraj-login{grid-template-columns:minmax(0,1fr)}.vtraj-login__hero{min-height:260px;padding:26px 35px}.vtraj-login__hero-content{margin:24px 0 0;padding:0}.vtraj-login__hero-content h1{margin:0 0 12px;font-size:30px}.vtraj-login__hero-content p,.vtraj-login__hero-footer{display:none}.vtraj-login__wordmark{width:160px}.vtraj-login__right{min-height:520px;padding:28px 22px 45px}.vtraj-login__form{padding-block:15px}}@media (width<=480px){.vtraj-login__hero{min-height:200px;padding:23px 22px}.vtraj-login__hero-content h1{font-size:25px}.vtraj-login__emblem{width:64px;height:64px;margin-bottom:14px}.vtraj-login__subtitle{margin-bottom:24px}}@media (prefers-reduced-motion:reduce){.vtraj-login *{transition:none!important}}.vtraj-console{--vtraj-navy:#0c1d31;--vtraj-gold:#f1b650;--vtraj-pale:#f5f7fa;--vtraj-soft-text:#a9bbcc;background:var(--app);min-height:100vh;color:var(--text);grid-template-columns:232px minmax(0,1fr);font-family:Inter,Noto Sans Arabic,Segoe UI,system-ui,sans-serif}.vtraj-console[lang=ar]{font-family:Noto Sans Arabic,Tahoma,Segoe UI,sans-serif}.vtraj-console .sidebar{background:var(--vtraj-navy);color:#eff5fa;border:0;gap:0;padding:32px 18px 20px;box-shadow:2px 0 25px #0c1d3112}.vtraj-sidebar-brand{padding:0 4px 44px!important}.vtraj-sidebar-logo{width:162px;max-width:100%;height:auto;display:block}.vtraj-sidebar-subtitle{color:var(--vtraj-gold);letter-spacing:.18em;margin-top:14px;font-size:10px;font-weight:650;display:block}.vtraj-nav-section{color:#7994af;letter-spacing:.13em;padding:0 12px 15px;font-size:10px;font-weight:760}.vtraj-coming-title{margin-top:30px}.vtraj-console .nav-item{color:#b7c7d8;border-radius:10px;gap:12px;min-height:43px;padding:10px 13px;font-size:13px;font-weight:530;text-decoration:none}.vtraj-console .nav-item:hover{color:#fff;background:#7aa3cb24}.vtraj-console .nav-item.active{color:var(--vtraj-gold);background:#25405f;font-weight:680}.vtraj-console .nav-item .ico{opacity:.92;width:17px;height:17px}.vtraj-planned-nav{padding:0 5px}.vtraj-planned-item{color:#8ca1b7;cursor:default;align-items:center;gap:10px;padding:10px 7px;font-size:12px;display:flex}.vtraj-planned-item>span:first-child{text-align:center;width:18px;font-size:18px}.vtraj-soon{opacity:.7;margin-inline-start:auto;font-size:9px}.vtraj-console .sidebar-foot{border-color:#ffffff24;margin-top:auto;padding-top:18px}.vtraj-console .sidebar-user{padding:0 12px 10px}.vtraj-sidebar-user-caption{color:#89a2bb;letter-spacing:.1em;font-size:10px;font-weight:650}.vtraj-console .sidebar-user .who{color:#f7f8fc;margin-top:5px}.vtraj-console .vtraj-sidebar-action{color:#b7c7d8;justify-content:flex-start;gap:11px;padding:9px 12px;font-size:13px}.vtraj-console .vtraj-sidebar-action:hover{color:#fff;background:#263d54}.vtraj-console .vtraj-sidebar-action .ico{width:17px;height:17px}.vtraj-main{min-width:0}.vtraj-topbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:5;justify-content:space-between;align-items:center;gap:16px;min-height:69px;padding:0 clamp(16px,3.2vw,42px);display:flex;position:sticky;top:0}.vtraj-breadcrumb{color:var(--muted);align-items:center;gap:14px;font-size:12px;display:flex}.vtraj-breadcrumb strong{color:var(--text);font-weight:650}.vtraj-topbar-tools{align-items:center;gap:10px;display:flex}.vtraj-language-switch{border:1px solid var(--border);background:var(--surface);min-height:35px;color:var(--text);font:inherit;cursor:pointer;border-radius:9px;align-items:center;gap:8px;padding:7px 11px;font-size:12px;display:inline-flex}.vtraj-language-switch:hover{border-color:#cda052}.vtraj-language-switch:focus-visible,.vtraj-console .nav-item:focus-visible{outline-offset:2px;outline:3px solid #f1b650b3}.vtraj-demo-pill{color:#88621f;background:#fff3d4;border:1px solid #efd39d;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:750}.vtraj-console .vtraj-content{width:100%;max-width:1600px;padding:clamp(22px,3vw,42px)}.vtraj-overview{max-width:1320px}.vtraj-overview-heading{margin-bottom:24px}.vtraj-eyebrow{letter-spacing:.17em;color:#ae762a;margin-bottom:12px;font-size:11px;font-weight:760;display:block}.vtraj-overview-heading h1{letter-spacing:-.035em;color:var(--text);margin:0 0 7px;font-size:clamp(28px,2.8vw,36px);font-weight:750;line-height:1.18}.vtraj-console[lang=ar] .vtraj-overview-heading h1{letter-spacing:0}.vtraj-overview-heading p{color:var(--muted);margin:0;font-size:13px}.vtraj-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 18px;display:grid}.vtraj-metric{background:var(--surface);border:1px solid var(--border);min-height:145px;box-shadow:var(--shadow-card);border-radius:13px;flex-direction:column;padding:22px 23px;display:flex}.vtraj-metric-label{color:var(--muted);font-size:12px}.vtraj-metric strong{color:var(--text);letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin:11px 0 8px;font-size:32px;font-weight:760;line-height:1.2}.vtraj-metric-detail{color:#a47632;align-items:center;gap:8px;margin-top:auto;font-size:11px;display:inline-flex}.vtraj-status-dot{border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.vtraj-green{background:var(--online)}.vtraj-gold-dot{background:var(--warn)}.vtraj-grey{background:var(--offline)}.vtraj-console .panel.vtraj-health-panel,.vtraj-console .panel.vtraj-panel{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-card);border-radius:13px}.vtraj-health-panel{margin-bottom:18px;padding:20px 23px 22px}.vtraj-card-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.vtraj-card-heading h2{color:var(--text);margin:0;font-size:15px;font-weight:730}.vtraj-card-heading p{color:var(--muted);margin:7px 0 0;font-size:11px}.vtraj-health-labels{color:var(--muted);flex-wrap:wrap;gap:20px;margin:20px 0 11px;font-size:11px;display:flex}.vtraj-health-labels>span{align-items:center;gap:6px;display:inline-flex}.vtraj-health-bar{background:var(--surface-2);border-radius:20px;height:10px;display:flex;overflow:hidden}.vtraj-health-bar>span{height:100%}.vtraj-overview-grid{grid-template-columns:minmax(0,1.55fr) minmax(270px,1fr);align-items:start;gap:18px;display:grid}.vtraj-overview-side{flex-direction:column;gap:18px;min-width:0;display:flex}.vtraj-console .vtraj-panel{min-width:0;overflow:hidden}.vtraj-console .vtraj-panel .panel-head{border-bottom:1px solid var(--line-soft);min-height:60px;padding:18px 21px}.vtraj-console .vtraj-text-link{color:#ad7932;white-space:nowrap;background:0 0;border:0;padding:4px;text-decoration:none}.vtraj-console .vtraj-text-link:hover{color:var(--text)}.vtraj-console .feed-item{border-color:var(--line-soft);padding:16px 21px}.vtraj-feed{cursor:pointer}.vtraj-feed:hover{background:var(--hairline)}.vtraj-console .feed-ic{color:#9b6b2b;background:#f8ead0}[data-theme=dark] .vtraj-console .feed-ic{color:#f1b650;background:#3a3022}.vtraj-console .feed-tm,.vtraj-console .att-reason{margin-inline-start:auto;padding-inline-start:8px;margin-left:0;padding-left:0}.vtraj-console .empty{padding:25px 22px}.vtraj-console .empty p{color:var(--muted);margin:7px 0 0;line-height:1.6}.vtraj-roadmap-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px;display:grid}.vtraj-roadmap-card{border:1px dashed var(--border-hover);background:var(--surface);border-radius:12px;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px 21px;display:flex}.vtraj-roadmap-card h3{margin:6px 0 7px;font-size:13px;font-weight:700}.vtraj-roadmap-card p{color:var(--muted);margin:0;font-size:11px;line-height:1.6}.vtraj-roadmap-icon{color:#c99544;font-size:20px}.vtraj-roadmap-status{color:#a47632;white-space:nowrap;margin-top:4px;font-size:10px}.vtraj-demo-banner{color:#855e26;background:#fff3d4;border:1px solid #edd29c;border-radius:9px;margin-bottom:20px;padding:12px 16px;font-size:12px;font-weight:660}.vtraj-demo-rows{padding:5px 0}.vtraj-demo-row{border-bottom:1px solid var(--line-soft);align-items:center;gap:12px;padding:17px 22px;font-size:12px;display:flex}.vtraj-demo-row:last-child{border-bottom:0}.vtraj-demo-row>span:nth-child(2){flex-direction:column;gap:4px;display:flex}.vtraj-demo-row small{color:var(--muted)}.vtraj-demo-row .feed-tm{margin-inline-start:auto}.vtraj-console[dir=rtl] .vtraj-metric strong{letter-spacing:0}.vtraj-console[dir=rtl] .sidebar{border-right:0}@media (width<=1130px){.vtraj-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=860px){.vtraj-console{grid-template-columns:minmax(0,1fr)}.vtraj-console .sidebar{width:245px;padding-top:24px}.vtraj-console[dir=rtl] .sidebar{left:auto;right:0;transform:translate(100%)}.vtraj-console[dir=rtl] .sidebar.open{transform:none}.vtraj-topbar{padding:0 18px}.vtraj-menu-btn{justify-content:center;align-items:center;display:inline-flex!important}.vtraj-console .vtraj-content{padding:22px 16px}}@media (width<=680px){.vtraj-metric-grid{gap:10px}.vtraj-metric{min-height:120px;padding:15px}.vtraj-metric strong{font-size:27px}.vtraj-overview-grid,.vtraj-roadmap-grid{grid-template-columns:1fr}.vtraj-overview-heading h1{font-size:28px}.vtraj-health-labels{gap:12px}.vtraj-breadcrumb{gap:7px;font-size:11px}.vtraj-roadmap-card{flex-direction:column}}@media (prefers-reduced-motion:reduce){.vtraj-console *{transition:none!important}}.vtraj-preview-insights{grid-template-columns:minmax(0,1.55fr) minmax(260px,1fr);gap:18px;margin-bottom:18px;display:grid}.vtraj-preview-insights .vtraj-panel{min-height:265px}.vtraj-demo-tag{color:#a2702f;background:#fff4df;border:1px solid #f4dbaf;border-radius:100px;padding:4px 8px;font-size:9px;font-weight:780}[data-theme=dark] .vtraj-demo-tag{color:#f1b650;background:#2f271b;border-color:#5c4425}.vtraj-preview-chart{justify-content:space-between;align-items:flex-end;gap:15px;height:180px;padding:24px 25px 10px;display:flex}.vtraj-preview-bar-col{min-width:0;height:100%;color:var(--muted);flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:9px;font-size:10px;display:flex}.vtraj-preview-bar{border-radius:8px 8px 4px 4px;width:100%;max-width:53px;min-height:6px}.vtraj-preview-bar.gold{background:linear-gradient(#f7cc78,#bf8a38)}.vtraj-preview-bar.navy{background:linear-gradient(#567190,#233b58)}.vtraj-preview-policy-rows{padding:6px 24px}.vtraj-preview-policy-rows>div{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:10px;min-height:61px;font-size:12px;display:flex}.vtraj-preview-policy-rows>div:last-child{border:0}.vtraj-preview-policy-rows strong{font-size:11px}.vtraj-policy-blocked{color:#c2403f}.vtraj-policy-allowed{color:#158459}@media (width<=860px){.vtraj-preview-insights{grid-template-columns:1fr}}.vtraj-console .sidebar{box-sizing:border-box;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#b4cae066 transparent;height:100dvh;min-height:0;max-height:100dvh;overflow:hidden auto}.vtraj-console .sidebar::-webkit-scrollbar{width:6px}.vtraj-console .sidebar::-webkit-scrollbar-thumb{background:#b4cae059;border-radius:12px}.vtraj-console .sidebar-foot{flex-shrink:0}.vtraj-console .vtraj-planned-item{min-width:0}.vtraj-console .vtraj-nav-section{flex-shrink:0}.vtraj-console .vtraj-roadmap-link{text-align:start;width:100%;color:var(--text);cursor:pointer;font:inherit}.vtraj-console .vtraj-roadmap-link:hover{border-color:var(--vtraj-gold)}.vtraj-usage-landing{max-width:1150px}.vtraj-usage-landing-head{margin-bottom:19px}.vtraj-usage-landing-head h1{margin:0 0 7px;font-size:clamp(24px,2.6vw,34px)}.vtraj-usage-landing-head p{color:var(--muted);margin:0;line-height:1.6}.vtraj-usage-landing-toolbar{flex-wrap:wrap;align-items:end;gap:16px;margin-bottom:18px;display:flex}.vtraj-usage-landing-toolbar label{flex-direction:column;flex:1;gap:7px;min-width:220px;max-width:440px;font-size:12px;font-weight:600;display:flex}.vtraj-usage-landing-toolbar select{background:var(--surface);min-height:42px;color:var(--text);border:1px solid var(--border);font:inherit;border-radius:10px;padding:8px 11px}.vtraj-usage-landing-toolbar .btn{align-items:center;min-height:42px;text-decoration:none;display:inline-flex}.vtraj-usage-landing-note{color:var(--muted);margin:0 0 18px;font-size:12px}.vtraj-usage-landing-panel{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-card);border-radius:14px;min-width:0;overflow:hidden}.vtraj-usage-landing-empty{color:var(--muted);padding:22px}.vtraj-console .sidebar{box-sizing:border-box;height:100dvh;max-height:100dvh;padding:23px 16px 16px;overflow:hidden}.vtraj-console .vtraj-sidebar-brand{padding:0 4px clamp(16px,3.5vh,28px)!important}.vtraj-console .vtraj-sidebar-logo{width:152px;max-width:100%}.vtraj-console .vtraj-nav-section{padding-bottom:10px}.vtraj-console .nav{gap:3px}.vtraj-console .nav-item{min-height:42px;padding:8px 12px}@media (height<=700px){.vtraj-console .sidebar{padding:12px 13px}.vtraj-console .vtraj-sidebar-brand{padding-bottom:12px!important}.vtraj-console .vtraj-sidebar-logo{width:119px}.vtraj-console .vtraj-sidebar-subtitle{margin-top:7px;font-size:9px}.vtraj-console .vtraj-nav-section{padding-bottom:6px}.vtraj-console .nav{gap:1px}.vtraj-console .nav-item{min-height:34px;padding:5px 9px;font-size:12px}}@media (height<=480px){.vtraj-console .sidebar{overflow-y:auto}}.vtraj-fleet-page{flex-direction:column;gap:12px;display:flex}.vtraj-fleet-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.vtraj-fleet-head h1{margin:0 0 6px;font-size:26px}.vtraj-fleet-head p{margin:0}.vtraj-fleet-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.vtraj-fleet-autorefresh{align-items:center;gap:7px;font-size:13px;display:flex}.vtraj-fleet-note{margin:0 0 6px;font-size:12px}.vtraj-fleet-filters{flex-wrap:wrap;gap:10px;display:flex}.vtraj-fleet-filters input,.vtraj-fleet-filters select{border:1px solid var(--line,#d8dee7);background:var(--panel,#fff);color:inherit;border-radius:9px;min-width:165px;padding:10px 12px}.vtraj-fleet-filters input{flex:1;min-width:230px}.vtraj-fleet-layout{grid-template-columns:minmax(0,1fr) 310px;gap:14px;min-height:490px;display:grid}.vtraj-fleet-map-wrap{border:1px solid var(--line,#d8dee7);background:var(--panel,#fff);border-radius:12px;min-width:0;overflow:hidden}.vtraj-fleet-map{z-index:0;width:100%;height:500px;min-height:420px}.vtraj-fleet-legend{flex-wrap:wrap;gap:10px 14px;padding:10px 14px;font-size:11px;display:flex}.vtraj-fleet-legend span,.vtraj-fleet-item-state{align-items:center;gap:6px;display:flex}.vtraj-fleet-legend i,.vtraj-fleet-item-state i{border-radius:100%;flex-shrink:0;width:9px;height:9px}.vtraj-fleet-list{border:1px solid var(--line,#d8dee7);background:var(--panel,#fff);border-radius:12px;flex-direction:column;min-width:0;padding:14px;display:flex}.vtraj-fleet-list h2{margin:0 0 12px;font-size:16px}.vtraj-fleet-scroll{flex-direction:column;flex:1;gap:5px;max-height:340px;display:flex;overflow:auto}.vtraj-fleet-item{cursor:pointer;text-align:start;color:inherit;background:0 0;border:1px solid #0000;border-radius:9px;flex-direction:column;gap:4px;padding:10px;display:flex}.vtraj-fleet-item:hover{background:#6e82a014}.vtraj-fleet-item.active{border-color:var(--accent,#c09a48);background:#c19b4a1a}.vtraj-fleet-item-name{overflow-wrap:anywhere;font-size:13px;font-weight:600}.vtraj-fleet-item-sub{opacity:.7;text-align:start;font-size:11px}.vtraj-fleet-item-state{opacity:.85;font-size:11px}.vtraj-fleet-selected{background:#6e82a012;border-radius:10px;margin-top:14px;padding:12px;font-size:13px}.vtraj-fleet-selected h3{overflow-wrap:anywhere;margin:0 0 10px;font-size:15px}.vtraj-fleet-selected p{overflow-wrap:anywhere;margin:6px 0}.vtraj-fleet-selected button{margin-top:10px}@media (width<=950px){.vtraj-fleet-layout{grid-template-columns:1fr}.vtraj-fleet-map{height:430px}.vtraj-fleet-scroll{max-height:300px}}.vtraj-location-filters{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.vtraj-location-dates{flex-wrap:wrap;gap:16px;margin:12px 0;display:flex}.vtraj-location-dates label{flex-direction:column;gap:5px;min-width:180px;font-size:13px;display:flex}.vtraj-location-dates input{background:var(--panel,#fff);max-width:100%;color:inherit;border:1px solid var(--line);border-radius:8px;padding:9px}.vtraj-location-context{margin:10px 0;font-size:12px}.vtraj-location-summary{flex-wrap:wrap;align-items:center;gap:12px 20px;margin:14px 0;font-size:13px;display:flex}.vtraj-location-more{border:1px solid var(--line);border-radius:10px;margin:14px 0;padding:12px 16px}.vtraj-location-more p{margin:0 0 10px}.vtraj-location-panel .loc-map{min-height:360px}@media (width<=600px){.vtraj-location-summary{flex-direction:column;align-items:flex-start}}.vtraj-usage{color:var(--text,inherit);padding:18px 18px 12px}.vtraj-usage-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.vtraj-usage-header h2{margin:0 0 5px;font-size:1.15rem}.vtraj-usage-header p{color:var(--muted,#72839b);margin:0;font-size:.85rem}.vtraj-usage-filters{flex-wrap:wrap;gap:6px;margin:20px 0 12px;display:flex}.vtraj-usage-filters button{border:1px solid var(--line,#9ca9b5);color:inherit;cursor:pointer;background:0 0;border-radius:9px;padding:8px 13px}.vtraj-usage-filters button.is-active{color:#f1b650;background:#0c1d31;border-color:#f1b650}.vtraj-usage-dates{flex-wrap:wrap;gap:14px;margin-bottom:12px;display:flex}.vtraj-usage-dates label{align-items:center;gap:7px;font-size:.85rem;display:flex}.vtraj-usage-dates input{border:1px solid #9baac0;border-radius:7px;max-width:170px;padding:7px}.vtraj-usage-metadata{color:var(--muted,#718096);flex-wrap:wrap;gap:20px;margin-bottom:14px;font-size:.79rem;display:flex}.vtraj-usage-summary{background:#ae955714;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.vtraj-usage-summary div{flex-direction:column;gap:4px;display:flex}.vtraj-usage-summary strong{font-size:1.5rem}.vtraj-usage h3{margin:22px 0 12px;font-size:.96rem}.vtraj-usage-chart{flex-direction:column;gap:10px;display:flex}.vtraj-usage-day{grid-template-columns:94px 1fr 100px;align-items:center;gap:10px;font-size:.78rem;display:grid}.vtraj-usage-track{background:#6f819824;border-radius:99px;height:9px;overflow:hidden}.vtraj-usage-track>div{background:linear-gradient(90deg,#b17b30,#f1b650);border-radius:99px;height:100%}.vtraj-usage-table{border-collapse:collapse;width:100%;font-size:.85rem}.vtraj-usage-table th{color:var(--muted,#718096);text-align:start;font-weight:600}.vtraj-usage-table th,.vtraj-usage-table td{border-bottom:1px solid #7e899a29;padding:9px 7px}.vtraj-usage-table th:last-child,.vtraj-usage-table td:last-child{text-align:end;white-space:nowrap}.vtraj-usage-table td:first-child{overflow-wrap:anywhere}.vtraj-usage-error,.vtraj-usage-warning{border:1px solid #e7b953;border-radius:9px;padding:13px}.vtraj-usage-privacy{color:var(--muted,#718096);margin-top:20px;font-size:.75rem}@media (width<=600px){.vtraj-usage{padding:12px 0}.vtraj-usage-day{grid-template-columns:82px 1fr 80px;gap:6px}.vtraj-usage-summary strong{font-size:1.2rem}}.vtraj-control{color:var(--text,inherit);flex-direction:column;gap:13px;padding:20px;display:flex}.vtraj-control h2{margin:0;font-size:1.22rem}.vtraj-control h3{margin:0;font-size:.98rem}.vtraj-control-header p,.vtraj-control-empty{color:var(--muted,#718096);margin:4px 0 0;font-size:.9rem}.vtraj-control-label{font-size:.83rem;font-weight:700}.vtraj-control-notice,.vtraj-control-warning{color:var(--muted,#64748b);font-size:.81rem;line-height:1.5}.vtraj-control-notice{border:1px solid var(--line,#dce3ee);border-radius:10px;padding:12px}.vtraj-control-presets{flex-wrap:wrap;gap:8px;display:flex}.vtraj-control-presets button,.vtraj-control-history-head button{border:1px solid var(--line,#dce3ee);color:inherit;cursor:pointer;background:0 0;border-radius:9px;padding:8px 12px}.vtraj-control-presets button.selected{color:#f1b650;background:#0c1d31;border-color:#d6a44d}.vtraj-control-input{border:1px solid var(--line,#afbac8);background:var(--surface,#fff);color:inherit;border-radius:10px;max-width:100%;padding:11px 12px;font-family:monospace}.vtraj-control-actions{flex-wrap:wrap;gap:10px;display:flex}.vtraj-control-actions button,.vtraj-control-confirm button{border:1px solid var(--line,#dce3ee);cursor:pointer;border-radius:10px;padding:11px 16px;font-weight:700}.vtraj-control-block{color:#fff;background:#7a2024}.vtraj-control-allow{color:#f1b650;background:#0c1d31}.vtraj-control button:disabled{opacity:.45;cursor:not-allowed}.vtraj-control-confirm{background:#f1b6501c;border:1px solid #b9872e;border-radius:12px;padding:14px}.vtraj-control-confirm p{font-size:.83rem}.vtraj-control-confirm button{margin-inline-end:8px}.vtraj-control-ok{color:#135630;background:#e6f7ed;border-radius:9px;padding:10px;font-size:.85rem}.vtraj-control-error{color:#9b2323;background:#fdeaea;border-radius:9px;padding:10px;font-size:.85rem}.vtraj-control-warning{border-top:1px solid var(--line,#dce3ee);padding-top:10px}.vtraj-control-history-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.vtraj-control-history{flex-direction:column;display:flex}.vtraj-control-history-row{border-bottom:1px solid var(--line,#dce3ee);grid-template-columns:minmax(120px,1.2fr) minmax(85px,.55fr) minmax(130px,1fr);align-items:center;gap:12px;padding:10px 0;font-size:.8rem;display:grid}.vtraj-control-pkg{overflow-wrap:anywhere;text-align:start}.vtraj-control-status{font-weight:700}.vtraj-control-status.status-done{color:#19935a}.vtraj-control-status.status-failed,.vtraj-control-status.status-unsupported{color:#cf3f3f}.vtraj-control-detail{color:var(--muted,#64748b);overflow-wrap:anywhere}@media (width<=650px){.vtraj-control{padding:12px}.vtraj-control-history-row{grid-template-columns:1fr;gap:5px}}.vtraj-console .vtraj-policy-nav{background:var(--surface);border:1px solid var(--border);border-radius:13px;margin-bottom:22px;padding:15px 17px 13px}.vtraj-console .vtraj-policy-tabs{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.vtraj-console .vtraj-policy-tab{color:var(--muted);border:1px solid #0000;border-radius:9px;align-items:center;gap:9px;padding:11px 14px;font-size:13px;font-weight:650;line-height:1.4;text-decoration:none;display:inline-flex}.vtraj-console .vtraj-policy-tab:hover{background:var(--surface-2);color:var(--text)}.vtraj-console .vtraj-policy-tab.active{color:#f1b650;background:#263e58;border-color:#45617a}.vtraj-console .vtraj-policy-tab:focus-visible{outline-offset:2px;outline:3px solid #f1b650b3}.vtraj-console .vtraj-policy-explainer{color:var(--muted);margin:10px 0 0;font-size:12px;line-height:1.75}.vtraj-console[dir=rtl] .vtraj-policy-tabs{direction:rtl}@media (width<=650px){.vtraj-console .vtraj-policy-tabs{flex-direction:column;align-items:stretch}.vtraj-console .vtraj-policy-tab{width:100%}}.vtraj-group-policy-page{gap:18px;max-width:1220px;display:grid}.vtraj-group-policy-head h1{margin:8px 0;font-size:clamp(22px,2.4vw,32px)}.vtraj-group-policy-head p,.vtraj-group-policy-note,.vtraj-group-policy-warning{color:var(--muted);font-size:13px;line-height:1.6}.vtraj-group-policy-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-card);border-radius:16px;min-width:0;padding:22px}.vtraj-group-policy-card h2{margin:0 0 17px;font-size:18px}.vtraj-group-policy-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.vtraj-group-policy-fields label{gap:7px;font-size:13px;font-weight:600;display:grid}.vtraj-group-policy-fields select{width:100%;min-height:44px;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:8px 12px}.vtraj-group-policy-warning{border-inline-start:3px solid var(--vtraj-gold);margin:18px 0;padding-inline-start:12px}.vtraj-group-policy-confirm{cursor:pointer;align-items:start;gap:10px;font-size:13px;line-height:1.6;display:flex}.vtraj-group-policy-confirm input{flex-shrink:0;margin-top:4px}.vtraj-group-policy-actions{flex-wrap:wrap;align-items:center;gap:9px;margin-top:16px;display:flex}.vtraj-group-policy-actions .btn{text-decoration:none}.vtraj-group-policy-message{border-radius:10px;padding:12px 15px;font-size:13px}.vtraj-group-policy-message.error{background:#b9434314;border:1px solid #b94343}.vtraj-group-policy-message.notice{background:#2e976a1a;border:1px solid #2e976a}.vtraj-group-policy-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:18px;display:grid}.vtraj-group-policy-metrics>div{background:var(--surface-secondary,var(--surface));border:1px solid var(--border);border-radius:12px;min-width:0;padding:16px}.vtraj-group-policy-metrics strong{margin-bottom:6px;font-size:24px;display:block}.vtraj-group-policy-metrics span{color:var(--muted);font-size:12px}.vtraj-group-policy-table-wrap{overflow-x:auto}.vtraj-group-policy-table{border-collapse:collapse;width:100%;min-width:650px;font-size:13px}.vtraj-group-policy-table th,.vtraj-group-policy-table td{text-align:start;border-bottom:1px solid var(--border);padding:12px 10px}.vtraj-group-policy-table th{color:var(--muted);font-size:12px}.vtraj-group-policy-table td small{color:var(--muted);margin-top:3px;display:block}.vtraj-group-policy-table a{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--vtraj-gold);text-decoration-color:var(--vtraj-gold)}.vtraj-group-policy-status{white-space:nowrap;background:#717d921f;border-radius:99px;padding:5px 9px;font-size:12px;display:inline-block}.vtraj-group-policy-status.synced{color:#23885a;background:#23885a21}.vtraj-group-policy-status.failed,.vtraj-group-policy-status.unsupported{color:#c24a43;background:#c24a431c}.vtraj-group-policy-status.applying,.vtraj-group-policy-status.outOfSync{color:#af791e;background:#cc8b251a}@media (width<=800px){.vtraj-group-policy-fields{grid-template-columns:1fr}.vtraj-group-policy-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=460px){.vtraj-group-policy-card{padding:15px}.vtraj-group-policy-metrics{grid-template-columns:1fr}}.vtraj-auto-policy{border-inline-start:3px solid #e1ae55}.vtraj-auto-policy-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.vtraj-auto-policy-heading h2{margin:0}.vtraj-auto-pill{background:#b8925324;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:700;display:inline-flex}.vtraj-auto-current{background:#b8925314;border-radius:10px;padding:10px 12px}.vtraj-auto-policy h3{margin-top:22px;font-size:16px}:root{--app:#f6f7f9;--surface:#fff;--surface-2:#f1f2f5;--border:#e7e9ee;--border-hover:#d6dae1;--line:#e7e9ee;--line-soft:#eef0f3;--hairline:#f4f5f7;--ink:#15181d;--text:#1b2230;--text-2:#384152;--secondary:#586073;--muted:#6b7686;--faint:#9aa3b0;--online:#1aa766;--offline:#b6bdc7;--warn:#d98a2b;--alert:#d64545;--danger:#c2403f;--panel:#fff;--panel-2:#f1f2f5;--signal:#15181d;--signal-ink:#fff;--signal-dim:#e7e9ee;--ok:#1aa766;--idle:#b6bdc7;--radius-sm:8px;--radius:12px;--radius-lg:16px;--radius-pill:999px;--radius-chip:999px;--on-ink:#fff;--ink-hover:#23272f;--danger-soft-bg:#fbe9e9;--danger-soft-border:#f0d4d4;--danger-soft-border-hover:#e9bcbc;--ring:#15181d14;--backdrop:#141e3747;--shadow-card:0 8px 22px -16px #141e374d;--shadow-pop:0 12px 32px -12px #141e3747;--font-sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-cond:var(--font-sans);--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}[data-theme=dark]{--app:#0f1115;--surface:#161922;--surface-2:#1e222c;--border:#272c37;--border-hover:#39404e;--line:#272c37;--line-soft:#21262f;--hairline:#1b1f28;--ink:#f2f4f8;--text:#e7ebf1;--text-2:#c4ccd7;--secondary:#9aa3b0;--muted:#8b95a3;--faint:#6c7480;--online:#2bb979;--offline:#4a5260;--warn:#e0973a;--alert:#e25757;--danger:#e57373;--panel:#161922;--panel-2:#1e222c;--signal:#f2f4f8;--signal-ink:#15181d;--signal-dim:#2a313d;--ok:#2bb979;--idle:#4a5260;--on-ink:#15181d;--ink-hover:#dfe3ea;--danger-soft-bg:#2a1b1e;--danger-soft-border:#45292d;--danger-soft-border-hover:#5a3338;--ring:#f2f4f824;--backdrop:#0009;--shadow-card:0 8px 22px -16px #000000b3;--shadow-pop:0 14px 34px -14px #000000b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body,.sidebar,.panel,.dev,.dev-row,.btn,.input,.sel,.filter-chip,.nav-item,.toast,.modal,.table th,.table td,.detail-rail .pri,.detail-rail .sec,.seg,.seg button,.toggle,.toggle button,.tabs button,.dv-search,.token-box,.vitals,.vital,.info-cell{transition:background-color .25s,border-color .25s,color .25s,box-shadow .25s}html,body,#root{height:100%;margin:0}body{font-family:var(--font-sans);color:var(--text);background:var(--app);font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.faint{color:var(--faint)}.label{letter-spacing:.05em;text-transform:uppercase;color:var(--faint);font-size:11px;font-weight:600}:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:6px}.btn{font-family:var(--font-sans);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;align-items:center;padding:8px 14px;font-size:13px;font-weight:500;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--border-hover)}.btn:disabled{opacity:.5;cursor:default}.btn-primary,.btn-dark{background:var(--ink);border-color:var(--ink);color:var(--on-ink);font-weight:600}.btn-primary:hover:not(:disabled),.btn-dark:hover:not(:disabled){background:var(--ink-hover);border-color:var(--ink-hover)}.btn-ghost{color:var(--secondary);background:0 0;border-color:#0000;padding:7px 9px}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.btn-danger{color:var(--danger);border-color:var(--danger-soft-border)}.btn-danger:hover:not(:disabled){background:var(--danger-soft-bg);border-color:var(--danger-soft-border-hover)}.btn-sm{padding:6px 10px;font-size:12px}.btn-block{justify-content:center;width:100%;padding:11px}.input{font-family:var(--font-sans);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;width:100%;padding:9px 12px;font-size:14px;transition:border-color .12s,box-shadow .12s}.input::placeholder{color:var(--faint)}.input:focus{border-color:var(--ink);box-shadow:0 0 0 3px var(--ring)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.panel-head{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.panel-title{letter-spacing:-.01em;color:var(--text);margin:0;font-size:16px;font-weight:600}.wordmark{letter-spacing:-.02em;align-items:center;gap:7px;font-size:16px;font-weight:700;display:inline-flex}.wordmark .bullet{background:var(--ink);border-radius:2px;flex:none;width:8px;height:8px}.wordmark .mdm{color:var(--ink)}.wordmark .esh{color:var(--faint)}.shell{grid-template-columns:196px 1fr;min-height:100%;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--line-soft);flex-direction:column;align-self:start;gap:4px;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0}.sidebar-brand{padding:4px 8px 16px}.nav{flex-direction:column;gap:2px;display:flex}.nav-item{border-radius:var(--radius-sm);color:var(--secondary);align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;font-weight:500;transition:background .12s,color .12s;display:flex}.nav-item:hover{background:var(--hairline);color:var(--text)}.nav-item.active{background:var(--surface-2);color:var(--ink);font-weight:600}.nav-item .ico{opacity:.75;color:currentColor;flex:none;width:16px;height:16px}.nav-item.active .ico{opacity:1}.sidebar-foot{border-top:1px solid var(--line-soft);flex-direction:column;gap:8px;margin-top:auto;padding-top:12px;display:flex}.sidebar-user{flex-direction:column;min-width:0;padding:0 10px;line-height:1.35;display:flex}.sidebar-user .who{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.main{flex-direction:column;min-width:0;display:flex}.content{width:100%;max-width:1240px;padding:24px 28px}.menu-btn,.rail-mobilebar{display:none}.route-enter{animation:.2s routeIn}@keyframes routeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.dv-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.dv-head h1{letter-spacing:-.02em;margin:0;font-size:24px;font-weight:700}.dv-count{color:var(--faint);font-size:13px;font-weight:500}.dv-spacer{flex:1}.dv-search{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:8px;width:230px;padding:7px 11px;display:flex}.dv-search:focus-within{border-color:var(--ink);box-shadow:0 0 0 3px var(--ring)}.dv-search svg{color:var(--faint);flex:none}.dv-search input{font-family:var(--font-sans);color:var(--text);background:0 0;border:0;outline:0;width:100%;font-size:13px}.dv-search input::placeholder{color:var(--faint)}.toggle{background:var(--surface-2);border-radius:var(--radius-sm);padding:3px;display:flex}.toggle button{color:var(--secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:5px 9px;display:grid}.toggle button.on{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #141e3714}.filters{flex-wrap:wrap;align-items:center;gap:8px;margin:18px 0 16px;display:flex}.filter-chip{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);color:var(--secondary);cursor:pointer;padding:6px 12px;font-size:12.5px}.filter-chip:hover{border-color:var(--border-hover)}.filter-chip.on{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.filter-chip b{color:var(--faint);margin-left:5px;font-weight:500}.filter-chip.on b{color:color-mix(in srgb, var(--on-ink) 55%, transparent)}.filter-div{background:var(--border);width:1px;height:20px;margin:0 4px}.sel{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--secondary);cursor:pointer;font-size:12.5px;font-family:var(--font-sans);padding:6px 12px}.sel:hover{border-color:var(--border-hover)}.dev-grid{grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:14px;display:grid}.dev{background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:13px;padding:15px;transition:border-color .12s,box-shadow .12s}.dev:hover{border-color:var(--border-hover);box-shadow:var(--shadow-card)}.dev .h{align-items:center;gap:8px;display:flex}.dev .dot{border-radius:50%;flex:none;width:7px;height:7px}.dev .dot.on,.detail-rail .dot.on{background:var(--online)}.dev .dot.off,.detail-rail .dot.off{background:var(--offline)}.dev .nm{letter-spacing:-.01em;color:var(--text);font-size:14.5px;font-weight:650}.dev .ico{opacity:.5;color:var(--text-2);margin-left:auto}.dev .sub{color:var(--muted);margin:3px 0 0 15px;font-size:12px}.dev .kv{border-top:1px solid var(--line-soft);gap:16px;margin:14px 0 0;padding-top:12px;display:flex}.dev .kv .k{color:var(--faint);text-transform:uppercase;letter-spacing:.05em;font-size:10.5px}.dev .kv .v{color:var(--text-2);margin-top:3px;font-size:12.5px;font-weight:500}.dev-check{accent-color:var(--ink);cursor:pointer;flex:none;width:15px;height:15px;margin:0}.dev.sel,.dev-row.sel{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.bulk-bar{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:10px 14px;display:flex}.bulk-count{color:var(--text);font-size:13px;font-weight:650}.select-all{color:var(--secondary);align-items:center;gap:10px;margin-bottom:12px;font-size:13px;display:flex}.dup-badge{color:var(--warn);background:color-mix(in srgb, var(--warn) 14%, var(--surface));border:1px solid color-mix(in srgb, var(--warn) 35%, var(--border));border-radius:var(--radius-pill);white-space:nowrap;flex:none;padding:1px 7px;font-size:10.5px;font-weight:600}.dev-list{flex-direction:column;gap:8px;display:flex}.dev-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;grid-template-columns:1fr 110px 130px 92px;align-items:center;gap:16px;padding:12px 16px;transition:border-color .12s,box-shadow .12s;display:grid}.dev-row:hover{border-color:var(--border-hover);box-shadow:var(--shadow-card)}.dev-row .id{align-items:center;gap:10px;min-width:0;display:flex}.dev-row .id .nm{letter-spacing:-.01em;color:var(--text);font-size:14px;font-weight:650}.dev-row .id .sub{color:var(--muted);font-size:12px}.dev-row .id .ico{opacity:.5;color:var(--text-2);flex:none}.dev-row .lc{flex-direction:column;gap:2px;min-width:0;display:flex}.dev-row .lk{color:var(--faint);text-transform:uppercase;letter-spacing:.05em;font-size:10px}.dev-row .lv{color:var(--text-2);font-size:12.5px;font-weight:500}.crumb{color:var(--faint);margin-bottom:16px;font-size:12px}.crumb a{color:var(--secondary)}.crumb a:hover{color:var(--ink)}.dd-cols{grid-template-columns:312px 1fr;align-items:start;gap:16px;display:grid}.detail-rail{padding:20px}.detail-rail .top{align-items:center;gap:8px;display:flex}.detail-rail .dot{border-radius:50%;flex:none;width:8px;height:8px}.detail-rail .st{font-size:12px;font-weight:600}.detail-rail .st.on{color:var(--online)}.detail-rail .st.off{color:var(--secondary)}.detail-rail .ago{color:var(--faint);font-size:12px}.detail-rail .ico{opacity:.45;color:var(--text-2);margin-left:auto}.detail-rail h1{letter-spacing:-.02em;margin:12px 0 2px;font-size:20px;font-weight:700}.detail-rail .mfr{color:var(--muted);font-size:13px}.detail-rail .mfr.muted{opacity:.7;font-style:italic}.dd-name{cursor:pointer;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:6px;margin:0;padding:2px 0;display:inline-flex}.dd-name svg{opacity:0;color:var(--faint);transition:opacity .12s}.dd-name:hover svg{opacity:.8}.dd-name-edit{align-items:center;gap:6px;margin:4px 0 2px;display:flex}.dd-name-edit input{border:1px solid var(--border);background:var(--surface);min-width:0;color:var(--text);border-radius:8px;flex:1;padding:6px 9px;font-size:13px}.dd-name-edit input:focus{border-color:var(--border-hover);outline:none}.dd-name-edit .pri,.dd-name-edit .sec{cursor:pointer;border-radius:8px;flex:none;padding:6px 11px;font-size:12px;font-weight:600}.dd-name-edit .pri{background:var(--ink);color:var(--on-ink);border:0}.dd-name-edit .sec{background:var(--surface);color:var(--text);border:1px solid var(--border)}.dd-name-edit .pri:disabled,.dd-name-edit .sec:disabled{opacity:.55;cursor:default}.detail-rail .actions{gap:8px;margin:16px 0 8px;display:flex}.detail-rail .pri{background:var(--ink);color:var(--on-ink);cursor:pointer;border:0;border-radius:9px;flex:1;padding:8px 14px;font-size:13px;font-weight:600}.detail-rail .pri:hover:not(:disabled){background:var(--ink-hover)}.detail-rail .pri:disabled{opacity:.55;cursor:default}.detail-rail .sec{background:var(--surface);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:9px;padding:8px 14px;font-size:13px}.detail-rail .sec:hover:not(:disabled){border-color:var(--border-hover)}.detail-rail .grp{text-transform:uppercase;letter-spacing:.05em;color:var(--faint);margin:24px 0 8px;font-size:11px;font-weight:600}.detail-rail .row{border-bottom:1px solid var(--hairline);justify-content:space-between;gap:16px;padding:7px 0;font-size:13px;display:flex}.detail-rail .row:last-child{border:0}.detail-rail .row .k{color:var(--faint);flex:none}.detail-rail .row .v{color:var(--text-2);text-align:right;word-break:break-word;font-weight:500}.detail-main{padding:20px}.tabs{border-bottom:1px solid var(--line-soft);gap:4px;margin:-4px 0 20px;display:flex}.tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 12px;font-size:13px}.tabs button:hover{color:var(--text)}.tabs button.on{color:var(--ink);border-bottom-color:var(--ink);font-weight:600}.tabbody>.panel{box-shadow:none;background:0 0;border:0;border-radius:0}.tabbody>.panel>.panel-head,.tabbody>.panel>.panel-title,.tabbody>.panel>.state-grid{display:none}.seg{background:var(--surface-2);border-radius:9px;padding:3px;display:inline-flex}.seg button{color:var(--secondary);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:6px 12px;font-size:12.5px}.seg button.on{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #141e3714}.detail-head{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:22px;display:flex}.detail-head .num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text);font-size:24px;font-weight:600}.back-link{color:var(--secondary);align-items:center;gap:6px;margin-bottom:16px;font-size:12px;display:inline-flex}.back-link:hover{color:var(--ink)}.detail-grid{grid-template-columns:1.3fr 1fr;align-items:start;gap:16px;display:grid}.info-grid{background:var(--line-soft);border-radius:0 0 var(--radius-lg) var(--radius-lg);grid-template-columns:1fr 1fr;gap:1px;display:grid;overflow:hidden}.info-cell{background:var(--surface);flex-direction:column;gap:5px;padding:13px 16px;display:flex}.info-cell .k{letter-spacing:.05em;text-transform:uppercase;color:var(--faint);font-size:11px;font-weight:600}.info-cell .v{color:var(--text);word-break:break-word;font-size:14px}.info-cell .v.mono{font-family:var(--font-mono);font-size:13px}.action-group{margin-top:24px}.action-group:first-of-type{margin-top:0}.action-group-title{letter-spacing:.05em;text-transform:uppercase;color:var(--faint);margin:0 0 8px;font-size:11px;font-weight:600}.action-grid{flex-wrap:wrap;gap:8px;display:flex}.state-grid{flex-wrap:wrap;gap:18px 24px;margin:4px 0 8px;display:flex}.state-grid>div{flex-direction:column;gap:2px;display:flex}.state-grid dt{letter-spacing:.05em;text-transform:uppercase;color:var(--faint);font-size:10px}.state-grid dd{color:var(--text-2);margin:0;font-size:13.5px}.timeline{margin-top:24px}.timeline ul{margin:0;padding:0;list-style:none}.timeline-item{border-bottom:1px solid var(--hairline);align-items:center;gap:10px;padding:7px 0;font-size:13px;display:flex}.timeline-item:last-child{border-bottom:none}.timeline-item .t-type{color:var(--text)}.timeline-item .t-detail{color:var(--muted);font-size:12px}.t-status{text-transform:uppercase;letter-spacing:.05em;margin-left:auto;font-size:11px;font-weight:600}.timeline-item .t-status{margin-left:auto}.status-done{color:var(--online)}.status-failed,.status-expired,.status-unsupported{color:var(--alert)}.status-delivered,.status-pending{color:var(--faint)}.tele-group{margin-top:20px}.tele-group:first-of-type{margin-top:0}.tele-group .state-grid dd{font-family:var(--font-mono);word-break:break-all}.modal-backdrop{background:var(--backdrop);z-index:50;place-items:center;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:340px;max-width:90vw;box-shadow:var(--shadow-pop);padding:22px}.modal h3{margin:0 0 6px;font-size:16px;font-weight:600}.modal .field{flex-direction:column;gap:6px;margin:12px 0;display:flex}.modal .field>span{color:var(--muted);font-size:12px}.modal .field input{font-family:var(--font-sans);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;padding:9px 12px;font-size:14px}.modal .field input:focus{border-color:var(--ink);box-shadow:0 0 0 3px var(--ring)}.modal-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.page-head h1{letter-spacing:-.02em;margin:0;font-size:24px;font-weight:700}.page-head .count{color:var(--faint);margin-left:8px;font-size:14px;font-weight:500}.search-row{align-items:center;gap:8px;display:flex}.search-row .input{min-width:260px}.table{border-collapse:collapse;width:100%}.table th{text-align:left;letter-spacing:.05em;text-transform:uppercase;color:var(--faint);border-bottom:1px solid var(--line-soft);white-space:nowrap;padding:10px 16px;font-size:11px;font-weight:600}.table td{border-bottom:1px solid var(--line-soft);vertical-align:middle;padding:12px 16px}.table tbody tr:last-child td{border-bottom:none}.row-link{cursor:pointer}.row-link:hover{background:var(--hairline)}.cell-num{color:var(--text);font-weight:600}.cell-sub{color:var(--muted);font-size:13px}.cell-time{font-family:var(--font-mono);color:var(--muted);white-space:nowrap;font-size:13px}.dot{background:var(--offline);border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.dot-ok{background:var(--online)}.dot-warn{background:var(--warn)}.dot-alert{background:var(--alert)}.dot-idle{background:var(--offline)}.status-cell{white-space:nowrap;align-items:center;gap:9px;display:inline-flex}.status-cell .txt{color:var(--secondary);font-size:13px}.chip{border-radius:var(--radius-pill);border:1px solid var(--border);color:var(--secondary);background:var(--surface);align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.chip-enforced{color:var(--ok);border-color:var(--ok);margin-left:6px;padding:1px 6px;font-size:10px}.chip-enforced.chip-scope{color:var(--secondary);border-color:var(--border)}.chip-enforced.chip-scope.off{color:var(--faint);border-style:dashed}.cfg-field-warn{color:var(--warn);font-weight:500}.cfg-reveal{align-items:center;gap:6px;width:100%;display:flex}.cfg-reveal .input{flex:1;min-width:0}.cfg-color{align-items:center;gap:8px;display:inline-flex}.cfg-color-v{color:var(--muted);font-size:12px;font-family:var(--font-mono)}.chip.tone-ok{color:var(--ok);border-color:var(--ok)}.chip.tone-warn{color:var(--warn);border-color:var(--warn)}.chip.tone-alert{color:var(--danger);border-color:var(--danger)}.cfg-outcomes{margin:6px 0 0;padding:0;font-size:12px;list-style:none}.cfg-outcomes li{justify-content:space-between;gap:8px;display:flex}.cfg-outcomes li.ok{color:var(--ok)}.cfg-outcomes li.alert{color:var(--danger)}.cfg-outcomes li.warn{color:var(--warn)}.cfg-legacy-note{color:var(--muted);margin:4px 0 10px;font-size:12px}.cfg-sync{align-items:center;gap:8px;margin-top:6px;font-size:12px;display:flex}.cfg-sync .rollout-track{flex:1}.empty{text-align:center;color:var(--faint);padding:44px 24px;font-size:13px}.empty .label{color:var(--secondary);margin-bottom:6px;display:block}.banner{border-radius:var(--radius);border:1px solid;margin-bottom:16px;padding:11px 14px;font-size:13px}.banner-alert{background:var(--danger-soft-bg);border-color:var(--danger-soft-border);color:var(--danger)}.banner-warn{background:color-mix(in srgb, var(--warn) 12%, var(--surface));border-color:color-mix(in srgb, var(--warn) 38%, var(--border));color:color-mix(in srgb, var(--warn) 72%, var(--text))}.login-screen{background:radial-gradient(900px 500px at 50% -10%, var(--surface) 0%, var(--app) 70%);place-items:center;min-height:100%;padding:24px;display:grid}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:380px;box-shadow:var(--shadow-card);padding:30px 30px 28px}.login-card .wordmark{font-size:22px}.login-head{margin:22px 0}.login-head h1{letter-spacing:-.01em;color:var(--text);margin:0;font-size:20px;font-weight:700}.login-head p{color:var(--muted);margin:4px 0 0;font-size:13px}.field{flex-direction:column;gap:7px;margin-bottom:16px;display:flex}.field>.label{color:var(--secondary)}.login-err{color:var(--alert);margin:-2px 0 16px;font-size:13px;font-weight:500}.login-ok{color:var(--ok);margin:-2px 0 16px;font-size:13px;font-weight:500}.enroll-wrap{max-width:640px}.token-box{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);align-items:center;gap:12px;margin:16px 0 10px;padding:14px 16px;display:flex}.token-box .tok{font-family:var(--font-mono);color:var(--ink);word-break:break-all;flex:1;font-size:14px}.note{color:var(--muted);font-size:13px;line-height:1.55}.tip{display:inline-flex;position:relative}.tip-pop{background:var(--ink);width:232px;color:var(--on-ink);text-align:left;box-shadow:var(--shadow-pop);opacity:0;visibility:hidden;z-index:40;pointer-events:none;border-radius:8px;padding:9px 11px;font-size:12px;font-weight:400;line-height:1.45;transition:opacity .14s,transform .14s;position:absolute;top:calc(100% + 8px);left:0;transform:translateY(2px)}.tip:hover .tip-pop,.tip:focus-within .tip-pop{opacity:1;visibility:visible;transform:translateY(0)}.tip-pop:before{content:"";border:5px solid #0000;border-bottom-color:var(--ink);position:absolute;bottom:100%;left:18px}.enroll{max-width:800px}.seg.modes .tip{display:flex}.mode-desc{color:var(--muted);margin:0 0 16px;font-size:13px}.enroll-top{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.enroll-top .sp{flex:1}.enroll-cfg{align-items:center;gap:10px;padding:16px 20px 0;display:flex}.qr-layout{grid-template-columns:minmax(0,354px) minmax(0,1fr);align-items:start;gap:24px;padding:20px;display:grid}@media (width<=720px){.qr-layout{grid-template-columns:minmax(0,1fr)}}.qr-frame{border:1px solid var(--border);border-radius:var(--radius);background:#fff;place-items:center;padding:16px;display:grid}.qr-frame img,.qr-frame svg,.qr-frame canvas{width:320px;max-width:100%;height:320px;image-rendering:pixelated;display:block}.qr-cap{text-align:center;color:var(--faint);margin-top:10px;font-size:12px}.wifi-block{margin-top:14px;font-size:13px}.wifi-block>summary{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text);padding:6px 0}.wifi-fields{gap:10px;margin-top:8px;display:grid}.wifi-fields label{color:var(--faint);gap:4px;font-size:12px;display:grid}.wifi-fields input,.wifi-fields .sel{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:8px 10px;font-size:13px}.wifi-fields .note{margin:2px 0 0}.qr-steps{flex-direction:column;gap:16px;display:flex}.qr-step{align-items:flex-start;gap:12px;display:flex}.step-n{background:var(--surface-2);width:24px;height:24px;color:var(--text);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:600;display:grid}.qr-step .st-tx{color:var(--text);padding-top:2px;font-size:13.5px}.qr-step .st-tx .sub{color:var(--muted);margin-top:3px;font-size:12.5px;line-height:1.5}.qr-err{padding:20px}.src-soon{text-transform:uppercase;letter-spacing:.04em;color:var(--faint);border:1px solid var(--border);border-radius:var(--radius-pill);margin-left:6px;padding:1px 5px;font-size:9.5px;font-weight:600}.app-grid{grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:14px;display:grid}.app-card{background:var(--surface);border:1px solid var(--border);border-radius:13px;flex-direction:column;gap:14px;padding:15px;display:flex}.app-card:hover{border-color:var(--border-hover)}.app-top{align-items:center;gap:12px;min-width:0;display:flex}.app-ic{background:var(--surface-2);width:40px;height:40px;color:var(--secondary);border-radius:10px;flex:none;place-items:center;font-size:18px;font-weight:700;display:grid}.app-ic-img{object-fit:contain;background:var(--surface);border:1px solid var(--line-soft);padding:4px}.app-meta{min-width:0}.app-sum{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:-4px;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.app-nm{letter-spacing:-.01em;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:650;overflow:hidden}.app-pkg{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.app-foot{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:center;padding-top:12px;display:flex}.app-ver{color:var(--faint);font-size:12.5px;font-family:var(--font-mono)}.ext-search{align-items:center;gap:8px;display:flex}.dropzone{border:1.5px dashed var(--border);border-radius:var(--radius);background:var(--surface-2);text-align:center;cursor:pointer;padding:26px 18px;transition:border-color .14s,background .14s}.dropzone:hover{border-color:var(--border-hover)}.dropzone.over{border-color:var(--ink);background:var(--hairline)}.dropzone.busy{cursor:default}.dropzone .dz-main{color:var(--text);font-size:13.5px;font-weight:500;display:block}.dropzone .dz-sub{color:var(--faint);margin-top:4px;font-size:12px;font-weight:400;display:block}.deploy-modal{width:460px;max-width:92vw}.deploy-devlist{border:1px solid var(--border);border-radius:var(--radius-sm);max-height:280px;overflow-y:auto}.deploy-devrow{border-bottom:1px solid var(--hairline);cursor:pointer;align-items:center;gap:10px;padding:9px 12px;font-size:13px;display:flex}.deploy-devrow:last-child{border-bottom:0}.deploy-devrow input{flex:none}.deploy-devrow .dd-nm{color:var(--text);font-weight:500}.deploy-devrow .dd-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.deploy-devrow .dd-seen{color:var(--faint);font-size:11.5px;font-family:var(--font-mono);white-space:nowrap;margin-left:auto}.deploy-runafter{color:var(--text);align-items:center;gap:8px;margin-top:14px;font-size:13px;display:flex}.cfg-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.cfg-card{background:var(--surface);border:1px solid var(--border);border-radius:13px;flex-direction:column;gap:10px;padding:16px;display:flex}.cfg-card:hover{border-color:var(--border-hover)}.cfg-top{align-items:center;gap:8px;display:flex}.cfg-nm{letter-spacing:-.01em;color:var(--text);font-size:15px;font-weight:650}.cfg-badge{text-transform:uppercase;letter-spacing:.04em;color:var(--secondary);background:var(--surface-2);border-radius:var(--radius-pill);margin-left:auto;padding:2px 8px;font-size:10.5px;font-weight:600}.cfg-desc{color:var(--muted);font-size:12.5px;line-height:1.45}.cfg-meta{border-top:1px solid var(--line-soft);gap:24px;padding-top:10px;display:flex}.cfg-meta .k{text-transform:uppercase;letter-spacing:.05em;color:var(--faint);font-size:10.5px;display:block}.cfg-meta .v{color:var(--text-2);margin-top:2px;font-size:13px;font-weight:500;display:block}.cfg-actions{gap:8px;margin-top:2px;display:flex}.cfg-editbar{align-items:center;gap:8px;margin-bottom:16px;display:flex}.cfg-panel{margin-bottom:14px;padding:16px 20px}.cfg-sec-h{color:var(--ink);margin:0 0 10px;font-size:13px;font-weight:600}.cfg-field{border-bottom:1px solid var(--hairline);grid-template-columns:1fr 240px;align-items:center;gap:16px;padding:11px 0;display:grid}.cfg-field:last-child{border-bottom:0}.cfg-field-label label{color:var(--text);font-size:13.5px;font-weight:500}.cfg-field-help{color:var(--muted);margin-top:2px;font-size:12px;line-height:1.4;display:block}.cfg-field-ctl{justify-content:flex-end;display:flex}.cfg-field-ctl .input,.cfg-field-ctl .sel{width:100%}.cfg-field-ctl .seg{flex:none}.cfg-app{border-bottom:1px solid var(--hairline);align-items:center;gap:10px;padding:8px 0;display:flex}.cfg-app-nm{color:var(--text);font-size:13px;font-weight:500}.cfg-app-pkg{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.cfg-app-kiosk{color:var(--muted);white-space:nowrap;align-items:center;gap:5px;font-size:12px;display:inline-flex}.cfg-app-add{margin-top:12px}.cfg-empty{color:var(--faint);padding:4px 0 8px;font-size:13px}.cfg-adv-toggle{color:var(--secondary);cursor:pointer;background:0 0;border:0;margin-bottom:12px;padding:6px 0;font-size:13px;font-weight:500}.cfg-adv-toggle:hover{color:var(--ink)}.cfg-badge.default{color:var(--ink);background:var(--surface-2)}.cfg-badge+.cfg-badge{margin-left:0}.cfg-badge.warn{color:color-mix(in srgb, var(--warn) 72%, var(--text));background:color-mix(in srgb, var(--warn) 14%, var(--surface))}.cfg-default-note{background:var(--surface-2);border-color:var(--border);color:var(--secondary)}.chooser-list{flex-direction:column;gap:8px;margin:4px 0 8px;display:flex}.chooser-opt{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;gap:2px;padding:11px 14px;display:flex}.chooser-opt:hover{border-color:var(--ink);background:var(--hairline)}.chooser-nm{color:var(--text);font-size:13.5px;font-weight:600}.chooser-sub{color:var(--muted);font-size:12px}.app-picker{width:560px;max-width:94vw}.picker-top{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;display:flex}.picker-list{border:1px solid var(--border);border-radius:var(--radius-sm);max-height:46vh;overflow-y:auto}.picker-row{border-bottom:1px solid var(--hairline);cursor:pointer;align-items:center;gap:11px;padding:9px 12px;display:flex}.picker-row:last-child{border-bottom:0}.picker-row.on{background:var(--hairline)}.picker-ic{background:var(--surface-2);width:30px;height:30px;color:var(--secondary);border-radius:8px;flex:none;place-items:center;font-size:14px;font-weight:700;display:grid}.picker-meta{flex:1;min-width:0}.picker-nm{color:var(--text);font-size:13px;font-weight:550;display:block}.picker-pkg{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;display:block;overflow:hidden}.picker-ver{color:var(--faint);font-size:11.5px;font-family:var(--font-mono)}.settings{flex-direction:column;gap:16px;max-width:720px;display:flex}.set-row{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;gap:16px;padding:13px 20px;font-size:13.5px;display:flex}.set-row:last-child{border-bottom:0}.set-row .k{color:var(--secondary);flex:none}.set-row .k small{color:var(--faint);margin-top:2px;font-size:12px;font-weight:400;display:block}.set-row .v{color:var(--text);text-align:right;word-break:break-word;font-weight:500}.set-row .v.mono{font-family:var(--font-mono);font-size:13px;font-weight:400}.conn{align-items:center;gap:8px;font-weight:500;display:inline-flex}.vitals{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);grid-template-columns:repeat(4,1fr);margin-bottom:24px;display:grid;overflow:hidden}.vital{border-left:1px solid var(--line-soft);flex-direction:column;gap:10px;padding:18px 22px 16px;display:flex}.vital:first-child{border-left:none}.vital-label{letter-spacing:.05em;text-transform:uppercase;color:var(--faint);font-size:11px;font-weight:600}.vital-readout{align-items:baseline;gap:8px;display:flex}.vital-num{font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--text);font-size:34px;font-weight:700;line-height:1}.vital-sub{font-family:var(--font-mono);color:var(--muted);font-size:12px}.vital-arc{width:100%;height:26px;display:block}.vital-note{color:var(--faint);font-size:11px}.dash-grid{grid-template-columns:1.6fr 1fr;align-items:start;gap:24px;display:grid}.ov-grid{grid-template-columns:1fr 320px;align-items:start;gap:16px;display:grid}.ov-col{flex-direction:column;gap:16px;display:flex}.fleet{align-items:center;gap:28px;margin-bottom:16px;padding:20px;display:flex}.fleet-big{letter-spacing:-.02em;color:var(--text);white-space:nowrap;font-size:30px;font-weight:700}.fleet-big small{color:var(--faint);margin-left:6px;font-size:13px;font-weight:500}.fleet-barwrap{flex:1;min-width:0}.fleet-legend{color:var(--muted);flex-wrap:wrap;gap:18px;margin-bottom:8px;font-size:12px;display:flex}.fleet-legend i{vertical-align:middle;border-radius:2px;width:8px;height:8px;margin-right:6px;display:inline-block}.fleet-bar{background:var(--surface-2);border-radius:6px;height:10px;display:flex;overflow:hidden}.fleet-bar i{height:100%;display:block}.ov-listpad{padding:4px 0 8px}.feed-item{border-bottom:1px solid var(--hairline);align-items:flex-start;gap:12px;padding:11px 20px;display:flex}.feed-item:last-child{border-bottom:0}.feed-ic{background:var(--surface-2);width:28px;height:28px;color:var(--secondary);border-radius:8px;flex:none;place-items:center;display:grid}.feed-tx{min-width:0;font-size:13px}.feed-tx b{font-weight:600}.feed-sub{color:var(--faint);margin-top:2px;font-size:12px}.feed-tm{color:var(--faint);font-size:11.5px;font-family:var(--font-mono);white-space:nowrap;margin-left:auto;padding-left:8px}.att-row{border-bottom:1px solid var(--hairline);cursor:pointer;align-items:center;gap:10px;padding:9px 20px;font-size:13px;display:flex}.att-row:last-child{border-bottom:0}.att-row:hover{background:var(--hairline)}.att-nm{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.att-reason{color:var(--faint);white-space:nowrap;margin-left:auto;padding-left:8px;font-size:12px}.cfg-row{border-bottom:1px solid var(--hairline);justify-content:space-between;padding:9px 20px;font-size:13px;display:flex}.cfg-row:last-child{border-bottom:0}.cfg-row .k{color:var(--secondary)}.cfg-row .v{color:var(--faint);font-family:var(--font-mono)}.toast-wrap{z-index:60;flex-direction:column;gap:10px;max-width:360px;display:flex;position:fixed;bottom:22px;right:22px}.toast{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-pop);align-items:flex-start;gap:11px;padding:12px 14px;animation:.2s both toastIn;display:flex}.toast .t-ic{color:#fff;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;margin-top:1px;display:grid}.toast.ok .t-ic{background:var(--online)}.toast.err .t-ic{background:var(--alert)}.toast .t-main{min-width:0}.toast .t-title{color:var(--text);font-size:13px;font-weight:600;line-height:1.35}.toast .t-body{color:var(--muted);word-break:break-word;margin-top:2px;font-size:12px}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.spin{border:2px solid var(--border);border-top-color:var(--ink);vertical-align:-2px;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.scrim{display:none}@media (width<=920px){.dd-cols,.detail-grid,.dash-grid{grid-template-columns:1fr}}@media (width<=860px){.shell{grid-template-columns:1fr}.sidebar{z-index:40;width:220px;transition:transform .22s;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.open{transform:none}.scrim.show{z-index:35;background:#141e3759;display:block;position:fixed;inset:0}.rail-mobilebar{border-bottom:1px solid var(--border);background:var(--surface);z-index:5;align-items:center;gap:10px;height:52px;padding:0 16px;display:flex;position:sticky;top:0}.menu-btn{justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.content{padding:18px 16px}.dev-grid{grid-template-columns:1fr}.vitals{grid-template-columns:1fr 1fr}.search-row .input{min-width:0}}@media (width<=520px){.vitals,.info-grid{grid-template-columns:1fr}.dev-row{grid-template-columns:1fr 70px}.dev-row .lc:nth-child(3){display:none}}[data-density=compact] .content{padding:16px 20px}[data-density=compact] .panel-head{padding:12px 16px}[data-density=compact] .detail-rail,[data-density=compact] .detail-main{padding:16px}[data-density=compact] .dev{padding:12px}[data-density=compact] .dev-grid{gap:10px}[data-density=compact] .dev-row{padding:9px 14px}[data-density=compact] .table th{padding:8px 14px}[data-density=compact] .table td{padding:9px 14px}[data-density=compact] .vital{padding:14px 18px 13px}::view-transition-old(root){animation-duration:.3s}::view-transition-new(root){animation-duration:.3s}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:6px}::-webkit-scrollbar-track{background:0 0}.modal.kiosk-modal{width:92vw;max-width:640px}.kiosk-scan{flex-direction:column;gap:10px;padding:12px 0;display:flex}.err-text{color:var(--danger);font-size:13px}.kiosk-mode{color:var(--text-2);gap:18px;margin:6px 0 10px;font-size:13px;display:flex}.kiosk-mode label{cursor:pointer;align-items:center;gap:6px;display:flex}.kiosk-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.kiosk-search{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:8px;flex:180px;padding:7px 10px}.kiosk-toggle{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.kiosk-applist{border:1px solid var(--line);border-radius:10px;flex-direction:column;max-height:46vh;display:flex;overflow-y:auto}.kiosk-app{border:0;border-bottom:1px solid var(--line-soft);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:10px;width:100%;padding:8px 10px;display:flex}.kiosk-app:last-child{border-bottom:0}.kiosk-app:hover{background:var(--panel-2)}.kiosk-app.on{background:var(--signal-dim)}.kiosk-ico{object-fit:cover;border-radius:7px;flex:none;width:32px;height:32px}.kiosk-ico.ph{background:var(--panel-2);color:var(--muted);justify-content:center;align-items:center;font-size:14px;font-weight:600;display:inline-flex}.kiosk-app-meta{flex-direction:column;flex:auto;min-width:0;display:flex}.kiosk-app-label{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.kiosk-app-pkg{color:var(--muted);font-size:11px;font-family:var(--font-mono,monospace);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kiosk-badges{flex:none;align-items:center;gap:5px;display:flex}.kiosk-badge{background:var(--panel-2);color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 6px;font-size:10px}.kiosk-badge.sys{color:var(--warn);border-color:var(--warn)}.kiosk-badge.on{color:var(--signal-ink);background:var(--ink);border-color:var(--ink)}.kiosk-exit-row{gap:12px;margin-top:12px;display:flex}.kiosk-exit-row .field{flex:1}.kiosk-source{border:1px solid var(--line);background:var(--panel-2);border-radius:9px;gap:4px;margin:4px 0 8px;padding:3px;display:inline-flex}.kiosk-source .seg-btn{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:6px 14px;font-size:13px}.kiosk-source .seg-btn.on{background:var(--panel);color:var(--text);box-shadow:0 1px 2px #00000014}.t-detail.open{white-space:pre-wrap;word-break:break-word;font-family:var(--font-mono,monospace);border:1px solid var(--line);background:var(--panel-2);border-radius:8px;max-height:220px;margin-top:4px;padding:8px;font-size:11px;display:block;overflow:auto}.t-more{color:var(--accent,#3b82f6);cursor:pointer;background:0 0;border:0;padding:0 0 0 6px;font-size:11px;text-decoration:underline}.t-detail.open .t-more{padding:6px 0 0;display:block}.loc-map{border:1px solid var(--line);border-radius:10px;width:100%;height:380px;overflow:hidden}.loc-map .leaflet-control-attribution{font-size:10px}.update-banner{border:1px solid var(--line);background:var(--panel-2);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 16px;padding:10px 14px;font-size:13px;display:flex}.update-banner .ub-ok{color:var(--ok)}.update-banner .ub-warn{color:var(--warn)}.update-banner .ub-ch{color:var(--muted)}.update-banner.ub-busy{border-color:var(--accent)}.update-banner.ub-fail{border-color:var(--err);background:color-mix(in srgb, var(--err) 8%, var(--panel-2))}.update-banner .ub-spin{border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;flex:none;width:14px;height:14px;animation:.8s linear infinite ub-spin}@keyframes ub-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.update-banner .ub-spin{animation:none}}.reload-bar{z-index:20;border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--panel-2));border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 16px;padding:10px 14px;font-size:13px;display:flex;position:sticky;top:0}.reload-bar .reload-actions{flex:none;gap:8px;display:flex}.auto-update-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.auto-update-row .au-note{color:var(--muted);max-width:46ch;margin:4px 0 0;font-size:12px}.whatsnew{white-space:pre-wrap;word-break:break-word;max-height:180px;font-family:var(--font-mono);color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:8px;max-width:52ch;padding:8px 10px;font-size:12px;line-height:1.5;overflow:auto}.whatsnew-link{margin-top:6px;font-size:12px;display:inline-block}.upd-actions{flex-wrap:wrap;gap:8px;display:flex}.rollout-cohort{padding:8px 0}.rollout-cohort-head{justify-content:space-between;margin-bottom:6px;font-size:13px;display:flex}.rollout-track{background:var(--panel-2);border:1px solid var(--line);border-radius:6px;height:8px;overflow:hidden}.rollout-fill{background:var(--ok);height:100%;transition:width .4s}.rollout-legend{gap:14px;margin-top:6px;font-size:12px;display:flex}.rollout-legend .muted{color:var(--muted)}.rollout-devicelist{border:1px solid var(--line);border-radius:10px;max-height:240px;margin-bottom:10px;padding:6px;overflow:auto}.rollout-device{border-radius:8px;align-items:center;gap:10px;padding:6px 8px;font-size:13px;display:flex}.rollout-device:hover{background:var(--panel-2)}.rollout-device .muted{color:var(--muted)}
