:root{color:#172033;font-synthesis:none;background:#f5f6f8;font-family:Montserrat,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}html,body,#app{min-height:100%}html.fleet-fullscreen,html.fleet-fullscreen body{overflow:hidden}body{min-width:320px;margin:0;overflow-x:hidden}button,a,input,select,textarea{font:inherit}.app-shell{isolation:isolate;background:#fafafa;min-height:100vh;position:relative}.app-shell:before{content:"";z-index:0;pointer-events:none;background-color:#fafafa;background-image:radial-gradient(circle at 10% 20%,#86efac4d 0 3rem,#0000 7rem),radial-gradient(circle at 90% 90%,#86efac40 0 5rem,#0000 11rem),url("data:image/svg+xml,%3Csvg viewBox='0 0 1440 320' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='none' stroke='%23fecdd3' stroke-width='40' stroke-linecap='round' d='M0 160C320 250 420 50 720 160s400-110 720 0'/%3E%3C/svg%3E");background-position:50%,50%,50% 38%;background-repeat:no-repeat;background-size:auto,auto,110% 250px;position:fixed;inset:0}.app-header{z-index:20;color:#fff;background:#d60b26;justify-content:space-between;align-items:center;gap:1.5rem;min-height:92px;padding:1.4rem 3.5rem;display:flex;position:relative;box-shadow:0 4px 15px #d60b2633}.brand{align-items:center;gap:1rem;min-width:0;display:flex}.brand-icon{background:#ffffff1a;border:2px solid #fffc;border-radius:.75rem;flex:none;place-items:center;width:3rem;height:3rem;display:grid;box-shadow:inset 0 1px 4px #0f172a1f}.brand-icon img{width:2rem;height:2rem}.brand strong,.brand small{display:block}.brand strong{letter-spacing:-.01em;font-size:1.45rem;line-height:1}.brand small{color:#fff;opacity:.95;margin-top:.35rem;font-size:.85rem;font-weight:600}.user-menu{position:relative}.user-trigger{color:#fff;cursor:pointer;text-align:left;background:#ffffff1a;border:1px solid #fff3;border-radius:999px;grid-template-columns:2rem minmax(0,1fr) .8rem;align-items:center;gap:.75rem;min-width:15rem;max-width:22rem;padding:.38rem .75rem .38rem .45rem;transition:background .2s,transform .2s;display:grid;box-shadow:0 1px 8px #0f172a14}.user-trigger:hover,.user-trigger.open{background:#ffffff2e;transform:translateY(-1px)}.avatar{color:#d60b26;background:#fff;border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;font-size:.76rem;font-weight:800;display:grid}.user-trigger-copy{min-width:0}.user-trigger-copy strong,.user-trigger-copy small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.user-trigger-copy strong{font-size:.8rem;line-height:1}.user-trigger-copy small{color:#fecdd3;letter-spacing:.06em;text-transform:uppercase;margin-top:.3rem;font-size:.65rem;font-weight:700}.user-trigger>svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:.85rem;transition:transform .2s}.user-trigger.open>svg{transform:rotate(180deg)}.user-menu-panel{z-index:50;color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:1rem;width:min(25rem,100vw - 1rem);padding:.75rem;position:absolute;top:calc(100% + .65rem);right:0;box-shadow:0 20px 40px #0f172a33}.user-menu-identity{border-bottom:1px solid #e2e8f0;align-items:center;gap:.65rem;padding:.2rem .25rem .7rem;display:flex}.user-menu-identity>span:last-child{min-width:0}.user-menu-identity strong,.user-menu-identity small{overflow-wrap:anywhere;display:block}.user-menu-identity strong{color:#1e293b;font-size:.8rem}.user-menu-identity small{color:#64748b;margin-top:.15rem;font-size:.65rem}.user-details{gap:.25rem;margin:.65rem 0;padding:0;list-style:none;display:grid}.user-details li{background:#f8fafc;border-radius:.5rem;grid-template-columns:1.4rem minmax(0,1fr);align-items:center;gap:.35rem;min-width:0;padding:.5rem .55rem;display:grid}.user-details li:hover{background:#f0fdf4}.user-details svg,.user-menu-actions svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:1rem}.user-details svg{color:#059669}.user-details small,.user-details strong{display:block}.user-details small{color:#64748b;letter-spacing:.04em;text-transform:uppercase;font-size:.58rem;font-weight:800}.user-details strong{color:#334155;overflow-wrap:anywhere;margin-top:.1rem;font-size:.7rem}.user-menu-actions{border-top:1px solid #e2e8f0;justify-content:flex-end;gap:.4rem;padding-top:.6rem;display:flex}.user-menu-actions a,.user-menu-actions button{cursor:pointer;border-radius:.55rem;place-items:center;width:2.35rem;height:2.35rem;padding:0;display:grid}.user-menu-actions a{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.user-menu-actions button{color:#b91c1c;background:#fff1f2;border:1px solid #fecaca}.user-menu-actions a:hover{background:#dcfce7}.user-menu-actions button:hover{background:#ffe4e6}.workspace{z-index:1;flex-direction:column;gap:1rem;width:min(100%,1900px);margin:0 auto;padding:1rem 1.5rem;display:flex;position:relative}.back-button{color:#64748b;background:0 0;border-radius:8px;align-items:center;gap:7px;width:fit-content;min-height:40px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.back-button:hover{color:#1e293b}.back-button:focus-visible{outline-offset:2px;outline:3px solid #fb7185}.back-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.workspace-placeholder{text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:1rem;place-content:center;min-height:18rem;padding:2rem;display:grid}.workspace-placeholder h1{font-size:clamp(1.5rem,3vw,2.25rem)}.user-access-page{background:linear-gradient(145deg,#f8fafc,#fff 70%);border:1px solid #e2e8f0;border-radius:.9rem;width:100%;padding:.9rem;overflow:hidden;box-shadow:0 3px 12px #0f172a0d}.user-access-title{align-items:center;gap:.7rem;margin-bottom:.8rem;display:flex}.user-access-title>span:nth-child(2){flex:1;min-width:0}.user-access-title h1{color:#1e293b;margin:0;font-size:.95rem}.user-access-title p{color:#64748b;margin:.18rem 0 0;font-size:.68rem}.access-title-icon{color:#be123c;background:#ffe4e6;border-radius:.65rem;flex:none;place-items:center;width:2.35rem;height:2.35rem;display:grid}.access-title-icon svg,.access-refresh svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:1rem}.access-refresh{color:#be123c;cursor:pointer;background:#fff;border:1px solid #fecdd3;border-radius:.55rem;place-items:center;width:2.2rem;height:2.2rem;display:grid}.access-refresh .spinning{animation:.8s linear infinite spin}.access-section+.access-section{margin-top:1rem}.access-section>h2{color:#475569;letter-spacing:.06em;text-transform:uppercase;margin:0 0 .55rem;font-size:.7rem}.user-access-columns{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:.7rem;display:grid}.access-column{background:#ffffffe0;border:1px solid #e2e8f0;border-radius:.75rem;align-content:start;gap:.5rem;min-width:0;padding:.65rem;display:grid;box-shadow:0 2px 6px #0f172a0a}.access-column-heading{align-items:center;gap:.5rem;min-width:0;display:flex}.access-column-heading>span{color:#be123c;background:#ffe4e6;border-radius:.45rem;flex:none;place-items:center;width:1.75rem;height:1.75rem;font-size:.68rem;font-weight:900;display:grid}.access-column-heading div{min-width:0}.access-column-heading h3,.access-column-heading small{overflow-wrap:anywhere;margin:0;display:block}.access-column-heading h3{color:#1e293b;font-size:.72rem}.access-column-heading small{color:#64748b;margin-top:.12rem;font-size:.56rem}.branch-column{background:#f8fafc;gap:.4rem}.branch-heading{padding-bottom:.15rem}.structure-access-card{background:#fff;border:1px solid #e2e8f0;border-radius:.55rem;gap:.4rem;padding:.5rem;display:grid}.structure-access-card>header strong,.structure-access-card>header small{overflow-wrap:anywhere;display:block}.structure-access-card>header strong{color:#334155;font-size:.65rem}.structure-access-card>header small{color:#64748b;margin-top:.08rem;font-size:.54rem}.unit-access-card{border-left:3px solid #fecdd3;margin-left:.55rem}.access-members{gap:.25rem;display:grid}.access-member{background:#fff;border:1px solid #e2e8f0;border-radius:.45rem;grid-template-columns:1.7rem minmax(0,1fr) 1.65rem;align-items:start;gap:.4rem;min-width:0;padding:.4rem;display:grid}.member-avatar{color:#be123c;text-transform:uppercase;background:#fff1f2;border-radius:50%;place-items:center;width:1.7rem;height:1.7rem;font-size:.55rem;font-weight:800;display:grid}.access-member strong,.access-member small{overflow-wrap:anywhere;display:block}.access-member strong{color:#334155;font-size:.62rem}.access-member small{color:#64748b;margin-top:.08rem;font-size:.55rem}.access-remove{color:#b91c1c;cursor:pointer;background:#fee2e2;border:0;border-radius:.4rem;width:1.65rem;height:1.65rem;font-weight:900}.access-remove:disabled{opacity:.35;cursor:default}.access-empty{color:#94a3b8;margin:0;padding:.35rem 0;font-size:.57rem;font-style:italic}.access-add{grid-template-columns:minmax(0,1fr) 1.9rem;gap:.25rem;display:grid}.access-add input{color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:.4rem;width:100%;min-width:0;padding:.4rem .45rem;font-size:.59rem}.access-add input:focus{border-color:#e11d48;outline:0;box-shadow:0 0 0 2px #ffe4e6}.access-add button{color:#fff;cursor:pointer;background:#d60b26;border:0;border-radius:.4rem;width:1.9rem;height:1.9rem;font-weight:900}.access-add button:disabled,.access-add input:disabled{opacity:.45;cursor:default}.user-access-error,.user-access-state{color:#475569;background:#f1f5f9;border-radius:.5rem;margin:0 0 .6rem;padding:.55rem .7rem;font-size:.7rem}.user-access-error{color:#991b1b;background:#fef2f2}.access-scope-warning{color:#92400e;background:#fef3c7;border-radius:50%;place-items:center;width:1.2rem;height:1.2rem;margin-top:.2rem;font-size:.65rem;font-weight:900;display:grid}.fleet-page{gap:.8rem;min-width:0;display:grid}.fleet-top-actions{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:-.5rem;display:flex}.mpa-module-tabs{gap:1rem;display:flex}.mpa-module-card{color:#334155;cursor:pointer;text-align:left;background:#fff;border:1px solid #e2e8f0;border-left:4px solid #64748b;border-radius:.85rem;flex:1;grid-template-columns:2.75rem minmax(0,1fr) 1.35rem;align-items:center;gap:.9rem;min-width:0;min-height:82px;padding:.85rem 1rem;transition:all .25s cubic-bezier(.4,0,.2,1);display:grid;position:relative;overflow:hidden;box-shadow:0 2px 5px #0f172a05}.mpa-module-card:hover{z-index:2;background:#f8fafc;border-color:#cbd5e1;transform:translateY(-3px);box-shadow:0 12px 22px -8px #0f172a24}.mpa-module-card.active{background:#ecfdf5;border-color:#10b981;box-shadow:0 9px 18px -9px #10b98152}.mpa-module-card.active:after{content:"";background:#10b981;height:3px;position:absolute;bottom:0;left:0;right:0}.mpa-module-card.active:hover{background:#d1fae5}.mpa-module-card.contracts{border-left-color:#16a34a}.mpa-module-card.estimates{border-left-color:#f97316}.mpa-module-card:disabled{cursor:not-allowed;opacity:.72}.mpa-module-card:disabled:hover{background:#fff;border-color:#e2e8f0;transform:none;box-shadow:0 2px 5px #0f172a05}.module-icon{color:#15803d;background:#dcfce7;border-radius:.6rem;place-items:center;width:2.75rem;height:2.75rem;display:grid}.module-icon.vehicle{color:#059669;background:#fff;border:1px solid #a7f3d0}.module-icon.vehicle img{width:1.9rem}.estimates .module-icon{color:#ea580c;background:#ffedd5}.module-icon svg,.mpa-module-card>svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1.35rem}.mpa-module-card>span:nth-child(2){min-width:0}.mpa-module-card small,.mpa-module-card strong{display:block}.mpa-module-card small{color:#64748b;letter-spacing:.02em;text-transform:uppercase;font-size:.65rem;font-weight:800}.mpa-module-card strong{color:#1e293b;margin-top:.15rem;font-size:1.45rem;line-height:1}.mpa-module-card>svg{color:#94a3b8}.fleet-heading{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem .8rem;display:flex}.fleet-heading>div{align-items:center;gap:.65rem;min-width:0;display:flex}.fleet-heading-icon{background:#d60b26;border-radius:.55rem;flex:none;place-items:center;width:2.35rem;height:2.35rem;display:grid}.fleet-heading-icon img{width:1.45rem}.fleet-heading h1,.fleet-heading p{margin:0}.fleet-heading h1{color:#1e293b;font-size:.95rem}.fleet-heading p{color:#64748b;margin-top:.12rem;font-size:.65rem}.fleet-heading>strong{color:#475569;white-space:nowrap;font-size:.7rem}.fleet-toolbar{z-index:15;align-items:center;gap:.5rem;display:flex;position:relative}.fleet-search{flex:1;min-width:16rem;position:relative}.fleet-search svg{fill:none;stroke:#94a3b8;stroke-width:2px;width:1rem;position:absolute;top:50%;left:.65rem;transform:translateY(-50%)}.fleet-search input{color:#334155;background:#ffffffd9;border:1px solid #cbd5e1;border-radius:.5rem;outline:0;width:100%;height:38px;padding:0 .7rem 0 2rem;font-size:.8rem;font-weight:500;transition:all .2s}.fleet-search input:focus,.fleet-inline-filter select:focus{background:#fff;border-color:#0284c7;box-shadow:0 0 0 4px #0284c71a}.fleet-toolbar button{cursor:pointer;border:1px solid #cbd5e1;border-radius:.5rem;min-height:38px;font-size:.75rem;font-weight:700;transition:all .2s;box-shadow:0 1px 2px #0f172a0d}.fleet-filter-button{color:#fff;background:#1e293b;align-items:center;gap:.35rem;padding:0 .75rem;display:inline-flex}.fleet-filter-button:hover{background:#0f172a;transform:translateY(-1px)}.fleet-filter-button svg{fill:none;stroke:currentColor;stroke-width:2px;width:.85rem}.fleet-top-actions .fleet-add-button{color:#fff;cursor:pointer;background:#10b981;border:0;border-radius:.75rem;justify-content:center;align-items:center;gap:.375rem;padding:.625rem 1.25rem;font-size:.8rem;font-weight:700;transition:all .2s;display:inline-flex;box-shadow:0 4px 6px #0000001a}.fleet-top-actions .fleet-add-button:hover:not(:disabled){background:#16a34a;transform:translateY(-4px)}.fleet-top-actions .fleet-add-button:focus-visible{outline-offset:2px;outline:3px solid #34d39959}.fleet-top-actions .fleet-add-button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.fleet-add-button .app-icon,.fleet-add-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:.9rem;min-width:.9rem;height:.9rem}.fleet-inline-filter{background:#ffffffd9;border:1px solid #cbd5e1;border-radius:.5rem;flex:0 0 8rem;align-content:center;width:8rem;height:38px;padding:.25rem .55rem;display:grid}.fleet-inline-filter span{color:#94a3b8;text-transform:uppercase;font-size:.5rem;font-weight:800;line-height:1}.fleet-inline-filter select{color:#334155;background-color:#0000;border:0;outline:0;width:100%;min-width:0;padding:.05rem 1rem 0 0;font-size:.68rem;font-weight:700}.fleet-inline-filter select:disabled{color:#94a3b8;cursor:not-allowed}.fleet-quick-filters{gap:.35rem;display:flex}.fleet-quick-filters button{white-space:nowrap;padding:0 .7rem}.fleet-quick-filters span{background:#ffffffbf;border-radius:999px;margin-left:.25rem;padding:.05rem .3rem}.quick-soon{color:#92400e;background:#fffbeb;border-color:#fde68a!important}.quick-expired{color:#be123c;background:#fff1f2;border-color:#fecdd3!important}.quick-missing{color:#475569;background:#f1f5f9}.fleet-toolbar .selected{box-shadow:inset 0 0 0 2px}.fleet-icon-button{color:#64748b;background:#ffffffd9;flex:none;width:38px;font-size:1rem!important}.fleet-icon-button:hover{color:#1e293b;background:#fff;border-color:#94a3b8;transform:translateY(-1px)}.fleet-icon-button.cold{color:#0369a1;background:#f0f9ff;border-color:#bae6fd}.fleet-icon-button.reset{color:#be123c;background:#fff1f2;border-color:#fecdd3}.vehicle-filter-panel{z-index:60;background:#fff;border:1px solid #cbd5e1;border-radius:.65rem;padding:.75rem;position:relative;box-shadow:0 18px 35px #0f172a29}.vehicle-filter-panel:before{content:"";background:#fff;border-top:1px solid #cbd5e1;border-left:1px solid #cbd5e1;width:12px;height:12px;position:absolute;top:-7px;left:1.4rem;transform:rotate(45deg)}.vehicle-filter-panel>header,.vehicle-filter-panel>footer{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.vehicle-filter-panel>header strong,.vehicle-filter-panel>header small{display:block}.vehicle-filter-panel>header{border-bottom:1px solid #e2e8f0;padding-bottom:.5rem}.vehicle-filter-panel>header strong{color:#0f172a;text-transform:uppercase;font-size:.82rem;font-weight:900}.vehicle-filter-panel>header small{color:#64748b;margin-top:.12rem;font-size:.58rem}.vehicle-filter-panel>header button{color:#64748b;cursor:pointer;background:#f1f5f9;border:0;border-radius:.4rem;width:2rem;height:2rem}.vehicle-filter-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.5rem;margin:.7rem 0;display:grid}.vehicle-filter-grid label{color:#64748b;letter-spacing:.02em;text-transform:uppercase;gap:.18rem;font-size:.62rem;font-weight:900;line-height:1.1;display:grid}.vehicle-filter-grid input,.vehicle-filter-grid select{color:#334155;text-transform:none;background:#fff;border:1px solid #cbd5e1;border-radius:.36rem;outline:0;width:100%;height:30px;padding:0 .45rem;font-size:.74rem}.vehicle-filter-grid input:focus,.vehicle-filter-grid select:focus{border-color:#10b981;box-shadow:0 0 0 2px #10b9811f}.vehicle-filter-panel>footer{border-top:1px solid #e2e8f0;justify-content:flex-end;padding-top:.65rem}.vehicle-filter-panel>footer button{color:#fff;cursor:pointer;background:#059669;border:1px solid #059669;border-radius:.5rem;min-height:2.1rem;padding:0 .75rem;font-size:.74rem;font-weight:900}.vehicle-filter-panel>footer .secondary{color:#475569;background:#f1f5f9}.fleet-active-filters{color:#475569;background:#ffffffe6;border:1px solid #dbeafe;border-radius:.8rem;flex-wrap:wrap;align-items:center;gap:.5rem;min-height:2rem;padding:.55rem .75rem;font-size:.72rem;display:flex;box-shadow:0 1px 2px #0f172a0a}.fleet-active-filters>strong{text-transform:uppercase;font-size:.72rem;font-weight:900}.fleet-active-filters span,.fleet-active-filters button{color:#1d4ed8;font-size:inherit;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:.22rem .52rem;font-weight:800}.fleet-active-filters button.clear-all{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.fleet-active-filters button{cursor:pointer}.fleet-active-filters em{color:#16a34a;margin-left:auto;font-size:.76rem;font-style:normal;font-weight:900}.fleet-message,.fleet-empty{text-align:center;color:#64748b;background:#fff;border:1px dashed #cbd5e1;border-radius:.75rem;margin:0;padding:2rem;font-size:.72rem}.fleet-message.error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.fleet-message button{color:inherit;cursor:pointer;background:0 0;border:0;margin-left:.5rem;font-weight:800;text-decoration:underline}.vehicle-table-wrap{z-index:10;background:#fff;border:1px solid #cbd5e1;border-radius:1rem;min-height:0;position:relative;overflow:hidden;box-shadow:0 10px 15px -3px #0f172a0a}.table-scroll-wrapper{overscroll-behavior:contain;max-height:clamp(560px,100vh - 10rem,980px);overflow:auto}.custom-scroll{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.custom-scroll::-webkit-scrollbar{width:6px;height:6px}.custom-scroll::-webkit-scrollbar-track{background:0 0}.custom-scroll::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.custom-scroll::-webkit-scrollbar-thumb:hover{background:#94a3b8}.vehicle-table-wrap.fullscreen{z-index:10000;box-shadow:none;border:0;border-radius:0;position:fixed;inset:0}.vehicle-table-wrap.fullscreen .table-scroll-wrapper{height:100vh;max-height:100vh}.table-fullscreen-close{z-index:10050;color:#b91c1c;cursor:pointer;background:#fff;border:1px solid #fecaca;border-radius:.45rem;align-items:center;gap:.35rem;min-height:2.15rem;padding:0 .75rem;font-size:.68rem;font-weight:900;display:inline-flex;position:fixed;top:.5rem;right:.65rem;box-shadow:0 4px 12px #0f172a38}.table-fullscreen-close .app-icon{width:.8rem;min-width:.8rem;height:.8rem}.vehicle-table-wrap.fullscreen .vehicle-table th:last-child{padding-right:9.5rem}.vehicle-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%}.vehicle-table th{z-index:30;color:#fff;letter-spacing:.02em;text-align:left;text-transform:uppercase;background:#5c6e82;border-bottom:2px solid #4a5a6b;border-right:1px solid #ffffff26;padding:.9rem .5rem;font-size:.65rem;font-weight:700;position:sticky;top:0;overflow:visible}.vehicle-table th:focus-within{z-index:80}.vehicle-table th:first-child{text-align:center;width:3%}.vehicle-table th:nth-child(2){width:16%}.vehicle-table th:nth-child(3){width:14%}.vehicle-table th:nth-child(4){width:15%}.vehicle-table th:nth-child(5){width:10%}.vehicle-table th:nth-child(6){width:12%}.vehicle-table th:nth-child(7){width:14%}.vehicle-table th:nth-child(8){width:7%}.vehicle-table td{vertical-align:top;color:#334155;overflow-wrap:anywhere;background:#fff;border-bottom:1px solid #f1f5f9;padding:.95rem .5rem 1rem;font-size:.8rem;line-height:1.4;position:relative}.vehicle-table tr:hover td{background:#f8fafc}.vehicle-table .row-number{text-align:center;font-weight:800}.vehicle-table td>strong,.vehicle-table td>small{margin-top:.18rem;display:block}.vehicle-table td>strong{color:#1e293b;font-size:.8rem}.vehicle-table td>small{color:#64748b}.plate-badge{color:#172033;cursor:pointer;letter-spacing:.035em;background:#fff;border:1px solid #94a3b8;border-radius:.28rem;align-items:center;gap:.3rem;padding:.24rem .42rem;font-size:.68rem;font-weight:900;display:inline-flex;box-shadow:0 1px 2px #0f172a12}.plate-badge span{color:#2563eb;font-size:.7rem}.mini-badge{color:#155e75;vertical-align:middle;background:#cffafe;border-radius:50%;place-items:center;width:1.2rem;height:1.2rem;margin-left:.35rem;font-size:.55rem;font-weight:900;display:inline-grid}.vehicle-brand{color:#1d4ed8!important;margin-top:.42rem!important;font-size:.7rem!important}.vehicle-brand span{color:#64748b;font-weight:600}.vehicle-structure{font-weight:800;margin-top:.35rem!important}.vehicle-table dl,.vehicle-preview dl,.vehicle-cards dl{gap:.16rem;margin:0;display:grid}.vehicle-table dl div,.vehicle-preview dl div,.vehicle-cards dl div{border:0;grid-template-columns:5.2rem minmax(0,1fr);gap:.35rem;padding:0;display:grid}.vehicle-table dt,.vehicle-preview dt,.vehicle-cards dt{color:#94a3b8}.vehicle-table dd,.vehicle-preview dd,.vehicle-cards dd{color:#334155;margin:0;font-weight:700}.vehicle-table .info-grid{align-items:center;gap:.22rem .3rem;font-size:.75rem;line-height:1.2}.vehicle-table .info-grid div{grid-template-columns:4.75rem minmax(0,1fr)}.vehicle-table .info-grid dt{white-space:nowrap;font-size:.65rem;font-weight:700;line-height:1.2}.vehicle-table .info-grid dd{text-align:right;overflow-wrap:anywhere;min-width:0;padding-right:1.35rem;font-size:.7rem;font-weight:600;line-height:1.2}.vehicle-table .accent{color:#2563eb}.vehicle-vin{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.58rem}.vehicle-table .validity-list{font-size:.75rem;line-height:1.3}.vehicle-table .validity-list dt{font-size:.65rem;font-weight:700}.date-badge{text-align:center;border-radius:.25rem;width:fit-content;padding:.08rem .3rem;font-size:.65rem;font-weight:800}.date-badge[data-state=valid]{color:#166534;background:#dcfce7}.date-badge[data-state=soon]{color:#92400e;background:#fef3c7}.date-badge[data-state=expired]{color:#991b1b;background:#fee2e2}.date-badge[data-state=missing]{color:#64748b;background:#f1f5f9}.status-badge{color:#166534;text-transform:uppercase;white-space:nowrap;background:#dcfce7;border:1px solid #bbf7d0;border-radius:999px;justify-content:center;align-items:center;padding:.22rem .65rem;font-size:.68rem;font-weight:800;line-height:1;display:inline-flex}.status-badge[data-status=in_service]{color:#92400e;background:#ffedd5;border-color:#fed7aa}.status-badge[data-status=inactiv]{color:#475569;background:#f1f5f9;border-color:#cbd5e1}.status-badge[data-status=avariata]{color:#991b1b;background:#fee2e2;border-color:#fecaca}.status-badge[data-status=parc_rece]{color:#075985;background:#e0f2fe;border-color:#bae6fd}.vehicle-tire-summary{color:#334155;gap:.12rem;margin-top:.4rem;font-size:.68rem;font-weight:600;line-height:1.2;display:grid}.vehicle-tire-line{flex-wrap:wrap;align-items:center;gap:.3rem;min-width:0;display:flex}.vehicle-tire-line-indent{padding-left:1.05rem}.vehicle-tire-icon{justify-content:center;width:.75rem;font-size:.95rem;line-height:1;display:inline-flex}.vehicle-tire-tip{cursor:help;position:relative}.vehicle-tire-tip:hover:after{content:attr(data-tooltip);z-index:320;color:#fff;pointer-events:none;text-align:center;background:#0f172a;border-radius:.35rem;width:max-content;max-width:11rem;padding:.25rem .45rem;font-size:.62rem;font-weight:800;line-height:1.15;position:absolute;bottom:calc(100% + .35rem);left:50%;transform:translate(-50%);box-shadow:0 8px 18px #0f172a38}.vehicle-tire-tip:hover:before{content:"";z-index:321;pointer-events:none;border:4px solid #0000;border-top-color:#0f172a;position:absolute;bottom:calc(100% + .12rem);left:50%;transform:translate(-50%)}.vehicle-notes-cell{gap:.4rem;min-height:2.25rem;padding-right:2.25rem;display:grid;position:relative}.vehicle-notes-actions{z-index:2;flex-direction:column;gap:.22rem;display:flex;position:absolute;top:0;right:0}.vehicle-notes-actions button{color:#94a3b8;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:999px;justify-content:center;align-items:center;width:1.15rem;height:1.15rem;padding:0;transition:all .18s;display:inline-flex;box-shadow:0 1px 2px #0f172a0a}.vehicle-notes-actions button svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:.72rem;height:.72rem}.vehicle-notes-actions button.add{color:#0284c7;background:#f0f9ff;border-color:#bae6fd}.vehicle-notes-actions button:hover:not(:disabled){color:#0284c7;background:#e0f2fe;border-color:#7dd3fc;transform:translateY(-1px)}.vehicle-notes-actions button.danger:hover{color:#dc2626;background:#fef2f2;border-color:#fecaca}.vehicle-notes-actions button:disabled{opacity:.35;cursor:default}.vehicle-note-form{gap:.3rem;display:grid}.vehicle-note-form textarea{resize:vertical;color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:.35rem;width:100%;min-height:4rem;padding:.4rem;font-size:.68rem}.vehicle-note-form button{justify-self:end}.vehicle-note-form button:disabled{opacity:.5;cursor:default}.vehicle-note-form textarea:focus{border-color:#10b981;outline:0;box-shadow:0 0 0 2px #10b9811f}.vehicle-note-editor-actions{justify-content:flex-end;gap:.25rem;display:flex}.vehicle-note-editor-actions button{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.35rem;min-height:1.7rem;padding:.2rem .45rem;font-size:.62rem;font-weight:900}.vehicle-note-editor-actions button.save{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.vehicle-note-editor-actions button.cancel{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.vehicle-note-history{gap:.45rem;max-height:10rem;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.vehicle-note-history li{border-left:2px solid #bfdbfe;padding-left:.45rem}.vehicle-note-history p,.vehicle-notes-empty,.vehicle-note-error{white-space:pre-wrap;margin:0}.vehicle-note-history p{color:#64748b;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:.1rem;font-size:.68rem;font-style:italic;line-height:1.25;display:-webkit-box;overflow:hidden}.vehicle-note-history small{color:#475569;font-size:.58rem;font-weight:900;line-height:1.15;display:block}.vehicle-notes-empty{color:#64748b;font-size:.72rem;font-style:italic;line-height:1.25}.vehicle-note-error{color:#b91c1c;font-size:.6rem}.vehicle-table .boolean-yes{color:#16a34a}.vehicle-table .boolean-no{color:#94a3b8}.vehicle-edit-cell{padding-right:1.55rem!important}.cell-edit-button{z-index:3;color:#94a3b8;opacity:.65;cursor:pointer;background:0 0;border:0;border-radius:.2rem;place-items:center;width:1rem;height:1rem;padding:0;transition:color .2s,opacity .2s,transform .2s,background .2s;display:inline-grid;position:absolute;top:.35rem;right:.35rem}.cell-edit-button .app-icon,.cell-edit-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:1rem;min-width:1rem;height:1rem}.cell-edit-button:hover{color:#0284c7;opacity:1;background:#f0f9ff;transform:scale(1.12)}.cell-edit-button:focus-visible{outline-offset:2px;color:#0284c7;opacity:1;background:#f0f9ff;outline:2px solid #38bdf8}.cell-edit-button:disabled{opacity:.3;cursor:not-allowed;transform:none}.vehicle-actions{position:relative}.action-grid{grid-template-columns:repeat(2,1.75rem);justify-content:center;gap:.25rem;width:3.8rem;margin:0 auto;display:grid}.vehicle-actions button,.card-detail{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:.35rem;min-height:1.75rem;padding:0 .45rem;font-size:.58rem;font-weight:800;transition:all .18s}.vehicle-actions button{place-items:center;width:1.75rem;padding:0;display:grid}.vehicle-actions button:hover{color:#0284c7;background:#f0f9ff;border-color:#bae6fd;transform:scale(1.15);box-shadow:0 4px 8px #0f172a0d}.vehicle-actions svg,.header-table-action svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:.9rem}.vehicle-actions button.edit,.vehicle-edit-action{color:#0284c7;background:#f0f9ff;border-color:#bae6fd}.vehicle-actions button.edit:hover,.vehicle-edit-action:hover{color:#0369a1;background:#e0f2fe;border-color:#7dd3fc;transform:scale(1.15)}.vehicle-actions button:focus-visible,.vehicle-edit-action:focus-visible{outline-offset:2px;outline:2px solid #38bdf8}.vehicle-delete-button,.vehicle-edit-delete{color:#b91c1c;cursor:pointer;background:#fef2f2;border-color:#fecaca;justify-content:center;align-items:center;gap:.35rem;font-weight:800;transition:color .18s,border-color .18s,background .18s,box-shadow .18s,transform .18s;display:inline-flex}.vehicle-actions button.vehicle-delete-button,.vehicle-cards .vehicle-delete-button,.vehicle-edit-footer button.vehicle-edit-delete,.dialog-backdrop>form.vehicle-preview>footer button.vehicle-edit-delete{color:#b91c1c;box-shadow:none;background:#fef2f2;border-color:#fecaca}.vehicle-actions button.vehicle-delete-button:hover:not(:disabled),.vehicle-cards .vehicle-delete-button:hover:not(:disabled),.vehicle-edit-footer button.vehicle-edit-delete:hover:not(:disabled),.dialog-backdrop>form.vehicle-preview>footer button.vehicle-edit-delete:hover:not(:disabled){color:#991b1b;background:#fee2e2;border-color:#fca5a5;transform:translateY(-1px);box-shadow:0 6px 12px #b91c1c1f}.vehicle-delete-button:focus-visible,.vehicle-edit-delete:focus-visible,.vehicle-edit-footer button.vehicle-edit-delete:focus-visible,.dialog-backdrop>form.vehicle-preview>footer button.vehicle-edit-delete:focus-visible{outline-offset:2px;outline:2px solid #ef4444}.vehicle-delete-button:disabled,.vehicle-edit-delete:disabled,.vehicle-edit-footer button.vehicle-edit-delete:disabled,.dialog-backdrop>form.vehicle-preview>footer button.vehicle-edit-delete:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.vehicle-delete-button .app-icon,.vehicle-delete-button svg,.vehicle-edit-delete .app-icon,.vehicle-edit-delete svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:.9rem;min-width:.9rem;height:.9rem}.vehicle-table th:last-child{padding-right:.25rem}.vehicle-table th:last-child>span{vertical-align:middle}.header-table-action{color:#64748b;cursor:pointer;vertical-align:middle;background:#fff;border:1px solid #cbd5e1;border-radius:.35rem;place-items:center;width:1.75rem;height:1.75rem;margin-left:.35rem;display:inline-grid}.vehicle-cards{display:none}.app-icon{vertical-align:middle;stroke-width:2.5px;flex:0 0 1rem;width:1rem;min-width:1rem;height:1rem;display:inline-block}.th-content{justify-content:space-between;align-items:center;gap:.35rem;min-height:1.35rem;display:flex}.th-icons,.table-header-utils{align-items:center;gap:.18rem;display:inline-flex}.sort-arrows,.filter-icon-button,.header-icon-button{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:.25rem;place-items:center;width:1.4rem;height:1.4rem;padding:0;display:inline-grid}.sort-arrows:hover,.filter-icon-button:hover,.header-icon-button:hover{background:#ffffff29}.sort-arrows svg{fill:currentColor;width:.85rem;height:.85rem}.filter-icon-button .app-icon,.header-icon-button .app-icon{width:.85rem;min-width:.85rem;height:.85rem}.table-header-utils{justify-content:center;width:100%}.vehicle-table:not(.show-rowNumber) :is(th,td):first-child,.vehicle-table:not(.show-identification) :is(th,td):nth-child(2),.vehicle-table:not(.show-equipment) :is(th,td):nth-child(3),.vehicle-table:not(.show-validity) :is(th,td):nth-child(4),.vehicle-table:not(.show-details) :is(th,td):nth-child(5),.vehicle-table:not(.show-service) :is(th,td):nth-child(6),.vehicle-table:not(.show-notes) :is(th,td):nth-child(7){display:none}.table-settings-control{display:inline-flex;position:relative}.table-settings-popover{z-index:310;color:#334155;text-align:left;text-transform:none;background:#fff;border:1px solid #cbd5e1;border-radius:.55rem;gap:.35rem;width:19rem;max-height:min(75vh,42rem);padding:.65rem;display:grid;position:absolute;top:calc(100% + .3rem);right:0;overflow-y:auto;box-shadow:0 18px 35px #0f172a38}.table-settings-popover strong{color:#475569;text-transform:uppercase;border-bottom:1px solid #e2e8f0;padding-bottom:.35rem;font-size:.68rem}.table-settings-popover>b{color:#334155;text-transform:uppercase;background:#f1f5f9;border-radius:.25rem;margin-top:.3rem;padding:.25rem .35rem;font-size:.62rem}.table-settings-popover label{color:#475569;align-items:center;gap:.4rem;font-size:.68rem;font-weight:800;display:flex}.table-settings-popover button{color:#1d4ed8;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:.4rem;min-height:1.9rem;margin-top:.25rem;font-size:.7rem;font-weight:900}.table-settings-actions{background:#fff;grid-template-columns:1fr 1fr;gap:.35rem;padding:.45rem 0 .65rem;display:grid;position:sticky;bottom:-.65rem}.table-settings-actions button{margin:0}.table-settings-actions button.secondary{color:#475569;background:#f8fafc;border-color:#cbd5e1}.header-filter-control{display:inline-flex;position:relative}.filter-icon-button.active{color:#fef08a;background:#ffffff24}.header-filter-popover{z-index:300;color:#334155;letter-spacing:0;text-align:left;text-transform:none;background:#fff;border:1px solid #cbd5e1;border-radius:.55rem;gap:.55rem;width:min(260px,85vw);padding:.75rem;font-size:.8rem;font-weight:500;display:grid;position:absolute;top:calc(100% + .25rem);left:0;box-shadow:0 18px 35px #0f172a38}.header-filter-popover:before{content:"";background:#fff;border-top:1px solid #cbd5e1;border-left:1px solid #cbd5e1;width:10px;height:10px;position:absolute;top:-6px;left:12px;transform:rotate(45deg)}.header-filter-popover.wide{width:min(390px,85vw)}.vehicle-table th:nth-child(n+5) .header-filter-popover{left:auto;right:0}.header-filter-popover>strong{color:#475569;letter-spacing:.03em;text-transform:uppercase;font-size:.68rem;font-weight:900}.header-filter-popover label{color:#475569;gap:.2rem;font-size:.65rem;font-weight:800;display:grid}.header-filter-popover input,.header-filter-popover select{color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:.4rem;width:100%;min-width:0;min-height:2rem;padding:.3rem .4rem;font-size:.7rem}.header-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;display:grid}.header-filter-actions{gap:.4rem;display:flex}.header-filter-actions button{color:#b91c1c;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:.4rem;flex:1;min-height:1.9rem;font-size:.7rem;font-weight:900}.header-filter-actions button:last-child{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.vehicle-identification-line{align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.vehicle-plate-trigger{color:#334155;cursor:pointer;background:0 0;border:0;align-items:center;gap:.15rem;padding:0;display:inline-flex}.vehicle-table .plate-badge{color:#334155;box-shadow:none;letter-spacing:0;text-transform:uppercase;background:#fef3c7;border:1px solid #fcd34d;border-radius:.25rem;padding:.05rem .4rem;font-size:.85rem;font-weight:800}.vehicle-plate-trigger>.app-icon{color:#334155;flex-basis:.1rem;width:.1rem;min-width:.1rem;height:.1rem;transform:translateY(-.34rem)}.vehicle-admin-badge{color:#fff;cursor:help;background:#0f172a;border:1px solid #334155;border-radius:999px;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;font-size:.68rem;font-weight:950;line-height:1;display:inline-flex}.vehicle-table .vehicle-brand{color:#1d4ed8!important;margin-top:.25rem!important;font-size:.8rem!important}.vehicle-table .vehicle-brand span{color:#64748b;font-weight:700}.vehicle-table .vehicle-structure{font-size:.7rem;font-weight:700;margin-top:.35rem!important}.vehicle-category-row{align-items:center;gap:.2rem;font-size:.7rem;font-weight:700;display:flex!important}.vehicle-category-row .app-icon{width:.72rem;min-width:.72rem;height:.72rem}.vehicle-detail-category-title{color:#64748b;letter-spacing:.03em;text-transform:uppercase;margin:.42rem 0 .2rem;font-weight:900;line-height:1;display:block;font-size:.65rem!important}.vehicle-detail-category-title:first-child{margin-top:0}.vehicle-preview-trigger{display:inline-flex;position:relative}.vehicle-preview-tooltip{z-index:260;color:#334155;text-transform:none;cursor:default;background:#fff;border:1px solid #cbd5e1;border-radius:.65rem;width:min(44rem,78vw);padding:.75rem;display:none;position:absolute;top:calc(100% + .45rem);left:0;box-shadow:0 20px 42px #0f172a38}.vehicle-preview-trigger:hover .vehicle-preview-tooltip,.vehicle-preview-trigger.is-pinned .vehicle-preview-tooltip{display:block}.vehicle-preview-title{color:#0f172a;border-bottom:1px solid #e2e8f0;margin-bottom:.55rem;padding-bottom:.45rem;font-size:.82rem;font-weight:950;display:block}.vehicle-preview-grid{grid-template-columns:1.25fr .9fr .9fr;gap:.75rem;display:grid}.vehicle-preview-grid>span{min-width:0;display:block}.vehicle-preview-grid>span>b{color:#64748b;text-transform:uppercase;margin-bottom:.35rem;font-size:.62rem;font-weight:950;display:block}.vehicle-preview-grid>span>span{grid-template-columns:5.6rem minmax(0,1fr);gap:.45rem;margin-bottom:.24rem;font-size:.68rem;line-height:1.25;display:grid}.vehicle-preview-grid em{color:#94a3b8;font-style:normal;font-weight:850}.vehicle-preview-grid strong{color:#334155;overflow-wrap:anywhere;min-width:0;font-weight:900}.vehicle-actions .app-icon{width:.9rem;min-width:.9rem;height:.9rem}.fleet-pagination{color:#64748b;background:linear-gradient(#fff 0%,#f8fafc 100%);border:1px solid #cbd5e1;border-top:0;border-radius:0 0 1rem 1rem;gap:.85rem;padding:.9rem 1rem 1rem;font-size:.68rem;display:grid}.fleet-pagination:not(.detached){margin-top:-.8rem}.fleet-pagination-bar,.fleet-pagination-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.9rem;display:flex}.fleet-pagination-label{gap:.1rem;min-width:0;display:grid}.fleet-pagination-label small{color:#64748b;letter-spacing:.08em;text-transform:uppercase;font-size:.62rem;font-weight:900}.fleet-pagination-label strong{color:#0f172a;font-size:.9rem;font-weight:900}.fleet-pagination-label em,.fleet-page-status,.fleet-page-buttons i{color:#64748b;font-size:.72rem;font-style:normal;font-weight:800}.fleet-page-buttons{flex-wrap:wrap;align-items:center;gap:.4rem;display:inline-flex}.fleet-page-buttons button{color:#334155;cursor:pointer;background:#fff;border:1px solid #dbe4f0;border-radius:.65rem;min-width:2rem;height:2rem;padding:0 .65rem;font-size:.78rem;font-weight:900;transition:all .16s}.fleet-page-buttons button:hover:not(:disabled){color:#1d4ed8;background:#eff6ff;border-color:#93c5fd}.fleet-page-buttons button.active{color:#fff;background:#2563eb;border-color:#2563eb;box-shadow:0 10px 18px -12px #2563ebe6}.fleet-page-buttons button:disabled{opacity:.45;cursor:not-allowed}.fleet-summary-breakdown{flex-wrap:wrap;align-items:center;gap:.55rem;display:inline-flex}.fleet-summary-pill{color:#475569;background:#fff;border:1px solid #dbe4f0;border-radius:999px;align-items:center;gap:.45rem;padding:.35rem .7rem;font-size:.68rem;font-weight:900;line-height:1;display:inline-flex}.fleet-summary-pill:is(button){cursor:pointer}.fleet-summary-pill:is(button):hover,.fleet-summary-pill.active{filter:brightness(.95);transform:translateY(-1px);box-shadow:0 3px 8px #0f172a1a}.fleet-summary-pill strong{color:inherit;font-size:.8rem}.fleet-summary-pill.total,.fleet-summary-pill.tone-blue{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.fleet-summary-pill.tone-green{color:#15803d;background:#f0fdf4;border-color:#bbf7d0}.fleet-summary-pill.tone-amber{color:#b45309;background:#fffbeb;border-color:#fde68a}.fleet-summary-pill.tone-red{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.fleet-summary-pill.tone-slate{color:#475569;background:#f8fafc;border-color:#cbd5e1}.dialog-backdrop,.vehicle-edit-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a99;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.vehicle-preview{background:#fff;border-radius:.85rem;width:min(62rem,100%);max-height:calc(100vh - 2rem);overflow:auto;box-shadow:0 24px 60px #0f172a4d}.vehicle-preview>header{z-index:2;color:#fff;background:#d60b26;justify-content:space-between;padding:.85rem 1rem;display:flex;position:sticky;top:0}.vehicle-preview>header small,.vehicle-preview>header h2,.vehicle-preview>header p{margin:0;display:block}.vehicle-preview>header small{color:#fecdd3;text-transform:uppercase;font-size:.58rem;font-weight:800}.vehicle-preview>header h2{margin-top:.1rem;font-size:1.2rem}.vehicle-preview>header p{color:#fff;margin-top:.1rem;font-size:.72rem}.vehicle-preview>header button{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff59;border-radius:.45rem;width:2.2rem;height:2.2rem}.preview-sections{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;padding:.9rem;display:grid}.preview-sections section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.6rem;padding:.7rem}.preview-sections h3{color:#334155;margin:0 0 .5rem;font-size:.7rem}.vehicle-preview dl div{border-bottom:1px solid #e2e8f0;grid-template-columns:8rem minmax(0,1fr);padding:.2rem 0;font-size:.62rem}.vehicle-preview>footer{background:#fff;border-top:1px solid #e2e8f0;justify-content:flex-end;padding:.7rem 1rem;display:flex;position:sticky;bottom:0}.vehicle-preview>footer button{color:#fff;cursor:pointer;background:#d60b26;border:0;border-radius:.4rem;min-height:2.2rem;padding:0 .8rem;font-size:.65rem;font-weight:800}.vehicle-edit-dialog{background:#fff;border-radius:.5rem;flex-direction:column;width:min(55rem,100%);max-height:calc(100vh - 2rem);animation:.2s ease-out vehicle-edit-zoom;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000059}.vehicle-edit-header{color:#fff;background:#10b981;border-bottom:1px solid #059669;flex:none;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem;display:flex}.vehicle-edit-header h2,.vehicle-edit-header p{margin:0}.vehicle-edit-header h2{font-size:1.1rem;font-weight:800}.vehicle-edit-header p{color:#ffffffd9;margin-top:.2rem;font-size:.72rem;font-weight:700}.vehicle-edit-close{color:#fff;opacity:.85;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff59;border-radius:.45rem;flex:none;place-items:center;width:2.2rem;height:2.2rem;padding:0;transition:opacity .2s,background .2s;display:inline-grid}.vehicle-edit-close:hover{opacity:1;background:#ffffff2e}.vehicle-edit-close:focus-visible{outline-offset:2px;opacity:1;outline:2px solid #fff}.vehicle-edit-body{background:#f8fafc;flex:auto;min-height:0;padding:1.5rem;overflow:auto}.vehicle-edit-intro{color:#64748b;margin:0 0 1.5rem;font-size:.7rem;font-style:italic}.vehicle-edit-section+.vehicle-edit-section{margin-top:1.25rem}.vehicle-edit-section-title{color:#0f172a;border-top:1px solid #e2e8f0;margin:0 0 .85rem;padding-top:.85rem;font-size:.78rem;font-weight:900}.vehicle-edit-section:first-child .vehicle-edit-section-title{border-top:0;padding-top:0}.vehicle-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.vehicle-edit-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.vehicle-edit-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.vehicle-edit-field{min-width:0;position:relative}.vehicle-edit-field.full{grid-column:1/-1}.vehicle-edit-label{color:#475569;margin-bottom:.35rem;font-size:.75rem;font-weight:700;display:block}.vehicle-edit-unit{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;display:grid}.vehicle-edit-unit b{color:#475569;font-size:.8rem;font-weight:900}.vehicle-edit-input{color:#334155;width:100%;min-height:2.45rem;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:.35rem;outline:0;padding:.55rem .75rem;font-size:.85rem;transition:border-color .2s,box-shadow .2s}.vehicle-edit-input:focus{border-color:#10b981;box-shadow:0 0 0 2px #10b9811a}.vehicle-edit-input:disabled{color:#64748b;cursor:not-allowed;background:#f1f5f9;border-color:#e2e8f0;font-weight:700}.vehicle-edit-input:is(textarea){resize:vertical;min-height:6rem}.vehicle-edit-hint{color:#64748b;margin:.28rem 0 0;font-size:.68rem;font-weight:800}.vehicle-edit-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:.45rem;margin:.75rem 0 0;padding:.55rem .7rem;font-size:.72rem;font-weight:800}.vehicle-edit-footer{background:#f8fafc;border-top:1px solid #e2e8f0;flex:none;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.vehicle-edit-footer button{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.5rem;min-height:2.4rem;padding:0 1.25rem;font-size:.78rem;font-weight:800;transition:background .2s,border-color .2s,transform .2s}.vehicle-edit-footer button:hover{background:#f1f5f9;border-color:#94a3b8}.vehicle-edit-footer button.primary{color:#fff;background:#10b981;border-color:#059669;box-shadow:0 8px 16px #10b98133}.vehicle-edit-footer button.primary:hover{background:#059669;transform:translateY(-1px)}.vehicle-edit-footer button:focus-visible{outline-offset:2px;outline:2px solid #10b981}.vehicle-edit-footer button:disabled{opacity:.55;cursor:wait;transform:none}.vehicle-edit-footer .vehicle-edit-delete,.dialog-backdrop>form.vehicle-preview>footer .vehicle-edit-delete{margin-right:auto}.dialog-backdrop>form.vehicle-preview{border-radius:.5rem;flex-direction:column;width:min(55rem,100%);animation:.2s ease-out vehicle-edit-zoom;display:flex;overflow:hidden}.dialog-backdrop>form.vehicle-preview>header{background:#10b981;border-bottom-color:#059669;flex:none;padding:1.25rem 1.5rem}.dialog-backdrop>form.vehicle-preview>header small{color:#d1fae5}.dialog-backdrop>form.vehicle-preview>header button:disabled{opacity:.5;cursor:wait}.dialog-backdrop>form.vehicle-preview>.preview-sections{background:#f8fafc;flex:auto;min-height:0;padding:1.5rem;display:block;overflow:auto}.dialog-backdrop>form.vehicle-preview>.preview-sections>section+section{margin-top:1rem}.dialog-backdrop>form.vehicle-preview>.preview-sections>section{background:#fff;padding:.85rem}.dialog-backdrop>form.vehicle-preview>footer{background:#f8fafc;flex:none;gap:.75rem;padding:1rem 1.5rem}.dialog-backdrop>form.vehicle-preview>footer button{background:#10b981;border:1px solid #059669;border-radius:.5rem;min-height:2.4rem;padding:0 1.25rem;font-size:.78rem;font-weight:800;box-shadow:0 8px 16px #10b98133}.dialog-backdrop>form.vehicle-preview>footer button:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.dialog-backdrop>form.vehicle-preview>footer button.secondary{color:#475569;box-shadow:none;background:#fff;border-color:#cbd5e1}.dialog-backdrop>form.vehicle-preview>footer button.secondary:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8;transform:none}.dialog-backdrop>form.vehicle-preview>footer button:focus-visible{outline-offset:2px;outline:2px solid #10b981}.dialog-backdrop>form.vehicle-preview>footer button:disabled{opacity:.55;cursor:wait;transform:none}.vehicle-card-edit,.card-edit{color:#0369a1;cursor:pointer;background:#f0f9ff;border:1px solid #bae6fd;border-radius:.45rem;justify-content:center;align-items:center;gap:.35rem;min-height:2.75rem;padding:0 .75rem;font-size:.7rem;font-weight:900;display:inline-flex}.vehicle-card-edit:hover,.card-edit:hover{background:#e0f2fe;border-color:#7dd3fc}.vehicle-card-edit:focus-visible,.card-edit:focus-visible{outline-offset:2px;outline:2px solid #38bdf8}@keyframes vehicle-edit-zoom{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.page{background:radial-gradient(circle at top,#fff 0,#f5f6f8 55%);place-items:center;min-height:100vh;padding:24px;display:grid}.card{background:#fff;border:1px solid #e4e7ec;border-radius:20px;width:min(100%,620px);padding:clamp(28px,5vw,52px);box-shadow:0 18px 50px #151d2c17}.eyebrow{color:#a20c26;letter-spacing:.13em;text-transform:uppercase;margin:0 0 10px;font-size:.78rem;font-weight:800}.page .card h1{margin:0 0 14px;font-size:clamp(2rem,5vw,3rem);line-height:1.05}.page .card p{color:#556070;line-height:1.65}.page .card dl{border-top:1px solid #eceef2;margin:28px 0;padding:0}.page .card dl div{border-bottom:1px solid #eceef2;grid-template-columns:140px 1fr;gap:16px;padding:14px 0;display:grid}.page .card dt{color:#687386}.page .card dd{overflow-wrap:anywhere;margin:0;font-weight:700}.button{color:#fff;cursor:pointer;background:#a20c26;border:0;border-radius:10px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-weight:750;text-decoration:none;display:inline-flex}.secondary{color:#283244;background:#eef0f4}.spinner{border:3px solid #eceef2;border-top-color:#a20c26;border-radius:50%;width:34px;height:34px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=680px){.app-header{min-height:76px;padding:.85rem 1rem}.brand{gap:.65rem}.brand-icon{width:2.5rem;height:2.5rem}.brand-icon img{width:1.65rem;height:1.65rem}.brand strong{font-size:1rem}.brand small{font-size:.65rem}.user-trigger{grid-template-columns:2rem .8rem;gap:.4rem;min-width:auto}.user-trigger-copy{display:none}.workspace{padding:.75rem}.user-access-columns{grid-template-columns:1fr}.fleet-heading p{display:none}.mpa-module-tabs{flex-direction:column}.mpa-module-card{scroll-snap-align:start;min-width:14rem;min-height:4.35rem}.mpa-module-card:not(.active){display:none}.fleet-toolbar{flex-wrap:wrap;align-items:stretch}.fleet-search{min-width:100%}.fleet-filter-button{flex:1;justify-content:center}.fleet-top-actions .fleet-add-button{min-height:2.75rem}.fleet-inline-filter{flex:calc(50% - .25rem)}.fleet-quick-filters{width:100%;overflow-x:auto}.fleet-quick-filters button{min-width:fit-content}.vehicle-filter-grid{grid-template-columns:1fr}.vehicle-table-wrap{display:none}.vehicle-cards{gap:.6rem;display:grid}.vehicle-cards article{background:#fff;border:1px solid #e2e8f0;border-radius:.7rem;padding:.75rem;box-shadow:0 2px 8px #0f172a0d}.vehicle-cards article>header{justify-content:space-between;align-items:flex-start;gap:.6rem;display:flex}.vehicle-cards article>header button,.vehicle-cards article>header strong,.vehicle-cards article>header small{display:block}.vehicle-cards article>header button{color:#be123c;background:0 0;border:0;padding:0;font-size:.9rem;font-weight:900}.vehicle-cards article>header strong{color:#1e293b;margin-top:.15rem;font-size:.72rem}.vehicle-cards article>header small{color:#64748b;margin-top:.12rem;font-size:.62rem}.card-expiry{color:#166534;background:#f0fdf4;border-radius:.4rem;margin:.55rem 0;padding:.4rem .5rem;font-size:.62rem;font-weight:800}.card-expiry[data-state=expired]{color:#991b1b;background:#fef2f2}.card-expiry[data-state=soon]{color:#92400e;background:#fffbeb}.vehicle-cards details{color:#475569;margin:.5rem 0;font-size:.62rem}.vehicle-cards summary{cursor:pointer;align-items:center;min-height:2.75rem;font-weight:800;display:flex}.vehicle-cards dl div{border-bottom:1px solid #e2e8f0;grid-template-columns:6rem 1fr;padding:.25rem 0}.card-detail{width:100%;min-height:2.75rem}.fleet-pagination{padding:.85rem}.fleet-page-buttons{width:100%}.fleet-page-buttons button{min-height:2.75rem}.fleet-pagination-summary{flex-direction:column;align-items:flex-start}.dialog-backdrop,.vehicle-edit-backdrop{align-items:stretch;padding:0}.vehicle-preview,.vehicle-edit-dialog{border-radius:0;width:100%;max-height:100vh}.vehicle-edit-header,.vehicle-edit-body{padding:1rem}.vehicle-edit-footer{padding:.75rem 1rem}.vehicle-edit-grid,.vehicle-edit-grid.cols-3,.vehicle-edit-grid.cols-4{grid-template-columns:1fr}.vehicle-edit-field.full{grid-column:auto}.vehicle-edit-footer button{flex:1;min-height:2.75rem}.dialog-backdrop>form.vehicle-preview>header,.dialog-backdrop>form.vehicle-preview>.preview-sections{padding:1rem}.dialog-backdrop>form.vehicle-preview>footer{padding:.75rem 1rem}.dialog-backdrop>form.vehicle-preview>footer button{flex:1;min-height:2.75rem}.vehicle-edit-footer,.dialog-backdrop>form.vehicle-preview>footer{flex-wrap:wrap}.vehicle-cards .vehicle-delete-button{width:100%;min-height:2.75rem}.vehicle-edit-footer .vehicle-edit-delete,.dialog-backdrop>form.vehicle-preview>footer .vehicle-edit-delete{flex:1 0 100%;width:100%;margin-right:0}.vehicle-card-edit,.card-edit{width:100%}.preview-sections{grid-template-columns:1fr}.vehicle-preview dl div{grid-template-columns:7rem minmax(0,1fr)}}@media (width>=681px) and (width<=1100px){.user-access-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1280px) and (width>=681px){.fleet-toolbar{flex-wrap:wrap}.fleet-search{flex-basis:28rem}.fleet-inline-filter{flex:8rem}.fleet-quick-filters{margin-left:auto}}@media (width<=540px){.page .card dl div{grid-template-columns:1fr;gap:4px}}@media (prefers-reduced-motion:reduce){.vehicle-edit-dialog{animation:none}.cell-edit-button,.vehicle-edit-action,.vehicle-card-edit,.card-edit,.fleet-add-button,.vehicle-delete-button,.vehicle-edit-delete{transition:none}}
