@font-face{font-family:"Maven Pro";font-style:normal;font-weight:400 900;font-display:swap;src:url("../fonts/maven-pro-latin.woff2") format("woff2")}
:root{--rota-blue:#1e355f;--rota-cyan:#247f86;--rota-lime:#c8f66a;--bg:#f3f5f7;--card:#fff;--border:#dfe5eb;--text:#26364c;--muted:#627083;--soft:#f6f8fa;--shadow:0 4px 18px #1e355f06;--bs-primary:#1e355f;--bs-primary-rgb:30,53,95;--bs-body-font-family:"Maven Pro","Segoe UI",Arial,sans-serif;--bs-body-color:var(--text);--bs-border-color:var(--border)}
html[data-theme="dark"]{color-scheme:dark;--bg:#0d1624;--card:#162132;--border:#2d3e55;--text:#edf2f8;--muted:#a4b3c8;--soft:#1b2a3d;--rota-blue:#a9c9ff;--rota-cyan:#55cbd0;--shadow:0 4px 18px #0002;--bs-body-bg:var(--bg);--bs-body-color:var(--text);--bs-secondary-color:var(--muted)}
body.app-body{background:var(--bg);font-family:var(--bs-body-font-family);font-size:14px;color:var(--text);-webkit-font-smoothing:antialiased}
body,button,input,select,textarea{font-family:var(--bs-body-font-family)}
a{color:var(--rota-blue)}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid var(--rota-cyan);outline-offset:3px}::selection{background:#c8f66a;color:#1e355f}
.skip-link{position:fixed;top:-100px;left:16px;background:var(--rota-lime);color:#1e355f;padding:12px;z-index:2000}.skip-link:focus{top:12px}
.container-fluid.service-main{max-width:1600px;padding:32px;min-height:calc(100vh - 210px)}
.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.eyebrow{display:block;font-size:10px;letter-spacing:.14em;font-weight:750;color:var(--rota-cyan);margin-bottom:10px}.page-heading h1{font-size:30px;letter-spacing:-.035em;font-weight:750;line-height:1.2;color:var(--rota-blue);margin:0 0 9px}.page-heading p{font-size:14px;color:var(--muted);margin:0}.page-heading .btn{flex-shrink:0}
.btn{font-size:13px;font-weight:650;border-radius:8px;padding:10px 16px;box-shadow:none}.btn-sm{padding:7px 11px;font-size:12px}.btn-primary{--bs-btn-bg:#1e355f;--bs-btn-border-color:#1e355f;--bs-btn-hover-bg:#152849;--bs-btn-hover-border-color:#152849;--bs-btn-active-bg:#152849;--bs-btn-active-border-color:#152849}.btn-outline-primary{--bs-btn-color:var(--rota-blue);--bs-btn-border-color:var(--border);--bs-btn-hover-bg:#1e355f;--bs-btn-hover-border-color:#1e355f;--bs-btn-active-bg:#1e355f}.btn-outline-secondary{--bs-btn-color:var(--muted);--bs-btn-border-color:var(--border)}
.card,.modal-content{border-radius:12px;background:var(--card);color:var(--text);border:1px solid var(--border)}.card-header{padding:17px 20px;background:var(--card);font-weight:700;color:var(--rota-blue);font-size:14px;border-color:var(--border)}.card-body{padding:20px}.card-header h2{font-size:15px;font-weight:700;margin:0}.modal-header,.modal-footer{border-color:var(--border)}.modal-title{font-size:20px;color:var(--rota-blue);font-weight:750}
.form-label{font-size:12px;font-weight:650;color:var(--text)}.form-control,.form-select{font-size:14px;border-radius:8px;background-color:var(--card);color:var(--text);border-color:var(--border);min-height:42px}.form-control:focus,.form-select:focus{background-color:var(--card);color:var(--text);border-color:var(--rota-cyan);box-shadow:0 0 0 3px #2ea7ad22}.form-control::placeholder{color:var(--muted)}.form-control:disabled,.form-select:disabled,.input-group-text{background:var(--soft);color:var(--muted);border-color:var(--border)}.form-text,.text-muted{color:var(--muted)!important}.form-check-input:checked{background-color:#247f86;border-color:#247f86}
.kpi-strip{background:transparent;border:0;box-shadow:none;padding:0;gap:14px;margin-bottom:10px}.kpi-chip{background:var(--card);padding:18px 22px;min-width:145px;border-radius:10px;border-left-width:3px}.kpi-label{font-size:10px;letter-spacing:.07em}.kpi-value{color:var(--rota-blue);font-size:29px;font-weight:750;margin-top:7px}.kpi-chip.kpi-warn{border-left-color:#d49a21}.kpi-chip.kpi-danger{border-left-color:#d65353}
.table{--bs-table-bg:transparent;--bs-table-color:var(--text);--bs-table-border-color:var(--border);font-size:13px}.table>:not(caption)>*>*{padding:14px 16px}.rota-table thead th{background:var(--soft);font-weight:650;font-size:10px;letter-spacing:.045em}.row-title{font-weight:700}.row-sub{font-size:12px}.type-card{background:var(--card);border-left-width:3px}.type-count{font-size:23px;font-weight:750}
.permanent-service{margin:14px 14px 4px;padding:14px;display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-left:3px solid var(--rota-lime);border-radius:9px;text-decoration:none;color:var(--text);background:var(--soft)}.permanent-service:hover{border-color:var(--rota-cyan)}.permanent-service strong{display:block;font-size:14px}.permanent-service small{display:block;font-size:11px;color:var(--muted);margin-top:3px}.service-icon{width:34px;height:38px;display:grid;place-items:center;color:var(--rota-cyan);font-size:20px}.permanent-badge{font-size:9px;font-weight:700;letter-spacing:.04em;color:#1e355f;background:var(--rota-lime);border-radius:5px;padding:4px 6px;margin-left:auto}.section-label{padding:16px 16px 0;text-transform:uppercase;letter-spacing:.09em;font-size:10px;color:var(--muted)}
.summary-chip,.record-panel,.link-form-shell,.detail-section{background:var(--card)}.selected-maintenance,.current-meter-box,.detail-section-title,.record-open-links .form-check{background:var(--soft)}.status-pill{font-size:11px;font-weight:650}.report-summary{gap:14px}.summary-chip{padding:17px 20px;flex:1}.summary-chip strong{font-size:25px;font-weight:750;color:var(--rota-blue);margin-top:8px}.summary-chip span{font-size:10px}.summary-chip small{font-size:11px;color:var(--muted)}
.service-footer{max-width:1600px;margin:auto;display:flex;justify-content:space-between;gap:16px;padding:24px 32px;color:var(--muted);font-size:11px}.service-footer span:first-child{font-weight:650}
.fuel-filter{display:grid;grid-template-columns:1fr 1fr 2fr auto;align-items:end;gap:16px}.fuel-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.fuel-summary .summary-chip{min-width:0;border-top:3px solid var(--rota-cyan);box-shadow:var(--shadow)}.fuel-summary .summary-chip:first-child{border-top-color:var(--rota-lime)}.fuel-summary strong{font-variant-numeric:tabular-nums}.fuel-note{color:var(--muted);font-size:12px;line-height:1.65}.fuel-method{border:1px solid var(--border);border-left:3px solid var(--rota-cyan);background:var(--soft);border-radius:8px;padding:16px 18px;margin:18px 0 24px}.fuel-method summary{font-size:12px;font-weight:650;color:var(--rota-blue);cursor:pointer}.fuel-method p{margin:10px 0 0}.fuel-meter{background:var(--soft);border:1px solid var(--border);border-radius:9px;padding:14px 16px;font-size:12px;color:var(--muted);line-height:1.7;min-height:68px}.fuel-meter strong{color:var(--rota-blue)}.fuel-price{padding:12px 16px;display:flex;align-items:center;justify-content:space-between;background:var(--soft);border-radius:8px;color:var(--muted);font-size:12px}.fuel-price strong{color:var(--rota-blue);font-size:19px}.fuel-table td:nth-child(n+2){font-variant-numeric:tabular-nums}.fuel-empty{padding:44px 20px!important;text-align:center;color:var(--muted)!important}.fuel-empty i{font-size:24px;color:var(--rota-cyan);display:block;margin-bottom:12px}.fuel-empty strong{display:block;color:var(--rota-blue);font-size:15px;margin-bottom:5px}.fuel-empty p{margin:0;font-size:12px}.fuel-feedback{border-radius:9px}.fuel-tank{font-size:10px;padding:3px 6px;border-radius:4px;background:var(--soft);color:var(--muted)}.fuel-tank-full{background:#e8f3d6;color:#385d17}.fuel-actions{white-space:nowrap}.fuel-form-help{padding-left:26px;color:var(--muted);font-size:12px;margin-bottom:0}.filter-loading{opacity:.6;pointer-events:none}
.select2-container{max-width:100%}.select2-container--default .select2-selection--single{height:42px;border:1px solid var(--border);border-radius:8px;background:var(--card)}.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:40px;color:var(--text);padding-left:12px;font-size:14px}.select2-container--default .select2-selection--single .select2-selection__arrow{height:40px}.select2-dropdown,.select2-container--default .select2-selection--multiple,.select2-container--default .select2-search--dropdown .select2-search__field{background:var(--card);color:var(--text);border-color:var(--border)}.select2-container--default .select2-results__option--selected{background:var(--soft)}.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background:#1e355f;color:white}.select2-container--default.select2-container--disabled .select2-selection--single{background:var(--soft)}
body.app-body.login-page{display:block;background:#fff;padding:0;min-height:100vh;color:#151728}.login-page .service-login-brand strong{font-size:.60em;letter-spacing:.055em}.login-page .login-footer{margin:0}.login-page .field label{display:block}.login-page .login-form input{color-scheme:light}.login-page .login-form-wrap p{line-height:1.6}.login-page .login-access-help{margin-bottom:0}
html[data-theme="dark"] .maintenance-progress-bar{background:var(--border)}html[data-theme="dark"] .kpi-chip.kpi-active{box-shadow:0 0 0 2px #a9c9ff44;border-color:#a9c9ff88}html[data-theme="dark"] .status-ok{color:#90e9b1;background:#163b32}html[data-theme="dark"] .status-warning{color:#ffe09b;background:#433821}html[data-theme="dark"] .status-overdue{color:#ffb3b3;background:#472832}
@media(min-width:1600px){.service-main{padding-top:40px!important}}
@media(max-width:1000px){.container-fluid.service-main{padding:26px 24px}.fuel-filter{grid-template-columns:1fr 1fr}.fuel-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.page-heading{align-items:flex-start}.permanent-service{flex-wrap:wrap}}
@media(max-width:600px){.container-fluid.service-main{padding:24px 16px}.page-heading{flex-direction:column;gap:18px;margin-bottom:24px}.page-heading h1{font-size:26px}.page-heading p{font-size:13px}.page-heading .btn{width:100%}.kpi-chip{min-width:calc(50% - 7px);flex:1}.kpi-strip>.ms-auto{width:100%;margin:4px 0!important}.fuel-filter{gap:12px}.fuel-filter .fuel-vehicle-filter{grid-column:1/-1}.fuel-filter button{grid-column:1/-1}.fuel-summary{gap:10px;margin:18px 0}.summary-chip{padding:14px}.summary-chip strong{font-size:22px}.summary-chip span{font-size:9px;letter-spacing:0}.summary-chip small{font-size:10px}.card-body{padding:16px}.card-header{padding:15px 16px;gap:12px;flex-wrap:wrap}.service-footer{padding:20px 16px;flex-direction:column;gap:5px}.table>:not(caption)>*>*{padding:12px}.fuel-method{padding:14px}.modal-body{padding:16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}

/* Navigation shared with the Rota applications: fixed sidebar and compact mode. */
.fuel-filter{grid-template-columns:1fr 1fr 1.4fr 1.3fr auto}
.fuel-invoice-panel,.fuel-option-panel{padding:16px;border:1px solid var(--border);border-radius:9px;background:var(--soft)}
.fuel-invoice-panel h3,.fuel-option-panel h3{font-size:13px;font-weight:700;margin:0 0 12px;color:var(--rota-blue)}
.fuel-option-panel summary{font-size:13px;font-weight:700;cursor:pointer;color:var(--rota-blue)}
.fuel-reference-editor{padding:14px;border:1px solid var(--border);border-left:3px solid var(--rota-cyan);border-radius:8px;background:var(--card)}
.fuel-reference-editor #fuelLocationDetails{padding:0;border:0;background:transparent}
.fuel-reference-editor #fuelLocationDetails>summary{display:none}
#fuelAddressResults:empty{display:none}
#fuelAddressResults .list-group-item{font-size:13px;background:var(--card);color:var(--text);border-color:var(--border);overflow-wrap:anywhere}
#fuelAddressResults .list-group-item:hover,#fuelAddressResults .list-group-item:focus{background:var(--soft)}
.fuel-map{height:310px;border:1px solid var(--border);border-radius:8px;background:var(--card)}
.fuel-map .leaflet-control{color:#26364c}.fuel-option-panel .form-check-label{font-size:12px}
.fuel-invoice-panel input[type=file]{font-size:12px}.fuel-invoice-panel .form-control::file-selector-button{background:var(--card);color:var(--rota-blue)}
.fuel-option-panel input[readonly]{background:var(--bg);color:var(--muted)}
@media(max-width:1250px){.fuel-filter{grid-template-columns:1fr 1fr}.fuel-filter .fuel-vehicle-filter{grid-column:auto}.fuel-filter button{grid-column:1/-1}}
@media(max-width:600px){.fuel-filter .fuel-vehicle-filter,.fuel-filter>div:has(#fuelFilterType){grid-column:1/-1}.fuel-map{height:260px}.fuel-option-panel,.fuel-invoice-panel{padding:13px}}
:root{--sidebar-width:240px;--sidebar-bg:#fff;--sidebar-text:#425168;--sidebar-muted:#708095;--sidebar-border:#e4e9ef;--sidebar-hover:#f1f5f9;--sidebar-brand:#1e355f}
.service-sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);height:100dvh;z-index:1040;display:flex;flex-direction:column;background:var(--sidebar-bg);color:var(--sidebar-text);border-right:1px solid var(--sidebar-border);transition:width .18s}
.sidebar-brand{display:flex;align-items:center;gap:8px;padding:24px 16px;min-height:94px;border-bottom:1px solid var(--sidebar-border)}
.sidebar-brand-link{display:flex;align-items:center;gap:10px;min-width:0;color:var(--sidebar-brand);text-decoration:none;flex:1}.sidebar-brand-link:hover{color:var(--rota-cyan)}.sidebar-brand-link img{object-fit:contain;flex-shrink:0}.sidebar-brand-link strong{display:block;font-size:19px;line-height:1.3}.sidebar-brand-link small{display:block;font-size:9px;letter-spacing:.1em;color:var(--sidebar-muted);white-space:nowrap;margin-top:4px}
.sidebar-toggle{display:grid;place-items:center;width:26px;height:30px;flex-shrink:0;background:transparent;color:var(--sidebar-muted);border:0;border-radius:6px}.sidebar-toggle:hover{background:var(--sidebar-hover);color:var(--sidebar-brand)}
.sidebar-nav{padding:26px 12px;flex:1;overflow-y:auto}.sidebar-section{display:block;font-size:9px;letter-spacing:.14em;color:var(--sidebar-muted);margin:0 12px 12px;font-weight:700}
.sidebar-link{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:12px;margin-bottom:5px;border:1px solid transparent;border-radius:8px;color:var(--sidebar-text);background:transparent;text-decoration:none;font-size:13px;font-weight:600;white-space:nowrap;text-align:left}.sidebar-link i{width:19px;flex-shrink:0;text-align:center;font-size:16px}.sidebar-link:hover{background:var(--sidebar-hover);color:var(--sidebar-brand)}.sidebar-link.active{background:#c8f66a;color:#1e355f;font-weight:750}
.sidebar-footer{padding:14px 12px 20px;border-top:1px solid var(--sidebar-border)}.sidebar-account{font-size:11px;color:var(--sidebar-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:10px 13px 0}
.service-workspace{margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width));transition:width .18s,margin-left .18s}.container-fluid.service-main{min-height:calc(100vh - 68px)}
html[data-sidebar=collapsed]{--sidebar-width:72px}html[data-sidebar=collapsed] .service-sidebar .sidebar-label{display:none}html[data-sidebar=collapsed] .sidebar-brand{flex-direction:column;padding:18px 8px;gap:10px}html[data-sidebar=collapsed] .sidebar-nav,html[data-sidebar=collapsed] .sidebar-footer{padding-inline:9px}html[data-sidebar=collapsed] .sidebar-link{justify-content:center;padding-inline:8px}
.mobile-menu{display:none}.sidebar-backdrop{position:fixed;inset:0;z-index:1035;background:#07112199}html[data-theme=dark]{--sidebar-bg:#142238;--sidebar-text:#d2dfef;--sidebar-muted:#a6bdd5;--sidebar-border:#2d3e55;--sidebar-hover:#203149;--sidebar-brand:#edf2f8}
@media(max-width:1200px) and (min-width:801px){.page-heading{flex-wrap:wrap}.page-heading h1{font-size:28px}.fuel-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){:root,html[data-sidebar=collapsed]{--sidebar-width:240px}.service-sidebar{transform:translateX(-100%);transition:transform .18s}.sidebar-open .service-sidebar{transform:translateX(0)}.sidebar-open body{overflow:hidden}.service-workspace{width:100%;margin-left:0;padding-top:56px}.mobile-menu{position:fixed;inset:0 0 auto;z-index:1030;display:flex;align-items:center;gap:14px;height:56px;padding:0 20px;border:0;border-bottom:1px solid var(--sidebar-border);background:var(--sidebar-bg);color:var(--sidebar-brand);text-align:left;font-weight:700}.container-fluid.service-main{min-height:calc(100vh - 144px)}html[data-sidebar=collapsed] .service-sidebar .sidebar-label{display:revert}html[data-sidebar=collapsed] .sidebar-brand{flex-direction:row;padding:24px 16px;gap:8px}html[data-sidebar=collapsed] .sidebar-link{justify-content:flex-start;padding:12px}html[data-sidebar=collapsed] .sidebar-nav,html[data-sidebar=collapsed] .sidebar-footer{padding-inline:12px}}
