:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#edf3f6;--surface:#fff;--soft:#f5f8fa;--ink:#111b1d;--muted:#64736f;--line:#d8e3e7;--green:#13895f;--teal:#088494;--gold:#caa65e;--red:#c84646;--amber:#c98516;--gray:#6c7880;--sidebar:#091316;font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;color:var(--ink);background:var(--bg);margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;touch-action:manipulation}img{max-width:100%}.boot-screen,.login-page{background:linear-gradient(135deg,#22d3ae1f,#0000 34%,#caa65e1a 74%,#0000),linear-gradient(90deg,#ffffff0b 1px,#0000 1px) 0 0/46px 46px,linear-gradient(#ffffff09 1px,#0000 1px) 0 0/46px 46px,#071013;min-height:100vh}.boot-screen{color:#effff8;place-items:center;gap:18px;display:grid}.boot-screen img{border-radius:28px;width:112px}.login-page{grid-template-columns:minmax(420px,1.08fr) minmax(360px,500px);align-items:center;gap:46px;padding:46px max(28px,50vw - 590px);display:grid}.login-visual{background:linear-gradient(135deg,#2cecc124,#0000 42%),linear-gradient(315deg,#caa65e1c,#0000 36%),linear-gradient(#ffffff0e,#ffffff06);border:1px solid #8affe126;border-radius:12px;place-items:center;min-height:620px;display:grid;position:relative;overflow:hidden;box-shadow:0 34px 92px #00000061,inset 0 1px #ffffff14}.login-orbit{transform-origin:50% 68%;background-color:#0000;background-image:linear-gradient(90deg,#84ffe414 1px,#0000 1px),linear-gradient(#84ffe412 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:34px 34px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border:1px solid #84ffe421;border-radius:18px;position:absolute;inset:12%;transform:perspective(900px)rotateX(58deg);box-shadow:inset 0 0 42px #5df1d30f,0 0 70px #5df1d314}.login-orbit:before,.login-orbit:after{content:"";border-radius:inherit;position:absolute}.login-orbit:before{border:1px solid #caa65e26;inset:12%}.login-orbit:after{background:linear-gradient(90deg,#0000,#5ff1d3bf,#0000);height:3px;bottom:18%;left:16%;right:16%;box-shadow:0 0 24px #5ff1d357}.login-visual:before,.login-visual:after{content:"";pointer-events:none;position:absolute;inset:34px}.login-visual:before{clip-path:polygon(0 0,38% 0,38% 1px,1px 1px,1px 34%,0 34%,0 0,100% 66%,100% 100%,62% 100%,62% calc(100% - 1px),calc(100% - 1px) calc(100% - 1px),calc(100% - 1px) 66%);border:1px solid #88ffe226}.login-visual:after{opacity:.44;background:linear-gradient(90deg,#0000,#8dffe51f,#0000),repeating-linear-gradient(0deg,#0000 0 11px,#ffffff0a 12px);transform:skewY(-5deg)}.login-holo{aspect-ratio:1;isolation:isolate;background:linear-gradient(145deg,#ffffff1a,#ffffff06),#01090b33;border-radius:28px;place-items:center;width:min(68%,390px);display:grid;position:relative;box-shadow:inset 0 1px #ffffff14,0 28px 80px #00000057}.login-holo:before,.login-holo:after{content:"";z-index:-1;border:1px solid #84ffe438;position:absolute;inset:6%;transform:rotate(45deg)}.login-holo:after{border-color:#caa65e42;inset:18%;transform:rotate(0)}.login-holo span{border:1px solid #84ffe42e;display:block;position:absolute}.login-holo span:nth-child(2){inset:0 16%}.login-holo span:nth-child(3){inset:16% 0}.login-holo span:nth-child(4){background:linear-gradient(90deg,#0000,#84ffe485,#0000);width:76%;height:2px}.login-holo img{border-radius:30px;width:min(68%,300px);box-shadow:0 34px 90px #00000080,0 0 48px #28dcbe29}.login-visual-title{color:#f4fffb;justify-content:space-between;align-items:end;gap:16px;display:flex;position:absolute;bottom:26px;left:28px;right:28px}.login-visual-title strong{font-size:clamp(28px,4vw,52px);line-height:1}.login-visual-title span{color:#e7fff6ad;font-size:16px;font-weight:900}.login-signal-bars{background:#0410125c;border:1px solid #8affe121;border-radius:12px;align-items:end;gap:7px;height:46px;padding:10px 12px;display:flex;position:absolute;top:30px;right:30px;box-shadow:inset 0 1px #ffffff0f}.login-signal-bars i{background:linear-gradient(#5ff1d3eb,#caa65eb8);border-radius:999px;width:7px;display:block;box-shadow:0 0 16px #5ff1d333}.login-signal-bars i:first-child{opacity:.48;height:14px}.login-signal-bars i:nth-child(2){opacity:.62;height:20px}.login-signal-bars i:nth-child(3){opacity:.78;height:28px}.login-signal-bars i:nth-child(4){opacity:.9;height:34px}.login-signal-bars i:nth-child(5){height:40px}.login-panel{color:#f6fffb;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(145deg,#ffffff1f,#ffffff0d),linear-gradient(#0d2224f5,#050d10e6);border:1px solid #8affe129;border-radius:12px;gap:15px;padding:34px 34px 30px;display:grid;position:relative;box-shadow:0 28px 70px #0000005c,inset 0 1px #ffffff14}.login-panel:before{content:"";pointer-events:none;border:1px solid #ffffff0f;border-radius:12px;position:absolute;inset:12px}.login-panel-brand{align-items:center;gap:12px;display:flex}.login-panel-brand img{object-fit:cover;border-radius:16px;width:66px;height:66px;box-shadow:0 18px 34px #0000004d}.login-panel-brand span{color:#e7fff6d1;font-size:18px;font-weight:950}.login-panel p{color:#e7fff694;letter-spacing:0;text-transform:uppercase;margin:0;font-size:12px;font-weight:900}.login-panel h1{max-width:11em;margin:0 0 8px;font-size:clamp(30px,3.7vw,40px);line-height:1.08}.login-panel label{color:#e7fff6b8;gap:7px;font-weight:850;display:grid}.login-panel input{color:#fff;background:linear-gradient(#ffffff17,#ffffff0d),#ffffff0f;border:1px solid #8affe126;border-radius:8px;outline:0;height:52px;padding:0 15px}.login-panel input:focus{border-color:#5df1d38a;box-shadow:0 0 0 3px #5df1d31a,0 10px 22px #00000029}.login-panel button{color:#071013;background:linear-gradient(135deg,#63f5d7,#d8b668);border:0;border-radius:8px;height:52px;font-weight:950;transition:transform .18s,filter .18s,box-shadow .18s;box-shadow:0 14px 30px #5df1d324,inset 0 1px #ffffff75}.login-panel button:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 18px 36px #5df1d32e,inset 0 1px #ffffff7a}.login-panel button:disabled{cursor:not-allowed;filter:grayscale(.35);opacity:.72}.login-panel small{color:#ffb4b4}.icp-link,.icp-footer a{color:inherit;text-decoration:none}.icp-link{color:#e7fff69e;justify-self:center;margin-top:8px;font-size:13px}.icp-link:hover,.icp-footer a:hover{color:var(--green)}.see-screen{color:#102327;background:#dce6ea;position:fixed;inset:0;overflow:hidden}.see-map-shell{position:absolute;inset:0;overflow:hidden}.see-amap-container{position:absolute;inset:0}.see-topbar{z-index:8;pointer-events:none;justify-content:space-between;align-items:center;gap:12px;display:flex;position:absolute;top:18px;left:18px;right:18px}.see-topbar>span,.see-topbar em,.see-topbar b{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffc7;border:1px solid #d8e3e7b8;border-radius:10px;align-items:center;min-height:40px;display:inline-flex;box-shadow:0 18px 40px #121f2221}.see-topbar>span{gap:10px;padding:0 14px 0 8px}.see-topbar img{object-fit:contain;width:30px;height:30px}.see-topbar strong{font-size:15px;font-weight:950}.see-topbar em,.see-topbar b{padding:0 14px;font-size:13px;font-style:normal;font-weight:950}.see-topbar em{color:#087f5b}.see-filter-card{z-index:9;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffd6;border:1px solid #d8e3e7bd;border-radius:12px;align-items:end;gap:8px;max-width:min(860px,100vw - 36px);padding:10px;display:flex;position:absolute;top:70px;right:18px;box-shadow:0 18px 42px #121f2224}.see-filter-card label{gap:5px;min-width:132px;display:grid}.see-filter-card .see-plate-filter{min-width:230px}.see-filter-card span{color:#5c706c;font-size:11px;font-weight:950}.see-filter-card select,.see-filter-card button{border:1px solid #0b728533;border-radius:8px;outline:0;height:36px;font-size:13px;font-weight:950}.see-filter-card select{color:#102327;background:#ffffffe0;width:100%;min-width:0;padding:0 10px}.see-filter-card button{color:#0b7285;background:#0b728514;padding:0 12px}.see-vehicle-card{z-index:9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffd6;border:1px solid #d8e3e7bd;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;width:min(680px,100vw - 36px);padding:14px;display:grid;position:absolute;bottom:18px;left:18px;box-shadow:0 24px 54px #121f222e}.see-vehicle-logo{background:radial-gradient(circle at 35% 22%,#ffffff40,#0000 45%),linear-gradient(145deg,#123a34,#0c8f69);border:2px solid #ffffffeb;border-radius:999px;place-items:center;width:58px;height:58px;display:grid;box-shadow:0 14px 34px #121f2238}.see-vehicle-logo img{object-fit:contain;width:38px;height:38px}.see-vehicle-logo b{color:#fff;font-size:16px}.see-vehicle-card div{gap:4px;min-width:0;display:grid}.see-vehicle-card small,.see-vehicle-card p,.see-vehicle-card em{color:#5c706c;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:12px;font-style:normal;font-weight:850;overflow:hidden}.see-vehicle-card strong{color:#102327;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:22px;font-weight:950;overflow:hidden}.see-vehicle-card nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:260px;display:grid}.see-vehicle-card button,.see-vehicle-select{color:#0b7285;background:#0b728514;border:1px solid #0b728538;border-radius:8px;min-width:76px;min-height:34px;padding:0 12px;font-weight:950}.see-vehicle-select{color:#102327;background:#ffffffd1;outline:0;grid-column:1/-1;width:100%}.see-vehicle-card button:hover{background:#0b728524;border-color:#0b728561}.see-empty{z-index:7;inset:72px 22px 22px}@media (width<=720px){.see-topbar{gap:8px;top:10px;left:10px;right:10px}.see-topbar>span{max-width:calc(100vw - 130px)}.see-topbar strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.see-topbar em{display:none}.see-topbar b{min-height:34px;padding:0 10px}.see-filter-card{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-width:none;padding:8px;display:grid;top:54px;left:10px;right:10px}.see-filter-card label{min-width:0}.see-filter-card .see-plate-filter{grid-column:1/-1;min-width:0}.see-filter-card button{grid-column:1/-1}.see-vehicle-card{grid-template-columns:auto minmax(0,1fr);width:auto;padding:10px;bottom:10px;left:10px;right:10px}.see-vehicle-logo{width:48px;height:48px}.see-vehicle-logo img{width:32px;height:32px}.see-vehicle-card strong{font-size:18px}.see-vehicle-card nav{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));min-width:0}}.app-shell{grid-template-columns:252px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#fff;background:linear-gradient(180deg, #20cb9a21, transparent 34%), var(--sidebar);flex-direction:column;gap:8px;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0}.brand{grid-template-columns:52px minmax(0,1fr);align-items:center;gap:12px;min-height:68px;margin-bottom:10px;display:grid}.brand img{object-fit:cover;border-radius:13px;width:52px;height:52px}.brand strong,.brand span{display:block}.brand span{color:#91a6a1;margin-top:4px;font-size:12px}.sidebar button{color:#bdd0ca;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:12px;min-height:44px;padding:0 12px;font-weight:900;transition:color .18s,border-color .18s,background .18s,transform .18s;display:flex;position:relative}.sidebar button:before{content:"";background:0 0;border-radius:999px;width:3px;position:absolute;top:10px;bottom:10px;left:-14px}.nav-icon{color:#aac2bc;background:radial-gradient(circle at 35% 22%,#ffffff2e,#0000 46%),linear-gradient(145deg,#ffffff17,#ffffff09);border:1px solid #ffffff14;border-radius:10px;flex:0 0 34px;place-items:center;width:34px;height:34px;display:grid;box-shadow:inset 0 1px #ffffff14,0 8px 18px #00000029}.nav-icon svg{stroke-width:2.05px;width:18px;height:18px}.nav-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidebar button.active,.sidebar button:hover{color:#fff;background:#ffffff14;border-color:#5ef0d02e}.sidebar button.active:before{background:linear-gradient(#76f0d1,#13895f);box-shadow:0 0 18px #5ef0d05c}.sidebar button.active .nav-icon,.sidebar button:hover .nav-icon{color:#e8fff6;background:radial-gradient(circle at 35% 22%,#ffffff47,#0000 48%),linear-gradient(145deg,#1ed6a147,#ffffff12);border-color:#5ef0d04d;box-shadow:inset 0 1px #ffffff2e,0 12px 24px #13895f2e}.sidebar button:hover{transform:translate(1px)}.sidebar .mobile-more-button,.mobile-nav-scrim,.mobile-nav-drawer{display:none}.workspace{flex-direction:column;min-width:0;min-height:100vh;padding:20px;display:flex}.topbar{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7fafbeb;justify-content:space-between;align-items:center;gap:16px;margin:-20px -20px 20px;padding:16px 20px;display:flex;position:sticky;top:0}.topbar p{color:var(--muted);letter-spacing:0;text-transform:uppercase;margin:0;font-size:12px;font-weight:900}.topbar>div:first-child{flex:none;min-width:128px}.topbar h1{white-space:nowrap;margin:4px 0 0;font-size:26px}.toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.global-search{z-index:30;align-items:center;gap:7px;display:flex;position:relative}.toolbar input,.toolbar select{border:1px solid var(--line);background:#fff;border-radius:8px;outline:0;min-width:128px;height:40px;padding:0 12px}.toolbar input{width:min(360px,34vw)}.photo-search-input{display:none!important}.photo-search-button{color:#123a35;white-space:nowrap;background:linear-gradient(135deg,#13895f1a,#0b72850f),#fff;border:1px solid #13895f33;border-radius:8px;justify-content:center;align-items:center;gap:6px;height:40px;padding:0 12px;font-size:13px;font-weight:950;display:inline-flex}.photo-search-button svg{width:17px;height:17px}.photo-search-button:hover{background:linear-gradient(135deg,#13895f29,#0b728514),#fff;border-color:#13895f57}.photo-search-button:disabled{cursor:wait;opacity:.62}.plate-scanner-overlay{z-index:900;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#020c10d1;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.plate-scanner-panel{background:#041012;border:1px solid #86f6db3d;border-radius:18px;width:min(920px,100%);height:min(680px,100vh - 44px);position:relative;overflow:hidden;box-shadow:0 26px 80px #00000070}.plate-scanner-video{object-fit:cover;background:#020607;width:100%;height:100%}.plate-scanner-canvas{display:none}.plate-scanner-panel:after{content:"";pointer-events:none;background:radial-gradient(circle,#0000 26%,#00000024 50%,#00000094 100%),linear-gradient(#031214b8,#0000 28% 68%,#031214c7);position:absolute;inset:0}.plate-scanner-head,.plate-scanner-foot,.plate-scan-frame{z-index:2;position:absolute}.plate-scanner-head{justify-content:space-between;align-items:center;gap:12px;display:flex;top:18px;left:18px;right:18px}.plate-scanner-head div,.plate-scanner-foot{color:#effffb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#051619c2;border:1px solid #ffffff24;border-radius:14px;box-shadow:0 14px 34px #00000038}.plate-scanner-head div{padding:10px 13px}.plate-scanner-head small,.plate-scanner-foot small{color:#effffbad;font-size:12px;font-weight:850;display:block}.plate-scanner-head strong,.plate-scanner-foot strong{letter-spacing:0;margin-top:2px;font-size:18px;font-weight:1000;display:block}.plate-scanner-head button,.plate-scanner-foot button{color:#fff;background:#ffffff1f;border:1px solid #ffffff29;border-radius:12px;height:40px;padding:0 14px;font-weight:950}.plate-scan-frame{aspect-ratio:3.4;border:1px solid #6feed242;border-radius:18px;width:min(560px,78vw);top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 0 0 1px #ffffff14,0 0 0 999px #00000014}.plate-scan-frame span{filter:drop-shadow(0 0 10px #60f2d18f);border-style:solid;border-color:#79ffe3;width:38px;height:38px;position:absolute}.plate-scan-frame span:first-child{border-width:4px 0 0 4px;border-radius:18px 0 0;top:-1px;left:-1px}.plate-scan-frame span:nth-child(2){border-width:4px 4px 0 0;border-radius:0 18px 0 0;top:-1px;right:-1px}.plate-scan-frame span:nth-child(3){border-width:0 4px 4px 0;border-radius:0 0 18px;bottom:-1px;right:-1px}.plate-scan-frame span:nth-child(4){border-width:0 0 4px 4px;border-radius:0 0 0 18px;bottom:-1px;left:-1px}.plate-scan-frame:after{content:"";opacity:0;background:linear-gradient(90deg,#0000,#7affe2,#0000);height:2px;position:absolute;top:50%;left:8%;right:8%;transform:translateY(-50%);box-shadow:0 0 16px #6effe2db}.plate-scan-frame.scanning:after{opacity:1;animation:1.25s ease-in-out infinite plateScanLine}.plate-scan-frame.locked{background:#12ffa714;border-color:#44ffabcc}.plate-scan-frame.locked span{border-color:#3dffad}.plate-scan-frame strong{color:#042018;text-align:center;background:#12ffa7f0;border-radius:999px;min-width:160px;padding:7px 13px;font-size:18px;font-weight:1000;position:absolute;bottom:-44px;left:50%;transform:translate(-50%)}.plate-scanner-foot{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid;bottom:18px;left:18px;right:18px}.plate-scanner-foot>span{background:#c6a15c;border-radius:999px;width:12px;height:12px;box-shadow:0 0 0 6px #c6a15c24}.plate-scanner-foot>span.active{background:#6fead4;box-shadow:0 0 0 6px #6fead424,0 0 24px #6fead480}.plate-scanner-foot>span.locked{background:#3dffad;box-shadow:0 0 0 7px #3dffad2e,0 0 30px #3dffada3}.plate-scanner-foot div{min-width:0}.plate-scanner-foot strong,.plate-scanner-foot small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@keyframes plateScanLine{0%{top:18%}50%{top:82%}to{top:18%}}.search-popover{border:1px solid var(--line);background:#fff;border-radius:8px;gap:6px;width:min(520px,82vw);padding:8px;display:grid;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 24px 60px #121f2229}.search-popover button{text-align:left;background:#fff;border:1px solid #0000;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;min-height:58px;padding:8px 10px;display:grid}.search-popover button:hover{background:#13895f0f;border-color:#13895f33}.search-popover span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;overflow:hidden}.search-popover em{color:#fff;border-radius:999px;align-self:start;padding:4px 8px;font-size:11px;font-style:normal;font-weight:900}.session{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:8px;min-width:210px;min-height:42px;padding:5px 7px;display:flex}.session-profile{text-align:left;background:0 0;border:0;flex:1;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;min-width:0;display:grid}.session-profile span:last-child{min-width:0;display:grid}.session-profile strong,.session-profile small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.session-profile small{color:var(--muted);font-size:12px}.session>button:not(.session-profile){color:#a53030;background:#c8464617;border:0;border-radius:7px;flex:none;height:28px}.avatar-face{color:#fff;background:radial-gradient(circle at 72% 10%, color-mix(in srgb, var(--avatar-d) 38%, white 18%), transparent 0 30%, transparent 62%), linear-gradient(145deg, #fffffffa, #f2f8f8eb);isolation:isolate;border:1px solid #ffffffd1;border-radius:22px;place-items:center;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #fffffff2,0 14px 28px #121f2229}.avatar-face:before,.avatar-face:after{content:"";z-index:0;pointer-events:none;position:absolute}.avatar-face:before{border-radius:inherit;background:linear-gradient(145deg,#ffffff61,#0000 26% 72%,#00000014);inset:0}.avatar-face:after{border-radius:inherit;opacity:1;background:0 0;border:1px solid #ffffff5c;inset:0}.avatar-face img{z-index:3;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.avatar-face b{z-index:2;font-size:13px;line-height:1;position:relative}.session-avatar{border-radius:999px;width:34px;height:34px}.view-stack{gap:16px;display:grid}.toast-message{z-index:80;color:#f6fffb;background:#081316eb;border:1px solid #5df1d333;border-radius:8px;max-width:min(360px,100vw - 44px);padding:12px 14px;font-weight:900;position:fixed;top:82px;right:22px;box-shadow:0 18px 42px #00000038}.icp-footer{color:var(--muted);justify-content:center;margin-top:auto;padding:22px 0 2px;font-size:13px;display:flex}.metrics{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.metrics button,.panel,.record-grid button,.vehicle-row,.track-list button,.timeline button,.timeline div{border:1px solid var(--line);background:var(--surface);border-radius:8px;box-shadow:0 10px 28px #121f220f}.metrics button{text-align:left;grid-template-rows:auto 1fr auto;gap:8px;min-height:96px;padding:16px 18px;display:grid;position:relative;overflow:hidden}.metrics small,.panel p,.record-grid small,.vehicle-row small,.feed-row span,.rank-row span,.timeline span{color:var(--muted)}.metrics strong{align-self:center;font-size:27px;line-height:1.05}.metrics span{color:var(--muted);font-size:13px}.metrics .metric-utilization{--util-color:var(--green);--util-color-2:var(--teal);--util-soft:#13895f1a;--util-border:#13895f2e;border-color:var(--util-border);background:linear-gradient(135deg, var(--util-soft), transparent 52%), linear-gradient(180deg, #fff, #f8fbfc)}.metrics .metric-utilization-good{--util-color:var(--green);--util-color-2:var(--teal);--util-soft:#13895f1c;--util-border:#13895f3d}.metrics .metric-utilization-mid{--util-color:var(--amber);--util-color-2:var(--gold);--util-soft:#c9851624;--util-border:#c9851647}.metrics .metric-utilization-low{--util-color:var(--red);--util-color-2:#e07961;--util-soft:#c846461f;--util-border:#c8464642}.metrics .metric-utilization:after{content:"";width:var(--metric-progress,0%);background:linear-gradient(90deg, var(--util-color), var(--util-color-2));border-radius:0 999px 999px 0;height:4px;position:absolute;bottom:0;left:0;right:auto}.metrics .metric-utilization small{color:#50615e}.metrics .metric-utilization strong{color:var(--util-color)}.metrics button.pending strong{color:#394947;font-size:22px}.metrics button.pending{background:linear-gradient(#fff,#f8fbfc)}.dashboard-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);align-items:start;gap:16px;display:grid}.dashboard-grid .map-only-panel{grid-row:span 2}.panel{min-width:0;padding:16px}.map-only-panel{padding:0;overflow:hidden}.map-view-stack{flex:1;min-height:0}.map-full-panel{min-height:calc(100vh - 126px);box-shadow:none;background:0 0;border:0;padding:0;display:grid;overflow:hidden}.map-full-panel .command-map{min-height:calc(100vh - 126px)}.panel header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.panel h2,.panel h3{margin:0}.panel header button,.panel header span,.quick-actions button,.edit-dialog footer button{min-height:34px;color:var(--green);white-space:nowrap;word-break:keep-all;background:#13895f14;border:1px solid #13895f33;border-radius:8px;padding:0 12px;font-weight:900}.panel-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.track-actions{background:linear-gradient(#fffffff0,#f6faf9e6),#fff;border:1px solid #d8e3e7e6;border-radius:8px;grid-template-columns:minmax(260px,1fr) minmax(142px,.42fr) repeat(2,minmax(180px,.48fr)) 86px;align-items:stretch;gap:8px;width:100%;margin:0 0 14px;padding:8px;display:grid;box-shadow:inset 0 1px #fffffff5,0 12px 28px #121f220e}.track-panel header>div:first-child{min-width:0}.track-panel header h2{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.track-control{background:#ffffffe0;border:1px solid #111b1d17;border-radius:8px;align-content:center;gap:2px;min-width:0;height:54px;padding:7px 34px 7px 12px;display:grid;position:relative;box-shadow:inset 0 1px #fffffff5}.track-control:after{content:"";pointer-events:none;border-bottom:2px solid #41514e;border-right:2px solid #41514e;width:8px;height:8px;position:absolute;top:50%;right:14px;transform:translateY(-64%)rotate(45deg)}.track-control-datetime:after{display:none}.track-control:focus-within{border-color:#13895f70;box-shadow:0 0 0 3px #13895f17,inset 0 1px #fffffff5}.track-control span{min-height:auto;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:0;padding:0;font-size:11px;font-weight:900;line-height:1}.track-control select,.track-control input{width:100%;min-width:0;height:26px;color:var(--ink);background:0 0;border:0;outline:0;font-size:15px;font-weight:850;line-height:26px}.track-control select{appearance:none}.track-control input{padding:0}.track-control-vehicle,.track-control-range{width:auto}.track-refresh-button{color:#fff;letter-spacing:0;white-space:nowrap;background:linear-gradient(#159465,#0f7d59);border:1px solid #13895f3d;border-radius:8px;min-width:0;min-height:54px;padding:0 16px;font-size:15px;font-weight:900;box-shadow:0 10px 18px #13895f2e}.track-refresh-button:hover:not(:disabled){background:linear-gradient(#18a873,#0e7956);border-color:#13895f6b}.track-refresh-button:disabled{cursor:not-allowed;opacity:.55}.mini-map{border:1px solid var(--line);background:linear-gradient(90deg,#0884941c 1px,#0000 1px) 0 0/36px 36px,linear-gradient(#0884941c 1px,#0000 1px) 0 0/36px 36px,linear-gradient(135deg,#dfeaec,#f8fbfc);border-radius:8px;min-height:430px;position:relative;overflow:hidden}.map-only-panel .mini-map{border:0;border-radius:8px;height:clamp(420px,100vh - 315px,700px);min-height:0}.command-map{border:1px solid var(--line);background:#dce6ea;border-radius:8px;min-height:calc(100vh - 190px);position:relative;overflow:hidden}.map-control-dock{z-index:8;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffc7;border:1px solid #d8e3e7b3;border-radius:10px;grid-template-columns:repeat(4,max-content);align-items:center;gap:6px;max-width:calc(100% - 32px);padding:6px;display:grid;position:absolute;top:16px;left:16px;box-shadow:0 14px 34px #121f2221}.map-control-dock span,.map-control-dock button{min-height:34px;color:var(--green);white-space:nowrap;background:#13895f14;border:1px solid #13895f2e;border-radius:8px;padding:0 12px;font-size:13px;font-weight:900}.map-control-dock span{color:#152f32;background:linear-gradient(135deg,#f4f8f8f5,#e5eff0e0);grid-column:1/-1;place-items:center;min-width:0;display:grid}.map-control-dock button{min-width:82px;box-shadow:0 7px 15px #13895f12}.map-control-dock button:hover{background:#13895f21;border-color:#13895f57}.map-control-dock button.active{color:#fff;background:linear-gradient(135deg,#087f5b,#13a077);border-color:#13895f6b;box-shadow:0 10px 24px #13895f38}.map-control-dock .city-fence-control{color:#1250c6;background:#1268ff1a;border-color:#1268ff61}.map-control-dock .city-fence-control.active{color:#fff;background:linear-gradient(135deg,#0b43ad,#1268ff);border-color:#1268ff99;box-shadow:0 10px 24px #1268ff38}.map-control-dock .region-fence-control{color:#b3133d;background:#e61e4d1a;border-color:#e61e4d5c}.map-control-dock .region-fence-control.active{color:#fff;background:linear-gradient(135deg,#9f1239,#e61e4d);border-color:#e61e4d99;box-shadow:0 10px 24px #e61e4d38}.amap-fence-label{pointer-events:none;color:#fff;white-space:nowrap;background:#782340b8;border:1px solid #ffffffb8;border-radius:999px;justify-content:center;align-items:center;min-height:24px;padding:0 10px;font-size:11px;font-weight:900;line-height:1;display:inline-flex;box-shadow:0 7px 16px #5713372e,0 0 0 3px #e61e4d14}.amap-fence-label.city{background:#124eb4b8;box-shadow:0 7px 16px #124fc62e,0 0 0 3px #1268ff14}.amap-province-label{pointer-events:none;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);white-space:nowrap;background:#2d3b45ad;border:1px solid #ffffffa3;border-radius:999px;justify-content:center;align-items:center;min-height:21px;padding:0 8px;font-size:11px;font-weight:900;line-height:1;display:inline-flex;box-shadow:0 5px 12px #0a121829,0 0 0 2px #ffffff24}.amap-container{z-index:1;opacity:0;transition:opacity .24s;position:absolute;inset:0}.amap-container.ready{opacity:1}.amap-container.ready~.store-dot,.amap-container.ready~.map-pin{display:none}.amap-car-marker{color:#102327;-webkit-backdrop-filter:blur(7px)saturate(1.15);backdrop-filter:blur(7px)saturate(1.15);text-align:center;width:48px;height:48px;font:inherit;cursor:pointer;background:#ffffff6b;border:2px solid #ffffffb8;border-radius:999px;place-items:center;padding:6px;display:grid;position:relative;box-shadow:0 10px 24px #121f222e,inset 0 0 0 1px #ffffff57}.amap-mini-marker{color:#102327;-webkit-backdrop-filter:blur(7px)saturate(1.15);backdrop-filter:blur(7px)saturate(1.15);cursor:pointer;background:#ffffff6b;border:2px solid #ffffffb8;border-radius:999px;place-items:center;width:38px;min-width:38px;height:34px;padding:0 7px;font-weight:900;display:grid;position:relative;box-shadow:0 9px 22px #121f2229,inset 0 0 0 1px #ffffff57}.amap-mini-marker.idle{border-color:#caa65ee0;box-shadow:0 0 0 4px #caa65e29,0 9px 22px #121f2229}.amap-mini-marker.rented,.amap-mini-marker.moving{border-color:#13895fdb;box-shadow:0 0 0 4px #13895f29,0 9px 22px #121f2229}.amap-mini-marker.offline{border-color:#e2534fe0;box-shadow:0 0 0 4px #e2534f29,0 9px 22px #121f2229}.amap-mini-marker.locating,.amap-mini-marker.stale{border-color:#77878cc7;box-shadow:0 0 0 4px #77878c24,0 9px 22px #121f2229}.amap-car-marker.idle{border-color:#caa65ee6;box-shadow:0 0 0 5px #caa65e2b,0 12px 28px #121f222e}.amap-car-marker.rented,.amap-car-marker.moving{border-color:#13895fe0;box-shadow:0 0 0 5px #13895f2b,0 12px 28px #121f222e}.amap-car-marker.offline{border-color:#e2534fe6;box-shadow:0 0 0 5px #e2534f29,0 12px 28px #121f222e}.amap-car-marker.locating,.amap-car-marker.stale{border-color:#77878ccc;box-shadow:0 0 0 5px #77878c24,0 12px 28px #121f222e}.see-car-marker{width:54px;height:54px}.see-current-marker{border-color:#fff7cf;transform:translateY(-4px)scale(1.14);box-shadow:0 0 0 8px #d8b6683d,0 22px 46px #121f225c,0 0 38px #d8b66866}.see-current-marker:after{content:"";border-radius:inherit;border:2px solid #d8b6686b;animation:1.8s ease-out infinite seeMarkerPulse;position:absolute;inset:-12px}@keyframes seeMarkerPulse{0%{opacity:.8;transform:scale(.82)}to{opacity:0;transform:scale(1.35)}}.amap-car-marker.store-vehicle-marker,.amap-mini-marker.store-vehicle-marker{background:#ffffff75;border-color:#f4d181;box-shadow:0 0 0 5px #caa65e33,0 14px 30px #121f2233,inset 0 0 0 1px #ffffff61}.amap-car-marker.city-out-marker,.amap-mini-marker.city-out-marker{background:#ffffff75;border-color:#fff4f2;box-shadow:0 0 0 5px #e2534f2e,0 14px 30px #7e171733,inset 0 0 0 1px #ffffff61}.amap-car-marker.region-out-marker,.amap-mini-marker.region-out-marker{background:#ffffff75;border-color:#fff2f6;box-shadow:0 0 0 6px #bd174f33,0 14px 30px #57133738,inset 0 0 0 1px #ffffff61}.amap-car-marker.store-vehicle-marker.city-out-marker,.amap-mini-marker.store-vehicle-marker.city-out-marker{background:#ffffff7a;border-color:#fff4f2}.amap-car-marker.store-vehicle-marker.region-out-marker,.amap-mini-marker.store-vehicle-marker.region-out-marker{background:#ffffff7a;border-color:#fff2f6}.brand-logo-img{object-fit:contain;width:32px;height:32px;display:block}.brand-logo-fallback{color:#0f1b1d;background:#fff;border-radius:999px;place-items:center;width:28px;height:28px;font-weight:900;display:grid}.amap-mini-marker .brand-logo-img{width:24px;height:24px}.amap-mini-marker .brand-logo-fallback{width:24px;height:24px;font-size:12px}.map-plate-badge{z-index:2;color:#fff;white-space:nowrap;border:2px solid #fffffff0;border-radius:999px;place-items:center;min-width:56px;height:19px;padding:0 7px;font-size:10px;font-weight:900;line-height:1;display:grid;position:absolute;bottom:-11px;left:50%;transform:translate(-50%);box-shadow:0 9px 18px #121f2238}.map-plate-badge.electric{background:linear-gradient(#12a979,#087f5b)}.map-plate-badge.fuel{background:linear-gradient(#c9952a,#986807)}.map-store-badge{z-index:3;color:#1f2a1d;white-space:nowrap;background:linear-gradient(#f6d88d,#caa65e);border:2px solid #fffffff5;border-radius:999px;place-items:center;min-width:34px;height:18px;padding:0 7px;font-size:9px;font-weight:900;line-height:1;display:grid;position:absolute;top:-15px;left:50%;transform:translate(-50%);box-shadow:0 9px 18px #121f2238}.map-city-badge{z-index:4;color:#fff;white-space:nowrap;background:linear-gradient(#f2655f,#ba2525);border:2px solid #fffffff5;border-radius:999px;place-items:center;min-width:34px;height:18px;padding:0 7px;font-size:9px;font-weight:900;line-height:1;display:grid;position:absolute;top:-15px;left:50%;transform:translate(-50%);box-shadow:0 9px 18px #7e17173d}.map-city-badge.region{background:linear-gradient(#d72b68,#7f153f);min-width:56px;box-shadow:0 10px 20px #57133747}.map-region-province-badge{z-index:5;color:#fff;white-space:nowrap;background:linear-gradient(#253443,#0d1822);border:2px solid #fffffff5;border-radius:999px;place-items:center;min-width:30px;height:17px;padding:0 7px;font-size:9px;font-weight:900;line-height:1;display:grid;position:absolute;top:-34px;left:50%;transform:translate(-50%);box-shadow:0 9px 18px #0a121847}.amap-mini-marker .map-plate-badge{border-width:2px;min-width:50px;height:16px;padding:0 6px;font-size:8px;bottom:-10px}.amap-mini-marker .map-store-badge,.amap-mini-marker .map-city-badge{min-width:30px;height:15px;padding:0 5px;font-size:8px;top:-13px}.amap-mini-marker .map-region-province-badge{border-width:2px;min-width:26px;height:14px;padding:0 5px;font-size:8px;top:-29px}.amap-car-marker strong,.amap-car-marker span:not(.map-plate-badge):not(.map-store-badge):not(.map-city-badge):not(.map-region-province-badge){text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.amap-car-marker strong{max-width:48px}.amap-car-marker span:not(.map-plate-badge):not(.map-store-badge):not(.map-city-badge):not(.map-region-province-badge){opacity:.92;font-size:10px}.amap-store-marker{color:#fff;background:var(--gold);border:3px solid #fff;border-radius:50%;place-items:center;width:42px;height:42px;font-size:12px;font-weight:900;display:grid;box-shadow:0 0 0 5px #caa65e3d,0 12px 28px #121f2233}.amap-store-marker.mini{width:34px;height:34px;font-size:11px;box-shadow:0 0 0 4px #caa65e38,0 10px 20px #121f222e}.map-empty,.empty-state{min-height:180px;color:var(--muted);text-align:center;background:#ffffff94;border:1px dashed #08849447;border-radius:8px;align-content:center;place-items:center;gap:8px;padding:22px;display:grid}.map-empty{z-index:2;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);min-height:auto;position:absolute;inset:22px}.empty-state strong,.map-empty strong{color:var(--ink);font-size:18px}.empty-state span,.map-empty span{max-width:480px;line-height:1.7}.empty-state.compact{min-height:116px}.empty-action{min-height:38px;color:var(--green);background:#13895f14;border:1px solid #13895f38;border-radius:8px;padding:0 14px;font-weight:900}.table-empty{min-height:260px}.store-dot{background:var(--gold);border:4px solid #fff;border-radius:50%;width:18px;height:18px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 130px #caa65e14,0 0 0 2px #caa65e59}.store-dot.large{width:24px;height:24px}.map-pin{color:#fff;background:var(--green);border:2px solid #fff;border-radius:999px;min-width:34px;min-height:28px;position:absolute;box-shadow:0 10px 24px #121f222e}.map-pin.full{place-items:center;gap:1px;min-width:58px;padding:5px 8px;font-size:11px;display:grid;position:absolute}.map-pin.full em{color:#fff;background:linear-gradient(#f2655f,#ba2525);border:2px solid #fffffff5;border-radius:999px;place-items:center;min-width:34px;height:18px;padding:0 7px;font-size:9px;font-style:normal;font-weight:900;display:grid;position:absolute;top:-18px;left:50%;transform:translate(-50%);box-shadow:0 9px 18px #7e171738}.map-pin.city-out-pin{background:linear-gradient(145deg,#8f1d1d,#e2534f);box-shadow:0 0 0 5px #e2534f29,0 14px 28px #7e17173d}.map-pin.region-out-pin{background:linear-gradient(145deg,#571337,#bd174f);box-shadow:0 0 0 6px #bd174f2e,0 16px 30px #57133747}.map-pin span{font-size:10px}.moving{background:var(--teal)}.rented{background:var(--green)}.idle{background:var(--amber)}.locating{background:#8a8f3d}.offline{background:var(--red)}.stale{background:var(--gray)}.in-store{background:var(--green)}.rank-row,.feed-row,.rental-row,.track-list button,.track-stop-list button,.timeline button,.timeline div{text-align:left;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;width:100%;min-height:58px;margin-top:8px;padding:10px 12px;display:grid}.top-rank-panel{align-content:start;display:grid}.top-rank-panel header p{color:var(--muted);margin:0;font-size:12px;font-weight:900}.top-rank-panel .rank-row{background:linear-gradient(#fff,#f7fbfa);border:1px solid #111b1d1a;border-radius:8px;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:8px 12px;min-height:74px;padding:10px 12px;box-shadow:0 10px 26px #121f220e}.top-rank-panel .rank-row:hover{background:#fff;border-color:#13895f47;transform:translateY(-1px)}.top-rank-panel .rank-row>span,.top-rank-panel .rank-row .rank-main{grid-column:auto}.top-rank-panel .rank-brand-badge{border-radius:13px;width:48px;height:44px}.top-rank-panel .rank-brand-badge img{width:30px;height:30px}.top-rank-panel .rank-brand-badge b{max-width:34px;font-size:11px}.top-rank-panel .rank-brand-badge small{border-width:2px;min-width:36px;height:16px;padding:0 5px;font-size:8px;bottom:-7px}.rank-main{gap:4px;min-width:0;display:grid}.rank-main strong,.rank-main em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.rank-main em{color:var(--muted);font-style:normal;font-weight:800}.top-rank-panel .rank-row>b{color:var(--ink);white-space:nowrap;justify-self:end;font-size:18px;line-height:1}.rank-pagination{border-top:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin-top:10px;padding-top:10px;display:grid}.rank-pagination span{color:var(--muted);text-align:center;font-weight:900}.rank-pagination button{min-height:36px;color:var(--green);background:#13895f14;border:1px solid #13895f33;border-radius:8px;font-weight:900}.rank-pagination button:disabled{opacity:.45;cursor:not-allowed}.utilization-page{gap:16px;display:grid}.utilization-hero{grid-template-columns:minmax(260px,1.2fr) repeat(2,minmax(180px,.9fr));gap:12px;display:grid}.utilization-hero section,.utilization-history,.utilization-list{border:1px solid var(--line);background:linear-gradient(#fff,#f8fbfc);border-radius:8px}.utilization-hero section{align-content:center;gap:7px;min-height:108px;padding:16px;display:grid}.utilization-hero small,.utilization-hero span,.utilization-history header span,.utilization-list span,.utilization-list em{color:var(--muted)}.utilization-hero strong{font-size:clamp(32px,4vw,52px);line-height:1}.utilization-rate-card{background:linear-gradient(135deg,#13895f1f,#0000 58%),#fff}.utilization-rate-card strong{color:var(--green)}.utilization-history{gap:8px;padding:14px;display:grid}.utilization-history header,.utilization-list-head{justify-content:space-between;align-items:center;gap:12px;margin:0;display:flex}.utilization-list-head div{gap:4px;min-width:0;display:grid}.utilization-list-head h3{margin:0;font-size:18px}.utilization-list-head small{color:#6c7b77;font-size:12px;font-weight:800}.utilization-list-head>span{min-width:54px;color:var(--green);text-align:center;background:#13895f14;border:1px solid #13895f2e;border-radius:10px;flex:none;padding:7px 10px;font-size:13px;font-weight:950}.utilization-bars{grid-template-columns:repeat(24,minmax(16px,1fr));align-items:end;gap:6px;min-height:116px;padding-top:8px;display:grid}.utilization-bars button{min-width:0;height:104px;color:var(--muted);background:0 0;border:0;grid-template-rows:1fr auto;gap:6px;padding:0;font-size:11px;font-weight:800;display:grid}.utilization-bars i{background:linear-gradient(#18a876,#0d7857);border-radius:999px 999px 3px 3px;align-self:end;width:100%;min-height:8px;display:block;box-shadow:inset 0 1px #ffffff47}.utilization-bars span{text-overflow:ellipsis;white-space:nowrap;text-align:center;overflow:hidden}.utilization-split{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}.utilization-list{align-content:start;gap:12px;min-height:0;padding:14px;display:grid;overflow:hidden}.utilization-list-rented{background:linear-gradient(135deg,#0071bc0f,#0000 48%),linear-gradient(#fff,#f7fbfd)}.utilization-list-store{background:linear-gradient(135deg,#13895f14,#0000 50%),linear-gradient(#fff,#f7fbfa)}.utilization-list-body{scrollbar-color:#13895f57 transparent;scrollbar-width:thin;gap:8px;min-height:0;max-height:min(590px,100vh - 376px);padding:1px 5px 1px 1px;display:grid;overflow:auto}.utilization-list-body::-webkit-scrollbar{width:5px}.utilization-list-body::-webkit-scrollbar-thumb{background:#13895f47;border-radius:999px}.utilization-vehicle-row{text-align:left;background:linear-gradient(90deg,#13895f0f,#0000 32%),#fff;border:1px solid #a8bfbc7a;border-radius:8px;grid-template-columns:58px minmax(0,1fr) minmax(108px,auto);align-items:center;gap:10px;min-height:68px;padding:9px 11px;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid;box-shadow:0 7px 18px #0c27230b}.utilization-vehicle-row:hover{border-color:#13895f59;transform:translateY(-1px);box-shadow:0 10px 24px #0c272314}.utilization-vehicle-row.stale{background:linear-gradient(90deg,#64736f14,#0000 35%),#fff}.utilization-vehicle-row.electric .utilization-logo small{color:#078d72;background:#00ae8f1f}.utilization-vehicle-row.fuel .utilization-logo small{color:#956414;background:#e2972524}.utilization-logo{place-items:center;gap:2px;width:48px;min-width:48px;display:grid}.utilization-logo img,.utilization-logo b{background:radial-gradient(circle at 32% 22%,#fffffff0,#ffffff2e 36%,#0000 37%),linear-gradient(145deg,#f8fbfb,#dfe9e7);border:1px solid #13895f1f;border-radius:50%;place-items:center;width:38px;height:38px;display:grid;box-shadow:inset 0 1px #fffc,0 8px 16px #0c272317}.utilization-logo img{object-fit:contain;padding:6px}.utilization-logo b{color:#193d38;font-size:13px;font-weight:950}.utilization-logo small{white-space:nowrap;border-radius:999px;max-width:54px;padding:2px 6px;font-size:10px;font-weight:950;line-height:1.2}.utilization-main,.utilization-meta{min-width:0;display:grid}.utilization-main{gap:6px}.utilization-main strong{text-overflow:ellipsis;white-space:nowrap;color:#102623;min-width:0;font-size:15px;overflow:hidden}.utilization-main em{color:#0d7857;text-overflow:ellipsis;white-space:nowrap;background:#13895f1a;border-radius:999px;justify-self:start;max-width:100%;padding:4px 8px;font-size:11px;font-style:normal;font-weight:950;line-height:1.15;overflow:hidden}.utilization-vehicle-row.stale .utilization-main em{color:#6c7b77;background:#eef4f3}.utilization-vehicle-row.moving .utilization-main em{color:#0d61c8;background:#0d61c81a}.utilization-meta{text-align:right;justify-self:end;justify-items:end;gap:5px}.utilization-meta small{color:#788884;white-space:nowrap;font-size:11px;font-weight:850}.utilization-meta b{color:#53635f;text-align:center;text-overflow:ellipsis;white-space:nowrap;background:#f0f5f6;border-radius:999px;max-width:142px;padding:5px 9px;font-size:12px;font-weight:950;overflow:hidden}.utilization-distance b{color:var(--green);background:#13895f1f}.rental-panel{align-content:start;display:grid}.rental-table{gap:10px;display:grid}.rental-board{gap:14px;display:grid}.rental-summary-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:2px 0 12px;display:grid}.rental-summary-strip button{text-align:left;cursor:pointer;background:linear-gradient(135deg,#0b728513,#0000 55%),linear-gradient(#fff,#f8fbfc);border:1px solid #d8e3e7e6;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-content:center;align-items:center;gap:5px;min-height:72px;padding:12px;transition:transform .16s,border-color .16s,box-shadow .16s,background .16s;display:grid;box-shadow:0 10px 22px #121f220b}.rental-summary-strip button>span:not(.rental-filter-icon){gap:4px;min-width:0;display:grid}.rental-filter-icon{color:#0b7285;background:#0b728514;border:1px solid #0b728524;border-radius:8px;place-items:center;width:34px;height:34px;display:inline-grid}.rental-filter-icon svg{stroke-width:2.4px;width:17px;height:17px}.rental-filter-icon.live{color:var(--green);background:#13895f17;border-color:#13895f2e}.rental-filter-icon.warning{color:#a56f11;background:#c48f271a;border-color:#c48f2738}.rental-filter-icon.done{color:#455b67;background:#455b6714;border-color:#455b672e}.rental-summary-strip button:hover{border-color:#0b728557;transform:translateY(-1px);box-shadow:0 14px 28px #121f2212}.rental-summary-strip button.active{background:linear-gradient(135deg,#0b728524,#0000 56%),linear-gradient(#fff,#f3fbfb);border-color:#0b72858f;box-shadow:0 16px 32px #0b72851f}.rental-summary-strip small{color:var(--muted);font-size:12px;font-weight:900}.rental-summary-strip strong{color:#122723;font-size:23px;font-weight:950;line-height:1}.rental-summary-strip em{color:#71827e;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;font-style:normal;font-weight:850;overflow:hidden}.rental-filter-bar{color:#526762;background:#ffffffc7;border:1px solid #d8e3e7db;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;margin:-2px 0 12px;padding:10px 12px;font-size:12px;font-weight:900;display:flex}.rental-filter-bar button{color:#0b7285;background:#0b728514;border:1px solid #0b72852e;border-radius:8px;min-height:30px;padding:0 10px;font-weight:950}.rental-timeline-list{gap:10px;display:grid}.rental-timeline-card{text-align:left;background:linear-gradient(135deg,#13895f0e,#0000 42%),linear-gradient(#fff,#f8fbfc);border:1px solid #d8e3e7f2;border-radius:8px;gap:12px;min-width:0;padding:14px;display:grid;box-shadow:0 12px 28px #121f220f}.rental-timeline-card:hover{border-color:#13895f42;transform:translateY(-1px)}.rental-card-head{grid-template-columns:minmax(150px,.72fr) minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;display:grid}.rental-card-head em{white-space:nowrap;border-radius:999px;justify-self:end;padding:6px 10px;font-size:12px;font-style:normal;font-weight:950}.rental-time-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.rental-time-strip>span{background:#ffffffdb;border:1px solid #d8e3e7db;border-radius:8px;gap:4px;min-width:0;padding:10px 12px;display:grid}.rental-time-strip>span.empty{background:#f7fafab8;border-style:dashed}.rental-time-strip small,.rental-progress-line small,.rental-pending-panel small{color:var(--muted);font-size:12px;font-weight:900}.rental-time-strip b{color:#142b27;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;font-weight:950;overflow:hidden}.rental-time-strip .empty b{color:#8b9995}.rental-progress-line{grid-template-columns:minmax(160px,.26fr) minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;display:grid}.rental-progress-line>b{color:#16312c;white-space:nowrap;justify-self:end;font-size:12px;font-weight:950}.rental-card-foot{justify-content:space-between;align-items:center;gap:10px;display:flex}.rental-card-foot>small{color:#7a8c87;font-size:12px;font-weight:850}.rental-auto-state{color:#4f6460;background:#ffffffc7;border:1px solid #d8e3e7e6;border-radius:999px;align-items:center;width:fit-content;max-width:100%;min-height:28px;padding:0 10px;font-size:12px;font-weight:900;line-height:1.2;display:inline-flex}.rental-auto-state.auto-waiting{color:#0b7285;background:#0b728514;border-color:#0b72852e}.rental-auto-state.auto-watching{color:var(--red);background:#c8464613;border-color:#c846462e}.rental-auto-state.auto-done{color:var(--green);background:#13895f17;border-color:#13895f33}.rental-pending-panel{background:linear-gradient(#fff,#f8fbfc);border:1px solid #d8e3e7e6;border-radius:8px;gap:10px;padding:12px;display:grid}.rental-pending-panel header{align-items:flex-start;margin:0}.rental-pending-panel h3{margin:0 0 3px;font-size:16px}.rental-pending-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;display:grid}.rental-pending-grid button{text-align:left;background:#fff;border:1px solid #d8e3e7e6;border-radius:8px;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:66px;padding:10px 12px;display:grid}.rental-pending-grid button:hover{background:#13895f0e;border-color:#13895f42}.rental-pending-grid button>span{gap:4px;min-width:0;display:grid}.rental-pending-grid .rental-pending-logo{background:radial-gradient(circle at 50% 12%,#fffffffa,#ffffff75 42%,#0000 72%),linear-gradient(145deg,#fff,#eef5f6);border-radius:12px;justify-self:start;width:44px;height:44px;overflow:hidden;box-shadow:inset 0 1px #fffffff5,0 8px 15px #121f220f}.rental-pending-grid .rental-pending-logo img{opacity:.82;width:29px;height:29px}.rental-pending-grid .rental-pending-logo b{max-width:31px;font-size:10px}.rental-pending-grid strong,.rental-pending-grid small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.rental-pending-grid em{color:#9a6700;background:#caa65e29;border-radius:999px;padding:5px 9px;font-size:12px;font-style:normal;font-weight:950}.rental-photo-input{display:none!important}.rental-row{border:1px solid var(--line);background:linear-gradient(#fff,#f8fbfc);border-radius:8px;align-items:center;position:relative;box-shadow:0 10px 26px #121f220e}.rental-row:hover{border-color:#13895f40;transform:translateY(-1px)}.rental-row strong,.rental-row span,.rental-row small{min-width:0}.rental-row span,.rental-row small{color:var(--muted)}.rental-row small{font-weight:800}.rental-row em{white-space:nowrap;border-radius:999px;justify-self:end;padding:5px 9px;font-size:12px;font-style:normal;font-weight:900}.rental-vehicle-title,.vehicle-meta-line{min-width:0}.rental-vehicle-title{gap:4px;display:grid}.vehicle-meta-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.vehicle-meta-line small{color:var(--muted);font-weight:850}.rental-active{color:#087f5b;background:#087f5b1f}.rental-overdue{color:#b42318;background:#b423181f}.rental-warning{color:#9a6700;background:#caa65e2e}.rental-done{color:var(--gray);background:#64736f1f}.rental-pending{color:#8a6d1d;background:#caa65e2b}.rental-progress{background:linear-gradient(#eef5f4,#e6eeee);border:1px solid #0b181a14;border-radius:999px;grid-column:1/-1;height:14px;padding:3px;overflow:hidden;box-shadow:inset 0 1px 3px #0b181a14}.rental-progress i{border-radius:inherit;background:linear-gradient(90deg,#0f8f61,#22b47b);min-width:10px;height:100%;transition:width .2s;display:block;box-shadow:inset 0 0 0 1px #ffffff40,0 3px 8px #13895f33}.rental-progress i.rental-overdue{background:linear-gradient(90deg,#b42318,#d64c42);box-shadow:inset 0 0 0 1px #ffffff38,0 3px 8px #b423182e}.rental-progress i.rental-warning{background:linear-gradient(90deg,#c98500,#f0b84f);box-shadow:inset 0 0 0 1px #ffffff3d,0 3px 8px #caa65e2e}.rental-progress i.rental-done{box-shadow:none;background:linear-gradient(90deg,#64736f,#8a9693)}.rental-progress i.rental-pending{background:linear-gradient(90deg,#caa65e,#e2bf73);box-shadow:inset 0 0 0 1px #ffffff40,0 3px 8px #caa65e2e}.rental-row-wide{grid-template-columns:170px minmax(0,1fr) 96px;gap:8px 14px;min-height:104px;margin-top:0;padding:14px}.rental-row-wide>.rental-points,.rental-row-wide>small,.rental-row-wide>.rental-progress{grid-column:1/-1}.rental-points{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.rental-points span{border:1px solid var(--line);background:#f8fbfc;border-radius:8px;gap:4px;min-width:0;padding:10px;display:grid}.rental-points small{color:var(--muted);font-size:12px;font-weight:900}.rental-points strong,.rental-points b{min-width:0;color:var(--ink);word-break:break-word;font-size:14px;line-height:1.35}.rental-points.compact{gap:8px}.rental-points.compact span{background:#fff;padding:8px 10px}.track-layout{grid-template-columns:minmax(0,1fr) 320px;gap:14px;display:grid}.track-map{border:1px solid var(--line);background:#dce6ea;border-radius:8px;min-height:calc(100vh - 235px);position:relative;overflow:hidden}.track-side{align-content:start;gap:12px;display:grid}.track-stat{text-align:left;border:1px solid var(--line);background:linear-gradient(#fff,#f7fbfa);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;width:100%;min-height:92px;padding:14px 15px;display:grid;box-shadow:0 12px 30px #121f220f}.track-stat:hover{border-color:#13895f4d;transform:translateY(-1px)}.track-stat small{color:var(--muted);font-weight:900}.track-stat strong{color:var(--ink);grid-column:1/-1;font-size:25px;line-height:1}.track-stat span{color:var(--muted);grid-column:1/-1;font-size:13px}.track-stat-distance{border-color:#13895f33}.track-stat-stops{border-color:#caa65e47}.track-playback-card{background:linear-gradient(#fffffffa,#f4faf9f0),#fff;border:1px solid #08849438;border-radius:8px;gap:12px;padding:14px;display:grid;box-shadow:0 12px 30px #121f220f}.track-playback-card header{justify-content:space-between;align-items:center;gap:10px;display:flex}.track-playback-card small{color:var(--muted);font-size:12px;font-weight:900}.track-playback-card strong{color:var(--ink);font-size:16px;font-weight:950}.track-playback-controls{grid-template-columns:1fr 1fr;gap:8px;display:grid}.track-playback-controls button{min-height:42px;color:var(--green);background:#13895f12;border:1px solid #13895f38;border-radius:8px;justify-content:center;align-items:center;gap:7px;font-weight:900;display:inline-flex}.track-playback-controls button:disabled{cursor:not-allowed;opacity:.48}.track-playback-controls svg{width:17px;height:17px}.track-playback-progress,.track-speed-bar{background:#e9f1f2;border-radius:999px;height:8px;overflow:hidden}.track-playback-progress i,.track-speed-bar i{border-radius:inherit;background:linear-gradient(90deg, var(--green), var(--teal));height:100%;transition:width .22s;display:block}.track-speed-bar{height:6px}.track-speed-bar i{background:linear-gradient(90deg,#2fbf83,#caa65e,#c84646)}.track-playback-info{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.track-playback-info span{background:#fff;border:1px solid #d8e3e7e6;border-radius:8px;gap:3px;padding:9px 10px;display:grid}.track-playback-info b{color:var(--ink);font-size:16px;font-weight:950}.track-playback-info em{min-height:34px;color:var(--muted);grid-column:1/-1;font-size:12px;font-style:normal;font-weight:800;line-height:1.45}.track-stop-list{max-height:220px;padding:2px;display:grid;overflow:auto}.track-stop-list button{min-height:54px;box-shadow:none;background:#fffaf0;border:1px solid #caa65e47;border-radius:8px;margin-top:8px}.track-stop-list button:hover{background:#fff6df;border-color:#caa65e85}.track-stop-list span{color:var(--muted);grid-column:1/-1}.track-stop-empty{min-height:64px;color:var(--muted);background:#ffffffb8;border:1px dashed #64736f47;border-radius:8px;place-items:center;padding:12px;font-weight:800;display:grid}.compact-list{max-height:calc(100vh - 330px);overflow:auto}.track-list button.active{background:#13895f14;border-color:#13895f61}.track-node{color:#fff;border:2px solid #fff;border-radius:999px;place-items:center;width:30px;height:30px;font-size:12px;font-weight:900;display:grid;box-shadow:0 8px 18px #121f2238}.track-node.start{background:var(--green)}.track-node.end{background:var(--red)}.track-point-node{background:var(--teal);border:2px solid #fff;border-radius:999px;width:9px;height:9px;display:block;box-shadow:0 4px 10px #08849442}.track-playback-marker{color:#fff;background:linear-gradient(145deg,#111b1d,#13895f);border:3px solid #fff;border-radius:999px;place-items:center;width:42px;height:42px;display:grid;position:relative;box-shadow:0 12px 26px #121f2247,0 0 0 8px #13895f24}.track-playback-marker span{clip-path:polygon(50% 0,100% 100%,50% 76%,0 100%);width:14px;height:14px;transform:translateY(-2px) rotate(var(--track-heading,0deg));transform-origin:50%;background:#fff;position:absolute}.track-playback-marker b{min-width:32px;color:var(--ink);background:#f3c66b;border-radius:999px;padding:3px 5px;font-size:10px;font-weight:950;line-height:1;position:absolute;bottom:-8px;right:-14px}.track-stop-node{color:#111b1d;text-align:center;min-width:64px;max-width:118px;min-height:42px;font:inherit;cursor:pointer;background:#f3c66b;border:2px solid #fff;border-radius:8px;gap:2px;padding:5px 8px;display:grid;box-shadow:0 8px 18px #121f2238}.track-stop-node b{font-size:13px;font-weight:900;line-height:1.05}.track-stop-node span{color:#111b1db8;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;font-weight:900;line-height:1.15;display:block;overflow:hidden}.rank-row span,.track-list span,.timeline span,.feed-row span{grid-column:1/-1}.table{gap:8px;display:grid}.vehicle-row{text-align:left;grid-template-columns:210px 150px minmax(220px,1fr) 168px 96px;align-items:center;gap:12px;width:100%;min-height:64px;padding:10px 12px;display:grid}.fleet-vehicle-row{grid-template-columns:54px minmax(180px,230px) 150px minmax(220px,1fr) 168px 96px;min-height:74px}.fleet-vehicle-row .fleet-brand-badge{background:radial-gradient(circle at 50% 12%,#fffffffa,#ffffff75 40%,#0000 72%),linear-gradient(145deg,#fff,#eef5f6);border-radius:13px;justify-self:start;width:48px;height:48px;overflow:hidden;box-shadow:inset 0 1px #fffffff5,0 8px 16px #121f220f}.fleet-vehicle-row .fleet-brand-badge img{opacity:.82;width:31px;height:31px}.fleet-vehicle-row .fleet-brand-badge b{max-width:34px;font-size:10px}.vehicle-row span,.vehicle-row b,.vehicle-row small{min-width:0;display:block}.vehicle-title-cell{gap:4px;display:grid}.vehicle-title-cell small{align-items:center;gap:7px;min-width:0;display:flex}.vehicle-title-cell small>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.vehicle-title-cell small,.rental-vehicle-title small,.rental-record-item small{color:var(--muted);font-weight:850}.energy-pill{white-space:nowrap;border-radius:999px;place-items:center;width:fit-content;min-width:52px;min-height:26px;padding:0 10px;font-size:12px;font-style:normal;font-weight:950;line-height:1;display:inline-grid}.vehicle-row .energy-pill,.vehicle-meta-line .energy-pill{display:inline-grid}.vehicle-title-cell .energy-pill,.rental-pending-title .energy-pill{flex:none;min-width:42px;min-height:20px;padding:0 8px;font-size:11px;box-shadow:inset 0 0 0 1px #ffffff9e}.energy-pill.energy-electric{color:#087f5b;background:#087f5b1f}.energy-pill.energy-fuel{color:#8a650f;background:#caa65e2e}.vehicle-row em,.vehicle-hero em{color:#fff;border-radius:999px;justify-self:start;padding:6px 10px;font-size:12px;font-style:normal;font-weight:900}.in-store-vehicle-row{grid-template-columns:54px minmax(0,1fr);gap:10px;min-height:70px;padding:10px 12px}.in-store-vehicle-row:hover{background:linear-gradient(#fff,#f8fcfb);border-color:#13895f3d;transform:translateY(-1px)}.in-store-vehicle-row .store-brand-badge{background:radial-gradient(circle at 50% 12%,#fffffffa,#ffffff75 40%,#0000 72%),linear-gradient(145deg,#fff,#eef5f6);border-radius:13px;justify-self:start;width:48px;height:48px;overflow:hidden;box-shadow:inset 0 1px #fffffff5,0 8px 16px #121f220f}.in-store-vehicle-row .store-brand-badge img{opacity:.82;width:31px;height:31px}.in-store-vehicle-row .store-brand-badge b{max-width:34px;font-size:10px}.in-store-vehicle-row .vehicle-title-cell b{font-size:17px;line-height:1.15}.in-store-vehicle-row>span:nth-child(3),.in-store-vehicle-row>span:nth-child(4){color:#516261;font-size:13px;font-weight:800;line-height:1.35;display:none}.in-store-vehicle-row .store-brand-badge{grid-area:1/1/3;align-self:center}.in-store-vehicle-row .vehicle-title-cell{grid-area:1/2/3}.in-store-vehicle-row em{display:none}.store-state-pill{color:#087f5b;background:#087f5b1f;flex:none}.in-store-vehicle-row>span:nth-child(3){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.record-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.record-grid button{text-align:left;gap:7px;min-height:98px;padding:14px;display:grid}.log-panel,.gps-panel{gap:14px;display:grid}.gps-status-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.gps-status-grid button{text-align:left;border:1px solid var(--line);background:#fff;border-radius:8px;gap:7px;min-height:112px;padding:14px;display:grid;box-shadow:0 10px 28px #121f220d}.gps-status-grid small,.gps-status-grid span,.gps-run-head,.gps-run-row span{color:var(--muted)}.gps-status-grid strong{font-size:28px;line-height:1}.gps-status-grid strong.ok{color:var(--green)}.inline-message{color:var(--ink);background:#08849414;border:1px solid #0884942e;border-radius:8px;padding:12px 14px;font-weight:900}.gps-run-list{border:1px solid var(--line);background:#fff;border-radius:8px;display:grid;overflow:hidden}.gps-run-head,.gps-run-row{grid-template-columns:190px 100px 90px minmax(260px,1fr);align-items:center;gap:12px;min-width:760px;padding:12px 14px;display:grid}.gps-run-head{background:#f3f7f8;font-weight:900}.gps-run-row{border:0;border-top:1px solid var(--line);text-align:left;background:#fff;width:100%}.gps-run-row:hover{background:#f7fbfa}.gps-run-row strong{color:var(--muted);background:#eef4f6;border-radius:999px;justify-self:start;padding:5px 9px}.gps-run-row strong.success{color:var(--green);background:#13895f14}.gps-run-row strong.failed{color:var(--red);background:#c8464614}.gps-run-row strong.running{color:var(--teal);background:#08849417}.pending-help{background:#08849412;border:1px solid #0884942e;border-radius:8px;gap:6px;margin-bottom:12px;padding:14px;display:grid}.pending-help span{color:var(--muted)}.pending-device-table{gap:8px;display:grid}.pending-device-row{border:1px solid var(--line);text-align:left;background:#fff;border-radius:8px;grid-template-columns:220px minmax(260px,1fr) 180px 96px;align-items:center;gap:12px;width:100%;min-height:68px;padding:11px 12px;display:grid;box-shadow:0 10px 28px #121f220d}.pending-device-row span,.pending-device-row b,.pending-device-row small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.pending-device-row small,.pending-device-row>span:nth-child(2),.pending-device-row>span:nth-child(3){color:var(--muted)}.pending-device-row em{color:#fff;border-radius:999px;justify-self:start;padding:6px 10px;font-size:12px;font-style:normal;font-weight:900}.log-controls{grid-template-columns:minmax(240px,1fr) repeat(3,minmax(150px,190px));gap:10px;display:grid}.log-controls input,.log-controls select{border:1px solid var(--line);background:#fff;border-radius:8px;outline:0;min-width:0;height:42px;padding:0 12px}.log-stat-grid,.role-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.log-stat-grid button,.role-grid section{text-align:left;border:1px solid var(--line);background:#fff;border-radius:8px;gap:6px;min-height:102px;padding:14px;display:grid;box-shadow:0 10px 28px #121f220d}.log-stat-grid small,.role-grid small,.role-grid span{color:var(--muted)}.log-stat-grid strong{font-size:28px;line-height:1}.role-grid strong{font-size:18px}.log-table{border:1px solid var(--line);background:#fff;border-radius:8px;display:grid;overflow:hidden}.log-head,.log-row{grid-template-columns:180px 130px 140px minmax(240px,1fr) 140px 80px;align-items:center;gap:12px;min-width:900px;padding:12px 14px;display:grid}.log-head{color:var(--muted);background:#f3f7f8;font-weight:900}.log-row{border:0;border-top:1px solid var(--line);text-align:left;background:#fff;width:100%}.log-row:hover{background:#f7fbfa}.log-row span,.log-row strong,.log-row b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.log-row span{color:var(--muted)}.log-row em{color:var(--green);background:#13895f14;border-radius:999px;justify-self:start;padding:5px 9px;font-style:normal;font-weight:900}.account-panel,.pushplus-panel{gap:16px;display:grid}.pushplus-panel>header>span{color:#7d5d18;background:#caa65e24;border-radius:999px;padding:7px 12px;font-weight:900}.pushplus-panel>header>span.online{color:var(--green);background:#13895f1a}.pushplus-status-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.pushplus-status-grid section{border:1px solid var(--line);background:linear-gradient(135deg,#13895f14,#0000 54%),#fff;border-radius:8px;align-content:center;gap:7px;min-height:104px;padding:16px;display:grid}.pushplus-status-grid small,.pushplus-status-grid span,.pushplus-config-card p,.pushplus-config-card label span,.pushplus-history-card p,.pushplus-history-list span,.pushplus-actions span{color:var(--muted)}.pushplus-status-grid strong{font-size:clamp(22px,2.4vw,34px);line-height:1}.pushplus-warning{color:#9d3434;background:#bf525212;border:1px solid #bf525233;border-radius:8px;align-items:center;gap:12px;padding:12px 14px;display:flex}.pushplus-warning span{color:#765252}.pushplus-layout{grid-template-columns:minmax(520px,1.15fr) minmax(360px,.85fr);align-items:start;gap:16px;display:grid}.pushplus-config-card,.pushplus-history-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:14px;padding:18px;display:grid}.pushplus-config-card header,.pushplus-history-card header{justify-content:space-between;align-items:center;gap:12px;display:flex}.switch-line{background:#13895f0f;border:1px solid #13895f2e;border-radius:999px;align-items:center;gap:8px;min-height:38px;padding:0 12px;font-weight:900;display:inline-flex}.switch-line input,.pushplus-rule-card input{accent-color:var(--green)}.pushplus-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.pushplus-form-grid label{gap:6px;min-width:0;display:grid}.pushplus-form-grid label.span-2{grid-column:1/-1}.pushplus-form-grid input,.pushplus-form-grid select,.pushplus-form-grid textarea{border:1px solid var(--line);width:100%;min-width:0;font:inherit;background:#f8fbfc;border-radius:8px;font-weight:800}.pushplus-form-grid input,.pushplus-form-grid select{height:44px;padding:0 12px}.pushplus-form-grid textarea{resize:vertical;min-height:86px;padding:11px 12px}.pushplus-safe-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.pushplus-safe-summary section{border:1px solid var(--line);background:linear-gradient(135deg,#13895f14,#0000 48%),#f8fbfc;border-radius:8px;align-content:center;gap:7px;min-height:108px;padding:16px;display:grid}.pushplus-safe-summary small,.pushplus-safe-summary span{color:var(--muted)}.pushplus-safe-summary strong{font-size:24px}.pushplus-rule-overview{border:1px solid var(--line);background:linear-gradient(135deg,#08849414,#0000 46%),#fbfdfd;border-radius:8px;gap:12px;padding:14px;display:grid}.pushplus-rule-overview header{justify-content:space-between;align-items:center;gap:10px;display:flex}.pushplus-rule-overview header span{color:var(--green);white-space:nowrap;background:#13895f1a;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:900}.pushplus-rule-list{gap:8px;display:grid}.pushplus-rule-item{border:1px solid #13895f29;border-left:4px solid var(--green);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:72px;padding:12px;display:grid}.pushplus-rule-item div{gap:4px;min-width:0;display:grid}.pushplus-rule-item strong,.pushplus-rule-item span{text-overflow:ellipsis;min-width:0;overflow:hidden}.pushplus-rule-item span{color:var(--muted);line-height:1.5}.pushplus-rule-item em{color:var(--green);white-space:nowrap;background:#13895f1a;border-radius:999px;padding:6px 10px;font-size:12px;font-style:normal;font-weight:900}.pushplus-rule-item.danger{border-left-color:#d24747}.pushplus-rule-item.danger em{color:#b42323;background:#d247471c}.pushplus-rule-item.warning{border-left-color:#c8942f}.pushplus-rule-item.warning em{color:#8a6416;background:#c8942f24}.pushplus-rule-item.info{border-left-color:var(--teal)}.pushplus-rule-item.disabled{opacity:.72;border-left-color:#b9c5c8}.pushplus-rule-item.disabled em{color:#6f7d80;background:#eef3f4}.pushplus-rule-card{border:1px solid var(--line);background:#f8fbfc;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px;display:grid}.pushplus-rule-card label{background:#fff;border-radius:8px;align-items:center;gap:7px;min-height:38px;padding:0 10px;font-weight:900;display:flex}.pushplus-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pushplus-actions button,.pushplus-history-card header button{color:#fff;background:var(--green);border:1px solid #13895f38;border-radius:8px;min-height:40px;padding:0 16px;font-weight:900}.pushplus-actions button+button,.pushplus-history-card header button{color:var(--green);background:#13895f14}.pushplus-actions button:disabled{opacity:.55;cursor:not-allowed}.pushplus-history-list{gap:8px;max-height:430px;display:grid;overflow:auto}.pushplus-history-list article{border:1px solid var(--line);background:#f8fbfc;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.pushplus-history-list article div{gap:4px;min-width:0;display:grid}.pushplus-history-list strong,.pushplus-history-list span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.pushplus-history-list em{color:#9d3434;text-overflow:ellipsis;white-space:nowrap;background:#bf525217;border-radius:999px;max-width:170px;padding:6px 10px;font-style:normal;font-weight:900;overflow:hidden}.pushplus-history-list em.ok{color:var(--green);background:#13895f1a}.xhey-panel{background:linear-gradient(145deg,#0e749014,#0000 34%),linear-gradient(#fffffff0,#fffffff0);gap:14px;display:grid}.xhey-panel>header{margin-bottom:0}.xhey-message{color:var(--green);background:#13895f12;border:1px solid #13895f29;border-radius:8px;padding:12px 14px;font-weight:900}.xhey-message.warn{color:#9b6b13;background:#caa65e1a;border-color:#caa65e3d}.xhey-gallery{gap:12px;min-width:0;display:grid}.xhey-gallery-head{background:#ffffffd1;border:1px solid #13895f24;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:14px;display:flex}.xhey-gallery-head>div:first-child{gap:4px;min-width:0;display:grid}.xhey-gallery-head strong{color:var(--ink);font-size:22px;line-height:1.1}.xhey-gallery-head span,.xhey-photo-batch span,.xhey-photo-batch small,.xhey-photo-batch em{color:var(--muted)}.xhey-filter{grid-template-columns:minmax(220px,320px) 132px;gap:8px;display:grid}.xhey-filter input,.xhey-filter select{border:1px solid var(--line);min-width:0;height:40px;color:var(--ink);font:inherit;background:#ffffffeb;border-radius:8px;font-weight:800}.xhey-filter input{padding:0 12px}.xhey-filter select{padding:0 10px}.xhey-photo-batch-list{gap:12px;display:grid}.xhey-photo-batch{background:#ffffffe6;border:1px solid #121f221a;border-radius:8px;gap:12px;padding:12px;display:grid;box-shadow:0 16px 36px #121f2214}.xhey-photo-batch.matched{border-color:#13895f47}.xhey-photo-batch header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.xhey-photo-batch header>div{gap:5px;min-width:0;display:grid}.xhey-photo-batch strong,.xhey-photo-batch span,.xhey-photo-batch small,.xhey-photo-batch em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.xhey-photo-batch strong{color:#102623;font-size:18px;font-weight:950}.xhey-photo-batch em{font-style:normal}.xhey-photo-batch small{color:var(--green);background:#13895f1a;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:950}.xhey-batch-thumbs{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px;display:grid}.xhey-batch-thumbs a{aspect-ratio:4/3;background:linear-gradient(135deg,#13895f1f,#0000 48%),#edf3f6;border-radius:8px;place-items:center;display:grid;overflow:hidden}.xhey-batch-thumbs img{object-fit:cover;width:100%;height:100%}.xhey-batch-thumbs span{color:var(--muted);font-weight:900}.account-layout{grid-template-columns:minmax(360px,.9fr) minmax(420px,1fr);gap:16px;display:grid}.account-profile-card,.avatar-picker-card,.password-form{background:linear-gradient(135deg,#08181d09,#0000 40%),#fff;border:1px solid #1c444c24;border-radius:8px;align-content:start;gap:12px;padding:18px;display:grid}.account-profile-card{background:radial-gradient(circle at 9% 22%,#5df1d324,#0000 0 22%,#0000 52%),linear-gradient(135deg,#13895f14,#0000 42%),linear-gradient(315deg,#caa65e1a,#0000 36%),#fff;grid-template-columns:104px minmax(0,1fr) auto;align-items:center;min-height:148px}.account-avatar{border-radius:30px;width:104px;height:104px}.account-avatar b{font-size:25px}.account-profile-card div{gap:5px;min-width:0;display:grid}.account-profile-card small,.account-profile-card span,.avatar-picker-card p,.avatar-picker-card span,.avatar-grid small,.password-form span,.password-form p,.password-form small{color:var(--muted)}.account-profile-card strong{font-size:clamp(26px,3vw,38px);line-height:1.05}.avatar-upload-button{min-width:112px;min-height:42px;color:var(--green);cursor:pointer;background:#13895f14;border:1px solid #13895f38;border-radius:8px;place-items:center;padding:0 14px;font-weight:900;display:grid;position:relative}.avatar-upload-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.avatar-picker-card header,.password-form header{border:0;justify-content:space-between;align-items:center;gap:12px;padding:0;display:flex}.avatar-picker-card h3,.password-form h3{margin:3px 0 0;font-size:20px}.avatar-picker-card p,.password-form p{margin:0;font-size:12px;font-weight:900}.avatar-picker-card header span,.password-form header span{background:var(--soft);border-radius:999px;padding:5px 10px;font-size:12px;font-weight:900}.avatar-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.avatar-grid button{background:radial-gradient(circle at 50% 0,#5df1d31a,#0000 0 38%,#0000 70%),linear-gradient(#fff,#f7fafb);border:1px solid #152c311a;border-radius:8px;justify-items:center;gap:9px;min-height:130px;padding:14px 10px 11px;transition:border-color .18s,box-shadow .18s,transform .18s,background .18s;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffe0}.avatar-grid button:before{content:"";pointer-events:none;border:1px solid #5df1d30f;border-radius:8px;position:absolute;inset:10px}.avatar-grid button.active,.avatar-grid button:hover{background:radial-gradient(circle at 50% 0,#5df1d329,#0000 0 38%,#0000 70%),linear-gradient(#fff,#f0f8f6);border-color:#13895f66;transform:translateY(-1px);box-shadow:inset 0 1px #ffffffeb,0 14px 30px #121f221a}.avatar-grid .avatar-face{border-radius:24px;width:82px;height:82px}.avatar-grid button.active .avatar-face{box-shadow:inset 0 1px #ffffffe0,0 0 0 3px #13895f1f,0 18px 34px #121f2233}.avatar-grid small{color:#43534f;letter-spacing:.02em;font-size:11px;font-weight:900}.password-form label{gap:7px;font-weight:900;display:grid}.password-form input{border:1px solid var(--line);background:#fff;border-radius:8px;outline:0;height:44px;padding:0 12px}.password-form button{color:#fff;background:var(--green);border:1px solid #13895f33;border-radius:8px;width:160px;height:42px;font-weight:900}.password-form button:disabled{opacity:.62;cursor:wait}.detail-dialog,.edit-dialog{background:0 0;border:0;width:min(1080px,100vw - 28px);padding:0}.edit-dialog{width:min(760px,100vw - 28px)}.detail-dialog::backdrop,.edit-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#080e108c}.detail-dialog form,.edit-dialog form{border:1px solid var(--line);background:#f8fbfc;border-radius:10px;overflow:hidden;box-shadow:0 26px 70px #00000047}.detail-dialog header,.edit-dialog header{border-bottom:1px solid var(--line);background:#ffffffeb;justify-content:space-between;align-items:center;padding:16px;display:flex}.detail-dialog header p,.edit-dialog header p{color:var(--muted);margin:0;font-size:12px;font-weight:900}.detail-dialog header h2,.edit-dialog header h2{margin:4px 0 0}.detail-dialog header button,.edit-dialog header button{border:1px solid var(--line);background:#fff;border-radius:8px;width:42px;height:42px;font-size:26px}.detail-body,.edit-body{gap:12px;max-height:min(76vh,820px);padding:14px;display:grid;overflow:hidden auto}.vehicle-hero{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.badge{background:#eef4f6;border-radius:10px;place-items:center;width:58px;height:48px;font-weight:900;display:grid}.vehicle-brand-badge{background:radial-gradient(circle at 50% 18%,#fffffff2,#ffffff2e 42%,#0000 70%),linear-gradient(145deg,#f7fbfc,#e8f0f3);border:1px solid #111b1d14;border-radius:16px;justify-content:center;align-items:center;width:70px;height:58px;display:flex;position:relative;overflow:visible;box-shadow:inset 0 1px #ffffffeb,0 12px 26px #121f2214}.vehicle-brand-badge img{object-fit:contain;object-position:center;transform-origin:50%;width:42px;height:42px;margin:auto;display:block}.vehicle-brand-badge b{color:#182426;text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:48px;font-size:13px;line-height:1.1;overflow:hidden}.vehicle-brand-badge small{color:#fff;white-space:nowrap;border:2px solid #fff;border-radius:999px;place-items:center;min-width:44px;height:20px;padding:0 7px;font-size:10px;font-weight:900;line-height:1;display:grid;position:absolute;bottom:-8px;left:50%;transform:translate(-50%);box-shadow:0 7px 14px #121f2224}.vehicle-brand-badge.energy-electric small{background:linear-gradient(#10a574,#087f5b)}.vehicle-brand-badge.energy-fuel small{background:linear-gradient(#c9952a,#9a6700)}.vehicle-brand-badge img[alt*=奥迪]{width:min(44px,88%);height:min(24px,58%);transform:translateY(1px)scale(1.12)}.vehicle-brand-badge img[alt*=特斯拉],.vehicle-brand-badge img[alt*=蔚来]{width:min(35px,78%);height:min(35px,78%);transform:translate(1px,1px)}.vehicle-brand-badge img[alt*=保时捷]{width:min(34px,74%);height:min(38px,84%);transform:translate(1px,1px)}.vehicle-brand-badge img[alt*=奔驰],.vehicle-brand-badge img[alt*=宝马],.vehicle-brand-badge img[alt*=大众],.vehicle-brand-badge img[alt*=沃尔沃]{width:min(36px,78%);height:min(36px,78%);transform:translateY(1px)}.vehicle-hero h3{margin:0;font-size:24px}.vehicle-hero p{color:var(--muted);margin:4px 0 0}.quick-actions{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:8px;padding:8px;display:grid}.rental-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;padding:14px;display:grid}.rental-card header{background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;margin:0;padding:0;display:flex}.rental-card header p{color:var(--muted);margin:0;font-size:12px;font-weight:900}.rental-card header h3{margin:4px 0 0;font-size:20px}.rental-card-actions{flex-wrap:nowrap;gap:8px;display:flex}.rental-card header button{width:auto;height:auto;min-height:34px;color:var(--green);white-space:nowrap;background:#13895f14;border:1px solid #13895f33;border-radius:8px;padding:0 12px;font-size:14px;font-weight:900;line-height:1}.rental-card>small{color:var(--muted);font-weight:800}.record-toolbar{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(260px,1fr) minmax(150px,.45fr) minmax(150px,.45fr) auto;align-items:end;gap:10px;margin-bottom:12px;padding:10px;display:grid}.record-toolbar label{gap:6px;min-width:0;display:grid}.record-toolbar label span{color:var(--muted);font-size:12px;font-weight:900}.record-toolbar select{border:1px solid var(--line);background:#f8fbfc;border-radius:8px;width:100%;min-width:0;height:40px;padding:0 12px}.record-toolbar button{min-height:40px;color:var(--green);white-space:nowrap;background:#13895f14;border:1px solid #13895f38;border-radius:8px;padding:0 14px;font-weight:900}.rental-record-page{gap:12px;display:grid}.rental-record-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.rental-record-summary button{text-align:left;background:linear-gradient(135deg,#13895f12,#0000 54%),linear-gradient(#fff,#f7fbfa);border:1px solid #d8e3e7e6;border-radius:8px;align-content:center;gap:6px;min-height:82px;padding:12px;display:grid;box-shadow:0 10px 24px #121f220b}.rental-record-summary button:hover{background:#fff;border-color:#13895f3d}.rental-record-summary small{color:var(--muted);font-weight:900}.rental-record-summary strong{font-size:28px;line-height:1}.rental-record-layout{grid-template-columns:minmax(260px,300px) minmax(520px,1fr);align-items:start;gap:16px;display:grid}.rental-record-vehicles,.rental-record-timeline{border:1px solid var(--line);background:linear-gradient(135deg,#13895f0a,#0000 42%),#fff;border-radius:8px;gap:10px;min-width:0;padding:14px;display:grid}.rental-record-vehicles{scrollbar-color:#13895f57 transparent;scrollbar-width:thin;max-height:calc(100vh - 260px);padding-right:10px;overflow:auto}.rental-record-vehicles::-webkit-scrollbar{width:5px}.rental-record-vehicles::-webkit-scrollbar-track{background:0 0}.rental-record-vehicles::-webkit-scrollbar-thumb{background:#13895f4d;border-radius:999px}.rental-record-vehicles header,.rental-record-timeline header{justify-content:space-between;align-items:center;gap:10px;margin:0 0 4px;display:flex}.rental-record-vehicles h3,.rental-record-timeline h3{color:#132a27;margin:0;font-size:17px}.rental-record-vehicles header span,.rental-record-timeline header span{min-width:48px;color:var(--green);text-align:center;background:#13895f14;border:1px solid #13895f29;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:950}.rental-record-vehicles button{text-align:left;background:linear-gradient(90deg,#13895f0e,#0000 38%),linear-gradient(#fff,#f8fbfa);border:1px solid #d8e3e7d1;border-radius:8px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:6px 10px;min-height:104px;padding:9px 10px;transition:border-color .16s,background .16s,transform .16s;display:grid;box-shadow:0 6px 16px #121f2209}.rental-record-vehicles button:hover,.rental-record-vehicles button.active{background:#13895f0f;border-color:#13895f42;transform:translateY(-1px)}.record-brand-badge,.record-mini-brand{background:radial-gradient(circle at 50% 10%,#fffffffa,#ffffff7a 42%,#0000 72%),linear-gradient(145deg,#fff,#edf5f6);border-radius:12px;width:40px;height:40px;overflow:hidden;box-shadow:inset 0 1px #fffffff5,0 7px 14px #121f220e}.record-brand-badge img,.record-mini-brand img{opacity:.82;width:26px;height:26px}.record-brand-badge b,.record-mini-brand b{color:#162325;text-overflow:ellipsis;white-space:nowrap;max-width:30px;font-size:10px;overflow:hidden}.rental-record-vehicles .record-brand-badge{grid-area:1/1/4;align-self:center}.rental-record-group-main{grid-area:1/2;gap:4px;min-width:0;display:grid}.rental-record-group-main strong,.rental-record-group-main span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.rental-record-group-main strong{font-size:15px;line-height:1.25}.rental-record-group-main>span{color:var(--muted);font-size:12px;font-weight:850}.rental-record-vehicles .rental-record-meta{color:#31433f;align-items:center;gap:7px;min-width:0;font-size:12px;font-weight:900;display:flex}.rental-record-vehicles .rental-record-meta>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.rental-record-vehicles .rental-record-meta .energy-pill{flex:none;min-width:38px;min-height:19px;padding:0 7px;font-size:10px}.rental-record-vehicles em{border-radius:999px;grid-area:2/2;place-self:start;padding:4px 8px;font-size:11px;font-style:normal;font-weight:950}.rental-record-vehicles .rental-record-last-time{color:var(--muted);white-space:nowrap;grid-area:3/2;place-self:end start;font-size:12px;font-weight:850}.rental-record-timeline{min-height:360px;position:relative}.rental-record-list b{border-radius:999px;width:fit-content;padding:5px 9px}.rental-record-item{text-align:left;background:linear-gradient(#fff,#f8fbfa);border:1px solid #d8e3e7e6;border-radius:8px;grid-template-columns:18px auto 42px minmax(0,1fr) auto;align-items:center;gap:7px 14px;min-height:82px;margin:0;padding:10px 12px;display:grid;position:relative;box-shadow:0 8px 20px #121f220a}.rental-record-item:before{content:"";background:#d8e3e7e0;width:2px;position:absolute;top:-10px;bottom:-10px;left:20px}.rental-record-item:first-of-type:before{top:50%}.rental-record-item:last-of-type:before{bottom:50%}.rental-record-item>i{z-index:1;background:var(--green);border:3px solid #fff;border-radius:999px;width:14px;height:14px;position:relative;box-shadow:0 0 0 3px #13895f21}.rental-record-item>b{white-space:nowrap;border-radius:999px;width:fit-content;padding:6px 11px;font-size:12px;line-height:1}.rental-record-item div{gap:4px;min-width:0;display:grid}.rental-record-item strong,.rental-record-item span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.rental-record-item span{color:var(--muted);font-size:13px;font-weight:850}.rental-record-item small{color:#43534f;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:7px;min-width:0;font-size:12px;display:flex;overflow:hidden}.rental-record-item small>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.rental-record-item small .energy-pill{flex:none;min-width:38px;min-height:19px;padding:0 7px;font-size:10px}.rental-record-item time{color:#233331;white-space:nowrap;font-size:13px;font-weight:900}.rental-record-item.gps{background:linear-gradient(#fff,#f8fbfa);border-color:#13895f29}.rental-record-item.planned{background:linear-gradient(#fff,#caa65e0f);border-color:#caa65e38}.rental-record-item em{color:var(--muted);white-space:nowrap;grid-column:4/-1;justify-self:start;font-size:12px;font-style:normal;font-weight:900}.rental-record-item.fence-in>i{background:var(--green);box-shadow:0 0 0 3px #13895f24}.rental-record-item.fence-out>i{background:var(--teal);box-shadow:0 0 0 3px #0b728524}.rental-record-item.fence-city-out>i{background:var(--red);box-shadow:0 0 0 3px #c8464624}.rental-record-item.fence-region-out>i{background:#9f1239;box-shadow:0 0 0 3px #9f123924}.rental-record-item.planned>i{background:var(--gold);box-shadow:0 0 0 3px #caa65e29}.rental-event-out{color:#0b7285;background:#0b72851f}.rental-event-due{color:#8a6d1d;background:#caa65e2b}.rental-event-return{color:#087f5b;background:#087f5b1f}.fence-page{gap:12px;display:grid}.fence-stat-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.fence-stat-strip button{border:1px solid var(--line);text-align:left;background:linear-gradient(#fff,#f7fbfa);border-radius:8px;align-content:center;gap:6px;min-height:78px;padding:12px;display:grid;box-shadow:0 10px 24px #121f220b}.fence-stat-strip button:hover{background:#fff;border-color:#13895f3d}.fence-stat-strip small{color:var(--muted);font-weight:900}.fence-stat-strip strong{font-size:28px;line-height:1}.fence-toolbar{grid-template-columns:minmax(180px,1.2fr) minmax(150px,.8fr) minmax(150px,.8fr);margin-bottom:0}.fence-layout{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:12px;display:grid}.fence-groups,.fence-timeline{gap:8px;min-width:0;display:grid}.fence-groups header,.fence-timeline header{justify-content:space-between;align-items:center;min-height:32px;padding:0 2px;display:flex}.fence-groups h3,.fence-timeline h3{margin:0;font-size:16px}.fence-groups header span,.fence-timeline header span{color:var(--muted);font-size:13px;font-weight:900}.fence-groups button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:8px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:6px 10px;min-height:104px;padding:11px 12px;display:grid}.fence-groups button.active,.fence-groups button:hover{background:#13895f0f;border-color:#13895f4d}.fence-groups .record-brand-badge{grid-area:1/1/4;align-self:center}.fence-group-main{grid-area:1/2;gap:4px;min-width:0;display:grid}.fence-group-main strong,.fence-group-main span,.fence-group-main small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.fence-group-main small{color:#31433f;align-items:center;gap:7px;font-size:12px;font-weight:900;display:flex}.fence-group-main small>span,.fence-event-main small>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.fence-group-main .energy-pill,.fence-event-main .energy-pill{flex:none;min-width:38px;min-height:19px;padding:0 7px;font-size:10px}.fence-group-main>span{color:var(--muted);font-size:12px;font-weight:850}.fence-groups button em,.fence-event-row>b{white-space:nowrap;border-radius:999px;width:fit-content;padding:5px 9px;font-size:12px;font-style:normal;font-weight:900}.fence-groups button em{grid-area:2/2;justify-self:start}.fence-event-row{border:1px solid var(--line);text-align:left;background:#fff;border-radius:8px;grid-template-columns:auto 42px minmax(0,1fr) auto;align-items:center;gap:7px 12px;min-height:76px;padding:10px 12px;display:grid}.fence-event-row:hover{background:#fbfdfc;border-color:#13895f33}.fence-event-row em{color:var(--muted);white-space:nowrap;justify-self:end;font-size:12px;font-style:normal;font-weight:900}.fence-event-main{gap:4px;min-width:0;display:grid}.fence-event-main strong,.fence-event-main span,.fence-event-main small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.fence-event-main small{color:#31433f;align-items:center;gap:7px;font-size:12px;font-weight:900;display:flex}.fence-event-main>span{color:var(--muted);font-size:12px;font-weight:850}.fence-last-time{color:var(--muted);white-space:nowrap;grid-area:3/2;place-self:end start;font-size:12px;font-weight:850}.fence-in{color:#087f5b;background:#087f5b1f}.fence-out{color:#0b7285;background:#0b72851f}.fence-city-out{color:#b42323;background:#e2534f21}.fence-city-in{color:#7d530d;background:#caa65e2b}.fence-region-out{color:#9f1239;background:#bd174f24}.fence-region-in{color:#7c3aed;background:#7c3aed1f}.document-page{gap:14px;display:grid}.document-page-header button{color:#fff;background:var(--green);border:1px solid #13895f38;border-radius:8px;min-height:40px;padding:0 16px;font-weight:900}.document-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.document-stats button{border:1px solid var(--line);text-align:left;background:linear-gradient(135deg,#13895f12,#0000 48%),#fff;border-radius:8px;align-content:center;gap:6px;min-height:92px;padding:14px;display:grid}.document-stats small,.document-stats span,.document-board-title span,.document-card-main small,.document-card-main i,.document-card-foot{color:var(--muted)}.document-stats strong{font-size:30px;line-height:1}.document-board{border:1px solid var(--line);background:#f8fbfc;border-radius:10px;gap:10px;padding:12px;display:grid}.document-board-title{justify-content:space-between;align-items:center;gap:12px;padding:2px 2px 8px;display:flex}.document-board-title div{gap:3px;display:grid}.document-board-title strong{font-size:18px}.document-board-title em{color:var(--green);background:#13895f17;border-radius:999px;padding:6px 10px;font-style:normal;font-weight:900}.document-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.document-vehicle-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:8px;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:8px 12px;min-height:94px;padding:12px;display:grid;box-shadow:0 8px 20px #121f2209}.document-vehicle-card:hover{border-color:#13895f47;box-shadow:0 14px 30px #121f2212}.document-brand-badge{grid-row:1/3;width:58px;height:52px}.document-card-main{gap:4px;min-width:0;display:grid}.document-card-main strong,.document-card-main small,.document-card-main i{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.document-card-main i{font-style:normal}.document-vehicle-card em{white-space:nowrap;border-radius:999px;justify-self:end;padding:6px 9px;font-size:12px;font-style:normal;font-weight:900}.document-vehicle-card.complete em{color:#087f5b;background:#087f5b1c}.document-vehicle-card.pending em{color:#8a6d1d;background:#caa65e29}.document-card-foot{grid-column:2/4;font-size:12px;font-weight:900}.document-actions{grid-template-columns:repeat(2,minmax(140px,180px));justify-content:start}.document-actions button:disabled{opacity:.45;cursor:not-allowed}.detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.detail-grid section{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:88px minmax(0,1fr);align-content:start;gap:10px 12px;padding:14px;display:grid}.detail-grid h4{grid-column:1/-1;margin:0 0 2px}.detail-grid p{color:var(--muted);margin:0;font-size:13px}.detail-grid strong{word-break:break-word;min-width:0;font-size:14px;line-height:1.45}.signal-level{text-align:center;border-radius:8px;width:fit-content;min-width:58px;padding:5px 10px;font-size:15px;line-height:1.25}.signal-excellent{color:#087f5b;background:#087f5b1f}.signal-strong{color:#0b7285;background:#0b72851f}.signal-medium{color:#b7791f;background:#b7791f24}.signal-weak{color:#b42318;background:#b423181f}.document-layout{gap:12px;display:grid}.document-layout section{border:1px solid var(--line);background:#fff;border-radius:8px;gap:10px;padding:14px;display:grid}.document-layout h4{margin:0}.document-layout p{min-height:72px;color:var(--ink);white-space:pre-wrap;margin:0;line-height:1.7}.document-layout small{color:var(--muted)}.document-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.document-photo-grid a{color:var(--green);gap:8px;font-weight:900;text-decoration:none;display:grid}.document-photo-grid img{aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line);background:#f2f6f7;border-radius:8px;width:100%}.edit-body label{color:var(--muted);gap:7px;font-weight:800;display:grid}.document-upload-label small{color:var(--muted);font-size:12px;font-weight:850;line-height:1.45}.edit-body input,.edit-body select,.edit-body textarea{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%}.edit-body input,.edit-body select{height:42px;padding:0 12px}.edit-body textarea{resize:vertical;min-height:140px;padding:12px}.edit-body input[type=file]{background:#f8fbfc;border-style:dashed;height:auto;min-height:48px;padding:10px}.rental-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.rental-auto-return-hint{color:var(--muted);background:#0b72850e;border:1px solid #0b728524;border-radius:8px;grid-column:1/-1;padding:10px 12px;font-size:12px;font-weight:850;line-height:1.45}.document-edit-grid{background:linear-gradient(135deg,#13895f0e,#0000 48%),#ffffffd1;border:1px solid #13895f24;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;display:grid}.document-edit-wide{grid-column:1/-1}.violation-note-input textarea{min-height:88px}.ocr-assist-panel{background:linear-gradient(135deg,#13895f17,#0b72850b),#fff;border:1px solid #13895f2e;border-radius:8px;align-items:center;padding:12px;display:grid}.ocr-assist-panel span{min-width:0;color:var(--muted);padding-left:18px;font-size:13px;font-weight:850;line-height:1.55;position:relative}.ocr-assist-panel span:before{content:"";background:var(--green);border-radius:999px;width:8px;height:8px;position:absolute;top:.55em;left:0;box-shadow:0 0 0 5px #13895f1a}.ocr-assist-panel span.loading:before{animation:1s ease-in-out infinite pulseDot}@keyframes pulseDot{0%,to{opacity:.45;transform:scale(.86)}50%{opacity:1;transform:scale(1.1)}}.ocr-result-card{background:#f6fbfb;border:1px solid #0b728529;border-radius:8px;gap:6px;padding:12px;display:grid}.ocr-result-card strong{color:#123a35;font-size:14px;line-height:1.55}.ocr-result-card small{color:var(--muted);font-weight:850;line-height:1.45}.document-field-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.document-field-grid span{background:#f8fbfc;border:1px solid #d8e3e7e0;border-radius:8px;gap:5px;min-width:0;padding:10px;display:grid}.document-field-grid small{color:var(--muted);font-size:12px;font-weight:900}.document-field-grid strong{color:#172d29;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;font-weight:950;overflow:hidden}.document-field-grid .ok strong{color:var(--green)}.document-field-grid .warn strong{color:#a36a08}.document-field-grid .danger strong{color:#b42318}.document-field-grid .wide{grid-column:span 2}.document-field-grid .wide strong{white-space:normal;line-height:1.45}.violation-detail-list{gap:10px;min-width:0;display:grid}.violation-record-card{background:linear-gradient(135deg,#13895f0e,#0000 42%),linear-gradient(#fff,#f8fbfa);border:1px solid #d8e3e7e6;border-radius:8px;gap:10px;min-width:0;padding:14px;display:grid;overflow:hidden}.violation-record-head{grid-template-columns:minmax(0,1fr);align-items:start;gap:8px;display:grid}.violation-record-head>div{gap:5px;min-width:0;display:grid}.violation-record-head strong,.violation-record-head p{text-overflow:ellipsis;overflow:hidden}.violation-record-head strong{color:#102f2a;white-space:nowrap;font-size:15px;line-height:1.35}.violation-fact-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.violation-fact-grid span{color:#253d39;text-overflow:ellipsis;white-space:nowrap;background:#ffffffbd;border:1px solid #d8e3e7c2;border-radius:8px;min-width:0;padding:9px 10px;overflow:hidden}.violation-detail-list .violation-extra-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding-top:2px;display:grid}.violation-detail-list .violation-extra-grid:empty{display:none}.violation-detail-list .violation-extra-grid span{color:#52625e;text-overflow:ellipsis;white-space:nowrap;background:#f1f6f5;border-radius:8px;min-width:0;padding:6px 8px;overflow:hidden}.violation-detail-list strong,.violation-detail-list p,.violation-detail-list small{min-width:0;margin:0}.violation-detail-list p,.violation-detail-list small,.violation-detail-list span{color:var(--muted);font-size:12px;font-weight:850}.violation-detail-list em{white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:11px;font-style:normal;font-weight:950}.violation-detail-list em.ok{color:var(--green);background:#13895f1a}.violation-detail-list em.warn{color:#a36a08;background:#caa65e24}.violation-detail-list em.danger{color:#b42318;background:#b423181a}.violation-status-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:6px;max-width:100%;display:inline-flex}.violation-status-actions button{width:auto;max-width:96px;min-height:28px;color:var(--green);white-space:nowrap;background:#13895f14;border:1px solid #13895f33;border-radius:999px;flex:none;padding:0 9px;font-size:12px;font-weight:950;line-height:1}.violation-note-box{background:#13895f0e;border:1px solid #13895f1f;border-radius:8px;gap:6px;min-width:0;padding:10px 12px;display:grid}.violation-note-box span{color:#60726e;font-size:12px;font-weight:900}.violation-note-box strong{color:#172d29;white-space:pre-wrap;font-size:13px;line-height:1.55}.violation-note-editor{background:#fff;border:1px solid #13895f2e;border-radius:8px;gap:8px;min-width:0;padding:10px;display:grid}.violation-note-editor textarea{resize:vertical;width:100%;min-height:92px;font:inherit;border:1px solid #d8e3e7f2;border-radius:8px;padding:10px 12px;font-weight:800}.violation-note-editor span{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.violation-note-editor button{min-height:32px;color:var(--green);background:#13895f14;border:1px solid #13895f33;border-radius:8px;padding:0 12px;font-size:12px;font-weight:950}.photo-preview{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.photo-preview img{aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line);border-radius:8px;width:100%}.edit-dialog footer{border-top:1px solid var(--line);text-align:right;background:#fff;padding:14px}@media (width<=1180px){.app-shell{grid-template-columns:86px minmax(0,1fr)}.sidebar{padding:14px 10px}.brand{grid-template-columns:1fr;justify-items:center}.brand div{display:none}.sidebar button{justify-content:center;gap:0;padding:0;font-size:0}.sidebar button:before{left:-10px}.nav-label{display:none}.nav-icon{border-radius:12px;flex-basis:42px;width:42px;height:42px}.nav-icon svg{width:21px;height:21px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid .map-only-panel{grid-row:auto}.record-grid,.gps-status-grid,.log-stat-grid,.role-grid,.pushplus-status-grid,.pushplus-safe-summary,.pushplus-rule-card,.account-layout,.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.utilization-hero,.utilization-split,.pushplus-layout{grid-template-columns:1fr}.log-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.log-table,.gps-run-list{overflow-x:auto}.vehicle-row{grid-template-columns:minmax(0,1fr) auto}.in-store-vehicle-row{grid-template-columns:54px minmax(0,1fr);gap:6px 10px;min-height:72px}.in-store-vehicle-row .store-brand-badge{grid-row:1/3}.in-store-vehicle-row .vehicle-title-cell{grid-column:2}.in-store-vehicle-row>span:nth-child(3){grid-column:2/-1;display:none}.in-store-vehicle-row>span:nth-child(4){display:none}.in-store-vehicle-row em{grid-area:1/3}.vehicle-row span:nth-child(2),.vehicle-row span:nth-child(3),.vehicle-row span:nth-child(4){display:none}.fleet-vehicle-row{grid-template-columns:54px minmax(0,1fr) auto;min-height:72px}.fleet-vehicle-row .fleet-brand-badge{grid-area:1/1/3;align-self:center;display:grid}.fleet-vehicle-row .vehicle-title-cell{grid-area:1/2/3;display:grid}.fleet-vehicle-row>span:nth-child(3),.fleet-vehicle-row>span:nth-child(4),.fleet-vehicle-row>span:nth-child(5){display:none}.fleet-vehicle-row em{grid-area:1/3}.in-store-vehicle-row span:nth-child(2){display:grid}.in-store-vehicle-row span:nth-child(3),.in-store-vehicle-row span:nth-child(4){display:none}.vehicle-row>span.energy-pill{display:inline-grid}.track-actions{grid-template-columns:minmax(220px,1fr) minmax(130px,.45fr) minmax(160px,.55fr) minmax(160px,.55fr) 82px}.track-layout{grid-template-columns:1fr}.track-map{min-height:560px}.track-side{grid-template-columns:repeat(2,minmax(0,1fr))}.rental-card-head{grid-template-columns:minmax(0,1fr) auto}.rental-card-head .vehicle-meta-line{grid-column:1/-1}.rental-progress-line{grid-template-columns:1fr}.rental-row-wide{grid-template-columns:minmax(0,1fr) auto}.rental-row-wide>span,.track-stop-list,.track-stop-empty,.track-list{grid-column:1/-1}}@media (width<=980px){.topbar{grid-template-columns:1fr;align-items:start;display:grid}.topbar h1{white-space:nowrap}.toolbar{justify-content:flex-start}}@media (width<=760px){body{overflow-x:hidden}.login-page{grid-template-columns:1fr;gap:18px;padding:18px}.login-visual{min-height:230px}.login-holo{width:min(230px,72vw)}.login-visual img{width:min(220px,68vw)}.login-panel{padding:22px}.login-panel h1{font-size:25px}.app-shell{padding-bottom:calc(78px + env(safe-area-inset-bottom));display:block}.sidebar{z-index:70;contain:layout paint;width:100vw;max-width:100vw;height:auto;padding:7px 8px calc(7px + env(safe-area-inset-bottom));color:var(--muted);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;display:grid;position:fixed;inset:auto 0 0;overflow:hidden;box-shadow:0 -12px 30px #121f2224}.sidebar::-webkit-scrollbar{display:none}:is(body:has(.detail-dialog[open]) .sidebar,body:has(.edit-dialog[open]) .sidebar),.brand,.sidebar button:not(.mobile-primary):not(.mobile-more-button){display:none}.sidebar .mobile-more-button{display:grid}.sidebar button:not(.active){color:var(--muted)}.sidebar button{min-width:0;min-height:54px;color:var(--muted);border-radius:8px;place-items:center;gap:2px;padding:5px 3px;font-size:11px;line-height:1.2;display:grid}.sidebar button:before{width:auto;height:3px;inset:auto 16px -8px}.sidebar button:hover{transform:none}.nav-label{max-width:100%;color:inherit;font-size:11px;display:block}.nav-icon{width:28px;height:28px;color:inherit;box-shadow:none;background:#13895f14;border-color:#13895f1f;border-radius:9px;flex-basis:auto}.nav-icon svg{width:16px;height:16px}.sidebar button.active,.sidebar button:hover{color:var(--green);background:#13895f14;border-color:#13895f2e}.mobile-nav-scrim{z-index:72;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#09131657;display:block;position:fixed;inset:0}.mobile-nav-drawer{left:8px;right:8px;bottom:calc(75px + env(safe-area-inset-bottom));z-index:73;background:#fffffffa;border:1px solid #d8e3e7db;border-radius:18px;gap:12px;max-height:min(70dvh,560px);padding:14px;display:grid;position:fixed;overflow:auto;box-shadow:0 -18px 54px #121f2238}.mobile-nav-drawer header,.mobile-nav-drawer footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.mobile-nav-drawer header p{color:var(--muted);margin:0;font-size:11px;font-weight:900}.mobile-nav-drawer header h2{margin:2px 0 0;font-size:20px}.mobile-nav-drawer header button{border:1px solid var(--line);color:#243331;background:#f7fbfa;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.mobile-nav-drawer header svg{width:19px;height:19px}.mobile-nav-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mobile-nav-grid button{color:#31413e;background:linear-gradient(#fff,#f7fbfa);border:1px solid #d8e3e7f2;border-radius:12px;place-items:center;gap:6px;min-height:76px;padding:8px 6px;font-weight:900;display:grid}.mobile-nav-grid button.active{color:var(--green);background:#13895f14;border-color:#13895f4d}.mobile-nav-grid .nav-icon{width:34px;height:34px}.mobile-nav-drawer footer{border-top:1px solid var(--line);color:var(--muted);padding-top:10px;font-size:12px;font-weight:900}.mobile-nav-drawer footer button{color:#a53030;background:#c8464614;border:1px solid #c8464629;border-radius:10px;min-height:36px;padding:0 12px;font-weight:900}.workspace{padding:10px 10px calc(92px + env(safe-area-inset-bottom))}.topbar{z-index:40;background:#f7fafbf5;border-radius:0 0 12px 12px;gap:8px;margin:-10px -10px 10px;padding:10px 10px 11px;display:grid;position:sticky;top:0}.topbar p{letter-spacing:0;font-size:10px}.topbar h1{white-space:nowrap;margin-top:2px;font-size:21px}.toolbar{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:100%;display:grid}.global-search,.toolbar input,.session{grid-column:1/-1}.global-search{grid-template-columns:minmax(0,1fr) auto;gap:7px;display:grid}.toolbar input,.toolbar select,.session{width:100%;min-width:0}.toolbar input,.toolbar select{border-radius:8px;height:39px}.photo-search-button{height:39px;padding:0 10px}.plate-scanner-overlay{padding:0}.plate-scanner-panel{border:0;border-radius:0;width:100%;height:100dvh}.plate-scanner-head{top:calc(12px + env(safe-area-inset-top));left:12px;right:12px}.plate-scanner-head div{padding:9px 11px}.plate-scanner-head strong{font-size:16px}.plate-scanner-head button{height:38px;padding:0 12px}.plate-scan-frame{border-radius:15px;width:min(86vw,420px);top:46%}.plate-scan-frame span{width:30px;height:30px}.plate-scan-frame strong{min-width:132px;font-size:16px;bottom:-39px}.plate-scanner-foot{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));grid-template-columns:auto minmax(0,1fr);padding:11px}.plate-scanner-foot button{grid-column:1/-1;width:100%}.search-popover{width:auto;max-height:min(54vh,430px);position:fixed;top:122px;left:10px;right:10px;overflow:auto}.session{display:none}.toast-message{top:auto;right:10px;bottom:calc(88px + env(safe-area-inset-bottom));max-width:calc(100vw - 20px)}.view-stack,.dashboard-grid,.gps-panel,.log-panel,.pushplus-panel,.xhey-panel,.account-panel{gap:10px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.metrics button{min-height:82px;padding:11px}.metrics strong{font-size:23px}.metrics span{font-size:12px}.panel{border-radius:8px;padding:12px}.panel header{align-items:flex-start;margin-bottom:10px}.panel header button{min-height:38px;padding:0 12px}.map-only-panel{padding:0}.map-only-panel .mini-map{border-radius:8px;height:min(62dvh,620px);min-height:420px}.map-full-panel{min-height:calc(100dvh - 154px - env(safe-area-inset-bottom));margin:0;padding:0}.panel.map-full-panel{padding:0}.map-full-panel .command-map{min-height:calc(100dvh - 154px - env(safe-area-inset-bottom))}.command-map{min-height:calc(100dvh - 178px - env(safe-area-inset-bottom));border-radius:8px}.app-shell.view-map .workspace{padding-bottom:calc(78px + env(safe-area-inset-bottom))}.app-shell.view-map .topbar p{display:none}.app-shell.view-map .topbar h1{margin-top:0;font-size:20px}.app-shell.view-map .toolbar{grid-template-columns:1fr 1fr}.map-control-dock{border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;max-width:none;padding:6px;display:grid;top:10px;left:10px;right:10px;transform:none}.map-control-dock span{grid-column:1/-1}.map-control-dock span,.map-control-dock button{min-height:34px;padding:0 6px;font-size:12px}.rank-row,.feed-row,.rental-row,.track-list button,.track-stop-list button,.timeline button,.timeline div{min-height:58px;padding:10px}.top-rank-panel .rank-row{grid-template-columns:52px minmax(0,1fr) auto;gap:8px 10px;min-height:72px}.top-rank-panel .rank-row>b{font-size:16px}.top-rank-panel .rank-brand-badge{width:48px;height:44px}.rank-pagination{grid-template-columns:1fr auto 1fr}.record-grid,.gps-status-grid,.log-stat-grid,.role-grid,.pushplus-status-grid,.pushplus-safe-summary,.pushplus-layout,.pushplus-form-grid,.pushplus-rule-card,.account-layout,.detail-grid,.record-toolbar,.rental-edit-grid,.log-controls{grid-template-columns:1fr}.pushplus-config-card,.pushplus-history-card{padding:12px}.pushplus-config-card header,.pushplus-history-card header,.pushplus-warning,.pushplus-actions{flex-direction:column;align-items:stretch}.pushplus-actions button,.pushplus-history-card header button{width:100%}.pushplus-history-list article{grid-template-columns:1fr}.pushplus-history-list em{justify-self:start;max-width:100%}.xhey-gallery-head{padding:12px;display:grid}.xhey-filter{grid-template-columns:1fr}.xhey-photo-batch{padding:10px}.xhey-photo-batch header{grid-template-columns:1fr}.xhey-photo-batch small{justify-self:start}.xhey-batch-thumbs{grid-template-columns:repeat(2,minmax(0,1fr))}.utilization-page{gap:10px}.utilization-hero section{min-height:108px;padding:14px}.utilization-history,.utilization-list{padding:12px}.utilization-list{min-height:0;max-height:none}.utilization-list-body{max-height:none;padding-right:0;overflow:visible}.utilization-bars{grid-template-columns:repeat(24,22px);padding-bottom:4px;overflow-x:auto}.utilization-vehicle-row{grid-template-columns:52px minmax(0,1fr);min-height:72px;padding:10px}.utilization-logo{width:44px;min-width:44px}.utilization-logo img,.utilization-logo b{width:36px;height:36px}.utilization-main,.utilization-meta{grid-column:2}.utilization-meta{text-align:left;justify-content:space-between;justify-self:stretch;align-items:center;display:flex}.utilization-meta b{max-width:128px}.vehicle-row,.pending-device-row{grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;min-height:64px;padding:10px}.in-store-vehicle-row{grid-template-columns:48px minmax(0,1fr);gap:6px 9px;min-height:68px;padding:9px 10px}.in-store-vehicle-row .store-brand-badge{border-radius:12px;width:44px;height:44px}.in-store-vehicle-row .store-brand-badge img{width:28px;height:28px}.in-store-vehicle-row .store-brand-badge{grid-area:1/1/3;align-self:center}.in-store-vehicle-row .vehicle-title-cell{grid-area:1/2/3}.in-store-vehicle-row>span:nth-child(3){white-space:nowrap;grid-area:2/2/auto/-1;display:none}.in-store-vehicle-row>span:nth-child(4){display:none}.in-store-vehicle-row em{grid-area:1/3;align-self:start}.vehicle-row b,.vehicle-row span,.vehicle-row small,.pending-device-row b,.pending-device-row span,.pending-device-row small{text-overflow:ellipsis;overflow-wrap:anywhere;max-width:100%;overflow:hidden}.vehicle-row span,.pending-device-row span{grid-column:1/-1}.vehicle-row span:nth-child(3),.pending-device-row>span:nth-child(2),.pending-device-row>span:nth-child(3){display:block}.vehicle-row>span.energy-pill{grid-area:1/2;display:inline-grid}.vehicle-row em,.pending-device-row em{justify-self:end}.fleet-vehicle-row{grid-template-columns:48px minmax(0,1fr) auto;min-height:68px;padding:9px 10px}.fleet-vehicle-row .fleet-brand-badge{border-radius:12px;grid-area:1/1/3;align-self:center;width:44px;height:44px;display:grid}.fleet-vehicle-row .fleet-brand-badge img{width:28px;height:28px}.fleet-vehicle-row .vehicle-title-cell{grid-area:1/2/3;display:grid}.fleet-vehicle-row>span:nth-child(3),.fleet-vehicle-row>span:nth-child(4),.fleet-vehicle-row>span:nth-child(5){display:none}.fleet-vehicle-row em{grid-area:1/3;align-self:start}.rental-row-wide{grid-template-columns:minmax(0,1fr) auto;min-height:116px;padding:12px}.rental-timeline-card{padding:12px}.rental-page>header{gap:10px}.rental-page .panel-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;display:grid}.rental-page .panel-actions span{grid-column:1/-1;justify-self:start;min-height:30px;padding:0 10px}.rental-page .panel-actions button{width:100%;min-height:40px;padding:0 10px}.rental-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.rental-summary-strip button{min-height:64px;padding:10px}.rental-summary-strip strong{font-size:21px}.rental-filter-bar,.rental-card-foot{flex-direction:column;align-items:flex-start}.rental-card-head,.rental-progress-line,.rental-pending-grid{grid-template-columns:1fr}.rental-progress-line>b{justify-self:start}.rental-time-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.rental-pending-grid button{grid-template-columns:50px minmax(0,1fr) auto;min-height:68px;padding:9px 10px}.rental-pending-grid .rental-pending-logo{width:44px;height:44px}.rental-card-head em{justify-self:start}.rental-time-strip>span{min-height:58px;padding:8px 7px}.rental-time-strip small{font-size:11px}.rental-time-strip b{white-space:normal;font-size:13px}.rental-auto-state{text-align:center;border-radius:8px;justify-content:center;width:100%}.rental-pending-panel{-webkit-overflow-scrolling:touch;max-height:380px;overflow:auto}.rental-pending-panel header{z-index:1;background:linear-gradient(#fff 78%,#fff0);padding-bottom:8px;position:sticky;top:0}.rental-pending-panel header small:after{content:" · 上滑查看更多"}.rental-row-wide>span,.rental-row-wide>.rental-points,.rental-row-wide>small,.rental-row-wide>.rental-progress{grid-column:1/-1}.rental-points{grid-template-columns:1fr;gap:8px}.rental-progress{height:13px}.track-actions{grid-template-columns:1fr;padding:7px}.track-control,.track-refresh-button{min-height:50px}.track-layout{grid-template-columns:1fr;gap:10px}.track-map{border-radius:8px;min-height:min(58dvh,560px)}.track-side{grid-template-columns:1fr;gap:8px}.track-stat{min-height:78px;padding:12px}.track-stop-list{max-height:180px}.compact-list{max-height:340px}.detail-dialog,.edit-dialog{width:calc(100vw - 20px);max-width:none}.detail-dialog form,.edit-dialog form{border-radius:12px}.detail-dialog header,.edit-dialog header{padding:12px}.detail-dialog header h2,.edit-dialog header h2{font-size:20px}.detail-body,.edit-body{gap:10px;max-height:min(78dvh,760px);padding:10px}.vehicle-hero{grid-template-columns:66px minmax(0,1fr);gap:10px;padding:12px}.vehicle-hero em{grid-column:1/-1;justify-self:start}.badge{width:50px;height:44px}.vehicle-brand-badge{border-radius:14px;width:58px;height:52px}.vehicle-brand-badge img{width:36px;height:36px}.vehicle-brand-badge b{max-width:40px;font-size:12px}.vehicle-brand-badge small{min-width:40px;height:18px;padding:0 6px;font-size:9px;bottom:-8px}.vehicle-hero h3{font-size:21px}.quick-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:7px}.quick-actions button{min-height:42px;padding:0 6px;font-size:14px}.rental-card{padding:12px}.rental-card header{align-items:flex-start}.rental-card header h3{font-size:18px}.rental-card-actions{gap:6px}.rental-card header button{word-break:keep-all;min-width:58px;min-height:34px;padding:0 10px}.detail-grid section{grid-template-columns:78px minmax(0,1fr);gap:8px 10px;padding:12px}.document-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.document-edit-grid,.document-field-grid{grid-template-columns:1fr}.document-field-grid .wide{grid-column:1}.ocr-assist-panel,.violation-record-head,.violation-fact-grid{grid-template-columns:1fr}.violation-status-actions{justify-content:flex-start}.violation-detail-list .violation-extra-grid,.document-photo-grid,.document-stats,.document-card-grid,.account-profile-card,.avatar-grid{grid-template-columns:1fr}.account-profile-card{justify-items:start}.avatar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.document-board{padding:9px}.document-board-title,.document-page-header{align-items:flex-start}.document-vehicle-card{grid-template-columns:58px minmax(0,1fr)}.document-vehicle-card em{grid-column:2;justify-self:start}.document-card-foot{grid-column:1/-1}.record-toolbar{gap:8px;padding:9px}.rental-record-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.rental-record-summary button{min-height:74px;padding:11px}.rental-record-summary strong{font-size:24px}.rental-record-layout{grid-template-columns:1fr}.rental-record-vehicles,.rental-record-timeline{padding:10px}.rental-record-vehicles{max-height:none}.rental-record-vehicles button{grid-template-columns:42px minmax(0,1fr);min-height:100px}.record-brand-badge,.record-mini-brand{border-radius:11px;width:36px;height:36px}.record-brand-badge img,.record-mini-brand img{width:23px;height:23px}.rental-record-item{grid-template-columns:16px auto 38px minmax(0,1fr);gap:7px 9px;min-height:82px;padding:10px}.rental-record-item:before{left:18px}.rental-record-item time{grid-column:4;justify-self:start;font-size:12px}.rental-record-item em{grid-column:4}.fence-stat-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.fence-toolbar,.fence-layout{grid-template-columns:1fr}.rental-record-item em{grid-column:4;justify-self:start}.fence-event-row{grid-template-columns:auto 38px minmax(0,1fr)}.fence-event-row em{grid-column:3;justify-self:start}.record-toolbar button,.password-form button{width:100%}.log-table,.gps-run-list{overflow-x:auto}.icp-footer{padding-bottom:0;font-size:12px}}@media (width<=420px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics button{min-height:78px;padding:10px}.metrics strong{font-size:22px}.metrics span{font-size:11px}.quick-actions,.toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar select{grid-column:auto}.sidebar{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;padding-left:6px;padding-right:6px}.sidebar button{min-width:0;font-size:10px}.nav-icon{width:27px;height:27px}.mobile-nav-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.top-rank-panel .rank-row{grid-template-columns:48px minmax(0,1fr)}.top-rank-panel .rank-row>b{grid-column:2;justify-self:start}.rank-pagination button{padding:0 8px}}@media (width<=760px){.app-shell.view-vehicles .table,.app-shell.view-inStore .table{grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:10px}.app-shell.view-vehicles .fleet-vehicle-row,.app-shell.view-inStore .in-store-vehicle-row{border-radius:14px;grid-template-rows:auto auto;grid-template-columns:1fr;place-items:center;gap:7px;width:100%;min-height:108px;padding:10px 8px}.app-shell.view-vehicles .fleet-vehicle-row .fleet-brand-badge,.app-shell.view-inStore .in-store-vehicle-row .store-brand-badge{border-radius:16px;grid-area:1/1;place-self:center;width:56px;height:56px;display:flex}.app-shell.view-vehicles .fleet-vehicle-row .fleet-brand-badge img,.app-shell.view-inStore .in-store-vehicle-row .store-brand-badge img{width:38px;height:38px}.app-shell.view-vehicles .fleet-vehicle-row .vehicle-title-cell,.app-shell.view-inStore .in-store-vehicle-row .vehicle-title-cell{text-align:center;grid-area:2/1;justify-self:stretch;min-width:0;display:block!important}.app-shell.view-vehicles .fleet-vehicle-row .vehicle-title-cell b,.app-shell.view-inStore .in-store-vehicle-row .vehicle-title-cell b{color:#091719;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:13px;font-weight:950;line-height:1.15;display:block;overflow:hidden}.app-shell.view-vehicles .fleet-vehicle-row .vehicle-title-cell small,.app-shell.view-inStore .in-store-vehicle-row .vehicle-title-cell small,.app-shell.view-vehicles .fleet-vehicle-row>span:nth-child(3),.app-shell.view-vehicles .fleet-vehicle-row>span:nth-child(4),.app-shell.view-vehicles .fleet-vehicle-row>span:nth-child(5),.app-shell.view-vehicles .fleet-vehicle-row em,.app-shell.view-inStore .in-store-vehicle-row>span:nth-child(3),.app-shell.view-inStore .in-store-vehicle-row>span:nth-child(4),.app-shell.view-inStore .in-store-vehicle-row em{display:none!important}}@media (width<=420px){.app-shell.view-vehicles .table,.app-shell.view-inStore .table{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.app-shell.view-vehicles .fleet-vehicle-row,.app-shell.view-inStore .in-store-vehicle-row{min-height:104px;padding:8px}.app-shell.view-vehicles .fleet-vehicle-row .fleet-brand-badge,.app-shell.view-inStore .in-store-vehicle-row .store-brand-badge{border-radius:15px;width:54px;height:54px}.app-shell.view-vehicles .fleet-vehicle-row .fleet-brand-badge img,.app-shell.view-inStore .in-store-vehicle-row .store-brand-badge img{width:37px;height:37px}.app-shell.view-vehicles .fleet-vehicle-row .vehicle-title-cell b,.app-shell.view-inStore .in-store-vehicle-row .vehicle-title-cell b{font-size:12px}}@media (width<=760px){html,body,#app,.app-shell,.workspace,.view-stack,.panel,.topbar,.toolbar,.detail-body,.edit-body,.document-layout,.document-board,.document-card-grid,.rental-record-layout,.fence-layout,.track-layout{min-width:0;max-width:100%}input,select,textarea{font-size:16px}.panel header,.document-page-header,.document-board-title,.xhey-gallery-head,.rental-card header,.pushplus-config-card header,.pushplus-history-card header{grid-template-columns:1fr;gap:8px;display:grid}.panel header button,.document-page-header button,.xhey-gallery-head button{width:100%;min-height:42px}.document-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.document-stats button{min-height:72px;padding:9px}.document-stats small,.document-stats span{text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.25;overflow:hidden}.document-stats strong{font-size:24px}.document-board-title em{justify-self:start}.document-vehicle-card{grid-template-columns:50px minmax(0,1fr);gap:7px 10px;min-height:82px;padding:10px}.document-brand-badge{grid-row:1/3;width:46px;height:44px}.document-brand-badge img{width:30px;height:30px}.document-card-main strong{font-size:15px}.document-card-main small,.document-card-main i{font-size:12px}.document-vehicle-card em,.document-card-foot{grid-column:2;justify-self:start}.document-card-foot{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.document-upload-label{background:#13895f0b;border:1px solid #13895f24;border-radius:10px;padding:10px}.document-upload-label input[type=file]{background:#fff;border-color:#13895f3d;border-radius:10px;min-height:54px}.ocr-assist-panel,.ocr-result-card{padding:10px}.photo-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.edit-dialog form,.detail-dialog form{max-height:calc(92dvh - env(safe-area-inset-bottom));overflow:hidden}.edit-body,.detail-body{max-height:calc(92dvh - 124px - env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;overflow:auto}.edit-dialog footer{background:#fff;padding:10px;display:grid;position:sticky;bottom:0}.edit-dialog footer button{background:var(--green);color:#fff;border-radius:10px;width:100%;min-height:46px;font-weight:950}.edit-dialog footer button:disabled{opacity:.62;cursor:wait}.detail-grid section{grid-template-columns:1fr;gap:6px}.detail-grid p{font-size:12px}.quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-actions button{white-space:nowrap;min-height:44px}.map-control-dock{grid-template-columns:repeat(2,minmax(0,1fr))}.map-control-dock button{white-space:nowrap}.track-playback-controls,.track-speed-panel{grid-template-columns:1fr}.track-playback-controls button,.track-refresh-button,.track-control{width:100%}.rental-row-wide,.rental-record-vehicles button,.fence-event-row,.rental-record-item,.utilization-vehicle-row,.xhey-photo-card,.pushplus-history-list article{overflow:hidden}.rental-row-wide *,.rental-record-item *,.fence-event-row *,.utilization-vehicle-row *,.xhey-photo-card *,.pushplus-history-list article *{min-width:0}.rental-record-item{grid-template-columns:16px 38px minmax(0,1fr)}.rental-record-item time,.rental-record-item em{grid-column:3}.fence-event-row{grid-template-columns:38px minmax(0,1fr)}.fence-event-row em{grid-column:2}.document-field-grid strong,.violation-record-card strong,.violation-record-card p,.rental-card strong,.rental-card small,.track-stat span,.track-stat strong{overflow-wrap:anywhere}}@media (width<=380px){.toolbar{grid-template-columns:1fr}.photo-search-button{width:42px;padding:0}.photo-search-button span{display:none}.toolbar select{grid-column:1}.document-stats{grid-template-columns:1fr}.app-shell.view-vehicles .table,.app-shell.view-inStore .table{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.topbar,.map-control-dock,.amap-car-marker,.amap-mini-marker,.see-topbar>span,.see-topbar em,.see-topbar b,.see-filter-card,.see-vehicle-card{-webkit-backdrop-filter:none;backdrop-filter:none}.see-current-marker:after,.plate-scan-frame:after{animation:none}.amap-car-marker .map-store-badge,.amap-mini-marker .map-store-badge,.amap-car-marker .map-city-badge,.amap-mini-marker .map-city-badge,.amap-car-marker .map-region-province-badge,.amap-mini-marker .map-region-province-badge{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
