.palette-backdrop[data-v-5fc1f4a1]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:500;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh}.palette[data-v-5fc1f4a1]{background:#fff;border-radius:14px;box-shadow:0 24px 64px #00000038,0 0 0 1px #0000000f;width:560px;max-width:calc(100vw - 2rem);overflow:hidden;display:flex;flex-direction:column;max-height:70vh}.palette-input-wrap[data-v-5fc1f4a1]{display:flex;align-items:center;gap:.6rem;padding:.875rem 1rem;border-bottom:1px solid #f1f5f9}.palette-icon[data-v-5fc1f4a1]{color:#94a3b8;flex-shrink:0}.palette-input[data-v-5fc1f4a1]{flex:1;border:none;outline:none;font-size:.95rem;color:#0f172a;background:transparent}.palette-input[data-v-5fc1f4a1]::placeholder{color:#94a3b8}.palette-esc[data-v-5fc1f4a1]{font-size:.65rem;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;padding:.15rem .4rem;color:#94a3b8;flex-shrink:0}.palette-body[data-v-5fc1f4a1]{overflow-y:auto;max-height:calc(70vh - 56px)}.palette-status[data-v-5fc1f4a1]{display:flex;justify-content:center;padding:1.5rem}.palette-spinner[data-v-5fc1f4a1]{width:20px;height:20px;border:2px solid #e2e8f0;border-top-color:#0284c7;border-radius:50%;animation:spin-5fc1f4a1 .7s linear infinite}@keyframes spin-5fc1f4a1{to{transform:rotate(360deg)}}.palette-hint[data-v-5fc1f4a1]{text-align:center;padding:1.5rem;font-size:.85rem;color:#94a3b8}.palette-group[data-v-5fc1f4a1]{padding:.5rem 0}.palette-group+.palette-group[data-v-5fc1f4a1]{border-top:1px solid #f8fafc}.palette-group-label[data-v-5fc1f4a1]{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;padding:.4rem 1rem .2rem}.palette-item[data-v-5fc1f4a1]{display:flex;align-items:center;gap:.75rem;width:100%;padding:.55rem 1rem;border:none;background:transparent;cursor:pointer;text-align:left;transition:background .1s}.palette-item[data-v-5fc1f4a1]:hover,.palette-item-active[data-v-5fc1f4a1]{background:#f8fafc}.pi-icon[data-v-5fc1f4a1]{width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pi-client[data-v-5fc1f4a1]{background:#0284c714;color:#0284c7}.pi-driver[data-v-5fc1f4a1]{background:#22c55e14;color:#16a34a}.pi-vehicle[data-v-5fc1f4a1]{background:#f59e0b14;color:#d97706}.pi-body[data-v-5fc1f4a1]{flex:1;min-width:0;display:flex;flex-direction:column}.pi-name[data-v-5fc1f4a1]{font-size:.85rem;font-weight:500;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pi-sub[data-v-5fc1f4a1]{font-size:.75rem;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pi-arrow[data-v-5fc1f4a1]{color:#cbd5e1;flex-shrink:0}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,sans-serif;background:#f1f5f9;color:#1e293b;min-height:100vh}.app{display:flex;min-height:100vh}.sidebar{width:228px;min-height:100vh;background:#0f172a;display:flex;flex-direction:column;flex-shrink:0;position:fixed;left:0;top:0;bottom:0;z-index:10}.sidebar-logo{display:flex;align-items:center;gap:.55rem;padding:1.2rem 1.25rem 1.1rem;border-bottom:1px solid rgba(255,255,255,.06)}.logo-icon{color:#38bdf8;flex-shrink:0}.logo-text{font-size:1rem;font-weight:700;letter-spacing:-.01em;color:#f1f5f9;flex:1}.search-btn{display:flex;align-items:center;gap:.5rem;margin:.5rem .75rem .25rem;padding:.45rem .75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:7px;color:#64748b;font-size:.78rem;cursor:pointer;width:calc(100% - 1.5rem);text-align:left;transition:background .13s,color .13s}.search-btn span{flex:1}.search-btn:hover{background:#ffffff14;color:#94a3b8}.search-btn kbd{font-size:.65rem;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:3px;padding:.1rem .3rem;color:#475569;font-family:inherit}.ws-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;transition:background .3s}.ws-on{background:#4ade80;box-shadow:0 0 5px #4ade8088}.ws-off{background:#475569}nav{flex:1;padding:.75rem .75rem .5rem;display:flex;flex-direction:column;gap:1px}.nav-item{display:flex;align-items:center;gap:.6rem;padding:.55rem .75rem;color:#64748b;text-decoration:none;font-size:.8125rem;font-weight:500;border-radius:7px;transition:color .13s,background .13s;position:relative}.nav-item .ni{width:16px;height:16px;flex-shrink:0;opacity:.9}.nav-item:hover{color:#cbd5e1;background:#ffffff0d}.nav-item.router-link-active{color:#f1f5f9;background:#ffffff14;font-weight:600}.nav-item.router-link-active .ni{opacity:1}.nav-divider{height:1px;background:#ffffff0f;margin:.5rem 0}.badge-nav{margin-left:auto;background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;padding:.1rem .4rem;border-radius:999px;min-width:17px;text-align:center;line-height:1.4}.sidebar-footer{padding:.9rem 1rem;border-top:1px solid rgba(255,255,255,.06);display:flex;align-items:center;gap:.6rem}.user-info{display:flex;align-items:center;gap:.6rem;min-width:0;flex:1}.user-avatar{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,#0ea5e9,#6366f1);color:#fff;font-weight:700;font-size:.8rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-details{display:flex;flex-direction:column;min-width:0}.user-name{font-size:.75rem;color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500}.role-badge{display:inline-block;font-size:.6rem;font-weight:600;padding:.05rem .35rem;border-radius:3px;margin-top:.15rem;width:fit-content;text-transform:uppercase;letter-spacing:.03em}.role-badge.superadmin{background:#7c3aed40;color:#c4b5fd}.role-badge.admin{background:#0ea5e933;color:#7dd3fc}.btn-logout{background:transparent;border:none;color:#475569;width:28px;height:28px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .13s,background .13s}.btn-logout:hover{color:#f87171;background:#f871711a}.content{margin-left:228px;flex:1;padding:2rem;max-width:calc(100vw - 228px)}.content.full-width{margin-left:0;max-width:100vw}.hamburger{display:none;position:fixed;top:12px;left:12px;z-index:200;background:#0f172a;color:#f1f5f9;border:none;border-radius:8px;width:40px;height:40px;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px #0000004d;flex-shrink:0}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:90}@media (max-width: 768px){.hamburger{display:flex}.sidebar{transform:translate(-100%);transition:transform .25s ease;z-index:100}.sidebar.sidebar-open{transform:translate(0)}.content{margin-left:0;max-width:100vw;padding:4rem 1rem 1rem}}.idle-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;z-index:999;display:flex;align-items:center;justify-content:center}.idle-dialog{background:#fff;border-radius:14px;padding:2rem 2.25rem;max-width:360px;width:90%;text-align:center;box-shadow:0 20px 60px #0003;display:flex;flex-direction:column;align-items:center;gap:.5rem}.idle-title{font-size:1rem;font-weight:700;color:#0f172a;margin-top:.25rem}.idle-sub{font-size:.85rem;color:#64748b;margin-bottom:.5rem}.idle-btn{background:#0284c7;color:#fff;border:none;border-radius:8px;padding:.55rem 1.5rem;font-size:.9rem;font-weight:600;cursor:pointer;width:100%}.idle-btn:hover{background:#0369a1}.login-wrap[data-v-e7b11d9f]{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;background:#f1f5f9}.brand-header[data-v-e7b11d9f]{display:flex;align-items:center;gap:.875rem}.brand-icon[data-v-e7b11d9f]{flex-shrink:0}.brand-text[data-v-e7b11d9f]{display:flex;flex-direction:column;line-height:1}.brand-name[data-v-e7b11d9f]{font-size:1.75rem;font-weight:800;color:#0f172a;letter-spacing:-.02em}.brand-sub[data-v-e7b11d9f]{font-size:.75rem;font-weight:600;color:#64748b;letter-spacing:.12em;text-transform:uppercase;margin-top:.2rem}.login-card[data-v-e7b11d9f]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:2.5rem;width:100%;max-width:380px;box-shadow:0 4px 16px #00000014}h1[data-v-e7b11d9f]{font-size:1.5rem;font-weight:700;color:#0284c7;margin-bottom:.25rem}.subtitle[data-v-e7b11d9f]{color:#94a3b8;font-size:.875rem;margin-bottom:2rem}.step-header[data-v-e7b11d9f]{text-align:center;margin-bottom:1.75rem}.step-icon[data-v-e7b11d9f]{width:52px;height:52px;background:#0284c714;border-radius:12px;display:flex;align-items:center;justify-content:center;margin:0 auto .875rem;color:#0284c7}.step-title[data-v-e7b11d9f]{font-weight:700;font-size:1rem;color:#0f172a;margin-bottom:.3rem}.step-sub[data-v-e7b11d9f]{font-size:.8rem;color:#64748b}.field[data-v-e7b11d9f]{margin-bottom:1.25rem}.field label[data-v-e7b11d9f]{display:block;font-size:.8rem;color:#64748b;margin-bottom:.4rem;font-weight:500}.field input[data-v-e7b11d9f]{width:100%;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#1e293b;padding:.6rem .875rem;font-size:.9rem;outline:none}.field input[data-v-e7b11d9f]:focus{border-color:#0284c7;background:#fff;box-shadow:0 0 0 3px #0284c71a}.totp-input[data-v-e7b11d9f]{text-align:center;font-size:1.5rem;letter-spacing:.5em;font-weight:700}.error[data-v-e7b11d9f]{color:#dc2626;font-size:.8rem;margin-bottom:1rem}button[data-v-e7b11d9f]{width:100%;background:#0284c7;color:#fff;border:none;border-radius:8px;padding:.7rem;font-size:.95rem;font-weight:600;cursor:pointer;margin-top:.5rem}button[data-v-e7b11d9f]:hover:not(:disabled){background:#0369a1}button[data-v-e7b11d9f]:disabled{opacity:.6;cursor:not-allowed}.btn-link[data-v-e7b11d9f]{background:transparent;color:#64748b;font-size:.8rem;font-weight:400;margin-top:.5rem;padding:.4rem}.btn-link[data-v-e7b11d9f]:hover{color:#0284c7;background:transparent}.dashboard[data-v-0daaf36f]{max-width:960px}.page-header[data-v-0daaf36f]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.75rem}.page-header h1[data-v-0daaf36f]{font-size:1.125rem;font-weight:700;color:#0f172a}.last-updated[data-v-0daaf36f]{display:flex;align-items:center;gap:.35rem;font-size:.72rem;color:#94a3b8;background:#fff;border:1px solid #e2e8f0;padding:.28rem .65rem;border-radius:999px}.error-banner[data-v-0daaf36f]{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;padding:.6rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.875rem}.kpi-grid[data-v-0daaf36f]{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.875rem}.kpi-card[data-v-0daaf36f]{background:#fff;border-radius:12px;padding:1.1rem 1.2rem;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 2px #0000000d,0 0 0 1px #0000000a;transition:box-shadow .15s,transform .15s}.kpi-card[data-v-0daaf36f]:hover{box-shadow:0 4px 16px #00000014,0 0 0 1px #0000000a;transform:translateY(-1px)}.kpi-icon-wrap[data-v-0daaf36f]{width:40px;height:40px;border-radius:10px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.kpi-svg[data-v-0daaf36f]{width:19px;height:19px}.kpi-body[data-v-0daaf36f]{min-width:0}.kpi-value[data-v-0daaf36f]{font-size:1.5rem;font-weight:700;color:#0f172a;line-height:1}.kpi-label[data-v-0daaf36f]{font-size:.72rem;color:#64748b;margin-top:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.charts-section[data-v-0daaf36f]{margin-top:1.25rem;display:flex;flex-direction:column;gap:1rem}.charts-row[data-v-0daaf36f]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.chart-card[data-v-0daaf36f]{background:#fff;border-radius:12px;padding:1.25rem 1.25rem 1rem;box-shadow:0 1px 2px #0000000d,0 0 0 1px #0000000a}.chart-header[data-v-0daaf36f]{display:flex;align-items:baseline;gap:.5rem;margin-bottom:1rem}.chart-title[data-v-0daaf36f]{font-size:.8rem;font-weight:700;color:#1e293b}.chart-sub[data-v-0daaf36f]{font-size:.7rem;color:#94a3b8}.chart-body[data-v-0daaf36f]{position:relative;height:200px}@media (max-width: 768px){.charts-row[data-v-0daaf36f]{grid-template-columns:1fr}.chart-body[data-v-0daaf36f]{height:180px}}.page-header[data-v-f33d18a4]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}h2[data-v-f33d18a4]{font-size:1.25rem;font-weight:700;color:#1e293b}.empty[data-v-f33d18a4]{color:#94a3b8;padding:3rem 0;text-align:center}.card[data-v-f33d18a4]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px #0000000d}@media (max-width: 768px){.card[data-v-f33d18a4]{overflow-x:auto}.page-header[data-v-f33d18a4]{flex-wrap:wrap;gap:.75rem}}.table[data-v-f33d18a4]{width:100%;border-collapse:collapse;font-size:.875rem}.table th[data-v-f33d18a4]{text-align:left;padding:.75rem 1rem;background:#f8fafc;color:#64748b;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e2e8f0}.table td[data-v-f33d18a4]{padding:.75rem 1rem;border-bottom:1px solid #f1f5f9;color:#334155}.table tr:last-child td[data-v-f33d18a4]{border-bottom:none}.table tr.disabled td[data-v-f33d18a4]{opacity:.45}.table tbody tr:hover td[data-v-f33d18a4]{background:#f8fafc}.name[data-v-f33d18a4]{font-weight:600;color:#1e293b}.client-link[data-v-f33d18a4]{color:#0284c7;text-decoration:none;font-weight:600}.client-link[data-v-f33d18a4]:hover{text-decoration:underline}.apikey[data-v-f33d18a4]{display:flex;align-items:center;gap:.4rem}.apikey code[data-v-f33d18a4]{font-family:monospace;font-size:.72rem;background:#f1f5f9;padding:.2rem .45rem;border-radius:4px;color:#475569}.date[data-v-f33d18a4]{color:#94a3b8;white-space:nowrap}.badge[data-v-f33d18a4]{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.72rem;font-weight:600}.badge-ok[data-v-f33d18a4]{background:#dcfce7;color:#16a34a}.badge-off[data-v-f33d18a4]{background:#fee2e2;color:#dc2626}.badge-warn[data-v-f33d18a4]{background:#fef3c7;color:#d97706;cursor:default}.actions[data-v-f33d18a4]{display:flex;gap:.35rem;flex-wrap:wrap}.btn-primary[data-v-f33d18a4]{background:#0284c7;color:#fff;border:none;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;cursor:pointer}.btn-primary[data-v-f33d18a4]:hover{background:#0369a1}.btn-sm[data-v-f33d18a4]{background:#fff;color:#475569;border:1px solid #e2e8f0;border-radius:6px;padding:.25rem .6rem;font-size:.75rem;cursor:pointer;white-space:nowrap}.btn-sm[data-v-f33d18a4]:hover{border-color:#94a3b8;color:#1e293b}.btn-warn[data-v-f33d18a4]{border-color:#fde68a;color:#d97706}.btn-warn[data-v-f33d18a4]:hover{background:#fffbeb}.btn-ok[data-v-f33d18a4]{border-color:#bbf7d0;color:#16a34a}.btn-ok[data-v-f33d18a4]:hover{background:#f0fdf4}.btn-danger[data-v-f33d18a4]{border-color:#fecaca;color:#dc2626}.btn-danger[data-v-f33d18a4]:hover{background:#fef2f2}.btn-danger-fill[data-v-f33d18a4]{background:#dc2626;border-color:#dc2626;color:#fff}.btn-danger-fill[data-v-f33d18a4]:hover{background:#b91c1c}.btn-icon[data-v-f33d18a4]{background:transparent;border:none;color:#94a3b8;cursor:pointer;font-size:1rem;padding:0}.btn-icon[data-v-f33d18a4]:hover{color:#0284c7}.overlay[data-v-f33d18a4]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;display:flex;align-items:center;justify-content:center;z-index:100}.modal[data-v-f33d18a4]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:2rem;width:100%;max-width:560px;box-shadow:0 8px 32px #0000001f}.modal-sm[data-v-f33d18a4]{max-width:380px}.modal h3[data-v-f33d18a4]{font-size:1rem;font-weight:700;color:#1e293b;margin-bottom:1.25rem}.form-grid[data-v-f33d18a4]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field[data-v-f33d18a4]{display:flex;flex-direction:column}.field.col-2[data-v-f33d18a4]{grid-column:span 2}.field label[data-v-f33d18a4]{font-size:.75rem;color:#64748b;font-weight:500;margin-bottom:.35rem}.field input[data-v-f33d18a4],.field textarea[data-v-f33d18a4]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#1e293b;padding:.55rem .75rem;font-size:.875rem;resize:vertical;outline:none;font-family:inherit}.field input[data-v-f33d18a4]:focus,.field textarea[data-v-f33d18a4]:focus{border-color:#0284c7;background:#fff;box-shadow:0 0 0 3px #0284c71a}.required[data-v-f33d18a4]{color:#dc2626}.modal-actions[data-v-f33d18a4]{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}.warn-text[data-v-f33d18a4]{color:#64748b;font-size:.875rem;margin-bottom:1rem;line-height:1.5}.warn-text strong[data-v-f33d18a4]{color:#1e293b}.error[data-v-f33d18a4]{color:#dc2626;font-size:.8rem;margin-top:.75rem}.filter-bar[data-v-f33d18a4]{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.search-input[data-v-f33d18a4]{padding:.35rem .75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.82rem;color:#334155;outline:none;width:260px}.search-input[data-v-f33d18a4]:focus{border-color:#93c5fd;box-shadow:0 0 0 2px #3b82f61f}.filter-pills[data-v-f33d18a4]{display:flex;gap:.35rem;flex-wrap:wrap}.pill[data-v-f33d18a4]{background:#fff;border:1px solid #e2e8f0;color:#64748b;padding:.28rem .7rem;border-radius:999px;font-size:.78rem;cursor:pointer;white-space:nowrap}.pill[data-v-f33d18a4]:hover{border-color:#94a3b8;color:#1e293b}.pill.active[data-v-f33d18a4]{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8;font-weight:600}.result-count[data-v-f33d18a4]{font-size:.78rem;color:#94a3b8;margin-left:auto;white-space:nowrap}.pagination[data-v-f33d18a4]{display:flex;align-items:center;gap:.35rem;justify-content:center;margin-top:1rem}.page-btn[data-v-f33d18a4]{background:#fff;border:1px solid #e2e8f0;color:#64748b;border-radius:6px;padding:.3rem .65rem;font-size:.8rem;cursor:pointer}.page-btn[data-v-f33d18a4]:hover:not(:disabled){border-color:#94a3b8}.page-btn[data-v-f33d18a4]:disabled{opacity:.4;cursor:not-allowed}.page-num[data-v-f33d18a4]{min-width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #e2e8f0;border-radius:6px;background:#fff;font-size:.8rem;color:#475569;cursor:pointer}.page-num[data-v-f33d18a4]:hover:not(:disabled){border-color:#94a3b8;background:#f8fafc}.page-num-active[data-v-f33d18a4]{background:#0284c7;border-color:#0284c7;color:#fff;font-weight:600}.page-ellipsis[data-v-f33d18a4]{cursor:default;border-color:transparent;background:transparent}.modal-endpoints[data-v-f33d18a4]{max-width:520px}.alert-warn[data-v-f33d18a4]{background:#fff7ed;border:1px solid #fed7aa;color:#c2410c;padding:.65rem 1rem;border-radius:6px;font-size:.85rem;margin-bottom:1rem}.alert-ok[data-v-f33d18a4]{background:#f0fdf4;border:1px solid #bbf7d0;color:#15803d;padding:.65rem 1rem;border-radius:6px;font-size:.85rem}.endpoint-url[data-v-f33d18a4]{font-family:monospace;font-size:.75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;padding:.4rem .65rem;margin-bottom:1.1rem;word-break:break-all;color:#334155}.check-block[data-v-f33d18a4]{border:1px solid #e2e8f0;border-radius:8px;padding:.85rem 1rem;margin-bottom:.75rem}.check-row[data-v-f33d18a4]{display:flex;align-items:flex-start;gap:.75rem}.check-row strong[data-v-f33d18a4]{font-size:.875rem;color:#1e293b;display:block;margin-bottom:.2rem}.check-detail[data-v-f33d18a4]{font-size:.8rem;color:#64748b;margin:0;line-height:1.45}.check-ok[data-v-f33d18a4]{color:#16a34a;font-weight:700;font-size:1.1rem;flex-shrink:0;margin-top:1px}.check-fail[data-v-f33d18a4]{color:#dc2626;font-weight:700;font-size:1.1rem;flex-shrink:0;margin-top:1px}.fix-msg[data-v-f33d18a4]{margin-top:.75rem}.btn-fix[data-v-f33d18a4]{margin-top:.75rem;background:#fff;border:1px solid #93c5fd;color:#1d4ed8;border-radius:6px;padding:.35rem .85rem;font-size:.8rem;font-weight:600;cursor:pointer}.btn-fix[data-v-f33d18a4]:hover:not(:disabled){background:#eff6ff}.btn-fix[data-v-f33d18a4]:disabled{opacity:.6;cursor:not-allowed}.page-header[data-v-9f40ce3c]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.breadcrumb[data-v-9f40ce3c]{display:flex;flex-direction:column;gap:.25rem}.back[data-v-9f40ce3c]{font-size:.8rem;color:#64748b;text-decoration:none}.back[data-v-9f40ce3c]:hover{color:#0284c7}h2[data-v-9f40ce3c]{font-size:1.25rem;font-weight:700}.code-badge[data-v-9f40ce3c]{font-size:.8rem;color:#64748b;background:#f1f5f9;padding:.2rem .6rem;border-radius:4px;border:1px solid #e2e8f0;width:fit-content}.header-actions[data-v-9f40ce3c]{display:flex;gap:.75rem;align-items:center}.alert-info[data-v-9f40ce3c]{background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;margin-bottom:1rem}.tabs[data-v-9f40ce3c]{display:flex;border-bottom:2px solid #e2e8f0;margin-bottom:1.25rem}.tab[data-v-9f40ce3c]{background:none;border:none;padding:.6rem 1rem;font-size:.875rem;color:#64748b;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;display:flex;align-items:center;gap:.4rem}.tab.active[data-v-9f40ce3c]{color:#0284c7;border-bottom-color:#0284c7;font-weight:600}.tab-count[data-v-9f40ce3c]{background:#e2e8f0;color:#475569;font-size:.72rem;padding:.1rem .4rem;border-radius:999px}.filter-row[data-v-9f40ce3c]{display:flex;align-items:center;margin-bottom:1rem;gap:.5rem;flex-wrap:wrap}.filters[data-v-9f40ce3c]{display:flex;gap:.4rem}.ml-auto[data-v-9f40ce3c]{margin-left:auto}.search-input[data-v-9f40ce3c]{padding:.3rem .65rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.82rem;color:#334155;outline:none;width:200px}.search-input[data-v-9f40ce3c]:focus{border-color:#93c5fd;box-shadow:0 0 0 2px #3b82f61f}.filter-btn[data-v-9f40ce3c]{background:#fff;border:1px solid #e2e8f0;color:#64748b;padding:.3rem .75rem;border-radius:6px;font-size:.8rem;cursor:pointer;display:flex;align-items:center;gap:.35rem}.filter-btn.active[data-v-9f40ce3c]{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8;font-weight:600}.badge-red[data-v-9f40ce3c]{background:#ef4444;color:#fff;font-size:.7rem;font-weight:700;padding:.05rem .4rem;border-radius:999px}.empty[data-v-9f40ce3c]{color:#94a3b8;padding:3rem 0;text-align:center}.card[data-v-9f40ce3c]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px #0000000d}@media (max-width: 768px){.card[data-v-9f40ce3c]{overflow-x:auto}.page-header[data-v-9f40ce3c]{flex-wrap:wrap;gap:.75rem}}.table[data-v-9f40ce3c]{width:100%;border-collapse:collapse;font-size:.875rem}.table th[data-v-9f40ce3c]{text-align:left;padding:.75rem 1rem;background:#f8fafc;color:#64748b;font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e2e8f0}.table td[data-v-9f40ce3c]{padding:.75rem 1rem;border-bottom:1px solid #f1f5f9;vertical-align:middle}.table tr:last-child td[data-v-9f40ce3c]{border-bottom:none}.table tbody tr:hover td[data-v-9f40ce3c]{background:#f8fafc}.name[data-v-9f40ce3c]{font-weight:600;color:#1e293b}.muted[data-v-9f40ce3c]{color:#64748b}.actions[data-v-9f40ce3c]{display:flex;gap:.35rem;flex-wrap:wrap}.source-badge[data-v-9f40ce3c],.status-badge[data-v-9f40ce3c]{display:inline-block;padding:.18rem .55rem;border-radius:999px;font-size:.72rem;font-weight:600}.source-badge.mapon[data-v-9f40ce3c]{background:#eff6ff;color:#1d4ed8}.source-badge.external[data-v-9f40ce3c]{background:#f0fdf4;color:#16a34a}.source-badge.self[data-v-9f40ce3c]{background:#fef3c7;color:#d97706}.status-badge.active[data-v-9f40ce3c]{background:#dcfce7;color:#16a34a}.status-badge.free[data-v-9f40ce3c]{background:#f1f5f9;color:#64748b}.status-badge.pending[data-v-9f40ce3c]{background:#fef3c7;color:#d97706}.status-badge.disabled[data-v-9f40ce3c]{background:#f1f5f9;color:#94a3b8}.btn-primary[data-v-9f40ce3c]{background:#3b82f6;color:#fff;border:1px solid #3b82f6;border-radius:6px;padding:.35rem .9rem;font-size:.82rem;font-weight:500;cursor:pointer;white-space:nowrap}.btn-primary[data-v-9f40ce3c]:hover{background:#2563eb}.btn-secondary[data-v-9f40ce3c]{background:#fff;color:#475569;border:1px solid #e2e8f0;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center}.btn-secondary[data-v-9f40ce3c]:hover:not(:disabled){border-color:#94a3b8}.btn-secondary[data-v-9f40ce3c]:disabled{opacity:.6;cursor:not-allowed}.btn-sm[data-v-9f40ce3c]{background:#fff;color:#475569;border:1px solid #e2e8f0;border-radius:6px;padding:.25rem .6rem;font-size:.75rem;cursor:pointer;white-space:nowrap}.btn-ok[data-v-9f40ce3c]{border-color:#bbf7d0;color:#16a34a}.btn-ok[data-v-9f40ce3c]:hover{background:#f0fdf4}.btn-warn[data-v-9f40ce3c]{border-color:#fde68a;color:#d97706}.btn-warn[data-v-9f40ce3c]:hover{background:#fffbeb}.btn-danger[data-v-9f40ce3c]{border-color:#fca5a5;color:#dc2626}.btn-danger[data-v-9f40ce3c]:hover{background:#fee2e2}.notes-cell[data-v-9f40ce3c]{max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.8rem}.muted-text[data-v-9f40ce3c]{color:#64748b;font-size:.85rem;margin-bottom:1rem}.form-group textarea[data-v-9f40ce3c]{width:100%;padding:.5rem .75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.875rem;outline:none;resize:vertical;font-family:inherit}.form-group textarea[data-v-9f40ce3c]:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.modal-overlay[data-v-9f40ce3c]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.modal[data-v-9f40ce3c]{background:#fff;border-radius:12px;padding:2rem;width:100%;max-width:420px;box-shadow:0 8px 32px #0000002e}.modal h2[data-v-9f40ce3c]{font-size:1.1rem;font-weight:700;margin-bottom:1.25rem}.modal p[data-v-9f40ce3c]{color:#475569;font-size:.9rem;margin-bottom:.75rem}.form-group[data-v-9f40ce3c]{margin-bottom:1rem}.form-group label[data-v-9f40ce3c]{display:block;font-size:.82rem;font-weight:600;color:#475569;margin-bottom:.3rem}.form-group input[data-v-9f40ce3c]{width:100%;padding:.5rem .75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.875rem;outline:none}.form-group input[data-v-9f40ce3c]:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.form-error[data-v-9f40ce3c]{color:#dc2626;font-size:.82rem;margin:.5rem 0}.field-hint[data-v-9f40ce3c]{display:block;font-size:.76rem;color:#94a3b8;margin-top:.25rem}.modal-actions[data-v-9f40ce3c]{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.btn[data-v-9f40ce3c]{padding:.4rem .9rem;border-radius:6px;border:1px solid #cbd5e1;background:#fff;color:#334155;cursor:pointer;font-size:.82rem}.btn[data-v-9f40ce3c]:hover{background:#f1f5f9}.btn[data-v-9f40ce3c]:disabled{opacity:.6;cursor:not-allowed}.modal-endpoints[data-v-9f40ce3c]{max-width:520px}.alert-warn[data-v-9f40ce3c]{background:#fff7ed;border:1px solid #fed7aa;color:#c2410c;padding:.65rem 1rem;border-radius:6px;font-size:.85rem;margin-bottom:1rem}.alert-ok[data-v-9f40ce3c]{background:#f0fdf4;border:1px solid #bbf7d0;color:#15803d;padding:.65rem 1rem;border-radius:6px;font-size:.85rem}.endpoint-url[data-v-9f40ce3c]{font-family:monospace;font-size:.75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;padding:.4rem .65rem;margin-bottom:1.1rem;word-break:break-all;color:#334155}.check-block[data-v-9f40ce3c]{border:1px solid #e2e8f0;border-radius:8px;padding:.85rem 1rem;margin-bottom:.75rem}.check-row[data-v-9f40ce3c]{display:flex;align-items:flex-start;gap:.75rem}.check-row strong[data-v-9f40ce3c]{font-size:.875rem;color:#1e293b;display:block;margin-bottom:.2rem}.check-detail[data-v-9f40ce3c]{font-size:.8rem;color:#64748b;margin:0;line-height:1.45}.check-ok[data-v-9f40ce3c]{color:#16a34a;font-weight:700;font-size:1.1rem;flex-shrink:0;margin-top:1px}.check-fail[data-v-9f40ce3c]{color:#dc2626;font-weight:700;font-size:1.1rem;flex-shrink:0;margin-top:1px}.fix-msg[data-v-9f40ce3c]{margin-top:.75rem}.btn-fix[data-v-9f40ce3c]{margin-top:.75rem;background:#fff;border:1px solid #93c5fd;color:#1d4ed8;border-radius:6px;padding:.35rem .85rem;font-size:.8rem;font-weight:600;cursor:pointer}.btn-fix[data-v-9f40ce3c]:hover:not(:disabled){background:#eff6ff}.btn-fix[data-v-9f40ce3c]:disabled{opacity:.6;cursor:not-allowed}.registered-urls[data-v-9f40ce3c]{margin-top:.6rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:.6rem .75rem}.registered-urls-title[data-v-9f40ce3c]{font-size:.75rem;color:#64748b;margin-bottom:.4rem}.registered-url[data-v-9f40ce3c]{display:block;font-size:.75rem;color:#334155;word-break:break-all;line-height:1.6}.page-header[data-v-53b9affb]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}h2[data-v-53b9affb]{font-size:1.25rem;font-weight:700}.subtitle[data-v-53b9affb]{font-size:.8rem;color:#94a3b8;margin-top:.2rem}.empty[data-v-53b9affb]{color:#94a3b8;padding:3rem 0;text-align:center}.card[data-v-53b9affb]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;box-shadow:0 1px 3px #0000000d}@media (max-width: 768px){.card[data-v-53b9affb]{overflow-x:auto}}.table[data-v-53b9affb]{width:100%;border-collapse:collapse;font-size:.875rem}.table th[data-v-53b9affb]{text-align:left;padding:.75rem 1rem;background:#f8fafc;color:#64748b;font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e2e8f0}.table td[data-v-53b9affb]{padding:.75rem 1rem;border-bottom:1px solid #f1f5f9}.table tr:last-child td[data-v-53b9affb]{border-bottom:none}.table tbody tr:hover td[data-v-53b9affb]{background:#f8fafc}.name[data-v-53b9affb]{font-weight:600;color:#1e293b}.muted[data-v-53b9affb]{color:#64748b}.plate[data-v-53b9affb]{font-weight:700;font-family:monospace;background:#f1f5f9;padding:.2rem .5rem;border-radius:4px}.events-badge[data-v-53b9affb]{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.75rem;font-weight:700}.events-badge.ok[data-v-53b9affb]{background:#dcfce7;color:#16a34a}.events-badge.warn[data-v-53b9affb]{background:#fef3c7;color:#d97706}.events-badge.bad[data-v-53b9affb]{background:#fee2e2;color:#dc2626}.btn-primary[data-v-53b9affb]{background:#0284c7;color:#fff;border:none;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;cursor:pointer}.btn-primary[data-v-53b9affb]:hover{background:#0369a1}.btn-sm[data-v-53b9affb]{background:#fff;color:#475569;border:1px solid #e2e8f0;border-radius:6px;padding:.25rem .6rem;font-size:.75rem;cursor:pointer}.btn-danger[data-v-53b9affb]{border-color:#fecaca;color:#dc2626}.btn-danger[data-v-53b9affb]:hover{background:#fef2f2}.btn-danger-fill[data-v-53b9affb]{background:#dc2626;border-color:#dc2626;color:#fff}.btn-danger-fill[data-v-53b9affb]:hover{background:#b91c1c}.overlay[data-v-53b9affb]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;display:flex;align-items:center;justify-content:center;z-index:100}.modal[data-v-53b9affb]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:2rem;width:100%;box-shadow:0 8px 32px #0000001f}.modal-sm[data-v-53b9affb]{max-width:380px}.modal h3[data-v-53b9affb]{font-size:1rem;font-weight:700;margin-bottom:1rem}.warn-text[data-v-53b9affb]{color:#64748b;font-size:.875rem;margin-bottom:1rem;line-height:1.5}.warn-text strong[data-v-53b9affb]{color:#1e293b}.modal-actions[data-v-53b9affb]{display:flex;justify-content:flex-end;gap:.75rem}.page-header[data-v-44ecb68a]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}h2[data-v-44ecb68a]{font-size:1.25rem;font-weight:700}.subtitle[data-v-44ecb68a]{font-size:.8rem;color:#94a3b8;margin-top:.2rem}.empty[data-v-44ecb68a]{color:#94a3b8;padding:3rem 0;text-align:center}.list[data-v-44ecb68a]{display:flex;flex-direction:column;gap:1rem;max-width:700px}.cr-card[data-v-44ecb68a]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:1.25rem 1.5rem;box-shadow:0 1px 3px #0000000d;display:flex;align-items:center;gap:1.5rem}.cr-vehicle[data-v-44ecb68a]{flex-shrink:0}.plate[data-v-44ecb68a]{font-weight:700;font-family:monospace;font-size:1.1rem;background:#f1f5f9;padding:.35rem .75rem;border-radius:6px}.cr-main[data-v-44ecb68a]{display:flex;align-items:center;gap:1.5rem;flex:1}.cr-info[data-v-44ecb68a]{flex:1}.cr-row[data-v-44ecb68a]{display:flex;gap:.5rem;align-items:baseline;margin-bottom:.3rem}.cr-label[data-v-44ecb68a]{font-size:.75rem;color:#94a3b8;min-width:110px}.cr-value[data-v-44ecb68a]{font-size:.9rem;font-weight:500}.cr-value.highlight[data-v-44ecb68a]{color:#0284c7}.cr-time[data-v-44ecb68a]{font-size:.75rem;color:#94a3b8;margin-top:.4rem}.cr-actions[data-v-44ecb68a]{display:flex;gap:.5rem;flex-shrink:0}.btn-primary[data-v-44ecb68a]{background:#0284c7;color:#fff;border:none;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;cursor:pointer}.btn-ok[data-v-44ecb68a]{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0;border-radius:8px;padding:.5rem 1rem;font-weight:600;cursor:pointer;font-size:.875rem;white-space:nowrap}.btn-ok[data-v-44ecb68a]:hover{background:#dcfce7}.btn-reject[data-v-44ecb68a]{background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:8px;padding:.5rem 1rem;font-weight:600;cursor:pointer;font-size:.875rem;white-space:nowrap}.btn-reject[data-v-44ecb68a]:hover{background:#fee2e2}.page-header[data-v-75bba1dd]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.page-title[data-v-75bba1dd]{font-size:1.4rem;font-weight:700;color:#1e293b}.card[data-v-75bba1dd]{background:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014;overflow:hidden}.table[data-v-75bba1dd]{width:100%;border-collapse:collapse;font-size:.875rem}.table th[data-v-75bba1dd]{background:#f8fafc;color:#64748b;font-weight:600;padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e2e8f0}.table td[data-v-75bba1dd]{padding:.75rem 1rem;border-bottom:1px solid #f1f5f9;vertical-align:middle}.table tr:last-child td[data-v-75bba1dd]{border-bottom:none}.badge[data-v-75bba1dd]{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600}.badge-ok[data-v-75bba1dd]{background:#dcfce7;color:#16a34a}.badge-warn[data-v-75bba1dd]{background:#fef9c3;color:#92400e}.role-badge[data-v-75bba1dd]{display:inline-block;padding:.2rem .6rem;border-radius:5px;font-size:.72rem;font-weight:700}.role-badge.superadmin[data-v-75bba1dd]{background:#ede9fe;color:#7c3aed}.role-badge.admin[data-v-75bba1dd]{background:#e0f2fe;color:#0369a1}.actions[data-v-75bba1dd]{display:flex;gap:.4rem;flex-wrap:wrap}.btn[data-v-75bba1dd]{padding:.4rem .9rem;border-radius:6px;border:1px solid #cbd5e1;background:#fff;color:#334155;cursor:pointer;font-size:.82rem;font-weight:500;transition:all .15s}.btn[data-v-75bba1dd]:hover{background:#f1f5f9}.btn[data-v-75bba1dd]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-75bba1dd]{background:#3b82f6;color:#fff;border-color:#3b82f6}.btn-primary[data-v-75bba1dd]:hover{background:#2563eb}.btn-sm[data-v-75bba1dd]{padding:.25rem .6rem;font-size:.78rem}.btn-key[data-v-75bba1dd]{border-color:#c4b5fd;color:#7c3aed}.btn-key[data-v-75bba1dd]:hover{background:#f5f3ff}.btn-warn[data-v-75bba1dd]{background:#fef3c7;color:#92400e;border-color:#fcd34d}.btn-warn[data-v-75bba1dd]:hover{background:#fde68a}.btn-ok[data-v-75bba1dd]{background:#dcfce7;color:#16a34a;border-color:#86efac}.btn-ok[data-v-75bba1dd]:hover{background:#bbf7d0}.btn-danger[data-v-75bba1dd]{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.btn-danger[data-v-75bba1dd]:hover{background:#fecaca}.empty-state[data-v-75bba1dd]{text-align:center;color:#94a3b8;padding:3rem;font-size:.9rem}.error[data-v-75bba1dd]{color:#dc2626}.table-wrap[data-v-75bba1dd]{display:block}.mobile-cards[data-v-75bba1dd]{display:none}@media (max-width: 768px){.page-header[data-v-75bba1dd]{flex-wrap:wrap;gap:.75rem}.table-wrap[data-v-75bba1dd]{display:none}.mobile-cards[data-v-75bba1dd]{display:flex;flex-direction:column;gap:.75rem}.acard[data-v-75bba1dd]{background:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014;padding:1rem}.acard-top[data-v-75bba1dd]{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.875rem}.acard-avatar[data-v-75bba1dd]{width:38px;height:38px;border-radius:9px;flex-shrink:0;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;font-weight:700;font-size:.95rem;display:flex;align-items:center;justify-content:center}.acard-info[data-v-75bba1dd]{flex:1;min-width:0}.acard-name[data-v-75bba1dd]{font-weight:600;font-size:.875rem;color:#1e293b}.acard-email[data-v-75bba1dd]{font-size:.8rem;color:#64748b;word-break:break-all;margin-top:.1rem}.acard-badges[data-v-75bba1dd]{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.45rem}.acard-actions[data-v-75bba1dd]{display:flex;gap:.4rem;flex-wrap:wrap}}.modal-overlay[data-v-75bba1dd]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.modal[data-v-75bba1dd]{background:#fff;border-radius:12px;padding:2rem;width:100%;max-width:420px;box-shadow:0 8px 32px #0000002e}.modal h2[data-v-75bba1dd]{font-size:1.1rem;font-weight:700;margin-bottom:1.25rem;color:#1e293b}.modal p[data-v-75bba1dd]{color:#475569;font-size:.9rem;margin-bottom:.75rem}.form-group[data-v-75bba1dd]{margin-bottom:1rem}.form-group label[data-v-75bba1dd]{display:block;font-size:.82rem;font-weight:600;color:#475569;margin-bottom:.3rem}.form-group input[data-v-75bba1dd],.form-group select[data-v-75bba1dd]{width:100%;padding:.5rem .75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.875rem;outline:none;background:#fff}.form-group input[data-v-75bba1dd]:focus,.form-group select[data-v-75bba1dd]:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.form-error[data-v-75bba1dd]{color:#dc2626;font-size:.82rem;margin:.5rem 0}.modal-actions[data-v-75bba1dd]{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.page-header[data-v-186e7abc]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.page-title[data-v-186e7abc]{font-size:1.4rem;font-weight:700;color:#1e293b}.filters-bar[data-v-186e7abc]{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.9rem 1rem;margin-bottom:1rem}.filter-group[data-v-186e7abc]{display:flex;flex-direction:column;gap:.3rem}.filter-search[data-v-186e7abc]{flex:1;min-width:180px}.filter-label[data-v-186e7abc]{font-size:.7rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em}.filter-select[data-v-186e7abc]{border:1px solid #e2e8f0;border-radius:7px;padding:.38rem .65rem;font-size:.82rem;color:#334155;background:#f8fafc;cursor:pointer;min-width:150px}.filter-select-sm[data-v-186e7abc]{min-width:80px}.filter-select[data-v-186e7abc]:focus{outline:2px solid #0284c7}.search-wrap[data-v-186e7abc]{position:relative;display:flex;align-items:center}.filter-input[data-v-186e7abc]{border:1px solid #e2e8f0;border-radius:7px;padding:.38rem 1.8rem .38rem .65rem;font-size:.82rem;color:#334155;background:#f8fafc;width:100%}.filter-input[data-v-186e7abc]:focus{outline:2px solid #0284c7}.clear-btn[data-v-186e7abc]{position:absolute;right:.4rem;background:none;border:none;color:#94a3b8;cursor:pointer;font-size:.75rem;padding:.2rem;line-height:1}.clear-btn[data-v-186e7abc]:hover{color:#475569}.result-count[data-v-186e7abc]{font-size:.8rem;color:#64748b;margin-bottom:.5rem;padding-left:.1rem;display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.filter-active-hint[data-v-186e7abc]{color:#0284c7;font-weight:600}.page-info[data-v-186e7abc]{color:#94a3b8}.pagination[data-v-186e7abc]{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem;flex-wrap:wrap}.page-btn[data-v-186e7abc]{padding:.35rem .8rem;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#475569;font-size:.8rem;cursor:pointer}.page-btn[data-v-186e7abc]:hover:not(:disabled){background:#f8fafc}.page-btn[data-v-186e7abc]:disabled{opacity:.4;cursor:default}.page-numbers[data-v-186e7abc]{display:flex;gap:.25rem}.page-num[data-v-186e7abc]{min-width:32px;height:32px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#475569;font-size:.8rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.page-num[data-v-186e7abc]:hover:not(:disabled):not(.page-num-active){background:#f8fafc}.page-num-active[data-v-186e7abc]{background:#0284c7;color:#fff;border-color:#0284c7;font-weight:600}.page-num[data-v-186e7abc]:disabled{cursor:default}.card[data-v-186e7abc]{background:#fff;border-radius:10px;box-shadow:0 1px 4px #00000014;overflow:hidden}@media (max-width: 768px){.card[data-v-186e7abc]{overflow-x:auto}}.table[data-v-186e7abc]{width:100%;border-collapse:collapse;font-size:.82rem}.table th[data-v-186e7abc]{background:#f8fafc;color:#64748b;font-weight:600;padding:.65rem 1rem;text-align:left;border-bottom:1px solid #e2e8f0;white-space:nowrap}.table td[data-v-186e7abc]{padding:.65rem 1rem;border-bottom:1px solid #f1f5f9;vertical-align:middle}.table tr:last-child td[data-v-186e7abc]{border-bottom:none}.nowrap[data-v-186e7abc]{white-space:nowrap;color:#64748b;font-size:.78rem}.email-cell[data-v-186e7abc]{color:#334155;font-size:.8rem}.anon[data-v-186e7abc]{color:#94a3b8;font-style:italic}.action-badge[data-v-186e7abc]{display:inline-block;padding:.15rem .55rem;border-radius:5px;font-size:.72rem;font-weight:600;font-family:monospace;white-space:nowrap}.badge-default[data-v-186e7abc]{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.badge-driver[data-v-186e7abc]{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.badge-admin[data-v-186e7abc]{background:#faf5ff;color:#7c3aed;border:1px solid #ddd6fe}.badge-vehicle[data-v-186e7abc]{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.badge-client[data-v-186e7abc]{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.badge-auth[data-v-186e7abc]{background:#f0f9ff;color:#0369a1;border:1px solid #bae6fd}.badge-danger[data-v-186e7abc]{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.badge-warning[data-v-186e7abc]{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.entity-cell[data-v-186e7abc]{display:flex;gap:.4rem;align-items:center}.entity-type[data-v-186e7abc]{color:#475569;font-weight:500}.entity-id[data-v-186e7abc]{color:#94a3b8;font-family:monospace;font-size:.75rem}.detail-cell[data-v-186e7abc]{color:#64748b;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:help}.empty-state[data-v-186e7abc]{text-align:center;color:#94a3b8;padding:3rem;font-size:.9rem}.error[data-v-186e7abc]{color:#dc2626}.btn[data-v-186e7abc]{padding:.4rem .9rem;border-radius:6px;border:1px solid #cbd5e1;background:#fff;color:#334155;cursor:pointer;font-size:.82rem;font-weight:500}.btn[data-v-186e7abc]:hover{background:#f1f5f9}.btn-ghost[data-v-186e7abc]{border-color:transparent;color:#0284c7;background:none}.btn-ghost[data-v-186e7abc]:hover{background:#eff6ff}.breadcrumb[data-v-d08f0e03]{margin-bottom:.25rem}.back-link[data-v-d08f0e03]{font-size:.8rem;color:#0284c7;text-decoration:none}.back-link[data-v-d08f0e03]:hover{text-decoration:underline}.error-text[data-v-d08f0e03]{color:#dc2626}.entries[data-v-d08f0e03]{display:flex;flex-direction:column;gap:.75rem}.entry-card[data-v-d08f0e03]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.entry-header[data-v-d08f0e03]{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.entry-meta[data-v-d08f0e03]{display:flex;flex-direction:column;gap:.1rem}.entry-ts[data-v-d08f0e03]{font-size:.8rem;color:#64748b;font-family:monospace}.entry-id[data-v-d08f0e03]{font-size:.7rem;color:#94a3b8;font-family:monospace}.entry-body[data-v-d08f0e03]{margin:0;padding:1rem;font-size:.78rem;font-family:Courier New,monospace;color:#1e293b;background:#fff;white-space:pre-wrap;word-break:break-all;overflow:hidden;max-height:10000px;transition:max-height .2s ease}.entry-body.collapsed[data-v-d08f0e03]{max-height:4.5rem;-webkit-mask-image:linear-gradient(to bottom,black 60%,transparent 100%);mask-image:linear-gradient(to bottom,black 60%,transparent 100%)}.btn-sm[data-v-d08f0e03]{font-size:.75rem;padding:.25rem .6rem;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#475569;cursor:pointer}.btn-sm[data-v-d08f0e03]:hover{background:#f1f5f9}.reports-page[data-v-e735f92c]{max-width:1100px}.page-header[data-v-e735f92c]{margin-bottom:1.5rem}.page-title[data-v-e735f92c]{font-size:1.25rem;font-weight:700;color:#0f172a}.page-sub[data-v-e735f92c]{font-size:.8rem;color:#94a3b8;margin-top:.2rem}.config-card[data-v-e735f92c]{background:#fff;border-radius:14px;padding:1.5rem;box-shadow:0 1px 2px #0000000d,0 0 0 1px #0000000a;margin-bottom:1.25rem}.config-grid[data-v-e735f92c]{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:1rem;align-items:end}.field-group[data-v-e735f92c]{display:flex;flex-direction:column;gap:.4rem}.field-label[data-v-e735f92c]{font-size:.75rem;font-weight:600;color:#64748b}.date-input[data-v-e735f92c]{height:40px;padding:0 .75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#1e293b;outline:none;background:#fff;transition:border-color .15s}.date-input[data-v-e735f92c]:focus{border-color:#0284c7;box-shadow:0 0 0 3px #0284c71f}.btn-generate[data-v-e735f92c]{height:40px;padding:0 1.25rem;background:#0284c7;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;white-space:nowrap;transition:background .15s,transform .1s}.btn-generate[data-v-e735f92c]:hover:not(:disabled){background:#0369a1}.btn-generate[data-v-e735f92c]:disabled{opacity:.55;cursor:not-allowed}.btn-generate svg[data-v-e735f92c]{width:15px;height:15px}.spinner[data-v-e735f92c]{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-e735f92c .7s linear infinite}@keyframes spin-e735f92c{to{transform:rotate(360deg)}}.driver-select[data-v-e735f92c]{position:relative;height:40px;padding:0 .75rem;border:1px solid #e2e8f0;border-radius:8px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;background:#fff;-webkit-user-select:none;user-select:none;transition:border-color .15s}.driver-select.open[data-v-e735f92c],.driver-select[data-v-e735f92c]:hover{border-color:#0284c7}.ds-placeholder[data-v-e735f92c]{font-size:.875rem;color:#94a3b8}.ds-value[data-v-e735f92c]{font-size:.875rem;color:#1e293b;display:flex;align-items:center;gap:.5rem}.ds-chip[data-v-e735f92c]{background:#0284c7;color:#fff;font-size:.7rem;font-weight:700;padding:.1rem .45rem;border-radius:999px}.ds-arrow[data-v-e735f92c]{width:16px;height:16px;color:#94a3b8;flex-shrink:0}.ds-dropdown[data-v-e735f92c]{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:200;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 30px #0000001f;overflow:hidden}.ds-search-wrap[data-v-e735f92c]{display:flex;align-items:center;gap:.5rem;padding:.6rem .75rem;border-bottom:1px solid #f1f5f9}.ds-search-wrap svg[data-v-e735f92c]{width:15px;height:15px;color:#94a3b8;flex-shrink:0}.ds-search[data-v-e735f92c]{flex:1;border:none;outline:none;font-size:.875rem;color:#1e293b;background:transparent}.ds-list[data-v-e735f92c]{max-height:240px;overflow-y:auto}.ds-item[data-v-e735f92c]{display:flex;align-items:center;gap:.6rem;padding:.5rem .9rem;cursor:pointer;font-size:.82rem;color:#334155;transition:background .1s}.ds-item[data-v-e735f92c]:hover{background:#f8fafc}.ds-item input[type=checkbox][data-v-e735f92c]{accent-color:#0284c7;width:14px;height:14px;flex-shrink:0}.ds-all[data-v-e735f92c]{font-weight:600}.ds-all-label[data-v-e735f92c]{flex:1}.ds-count[data-v-e735f92c]{font-size:.72rem;color:#94a3b8}.ds-name[data-v-e735f92c]{flex:1}.ds-status-warn[data-v-e735f92c]{font-size:.65rem;color:#f59e0b;background:#fef3c7;padding:.05rem .35rem;border-radius:3px}.ds-group-header[data-v-e735f92c]{padding:.3rem .9rem .1rem;font-size:.65rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em}.ds-divider[data-v-e735f92c]{height:1px;background:#f1f5f9;margin:.25rem 0}.ds-empty[data-v-e735f92c]{text-align:center;color:#94a3b8;font-size:.82rem;padding:1rem}.summary-row[data-v-e735f92c]{display:flex;gap:.875rem;margin-bottom:1.25rem;flex-wrap:wrap}.sum-card[data-v-e735f92c]{background:#fff;border-radius:12px;padding:1rem 1.25rem;flex:1;min-width:120px;box-shadow:0 1px 2px #0000000d,0 0 0 1px #0000000a}.sum-value[data-v-e735f92c]{font-size:1.6rem;font-weight:800;color:#0f172a;line-height:1}.sum-value.red[data-v-e735f92c]{color:#dc2626}.sum-label[data-v-e735f92c]{font-size:.7rem;color:#94a3b8;margin-top:.3rem}.driver-section[data-v-e735f92c]{margin-bottom:1.5rem}.driver-header[data-v-e735f92c]{display:flex;align-items:center;gap:.875rem;padding:.875rem 1rem;background:#fff;border-radius:12px 12px 0 0;border-bottom:1px solid #f1f5f9;box-shadow:0 1px 2px #0000000d,0 0 0 1px #0000000a}.driver-header+.card[data-v-e735f92c],.driver-header+.no-sessions[data-v-e735f92c]{border-radius:0 0 12px 12px;border-top:none}.driver-avatar[data-v-e735f92c]{width:38px;height:38px;border-radius:10px;flex-shrink:0;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;font-weight:700;font-size:1rem;display:flex;align-items:center;justify-content:center}.driver-meta[data-v-e735f92c]{flex:1;min-width:0}.driver-name[data-v-e735f92c]{font-weight:700;font-size:.9rem;color:#1e293b}.driver-email[data-v-e735f92c]{font-size:.78rem;color:#64748b}.driver-stats-pills[data-v-e735f92c]{display:flex;gap:.4rem;flex-wrap:wrap}.pill[data-v-e735f92c]{display:inline-block;padding:.2rem .65rem;border-radius:999px;font-size:.7rem;font-weight:600}.pill-blue[data-v-e735f92c]{background:#dbeafe;color:#1d4ed8}.pill-slate[data-v-e735f92c]{background:#f1f5f9;color:#475569}.pill-green[data-v-e735f92c]{background:#dcfce7;color:#16a34a}.pill-amber[data-v-e735f92c]{background:#fef3c7;color:#92400e}.pill-red[data-v-e735f92c]{background:#fee2e2;color:#dc2626}.no-sessions[data-v-e735f92c]{padding:1.5rem;color:#94a3b8;font-size:.875rem;text-align:center;background:#fff;box-shadow:0 1px 2px #0000000d,0 0 0 1px #0000000a}.card[data-v-e735f92c]{background:#fff;box-shadow:0 1px 2px #0000000d,0 0 0 1px #0000000a}.table-wrap[data-v-e735f92c]{overflow-x:auto;border-radius:0 0 12px 12px}.table[data-v-e735f92c]{width:100%;border-collapse:collapse;font-size:.8rem;white-space:nowrap}.table th[data-v-e735f92c]{background:#f8fafc;color:#64748b;font-weight:600;font-size:.72rem;padding:.6rem .75rem;text-align:left;border-bottom:1px solid #e2e8f0}.table td[data-v-e735f92c]{padding:.55rem .75rem;border-bottom:1px solid #f8fafc;vertical-align:middle}.table tr:last-child td[data-v-e735f92c]{border-bottom:none}.table tbody tr:hover td[data-v-e735f92c]{background:#f8fafc}.td-date[data-v-e735f92c]{font-weight:500;color:#334155}.td-mono[data-v-e735f92c]{font-variant-numeric:tabular-nums}.td-num[data-v-e735f92c]{text-align:center;color:#64748b}.plate-badge[data-v-e735f92c]{display:inline-block;padding:.1rem .45rem;border:1.5px solid #bfdbfe;border-radius:4px;font-size:.72rem;font-weight:700;color:#1d4ed8;margin-right:.4rem}.vehicle-model[data-v-e735f92c]{font-size:.78rem;color:#64748b}.score-badge[data-v-e735f92c]{display:inline-block;width:34px;text-align:center;padding:.15rem 0;border-radius:6px;font-weight:700;font-size:.82rem}.score-green[data-v-e735f92c]{background:#dcfce7;color:#16a34a}.score-amber[data-v-e735f92c]{background:#fef3c7;color:#92400e}.score-red[data-v-e735f92c]{background:#fee2e2;color:#dc2626}.ev-high[data-v-e735f92c]{color:#dc2626;font-weight:700;text-align:center}.ev-med[data-v-e735f92c]{color:#d97706;font-weight:600;text-align:center}.ev-low[data-v-e735f92c]{color:#64748b;text-align:center}.ev-zero[data-v-e735f92c]{color:#e2e8f0;text-align:center}.export-bar[data-v-e735f92c]{display:flex;align-items:center;gap:.75rem;margin-top:1.5rem;padding:1rem 1.25rem;background:#fff;border-radius:12px;box-shadow:0 1px 2px #0000000d,0 0 0 1px #0000000a}.export-label[data-v-e735f92c]{font-size:.8rem;font-weight:600;color:#64748b;margin-right:.25rem}.btn-export[data-v-e735f92c]{display:flex;align-items:center;gap:.45rem;padding:.45rem 1rem;border-radius:7px;border:none;font-size:.82rem;font-weight:600;cursor:pointer;transition:filter .15s,transform .1s}.btn-export svg[data-v-e735f92c]{width:14px;height:14px}.btn-export[data-v-e735f92c]:hover{filter:brightness(.92);transform:translateY(-1px)}.btn-export[data-v-e735f92c]:active{transform:translateY(0)}.btn-csv[data-v-e735f92c]{background:#f0fdf4;color:#16a34a}.btn-xlsx[data-v-e735f92c]{background:#eff6ff;color:#1d4ed8}.btn-pdf[data-v-e735f92c]{background:#fef2f2;color:#dc2626}.empty-report[data-v-e735f92c]{text-align:center;padding:4rem 2rem;color:#94a3b8}.empty-report svg[data-v-e735f92c]{width:56px;height:56px;margin-bottom:1rem;opacity:.4}.empty-report p[data-v-e735f92c]{font-size:.9rem;line-height:1.6}@media (max-width: 900px){.config-grid[data-v-e735f92c]{grid-template-columns:1fr 1fr}.field-action[data-v-e735f92c]{grid-column:span 2}}@media (max-width: 600px){.config-grid[data-v-e735f92c]{grid-template-columns:1fr}.field-action[data-v-e735f92c]{grid-column:span 1}.driver-stats-pills[data-v-e735f92c]{display:none}}.setup-wrap[data-v-5841e015]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f1f5f9;padding:2rem 1rem}.setup-card[data-v-5841e015]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:2.5rem;width:100%;max-width:440px;box-shadow:0 4px 24px #00000014;text-align:center}.setup-icon[data-v-5841e015]{width:64px;height:64px;background:#0284c714;border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;color:#0284c7}h1[data-v-5841e015]{font-size:1.2rem;font-weight:700;color:#0f172a;margin-bottom:.4rem}.subtitle[data-v-5841e015]{color:#64748b;font-size:.85rem;margin-bottom:2rem}.steps[data-v-5841e015]{text-align:left}.step-num[data-v-5841e015]{display:inline-flex;width:24px;height:24px;background:#0284c7;color:#fff;border-radius:50%;font-size:.75rem;font-weight:700;align-items:center;justify-content:center;margin-bottom:.5rem}.step-desc[data-v-5841e015]{font-size:.875rem;color:#475569;margin-bottom:1.25rem;line-height:1.5}.qr-placeholder[data-v-5841e015]{height:200px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.spinner[data-v-5841e015]{width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#0284c7;border-radius:50%;animation:spin-5841e015 .8s linear infinite}@keyframes spin-5841e015{to{transform:rotate(360deg)}}.qr-wrap[data-v-5841e015]{display:flex;flex-direction:column;align-items:center;margin-bottom:1.25rem;gap:.75rem}.qr-img[data-v-5841e015]{width:200px;height:200px;border:1px solid #e2e8f0;border-radius:8px}.secret-details summary[data-v-5841e015]{font-size:.75rem;color:#94a3b8;cursor:pointer;text-align:center}.secret-code[data-v-5841e015]{display:block;margin-top:.5rem;padding:.5rem .75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:.8rem;letter-spacing:.1em;color:#1e293b;word-break:break-all}.error-box[data-v-5841e015]{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;padding:.6rem .875rem;border-radius:8px;font-size:.8rem;margin-bottom:1rem}.field[data-v-5841e015]{margin-bottom:1rem}.field input[data-v-5841e015]{width:100%;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#1e293b;padding:.6rem .875rem;font-size:.9rem;outline:none}.field input[data-v-5841e015]:focus{border-color:#0284c7;background:#fff;box-shadow:0 0 0 3px #0284c71a}.totp-input[data-v-5841e015]{text-align:center;font-size:1.5rem;letter-spacing:.5em;font-weight:700}.error[data-v-5841e015]{color:#dc2626;font-size:.8rem;margin-bottom:.75rem}button[data-v-5841e015]{width:100%;background:#0284c7;color:#fff;border:none;border-radius:8px;padding:.7rem;font-size:.9rem;font-weight:600;cursor:pointer}button[data-v-5841e015]:hover:not(:disabled){background:#0369a1}button[data-v-5841e015]:disabled{opacity:.5;cursor:not-allowed}.success[data-v-5841e015]{padding:1rem 0}.success-icon[data-v-5841e015]{width:68px;height:68px;background:#22c55e1a;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:#16a34a}.success-title[data-v-5841e015]{font-size:1rem;font-weight:700;color:#0f172a;margin-bottom:.4rem}.success-sub[data-v-5841e015]{font-size:.85rem;color:#64748b}
