.access-denied-page{justify-content:center;align-items:center;min-height:100%;padding:24px;display:flex}.access-denied-card{text-align:center;background:var(--card);border:1px solid var(--border);border-radius:18px;width:min(460px,100%);padding:38px;box-shadow:0 18px 48px #0000001f}.access-denied-icon{color:#ef4444;background:#ef44441f;border-radius:20px;justify-content:center;align-items:center;width:72px;height:72px;font-size:38px;display:inline-flex}.access-denied-card h1{color:var(--text);margin:20px 0 8px;font-size:24px}.access-denied-card p{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.6}.access-denied-card button{background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:10px;align-items:center;gap:8px;height:42px;margin-top:24px;padding:0 18px;font-weight:600;display:inline-flex}.layout{height:100vh;display:flex;overflow:hidden}.layout-content{flex-direction:column;flex:1;display:flex;overflow:hidden}.layout-main{flex:1;min-width:0;padding:24px;overflow-y:auto}@media (width<=768px){.layout,.layout-content{width:100%;min-width:0}.layout-main{padding:var(--space-2);overscroll-behavior:contain;overflow-x:hidden}}.layout-main--flush{padding:0;overflow:hidden}@media (width<=1024px){.layout-main{padding:16px}}@media (width<=768px){.layout,.layout-content{height:100dvh}.layout-main{-webkit-overflow-scrolling:touch;width:100%;min-height:0;padding:12px;overflow:hidden auto}.layout-main--flush{padding:0;overflow:hidden}}@media (width<=480px){.layout-main{padding:10px}}.sidebar{background:var(--card);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:250px;height:100vh;transition:width .22s,border-color .22s,transform .22s,box-shadow .22s;display:flex;overflow:hidden}.sidebar.is-collapsed{width:72px}.sidebar-logo,.sidebar-nav{transition:opacity .12s}.sidebar.is-collapsed .sidebar-logo{justify-content:center;padding:0}.sidebar.is-collapsed .logo-content{justify-content:center;align-items:center}.sidebar.is-collapsed .sidebar-logo-full{display:none}.sidebar.is-collapsed .sidebar-logo-icon{object-fit:contain;width:38px;height:38px;display:block}.sidebar.is-collapsed .sidebar-nav{padding:20px 10px}.sidebar.is-collapsed .sidebar-link{justify-content:center;gap:0;width:52px;padding:0}.sidebar.is-collapsed .sidebar-label{display:none}.sidebar.is-collapsed .sidebar-icon{min-width:0}.sidebar-backdrop{display:none}.sidebar-logo{border-bottom:1px solid var(--border);align-items:center;gap:14px;min-height:58px;padding:0 24px;display:flex}.logo-content{flex-direction:column;display:flex}.logo-content img{height:40px}.sidebar-logo-icon{display:none}.logo-content h2{color:var(--text);margin:0;font-size:20px;font-weight:700}.logo-content span{color:var(--text-secondary);font-size:12px}.sidebar-nav{flex:1;padding:20px 14px;overflow-y:auto}.sidebar-link{height:35px;color:var(--text-secondary);border-radius:14px;align-items:center;gap:14px;margin-bottom:6px;padding:0 16px;font-size:14px;text-decoration:none;transition:all .2s;display:flex}.sidebar-link:hover{color:var(--text);background:#3b82f614}.sidebar-link.active{color:var(--primary);background:#3b82f626;font-weight:600}.sidebar-icon{justify-content:center;align-items:center;min-width:24px;font-size:22px;display:flex}.sidebar-icon svg{width:22px;min-width:22px;height:22px;min-height:22px;font-size:22px}.sidebar-footer{border-top:1px solid var(--border);padding:18px}.logout-btn{cursor:pointer;color:#ef4444;background:#ef44441f;border:none;border-radius:14px;justify-content:center;align-items:center;gap:10px;width:100%;height:40px;font-size:12px;font-weight:600;transition:all .2s;display:flex}.logout-btn:hover{background:#ef444433}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:0 0}.sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:999px}@media (width<=1366px){.sidebar-logo{min-height:54px}}@media (width<=768px){.sidebar,.sidebar.is-collapsed{border-right-color:var(--border);z-index:1001;width:min(82vw,300px);height:100dvh;box-shadow:none;position:fixed;inset:0 auto 0 0;transform:translate(-105%)}.sidebar.is-open,.sidebar.is-collapsed.is-open{transform:translate(0);box-shadow:12px 0 28px #00000040}.sidebar.is-collapsed .sidebar-logo{justify-content:flex-start;padding:0 24px}.sidebar.is-collapsed .sidebar-logo-full{display:block}.sidebar.is-collapsed .sidebar-logo-icon{display:none}.sidebar.is-collapsed .sidebar-nav{padding:20px 14px}.sidebar.is-collapsed .sidebar-link{justify-content:flex-start;gap:14px;width:auto;padding:0 16px}.sidebar.is-collapsed .sidebar-label{display:inline}.sidebar.is-collapsed .sidebar-icon{min-width:24px}.sidebar-backdrop{z-index:1000;opacity:0;pointer-events:none;background:#0206177a;border:0;width:100%;height:100%;padding:0;transition:opacity .22s;display:block;position:fixed;inset:0}.sidebar-backdrop.is-visible,.sidebar.is-collapsed .sidebar-logo,.sidebar.is-collapsed .sidebar-nav{opacity:1;pointer-events:auto}.sidebar-logo{padding:0 var(--space-3)}}@media (width<=480px){.sidebar{width:min(88vw,320px)}.sidebar-nav{padding:12px 10px}.sidebar-link{border-radius:11px;height:42px;margin-bottom:4px;padding:0 14px;font-size:16px}.sidebar-logo{min-height:56px}.logo-content img{object-fit:contain;object-position:left center;max-width:190px;height:36px}}.topbar{background:var(--card);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:58px;padding:0 16px;display:flex}.topbar-left{align-items:center;gap:12px;min-width:0;display:flex}.menu-btn{width:34px;height:34px;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:8px;font-size:18px;transition:all .15s}.menu-btn:hover{background:#ffffff0d}.search-container{width:320px;position:relative}.search-box{background:var(--background);border:1px solid var(--border);border-radius:10px;align-items:center;gap:8px;width:100%;height:36px;padding:0 12px;display:flex}.search-box svg{color:var(--text-secondary);font-size:15px}.search-box input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:12px}.search-box input::placeholder{color:var(--text-secondary)}.search-clear-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;margin-left:6px;padding:0;font-size:12px}.search-clear-btn:hover{color:var(--text)}.topbar-right{flex-shrink:0;align-items:center;gap:8px;display:flex}.icon-btn{border:1px solid var(--border);background:var(--background);width:34px;height:34px;color:var(--text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;font-size:16px;transition:all .15s;display:flex}.icon-btn:hover{border-color:var(--primary)}.search-dropdown{background:var(--card);border:1px solid var(--border);z-index:9999;border-radius:10px;position:absolute;top:42px;left:0;right:0;overflow:hidden;box-shadow:0 12px 24px #0000002e}.search-item{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;padding:10px 12px;transition:all .15s}.search-item:hover{background:#3b82f61a}.search-item-content{flex-direction:column;gap:2px;display:flex}.search-device-name{font-size:12px;font-weight:600}.search-device-info{color:var(--text-secondary);font-size:11px}@media (width<=1366px){.topbar{min-height:54px;padding:0 12px}.search-container{width:260px}.search-box{height:34px}}@media (width<=1100px){.search-container{width:200px}}@media (width<=900px){.search-container{display:none}}@media (width<=768px){.topbar{min-height:var(--toolbar-height);padding:0 var(--space-2)}.topbar-right{gap:4px}.icon-btn{width:32px;height:32px}.topbar-right .icon-btn:nth-of-type(2),.topbar-right .icon-btn:nth-of-type(3){display:none}}@media (width<=600px){.topbar{gap:6px}.topbar-left{flex:1}.menu-btn{flex-shrink:0;width:32px;height:32px}.topbar-right{margin-left:auto}.topbar-right .icon-btn{width:32px;height:32px}.topbar-right>*{flex-shrink:0}}@media (width<=420px){.topbar{padding-inline:8px}.topbar-right{gap:3px}}.user-menu-wrapper{align-items:center;display:flex;position:relative}.user-menu-trigger{background:color-mix(in srgb,var(--background) 74%,var(--card));min-width:198px;height:54px;color:var(--text);cursor:pointer;border:1px solid #0000;border-radius:12px;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:5px 10px;transition:background .18s,border-color .18s,box-shadow .18s;display:grid}.user-menu-trigger:hover,.user-menu-trigger.open{border-color:var(--border);background:var(--background)}.user-menu-avatar,.user-menu-avatar{width:42px;height:42px;font-size:16px}.user-menu-trigger-copy{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.user-menu-trigger-copy strong,.user-menu-trigger-copy small{text-overflow:ellipsis;white-space:nowrap;max-width:124px;display:block;overflow:hidden}.user-menu-trigger-copy strong{color:var(--text);font-size:11px;font-weight:800}.user-menu-trigger-copy small{color:var(--text-secondary);text-transform:none;font-size:9px;font-weight:500}.user-menu-chevron{color:var(--text-secondary);transition:transform .2s;width:16px!important;height:16px!important}.user-menu-chevron.rotate{transform:rotate(180deg)}.user-dropdown{border:1px solid var(--border);background:var(--card);z-index:99999;border-radius:14px;width:310px;padding:10px;animation:.16s userDropdown;position:absolute;top:62px;right:0;box-shadow:0 18px 46px #0f172a2e}.user-dropdown-profile{grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;padding:10px;display:grid}.user-dropdown-profile>div{min-width:0}.user-dropdown-profile strong,.user-dropdown-profile span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.user-dropdown-profile strong{color:var(--text);font-size:11px;font-weight:800}.user-dropdown-profile span{color:var(--text-secondary);margin-top:4px;font-size:9px}.user-dropdown-divider{background:var(--border);height:1px;margin:8px 0}.user-dropdown-actions{flex-direction:column;gap:2px;display:flex}.user-dropdown-item{width:100%;min-height:42px;color:var(--text-secondary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;padding:0 12px;font-size:11px;font-weight:500;transition:background .15s,color .15s;display:flex}.user-dropdown-item svg{width:16px!important;min-width:16px!important;height:16px!important;min-height:16px!important;font-size:16px!important}.user-dropdown-item:hover{background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--text)}.user-dropdown-item.danger{color:#ef4444}.user-dropdown-item.danger:hover{color:#ef4444;background:#ef444414}@keyframes userDropdown{0%{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}@media (width<=900px){.user-menu-trigger{background:0 0;border-radius:50%;grid-template-columns:1fr;width:44px;min-width:0;height:44px;padding:0}.user-menu-avatar{width:38px;height:38px}.user-menu-trigger-copy,.user-menu-chevron{display:none}.user-dropdown{top:52px}}@media (width<=420px){.user-dropdown{width:auto;position:fixed;top:58px;left:8px;right:8px}}.user-menu-avatar{background:var(--primary)!important;color:#fff!important;text-align:center!important;box-sizing:border-box!important;border-radius:50%!important;flex:0 0 42px!important;justify-content:center!important;align-items:center!important;width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;max-height:42px!important;margin:0!important;padding:0!important;font-size:16px!important;font-weight:800!important;line-height:42px!important;display:flex!important;overflow:hidden!important}.user-dropdown-profile{grid-template-columns:42px minmax(0,1fr)!important}.topbar-notifications,.notification-bell-btn{position:relative}.notification-bell-btn.is-active{border-color:var(--primary);background:#3b82f61a}.notification-bell-badge{border:2px solid var(--card);color:#fff;background:#ef4444;border-radius:999px;justify-content:center;align-items:center;min-width:17px;height:17px;padding:0 4px;font-size:11px;font-weight:800;line-height:1;display:flex;position:absolute;top:-6px;right:-6px}.topbar-notification-menu{border:1px solid var(--border);background:var(--card);z-index:10050;border-radius:14px;width:min(390px,100vw - 24px);position:absolute;top:44px;right:0;overflow:hidden;box-shadow:0 18px 45px #0f172a40}.topbar-notification-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 15px;display:flex}.topbar-notification-header>div{flex-direction:column;gap:2px;display:flex}.topbar-notification-header strong{color:var(--text);font-size:14px}.topbar-notification-header span{color:var(--text-secondary);font-size:11px}.topbar-notification-header button{color:var(--primary);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.topbar-notification-header button:disabled{opacity:.45;cursor:default}.topbar-notification-list{max-height:390px;overflow-y:auto}.topbar-notification-item{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:9px;padding:12px 14px;transition:background .15s;display:grid}.topbar-notification-item:hover{background:#3b82f614}.topbar-notification-item.is-unread{background:#3b82f60e}.topbar-notification-item.is-read{opacity:.72}.topbar-notification-dot{background:#94a3b8;border-radius:50%;width:8px;height:8px;margin-top:5px}.topbar-notification-dot.severity-critical{background:#ef4444}.topbar-notification-dot.severity-high{background:#f97316}.topbar-notification-dot.severity-medium{background:#f59e0b}.topbar-notification-dot.severity-low{background:#3b82f6}.topbar-notification-content{flex-direction:column;gap:3px;min-width:0;display:flex}.topbar-notification-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.topbar-notification-message{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.35;display:-webkit-box;overflow:hidden}.topbar-notification-meta{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.topbar-notification-new{color:var(--primary);text-transform:uppercase;background:#3b82f624;border-radius:999px;padding:3px 6px;font-size:11px;font-weight:800}.topbar-notification-state{min-height:120px;color:var(--text-secondary);text-align:center;justify-content:center;align-items:center;gap:7px;padding:22px;font-size:12px;display:flex}.topbar-notification-state.is-error{color:#ef4444}.topbar-notification-footer{background:var(--background);width:100%;height:42px;color:var(--primary);cursor:pointer;border:0;justify-content:center;align-items:center;gap:7px;font-size:11px;font-weight:700;display:flex}.topbar-notification-footer:hover{background:#3b82f61a}@media (width<=600px){.topbar-notification-menu{width:auto;position:fixed;top:58px;left:8px;right:8px}.topbar-notification-list{max-height:min(60vh,390px)}}.ai-chat-launcher{z-index:1201;background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:50%;place-items:center;width:58px;height:58px;transition:transform .2s,box-shadow .2s;display:grid;position:fixed;bottom:24px;right:24px;box-shadow:0 14px 36px #0f172a47}.ai-chat-launcher:hover{transform:translateY(-2px);box-shadow:0 18px 42px #0f172a57}.ai-chat-launcher svg{width:24px;height:24px}.ai-chat-launcher span{border:2px solid var(--card);color:#fff;background:#10b981;border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 5px;font-size:11px;font-weight:800;display:grid;position:absolute;top:-2px;right:-2px}.ai-chat-panel{z-index:1200;border:1px solid var(--border);background:var(--card);border-radius:18px;flex-direction:column;width:min(430px,100vw - 32px);height:min(650px,100dvh - 124px);animation:.18s ease-out ai-chat-open;display:flex;position:fixed;bottom:94px;right:24px;overflow:hidden;box-shadow:0 24px 70px #0f172a47}.ai-chat-panel.is-expanded{width:min(780px,100vw - 48px);height:calc(100dvh - 48px);bottom:24px;right:24px}@keyframes ai-chat-open{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.ai-chat-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;height:58px;padding:0 14px;display:flex}.ai-chat-title{align-items:center;gap:10px;display:flex}.ai-chat-title>div{flex-direction:column;display:flex}.ai-chat-title strong{color:var(--text);font-size:13px}.ai-chat-title small{color:var(--text-secondary);font-size:11px}.ai-chat-icon{width:34px;height:34px;color:var(--primary);background:#2563eb1f;border-radius:10px;place-items:center;display:grid}.ai-chat-actions{gap:6px;display:flex}.ai-chat-actions button{border:1px solid var(--border);background:var(--background);width:32px;height:32px;color:var(--text);cursor:pointer;border-radius:8px;place-items:center;display:grid}.ai-chat-actions button:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.ai-chat-context{border-bottom:1px solid var(--border);color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;padding:9px 14px;font-size:11px;overflow:hidden}.ai-chat-messages{background:var(--background);flex-direction:column;flex:1;gap:10px;min-height:0;padding:14px;display:flex;overflow-y:auto}.ai-chat-message{display:flex}.ai-chat-message>div{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:14px;max-width:88%;padding:10px 12px;font-size:12px;line-height:1.5}.ai-chat-message.assistant{justify-content:flex-start}.ai-chat-message.assistant>div{white-space:normal;background:var(--card);border:1px solid var(--border);width:94%;max-width:94%;color:var(--text);border-bottom-left-radius:4px}.ai-chat-message.user{justify-content:flex-end}.ai-chat-message.user>div{white-space:pre-wrap;background:var(--primary);color:#fff;border-bottom-right-radius:4px}.ai-chat-error{color:#ef4444;background:#ef44441a;border:1px solid #ef444459;border-radius:10px;padding:9px 10px;font-size:11px}.ai-chat-typing{align-items:center;gap:4px;display:flex}.ai-chat-typing span{background:var(--text-secondary);border-radius:50%;width:5px;height:5px;animation:1.2s infinite ai-chat-pulse}.ai-chat-typing span:nth-child(2){animation-delay:.15s}.ai-chat-typing span:nth-child(3){animation-delay:.3s}@keyframes ai-chat-pulse{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.ai-chat-composer{border-top:1px solid var(--border);background:var(--card);flex-shrink:0;gap:8px;padding:12px;display:flex}.ai-chat-composer textarea{resize:none;border:1px solid var(--border);background:var(--background);min-height:42px;max-height:110px;color:var(--text);font:inherit;border-radius:12px;outline:none;flex:1;padding:10px 12px;font-size:12px}.ai-chat-composer textarea:focus{border-color:var(--primary)}.ai-chat-composer button{background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:12px;width:42px}.ai-chat-composer button:disabled{opacity:.45;cursor:not-allowed}@media (width<=700px){.ai-chat-launcher{bottom:16px;right:16px}.ai-chat-panel,.ai-chat-panel.is-expanded{border-radius:16px;width:auto;height:auto;inset:12px}.ai-chat-message>div{max-width:94%}.ai-chat-message.assistant>div{width:98%;max-width:98%}}.ai-markdown{min-width:0;display:block}.ai-markdown>:first-child{margin-top:0}.ai-markdown>:last-child{margin-bottom:0}.ai-markdown p{margin:0 0 10px}.ai-markdown h1,.ai-markdown h2,.ai-markdown h3,.ai-markdown h4{color:var(--text);margin:14px 0 8px;line-height:1.3}.ai-markdown h1{font-size:17px}.ai-markdown h2{font-size:15px}.ai-markdown h3{font-size:13px}.ai-markdown h4{font-size:12px}.ai-markdown strong{color:var(--text);font-weight:700}.ai-markdown em{font-style:italic}.ai-markdown a{color:var(--primary);text-underline-offset:2px;text-decoration:underline}.ai-markdown ul,.ai-markdown ol{margin:8px 0 10px;padding-left:20px}.ai-markdown li{margin:4px 0;padding-left:2px}.ai-markdown blockquote{border-left:3px solid var(--primary);color:var(--text-secondary);background:#2563eb14;border-radius:0 8px 8px 0;margin:10px 0;padding:9px 12px}.ai-markdown blockquote p{margin:0}.ai-markdown hr{border:0;border-top:1px solid var(--border);margin:12px 0}.ai-markdown code{border:1px solid var(--border);background:var(--background);border-radius:5px;padding:2px 5px;font-family:Consolas,Courier New,monospace;font-size:11px}.ai-markdown-code{border:1px solid var(--border);background:var(--background);border-radius:10px;margin:10px 0;overflow:hidden}.ai-markdown-code-header{border-bottom:1px solid var(--border);color:var(--text-secondary);text-transform:uppercase;padding:6px 10px;font-size:11px}.ai-markdown-code pre{margin:0;padding:11px;overflow:auto}.ai-markdown-code pre code{white-space:pre;color:var(--text);background:0 0;border:0;padding:0;font-size:11px}.ai-markdown-table-wrapper{border:1px solid var(--border);background:var(--background);border-radius:10px;width:100%;margin:10px 0;overflow-x:auto}.ai-markdown-table{border-collapse:collapse;width:100%;min-width:390px;font-size:11px;line-height:1.4}.ai-markdown-table th,.ai-markdown-table td{text-align:left;vertical-align:top;border-right:1px solid var(--border);border-bottom:1px solid var(--border);white-space:normal;padding:8px 9px}.ai-markdown-table th:last-child,.ai-markdown-table td:last-child{border-right:0}.ai-markdown-table tbody tr:last-child td{border-bottom:0}.ai-markdown-table th{background:var(--card);color:var(--text);font-weight:700;position:sticky;top:0}.ai-markdown-table td{color:var(--text-secondary)}.ai-markdown-table tbody tr:hover{background:#2563eb0d}.ai-chat-message.assistant>div{width:94%;max-width:94%}.ai-chat-message.user>div{white-space:pre-wrap}.ai-chat-message.assistant>div{white-space:normal}@media (width<=520px){.ai-markdown-table{min-width:520px}.ai-chat-message.assistant>div{width:98%;max-width:98%}}.ai-markdown ol>li>div{display:inline}.ai-markdown ol>li>ul{margin:6px 0 10px;padding-left:20px}.ai-markdown ol>li>ul li{font-weight:400}.ai-chat-actions button:disabled{opacity:.45;cursor:not-allowed}.ai-chat-processing{color:var(--text-secondary);align-items:center;gap:8px;font-size:11px;display:flex}.ai-chat-processing .ai-chat-typing{flex-shrink:0}.ai-chat-context{justify-content:space-between;align-items:center;gap:10px;display:flex}.ai-chat-context>span:first-child{text-overflow:ellipsis;min-width:0;overflow:hidden}.ai-chat-status{flex-shrink:0;align-items:center;gap:5px;font-weight:700;display:inline-flex}.ai-chat-status i{background:var(--text-secondary);border-radius:50%;width:6px;height:6px}.ai-chat-status.is-ready{color:#16a34a}.ai-chat-status.is-ready i{background:#16a34a}.ai-chat-status.is-connecting{color:#d97706}.ai-chat-status.is-connecting i{background:#d97706;animation:1s infinite ai-chat-status-pulse}.ai-chat-status.is-error{color:#dc2626}.ai-chat-status.is-error i{background:#dc2626}@keyframes ai-chat-status-pulse{0%,to{opacity:.35}50%{opacity:1}}.ai-chat-service-error{color:var(--text);background:#ef444414;border:1px solid #ef444459;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 11px;display:flex}.ai-chat-service-error>div{flex-direction:column;gap:2px;min-width:0;display:flex}.ai-chat-service-error strong{color:#ef4444;font-size:11px}.ai-chat-service-error span{color:var(--text-secondary);font-size:11px;line-height:1.4}.ai-chat-service-error button{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:8px;flex-shrink:0;align-items:center;gap:6px;padding:7px 9px;font-size:11px;font-weight:700;display:inline-flex}.ai-chat-service-error button:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.ai-chat-service-error button:disabled{opacity:.5;cursor:not-allowed}@media (width<=520px){.ai-chat-context{flex-direction:column;align-items:flex-start;gap:4px}.ai-chat-service-error{flex-direction:column;align-items:flex-start}.ai-chat-service-error button{align-self:flex-end}}.alerts-content{flex-direction:column;flex:1;min-width:0;height:100%;display:flex;overflow:hidden}.alerts-header{justify-content:space-between;align-items:center;gap:16px;padding:20px 24px 16px;display:flex}.alerts-header h1{color:var(--text-primary);margin:0;font-size:22px;font-weight:750}.alerts-header p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.alerts-header-actions{align-items:center;gap:10px;display:flex}.alerts-icon-btn,.new-alert-btn{cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:7px;height:38px;padding:0 14px;font-size:12px;font-weight:650;transition:all .18s;display:inline-flex}.alerts-icon-btn{border:1px solid var(--border);background:var(--card);color:var(--text-primary)}.alerts-icon-btn:hover:not(:disabled){color:#2563eb;border-color:#2563eb}.alerts-icon-btn:disabled{opacity:.55;cursor:not-allowed}.alerts-icon-btn svg,.new-alert-btn svg{font-size:18px}.new-alert-btn{color:#fff;background:#2563eb;border:0}.new-alert-btn:hover{background:#1d4ed8}.alerts-body{flex-direction:column;flex:1;min-height:0;padding:0 24px 24px;display:flex}.alerts-error{color:#ef4444;background:#ef444414;border:1px solid #ef444459;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;font-size:12px;display:flex}.alerts-error button{color:inherit;cursor:pointer;background:0 0;border:0;font-weight:700}.alerts-layout{flex:1;gap:14px;min-height:0;display:flex}@keyframes alert-spin{to{transform:rotate(360deg)}}@media (width<=1200px){.alerts-layout{grid-template-columns:300px minmax(0,1fr);display:grid;overflow:auto}.alert-sidebar{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid!important}}@media (width<=768px){.alerts-content{overflow:auto}.alerts-header{flex-direction:column;align-items:flex-start;padding:16px}.alerts-header-actions{width:100%}.alerts-icon-btn,.new-alert-btn{flex:1}.alerts-body{padding:0 16px 16px}.alerts-layout{flex-direction:column;display:flex;overflow:visible}.alert-sidebar{display:flex!important}.alerts-icon-btn span{display:none}}.alerts-tabs{border-bottom:1px solid var(--border);gap:6px;margin:0 24px 14px;display:flex}.alerts-tabs button{height:38px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:0 12px;font-size:11px;font-weight:700;display:inline-flex}.alerts-tabs button svg{font-size:17px}.alerts-tabs button:hover{color:var(--text-primary)}.alerts-tabs button.active{color:#2563eb;border-bottom-color:#2563eb}@media (width<=768px){.alerts-tabs{margin:0 16px 12px;overflow-x:auto}.alerts-tabs button{white-space:nowrap}}.new-alert-btn:disabled{opacity:.5;cursor:not-allowed;filter:saturate(.55)}.new-alert-btn:disabled:hover{background:#2563eb}.alert-btn-edit:disabled,.alert-scope-manage:disabled{opacity:.5;cursor:not-allowed}.alert-delete-backdrop{z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172ab3;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.alert-delete-modal{border:1px solid var(--border);background:var(--card);text-align:center;border-radius:14px;width:390px;max-width:100%;padding:18px;box-shadow:0 24px 60px #0000004d}.alert-delete-icon{color:#ef4444;background:#ef44441f;border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;margin:0 auto 10px;font-size:24px;display:flex}.alert-delete-modal h3{color:var(--text-primary);margin:0;font-size:16px}.alert-delete-modal p{color:var(--text-secondary);margin:8px 0 0;font-size:11px;line-height:1.55}.alert-delete-modal p strong{color:var(--text-primary)}.alert-delete-modal>div{gap:8px;margin-top:16px;display:flex}.alert-delete-modal button{cursor:pointer;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;height:36px;font-size:11px;font-weight:700;display:flex}.alert-delete-modal button:disabled{opacity:.55;cursor:not-allowed}.alert-delete-cancel{border:1px solid var(--border);color:var(--text-primary);background:0 0}.alert-delete-confirm{color:#fff;background:#ef4444;border:0}.alert-details{border:1px solid var(--border);background:var(--card);border-radius:12px;flex-direction:column;flex:1;min-width:0;min-height:0;padding:16px;display:flex;overflow-y:auto}.alert-details-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.alert-details-title{align-items:center;gap:11px;min-width:0;display:flex}.alert-header-icon{border-radius:11px;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;font-size:21px;display:flex}.alert-details-title h2{color:var(--text);margin:0;font-size:17px}.alert-details-title div>span{color:var(--text-secondary);margin-top:3px;font-size:10px;display:block}.alert-badge{border-radius:999px;padding:5px 9px;font-size:11px;font-weight:700}.alert-badge.active{color:#22c55e;background:#22c55e21}.alert-badge.inactive{color:#94a3b8;background:#94a3b821}.alert-description{color:var(--text-secondary);background:#2563eb0f;border-left:3px solid #2563eb;border-radius:0 8px 8px 0;margin:14px 0;padding:10px 12px;font-size:11px;line-height:1.5}.alert-section-title{color:var(--text-secondary);letter-spacing:.5px;text-transform:uppercase;margin:2px 0 8px;font-size:11px;font-weight:700}.alert-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.alert-row{border:1px solid var(--border);background:var(--background);border-radius:9px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:10px 11px;display:flex}.alert-row>span{color:var(--text-secondary);font-size:10px}.alert-row strong{color:var(--text);text-align:right;font-size:11px}.alert-tags{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.alert-tags span{color:#3b82f6;background:#3b82f61f;border-radius:999px;padding:3px 7px;font-size:11px;font-weight:700}.alert-card{border:1px solid var(--border);background:var(--background);border-radius:10px;margin-top:12px;padding:12px}.alert-card h3{color:var(--text);margin:0 0 8px;font-size:12px}.alert-card p{color:var(--text-secondary);margin:0;font-size:11px;line-height:1.5}.alert-actions{gap:8px;margin-top:auto;padding-top:14px;display:flex}.alert-actions button{cursor:pointer;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;height:36px;font-size:11px;font-weight:700;display:flex}.alert-btn-edit{color:#fff;background:#2563eb;border:0}.alert-btn-delete{color:#ef4444;background:#ef444414;border:1px solid #ef444459}.alert-details-empty{min-height:260px;color:var(--text-secondary);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.alert-details-empty svg{margin-bottom:8px;font-size:36px}.alert-details-empty strong{color:var(--text);font-size:13px}.alert-details-empty span{margin-top:4px;font-size:10px}@media (width<=768px){.alert-details{min-height:420px}.alert-details-grid{grid-template-columns:1fr}}.alert-scope-card{flex-direction:column;gap:12px;display:flex}.alert-scope-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.alert-scope-header h3{margin:0}.alert-scope-header p{color:var(--text-secondary,#64748b);margin:4px 0 0;font-size:12px}.alert-scope-count{color:#4f6df5;background:#4f6df51f;border-radius:999px;align-items:center;gap:5px;min-width:48px;padding:5px 9px;font-size:12px;font-weight:800;display:inline-flex}.alert-scope-state{border:1px dashed var(--border,#dbe2ea);color:var(--text-secondary,#64748b);text-align:center;border-radius:9px;padding:12px;font-size:12px}.alert-scope-state.error{color:#ef4444;background:#ef44440f;border-color:#ef44444d}.alert-scope-devices{flex-wrap:wrap;gap:7px;display:flex}.alert-scope-device{border:1px solid var(--border,#dbe2ea);background:var(--card,#fff);max-width:100%;color:var(--text,#0f172a);border-radius:8px;align-items:center;gap:5px;padding:6px 9px;font-size:11px;font-weight:700;display:inline-flex}.alert-scope-device span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.alert-scope-manage{color:#4f6df5;cursor:pointer;background:#4f6df514;border:1px solid #4f6df559;border-radius:8px;align-self:flex-start;align-items:center;gap:6px;padding:8px 11px;font-weight:700;display:inline-flex}.alert-scope-manage:hover{background:#4f6df524}[data-theme=dark] .alert-scope-device{background:var(--card,#111827)}.alert-scope-subsection{flex-direction:column;gap:8px;display:flex}.alert-scope-subsection+.alert-scope-subsection{border-top:1px solid var(--border,#dbe2ea);padding-top:10px}.alert-scope-subheader{color:var(--text-secondary,#64748b);text-transform:uppercase;letter-spacing:.35px;justify-content:space-between;align-items:center;gap:10px;font-size:11px;font-weight:700;display:flex}.alert-scope-subheader>span{align-items:center;gap:6px;display:flex}.alert-scope-subheader strong{color:#4f6df5;text-align:center;background:#4f6df51a;border-radius:999px;min-width:24px;padding:3px 7px}.alert-scope-state.compact{padding:8px 10px;font-size:10px}.alert-scope-group{color:#4f6df5;background:#4f6df512;border-color:#4f6df547}[data-theme=dark] .alert-scope-group{background:#4f6df51a}.alert-btn-duplicate{color:#2563eb;background:#2563eb12;border:1px solid #2563eb47}.alert-btn-duplicate:hover:not(:disabled){background:#2563eb1f}.alert-actions button:disabled{opacity:.45;cursor:not-allowed}@media (width<=520px){.alert-actions{flex-wrap:wrap}.alert-actions button{min-width:calc(50% - 4px)}.alert-btn-delete{flex-basis:100%}}.alert-condition-description{color:var(--text-secondary);margin:0 0 12px;font-size:11px;line-height:1.55}.alert-events{flex-direction:column;flex:1;gap:14px;min-height:0;display:flex}.alert-events-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.alert-events-stat{border:1px solid var(--border);background:var(--card);min-height:72px;box-shadow:var(--shadow-sm);border-radius:14px;flex-direction:column;justify-content:center;padding:12px 16px;display:flex}.alert-events-stat span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:650}.alert-events-stat strong{color:var(--text);margin-top:5px;font-size:24px;line-height:1}.alert-events-stat.critical strong{color:#ef4444}.alert-events-stat.warning strong{color:#f59e0b}.alert-events-toolbar{grid-template-columns:minmax(220px,1.4fr) repeat(4,minmax(145px,.8fr)) 38px 38px 38px;gap:8px;display:grid}.alert-events-toolbar select,.alert-events-search{border:1px solid var(--border);background:var(--card);height:38px;color:var(--text);border-radius:10px}.alert-events-toolbar select{min-width:0;padding:0 10px;font-size:12px}.alert-events-search{align-items:center;gap:7px;padding:0 10px;display:flex}.alert-events-search svg{color:var(--text-secondary);flex:none;font-size:17px}.alert-events-search input{min-width:0;color:var(--text);background:0 0;border:0;outline:0;flex:1;font-size:12px}.alert-events-search input::placeholder{color:var(--text-secondary)}.alert-events-tool-button{border:1px solid var(--border);background:var(--card);height:38px;color:var(--text-secondary);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;display:flex}.alert-events-tool-button:hover:not(:disabled){color:#2563eb;border-color:#2563eb}.alert-events-tool-button:disabled{opacity:.5;cursor:not-allowed}.alert-events-tool-button svg{font-size:18px}.alert-events-list{border:1px solid var(--border);background:var(--card);min-height:0;box-shadow:var(--shadow-sm);border-radius:14px;flex:1;overflow:auto}.alert-event-row{border-bottom:1px solid var(--border);grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;transition:background .16s;display:grid}.alert-event-row:last-child{border-bottom:0}.alert-event-row:hover{background:var(--hover-bg)}.alert-event-row.severity-critical{box-shadow:inset 3px 0 #ef4444}.alert-event-row.severity-warning{box-shadow:inset 3px 0 #f59e0b}.alert-event-row.severity-success{box-shadow:inset 3px 0 #16a34a}.alert-event-row.severity-info{box-shadow:inset 3px 0 #2563eb}.alert-event-icon{background:var(--background-secondary);color:#2563eb;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.alert-event-icon svg{font-size:19px}.alert-event-main{min-width:0}.alert-event-title-row{align-items:center;gap:7px;min-width:0;display:flex}.alert-event-title-row strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.alert-event-severity,.alert-event-source{white-space:nowrap;border-radius:999px;align-items:center;padding:3px 7px;font-size:11px;font-weight:750;display:inline-flex}.alert-event-severity.critical{color:#ef4444;background:#ef44441f}.alert-event-severity.warning{color:#d97706;background:#f59e0b21}.alert-event-severity.info{color:#2563eb;background:#2563eb1c}.alert-event-severity.success{color:#16a34a;background:#16a34a1c}.alert-event-source{background:var(--background-secondary);color:var(--text-secondary)}.alert-event-source.local{color:#7c3aed}.alert-event-device{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11px;display:block;overflow:hidden}.alert-event-meta{color:var(--text-secondary);flex-wrap:wrap;gap:5px 12px;margin-top:5px;font-size:10px;display:flex}.alert-event-actions{align-items:center;gap:7px;display:flex}.alert-event-actions button{border:1px solid var(--border);height:32px;color:var(--text);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:5px;padding:0 9px;font-size:11px;font-weight:650;display:inline-flex}.alert-event-actions button:hover:not(:disabled){color:#2563eb;border-color:#2563eb}.alert-event-actions button:disabled{opacity:.4;cursor:not-allowed}.alert-event-actions svg{font-size:15px}.alert-events-empty{min-height:180px;color:var(--text-secondary);text-align:center;justify-content:center;align-items:center;padding:24px;font-size:12px;display:flex}@media (width<=1250px){.alert-events-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}.alert-events-search{grid-column:span 2}.alert-events-tool-button{width:100%}.alert-event-row{grid-template-columns:40px minmax(0,1fr)}.alert-event-actions{grid-column:2;justify-content:flex-start}}@media (width<=760px){.alert-events-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.alert-events-toolbar{flex-direction:column;display:flex}.alert-events-search,.alert-events-tool-button{width:auto}.alert-event-row{grid-template-columns:34px minmax(0,1fr);padding:12px 10px}.alert-event-icon{width:32px;height:32px}.alert-event-title-row{flex-wrap:wrap;align-items:flex-start}.alert-event-actions{grid-column:1/-1}.alert-event-actions button{flex:1;justify-content:center}}.alert-events-pagination{border:1px solid var(--border);background:var(--card);min-height:44px;color:var(--text-secondary);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:7px 10px;font-size:10px;display:flex}.alert-events-page-size,.alert-events-page-nav{align-items:center;gap:7px;display:flex}.alert-events-page-size select{border:1px solid var(--border);background:var(--background);height:30px;color:var(--text);border-radius:8px;padding:0 8px;font-size:10px}.alert-events-page-info{font-weight:650}.alert-events-page-nav button{border:1px solid var(--border);width:30px;height:30px;color:var(--text);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;display:flex}.alert-events-page-nav button:hover:not(:disabled){color:#2563eb;border-color:#2563eb}.alert-events-page-nav button:disabled{opacity:.35;cursor:not-allowed}.alert-events-page-nav span{text-align:center;min-width:84px;font-weight:650}@media (width<=600px){.alert-events-pagination{flex-direction:column;align-items:stretch}.alert-events-page-size,.alert-events-page-nav{justify-content:space-between}.alert-events-page-info{text-align:center}}.alert-events-content{flex:1;grid-template-columns:minmax(0,1fr);gap:12px;min-height:0;display:grid}.alert-events-content.with-details{grid-template-columns:minmax(0,1.5fr) minmax(310px,.75fr)}.alert-event-row.selected{background:#2563eb12}@media (width<=1180px){.alert-events-content.with-details{grid-template-columns:1fr}.event-details-panel{max-height:520px;overflow:auto}}@media (width<=760px){.alert-events-content.with-details{flex-direction:column;display:flex}.event-details-panel{max-height:none}}.event-details-panel{border:1px solid var(--border);background:var(--card);min-height:0;box-shadow:var(--shadow-sm);border-radius:14px;flex-direction:column;gap:14px;padding:16px;display:flex}.event-details-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.event-details-header h3{color:var(--text);margin:7px 0 0;font-size:17px}.event-details-header p{color:var(--text-secondary);margin:3px 0 0;font-size:10px}.event-details-severity{border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800;display:inline-flex}.event-details-severity.critical{color:#ef4444;background:#ef44441f}.event-details-severity.warning{color:#d97706;background:#f59e0b21}.event-details-severity.info{color:#2563eb;background:#2563eb1c}.event-details-severity.success{color:#16a34a;background:#16a34a1c}.event-details-close{border:1px solid var(--border);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:9px;justify-content:center;align-items:center;display:flex}.event-details-close:hover{color:#2563eb;border-color:#2563eb}.event-details-device{border:1px solid var(--border);background:var(--background);border-radius:11px;align-items:center;gap:10px;padding:11px;display:flex}.event-details-device>svg{color:#2563eb;font-size:21px}.event-details-device div{flex-direction:column;min-width:0;display:flex}.event-details-device strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.event-details-device span{color:var(--text-secondary);margin-top:2px;font-size:10px}.event-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.event-details-info{border:1px solid var(--border);background:var(--background);border-radius:9px;flex-direction:column;gap:4px;min-width:0;padding:9px 10px;display:flex}.event-details-info span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:700}.event-details-info strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.event-details-info.compact{padding:8px 9px}.event-details-info.compact strong{white-space:normal;overflow-wrap:anywhere}.event-details-location,.event-details-attributes{border:1px solid var(--border);background:var(--background);border-radius:11px;flex-direction:column;gap:7px;padding:12px;display:flex}.event-details-section-title{color:var(--text);align-items:center;gap:6px;font-size:11px;font-weight:800;display:flex}.event-details-location>strong{color:var(--text);font-size:11px;line-height:1.45}.event-details-location>span,.event-details-muted{color:var(--text-secondary);font-size:10px}.event-details-location>button{color:#2563eb;cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:5px;padding:0;font-size:11px;font-weight:700;display:inline-flex}.event-attributes-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.event-details-actions{flex-wrap:wrap;gap:7px;margin-top:auto;display:flex}.event-details-actions button{border:1px solid var(--border);height:34px;color:var(--text);cursor:pointer;background:0 0;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:11px;font-weight:700;display:inline-flex}.event-details-actions button:hover:not(:disabled){color:#2563eb;border-color:#2563eb}.event-details-actions button:disabled{opacity:.4;cursor:not-allowed}@media (width<=720px){.event-details-grid,.event-attributes-list{grid-template-columns:1fr}.event-details-actions button{min-width:calc(50% - 4px)}}.alert-list{border:1px solid var(--border);background:var(--card);border-radius:12px;flex-direction:column;width:340px;min-width:340px;min-height:0;display:flex;overflow:hidden}.alert-list-header{border-bottom:1px solid var(--border);padding:12px}.alert-search{border:1px solid var(--border);background:var(--background);height:36px;color:var(--text-secondary);border-radius:9px;align-items:center;gap:8px;padding:0 10px;display:flex}.alert-search:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.alert-search input{width:100%;color:var(--text);background:0 0;border:0;outline:0;font-size:12px}.alert-filter-row{grid-template-columns:1.3fr .8fr;gap:8px;margin-top:8px;display:grid}.alert-filter-row select{border:1px solid var(--border);background:var(--background);min-width:0;height:32px;color:var(--text);border-radius:8px;padding:0 8px;font-size:11px}.alert-list-summary{color:var(--text-secondary);justify-content:space-between;align-items:center;margin-top:8px;font-size:11px;display:flex}.alert-list-summary button{color:#3b82f6;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;font-size:11px;display:flex}.alert-list-body{flex:1;min-height:0;overflow-y:auto}.alert-listitem{border:0;border-bottom:1px solid var(--border);width:100%;min-height:88px;color:inherit;text-align:left;cursor:pointer;background:0 0;align-items:flex-start;gap:10px;padding:12px;transition:background .15s,box-shadow .15s;display:flex}.alert-listitem:hover{background:#2563eb0f}.alert-listitem.selected{background:#2563eb1a;box-shadow:inset 3px 0 #2563eb}.alert-icon{border-radius:10px;flex:0 0 36px;justify-content:center;align-items:center;width:36px;height:36px;font-size:17px;display:flex}.red{color:#ef4444;background:#ef444421}.green{color:#22c55e;background:#22c55e21}.blue{color:#3b82f6;background:#3b82f621}.orange{color:#f97316;background:#f9731621}.purple{color:#a855f7;background:#a855f721}.alert-info{flex-direction:column;flex:1;min-width:0;display:flex}.alert-info-title{align-items:center;gap:6px;min-width:0;display:flex}.alert-info-title strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.alert-availability{border-radius:999px;flex:none;padding:2px 6px;font-size:11px;font-weight:700;line-height:1.4}.alert-availability.permanent{color:#16a34a;background:#22c55e1f}.alert-availability.scheduled{color:#64748b;background:#64748b21}.alert-info small{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11px;overflow:hidden}.alert-scope-summary{align-items:center;gap:6px;margin-top:7px;display:flex}.alert-scope-summary>span{border:1px solid var(--border);background:var(--background);min-width:36px;height:22px;color:var(--text-secondary);border-radius:7px;justify-content:center;align-items:center;gap:4px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.alert-scope-summary svg{color:#3b82f6;font-size:12px}.alert-state-dot{border-radius:50%;flex:0 0 8px;width:8px;height:8px;margin-top:14px}.alert-state-dot.active{background:#22c55e;box-shadow:0 0 0 3px #22c55e1f}.alert-state-dot.inactive{background:#94a3b8}.alert-list-state{min-height:180px;color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:20px;font-size:11px;display:flex}.alert-list-state strong{color:var(--text);font-size:13px}[data-theme=dark] .alert-availability.permanent{color:#4ade80}[data-theme=dark] .alert-availability.scheduled{color:#94a3b8}@media (width<=1200px){.alert-list{width:320px;min-width:320px}}@media (width<=768px){.alert-list{width:100%;min-width:0;max-height:480px}}.notification-center{flex-direction:column;gap:14px;display:flex}.notification-center-summary{align-items:stretch;gap:12px;display:flex}.notification-center-summary>div{border:1px solid var(--border,#e2e8f0);background:var(--card,#fff);border-radius:12px;flex-direction:column;gap:4px;min-width:145px;padding:14px 16px;display:flex}.notification-center-summary span{color:var(--text-secondary,#64748b);font-size:12px}.notification-center-summary strong{color:var(--text,#0f172a);font-size:24px}.notification-center-summary button{border:1px solid var(--border,#e2e8f0);background:var(--card,#fff);color:var(--text,#0f172a);cursor:pointer;border-radius:10px;align-items:center;gap:8px;margin-left:auto;padding:0 16px;font-weight:700;display:flex}.notification-center-summary button:disabled{opacity:.5;cursor:not-allowed}.notification-center-toolbar{border:1px solid var(--border,#e2e8f0);background:var(--card,#fff);border-radius:12px;grid-template-columns:minmax(150px,190px) minmax(150px,190px) minmax(220px,1fr) auto;gap:10px;padding:12px;display:grid}.notification-center-toolbar select,.notification-refresh{border:1px solid var(--border,#dbe3ee);background:var(--input-bg,var(--card,#fff));height:40px;color:var(--text,#0f172a);border-radius:9px;padding:0 11px}.notification-refresh{cursor:pointer;justify-content:center;align-items:center;gap:7px;font-weight:700;display:flex}.notification-center-list{flex-direction:column;gap:8px;display:flex}.notification-row{border:1px solid var(--border,#e2e8f0);background:var(--card,#fff);cursor:pointer;border-left-width:4px;border-radius:12px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;transition:transform .15s,border-color .15s,opacity .15s;display:grid}.notification-row:hover{transform:translateY(-1px)}.notification-row.is-read{opacity:.72}.notification-row.severity-critical{border-left-color:#dc2626}.notification-row.severity-high{border-left-color:#ea580c}.notification-row.severity-medium{border-left-color:#d97706}.notification-row.severity-low{border-left-color:#3b82f6}.notification-status-icon{color:#3b82f6;background:#3b82f61a;border-radius:10px;place-items:center;width:36px;height:36px;font-size:19px;display:grid}.notification-main{min-width:0}.notification-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.notification-title-row strong{color:var(--text,#0f172a);font-size:14px}.notification-main p{color:var(--text-secondary,#475569);margin:5px 0 7px;font-size:13px;line-height:1.45}.notification-meta{color:var(--text-secondary,#64748b);flex-wrap:wrap;gap:12px;font-size:11px;display:flex}.notification-severity,.notification-unread-badge{text-transform:uppercase;border-radius:999px;padding:3px 7px;font-size:11px;font-weight:800}.notification-severity.critical{color:#dc2626;background:#dc26261f}.notification-severity.high{color:#ea580c;background:#ea580c1f}.notification-severity.medium{color:#d97706;background:#d977061f}.notification-severity.low{color:#2563eb;background:#3b82f61f}.notification-unread-badge{color:#2563eb;background:#2563eb1f}.notification-actions{gap:7px;display:flex}.notification-actions button{border:1px solid var(--border,#dbe3ee);height:34px;color:var(--text,#0f172a);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:5px;padding:0 10px;font-weight:700;display:flex}.notification-actions button:disabled{opacity:.4;cursor:not-allowed}.notification-center-empty,.notification-center-error{border:1px dashed var(--border,#dbe3ee);text-align:center;color:var(--text-secondary,#64748b);border-radius:12px;padding:28px}.notification-center-empty svg{margin:0 auto 8px;font-size:28px;display:block}.notification-center-error{color:#dc2626;background:#dc26260f;border-style:solid;border-color:#dc262640}.notification-pagination{color:var(--text-secondary,#64748b);justify-content:flex-end;align-items:center;gap:12px;font-size:12px;display:flex}.notification-pagination button{border:1px solid var(--border,#dbe3ee);background:var(--card,#fff);height:34px;color:var(--text,#0f172a);cursor:pointer;border-radius:8px;padding:0 12px}.notification-pagination button:disabled{opacity:.45;cursor:not-allowed}[data-theme=dark] .notification-center-summary>div,[data-theme=dark] .notification-center-summary button,[data-theme=dark] .notification-center-toolbar,[data-theme=dark] .notification-row,[data-theme=dark] .notification-pagination button{border-color:var(--border,#1f2a3d);background:var(--card,#111c2d);color:var(--text,#fff)}[data-theme=dark] .notification-center-toolbar select,[data-theme=dark] .notification-refresh{border-color:var(--border,#1f2a3d);color:var(--text,#fff);background:#0b1728}[data-theme=dark] .notification-center-toolbar select option{color:#fff;background:#0b1728}[data-theme=dark] .notification-row:hover{background:#142136;border-color:#334155}[data-theme=dark] .notification-row.is-read{opacity:.66}[data-theme=dark] .notification-status-icon{color:#60a5fa;background:#3b82f629}[data-theme=dark] .notification-title-row strong,[data-theme=dark] .notification-center-summary strong{color:#f8fafc}[data-theme=dark] .notification-main p,[data-theme=dark] .notification-center-summary span,[data-theme=dark] .notification-meta,[data-theme=dark] .notification-pagination{color:#94a3b8}[data-theme=dark] .notification-actions button{color:#cbd5e1;background:#0f172a6b;border-color:#2b3a51}[data-theme=dark] .notification-actions button:hover:not(:disabled),[data-theme=dark] .notification-center-summary button:hover:not(:disabled),[data-theme=dark] .notification-refresh:hover:not(:disabled),[data-theme=dark] .notification-pagination button:hover:not(:disabled){color:#60a5fa;background:#3b82f61a;border-color:#3b82f6}[data-theme=dark] .notification-actions button:disabled{color:#64748b;background:#0f172a40;border-color:#1f2a3d}[data-theme=dark] .notification-severity.low,[data-theme=dark] .notification-unread-badge{color:#60a5fa;background:#3b82f62e}[data-theme=dark] .notification-severity.medium{color:#fbbf24;background:#f59e0b29}[data-theme=dark] .notification-severity.high{color:#fb923c;background:#f9731629}[data-theme=dark] .notification-severity.critical{color:#f87171;background:#ef444429}[data-theme=dark] .notification-center-empty{color:#94a3b8;border-color:#273449}[data-theme=dark] .notification-center-error{color:#fca5a5;background:#7f1d1d2e;border-color:#f8717152}@media (width<=900px){.notification-center-summary{flex-wrap:wrap}.notification-center-summary button{height:48px;margin-left:0}.notification-center-toolbar{grid-template-columns:1fr 1fr}.notification-row{grid-template-columns:38px 1fr}.notification-actions{flex-wrap:wrap;grid-column:2}}@media (width<=620px){.notification-center-toolbar{grid-template-columns:1fr}.notification-center-summary>div{flex:1}.notification-row{grid-template-columns:1fr}.notification-status-icon{display:none}.notification-actions{grid-column:1}}.notification-center-toolbar{grid-template-columns:minmax(135px,170px) minmax(150px,180px) minmax(160px,190px) minmax(220px,1fr) auto}.notification-center-footer{justify-content:space-between;align-items:center;gap:16px;padding-top:4px;display:flex}.notification-page-size{color:var(--text-secondary,#64748b);align-items:center;gap:8px;font-size:12px;display:flex}.notification-page-size select{border:1px solid var(--border,#dbe3ee);background:var(--card,#fff);min-width:68px;height:34px;color:var(--text,#0f172a);border-radius:8px;padding:0 8px}[data-theme=dark] .notification-page-size select{border-color:var(--border,#1f2a3d);color:#f8fafc;background:#0b1728}[data-theme=dark] .notification-page-size select option{color:#f8fafc;background:#0b1728}@media (width<=1180px){.notification-center-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.notification-refresh{grid-column:span 2}}@media (width<=760px){.notification-center-footer{flex-direction:column;align-items:flex-start}.notification-center-toolbar,.notification-refresh{grid-column:auto}.notification-center-toolbar{grid-template-columns:1fr}.notification-actions button{flex:auto;justify-content:center}}.searchable-select{width:100%;min-width:0;position:relative}.searchable-select-trigger{border:1px solid var(--border);background:var(--background);width:100%;min-height:38px;color:var(--text);text-align:left;cursor:pointer;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:11px;display:flex}.searchable-select-trigger span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.searchable-select-trigger .is-placeholder{color:var(--text-secondary)}.searchable-select-trigger svg{color:var(--text-secondary);flex:none;font-size:18px}.searchable-select.is-open .searchable-select-trigger{border-color:color-mix(in srgb,var(--primary) 65%,var(--border));box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 12%,transparent)}.searchable-select.is-disabled{opacity:.65}.searchable-select-menu{z-index:1200;border:1px solid var(--border);background:var(--card);border-radius:10px;width:max(100%,280px);max-width:min(420px,90vw);position:absolute;top:calc(100% + 5px);left:0;overflow:hidden;box-shadow:0 14px 36px #0000002e}.searchable-select-search{border-bottom:1px solid var(--border);align-items:center;gap:7px;padding:8px 9px;display:flex}.searchable-select-search>svg{color:var(--text-secondary);flex:none;font-size:16px}.searchable-select-search input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0;font-size:11px}.searchable-select-search button{width:24px;height:24px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;display:flex}.searchable-select-options{max-height:260px;padding:5px;overflow:auto}.searchable-select-options>button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 9px;font-size:11px;display:block}.searchable-select-options>button.selected{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary);font-weight:750}.searchable-select-empty{color:var(--text-secondary);text-align:center;padding:14px 10px;font-size:11px}@media (width<=768px){.searchable-select-menu{width:100%;max-width:none}.searchable-select-options{max-height:220px}}.alert-modal-backdrop{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172aad;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.alert-modal{border:1px solid var(--border);background:var(--card);border-radius:14px;width:500px;max-width:100%;max-height:calc(100dvh - 32px);overflow:auto;box-shadow:0 24px 60px #0000004d}.alert-modal header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px;display:flex}.alert-modal h3{color:var(--text);margin:0;font-size:17px}.alert-modal header p{color:var(--text-secondary);margin:4px 0 0;font-size:10px}.alert-modal-close{border:1px solid var(--border);width:30px;height:30px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;display:flex}.alert-modal-body{flex-direction:column;gap:14px;padding:16px 18px;display:flex}.alert-form-group{flex-direction:column;gap:6px;display:flex}.alert-form-group>span,.alert-channel-fieldset legend{color:var(--text);font-size:11px;font-weight:700}.alert-form-group select,.alert-form-group input{border:1px solid var(--border);background:var(--background);width:100%;height:38px;color:var(--text);border-radius:8px;outline:0;padding:0 11px;font-size:11px}.alert-form-group select:focus,.alert-form-group input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.alert-form-group small{color:var(--text-secondary);font-size:9px}.alert-channel-fieldset{border:0;margin:0;padding:0}.alert-channel-fieldset legend{margin-bottom:7px}.alert-channels{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.alert-channel{border:1px solid var(--border);background:var(--background);cursor:pointer;border-radius:9px;align-items:center;gap:8px;padding:10px;display:flex}.alert-channel.checked{background:#2563eb14;border-color:#2563eb8c}.alert-channel input{accent-color:#2563eb}.alert-channel>span{flex-direction:column;min-width:0;display:flex}.alert-channel strong{color:var(--text);font-size:10px}.alert-channel small{color:var(--text-secondary);margin-top:2px;font-size:8px}.alert-input-suffix{position:relative}.alert-input-suffix input{padding-right:56px}.alert-input-suffix span{color:var(--text-secondary);font-size:11px;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.alert-form-error{color:#ef4444;background:#ef444414;border:1px solid #ef444459;border-radius:8px;padding:9px 10px;font-size:10px}.alert-modal footer{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.alert-modal footer button{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;height:36px;padding:0 14px;font-size:11px;font-weight:700;display:flex}.alert-modal footer button:disabled{opacity:.55;cursor:not-allowed}.alert-cancel-btn{border:1px solid var(--border);color:var(--text);background:0 0}.alert-save-btn{color:#fff;background:#2563eb;border:0}@media (width<=560px){.alert-channels{grid-template-columns:1fr}.alert-modal footer button{flex:1}}.alert-modal--wide{width:min(760px,100vw - 32px)}.alert-device-fieldset{border:1px solid var(--border,#dbe2ea);border-radius:12px;min-width:0;margin:0;padding:14px}.alert-device-fieldset legend{color:var(--text,#0f172a);align-items:center;gap:7px;padding:0 6px;font-weight:700;display:inline-flex}.alert-device-toolbar{align-items:center;gap:10px;display:flex}.alert-device-search{border:1px solid var(--border,#dbe2ea);background:var(--input-bg,var(--card,#fff));min-width:0;color:var(--text-secondary,#64748b);border-radius:9px;flex:1;align-items:center;gap:8px;padding:0 11px;display:flex}.alert-device-search input{width:100%;min-width:0;height:38px;color:var(--text,#0f172a);background:0 0;border:0;outline:0}.alert-device-select-all{border:1px solid var(--border,#dbe2ea);background:var(--card,#fff);height:40px;color:var(--text,#0f172a);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-weight:700;display:inline-flex}.alert-device-select-all:disabled{opacity:.55;cursor:not-allowed}.alert-device-summary{color:var(--text-secondary,#64748b);margin:10px 0 8px;font-size:12px}.alert-device-summary strong{color:#4f6df5}.alert-device-list{border:1px solid var(--border,#dbe2ea);background:var(--card,#fff);border-radius:10px;max-height:250px;overflow-y:auto}.alert-device-option{border-bottom:1px solid var(--border,#e5e7eb);cursor:pointer;align-items:center;gap:10px;min-height:56px;padding:9px 12px;display:flex}.alert-device-option:last-child{border-bottom:0}.alert-device-option:hover,.alert-device-option.selected{background:#4f6df514}.alert-device-option input{opacity:0;pointer-events:none;position:absolute}.alert-device-option-check{color:#4f6df5;flex:none;place-items:center;font-size:20px;display:grid}.alert-device-option-info{flex-direction:column;flex:1;min-width:0;display:flex}.alert-device-option-info strong,.alert-device-option-info small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.alert-device-option-info strong{color:var(--text,#0f172a);font-size:13px}.alert-device-option-info small{color:var(--text-secondary,#64748b);margin-top:2px;font-size:11px}.alert-device-state{color:var(--text-secondary,#64748b);text-align:center;padding:24px 14px;font-size:12px}[data-theme=dark] .alert-device-search,[data-theme=dark] .alert-device-select-all,[data-theme=dark] .alert-device-list{background:var(--card,#111827)}@media (width<=640px){.alert-device-toolbar{flex-direction:column;align-items:stretch}.alert-device-select-all{width:100%}.alert-device-list{max-height:220px}}.alert-scope-summary-bar{border:1px solid var(--border,#dbe2ea);background:#4f6df50f;border-radius:10px;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;padding:10px 12px;display:grid}.alert-scope-summary-bar>div{color:var(--text-secondary,#64748b);align-items:center;gap:6px;font-size:11px;display:flex}.alert-scope-summary-bar svg{color:#4f6df5;font-size:17px}.alert-scope-summary-bar strong{color:var(--text,#0f172a)}.alert-scope-summary-effective{justify-self:end}.alert-target-help{color:var(--text-secondary,#64748b);margin:0 0 10px;font-size:11px;line-height:1.45}.alert-group-fieldset{background:#4f6df506}.alert-group-list{max-height:190px}.alert-device-inherited-badge{color:#22c55e;white-space:nowrap;background:#22c55e1c;border-radius:999px;flex:none;padding:4px 7px;font-size:11px;font-weight:800}[data-theme=dark] .alert-scope-summary-bar{background:#4f6df514}@media (width<=640px){.alert-scope-summary-bar{grid-template-columns:1fr 1fr}.alert-scope-summary-effective{grid-column:1/-1;justify-self:start}.alert-device-inherited-badge{display:none}}.alert-config-section{border:1px solid var(--border);background:var(--card);border-radius:12px;flex-direction:column;gap:12px;padding:14px;display:flex}.alert-config-section-title{align-items:flex-start;gap:9px;display:flex}.alert-config-section-title>svg{color:#4f6df5;flex:none;margin-top:1px;font-size:20px}.alert-config-section-title>div{flex-direction:column;gap:2px;display:flex}.alert-config-section-title strong{color:var(--text);font-size:12px}.alert-config-section-title span{color:var(--text-secondary);font-size:10px}.alert-condition-card{background:#4f6df512;border:1px solid #4f6df540;border-radius:10px;align-items:flex-start;gap:9px;padding:11px 12px;display:flex}.alert-condition-card>svg{color:#4f6df5;flex:none;margin-top:1px;font-size:18px}.alert-condition-card>div{min-width:0}.alert-condition-card strong{color:var(--text);font-size:11px}.alert-condition-card p{color:var(--text-secondary);margin:3px 0 0;font-size:11px;line-height:1.5}.alert-dynamic-field{padding-top:2px}.alert-schedule-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.alert-schedule-option{border:1px solid var(--border);background:var(--background);cursor:pointer;border-radius:10px;align-items:flex-start;gap:9px;padding:11px;display:flex}.alert-schedule-option.selected{background:#4f6df514;border-color:#4f6df599}.alert-schedule-option input{accent-color:#4f6df5;margin-top:2px}.alert-schedule-option>span{flex-direction:column;gap:2px;min-width:0;display:flex}.alert-schedule-option strong{color:var(--text);font-size:11px}.alert-schedule-option small{color:var(--text-secondary);font-size:11px;line-height:1.4}.alert-review-card{background:#4f6df50e;border:1px solid #4f6df54d;border-radius:12px;padding:14px}.alert-review-title{color:var(--text);align-items:center;gap:7px;margin-bottom:11px;font-size:12px;display:flex}.alert-review-title svg{color:#4f6df5;font-size:18px}.alert-review-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.alert-review-grid>div{border:1px solid var(--border);background:var(--card);border-radius:9px;flex-direction:column;gap:3px;min-width:0;padding:9px;display:flex}.alert-review-grid span{color:var(--text-secondary);font-size:9px}.alert-review-grid strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.alert-review-card>p{color:var(--text-secondary);margin:10px 0 0;font-size:11px;line-height:1.5}[data-theme=dark] .alert-config-section,.alert-review-grid>div{background:var(--card)}[data-theme=dark] .alert-schedule-option{background:var(--background)}@media (width<=700px){.alert-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.alert-schedule-options,.alert-review-grid{grid-template-columns:1fr}}.alert-sidebar{flex-direction:column;gap:12px;width:270px;min-width:270px;min-height:0;display:flex;overflow-y:auto}.alert-sidebar-card{border:1px solid var(--border);background:var(--card);border-radius:12px;padding:12px}.alert-sidebar-card h3{color:var(--text-primary);margin:0 0 9px;font-size:12px}.alert-summary-item,.recent-alert{border:0;border-bottom:1px solid var(--border);width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;align-items:center;gap:8px;padding:8px 0;display:flex}.alert-summary-item:last-child,.recent-alert:last-child{border-bottom:0}.alert-summary-item:hover,.recent-alert:hover{opacity:.8}.alert-summary-item>span:nth-child(2){min-width:0;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;overflow:hidden}.alert-summary-item strong{color:var(--text-primary);font-size:11px}.alert-type-icon,.recent-alert-icon{border-radius:8px;flex:0 0 29px;justify-content:center;align-items:center;width:29px;height:29px;font-size:14px;display:flex}.recent-alert>span:last-child{flex-direction:column;flex:1;min-width:0;display:flex}.recent-alert strong{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.recent-alert small{color:var(--text-secondary);margin-top:2px;font-size:9px}.alert-sidebar-empty{color:var(--text-secondary);text-align:center;margin:0;padding:14px 0;font-size:11px}@media (width<=1200px){.alert-sidebar{width:100%;min-width:0;overflow:visible}}@media (width<=768px){.alert-sidebar{flex-direction:column;display:flex}}.alert-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.alert-stat-card{border:1px solid var(--border);background:var(--card);border-radius:12px;align-items:center;gap:12px;min-height:76px;padding:12px 14px;display:flex}.alert-stat-icon{color:#3b82f6;background:#2563eb1f;border-radius:10px;flex:0 0 38px;justify-content:center;align-items:center;width:38px;height:38px;font-size:19px;display:flex}.alert-stat-card>div{flex-direction:column;min-width:0;display:flex}.alert-stat-card>div>span{color:var(--text-secondary);font-size:11px}.alert-stat-card strong{color:var(--text-primary);margin-top:2px;font-size:22px;line-height:1}.alert-stat-card small{color:var(--text-secondary);margin-top:4px;font-size:10px}@media (width<=900px){.alert-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.alert-stats{grid-template-columns:1fr}}.customers-page{flex-direction:column;gap:14px;height:calc(100vh - 90px);min-height:0;display:flex}.customers-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.customers-header h1{color:var(--text);margin:0;font-size:20px}.customers-header p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.customers-actions{gap:10px;display:flex}.customers-alert{color:#dc2626;background:#dc262614;border:1px solid #dc262659;border-radius:10px;padding:11px 14px;font-size:12px}.customer-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.customer-stats article{border:1px solid var(--border);background:var(--card);border-radius:14px;align-items:center;gap:12px;padding:15px;display:flex}.stat-icon{background:color-mix(in srgb,var(--primary) 12%,transparent);width:42px;height:42px;color:var(--primary);border-radius:12px;place-items:center;font-size:22px;display:grid}.customer-stats strong{color:var(--text);font-size:22px;display:block}.customer-stats span{color:var(--text-secondary);font-size:11px}.customer-filters{border:1px solid var(--border);background:var(--card);border-radius:14px;grid-template-columns:minmax(280px,1fr) 180px 200px auto;gap:10px;padding:12px;display:grid}.customer-search{align-items:center;gap:8px;display:flex}.customer-search svg{color:var(--text-secondary);font-size:20px}.customer-search input,.customer-filters select,.customer-drawer input,.customer-drawer select,.customer-drawer textarea{box-sizing:border-box;border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);border-radius:10px;outline:0}.customer-search input,.customer-filters select{height:40px;padding:0 12px}.customer-search input{background:0 0;border:0}.customer-search{border:1px solid var(--border);border-radius:10px;padding:0 12px}.customers-content{flex:1;grid-template-columns:minmax(0,1fr) 360px;gap:14px;min-height:0;display:grid}.customers-table-card,.customer-detail{border:1px solid var(--border);background:var(--card);border-radius:14px;min-height:0;overflow:hidden}.customers-table-card{flex-direction:column;display:flex}.customers-table-wrap{flex:1;position:relative;overflow:auto}.customers-table-wrap table{border-collapse:collapse;width:100%;min-width:860px}.customers-table-wrap th,.customers-table-wrap td{border-bottom:1px solid var(--border);text-align:left;color:var(--text);padding:12px 14px;font-size:12px}.customers-table-wrap th{z-index:1;background:var(--card);color:var(--text-secondary);text-transform:uppercase;font-size:11px;position:sticky;top:0}.customers-table-wrap td strong,.customers-table-wrap td span{display:block}.customers-table-wrap td span{color:var(--text-secondary);margin-top:3px;font-size:10px}.customers-table-wrap tr{cursor:pointer}.customers-table-wrap tbody tr:hover,.customers-table-wrap tr.selected{background:var(--hover)}.sort-button{color:inherit;font:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0}.status-badge{text-transform:uppercase;border-radius:999px;width:max-content;padding:5px 8px;font-weight:700;font-size:9px!important;display:inline-flex!important}.status-badge.active{color:#16a34a;background:#16a34a1f}.status-badge.prospect{color:#2563eb;background:#2563eb1f}.status-badge.suspended{color:#ea580c;background:#ea580c1f}.status-badge.inactive,.status-badge.terminated{color:#64748b;background:#64748b24}.row-actions{gap:4px;display:flex}.row-actions button,.icon-button{border:1px solid var(--border);background:var(--card);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;border-radius:8px;place-items:center;display:grid}.row-actions button:disabled,.icon-button:disabled{opacity:.4;cursor:not-allowed}.table-footer{color:var(--text-secondary);justify-content:space-between;align-items:center;padding:10px 14px;font-size:10px;display:flex}.table-footer div{align-items:center;gap:10px;display:flex}.table-footer button{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:7px;padding:6px 9px}.customers-empty,.customer-detail.empty{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:260px;display:flex}.customers-empty svg,.customer-detail.empty svg{font-size:42px}.customer-detail{padding:18px;overflow:auto}.detail-head{border-bottom:1px solid var(--border);justify-content:space-between;gap:10px;padding-bottom:16px;display:flex}.detail-head h2{color:var(--text);margin:10px 0 4px;font-size:18px}.detail-head p{color:var(--text-secondary);margin:0;font-size:11px}.detail-section{border-bottom:1px solid var(--border);padding:15px 0}.detail-section:last-child{border:0}.detail-section h3{color:var(--text);margin:0 0 12px;font-size:12px}.detail-info{gap:9px;margin:10px 0;display:flex}.detail-info>span{color:var(--primary);font-size:17px}.detail-info small,.detail-info strong{display:block}.detail-info small{color:var(--text-secondary);font-size:9px}.detail-info strong{color:var(--text);margin-top:2px;font-size:11px}.notes{color:var(--text-secondary);font-size:11px;line-height:1.6}.drawer-layer,.dialog-layer{z-index:1200;position:fixed;inset:0}.drawer-backdrop,.dialog-backdrop{background:#0f172a7a;border:0;position:absolute;inset:0}.customer-drawer{background:var(--card);width:min(650px,100%);height:100%;position:absolute;top:0;right:0;overflow:auto;box-shadow:-14px 0 35px #0000002e}.customer-drawer header{border-bottom:1px solid var(--border);justify-content:space-between;padding:20px;display:flex}.customer-drawer h2{color:var(--text);margin:0;font-size:18px}.customer-drawer header p{color:var(--text-secondary);margin:4px 0 0;font-size:11px}.customer-drawer form{padding:20px}.customer-drawer fieldset{border:0;margin:0 0 18px;padding:0}.customer-drawer legend{color:var(--text);margin-bottom:12px;font-size:12px;font-weight:700}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-grid label{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:10px;display:flex}.form-grid label.full{grid-column:1/-1}.customer-drawer input,.customer-drawer select{height:40px;padding:0 11px}.customer-drawer textarea{resize:vertical;padding:11px}.customer-drawer footer{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding-top:16px;display:flex}.delete-dialog{box-sizing:border-box;background:var(--card);text-align:center;border-radius:16px;width:min(430px,100% - 30px);padding:24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.delete-dialog>svg{color:#dc2626;font-size:42px}.delete-dialog h2{color:var(--text)}.delete-dialog p{color:var(--text-secondary);font-size:12px;line-height:1.6}.delete-dialog>div{justify-content:center;gap:10px;margin-top:20px;display:flex}@media (width<=1200px){.customers-content{grid-template-columns:1fr}.customer-detail{min-height:420px}.customer-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=800px){.customers-page{height:auto}.customers-header{flex-direction:column;align-items:flex-start}.customers-actions{width:100%}.customers-actions button{flex:1}.customer-filters,.customer-stats,.form-grid{grid-template-columns:1fr}.form-grid label.full{grid-column:auto}}.itg-datatable-footer{border-top:1px solid var(--border);background:var(--card);min-height:60px;color:var(--text-secondary);justify-content:space-between;align-items:center;gap:16px;padding:10px 16px;font-size:11px;display:flex}.itg-datatable-info{white-space:nowrap}.itg-datatable-controls{align-items:center;gap:10px;display:flex}.itg-datatable-controls label{align-items:center;gap:8px;display:flex}.itg-datatable-controls select{border:1px solid var(--border);background:var(--background);min-width:76px;height:36px;color:var(--text);border-radius:9px;outline:none;padding:0 30px 0 11px;font-size:11px}.itg-datatable-controls select option{font-size:11px}.itg-datatable-controls button{border:1px solid var(--border);background:var(--background);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;font-size:20px;display:flex}.itg-datatable-controls button:hover:not(:disabled){border-color:var(--primary);background:var(--hover)}.itg-datatable-controls button:disabled{opacity:.4;cursor:not-allowed}.itg-datatable-page{min-width:46px;color:var(--text);text-align:center;font-weight:600}@media (width<=640px){.itg-datatable-footer{flex-direction:column;align-items:flex-start}.itg-datatable-controls{justify-content:space-between;width:100%}.itg-datatable-info{white-space:normal}}@media (width<=768px){.datatable-footer{flex-wrap:wrap;gap:10px}.datatable-length{order:1}.datatable-info{order:2;margin-left:auto}.datatable-pagination{order:3;justify-content:center;width:100%;padding-bottom:2px;overflow-x:auto}}@media (width<=480px){.datatable-footer{align-items:stretch}.datatable-length,.datatable-info{text-align:center;justify-content:center;width:100%;margin-left:0}}.corporate-toast{--corporate-toast-accent:var(--primary);--corporate-toast-icon-bg:color-mix(in srgb, var(--primary) 12%, transparent);border:1px solid var(--border);background:color-mix(in srgb, var(--card) 96%, transparent);width:min(390px,100vw - 32px);min-height:78px;color:var(--text);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;grid-template-columns:4px 42px minmax(0,1fr) 30px;align-items:center;gap:10px;padding:10px 10px 10px 0;transition:opacity .18s,transform .18s;display:grid;position:relative;overflow:hidden;box-shadow:0 12px 30px #0f172a29}.corporate-toast-visible{opacity:1;transform:translate(0)}.corporate-toast-hidden{opacity:0;transform:translate(18px)}.corporate-toast-success{--corporate-toast-accent:#22c55e;--corporate-toast-icon-bg:#22c55e1f}.corporate-toast-warning{--corporate-toast-accent:#f59e0b;--corporate-toast-icon-bg:#f59e0b1f}.corporate-toast-danger{--corporate-toast-accent:#ef4444;--corporate-toast-icon-bg:#ef44441f}.corporate-toast-info{--corporate-toast-accent:var(--primary);--corporate-toast-icon-bg:color-mix(in srgb, var(--primary) 12%, transparent)}.corporate-toast-accent{background:var(--corporate-toast-accent);align-self:stretch;width:4px;height:calc(100% + 20px)}.corporate-toast-icon{background:var(--corporate-toast-icon-bg);width:38px;height:38px;color:var(--corporate-toast-accent);border-radius:10px;justify-content:center;align-items:center;font-size:22px;display:flex}.corporate-toast-icon svg{width:22px;min-width:22px;height:22px;min-height:22px;font-size:22px}.corporate-toast-content{flex-direction:column;gap:2px;min-width:0;display:flex}.corporate-toast-heading{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.corporate-toast-eyebrow{color:var(--corporate-toast-accent);letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:9px;font-weight:800;line-height:1.25;overflow:hidden}.corporate-toast-meta{color:var(--text-secondary);flex:none;font-size:9px;font-weight:500}.corporate-toast-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;line-height:1.3;overflow:hidden}.corporate-toast-message{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.35;display:-webkit-box;overflow:hidden}.corporate-toast-close{width:28px;height:28px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-self:start;align-items:center;margin-top:1px;font-size:18px;transition:background .15s,color .15s;display:flex}.corporate-toast-close:hover{background:color-mix(in srgb, var(--text) 7%, transparent);color:var(--text)}.corporate-toast-close:focus-visible{outline:2px solid var(--primary);outline-offset:1px}@media (width<=600px){.corporate-toast{border-radius:10px;grid-template-columns:4px 38px minmax(0,1fr) 28px;gap:8px;width:calc(100vw - 20px)}.corporate-toast-icon{width:34px;height:34px;font-size:22px}.corporate-toast-icon svg{width:22px;min-width:22px;height:22px;min-height:22px;font-size:22px}.corporate-toast-title{font-size:12px}.corporate-toast-message{font-size:10px}}.device-detail-page{flex-direction:column;gap:14px;min-width:0;display:flex}.device-detail-header,.device-detail-card,.device-detail-metric,.device-detail-map-card{border:1px solid var(--border-color,#94a3b82e);background:var(--card-bg,var(--surface,#fff));box-shadow:0 8px 26px #0f172a0d}.device-detail-header{border-radius:16px;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;display:flex}.device-detail-header-main{align-items:center;gap:14px;min-width:0;display:flex}.device-detail-back{width:38px;height:38px;color:inherit;cursor:pointer;background:#94a3b81a;border:0;border-radius:10px;justify-content:center;align-items:center;font-size:22px;display:flex}.device-detail-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.device-detail-title-row h1{margin:0;font-size:25px;line-height:1.1}.device-detail-header-main p{color:var(--text-secondary,#64748b);margin:7px 0 0;font-size:13px}.device-detail-status{border-radius:999px;align-items:center;padding:5px 10px;font-size:12px;font-weight:700;display:inline-flex}.device-detail-status.moving{color:#10b981;background:#10b98124}.device-detail-status.stopped{color:#3b82f6;background:#3b82f624}.device-detail-status.offline{color:#ef4444;background:#ef444424}.device-detail-status.unknown{color:#f59e0b;background:#f59e0b24}.device-detail-updated{color:var(--text-secondary,#64748b);font-size:12px}.device-detail-actions{gap:10px;display:flex}.device-detail-actions button{border:1px solid var(--border-color,#94a3b833);height:40px;color:inherit;cursor:pointer;background:0 0;border-radius:10px;align-items:center;gap:7px;padding:0 14px;font-weight:600;display:flex}.device-detail-actions button.active{color:#3b82f6;background:#2563eb14;border-color:#2563eb}.device-detail-main-grid{grid-template-columns:minmax(0,1.7fr) minmax(310px,.9fr);gap:14px;display:grid}.device-detail-map-card{border-radius:16px;min-height:390px;padding:0;overflow:hidden}.device-detail-card{border-radius:16px;min-width:0;padding:16px}.device-detail-card h2{align-items:center;gap:7px;margin:0 0 14px;font-size:15px;display:flex}.device-detail-info-card{flex-direction:column;display:flex}.device-detail-row{justify-content:space-between;align-items:flex-start;gap:16px;padding:6px 0;font-size:12px;display:flex}.device-detail-row span{color:var(--text-secondary,#64748b)}.device-detail-row strong{text-align:right;overflow-wrap:anywhere;font-weight:650}.device-detail-row strong.moving{color:#10b981}.device-detail-row strong.stopped{color:#3b82f6}.device-detail-row strong.offline{color:#ef4444}.device-detail-metrics{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;display:grid}.device-detail-metric{border-radius:14px;align-items:center;gap:12px;min-width:0;padding:15px;display:flex}.device-detail-metric-icon{color:#3b82f6;background:#2563eb1c;border-radius:12px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-size:22px;display:flex}.device-detail-metric small{color:var(--text-secondary,#64748b);font-size:11px;display:block}.device-detail-metric strong{white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:17px;display:block;overflow:hidden}.device-detail-secondary-grid{grid-template-columns:minmax(250px,.7fr) minmax(250px,.8fr) minmax(0,1.55fr);gap:14px;display:grid}.device-detail-secondary-grid.has-fuel{grid-template-columns:minmax(290px,.95fr) minmax(230px,.72fr) minmax(250px,.78fr) minmax(0,1.55fr)}.device-detail-state-row{border-bottom:1px solid #94a3b81a;justify-content:space-between;gap:14px;padding:8px 0;font-size:12px;display:flex}.device-detail-state-row:last-child{border-bottom:0}.device-detail-state-row span{color:var(--text-secondary,#64748b)}.device-detail-state-row strong{color:#10b981}.device-detail-address{color:var(--text-secondary,#64748b);margin:0 0 10px;font-size:12px;line-height:1.55}.device-detail-location-grid{grid-template-columns:1fr 1fr;gap:2px 16px;display:grid}.device-detail-location-grid .device-detail-row{display:block}.device-detail-location-grid .device-detail-row strong{text-align:left;margin-top:3px;display:block}.device-detail-location-time{border-top:1px solid #94a3b81f;align-items:center;gap:6px;margin-top:8px;padding-top:10px;font-size:12px;display:flex}.device-detail-card-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.device-detail-card-heading span{color:var(--text-secondary,#64748b);font-size:11px}.device-detail-card-heading button{color:#3b82f6;cursor:pointer;background:0 0;border:0;font-weight:700}.device-detail-chart{height:220px}.device-detail-chart-empty{height:220px;color:var(--text-secondary,#64748b);justify-content:center;align-items:center;font-size:12px;display:flex}.device-detail-fuel-card{flex-direction:column;display:flex}.device-detail-fuel-content{grid-template-columns:145px 1fr;align-items:center;gap:14px;display:grid}.device-detail-fuel-gauge{justify-content:center;align-items:flex-end;width:160px;height:112px;margin:0 auto;display:flex;position:relative}.device-detail-fuel-gauge-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.device-detail-fuel-gauge-track,.device-detail-fuel-gauge-progress{fill:none;stroke-width:15px;stroke-linecap:round}.device-detail-fuel-gauge-track{stroke:#94a3b829}.device-detail-fuel-gauge-progress{stroke:url(#device-detail-fuel-gradient);transition:stroke-dasharray .35s}.device-detail-fuel-gauge-value{z-index:1;text-align:center;width:100%;padding-bottom:4px;position:relative}.device-detail-fuel-gauge-value strong{font-size:26px;line-height:1;display:block}.device-detail-fuel-gauge-value span{color:var(--text-secondary,#64748b);margin-top:6px;font-size:12px;font-weight:600;display:block}.device-detail-fuel-values .device-detail-row{border-bottom:1px solid #94a3b81a}.device-detail-fuel-values .device-detail-row:last-child{border-bottom:0}.device-detail-fuel-updated{color:var(--text-secondary,#64748b);margin-top:auto;padding-top:12px;font-size:11px}.device-detail-events-card{padding-bottom:8px}.device-detail-event-row{border-top:1px solid #94a3b81c;grid-template-columns:12px 170px 180px 1fr;align-items:center;gap:12px;padding:10px 4px;font-size:12px;display:grid}.device-detail-event-row>span:last-child{color:var(--text-secondary,#64748b)}.device-detail-event-dot{background:#3b82f6;border-radius:50%;width:8px;height:8px}.device-detail-event-dot.deviceOffline{background:#ef4444}.device-detail-event-dot.deviceMoving,.device-detail-event-dot.moving,.device-detail-event-dot.ignitionOn{background:#22c55e}.device-detail-events-empty{text-align:center;color:var(--text-secondary,#64748b);padding:24px 0;font-size:12px}.device-detail-empty,.device-detail-loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:420px;display:flex}.device-detail-empty svg{color:#64748b;font-size:46px}.device-detail-empty h2{margin:12px 0 4px}.device-detail-empty p,.device-detail-loading{color:var(--text-secondary,#64748b)}.device-detail-empty button{color:#fff;cursor:pointer;background:#2563eb;border:0;border-radius:10px;margin-top:14px;padding:10px 16px;font-weight:700}[data-theme=dark] .device-detail-header,[data-theme=dark] .device-detail-card,[data-theme=dark] .device-detail-metric,[data-theme=dark] .device-detail-map-card{background:#111827;border-color:#25324a;box-shadow:0 8px 30px #0003}[data-theme=dark] .device-detail-fuel-gauge:after{background:#111827}[data-theme=dark] .device-detail-row span,[data-theme=dark] .device-detail-state-row span,[data-theme=dark] .device-detail-address,[data-theme=dark] .device-detail-updated,[data-theme=dark] .device-detail-card-heading span,[data-theme=dark] .device-detail-chart-empty,[data-theme=dark] .device-detail-events-empty,[data-theme=dark] .device-detail-fuel-updated{color:#94a3b8}@media (width<=1450px){.device-detail-metrics{grid-template-columns:repeat(3,1fr)}.device-detail-secondary-grid,.device-detail-secondary-grid.has-fuel{grid-template-columns:repeat(2,minmax(0,1fr))}.device-detail-chart-card{grid-column:span 2}}@media (width<=1000px){.device-detail-header{flex-direction:column;align-items:flex-start}.device-detail-main-grid{grid-template-columns:1fr}.device-detail-metrics{grid-template-columns:repeat(2,1fr)}.device-detail-secondary-grid,.device-detail-secondary-grid.has-fuel{grid-template-columns:1fr 1fr}.device-detail-chart-card{grid-column:span 2}}@media (width<=680px){.device-detail-page{gap:10px}.device-detail-header{padding:14px}.device-detail-title-row h1{font-size:21px}.device-detail-actions{width:100%}.device-detail-actions button{flex:1;justify-content:center}.device-detail-metrics,.device-detail-secondary-grid,.device-detail-secondary-grid.has-fuel{grid-template-columns:1fr}.device-detail-chart-card{grid-column:auto}.device-detail-event-row{grid-template-columns:12px 1fr}.device-detail-event-row strong,.device-detail-event-row>span:last-child{grid-column:2}.device-detail-fuel-content{grid-template-columns:1fr}.device-detail-fuel-gauge{margin:auto}}.device-detail-speed-tooltip{color:#0f172a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff5;border:1px solid #94a3b847;border-radius:10px;min-width:148px;padding:10px 12px;box-shadow:0 10px 26px #0f172a24}.device-detail-speed-tooltip-time{color:#64748b;margin-bottom:7px;font-size:11px;font-weight:600;display:block}.device-detail-speed-tooltip-value{grid-template-columns:auto 1fr auto;align-items:center;gap:7px;font-size:12px;display:grid}.device-detail-speed-tooltip-value>span:not(.device-detail-speed-tooltip-dot){color:#64748b}.device-detail-speed-tooltip-value strong{color:#2563eb;white-space:nowrap;font-size:13px;font-weight:800}.device-detail-speed-tooltip-dot{background:#3b82f6;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #3b82f61f}[data-theme=dark] .device-detail-speed-tooltip{color:#f8fafc;background:#0f172af5;border-color:#334155;box-shadow:0 12px 30px #00000052}[data-theme=dark] .device-detail-speed-tooltip-time,[data-theme=dark] .device-detail-speed-tooltip-value>span:not(.device-detail-speed-tooltip-dot){color:#94a3b8}[data-theme=dark] .device-detail-speed-tooltip-value strong{color:#60a5fa}@media (width<=768px){.device-detail-page{width:100%;min-width:0;overflow-x:hidden}.device-detail-header{flex-wrap:wrap}.device-detail-map{min-height:310px}.device-detail-tabs{scrollbar-width:none;overflow-x:auto}.device-detail-tabs::-webkit-scrollbar{display:none}.device-detail-tabs button{white-space:nowrap;flex:none}.device-detail-speed-chart{min-width:0}}@media (width<=480px){.device-detail-map{min-height:280px}}.device-detail-map-wrap{border-radius:16px;width:100%;height:100%;min-height:360px;position:relative;overflow:hidden}.device-detail-map{width:100%;height:100%;min-height:360px}.device-detail-map-loading{background:var(--surface,#fff);min-height:360px;color:var(--text-secondary,#64748b);border-radius:16px;justify-content:center;align-items:center;display:flex}.device-detail-follow-map{color:#cbd5e1;cursor:pointer;background:#0f172ae6;border:1px solid #94a3b833;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;font-size:21px;display:flex;position:absolute;top:14px;right:14px;box-shadow:0 8px 24px #00000038}.device-detail-follow-map.is-active{color:#34d399;border-color:#34d39980}.device-detail-follow-map:disabled{opacity:.45;cursor:not-allowed}.device-detail-map-address{color:#f8fafc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172aeb;border-radius:12px;align-items:flex-start;gap:10px;max-width:min(410px,100% - 32px);padding:13px 15px;display:flex;position:absolute;bottom:16px;left:16px;box-shadow:0 10px 30px #00000047}.device-detail-map-address-dot{background:#34d399;border-radius:50%;flex:none;width:9px;height:9px;margin-top:5px}.device-detail-map-address strong{font-size:13px;line-height:1.45;display:block}.device-detail-map-address small{color:#a9b6c8;margin-top:5px;font-size:11px;display:block}@media (width<=720px){.device-detail-map-wrap,.device-detail-map,.device-detail-map-loading{min-height:300px}.device-detail-map-address{max-width:none;right:16px}}.device-maintenance-card{padding:18px}.device-maintenance-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.device-maintenance-heading h2{align-items:center;gap:8px;margin:0;display:flex}.device-maintenance-heading h2 svg{color:#3b82f6}.device-maintenance-heading span{color:var(--text-secondary,#64748b);margin-top:4px;font-size:11px;display:block}.device-maintenance-heading button{color:#3b82f6;cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;padding:8px 10px;font-size:12px;font-weight:700;display:inline-flex}.device-maintenance-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.device-maintenance-summary>div{background:#94a3b809;border:1px solid #94a3b824;border-radius:10px;min-width:0;padding:10px 12px}.device-maintenance-summary span{color:var(--text-secondary,#64748b);font-size:11px;display:block}.device-maintenance-summary strong{margin-top:3px;font-size:16px;display:block}.device-maintenance-summary .is-danger strong{color:#dc2626}.device-maintenance-grid{grid-template-columns:minmax(0,1.55fr) minmax(280px,.85fr);gap:14px;display:grid}.device-maintenance-next,.device-maintenance-history{background:#94a3b809;border:1px solid #94a3b826;border-radius:12px;min-width:0;padding:14px}.device-maintenance-section-title{color:var(--text-secondary,#64748b);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:7px;margin-bottom:12px;font-size:11px;font-weight:700;display:flex}.device-maintenance-next-title{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.device-maintenance-next-title strong{font-size:15px;display:block}.device-maintenance-next-title span:not(.device-maintenance-status){color:var(--text-secondary,#64748b);margin-top:4px;font-size:11px;display:block}.device-maintenance-status{color:#0369a1;background:#e0f2fe;border-radius:999px;flex:none;padding:5px 8px;font-size:11px;font-weight:800}.device-maintenance-status.upcoming{color:#c2410c;background:#fff7ed}.device-maintenance-status.overdue{color:#dc2626;background:#fef2f2}.device-maintenance-status.in_progress{color:#2563eb;background:#eff6ff}.device-maintenance-status.draft{color:#475569;background:#f1f5f9}.device-maintenance-values{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.device-maintenance-values>div{background:var(--surface,#fff);border-radius:9px;min-width:0;padding:10px}.device-maintenance-values span,.device-maintenance-cost-total span,.device-maintenance-cost-total small,.device-maintenance-history-list small{color:var(--text-secondary,#64748b);font-size:11px;display:block}.device-maintenance-values span svg{vertical-align:-2px;margin-right:3px}.device-maintenance-values strong{margin-top:5px;font-size:12px;display:block}.device-maintenance-remaining.upcoming strong{color:#c2410c}.device-maintenance-remaining.overdue strong{color:#dc2626}.device-maintenance-cost-total{margin-bottom:10px}.device-maintenance-cost-total strong{margin:3px 0;font-size:22px;display:block}.device-maintenance-history-list>div:not(.device-maintenance-history-empty){border-top:1px solid #94a3b81f;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-size:11px;display:flex}.device-maintenance-history-list>div>span>strong{display:block}.device-maintenance-empty,.device-maintenance-history-empty{color:var(--text-secondary,#64748b);text-align:center;padding:22px 8px;font-size:12px}.device-maintenance-empty.error{color:#dc2626}[data-theme=dark] .device-maintenance-next,[data-theme=dark] .device-maintenance-history,[data-theme=dark] .device-maintenance-summary>div{background:#0f172a47;border-color:#25324a}[data-theme=dark] .device-maintenance-values>div{background:#0f172a6b}[data-theme=dark] .device-maintenance-status{color:#7dd3fc;background:#0ea5e924}[data-theme=dark] .device-maintenance-status.upcoming{color:#fdba74;background:#f9731624}[data-theme=dark] .device-maintenance-status.overdue{color:#fca5a5;background:#ef444424}[data-theme=dark] .device-maintenance-status.draft{color:#cbd5e1;background:#64748b29}@media (width<=1050px){.device-maintenance-grid{grid-template-columns:1fr}}@media (width<=760px){.device-maintenance-summary,.device-maintenance-values{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.device-maintenance-heading{flex-direction:column;align-items:flex-start}.device-maintenance-values{grid-template-columns:1fr}}.devices-page{flex-direction:column;gap:14px;height:calc(100vh - 90px);min-height:0;display:flex}.devices-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.devices-header h1{color:var(--text);margin:0;font-size:20px}.devices-header p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.devices-header>div:last-child{gap:10px;display:flex}.device-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.device-stats article{border:1px solid var(--border);background:var(--card);border-radius:14px;align-items:center;gap:12px;padding:14px;display:flex}.device-stats article>span{background:var(--hover);width:38px;height:38px;color:var(--primary);border-radius:11px;place-items:center;font-size:20px;display:grid}.device-stats strong,.device-stats small{display:block}.device-stats strong{color:var(--text);font-size:20px}.device-stats small{color:var(--text-secondary);margin-top:2px;font-size:11px}.device-filters{border:1px solid var(--border);background:var(--card);border-radius:14px;grid-template-columns:minmax(260px,1fr) repeat(4,minmax(145px,auto)) auto;gap:8px;padding:10px;display:grid}.device-filters input,.device-filters select,.device-drawer input,.device-drawer select{border:1px solid var(--border);background:var(--background);width:100%;height:38px;color:var(--text);border-radius:9px;outline:0;padding:0 11px}.device-search{position:relative}.device-search svg{color:var(--text-secondary);position:absolute;top:11px;left:11px}.device-search input{padding-left:34px}.device-clear{color:var(--primary);cursor:pointer;background:0 0;border:0;font-weight:600}.devices-content{flex:1;grid-template-columns:minmax(0,1fr) 350px;gap:12px;min-height:0;display:grid}.devices-table-card,.device-details{border:1px solid var(--border);background:var(--card);border-radius:14px;min-height:0}.devices-table-card{flex-direction:column;display:flex;overflow:hidden}.devices-table-scroll{flex:1;overflow:auto}.devices-table-card table{border-collapse:collapse;width:100%;min-width:930px}.devices-table-card th,.devices-table-card td{border-bottom:1px solid var(--border);text-align:left;color:var(--text);padding:11px 12px;font-size:11px}.devices-table-card th{background:var(--card);z-index:1;color:var(--text-secondary);cursor:pointer;font-weight:700;position:sticky;top:0}.devices-table-card tbody tr{cursor:pointer;transition:all .15s}.devices-table-card tbody tr:hover,.devices-table-card tbody tr.selected{background:var(--hover)}.devices-table-card td strong,.devices-table-card td small{display:block}.devices-table-card td small{color:var(--text-secondary);margin-top:3px}.device-status{border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.device-status.online{color:var(--success);background:#10b98124}.device-status.offline{color:var(--danger);background:#ef444424}.device-status.unknown{color:var(--text-secondary);background:#94a3b829}.device-pagination{border-top:1px solid var(--border);color:var(--text-secondary);justify-content:flex-end;align-items:center;gap:8px;padding:9px 12px;font-size:11px;display:flex}.device-pagination span:first-child{margin-right:auto}.device-pagination select,.device-pagination button{border:1px solid var(--border);background:var(--card);height:30px;color:var(--text);border-radius:7px;padding:0 8px}.device-pagination button:disabled{opacity:.45}.device-details{padding:16px;overflow:auto}.device-details.empty{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.device-details.empty>svg{font-size:42px}.device-details h2{color:var(--text);margin:8px 0 3px;font-size:18px}.device-details p{color:var(--text-secondary);margin:0;font-size:11px}.device-details-head{justify-content:space-between;gap:10px;display:flex}.device-details-head>div:last-child{gap:6px;display:flex}.device-details-head button{border:1px solid var(--border);background:var(--card);width:34px;height:34px;color:var(--text);cursor:pointer;border-radius:9px;place-items:center;display:grid}.device-details-head button.danger-icon{color:var(--danger)}.device-details dl{margin:15px 0 0}.device-details dl div{border-bottom:1px solid var(--border);justify-content:space-between;gap:15px;padding:9px 0;display:flex}.device-details dt{color:var(--text-secondary);font-size:11px}.device-details dd{color:var(--text);text-align:right;margin:0;font-size:11px}.device-position{margin-top:18px}.device-position h3{color:var(--text);align-items:center;gap:6px;margin:0;font-size:13px;display:flex}.device-empty{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;padding:50px;display:flex}.device-empty svg{font-size:38px}.device-empty h3{color:var(--text);margin:10px 0 4px}.device-overlay{z-index:1000;background:#0000007a;justify-content:flex-end;display:flex;position:fixed;inset:0}.device-overlay.centered{justify-content:center;align-items:center}.device-drawer{background:var(--card);width:min(520px,100%);height:100%;padding:20px;overflow:auto;box-shadow:-12px 0 30px #0000002e}.device-drawer header{justify-content:space-between;gap:15px;display:flex}.device-drawer h2,.device-dialog h2{color:var(--text);margin:0}.device-drawer header p{color:var(--text-secondary);margin:5px 0 0;font-size:11px}.device-drawer header button{color:var(--text);cursor:pointer;background:0 0;border:0;font-size:22px}.device-drawer form{flex-direction:column;gap:14px;margin-top:22px;display:flex}.device-drawer label{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:11px;font-weight:600;display:flex}.device-form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.device-drawer .device-checkbox{color:var(--text);flex-direction:row;align-items:center}.device-checkbox input{width:16px;height:16px}.device-drawer footer,.device-dialog footer{justify-content:flex-end;gap:9px;margin-top:12px;display:flex}.device-dialog{background:var(--card);text-align:center;border-radius:16px;width:min(430px,100% - 30px);padding:24px}.device-dialog p{color:var(--text-secondary);font-size:12px;line-height:1.6}.device-delete-icon{width:48px;height:48px;color:var(--danger);background:#ef444424;border-radius:50%;place-items:center;margin:0 auto 12px;font-size:24px;display:grid}.device-error{color:var(--danger);background:#ef44441a;border:1px solid #ef444459;border-radius:9px;padding:10px 12px;font-size:11px}@media (width<=1250px){.device-stats,.device-filters{grid-template-columns:repeat(3,1fr)}.devices-content{grid-template-columns:1fr}.device-details{min-height:380px}}@media (width<=768px){.devices-page{height:auto}.devices-header{flex-direction:column;align-items:flex-start}.devices-header>div:last-child{width:100%}.devices-header button{flex:1}.device-stats,.device-filters,.device-form-grid{grid-template-columns:1fr}.device-pagination{flex-wrap:wrap}}.device-detail-action{border-top:1px solid var(--border);margin-top:16px;padding-top:14px}.device-view-detail-btn{border:1px solid color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary) 12%,var(--card));width:100%;height:40px;color:var(--primary);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:700;transition:background .15s,border-color .15s,transform .15s;display:flex}.device-view-detail-btn:hover{background:color-mix(in srgb,var(--primary) 18%,var(--card));border-color:var(--primary)}.device-view-detail-btn:active{transform:translateY(1px)}.device-view-detail-btn svg{font-size:17px}.device-corporate-summary{border:1px solid var(--color-border,#e5e7eb);background:var(--color-background-soft,#94a3b80f);border-radius:12px;margin-top:18px;padding:16px}.device-corporate-summary-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.device-corporate-summary-head h3{align-items:center;gap:7px;margin:0;font-size:14px;display:flex}.device-corporate-summary-head button{color:var(--color-primary,#2563eb);cursor:pointer;background:0 0;border:0;font-weight:700}.device-corporate-summary dl{gap:9px;margin:0;display:grid}.device-corporate-summary dl div{justify-content:space-between;gap:14px;display:flex}.device-corporate-summary dt{color:var(--color-text-muted,#64748b);font-size:12px}.device-corporate-summary dd{text-align:right;margin:0;font-size:12px;font-weight:700}.device-admin-status{min-height:24px;color:var(--color-text-muted,#64748b);white-space:nowrap;background:#64748b1f;border-radius:999px;align-items:center;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.device-admin-status.active,.device-admin-status.installed{color:#16a34a;background:#22c55e1f}.device-admin-status.pending_installation,.device-admin-status.maintenance{color:#d97706;background:#f59e0b24}.device-admin-status.suspended,.device-admin-status.inactive{color:#ea580c;background:#f973161f}.device-admin-status.damaged,.device-admin-status.lost,.device-admin-status.retired{color:#dc2626;background:#ef44441f}.device-corporate-warning{color:#b45309;background:#f59e0b1a;border:1px solid #f59e0b59;border-radius:10px;margin-bottom:14px;padding:10px 13px;font-size:13px;font-weight:600}.device-corporate-overlay{z-index:1400;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a85;justify-content:flex-end;display:flex;position:fixed;inset:0}.device-corporate-modal{background:var(--card);width:min(1020px,100vw - 145px);height:100%;color:var(--text);border-left:1px solid var(--border);overflow:auto;box-shadow:-18px 0 42px #0f172a38}.device-corporate-modal>header{z-index:3;border-bottom:1px solid var(--border);background:var(--card);justify-content:space-between;align-items:center;gap:16px;padding:20px 30px;display:flex;position:sticky;top:0}.device-corporate-modal>header>button{width:38px;height:38px;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;place-items:center;padding:0;font-size:24px;transition:all .18s;display:grid}.device-corporate-modal>header>button:hover{border-color:var(--border);background:var(--background);color:var(--primary)}.device-corporate-title{align-items:center;gap:14px;min-width:0;display:flex}.device-corporate-title>span{background:color-mix(in srgb,var(--primary) 11%,transparent);width:52px;height:52px;color:var(--primary);border-radius:14px;flex:none;place-items:center;font-size:26px;display:grid}.device-corporate-title h2{color:var(--text);margin:0;font-size:22px;line-height:1.2}.device-corporate-title p{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0;font-size:12px;overflow:hidden}.device-corporate-modal form{padding:30px}.device-corporate-section-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:10px;margin:8px 0 14px;font-size:12px;font-weight:800;display:flex}.device-corporate-section-title:after{content:"";background:var(--border);flex:1;height:1px}.device-corporate-grid{gap:14px 16px;margin-bottom:26px;display:grid}.device-corporate-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.device-corporate-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.device-corporate-modal label{min-width:0;color:var(--text);flex-direction:column;gap:7px;font-size:12px;font-weight:700;display:flex}.device-corporate-modal input,.device-corporate-modal select,.device-corporate-modal textarea{box-sizing:border-box;border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);font:inherit;border-radius:10px;outline:0;transition:border-color .18s,box-shadow .18s,background .18s}.device-corporate-modal input,.device-corporate-modal select{height:44px;padding:0 13px}.device-corporate-modal textarea{resize:vertical;min-height:104px;padding:12px 13px;line-height:1.5}.device-corporate-modal input:hover,.device-corporate-modal select:hover,.device-corporate-modal textarea:hover{border-color:color-mix(in srgb,var(--primary) 28%,var(--border))}.device-corporate-modal input:focus,.device-corporate-modal select:focus,.device-corporate-modal textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 13%,transparent)}.device-corporate-modal input::placeholder,.device-corporate-modal textarea::placeholder{color:var(--text-secondary);opacity:.72}.device-corporate-modal input:disabled,.device-corporate-modal select:disabled,.device-corporate-modal textarea:disabled{cursor:not-allowed;opacity:.62;background:color-mix(in srgb,var(--background) 82%,var(--border))}.device-corporate-modal select option{background:var(--card);color:var(--text)}.device-corporate-notes{margin-bottom:22px}.device-corporate-modal .device-error{border-color:color-mix(in srgb,var(--danger) 38%,transparent);background:color-mix(in srgb,var(--danger) 9%,transparent);color:var(--danger);margin-bottom:16px}.device-corporate-modal footer{border-top:1px solid var(--border);background:var(--card);box-shadow:0 -8px 22px color-mix(in srgb,var(--background) 65%,transparent);grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;margin:8px -30px -30px;padding:16px 30px;display:grid;position:sticky;bottom:-30px}.device-corporate-modal footer .primary-btn,.device-corporate-modal footer .secondary-btn,.device-corporate-modal footer .danger-btn{border-radius:10px;height:40px;min-height:40px;padding:0 16px;font-size:12px;font-weight:700}.device-corporate-modal footer .primary-btn{border:1px solid var(--primary);background:var(--primary);color:#fff}.device-corporate-modal footer .secondary-btn{border:1px solid var(--border);background:var(--card);color:var(--text)}.device-corporate-modal footer .secondary-btn:hover{background:var(--background)}.device-corporate-modal footer .danger-btn{border:1px solid color-mix(in srgb,var(--danger) 36%,transparent);background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--danger)}.device-corporate-loading{color:var(--text-secondary);padding:42px 30px;font-size:12px}[data-theme=dark] .device-corporate-overlay{background:#020617b8}[data-theme=dark] .device-corporate-modal{box-shadow:-20px 0 46px #0000006b}[data-theme=dark] .device-corporate-modal input,[data-theme=dark] .device-corporate-modal select,[data-theme=dark] .device-corporate-modal textarea{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=dark] .device-corporate-modal footer{box-shadow:0 -8px 22px #02061757}@media (width<=1100px){.device-corporate-modal{width:min(860px,100vw - 72px)}.device-corporate-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.device-corporate-modal{width:100vw}.device-corporate-modal>header{padding:17px 18px}.device-corporate-title>span{width:44px;height:44px;font-size:22px}.device-corporate-title h2{font-size:18px}.device-corporate-modal form{padding:18px}.device-corporate-grid.two,.device-corporate-grid.three{grid-template-columns:1fr}.device-corporate-modal footer{box-shadow:none;grid-template-columns:1fr;margin:8px -18px -18px;padding:14px 18px;position:static}.device-corporate-modal footer span{display:none}.device-corporate-modal footer button{width:100%}}.drivers-page{flex-direction:column;gap:14px;height:calc(100vh - 90px);min-height:0;display:flex}.drivers-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.drivers-header h1{color:var(--text);margin:0;font-size:20px}.drivers-header p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.drivers-actions{gap:10px;display:flex}.drivers-alert{color:#dc2626;background:#dc262614;border:1px solid #dc262659;border-radius:10px;padding:11px 14px;font-size:12px}.driver-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.driver-stats article{border:1px solid var(--border);background:var(--card);border-radius:14px;align-items:center;gap:12px;padding:15px;display:flex}.driver-stats article>span{background:color-mix(in srgb,var(--primary) 12%,transparent);width:42px;height:42px;color:var(--primary);border-radius:12px;place-items:center;font-size:22px;display:grid}.driver-stats strong{color:var(--text);font-size:22px;display:block}.driver-stats span{color:var(--text-secondary);font-size:11px}.driver-filters{border:1px solid var(--border);background:var(--card);border-radius:14px;grid-template-columns:minmax(260px,1fr) 160px 170px 210px auto;gap:10px;padding:12px;display:grid}.driver-search{align-items:center;gap:8px;display:flex}.driver-search svg{color:var(--text-secondary);font-size:20px}.driver-search input,.driver-filters select,.driver-drawer input,.driver-drawer select,.driver-drawer textarea{box-sizing:border-box;border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);border-radius:10px;outline:0}.driver-search input,.driver-filters select{height:40px;padding:0 12px}.driver-search input{background:0 0;border:0}.driver-search{border:1px solid var(--border);border-radius:10px;padding:0 12px}.drivers-content{flex:1;grid-template-columns:minmax(0,1fr) 360px;gap:14px;min-height:0;display:grid}.drivers-table-card,.driver-detail{border:1px solid var(--border);background:var(--card);border-radius:14px;min-height:0;overflow:hidden}.drivers-table-card{flex-direction:column;display:flex}.drivers-table-wrap{flex:1;position:relative;overflow:auto}.drivers-table-wrap table{border-collapse:collapse;width:100%;min-width:780px}.drivers-table-wrap th,.drivers-table-wrap td{border-bottom:1px solid var(--border);text-align:left;color:var(--text);padding:12px 14px;font-size:12px}.drivers-table-wrap th{z-index:1;background:var(--card);color:var(--text-secondary);text-transform:uppercase;font-size:11px;position:sticky;top:0}.drivers-table-wrap td strong,.drivers-table-wrap td span{display:block}.drivers-table-wrap td span{color:var(--text-secondary);margin-top:3px;font-size:10px}.drivers-table-wrap tr{cursor:pointer}.drivers-table-wrap tbody tr:hover,.drivers-table-wrap tr.selected{background:var(--hover)}.driver-sort{color:inherit;font:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0}.driver-status{text-transform:uppercase;border-radius:999px;width:max-content;padding:5px 8px;font-weight:700;font-size:9px!important;display:inline-flex!important}.driver-status.active{color:#16a34a;background:#16a34a1f}.driver-status.maintenance{color:#ea580c;background:#ea580c1f}.driver-status.damaged{color:#dc2626;background:#dc26261f}.driver-status.inactive,.driver-status.retired,.driver-status.sold{color:#64748b;background:#64748b24}.driver-row-actions{gap:4px;display:flex}.driver-row-actions button,.driver-icon-btn{border:1px solid var(--border);background:var(--card);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;border-radius:8px;place-items:center;display:grid}.driver-row-actions button:disabled,.driver-icon-btn:disabled{opacity:.4;cursor:not-allowed}.drivers-footer{color:var(--text-secondary);justify-content:space-between;align-items:center;padding:10px 14px;font-size:10px;display:flex}.drivers-footer div{align-items:center;gap:10px;display:flex}.drivers-footer button{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:7px;padding:6px 9px}.drivers-empty,.driver-detail.empty{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:260px;display:flex}.drivers-empty svg,.driver-detail.empty svg{font-size:42px}.driver-detail{padding:18px;overflow:auto}.driver-detail-head{border-bottom:1px solid var(--border);justify-content:space-between;gap:10px;padding-bottom:16px;display:flex}.driver-detail-head h2{color:var(--text);margin:10px 0 4px;font-size:18px}.driver-detail-head p{color:var(--text-secondary);margin:0;font-size:11px}.driver-detail-section{border-bottom:1px solid var(--border);padding:15px 0}.driver-detail-section:last-child{border:0}.driver-detail-section h3{color:var(--text);margin:0 0 12px;font-size:12px}.driver-info{gap:9px;margin:10px 0;display:flex}.driver-info>span{color:var(--primary);font-size:17px}.driver-info small,.driver-info strong{display:block}.driver-info small{color:var(--text-secondary);font-size:9px}.driver-info strong{color:var(--text);margin-top:2px;font-size:11px}.driver-notes{color:var(--text-secondary);font-size:11px;line-height:1.6}.driver-drawer-layer,.driver-dialog-layer{z-index:1200;position:fixed;inset:0}.driver-drawer-backdrop,.driver-dialog-backdrop{background:#0f172a7a;border:0;position:absolute;inset:0}.driver-drawer{background:var(--card);width:min(650px,100%);height:100%;position:absolute;top:0;right:0;overflow:auto;box-shadow:-14px 0 35px #0000002e}.driver-drawer header{border-bottom:1px solid var(--border);justify-content:space-between;padding:20px;display:flex}.driver-drawer h2{color:var(--text);margin:0;font-size:18px}.driver-drawer header p{color:var(--text-secondary);margin:4px 0 0;font-size:11px}.driver-drawer form{padding:20px}.driver-drawer fieldset{border:0;margin:0 0 18px;padding:0}.driver-drawer legend{color:var(--text);margin-bottom:12px;font-size:12px;font-weight:700}.driver-form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.driver-form-grid label{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:10px;display:flex}.driver-form-grid label.full{grid-column:1/-1}.driver-drawer input,.driver-drawer select{height:40px;padding:0 11px}.driver-drawer footer{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding-top:16px;display:flex}.driver-delete-dialog{box-sizing:border-box;background:var(--card);text-align:center;border-radius:16px;width:min(430px,100% - 30px);padding:24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.driver-delete-dialog>svg{color:#dc2626;font-size:42px}.driver-delete-dialog h2{color:var(--text)}.driver-delete-dialog p{color:var(--text-secondary);font-size:12px;line-height:1.6}.driver-delete-dialog>div{justify-content:center;gap:10px;margin-top:20px;display:flex}@media (width<=1200px){.drivers-content{grid-template-columns:1fr}.driver-detail{min-height:420px}.driver-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=800px){.drivers-page{height:auto}.drivers-header{flex-direction:column;align-items:flex-start}.drivers-actions{width:100%}.drivers-actions button{flex:1}.driver-filters,.driver-stats,.driver-form-grid{grid-template-columns:1fr}.driver-form-grid label.full{grid-column:auto}}.driver-status.suspended{color:#dc2626;background:#dc26261f}.driver-status.on_leave{color:#2563eb;background:#2563eb1f}.driver-status.terminated{color:#64748b;background:#64748b24}.driver-detail-section p{color:var(--text-secondary);font-size:11px;line-height:1.6}.driver-drawer textarea{resize:vertical;padding:11px}.geofences-page{grid-template-columns:minmax(0,1fr) 340px;gap:16px;height:calc(100vh - 90px);min-height:520px;display:grid}.geofences-map-panel{border:1px solid var(--border);background:var(--card);border-radius:18px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.geofences-map-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;min-height:68px;padding:12px 16px;display:flex}.geofences-map-header h1{color:var(--text);margin:0;font-size:18px}.geofences-map-header p{color:var(--text-secondary);margin:4px 0 0;font-size:12px}.geofences-map-header button{border:1px solid var(--border);background:var(--card);height:34px;color:var(--text);cursor:pointer;border-radius:8px;padding:0 12px;font-weight:600}.geofences-map-header button:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.geofences-map-header button:disabled{opacity:.6;cursor:not-allowed}.geofences-map{flex:1;min-height:0;position:relative}.geofences-sidebar{grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:16px;min-height:0;display:grid;overflow:hidden}@media (width<=1000px){.geofences-page{grid-template-columns:1fr;height:auto}.geofences-map-panel{min-height:520px}.geofences-sidebar{grid-template-rows:auto;grid-template-columns:1fr 1fr}}@media (width<=700px){.geofences-page{gap:10px}.geofences-map-panel{border-radius:12px;min-height:440px}.geofences-map-header{align-items:flex-start}.geofences-map-header p{display:none}.geofences-sidebar{grid-template-columns:1fr}}.geofence-map{width:100%;height:100%}.geofence-loading{width:100%;height:100%;color:var(--text-secondary);justify-content:center;align-items:center;font-size:13px;display:flex}.geofence-infonew{z-index:1000;background:var(--card);border:1px solid var(--border);border-radius:12px;position:absolute;top:10px;right:10px;overflow:hidden;box-shadow:0 8px 20px #0000002e}.drawing-info{color:var(--text);border-bottom:1px solid var(--border);padding:10px 12px;font-size:12px;font-weight:600}.geofence-draw-actions{align-items:center;gap:6px;padding:8px;display:flex}.cancel-geofence-btn,.save-geofence-btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:6px;height:34px;margin:0;padding:0 12px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.save-geofence-btn{background:var(--primary);color:#fff;box-shadow:none}.save-geofence-btn:hover{filter:brightness(1.05)}.cancel-geofence-btn{color:#fff;background:#ef4444}.cancel-geofence-btn:hover{background:#dc2626}.cancel-geofence-btn:active,.save-geofence-btn:active{transform:scale(.97)}@media (width<=1366px){.geofence-infonew{border-radius:10px;top:8px;right:8px}.drawing-info{padding:8px 10px;font-size:11px}.geofence-draw-actions{gap:5px;padding:6px}.cancel-geofence-btn,.save-geofence-btn{height:32px;padding:0 10px;font-size:11px}}.geofence-list{border:1px solid var(--border);background:var(--card);border-radius:14px;flex-direction:column;min-height:0;display:flex;position:relative;overflow:hidden}.geofence-list-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.geofence-list-header h2{color:var(--text);margin:0;font-size:15px}.geofence-list-header span{color:var(--text-secondary);margin-top:2px;font-size:11px;display:block}.geofence-create{position:relative}.geofence-add-btn{background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:9px;place-items:center;width:34px;height:34px;display:grid}.geofence-create-menu{z-index:20;border:1px solid var(--border);background:var(--card);border-radius:10px;width:160px;padding:5px;position:absolute;top:40px;right:0;box-shadow:0 12px 28px #0003}.geofence-create-menu button{width:100%;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:9px;display:flex}.geofence-create-menu button:hover{background:#2563eb1a}.geofence-filters{border-bottom:1px solid var(--border);gap:8px;padding:10px;display:grid}.geofence-filters input,.geofence-filters select{border:1px solid var(--border);background:var(--background);width:100%;height:34px;color:var(--text);border-radius:8px;outline:none;padding:0 10px}.geofence-filters input:focus,.geofence-filters select:focus{border-color:var(--primary)}.geofence-list-content{flex:1;min-height:0;padding:8px;overflow:auto}.geofence-card{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;width:100%;margin-bottom:6px;padding:10px;display:flex}.geofence-card:hover{background:#2563eb12}.geofence-card.selected{background:#2563eb1f;border-color:#2563eb59}.geofence-type-icon{width:32px;height:32px;color:var(--primary);background:#2563eb1f;border-radius:9px;flex:none;place-items:center;display:grid}.geofence-type-icon.circle{color:#10b981;background:#10b9811f}.geofence-card-copy{min-width:0}.geofence-card-copy strong,.geofence-card-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.geofence-card-copy strong{color:var(--text);font-size:12px}.geofence-card-copy small{color:var(--text-secondary);margin-top:3px;font-size:10px}.geofence-state{text-align:center;color:var(--text-secondary);padding:28px 14px;font-size:12px;line-height:1.5}.geofence-state.error{color:#ef4444}.geofence-card-copy{flex:1}.geofence-card-scope{color:var(--text-secondary);margin-top:5px;font-size:11px;line-height:1.2;display:block}.geofence-card.selected .geofence-card-scope{color:var(--text)}.geofence-filter-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.geofence-card-calendar{color:var(--primary);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:11px;font-weight:600;display:block;overflow:hidden}@media (width<=560px){.geofence-filter-grid{grid-template-columns:1fr}}.geofence-filter-actions{border-bottom:1px solid var(--border);justify-content:flex-end;padding:0 10px 8px;display:flex}.geofence-filter-actions button{color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;font-size:11px;font-weight:700}.geofence-filter-actions button:hover{text-decoration:underline}.geofence-details{border:1px solid var(--border);background:var(--card);border-radius:14px;flex-direction:column;min-height:0;display:flex;overflow:hidden}.geofence-details>header{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:flex-start;gap:10px;padding:14px;display:flex}.geofence-details>header span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.geofence-details>header h2{color:var(--text);word-break:break-word;margin:3px 0 0;font-size:15px}.geofence-detail-badge{white-space:nowrap;background:#2563eb1a;border-radius:999px;padding:5px 7px;font-weight:700;color:var(--primary)!important}.geofence-details-content{flex:1;min-height:0;padding:6px 14px;overflow:auto}.geofence-detail-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:9px 0;display:flex}.geofence-detail-row span{color:var(--text-secondary);font-size:11px}.geofence-detail-row strong{max-width:60%;color:var(--text);text-align:right;word-break:break-word;font-size:11px}.geofence-scope-detail{gap:4px;padding:10px 0;display:grid}.geofence-scope-detail>div{justify-content:space-between;align-items:center;gap:14px;display:flex}.geofence-scope-detail span,.geofence-scope-detail small{color:var(--text-secondary);font-size:11px}.geofence-scope-detail strong{color:var(--text);font-size:11px}.geofence-scope-detail small{text-align:right}.geofence-details footer{border-top:1px solid var(--border);flex:none;gap:8px;padding:10px 14px;display:grid}.geofence-btn-scope,.geofence-btn-delete{cursor:pointer;border-radius:8px;width:100%;height:34px;font-weight:700}.geofence-btn-scope{color:#6f86ff;background:#4f6bff17;border:1px solid #4f6bff59}.geofence-btn-scope:hover:not(:disabled){color:#fff;background:#4f6bff}.geofence-btn-delete{color:#ef4444;background:#ef444414;border:1px solid #ef444459}.geofence-btn-delete:hover:not(:disabled){color:#fff;background:#ef4444}.geofence-details button:disabled{opacity:.5;cursor:not-allowed}.geofence-details-empty{text-align:center;color:var(--text-secondary);padding:35px 18px;font-size:12px;line-height:1.5}.geofence-details footer{grid-template-columns:1fr 1fr;gap:8px;display:grid}.geofence-details footer button{min-width:0}.geofence-btn-edit,.geofence-btn-geometry{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:9px;padding:9px 10px;font-weight:700}.geofence-btn-edit:hover,.geofence-btn-geometry:hover{background:#3b82f614;border-color:#60a5fa}.geofence-details footer button:disabled{opacity:.5;cursor:not-allowed}@media (width<=480px){.geofence-details footer{grid-template-columns:1fr}}.geofence-covered-toggle{color:var(--primary);cursor:pointer;background:0 0;border:0;justify-self:end;padding:0;font-size:11px;font-weight:700}.geofence-covered-toggle:hover{text-decoration:underline}.geofence-covered-list{gap:5px;max-height:180px;padding-top:4px;display:grid;overflow:auto}.geofence-covered-list button{border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);text-align:left;cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:7px 9px;display:flex}.geofence-covered-list button:hover{background:#3b82f614;border-color:#3b82f673}.geofence-covered-list span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;font-weight:600;overflow:hidden}.geofence-covered-list small{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;flex:none;font-size:11px}.geofence-btn-duplicate{color:#10b981;cursor:pointer;background:#10b98114;border:1px solid #10b98159;border-radius:8px;width:100%;height:34px;font-weight:700}.geofence-btn-duplicate:hover:not(:disabled){color:#fff;background:#10b981}.geofence-btn-focus{color:#60a5fa;cursor:pointer;background:#3b82f614;border:1px solid #3b82f659;border-radius:8px;width:100%;height:34px;font-weight:700}.geofence-btn-focus:hover{color:#fff;background:#3b82f6}.geofence-activity{border-top:1px solid var(--border);gap:9px;padding:11px 0;display:grid}.geofence-activity-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.geofence-activity-header>div{gap:2px;display:grid}.geofence-activity-header span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.geofence-activity-header strong{color:var(--text);font-size:11px}.geofence-activity-header button{border:1px solid var(--border);background:var(--background);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;border-radius:8px;place-items:center;display:grid}.geofence-activity-header button:hover:not(:disabled){color:var(--primary);border-color:#3b82f673}.geofence-activity-header button:disabled{opacity:.55;cursor:not-allowed}.geofence-activity-summary{grid-template-columns:1fr 1fr;gap:7px;display:grid}.geofence-activity-summary>div{border:1px solid var(--border);background:var(--background);border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:6px;padding:7px 8px;display:grid}.geofence-activity-summary svg{color:var(--primary);font-size:14px}.geofence-activity-summary span{color:var(--text-secondary);font-size:10px}.geofence-activity-summary strong{color:var(--text);font-size:12px}.geofence-activity-list{gap:5px;display:grid}.geofence-activity-list button{border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;display:grid}.geofence-activity-list button:hover:not(:disabled){background:#3b82f612;border-color:#3b82f673}.geofence-activity-list button:disabled{cursor:default;opacity:.7}.geofence-activity-icon{border-radius:7px;place-items:center;width:25px;height:25px;font-size:14px;display:grid}.geofence-activity-icon.enter{color:#10b981;background:#10b9811f}.geofence-activity-icon.exit{color:#3b82f6;background:#3b82f61f}.geofence-activity-main{gap:2px;min-width:0;display:grid}.geofence-activity-main strong,.geofence-activity-main small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.geofence-activity-main strong{font-size:10.5px}.geofence-activity-main small{color:var(--text-secondary);font-size:9.5px}.geofence-activity-link-icon{color:var(--text-secondary);font-size:15px}.geofence-activity-message{border:1px dashed var(--border);color:var(--text-secondary);text-align:center;border-radius:8px;padding:9px;font-size:11px}.geofence-activity-message.error{color:#ef4444;background:#ef44440f;border-color:#ef44444d}.geofence-activity-more{color:var(--text-secondary);text-align:right;font-size:11px;display:block}@keyframes geofence-activity-spin{to{transform:rotate(360deg)}}.geofence-scope-selector{gap:16px;display:grid}.geofence-scope-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.geofence-scope-summary>div{border:1px solid var(--border);background:var(--background);color:var(--text-secondary);border-radius:10px;align-items:center;gap:8px;padding:10px 12px;display:flex}.geofence-scope-summary strong{color:var(--text);font-size:16px}.geofence-scope-block{border:1px solid var(--border);background:var(--card);border-radius:12px;gap:10px;padding:14px;display:grid}.geofence-scope-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.geofence-scope-heading>div{color:var(--text);align-items:center;gap:7px;display:flex}.geofence-scope-heading span{max-width:320px;color:var(--text-secondary);text-align:right;font-size:12px}.geofence-scope-block input[type=search]{border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);border-radius:9px;outline:none;padding:10px 12px}.geofence-scope-block input[type=search]:focus{border-color:#4f6bff}.geofence-scope-actions{gap:8px;display:flex}.geofence-scope-actions button{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;padding:7px 10px}.geofence-scope-actions button:hover:not(:disabled){color:#6f86ff;border-color:#4f6bff}.geofence-scope-actions button:disabled{opacity:.45;cursor:not-allowed}.geofence-scope-list{border:1px solid var(--border);border-radius:9px;max-height:190px;display:grid;overflow:auto}.geofence-scope-list label{border-bottom:1px solid var(--border);cursor:pointer;align-items:center;gap:10px;padding:10px 12px;display:flex}.geofence-scope-list label:last-child{border-bottom:0}.geofence-scope-list label.selected{background:#4f6bff1a}.geofence-scope-list label>span{flex:1;min-width:0;display:grid}.geofence-scope-list label strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.geofence-scope-list label small{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.geofence-scope-list label em{color:#6f86ff;background:#4f6bff24;border-radius:999px;padding:3px 6px;font-size:11px;font-style:normal;font-weight:700}.geofence-scope-empty{color:var(--text-secondary);text-align:center;padding:14px;font-size:12px}@media (width<=700px){.geofence-scope-summary{grid-template-columns:1fr}.geofence-scope-heading{display:grid}.geofence-scope-heading span{text-align:left}}.geofence-modal-backdrop{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#03071294;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.geofence-modal{border:1px solid var(--border);background:var(--card);border-radius:16px;flex-direction:column;width:min(820px,100%);max-height:92vh;display:flex;overflow:hidden;box-shadow:0 24px 60px #00000052}.geofence-modal>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:16px;display:flex}.geofence-modal>header span{color:var(--text-secondary);text-transform:uppercase;font-size:11px}.geofence-modal>header h2{color:var(--text);margin:3px 0 0;font-size:17px}.geofence-modal>header button{width:30px;height:30px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:22px}.geofence-modal-body{padding-bottom:14px;overflow:auto}.geofence-modal-summary{color:var(--text);background:#2563eb14;border-radius:9px;justify-content:space-between;align-items:center;margin:14px 16px 4px;padding:10px 12px;font-size:12px;display:flex}.geofence-modal-summary span{color:var(--text-secondary)}.geofence-modal label{color:var(--text);padding:10px 16px 0;font-size:11px;font-weight:700;display:block}.geofence-modal label>input,.geofence-modal label>textarea{border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);font:inherit;resize:vertical;border-radius:8px;outline:none;margin-top:6px;padding:9px 10px;font-weight:400}.geofence-modal label>input:focus,.geofence-modal label>textarea:focus{border-color:var(--primary)}.geofence-modal-scope-title{color:var(--text);justify-content:space-between;align-items:flex-end;gap:12px;margin:18px 16px 10px;display:flex}.geofence-modal-scope-title span{color:var(--text-secondary);font-size:11px}.geofence-modal-body>.geofence-scope-selector{padding:0 16px}.geofence-modal-loading{border:1px solid var(--border);color:var(--text-secondary);text-align:center;border-radius:10px;margin:12px 16px;padding:24px}.geofence-modal>footer{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:16px;display:flex}.geofence-modal>footer button{cursor:pointer;border-radius:8px;height:36px;padding:0 14px;font-weight:700}.geofence-modal>footer .secondary{border:1px solid var(--border);color:var(--text);background:0 0}.geofence-modal>footer .primary{border:1px solid var(--primary);background:var(--primary);color:#fff}.geofence-modal button:disabled{opacity:.6;cursor:not-allowed}@media (width<=700px){.geofence-modal{max-height:94vh}.geofence-modal-scope-title{align-items:flex-start;display:grid}.geofence-modal-scope-title span{line-height:1.4}}.geofence-assignment-backdrop{z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0307129e;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.geofence-assignment-modal{border:1px solid var(--border);background:var(--card);border-radius:16px;flex-direction:column;width:min(820px,100%);max-height:min(860px,92vh);display:flex;overflow:hidden;box-shadow:0 24px 70px #00000061}.geofence-assignment-modal>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:16px 18px;display:flex}.geofence-assignment-modal>header span{color:var(--text-secondary);text-transform:uppercase;font-size:11px}.geofence-assignment-modal>header h2{color:var(--text);margin:3px 0 0;font-size:18px}.geofence-assignment-modal>header button{width:30px;height:30px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:22px}.geofence-assignment-body{padding:16px 18px;overflow:auto}.geofence-assignment-state{text-align:center;color:var(--text-secondary);padding:40px}.geofence-assignment-modal>footer{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:14px 18px;display:flex}.geofence-assignment-modal>footer button{cursor:pointer;border-radius:8px;height:36px;padding:0 14px;font-weight:700}.geofence-assignment-modal>footer .secondary{border:1px solid var(--border);color:var(--text);background:0 0}.geofence-assignment-modal>footer .primary{border:1px solid var(--primary);background:var(--primary);color:#fff}.geofence-assignment-modal button:disabled{opacity:.55;cursor:not-allowed}.geofence-edit-modal-backdrop{z-index:1600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a94;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.geofence-edit-modal{border:1px solid var(--border);background:var(--card);width:min(560px,100%);max-height:min(780px,100dvh - 40px);color:var(--text);border-radius:16px;overflow:hidden;box-shadow:0 24px 60px #0f172a47}.geofence-edit-modal header,.geofence-edit-modal footer{border-color:var(--border);justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.geofence-edit-modal header{border-bottom:1px solid var(--border)}.geofence-edit-modal footer{border-top:1px solid var(--border);justify-content:flex-end}.geofence-edit-modal header span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:12px;font-weight:700;display:block}.geofence-edit-modal header h2{margin:0;font-size:20px}.geofence-edit-modal header>button{width:34px;height:34px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:9px;font-size:25px}.geofence-edit-modal header>button:hover{background:var(--background)}.geofence-edit-modal-body{gap:16px;padding:20px;display:grid;overflow:auto}.geofence-edit-modal-body label{color:var(--text);gap:7px;font-size:13px;font-weight:700;display:grid}.geofence-edit-modal-body input,.geofence-edit-modal-body textarea,.geofence-edit-modal-body select{border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);font:inherit;border-radius:10px;outline:none;padding:10px 12px}.geofence-edit-modal-body input:focus,.geofence-edit-modal-body textarea:focus,.geofence-edit-modal-body select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f}.geofence-edit-modal-note{color:var(--text-secondary);background:#3b82f614;border:1px solid #3b82f62e;border-radius:10px;padding:12px 14px;font-size:12px;line-height:1.5}.geofence-edit-modal footer button{cursor:pointer;border-radius:9px;min-width:120px;padding:9px 15px;font-weight:700}.geofence-edit-modal footer .secondary{border:1px solid var(--border);background:var(--card);color:var(--text)}.geofence-edit-modal footer .primary{color:#fff;background:#2563eb;border:1px solid #2563eb}.geofence-edit-modal footer button:disabled{opacity:.55;cursor:not-allowed}@media (width<=640px){.geofence-edit-modal-backdrop{padding:10px}.geofence-edit-modal{max-height:calc(100dvh - 20px)}.geofence-edit-modal header,.geofence-edit-modal footer,.geofence-edit-modal-body{padding:16px}.geofence-edit-modal footer{grid-template-columns:1fr 1fr;display:grid}.geofence-edit-modal footer button{min-width:0}}.geofence-duplicate-backdrop{z-index:1300;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a94;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.geofence-duplicate-modal{border:1px solid var(--border);background:var(--card);width:min(620px,100%);max-height:calc(100dvh - 48px);color:var(--text);border-radius:18px;overflow:auto;box-shadow:0 24px 70px #0f172a47}.geofence-duplicate-modal header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px;display:flex}.geofence-duplicate-modal header span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px;font-size:12px;font-weight:700;display:block}.geofence-duplicate-modal header h2{margin:0;font-size:20px}.geofence-duplicate-modal header button{width:34px;height:34px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:9px;font-size:24px;line-height:1}.geofence-duplicate-modal header button:hover{background:var(--background);color:var(--text)}.geofence-duplicate-body{gap:16px;padding:22px;display:grid}.geofence-duplicate-body label{color:var(--text);gap:7px;font-size:13px;font-weight:700;display:grid}.geofence-duplicate-body input,.geofence-duplicate-body textarea,.geofence-duplicate-body select{box-sizing:border-box;border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);font:inherit;border-radius:10px;outline:none;padding:10px 12px}.geofence-duplicate-body input:focus,.geofence-duplicate-body textarea:focus,.geofence-duplicate-body select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f}.geofence-duplicate-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.geofence-duplicate-summary div{border:1px solid var(--border);background:var(--background);border-radius:12px;padding:12px}.geofence-duplicate-summary span{color:var(--text-secondary);margin-bottom:5px;font-size:11px;display:block}.geofence-duplicate-summary strong{font-size:14px}.geofence-duplicate-note{color:var(--text-secondary);background:#3b82f614;border-radius:10px;margin:0;padding:12px 14px;font-size:12px;line-height:1.5}.geofence-duplicate-modal footer{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding:16px 22px;display:flex}.geofence-duplicate-modal footer button{cursor:pointer;border-radius:10px;min-width:130px;padding:10px 16px;font-weight:700}.geofence-duplicate-modal footer .secondary{border:1px solid var(--border);background:var(--card);color:var(--text)}.geofence-duplicate-modal footer .primary{color:#fff;background:#2563eb;border:1px solid #2563eb}.geofence-duplicate-modal button:disabled{opacity:.55;cursor:not-allowed}@media (width<=640px){.geofence-duplicate-backdrop{padding:12px}.geofence-duplicate-modal{border-radius:14px;max-height:calc(100dvh - 24px)}.geofence-duplicate-summary{grid-template-columns:1fr}.geofence-duplicate-modal footer{flex-direction:column-reverse}.geofence-duplicate-modal footer button{width:100%}}.geofence-edit-bar{z-index:20;border:1px solid var(--border);background:var(--card);width:min(720px,100% - 32px);color:var(--text);border-radius:12px;justify-content:space-between;align-items:center;gap:22px;padding:12px 14px;display:flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #0f172a33}.geofence-edit-bar>div:first-child{gap:2px;display:grid}.geofence-edit-bar strong{font-size:13px}.geofence-edit-bar span{color:var(--text-secondary);font-size:11px}.geofence-edit-bar>div:last-child{gap:8px;display:flex}.geofence-edit-bar button{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:8px;padding:8px 12px;font-weight:700}.geofence-edit-bar button.primary{color:#fff;background:#2563eb;border-color:#2563eb}.geofence-edit-bar button:disabled{opacity:.55;cursor:not-allowed}@media (width<=640px){.geofence-edit-bar{flex-direction:column;align-items:stretch;gap:10px;bottom:10px}.geofence-edit-bar>div:last-child{grid-template-columns:1fr 1fr;display:grid}}.geofence-delete-backdrop{z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#03071294;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.geofence-delete-modal{border:1px solid var(--border);background:var(--card);border-radius:14px;width:min(390px,100%);padding:18px;box-shadow:0 22px 55px #0000004d}.geofence-delete-modal h2{color:var(--text);margin:0;font-size:17px}.geofence-delete-modal p{color:var(--text-secondary);margin:12px 0 18px;font-size:12px;line-height:1.6}.geofence-delete-modal p strong{color:var(--text)}.geofence-delete-modal>div{justify-content:flex-end;gap:8px;display:flex}.geofence-delete-modal button{border:1px solid var(--border);height:35px;color:var(--text);cursor:pointer;background:0 0;border-radius:8px;padding:0 13px;font-weight:700}.geofence-delete-modal button.danger{color:#fff;background:#ef4444;border-color:#ef4444}.geofence-delete-modal button:disabled{opacity:.6;cursor:not-allowed}.groups-page,.groups-overlay{--hover:#1b66ff0e}[data-theme=dark] .groups-page,[data-theme=dark] .groups-overlay{--hover:#1b66ff1c}.groups-page{flex-direction:column;gap:14px;height:calc(100vh - 90px);min-height:0;display:flex}.groups-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.groups-header h1{color:var(--text);margin:0;font-size:20px}.groups-header p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.groups-header>div:last-child{gap:9px;display:flex}.groups-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.groups-stats article{border:1px solid var(--border);background:var(--card);border-radius:14px;align-items:center;gap:12px;padding:14px;display:flex}.groups-stats article>span{background:var(--hover);width:38px;height:38px;color:var(--primary);border-radius:11px;place-items:center;font-size:20px;display:grid}.groups-stats strong,.groups-stats small{display:block}.groups-stats strong{color:var(--text);font-size:20px}.groups-stats small{color:var(--text-secondary);margin-top:2px;font-size:11px}.groups-filters{border:1px solid var(--border);background:var(--card);border-radius:14px;grid-template-columns:minmax(280px,1fr) minmax(190px,auto) minmax(170px,auto) auto;gap:8px;padding:10px;display:grid}.groups-filters input,.groups-filters select,.groups-drawer input,.groups-drawer select,.assignment-toolbar input,.assignment-toolbar select{border:1px solid var(--border);background:var(--background);width:100%;height:38px;color:var(--text);border-radius:9px;outline:0;padding:0 11px}.groups-search,.assignment-toolbar label{position:relative}.groups-search svg,.assignment-toolbar label svg{color:var(--text-secondary);position:absolute;top:11px;left:11px}.groups-search input,.assignment-toolbar label input{padding-left:34px}.groups-filters>button,.assignment-toolbar>button{color:var(--primary);cursor:pointer;background:0 0;border:0;font-weight:700}.groups-workspace{flex:1;grid-template-columns:minmax(0,1fr) minmax(340px,42%);gap:12px;min-height:0;display:grid}.groups-table-card,.group-details{border:1px solid var(--border);background:var(--card);border-radius:14px;min-height:0}.groups-table-card{flex-direction:column;display:flex;overflow:hidden}.groups-table-scroll{flex:1;overflow:auto}.groups-table-card table{border-collapse:collapse;width:100%;min-width:620px}.groups-table-card th,.groups-table-card td{border-bottom:1px solid var(--border);text-align:left;color:var(--text);padding:12px;font-size:11px}.groups-table-card th{z-index:2;background:var(--card);color:var(--text-secondary);cursor:pointer;font-weight:700;position:sticky;top:0}.groups-table-card th svg{vertical-align:middle;font-size:12px}.groups-table-card tbody tr{cursor:pointer;transition:all .15s}.groups-table-card tbody tr:hover,.groups-table-card tbody tr.selected{background:var(--hover)}.groups-table-card td strong,.groups-table-card td small{display:block}.groups-table-card td small{color:var(--text-secondary);margin-top:3px}.group-count-badge{min-width:28px;color:var(--primary);background:#3b82f621;border-radius:999px;justify-content:center;align-items:center;padding:3px 7px;font-weight:800;display:inline-flex}.group-details{padding:16px;overflow:auto}.group-details.empty{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.group-details.empty>svg{font-size:44px}.group-details header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.group-details h2{color:var(--text);margin:5px 0 2px;font-size:18px}.group-details header p{color:var(--text-secondary);margin:0;font-size:11px}.group-code{background:var(--hover);color:var(--primary);border-radius:999px;padding:3px 7px;font-size:11px;font-weight:800;display:inline-flex}.group-detail-actions{gap:6px;display:flex}.group-detail-actions button{border:1px solid var(--border);background:var(--card);width:34px;height:34px;color:var(--text);cursor:pointer;border-radius:9px;place-items:center;display:grid}.group-detail-actions button.danger{color:var(--danger)}.group-detail-metrics{grid-template-columns:repeat(3,1fr);gap:7px;margin:15px 0;display:grid}.group-detail-metrics article{background:var(--hover);text-align:center;border-radius:10px;padding:10px}.group-detail-metrics strong,.group-detail-metrics span{display:block}.group-detail-metrics strong{color:var(--text);font-size:17px}.group-detail-metrics span{color:var(--text-secondary);margin-top:2px;font-size:9px}.group-assign-button{width:100%;height:36px;color:var(--primary);cursor:pointer;background:#3b82f61a;border:1px solid #3b82f647;border-radius:9px;justify-content:center;align-items:center;gap:6px;font-weight:700;display:flex}.group-details section{margin-top:18px}.group-details section h3{color:var(--text);align-items:center;gap:6px;margin:0 0 8px;font-size:12px;display:flex}.group-details section h3 span{background:var(--hover);color:var(--text-secondary);border-radius:999px;padding:2px 6px;font-size:9px}.group-device-list,.group-child-list{flex-direction:column;gap:6px;display:flex}.group-device-list button,.group-child-list button{border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);text-align:left;cursor:pointer;border-radius:9px;align-items:center;display:grid}.group-device-list button{grid-template-columns:8px minmax(0,1fr) auto;gap:8px;padding:8px}.group-device-list button span strong,.group-device-list button span small{display:block}.group-device-list button span strong{font-size:10px}.group-device-list button span small{color:var(--text-secondary);margin-top:2px;font-size:9px}.group-device-list button em{color:var(--text-secondary);font-size:11px;font-style:normal}.group-device-dot{background:var(--text-secondary);border-radius:50%;width:7px;height:7px}.group-device-dot.online{background:var(--success)}.group-device-dot.offline{background:var(--danger)}.group-child-list button{grid-template-columns:auto 1fr auto;gap:7px;padding:8px;font-size:10px}.group-child-list svg,.group-child-list strong{color:var(--primary)}.group-muted{color:var(--text-secondary);margin:0;font-size:11px;line-height:1.5}.groups-empty{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;padding:48px;display:flex}.groups-empty svg{font-size:38px}.groups-empty h3{color:var(--text);margin:9px 0 3px}.groups-empty p{margin:0;font-size:11px}.groups-overlay{z-index:1200;background:#02061785;justify-content:flex-end;display:flex;position:fixed;inset:0}.groups-overlay.centered{justify-content:center;align-items:center}.groups-drawer{background:var(--card);width:min(500px,100%);height:100%;padding:20px;overflow:auto;box-shadow:-12px 0 32px #0003}.groups-drawer header,.group-assignment-modal header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.groups-drawer header h2,.group-assignment-modal h2,.group-delete-dialog h2{color:var(--text);margin:0;font-size:18px}.groups-drawer header p,.group-assignment-modal header p{color:var(--text-secondary);margin:4px 0 0;font-size:10px}.groups-drawer header button,.group-assignment-modal header button{color:var(--text);cursor:pointer;background:0 0;border:0;font-size:21px}.groups-drawer form{flex-direction:column;gap:14px;margin-top:22px;display:flex}.groups-drawer label{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:11px;font-weight:700;display:flex}.groups-info{background:var(--hover);color:var(--text-secondary);border-radius:9px;align-items:flex-start;gap:7px;padding:10px;font-size:11px;line-height:1.5;display:flex}.groups-info svg{color:var(--primary);flex:none;font-size:16px}.groups-drawer footer,.group-delete-dialog footer{justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.groups-error,.groups-warning{border-radius:9px;padding:10px 12px;font-size:11px;line-height:1.45}.groups-error{color:var(--danger);background:#ef44441a;border:1px solid #ef44444d}.groups-warning{color:#d97706;background:#f59e0b1a;border:1px solid #f59e0b4d}.page-error{margin-bottom:-4px}.group-assignment-modal{background:var(--card);border-radius:16px;flex-direction:column;width:min(900px,100% - 32px);height:min(720px,100vh - 48px);padding:18px;display:flex;box-shadow:0 24px 60px #00000047}.assignment-toolbar{grid-template-columns:minmax(260px,1fr) 180px auto;gap:8px;margin:14px 0;display:grid}.assignment-list{border:1px solid var(--border);border-radius:10px;flex:1;min-height:0;overflow:auto}.assignment-list>label{border-bottom:1px solid var(--border);cursor:pointer;grid-template-columns:auto 8px minmax(0,1fr) minmax(110px,auto);align-items:center;gap:9px;padding:9px 11px;display:grid}.assignment-list>label:last-child{border-bottom:0}.assignment-list>label:hover,.assignment-list>label.selected{background:var(--hover)}.assignment-list input{width:15px;height:15px}.assignment-list span strong,.assignment-list span small{display:block}.assignment-list span strong{color:var(--text);font-size:10px}.assignment-list span small{color:var(--text-secondary);margin-top:2px;font-size:9px}.assignment-list em{color:var(--text-secondary);text-align:right;font-size:11px;font-style:normal}.group-assignment-modal footer{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.group-assignment-modal footer>span{color:var(--text-secondary);font-size:9px}.group-assignment-modal footer>div{gap:8px;display:flex}.group-delete-dialog{background:var(--card);text-align:left;border-radius:16px;width:min(470px,100% - 30px);padding:24px}.group-delete-icon{width:48px;height:48px;color:var(--danger);background:#ef44441f;border-radius:50%;place-items:center;margin:0 auto 12px;font-size:24px;display:grid}.group-delete-dialog h2{text-align:center}.group-delete-dialog>p{color:var(--text-secondary);text-align:center;font-size:11px;line-height:1.6}.group-delete-dialog>label{border:1px solid var(--border);color:var(--text);border-radius:9px;align-items:flex-start;gap:8px;margin-top:9px;padding:9px;font-size:11px;line-height:1.45;display:flex}.group-delete-dialog>label input{margin-top:1px}.group-delete-dialog .groups-error{margin-top:10px}@media (width<=1180px){.groups-workspace{grid-template-columns:1fr}.group-details{min-height:420px}.groups-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=780px){.groups-page{height:auto}.groups-header{flex-direction:column;align-items:flex-start}.groups-header>div:last-child{width:100%}.groups-header>div:last-child button{flex:1}.groups-stats,.groups-filters{grid-template-columns:1fr}.group-assignment-modal{width:calc(100% - 18px);height:calc(100vh - 18px);padding:12px}.assignment-toolbar{grid-template-columns:1fr}.assignment-list>label{grid-template-columns:auto 8px 1fr}.assignment-list em{text-align:left;grid-column:3}.group-assignment-modal footer{flex-direction:column;align-items:stretch}.group-assignment-modal footer>div{grid-template-columns:1fr 1fr;display:grid}.group-detail-metrics{grid-template-columns:1fr}.groups-table-card table{min-width:560px}}.group-operational-actions{grid-template-columns:1fr;gap:8px;display:grid}.group-connections-button{border:1px solid var(--border);background:var(--card);width:100%;color:var(--text);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-weight:600;transition:all .15s;display:flex}.group-connections-button:hover{border-color:var(--primary);background:var(--hover);color:var(--primary)}.groups-primary-panel{min-width:0;min-height:0;display:flex}.groups-primary-panel>.groups-table-card,.groups-primary-panel>.group-tree-card{width:100%}.groups-view-switch{border:1px solid var(--border);background:var(--card);border-radius:9px;padding:2px;display:flex}.groups-view-switch button{height:30px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 10px;font-size:11px;font-weight:700}.groups-view-switch button.active{background:var(--hover);color:var(--primary)}.group-bulk-button{color:#6366f1;cursor:pointer;background:#6366f114;border:1px solid #6366f140;border-radius:9px;justify-content:center;align-items:center;gap:6px;width:100%;height:36px;font-weight:700;display:flex}.group-activity-list{flex-direction:column;gap:6px;display:flex}.group-activity-list article{border:1px solid var(--border);background:var(--background);border-radius:8px;padding:8px 9px}.group-activity-list article strong,.group-activity-list article small{display:block}.group-activity-list article strong{color:var(--text);font-size:9px}.group-activity-list article small{color:var(--text-secondary);margin-top:2px;font-size:8px}.group-activity-list article p{color:var(--text-secondary);margin:4px 0 0;font-size:11px;line-height:1.45}@media (width<=780px){.groups-view-switch{width:100%}.groups-view-switch button{flex:1}.groups-header>div:last-child{flex-wrap:wrap}.groups-primary-panel{min-height:500px}}.group-associations-modal{background:var(--card);width:min(860px,100vw - 32px);max-height:min(760px,100vh - 32px);color:var(--text);border:1px solid var(--border);border-radius:16px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 24px 70px #0f172a38}.group-associations-modal>header{background:var(--card);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.group-associations-modal>header h2{color:var(--text);margin:0;font-size:20px}.group-associations-modal>header p{color:var(--text-secondary);margin:3px 0 0;font-size:13px}.group-associations-modal>header button{width:34px;height:34px;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;place-items:center;font-size:22px;transition:all .15s;display:grid}.group-associations-modal>header button:hover{border-color:var(--border);background:var(--hover)}.group-associations-modal>nav{background:var(--background);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:8px;padding:12px 16px;display:grid}.group-associations-modal>nav button{border:1px solid var(--border);background:var(--card);color:var(--text-secondary);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:9px 12px;transition:all .15s;display:flex}.group-associations-modal>nav button:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.group-associations-modal>nav button.active{border-color:var(--primary);color:var(--primary);background:#1b66ff17}.group-associations-modal>nav button:disabled{cursor:not-allowed;opacity:.6}.group-associations-toolbar{background:var(--card);gap:10px;padding:12px 16px;display:flex}.group-associations-toolbar label{border:1px solid var(--border);background:var(--background);color:var(--text-secondary);border-radius:9px;flex:1;align-items:center;gap:8px;padding:0 11px;transition:all .15s;display:flex}.group-associations-toolbar label:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px #1b66ff1a}.group-associations-toolbar input{width:100%;color:var(--text);background:0 0;border:0;outline:0;padding:9px 0}.group-associations-toolbar input::placeholder{color:var(--text-secondary);opacity:.85}.group-associations-toolbar button{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:9px;align-items:center;gap:6px;padding:0 12px;transition:all .15s;display:flex}.group-associations-toolbar button:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:var(--hover)}.group-associations-toolbar button:disabled{cursor:not-allowed;opacity:.55}.group-associations-list{background:var(--card);min-height:280px;padding:0 16px 12px;overflow:auto}.group-associations-list label{border:1px solid var(--border);background:var(--background);color:var(--text);cursor:pointer;border-radius:10px;align-items:center;gap:11px;margin-bottom:7px;padding:11px 12px;transition:all .15s;display:flex}.group-associations-list label:hover{background:var(--hover);border-color:#1b66ff73}.group-associations-list label.selected{background:#1b66ff16;border-color:#1b66ff8c}.group-associations-list input[type=checkbox]{width:15px;height:15px;accent-color:var(--primary)}.group-associations-list label span{flex-direction:column;gap:2px;min-width:0;display:flex}.group-associations-list label strong{color:var(--text)}.group-associations-list label small{color:var(--text-secondary)}.group-associations-list::-webkit-scrollbar{width:8px}.group-associations-list::-webkit-scrollbar-track{background:0 0}.group-associations-list::-webkit-scrollbar-thumb{background:#6b728047;border-radius:999px}.group-associations-list::-webkit-scrollbar-thumb:hover{background:#6b72807a}.group-associations-modal>footer{background:var(--card);border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.group-associations-modal>footer>span{color:var(--text-secondary);font-size:13px}.group-associations-modal>footer>div{gap:8px;display:flex}[data-theme=dark] .group-associations-modal{box-shadow:0 24px 70px #0000007a}[data-theme=dark] .group-associations-modal>nav button.active,[data-theme=dark] .group-associations-list label.selected{background:#1b66ff26}[data-theme=dark] .group-associations-list label:hover{background:#1b66ff1a}[data-theme=dark] .group-associations-list::-webkit-scrollbar-thumb{background:#94a3b847}[data-theme=dark] .group-associations-list::-webkit-scrollbar-thumb:hover{background:#94a3b875}@media (width<=600px){.group-associations-modal>nav{grid-template-columns:1fr}.group-associations-toolbar{flex-direction:column}.group-associations-toolbar button{justify-content:center;padding:9px 12px}.group-associations-modal>footer{flex-direction:column;align-items:stretch}.group-associations-modal>footer>div{justify-content:flex-end}}.group-bulk-modal{background:var(--card);border-radius:16px;width:min(620px,100% - 28px);max-height:calc(100vh - 34px);padding:18px;overflow:auto;box-shadow:0 24px 60px #00000047}.group-bulk-modal>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.group-bulk-modal h2{color:var(--text);margin:0;font-size:18px}.group-bulk-modal header p{color:var(--text-secondary);margin:3px 0 0;font-size:10px}.group-bulk-modal header button{color:var(--text);cursor:pointer;background:0 0;border:0;font-size:21px}.group-bulk-modal>nav{grid-template-columns:1fr 1fr;gap:6px;margin:14px 0;display:grid}.group-bulk-modal>nav button{border:1px solid var(--border);background:var(--background);height:36px;color:var(--text-secondary);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.group-bulk-modal>nav button.active{color:var(--primary);background:#3b82f61a;border-color:#3b82f659}.group-bulk-body{flex-direction:column;gap:12px;display:flex}.group-bulk-summary{background:var(--hover);border-radius:10px;align-items:center;gap:10px;padding:12px;display:flex}.group-bulk-summary>svg{color:var(--primary);font-size:24px}.group-bulk-summary strong,.group-bulk-summary span{display:block}.group-bulk-summary strong{color:var(--text);font-size:13px}.group-bulk-summary span{color:var(--text-secondary);margin-top:2px;font-size:9px}.group-bulk-body>label:not(.group-bulk-check){color:var(--text-secondary);flex-direction:column;gap:5px;font-size:11px;font-weight:700;display:flex}.group-bulk-body select{border:1px solid var(--border);background:var(--background);height:38px;color:var(--text);border-radius:9px;padding:0 10px}.group-bulk-check{color:var(--text);align-items:flex-start;gap:7px;font-size:10px;display:flex}.group-bulk-note{color:var(--text-secondary);margin:0;font-size:11px;line-height:1.55}.group-bulk-body footer{justify-content:flex-end;gap:8px;margin-top:3px;display:flex}.group-coverage{border:1px solid var(--border);background:var(--background);border-radius:11px;margin-top:16px;padding:11px}.group-coverage>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.group-coverage h3{color:var(--text);margin:0;font-size:11px}.group-coverage header p{color:var(--text-secondary);margin:2px 0 0;font-size:10px}.group-coverage header button{border:1px solid var(--border);background:var(--card);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;border-radius:8px;place-items:center;display:grid}.group-coverage-grid{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:9px;display:grid}.group-coverage-grid article{background:var(--hover);border-radius:8px;grid-template-columns:auto 1fr;align-items:center;column-gap:6px;padding:8px;display:grid}.group-coverage-grid article svg{color:var(--primary);grid-row:1/3;font-size:16px}.group-coverage-grid strong{color:var(--text);font-size:13px}.group-coverage-grid span{color:var(--text-secondary);font-size:10px}.group-coverage-status{color:var(--text-secondary);flex-wrap:wrap;gap:8px;margin-top:8px;font-size:10px;display:flex}.group-coverage-status span{align-items:center;gap:4px;display:flex}.group-coverage-status i{background:var(--text-secondary);border-radius:50%;width:6px;height:6px}.group-coverage-status i.online{background:var(--success)}.group-coverage-status i.offline{background:var(--danger)}.group-coverage-error{color:var(--danger);margin-top:8px;font-size:10px}.group-tree-card{border:1px solid var(--border);background:var(--card);border-radius:14px;flex-direction:column;min-height:0;display:flex;overflow:hidden}.group-tree-card>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex}.group-tree-card>header strong,.group-tree-card>header small{display:block}.group-tree-card>header strong{color:var(--text);font-size:12px}.group-tree-card>header small{color:var(--text-secondary);margin-top:2px;font-size:9px}.group-tree-card>header>div:last-child{gap:5px;display:flex}.group-tree-card>header button{color:var(--primary);cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:700}.group-tree-scroll{flex:1;min-height:0;padding:8px;overflow:auto}.group-tree-row{width:100%;min-height:42px;padding:5px 9px 5px calc(6px + var(--tree-level)*18px);color:var(--text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;grid-template-columns:20px 20px minmax(0,1fr) auto;align-items:center;margin:2px 0;display:grid}.group-tree-row:hover{background:var(--hover)}.group-tree-row.selected{background:#3b82f617;border-color:#3b82f640}.group-tree-toggle{width:20px;height:20px;color:var(--text-secondary);place-items:center;font-size:17px;display:grid}.group-tree-toggle>span{width:14px}.group-tree-folder{color:var(--primary);place-items:center;font-size:16px;display:grid}.group-tree-name{min-width:0}.group-tree-name strong,.group-tree-name small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.group-tree-name strong{font-size:10px}.group-tree-name small{color:var(--text-secondary);margin-top:2px;font-size:8px}.group-tree-count{background:var(--hover);min-width:26px;color:var(--primary);border-radius:999px;justify-content:center;padding:3px 6px;font-size:11px;font-weight:800;display:inline-flex}.group-tree-empty{color:var(--text-secondary);text-align:center;padding:30px;font-size:11px}.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{content:"";border:3px solid #ccc;border-width:3px 3px 0 0;width:9px;height:9px;display:block;position:absolute;top:6px}.react-datepicker__sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.react-datepicker-wrapper{border:0;padding:0;display:inline-block}.react-datepicker{color:#000;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;line-height:initial;background-color:#fff;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-right-radius:.375em;border-bottom-left-radius:.375em}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle,.react-datepicker-popper--header-middle[data-placement^=bottom] .react-datepicker__triangle,.react-datepicker-popper--header-bottom[data-placement^=bottom] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker-popper--header-bottom[data-placement^=top] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select,.react-datepicker__header--middle,.react-datepicker__header--bottom){border-top-right-radius:.3rem}.react-datepicker__header--middle{border-top:1px solid #aeaeae;border-radius:0;margin-top:4px}.react-datepicker__header--bottom{border-top:1px solid #aeaeae;border-bottom:none;border-radius:0 0 .3rem .3rem}.react-datepicker__header-wrapper{position:relative}.react-datepicker__header-wrapper .react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:2px}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{margin:0 15px;display:inline-block}.react-datepicker__month-select,.react-datepicker__year-select,.react-datepicker__month-year-select{color:inherit;cursor:pointer;font-family:inherit;font-size:inherit;background-color:#0000;border:1px solid #aeaeae;border-radius:.3rem;margin-top:5px;padding:2px 5px}.react-datepicker__month-select:focus-visible,.react-datepicker__year-select:focus-visible,.react-datepicker__month-year-select:focus-visible{outline:1px auto}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{color:#000;margin-top:0;font-size:.944rem;font-weight:700}h2.react-datepicker__current-month{margin:0;padding:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{text-align:center;cursor:pointer;z-index:1;text-indent:-999em;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex;position:absolute;top:2px;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{margin-left:auto;margin-right:auto;display:block;position:relative;top:0}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover :before{border-color:#a6a6a6}.react-datepicker__navigation-icon{width:0;font-size:20px;position:relative;top:-1px}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{left:-7px;transform:rotate(45deg)}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{right:-7px;transform:rotate(225deg)}.react-datepicker__month-container{float:left}.react-datepicker__year{text-align:center;margin:.5em}.react-datepicker__year-wrapper{flex-wrap:wrap;max-width:180px;display:flex}.react-datepicker__year .react-datepicker__year-text{width:5em;margin:2px;display:inline-block}.react-datepicker__month{text-align:center;margin:.5em}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{width:5em;margin:2px;display:inline-block}.react-datepicker__input-time-container{clear:both;float:left;text-align:left;width:100%;margin:5px 0 10px 15px}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{margin-left:10px;display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{border:1px solid #aeaeae;border-radius:.375em;display:inline;position:absolute;top:0;right:-87px}.react-datepicker__time-container .react-datepicker__time{background:#fff;border-bottom-right-radius:.375em;position:relative}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{text-align:center;border-bottom-right-radius:.375em;width:85px;margin:0 auto;overflow-x:hidden}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{box-sizing:content-box;width:100%;height:calc(195px + 1.0625em);margin:0;padding-left:0;padding-right:0;list-style:none;overflow-y:scroll}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{white-space:nowrap;height:30px;padding:5px 10px}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{color:#fff;background-color:#216ba5;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:#0000}.react-datepicker__week-number{color:#ccc;text-align:center;width:2.125em;margin:.208em;line-height:2.125em;display:inline-block}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__week-number--selected{color:#fff;background-color:#216ba5;border-radius:.3rem}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;text-align:center;width:2.125em;margin:.208em;line-height:2.125em;display:inline-block}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{color:#fff;background-color:#3dcc4a;border-radius:.3rem}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{color:#fff;background-color:#ff6803;border-radius:.3rem;position:relative}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{color:#fff;white-space:nowrap;visibility:hidden;opacity:0;background-color:#333;border-radius:4px;padding:4px;transition:visibility,opacity .3s ease-in-out;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{color:#fff;background-color:#216ba5;border-radius:.3rem}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{color:#000;background-color:#bad9f1;border-radius:.3rem}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{color:#fff;background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){color:#000;background-color:#f0f0f0}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{color:#fff;white-space:nowrap;visibility:hidden;opacity:0;background-color:#333;border-radius:4px;padding:4px;transition:visibility,opacity .3s ease-in-out;position:absolute;bottom:70%;left:50%;transform:translate(-50%)}.react-datepicker__input-container{width:100%;display:inline-block;position:relative}.react-datepicker__input-container .react-datepicker__calendar-icon{box-sizing:content-box;padding:.625em;position:absolute}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid #0000;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{top:0;right:-16px;transform:rotate(135deg)}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{z-index:1;text-align:center;background-color:#f0f0f0;border:1px solid #aeaeae;border-radius:.3rem;width:50%;position:absolute;top:30px;left:25%}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{width:100%;margin-left:auto;margin-right:auto;line-height:20px;display:block}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;user-select:none;border-bottom-right-radius:.3rem;border-bottom-left-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;vertical-align:middle;background-color:#0000;border:0;outline:0;height:100%;padding:0 6px 0 0;display:table-cell;position:absolute;top:0;right:0}.react-datepicker__close-icon:after{cursor:pointer;color:#fff;text-align:center;vertical-align:middle;content:"×";background-color:#216ba5;border-radius:50%;width:16px;height:16px;padding:2px;font-size:12px;line-height:1;display:table-cell}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{cursor:pointer;text-align:center;clear:left;background:#f0f0f0;border-top:1px solid #aeaeae;padding:5px 0;font-weight:700}.react-datepicker__portal{z-index:2147483647;background-color:#000c;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.react-datepicker__children-container{width:17.25em;height:auto;margin:.5em;padding-left:.25em;padding-right:.25em}.react-datepicker__aria-live{clip-path:circle(0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.react-datepicker__calendar-icon{vertical-align:-.125em;width:1em;height:1em}.react-datepicker-popper-offset{margin-top:-.7em}.history-page{flex-direction:column;gap:12px;min-height:100%;padding:14px;display:flex}.history-page-header{justify-content:space-between;align-items:center;display:flex}.history-page-header h1{color:var(--text);margin:0;font-size:24px}.history-page-header p{color:var(--text-secondary);margin:4px 0 0;font-size:13px}.history-toolbar{background:var(--card);border:1px solid var(--border);border-radius:14px;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:14px;display:flex}.history-field{flex-direction:column;flex:1;gap:6px;min-width:190px;display:flex}.history-device-field{min-width:270px}.history-field label{color:var(--text-secondary);font-size:12px;font-weight:600}.history-field select,.history-device-search,.history-datepicker,.history-speed-select{background:var(--card);width:100%;height:40px;color:var(--text);border:1px solid var(--border);border-radius:9px;outline:none;padding:0 11px}.history-field select:focus,.history-device-search:focus,.history-datepicker:focus,.history-speed-select:focus{border-color:var(--primary)}.history-device-search{margin-bottom:3px}.history-search-btn,.history-icon-btn{background:var(--card);height:40px;color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:6px;display:inline-flex}.history-primary-btn{background:var(--primary);color:#fff;border-color:var(--primary);padding:0 18px;font-weight:700}.history-icon-btn{width:40px;font-size:22px}.history-play-btn{background:var(--primary);color:#fff;border-color:var(--primary)}.history-search-btn:disabled,.history-icon-btn:disabled,.history-speed-select:disabled{opacity:.5;cursor:not-allowed}.history-message{border:1px solid var(--border);border-radius:10px;padding:11px 13px;font-size:13px}.history-error{color:#ef4444;background:#ef44441a;border-color:#ef44444d}.history-warning{color:#f59e0b;background:#f59e0b1a;border-color:#f59e0b4d}.history-loading,.history-empty{background:var(--card);color:var(--text-secondary)}.history-map-section,.history-operational-section,.history-detail-section{background:var(--card);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:10px;padding:12px;display:flex}.history-map-section-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.history-map-section-header h2,.history-section-heading h2{color:var(--text);margin:0;font-size:16px}.history-map-section-header p{color:var(--text-secondary);margin:4px 0 0;font-size:12px}.history-player-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.history-player-controls{align-items:center;gap:5px;display:flex}.history-clear-selection-btn{background:color-mix(in srgb, var(--primary) 8%, var(--card));min-height:40px;color:var(--primary);border:1px solid color-mix(in srgb, var(--primary) 32%, var(--border));cursor:pointer;border-radius:9px;padding:0 12px;font-weight:700}.history-speed-select{width:72px}.history-playback{align-items:center;gap:12px;padding:0 4px;display:flex}.history-playback input{accent-color:var(--primary);flex:1}.history-playback span{min-width:80px;color:var(--text-secondary);text-align:right;font-size:12px}.history-time-info{color:var(--text-secondary);justify-content:space-between;gap:12px;font-size:12px;display:flex}.history-time-info strong{color:var(--text)}.history-map-placeholder{border-radius:12px;height:480px;overflow:hidden}.history-section-heading span{color:var(--primary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px;font-size:11px;font-weight:800;display:block}.history-summary{grid-template-columns:repeat(3,minmax(150px,1fr));gap:10px;display:grid}.history-operational-summary{grid-template-columns:repeat(3,minmax(150px,1fr))}.history-summary-card{background:color-mix(in srgb, var(--card) 96%, var(--primary) 4%);border:1px solid var(--border);border-radius:12px;flex-direction:column;justify-content:center;gap:5px;min-height:76px;padding:13px 14px;display:flex}.history-summary-card span{color:var(--text-secondary);font-size:11px}.history-summary-card strong{color:var(--text);font-size:17px}.history-result-tabs{background:color-mix(in srgb, var(--card) 94%, var(--border) 6%);border:1px solid var(--border);border-radius:12px;align-items:center;gap:6px;width:max-content;max-width:100%;padding:5px;display:flex}.history-result-tabs button{height:38px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;padding:0 14px;font-weight:700;display:inline-flex}.history-result-tabs button.active{background:color-mix(in srgb, var(--primary) 16%, var(--card));color:var(--primary)}.history-result-tabs button span{background:color-mix(in srgb, var(--text-secondary) 13%, transparent);text-align:center;border-radius:999px;min-width:23px;padding:2px 6px;font-size:11px}.history-table-card{background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden}.history-table-scroll{overflow-x:auto}.history-data-table{border-collapse:collapse;width:100%;min-width:900px}.history-data-table th,.history-data-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:13px 14px}.history-data-table th{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.history-data-table td{color:var(--text);font-size:12px}.history-data-table tbody tr{transition:background .18s}.history-data-table tbody tr:hover,.history-data-table tbody tr.is-selected{background:color-mix(in srgb, var(--primary) 8%, transparent)}.history-location-btn{border:1px solid color-mix(in srgb, var(--primary) 35%, var(--border));background:color-mix(in srgb, var(--primary) 8%, var(--card));color:var(--primary);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:7px 10px;font-weight:700;display:inline-flex}.history-table-empty{color:var(--text-secondary);text-align:center;padding:28px 16px;font-size:13px}@media (width<=1200px){.history-summary,.history-operational-summary{grid-template-columns:repeat(3,1fr)}}@media (width<=900px){.history-summary,.history-operational-summary{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.history-page{padding:8px}.history-page-header h1{font-size:21px}.history-field,.history-device-field{min-width:100%}.history-primary-btn{width:100%}.history-map-section-header{flex-direction:column;align-items:flex-start}.history-player-actions,.history-player-controls{width:100%}.history-player-controls{justify-content:center}.history-clear-selection-btn{width:100%}.history-time-info{font-size:11px}.history-map-placeholder{height:360px}.history-result-tabs{width:100%;overflow-x:auto}.history-result-tabs button{flex:1;justify-content:center;min-width:max-content}}.history-speed-chart-card{background:color-mix(in srgb, var(--card) 96%, var(--primary) 4%);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;padding:14px;display:flex}.history-speed-chart-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.history-speed-chart-header span{color:var(--primary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px;font-size:11px;font-weight:800;display:block}.history-speed-chart-header h3{color:var(--text);margin:0;font-size:15px}.history-speed-chart-header>strong{color:var(--text-secondary);font-size:12px;font-weight:700}.history-speed-chart-body{width:100%;height:260px}.history-speed-tooltip{background:var(--card);min-width:150px;color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:8px;flex-direction:column;gap:4px;padding:9px 11px;display:flex}.history-speed-tooltip strong{color:var(--text-secondary);font-size:11px;font-weight:600}.history-speed-tooltip span{font-size:14px;font-weight:800}@media (width<=768px){.history-speed-chart-body{height:220px}}.history-export-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.history-export-btn{background:var(--card);min-height:40px;color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-weight:700;transition:border-color .2s,background .2s,opacity .2s;display:inline-flex}.history-export-btn svg{font-size:18px}.history-export-pdf{color:#ef4444;border-color:color-mix(in srgb, #ef4444 35%, var(--border))}.history-export-pdf:hover:not(:disabled){background:color-mix(in srgb, #ef4444 9%, var(--card));border-color:#ef4444}.history-export-excel{color:#22c55e;border-color:color-mix(in srgb, #22c55e 35%, var(--border))}.history-export-excel:hover:not(:disabled){background:color-mix(in srgb, #22c55e 9%, var(--card));border-color:#22c55e}.history-export-btn:disabled{opacity:.55;cursor:not-allowed}@media (width<=760px){.history-page-header{flex-direction:column;align-items:flex-start;gap:10px}.history-export-actions{width:100%}.history-export-btn{flex:1}}@media (width<=768px){.history-page{width:100%;min-width:0}.history-content,.history-layout{min-width:0}.history-map{min-height:320px}.history-tabs{scrollbar-width:none;overflow-x:auto}.history-tabs::-webkit-scrollbar{display:none}.history-tabs button{white-space:nowrap;flex:none}}@media (width<=480px){.history-map{min-height:290px}}.history-map-wrapper{width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.history-map{border-radius:14px;width:100%;height:100%;overflow:hidden}.map-loading{background:var(--card);height:100%;color:var(--text-secondary);border:1px solid var(--border);border-radius:14px;justify-content:center;align-items:center;display:flex}.history-info-card{z-index:2;background:var(--card);max-width:min(300px,100% - 72px);color:var(--text);border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;padding:13px;position:absolute;top:12px;right:12px;box-shadow:0 8px 24px #0f172a29}.history-info-card h4{margin:0 0 10px;font-size:15px}.history-info-row{justify-content:space-between;gap:15px;margin-bottom:7px;font-size:12px;display:flex}.history-info-row:last-child{margin-bottom:0}.history-info-label{color:var(--text-secondary)}.history-info-value{text-align:right;font-weight:600}.history-center-btn{z-index:2;background:var(--card);width:40px;height:40px;color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;transition:transform .18s,border-color .18s;display:flex;position:absolute;top:12px;left:12px;box-shadow:0 6px 18px #0f172a24}.history-center-btn:hover:not(:disabled){transform:translateY(-2px)}.history-center-btn.is-active{border-color:var(--primary);color:var(--primary)}.history-center-btn:disabled{opacity:.5;cursor:not-allowed}.history-playback-progress{background:var(--primary);z-index:102;height:4px;transition:width .2s linear;position:absolute;bottom:0;left:0}.history-event-window{color:#111827;flex-direction:column;gap:5px;min-width:150px;display:flex}.history-event-window span{color:#64748b;font-size:12px}@media (width<=768px){.history-center-btn{top:8px;left:8px}.history-info-card{max-width:calc(100% - 62px);top:8px;right:8px}}.history-trips-card{background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden}.history-trips-table-scroll{overflow:auto}.history-trips-table{border-collapse:collapse;width:100%;min-width:1220px}.history-trips-table th,.history-trips-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:12px 14px}.history-trips-table th{color:var(--text-secondary);background:color-mix(in srgb,var(--card) 90%,var(--primary) 10%);white-space:nowrap;font-size:12px;font-weight:700}.history-trips-table td{color:var(--text);font-size:12px}.history-trips-table tbody tr{transition:background .18s}.history-trips-table tbody tr:hover,.history-trips-table tbody tr.selected{background:color-mix(in srgb,var(--card) 90%,var(--primary) 10%)}.history-trip-address{white-space:normal;min-width:210px;max-width:290px;line-height:1.45}.history-trip-route-btn{border:1px solid color-mix(in srgb,var(--primary) 55%,var(--border));color:var(--primary);white-space:nowrap;cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:7px 10px;font-size:12px;font-weight:700;display:inline-flex}.history-trip-route-btn:hover{background:color-mix(in srgb,var(--primary) 12%,transparent)}.history-trips-empty{background:var(--card);border:1px solid var(--border);min-height:210px;color:var(--text-secondary);text-align:center;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.history-trips-empty svg{color:var(--primary);font-size:34px}.history-trips-empty h3,.history-trips-empty p{margin:0}.history-trips-empty h3{color:var(--text);font-size:16px}.history-trips-empty p{font-size:13px}.history-stops-table .history-location-btn{white-space:nowrap}.history-events-table .history-location-btn:disabled{opacity:.45;cursor:not-allowed}.history-event-badge{background:color-mix(in srgb, var(--primary) 10%, var(--card));min-height:26px;color:var(--text);white-space:nowrap;border-radius:999px;align-items:center;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.history-event-alarm,.history-event-sos,.history-event-overspeed,.history-event-deviceOverspeed{color:#ef4444;background:#ef44441f}.history-event-ignitionOn,.history-event-deviceOnline,.history-event-geofenceEnter{color:#22c55e;background:#22c55e1f}.history-event-ignitionOff,.history-event-deviceOffline,.history-event-geofenceExit{color:#f59e0b;background:#f59e0b1f}.history-fuel-panel{padding:16px}.history-fuel-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.history-fuel-metric{border:1px solid var(--border,#e2e8f0);background:var(--surface-secondary,#f8fafc);border-radius:11px;align-items:center;gap:10px;min-width:0;padding:12px;display:flex}.history-fuel-metric>span{color:#3b82f6;background:#3b82f61f;border-radius:9px;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:18px;display:grid}.history-fuel-metric.success>span{color:#16a34a;background:#22c55e1f}.history-fuel-metric.danger>span{color:#ef4444;background:#ef44441f}.history-fuel-metric.neutral>span{color:#64748b;background:#64748b1f}.history-fuel-metric small,.history-fuel-metric strong{display:block}.history-fuel-metric small{color:var(--text-secondary,#64748b);font-size:11px}.history-fuel-metric strong{color:var(--text-primary,#0f172a);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:15px;overflow:hidden}.history-fuel-content{grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);gap:14px;margin-top:14px;display:grid}.history-fuel-chart-card,.history-fuel-events-card{border:1px solid var(--border,#e2e8f0);background:var(--surface-secondary,#f8fafc);border-radius:12px;min-width:0;padding:14px}.history-fuel-chart-card>header,.history-fuel-events-card>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.history-fuel-chart-card header span,.history-fuel-events-card header span{color:var(--text-secondary,#64748b);text-transform:uppercase;font-size:11px;font-weight:700;display:block}.history-fuel-chart-card h3,.history-fuel-events-card h3{color:var(--text-primary,#0f172a);margin:2px 0 0;font-size:13px}.history-fuel-chart-card header>strong,.history-fuel-events-card header>strong{color:var(--primary,#2563eb);font-size:11px}.history-fuel-chart{height:250px;margin-top:10px}.history-fuel-events-list{max-height:275px;margin-top:8px;overflow-y:auto}.history-fuel-event{border-top:1px solid var(--border,#e2e8f0);grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 0;display:grid}.history-fuel-event-icon{color:#16a34a;background:#22c55e1f;border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.history-fuel-event.drop .history-fuel-event-icon{color:#ef4444;background:#ef44441f}.history-fuel-event strong,.history-fuel-event span{display:block}.history-fuel-event strong{color:var(--text-primary,#0f172a);font-size:11px}.history-fuel-event div span{color:var(--text-secondary,#64748b);margin-top:2px;font-size:11px}.history-fuel-event b{color:#16a34a;white-space:nowrap;font-size:11px}.history-fuel-event.drop b{color:#ef4444}.history-fuel-events-empty,.history-fuel-empty{min-height:180px;color:var(--text-secondary,#64748b);text-align:center;justify-content:center;align-items:center;font-size:11px;display:flex}.history-fuel-empty{flex-direction:column;padding:28px}.history-fuel-empty>svg{color:var(--primary,#2563eb);margin-bottom:8px;font-size:32px}.history-fuel-empty h3{color:var(--text-primary,#0f172a);margin:0;font-size:15px}.history-fuel-empty p{max-width:420px;margin:5px 0 0}.history-fuel-tooltip{border:1px solid var(--border,#dbe4f0);background:var(--card-bg,#fff);border-radius:9px;padding:9px 10px;box-shadow:0 8px 22px #0f172a24}.history-fuel-tooltip span,.history-fuel-tooltip strong{display:block}.history-fuel-tooltip span{color:var(--text-secondary,#64748b);font-size:11px}.history-fuel-tooltip strong{color:var(--primary,#2563eb);margin-top:4px;font-size:12px}[data-theme=dark] .history-fuel-metric,[data-theme=dark] .history-fuel-chart-card,[data-theme=dark] .history-fuel-events-card{background:#0f172a6b}@media (width<=1100px){.history-fuel-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.history-fuel-content{grid-template-columns:1fr}}@media (width<=640px){.history-fuel-summary{grid-template-columns:1fr}}.inventory-page{flex-direction:column;gap:14px;min-height:calc(100vh - 90px);padding-bottom:16px;display:flex}.inventory-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.inventory-header h1{color:var(--text);margin:0;font-size:20px}.inventory-header p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.inventory-actions{flex-wrap:wrap;gap:8px;display:flex}.inventory-alert,.inventory-dialog-alert{color:#dc2626;background:#dc262614;border:1px solid #dc262659;border-radius:10px;padding:11px 14px;font-size:11px;line-height:1.45}.inventory-stats{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.inventory-stats article{border:1px solid var(--border);background:var(--card);border-radius:13px;align-items:center;gap:10px;padding:13px;display:flex}.inventory-stats article>span{background:color-mix(in srgb,var(--primary) 12%,transparent);width:38px;height:38px;color:var(--primary);border-radius:11px;place-items:center;font-size:20px;display:grid}.inventory-stats strong{color:var(--text);font-size:19px;display:block}.inventory-stats small{color:var(--text-secondary);margin-top:2px;font-size:9px;display:block}.inventory-filters{border:1px solid var(--border);background:var(--card);border-radius:13px;grid-template-columns:minmax(250px,1.5fr) repeat(3,minmax(135px,.8fr)) repeat(3,minmax(145px,.85fr)) auto;gap:8px;padding:11px;display:grid}.inventory-filters input,.inventory-filters select,.inventory-drawer input,.inventory-drawer select,.inventory-drawer textarea,.inventory-operation-dialog input,.inventory-operation-dialog select,.inventory-operation-dialog textarea{box-sizing:border-box;border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);border-radius:9px;outline:0}.inventory-filters>input,.inventory-filters>select{height:38px;padding:0 10px}.inventory-search{border:1px solid var(--border);border-radius:9px;align-items:center;gap:7px;padding:0 10px;display:flex}.inventory-search svg{color:var(--text-secondary);flex:none;font-size:18px}.inventory-search input{background:0 0;border:0;height:36px}.inventory-content{flex:1;grid-template-columns:minmax(0,1.45fr) minmax(360px,.75fr);gap:14px;min-height:560px;display:grid}.inventory-table-card,.inventory-detail{border:1px solid var(--border);background:var(--card);border-radius:14px;min-height:0;overflow:hidden}.inventory-table-card{flex-direction:column;display:flex}.inventory-table-wrap{flex:1;min-height:360px;position:relative;overflow:auto}.inventory-table-wrap table{border-collapse:collapse;width:100%;min-width:820px}.inventory-table-wrap th,.inventory-table-wrap td{border-bottom:1px solid var(--border);text-align:left;color:var(--text);padding:11px 13px;font-size:11px}.inventory-table-wrap th{z-index:2;background:var(--card);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;font-size:11px;position:sticky;top:0}.inventory-table-wrap td strong,.inventory-table-wrap td span{display:block}.inventory-table-wrap td>span{color:var(--text-secondary);margin-top:3px;font-size:9px}.inventory-table-wrap tbody tr{cursor:pointer}.inventory-table-wrap tbody tr:hover,.inventory-table-wrap tbody tr.selected{background:var(--hover)}.inventory-sort{color:inherit;font:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0}.inventory-status{text-transform:uppercase;border-radius:999px;width:max-content;padding:5px 8px;font-weight:700;font-size:8px!important;display:inline-flex!important}.inventory-status.available{color:#16a34a;background:#16a34a1f}.inventory-status.reserved{color:#2563eb;background:#2563eb1f}.inventory-status.assigned{color:#7c3aed;background:#7c3aed1f}.inventory-status.installed{color:#0891b2;background:#0891b21f}.inventory-status.maintenance{color:#ea580c;background:#ea580c1f}.inventory-status.damaged,.inventory-status.lost{color:#dc2626;background:#dc26261f}.inventory-status.retired{color:#64748b;background:#64748b24}.inventory-row-actions{gap:4px;display:flex}.inventory-row-actions button,.inventory-icon-btn{border:1px solid var(--border);background:var(--card);width:31px;height:31px;color:var(--text-secondary);cursor:pointer;border-radius:8px;place-items:center;display:grid}.inventory-row-actions button:hover,.inventory-icon-btn:hover{color:var(--primary);border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.inventory-row-actions button:disabled,.inventory-icon-btn:disabled{opacity:.4;cursor:not-allowed}.inventory-empty,.inventory-detail.empty,.inventory-loading{color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:250px;padding:20px;display:flex}.inventory-empty.small{min-height:180px}.inventory-empty svg,.inventory-detail.empty svg{font-size:38px}.inventory-empty strong,.inventory-detail.empty strong{color:var(--text);font-size:12px}.inventory-empty span,.inventory-detail.empty span{font-size:10px}.inventory-detail{padding:17px;overflow:auto}.inventory-detail-head{justify-content:space-between;gap:10px;padding-bottom:14px;display:flex}.inventory-detail-head h2{color:var(--text);margin:9px 0 3px;font-size:17px}.inventory-detail-head p{color:var(--text-secondary);margin:0;font-size:10px}.inventory-detail-tabs{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:1fr 1fr;margin:0 -17px;display:grid}.inventory-detail-tabs button{border:0;border-right:1px solid var(--border);min-height:38px;color:var(--text-secondary);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.inventory-detail-tabs button:last-child{border-right:0}.inventory-detail-tabs button.active{background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--primary)}.inventory-operations{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:14px 0 4px;display:grid}.inventory-operations button{border:1px solid var(--border);background:var(--background);min-height:34px;color:var(--text);cursor:pointer;border-radius:8px;justify-content:flex-start;align-items:center;gap:6px;padding:0 9px;font-size:11px;font-weight:600;display:flex}.inventory-operations button:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));color:var(--primary)}.inventory-detail-section{border-bottom:1px solid var(--border);padding:14px 0}.inventory-detail-section:last-child{border:0}.inventory-detail-section h3{color:var(--text);margin:0 0 10px;font-size:11px}.inventory-info{margin:8px 0}.inventory-info small,.inventory-info strong{display:block}.inventory-info small{color:var(--text-secondary);font-size:8px}.inventory-info strong{color:var(--text);margin-top:2px;font-size:10px}.inventory-notes{color:var(--text-secondary);margin:0;font-size:11px;line-height:1.55}.inventory-movements-panel{padding-top:14px}.inventory-tab-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.inventory-tab-toolbar>div:first-child{flex-direction:column;gap:2px;display:flex}.inventory-tab-toolbar strong{color:var(--text);font-size:11px}.inventory-tab-toolbar span{color:var(--text-secondary);font-size:9px}.inventory-tab-toolbar>div:last-child{gap:6px;display:flex}.inventory-movement-list{flex-direction:column;gap:8px;display:flex}.inventory-movement-list article{border:1px solid var(--border);background:var(--background);border-radius:10px;grid-template-columns:34px minmax(0,1fr) auto;align-items:start;gap:9px;padding:10px;display:grid}.inventory-movement-icon{background:color-mix(in srgb,var(--primary) 10%,transparent);width:32px;height:32px;color:var(--primary);border-radius:9px;place-items:center;font-size:17px;display:grid}.inventory-movement-list strong{color:var(--text);font-size:10px;display:block}.inventory-movement-list p{color:var(--text-secondary);margin:3px 0;font-size:11px;line-height:1.4}.inventory-movement-list small{color:var(--text-secondary);font-size:8px}.inventory-drawer-layer,.inventory-dialog-layer{z-index:1300;position:fixed;inset:0}.inventory-drawer-backdrop,.inventory-dialog-backdrop{background:#0f172a85;border:0;position:absolute;inset:0}.inventory-drawer{background:var(--card);width:min(680px,100%);height:100%;position:absolute;top:0;right:0;overflow:auto;box-shadow:-14px 0 35px #0003}.inventory-drawer header,.inventory-operation-dialog header{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:18px 20px;display:flex}.inventory-drawer h2,.inventory-operation-dialog h2{color:var(--text);margin:0;font-size:17px}.inventory-drawer header p,.inventory-operation-dialog header p{color:var(--text-secondary);margin:4px 0 0;font-size:10px}.inventory-drawer form{padding:19px}.inventory-drawer fieldset{border:0;margin:0 0 18px;padding:0}.inventory-drawer legend{color:var(--text);margin-bottom:11px;font-size:11px;font-weight:700}.inventory-form-grid,.inventory-operation-content{grid-template-columns:1fr 1fr;gap:11px;display:grid}.inventory-form-grid label,.inventory-operation-content label{color:var(--text-secondary);flex-direction:column;gap:5px;font-size:9px;display:flex}.inventory-form-grid label.full,.inventory-operation-content label.full{grid-column:1/-1}.inventory-drawer input,.inventory-drawer select,.inventory-operation-dialog input,.inventory-operation-dialog select{height:39px;padding:0 10px}.inventory-drawer textarea,.inventory-operation-dialog textarea{resize:vertical;padding:10px}.inventory-drawer footer,.inventory-operation-dialog footer{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding-top:15px;display:flex}.inventory-operation-dialog{border:1px solid var(--border);background:var(--card);border-radius:15px;width:min(570px,100% - 28px);max-height:90vh;position:absolute;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 22px 60px #00000047}.inventory-operation-content{padding:18px 20px}.inventory-operation-confirm{border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border));background:color-mix(in srgb,var(--primary) 7%,transparent);color:var(--text-secondary);border-radius:9px;grid-column:1/-1;padding:12px;font-size:11px;line-height:1.5}.inventory-operation-dialog footer{padding:13px 20px 18px}.inventory-dialog-alert{margin:0 20px 12px}.inventory-delete-dialog{box-sizing:border-box;border:1px solid var(--border);background:var(--card);text-align:center;border-radius:16px;width:min(430px,100% - 30px);padding:24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.inventory-delete-dialog>svg{color:#dc2626;font-size:42px}.inventory-delete-dialog h2{color:var(--text);margin:11px 0 7px;font-size:17px}.inventory-delete-dialog p{color:var(--text-secondary);margin:0;font-size:11px;line-height:1.55}.inventory-delete-dialog>div:last-child{justify-content:center;gap:9px;margin-top:19px;display:flex}.danger-btn{color:#dc2626;cursor:pointer;background:#dc26261a;border:1px solid #dc262659;border-radius:9px;justify-content:center;align-items:center;min-height:36px;padding:0 12px;font-weight:700;display:inline-flex}@media (width<=1450px){.inventory-stats{grid-template-columns:repeat(3,1fr)}.inventory-filters{grid-template-columns:minmax(230px,1.4fr) repeat(3,minmax(130px,.8fr)) repeat(2,minmax(140px,.8fr)) auto}.inventory-content{grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr)}}@media (width<=1150px){.inventory-content{grid-template-columns:1fr}.inventory-detail{min-height:480px}.inventory-filters{grid-template-columns:repeat(3,1fr)}}@media (width<=760px){.inventory-page{min-height:auto}.inventory-header{flex-direction:column;align-items:flex-start}.inventory-actions{width:100%}.inventory-actions button{flex:calc(50% - 6px)}.inventory-stats{grid-template-columns:1fr 1fr}.inventory-filters{grid-template-columns:1fr}.inventory-content{min-height:0}.inventory-table-card{min-height:480px}.inventory-detail{min-height:0}.inventory-form-grid,.inventory-operation-content{grid-template-columns:1fr}.inventory-form-grid label.full,.inventory-operation-content label.full,.inventory-operation-confirm{grid-column:auto}.inventory-tab-toolbar{flex-direction:column;align-items:flex-start}.inventory-tab-toolbar>div:last-child{width:100%}.inventory-tab-toolbar button{flex:1}.inventory-operations{grid-template-columns:1fr}.inventory-movement-list article{grid-template-columns:32px minmax(0,1fr)}.inventory-movement-list article>.inventory-status{grid-column:2}}@media (width<=480px){.inventory-stats{grid-template-columns:1fr}.inventory-actions button{flex:100%}}.inventory-movement-filters{border:1px solid var(--border);background:var(--background);border-radius:10px;grid-template-columns:minmax(170px,1fr) minmax(135px,.7fr) minmax(135px,.7fr) auto;gap:8px;margin-bottom:12px;padding:10px;display:grid}.inventory-movement-filters select,.inventory-movement-filters input{box-sizing:border-box;border:1px solid var(--border);background:var(--card);width:100%;height:36px;color:var(--text);border-radius:8px;padding:0 9px}.inventory-movement-filters label{color:var(--text-secondary);align-items:center;gap:6px;font-size:8px;display:flex}.inventory-movement-filters label input{min-width:0}.inventory-operations button:disabled{opacity:.45;cursor:not-allowed}.inventory-movements-panel .datatable-pagination{margin-top:12px}@media (width<=760px){.inventory-movement-filters{grid-template-columns:1fr}.inventory-movement-filters label{grid-template-columns:42px 1fr;display:grid}.inventory-tab-toolbar>div:last-child{flex-wrap:wrap}.inventory-tab-toolbar>div:last-child button{flex:calc(50% - 6px)}}.installations-page{flex-direction:column;gap:14px;min-height:calc(100vh - 90px);display:flex}.installations-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.installations-header h1{color:var(--text);margin:0;font-size:20px}.installations-header p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.installations-actions,.installations-operational-actions{flex-wrap:wrap;gap:8px;display:flex}.installations-operational-actions button svg{width:16px;min-width:16px;height:16px;min-height:16px;font-size:16px}.installations-alert{color:#dc2626;background:#dc262614;border:1px solid #dc262659;border-radius:10px;align-items:center;gap:9px;padding:11px 14px;font-size:12px;display:flex}.installations-alert>button{color:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:18px}.installations-stats{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.installations-stats article{border:1px solid var(--border);background:var(--card);border-radius:13px;align-items:center;gap:11px;padding:13px 14px;display:flex}.installations-stats article>span{background:color-mix(in srgb,var(--primary) 12%,transparent);width:38px;height:38px;color:var(--primary);border-radius:11px;place-items:center;font-size:20px;display:grid}.installations-stats strong{color:var(--text);font-size:20px;display:block}.installations-stats small{color:var(--text-secondary);margin-top:2px;font-size:10px;display:block}.installations-filters{border:1px solid var(--border);background:var(--card);border-radius:13px;grid-template-columns:minmax(240px,1.5fr) repeat(4,minmax(130px,.75fr)) repeat(2,minmax(160px,.9fr)) auto;gap:8px;padding:11px;display:grid}.installations-search{border:1px solid var(--border);background:var(--background);border-radius:9px;align-items:center;gap:7px;height:38px;padding:0 10px;display:flex}.installations-search svg{color:var(--text-secondary);flex:none;font-size:18px}.installations-search input{width:100%;color:var(--text);background:0 0;border:0;outline:0;font-size:11px}.installations-filters select,.installations-date-filter input{border:1px solid var(--border);background:var(--background);height:38px;color:var(--text);border-radius:9px;outline:0;padding:0 9px;font-size:10px}.installations-date-filter{color:var(--text-secondary);align-items:center;gap:6px;font-size:9px;display:flex}.installations-date-filter input{flex:1;min-width:0}.installations-content{flex:1;grid-template-columns:minmax(0,1.55fr) minmax(390px,.85fr);gap:14px;min-height:580px;display:grid}.installations-table-card,.installations-detail{border:1px solid var(--border);background:var(--card);border-radius:14px;min-width:0;overflow:hidden}.installations-table-card{flex-direction:column;min-height:560px;display:flex}.installations-table-wrap{flex:1;position:relative;overflow:auto}.installations-table-wrap table{border-collapse:collapse;width:100%;min-width:980px}.installations-table-wrap th,.installations-table-wrap td{border-bottom:1px solid var(--border);text-align:left;color:var(--text);vertical-align:middle;padding:11px 12px;font-size:11px}.installations-table-wrap th{z-index:2;background:var(--card);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;font-size:11px;position:sticky;top:0}.installations-table-wrap tbody tr{cursor:pointer;transition:background .15s}.installations-table-wrap tbody tr:hover,.installations-table-wrap tbody tr.selected{background:var(--hover)}.installations-table-wrap td strong,.installations-table-wrap td span{display:block}.installations-table-wrap td>span{color:var(--text-secondary);margin-top:3px;font-size:9px}.installations-row-actions{gap:4px;display:flex}.installations-row-actions button,.installations-icon-btn{border:1px solid var(--border);background:var(--card);width:31px;height:31px;color:var(--text-secondary);cursor:pointer;border-radius:8px;place-items:center;padding:0;display:grid}.installations-row-actions button:hover:not(:disabled),.installations-icon-btn:hover:not(:disabled){border-color:color-mix(in srgb,var(--primary) 45%,var(--border));color:var(--primary)}.installations-row-actions button:disabled,.installations-icon-btn:disabled{opacity:.35;cursor:not-allowed}.installations-icon-btn.danger{color:#dc2626}.installations-status,.installations-priority{text-transform:uppercase;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;width:max-content;padding:4px 7px;font-weight:800;margin:0!important;font-size:8px!important;display:inline-flex!important}.installations-status.scheduled{color:#2563eb;background:#2563eb1f}.installations-status.in_progress{color:#ea580c;background:#ea580c1f}.installations-status.completed{color:#16a34a;background:#16a34a1f}.installations-status.cancelled{color:#64748b;background:#64748b24}.installations-status.failed{color:#dc2626;background:#dc26261f}.installations-priority.low{color:#64748b;background:#64748b1f}.installations-priority.normal{color:#2563eb;background:#2563eb1a}.installations-priority.high{color:#ea580c;background:#ea580c1f}.installations-priority.urgent{color:#dc2626;background:#dc26261f}.installations-empty,.installations-detail.empty,.installations-tab-empty{color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:7px;display:flex}.installations-empty{position:absolute;inset:50px 0 0}.installations-empty svg,.installations-detail.empty svg,.installations-tab-empty>svg{color:color-mix(in srgb,var(--text-secondary) 65%,transparent);font-size:38px}.installations-empty strong,.installations-detail.empty strong,.installations-tab-empty strong{color:var(--text);font-size:12px}.installations-empty span,.installations-detail.empty span,.installations-tab-empty span{font-size:10px}.installations-loading{color:var(--text-secondary);text-align:center;padding:20px;font-size:11px}.installations-loading.compact{border-bottom:1px solid var(--border);padding:8px}.installations-detail{flex-direction:column;min-height:560px;display:flex}.installations-detail.empty{padding:30px}.installations-detail-head{border-bottom:1px solid var(--border);justify-content:space-between;gap:10px;padding:16px 17px 13px;display:flex}.installations-detail-badges{align-items:center;gap:6px;display:flex}.installations-detail-head h2{color:var(--text);margin:9px 0 3px;font-size:17px}.installations-detail-head p{color:var(--text-secondary);margin:0;font-size:10px}.installations-operational-actions{border-bottom:1px solid var(--border);padding:10px 16px}.installations-operational-actions button{min-height:32px;font-size:10px}.installations-tabs{border-bottom:1px solid var(--border);grid-template-columns:repeat(4,1fr);display:grid}.installations-tabs button{border:0;border-right:1px solid var(--border);min-height:39px;color:var(--text-secondary);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:5px;font-size:11px;display:flex}.installations-tabs button:last-child{border-right:0}.installations-tabs button.active{background:color-mix(in srgb,var(--primary) 9%,transparent);color:var(--primary);font-weight:700}.installations-detail-body{flex:1;min-height:0;padding:0 16px 16px;overflow:auto}.installations-detail-section{border-bottom:1px solid var(--border);padding:14px 0}.installations-detail-section:last-child{border-bottom:0}.installations-detail-section h3{color:var(--text);margin:0 0 10px;font-size:11px}.installations-info{align-items:flex-start;gap:7px;margin:8px 0;display:flex}.installations-info>span{color:var(--primary);font-size:15px}.installations-info small,.installations-info strong{display:block}.installations-info small{color:var(--text-secondary);font-size:8px}.installations-info strong{color:var(--text);margin-top:2px;font-size:11px;line-height:1.35}.installations-text{margin:9px 0}.installations-text small{color:var(--text-secondary);font-size:8px}.installations-text p{color:var(--text);white-space:pre-wrap;margin:4px 0 0;font-size:11px;line-height:1.5}.installations-tab-toolbar{border-bottom:1px solid var(--border);color:var(--text-secondary);justify-content:space-between;align-items:center;gap:8px;padding:12px 0;font-size:9px;display:flex}.installations-tab-toolbar strong{color:var(--text);font-size:12px}.installations-tab-toolbar button{font-size:9px}.installations-check-item{border-bottom:1px solid var(--border);padding:10px 0}.installations-check-main{align-items:center;gap:8px;margin-bottom:8px;display:flex}.installations-check-state{color:#64748b;background:#64748b1a;border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.installations-check-state.passed{color:#16a34a;background:#16a34a1a}.installations-check-state.failed{color:#dc2626;background:#dc26261a}.installations-check-state.not_applicable{color:#2563eb;background:#2563eb1a}.installations-check-main strong,.installations-check-main small{display:block}.installations-check-main strong{color:var(--text);font-size:10px}.installations-check-main small{color:var(--text-secondary);margin-top:2px;font-size:8px}.installations-check-controls{grid-template-columns:120px 1fr auto;gap:6px;display:grid}.installations-check-controls select,.installations-check-controls input{border:1px solid var(--border);background:var(--background);height:32px;color:var(--text);border-radius:7px;outline:0;padding:0 8px;font-size:11px}.installations-check-controls button{font-size:9px}.installations-evidence-form{border-bottom:1px solid var(--border);grid-template-columns:1fr 1.15fr;gap:7px;padding:12px 0;display:grid}.installations-evidence-form input,.installations-evidence-form select{border:1px solid var(--border);background:var(--background);height:34px;color:var(--text);border-radius:8px;padding:0 8px;font-size:9px}.installations-evidence-form button{grid-column:1/-1;font-size:9px}.installations-evidence-list article{border-bottom:1px solid var(--border);grid-template-columns:34px 1fr auto;align-items:center;gap:8px;padding:10px 0;display:grid}.installations-evidence-list article>span{background:color-mix(in srgb,var(--primary) 10%,transparent);width:32px;height:32px;color:var(--primary);border-radius:9px;place-items:center;font-size:18px;display:grid}.installations-evidence-list strong,.installations-evidence-list small{display:block}.installations-evidence-list strong{color:var(--text);font-size:10px}.installations-evidence-list small{color:var(--text-secondary);margin-top:3px;font-size:8px}.installations-evidence-list article>div:last-child{gap:4px;display:flex}.installations-history{padding-top:8px}.installations-history article{border-bottom:1px solid var(--border);grid-template-columns:14px 1fr;gap:8px;padding:9px 0;display:grid}.installations-history-dot{background:#64748b;border-radius:50%;width:9px;height:9px;margin-top:3px}.installations-history-dot.scheduled{background:#2563eb}.installations-history-dot.in_progress{background:#ea580c}.installations-history-dot.completed{background:#16a34a}.installations-history-dot.failed{background:#dc2626}.installations-history-dot.cancelled{background:#64748b}.installations-history strong,.installations-history small{display:block}.installations-history strong{color:var(--text);font-size:10px}.installations-history small{color:var(--text-secondary);margin-top:3px;font-size:8px}.installations-history p{color:var(--text-secondary);margin:5px 0 0;font-size:11px;line-height:1.45}.installations-tab-empty{min-height:240px;padding:20px}.installations-drawer-layer,.installations-dialog-layer{z-index:1300;position:fixed;inset:0}.installations-drawer-backdrop,.installations-dialog-backdrop{background:#0f172a80;border:0;position:absolute;inset:0}.installations-drawer{background:var(--card);width:min(700px,100%);height:100%;position:absolute;top:0;right:0;overflow:auto;box-shadow:-14px 0 35px #0000002e}.installations-drawer header,.installations-transition-dialog header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:10px;padding:18px 20px;display:flex}.installations-drawer h2,.installations-transition-dialog h2{color:var(--text);margin:0;font-size:17px}.installations-drawer header p,.installations-transition-dialog header p{color:var(--text-secondary);margin:4px 0 0;font-size:11px;line-height:1.45}.installations-drawer form{padding:19px}.installations-drawer fieldset{border:0;margin:0 0 18px;padding:0}.installations-drawer legend{color:var(--text);margin-bottom:11px;font-size:11px;font-weight:700}.installations-form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.installations-drawer label,.installations-transition-content label{color:var(--text-secondary);flex-direction:column;gap:5px;font-size:9px;display:flex}.installations-drawer label.full,.installations-transition-content label.full{grid-column:1/-1}.installations-drawer input,.installations-drawer select,.installations-drawer textarea,.installations-transition-dialog input,.installations-transition-dialog select,.installations-transition-dialog textarea{box-sizing:border-box;border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);border-radius:9px;outline:0;font-size:10px}.installations-drawer input,.installations-drawer select,.installations-transition-dialog input,.installations-transition-dialog select{height:38px;padding:0 10px}.installations-drawer textarea,.installations-transition-dialog textarea{resize:vertical;padding:9px 10px}.installations-resource-loading{color:var(--primary);margin-top:8px;font-size:9px;display:block}.installations-drawer footer,.installations-transition-dialog footer{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding-top:15px;display:flex}.installations-transition-dialog{border:1px solid var(--border);background:var(--card);border-radius:15px;width:min(540px,100% - 28px);max-height:90vh;position:absolute;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 20px 60px #00000040}.installations-dialog-alert{color:#dc2626;background:#dc26261a;border:1px solid #dc262659;border-radius:10px;align-items:flex-start;gap:9px;margin:14px 20px 0;padding:11px 12px;font-size:11px;line-height:1.45;display:flex}.installations-dialog-alert>svg{flex:none;margin-top:1px;font-size:15px}.installations-dialog-alert>span{flex:1;min-width:0}.installations-dialog-alert>button{color:inherit;cursor:pointer;background:0 0;border:0;flex:none;padding:0;font-size:16px;line-height:1}.installations-drawer-alert{margin:14px 19px 0}.installations-transition-content{grid-template-columns:1fr 1fr;gap:10px;padding:18px 20px;display:grid}.installations-transition-content label.full,.installations-transition-content .installations-checkbox{grid-column:1/-1}.installations-transition-dialog footer{padding:13px 20px 18px}.installations-checkbox{border:1px solid var(--border);border-radius:9px;padding:8px 10px;color:var(--text)!important;flex-direction:row!important;align-items:center!important;gap:7px!important;display:flex!important}.installations-checkbox input{width:15px!important;height:15px!important}.installations-delete-dialog{box-sizing:border-box;border:1px solid var(--border);background:var(--card);text-align:center;border-radius:15px;width:min(420px,100% - 28px);padding:23px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.installations-delete-dialog>svg{color:#dc2626;font-size:40px}.installations-delete-dialog h2{color:var(--text);margin:12px 0 7px;font-size:17px}.installations-delete-dialog p{color:var(--text-secondary);margin:0;font-size:11px;line-height:1.55}.installations-delete-actions{justify-content:center;gap:8px;margin-top:18px;display:flex}.danger-btn{color:#dc2626;cursor:pointer;background:#dc26261a;border:1px solid #dc262659;border-radius:9px;justify-content:center;align-items:center;gap:5px;min-height:36px;padding:0 12px;font-weight:600;display:inline-flex}.danger-btn:disabled{opacity:.45;cursor:not-allowed}@media (width<=1450px){.installations-filters{grid-template-columns:minmax(230px,1.4fr) repeat(3,minmax(125px,.7fr)) repeat(2,minmax(155px,.85fr)) auto}.installations-filters select:nth-of-type(4){display:none}.installations-content{grid-template-columns:minmax(0,1.4fr) minmax(360px,.8fr)}}@media (width<=1150px){.installations-stats{grid-template-columns:repeat(3,1fr)}.installations-content{grid-template-columns:1fr}.installations-detail{min-height:520px}.installations-filters{grid-template-columns:1fr 1fr 1fr}.installations-filters select:nth-of-type(4){display:block}}@media (width<=760px){.installations-page{min-height:auto}.installations-header{flex-direction:column;align-items:flex-start}.installations-actions{width:100%}.installations-actions button{flex:1}.installations-stats{grid-template-columns:1fr 1fr}.installations-filters{grid-template-columns:1fr}.installations-content{min-height:0}.installations-table-card{min-height:480px}.installations-detail{min-height:0}.installations-tabs{grid-template-columns:1fr 1fr}.installations-tabs button:nth-child(2){border-right:0}.installations-tabs button:nth-child(-n+2){border-bottom:1px solid var(--border)}.installations-form-grid,.installations-transition-content{grid-template-columns:1fr}.installations-drawer label.full,.installations-transition-content label.full,.installations-transition-content .installations-checkbox{grid-column:auto}.installations-check-controls,.installations-evidence-form{grid-template-columns:1fr}.installations-evidence-form button{grid-column:auto}.installations-tab-toolbar{flex-direction:column;align-items:flex-start}}.installations-completion-blocker{border:1px solid color-mix(in srgb,var(--danger,#ef4444) 38%,transparent);background:color-mix(in srgb,var(--danger,#ef4444) 8%,transparent);color:var(--text-primary,#e5e7eb);border-radius:12px;align-items:center;gap:12px;margin:0 18px 14px;padding:12px 14px;display:flex}.installations-completion-blocker>svg{color:var(--danger,#ef4444);flex:none;font-size:20px}.installations-completion-blocker>div{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.installations-completion-blocker strong{font-size:13px}.installations-completion-blocker span{color:var(--text-secondary,#94a3b8);font-size:12px}.installations-completion-blocker .secondary-btn{white-space:nowrap;flex:none}@media (width<=720px){.installations-completion-blocker{flex-wrap:wrap;align-items:flex-start}.installations-completion-blocker>div{min-width:calc(100% - 36px)}.installations-completion-blocker .secondary-btn{margin-left:32px}}.installations-workflow-notice{border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));background:color-mix(in srgb,var(--primary) 7%,transparent);color:var(--text);border-radius:10px;align-items:flex-start;gap:9px;margin:0 18px 12px;padding:10px 11px;display:flex}.installations-workflow-notice>svg{color:var(--primary);flex:none;margin-top:1px;font-size:17px}.installations-workflow-notice>div{flex-direction:column;gap:2px;min-width:0;display:flex}.installations-workflow-notice strong{font-size:10px}.installations-workflow-notice span{color:var(--text-secondary);font-size:11px;line-height:1.45}.installations-removal-note{border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));background:color-mix(in srgb,var(--primary) 7%,transparent);color:var(--text);border-radius:9px;grid-column:1/-1;align-items:center;gap:8px;padding:10px;font-size:9px;display:flex}.installations-removal-note svg{color:var(--primary);font-size:17px}@media (width<=760px){.installations-actions{flex-wrap:wrap}.installations-actions button{min-width:calc(50% - 4px)}.installations-workflow-notice{margin:0 12px 10px}}.installations-detail-warning{color:#d97706;background:#d9770614;border:1px solid #d977064d;border-radius:9px;align-items:flex-start;gap:8px;margin:12px 0 0;padding:10px 11px;font-size:11px;line-height:1.45;display:flex}.installations-detail-warning>svg{flex:none;margin-top:1px;font-size:15px}.installations-detail-warning>span{flex:1;min-width:0}.installations-detail-warning>button{color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:4px;padding:0;font-size:11px;font-weight:700;display:inline-flex}.installations-delete-alert{text-align:left;margin:14px 0 0}@media (width<=760px){.installations-detail-warning{flex-wrap:wrap}.installations-detail-warning>button{margin-left:23px}}.installations-operational-actions button>svg{width:16px!important;min-width:16px!important;height:16px!important;min-height:16px!important;font-size:16px!important}.live-monitoring-page{background:var(--background);width:100%;height:100vh;display:flex;overflow:hidden}.live-monitoring-content{flex-direction:column;flex:1;display:flex;overflow:hidden}.live-monitoring-header{justify-content:space-between;align-items:center;min-height:58px;padding:14px 18px;display:flex}.live-monitoring-header h1{color:var(--text);margin:0;font-size:24px;font-weight:700}.live-monitoring-header p{color:var(--text-secondary);margin-top:4px;font-size:13px}.live-monitoring-layout{flex-direction:column;flex:1;gap:12px;padding:0 18px 18px;display:flex;overflow:hidden}.live-monitoring-content-grid{flex:1;grid-template-columns:minmax(0,1fr) 340px;gap:14px;min-height:0;display:grid}.live-monitoring-map-panel,.live-monitoring-events-panel{background:var(--card);border:1px solid var(--border);border-radius:16px;min-height:0;overflow:hidden}.live-monitoring-summary{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:16px}.live-monitoring-summary h3{margin:0 0 12px;font-size:15px}.live-monitoring-cards{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.live-monitoring-card{border:1px solid var(--border);background:#ffffff08;border-radius:12px;padding:14px}.live-monitoring-card span{color:var(--text-secondary);font-size:12px;display:block}.live-monitoring-card strong{color:var(--text);margin-top:6px;font-size:20px;font-weight:700;display:block}.live-monitoring-bottom-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=1400px){.live-monitoring-content-grid{grid-template-columns:1fr}.live-monitoring-events-panel{height:300px}}@media (width<=1200px){.live-monitoring-bottom-grid{grid-template-columns:1fr}}@media (width<=768px){.live-monitoring-content{min-width:0}.live-monitoring-header{padding:12px}.live-monitoring-header h1{font-size:20px}.live-monitoring-layout{padding:0 12px 12px}.live-monitoring-content-grid{gap:var(--space-2)}.live-monitoring-events-panel{height:min(52dvh,360px)}.live-monitoring-cards{grid-template-columns:repeat(2,1fr)}}.live-workspace{grid-template-rows:auto auto 1fr 280px;gap:10px;height:calc(100vh - 64px);padding:20px;display:grid;overflow:hidden}.live-workspace-map{background:var(--card);border:1px solid var(--border);border-radius:14px;min-height:0;position:relative;overflow:hidden}.live-workspace-bottom{background:var(--card);border:1px solid var(--border);border-radius:14px;min-height:0;overflow:hidden}@media (width<=1600px){.live-workspace{grid-template-rows:auto auto 1fr 320px}}@media (width<=1366px){.live-workspace{grid-template-rows:auto auto 1fr 240px;gap:8px}}@media (width<=1200px){.live-workspace{grid-template-rows:auto auto 52vh 260px}}@media (width<=768px){.live-workspace{grid-template-rows:auto auto 45vh 280px;gap:6px;padding:6px}}.live-workspace-convoy{z-index:200;background:var(--card);border:1px solid var(--border);border-radius:14px;flex-direction:column;width:430px;max-height:calc(100% - 40px);display:flex;position:absolute;top:20px;right:20px;overflow:hidden;box-shadow:0 16px 40px #00000038}@media (width<=1600px){.live-workspace-convoy{width:400px}}@media (width<=1366px){.live-workspace-convoy{width:360px}}@media (width<=1200px){.live-workspace-convoy{width:330px;top:12px;right:12px}}@media (width<=768px){.live-workspace-convoy{display:none}}.live-toolbar{background:var(--card);border:1px solid var(--border);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.live-toolbar-left{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.live-toolbar-right{align-items:center;gap:8px;display:flex}.toolbar-status{color:var(--text-primary);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.status-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.status-dot.online{background:#22c55e;box-shadow:0 0 6px #22c55e73}.toolbar-info{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.toolbar-info svg{font-size:14px}.toolbarlv-btn{cursor:pointer;background:var(--background-secondary);height:34px;color:var(--text-primary);border:none;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.toolbarlv-btn svg{font-size:15px}.toolbarlv-btn:hover{transform:translateY(-1px)}.toolbarlv-btn.primary{background:var(--primary);color:#fff}.toolbarlv-btn.danger{color:#fff;background:#ef4444}@media (width<=1366px){.live-toolbar{gap:10px;padding:6px 10px}.live-toolbar-left{gap:10px}.toolbar-status,.toolbar-info{font-size:11px}.toolbar-info svg{font-size:13px}.toolbarlv-btn{height:32px;padding:0 12px;font-size:11px}.toolbarlv-btn svg{font-size:14px}}@media (width<=900px){.live-toolbar{flex-direction:column;align-items:flex-start}.live-toolbar-right{justify-content:flex-end;width:100%}}@media (width<=640px){.live-toolbar-right{width:100%}.toolbarlv-btn{flex:1}}.live-toolbar-warning{color:#f59e0b;background:#f59e0b14;border:1px solid #f59e0b47;border-radius:8px;align-items:center;min-width:220px;max-width:520px;padding:6px 10px;font-size:11px;font-weight:600;line-height:1.35;display:flex}@media (width<=900px){.live-toolbar-warning{width:100%;max-width:none}}.operation-bar{background:var(--card);border:1px solid var(--border);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.operation-group{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.operation-device{min-width:240px}.operation-divider{background:var(--border);align-self:stretch;width:1px}.operation-btn{border:1px solid var(--border);background:var(--background-secondary);height:34px;color:var(--text-primary);cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.operation-btn svg{flex-shrink:0;font-size:15px}.operation-btn:hover{border-color:var(--primary);background:#2563eb14}.operation-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}@media (width<=1366px){.operation-bar{gap:10px;padding:6px 10px}.operation-group{gap:5px}.operation-device{min-width:210px}.operation-btn{height:32px;padding:0 10px;font-size:11px}.operation-btn svg{font-size:14px}}@media (width<=1100px){.operation-bar{flex-direction:column;align-items:flex-start}.operation-divider{display:none}.operation-group{width:100%}}@media (width<=768px){.operation-group{justify-content:flex-start;width:100%}.operation-device{width:100%;min-width:0}}.device-selector{position:relative}.device-selector-button{height:var(--control-height);border:1px solid var(--border);background:var(--card);color:var(--text-primary);cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:0 16px;font-size:12px;font-weight:600;transition:all .2s;display:flex}.device-selector-button:hover{border-color:var(--primary)}.device-selector-popup{top:calc(var(--control-height) + 8px);background:var(--card);border:1px solid var(--border);z-index:1000;border-radius:14px;flex-direction:column;width:390px;max-height:500px;display:flex;position:absolute;left:0;overflow:hidden;box-shadow:0 18px 45px #00000059}@media (width<=600px){.device-selector,.device-selector-button{width:100%}.device-selector-popup{width:min(390px,100vw - 32px);max-height:min(500px,65dvh)}}.device-selector-search{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 16px;display:flex}.device-selector-search svg{color:var(--text-secondary);font-size:18px}.device-selector-search input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:14px}.device-selector-list{max-height:430px;overflow:auto}.device-selector-item{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;flex-direction:column;gap:8px;padding:14px 18px;transition:all .2s;display:flex}.device-selector-item:hover{background:var(--hover)}.device-selector-item+.device-selector-item{border-top:1px solid var(--border)}.device-selector-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.device-selector-title{align-items:center;gap:10px;display:flex}.device-selector-car{color:var(--primary);font-size:17px}.device-selector-title strong{font-size:13px;font-weight:700}.device-selector-badge{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:700;display:flex}.device-selector-speed{color:var(--text-primary);margin-left:27px;font-size:13px;font-weight:600}.device-selector-imei{color:var(--text-secondary);margin-left:27px;font-size:12px}.device-selector-empty{text-align:center;color:var(--text-secondary);padding:40px}.convoy-dialog-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:5000;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.convoy-dialog{background:var(--card);border:1px solid var(--border);border-radius:14px;flex-direction:column;width:500px;max-width:92vw;max-height:82vh;display:flex;overflow:hidden;box-shadow:0 16px 40px #00000047}.convoy-dialog-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:14px 16px;display:flex}.convoy-dialog-header h3{color:var(--text-primary);margin:0;font-size:14px;font-weight:700}.convoy-dialog-header span{color:var(--text-secondary);margin-top:2px;font-size:11px;display:block}.convoy-dialog-close{width:34px;height:34px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:flex}.convoy-dialog-close:hover{color:var(--text-primary);background:#ffffff0d}.convoy-dialog-search{border-bottom:1px solid var(--border);align-items:center;gap:8px;height:46px;padding:0 14px;display:flex}.convoy-dialog-search svg{color:var(--text-secondary);font-size:16px}.convoy-dialog-search input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:12px}.convoy-dialog-list{flex:1;min-height:0;padding:6px;overflow-y:auto}.convoy-dialog-list::-webkit-scrollbar{width:5px}.convoy-dialog-list::-webkit-scrollbar-thumb{background:#94a3b847;border-radius:999px}.convoy-dialog-list::-webkit-scrollbar-thumb:hover{background:#94a3b873}.convoy-dialog-empty{height:180px;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:12px;display:flex}.convoy-dialog-empty svg{opacity:.55;font-size:32px}.convoy-dialog-footer{border-top:1px solid var(--border);background:var(--background);justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.convoy-dialog-count{color:var(--text-primary);font-size:12px;font-weight:600}.convoy-dialog-actions{gap:8px;display:flex}.convoy-dialog-actions button{cursor:pointer;border:none;border-radius:8px;min-width:100px;height:34px;padding:0 14px;font-size:12px;font-weight:600;transition:all .15s}.btn-secondary{background:var(--hover);color:var(--text-primary)}.btn-secondary:hover{filter:brightness(.96)}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{filter:brightness(1.05)}@media (width<=768px){.convoy-dialog{width:96vw;max-height:92vh}.convoy-dialog-footer{flex-direction:column;align-items:stretch}.convoy-dialog-actions{width:100%}.convoy-dialog-actions button{flex:1}}.convoy-vehicle-item{cursor:pointer;border-radius:8px;grid-template-columns:25px 25px 1fr 100px 60px;align-items:center;gap:10px;min-height:42px;padding:7px 10px;transition:all .15s;display:grid}.convoy-vehicle-item:hover{background:#2563eb0a}.convoy-vehicle-item.selected{background:rgba(var(--primary-rgb),.08)}.convoy-vehicle-check{color:var(--primary);justify-content:center;align-items:center;font-size:18px;display:flex}.convoy-vehicle-icon{width:28px;height:28px;color:var(--primary);background:#2563eb1f;border-radius:8px;justify-content:center;align-items:center;font-size:15px;display:flex}.convoy-vehicle-info{flex-direction:column;min-width:0;display:flex}.convoy-vehicle-info strong{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.convoy-vehicle-info small{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11px;overflow:hidden}.convoy-vehicle-status{justify-content:center;display:flex}.convoy-vehicle-status .status{text-align:center;text-transform:uppercase;border-radius:999px;min-width:72px;padding:2px 8px;font-size:11px;font-weight:600}.convoy-vehicle-status .online{color:#15803d;background:#dcfce7}.convoy-vehicle-status .offline{color:#b91c1c;background:#fee2e2}.convoy-vehicle-status .idle{color:#b45309;background:#fef3c7}.convoy-vehicle-speed{text-align:right;color:var(--text-primary);white-space:nowrap;font-size:12px;font-weight:600}@media (width<=768px){.convoy-vehicle-item{grid-template-columns:26px 28px 1fr;gap:8px}.convoy-vehicle-status,.convoy-vehicle-speed{display:none}}.vehicle-info{color:#f8fafc;width:290px;padding:10px;font-family:inherit}.vehicle-info-header{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.vehicle-info-header h3{color:#fff;margin:0;font-size:16px;font-weight:700}.vehicle-info-header span{color:#94a3b8;margin-top:4px;font-size:12px;display:block}.vehicle-info-status{align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.status-dot{border-radius:50%;width:8px;height:8px}.vehicle-info-status.moving{color:#22c55e}.vehicle-info-status.moving .status-dot{background:#22c55e}.vehicle-info-status.stopped{color:#ef4444}.vehicle-info-status.stopped .status-dot{background:#ef4444}.vehicle-info-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.vehicle-info-metric{background:#0f172a;border-radius:10px;align-items:center;gap:10px;padding:10px;display:flex}.vehicle-info-icon{color:#3b82f6;background:#3b82f61f;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;font-size:18px;display:flex}.vehicle-info-metric small{color:#94a3b8;margin-bottom:2px;font-size:11px;display:block}.vehicle-info-metric strong{color:#fff;font-size:13px;font-weight:700}.vehicle-info-footer{color:#94a3b8;border-top:1px solid #94a3b826;align-items:center;gap:8px;margin-top:14px;padding-top:12px;font-size:11px;display:flex}.vehicle-info-footer svg{color:#3b82f6;font-size:16px}.bottom-panel{background:var(--card);border:1px solid var(--border);border-radius:14px;flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.bottom-panel-tabs{background:var(--background);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:4px;padding:6px;display:flex;overflow-x:auto}.bottom-panel-tabs::-webkit-scrollbar{height:4px}.bottom-panel-tabs::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:999px}.bottom-tab{height:34px;color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.bottom-tab svg{font-size:16px}.bottom-tab:hover:not(.active){background:#ffffff0d}.bottom-tab.active{background:var(--primary);color:#fff}.bottom-tab small{color:#ef4444;background:#ef444426;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:11px;font-weight:700;display:flex}.bottom-panel-content{flex-direction:column;flex:1;min-height:0;padding:12px;display:flex;overflow:auto}.bottom-panel-content>*{flex:1;min-height:0}.bottom-panel-empty{color:var(--text-secondary);flex:1;justify-content:center;align-items:center;font-size:12px;display:flex}@media (width<=1366px){.bottom-panel{border-radius:12px}.bottom-panel-tabs{padding:5px}.bottom-tab{height:32px;padding:0 10px;font-size:11px}.bottom-tab svg{font-size:14px}}.live-summary{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.live-summary-card{background:var(--card);border:1px solid var(--border);text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:90px;padding:12px;transition:all .15s;display:flex}.live-summary-card:hover{border-color:var(--primary);background:#2563eb08;transform:translateY(-1px)}.live-summary-icon{width:40px;height:40px;color:var(--primary);background:#2563eb1f;border-radius:10px;justify-content:center;align-items:center;font-size:32px;display:flex}.live-summary-icon svg{width:32px;min-width:32px;height:32px;min-height:32px;font-size:32px}.live-summary-title{color:var(--text-secondary);font-size:11px;font-weight:500;line-height:1.2}.live-summary-value{color:var(--text-primary);white-space:nowrap;margin:0;font-size:18px;font-weight:700;line-height:1}@media (width<=1600px){.live-summary{grid-template-columns:repeat(6,1fr)}}@media (width<=1366px){.live-summary{gap:6px}.live-summary-card{min-height:82px;padding:10px}.live-summary-icon{width:40px;height:40px;font-size:32px}.live-summary-icon svg{width:32px;min-width:32px;height:32px;min-height:32px;font-size:32px}.live-summary-title{font-size:11px}.live-summary-value{font-size:16px}}@media (width<=992px){.live-summary{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.live-summary{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.live-summary{grid-template-columns:1fr}}.timeline-container{flex-direction:column;gap:6px;height:100%;padding:2px;display:flex;overflow-y:auto}.timeline-container::-webkit-scrollbar{width:5px}.timeline-container::-webkit-scrollbar-track{background:0 0}.timeline-container::-webkit-scrollbar-thumb{background:#94a3b847;border-radius:999px}.timeline-container::-webkit-scrollbar-thumb:hover{background:#94a3b873}.timeline-row{border:1px solid var(--border);background:var(--card);cursor:pointer;border-radius:8px;align-items:center;gap:10px;min-height:48px;padding:8px 10px;transition:all .15s;display:flex}.timeline-row:hover{border-color:var(--primary);background:#2563eb0a}.timeline-row.selected{border-color:var(--primary);background:#2563eb14}.timeline-icon{width:30px;min-width:30px;height:30px;color:var(--primary);background:#2563eb1f;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex}.timeline-info{flex:1;min-width:0}.timeline-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.timeline-description{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11px;overflow:hidden}.timeline-time{white-space:nowrap;color:var(--text-secondary);margin-left:auto;font-size:11px}.timeline-empty{text-align:center;color:var(--text-secondary);flex:1;justify-content:center;align-items:center;padding:16px;font-size:12px;display:flex}@media (width<=1366px){.timeline-container{gap:5px}.timeline-row{min-height:44px;padding:7px 8px}.timeline-icon{width:28px;min-width:28px;height:28px;font-size:14px}.timeline-title,.timeline-description,.timeline-time{font-size:11px}}.live-events{flex-direction:column;gap:10px;height:100%;display:flex;overflow:auto}.live-event-card{border:1px solid var(--border);cursor:pointer;background:var(--card);border-radius:10px;align-items:center;gap:14px;padding:12px;display:flex}.live-event-card:hover{border-color:var(--primary)}.live-event-card.selected{border-color:var(--primary);background:#2563eb14}.live-event-icon{color:var(--primary);font-size:22px}.live-event-content{flex-direction:column;flex:1;gap:4px;display:flex}.live-event-content strong{color:var(--text-primary);font-size:14px}.live-event-content span{color:var(--text-secondary);font-size:13px}.live-event-time{color:var(--text-secondary);font-size:12px}.live-events-empty{height:100%;color:var(--text-secondary);justify-content:center;align-items:center;display:flex}.live-stops{flex-direction:column;gap:6px;height:100%;padding:2px;display:flex;overflow:auto}.live-stops::-webkit-scrollbar{width:5px}.live-stops::-webkit-scrollbar-thumb{background:#94a3b847;border-radius:999px}.live-stops::-webkit-scrollbar-thumb:hover{background:#94a3b873}.live-stop-card{border:1px solid var(--border);background:var(--card);cursor:pointer;border-radius:8px;align-items:center;gap:10px;min-height:50px;padding:8px 10px;transition:all .15s;display:flex}.live-stop-card:hover{border-color:var(--primary);background:#2563eb0a}.live-stop-card.selected{border-color:var(--primary);background:#2563eb14}.live-stop-icon{color:#f59e0b;background:#f59e0b1f;border-radius:8px;justify-content:center;align-items:center;width:28px;min-width:28px;height:28px;font-size:16px;display:flex}.live-stop-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.live-stop-content strong{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.live-stop-content span{color:var(--text-secondary);font-size:11px}.live-stop-info{color:var(--text-secondary);flex-direction:column;gap:3px;font-size:11px;display:flex}.live-stop-info div{align-items:center;gap:5px;display:flex}.live-stops-empty{text-align:center;color:var(--text-secondary);flex:1;justify-content:center;align-items:center;padding:16px;font-size:12px;display:flex}@media (width<=1366px){.live-stops{gap:5px}.live-stop-card{min-height:46px;padding:7px 8px}.live-stop-icon{width:26px;min-width:26px;height:26px;font-size:14px}.live-stop-content strong,.live-stop-content span,.live-stop-info{font-size:11px}}.route-container{height:100%;overflow:auto}.route-container::-webkit-scrollbar{width:5px;height:5px}.route-container::-webkit-scrollbar-thumb{background:#94a3b847;border-radius:999px}.route-container::-webkit-scrollbar-thumb:hover{background:#94a3b873}.route-table{border-collapse:collapse;width:100%;font-size:12px}.route-table thead{z-index:2;background:var(--card);position:sticky;top:0}.route-table th{text-align:left;height:36px;color:var(--text-secondary);border-bottom:1px solid var(--border);white-space:nowrap;padding:0 10px;font-size:11px;font-weight:600}.route-table td{height:34px;color:var(--text);border-bottom:1px solid var(--border);vertical-align:middle;padding:6px 10px;font-size:12px}.route-table tbody tr{cursor:pointer;transition:all .15s}.route-table tbody tr:hover{background:#2563eb0d}.route-table tbody tr.selected{box-shadow:inset 3px 0 0 var(--primary);background:#3b82f61f}.route-table tbody tr.selected td{color:var(--primary);font-weight:600}.route-address{white-space:nowrap;text-overflow:ellipsis;max-width:420px;overflow:hidden}.route-empty{height:100%;color:var(--text-secondary);text-align:center;justify-content:center;align-items:center;padding:20px;font-size:12px;display:flex}@media (width<=1366px){.route-table{font-size:11px}.route-table th{height:32px;padding:0 8px;font-size:11px}.route-table td{height:30px;padding:5px 8px;font-size:11px}.route-address{max-width:300px}}.playback-bar{border-top:1px solid var(--border);background:var(--card);flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;display:flex}.playback-controls{align-items:center;gap:6px;display:flex}.playback-btn{cursor:pointer;background:var(--background-secondary);width:34px;height:34px;color:var(--text-primary);border:none;border-radius:8px;justify-content:center;align-items:center;font-size:14px;transition:all .15s;display:flex}.playback-btn:hover{transform:translateY(-1px)}.playback-btn.primary{background:var(--primary);color:#fff}.playback-btn.warning{color:#fff;background:#f59e0b}.playback-btn.danger{color:#fff;background:#ef4444}.playback-progress{flex:1;min-width:180px}.playback-progress input{cursor:pointer;width:100%;height:4px}.playback-speed{align-items:center;gap:4px;display:flex}.playback-speed button{cursor:pointer;background:var(--background-secondary);min-width:38px;height:28px;color:var(--text-primary);border:none;border-radius:6px;padding:0 8px;font-size:11px;font-weight:600;transition:all .15s}.playback-speed button:hover{background:#2563eb14}.playback-speed button.active{background:var(--primary);color:#fff}.playback-info{text-align:right;min-width:80px;color:var(--text-secondary);white-space:nowrap;font-size:11px;font-weight:600}@media (width<=1366px){.playback-bar{gap:8px;padding:6px 10px}.playback-btn{width:32px;height:32px;font-size:13px}.playback-speed button{min-width:34px;height:26px;font-size:11px}.playback-info{min-width:70px;font-size:11px}}@media (width<=768px){.playback-bar{justify-content:center}.playback-progress{order:3;width:100%;min-width:100%}}.convoy-panel{background:0 0;flex-direction:column;width:100%;height:100%;min-height:0;display:flex;overflow:hidden}.convoy-panel-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.convoy-panel-title{flex-direction:column;gap:4px;display:flex}.convoy-panel-title h3{color:var(--text);margin:0;font-size:18px;font-weight:700}.convoy-panel-title span{color:var(--text-secondary);font-size:12px}.convoy-panel-content{flex-direction:column;flex:1;gap:18px;min-height:0;padding:18px;display:flex;overflow:hidden auto}.convoy-panel-content::-webkit-scrollbar{width:8px}.convoy-panel-content::-webkit-scrollbar-thumb{background:#78787859;border-radius:20px}.convoy-panel-content::-webkit-scrollbar-track{background:0 0}@media (width<=1366px){.convoy-panel-content{gap:14px;padding:14px}}.convoy-settings{border:1px solid var(--border);background:var(--card);border-radius:14px;flex-direction:column;gap:20px;padding:18px;display:flex}.convoy-settings-header{justify-content:space-between;align-items:center;display:flex}.convoy-settings-header h3{margin:0;font-size:16px;font-weight:700}.convoy-settings-header span{color:var(--text-secondary);margin-top:4px;font-size:12px;display:block}.convoy-settings-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.convoy-setting{flex-direction:column;gap:8px;display:flex}.convoy-setting label{color:var(--text-secondary);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.convoy-setting label svg{color:var(--primary)}.convoy-setting-input{align-items:center;gap:10px;display:flex}.convoy-setting-input input{border:1px solid var(--border);background:var(--background);height:42px;color:var(--text-primary);border-radius:10px;outline:none;flex:1;padding:0 14px;font-size:15px;font-weight:600;transition:all .2s}.convoy-setting-input input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.convoy-setting-input span{color:var(--text-secondary);font-size:13px;font-weight:700}.convoy-rules{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.convoy-rule{border:1px solid var(--border);border-radius:12px;align-items:center;gap:12px;padding:14px;display:flex}.convoy-rule svg{flex-shrink:0;font-size:24px}.convoy-rule strong{font-size:13px;display:block}.convoy-rule small{color:var(--text-secondary);font-size:12px}.convoy-rule.success{background:#22c55e14}.convoy-rule.success svg{color:#22c55e}.convoy-rule.warning{background:#f59e0b14}.convoy-rule.warning svg{color:#f59e0b}.convoy-rule.danger{background:#ef444414}.convoy-rule.danger svg{color:#ef4444}@media (width<=1100px){.convoy-settings-grid,.convoy-rules{grid-template-columns:1fr}}.convoy-summary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.convoy-summary-card{border:1px solid var(--border);background:#ffffff05;border-radius:12px;align-items:center;gap:14px;padding:14px 16px;transition:all .2s;display:flex}.convoy-summary-card:hover{border-color:#2563eb73;transform:translateY(-1px)}.convoy-summary-icon{width:46px;height:46px;color:var(--primary);background:#2563eb1f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;display:flex}.convoy-summary-content{flex-direction:column;gap:4px;display:flex}.convoy-summary-content span{color:var(--text-secondary);font-size:12px}.convoy-summary-content strong{font-size:20px;font-weight:700;line-height:1}@media (width<=1366px){.convoy-summary{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.convoy-summary-content strong{font-size:24px}}.convoy-alerts{flex-direction:column;gap:14px;display:flex}.convoy-alert-title{font-size:14px;font-weight:700}.convoy-alert-list{flex-wrap:wrap;gap:12px;display:flex}.convoy-chip{border-radius:999px;align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:600;display:flex}.convoy-chip svg{font-size:18px}.convoy-chip strong{font-size:14px}.convoy-chip.success{color:#22c55e;background:#22c55e1f}.convoy-chip.warning{color:#f59e0b;background:#f59e0b1f}.convoy-chip.danger{color:#ef4444;background:#ef44441f}.convoy-table{border:1px solid var(--border);background:var(--card);border-radius:14px;flex-direction:column;display:flex}.convoy-table-header{background:var(--background);border-bottom:1px solid var(--border);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;grid-template-columns:minmax(260px,2fr) 190px 120px 120px 140px;align-items:center;gap:16px;padding:14px 18px;font-size:12px;font-weight:700;display:grid}.convoy-row{width:100%;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #ffffff0a;grid-template-columns:minmax(260px,2fr) 190px 120px 120px 140px;align-items:center;gap:16px;padding:14px 18px;transition:all .18s;display:grid}.convoy-row:last-child{border-bottom:none}.convoy-row:hover{background:#3b82f614}.convoy-row.selected{box-shadow:inset 3px 0 0 var(--primary);background:#3b82f61f}.convoy-name{align-items:center;gap:14px;display:flex}.convoy-color{border-radius:50%;flex-shrink:0;width:12px;height:12px}.convoy-name strong{font-size:14px;font-weight:700;display:block}.convoy-name small{color:var(--text-secondary);align-items:center;gap:6px;margin-top:2px;font-size:12px;display:flex}.convoy-name small svg{color:#22c55e}.status{border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-flex}.status.success{color:#22c55e;background:#22c55e1f}.status.warning{color:#f59e0b;background:#f59e0b1f}.status.danger{color:#ef4444;background:#ef44441f}.convoy-row>div{font-size:13px;font-weight:500}.convoy-row>div:nth-child(3),.convoy-row>div:nth-child(4),.convoy-row>div:nth-child(5){font-variant-numeric:tabular-nums}@media (width<=1366px){.convoy-table-header,.convoy-row{grid-template-columns:minmax(220px,2fr) 170px 100px 100px 120px;gap:12px;padding:12px 14px}}@media (width<=1100px){.convoy-table-header{display:none}.convoy-row{flex-direction:column;align-items:flex-start;gap:10px;display:flex}}.login-page{background:radial-gradient(circle at 14% 18%,#2563eb2b,#0000 32%),linear-gradient(135deg,#08111f,#172337);place-items:center;min-height:100vh;padding:clamp(14px,2vw,28px);display:grid;overflow:auto}.login-shell{background:var(--card);border:1px solid #94a3b82e;border-radius:34px;grid-template-columns:minmax(470px,.92fr) minmax(520px,1.08fr);width:min(1480px,100%);min-height:min(900px,100vh - 56px);display:grid;overflow:hidden;box-shadow:0 28px 80px #02081761}.login-visual{isolation:isolate;color:#fff;background:#020b1d url(/assets/login-bg-Df4GXO8w.png) 50%/cover no-repeat;min-height:720px;padding:58px 64px;position:relative;overflow:hidden}.login-visual:after{content:"";z-index:-1;border:1px solid #3b82f629;border-radius:50%;width:720px;height:720px;position:absolute;inset:auto -18% -28% 12%;box-shadow:0 0 90px #2563eb1f}.login-visual-overlay{z-index:-2;background:linear-gradient(#0208178a,#020817cc),linear-gradient(90deg,#0208178c,#0000);position:absolute;inset:0}.login-brand{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.login-brand img{filter:drop-shadow(0 8px 18px #00000040);width:min(285px,72%);height:auto}.login-brand span{letter-spacing:.08em;color:#cbd5e1;font-size:13px}.login-visual-content{position:absolute;top:50%;left:64px;right:64px;transform:translateY(-43%)}.login-eyebrow{letter-spacing:.18em;color:#38bdf8;margin:0 0 16px;font-size:12px;font-weight:800}.login-visual h1{letter-spacing:-.045em;max-width:560px;margin:60px 0 0;font-size:clamp(42px,4.2vw,68px);line-height:1.03}.login-visual h1 strong{color:#38bdf8;font-weight:800}.login-visual-content>p:not(.login-eyebrow){color:#d8e3f1;max-width:570px;margin:28px 0 0;font-size:17px;line-height:1.75}.login-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:570px;margin-top:44px;display:grid}.login-feature{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#041431ad;border:1px solid #60a5fa2e;border-radius:17px;align-items:center;gap:14px;min-height:78px;padding:16px 18px;display:flex;box-shadow:inset 0 1px #ffffff0a}.login-feature:last-child{grid-column:1/-1;justify-self:center;width:calc(50% - 7px)}.login-feature>svg{box-sizing:content-box;color:#60a5fa;background:#2563eb2e;border-radius:12px;flex:none;width:26px;height:26px;padding:8px}.login-feature span{color:#bfdbfe;flex-direction:column;gap:3px;font-size:12px;display:flex}.login-feature strong{color:#fff;font-size:14px}.login-visual-footer{color:#a5b4c8;align-items:center;gap:10px;font-size:12px;display:flex;position:absolute;bottom:42px;left:64px}.login-status-dot{background:#22c55e;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #22c55e1f}.login-access{background:radial-gradient(circle at 86% 10%, #2563eb14, transparent 25%), var(--card);flex-direction:column;justify-content:center;align-items:center;min-height:720px;padding:84px 60px 40px;display:flex;position:relative}.login-theme-toggle{border:1px solid var(--border);background:var(--card);height:42px;color:var(--text-secondary);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:9px;padding:0 17px;font-size:13px;transition:all .2s;display:flex;position:absolute;top:38px;right:38px;box-shadow:0 6px 22px #0f172a0f}.login-theme-toggle:hover{color:var(--primary);border-color:#2563eb59;transform:translateY(-1px)}.login-theme-toggle svg{font-size:18px}.login-card{width:min(560px,100%)}.login-lock{color:#2563eb;background:#2563eb12;border:1px solid #2563eb47;border-radius:20px;place-items:center;width:72px;height:72px;margin:0 auto 24px;display:grid;box-shadow:0 12px 30px #2563eb1a}.login-lock svg{font-size:34px}.login-header{text-align:center}.login-header h2{color:var(--text);letter-spacing:-.03em;margin:0;font-size:36px;line-height:1.15}.login-header p{max-width:470px;color:var(--text-secondary);margin:12px auto 38px;font-size:15px;line-height:1.6}.login-form{flex-direction:column;gap:20px;display:flex}.login-field{flex-direction:column;gap:9px;display:flex}.login-field label{color:var(--text);font-size:13px;font-weight:700}.login-input-wrap{position:relative}.login-input-wrap>svg{z-index:1;color:#64748b;pointer-events:none;font-size:21px;position:absolute;top:50%;left:17px;transform:translateY(-50%)}.login-input-wrap input{border:1px solid var(--border);background:var(--card);width:100%;height:58px;color:var(--text);font:inherit;border-radius:13px;outline:none;padding:0 52px;font-size:14px;transition:border-color .2s,box-shadow .2s,background .2s}.login-input-wrap input::placeholder{color:#94a3b8}.login-input-wrap input:hover{border-color:#2563eb57}.login-input-wrap input:focus{border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61c}.login-input-wrap input:disabled{opacity:.65;cursor:not-allowed}.login-password-toggle{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;width:40px;height:40px;display:grid;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.login-password-toggle:hover{color:#2563eb;background:#2563eb12}.login-password-toggle svg{font-size:21px}.login-options{justify-content:space-between;align-items:center;gap:16px;margin-top:-2px;font-size:13px;display:flex}.login-checkbox{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;display:flex}.login-checkbox input{opacity:0;pointer-events:none;position:absolute}.login-checkbox span{border:1px solid var(--border);background:var(--card);border-radius:5px;place-items:center;width:18px;height:18px;display:grid}.login-checkbox input:checked+span{background:#2563eb;border-color:#2563eb}.login-checkbox input:checked+span:after{content:"";border-bottom:2px solid #fff;border-left:2px solid #fff;width:8px;height:4px;transform:translateY(-1px)rotate(-45deg)}.login-help{color:#2563eb;font-weight:600}.login-error{color:#dc2626;background:#dc262614;border:1px solid #dc262647;border-radius:11px;padding:12px 14px;font-size:13px;line-height:1.45}.login-button{color:#fff;width:100%;height:58px;font:inherit;cursor:pointer;background:linear-gradient(135deg,#1463ec,#3285f5);border:0;border-radius:13px;justify-content:center;align-items:center;gap:10px;margin-top:4px;font-size:15px;font-weight:800;transition:all .2s;display:flex;box-shadow:0 12px 26px #2563eb3d}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 32px #2563eb52}.login-button:disabled{opacity:.72;cursor:not-allowed}.login-button svg{font-size:20px}.login-spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:19px;height:19px;animation:.75s linear infinite login-spin}.login-footer{color:var(--text-secondary);text-align:center;font-size:12px;position:absolute;bottom:33px}@keyframes login-spin{to{transform:rotate(360deg)}}@media (width<=1120px){.login-shell{grid-template-columns:minmax(410px,.85fr) minmax(470px,1.15fr)}.login-visual{padding:48px}.login-visual-content{left:48px;right:48px}.login-visual-footer{left:48px}.login-access{padding-inline:46px}}@media (width<=900px){.login-page{background:var(--card);padding:0}.login-shell{border:0;border-radius:0;grid-template-columns:1fr;min-height:100vh}.login-visual{display:none}.login-access{min-height:100vh;padding:88px 28px 64px}.login-theme-toggle{top:24px;right:24px}.login-footer{margin-top:48px;position:static}}@media (width<=520px){.login-access{padding-inline:20px}.login-theme-toggle span{display:none}.login-theme-toggle{justify-content:center;width:42px;padding:0}.login-header h2{font-size:30px}.login-header p{margin-bottom:30px}.login-lock{border-radius:18px;width:62px;height:62px}.login-input-wrap input,.login-button{height:54px}.login-options{flex-direction:column;align-items:flex-start}.login-help{display:none}}@media (prefers-reduced-motion:reduce){.login-theme-toggle,.login-button{transition:none}.login-spinner{animation-duration:1.4s}}.maintenance-page{flex-direction:column;gap:12px;width:100%;min-width:0;min-height:100%;padding-bottom:20px;display:flex}.maintenance-page-header{flex:none;justify-content:space-between;align-items:center;min-width:0;padding:1px 0 2px;display:flex}.maintenance-page-header h1{color:var(--text);font-size:var(--font-heading,18px);margin:0;font-weight:700}.maintenance-page-header p{color:var(--text-secondary);font-size:var(--font-sm,11px);margin:3px 0 0}.maintenance-page>.maintenance-stats,.maintenance-page>.maintenance-filters,.maintenance-page>.maintenance-layout,.maintenance-page>.maintenance-analytics{flex:none}.maintenance-layout{grid-template-columns:minmax(0,2fr) minmax(330px,1fr);align-items:stretch;gap:12px;width:100%;min-width:0;display:grid}.maintenance-main-column,.maintenance-side-column{min-width:0}.maintenance-main-column{flex-direction:column;height:100%;display:flex}.maintenance-main-column>.maintenance-table-card{flex:auto;min-height:520px}.maintenance-side-column{flex-direction:column;gap:12px;display:flex}.maintenance-main-column>*,.maintenance-side-column>*{flex:none;min-width:0}@media (width<=1180px){.maintenance-layout{grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr)}}@media (width<=1024px){.maintenance-layout{grid-template-columns:1fr}.maintenance-main-column>.maintenance-table-card{min-height:auto}.maintenance-side-column{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.maintenance-side-column>:first-child{grid-column:1/-1}}@media (width<=720px){.maintenance-page{gap:10px;padding-bottom:14px}.maintenance-page-header{align-items:flex-start}.maintenance-side-column{display:flex}}.maintenance-side-column{align-self:stretch}.maintenance-side-tabs{background:var(--card);border:1px solid var(--border);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:6px;display:grid}.maintenance-side-tabs button{min-width:0;height:34px;color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 8px;font-size:11px;font-weight:700;transition:color .15s,background .15s,border-color .15s;display:flex}.maintenance-side-tabs button:hover{color:var(--text);background:var(--background)}.maintenance-side-tabs button.is-active{color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, var(--card));border-color:color-mix(in srgb, var(--primary) 28%, var(--border))}.maintenance-side-tabs svg{flex:none;font-size:15px}.maintenance-side-panel{scrollbar-width:thin;min-height:474px;max-height:620px;overflow:auto}.maintenance-side-panel>*{min-height:100%}@media (width<=1024px){.maintenance-side-column{flex-direction:column;display:flex}.maintenance-side-panel{min-height:360px;max-height:560px}}@media (width<=520px){.maintenance-side-tabs button{gap:4px;padding:0 5px;font-size:11px}.maintenance-side-tabs svg{font-size:14px}.maintenance-side-panel{min-height:320px;max-height:none;overflow:visible}}.maintenance-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;display:grid}.maintenance-stat-card{border:1px solid var(--border);background:var(--card);border-radius:13px;align-items:center;gap:10px;min-width:0;min-height:78px;padding:10px 12px;display:flex}.maintenance-stat-icon{border-radius:10px;flex:0 0 38px;justify-content:center;align-items:center;width:38px;height:38px;font-size:20px;display:flex}.maintenance-stat-icon--blue{color:#2563eb;background:#2563eb1f}.maintenance-stat-icon--green{color:#10b981;background:#10b9811f}.maintenance-stat-icon--orange{color:#f59e0b;background:#f59e0b1f}.maintenance-stat-icon--purple{color:#7c3aed;background:#7c3aed1f}.maintenance-stat-icon--red{color:#ef4444;background:#ef44441f}.maintenance-stat-content{flex-direction:column;min-width:0;display:flex}.maintenance-stat-content span{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.maintenance-stat-content strong{color:var(--text);margin-top:1px;font-size:21px;line-height:1.05}.maintenance-stat-content small{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;overflow:hidden}@media (width<=1280px){.maintenance-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.maintenance-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=420px){.maintenance-stats{grid-template-columns:1fr}}.maintenance-filters{border:1px solid var(--border);background:var(--card);border-radius:13px;padding:10px 12px 12px}.maintenance-filter-actions{justify-content:flex-end;gap:7px;margin-bottom:9px;display:flex}.maintenance-button{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;height:32px;padding:0 11px;font-size:11px;font-weight:600;display:inline-flex}.maintenance-button svg{font-size:16px}.maintenance-button--ghost{border:1px solid var(--border);color:var(--text);background:0 0}.maintenance-button--ghost:hover{background:var(--background)}.maintenance-button--primary{color:#fff;background:#2563eb;border:1px solid #2563eb}.maintenance-button--primary:hover{background:#1d4ed8}.maintenance-filter-grid{grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(140px,.8fr)) minmax(260px,1.1fr);gap:8px;display:grid}.maintenance-filter-grid select,.maintenance-filter-grid input{border:1px solid var(--border);background:var(--background);width:100%;height:34px;color:var(--text);border-radius:8px;outline:none;padding:0 10px;font-size:11px}.maintenance-filter-grid select:focus,.maintenance-filter-grid input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb14}.maintenance-search{align-items:center;display:flex;position:relative}.maintenance-search svg{color:var(--text-secondary);font-size:16px;position:absolute;left:10px}.maintenance-search input{padding-left:33px}.maintenance-date-filter{grid-template-columns:1fr auto 1fr;align-items:center;gap:5px;display:grid}.maintenance-date-filter span{color:var(--text-secondary)}@media (width<=1250px){.maintenance-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.maintenance-search,.maintenance-date-filter{grid-column:span 2}}@media (width<=760px){.maintenance-filter-actions{flex-wrap:wrap;justify-content:flex-start}.maintenance-filter-grid{grid-template-columns:1fr 1fr}.maintenance-search,.maintenance-date-filter{grid-column:1/-1}}@media (width<=480px){.maintenance-filter-grid{grid-template-columns:1fr}.maintenance-search,.maintenance-date-filter{grid-column:auto}.maintenance-button{flex:1}}.maintenance-filter-grid--advanced{grid-template-columns:minmax(220px,1.4fr) repeat(4,minmax(135px,.8fr));align-items:center}.maintenance-filter-grid--advanced .maintenance-date-filter,.maintenance-filter-grid--advanced .maintenance-cost-filter{grid-column:span 2}.maintenance-cost-filter{align-items:center;gap:7px;display:flex}.maintenance-cost-filter input{border:1px solid var(--border);background:var(--background);width:100%;min-width:0;height:38px;color:var(--text);border-radius:9px;outline:none;padding:0 10px}.maintenance-cost-filter input:focus{border-color:var(--primary)}.maintenance-cost-filter span{color:var(--text-secondary);font-size:11px}@media (width<=1200px){.maintenance-filter-grid--advanced{grid-template-columns:repeat(3,minmax(0,1fr))}.maintenance-filter-grid--advanced .maintenance-search{grid-column:span 2}.maintenance-filter-grid--advanced .maintenance-date-filter,.maintenance-filter-grid--advanced .maintenance-cost-filter{grid-column:auto}}@media (width<=760px){.maintenance-filter-grid--advanced{grid-template-columns:1fr}.maintenance-filter-grid--advanced .maintenance-search,.maintenance-filter-grid--advanced .maintenance-date-filter,.maintenance-filter-grid--advanced .maintenance-cost-filter{grid-column:auto}}.maintenance-table-card{border:1px solid var(--border);background:var(--card);border-radius:13px;flex-direction:column;display:flex;overflow:hidden}.maintenance-table-header{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;min-height:48px;padding:9px 13px;display:flex}.maintenance-table-header h3{color:var(--text);margin:0;font-size:13px}.maintenance-table-header p{color:var(--text-secondary);margin:2px 0 0;font-size:11px}.maintenance-table-header>span{color:#2563eb;background:#2563eb1f;border-radius:999px;justify-content:center;align-items:center;min-width:28px;height:24px;padding:0 7px;font-size:11px;font-weight:700;display:flex}.maintenance-table-scroll{flex:auto;min-height:0;overflow:auto}.maintenance-table{border-collapse:collapse;width:100%;min-width:820px}.maintenance-table th{z-index:2;border-bottom:1px solid var(--border);background:var(--background);color:var(--text-secondary);letter-spacing:.03em;text-align:left;text-transform:uppercase;padding:8px 11px;font-size:11px;font-weight:600;position:sticky;top:0}.maintenance-table td{border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;padding:9px 11px;font-size:11px}.maintenance-table tbody tr{cursor:pointer;transition:background .15s}.maintenance-table tbody tr:hover,.maintenance-table tbody tr.is-selected{background:#2563eb0f}.maintenance-table tbody tr.is-selected{box-shadow:inset 3px 0 #2563eb}.maintenance-table td strong,.maintenance-table td small{display:block}.maintenance-table td strong{font-size:11px;font-weight:600}.maintenance-table td small{color:var(--text-secondary);margin-top:2px;font-size:11px}.maintenance-type-label{align-items:center;gap:5px;display:inline-flex}.maintenance-type-label svg{color:#2563eb;font-size:14px}.maintenance-status{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:4px 7px;font-size:11px;font-weight:700;display:inline-flex}.maintenance-status--pending,.maintenance-status--draft{color:#7c3aed;background:#7c3aed1f}.maintenance-status--scheduled{color:#2563eb;background:#2563eb1f}.maintenance-status--in_progress{color:#d97706;background:#f59e0b24}.maintenance-status--completed{color:#059669;background:#10b98121}.maintenance-status--overdue{color:#dc2626;background:#ef444421}.maintenance-status--cancelled{color:var(--text-secondary);background:#6b728021}.maintenance-row-actions{justify-content:flex-end;gap:5px;display:flex}.maintenance-row-actions button{border:1px solid var(--border);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:7px;justify-content:center;align-items:center;padding:0;display:flex}.maintenance-row-actions button:hover{color:#2563eb;background:#2563eb14;border-color:#2563eb59}.maintenance-row-actions button.danger:hover{color:#dc2626;background:#ef444414;border-color:#ef444459}.maintenance-table-empty{height:300px!important;color:var(--text-secondary)!important;text-align:center!important}.maintenance-table-empty--error{color:#dc2626!important}.maintenance-operational-reason{white-space:normal;max-width:170px;line-height:1.3}.maintenance-details{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:14px}.maintenance-details--empty{text-align:center;min-height:220px;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.maintenance-details--empty svg{margin-bottom:8px;font-size:30px}.maintenance-details--empty strong{color:var(--text);font-size:12px}.maintenance-details--empty span{margin-top:4px;font-size:10px}.maintenance-details-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding-bottom:11px;display:flex}.maintenance-details-header>div{align-items:center;gap:8px;display:flex}.maintenance-details-header h3{color:var(--text);margin:0;font-size:13px}.maintenance-detail-edit{height:30px;color:var(--text);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:7px;align-items:center;gap:5px;padding:0 9px;font-size:11px;display:flex}.maintenance-detail-edit:hover{color:#2563eb;border-color:#2563eb66}.maintenance-detail-summary{align-items:flex-start;gap:10px;padding:13px 0;display:flex}.maintenance-detail-icon{color:#2563eb;background:#2563eb1f;border-radius:11px;flex:0 0 42px;justify-content:center;align-items:center;width:42px;height:42px;font-size:22px;display:flex}.maintenance-detail-summary h2{color:var(--text);margin:0;font-size:14px}.maintenance-detail-summary p{color:var(--text-secondary);margin:3px 0 0;font-size:10px}.maintenance-detail-tags{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.maintenance-detail-tags span{color:var(--text-secondary);background:var(--background);border:1px solid var(--border);border-radius:6px;padding:4px 7px;font-size:9px}.maintenance-detail-section{border-top:1px solid var(--border);margin-top:2px;padding-top:12px}.maintenance-detail-section h4{color:var(--text);margin:0 0 9px;font-size:11px}.maintenance-detail-row{justify-content:space-between;align-items:center;gap:12px;padding:5px 0;display:flex}.maintenance-detail-row span{color:var(--text-secondary);font-size:10px}.maintenance-detail-row strong{color:var(--text);text-align:right;font-size:11px}.maintenance-detail-total{background:var(--background);border-radius:8px;justify-content:space-between;align-items:center;margin-top:7px;padding:9px 10px;display:flex}.maintenance-detail-total span{font-size:10px}.maintenance-detail-total strong{color:#2563eb;font-size:14px}.maintenance-detail-notes{color:var(--text-secondary);margin:0;font-size:11px;line-height:1.5}.maintenance-detail-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:0 0 12px;display:grid}.maintenance-action{border:1px solid var(--border);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:11px;font-weight:700;transition:background .15s,border-color .15s,color .15s;display:flex}.maintenance-action:disabled,.maintenance-detail-edit:disabled{opacity:.55;cursor:not-allowed}.maintenance-action--start{color:#2563eb;background:#2563eb14;border-color:#2563eb40}.maintenance-action--start:hover:not(:disabled){background:#2563eb24;border-color:#2563eb66}.maintenance-action--complete{color:#059669;background:#10b98114;border-color:#10b98147}.maintenance-action--complete:hover:not(:disabled){background:#10b98124;border-color:#10b9816b}.maintenance-action--cancel{color:#dc2626;background:#ef444412;border-color:#ef44443d}.maintenance-action--cancel:hover:not(:disabled){background:#ef44441f;border-color:#ef444461}.maintenance-action--reschedule{color:#7c3aed;background:#7c3aed14;border-color:#7c3aed40}.maintenance-action--reschedule:hover:not(:disabled){background:#7c3aed24;border-color:#7c3aed66}.maintenance-detail-section h4{align-items:center;gap:5px;display:flex}.maintenance-detail-section h4 svg{color:#2563eb;font-size:13px}.maintenance-audit-list{border-top:1px solid var(--border);flex-direction:column;gap:5px;margin-top:9px;padding-top:8px;display:flex}.maintenance-audit-item{background:var(--background);border-radius:6px;justify-content:space-between;align-items:flex-start;gap:8px;padding:6px 7px;display:flex}.maintenance-audit-item span{color:var(--text);font-size:11px;font-weight:700}.maintenance-audit-item small{color:var(--text-secondary);text-align:right;font-size:11px}.maintenance-native-audit{border:1px solid var(--border);background:var(--background);border-radius:10px;margin-top:10px;overflow:hidden}.maintenance-native-audit>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:9px 10px;display:flex}.maintenance-native-audit>header>div{color:var(--text);align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.maintenance-native-audit>header svg{color:#2563eb}.maintenance-native-audit>header button{width:28px;height:28px;color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:7px;justify-content:center;align-items:center;padding:0;display:flex}.maintenance-native-audit-list{max-height:240px;padding:4px 10px 8px;overflow-y:auto}.maintenance-native-audit-item{border-bottom:1px solid var(--border);grid-template-columns:8px minmax(0,1fr);gap:8px;padding:8px 0;display:grid}.maintenance-native-audit-item:last-child{border-bottom:0}.maintenance-native-audit-dot{background:#2563eb;border-radius:50%;width:7px;height:7px;margin-top:4px}.maintenance-native-audit-item strong,.maintenance-native-audit-item small{display:block}.maintenance-native-audit-item strong{color:var(--text);font-size:9px}.maintenance-native-audit-item small{color:var(--text-secondary);margin-top:2px;font-size:8px}.maintenance-native-audit-empty,.maintenance-native-audit-error{color:var(--text-secondary);text-align:center;padding:12px;font-size:11px}.maintenance-native-audit-error{color:#b91c1c;background:#ef444412}.maintenance-documents{background:var(--background);border:1px solid var(--border);border-radius:9px;margin-top:12px;overflow:hidden}.maintenance-documents-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:9px 10px;display:flex}.maintenance-documents-header>div:first-child{flex-direction:column;gap:2px;display:flex}.maintenance-documents-header span{color:var(--text);font-size:11px;font-weight:700}.maintenance-documents-header small{color:var(--text-secondary);font-size:8px}.maintenance-documents-header-actions{align-items:center;gap:6px;display:flex}.maintenance-documents-header-actions strong{color:#2563eb;background:#2563eb1f;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;font-size:9px;display:flex}.maintenance-documents-header-actions button,.maintenance-document-actions button{width:28px;height:28px;color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;display:flex}.maintenance-documents-header-actions button:hover,.maintenance-document-actions button:hover{color:#2563eb;border-color:#2563eb73}.maintenance-document-actions button.danger:hover{color:#dc2626;border-color:#dc262673}.maintenance-documents-header-actions button:disabled,.maintenance-document-actions button:disabled{opacity:.45;cursor:not-allowed}.maintenance-documents-empty{text-align:center;color:var(--text-secondary);padding:16px 10px;font-size:9px}.maintenance-document-item{border-bottom:1px solid var(--border);grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.maintenance-document-item:last-child{border-bottom:0}.maintenance-document-icon{color:#2563eb;background:#2563eb1a;border-radius:7px;justify-content:center;align-items:center;width:30px;height:30px;font-size:16px;display:flex}.maintenance-document-item strong,.maintenance-document-item span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.maintenance-document-item strong{color:var(--text);font-size:9px}.maintenance-document-item span{color:var(--text-secondary);margin-top:2px;font-size:8px}.maintenance-document-actions{gap:5px;display:flex}.maintenance-document-form{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1.1fr) minmax(120px,.7fr);gap:7px;padding:10px;display:grid}.maintenance-document-form input,.maintenance-document-form select{min-width:0;height:32px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:0 9px;font-size:9px}.maintenance-document-form input:nth-of-type(2){grid-column:1/-1}.maintenance-document-form-actions{grid-column:1/-1;justify-content:flex-end;gap:6px;display:flex}.maintenance-document-form-actions button{border:1px solid var(--border);cursor:pointer;border-radius:6px;height:30px;padding:0 11px}.maintenance-document-form-actions button[type=submit]{color:#fff;background:#2563eb;border-color:#2563eb}.maintenance-document-error{color:#b91c1c;background:#dc262614;border-radius:6px;grid-column:1/-1;padding:7px 8px;font-size:8px}.maintenance-document-error--standalone{margin:8px 10px}@media (width<=560px){.maintenance-document-form{grid-template-columns:1fr}.maintenance-document-form input:nth-of-type(2),.maintenance-document-form-actions,.maintenance-document-error{grid-column:1}}.maintenance-document-upload{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;gap:7px;padding:9px 10px;display:grid}.maintenance-document-upload input{min-width:0;height:32px;color:var(--text);background:var(--background);border:1px solid var(--border);border-radius:7px;outline:none;padding:0 9px;font-size:11px}.maintenance-document-upload button{color:#fff;cursor:pointer;background:#2563eb;border:0;border-radius:7px;height:32px;padding:0 10px;font-size:11px;font-weight:700}.maintenance-document-upload button:disabled{opacity:.55;cursor:not-allowed}@media (width<=520px){.maintenance-document-upload{grid-template-columns:1fr}.maintenance-document-upload button{width:100%}}.maintenance-alerts{background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden}.maintenance-alerts>header{border-bottom:1px solid var(--border);align-items:center;gap:8px;min-height:48px;padding:9px 13px;display:flex}.maintenance-alerts>header>svg{color:#f59e0b;flex:none;font-size:19px}.maintenance-alerts-heading{justify-content:space-between;align-items:center;gap:8px;width:100%;min-width:0;display:flex}.maintenance-alerts h3{color:var(--text);margin:0;font-size:12px}.maintenance-alerts header span{color:var(--text-secondary);margin-top:2px;font-size:9px;display:block}.maintenance-alert-refresh{width:28px;height:28px;color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;flex:none;place-items:center;display:grid}.maintenance-alert-refresh:hover:not(:disabled){color:var(--text);background:var(--background)}.maintenance-alert-refresh:disabled{opacity:.5;cursor:not-allowed}.maintenance-alert-refresh svg{font-size:16px}.maintenance-alert-refresh .is-spinning{animation:.8s linear infinite maintenance-alert-spin}.maintenance-alert-filters{border-bottom:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:5px;padding:7px 9px;display:grid}.maintenance-alert-filters button{min-width:0;color:var(--text-secondary);background:var(--background);border:1px solid var(--border);cursor:pointer;border-radius:7px;justify-content:center;align-items:center;gap:4px;padding:6px 5px;font-size:11px;font-weight:700;display:flex}.maintenance-alert-filters button:hover,.maintenance-alert-filters button.is-active{color:var(--text);border-color:var(--primary)}.maintenance-alert-filters button.is-active{background:color-mix(in srgb,var(--primary) 10%,var(--card))}.maintenance-alert-filters span{min-width:17px;height:17px;color:var(--text);background:var(--card);border-radius:9px;place-items:center;padding:0 4px;font-size:8px;display:grid}.maintenance-alert-list{flex-direction:column;max-height:345px;display:flex;overflow:auto}.maintenance-alert{border-bottom:1px solid var(--border);background:0 0;align-items:stretch;width:100%;display:flex}.maintenance-alert:last-child{border-bottom:0}.maintenance-alert:hover{background:var(--background)}.maintenance-alert--upcoming{box-shadow:inset 3px 0 #f59e0b}.maintenance-alert--overdue{box-shadow:inset 3px 0 #ef4444}.maintenance-alert-main{text-align:left;min-width:0;color:var(--text);cursor:pointer;background:0 0;border:0;flex:1;justify-content:space-between;align-items:center;gap:10px;padding:10px 8px 10px 13px;display:flex}.maintenance-alert-copy{min-width:0}.maintenance-alert strong,.maintenance-alert span,.maintenance-alert em{display:block}.maintenance-alert strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.maintenance-alert span{color:var(--text-secondary);margin-top:2px;font-size:9px}.maintenance-alert em{color:var(--text-secondary);margin-top:3px;font-size:11px;font-style:normal}.maintenance-alert small{color:var(--text-secondary);white-space:nowrap;flex:none;font-size:11px}.maintenance-alert--overdue small{color:#ef4444;font-weight:700}.maintenance-alert-actions{align-items:center;gap:3px;padding:7px 8px 7px 0;display:flex}.maintenance-alert-actions button{width:25px;height:25px;color:var(--text-secondary);background:var(--card);border:1px solid var(--border);cursor:pointer;border-radius:7px;place-items:center;padding:0;display:grid}.maintenance-alert-actions button:hover:not(:disabled){color:var(--primary);border-color:var(--primary)}.maintenance-alert-actions button:disabled{opacity:.45;cursor:not-allowed}.maintenance-alert-actions svg{font-size:14px}.maintenance-alert-toggle{width:100%;min-height:32px;color:var(--text-secondary);background:var(--background);border:0;border-top:1px solid var(--border);cursor:pointer;justify-content:center;align-items:center;gap:4px;font-size:11px;font-weight:600;display:flex}.maintenance-alert-toggle:hover{color:var(--text)}.maintenance-alert-toggle svg{font-size:15px}.maintenance-alerts-empty{text-align:center;color:var(--text-secondary);padding:24px 13px;font-size:10px}@keyframes maintenance-alert-spin{to{transform:rotate(360deg)}}.maintenance-calendar{background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden}.maintenance-calendar>header{border-bottom:1px solid var(--border);align-items:center;gap:8px;min-height:48px;padding:9px 13px;display:flex}.maintenance-calendar>header>svg{color:#2563eb;font-size:19px}.maintenance-calendar h3{color:var(--text);margin:0;font-size:12px}.maintenance-calendar header span{color:var(--text-secondary);margin-top:2px;font-size:9px;display:block}.maintenance-calendar-summary{grid-template-columns:1fr 1fr;gap:8px;padding:10px 12px;display:grid}.maintenance-calendar-summary>div{background:#2563eb14;border-radius:9px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;column-gap:8px;padding:9px 10px;display:grid}.maintenance-calendar-summary svg{color:#2563eb;grid-row:1/3;align-self:center;font-size:20px}.maintenance-calendar-summary strong{color:var(--text);font-size:17px;line-height:1}.maintenance-calendar-summary span{color:var(--text-secondary);font-size:9px}.maintenance-calendar-summary .overdue{background:#ef444414}.maintenance-calendar-summary .overdue svg{color:#ef4444}.maintenance-calendar-list{padding:0 12px 10px}.maintenance-calendar-list button{text-align:left;width:100%;color:var(--text);border:0;border-bottom:1px solid var(--border);cursor:pointer;background:0 0;grid-template-columns:32px 1fr;align-items:center;gap:9px;padding:9px 0;display:grid}.maintenance-calendar-list button:last-child{border-bottom:0}.maintenance-calendar-list button:hover strong{color:#2563eb}.maintenance-calendar-state{color:#2563eb;background:#2563eb1a;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.maintenance-calendar-state--overdue{color:#dc2626;background:#ef44441a}.maintenance-calendar-state--upcoming{color:#d97706;background:#f59e0b1f}.maintenance-calendar-state--in_progress{color:#059669;background:#10b9811f}.maintenance-calendar-state svg{font-size:16px}.maintenance-calendar-list strong,.maintenance-calendar-list span,.maintenance-calendar-list small{display:block}.maintenance-calendar-list strong{font-size:10px}.maintenance-calendar-list span{color:var(--text-secondary);margin-top:2px;font-size:9px}.maintenance-calendar-list small{color:var(--text-secondary);margin-top:3px;font-size:9px}.maintenance-calendar-empty{text-align:center;color:var(--text-secondary);padding:20px 0;font-size:10px}.maintenance-modal-overlay{z-index:5000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000085;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.maintenance-modal{background:var(--card);border:1px solid var(--border);border-radius:14px;flex-direction:column;width:min(780px,96vw);max-height:90dvh;display:flex;overflow:hidden;box-shadow:0 20px 55px #0000004d}.maintenance-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:13px 16px;display:flex}.maintenance-modal-header h3{color:var(--text);margin:0;font-size:14px}.maintenance-modal-header p{color:var(--text-secondary);margin:3px 0 0;font-size:10px}.maintenance-modal-header>button{width:30px;height:30px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;font-size:20px;display:flex}.maintenance-modal-header>button:hover{color:var(--text);background:var(--background)}.maintenance-modal-body{flex-direction:column;gap:11px;min-height:0;padding:12px 16px;display:flex;overflow-y:auto}.maintenance-form-error{color:#b91c1c;background:#ef44441a;border:1px solid #ef444440;border-radius:8px;padding:9px 10px;font-size:10px}.maintenance-form-section{background:var(--background);border:1px solid var(--border);border-radius:10px;padding:11px}.maintenance-form-section h4{color:var(--text);margin:0 0 9px;font-size:11px}.maintenance-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.maintenance-field{flex-direction:column;gap:5px;min-width:0;display:flex}.maintenance-field>span{color:var(--text-secondary);font-size:11px;font-weight:600}.maintenance-field--wide{grid-column:1/-1}.maintenance-field input,.maintenance-field select,.maintenance-field textarea{width:100%;min-height:35px;color:var(--text);background:var(--card);border:1px solid var(--border);border-radius:7px;outline:none;padding:8px 9px;font-size:11px}.maintenance-field textarea{resize:vertical;min-height:58px}.maintenance-field input:focus,.maintenance-field select:focus,.maintenance-field textarea:focus{border-color:#2563eb}.maintenance-km-summary,.maintenance-cost-total{background:var(--card);border:1px solid var(--border);border-radius:7px;flex-direction:column;justify-content:center;padding:8px 10px;display:flex}.maintenance-km-summary span,.maintenance-cost-total span{color:var(--text-secondary);font-size:9px}.maintenance-km-summary strong,.maintenance-cost-total strong{color:#2563eb;margin-top:3px;font-size:13px}.maintenance-modal-footer{background:var(--background);border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:11px 16px;display:flex}.maintenance-modal-button{cursor:pointer;border-radius:8px;height:34px;padding:0 13px;font-size:11px;font-weight:700}.maintenance-modal-button:disabled{opacity:.6;cursor:not-allowed}.maintenance-modal-button--secondary{color:var(--text);border:1px solid var(--border);background:0 0}.maintenance-modal-button--primary{color:#fff;background:#2563eb;border:1px solid #2563eb}@media (width<=720px){.maintenance-modal-overlay{align-items:flex-end;padding:0}.maintenance-modal{border-radius:14px 14px 0 0;width:100%;max-height:94dvh}.maintenance-form-grid{grid-template-columns:1fr 1fr}}@media (width<=480px){.maintenance-form-grid{grid-template-columns:1fr}.maintenance-field--wide{grid-column:auto}.maintenance-modal-footer{grid-template-columns:1fr 1fr;display:grid}}.maintenance-recurrence-section{border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));background:color-mix(in srgb,var(--primary) 4%,var(--card))}.maintenance-recurrence-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.maintenance-recurrence-heading h4{margin:0}.maintenance-recurrence-heading p{color:var(--text-secondary);margin:5px 0 0;font-size:11px;line-height:1.45}.maintenance-recurrence-switch{cursor:pointer;flex:0 0 42px;width:42px;height:24px;position:relative}.maintenance-recurrence-switch input{opacity:0;pointer-events:none;position:absolute}.maintenance-recurrence-switch span{background:#94a3b8;border-radius:999px;transition:all .2s;position:absolute;inset:0}.maintenance-recurrence-switch span:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:all .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0003}.maintenance-recurrence-switch input:checked+span{background:var(--primary)}.maintenance-recurrence-switch input:checked+span:after{transform:translate(18px)}.maintenance-recurrence-note{background:var(--background);color:var(--text-secondary);border-radius:9px;align-self:end;padding:10px 12px;font-size:11px;line-height:1.45}.maintenance-section-heading-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.maintenance-section-heading-row h4{margin:0}.maintenance-template-select{min-width:210px;height:32px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:7px;padding:0 9px;font-size:9px}@media (width<=600px){.maintenance-section-heading-row{flex-direction:column;align-items:stretch}.maintenance-template-select{width:100%;min-width:0}}.maintenance-reschedule-overlay{z-index:1200;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a94;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.maintenance-reschedule-modal{background:var(--card);border:1px solid var(--border);border-radius:16px;width:min(560px,100%);overflow:hidden;box-shadow:0 24px 70px #0f172a40}.maintenance-reschedule-modal>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;display:flex}.maintenance-reschedule-title{align-items:center;gap:10px;display:flex}.maintenance-reschedule-title>span{color:#2563eb;background:#2563eb1c;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;font-size:21px;display:flex}.maintenance-reschedule-title h3{color:var(--text);margin:0;font-size:15px}.maintenance-reschedule-title p{color:var(--text-secondary);margin:3px 0 0;font-size:10px}.maintenance-reschedule-modal>header>button{width:32px;height:32px;color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:0;display:flex}.maintenance-reschedule-body{gap:13px;padding:17px 18px;display:grid}.maintenance-reschedule-error{color:#b91c1c;background:#ef444414;border:1px solid #ef444438;border-radius:8px;padding:9px 11px;font-size:10px}.maintenance-reschedule-current{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.maintenance-reschedule-current>div{background:var(--background);border:1px solid var(--border);border-radius:10px;grid-template-columns:auto 1fr;align-items:center;gap:3px 7px;padding:10px 11px;display:grid}.maintenance-reschedule-current svg{color:#2563eb;grid-row:1/3;font-size:19px}.maintenance-reschedule-current span{color:var(--text-secondary);font-size:9px}.maintenance-reschedule-current strong{color:var(--text);font-size:11px}.maintenance-reschedule-modal label{flex-direction:column;gap:5px;display:flex}.maintenance-reschedule-modal label>span{color:var(--text-secondary);font-size:11px;font-weight:600}.maintenance-reschedule-modal input,.maintenance-reschedule-modal textarea{box-sizing:border-box;width:100%;color:var(--text);background:var(--background);border:1px solid var(--border);font:inherit;border-radius:8px;outline:none;padding:9px 10px;font-size:11px}.maintenance-reschedule-modal textarea{resize:vertical;min-height:78px}.maintenance-reschedule-modal input:focus,.maintenance-reschedule-modal textarea:focus{border-color:#2563eba6;box-shadow:0 0 0 3px #2563eb14}.maintenance-reschedule-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.maintenance-reschedule-modal>footer{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:13px 18px;display:flex}.maintenance-reschedule-modal>footer button{cursor:pointer;border-radius:8px;min-height:34px;padding:0 13px;font-size:11px;font-weight:700}.maintenance-reschedule-secondary{color:var(--text);border:1px solid var(--border);background:0 0}.maintenance-reschedule-primary{color:#fff;background:#2563eb;border:1px solid #2563eb}.maintenance-reschedule-modal>footer button:disabled{opacity:.55;cursor:not-allowed}@media (width<=600px){.maintenance-reschedule-overlay{padding:10px}.maintenance-reschedule-current,.maintenance-reschedule-grid{grid-template-columns:1fr}}.maintenance-completion-backdrop{z-index:1200;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a94;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.maintenance-completion-modal{background:var(--card);border:1px solid var(--border);border-radius:16px;width:min(720px,100%);max-height:calc(100vh - 40px);overflow:auto;box-shadow:0 24px 70px #0f172a47}.maintenance-completion-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px;display:flex}.maintenance-completion-header>div{align-items:center;gap:10px;display:flex}.maintenance-completion-icon{color:#059669;background:#10b9811f;border-radius:10px;flex:0 0 38px;justify-content:center;align-items:center;width:38px;height:38px;font-size:21px;display:flex}.maintenance-completion-header h2{color:var(--text);margin:0;font-size:16px}.maintenance-completion-header p{color:var(--text-secondary);margin:4px 0 0;font-size:10px}.maintenance-completion-header>button{width:32px;height:32px;color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;display:flex}.maintenance-completion-modal form{padding:18px 20px 20px}.maintenance-completion-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.maintenance-completion-modal label>span{color:var(--text-secondary);margin-bottom:6px;font-size:11px;font-weight:600;display:block}.maintenance-completion-modal input,.maintenance-completion-modal textarea{box-sizing:border-box;width:100%;color:var(--text);background:var(--background);border:1px solid var(--border);font:inherit;border-radius:8px;outline:none}.maintenance-completion-modal input{height:36px;padding:0 10px;font-size:10px}.maintenance-completion-modal textarea{resize:vertical;padding:10px;font-size:11px;line-height:1.5}.maintenance-completion-modal input:focus,.maintenance-completion-modal textarea:focus{border-color:#2563eb8c;box-shadow:0 0 0 3px #2563eb14}.maintenance-completion-costs{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.maintenance-completion-costs label>div{background:var(--background);border:1px solid var(--border);border-radius:8px;align-items:center;height:36px;display:flex;overflow:hidden}.maintenance-completion-costs b{color:var(--text-secondary);padding-left:10px;font-size:10px}.maintenance-completion-costs input{background:0 0;border:0;height:34px;box-shadow:none!important}.maintenance-completion-total{background:#10b98114;border:1px solid #10b98133;border-radius:10px;justify-content:space-between;align-items:center;margin-top:14px;padding:12px 14px;display:flex}.maintenance-completion-total span{color:var(--text-secondary);font-size:10px}.maintenance-completion-total strong{color:#059669;font-size:16px}.maintenance-completion-notes{margin-top:14px;display:block}.maintenance-completion-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;margin-top:18px;padding-top:16px;display:flex}.maintenance-completion-footer button{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:36px;padding:0 14px;font-size:11px;font-weight:700;display:flex}.maintenance-completion-footer .secondary{color:var(--text);border:1px solid var(--border);background:0 0}.maintenance-completion-footer .primary{color:#fff;background:#059669;border:1px solid #059669}.maintenance-completion-footer button:disabled,.maintenance-completion-header>button:disabled{opacity:.55;cursor:not-allowed}@media (width<=640px){.maintenance-completion-backdrop{padding:10px}.maintenance-completion-modal{max-height:calc(100vh - 20px)}.maintenance-completion-grid,.maintenance-completion-costs{grid-template-columns:1fr}.maintenance-completion-header,.maintenance-completion-modal form{padding-left:14px;padding-right:14px}}.maintenance-completion-recurrence{border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border));background:color-mix(in srgb,var(--primary) 5%,var(--card));border-radius:10px;align-items:flex-start;gap:8px;margin:0 0 14px;padding:10px 12px;font-size:11px;display:flex}.maintenance-completion-recurrence strong{color:var(--primary);white-space:nowrap}.maintenance-completion-recurrence span{color:var(--text-secondary);line-height:1.45}.maintenance-completion-error{color:#ef4444;background:#ef444414;border:1px solid #ef44444d;border-radius:10px;margin:0 0 12px;padding:10px 12px;font-size:11px;line-height:1.45}.maintenance-analytics{border-top:1px solid var(--border);flex-direction:column;flex:none;gap:11px;width:100%;min-width:0;margin-top:4px;padding-top:14px;display:flex}.maintenance-analytics-header{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.maintenance-analytics-header>div:first-child{min-width:0}.maintenance-analytics-header h2{color:var(--text);margin:0;font-size:15px}.maintenance-analytics-header p{color:var(--text-secondary);margin:3px 0 0;font-size:11px}.maintenance-analytics-actions{flex:none;align-items:center;gap:7px;display:flex}.maintenance-analytics-actions select,.maintenance-analytics-actions button{border:1px solid var(--border);background:var(--card);height:32px;color:var(--text);border-radius:8px;font-size:11px}.maintenance-analytics-actions select{min-width:145px;padding:0 28px 0 10px}.maintenance-analytics-actions button{white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.maintenance-analytics-actions button:hover:not(:disabled){border-color:color-mix(in srgb, var(--primary) 45%, var(--border));background:var(--background)}.maintenance-analytics-actions button:disabled{opacity:.55;cursor:not-allowed}.maintenance-analytics-error{color:#ef4444;background:#ef444414;border:1px solid #ef444447;border-radius:10px;padding:9px 11px;font-size:11px}.maintenance-analytics-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.maintenance-analytics-kpis article{border:1px solid var(--border);background:var(--card);border-radius:12px;flex-direction:column;gap:4px;min-width:0;min-height:86px;padding:12px 14px;display:flex}.maintenance-analytics-kpis span{color:var(--text-secondary);align-items:center;gap:6px;font-size:11px;display:flex}.maintenance-analytics-kpis span svg{color:#3b82f6;flex:none;font-size:14px}.maintenance-analytics-kpis strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:18px;line-height:1.15;overflow:hidden}.maintenance-analytics-kpis small{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.maintenance-analytics-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);align-items:stretch;gap:9px;min-width:0;display:grid}.maintenance-analytics-card{border:1px solid var(--border);background:var(--card);border-radius:12px;min-width:0;padding:13px}.maintenance-analytics-card-title{justify-content:space-between;align-items:center;gap:10px;min-height:21px;margin-bottom:9px;display:flex}.maintenance-analytics-card-title h3{color:var(--text);margin:0;font-size:11px}.maintenance-analytics-card-title span{color:var(--text-secondary);text-align:right;font-size:11px}.maintenance-analytics-chart-card,.maintenance-analytics-grid>.maintenance-analytics-card{min-height:255px}.maintenance-analytics-chart{width:100%;height:205px;min-height:205px}.maintenance-analytics-chart .recharts-cartesian-grid line{stroke:var(--border)}.maintenance-analytics-chart .recharts-cartesian-axis-tick-value{fill:var(--text-secondary)}.maintenance-analytics-chart .recharts-bar-rectangle path{fill:#3b82f6}.maintenance-type-costs{flex-direction:column;gap:11px;display:flex}.maintenance-type-cost-row{grid-template-columns:1fr auto;gap:5px 8px;display:grid}.maintenance-type-cost-row>div:first-child{grid-column:1/3;justify-content:space-between;gap:10px;display:flex}.maintenance-type-cost-row strong{color:var(--text);font-size:11px}.maintenance-type-cost-row span,.maintenance-type-cost-row small{color:var(--text-secondary);font-size:11px}.maintenance-type-cost-track{background:var(--bg-secondary,var(--border));border-radius:999px;height:6px;overflow:hidden}.maintenance-type-cost-track span{background:#3b82f6;border-radius:999px;height:100%;display:block}.maintenance-type-cost-row small{align-self:center}.maintenance-analytics-empty{width:100%;min-height:110px;color:var(--text-secondary);text-align:center;justify-content:center;align-items:center;padding:16px;font-size:11px;line-height:1.5;display:flex}.maintenance-analytics-grid .maintenance-analytics-empty{min-height:175px}.maintenance-history-card{overflow:hidden}.maintenance-history-table-wrap{width:100%;max-height:360px;overflow:auto}.maintenance-history-table{border-collapse:collapse;white-space:nowrap;width:100%;min-width:760px}.maintenance-history-table th{z-index:1;border-bottom:1px solid var(--border);background:var(--card);color:var(--text-secondary);letter-spacing:.03em;text-align:left;text-transform:uppercase;padding:8px 9px;font-size:11px;font-weight:600;position:sticky;top:0}.maintenance-history-table td{border-bottom:1px solid var(--border);color:var(--text-secondary);padding:9px;font-size:11px}.maintenance-history-table tbody tr:last-child td{border-bottom:0}.maintenance-history-table td strong{color:var(--text);font-weight:600}.maintenance-history-cost{font-variant-numeric:tabular-nums;text-align:right!important}.maintenance-history-table td.maintenance-history-cost{color:var(--text);font-weight:700}@media (width<=1050px){.maintenance-analytics-grid{grid-template-columns:1fr}.maintenance-analytics-chart-card,.maintenance-analytics-grid>.maintenance-analytics-card{min-height:auto}}@media (width<=820px){.maintenance-analytics-header{flex-direction:column;align-items:flex-start}.maintenance-analytics-actions{flex-wrap:wrap;width:100%}.maintenance-analytics-actions select{flex:160px}.maintenance-analytics-kpis{grid-template-columns:1fr}}@media (width<=540px){.maintenance-analytics-actions button{flex:auto}.maintenance-analytics-chart{height:185px;min-height:185px}}.maintenance-calendar-modal-backdrop{z-index:1200;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#020617b8;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.maintenance-calendar-modal{border:1px solid var(--border);background:var(--card);border-radius:18px;width:min(980px,100vw - 48px);max-height:calc(100vh - 48px);overflow:hidden;box-shadow:0 28px 80px #00000057}.maintenance-calendar-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:20px;padding:20px 22px 16px;display:flex}.maintenance-calendar-modal-eyebrow{color:#4f6fff;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:700;display:block}.maintenance-calendar-modal-header h2{color:var(--text);margin:0;font-size:20px}.maintenance-calendar-modal-header p{color:var(--text-secondary);margin:4px 0 0;font-size:11px}.maintenance-calendar-modal-close,.maintenance-calendar-modal-navigation button{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:flex}.maintenance-calendar-modal-close{border-radius:9px;width:34px;height:34px;font-size:19px}.maintenance-calendar-modal-close:hover,.maintenance-calendar-modal-navigation button:hover{color:#4f6fff;background:#4f6fff14;border-color:#4f6fff73}.maintenance-calendar-modal-toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:12px 22px;display:flex}.maintenance-calendar-modal-navigation{align-items:center;gap:12px;display:flex}.maintenance-calendar-modal-navigation button{border-radius:8px;width:30px;height:30px;font-size:18px}.maintenance-calendar-modal-navigation strong{min-width:170px;color:var(--text);text-align:center;text-transform:capitalize;font-size:13px}.maintenance-calendar-today{color:#4f6fff;cursor:pointer;background:#4f6fff1a;border:1px solid #4f6fff59;border-radius:8px;height:30px;padding:0 13px;font-size:11px;font-weight:700}.maintenance-calendar-today:hover{background:#4f6fff29}.maintenance-calendar-modal-body{grid-template-columns:minmax(0,1fr) 280px;min-height:520px;max-height:calc(100vh - 190px);display:grid}.maintenance-month-grid-wrap{min-width:0;padding:16px 18px 18px;overflow:auto}.maintenance-month-weekdays,.maintenance-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.maintenance-month-weekdays{margin-bottom:6px}.maintenance-month-weekdays span{color:var(--text-secondary);text-align:center;text-transform:uppercase;padding:6px;font-size:11px;font-weight:700}.maintenance-month-grid{gap:6px}.maintenance-month-day{border:1px solid var(--border);background:var(--background);min-height:72px;color:var(--text);cursor:pointer;border-radius:10px;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:8px;transition:border-color .15s,background .15s,transform .15s;display:flex;position:relative}.maintenance-month-day:hover{background:#4f6fff0d;border-color:#4f6fff61;transform:translateY(-1px)}.maintenance-month-day.is-outside{opacity:.38}.maintenance-month-day.is-today{box-shadow:inset 0 0 0 1px #4f6fffa6}.maintenance-month-day.is-selected{background:#4f6fff1a;border-color:#4f6fff}.maintenance-month-day-number{border-radius:7px;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;font-weight:700;display:flex}.maintenance-month-day.is-today .maintenance-month-day-number{color:#fff;background:#4f6fff}.maintenance-month-day-events{align-items:center;gap:4px;min-height:14px;display:flex}.maintenance-month-event-dot{background:#4f6fff;border-radius:999px;width:6px;height:6px}.maintenance-month-event-dot--overdue{background:#ef4444}.maintenance-month-event-dot--in-progress{background:#f59e0b}.maintenance-month-event-dot--draft{background:#8b5cf6}.maintenance-month-day-events small{color:var(--text-secondary);font-size:8px}.maintenance-calendar-day-panel{border-left:1px solid var(--border);background:var(--card);flex-direction:column;min-width:0;display:flex}.maintenance-calendar-day-panel>header{border-bottom:1px solid var(--border);align-items:center;gap:9px;padding:15px 16px;display:flex}.maintenance-calendar-day-panel>header>svg{color:#4f6fff;font-size:19px}.maintenance-calendar-day-panel>header strong,.maintenance-calendar-day-panel>header span{display:block}.maintenance-calendar-day-panel>header strong{color:var(--text);text-transform:capitalize;font-size:11px}.maintenance-calendar-day-panel>header span{color:var(--text-secondary);margin-top:3px;font-size:9px}.maintenance-calendar-day-list{flex:1;min-height:0;padding:8px 12px 14px;overflow:auto}.maintenance-calendar-day-item{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;padding:10px 4px;display:grid}.maintenance-calendar-day-item:last-child{border-bottom:0}.maintenance-calendar-day-item:hover strong{color:#4f6fff}.maintenance-calendar-day-status{color:#4f6fff;background:#4f6fff1a;border-radius:9px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.maintenance-calendar-day-status--overdue{color:#ef4444;background:#ef44441a}.maintenance-calendar-day-status--in-progress{color:#d97706;background:#f59e0b1f}.maintenance-calendar-day-status--draft{color:#8b5cf6;background:#8b5cf61a}.maintenance-calendar-day-item strong,.maintenance-calendar-day-item span,.maintenance-calendar-day-item small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.maintenance-calendar-day-item strong{font-size:10px}.maintenance-calendar-day-item span{color:var(--text-secondary);margin-top:2px;font-size:9px}.maintenance-calendar-day-item small{color:var(--text-secondary);margin-top:3px;font-size:8px}.maintenance-calendar-day-empty{color:var(--text-secondary);text-align:center;padding:34px 12px;font-size:11px;line-height:1.5}@media (width<=820px){.maintenance-calendar-modal-backdrop{padding:12px}.maintenance-calendar-modal{width:100%;max-height:calc(100vh - 24px)}.maintenance-calendar-modal-body{grid-template-columns:1fr;max-height:calc(100vh - 180px);overflow:auto}.maintenance-calendar-day-panel{border-top:1px solid var(--border);border-left:0;min-height:260px}.maintenance-month-day{min-height:58px;padding:6px}.maintenance-calendar-modal-header{padding:16px}.maintenance-calendar-modal-toolbar{padding:10px 16px}}@media (width<=560px){.maintenance-calendar-modal-header p{display:none}.maintenance-calendar-modal-navigation{justify-content:space-between;width:100%}.maintenance-calendar-modal-toolbar{flex-direction:column;align-items:stretch}.maintenance-calendar-today{width:100%}.maintenance-month-grid-wrap{padding:10px}.maintenance-month-grid{gap:3px}.maintenance-month-day{border-radius:7px;min-height:48px}.maintenance-month-day-number{width:20px;height:20px}.maintenance-month-day-events{gap:2px}.maintenance-month-event-dot{width:5px;height:5px}.maintenance-month-weekdays span{font-size:8px}}.maintenance-agenda-card{min-height:100%;color:var(--text);background:var(--card);border:1px solid var(--border);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.maintenance-agenda-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:12px;display:flex}.maintenance-agenda-header>div:first-child{flex-direction:column;gap:2px;min-width:0;display:flex}.maintenance-agenda-header span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.maintenance-agenda-header strong{font-size:13px}.maintenance-agenda-range{background:var(--background);border:1px solid var(--border);border-radius:8px;padding:3px;display:inline-flex}.maintenance-agenda-range button{height:27px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0 8px;font-size:11px;font-weight:700}.maintenance-agenda-range button.is-active{color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, var(--card))}.maintenance-agenda-summary{border-bottom:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 12px;display:grid}.maintenance-agenda-summary>div{background:var(--background);border:1px solid var(--border);border-radius:9px;align-items:baseline;gap:5px;padding:8px 10px;display:flex}.maintenance-agenda-summary strong{font-size:16px}.maintenance-agenda-summary span{color:var(--text-secondary);font-size:11px}.maintenance-agenda-summary .is-alert strong{color:var(--danger,#ef4444)}.maintenance-agenda-content{scrollbar-width:thin;flex-direction:column;flex:auto;min-height:0;padding:8px 12px 12px;display:flex;overflow-y:auto}.maintenance-agenda-group+.maintenance-agenda-group{margin-top:10px}.maintenance-agenda-group-title{min-height:25px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:6px;font-size:11px;display:flex}.maintenance-agenda-group-title svg{color:var(--primary);font-size:13px}.maintenance-agenda-group-title strong{color:var(--text);font-size:11px}.maintenance-agenda-group-title span{background:var(--background);border-radius:999px;margin-left:auto;padding:2px 6px}.maintenance-agenda-group--overdue .maintenance-agenda-group-title svg,.maintenance-agenda-group--overdue .maintenance-agenda-group-title strong{color:var(--danger,#ef4444)}.maintenance-agenda-item{width:100%;color:var(--text);text-align:left;background:var(--background);border:1px solid var(--border);cursor:pointer;border-radius:9px;grid-template-columns:4px minmax(0,1fr) auto;align-items:center;gap:9px;margin-top:5px;padding:9px;transition:border-color .15s,transform .15s;display:grid}.maintenance-agenda-item:hover{border-color:color-mix(in srgb, var(--primary) 45%, var(--border));transform:translateY(-1px)}.maintenance-agenda-item.is-overdue{border-color:color-mix(in srgb, var(--danger,#ef4444) 25%, var(--border))}.maintenance-agenda-priority{background:#60a5fa;border-radius:999px;align-self:stretch;width:4px;min-height:34px}.maintenance-agenda-priority--critical{background:#ef4444}.maintenance-agenda-priority--high{background:#f59e0b}.maintenance-agenda-priority--medium{background:#60a5fa}.maintenance-agenda-priority--low{background:#34d399}.maintenance-agenda-item-main{flex-direction:column;gap:2px;min-width:0;display:flex}.maintenance-agenda-item-main strong,.maintenance-agenda-item-main span,.maintenance-agenda-item-main small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.maintenance-agenda-item-main strong{font-size:11px}.maintenance-agenda-item-main span,.maintenance-agenda-item-main small{color:var(--text-secondary);font-size:11px}.maintenance-agenda-item-meta{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:3px;font-size:11px;display:flex}.maintenance-agenda-item.is-overdue .maintenance-agenda-item-meta{color:var(--danger,#ef4444)}.maintenance-agenda-item-meta svg{font-size:15px}.maintenance-agenda-empty{min-height:180px;color:var(--text-secondary);text-align:center;flex:auto;justify-content:center;align-items:center;padding:20px;font-size:11px;display:flex}@media (width<=520px){.maintenance-agenda-header{flex-direction:column;align-items:flex-start}.maintenance-agenda-range{width:100%}.maintenance-agenda-range button{flex:1}.maintenance-agenda-item{grid-template-columns:4px minmax(0,1fr)}.maintenance-agenda-item-meta{grid-column:2;justify-content:flex-start}}.maintenance-template-overlay{z-index:1300;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a99;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.maintenance-template-manager{background:var(--card);border:1px solid var(--border);border-radius:16px;width:min(980px,100%);max-height:calc(100vh - 40px);overflow:hidden;box-shadow:0 24px 70px #00000047}.maintenance-template-manager>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:15px 18px;display:flex}.maintenance-template-manager>header h2{color:var(--text);margin:0;font-size:15px}.maintenance-template-manager>header p{color:var(--text-secondary);margin:3px 0 0;font-size:9px}.maintenance-template-manager>header button{width:31px;height:31px;color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:0;display:flex}.maintenance-template-body{grid-template-columns:300px minmax(0,1fr);min-height:540px;max-height:calc(100vh - 112px);display:grid}.maintenance-template-list-panel{border-right:1px solid var(--border);background:var(--background);min-height:0;overflow:hidden}.maintenance-template-toolbar{border-bottom:1px solid var(--border);gap:7px;padding:10px;display:flex}.maintenance-template-toolbar button{height:31px;color:var(--text);background:var(--card);border:1px solid var(--border);cursor:pointer;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:11px;display:flex}.maintenance-template-toolbar button:last-child{width:31px;padding:0}.maintenance-template-list{max-height:calc(100% - 52px);padding:7px;overflow-y:auto}.maintenance-template-item{border:1px solid var(--border);background:var(--card);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:5px;margin-bottom:5px;display:grid}.maintenance-template-item.is-active{border-color:#2563eb}.maintenance-template-item>button{text-align:left;cursor:pointer;background:0 0;border:0;min-width:0;padding:9px}.maintenance-template-item strong,.maintenance-template-item span{display:block}.maintenance-template-item strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.maintenance-template-item span{color:var(--text-secondary);margin-top:3px;font-size:8px}.maintenance-template-item>div{align-items:center;gap:3px;padding-right:6px;display:flex}.maintenance-template-item>div button{width:27px;height:27px;color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0;display:flex}.maintenance-template-item>div .danger{color:#dc2626}.maintenance-template-empty{color:var(--text-secondary);text-align:center;padding:24px 10px;font-size:11px}.maintenance-template-form{min-height:0;padding:16px 18px;overflow-y:auto}.maintenance-template-form h3{color:var(--text);margin:0 0 12px;font-size:13px}.maintenance-template-form label{flex-direction:column;gap:5px;margin-bottom:10px;display:flex}.maintenance-template-form label>span{color:var(--text-secondary);font-size:11px;font-weight:600}.maintenance-template-form input,.maintenance-template-form select,.maintenance-template-form textarea{box-sizing:border-box;width:100%;min-height:34px;color:var(--text);background:var(--background);border:1px solid var(--border);border-radius:7px;outline:none;padding:7px 9px;font-size:11px}.maintenance-template-form textarea{resize:vertical;min-height:62px}.maintenance-template-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.maintenance-template-check{flex-direction:row!important;align-items:center!important}.maintenance-template-check input{width:15px!important;min-height:15px!important}.maintenance-template-error{color:#b91c1c;background:#ef444414;border:1px solid #ef444433;border-radius:7px;margin-bottom:10px;padding:8px 9px;font-size:9px}.maintenance-template-form footer{border-top:1px solid var(--border);justify-content:flex-end;gap:7px;padding-top:10px;display:flex}.maintenance-template-form footer button{height:33px;color:var(--text);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:7px;padding:0 11px;font-size:11px;font-weight:700}.maintenance-template-form footer .primary{color:#fff;background:#2563eb;border-color:#2563eb}@media (width<=760px){.maintenance-template-overlay{align-items:flex-end;padding:0}.maintenance-template-manager{border-radius:16px 16px 0 0;width:100%;max-height:95dvh}.maintenance-template-body{grid-template-columns:1fr;max-height:calc(95dvh - 62px);overflow-y:auto}.maintenance-template-list-panel{border-right:0;border-bottom:1px solid var(--border);max-height:230px}.maintenance-template-grid{grid-template-columns:1fr 1fr}}@media (width<=480px){.maintenance-template-grid{grid-template-columns:1fr}}.fuel-page{flex-direction:column;gap:14px;height:calc(100vh - 90px);min-height:0;display:flex}.fuel-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.fuel-header h1{color:var(--text);margin:0;font-size:20px}.fuel-header p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.fuel-header-actions{gap:9px;display:flex}.fuel-alert-message,.fuel-modal-error{color:#dc2626;background:#dc262614;border:1px solid #dc26264d;border-radius:10px;padding:10px 13px;font-size:11px}.fuel-layout{flex:1;grid-template-columns:290px minmax(0,1fr);gap:14px;min-height:0;display:grid}.fuel-vehicles-card,.fuel-vehicle-heading,.fuel-overview-grid article,.fuel-table-card,.fuel-empty-card{border:1px solid var(--border);background:var(--card);border-radius:14px}.fuel-vehicles-card{flex-direction:column;min-height:0;padding:12px;display:flex}.fuel-search{border:1px solid var(--border);background:var(--background);height:40px;color:var(--text-secondary);border-radius:10px;align-items:center;gap:8px;padding:0 11px;display:flex}.fuel-search input{width:100%;color:var(--text);background:0 0;border:0;outline:0}.fuel-vehicle-list{flex-direction:column;gap:6px;margin-top:10px;display:flex;overflow:auto}.fuel-vehicle-list button{color:var(--text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:11px;display:flex}.fuel-vehicle-list button:hover{background:var(--hover)}.fuel-vehicle-list button.active{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary) 9%,transparent)}.fuel-vehicle-list strong,.fuel-vehicle-list small{display:block}.fuel-vehicle-list strong{font-size:11px}.fuel-vehicle-list small{color:var(--text-secondary);margin-top:3px;font-size:9px}.fuel-vehicle-list b{color:var(--text-secondary);text-transform:uppercase;font-size:11px}.fuel-empty{color:var(--text-secondary);text-align:center;padding:20px;font-size:11px}.fuel-content{flex-direction:column;gap:12px;min-width:0;padding-right:2px;display:flex;overflow:auto}.fuel-empty-card{min-height:320px;color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.fuel-empty-card svg{font-size:46px}.fuel-vehicle-heading{justify-content:space-between;align-items:center;padding:15px 17px;display:flex}.fuel-vehicle-heading span{color:var(--text-secondary);text-transform:uppercase;font-size:11px}.fuel-vehicle-heading h2{color:var(--text);margin:4px 0;font-size:20px}.fuel-vehicle-heading p{color:var(--text-secondary);margin:0;font-size:10px}.fuel-vehicle-heading>div:last-child span{border-radius:999px;padding:6px 9px;font-weight:800;display:inline-flex}.fuel-vehicle-heading>div:last-child span.active{color:#16a34a;background:#16a34a1f}.fuel-vehicle-heading>div:last-child span.inactive{color:#64748b;background:#64748b24}.fuel-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.fuel-kpis article{border:1px solid var(--border);background:var(--card);border-radius:13px;align-items:center;gap:10px;padding:13px;display:flex}.fuel-kpis article>span{background:color-mix(in srgb,var(--primary) 10%,transparent);width:38px;height:38px;color:var(--primary);border-radius:10px;place-items:center;font-size:20px;display:grid}.fuel-kpis article.danger>span{color:#dc2626;background:#dc26261a}.fuel-kpis small,.fuel-kpis strong{display:block}.fuel-kpis small{color:var(--text-secondary);font-size:9px}.fuel-kpis strong{color:var(--text);margin-top:3px;font-size:14px}.fuel-kpis article.danger strong{color:#dc2626}.fuel-overview-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.fuel-overview-grid article{padding:15px}.fuel-overview-grid header{color:var(--text);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:11px;display:flex}.fuel-overview-grid header button{border:1px solid var(--border);background:var(--background);width:30px;height:30px;color:var(--text-secondary);cursor:pointer;border-radius:8px;place-items:center;display:grid}.fuel-overview-grid header button:disabled{opacity:.4;cursor:not-allowed}.fuel-info{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:8px 0;display:flex}.fuel-info:last-child{border:0}.fuel-info span{color:var(--text-secondary);font-size:9px}.fuel-info strong{color:var(--text);text-align:right;font-size:11px}.fuel-table-card{flex-direction:column;min-height:260px;display:flex;overflow:hidden}.fuel-section-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.fuel-section-heading h3{color:var(--text);margin:0;font-size:12px}.fuel-section-heading p{color:var(--text-secondary);margin:3px 0 0;font-size:9px}.fuel-table-wrap{min-height:150px;overflow:auto}.fuel-table-wrap table{border-collapse:collapse;width:100%;min-width:820px}.fuel-table-wrap th,.fuel-table-wrap td{border-bottom:1px solid var(--border);color:var(--text);text-align:left;vertical-align:middle;padding:11px 13px;font-size:11px}.fuel-table-wrap th{background:var(--card);color:var(--text-secondary);text-transform:uppercase;font-size:11px}.fuel-entry-type,.fuel-alert-status{text-transform:uppercase;border-radius:999px;padding:5px 7px;font-size:11px;font-weight:800;display:inline-flex}.fuel-entry-type.refuel{color:#16a34a;background:#16a34a1f}.fuel-entry-type.drain{color:#dc2626;background:#dc26261a}.fuel-entry-type.adjustment{color:#0284c7;background:#0284c71a}.fuel-alert-status.open{color:#dc2626;background:#dc26261a}.fuel-alert-status.resolved{color:#16a34a;background:#16a34a1f}.fuel-row-actions{gap:5px;display:flex}.fuel-row-actions button{border:1px solid var(--border);background:var(--card);width:30px;height:30px;color:var(--text-secondary);cursor:pointer;border-radius:8px;place-items:center;display:grid}.fuel-row-actions button:disabled{opacity:.4;cursor:not-allowed}.fuel-resolve-btn{padding:6px 9px!important;font-size:9px!important}.fuel-resolved-date{color:var(--text-secondary);font-size:9px}.fuel-table-empty{color:var(--text-secondary);text-align:center;padding:25px;font-size:11px}.fuel-modal-layer{z-index:1400;position:fixed;inset:0}.fuel-modal-backdrop{background:#0f172a85;border:0;position:absolute;inset:0}.fuel-modal{background:var(--card);border-radius:16px;width:min(720px,100% - 30px);max-height:calc(100vh - 40px);position:absolute;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 24px 70px #00000047}.fuel-modal>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.fuel-modal>header>div{align-items:center;gap:9px;display:flex}.fuel-modal>header svg{color:var(--primary);font-size:20px}.fuel-modal>header h2{color:var(--text);margin:0;font-size:16px}.fuel-modal>header>button{border:1px solid var(--border);background:var(--background);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;border-radius:8px;place-items:center;display:grid}.fuel-form,.fuel-resolve-content{padding:18px}.fuel-form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.fuel-form-grid label,.fuel-resolve-content label{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:10px;display:flex}.fuel-form-grid label.full{grid-column:1/-1}.fuel-form input,.fuel-form select,.fuel-form textarea,.fuel-resolve-content textarea{box-sizing:border-box;border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);border-radius:9px;outline:0}.fuel-form input,.fuel-form select{height:40px;padding:0 10px}.fuel-form textarea,.fuel-resolve-content textarea{resize:vertical;padding:10px}.fuel-switch{justify-content:center}.fuel-switch input{width:16px;height:16px}.fuel-switch{flex-direction:row!important;justify-content:flex-start!important;align-items:center!important}.fuel-form footer,.fuel-resolve-content footer{border-top:1px solid var(--border);justify-content:flex-end;gap:9px;margin-top:18px;padding-top:15px;display:flex}.fuel-modal-error{margin-top:12px}.fuel-resolve-content>strong{color:var(--text);font-size:13px}.fuel-resolve-content>p{color:var(--text-secondary);font-size:11px;line-height:1.6}@media (width<=1250px){.fuel-kpis{grid-template-columns:repeat(3,1fr)}.fuel-layout{grid-template-columns:250px minmax(0,1fr)}}@media (width<=900px){.fuel-page{height:auto}.fuel-header{flex-direction:column;align-items:flex-start}.fuel-header-actions{flex-wrap:wrap;width:100%}.fuel-layout{grid-template-columns:1fr}.fuel-vehicles-card{max-height:320px}.fuel-kpis{grid-template-columns:1fr 1fr}.fuel-overview-grid{grid-template-columns:1fr}}@media (width<=620px){.fuel-kpis,.fuel-form-grid{grid-template-columns:1fr}.fuel-form-grid label.full{grid-column:auto}.fuel-header-actions button{flex:1}}.reports-page{background:var(--background);width:100%;height:auto;min-height:100%;display:flex;overflow:visible}.reports-content{flex-direction:column;flex:1;min-width:0;display:flex}.reports-content::-webkit-scrollbar{width:6px}.reports-content::-webkit-scrollbar-track{background:0 0}.reports-content::-webkit-scrollbar-thumb{background:#94a3b847;border-radius:999px}.reports-content::-webkit-scrollbar-thumb:hover{background:#94a3b873}.reports-layout{flex-direction:column;flex:1;gap:8px;padding:0 8px 8px;display:flex}.reports-header{justify-content:space-between;align-items:center;gap:12px;padding:8px;display:flex}.reports-header h1{color:var(--text);margin:0;font-size:20px;font-weight:700}.reports-header p{color:var(--text-secondary);margin-top:3px;font-size:12px}.reports-actions{align-items:center;gap:8px;font-size:13px;display:flex}.schedule-report-btn,.export-report-btn{cursor:pointer;border-radius:8px;height:34px;padding:0 14px;font-size:12px;font-weight:600;transition:all .15s}.schedule-report-btn{border:1px solid var(--border);color:var(--text);background:0 0}.schedule-report-btn:hover{background:#ffffff0d}.export-report-btn{background:var(--primary);color:#fff;border:none}.export-report-btn:hover{filter:brightness(1.05)}.reports-charts{grid-template-columns:1fr 1fr;gap:8px;display:grid}.reports-bottom{grid-template-columns:1.2fr 1.3fr 1fr;gap:8px;display:grid}.report-chart-card,.reports-card{background:var(--card);border:1px solid var(--border);border-radius:12px;flex-direction:column;padding:10px;display:flex}.report-chart-header,.reports-card-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.report-chart-header h3,.reports-card h3{color:var(--text);margin:0;font-size:13px;font-weight:600}.reports-loading{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:9999;background:#0000008c;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.reports-spinner{border:4px solid #ffffff2e;border-top-color:var(--primary);border-radius:50%;width:48px;height:48px;animation:1s linear infinite spin}.reports-loading h3{color:#fff;margin-top:14px;font-size:16px;font-weight:600}.reports-loading p{color:#ffffffbf;margin-top:4px;font-size:12px}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1366px){.reports-layout{gap:8px;padding:0 8px 8px}.reports-header{padding:8px}.reports-header h1{font-size:20px}.reports-header p{font-size:11px}}@media (width<=1200px){.reports-charts,.reports-bottom{grid-template-columns:1fr}}@media (width<=768px){.reports-header{flex-direction:column;align-items:flex-start}.reports-actions{width:100%}.schedule-report-btn,.export-report-btn{flex:1}}.reports-empty-state{border:1px dashed var(--border);background:var(--card);min-height:180px;color:var(--text-secondary);text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:24px;display:flex}.reports-empty-state strong{color:var(--text);font-size:14px}.reports-empty-state span{font-size:12px}.export-report-btn:disabled{cursor:not-allowed;opacity:.45;filter:none}@media (width<=900px){.reports-layout,.reports-header{padding-inline:0}}@media (width<=768px){.reports-page,.reports-content,.reports-layout{width:100%;min-width:0}.reports-header{gap:10px}.reports-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.schedule-report-btn,.export-report-btn{width:100%;padding-inline:10px}.report-chart-card,.reports-card{min-width:0;overflow:hidden}}@media (width<=480px){.reports-header h1{font-size:18px}.reports-actions{grid-template-columns:1fr}}.reports-status-message{border:1px solid var(--border);background:var(--card);border-radius:10px;flex-direction:column;gap:3px;padding:10px 12px;font-size:12px;display:flex}.reports-status-message strong{font-size:12px}.reports-status-message span{color:var(--text-secondary)}.reports-status-message.error{border-color:color-mix(in srgb,#ef4444 45%,var(--border));background:color-mix(in srgb,#ef4444 8%,var(--card))}.reports-status-message.error strong{color:#ef4444}.reports-status-message.warning{border-color:color-mix(in srgb,#f59e0b 45%,var(--border));background:color-mix(in srgb,#f59e0b 8%,var(--card))}.reports-status-message.warning strong{color:#f59e0b}.reports-exporting{z-index:10000;border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:10px;padding:10px 14px;font-size:12px;font-weight:700;position:fixed;bottom:18px;right:18px;box-shadow:0 12px 30px #0f172a38}.reports-filter-block{flex-direction:column;gap:8px;display:flex}.reports-filters{background:var(--card);border:1px solid var(--border);border-radius:12px;grid-template-columns:1fr 1fr 1.2fr 1fr auto;gap:10px;padding:12px;display:grid}.filter-item{flex-direction:column;gap:5px;min-width:0;display:flex}.filter-item label{color:var(--text-secondary);font-size:11px;font-weight:600}.filter-input{border:1px solid var(--border);background:var(--background);height:36px;color:var(--text);border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:flex}.filter-input:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 12%,transparent)}.filter-input svg{color:var(--text-secondary);flex:none;font-size:15px}.filter-input select{width:100%;height:100%;color:var(--text);cursor:pointer;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;background:0 0;border:none;outline:none;font-size:12px;font-weight:500}@media (prefers-color-scheme:dark){.filter-input select{--lightningcss-light: ;--lightningcss-dark:initial}}.filter-input select option{background:var(--card);color:var(--text)}.autocomplete-filter{align-items:center;gap:10px;display:flex}.autocomplete-filter .MuiAutocomplete-root{flex:1;min-width:0}.autocomplete-filter .MuiInputBase-root,.autocomplete-filter .MuiInputBase-input{color:var(--text)}.autocomplete-filter .MuiSvgIcon-root{color:var(--text-secondary)}.generate-report-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;align-self:flex-end;height:36px;padding:0 16px;font-size:13px;font-weight:600;transition:all .15s}.generate-report-btn:hover:not(:disabled){filter:brightness(1.05)}.generate-report-btn:disabled{cursor:not-allowed;opacity:.55}.reports-custom-range{border:1px solid var(--border);background:var(--card);border-radius:10px;justify-content:flex-end;gap:10px;padding:10px 12px;display:flex}.reports-custom-range label{color:var(--text-secondary);align-items:center;gap:8px;font-size:11px;font-weight:600;display:flex}.reports-custom-range input{border:1px solid var(--border);background:var(--background);height:34px;color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;border-radius:8px;outline:none;padding:0 10px}@media (prefers-color-scheme:dark){.reports-custom-range input{--lightningcss-light: ;--lightningcss-dark:initial}}.reports-custom-range input:focus{border-color:var(--primary)}.reports-filter-error{border:1px solid color-mix(in srgb,#ef4444 45%,var(--border));background:color-mix(in srgb,#ef4444 10%,var(--card));color:#ef4444;border-radius:9px;padding:9px 12px;font-size:12px;font-weight:600}@media (width<=1200px){.reports-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.generate-report-btn{justify-self:stretch}}@media (width<=640px){.reports-filters{padding:var(--space-2);grid-template-columns:1fr}.reports-custom-range{grid-template-columns:1fr;display:grid}.reports-custom-range label{grid-template-columns:48px 1fr;display:grid}.generate-report-btn{width:100%}}.reports-stats{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.reports-stat-card{background:var(--card);border:1px solid var(--border);border-radius:12px;align-items:center;gap:10px;min-height:76px;padding:10px 12px;display:flex}.reports-stat-icon{border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;font-size:19px;display:flex}.reports-stat-content{flex-direction:column;display:flex}.reports-stat-content span{color:var(--text-secondary);font-size:11px}.reports-stat-content h3{margin:2px 0;font-size:16px;font-weight:700}.reports-stat-content small{font-size:11px}.positive{color:#22c55e}.negative{color:#ef4444}.reports-stat-icon.blue{color:#3b82f6;background:#2563eb26}.reports-stat-icon.green{color:#22c55e;background:#22c55e26}.reports-stat-icon.purple{color:#a855f7;background:#a855f726}.reports-stat-icon.orange{color:#f97316;background:#f9731626}.reports-stat-icon.cyan{color:#06b6d4;background:#06b6d426}@media (width<=1600px){.reports-stats{grid-template-columns:repeat(5,1fr)}}@media (width<=1200px){.reports-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=700px){.reports-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.report-chart-card{background:var(--card);border:1px solid var(--border);border-radius:12px;min-height:180px;padding:12px}.report-chart-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.report-chart-header h3{color:var(--text);margin:0;font-size:12px;font-weight:700}.group-table{border-collapse:collapse;width:100%}.group-table th{text-align:left;color:var(--text-secondary);padding-bottom:8px}.group-table td{border-top:1px solid #ffffff0d;padding:9px 0}.report-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:12px}.report-card h3{margin:0 0 12px;font-size:14px}.report-card .empty-report{font-size:12px}.report-card .group-table thead{font-size:13px}.report-card .group-table tbody tr td{font-size:12px}.top-vehicles-list{flex-direction:column;gap:10px;font-size:12px;display:flex}.vehicle-row{align-items:center;gap:10px;display:flex}.vehicle-rank{color:#fff;background:#2563eb;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:600;display:flex}.vehicle-name{width:min(180px,38%)}.vehicle-bar{background:#ffffff0f;border-radius:999px;flex:1;height:6px}.vehicle-bar-fill{background:linear-gradient(90deg,#2563eb,#3b82f6);border-radius:999px;height:100%}.vehicle-distance{text-align:right;width:80px;font-weight:600}.events-content{align-items:center;gap:12px;display:flex}.events-chart{width:190px;height:190px;position:relative}.events-center{flex-direction:column;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.events-center span{font-size:20px;font-weight:700}.events-center small{color:var(--text-secondary)}.events-legend{flex-direction:column;flex:1;gap:8px;display:flex}.legend-item{align-items:center;gap:10px;display:flex}.legend-dot{border-radius:50%;width:9px;height:9px}.legend-item span{color:var(--text-primary);flex:1}.legend-item strong{color:var(--text-primary)}.legend-item,.events-center small{font-size:11px}@media (width<=640px){.events-content{flex-direction:column;align-items:flex-start}}.report-table-wrapper{border-radius:10px;width:100%;max-height:calc(100vh - 320px);overflow:auto}.report-table{border-collapse:collapse;width:100%}.report-table thead th{z-index:5;background:var(--card);position:sticky;top:0}.report-table th{text-align:left;background:var(--card);border-bottom:1px solid var(--border);padding:14px;font-size:14px;font-weight:600}.report-table td{border-bottom:1px solid var(--border);padding:14px;font-size:13px}.report-table tr:hover{background:#3b82f60d}.vehicle-cell{flex-direction:column;display:flex}.vehicle-cell strong{color:var(--text)}.vehicle-cell small{color:var(--text-secondary);font-size:11px}.report-table-wrapper::-webkit-scrollbar{width:10px;height:10px}.report-table-wrapper::-webkit-scrollbar-track{background:var(--background)}.report-table-wrapper::-webkit-scrollbar-thumb{background:#78787859;border-radius:20px}.report-table-wrapper::-webkit-scrollbar-thumb:hover{background:#78787899}@media (width<=900px){.reports-operational-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.reports-operational-stats{grid-template-columns:1fr}.reports-speed-chart{height:230px}}@media (width<=900px){.reports-operational-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.reports-operational-stats{grid-template-columns:1fr}.reports-speed-chart{height:230px}}.reports-fuel-grid{grid-template-columns:1fr;gap:10px;display:grid}.reports-fuel-badge{color:#3b82f6;background:#3b82f61f;border-radius:999px;align-items:center;padding:3px 7px;font-size:11px;font-weight:700;display:inline-flex}.reports-fuel-badge.refuel{color:#22c55e;background:#22c55e1f}.reports-fuel-badge.drain,.reports-fuel-badge.alert{color:#ef4444;background:#ef44441f}.reports-fuel-badge.adjustment{color:#f59e0b;background:#f59e0b1f}.reports-fuel-open{color:#ef4444;font-weight:700}.reports-operational-report{flex-direction:column;gap:10px;display:flex}.reports-operational-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.reports-operational-stat,.reports-operational-card{background:var(--card);border:1px solid var(--border);border-radius:12px}.reports-operational-stat{flex-direction:column;gap:5px;padding:14px;display:flex}.reports-operational-stat span{color:var(--text-secondary);font-size:11px}.reports-operational-stat strong{color:var(--text);font-size:19px}.reports-operational-stat.danger strong,.reports-speed-danger{color:#ef4444!important}.reports-operational-card{padding:12px}.reports-operational-card-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.reports-operational-card-header h3{color:var(--text);margin:0;font-size:14px}.reports-operational-card-header p{color:var(--text-secondary);margin:3px 0 0;font-size:11px}.reports-speed-chart{height:280px}.reports-speed-tooltip{border:1px solid var(--border);background:var(--card);border-radius:9px;flex-direction:column;gap:4px;padding:9px 11px;display:flex;box-shadow:0 8px 24px #0f172a2e}.reports-speed-tooltip span{color:var(--text-secondary);font-size:11px}.reports-speed-tooltip strong{color:var(--primary);font-size:12px}.reports-table-wrap{overflow:auto}.reports-operational-empty{text-align:center;color:var(--text-secondary);padding:28px 14px;font-size:12px}@media (width<=900px){.reports-operational-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.reports-operational-stats{grid-template-columns:1fr}.reports-speed-chart{height:230px}}.reports-maintenance-status{color:#3b82f6;background:#3b82f61f;border-radius:999px;padding:3px 7px;font-size:11px;font-weight:700;display:inline-flex}.reports-maintenance-status.completed{color:#22c55e;background:#22c55e1f}.reports-maintenance-status.overdue{color:#ef4444;background:#ef44441f}.reports-maintenance-status.upcoming{color:#f59e0b;background:#f59e0b1f}.reports-maintenance-status.in_progress{color:#06b6d4;background:#06b6d41f}.reports-maintenance-status.cancelled{color:#64748b;background:#64748b1f}.reports-secondary-line{color:var(--text-secondary);margin-top:2px;font-size:11px;font-weight:400;display:block}.roles-page{flex-direction:column;gap:14px;width:100%;min-width:0;padding:18px;display:flex}.roles-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.roles-header h1{color:var(--text);margin:0;font-size:24px;font-weight:700}.roles-header p{color:var(--text-secondary);margin:4px 0 0;font-size:12px}.roles-header-actions{align-items:center;gap:8px;display:flex}.roles-btn{min-height:38px;font:inherit;cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:11px;font-weight:700;transition:background .16s,border-color .16s,color .16s,opacity .16s;display:inline-flex}.roles-btn:disabled{opacity:.5;cursor:not-allowed}.roles-btn-primary{border-color:var(--primary);background:var(--primary);color:#fff}.roles-btn-primary:hover:not(:disabled){filter:brightness(1.04)}.roles-btn-secondary{border-color:var(--border);background:var(--card);color:var(--text)}.roles-btn-secondary:hover:not(:disabled),.roles-btn-ghost:hover:not(:disabled){border-color:color-mix(in srgb, var(--primary) 45%, var(--border));color:var(--primary)}.roles-btn-ghost{color:var(--text-secondary);background:0 0;border-color:#0000}.roles-btn-danger{color:#fff;background:#ef4444;border-color:#ef4444}.roles-environment-banner{border:1px solid color-mix(in srgb, #f59e0b 34%, var(--border));background:color-mix(in srgb, #f59e0b 7%, var(--card));color:#f59e0b;border-radius:11px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.roles-environment-banner>svg{flex:none;margin-top:1px;font-size:18px}.roles-environment-banner div{flex-direction:column;gap:2px;min-width:0;display:flex}.roles-environment-banner strong{font-size:11px}.roles-environment-banner span{color:var(--text-secondary);font-size:11px;line-height:1.4}.roles-alert{border-radius:9px;padding:10px 12px;font-size:11px;line-height:1.4}.roles-alert-error{color:#ef4444;background:#ef44441a;border:1px solid #ef444440}.roles-alert-warning{color:#f59e0b;background:#f59e0b1a;border:1px solid #f59e0b40}.roles-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.roles-stat{border:1px solid var(--border);background:var(--card);border-radius:12px;align-items:center;gap:11px;min-width:0;padding:12px 14px;display:flex}.roles-stat>span{background:color-mix(in srgb, var(--text-secondary) 10%, transparent);width:38px;height:38px;color:var(--text-secondary);border-radius:10px;flex:0 0 38px;justify-content:center;align-items:center;font-size:20px;display:flex}.roles-stat-primary>span{background:color-mix(in srgb, var(--primary) 12%, transparent);color:var(--primary)}.roles-stat-success>span{color:#22c55e;background:#22c55e1f}.roles-stat-warning>span{color:#f59e0b;background:#f59e0b1f}.roles-stat div{flex-direction:column;min-width:0;display:flex}.roles-stat strong{color:var(--text);font-size:21px;line-height:1.1}.roles-stat small{color:var(--text-secondary);margin-top:2px;font-size:11px}.roles-card{border:1px solid var(--border);background:var(--card);border-radius:13px;flex-direction:column;min-width:0;min-height:420px;display:flex;overflow:hidden}.roles-filters{border-bottom:1px solid var(--border);grid-template-columns:minmax(260px,1fr) 180px 180px auto;align-items:center;gap:9px;padding:12px;display:grid}.roles-search{border:1px solid var(--border);background:var(--background);min-width:0;height:38px;color:var(--text-secondary);border-radius:9px;align-items:center;gap:8px;padding:0 11px;display:flex}.roles-search:focus-within{border-color:var(--primary)}.roles-search input{width:100%;min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:0;font-size:11px}.roles-filters select{border:1px solid var(--border);background:var(--background);height:38px;color:var(--text);font:inherit;border-radius:9px;outline:0;padding:0 10px;font-size:11px}.roles-table-wrap{flex:1;min-width:0;overflow:auto}.roles-table{border-collapse:collapse;table-layout:fixed;width:100%}.roles-table th,.roles-table td{border-bottom:1px solid var(--border);color:var(--text);text-align:left;vertical-align:middle;padding:11px 14px;font-size:11px}.roles-table th{z-index:2;background:var(--card);color:var(--text-secondary);font-size:11px;font-weight:700;position:sticky;top:0}.roles-table th:first-child{width:43%}.roles-table th:nth-child(2),.roles-table th:nth-child(3){width:115px}.roles-table th:nth-child(4){width:80px}.roles-table th:nth-child(5){width:70px}.roles-table th:last-child{text-align:right;width:130px}.roles-table td:last-child{text-align:right}.roles-table tbody tr:hover{background:color-mix(in srgb, var(--primary) 4%, transparent)}.roles-role-cell{align-items:center;gap:11px;min-width:0;display:flex}.roles-role-icon{background:color-mix(in srgb, var(--primary) 10%, transparent);width:38px;height:38px;color:var(--primary);border-radius:10px;flex:0 0 38px;justify-content:center;align-items:center;font-size:18px;display:flex}.roles-role-cell>div{flex-direction:column;min-width:0;display:flex}.roles-role-cell strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.roles-role-cell code{color:var(--primary);margin-top:1px;font-family:inherit;font-size:11px;font-weight:700}.roles-role-cell small{max-width:540px;color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;line-height:1.35;display:block;overflow:hidden}.roles-chip,.roles-status{border:0;border-radius:999px;align-items:center;gap:6px;padding:5px 8px;font-size:11px;font-weight:700;display:inline-flex}.roles-chip-system{background:color-mix(in srgb, var(--primary) 11%, transparent);color:var(--primary)}.roles-chip-custom{color:#8b5cf6;background:#8b5cf61f}.roles-status{cursor:pointer}.roles-status i{border-radius:50%;width:6px;height:6px}.roles-status.is-active{color:#22c55e;background:#22c55e1c}.roles-status.is-active i{background:#22c55e}.roles-status.is-inactive{color:#94a3b8;background:#94a3b81f}.roles-status.is-inactive i{background:#94a3b8}.roles-users-count{background:var(--background);min-width:27px;color:var(--text);border-radius:999px;justify-content:center;padding:4px 7px;font-size:11px;font-weight:700;display:inline-flex}.roles-row-actions{align-items:center;gap:3px;display:inline-flex}.roles-row-actions button{width:30px;height:30px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;font-size:16px;display:flex}.roles-row-actions button:hover:not(:disabled){background:var(--hover);color:var(--primary)}.roles-row-actions button.danger:hover:not(:disabled){color:#ef4444}.roles-row-actions button:disabled{opacity:.3;cursor:not-allowed}.roles-empty{min-height:220px;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:5px;display:flex}.roles-empty>svg{opacity:.45;margin-bottom:5px;font-size:36px}.roles-empty strong{color:var(--text);font-size:12px}.roles-empty span{font-size:11px}.roles-skeleton i{background:linear-gradient(90deg, var(--background), var(--hover), var(--background));background-size:200% 100%;border-radius:8px;width:72%;height:12px;animation:1.2s infinite roles-skeleton-pulse;display:block}@keyframes roles-skeleton-pulse{to{background-position:-200% 0}}.roles-overlay{z-index:1200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080f1e85;justify-content:flex-end;display:flex;position:fixed;inset:0}.roles-drawer,.roles-permissions-drawer{background:var(--card);flex-direction:column;width:min(520px,100%);height:100%;animation:.2s roles-drawer-in;display:flex;box-shadow:-20px 0 45px #00000038}.roles-permissions-drawer{width:min(680px,100%)}@keyframes roles-drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}.roles-drawer-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:14px;padding:18px 20px;display:flex}.roles-drawer-header h2{color:var(--text);margin:0;font-size:18px}.roles-drawer-header p{color:var(--text-secondary);margin:4px 0 0;font-size:11px}.roles-drawer-header p strong{color:var(--text)}.roles-drawer-header>button,.roles-dialog-close{width:34px;height:34px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;font-size:20px;display:flex}.roles-drawer-header>button:hover,.roles-dialog-close:hover{background:var(--hover);color:var(--text)}.roles-form{flex-direction:column;flex:1;gap:14px;min-height:0;padding:20px;display:flex;overflow-y:auto}.roles-field{flex-direction:column;gap:5px;display:flex}.roles-field>span{color:var(--text);font-size:11px;font-weight:700}.roles-field input,.roles-field textarea{border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);font:inherit;border-radius:9px;outline:0;padding:0 11px;font-size:11px}.roles-field input{height:40px}.roles-field textarea{resize:vertical;min-height:90px;padding-top:10px}.roles-field input:focus,.roles-field textarea:focus{border-color:var(--primary)}.roles-field input:disabled{opacity:.65;cursor:not-allowed}.roles-field small{color:#ef4444;font-size:11px}.roles-field em{color:var(--text-secondary);font-size:11px;font-style:normal}.roles-switch{border:1px solid var(--border);background:var(--background);cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;padding:11px 12px;display:flex;position:relative}.roles-switch div{flex-direction:column;min-width:0;display:flex}.roles-switch strong{color:var(--text);font-size:11px}.roles-switch span{color:var(--text-secondary);margin-top:2px;font-size:11px}.roles-switch input{opacity:0;position:absolute}.roles-switch>i{background:#94a3b8;border-radius:999px;flex:0 0 38px;width:38px;height:22px;transition:background .18s;position:relative}.roles-switch>i:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .18s;position:absolute;top:3px;left:3px}.roles-switch input:checked+i{background:var(--primary)}.roles-switch input:checked+i:after{transform:translate(16px)}.roles-form-actions,.roles-permissions-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;margin-top:auto;padding-top:16px;display:flex}.roles-permissions-summary{border-bottom:1px solid var(--border);background:var(--border);grid-template-columns:1fr 1fr;gap:1px;display:grid}.roles-permissions-summary>div{background:var(--card);justify-content:space-between;align-items:center;padding:11px 16px;display:flex}.roles-permissions-summary span{color:var(--text-secondary);font-size:11px}.roles-permissions-summary strong{color:var(--text);font-size:15px}.roles-permissions-drawer>.roles-alert{margin:12px 14px 0}.roles-permissions-content{flex:1;min-height:0;padding:12px 14px;overflow-y:auto}.roles-loading{min-height:160px;color:var(--text-secondary);justify-content:center;align-items:center;font-size:11px;display:flex}.roles-permission-group{border:1px solid var(--border);border-radius:10px;margin-bottom:9px;overflow:hidden}.roles-permission-group-header{border:0;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--background) 70%, var(--card));width:100%;color:var(--text);cursor:pointer;grid-template-columns:minmax(0,1fr) auto 20px;align-items:center;gap:10px;padding:10px 12px;display:grid}.roles-permission-group-header>div{align-items:center;gap:7px;min-width:0;display:flex}.roles-permission-group-header svg{color:var(--primary);font-size:16px}.roles-permission-group-header span{font-size:11px;font-weight:700}.roles-permission-group-header small{color:var(--text-secondary);font-size:11px}.roles-permission-group-header>i,.roles-permission-item>i{border:1px solid var(--border);background:var(--card);border-radius:5px;width:17px;height:17px;position:relative}.roles-permission-group-header>i.is-selected{border-color:var(--primary);background:var(--primary)}.roles-permission-group-header>i.is-selected:after{content:"✓";color:#fff;justify-content:center;align-items:center;font-size:11px;font-style:normal;font-weight:800;display:flex;position:absolute;inset:0}.roles-permission-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.roles-permission-item{border-bottom:1px solid var(--border);cursor:pointer;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:9px;padding:9px 11px;display:grid;position:relative}.roles-permission-item:nth-child(odd){border-right:1px solid var(--border)}.roles-permission-item:hover{background:color-mix(in srgb, var(--primary) 4%, transparent)}.roles-permission-item input{opacity:0;position:absolute}.roles-permission-item input:checked+i{border-color:var(--primary);background:var(--primary)}.roles-permission-item input:checked+i:after{content:"✓";color:#fff;justify-content:center;align-items:center;font-size:11px;font-style:normal;font-weight:800;display:flex;position:absolute;inset:0}.roles-permission-item div{flex-direction:column;min-width:0;display:flex}.roles-permission-item strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.roles-permission-item span{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:11px;overflow:hidden}.roles-permissions-actions{flex:none;margin:0;padding:12px 14px}.roles-dialog-overlay{justify-content:center;align-items:center;padding:18px}.roles-dialog{border:1px solid var(--border);background:var(--card);border-radius:13px;width:min(410px,100%);padding:22px;position:relative;box-shadow:0 20px 50px #0000003d}.roles-dialog-close{position:absolute;top:10px;right:10px}.roles-dialog-icon{color:#ef4444;background:#ef44441a;border-radius:11px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:12px;font-size:23px;display:flex}.roles-dialog h3{color:var(--text);margin:0;font-size:17px}.roles-dialog>p{color:var(--text-secondary);margin:7px 0 14px;font-size:11px}.roles-dialog>p strong{color:var(--text)}.roles-dialog .roles-alert{margin-bottom:8px}.roles-dialog-actions{justify-content:flex-end;gap:8px;margin-top:17px;display:flex}@media (width<=1100px){.roles-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.roles-filters{grid-template-columns:minmax(220px,1fr) 160px 160px}.roles-filters .roles-btn{grid-column:1/-1;justify-self:end}}@media (width<=760px){.roles-page{padding:12px}.roles-header{flex-direction:column;align-items:stretch}.roles-header-actions{justify-content:flex-end}.roles-stats{grid-template-columns:1fr 1fr}.roles-filters{grid-template-columns:1fr}.roles-filters .roles-btn{grid-column:auto;justify-self:stretch}.roles-table{min-width:820px}.roles-permission-list{grid-template-columns:1fr}.roles-permission-item:nth-child(odd){border-right:0}}@media (width<=480px){.roles-stats{grid-template-columns:1fr}.roles-header-actions{grid-template-columns:1fr 1fr;display:grid}.roles-btn{padding:0 9px}.roles-drawer-header,.roles-form{padding:15px}}.settings-page{flex-direction:column;gap:14px;min-height:0;display:flex}.settings-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.settings-header h1{color:var(--text);margin:0;font-size:20px}.settings-header p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.settings-actions{gap:10px;display:flex}.settings-btn{cursor:pointer;border-radius:11px;justify-content:center;align-items:center;gap:7px;height:40px;padding:0 16px;font-weight:600;display:inline-flex}.settings-btn.primary{background:var(--primary);color:#fff;border:0}.settings-btn.secondary{border:1px solid var(--border);background:var(--card);color:var(--text)}.settings-btn:disabled{opacity:.5;cursor:not-allowed}.settings-layout{flex:1;grid-template-columns:240px minmax(0,1fr);gap:14px;min-height:0;display:grid}.settings-nav,.settings-panel{border:1px solid var(--border);background:var(--card);border-radius:14px}.settings-nav{flex-direction:column;gap:5px;padding:12px;display:flex}.settings-profile{border-bottom:1px solid var(--border);align-items:center;gap:10px;margin-bottom:5px;padding:8px 8px 16px;display:flex}.settings-profile>div{background:var(--primary);color:#fff;border-radius:11px;place-items:center;width:38px;height:38px;font-weight:700;display:grid}.settings-profile span{flex-direction:column;min-width:0;display:flex}.settings-profile strong{color:var(--text);text-overflow:ellipsis;font-size:12px;overflow:hidden}.settings-profile small{color:var(--text-secondary);font-size:11px}.settings-nav button{width:100%;height:39px;color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;padding:0 11px;font-weight:600;display:flex}.settings-nav button svg{font-size:18px}.settings-nav button:hover{background:var(--background);color:var(--text)}.settings-nav button.active{background:color-mix(in srgb, var(--primary) 12%, transparent);color:var(--primary)}.settings-nav .settings-reset{color:var(--danger);margin-top:auto}.settings-panel{padding:22px}.settings-panel section{max-width:900px}.settings-section-title{align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.settings-section-title>svg{color:var(--primary);font-size:25px}.settings-section-title h2{color:var(--text);margin:0;font-size:17px}.settings-section-title p{color:var(--text-secondary);margin:4px 0 0;font-size:11px}.settings-card{border:1px solid var(--border);border-radius:13px;overflow:hidden}.settings-field,.settings-toggle{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:24px;min-height:68px;padding:13px 16px;display:flex}.settings-field:last-child,.settings-toggle:last-child{border-bottom:0}.settings-field>span,.settings-toggle>span{flex-direction:column;gap:4px;display:flex}.settings-field strong,.settings-toggle strong{color:var(--text);font-size:12px}.settings-field small,.settings-toggle small{color:var(--text-secondary);font-size:11px;line-height:1.45}.settings-field select,.settings-number{width:220px}.settings-field select,.settings-number input{border:1px solid var(--border);background:var(--background);height:37px;color:var(--text);border-radius:9px;outline:0;padding:0 11px}.settings-field select:focus,.settings-number input:focus{border-color:var(--primary)}.settings-number{align-items:center;display:flex;position:relative}.settings-number input{width:100%;padding-right:45px}.settings-number em{color:var(--text-secondary);font-size:11px;font-style:normal;position:absolute;right:12px}.settings-toggle input{display:none}.settings-toggle i{background:var(--border);border-radius:20px;flex:none;width:42px;height:23px;transition:all .2s;position:relative}.settings-toggle i:after{content:"";background:#fff;border-radius:50%;width:17px;height:17px;transition:all .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0003}.settings-toggle input:checked+i{background:var(--primary)}.settings-toggle input:checked+i:after{transform:translate(19px)}.settings-toggle.is-disabled{opacity:.5}.settings-preview{border:1px dashed var(--border);background:var(--background);font-size:calc(12px * var(--user-font-scale,1));border-radius:11px;flex-direction:column;align-items:flex-start;gap:5px;margin:14px;padding:16px;display:flex}.settings-preview span,.settings-preview small{color:var(--text-secondary)}.settings-preview strong{color:var(--text);font-size:1.25em}.settings-preview button{background:var(--primary);color:#fff;border:0;border-radius:8px;margin-top:5px;padding:8px 13px}.settings-note{background:color-mix(in srgb, var(--primary) 9%, transparent);color:var(--text-secondary);border-radius:10px;align-items:flex-start;gap:9px;margin-top:14px;padding:12px 14px;font-size:11px;line-height:1.5;display:flex}.settings-note svg{color:var(--primary);flex:none;font-size:17px}.settings-note.success{background:color-mix(in srgb, var(--success) 10%, transparent)}.settings-note.success svg{color:var(--success)}.settings-session{justify-content:space-between;align-items:center;padding:17px;display:flex}.settings-session div{flex-direction:column;gap:5px;display:flex}.settings-session strong{color:var(--text);font-size:12px}.settings-session span{color:var(--text-secondary);font-size:11px}.settings-session>svg{color:var(--success);font-size:28px}[data-density=compact] .settings-field,[data-density=compact] .settings-toggle{min-height:55px;padding:9px 14px}[data-density=spacious] .settings-field,[data-density=spacious] .settings-toggle{min-height:78px;padding:17px 18px}@media (width<=900px){.settings-layout{grid-template-columns:1fr}.settings-nav{grid-template-columns:repeat(3,1fr);display:grid}.settings-profile{grid-column:1/-1}.settings-nav .settings-reset{margin-top:0}.settings-panel{min-height:600px}}@media (width<=620px){.settings-page{height:auto}.settings-header{flex-direction:column;align-items:flex-start}.settings-actions{width:100%}.settings-actions button{flex:1}.settings-nav{grid-template-columns:repeat(2,1fr)}.settings-panel{padding:15px}.settings-field,.settings-toggle{flex-direction:column;align-items:flex-start;gap:10px}.settings-field select,.settings-number{width:100%}}.settings-notification-groups h3{color:var(--text-primary,#0f172a);margin:0 0 4px;font-size:15px}.settings-card-description{color:var(--text-muted,#64748b);margin:0 0 8px;font-size:12px;line-height:1.5}.settings-permission-fieldset{border:0;min-width:0;margin:0;padding:0}.settings-permission-fieldset:disabled{opacity:.78}.settings-permission-notice{border:1px solid color-mix(in srgb, var(--primary) 24%, var(--border));background:color-mix(in srgb, var(--primary) 6%, var(--card));color:var(--text-secondary);border-radius:10px;align-items:center;gap:9px;margin-bottom:14px;padding:10px 12px;font-size:11px;display:flex}.settings-permission-notice>svg{color:var(--primary);flex:none;font-size:18px}.settings-permission-notice strong{color:var(--text);margin-right:4px}.settings-permission-notice code{color:var(--primary);font-family:inherit;font-size:11px;font-weight:700}.settings-reset:disabled{opacity:.45;cursor:not-allowed}.notification-test-panel{border:1px solid var(--border);background:var(--card);border-radius:13px;margin-top:14px;padding:16px}.notification-test-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.notification-test-heading h3{color:var(--text);margin:0;font-size:14px}.notification-test-heading p{max-width:650px;color:var(--text-secondary);margin:4px 0 0;font-size:11px;line-height:1.5}.notification-test-refresh,.notification-test-actions button{cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:37px;padding:0 12px;font-weight:700;display:inline-flex}.notification-test-refresh{border:1px solid var(--border);background:var(--background);color:var(--text)}.notification-test-actions button{background:var(--primary);color:#fff;border:0}.notification-test-refresh:disabled,.notification-test-actions button:disabled{opacity:.5;cursor:not-allowed}.notification-test-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.notification-test-form label{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:11px;font-weight:700;display:flex}.notification-test-form label:nth-of-type(3){grid-column:1/-1}.notification-test-form input,.notification-test-form select,.notification-test-form textarea{border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);border-radius:9px;outline:0}.notification-test-form input,.notification-test-form select{height:38px;padding:0 10px}.notification-test-form textarea{resize:vertical;padding:9px 10px;font-family:inherit}.notification-test-form input:focus,.notification-test-form select:focus,.notification-test-form textarea:focus{border-color:var(--primary)}.notification-test-device-status{border:1px solid var(--border);background:var(--background);border-radius:10px;align-items:center;gap:10px;min-height:62px;padding:10px 12px;display:flex}.notification-test-device-status>svg{color:var(--primary);flex:none;font-size:24px}.notification-test-device-status span{flex-direction:column;gap:3px;display:flex}.notification-test-device-status strong{color:var(--text);font-size:11px}.notification-test-device-status small{color:var(--text-secondary);font-size:11px}.notification-test-actions{grid-column:1/-1;justify-content:space-between;align-items:center;gap:14px;padding-top:2px;display:flex}.notification-test-actions>span{color:var(--text-secondary);font-size:11px}.notification-test-actions code{color:var(--text)}.notification-test-empty,.notification-test-error{border-radius:10px;align-items:center;gap:11px;padding:14px;display:flex}.notification-test-empty{border:1px dashed var(--border);color:var(--text-secondary)}.notification-test-empty>svg{color:var(--primary);flex:none;font-size:25px}.notification-test-empty div{flex-direction:column;gap:3px;display:flex}.notification-test-empty strong{color:var(--text);font-size:11px}.notification-test-empty span{font-size:11px}.notification-test-error{border:1px solid color-mix(in srgb, var(--danger) 30%, transparent);background:color-mix(in srgb, var(--danger) 8%, transparent);color:var(--danger);margin-bottom:12px;font-size:11px}.is-spinning{animation:.8s linear infinite notification-test-spin}@keyframes notification-test-spin{to{transform:rotate(360deg)}}@media (width<=700px){.notification-test-heading,.notification-test-actions{flex-direction:column;align-items:stretch}.notification-test-form{grid-template-columns:1fr}.notification-test-form label:nth-of-type(3),.notification-test-actions{grid-column:auto}}.about-page{flex-direction:column;gap:20px;max-width:1600px;margin:0 auto;display:flex}.about-hero,.about-card,.about-footer{border:1px solid var(--border);background:var(--card);border-radius:16px}.about-hero{align-items:center;gap:28px;padding:30px;display:flex}.about-product-icon,.about-card-icon{color:#fff;background:linear-gradient(145deg, var(--primary), #4967e9);place-items:center;display:grid}.about-product-icon{width:90px;height:90px;box-shadow:0 14px 28px color-mix(in srgb, var(--primary) 22%, transparent);background:color-mix(in srgb, var(--primary) 10%, var(--card));border-radius:22px;font-size:38px}.about-product-copy{min-width:0}.about-eyebrow,.about-card-header span,.about-technologies>span,.about-contact-list small,.about-tech-info small{color:var(--primary);letter-spacing:.06em;font-size:11px;font-weight:800}.about-product-copy h1{color:var(--text);margin:6px 0 8px;font-size:30px}.about-product-copy p{color:var(--text-secondary);margin:0;font-size:14px}.about-badges{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.about-badges span{border:1px solid var(--border);color:var(--text-secondary);background:var(--background);border-radius:999px;align-items:center;gap:7px;padding:9px 13px;font-size:11px;font-weight:700;display:inline-flex}.about-badges svg{color:var(--primary)}.about-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.about-card{padding:24px}.about-card-header{align-items:center;gap:14px;display:flex}.about-card-icon{background:color-mix(in srgb, var(--primary) 10%, var(--card));width:52px;height:52px;color:var(--primary);border-radius:13px;font-size:24px}.about-card-header h2{color:var(--text);margin:5px 0 0;font-size:18px}.about-divider{background:var(--border);height:1px;margin:20px 0 24px}.about-developer{align-items:center;gap:16px;display:flex}.about-avatar{background:linear-gradient(145deg, var(--primary), #4967e9);color:#fff;border-radius:50%;place-items:center;width:70px;height:70px;font-size:18px;font-weight:800;display:grid}.about-developer h3{color:var(--text);margin:0;font-size:18px}.about-developer p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.about-contact-list{flex-direction:column;gap:8px;margin-top:24px;display:flex}.about-contact-list a,.about-contact-item,.about-tech-info>div{background:var(--background);border-radius:12px;align-items:center;gap:14px;padding:11px 13px;text-decoration:none;display:flex}.about-contact-list>*>span,.about-tech-info>div>span{border:1px solid var(--border);background:var(--card);width:38px;height:38px;color:var(--primary);border-radius:10px;place-items:center;font-size:20px;display:grid}.about-contact-list div div,.about-contact-list a div,.about-tech-info>div>div{flex-direction:column;gap:3px;display:flex}.about-contact-list strong,.about-tech-info strong{color:var(--text);font-size:12px}.about-tech-info{flex-direction:column;gap:8px;display:flex}.about-tech-info>div{padding:10px 12px}.about-technologies{margin-top:22px}.about-technologies>span{color:var(--text-secondary)}.about-technologies>div{flex-wrap:wrap;gap:9px;margin-top:12px;display:flex}.about-technologies strong{border:1px solid color-mix(in srgb, var(--primary) 25%, var(--border));background:color-mix(in srgb, var(--primary) 7%, var(--card));color:var(--primary);border-radius:9px;padding:9px 13px;font-size:11px}.about-footer{align-items:center;gap:18px;padding:18px 22px;display:flex}.about-footer>span{background:color-mix(in srgb, var(--success) 12%, var(--card));width:52px;height:52px;color:var(--success);border-radius:13px;place-items:center;font-size:23px;display:grid}.about-footer strong{color:var(--text);font-size:13px}.about-footer p{color:var(--text-secondary);margin:6px 0 0;font-size:11px}@media (width<=900px){.about-grid{grid-template-columns:1fr}}@media (width<=620px){.about-hero{flex-direction:column;align-items:flex-start;padding:22px}.about-product-icon{width:70px;height:70px}.about-product-copy h1{font-size:24px}.about-card{padding:18px}.about-footer{align-items:flex-start}.about-badges{flex-direction:column;align-items:flex-start}}.about-page-embedded{max-width:none;margin:0}.settings-about-section .about-page-embedded{margin-top:18px}.settings-about-section .about-hero{padding:24px}.settings-about-section .about-product-icon{border-radius:18px;width:76px;height:76px;font-size:32px}.settings-about-section .about-product-copy h1{font-size:26px}.settings-about-section .about-card{padding:20px}.about-page svg{flex:0 0 22px;width:22px!important;min-width:22px!important;height:22px!important;min-height:22px!important;font-size:22px!important}.sim-page{flex-direction:column;gap:14px;min-height:calc(100vh - 90px);display:flex}.sim-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.sim-header h1{color:var(--text);margin:0;font-size:20px}.sim-header p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.sim-actions{flex-wrap:wrap;gap:8px;display:flex}.sim-alert{color:#dc2626;background:#dc262614;border:1px solid #dc262659;border-radius:10px;padding:11px 14px;font-size:12px}.sim-alert.compact{justify-content:space-between;align-items:center;gap:10px;margin:10px 0;display:flex}.sim-alert.compact button{color:inherit;cursor:pointer;background:0 0;border:0;font-weight:700}.sim-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.sim-stats article{border:1px solid var(--border);background:var(--card);border-radius:14px;align-items:center;gap:11px;padding:13px;display:flex}.sim-stats article>span{background:color-mix(in srgb,var(--primary) 12%,transparent);width:38px;height:38px;color:var(--primary);border-radius:11px;place-items:center;font-size:20px;display:grid}.sim-stats strong{color:var(--text);font-size:20px;display:block}.sim-stats span{color:var(--text-secondary);font-size:10px}.sim-filters{border:1px solid var(--border);background:var(--card);border-radius:14px;grid-template-columns:minmax(230px,1fr) 145px 145px 190px 150px 160px auto;gap:8px;padding:10px;display:grid}.sim-search{border:1px solid var(--border);border-radius:10px;align-items:center;gap:8px;padding:0 10px;display:flex}.sim-search svg{color:var(--text-secondary);font-size:19px}.sim-search input,.sim-filters select,.sim-drawer input,.sim-drawer select,.sim-drawer textarea,.sim-operation-dialog input,.sim-operation-dialog select,.sim-operation-dialog textarea{box-sizing:border-box;border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);border-radius:9px;outline:0}.sim-search input{background:0 0;border:0;height:38px}.sim-filters select{height:40px;padding:0 10px}.sim-content{grid-template-columns:minmax(0,1fr) 390px;gap:14px;min-height:560px;display:grid}.sim-table-card,.sim-detail{border:1px solid var(--border);background:var(--card);border-radius:14px;min-height:0;overflow:hidden}.sim-table-card{flex-direction:column;min-width:0;display:flex}.sim-table-wrap{flex:1;position:relative;overflow:auto}.sim-table-wrap table{border-collapse:collapse;width:100%;min-width:880px}.sim-table-wrap th,.sim-table-wrap td{border-bottom:1px solid var(--border);text-align:left;color:var(--text);vertical-align:middle;padding:11px 12px;font-size:11px}.sim-table-wrap th{z-index:2;background:var(--card);color:var(--text-secondary);text-transform:uppercase;font-size:11px;position:sticky;top:0}.sim-table-wrap td strong,.sim-table-wrap td span{display:block}.sim-table-wrap td span{color:var(--text-secondary);margin-top:3px;font-size:9px}.sim-table-wrap tr{cursor:pointer}.sim-table-wrap tbody tr:hover,.sim-table-wrap tr.selected{background:var(--hover)}.sim-sort{color:inherit;font:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;padding:0}.sim-status{text-transform:uppercase;border-radius:999px;width:max-content;padding:5px 8px;font-weight:800;font-size:8px!important;display:inline-flex!important}.sim-status.available{color:#16a34a;background:#16a34a1f}.sim-status.assigned{color:#7c3aed;background:#7c3aed1f}.sim-status.active{color:#0891b2;background:#0891b21f}.sim-status.suspended,.sim-status.expired,.sim-status.damaged{color:#dc2626;background:#dc26261f}.sim-status.cancelled,.sim-status.lost{color:#64748b;background:#64748b24}.sim-row-actions{gap:4px;display:flex}.sim-row-actions button,.sim-icon-btn{border:1px solid var(--border);background:var(--card);width:31px;height:31px;color:var(--text-secondary);cursor:pointer;border-radius:8px;place-items:center;display:grid}.sim-row-actions button:disabled,.sim-icon-btn:disabled{opacity:.4;cursor:not-allowed}.sim-empty,.sim-detail.empty,.sim-history-empty{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:240px;display:flex}.sim-empty svg,.sim-detail.empty svg,.sim-history-empty svg{font-size:38px}.sim-detail{padding:16px;overflow:auto}.sim-detail-head{border-bottom:1px solid var(--border);justify-content:space-between;gap:10px;padding-bottom:14px;display:flex}.sim-detail-head h2{color:var(--text);margin:9px 0 3px;font-size:17px}.sim-detail-head p{color:var(--text-secondary);margin:0;font-size:10px}.sim-detail-tabs{background:var(--hover);border-radius:10px;grid-template-columns:repeat(4,1fr);gap:5px;margin:12px 0;padding:4px;display:grid}.sim-detail-tabs button{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 4px;font-size:11px;font-weight:700}.sim-detail-tabs button.active{background:var(--card);color:var(--primary);box-shadow:0 1px 5px #0f172a14}.sim-loading{color:var(--text-secondary);padding:8px 0;font-size:10px}.sim-detail-section{border-bottom:1px solid var(--border);padding:13px 0}.sim-detail-section:last-child{border:0}.sim-detail-section h3{color:var(--text);margin:0 0 9px;font-size:11px}.sim-detail-grid{grid-template-columns:1fr 1fr;gap:4px 12px;display:grid}.sim-info{margin:5px 0}.sim-info small,.sim-info strong{display:block}.sim-info small{color:var(--text-secondary);font-size:8px}.sim-info strong{color:var(--text);word-break:break-word;margin-top:2px;font-size:11px}.sim-detail-section p{color:var(--text-secondary);grid-column:1/-1;margin:0;font-size:11px;line-height:1.55}.sim-usage-meter{grid-column:1/-1}.sim-usage-meter>div:first-child{justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.sim-usage-meter strong{color:var(--text);font-size:16px}.sim-usage-meter span{color:var(--text-secondary);font-size:9px}.sim-progress{background:var(--hover);border-radius:999px;height:7px;margin-top:8px;overflow:hidden}.sim-progress span{background:var(--primary);border-radius:999px;height:100%;display:block}.sim-operational-actions{grid-template-columns:repeat(2,1fr);gap:7px;padding:14px 0;display:grid}.sim-operational-actions button{border:1px solid var(--border);background:var(--card);min-height:36px;color:var(--text);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.sim-operational-actions button:hover{border-color:color-mix(in srgb,var(--primary) 50%,var(--border));color:var(--primary)}.sim-history-list{flex-direction:column;gap:7px;display:flex}.sim-history-list article{border:1px solid var(--border);background:var(--background);border-radius:10px;grid-template-columns:30px minmax(0,1fr) auto;align-items:start;gap:9px;padding:10px;display:grid}.sim-history-list article>span{background:color-mix(in srgb,var(--primary) 10%,transparent);width:30px;height:30px;color:var(--primary);border-radius:8px;place-items:center;display:grid}.sim-history-list strong,.sim-history-list small{display:block}.sim-history-list strong{color:var(--text);font-size:10px}.sim-history-list small,.sim-history-list p,.sim-history-list time{color:var(--text-secondary);font-size:8px}.sim-history-list p{margin:4px 0 0}.sim-history-list time{white-space:nowrap}.sim-drawer-layer,.sim-dialog-layer{z-index:1400;position:fixed;inset:0}.sim-drawer-backdrop,.sim-dialog-backdrop{background:#0f172a80;border:0;position:absolute;inset:0}.sim-drawer{background:var(--card);width:min(680px,100%);height:100%;position:absolute;top:0;right:0;overflow:auto;box-shadow:-14px 0 35px #0000002e}.sim-drawer header,.sim-operation-dialog header{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:18px;display:flex}.sim-drawer h2,.sim-operation-dialog h2{color:var(--text);margin:0;font-size:17px}.sim-drawer header p,.sim-operation-dialog header p{color:var(--text-secondary);margin:4px 0 0;font-size:10px}.sim-drawer form{padding:18px}.sim-drawer fieldset{border:0;margin:0 0 17px;padding:0}.sim-drawer legend{color:var(--text);margin-bottom:10px;font-size:11px;font-weight:800}.sim-form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.sim-form-grid label,.sim-operation-dialog label{color:var(--text-secondary);flex-direction:column;gap:5px;font-size:9px;display:flex}.sim-form-grid label.full{grid-column:1/-1}.sim-drawer input,.sim-drawer select,.sim-operation-dialog input,.sim-operation-dialog select{height:39px;padding:0 10px}.sim-drawer textarea,.sim-operation-dialog textarea{resize:vertical;padding:10px}.sim-drawer footer,.sim-operation-dialog footer{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding-top:15px;display:flex}.sim-operation-dialog,.sim-delete-dialog{box-sizing:border-box;background:var(--card);border-radius:15px;width:min(520px,100% - 28px);max-height:90vh;position:absolute;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 20px 50px #0f172a47}.sim-operation-dialog form{flex-direction:column;gap:11px;padding:18px;display:flex}.sim-delete-dialog{text-align:center;padding:22px}.sim-delete-dialog>svg{color:#dc2626;font-size:40px}.sim-delete-dialog h2{color:var(--text);margin:10px 0}.sim-delete-dialog p{color:var(--text-secondary);font-size:11px;line-height:1.55}.sim-delete-dialog>div:last-child{justify-content:center;gap:8px;margin-top:18px;display:flex}@media (width<=1350px){.sim-stats{grid-template-columns:repeat(3,1fr)}.sim-filters{grid-template-columns:minmax(220px,1fr) repeat(3,145px)}.sim-content{grid-template-columns:minmax(0,1fr) 350px}}@media (width<=1050px){.sim-content{grid-template-columns:1fr}.sim-detail{min-height:420px}.sim-filters{grid-template-columns:repeat(2,1fr)}.sim-search{grid-column:1/-1}}@media (width<=720px){.sim-page{min-height:auto}.sim-header{flex-direction:column;align-items:flex-start}.sim-actions{width:100%}.sim-actions button{flex:1}.sim-stats{grid-template-columns:1fr 1fr}.sim-filters{grid-template-columns:1fr}.sim-search{grid-column:auto}.sim-form-grid,.sim-detail-grid{grid-template-columns:1fr}.sim-form-grid label.full{grid-column:auto}.sim-detail-tabs{grid-template-columns:1fr 1fr}.sim-operational-actions{grid-template-columns:1fr}.sim-history-list article{grid-template-columns:30px 1fr}.sim-history-list time{grid-column:2}.sim-drawer{width:100%}}@media (width<=440px){.sim-stats{grid-template-columns:1fr}}.sim-filter-input{box-sizing:border-box;border:1px solid var(--border);background:var(--background);height:40px;color:var(--text);border-radius:10px;outline:0;padding:0 10px}.sim-filter-input:focus{border-color:color-mix(in srgb,var(--primary) 60%,var(--border))}.sim-operational-actions button:disabled{opacity:.45;cursor:not-allowed}.sim-operational-actions button:disabled:hover{border-color:var(--border);color:var(--text)}.users-page{flex-direction:column;gap:14px;height:calc(100vh - 90px);min-height:0;display:flex}.users-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.users-header h1{color:var(--text);margin:0;font-size:20px;font-weight:700}.users-header p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.users-header-actions{gap:10px;display:flex}.primary-btn,.secondary-btn,.danger-btn{cursor:pointer;border-radius:11px;justify-content:center;align-items:center;gap:8px;height:40px;padding:0 18px;font-weight:600;transition:all .2s;display:inline-flex}.primary-btn{background:var(--primary);color:#fff;border:0}.secondary-btn{border:1px solid var(--border);background:var(--card);color:var(--text)}.danger-btn{color:#fff;background:#dc2626;border:0}.primary-btn:hover,.danger-btn:hover{filter:brightness(.95)}.secondary-btn:hover{background:var(--hover)}.primary-btn:disabled,.secondary-btn:disabled,.danger-btn:disabled{opacity:.55;cursor:not-allowed}.users-stats{grid-template-columns:minmax(0,1fr) 340px;gap:12px;display:grid}.users-content{flex:1;grid-template-columns:minmax(0,1fr) 380px;gap:14px;min-height:0;display:grid}@media (width<=1200px){.users-stats,.users-content{grid-template-columns:1fr}.user-details{min-height:600px}}@media (width<=768px){.users-page{height:auto}.users-header{flex-direction:column;align-items:flex-start}.users-header-actions{width:100%}.users-header-actions button{flex:1}}.user-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.user-stat-card,.users-chart,.users-filters,.users-table,.user-details{background:var(--card);border:1px solid var(--border);border-radius:14px}.user-stat-card{align-items:center;gap:14px;min-height:124px;padding:16px;display:flex}.user-stat-icon{border-radius:12px;justify-content:center;align-items:center;width:54px;height:54px;font-size:25px;display:flex}.user-stat-icon.blue{color:#88a1ff;background:#4f6ff547}.user-stat-icon.green{color:#72d6ad;background:#48b9903d}.user-stat-icon.amber{color:#ffbe23;background:#e7a4003d}.user-stat-icon.purple{color:#ad84ff;background:#7a4edc42}.user-stat-card span{color:var(--text-secondary);font-size:12px;display:block}.user-stat-card strong{color:var(--text);margin-top:3px;font-size:25px;display:block}.user-stat-card small{margin-top:4px;font-size:11px;display:block}.user-stat-card small.green{color:#48b990}.user-stat-card small.amber{color:#e7a400}.user-stat-card small.purple{color:#8a5ae5}.users-chart{min-height:124px;overflow:hidden}.users-card-header{height:38px;color:var(--text);align-items:center;padding:0 16px;font-size:12px;font-weight:600;display:flex}.users-role-chart-content{align-items:center;gap:6px;padding:0 12px 8px;display:flex}.users-role-legend{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.users-role-legend-row{color:var(--text-secondary);grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:7px;font-size:10px;display:grid}.users-role-legend-row strong{color:var(--text);white-space:nowrap;font-size:11px}.users-role-dot{border-radius:50%;width:9px;height:9px}.users-filters{align-items:center;gap:12px;padding:14px;display:flex}.users-search{background:var(--background);border:1px solid var(--border);border-radius:11px;flex:1;align-items:center;gap:10px;height:40px;padding:0 14px;display:flex}.users-search svg{color:var(--text-secondary);font-size:19px}.users-search input{min-width:0;color:var(--text);background:0 0;border:0;outline:0;flex:1}.users-filters select,.users-pagination select{border:1px solid var(--border);background:var(--background);height:40px;color:var(--text);border-radius:10px;padding:0 12px}.users-clear-btn{border:1px solid var(--border);background:var(--background);height:40px;color:var(--text);cursor:pointer;border-radius:10px;align-items:center;gap:7px;padding:0 14px;display:flex}.users-table{flex-direction:column;min-height:0;display:flex;overflow:hidden}.users-table-header,.users-row{grid-template-columns:minmax(180px,2fr) minmax(180px,2fr) 160px 110px 130px 44px;align-items:center;gap:10px;padding:0 18px;display:grid}.users-table-header{border-bottom:1px solid var(--border);height:52px;color:var(--text-secondary);font-size:12px;font-weight:600}.users-sort{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;padding:0;display:flex}.users-sort.active{color:var(--primary)}.users-table-body{flex:1;min-height:0;overflow:auto}.users-row{border-bottom:1px solid var(--border);cursor:pointer;min-height:68px;transition:all .18s}.users-row:hover{background:var(--hover)}.users-row.selected{background:#2563eb17}.users-user{align-items:center;gap:12px;min-width:0;display:flex}.users-avatar{color:#fff;background:linear-gradient(135deg,#2563eb,#3b82f6);border-radius:50%;flex:0 0 42px;justify-content:center;align-items:center;width:42px;height:42px;font-size:12px;font-weight:700;display:flex}.users-user div{min-width:0}.users-user strong{text-overflow:ellipsis;color:var(--text);white-space:nowrap;font-size:12px;display:block;overflow:hidden}.users-user span,.users-email{color:var(--text-secondary);font-size:11px}.users-email{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.role-chip,.status-chip,.readonly-chip{border-radius:999px;align-items:center;gap:5px;padding:6px 11px;font-size:11px;font-weight:600;display:inline-flex}.role-chip.admin{color:#2563eb;background:#2563eb1f}.role-chip.user,.status-chip.active,.readonly-chip.no{color:#10b981;background:#10b9811f}.status-chip.inactive{color:#ef4444;background:#ef44441f}.readonly-chip.yes{color:#f59e0b;background:#f59e0b1f}.users-row-actions{position:relative}.users-menu-btn{width:34px;height:34px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;display:flex}.users-menu-btn:hover{background:var(--hover)}.user-actions-menu{z-index:30;background:var(--card);border:1px solid var(--border);border-radius:11px;width:180px;padding:6px;position:absolute;top:38px;right:0;box-shadow:0 14px 35px #0000002e}.user-actions-menu button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:9px;padding:9px 10px;font-size:12px;display:flex}.user-actions-menu button:hover{background:var(--hover)}.user-actions-menu button.danger{color:#ef4444}.users-empty{height:100%;min-height:220px;color:var(--text-secondary);justify-content:center;align-items:center;display:flex}.users-pagination{border-top:1px solid var(--border);min-height:52px;color:var(--text-secondary);justify-content:flex-end;align-items:center;gap:10px;padding:0 14px;font-size:11px;display:flex}.users-pagination>span{margin-right:auto}.users-pagination label{align-items:center;gap:7px;display:flex}.users-pagination select{height:32px}.users-pagination button{border:1px solid var(--border);background:var(--background);width:32px;height:32px;color:var(--text);cursor:pointer;border-radius:8px}.users-pagination button:disabled{opacity:.45;cursor:not-allowed}.users-skeleton{padding:8px 18px}.users-skeleton-row{grid-template-columns:2fr 2fr 1fr 1fr 1fr;align-items:center;gap:18px;height:68px;display:grid}.users-skeleton-row i,.users-skeleton-row span{background:linear-gradient(90deg,var(--background),var(--hover),var(--background));background-size:200% 100%;border-radius:7px;height:13px;animation:1.2s infinite userPulse}.users-skeleton-row i{border-radius:50%;width:42px;height:42px}@keyframes userPulse{to{background-position:-200% 0}}.user-details{flex-direction:column;min-height:0;display:flex;overflow:hidden}.user-details-empty{color:var(--text-secondary);flex:1;justify-content:center;align-items:center;display:flex}.user-profile-header{border-bottom:1px solid var(--border);flex-direction:column;align-items:center;padding:26px 20px 20px;display:flex;position:relative}.user-profile-menu{width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:10px;position:absolute;top:14px;right:14px}.user-profile-menu:hover{background:var(--hover)}.user-avatar-large{color:#fff;background:linear-gradient(135deg,#2563eb,#3b82f6);border-radius:50%;justify-content:center;align-items:center;width:82px;height:82px;font-size:28px;font-weight:700;display:flex;position:relative;box-shadow:0 10px 25px #2563eb38}.user-status-dot{border:3px solid var(--card);border-radius:50%;width:16px;height:16px;position:absolute;bottom:5px;right:5px}.user-status-dot.active{background:#10b981}.user-status-dot.inactive{background:#ef4444}.user-profile-header h2{color:var(--text);margin:15px 0 4px;font-size:19px}.user-profile-email{color:var(--text-secondary);font-size:12px}.user-profile-badges{gap:8px;margin-top:14px;display:flex}.user-tabs{border-bottom:1px solid var(--border);gap:5px;padding:10px;display:flex}.user-tabs button{height:40px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.user-tabs button:hover{background:var(--hover)}.user-tabs button.active{color:#2563eb;background:#2563eb1f}.user-details-content{flex:1;overflow:auto}.user-tab-content{flex-direction:column;gap:10px;padding:14px;display:flex}.user-info-card,.permission-card{background:var(--background);border:1px solid var(--border);border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.user-info-icon,.permission-icon{color:#2563eb;background:#2563eb1f;border-radius:11px;flex:0 0 40px;justify-content:center;align-items:center;width:40px;height:40px;font-size:19px;display:flex}.user-info-content{min-width:0}.user-info-content span{color:var(--text-secondary);margin-bottom:3px;font-size:10px;display:block}.user-info-content strong{overflow-wrap:anywhere;color:var(--text);font-size:12px;display:block}.permission-card{justify-content:space-between}.permission-left{align-items:center;gap:11px;display:flex}.permission-left>span{color:var(--text);font-size:12px;font-weight:600}.permission-status{border-radius:999px;align-items:center;gap:5px;padding:6px 9px;font-size:11px;font-weight:600;display:inline-flex}.permission-status.enabled{color:#10b981;background:#10b9811f}.permission-status.disabled{color:#ef4444;background:#ef44441f}.users-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080f1e85;justify-content:flex-end;display:flex;position:fixed;inset:0}.user-drawer{background:var(--card);flex-direction:column;width:min(560px,100%);height:100%;animation:.22s drawerIn;display:flex;box-shadow:-20px 0 45px #00000038}.user-drawer>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:22px;display:flex}.user-drawer h2{color:var(--text);margin:0;font-size:19px}.user-drawer p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.user-drawer header button,.dialog-close{width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:9px;font-size:20px}.user-drawer header button:hover,.dialog-close:hover{background:var(--hover)}@keyframes drawerIn{0%{transform:translate(100%)}to{transform:translate(0)}}.user-form{flex-direction:column;flex:1;padding:20px;display:flex;overflow:auto}.user-form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.user-form-field{flex-direction:column;gap:6px;display:flex}.user-form-field.full{grid-column:1/-1}.user-form-field>span{color:var(--text);font-size:11px;font-weight:600}.user-form-field input{border:1px solid var(--border);background:var(--background);height:40px;color:var(--text);border-radius:9px;outline:0;padding:0 12px}.user-form-field input:focus{border-color:var(--primary)}.user-form-field small{color:var(--text-secondary);font-size:9px}.user-form-field small.error{color:#ef4444}.user-form-switches{flex-direction:column;gap:8px;margin-top:18px;display:flex}.user-switch-row{border:1px solid var(--border);background:var(--background);cursor:pointer;border-radius:11px;justify-content:space-between;align-items:center;padding:12px;display:flex;position:relative}.user-switch-row strong,.user-switch-row span{display:block}.user-switch-row strong{color:var(--text);font-size:11px}.user-switch-row span{color:var(--text-secondary);margin-top:3px;font-size:9px}.user-switch-row input{opacity:0;position:absolute}.user-switch-row i{background:#94a3b8;border-radius:999px;width:38px;height:22px;transition:all .2s;position:relative}.user-switch-row i:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:all .2s;position:absolute;top:3px;left:3px}.user-switch-row input:checked+i{background:var(--primary)}.user-switch-row input:checked+i:after{transform:translate(16px)}.user-form-actions{justify-content:flex-end;gap:10px;margin-top:auto;padding-top:20px;display:flex}.users-alert{border-radius:10px;padding:11px 13px;font-size:11px}.users-alert.error{color:#ef4444;background:#ef44441f;border:1px solid #ef44444d}.user-form>.users-alert{margin-bottom:14px}.users-overlay.dialog{justify-content:center;align-items:center;padding:20px}.user-delete-dialog{background:var(--card);border:1px solid var(--border);text-align:center;border-radius:16px;width:min(420px,100%);padding:25px;position:relative;box-shadow:0 25px 60px #00000040}.dialog-close{position:absolute;top:12px;right:12px}.dialog-icon{color:#ef4444;background:#ef44441f;border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;margin:0 auto 14px;font-size:28px;display:flex}.user-delete-dialog h3{color:var(--text);margin:0}.user-delete-dialog p{color:var(--text-secondary);margin:10px 0 18px;font-size:12px;line-height:1.6}.dialog-actions{justify-content:center;gap:10px;margin-top:18px;display:flex}@media (width<=900px){.users-table{overflow-x:auto}.users-table-header,.users-row{min-width:900px}.users-filters{flex-wrap:wrap}.users-search{flex-basis:100%}}@media (width<=700px){.user-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.user-form-grid{grid-template-columns:1fr}.user-form-field.full{grid-column:auto}}@media (width<=420px){.user-stats-grid{grid-template-columns:1fr}.users-filters select,.users-clear-btn{width:100%}}.user-form-section{margin-bottom:18px}.user-form-section-title{border-bottom:1px solid var(--border);color:var(--text);margin-bottom:10px;padding-bottom:8px;font-size:11px;font-weight:700}.user-form-field select{border:1px solid var(--border);background:var(--background);height:40px;color:var(--text);border-radius:9px;outline:0;padding:0 12px}.user-form-field select:focus{border-color:var(--primary)}.vehicles-page{flex-direction:column;gap:14px;height:calc(100vh - 90px);min-height:0;display:flex}.vehicles-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.vehicles-header h1{color:var(--text);margin:0;font-size:20px}.vehicles-header p{color:var(--text-secondary);margin:5px 0 0;font-size:12px}.vehicles-actions{gap:10px;display:flex}.vehicles-alert{color:#dc2626;background:#dc262614;border:1px solid #dc262659;border-radius:10px;padding:11px 14px;font-size:12px}.vehicle-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.vehicle-stats article{border:1px solid var(--border);background:var(--card);border-radius:14px;align-items:center;gap:12px;padding:15px;display:flex}.vehicle-stats article>span{background:color-mix(in srgb,var(--primary) 12%,transparent);width:42px;height:42px;color:var(--primary);border-radius:12px;place-items:center;font-size:22px;display:grid}.vehicle-stats strong{color:var(--text);font-size:22px;display:block}.vehicle-stats span{color:var(--text-secondary);font-size:11px}.vehicle-filters{border:1px solid var(--border);background:var(--card);border-radius:14px;grid-template-columns:minmax(260px,1fr) 160px 170px 210px auto;gap:10px;padding:12px;display:grid}.vehicle-search{align-items:center;gap:8px;display:flex}.vehicle-search svg{color:var(--text-secondary);font-size:20px}.vehicle-search input,.vehicle-filters select,.vehicle-drawer input,.vehicle-drawer select,.vehicle-drawer textarea{box-sizing:border-box;border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);border-radius:10px;outline:0}.vehicle-search input,.vehicle-filters select{height:40px;padding:0 12px}.vehicle-search input{background:0 0;border:0}.vehicle-search{border:1px solid var(--border);border-radius:10px;padding:0 12px}.vehicles-content{flex:1;grid-template-columns:minmax(0,1fr) 360px;gap:14px;min-height:0;display:grid}.vehicles-table-card,.vehicle-detail{border:1px solid var(--border);background:var(--card);border-radius:14px;min-height:0;overflow:hidden}.vehicles-table-card{flex-direction:column;display:flex}.vehicles-table-wrap{flex:1;position:relative;overflow:auto}.vehicles-table-wrap table{border-collapse:collapse;width:100%;min-width:860px}.vehicles-table-wrap th,.vehicles-table-wrap td{border-bottom:1px solid var(--border);text-align:left;color:var(--text);padding:12px 14px;font-size:12px}.vehicles-table-wrap th{z-index:1;background:var(--card);color:var(--text-secondary);text-transform:uppercase;font-size:11px;position:sticky;top:0}.vehicles-table-wrap td strong,.vehicles-table-wrap td span{display:block}.vehicles-table-wrap td span{color:var(--text-secondary);margin-top:3px;font-size:10px}.vehicles-table-wrap tr{cursor:pointer}.vehicles-table-wrap tbody tr:hover,.vehicles-table-wrap tr.selected{background:var(--hover)}.vehicle-sort{color:inherit;font:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0}.vehicle-status{text-transform:uppercase;border-radius:999px;width:max-content;padding:5px 8px;font-weight:700;font-size:9px!important;display:inline-flex!important}.vehicle-status.active{color:#16a34a;background:#16a34a1f}.vehicle-status.maintenance{color:#ea580c;background:#ea580c1f}.vehicle-status.damaged{color:#dc2626;background:#dc26261f}.vehicle-status.inactive,.vehicle-status.retired,.vehicle-status.sold{color:#64748b;background:#64748b24}.vehicle-row-actions{gap:4px;display:flex}.vehicle-row-actions button,.vehicle-icon-btn{border:1px solid var(--border);background:var(--card);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;border-radius:8px;place-items:center;display:grid}.vehicle-row-actions button:disabled,.vehicle-icon-btn:disabled{opacity:.4;cursor:not-allowed}.vehicles-footer{color:var(--text-secondary);justify-content:space-between;align-items:center;padding:10px 14px;font-size:10px;display:flex}.vehicles-footer div{align-items:center;gap:10px;display:flex}.vehicles-footer button{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:7px;padding:6px 9px}.vehicles-empty,.vehicle-detail.empty{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:260px;display:flex}.vehicles-empty svg,.vehicle-detail.empty svg{font-size:42px}.vehicle-detail{padding:18px;overflow:auto}.vehicle-detail-head{border-bottom:1px solid var(--border);justify-content:space-between;gap:10px;padding-bottom:16px;display:flex}.vehicle-detail-head h2{color:var(--text);margin:10px 0 4px;font-size:18px}.vehicle-detail-head p{color:var(--text-secondary);margin:0;font-size:11px}.vehicle-detail-section{border-bottom:1px solid var(--border);padding:15px 0}.vehicle-detail-section:last-child{border:0}.vehicle-detail-section h3{color:var(--text);margin:0 0 12px;font-size:12px}.vehicle-info{gap:9px;margin:10px 0;display:flex}.vehicle-info>span{color:var(--primary);font-size:17px}.vehicle-info small,.vehicle-info strong{display:block}.vehicle-info small{color:var(--text-secondary);font-size:9px}.vehicle-info strong{color:var(--text);margin-top:2px;font-size:11px}.vehicle-notes{color:var(--text-secondary);font-size:11px;line-height:1.6}.vehicle-drawer-layer,.vehicle-dialog-layer{z-index:1200;position:fixed;inset:0}.vehicle-drawer-backdrop,.vehicle-dialog-backdrop{background:#0f172a7a;border:0;position:absolute;inset:0}.vehicle-drawer{background:var(--card);width:min(650px,100%);height:100%;position:absolute;top:0;right:0;overflow:auto;box-shadow:-14px 0 35px #0000002e}.vehicle-drawer header{border-bottom:1px solid var(--border);justify-content:space-between;padding:20px;display:flex}.vehicle-drawer h2{color:var(--text);margin:0;font-size:18px}.vehicle-drawer header p{color:var(--text-secondary);margin:4px 0 0;font-size:11px}.vehicle-drawer form{padding:20px}.vehicle-drawer fieldset{border:0;margin:0 0 18px;padding:0}.vehicle-drawer legend{color:var(--text);margin-bottom:12px;font-size:12px;font-weight:700}.vehicle-form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.vehicle-form-grid label{color:var(--text-secondary);flex-direction:column;gap:6px;font-size:10px;display:flex}.vehicle-form-grid label.full{grid-column:1/-1}.vehicle-drawer input,.vehicle-drawer select{height:40px;padding:0 11px}.vehicle-drawer textarea{resize:vertical;padding:11px}.vehicle-drawer footer{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding-top:16px;display:flex}.vehicle-delete-dialog{box-sizing:border-box;background:var(--card);text-align:center;border-radius:16px;width:min(430px,100% - 30px);padding:24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.vehicle-delete-dialog>svg{color:#dc2626;font-size:42px}.vehicle-delete-dialog h2{color:var(--text)}.vehicle-delete-dialog p{color:var(--text-secondary);font-size:12px;line-height:1.6}.vehicle-delete-dialog>div{justify-content:center;gap:10px;margin-top:20px;display:flex}@media (width<=1200px){.vehicles-content{grid-template-columns:1fr}.vehicle-detail{min-height:420px}.vehicle-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=800px){.vehicles-page{height:auto}.vehicles-header{flex-direction:column;align-items:flex-start}.vehicles-actions{width:100%}.vehicles-actions button{flex:1}.vehicle-filters,.vehicle-stats,.vehicle-form-grid{grid-template-columns:1fr}.vehicle-form-grid label.full{grid-column:auto}}.vehicle-filters-advanced{grid-template-columns:minmax(240px,1fr) repeat(5,minmax(130px,170px)) auto}.vehicle-detail-tabs{grid-template-columns:1fr 1fr;gap:6px;margin:14px 0;display:grid}.vehicle-detail-tabs button{border:1px solid var(--border);background:var(--background);height:34px;color:var(--text-secondary);cursor:pointer;border-radius:9px;font-size:11px;font-weight:700}.vehicle-detail-tabs button.active{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary) 10%,transparent);color:var(--primary)}.vehicle-detail-actions{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.vehicle-detail-actions button{justify-content:center}.vehicle-device-history{flex-direction:column;gap:10px;display:flex}.vehicle-device-history article{border:1px solid var(--border);background:var(--background);border-radius:11px;padding:12px}.vehicle-device-history article>span{float:right;text-transform:uppercase;border-radius:999px;padding:4px 7px;font-size:11px;font-weight:800}.vehicle-device-history article>span.active{color:#16a34a;background:#16a34a1f}.vehicle-device-history article>span.closed{color:#64748b;background:#64748b24}.vehicle-device-history strong,.vehicle-device-history small{display:block}.vehicle-device-history strong{color:var(--text);font-size:11px}.vehicle-device-history small{color:var(--text-secondary);margin-top:3px;font-size:9px}.vehicle-device-history p{color:var(--text-secondary);margin:7px 0 0;font-size:9px}.vehicle-history-empty{min-height:260px;color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:7px;display:flex}.vehicle-history-empty svg{font-size:38px}.vehicle-operation-dialog{box-sizing:border-box;background:var(--card);border-radius:16px;width:min(480px,100% - 30px);padding:24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 20px 55px #00000040}.vehicle-operation-dialog>svg{color:var(--primary);font-size:36px}.vehicle-operation-dialog h2{color:var(--text);margin:8px 0;font-size:18px}.vehicle-operation-dialog>p{color:var(--text-secondary);margin:0 0 16px;font-size:11px}.vehicle-operation-dialog label{color:var(--text-secondary);flex-direction:column;gap:6px;margin-top:11px;font-size:10px;display:flex}.vehicle-operation-dialog input,.vehicle-operation-dialog select,.vehicle-operation-dialog textarea{box-sizing:border-box;border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);border-radius:9px;outline:0}.vehicle-operation-dialog input,.vehicle-operation-dialog select{height:40px;padding:0 11px}.vehicle-operation-dialog textarea{resize:vertical;padding:10px}.vehicle-operation-dialog>div:last-child{justify-content:flex-end;gap:9px;margin-top:18px;display:flex}.vehicle-inline-note{border:1px dashed var(--border);color:var(--text-secondary);border-radius:9px;margin-top:10px;padding:10px;font-size:10px}@media (width<=1500px){.vehicle-filters-advanced{grid-template-columns:minmax(220px,1fr) repeat(3,minmax(130px,1fr))}.vehicle-filters-advanced .secondary-btn{grid-column:auto}}@media (width<=900px){.vehicle-filters-advanced{grid-template-columns:1fr 1fr}.vehicle-search{grid-column:1/-1}}@media (width<=620px){.vehicle-filters-advanced{grid-template-columns:1fr}.vehicle-search{grid-column:auto}.vehicles-actions{flex-wrap:wrap}.vehicles-actions button{min-width:calc(50% - 5px)}.vehicle-detail-actions{grid-template-columns:1fr}}.dashboard-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:stretch;gap:14px;width:100%;min-height:calc(100vh - 70px);display:grid;overflow:visible}.dashboard-content{flex-direction:column;flex:1;gap:10px;min-width:0;min-height:0;padding-bottom:16px;display:flex;overflow:visible}.dashboard-sidebar{grid-template-rows:minmax(0,1fr) minmax(0,1fr);align-self:stretch;gap:10px;width:320px;min-width:0;height:100%;min-height:0;padding-bottom:15px;display:grid;overflow:hidden}.dashboard-sidebar-section{flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.dashboard-sidebar-section>*{flex:1 1 0;width:100%;min-width:0;height:100%;min-height:0}.dashboard-sidebar-section-top,.dashboard-sidebar-section-bottom{min-height:0;overflow:hidden}.dashboard-sidebar-section-top>*,.dashboard-sidebar-section-bottom>*{height:100%!important;min-height:0!important;max-height:none!important}.dashboard-sidebar-section-top .device-list{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.dashboard-sidebar-section-top .device-list-content{overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--text-secondary) 42%, transparent) transparent;flex:1 1 0;min-height:0;overflow:hidden auto}.dashboard-sidebar-section-top .device-list-content::-webkit-scrollbar{width:7px}.dashboard-sidebar-section-top .device-list-content::-webkit-scrollbar-track{background:0 0}.dashboard-sidebar-section-top .device-list-content::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--text-secondary) 42%, transparent);border-radius:999px}.dashboard-sidebar-section-top .device-list-content::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--text-secondary) 65%, transparent)}.dashboard-sidebar-section-bottom .device-info-panel{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.dashboard-sidebar-section-bottom .device-content{flex:1 1 0;min-height:0;overflow:hidden auto}.dashboard-map{border:1px solid var(--border);background:var(--card);border-radius:14px;flex:none;min-height:400px;max-height:400px;overflow:hidden}.dashboard-widgets-grid{flex:none;grid-template-columns:1.2fr 1fr 1fr;gap:14px;height:300px;min-height:300px;display:grid}.dashboard-widgets-grid>*{min-width:0;height:300px;min-height:300px}@media (width<=1600px){.dashboard-layout{grid-template-columns:minmax(0,1fr) 310px}.dashboard-sidebar{width:310px}}@media (width<=1366px){.dashboard-layout{grid-template-columns:minmax(0,1fr) 300px;gap:12px;min-height:calc(100vh - 64px)}.dashboard-content{gap:10px}.dashboard-sidebar{gap:10px;width:300px}.dashboard-map{height:350px;min-height:350px;max-height:350px}.dashboard-widgets-grid{gap:12px;height:280px;min-height:280px}.dashboard-widgets-grid>*{height:280px;min-height:280px}}@media (width<=1200px){.dashboard-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:stretch;height:auto;min-height:100%;overflow:visible}.dashboard-content{overflow:visible}.dashboard-widgets-grid{grid-template-columns:repeat(2,minmax(0,1fr));height:auto;min-height:0}.dashboard-widgets-grid>*{height:auto;min-height:260px}.dashboard-widgets-grid>:first-child{grid-column:1/-1}.dashboard-sidebar{width:300px;min-height:0}}@media (width<=992px){.dashboard-layout{flex-direction:column;display:flex}.dashboard-content{width:100%}.dashboard-sidebar{grid-template-rows:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;display:grid;overflow:visible}.dashboard-sidebar-section{height:360px;min-height:360px}}@media (width<=768px){.dashboard-layout{gap:var(--space-2);flex-direction:column;width:100%;display:flex;overflow:visible}.dashboard-content{gap:var(--space-2);width:100%;min-width:0;overflow:visible}.dashboard-sidebar{gap:var(--space-2);flex-direction:column;width:100%;min-width:0;display:flex;overflow:visible}.dashboard-sidebar-section{width:100%;height:auto;min-height:300px}.dashboard-sidebar-section>*{min-height:300px;height:auto!important}.dashboard-map{flex:none;height:320px;min-height:320px;max-height:320px}.dashboard-widgets-grid{gap:var(--space-2);grid-template-columns:1fr;height:auto;min-height:0}.dashboard-widgets-grid>*{height:auto;min-height:240px}.dashboard-widgets-grid>:first-child{grid-column:auto}}@media (width<=480px){.dashboard-map{border-radius:12px;height:320px;min-height:320px;max-height:320px}.dashboard-sidebar-section,.dashboard-sidebar-section>*{min-height:280px}}.dashboard-stats-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.dashboard-stat-card{border:1px solid var(--border);background:var(--card);text-align:left;cursor:pointer;border-radius:14px;align-items:center;gap:12px;min-height:82px;padding:14px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.dashboard-stat-card:hover{border-color:color-mix(in srgb, var(--primary) 48%, var(--border));transform:translateY(-1px);box-shadow:0 5px 16px #0f172a14}.dashboard-stat-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.dashboard-stat-icon{border-radius:12px;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;font-size:22px;display:flex}.dashboard-stat-icon-blue{color:#3b82f6;background:#3b82f626}.dashboard-stat-icon-green{color:#22c55e;background:#22c55e26}.dashboard-stat-icon-red{color:#ef4444;background:#ef444426}.dashboard-stat-icon-yellow{color:#f59e0b;background:#f59e0b26}.dashboard-stat-content{flex:1;min-width:0;display:block}.dashboard-stat-title{color:var(--text-secondary);margin-bottom:4px;font-size:12px;font-weight:500;display:block}.dashboard-stat-bottom{align-items:flex-end;gap:8px;display:flex}.dashboard-stat-value{color:var(--text);font-size:34px;font-weight:700;line-height:1}.dashboard-stat-percent{margin-bottom:3px;font-size:12px;font-weight:600}.dashboard-stat-percent-positive{color:#22c55e}.dashboard-stat-percent-warning{color:#f59e0b}.dashboard-stat-percent-danger{color:#ef4444}@media (width<=1366px){.dashboard-stats-grid{gap:12px}.dashboard-stat-card{gap:10px;min-height:74px;padding:12px}.dashboard-stat-icon{width:40px;min-width:40px;height:40px;font-size:20px}.dashboard-stat-value{font-size:22px}}@media (width<=1100px){.dashboard-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.dashboard-stats-grid{grid-template-columns:1fr}}.dashboard-operations{flex-direction:column;gap:8px;display:flex}.dashboard-operations-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.dashboard-operations-head>div{align-items:baseline;gap:10px;min-width:0;display:flex}.dashboard-operations-head strong{color:var(--text);font-size:13px}.dashboard-operations-head span{color:var(--text-secondary);font-size:10px}.dashboard-refresh{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 9px;font-size:11px;font-weight:600;display:inline-flex}.dashboard-refresh:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.dashboard-refresh:disabled{opacity:.6;cursor:wait}.dashboard-refresh svg{font-size:15px}.dashboard-refresh .is-spinning{animation:.8s linear infinite dashboard-spin}.dashboard-operations-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.dashboard-operation-card{border:1px solid var(--border);background:var(--card);text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-width:0;padding:10px 12px;transition:border-color .16s,transform .16s,box-shadow .16s;display:flex}.dashboard-operation-card:hover{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));transform:translateY(-1px);box-shadow:0 5px 16px #0f172a14}.dashboard-operation-icon{border-radius:10px;flex:0 0 36px;justify-content:center;align-items:center;width:36px;height:36px;font-size:22px;display:flex}.dashboard-operation-icon svg{width:22px;min-width:22px;height:22px;min-height:22px;font-size:22px}.dashboard-operation-card.primary .dashboard-operation-icon{color:var(--primary);background:#1b66ff1f}.dashboard-operation-card.danger .dashboard-operation-icon{color:var(--danger);background:#ef44441f}.dashboard-operation-card.warning .dashboard-operation-icon{color:var(--warning);background:#f59e0b1f}.dashboard-operation-card.success .dashboard-operation-icon{color:var(--success);background:#22c55e1f}.dashboard-operation-copy{grid-template-columns:auto 1fr;align-items:end;column-gap:8px;min-width:0;display:grid}.dashboard-operation-copy small{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;font-size:11px;font-style:normal;overflow:hidden}.dashboard-operation-copy strong{color:var(--text);font-size:21px;line-height:1.05}.dashboard-operation-copy em{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;align-self:center;font-size:11px;font-style:normal;overflow:hidden}.dashboard-operation-loading{opacity:.55}@keyframes dashboard-spin{to{transform:rotate(360deg)}}@media (width<=1200px){.dashboard-operations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.dashboard-operations-head>div{flex-direction:column;align-items:flex-start;gap:2px}.dashboard-refresh span{display:none}.dashboard-operations-grid{grid-template-columns:1fr}.dashboard-operation-card{padding:9px 10px}}.map-container{background:var(--card);border-radius:14px;width:100%;height:100%;min-height:380px;position:relative;overflow:hidden}.google-map{width:100%;height:100%;min-height:380px}.map-loading{background:var(--card);width:100%;height:100%;min-height:380px;color:var(--text);border-radius:14px;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.map-layers{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172af0;border:1px solid #ffffff14;border-radius:12px;width:180px;padding:10px;position:absolute;top:12px;right:12px;box-shadow:0 10px 24px #00000040}@media (width<=1366px){.map-container{border-radius:12px;min-height:340px}.google-map{min-height:340px}.map-loading{min-height:340px;font-size:12px}.map-layers{border-radius:10px;width:170px;padding:8px;top:10px;right:10px}}@media (width<=992px){.map-container,.google-map,.map-loading{min-height:300px}.map-layers{width:160px}}.vehicle-popup{background:var(--card);width:520px;max-height:650px;color:var(--text);border-radius:24px;flex-direction:column;display:flex;overflow:hidden}@media (width<=600px){.vehicle-popup{border-radius:var(--radius-md);width:min(520px,100vw - 32px);max-height:min(650px,100dvh - 96px)}}.popup-header{border-bottom:1px solid var(--border);align-items:center;gap:18px;padding:20px 24px;display:flex}.popup-vehicle-icon{color:#10b981;background:#10b98126;border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;font-size:28px;display:flex}.popup-header-info{flex:1}.popup-header-info h2{color:var(--text);margin:0;font-size:24px;font-weight:700;line-height:1.1}.popup-status{border-radius:999px;align-items:center;gap:8px;margin-top:12px;padding:8px 16px;font-size:14px;font-weight:600;display:inline-flex}.popup-status.moving{color:#10b981;background:#10b98126}.popup-status.stopped{color:#3b82f6;background:#3b82f626}.popup-status.offline{color:#ef4444;background:#ef444426}.popup-status.unknown{color:#f59e0b;background:#f59e0b26}.popup-metrics{border-bottom:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid}.metric-item{flex-direction:column;justify-content:center;align-items:center;padding:18px;display:flex}.metric-item:not(:last-child){border-right:1px solid var(--border)}.metric-header{align-items:center;gap:10px;margin-bottom:16px;display:flex}.metric-icon{color:var(--text-secondary);flex-shrink:0;font-size:28px}.metric-label{color:var(--text-secondary);font-size:15px;font-weight:600}.metric-value{text-align:center;color:var(--text);font-size:18px;font-weight:700;line-height:1.2}.metric-subtitle{color:var(--text-secondary);text-align:center;margin-top:6px;font-size:12px}.popup-scroll{flex:1;min-height:0;overflow:hidden}.popup-scroll::-webkit-scrollbar{width:8px}.popup-scroll::-webkit-scrollbar-track{background:0 0}.popup-scroll::-webkit-scrollbar-thumb{background:#94a3b866;border-radius:999px}.popup-scroll::-webkit-scrollbar-thumb:hover{background:#94a3b8b3}.popup-address{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;padding:24px;display:flex}.popup-address-content{flex:1}.popup-address-label{color:var(--text-secondary);margin-bottom:10px;font-size:13px;font-weight:600;display:block}.popup-address-text{color:var(--text);font-size:15px;font-weight:500;line-height:1.6}.popup-map-btn{color:#10b981;cursor:pointer;white-space:nowrap;background:#10b98126;border:none;border-radius:999px;height:48px;padding:0 24px;font-size:15px;font-weight:700;transition:all .25s}.popup-map-btn:hover{background:#2563eb33}.popup-actions{grid-template-columns:repeat(4,1fr);display:grid}.popup-action-btn{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:10px;height:90px;transition:all .25s;display:flex}.popup-action-btn:hover{background:#2563eb14}.popup-action-btn:not(:last-child){border-right:1px solid var(--border)}.popup-action-icon{color:var(--text-secondary);font-size:22px}.popup-action-text{color:var(--text);text-align:center;font-size:13px;font-weight:600}.gm-style .gm-style-iw-c{background:var(--card);border-radius:24px!important;max-height:none!important;padding:0!important;overflow:visible!important}.gm-style .gm-style-iw-c .gm-ui-hover-effect span{background:var(--text)}.gm-style .gm-style-iw-tc:after{background:var(--card)}.gm-style .gm-style-iw-d{max-height:none!important;overflow:visible!important}.gm-style-iw{padding:0!important}.gm-ui-hover-effect{top:12px!important;right:12px!important}.popup-action-btn.active{background:#2563eb1f}.popup-options-menu{border-top:1px solid var(--border);background:var(--card);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px;display:grid}.popup-option-item{border:1px solid var(--border);min-height:68px;color:var(--text);text-align:left;cursor:pointer;background:#2563eb0a;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;transition:background .2s,border-color .2s,transform .2s;display:flex}.popup-option-item:hover{background:#2563eb1a;border-color:#3b82f659;transform:translateY(-1px)}.popup-option-item>svg{color:#3b82f6;flex-shrink:0;width:22px;height:22px}.popup-option-item span{flex-direction:column;gap:4px;min-width:0;display:flex}.popup-option-item strong{color:var(--text);font-size:13px;line-height:1.25}.popup-option-item small{color:var(--text-secondary);font-size:11px;line-height:1.35}@media (width<=600px){.popup-options-menu{grid-template-columns:1fr}}.map-legend{z-index:100;background:var(--card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid #ffffff14;border-radius:14px;padding:14px;position:absolute;top:15px;right:15px;box-shadow:0 10px 25px #00000040}.legend-item{color:var(--text);align-items:center;gap:10px;margin-bottom:8px;font-size:11px;font-weight:500;display:flex}.legend-item:last-child{margin-bottom:0}.legend-item .green,.legend-item .blue,.legend-item .yellow,.legend-item .red{border-radius:50%;flex-shrink:0;width:12px;height:12px}.legend-item .green{background:#10b981}.legend-item .blue{background:#3b82f6}.legend-item .red{background:#ef4444}.legend-item .yellow{background:#f59e0b}.device-list{background:var(--card);border:1px solid var(--border);border-radius:14px;flex-direction:column;height:100%;display:flex;overflow:hidden}.device-list-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:46px;padding:10px 14px;display:flex}.device-list-header h3{color:var(--text);margin:0;font-size:15px;font-weight:700}.device-list-content{flex:1;min-height:0;overflow:hidden auto}.device-list-content::-webkit-scrollbar{width:5px}.device-list-content::-webkit-scrollbar-track{background:0 0}.device-list-content::-webkit-scrollbar-thumb{background:#94a3b847;border-radius:999px}.device-list-content::-webkit-scrollbar-thumb:hover{background:#94a3b880}@media (width<=1366px){.device-list{border-radius:12px}.device-list-header{min-height:42px;padding:8px 12px}.device-list-header h3{font-size:14px}}.device-card{cursor:pointer;border-bottom:1px solid var(--border);align-items:center;gap:10px;min-height:54px;padding:10px 12px;transition:all .15s;display:flex;position:relative}.device-card:hover{background:#3b82f60f}.device-card.selected{box-shadow:inset 3px 0 0 var(--primary);background:#3b82f61a}.device-card-icon{color:#fff;border-radius:8px;justify-content:center;align-items:center;width:34px;min-width:34px;height:34px;font-size:17px;display:flex}.device-card-icon svg{width:22px;min-width:22px;height:22px;min-height:22px;font-size:22px}.device-card-icon.moving{background:#10b981}.device-card-icon.stopped{background:#3b82f6}.device-card-icon.offline{background:#ef4444}.device-card-icon.unknown{background:#f59e0b}.device-card-content{flex:1;min-width:0}.device-card-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.device-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.device-status{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11px;overflow:hidden}.device-speed{color:var(--text);white-space:nowrap;font-size:12px;font-weight:600}.status-dot{border-radius:50%;flex-shrink:0;width:8px;min-width:8px;height:8px}.status-dot.moving{background:#10b981}.status-dot.stopped{background:#3b82f6}.status-dot.offline{background:#ef4444}.status-dot.unknown{background:#f59e0b}@media (width<=1366px){.device-card{gap:8px;min-height:48px;padding:8px 10px}.device-card-icon{width:30px;min-width:30px;height:30px}.device-card-icon svg{width:22px;min-width:22px;height:22px;min-height:22px;font-size:22px}.device-name{font-size:12px}.device-status,.device-speed{font-size:11px}}.device-filters{border-bottom:1px solid var(--border);padding:10px 12px}.filter-buttons{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.filter-buttons button{height:28px;color:var(--text-secondary);cursor:pointer;background:#ffffff0a;border:none;border-radius:8px;padding:0 10px;font-size:11px;font-weight:600;transition:all .15s}.filter-buttons button:hover{background:#3b82f61f}.filter-buttons button.active{background:var(--primary);color:#fff}.device-search{border:1px solid var(--border);background:var(--background);width:100%;height:34px;color:var(--text);border-radius:8px;outline:none;padding:0 10px;font-size:12px;transition:all .15s}.device-search:focus{border-color:var(--primary)}.device-search::placeholder{color:var(--text-secondary)}.fleet-summary{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:10px;display:grid}.fleet-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;flex-direction:column;justify-content:center;gap:2px;min-height:58px;padding:10px;display:flex}.fleet-card span{color:var(--text-secondary);opacity:.85;font-size:11px}.fleet-card strong{color:var(--text-primary);font-size:16px;font-weight:700}.fleet-card.moving{border-left:3px solid #22c55e}.fleet-card.stopped{border-left:3px solid #3b82f6}.fleet-card.offline{border-left:3px solid #ef4444}.fleet-card.total{border-left:3px solid #8b5cf6}@media (width<=1366px){.device-filters{padding:8px 10px}.filter-buttons{gap:5px;margin-bottom:8px}.filter-buttons button{height:26px;padding:0 8px;font-size:11px}.device-search{height:32px;font-size:11px}.fleet-summary{gap:6px;margin-bottom:8px}.fleet-card{min-height:52px;padding:8px}.fleet-card strong{font-size:14px}.fleet-card span{font-size:11px}}.device-info-panel{background:var(--card);border:1px solid var(--border);border-radius:14px;flex-direction:column;height:100%;min-height:0;font-size:12px;display:flex;overflow:hidden}.device-header{border-bottom:1px solid var(--border);flex-shrink:0;padding:14px 16px}.device-header h3{color:var(--text);margin:0 0 8px;font-size:18px;font-weight:700}.status-badge{border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:11px;font-weight:600;display:inline-flex}.status-badge.moving{color:#10b981;background:#10b98126}.status-badge.stopped{color:#3b82f6;background:#3b82f626}.status-badge.offline{color:#ef4444;background:#ef444426}.status-badge.unknown{color:#f59e0b;background:#f59e0b26}.device-kpis{grid-template-columns:repeat(2,1fr);gap:8px;padding:12px;display:grid}.device-kpi{background:var(--background);border:1px solid var(--border);border-radius:10px;align-items:center;gap:10px;padding:10px;display:flex}.device-kpi svg{color:var(--primary);font-size:20px}.device-kpi span{color:var(--text-secondary);font-size:11px;display:block}.device-kpi strong{color:var(--text);margin-top:2px;font-size:13px;font-weight:700;display:block}.device-tabs{border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex-shrink:0;display:flex}.device-tabs button{height:38px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex:1;font-size:12px;font-weight:600;transition:all .15s}.device-tabs button.active{color:var(--primary);border-bottom:2px solid var(--primary)}.device-content{flex:1;min-height:0;padding:8px 14px 14px;overflow:hidden auto}.device-content::-webkit-scrollbar{width:5px}.device-content::-webkit-scrollbar-track{background:0 0}.device-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:999px}.device-content::-webkit-scrollbar-thumb:hover{background:#ffffff59}.info-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;min-height:42px;display:flex}.info-label{color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.info-label svg{font-size:15px}.info-row strong{text-align:right;max-width:180px;color:var(--text);word-break:break-word;font-size:12px;font-weight:600}.address-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;height:34px;margin:10px 0;font-size:12px;font-weight:600;transition:all .15s}.address-btn:hover{opacity:.92}.address-btn:disabled{opacity:.55;cursor:default}.device-empty{text-align:center;color:var(--text-secondary);flex:1;justify-content:center;align-items:center;padding:18px;font-size:13px;display:flex}@media (width<=1366px){.device-header{padding:12px 14px}.device-header h3{font-size:16px}.device-kpis{gap:6px;padding:10px}.device-kpi{padding:8px}.device-tabs button{height:36px}}.dashboard-widget{border:1px solid var(--border);background:var(--card);border-radius:14px;flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden;box-shadow:0 1px 2px #0000000a}.dashboard-widget-header,.widget-header{border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--card) 96%,var(--primary) 4%);align-items:center;min-height:48px;padding:11px 14px;display:flex}.dashboard-widget-header h3,.widget-header h3{color:var(--text);margin:0;font-size:15px;font-weight:800;line-height:1.2}.dashboard-widget-header-actions,.widget-header-actions{justify-content:space-between;gap:10px}.dashboard-widget-header-actions button,.widget-header-actions button{min-height:28px;color:var(--primary);cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;padding:4px 7px;font-size:11px;font-weight:800;display:inline-flex}.dashboard-widget-header-actions button:hover,.widget-header-actions button:hover{background:color-mix(in srgb,var(--primary) 9%,transparent)}.dashboard-widget-value,.widget-value{color:var(--text);text-align:center;padding:14px 14px 4px;font-size:18px;font-weight:800;line-height:1.15}.dashboard-alerts-list,.alerts-list{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--text-secondary) 38%,transparent) transparent;flex:auto;min-height:0;overflow:hidden auto}.dashboard-alerts-list::-webkit-scrollbar{width:6px}.alerts-list::-webkit-scrollbar{width:6px}.dashboard-alerts-list::-webkit-scrollbar-track{background:0 0}.alerts-list::-webkit-scrollbar-track{background:0 0}.dashboard-alerts-list::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-secondary) 38%,transparent);border-radius:999px}.alerts-list::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-secondary) 38%,transparent);border-radius:999px}.dashboard-alert-row,.alert-row{border:0;border-bottom:1px solid var(--border);width:100%;min-width:0;color:inherit;text-align:left;cursor:pointer;appearance:none;background:0 0;align-items:center;gap:10px;padding:10px 14px;display:flex}.dashboard-alert-row:last-child,.alert-row:last-child{border-bottom:0}.dashboard-alert-row:hover,.alert-row:hover{background:color-mix(in srgb,var(--primary) 6%,transparent)}.dashboard-alert-row:focus-visible,.alert-row:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.dashboard-alert-icon,.alert-icon{background:color-mix(in srgb,var(--primary) 12%,transparent);width:32px;min-width:32px;height:32px;color:var(--primary);border-radius:9px;justify-content:center;align-items:center;font-size:16px;display:flex}.dashboard-alert-info,.alert-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.dashboard-alert-info strong,.alert-info strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:750;line-height:1.25;overflow:hidden}.dashboard-alert-info span,.alert-info span{color:var(--text-secondary);font-size:11px;line-height:1.25}.dashboard-alert-device,.alert-device{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;display:block;overflow:hidden}.dashboard-alerts-empty,.alerts-empty,.dashboard-widget-empty,.widget-empty{min-height:150px;color:var(--text-secondary);text-align:center;justify-content:center;align-items:center;padding:16px;font-size:11px;display:flex}.dashboard-summary-extra,.summary-extra{color:var(--text);justify-content:space-between;padding:0 14px 12px;font-size:12px;display:flex}.dashboard-widget .apexcharts-canvas{margin:0 auto}.dashboard-widget .apexcharts-legend{padding:0 8px!important}.dashboard-widget .apexcharts-legend-text{color:var(--text)!important;font-size:11px!important}.dashboard-widget .apexcharts-tooltip,.dashboard-widget .apexcharts-xaxistooltip{font-size:11px!important}@media (width<=1366px){.dashboard-widget-header,.widget-header{min-height:44px;padding:9px 12px}.dashboard-widget-header h3,.widget-header h3{font-size:14px}.dashboard-alert-row,.alert-row{gap:8px;padding:8px 12px}.dashboard-alert-icon,.alert-icon{border-radius:8px;width:28px;min-width:28px;height:28px;font-size:14px}.dashboard-alert-info strong,.alert-info strong{font-size:11px}}@media (width<=768px){.dashboard-widget{min-height:240px}.dashboard-widget-value,.widget-value{font-size:17px}}.technician-page{flex-direction:column;gap:14px;width:100%;min-width:0;padding:18px;display:flex}.technician-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.technician-header>div{min-width:0}.technician-header h1{color:var(--text);margin:2px 0 0;font-size:24px;line-height:1.15}.technician-header p{color:var(--text-secondary);margin:4px 0 0;font-size:11px}.technician-eyebrow{color:var(--primary);letter-spacing:.09em;text-transform:uppercase;font-size:9px;font-weight:800}.technician-btn,.technician-link-btn,.technician-icon-btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:7px;font-size:10px;font-weight:700;display:inline-flex}.technician-btn{min-height:38px;padding:0 13px}.technician-btn.primary{border-color:var(--primary);background:var(--primary);color:#fff}.technician-btn.success{color:#fff;background:#16a34a;border-color:#16a34a}.technician-btn.secondary{border-color:var(--border);background:var(--card);color:var(--text)}.technician-btn.full{width:100%}.technician-btn:disabled{opacity:.48;cursor:not-allowed}.technician-link-btn{color:var(--primary);background:0 0;border:0}.technician-icon-btn{border-color:var(--border);background:var(--card);width:38px;height:38px;color:var(--text);flex:0 0 38px;font-size:18px}.technician-detail-header{justify-content:flex-start}.technician-detail-header>div{flex:1}.technician-alert{border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-size:10px;display:flex}.technician-alert.error{color:#ef4444;background:#ef444414;border:1px solid #ef444440}.technician-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.technician-kpi{border:1px solid var(--border);background:var(--card);border-radius:12px;align-items:center;gap:11px;padding:13px;display:flex}.technician-kpi>span{background:color-mix(in srgb, var(--text-secondary) 10%, transparent);width:40px;height:40px;color:var(--text-secondary);border-radius:10px;flex:0 0 40px;justify-content:center;align-items:center;font-size:20px;display:flex}.technician-kpi.primary>span{background:color-mix(in srgb, var(--primary) 12%, transparent);color:var(--primary)}.technician-kpi.warning>span{color:#f59e0b;background:#f59e0b1f}.technician-kpi.success>span{color:#22c55e;background:#22c55e1f}.technician-kpi div{flex-direction:column;display:flex}.technician-kpi strong{color:var(--text);font-size:22px;line-height:1}.technician-kpi small{color:var(--text-secondary);margin-top:4px;font-size:9px}.technician-grid{grid-template-columns:minmax(0,2fr) minmax(260px,.75fr);gap:12px;display:grid}.technician-card{border:1px solid var(--border);background:var(--card);border-radius:12px;min-width:0;overflow:hidden}.technician-card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.technician-card-header h2,.technician-card>h2{color:var(--text);margin:0;font-size:13px}.technician-card-header p{color:var(--text-secondary);margin:2px 0 0;font-size:9px}.technician-service-row{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 14px;display:grid}.technician-service-row:hover,.technician-table tbody tr:hover{background:color-mix(in srgb, var(--primary) 4%, transparent)}.technician-status-dot{background:#94a3b8;border-radius:50%;width:8px;height:8px}.technician-status-dot.scheduled{background:#3b82f6}.technician-status-dot.in_progress{background:#f59e0b}.technician-service-main,.technician-service-meta{flex-direction:column;min-width:0;display:flex}.technician-service-main strong,.technician-service-meta strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.technician-service-main span,.technician-service-meta span{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:8px;overflow:hidden}.technician-service-meta{text-align:right;align-items:flex-end}.technician-summary{padding-bottom:12px}.technician-summary>.technician-card-header{margin-bottom:4px}.technician-summary-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin:0 14px;padding:10px 0;display:flex}.technician-summary-row span{color:var(--text-secondary);font-size:9px}.technician-summary-row strong{color:var(--text);font-size:13px}.technician-summary-row.alert strong{color:#ef4444}.technician-summary .technician-btn{width:calc(100% - 28px);margin:12px 14px 0}.technician-loading{min-height:140px;color:var(--text-secondary);justify-content:center;align-items:center;font-size:10px;display:flex}.technician-empty{min-height:180px;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.technician-empty>svg{opacity:.45;margin-bottom:5px;font-size:30px}.technician-empty strong{color:var(--text);font-size:11px}.technician-empty span{font-size:9px}.technician-filters{border-bottom:1px solid var(--border);grid-template-columns:minmax(260px,1fr) 240px;gap:9px;padding:11px;display:grid}.technician-search,.technician-select{border:1px solid var(--border);background:var(--background);min-width:0;height:38px;color:var(--text-secondary);border-radius:9px;align-items:center;gap:7px;padding:0 10px;display:flex}.technician-search input,.technician-select select{width:100%;min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:0;font-size:10px}.technician-table-wrap{min-width:0;overflow-x:auto}.technician-table{border-collapse:collapse;width:100%;min-width:780px}.technician-table th,.technician-table td{border-bottom:1px solid var(--border);color:var(--text);text-align:left;vertical-align:middle;padding:11px 13px;font-size:9px}.technician-table th{color:var(--text-secondary);font-size:9px}.technician-table tbody tr{cursor:pointer}.technician-table td strong,.technician-table td small{display:block}.technician-table td strong{font-size:10px}.technician-table td small{color:var(--text-secondary);margin-top:2px;font-size:8px}.technician-status{color:#94a3b8;background:#94a3b81f;border-radius:999px;padding:5px 8px;font-size:8px;font-weight:800;display:inline-flex}.technician-status.scheduled{color:#3b82f6;background:#3b82f61f}.technician-status.in_progress{color:#f59e0b;background:#f59e0b1f}.technician-status.completed{color:#22c55e;background:#22c55e1f}.technician-status.failed,.technician-status.cancelled{color:#ef4444;background:#ef44441a}.technician-location{max-width:250px;color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.technician-service-hero{border:1px solid var(--border);background:var(--card);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.technician-service-hero>div{border-right:1px solid var(--border);flex-direction:column;gap:5px;min-width:0;padding:12px 14px;display:flex}.technician-service-hero>div:last-child{border-right:0}.technician-service-hero span{color:var(--text-secondary);align-items:center;gap:5px;font-size:8px;display:flex}.technician-service-hero strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.technician-tabs{border-bottom:1px solid var(--border);gap:4px;display:flex}.technician-tabs button{color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:9px 11px;font-size:9px;font-weight:700;display:flex}.technician-tabs button.active{border-bottom-color:var(--primary);color:var(--primary)}.technician-tabs span{background:var(--background);border-radius:999px;padding:2px 5px;font-size:8px}.technician-detail-grid{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:12px;display:grid}.technician-detail-grid .technician-card{padding:14px}.technician-info-row{border-bottom:1px solid var(--border);grid-template-columns:120px minmax(0,1fr);gap:10px;padding:10px 0;display:grid}.technician-info-row span{color:var(--text-secondary);font-size:9px}.technician-info-row strong{color:var(--text);font-size:10px;font-weight:600}.technician-actions-card{flex-direction:column;gap:12px;display:flex}.technician-field{flex-direction:column;gap:5px;display:flex}.technician-field span{color:var(--text);font-size:9px;font-weight:700}.technician-field textarea{border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);font:inherit;resize:vertical;border-radius:9px;outline:0;padding:9px;font-size:10px}.technician-check-state{color:#f59e0b;background:#f59e0b14;border-radius:9px;align-items:center;gap:7px;padding:9px 10px;font-size:9px;display:flex}.technician-check-state.ok{color:#22c55e;background:#22c55e14}.technician-finished{color:#22c55e;text-align:center;flex-direction:column;align-items:center;gap:5px;padding:18px;display:flex}.technician-finished svg{font-size:32px}.technician-finished strong{color:var(--text);font-size:11px}.technician-finished span{color:var(--text-secondary);font-size:9px}.technician-checklist{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.technician-check-row{border-right:1px solid var(--border);border-bottom:1px solid var(--border);cursor:pointer;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:9px;padding:11px 13px;display:grid;position:relative}.technician-check-row input{opacity:0;position:absolute}.technician-check-row>i{border:1px solid var(--border);background:var(--background);border-radius:5px;width:17px;height:17px;position:relative}.technician-check-row input:checked+i{border-color:var(--primary);background:var(--primary)}.technician-check-row input:checked+i:after{content:"✓";color:#fff;justify-content:center;align-items:center;font-size:11px;font-style:normal;font-weight:800;display:flex;position:absolute;inset:0}.technician-check-row div{flex-direction:column;display:flex}.technician-check-row strong{color:var(--text);font-size:10px}.technician-check-row span{color:var(--text-secondary);margin-top:2px;font-size:8px}.technician-evidence-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:12px;display:grid}.technician-evidence-grid article{border:1px solid var(--border);background:var(--background);border-radius:9px;align-items:center;gap:9px;min-width:0;padding:10px;display:flex}.technician-evidence-grid article>svg{color:var(--primary);flex:none;font-size:20px}.technician-evidence-grid article div{flex-direction:column;min-width:0;display:flex}.technician-evidence-grid strong,.technician-evidence-grid span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.technician-evidence-grid strong{color:var(--text);font-size:9px}.technician-evidence-grid span{color:var(--text-secondary);margin-top:2px;font-size:8px}.technician-upload{cursor:pointer;position:relative}.technician-upload input{opacity:0;width:1px;height:1px;position:absolute}@media (width<=1050px){.technician-kpis,.technician-service-hero{grid-template-columns:repeat(2,minmax(0,1fr))}.technician-grid,.technician-detail-grid{grid-template-columns:1fr}.technician-service-hero>div:nth-child(2){border-right:0}}@media (width<=700px){.technician-page{padding:12px}.technician-header{flex-wrap:wrap;align-items:flex-start}.technician-kpis,.technician-service-hero,.technician-checklist,.technician-filters,.technician-evidence-grid{grid-template-columns:1fr}.technician-service-hero>div{border-right:0;border-bottom:1px solid var(--border)}}.technician-home{padding-top:18px}.technician-home .technician-kpi{min-height:90px}.technician-home .technician-kpi>span{border-radius:12px;flex-basis:48px;width:48px;height:48px}.technician-home .technician-kpi>span svg{width:22px;height:22px;font-size:22px}.technician-home .technician-kpi div{min-width:0}.technician-home .technician-kpi small{color:var(--text-secondary);order:0;margin:0;font-size:9px;font-weight:600}.technician-home .technician-kpi strong{order:1;margin-top:4px;font-size:22px}.technician-home-grid{grid-template-columns:minmax(0,2fr) minmax(280px,.72fr);gap:12px;display:grid}.technician-today-card,.technician-home-upcoming{overflow:hidden}.technician-home-service-row{grid-template-columns:10px minmax(180px,1fr) minmax(150px,.75fr) minmax(130px,.65fr) 20px;padding:12px 14px}.technician-service-vehicle{flex-direction:column;min-width:0;display:flex}.technician-service-vehicle strong,.technician-service-vehicle span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.technician-service-vehicle strong{color:var(--text);font-size:10px}.technician-service-vehicle span{color:var(--text-secondary);margin-top:2px;font-size:8px}.technician-service-open{color:var(--text-secondary);width:16px!important;height:16px!important}.technician-home-summary{align-self:stretch}.technician-home-upcoming .technician-empty.compact{min-height:120px}.technician-attention{background:#f59e0b12;border:1px solid #f59e0b40;border-radius:12px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 13px;display:grid}.technician-attention>svg{color:#f59e0b;width:22px;height:22px}.technician-attention>div{flex-direction:column;min-width:0;display:flex}.technician-attention strong{color:var(--text);font-size:11px}.technician-attention span{color:var(--text-secondary);margin-top:2px;font-size:9px}.technician-attention button{color:#f59e0b;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;font-size:10px;font-weight:700;display:inline-flex}.technician-attention button svg{width:16px!important;height:16px!important}.technician-home .technician-card-header{min-height:58px}@media (width<=1050px){.technician-home-grid{grid-template-columns:1fr}.technician-home-service-row{grid-template-columns:10px minmax(0,1fr) minmax(130px,.7fr) 20px}.technician-service-vehicle{display:none}}@media (width<=700px){.technician-home-service-row{grid-template-columns:10px minmax(0,1fr) 20px}.technician-service-meta{display:none}.technician-attention{grid-template-columns:34px minmax(0,1fr)}.technician-attention button{grid-column:2;justify-self:start}}.profile-page{gap:16px}.profile-page-header{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.profile-page-header h1{color:var(--text);margin:3px 0 0;font-size:24px;line-height:1.1}.profile-page-header p{color:var(--text-secondary);margin:6px 0 0;font-size:11px}.profile-hero-card{border:1px solid var(--border);background:var(--card);border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 20px;display:grid}.profile-avatar{border:1px solid color-mix(in srgb,var(--primary) 35%,var(--border));background:color-mix(in srgb,var(--primary) 12%,transparent);width:68px;height:68px;color:var(--primary);border-radius:18px;justify-content:center;align-items:center;font-size:20px;font-weight:800;display:flex}.profile-identity{min-width:0}.profile-overline{color:var(--text-secondary);letter-spacing:.06em;text-transform:uppercase;font-size:9px;font-weight:800;display:block}.profile-identity h2{color:var(--text);margin:3px 0 0;font-size:20px;line-height:1.15}.profile-identity p{color:var(--text-secondary);margin:3px 0 0;font-size:11px}.profile-badges{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.profile-badges span{border:1px solid color-mix(in srgb,var(--primary) 32%,var(--border));background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--primary);border-radius:999px;align-items:center;gap:5px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.profile-badges span.active{color:#22c55e;background:#22c55e14;border-color:#22c55e47}.profile-badges svg{width:16px;height:16px;font-size:16px}.profile-hero-meta{flex-direction:column;align-items:flex-end;gap:3px;min-width:170px;display:flex}.profile-hero-meta span{color:var(--text-secondary);text-transform:uppercase;font-size:9px}.profile-hero-meta strong{color:var(--text);font-size:11px}.profile-layout{grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:14px;display:grid}.profile-panel{border:1px solid var(--border);background:var(--card);border-radius:16px;overflow:hidden}.profile-panel-header{border-bottom:1px solid var(--border);align-items:center;gap:11px;padding:14px 16px;display:flex}.profile-panel-icon{background:color-mix(in srgb,var(--primary) 11%,transparent);width:40px;height:40px;color:var(--primary);border-radius:11px;justify-content:center;align-items:center;display:flex}.profile-panel-icon svg,.profile-info-icon svg{width:22px;height:22px;font-size:22px}.profile-panel-header h2{color:var(--text);margin:0;font-size:15px}.profile-panel-header p{color:var(--text-secondary);margin:3px 0 0;font-size:9px}.profile-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:4px 16px 14px;display:grid}.profile-info-item{border-bottom:1px solid var(--border);grid-template-columns:38px minmax(0,1fr);align-items:center;gap:9px;padding:13px 4px;display:grid}.profile-info-item:nth-last-child(-n+2){border-bottom:0}.profile-info-icon{background:var(--background);width:34px;height:34px;color:var(--primary);border-radius:9px;justify-content:center;align-items:center;display:flex}.profile-info-item div{min-width:0}.profile-info-item small{color:var(--text-secondary);font-size:9px;display:block}.profile-info-item strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;font-weight:700;display:block;overflow:hidden}.profile-password-form{flex-direction:column;gap:12px;padding:16px;display:flex}.profile-password-field{flex-direction:column;gap:5px;display:flex}.profile-password-field>span{color:var(--text);font-size:11px;font-weight:700}.profile-password-field>div{border:1px solid var(--border);background:var(--background);border-radius:10px;align-items:center;gap:8px;height:40px;padding:0 11px;transition:border-color .15s,box-shadow .15s;display:flex}.profile-password-field>div:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 12%,transparent)}.profile-password-field>div svg{width:18px;height:18px;color:var(--text-secondary);flex:0 0 18px}.profile-password-field input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0;font-size:11px}.profile-password-field small{color:var(--text-secondary);font-size:9px}.profile-password-toggle{cursor:pointer;align-items:center;gap:7px;display:flex}.profile-password-toggle input{width:15px;height:15px;accent-color:var(--primary)}.profile-password-toggle span{color:var(--text-secondary);align-items:center;gap:5px;font-size:9px;display:flex}.profile-password-toggle svg{width:16px;height:16px}.profile-password-message{border:1px solid;border-radius:9px;padding:9px 10px;font-size:11px}.profile-password-message.error{color:#ef4444;background:#ef444412;border-color:#ef444447}.profile-password-message.success{color:#22c55e;background:#22c55e12;border-color:#22c55e47}.profile-password-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding-top:13px;display:flex}.profile-password-actions button{align-items:center;gap:6px;min-height:36px;display:inline-flex}.profile-password-actions button svg{width:16px!important;height:16px!important;font-size:16px!important}@media (width<=1050px){.profile-layout{grid-template-columns:1fr}}@media (width<=700px){.profile-hero-card{grid-template-columns:auto minmax(0,1fr);padding:15px}.profile-hero-meta{border-top:1px solid var(--border);grid-column:1/-1;align-items:flex-start;padding-top:11px}.profile-info-grid{grid-template-columns:1fr}.profile-info-item:nth-last-child(-n+2){border-bottom:1px solid var(--border)}.profile-info-item:last-child{border-bottom:0}.profile-password-actions{flex-direction:column-reverse}.profile-password-actions button{justify-content:center;width:100%}}.supervisor-page{flex-direction:column;gap:14px;width:100%;min-width:0;padding:18px;display:flex}.supervisor-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.supervisor-header h1{color:var(--text);margin:2px 0 0;font-size:24px}.supervisor-header p{color:var(--text-secondary);margin:4px 0 0;font-size:11px}.supervisor-eyebrow{color:var(--primary);letter-spacing:.09em;text-transform:uppercase;font-size:11px;font-weight:800}.supervisor-btn,.supervisor-link-btn,.supervisor-icon-action{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:7px;font-size:11px;font-weight:700;display:inline-flex}.supervisor-btn{min-height:38px;padding:0 13px}.supervisor-btn.primary{border-color:var(--primary);background:var(--primary);color:#fff}.supervisor-btn.secondary{border-color:var(--border);background:var(--card);color:var(--text)}.supervisor-btn.full{width:100%}.supervisor-btn:disabled,.supervisor-icon-action:disabled{opacity:.45;cursor:not-allowed}.supervisor-link-btn{color:var(--primary);background:0 0;border:0}.supervisor-alert{border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-size:11px;display:flex}.supervisor-alert.error{color:#ef4444;background:#ef444414;border:1px solid #ef444440}.supervisor-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.supervisor-kpi{border:1px solid var(--border);background:var(--card);border-radius:12px;align-items:center;gap:11px;padding:13px;display:flex}.supervisor-kpi>span{background:color-mix(in srgb, var(--primary) 10%, transparent);width:40px;height:40px;color:var(--primary);border-radius:10px;flex:0 0 40px;justify-content:center;align-items:center;font-size:20px;display:flex}.supervisor-kpi.warning>span{color:#f59e0b;background:#f59e0b1f}.supervisor-kpi.danger>span{color:#ef4444;background:#ef44441a}.supervisor-kpi div{flex-direction:column;display:flex}.supervisor-kpi strong{color:var(--text);font-size:22px;line-height:1}.supervisor-kpi small{color:var(--text-secondary);margin-top:4px;font-size:11px}.supervisor-grid{grid-template-columns:minmax(0,2fr) minmax(260px,.75fr);gap:12px;display:grid}.supervisor-card{border:1px solid var(--border);background:var(--card);border-radius:12px;min-width:0;overflow:hidden}.supervisor-card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.supervisor-card-header h2{color:var(--text);margin:0;font-size:13px}.supervisor-card-header p{color:var(--text-secondary);margin:2px 0 0;font-size:11px}.supervisor-tech-row{border-bottom:1px solid var(--border);grid-template-columns:38px minmax(140px,1fr) minmax(280px,1.3fr);align-items:center;gap:10px;padding:10px 14px;display:grid}.supervisor-tech-avatar{background:color-mix(in srgb, var(--primary) 10%, transparent);width:36px;height:36px;color:var(--primary);border-radius:10px;justify-content:center;align-items:center;display:flex}.supervisor-tech-name{flex-direction:column;min-width:0;display:flex}.supervisor-tech-name strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.supervisor-tech-name span{color:var(--text-secondary);margin-top:2px;font-size:11px}.supervisor-tech-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.supervisor-tech-metrics span{background:var(--background);color:var(--text-secondary);border-radius:8px;padding:6px 7px;font-size:11px}.supervisor-tech-metrics b{color:var(--text)}.supervisor-summary{padding-bottom:12px}.supervisor-summary-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin:0 14px;padding:10px 0;display:flex}.supervisor-summary-row span{color:var(--text-secondary);font-size:11px}.supervisor-summary-row strong{color:var(--text);font-size:13px}.supervisor-summary-row.alert strong{color:#ef4444}.supervisor-summary .supervisor-btn{width:calc(100% - 28px);margin:12px 14px 0}.supervisor-loading{min-height:140px;color:var(--text-secondary);justify-content:center;align-items:center;font-size:11px;display:flex}.supervisor-empty{min-height:180px;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.supervisor-empty>svg{opacity:.45;margin-bottom:5px;font-size:30px}.supervisor-empty strong{color:var(--text);font-size:11px}.supervisor-empty span{font-size:11px}.supervisor-filters{border-bottom:1px solid var(--border);grid-template-columns:minmax(260px,1fr) 240px;gap:9px;padding:11px;display:grid}.supervisor-search,.supervisor-select{border:1px solid var(--border);background:var(--background);min-width:0;height:38px;color:var(--text-secondary);border-radius:9px;align-items:center;gap:7px;padding:0 10px;display:flex}.supervisor-search input,.supervisor-select select{width:100%;min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:0;font-size:11px}.supervisor-table-wrap{min-width:0;overflow-x:auto}.supervisor-table{border-collapse:collapse;width:100%;min-width:900px}.supervisor-table th,.supervisor-table td{border-bottom:1px solid var(--border);color:var(--text);text-align:left;vertical-align:middle;padding:11px 13px;font-size:11px}.supervisor-table th{color:var(--text-secondary)}.supervisor-table td strong,.supervisor-table td small{display:block}.supervisor-table td strong{font-size:11px}.supervisor-table td small{color:var(--text-secondary);margin-top:2px;font-size:11px}.supervisor-unassigned{color:#ef4444;font-size:11px;font-weight:700}.supervisor-status{color:#94a3b8;background:#94a3b81f;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800;display:inline-flex}.supervisor-status.scheduled{color:#3b82f6;background:#3b82f61f}.supervisor-status.in_progress{color:#f59e0b;background:#f59e0b1f}.supervisor-status.completed{color:#22c55e;background:#22c55e1f}.supervisor-status.failed,.supervisor-status.cancelled{color:#ef4444;background:#ef44441a}.supervisor-icon-action{border-color:var(--border);background:var(--background);width:31px;height:31px;color:var(--primary);font-size:16px}.supervisor-overlay{z-index:1300;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080f1e8c;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.supervisor-dialog{border:1px solid var(--border);background:var(--card);border-radius:13px;width:min(450px,100%);padding:20px;box-shadow:0 20px 50px #00000040}.supervisor-dialog-icon{background:color-mix(in srgb, var(--primary) 11%, transparent);width:44px;height:44px;color:var(--primary);border-radius:11px;justify-content:center;align-items:center;margin-bottom:11px;font-size:22px;display:flex}.supervisor-dialog h2{color:var(--text);margin:0;font-size:17px}.supervisor-dialog>p{color:var(--text-secondary);margin:5px 0 14px;font-size:11px}.supervisor-dialog>p strong{color:var(--text)}.supervisor-field{flex-direction:column;gap:5px;margin-top:11px;display:flex}.supervisor-field span{color:var(--text);font-size:11px;font-weight:700}.supervisor-field select,.supervisor-field textarea{border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);font:inherit;border-radius:9px;outline:0;font-size:11px}.supervisor-field select{height:40px;padding:0 10px}.supervisor-field textarea{resize:vertical;padding:9px 10px}.supervisor-dialog-actions{justify-content:flex-end;gap:8px;margin-top:17px;display:flex}@media (width<=1000px){.supervisor-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.supervisor-grid{grid-template-columns:1fr}}@media (width<=720px){.supervisor-page{padding:12px}.supervisor-header{flex-wrap:wrap;align-items:flex-start}.supervisor-kpis,.supervisor-filters{grid-template-columns:1fr}.supervisor-tech-row{grid-template-columns:38px minmax(0,1fr)}.supervisor-tech-metrics{grid-column:1/-1}}.operator-page{flex-direction:column;gap:12px;width:100%;min-width:0;padding:16px;display:flex}.operator-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.operator-header h1{color:var(--text);margin:2px 0 0;font-size:24px}.operator-header p{color:var(--text-secondary);margin:4px 0 0;font-size:11px}.operator-eyebrow{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.operator-header-actions{gap:7px;display:flex}.operator-header-actions button{border:1px solid var(--border);background:var(--card);height:36px;color:var(--text);font:inherit;cursor:pointer;border-radius:9px;align-items:center;gap:6px;padding:0 11px;font-size:11px;font-weight:700;display:inline-flex}.operator-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;display:grid}.operator-kpi{border:1px solid var(--border);background:var(--card);border-radius:11px;align-items:center;gap:9px;padding:11px;display:flex}.operator-kpi>span{background:color-mix(in srgb, var(--primary) 10%, transparent);width:34px;height:34px;color:var(--primary);border-radius:9px;flex:0 0 34px;justify-content:center;align-items:center;font-size:18px;display:flex}.operator-kpi.success>span{color:#22c55e;background:#22c55e1f}.operator-kpi.warning>span{color:#f59e0b;background:#f59e0b1f}.operator-kpi.danger>span{color:#ef4444;background:#ef44441a}.operator-kpi div{flex-direction:column;min-width:0;display:flex}.operator-kpi strong{color:var(--text);font-size:19px;line-height:1}.operator-kpi small{color:var(--text-secondary);margin-top:4px;font-size:11px}.operator-card{border:1px solid var(--border);background:var(--card);border-radius:12px;min-width:0;overflow:hidden}.operator-operational{padding:0}.operator-grid{grid-template-columns:minmax(0,2fr) minmax(300px,.75fr);gap:10px;min-height:430px;display:grid}.operator-map{min-height:430px}.operator-map>*{height:100%}.operator-alerts{min-height:430px}.operator-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.operator-shortcuts button{border:1px solid var(--border);background:var(--card);color:var(--text);text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:11px 12px;display:flex}.operator-shortcuts button>svg{color:var(--primary);flex:none;font-size:21px}.operator-shortcuts div{flex-direction:column;min-width:0;display:flex}.operator-shortcuts strong{font-size:11px}.operator-shortcuts span{color:var(--text-secondary);margin-top:2px;font-size:11px}@media (width<=1100px){.operator-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.operator-grid{grid-template-columns:1fr}}@media (width<=720px){.operator-page{padding:12px}.operator-header{flex-direction:column;align-items:flex-start}.operator-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.operator-shortcuts{grid-template-columns:1fr}}.incidents-page{flex-direction:column;gap:14px;padding:18px;display:flex}.incidents-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.incidents-header h1{color:var(--text);margin:3px 0 0;font-size:24px;line-height:1.1}.incidents-header p{color:var(--text-secondary);margin:5px 0 0;font-size:11px}.incidents-eyebrow{color:var(--primary);letter-spacing:.06em;text-transform:uppercase;font-size:9px;font-weight:800}.incidents-header-actions{align-items:center;gap:8px;display:flex}.incidents-btn,.incidents-icon-btn,.incidents-back-btn,.incidents-chip{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:6px;font-size:11px;font-weight:700;transition:background .15s,border-color .15s,color .15s,transform .15s;display:inline-flex}.incidents-btn:disabled,.incidents-icon-btn:disabled{opacity:.55;cursor:not-allowed}.incidents-btn:not(:disabled):active,.incidents-icon-btn:not(:disabled):active{transform:translateY(1px)}.incidents-btn svg,.incidents-icon-btn svg,.incidents-back-btn svg,.incidents-chip svg{width:16px!important;min-width:16px!important;height:16px!important;min-height:16px!important;font-size:16px!important}.incidents-btn{min-height:38px;padding:0 13px}.incidents-btn.primary{background:var(--primary);color:#fff}.incidents-btn.secondary{border-color:var(--border);background:var(--card);color:var(--text)}.incidents-btn.warning{color:#fff;background:#f59e0b}.incidents-btn.success{color:#fff;background:#22c55e}.incidents-btn.full{width:100%}.incidents-alert{border-radius:10px;align-items:center;gap:8px;padding:10px 12px;font-size:11px;display:flex}.incidents-alert.error{color:#ef4444;background:#ef444414;border:1px solid #ef444440}.incidents-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;display:grid}.incidents-kpi{border:1px solid var(--border);background:var(--card);border-radius:12px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;padding:11px 12px;display:grid}.incidents-kpi>span{background:color-mix(in srgb,var(--primary) 10%,transparent);width:42px;height:42px;color:var(--primary);border-radius:10px;justify-content:center;align-items:center;display:flex}.incidents-kpi>span svg{width:22px;height:22px;font-size:22px}.incidents-kpi.danger>span{color:#ef4444;background:#ef444417}.incidents-kpi.critical>span{color:#e11d48;background:#be185d17}.incidents-kpi.success>span{color:#22c55e;background:#22c55e17}.incidents-kpi.info>span{color:#3b82f6;background:#3b82f617}.incidents-kpi div{flex-direction:column;min-width:0;display:flex}.incidents-kpi small{color:var(--text-secondary);font-size:9px;font-weight:700}.incidents-kpi strong{color:var(--text);margin-top:2px;font-size:15px}.incidents-card{border:1px solid var(--border);background:var(--card);border-radius:13px}.incidents-workspace{overflow:visible}.incidents-toolbar{border-bottom:1px solid var(--border);grid-template-columns:minmax(260px,1fr) 170px 150px 220px auto 38px;align-items:center;gap:8px;padding:11px;display:grid}.incidents-search{border:1px solid var(--border);background:var(--background);height:38px;color:var(--text-secondary);border-radius:9px;align-items:center;gap:7px;padding:0 10px;display:flex}.incidents-search svg{width:16px;height:16px}.incidents-search input{width:100%;color:var(--text);background:0 0;border:0;outline:0;font-size:11px}.incidents-native-select{border:1px solid var(--border);background:var(--background);width:100%;height:38px;color:var(--text);border-radius:9px;padding:0 10px;font-size:11px}.incidents-chip{border-color:var(--border);background:var(--background);height:38px;color:var(--text-secondary);white-space:nowrap;padding:0 10px}.incidents-chip.active{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary) 10%,transparent);color:var(--primary)}.incidents-icon-btn{border-color:var(--border);background:var(--background);width:32px;height:32px;color:var(--primary)}.incidents-icon-btn.clear{width:38px;height:38px;color:var(--text-secondary)}.incidents-table-wrap{overflow-x:auto}.incidents-table{border-collapse:collapse;width:100%;min-width:1040px}.incidents-table th,.incidents-table td{border-bottom:1px solid var(--border);color:var(--text);text-align:left;vertical-align:middle;padding:11px 13px;font-size:11px}.incidents-table th{background:color-mix(in srgb,var(--background) 65%,transparent);color:var(--text-secondary);letter-spacing:.025em;text-transform:uppercase;font-size:9px;font-weight:800}.incidents-table tbody tr{transition:background .15s}.incidents-table tbody tr:hover{background:var(--hover)}.incidents-table tbody tr.critical-row{box-shadow:inset 3px 0 #ef4444}.incidents-primary-cell,.incidents-assignee,.incidents-age{flex-direction:column;gap:2px;min-width:0;display:flex}.incidents-primary-cell strong,.incidents-assignee span,.incidents-age strong{max-width:260px;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.incidents-primary-cell span{max-width:300px;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.incidents-primary-cell small,.incidents-assignee small,.incidents-age small{color:var(--text-secondary);font-size:9px}.incidents-assignee .unassigned{color:#f59e0b}.incidents-severity,.incidents-status{white-space:nowrap;border-radius:999px;align-items:center;padding:5px 8px;font-size:9px;font-weight:800;display:inline-flex}.incidents-severity.critical{color:#ef4444;background:#dc26261f}.incidents-severity.high{color:#f97316;background:#f973161f}.incidents-severity.medium{color:#f59e0b;background:#f59e0b1f}.incidents-severity.low{color:#3b82f6;background:#3b82f61f}.incidents-status{color:#94a3b8;background:#94a3b81f}.incidents-status.new{color:#ef4444;background:#ef44441a}.incidents-status.acknowledged{color:#f59e0b;background:#f59e0b1a}.incidents-status.assigned{color:#3b82f6;background:#3b82f61a}.incidents-status.escalated{color:#e11d48;background:#be185d1f}.incidents-status.resolved,.incidents-status.closed{color:#22c55e;background:#22c55e1f}.incidents-status.cancelled{color:var(--text-secondary);background:#94a3b81f}.incidents-loading,.incidents-empty{min-height:150px;color:var(--text-secondary);justify-content:center;align-items:center;font-size:11px;display:flex}.incidents-empty{flex-direction:column;gap:4px}.incidents-empty svg{width:28px;height:28px;margin-bottom:4px}.incidents-empty strong{color:var(--text);font-size:11px}.incidents-empty span{font-size:9px}.incidents-empty.compact{min-height:110px}.incidents-detail-header{justify-content:flex-start}.incidents-detail-header>div{flex:1}.incidents-back-btn{border-color:var(--border);background:var(--card);width:38px;height:38px;color:var(--text)}.incidents-title-row{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.incidents-title-row h1{margin-right:3px}.incidents-overview-strip{border:1px solid var(--border);background:var(--card);border-radius:12px;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;overflow:hidden}.incidents-overview-strip article{border-right:1px solid var(--border);align-items:center;gap:8px;min-width:0;padding:11px 13px;display:flex}.incidents-overview-strip article:last-child{border-right:0}.incidents-overview-strip article>span{background:color-mix(in srgb,var(--primary) 9%,transparent);width:30px;height:30px;color:var(--primary);border-radius:8px;justify-content:center;align-items:center;display:flex}.incidents-overview-strip article svg{width:18px;height:18px}.incidents-overview-strip div{flex-direction:column;min-width:0;display:flex}.incidents-overview-strip small{color:var(--text-secondary);font-size:9px}.incidents-overview-strip strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;overflow:hidden}.incidents-tabs{border-bottom:1px solid var(--border);gap:4px;display:flex}.incidents-tabs button{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:5px;padding:9px 12px;font-size:11px;font-weight:700;display:flex}.incidents-tabs button.active{border-bottom-color:var(--primary);color:var(--primary)}.incidents-tabs button span{background:var(--background);border-radius:999px;padding:1px 5px;font-size:9px}.incidents-detail-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:12px;display:grid}.incidents-detail-main{flex-direction:column;gap:12px;min-width:0;display:flex}.incidents-detail-card,.incidents-workflow-card,.incidents-actions-card{overflow:hidden}.incidents-card-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.incidents-card-heading span{color:var(--primary);text-transform:uppercase;font-size:9px;font-weight:800}.incidents-card-heading h2{color:var(--text);margin:2px 0 0;font-size:13px}.incidents-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:4px 14px 12px;display:grid}.incidents-info-item{border-bottom:1px solid var(--border);flex-direction:column;gap:3px;min-width:0;padding:11px 5px;display:flex}.incidents-info-item:nth-last-child(-n+2){border-bottom:0}.incidents-info-item.wide{grid-column:1/-1}.incidents-info-item span{color:var(--text-secondary);font-size:9px}.incidents-info-item strong{color:var(--text);white-space:pre-wrap;font-size:11px}.incidents-workflow{grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:22px 24px 24px;display:grid}.incidents-workflow-step{min-width:0;color:var(--text-secondary);text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex;position:relative}.incidents-workflow-step:not(:last-child):after{content:"";z-index:0;background:var(--border);border-radius:999px;width:calc(100% - 36px);height:2px;position:absolute;top:15px;left:calc(50% + 18px)}.incidents-workflow-step:has(+.incidents-workflow-step.active):after{background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 72%,#8b5cf6))}.incidents-workflow-step i{z-index:2;border:2px solid var(--border);background:var(--card);width:30px;height:30px;box-shadow:0 0 0 5px var(--card);border-radius:50%;flex:0 0 30px;justify-content:center;align-items:center;transition:border-color .18s,background .18s,box-shadow .18s;display:flex;position:relative}.incidents-workflow-step i:after{content:"";background:var(--border);border-radius:50%;width:7px;height:7px;transition:background .18s,transform .18s}.incidents-workflow-step.active i{border-color:var(--primary);background:var(--primary);box-shadow:0 0 0 5px var(--card),0 6px 16px color-mix(in srgb,var(--primary) 24%,transparent)}.incidents-workflow-step.active i:after{background:0 0;border-top:0;border-bottom:2px solid #fff;border-left:2px solid #fff;border-right:0;border-radius:0;width:8px;height:5px;transform:translateY(-1px)rotate(-45deg)}.incidents-workflow-step.warning.active i{box-shadow:0 0 0 5px var(--card),0 6px 16px #f59e0b33;background:#f59e0b;border-color:#f59e0b}.incidents-workflow-step.success.active i{box-shadow:0 0 0 5px var(--card),0 6px 16px #22c55e33;background:#22c55e;border-color:#22c55e}.incidents-workflow-step div{flex-direction:column;align-items:center;gap:3px;min-width:0;display:flex}.incidents-workflow-step strong{color:var(--text);font-size:11px;font-weight:800;line-height:1.2}.incidents-workflow-step span{min-height:13px;color:var(--text-secondary);font-size:9px;font-weight:500;line-height:1.3}.incidents-workflow-step:not(.active) strong{color:var(--text-secondary);font-weight:700}.incidents-workflow-step:not(.active) span{opacity:.75}.incidents-context-box{border:1px solid var(--border);border-radius:9px;margin:0 14px 13px;padding:10px 11px}.incidents-context-box strong{color:var(--text);font-size:11px}.incidents-context-box p{color:var(--text-secondary);margin:4px 0 0;font-size:11px;line-height:1.45}.incidents-context-box.warning{background:#f59e0b0d;border-color:#f59e0b3d}.incidents-context-box.success{background:#22c55e0d;border-color:#22c55e3d}.incidents-actions-card{flex-direction:column;display:flex}.incidents-action-box{border-bottom:1px solid var(--border);padding:12px 14px}.incidents-action-box:last-child{border-bottom:0}.incidents-action-box>header{grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;display:grid}.incidents-action-box>header>span{background:var(--background);width:34px;height:34px;color:var(--primary);border-radius:9px;justify-content:center;align-items:center;display:flex}.incidents-action-box>header svg{width:18px;height:18px}.incidents-action-box>header div{flex-direction:column;min-width:0;display:flex}.incidents-action-box>header strong{color:var(--text);font-size:11px}.incidents-action-box>header small{color:var(--text-secondary);margin-top:2px;font-size:9px;line-height:1.35}.incidents-action-content{flex-direction:column;gap:8px;margin-top:10px;display:flex}.incidents-field{flex-direction:column;gap:5px;display:flex}.incidents-field span{color:var(--text);font-size:11px;font-weight:700}.incidents-field input,.incidents-field select,.incidents-field textarea,.incidents-note-form textarea{border:1px solid var(--border);background:var(--background);width:100%;color:var(--text);border-radius:9px;outline:0;font-size:11px}.incidents-field input,.incidents-field select{height:38px;padding:0 9px}.incidents-field textarea,.incidents-note-form textarea{resize:vertical;padding:9px}.incidents-field input:focus,.incidents-field select:focus,.incidents-field textarea:focus,.incidents-note-form textarea:focus{border-color:var(--primary)}.incidents-readonly{color:var(--text-secondary);text-align:center;flex-direction:column;align-items:center;gap:4px;padding:22px 16px;display:flex}.incidents-readonly svg{width:24px;height:24px;color:var(--primary)}.incidents-readonly strong{color:var(--text);font-size:11px}.incidents-readonly span{max-width:270px;font-size:9px}.incidents-tab-card{overflow:hidden}.incidents-note-form{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;padding:13px;display:grid}.incidents-note-form label{flex-direction:column;gap:5px;display:flex}.incidents-note-form label>span{color:var(--text);font-size:11px;font-weight:700}.incidents-notes{padding:0 14px}.incidents-notes article{border-bottom:1px solid var(--border);grid-template-columns:34px minmax(0,1fr);gap:10px;padding:12px 0;display:grid}.incidents-notes article:last-child{border-bottom:0}.incidents-note-avatar{background:color-mix(in srgb,var(--primary) 12%,transparent);width:34px;height:34px;color:var(--primary);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:flex}.incidents-notes header,.incidents-timeline header{justify-content:space-between;align-items:center;gap:10px;display:flex}.incidents-notes header strong,.incidents-timeline header strong{color:var(--text);font-size:11px}.incidents-notes header small,.incidents-timeline header small{color:var(--text-secondary);font-size:9px}.incidents-notes p,.incidents-timeline p{color:var(--text-secondary);margin:5px 0 0;font-size:11px;line-height:1.45}.incidents-timeline{padding:4px 14px 14px}.incidents-timeline article{grid-template-columns:34px minmax(0,1fr);gap:10px;min-height:68px;padding-top:12px;display:grid;position:relative}.incidents-timeline article:not(:last-child):before{content:"";background:var(--border);width:1px;position:absolute;top:42px;bottom:-12px;left:16px}.incidents-timeline-icon{z-index:1;border:1px solid var(--border);background:var(--card);width:34px;height:34px;color:var(--primary);border-radius:50%;justify-content:center;align-items:center;display:flex}.incidents-timeline-icon svg{width:17px;height:17px}.incidents-timeline article>div>small{color:var(--text-secondary);margin-top:4px;font-size:9px;display:block}.incidents-create-layout{grid-template-columns:minmax(0,1fr) 340px;gap:12px;display:grid}.incidents-create-main,.incidents-create-side{overflow:hidden}.incidents-create-fields{grid-template-columns:1fr;gap:12px;padding:14px;display:grid}.incidents-severity-selector{flex-direction:column;gap:6px;display:flex}.incidents-severity-selector>span{color:var(--text);font-size:11px;font-weight:700}.incidents-severity-selector>div{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.incidents-severity-selector button{border:1px solid var(--border);background:var(--background);height:36px;color:var(--text-secondary);cursor:pointer;border-radius:9px;font-size:11px;font-weight:700}.incidents-severity-selector button.low.active{color:#3b82f6;background:#3b82f61a;border-color:#3b82f6}.incidents-severity-selector button.medium.active{color:#f59e0b;background:#f59e0b1a;border-color:#f59e0b}.incidents-severity-selector button.high.active{color:#f97316;background:#f973161a;border-color:#f97316}.incidents-severity-selector button.critical.active{color:#ef4444;background:#ef44441a;border-color:#ef4444}.incidents-source-summary{background:color-mix(in srgb,var(--primary) 7%,transparent);color:var(--text-secondary);border-radius:9px;gap:8px;margin:13px;padding:10px;display:flex}.incidents-source-summary svg{width:18px;height:18px;color:var(--primary);flex:0 0 18px}.incidents-source-summary p{margin:0;font-size:9px;line-height:1.45}.incidents-readonly-field{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:10px 13px;display:flex}.incidents-readonly-field span{color:var(--text-secondary);font-size:9px}.incidents-readonly-field strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.incidents-create-actions{border-top:1px solid var(--border);grid-column:1/-1;justify-content:flex-end;gap:8px;padding-top:12px;display:flex}@media (width<=1180px){.incidents-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.incidents-toolbar{grid-template-columns:minmax(260px,1fr) repeat(2,150px)}.incidents-toolbar .searchable-select{grid-column:1/3}.incidents-detail-grid{grid-template-columns:1fr}.incidents-overview-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.incidents-overview-strip article:nth-child(3){border-right:0}.incidents-overview-strip article:nth-child(-n+3){border-bottom:1px solid var(--border)}}@media (width<=800px){.incidents-page{padding:12px}.incidents-header{flex-wrap:wrap;align-items:flex-start}.incidents-header-actions{width:100%}.incidents-header-actions .incidents-btn{flex:1}.incidents-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.incidents-toolbar{grid-template-columns:1fr 1fr}.incidents-toolbar .incidents-search,.incidents-toolbar .searchable-select{grid-column:1/-1}.incidents-overview-strip{grid-template-columns:1fr}.incidents-overview-strip article{border-right:0;border-bottom:1px solid var(--border)}.incidents-overview-strip article:last-child{border-bottom:0}.incidents-workflow{grid-template-columns:1fr;gap:10px}.incidents-workflow-step:not(:last-child):after{width:2px;height:auto;top:13px;bottom:-10px;left:6px}.incidents-create-layout{grid-template-columns:1fr}.incidents-create-actions{grid-column:1}.incidents-note-form{grid-template-columns:1fr}}@media (width<=520px){.incidents-kpis,.incidents-toolbar{grid-template-columns:1fr}.incidents-toolbar>*{grid-column:1!important}.incidents-info-grid{grid-template-columns:1fr}.incidents-info-item.wide{grid-column:1}.incidents-info-item:nth-last-child(-n+2){border-bottom:1px solid var(--border)}.incidents-info-item:last-child{border-bottom:0}.incidents-severity-selector>div{grid-template-columns:repeat(2,1fr)}.incidents-create-actions{flex-direction:column-reverse}.incidents-create-actions .incidents-btn{width:100%}}.incidents-workflow-card .incidents-card-heading{background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 3%,var(--card)),var(--card))}.incidents-workflow-card .incidents-card-heading h2{letter-spacing:-.01em}@media (width<=800px){.incidents-workflow{grid-template-columns:1fr;gap:0;padding:14px 16px}.incidents-workflow-step{text-align:left;grid-template-columns:30px minmax(0,1fr);place-items:start;column-gap:10px;min-height:62px;display:grid}.incidents-workflow-step:not(:last-child):after{width:2px;height:auto;top:30px;bottom:0;left:14px}.incidents-workflow-step:has(+.incidents-workflow-step.active):after{background:linear-gradient(180deg,var(--primary),color-mix(in srgb,var(--primary) 72%,#8b5cf6))}.incidents-workflow-step div{align-items:flex-start;padding-top:3px}.incidents-workflow-step i{grid-row:1/3}}.customer-portal-page{flex-direction:column;gap:13px;padding:17px;display:flex}.customer-portal-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.customer-portal-header h1{color:var(--text);margin:2px 0 0;font-size:24px}.customer-portal-header p{color:var(--text-secondary);margin:4px 0 0;font-size:10px}.customer-portal-eyebrow{color:var(--primary);text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:800}.customer-portal-btn{min-height:38px;font:inherit;cursor:pointer;border:1px solid #0000;border-radius:9px;align-items:center;gap:6px;padding:0 12px;font-size:9px;font-weight:700;display:inline-flex}.customer-portal-btn.secondary{border-color:var(--border);background:var(--card);color:var(--text)}.customer-portal-alert.error{color:#ef4444;background:#ef444414;border:1px solid #ef444440;border-radius:9px;padding:9px 11px;font-size:9px}.customer-portal-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;display:grid}.customer-portal-kpi{border:1px solid var(--border);background:var(--card);border-radius:11px;align-items:center;gap:9px;padding:11px;display:flex}.customer-portal-kpi>span{background:color-mix(in srgb,var(--primary) 10%,transparent);width:35px;height:35px;color:var(--primary);border-radius:9px;justify-content:center;align-items:center;font-size:18px;display:flex}.customer-portal-kpi.success>span{color:#22c55e;background:#22c55e1f}.customer-portal-kpi.warning>span{color:#f59e0b;background:#f59e0b1f}.customer-portal-kpi div{flex-direction:column;display:flex}.customer-portal-kpi strong{color:var(--text);font-size:20px}.customer-portal-kpi small{color:var(--text-secondary);font-size:8px}.customer-portal-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:11px;display:grid}.customer-portal-card{border:1px solid var(--border);background:var(--card);border-radius:12px;overflow:hidden}.customer-portal-card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;display:flex}.customer-portal-card-header h2{color:var(--text);margin:0;font-size:12px}.customer-portal-card-header p{color:var(--text-secondary);margin:2px 0 0;font-size:8px}.customer-portal-card-header button{color:var(--primary);cursor:pointer;background:0 0;border:0;font-size:9px;font-weight:700}.customer-portal-service{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto 125px;align-items:center;gap:9px;padding:10px 13px;display:grid}.customer-portal-service div{flex-direction:column;display:flex}.customer-portal-service strong{color:var(--text);font-size:10px}.customer-portal-service span,.customer-portal-service small{color:var(--text-secondary);font-size:8px}.customer-portal-status{background:#94a3b81f;border-radius:999px;width:max-content;padding:5px 8px;font-size:8px;font-weight:800;display:inline-flex}.customer-portal-status.scheduled{color:#3b82f6;background:#3b82f61f}.customer-portal-status.in_progress{color:#f59e0b;background:#f59e0b1f}.customer-portal-status.completed{color:#22c55e;background:#22c55e1f}.customer-portal-status.failed,.customer-portal-status.cancelled{color:#ef4444;background:#ef44441a}.customer-portal-actions{padding-bottom:8px}.customer-portal-actions>button{border:1px solid var(--border);background:var(--background);width:calc(100% - 20px);color:var(--text);text-align:left;cursor:pointer;border-radius:9px;align-items:center;gap:9px;margin:8px 10px 0;padding:10px;display:flex}.customer-portal-actions>button>svg{color:var(--primary);font-size:19px}.customer-portal-actions div{flex-direction:column;display:flex}.customer-portal-actions strong{font-size:9px}.customer-portal-actions span{color:var(--text-secondary);margin-top:2px;font-size:8px}.customer-portal-loading,.customer-portal-empty{min-height:130px;color:var(--text-secondary);justify-content:center;align-items:center;font-size:9px;display:flex}.customer-portal-filters{border-bottom:1px solid var(--border);grid-template-columns:minmax(260px,1fr) 220px;gap:8px;padding:10px;display:grid}.customer-portal-filters label{border:1px solid var(--border);background:var(--background);border-radius:9px;align-items:center;gap:6px;height:37px;padding:0 9px;display:flex}.customer-portal-filters input,.customer-portal-filters select{width:100%;color:var(--text);background:0 0;border:0;outline:0;font-size:9px}.customer-portal-filters>select{border:1px solid var(--border);background:var(--background);border-radius:9px;padding:0 9px}.customer-portal-table-wrap{overflow-x:auto}.customer-portal-table{border-collapse:collapse;width:100%;min-width:820px}.customer-portal-table th,.customer-portal-table td{border-bottom:1px solid var(--border);color:var(--text);text-align:left;padding:10px 12px;font-size:9px}.customer-portal-table th{color:var(--text-secondary)}@media (width<=1000px){.customer-portal-kpis{grid-template-columns:repeat(3,1fr)}.customer-portal-grid{grid-template-columns:1fr}}@media (width<=650px){.customer-portal-page{padding:12px}.customer-portal-header{flex-wrap:wrap;align-items:flex-start}.customer-portal-kpis,.customer-portal-filters,.customer-portal-service{grid-template-columns:1fr}}.customer-portal-detail-header{justify-content:flex-start}.customer-portal-detail-header>div{flex:1}.customer-portal-back,.customer-portal-icon-btn{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;display:inline-flex}.customer-portal-back{flex:0 0 38px;width:38px;height:38px;font-size:18px}.customer-portal-icon-btn{background:var(--background);width:30px;height:30px;color:var(--primary);font-size:15px}.customer-portal-hero{border:1px solid var(--border);background:var(--card);border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.customer-portal-hero>div{border-right:1px solid var(--border);flex-direction:column;gap:5px;min-width:0;padding:12px 13px;display:flex}.customer-portal-hero>div:last-child{border-right:0}.customer-portal-hero span{color:var(--text-secondary);align-items:center;gap:5px;font-size:8px;display:flex}.customer-portal-hero strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.customer-portal-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.customer-portal-detail-card{padding:13px}.customer-portal-detail-card h2{color:var(--text);margin:0 0 7px;font-size:12px}.customer-portal-info-row{border-bottom:1px solid var(--border);grid-template-columns:130px minmax(0,1fr);gap:9px;padding:9px 0;display:grid}.customer-portal-info-row span{color:var(--text-secondary);align-items:center;gap:5px;font-size:8px;display:flex}.customer-portal-info-row strong{color:var(--text);font-size:9px;font-weight:600}.customer-portal-note{border:1px solid var(--border);background:var(--background);border-radius:9px;margin-top:10px;padding:10px}.customer-portal-note span{color:var(--text-secondary);font-size:8px;font-weight:700}.customer-portal-note p{color:var(--text);margin:5px 0 0;font-size:9px;line-height:1.45}@media (width<=900px){.customer-portal-hero{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-portal-detail-grid{grid-template-columns:1fr}}@media (width<=600px){.customer-portal-hero{grid-template-columns:1fr}.customer-portal-hero>div{border-right:0;border-bottom:1px solid var(--border)}}.customer-service-detail-page{gap:16px}.customer-service-detail-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:4px 0 16px;display:flex}.customer-service-detail-heading{align-items:center;gap:13px;min-width:0;display:flex}.customer-service-title-row{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.customer-service-title-row h1{color:var(--text);margin:2px 0 0;font-size:24px;line-height:1.1}.customer-service-detail-heading p{color:var(--text-secondary);margin:5px 0 0;font-size:11px}.customer-service-overview{border:1px solid var(--border);background:var(--card);border-radius:13px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.customer-service-overview-item{border-right:1px solid var(--border);grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:13px 14px;display:grid}.customer-service-overview-item:last-child{border-right:0}.customer-service-overview-icon{background:color-mix(in srgb,var(--primary) 10%,transparent);width:38px;height:38px;color:var(--primary);border-radius:10px;justify-content:center;align-items:center;display:flex}.customer-service-overview-icon svg{width:18px;height:18px;font-size:18px}.customer-service-overview-item.warning .customer-service-overview-icon{color:#f59e0b;background:#f59e0b1c}.customer-service-overview-item.success .customer-service-overview-icon{color:#22c55e;background:#22c55e1c}.customer-service-overview-item.danger .customer-service-overview-icon{color:#ef4444;background:#ef44441a}.customer-service-overview-item>div{flex-direction:column;min-width:0;display:flex}.customer-service-overview-item small{color:var(--text-secondary);font-size:9px;font-weight:600}.customer-service-overview-item strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;font-weight:800;overflow:hidden}.customer-service-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.customer-service-card{overflow:hidden}.customer-service-card-header{border-bottom:1px solid var(--border);background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 3%,var(--card)),var(--card));grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;padding:13px 14px;display:grid}.customer-service-card-header>span{background:color-mix(in srgb,var(--primary) 10%,transparent);width:40px;height:40px;color:var(--primary);border-radius:10px;justify-content:center;align-items:center;display:flex}.customer-service-card-header>span svg{width:20px;height:20px;font-size:20px}.customer-service-card-header>div{min-width:0}.customer-service-card-header small{color:var(--primary);letter-spacing:.05em;text-transform:uppercase;font-size:9px;font-weight:800;display:block}.customer-service-card-header h2{color:var(--text);margin:2px 0 0;font-size:13px}.customer-service-card-header p{color:var(--text-secondary);margin:3px 0 0;font-size:9px}.customer-service-info-list{grid-template-columns:repeat(2,minmax(0,1fr));padding:5px 14px 13px;display:grid}.customer-service-info-list.compact{border-bottom:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:9px}.customer-service-info-row{border-bottom:1px solid var(--border);grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;min-width:0;padding:11px 4px;display:grid}.customer-service-info-list:not(.compact) .customer-service-info-row:nth-last-child(-n+2),.customer-service-info-list.compact .customer-service-info-row{border-bottom:0}.customer-service-info-icon{background:var(--background);width:34px;height:34px;color:var(--text-secondary);border-radius:9px;justify-content:center;align-items:center;display:flex}.customer-service-info-icon svg{width:17px;height:17px;font-size:17px}.customer-service-info-row>div{flex-direction:column;min-width:0;display:flex}.customer-service-info-row small{color:var(--text-secondary);font-size:9px}.customer-service-info-row strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;font-weight:700;overflow:hidden}.customer-service-notes-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:12px 14px 14px;display:grid}.customer-service-note{border:1px solid var(--border);background:var(--background);border-radius:10px;min-height:122px;padding:11px}.customer-service-note.success{background:#22c55e0d;border-color:#22c55e38}.customer-service-note header{align-items:center;gap:7px;display:flex}.customer-service-note header>span{background:color-mix(in srgb,var(--primary) 9%,transparent);width:28px;height:28px;color:var(--primary);border-radius:8px;justify-content:center;align-items:center;display:flex}.customer-service-note header svg{width:16px;height:16px;font-size:16px}.customer-service-note header strong{color:var(--text);font-size:11px}.customer-service-note p{color:var(--text-secondary);white-space:pre-wrap;margin:9px 0 0;font-size:11px;line-height:1.5}.customer-service-detail-page .customer-portal-back{flex:0 0 38px;width:38px;height:38px}.customer-service-detail-page .customer-portal-btn{min-height:38px;font-size:11px}.customer-service-detail-page .customer-portal-btn svg,.customer-service-detail-page .customer-portal-back svg{width:16px!important;height:16px!important;font-size:16px!important}@media (width<=980px){.customer-service-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-service-overview-item:nth-child(2){border-right:0}.customer-service-overview-item:nth-child(-n+2){border-bottom:1px solid var(--border)}.customer-service-detail-grid{grid-template-columns:1fr}}@media (width<=650px){.customer-service-detail-header{flex-wrap:wrap;align-items:flex-start}.customer-service-detail-header>.customer-portal-btn{width:100%}.customer-service-overview{grid-template-columns:1fr}.customer-service-overview-item{border-right:0;border-bottom:1px solid var(--border)}.customer-service-overview-item:last-child{border-bottom:0}.customer-service-info-list,.customer-service-info-list.compact,.customer-service-notes-grid{grid-template-columns:1fr}.customer-service-info-list:not(.compact) .customer-service-info-row{border-bottom:1px solid var(--border)}.customer-service-info-list .customer-service-info-row:last-child{border-bottom:0}.customer-service-info-list.compact .customer-service-info-row{border-bottom:1px solid var(--border)}.customer-service-info-list.compact .customer-service-info-row:last-child{border-bottom:0}.customer-service-note{min-height:0}}.access-portal-page{flex-direction:column;gap:14px;padding:18px;display:flex}.access-portal-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.access-portal-header h1{color:var(--text);margin:2px 0 0;font-size:24px}.access-portal-header p{color:var(--text-secondary);margin:4px 0 0;font-size:10px}.access-portal-eyebrow{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.access-portal-role{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:11px;font-weight:700;display:inline-flex}.access-portal-role.auditor{color:var(--primary)}.access-portal-notice{background:#3b82f60f;border:1px solid #3b82f633;border-radius:11px;align-items:center;gap:10px;padding:12px;display:flex}.access-portal-notice.auditor{background:#a855f70f;border-color:#a855f733}.access-portal-notice>svg{color:var(--primary);flex:none;font-size:22px}.access-portal-notice div{flex-direction:column;display:flex}.access-portal-notice strong{color:var(--text);font-size:10px}.access-portal-notice span{color:var(--text-secondary);margin-top:3px;font-size:8px}.access-portal-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.access-portal-grid button{border:1px solid var(--border);background:var(--card);min-height:105px;color:var(--text);text-align:left;cursor:pointer;border-radius:11px;align-items:flex-start;gap:10px;padding:13px;display:flex}.access-portal-grid button:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));transform:translateY(-1px)}.access-portal-icon{background:color-mix(in srgb,var(--primary) 10%,transparent);width:36px;height:36px;color:var(--primary);border-radius:9px;flex:0 0 36px;justify-content:center;align-items:center;font-size:19px;display:flex}.access-portal-grid button>div{flex-direction:column;min-width:0;display:flex}.access-portal-grid strong{font-size:10px}.access-portal-grid small{color:var(--text-secondary);margin-top:4px;font-size:11px;line-height:1.4}.access-portal-card{border:1px solid var(--border);background:var(--card);border-radius:11px;padding:13px}.access-portal-card>div{color:var(--text-secondary);align-items:center;gap:6px;font-size:8px;display:flex}.access-portal-card>strong{color:var(--text);margin-top:6px;font-size:15px;display:block}.access-portal-card>p{color:var(--text-secondary);margin:5px 0 0;font-size:11px;line-height:1.45}.access-portal-empty{border:1px dashed var(--border);min-height:160px;color:var(--text-secondary);border-radius:11px;justify-content:center;align-items:center;font-size:9px;display:flex}@media (width<=1000px){.access-portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.access-portal-page{padding:12px}.access-portal-header{flex-direction:column;align-items:flex-start}.access-portal-grid{grid-template-columns:1fr}}.audit-page{flex-direction:column;gap:13px;padding:17px;display:flex}.audit-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.audit-header h1{color:var(--text);margin:2px 0 0;font-size:24px}.audit-header p{color:var(--text-secondary);margin:4px 0 0;font-size:10px}.audit-eyebrow{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.audit-btn,.audit-icon-btn{border:1px solid var(--border);background:var(--card);color:var(--text);font:inherit;cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:6px;font-size:11px;font-weight:700;display:inline-flex}.audit-btn{height:38px;padding:0 12px}.audit-alert{color:#ef4444;background:#ef444414;border:1px solid #ef444440;border-radius:9px;align-items:center;gap:7px;padding:9px 11px;font-size:9px;display:flex}.audit-kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.audit-kpi{border:1px solid var(--border);background:var(--card);border-radius:10px;align-items:center;gap:8px;padding:10px;display:flex}.audit-kpi>span{background:color-mix(in srgb, var(--primary) 10%, transparent);width:31px;height:31px;color:var(--primary);border-radius:8px;justify-content:center;align-items:center;display:flex}.audit-kpi.success>span{color:#22c55e;background:#22c55e1f}.audit-kpi.danger>span{color:#ef4444;background:#ef44441a}.audit-kpi.warning>span{color:#f59e0b;background:#f59e0b1f}.audit-kpi div{flex-direction:column;display:flex}.audit-kpi strong{color:var(--text);font-size:17px}.audit-kpi small{color:var(--text-secondary);font-size:8px}.audit-card{border:1px solid var(--border);background:var(--card);border-radius:12px;overflow:hidden}.audit-filters{border-bottom:1px solid var(--border);grid-template-columns:minmax(260px,1fr) 180px 220px 150px;gap:8px;padding:10px;display:grid}.audit-filters label{border:1px solid var(--border);background:var(--background);border-radius:9px;align-items:center;gap:6px;height:37px;padding:0 9px;display:flex}.audit-filters input,.audit-filters select{width:100%;color:var(--text);background:0 0;border:0;outline:0;font-size:9px}.audit-table-wrap{overflow-x:auto}.audit-table{border-collapse:collapse;width:100%;min-width:1050px}.audit-table th,.audit-table td{border-bottom:1px solid var(--border);color:var(--text);text-align:left;vertical-align:middle;padding:9px 11px;font-size:11px}.audit-table th{color:var(--text-secondary)}.audit-table td strong,.audit-table td small{display:block}.audit-table td strong{font-size:9px}.audit-table td small{color:var(--text-secondary);margin-top:2px;font-size:7px}.audit-result{border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800;display:inline-flex}.audit-result.success{color:#22c55e;background:#22c55e1f}.audit-result.failed{color:#ef4444;background:#ef44441a}.audit-result.denied{color:#f59e0b;background:#f59e0b1f}.audit-icon-btn{width:29px;height:29px;color:var(--primary);font-size:14px}.audit-loading,.audit-empty{min-height:150px;color:var(--text-secondary);justify-content:center;align-items:center;font-size:9px;display:flex}.audit-empty{flex-direction:column;gap:4px}.audit-empty svg{font-size:27px}.audit-modal-backdrop{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.audit-modal{border:1px solid var(--border);background:var(--card);border-radius:13px;width:min(760px,100%);max-height:88vh;overflow:auto;box-shadow:0 24px 70px #00000040}.audit-modal header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:13px 15px;display:flex}.audit-modal header span{color:var(--text-secondary);font-size:8px}.audit-modal h2{color:var(--text);margin:2px 0 0;font-size:15px}.audit-modal header button{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;font-size:23px}.audit-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px;padding:10px 15px;display:grid}.audit-detail-grid>div{border-bottom:1px solid var(--border);grid-template-columns:95px 1fr;gap:8px;padding:8px 0;display:grid}.audit-detail-grid span{color:var(--text-secondary);font-size:11px}.audit-detail-grid strong{overflow-wrap:anywhere;color:var(--text);font-size:11px}.audit-description,.audit-metadata{border:1px solid var(--border);background:var(--background);border-radius:9px;margin:0 15px 12px;padding:10px}.audit-description strong,.audit-metadata strong{font-size:11px}.audit-description p{color:var(--text);margin:5px 0 0;font-size:11px;line-height:1.45}.audit-metadata pre{color:var(--text);white-space:pre-wrap;margin:7px 0 0;font-size:11px;overflow:auto}@media (width<=1050px){.audit-kpis{grid-template-columns:repeat(3,1fr)}.audit-filters{grid-template-columns:1fr 1fr}.audit-search{grid-column:1/-1}}@media (width<=650px){.audit-page{padding:12px}.audit-header{flex-direction:column;align-items:flex-start}.audit-kpis,.audit-filters,.audit-detail-grid{grid-template-columns:1fr}.audit-search{grid-column:1}.audit-detail-grid>div{grid-template-columns:85px 1fr}}:root{--responsive-ui-scale:1;--density-scale:1;--ui-scale:calc(var(--responsive-ui-scale) * var(--density-scale));--toolbar-height:calc(54px * var(--ui-scale));--operationbar-height:calc(52px * var(--ui-scale));--panel-header-height:calc(42px * var(--ui-scale));--control-height:calc(40px * var(--ui-scale));--font-xs:calc(9px * var(--ui-scale));--font-sm:calc(10px * var(--ui-scale));--font-md:calc(11px * var(--ui-scale));--font-lg:calc(13px * var(--ui-scale));--font-xl:calc(15px * var(--ui-scale));--font-title:calc(16px * var(--ui-scale));--font-heading:calc(18px * var(--ui-scale));--space-1:calc(4px * var(--ui-scale));--space-2:calc(8px * var(--ui-scale));--space-3:calc(12px * var(--ui-scale));--space-4:calc(16px * var(--ui-scale));--radius-sm:calc(8px * var(--ui-scale));--radius-md:calc(10px * var(--ui-scale));--radius-lg:calc(14px * var(--ui-scale))}html[data-density=compact]{--density-scale:.9}html[data-density=comfortable]{--density-scale:1}html[data-density=spacious]{--density-scale:1.1}@media (width>=1700px){:root{--responsive-ui-scale:1}}@media (width<=1680px),(height<=900px){:root{--responsive-ui-scale:.92}}@media (width<=1440px),(height<=768px){:root{--responsive-ui-scale:.86}}@media (width<=1280px),(height<=720px){:root{--responsive-ui-scale:.8}}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;font-family:Inter,sans-serif;overflow:hidden}img,svg,canvas{max-width:100%}button,input,textarea{font:inherit}select{font-family:inherit;font-size:11px}select option{font-size:11px}@media (width<=768px){html,body,#root{min-width:0}}body{background:var(--background);color:var(--text)}:root{--background:#f5f7fb;--sidebar:#fff;--card:#fff;--border:#e5e7eb;--text:#111827;--text-secondary:#6b7280;--primary:#1b66ff;--success:#10b981;--warning:#f59e0b;--danger:#ef4444}[data-theme=dark]{--background:#07111f;--sidebar:#0b1728;--card:#111c2d;--border:#1f2a3d;--text:#fff;--text-secondary:#94a3b8;--primary:#1b66ff;--success:#10b981;--warning:#f59e0b;--danger:#ef4444}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#ffffff59}.google-map{zoom:.85}.gm-style .gm-bundled-control{transform-origin:100% 100%;transform:scale(.8);margin:3px!important}.gm-style .gm-bundled-control>div>div{width:30px!important;height:70px!important}.gm-style .gm-bundled-control button{width:38px!important;min-width:38px!important;height:38px!important;min-height:38px!important}.gm-style .gm-bundled-control button span{transform:scale(.8)}.gm-style .gmnoprint{margin-bottom:1px!important}@media (width<=1366px){.gm-style .gm-bundled-control{transform:scale(.72)}}@media (width<=768px){.gm-style .gm-bundled-control{transform:scale(.65)}}html{font-size:calc(16px * var(--user-font-scale,1))}@media (width<=1024px){button,input,select,textarea{min-width:0}table{max-width:100%}}@media (width<=768px){html,body,#root{width:100%;max-width:100%;overflow:hidden}body{overscroll-behavior:none}select{font-size:12px}.gm-style .gm-bundled-control{margin:0!important}}@media (width<=480px){.gm-style .gm-bundled-control{transform-origin:100% 100%;transform:scale(.58)}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}input[type=date],input[type=datetime-local],input[type=month],input[type=week],input[type=time]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark] input[type=date],[data-theme=dark] input[type=datetime-local],[data-theme=dark] input[type=month],[data-theme=dark] input[type=week],[data-theme=dark] input[type=time]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}input[type=date]::-webkit-calendar-picker-indicator{opacity:.78;cursor:pointer;filter:none;width:16px;height:16px;margin-left:8px}input[type=datetime-local]::-webkit-calendar-picker-indicator{opacity:.78;cursor:pointer;filter:none;width:16px;height:16px;margin-left:8px}input[type=month]::-webkit-calendar-picker-indicator{opacity:.78;cursor:pointer;filter:none;width:16px;height:16px;margin-left:8px}input[type=week]::-webkit-calendar-picker-indicator{opacity:.78;cursor:pointer;filter:none;width:16px;height:16px;margin-left:8px}input[type=time]::-webkit-calendar-picker-indicator{opacity:.78;cursor:pointer;filter:none;width:16px;height:16px;margin-left:8px}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=datetime-local]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=month]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=week]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=time]::-webkit-calendar-picker-indicator:hover{opacity:1}[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator{filter:invert()brightness(1.35);opacity:.9}[data-theme=dark] input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert()brightness(1.35);opacity:.9}[data-theme=dark] input[type=month]::-webkit-calendar-picker-indicator{filter:invert()brightness(1.35);opacity:.9}[data-theme=dark] input[type=week]::-webkit-calendar-picker-indicator{filter:invert()brightness(1.35);opacity:.9}[data-theme=dark] input[type=time]::-webkit-calendar-picker-indicator{filter:invert()brightness(1.35);opacity:.9}input[type=date]:disabled::-webkit-calendar-picker-indicator{cursor:default;opacity:.45}input[type=datetime-local]:disabled::-webkit-calendar-picker-indicator{cursor:default;opacity:.45}input[type=month]:disabled::-webkit-calendar-picker-indicator{cursor:default;opacity:.45}input[type=week]:disabled::-webkit-calendar-picker-indicator{cursor:default;opacity:.45}input[type=time]:disabled::-webkit-calendar-picker-indicator{cursor:default;opacity:.45}:root{--select-bg:#fff;--select-text:#111827;--select-border:#e5e7eb;--select-option-bg:#fff;--select-option-text:#111827;--select-option-hover:#eef4ff}[data-theme=dark]{--select-bg:#0b1728;--select-text:#f8fafc;--select-border:#1f2a3d;--select-option-bg:#0f1b2d;--select-option-text:#f8fafc;--select-option-hover:#1b2a42}select{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;border-color:var(--select-border)!important;background-color:var(--select-bg)!important;color:var(--select-text)!important}[data-theme=dark] select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}select option,select optgroup{background:var(--select-option-bg)!important;color:var(--select-option-text)!important}select option:checked{background:var(--primary)!important;color:#fff!important}select:disabled{opacity:.6;cursor:not-allowed}select:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 14%,transparent);outline:none;border-color:var(--primary)!important}select:-moz-focusring{color:#0000;text-shadow:0 0 0 var(--select-text)}.searchable-select-trigger,.searchable-select-menu,.searchable-select-options,.searchable-select-search{background-color:var(--select-bg)!important;color:var(--select-text)!important}.searchable-select-menu{border-color:var(--select-border)!important}.searchable-select-options>button{color:var(--select-option-text)!important}.searchable-select-options>button:hover{background:var(--select-option-hover)!important}.searchable-select-options>button.selected{background:color-mix(in srgb,var(--primary) 16%,var(--select-option-bg))!important;color:var(--primary)!important}
