.event-tabs{border-bottom:1px solid var(--border);gap:20px;margin-bottom:22px;display:flex}.event-tabs button{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;padding:14px 4px}.event-tabs button.selected{border-bottom-color:var(--accent);color:var(--accent);font-weight:700}.event-list{margin:0;padding:0;list-style:none}.event-list>li{border-bottom:1px solid var(--border);grid-template-columns:84px minmax(0,1fr) auto;align-items:start;gap:20px;padding:20px 12px;display:grid}.event-list>li:first-child{border-top:1px solid var(--border)}.event-state{flex-direction:column;align-items:flex-start;gap:12px;padding-top:2px;display:flex}.event-grade{color:#4d626e;overflow-wrap:anywhere;background:#e8edf0;border-radius:4px;max-width:100%;padding:4px 8px;font-size:12px}.event-grade.warning{color:#875408;background:#fff0d1}.event-grade.critical{color:#a12b33;background:#fbe3e3}.event-grade.info{color:#295e94;background:#e2eefb}.event-body{min-width:0}.event-body>strong{overflow-wrap:anywhere;font-size:15px;line-height:1.6}.event-vehicle{align-items:center;gap:8px;min-height:36px;margin:8px 0;display:flex}.event-vehicle>span{overflow-wrap:anywhere}.event-vehicle .text-button{min-height:36px;padding:6px 10px}.event-times{color:var(--muted);flex-wrap:wrap;gap:8px 22px;font-size:12px;line-height:1.6;display:flex}.ack-button{font-size:13px}.ack-dialog{color:#202827;border:1px solid var(--border);overflow-wrap:anywhere;background:#fff;border-radius:8px;width:min(480px,100% - 32px);max-height:calc(100dvh - 32px);padding:24px;overflow:auto}.ack-dialog::backdrop{background:#070f21a3}.ack-dialog>p{color:var(--muted)}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}:root[data-theme=dark] .ack-dialog{color:#e5edf7;background:#101b2c}:root[data-theme=dark] .event-grade{color:#b7c6d9;background:#28364b}:root[data-theme=dark] .event-grade.warning{color:#f0c469;background:#3c321e}:root[data-theme=dark] .event-grade.critical{color:#ffacb1;background:#462934}:root[data-theme=dark] .event-grade.info{color:#9fcfff;background:#20364c}@media (width<=640px){.event-list>li{grid-template-columns:66px minmax(0,1fr);gap:12px;padding:18px 0}.event-list .ack-button{grid-column:2;justify-self:start}.event-times{flex-direction:column;gap:4px}.ack-dialog{padding:20px}}.service-list{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.service-list li>button{text-align:left;border:0;border-bottom:1px solid var(--border);background:0 0;border-radius:0;grid-template-columns:76px minmax(0,1fr) 145px 18px;gap:22px;width:100%;padding:22px 16px;display:grid}.service-list-main{flex-direction:column;gap:10px;min-width:0;display:flex}.service-list-main strong{overflow-wrap:anywhere;font-size:15px;line-height:1.5}.service-list-main small{color:var(--muted);overflow-wrap:anywhere;line-height:1.6}.service-status{color:#53665e;white-space:nowrap;background:#e4eae7;border-radius:4px;justify-self:start;padding:6px 10px;font-size:12px}.service-status.open{color:#235f99;background:#e3edf9}.service-status.in_progress{color:#865400;background:#fff0ce}.service-status.done{color:#096953;background:#dcefe7}.service-desired{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.service-desired strong{color:inherit;margin-top:7px;font-size:14px;font-weight:500;display:block}.service-editor{max-width:760px;margin:0 auto}.service-fields{border:0;min-width:0;margin:20px 0;padding:0}.service-fields>label,.service-contact>label,.service-picker>label,.service-cancel label{flex-direction:column;gap:9px;min-width:0;margin:18px 0;font-weight:550;display:flex}.service-contact{grid-template-columns:1fr 1fr;gap:20px;display:grid}.service-fields textarea,.service-cancel textarea{font:inherit;resize:vertical;width:100%;min-width:0;min-height:110px;color:inherit;background:#fff;border:1px solid #bac7c1;border-radius:6px;padding:12px;line-height:1.6}.service-fields:disabled{opacity:.7}.service-fields small{font-weight:400}.service-vehicle-options{grid-template-columns:1fr 1fr;gap:0 18px;display:grid}.service-vehicle-options label{border-bottom:1px solid var(--border);cursor:pointer;align-items:center;gap:10px;min-height:42px;padding:9px 0;display:flex}.service-vehicle-options input{width:17px;height:17px;min-height:17px;accent-color:var(--accent);flex-shrink:0}.service-vehicle-options span{overflow-wrap:anywhere}.service-detail-title{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding:20px 0 24px;display:flex}.service-detail-title>div{min-width:0}.service-detail-title h2{overflow-wrap:anywhere;margin-top:15px;line-height:1.6}.service-identity{color:var(--muted);align-items:center;gap:10px;font-size:14px;display:flex}.service-detail-columns{grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr);gap:36px;padding-top:20px;display:grid}.service-detail .facts dt{align-items:center;gap:8px;display:flex}.service-detail .facts dd{overflow-wrap:anywhere}.service-detail h3{margin-top:26px}.service-symptoms{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.service-actions{gap:12px;padding:18px 0;display:flex}.cs-actions{flex-wrap:wrap;gap:8px}.cs-facts{border-top:1px solid var(--border);margin-top:24px}.cs-dialog{width:min(580px,100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto}.cs-dialog fieldset{width:100%}.cs-dialog .section-heading h2{font-size:18px}.cs-dialog .muted{overflow-wrap:anywhere}.cs-assignees{flex-direction:column;gap:10px;min-width:0;display:flex}.cs-assignees select{width:100%}.cs-person-pages{justify-content:flex-end;gap:8px;display:flex}.service-history{border-left:1px solid var(--border);padding-left:28px}.service-history ol{margin:22px 0;padding:0;list-style:none}.service-history li{border-left:1px solid var(--border);padding:0 0 28px 18px;position:relative}.service-history li:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px;position:absolute;top:3px;left:-4px}.service-history time{color:var(--muted);margin-top:8px;font-size:12px;display:block}.service-history p{overflow-wrap:anywhere;white-space:pre-wrap;margin:10px 0 0}:root[data-theme=dark] .service-fields textarea,:root[data-theme=dark] .service-cancel textarea{background:#0e192b;border-color:#3c526d}:root[data-theme=dark] .service-status{color:#b8c7d7;background:#293548}:root[data-theme=dark] .service-status.open{color:#a6d2ff;background:#203955}:root[data-theme=dark] .service-status.in_progress{color:#f1d080;background:#3c331f}:root[data-theme=dark] .service-status.done{color:#8ad9bf;background:#1a3b38}@media (width<=900px){.service-detail-columns{grid-template-columns:minmax(0,1fr);gap:0}.service-history{border-left:0;border-top:1px solid var(--border);padding-left:0}}@media (width<=640px){.service-list li>button{grid-template-columns:66px minmax(0,1fr) 18px;gap:14px;padding:18px 0}.service-list-main{grid-column:2}.service-list li>button>svg{grid-area:1/3}.service-desired{grid-column:2}.service-desired span{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.service-desired strong{margin:0}.service-contact,.service-vehicle-options{grid-template-columns:minmax(0,1fr);gap:0}.service-detail-title{align-items:flex-start}.service-detail .facts>div{gap:14px}}@font-face{font-family:Pretendard;src:url(/fonts/PretendardVariable.woff2)format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Sora;src:url(/fonts/Sora-variable.ttf)format("truetype");font-weight:100 800;font-display:swap}:root{color:#202827;font-synthesis:none;letter-spacing:0;--accent:#087a72;--muted:#64716d;--border:#dce3df;background:#f4f6f5;font-family:Pretendard,Malgun Gothic,Apple SD Gothic Neo,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;border:1px solid var(--border);color:inherit;background:#fff;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:10px 14px;display:inline-flex}button:hover:not(:disabled){background:#edf3f0}button:disabled{cursor:not-allowed;opacity:.45}button,input,select{transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s}:focus-visible{outline-offset:3px;outline:3px solid #21aaa0}input,select{width:100%;min-width:0;color:inherit;background:#fff;border:1px solid #bac7c1;border-radius:6px;min-height:44px;padding:11px 12px}input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--accent)}h1{margin:0;font-size:26px;font-weight:750;line-height:1.35}h2{margin:0;font-size:18px}h3{margin:0;font-size:16px}p{line-height:1.6}small{font-size:12px}svg{flex-shrink:0}.muted{color:var(--muted);font-size:12px}.primary{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:700}.primary:hover:not(:disabled){background:#05665f}.text-button{color:var(--accent);background:0 0;border:0;padding:8px 0}.icon-button{flex-shrink:0;width:40px;height:40px;min-height:40px;padding:0}.brand{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.brand img{object-fit:contain;width:148px;height:28px}.product-mark{flex-shrink:0;width:236px;max-width:100%;height:auto;display:block}.product-accent{fill:#2366a5}.product-separator{opacity:.35}.brand .product-mark{color:#fff;width:118px}:root[data-theme=dark] .product-accent,.brand .product-accent{fill:#8bbfff}.environment{color:#96cac0;white-space:nowrap;border:1px solid #46605b;border-radius:4px;padding:4px 7px;font-size:11px}.notice{overflow-wrap:anywhere;background:#f5f7f6;border:1px solid #d7ddd9;border-radius:6px;align-items:flex-start;gap:8px;padding:12px;line-height:1.6;display:flex}.notice span{flex:1}.notice button{white-space:nowrap;min-height:24px;padding:0 4px}.notice.error{color:#ab302d;background:#fff3f1;border-color:#f2c4bf}.auth-page{isolation:isolate;color:#f4f6f5;background:#101917;grid-template-columns:53.5% minmax(0,1fr);align-items:center;min-height:100dvh;padding:100px 0 64px;display:grid;position:relative}.auth-visual{z-index:0;background:#18252c;width:53.5%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.auth-visual:after{content:"";pointer-events:none;background:linear-gradient(#0000,#071321a6);height:160px;position:absolute;inset:auto 0 0}.auth-slide{opacity:0;transition:opacity 1.2s ease-in-out;position:absolute;inset:0}.auth-slide.is-active{opacity:1}.auth-image{object-fit:cover;object-position:50% 56%;transform-origin:50% 60%;width:100%;height:100%;animation:20s ease-in-out infinite alternate auth-zoom;display:block}.auth-slide:not(.is-active) .auth-image,.auth-visual.is-paused .auth-image{animation-play-state:paused}.visual-caption{z-index:1;color:#fff;text-shadow:0 1px 6px #0009;justify-content:space-between;align-items:center;gap:16px;display:flex;position:absolute;bottom:36px;left:36px;right:36px}.visual-model{flex-direction:column;gap:10px;font-family:Sora,sans-serif;display:flex}.visual-model>span{font-size:10px;font-weight:500}.visual-model>strong{font-size:17px;font-weight:500}.auth-page>header{z-index:2;justify-content:flex-end;align-items:flex-start;display:flex;position:absolute;top:30px;left:36px;right:36px}.auth-brand{flex-direction:column;align-items:flex-start;gap:32px;margin-bottom:30px;display:flex}.auth-logo{background:0 0;padding:0}.auth-logo img{object-fit:contain;width:185px;height:35px;display:block}.auth-form{animation:.25s ease-out auth-enter}.auth-page>footer{color:#819b94;font-size:11px;position:absolute;bottom:24px;right:40px}.auth-form{grid-column:2;width:min(100%,460px);margin:auto;padding:0 40px}.auth-form h1{margin-bottom:22px;font-size:16px;font-weight:600}.auth-form label{margin:20px 0;font-weight:550;display:block}.auth-form input{color:#fff;background:#172520;border-color:#435950;margin-top:9px}.auth-form .muted{color:#a7b9b1}.password-input{position:relative}.password-input input{padding-right:50px}.password-input .icon-button{color:#a7b9b1;background:0 0;border:0;position:absolute;top:12px;right:4px}.auth-form .check-field{align-items:center;gap:9px;font-size:13px;font-weight:400;display:flex}.check-field input{margin:0}.auth-form>.primary{background:#17646f;border-color:#17646f;justify-content:space-between;width:100%;padding:13px 16px}.auth-form>.primary:hover:not(:disabled){background:#12525b}.auth-form>.text-button{color:#92d6c9;margin-top:12px}.auth-form .facts>div{border-color:#33453e}.auth-form dt{color:#a7b9b1}.step{color:#83cbbd;align-items:center;gap:8px;margin-bottom:24px;font-size:12px;display:flex}.step span{background:#51685f;width:24px;height:1px}.app-shell{grid-template-columns:210px minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{color:#cbd5e1;background:#0d1524;flex-direction:column;height:100dvh;padding:30px 18px 20px;display:flex;position:sticky;top:0}.sidebar .brand{padding:0 12px 34px}.sidebar nav{flex-direction:column;gap:6px;display:flex}.sidebar nav button{color:#bccac4;text-align:left;background:0 0;border:0;border-radius:5px;justify-content:flex-start;padding:13px 15px}.sidebar nav button.active{color:#c9f0ff;background:#1b2c42;box-shadow:inset 3px 0 #55c2de}.sidebar nav button:hover{background:#1a2639}.sidebar-bottom{flex-direction:column;align-items:flex-start;gap:18px;margin-top:auto;padding:12px;display:flex}.sidebar-bottom small{color:#82978d;font-size:9px}.workspace{flex-direction:column;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;gap:20px;min-height:76px;padding:16px 30px;display:flex}.organisation{align-items:center;gap:12px;min-width:0;display:flex}.organisation strong{overflow-wrap:anywhere}.organisation>span{color:var(--muted);border-left:1px solid var(--border);white-space:nowrap;padding-left:12px;font-size:12px}.top-actions{align-items:center;gap:10px;display:flex}.top-actions>span{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.content{flex:1;min-width:0;padding:30px}.page-title{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:28px;display:flex}.page-title .muted{text-align:right}.eyebrow{color:var(--muted);margin-bottom:7px;font-size:12px;display:block}.summary-strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff;grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:34px;display:grid}.summary-item{border:0;border-right:1px solid var(--border);border-radius:0;flex-direction:column;justify-content:space-between;align-items:flex-start;min-height:138px;padding:20px;display:flex;position:relative}.summary-item:last-child{border:0}.summary-item>span{color:var(--muted);align-items:center;gap:7px;font-size:12px;display:flex}.summary-item strong{font-variant-numeric:tabular-nums;font-size:32px;font-weight:650}.summary-item small{color:var(--muted);margin-left:6px;font-weight:400}.summary-arrow{color:#82958b;position:absolute;bottom:28px;right:16px}.summary-item.charging svg{color:#0e8d6e}.summary-item.fault svg,.summary-item.fault strong{color:#ba3e36}.summary-item.offline svg{color:#a97a22}.home-band{grid-template-columns:minmax(0,1.7fr) minmax(220px,1fr);gap:32px;display:grid}.home-band section{min-width:0}.section-heading{justify-content:space-between;align-items:center;gap:10px;margin:0 0 16px;display:flex}.operation-summary{border-left:1px solid var(--border);padding-left:28px}.operation-summary .primary{justify-content:space-between;width:100%;margin-top:10px}.attention-list,.dtc-list{margin:0;padding:0;list-style:none}.attention-list li{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:18px 0;display:flex}.attention-list li>svg{color:#ba3e36}.attention-list li>div{flex:1;min-width:0}.attention-list strong{overflow-wrap:anywhere;display:block}.attention-list li>div>span{color:var(--muted);margin-top:6px;font-size:12px;display:block}.empty{text-align:center;color:var(--muted);padding:40px 16px}.empty>svg{color:#80998d}.empty p{margin-top:16px}.facts{margin:16px 0 24px}.facts>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:20px;padding:13px 0;display:flex}dt{color:var(--muted);flex-shrink:0;font-size:12px}dd{text-align:right;overflow-wrap:anywhere;margin:0;font-size:14px}.fleet-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;display:grid}.fleet-layout:has(.vehicle-detail){grid-template-columns:minmax(0,1fr) 340px}.fleet-list{min-width:0}.toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.search-field{background:#fff;border:1px solid #becac3;border-radius:6px;align-items:center;width:min(390px,100%);min-width:0;padding:0 5px 0 12px;display:flex}.search-field>svg{color:var(--muted)}.search-field input{background:0 0;border:0}.search-field .icon-button{border:0}.select-field{color:var(--muted);flex-shrink:0;align-items:center;gap:8px;font-size:12px;display:flex}.select-field select{width:140px;font-size:13px}.filters{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:4px;padding-bottom:14px;display:flex}.filters button{background:0 0;border:1px solid #0000;min-height:36px;padding:7px 12px;font-size:13px}.filters button.selected{color:#066759;background:#e0eee5;border-color:#c8ddcf;font-weight:650}.vehicle-table{width:100%}.table-head,.vehicle-row{grid-template-columns:minmax(150px,1.5fr) minmax(105px,1fr) minmax(100px,.8fr) minmax(85px,.7fr) minmax(115px,1fr) 20px;align-items:center;gap:12px;width:100%;display:grid}.table-head{color:var(--muted);padding:13px 14px;font-size:11px}.vehicle-row{border:0;border-top:1px solid var(--border);text-align:left;background:#fff;border-radius:0;min-height:92px;padding:18px 14px}.vehicle-row:last-child{border-bottom:1px solid var(--border)}.vehicle-row.active{box-shadow:inset 3px 0 0 var(--accent);background:#e9f3ef}.vehicle-name{align-items:center;gap:10px;min-width:0;display:flex}.vehicle-name>svg{color:#788b82}.vehicle-name strong{overflow-wrap:anywhere;font-size:14px;line-height:1.5}.vehicle-name small{color:var(--muted);margin-top:5px;display:block}.state-cell{flex-wrap:wrap;gap:5px;display:flex}.badge{color:#687b70;white-space:nowrap;align-items:center;gap:5px;font-size:11px;line-height:1.5;display:inline-flex}.status-dot{background:currentColor;border-radius:50%;width:5px;height:5px}.badge.driving{color:#2867a3}.badge.charging,.badge.online{color:#118167}.badge.offline{color:#9b741d}.fault-text{color:#b63330;align-items:center;gap:4px;font-size:11px;display:inline-flex}.soc{font-variant-numeric:tabular-nums;align-items:center;gap:5px;font-size:12px;display:flex}.soc b{text-align:right;min-width:23px}.soc-track{background:#dae3df;border-radius:2px;width:50px;height:5px;position:relative;overflow:hidden}.soc-track>span{background:#208c73;height:100%;display:block}.odo-cell{font-variant-numeric:tabular-nums;font-size:12px}.odo-cell small{color:var(--muted)}.seen-cell{color:var(--muted);font-size:11px;line-height:1.8}.row-arrow{color:#7a8b82}.pagination{color:var(--muted);justify-content:space-between;align-items:center;padding:18px 0;font-size:12px;display:flex}.pagination>div{gap:8px;display:flex}.vehicle-detail{border-left:1px solid #c9d6ce;min-width:0;padding-left:24px}.detail-heading{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:15px;display:flex}.detail-heading h2{overflow-wrap:anywhere;font-size:19px;line-height:1.5}.detail-status{gap:16px;display:flex}.detail-status .badge{font-size:13px}.battery-section{flex-direction:column;gap:16px;margin:24px 0;display:flex}.battery-section>span:first-child{color:var(--muted);gap:8px;font-size:12px;display:flex}.battery-section .soc{font-size:20px}.battery-section .soc-track{flex:1;height:9px;margin-right:10px}.vehicle-detail details{border-bottom:1px solid var(--border);margin:0 0 26px;padding:0 0 20px}summary{cursor:pointer;color:var(--muted);padding:5px 0;font-size:12px}.receipts>div{justify-content:space-between;gap:12px;margin:14px 0;display:flex}.receipts dd{font-size:11px}.warning-text{color:#956912;margin-top:4px;display:block}.dtc-list li{border-top:1px solid var(--border);padding:15px 0}.dtc-list li>div{justify-content:space-between;gap:10px;display:flex}.dtc-list strong{overflow-wrap:anywhere;font-size:13px}.dtc-list p{color:var(--muted);margin:7px 0;font-size:11px}.dtc-list small{color:#836d54;font-size:11px}.account-section{max-width:540px;padding-top:15px}.account-section>svg{color:var(--accent);margin-bottom:18px}.account-section>button{margin-right:10px}.danger-button{color:#ae3430}.workspace-footer{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;padding:15px 30px;font-size:10px;display:flex}@media (width<=1360px){.fleet-list.has-detail .table-head,.fleet-list.has-detail .vehicle-row{grid-template-columns:minmax(130px,1.4fr) minmax(85px,1fr) 95px 16px}.fleet-list.has-detail .odo-cell,.fleet-list.has-detail .seen-cell,.fleet-list.has-detail .table-head>span:nth-child(4),.fleet-list.has-detail .table-head>span:nth-child(5){display:none}}@media (width<=1100px){.app-shell{grid-template-columns:172px minmax(0,1fr)}.sidebar{padding-inline:12px}.sidebar .brand{padding-inline:6px}.brand img{width:136px}.content{padding:24px}.summary-item{padding:16px 12px}.summary-arrow{display:none}.table-head,.vehicle-row{grid-template-columns:minmax(140px,1.4fr) minmax(100px,1fr) 100px 100px 16px}.odo-cell,.table-head>span:nth-child(4){display:none}.fleet-layout:has(.vehicle-detail){grid-template-columns:minmax(0,1fr)}.fleet-list.has-detail{display:none}.vehicle-detail{border-left:0;max-width:680px;padding:0}}@media (width<=760px){.auth-page{flex-direction:column;justify-content:center;padding:150px 24px 60px;display:flex}.auth-image{display:none}.auth-page>header{top:20px;left:24px;right:24px}.auth-page .brand,.auth-form{padding:0}.auth-page>footer{left:24px;right:auto}.app-shell{display:block}.sidebar{width:100%;height:auto;padding:16px 16px 0;position:static}.sidebar .brand{flex-direction:row;align-items:center;gap:15px;padding:0 0 16px}.brand strong{font-size:17px}.sidebar nav{flex-direction:row;gap:4px}.sidebar nav button{border-radius:4px 4px 0 0;flex:1;justify-content:center;font-size:13px}.sidebar nav button.active{box-shadow:inset 0 -3px #52c59e}.sidebar-bottom{display:none}.topbar{gap:10px;min-height:64px;padding:12px 16px}.organisation{display:block}.organisation strong{font-size:13px}.organisation>span{border:0;margin-top:4px;padding:0;font-size:10px;display:block}.top-actions{gap:6px}.top-actions>span{display:none}.content{padding:24px 16px}.page-title{align-items:flex-start;margin-bottom:22px}.page-title h1{font-size:23px}.page-title>.muted{max-width:95px;line-height:1.7}.summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-item{border-bottom:1px solid var(--border);min-height:110px;padding:16px}.summary-item:first-child{flex-direction:row;grid-column:1/-1;align-items:center;min-height:76px}.summary-item:nth-child(odd){border-right:0}.summary-item strong{font-size:28px}.home-band{grid-template-columns:minmax(0,1fr);gap:28px}.operation-summary{border-left:0;border-top:1px solid var(--border);padding:24px 0 0}.toolbar{flex-direction:column;align-items:stretch;gap:10px}.search-field{width:100%}.select-field{justify-content:flex-end}.select-field select{width:144px}.table-head{display:none}.vehicle-row{grid-template-columns:minmax(0,1fr) 105px;gap:12px;min-height:135px;padding:16px 12px}.vehicle-name{grid-area:1/1}.state-cell{grid-area:2/1}.soc-cell{grid-area:1/2;justify-self:end}.seen-cell{grid-area:3/1/auto/-1;display:block}.seen-cell:before{content:"마지막 수신 "}.row-arrow{grid-area:2/2;justify-self:end}.filters{gap:2px}.filters button{padding:8px 10px;font-size:12px}.workspace-footer{padding:14px 16px}.vehicle-detail{width:100%}.notice{flex-wrap:wrap}}@keyframes auth-zoom{0%{transform:scale(1)}to{transform:scale(1.04)}}@keyframes auth-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes view-enter{0%{opacity:0}to{opacity:1}}@keyframes detail-enter{0%{opacity:0;transform:translate(6px)}to{opacity:1;transform:translate(0)}}.content{animation:.18s ease-out view-enter}.vehicle-detail{animation:.18s ease-out detail-enter}:root,.auth-page,.topbar,.summary-strip,.sidebar,.workspace-footer,.vehicle-detail{transition:background-color .2s,color .18s,border-color .18s}.primary>svg,.icon-button>svg{transition:transform .16s ease-out}@media (hover:hover) and (pointer:fine){.primary:hover:not(:disabled)>svg{transform:translate(2px)}.icon-button:hover:not(:disabled)>svg{transform:scale(1.06)}}@media (width<=760px){.auth-visual{display:none}.auth-image{animation:none}.auth-page{padding-top:100px}.auth-form{width:min(100%,380px)}.auth-brand{gap:28px;margin-bottom:26px}.auth-brand .product-mark{width:218px}.brand .product-mark{width:105px}}@media (width>=761px) and (width<=1100px){.visual-caption{flex-wrap:wrap;bottom:28px;left:22px;right:22px}.auth-form{padding-inline:28px}}@media (width<=1023px),(aspect-ratio<=1){.auth-page{flex-direction:column;justify-content:center;padding:100px 24px 60px;display:flex}.auth-visual{display:none}.auth-form{width:min(100%,380px);padding:0}.auth-page>footer{left:24px;right:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.primary>svg,.icon-button>svg{transform:none!important}}:root[data-theme=light] .auth-page{color:#182530;background:#f8fafb}:root[data-theme=light] .auth-form input{color:#202827;background:#fff;border-color:#bac7c1}:root[data-theme=light] .auth-form .muted,:root[data-theme=light] .auth-form dt{color:#64716d}:root[data-theme=light] .auth-form .facts>div{border-color:#dce3df}:root[data-theme=light] .auth-form>.text-button,:root[data-theme=light] .step{color:#087a72}:root[data-theme=light] .auth-page>header .environment{color:#35675c;border-color:#b6d3c6}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f1f5f9;--muted:#a3b1c6;--border:#26364c;--accent:#71d2ed;background:#060a14}:root[data-theme=dark] .auth-page{color:#f1f5f9;background:#060a14}:root[data-theme=dark] button,:root[data-theme=dark] input,:root[data-theme=dark] select{color:#edf2f8;background:#121e30;border-color:#34485f}:root[data-theme=dark] button:hover:not(:disabled){background:#1c2c44}:root[data-theme=dark] .topbar,:root[data-theme=dark] .summary-strip,:root[data-theme=dark] .vehicle-row,:root[data-theme=dark] .search-field{background:#0f1523}:root[data-theme=dark] .search-field input{background:0 0;border:0}:root[data-theme=dark] .primary{color:#fff;background:#255791;border-color:#366ca8}:root[data-theme=dark] .primary:hover:not(:disabled){background:#2d639f}:root[data-theme=dark] .text-button{color:#85c9ef;background:0 0}:root[data-theme=dark] .notice{background:#18273b;border-color:#34485f}:root[data-theme=dark] .notice.error{color:#ffb1a6;background:#3e2524;border-color:#8e544c}:root[data-theme=dark] .filters button{background:0 0;border-color:#0000}:root[data-theme=dark] .filters button.selected,:root[data-theme=dark] .vehicle-row.active{color:#c8edfa;background:#1b3048}:root[data-theme=dark] .vehicle-detail{border-color:#34485f}:root[data-theme=dark] .badge{color:#b5c4d8}:root[data-theme=dark] .badge.driving{color:#8fbff0}:root[data-theme=dark] .badge.online,:root[data-theme=dark] .badge.charging{color:#6fd6ad}:root[data-theme=dark] .badge.offline,:root[data-theme=dark] .warning-text,:root[data-theme=dark] .summary-item.offline svg{color:#e6c179}:root[data-theme=dark] .fault-text,:root[data-theme=dark] .danger-button,:root[data-theme=dark] .summary-item.fault strong,:root[data-theme=dark] .summary-item.fault svg,:root[data-theme=dark] .attention-list li>svg{color:#ffa89c}:root[data-theme=dark] .dtc-list small{color:#c3b48c}:root[data-theme=dark] .soc-track{background:#31435c}:root[data-theme=dark] .soc-track>span{background:#55c499}:root[data-theme=dark] .auth-form .facts>div{border-color:#26364c}:root[data-theme=dark] .auth-form .muted,:root[data-theme=dark] .auth-form dt,:root[data-theme=dark] .password-input .icon-button{color:#a3b1c6}:root[data-theme=dark] .step{color:#8cc9ec}:root[data-theme=dark] .auth-form>.primary{background:#255791;border-color:#366ca8}:root[data-theme=dark] .auth-form>.primary:hover:not(:disabled){background:#2d639f}@media (width<=760px){:root[data-theme=light] .auth-page .brand{padding:12px}.auth-page>header .top-actions>.environment{display:none}}.attention-list li{padding:0;display:block}.attention-list li>button{text-align:left;background:0 0;border:0;border-radius:0;gap:12px;width:100%;padding:18px 4px}.attention-list button>svg:first-child{color:#ba3e36}.attention-identity{flex:1;min-width:0}.attention-identity small{color:var(--muted);margin-top:6px;display:block}:root[data-theme=dark] .attention-list button{background:0 0}:root[data-theme=dark] .attention-list button>svg:first-child{color:#ffa89c}@media (width<=760px){.sidebar nav{grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;display:grid}.sidebar nav button{flex-direction:column;gap:7px;min-width:0;padding:10px 2px;font-size:11px}.sidebar nav button span{overflow-wrap:anywhere;max-width:100%}}.workbench-shell{flex-direction:column;display:flex}.application-header{border-bottom:1px solid var(--border);background:#fff;align-items:center;gap:32px;min-height:80px;padding:0 28px;display:flex}.application-header .brand{flex-direction:row;align-items:center;gap:18px}.application-header .brand img{width:143px;height:30px}.application-header .brand .product-mark{color:#23374c;width:83px}.application-header .brand .product-accent{fill:#2366a5}.application-header nav{align-self:stretch;align-items:stretch;gap:8px;margin-left:auto;display:flex}.application-header nav button{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:0;padding:0 18px;font-weight:600}.application-header nav button.active{color:#155e96;box-shadow:inset 0 -3px #2374b6}.application-header nav button:hover{background:#f3f7fa}.application-header .top-actions{border-left:1px solid var(--border);gap:4px;padding-left:20px}.application-header .icon-button,.workspace-context .icon-button{background:0 0;border-color:#0000}.workbench-shell .workspace{flex:1}.workspace-context{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;min-height:58px;padding:10px 28px;display:flex}.workspace-context .organisation strong{font-size:13px}.workspace-context .local-label{font-size:11px}.management-tabs{border-bottom:1px solid var(--border);background:#fff;gap:22px;padding:0 28px;display:flex}.management-tabs button{color:var(--muted);background:0 0;border:0;border-radius:0;padding:14px 2px}.management-tabs button[aria-pressed=true]{color:#155e96;font-weight:650;box-shadow:inset 0 -2px #2374b6}.workbench-shell .content{padding:24px 28px}.workbench-shell .operation-title{margin-bottom:20px}.operation-title h1{font-size:24px}.operation-status{border-block:1px solid var(--border);background:#fff;grid-template-columns:repeat(6,minmax(0,1fr));margin-bottom:20px;display:grid}.operation-status button{border:0;border-right:1px solid var(--border);min-height:56px;color:var(--muted);background:0 0;border-radius:0;justify-content:flex-start;padding:10px 18px;font-size:12px}.operation-status button:last-child{border-right:0}.operation-status button strong{color:#283b48;font-variant-numeric:tabular-nums;margin-left:auto;font-size:20px}.operation-status button.selected{color:#155e96;background:#eaf2f9;box-shadow:inset 0 -2px #2374b6}.operation-layout{border-block:1px solid var(--border);background:#fff;grid-template-columns:354px minmax(0,1fr);height:max(500px,100dvh - 360px);max-height:950px;display:grid}.operation-list{border-right:1px solid var(--border);flex-direction:column;min-width:0;min-height:0;display:flex}.operation-search{padding:16px 16px 10px}.operation-search .search-field{width:100%}.operation-list-title{justify-content:space-between;align-items:center;gap:12px;padding:8px 18px 16px;display:flex}.operation-list-title h2{font-size:14px}.operation-list-scroll{overscroll-behavior-y:contain;flex:1;min-height:0;padding:0 16px;overflow-y:auto}.operation-vehicle{border:1px solid var(--border);border-radius:6px;margin-bottom:10px;padding:14px 12px 0}.operation-vehicle.selected{background:#f4f8fc;border-color:#2374b6;box-shadow:inset 3px 0 #2374b6}.operation-vehicle-name{align-items:center;gap:9px;margin-bottom:12px;display:flex}.operation-vehicle-name>svg{color:var(--muted)}.operation-vehicle-name>div{flex:1;min-width:0}.operation-vehicle-name strong{overflow-wrap:anywhere;font-size:14px;line-height:1.5}.operation-vehicle-name small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.operation-vehicle .soc-track{display:none}.operation-vehicle .soc{flex-shrink:0}.operation-vehicle-meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px;margin:10px 0 14px;font-size:10px;line-height:1.6;display:flex}.operation-vehicle-actions{border-top:1px solid var(--border);justify-content:space-between;gap:12px;display:flex}.operation-vehicle-actions button{color:#23628e;font-size:11px}.operation-list>.pagination{border-top:1px solid var(--border);padding:12px 16px}.location-panel{flex-direction:column;min-width:0;display:flex;overflow-y:auto}.location-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.location-heading .eyebrow{font-size:11px}.location-heading h2{font-size:17px}.location-heading .text-button{font-size:12px}.naver-map-shell{flex:1;min-height:240px;position:relative}.naver-map-frame{border:0;width:100%;height:100%;position:absolute;inset:0}.map-recenter{border:1px solid var(--border);width:40px;height:40px;position:absolute;top:12px;left:12px;box-shadow:0 2px 5px #0002}.map-unconnected{color:#748797;background:#f4f7fa;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:absolute;inset:0}.map-unconnected strong{font-size:14px;font-weight:500}.location-reading{border-top:1px solid var(--border);min-height:80px;padding:20px 24px}.location-reading .section-heading{margin-bottom:8px}.location-identity{align-items:center;gap:10px;min-width:0;display:flex}.location-identity strong{overflow-wrap:anywhere}.location-reading .text-button{flex-shrink:0;font-size:12px}.location-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:0;display:grid}.location-facts>div{min-width:0}.location-facts dt{margin-bottom:8px;font-size:11px}.location-facts dd{text-align:left;font-variant-numeric:tabular-nums;font-size:12px;line-height:1.7}.schedule-unconnected{border-block:1px solid var(--border);min-height:330px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex}.schedule-unconnected h2{font-size:16px;font-weight:500}@media (width>=761px){.workbench-shell:has(.operations-content){height:100dvh;min-height:740px}.workbench-shell:has(.operations-content) .workspace{min-height:0}:is(.workbench-shell:has(.operations-content) .application-header,.workbench-shell:has(.operations-content) .workspace-context,.workbench-shell:has(.operations-content) .workspace-footer){flex-shrink:0}.operations-content{flex-direction:column;min-height:0;display:flex}.operations-content>.operation-title,.operations-content>.operation-status{flex-shrink:0}.operations-content>.operation-layout{flex:1;height:auto;min-height:240px;max-height:none}}:root[data-theme=dark] .application-header,:root[data-theme=dark] .management-tabs,:root[data-theme=dark] .operation-status,:root[data-theme=dark] .operation-layout{background:#0f1523}:root[data-theme=dark] .application-header .brand .product-mark{color:#edf2f8}:root[data-theme=dark] .application-header .brand .product-accent{fill:#8bbfff}:root[data-theme=dark] .application-header nav button,:root[data-theme=dark] .application-header .icon-button,:root[data-theme=dark] .workspace-context .icon-button,:root[data-theme=dark] .management-tabs button,:root[data-theme=dark] .operation-status button{background:0 0}:root[data-theme=dark] .application-header nav button.active,:root[data-theme=dark] .management-tabs button[aria-pressed=true]{color:#a8d7ff;box-shadow:inset 0 -3px #7faee4}:root[data-theme=dark] .application-header nav button:hover{background:#1b2c42}:root[data-theme=dark] .operation-status button strong{color:#e0eaf5}:root[data-theme=dark] .operation-status button.selected,:root[data-theme=dark] .operation-vehicle.selected{color:#a8d7ff;background:#1b2c42}:root[data-theme=dark] .operation-vehicle-actions button{color:#a8d7ff}:root[data-theme=dark] .map-unconnected{color:#96aac5;background:#121c2d}@media (width<=1200px){.application-header{gap:16px;padding-inline:20px}.application-header .brand{gap:12px}.application-header .brand .product-mark{width:70px}.application-header .brand img{width:120px}.application-header nav{gap:0}.application-header nav button{padding-inline:12px;font-size:13px}.application-header .top-actions{padding-left:10px}.operation-status button{padding-inline:12px}.operation-layout{grid-template-columns:324px minmax(0,1fr)}.location-facts{grid-template-columns:1fr;gap:10px}.location-facts>div{justify-content:space-between;gap:12px;display:flex}.location-facts dt{margin:0}.location-facts dd{text-align:right}}@media (width<=1000px){.application-header{grid-template-columns:minmax(0,1fr) auto;gap:0;padding:16px 20px 0;display:grid}.application-header nav{grid-area:2/1/auto/-1;width:100%;margin:10px 0 0}.application-header nav button{flex:1;min-height:52px}.application-header .top-actions{border-left:0;padding-left:0}.operation-status{grid-template-columns:repeat(3,minmax(0,1fr))}.operation-status button:nth-child(-n+3){border-bottom:1px solid var(--border)}.operation-status button:nth-child(3){border-right:0}}@media (width<=760px){.application-header{padding:12px 16px 0}.application-header .brand{gap:10px}.application-header .brand img{width:108px;height:26px}.application-header .brand .product-mark{width:60px}.application-header .top-actions{gap:0}.application-header .icon-button{width:36px;height:40px}.application-header nav button{gap:5px;padding:10px 2px;font-size:11px}.application-header nav button svg{width:15px}.workspace-context{padding:8px 16px}.workspace-context .organisation{gap:10px;display:flex}.workspace-context .organisation>span{margin-top:0}.workbench-shell .content{padding:20px 16px}.management-tabs{padding-inline:16px}.operation-status{margin-bottom:16px}.operation-status button{gap:5px;padding:10px 8px;font-size:11px}.operation-status button strong{font-size:18px}.operation-status button svg{width:14px}.operation-layout{height:auto;max-height:none;display:block}.operation-list{border-right:0}.operation-list-scroll{overflow:visible}.operation-layout:not(.has-position) .location-panel,.operation-layout.has-position .operation-list{display:none}.operation-layout.has-position .location-panel{min-height:480px}.location-heading,.location-reading{padding:16px}.location-reading .section-heading{flex-wrap:wrap;align-items:flex-start}.operation-search,.operation-list-scroll{padding-inline:12px}}.fleet-layout:has(.vehicle-detail){grid-template-columns:280px minmax(0,1fr);gap:24px}.fleet-list.has-detail .table-head{display:none}.fleet-list.has-detail .vehicle-row{grid-template-columns:minmax(0,1fr) 18px;gap:10px}.fleet-list.has-detail .vehicle-name{grid-area:1/1}.fleet-list.has-detail .state-cell{grid-area:2/1/auto/-1}.fleet-list.has-detail .row-arrow{grid-area:1/2}.fleet-list.has-detail .soc-cell,.fleet-list.has-detail .odo-cell,.fleet-list.has-detail .seen-cell{display:none}.fleet-list.has-detail .toolbar{flex-direction:column;align-items:stretch}.fleet-list.has-detail .search-field{width:100%}.fleet-list.has-detail .select-field{justify-content:flex-end}.fleet-list.has-detail .filters{flex-wrap:wrap}.vehicle-detail{--cluster-blue:#216bb0;--cluster-track:#d9e4ec;--cluster-text:#21374a;--cluster-surface:#fff;--cluster-soft:#f2f6f9;max-width:none}.detail-heading h2{font-size:22px}.detail-identity{color:var(--muted);border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px 22px;padding-bottom:18px;font-size:12px;display:flex}.detail-identity span{overflow-wrap:anywhere;min-width:0}.detail-state-row{flex-wrap:wrap;align-items:center;gap:12px 20px;margin:18px 0;display:flex}.detail-state-row .muted{margin-left:auto;font-size:11px}.detail-view-tabs{border-bottom:1px solid var(--border);gap:24px;margin-bottom:18px;display:flex}.detail-view-tabs button{color:var(--muted);background:0 0;border:0;border-radius:0;padding:12px 0;font-size:13px}.detail-view-tabs button[aria-selected=true]{color:var(--cluster-blue);box-shadow:inset 0 -2px 0 var(--cluster-blue);font-weight:650}.vehicle-cluster{border-block:1px solid var(--border);background:var(--cluster-surface);color:var(--cluster-text);position:relative}.vehicle-cluster:before{content:"";background:var(--cluster-blue);width:64px;height:2px;position:absolute;top:-1px;left:0}.cluster-caption{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.cluster-caption h3,.cluster-group h3{align-items:center;gap:8px;margin:0;font-size:12px;font-weight:650;display:flex}.cluster-caption h3 svg{color:var(--cluster-blue)}.cluster-caption>span{color:var(--muted);font-size:10px}.vehicle-model-band{border-bottom:1px solid var(--border);padding:16px 18px 12px}.vehicle-model-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.vehicle-model-label{flex-wrap:wrap;align-items:baseline;gap:6px 12px;min-width:0;display:flex}.vehicle-model-label>span,.vehicle-pack-status{color:var(--muted);font-size:11px}.vehicle-model-label strong{overflow-wrap:anywhere;font-size:13px;font-weight:600;line-height:1.5}.vehicle-pack-status{flex-shrink:0}.vehicle-model-stage{justify-content:center;align-items:center;min-width:0;min-height:90px;padding-top:8px;display:flex}.vehicle-cutaway{aspect-ratio:3;width:100%;max-width:720px;position:relative}:root[data-theme=light] .vehicle-cutaway{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark] .vehicle-cutaway{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.vehicle-cutaway img{object-fit:contain;width:100%;height:100%;display:block}:root .vehicle-model-band .vehicle-cutaway .vehicle-pack-hotspot{background:0 0;border:1px solid #0000;border-radius:2px;width:11%;height:13.3333%;min-height:32px;padding:0;transition:background .15s,border-color .15s;position:absolute;top:23.3333%}.vehicle-pack-hotspot span{color:var(--cluster-text);font-variant-numeric:tabular-nums;font-size:10px;font-weight:500;line-height:14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}:root .vehicle-model-band .vehicle-cutaway .vehicle-pack-hotspot:hover,:root .vehicle-model-band .vehicle-cutaway .vehicle-pack-hotspot:focus-visible{border-color:var(--cluster-blue);outline:2px solid var(--cluster-blue);outline-offset:2px;background:#276cad22}.vehicle-model-footnote{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:6px 12px;font-size:10px;line-height:1.6;display:flex}.vehicle-model-footnote>:last-child{align-items:center;gap:5px;display:flex}.vehicle-model-footnote>:last-child:before{content:"";background:var(--muted);border-radius:50%;width:6px;height:6px}.vehicle-model-unavailable{color:var(--muted);font-size:12px}.pack-dialog{border:1px solid var(--border);background:var(--cluster-surface);width:min(520px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--cluster-text);border-radius:8px;padding:24px;overflow:auto}.pack-dialog::backdrop{background:#070f21a3}.pack-dialog-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.pack-dialog-heading span{color:var(--muted);overflow-wrap:anywhere;font-size:11px}.pack-dialog-heading h2{margin:8px 0 0;font-size:21px;font-weight:600}.pack-dialog .icon-button{flex-shrink:0;width:44px;height:44px}.pack-switcher{grid-template-columns:44px repeat(6,minmax(0,1fr)) 44px;gap:4px;margin-top:24px;display:grid}:root .pack-dialog .pack-switcher button{min-width:0;min-height:44px;color:var(--muted);border:1px solid var(--border);background:0 0;border-radius:4px;padding:0;font-size:12px}:root .pack-dialog .pack-switcher button[aria-pressed=true]{background:var(--cluster-soft);color:var(--cluster-text);border-color:var(--cluster-blue);font-weight:650}.pack-data-state{color:var(--muted);margin:20px 0 0;font-size:12px}.pack-readings{border-bottom:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 16px;margin:20px 0;padding-bottom:20px;display:grid}.pack-readings dt,.pack-metadata dt{color:var(--muted);font-size:12px}.pack-readings dd{color:var(--muted);margin:8px 0 0;font-size:12px}.pack-readings strong{color:var(--cluster-text);font-size:24px;font-weight:500}.pack-metadata{gap:14px;display:grid}.pack-metadata>div{justify-content:space-between;gap:12px;display:flex}.pack-metadata dd{margin:0;font-size:12px}.pack-dialog>p:last-child{border-top:1px solid var(--border);color:var(--muted);margin:20px 0 0;padding-top:16px;font-size:11px;line-height:1.6}.cluster-layout{grid-template-columns:minmax(140px,1fr) minmax(230px,1.4fr) minmax(140px,1fr);gap:16px;padding:22px 18px 18px;display:grid}.cluster-wing{flex-direction:column;gap:24px;min-width:0;display:flex}.cluster-group{min-width:0}.cluster-group h3{color:var(--muted);margin-bottom:12px}.cluster-group h3 svg{flex-shrink:0}.cluster-group dl{margin:0}.cluster-reading{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:4px 8px;min-height:40px;padding:9px 0;display:grid}.cluster-reading dt{color:var(--muted);overflow-wrap:anywhere;font-size:11px;line-height:1.6}.cluster-reading dd{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;margin:0}.cluster-reading dd strong{font-size:17px;font-weight:600}.cluster-reading dd span{color:var(--muted);font-size:10px}.cluster-reading small{color:var(--muted);grid-column:1/-1;font-size:10px}.cluster-source{color:var(--muted);overflow-wrap:anywhere;margin:10px 0 0;font-size:10px;line-height:1.7}.cluster-center{text-align:center;background-image:linear-gradient(var(--cluster-soft) 1px, transparent 1px), linear-gradient(90deg, var(--cluster-soft) 1px, transparent 1px);background-size:24px 24px;min-width:0}.cluster-dial{aspect-ratio:280/260;width:100%;max-width:300px;margin:0 auto;position:relative}.cluster-dial>svg{width:100%;height:100%;display:block;overflow:visible}.cluster-dial circle{fill:none}.dial-track,.dial-value{stroke-width:10px;stroke-linecap:butt}.dial-track{stroke:var(--cluster-track)}.dial-value{stroke:var(--cluster-blue);transition:stroke-dasharray .4s ease-out}.dial-inner{stroke:var(--cluster-track);stroke-width:4px}:root[data-theme=dark] .dial-value{filter:drop-shadow(0 0 5px #82b8f033)}.cluster-dial text{fill:var(--muted);font-size:10px}.dial-center{flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;inset:23% 14% 19%}.dial-center>svg{color:var(--cluster-blue)}.dial-center>span,.dial-center small{color:var(--muted);font-size:11px}.dial-center>div{align-items:baseline;gap:5px;display:flex}.dial-center strong{font-variant-numeric:tabular-nums;font-size:42px;font-weight:650;line-height:1.15}.dial-center>div>span{color:var(--muted);font-size:15px}.cluster-center-readings{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 10px;display:grid}.cluster-center-readings .cluster-reading{text-align:center;border:0;display:block}.cluster-center-readings .cluster-reading dd{text-align:center;margin-top:6px}.cluster-center-readings .cluster-reading small{margin-top:4px;display:block}.cluster-lower{background:var(--cluster-soft);border-top:1px solid var(--border);grid-template-columns:1.3fr 1fr 1fr;gap:24px;padding:20px 18px;display:grid}.cluster-lower .cluster-group:first-child dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;display:grid}.vehicle-detail .receipt-detail{padding-top:16px}.detail-history{min-height:280px}:root[data-theme=dark] .vehicle-detail{--cluster-blue:#82b8f0;--cluster-track:#30445e;--cluster-text:#edf3fa;--cluster-surface:#101b2b;--cluster-soft:#142135}:root[data-theme=dark] .detail-view-tabs button{background:0 0}@media (width<=1200px){.fleet-layout:has(.vehicle-detail){grid-template-columns:minmax(0,1fr)}.fleet-list.has-detail{display:none}.vehicle-detail{border-left:0;padding-left:0}}@media (width<=760px){.vehicle-model-band{padding:14px 12px 12px}.vehicle-model-label strong{font-size:12px}.vehicle-model-label{flex-direction:column}.vehicle-model-stage{padding-block:16px 8px}.vehicle-pack-hotspot span{padding-bottom:4px;top:0;transform:translate(-50%,-100%)}.vehicle-model-footnote>:last-child{display:none}.pack-dialog{padding:20px 16px}.pack-switcher{grid-template-columns:repeat(6,minmax(0,1fr))}.pack-switcher>.icon-button{display:none}.cluster-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px;padding:16px}.cluster-center{grid-area:1/1/auto/-1}.cluster-dial{width:260px;max-width:100%}.cluster-center-readings{max-width:300px;margin-inline:auto}.cluster-lower{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px;padding:20px 16px}.cluster-lower .cluster-group:first-child{grid-column:1/-1}.detail-state-row .muted{margin-left:0}.cluster-reading{grid-template-columns:minmax(0,1fr)}.cluster-reading dd{text-align:left;white-space:normal;overflow-wrap:anywhere}}@media (prefers-reduced-motion:reduce){.dial-value{transition:none}}.trial-main{max-width:1440px;margin:auto;padding:36px 5%}.trial-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.trial-heading h1{letter-spacing:0;margin:8px 0 0;font-size:26px}.trial-connected{color:#268064;font-size:12px}.trial-disconnected{color:#bd4954;font-size:12px}.trial-stats{border-top:2px solid #527b6b;border-bottom:1px solid #879e8e50;grid-template-columns:1fr 1fr 1.8fr;gap:24px;margin-bottom:30px;padding:24px 0;display:grid}.trial-stats>div{border-right:1px solid #879e8e50;gap:12px;display:grid}.trial-stats>div:last-child{border:0}.trial-stats span{color:var(--muted,#738177);font-size:12px}.trial-stats strong{font-size:28px;font-weight:600}.trial-stats .trial-timestamp{font-size:19px}.trial-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.trial-title{align-items:center;gap:10px;display:flex}.trial-title h2{margin:0;font-size:14px}.trial-title>span{color:var(--muted,#738177);margin-left:8px;font-size:11px}.trial-toolbar select{max-width:200px;font:inherit;background:var(--surface,#fff);color:inherit;border:1px solid #879e8e60;border-radius:4px;padding:8px;font-size:12px}.trial-console{color:#e2ece5;background:#12231e;border:1px solid #294236;border-radius:4px;min-height:250px;overflow:auto}.trial-console table{border-collapse:collapse;text-align:left;width:100%;min-width:850px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.trial-console th{color:#a3b9a9;white-space:nowrap;background:#1c3027;padding:15px;font-size:11px;font-weight:500}.trial-console td{border-bottom:1px solid #294236;padding:14px 15px}.trial-console small{color:#94ad9c;overflow-wrap:anywhere;margin-top:5px;font-size:11px;display:block}.trial-saved{color:#84cbb0}.trial-disposition{color:#d4b982}.trial-console .text-button{color:#c3dccd;font-size:12px}.trial-empty{text-align:center;color:#94ad9c;padding:60px;font:14px inherit}.trial-footer{color:var(--muted,#738177);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:15px;font-size:11px;display:flex}.trial-detail{border-top:1px solid #879e8e50;margin-top:30px;padding:20px 0}.trial-detail header{justify-content:space-between;align-items:center;display:flex}.trial-detail h2{font-size:16px}.trial-detail dl{grid-template-columns:85px minmax(0,1fr);gap:12px;font-size:12px;display:grid}.trial-detail dd{overflow-wrap:anywhere;margin:0}.trial-detail pre{color:#b8dcc7;white-space:pre-wrap;overflow-wrap:anywhere;background:#12231e;border-radius:4px;max-height:320px;padding:20px;font-size:12px;line-height:1.8;overflow:auto}@media (width<=750px){.trial-main{padding:26px 20px}.trial-stats{grid-template-columns:1fr 1fr}.trial-stats>div:nth-child(2){border:0}.trial-stats>div:last-child{border-top:1px solid #879e8e50;grid-column:1/-1;padding-top:18px}.trial-toolbar{flex-direction:column;align-items:flex-start}.trial-title{flex-wrap:wrap}.trial-title>span{margin-left:0}.trial-toolbar>.top-actions{width:100%}.trial-toolbar select{flex:1;min-width:0}.trial-timestamp{overflow-wrap:anywhere}}.trial-toolbar .check-field{white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;display:flex}.trial-console .icon-button{color:#c3dccd;background:0 0;border:1px solid #527b6b;border-radius:4px;width:34px;min-width:34px;height:34px}.trial-console .icon-button:hover{background:#294236}.trial-detail dd{text-align:left}.trial-auth .auth-form>.primary{justify-content:center;padding:13px 44px;position:relative}.trial-auth .auth-form>.primary>svg{position:absolute;right:16px}:root[data-terminal-trial=true][data-theme=dark]{--muted:#a3b8ad;--border:#33463d;--accent:#83cbb4;background:#101614}:root[data-theme=dark] .trial-auth{background:#101614}:root[data-theme=dark] .trial-shell .application-header{background:#141e19}:root[data-theme=dark] .trial-auth input,:root[data-theme=dark] .trial-shell select,:root[data-theme=dark] .trial-auth .icon-button,:root[data-theme=dark] .trial-shell .icon-button{color:#e1eee7;background:#192720;border-color:#3d5448}:root[data-theme=dark] .trial-auth .auth-form>.primary{background:#287969;border-color:#398e7e}:root[data-theme=dark] .trial-auth .auth-form>.primary:hover{background:#328875}:root[data-theme=dark] .trial-connected{color:#83cbb4}.trial-main{max-width:1760px;padding:32px 36px}.trial-console{height:clamp(360px,52dvh,760px);min-height:0}.trial-console table{font-size:13px}.trial-detail pre{max-height:480px;font-size:13px}@media (width<=750px){.trial-main{padding:26px 20px}.trial-console{height:clamp(360px,52dvh,620px)}}.trial-tabs{border-bottom:1px solid #879e8e50;gap:20px;margin-bottom:18px;display:flex}.trial-tabs button{color:var(--muted);font:inherit;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;padding:12px 0;font-size:14px}.trial-tabs button[aria-selected=true]{color:inherit;border-color:#83cbb4}.trial-device-name{overflow-wrap:anywhere;max-width:320px;margin-bottom:4px;font:600 13px/1.5 system-ui,sans-serif;display:block}.trial-console.trial-comparison{height:auto;max-height:480px}.trial-comparison td{overflow-wrap:anywhere;max-width:320px}
