/* fleet-tools.css — renewals, fuel card import, IFTA and telematics (2.7). */

/* Dashboard strip: expired · 30 · 60 · 90 */
.renewstrip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-bottom: 1px solid var(--border-subtle); }
.renewstrip a { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 12px 6px; color: var(--ink); text-decoration: none; border-right: 1px solid var(--border-subtle); }
.renewstrip a:last-child { border-right: 0; }
.renewstrip a:hover { background: var(--surface-inset); }
.renewstrip b { font-size: 22px; font-weight: var(--fw-bold); font-variant-numeric: tabular-nums; line-height: 1.1; }
.renewstrip span { font-size: var(--fs-xs); color: var(--muted); text-transform: uppercase; letter-spacing: .04em; }
.renewstrip a[data-tone="danger"] b { color: var(--danger); }
.renewstrip a[data-tone="warning"] b { color: var(--warning); }
.renewstrip a[data-tone="accent"] b { color: var(--accent); }
.renewstrip a[data-tone="info"] b { color: var(--info); }

.renewgroup[data-tone="danger"] .card { border-left: 3px solid var(--danger); }
.renewgroup[data-tone="warning"] .card { border-left: 3px solid var(--warning); }

/* Fuel card import */
.fcdrop { border: 2px dashed var(--border-strong); border-radius: var(--r-lg); padding: 28px 20px; text-align: center; background: var(--surface-inset); transition: border-color var(--t-fast), background var(--t-fast); }
.fcdrop.is-over { border-color: var(--accent); background: var(--accent-soft); }
.fcdrop__title { font-size: var(--fs-lg); font-weight: var(--fw-semi); margin: 8px 0 4px; }
.fcdrop__actions { display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; margin-top: 14px; }
.fcmap { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 10px 14px; }
.fcmap .field { margin: 0; }
.fcrow--skip td { color: var(--faint); }
.fcrow--skip td .badge { opacity: 1; }
.fccards { display: grid; gap: 8px; }
.fccard { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: 10px; align-items: center; padding: 10px 12px; border: 1px solid var(--border); border-radius: var(--r-md); background: var(--surface); }
@media (max-width: 700px) { .fccard { grid-template-columns: minmax(0, 1fr); } }

/* IFTA */
.ifta-head { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.ifta-table td.num, .ifta-table th.num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ifta-table tfoot td { font-weight: var(--fw-semi); border-top: 2px solid var(--border-strong); }
.ifta-rate { width: 92px; text-align: right; padding: 4px 6px; height: 30px; }
.ifta-due { font-weight: var(--fw-semi); }
.ifta-due.is-credit { color: var(--success); }
.ifta-due.is-owing { color: var(--danger); }
.segrows { display: grid; gap: 6px; }
.segrow { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) auto; gap: 8px; align-items: center; }
.segtotal { display: flex; justify-content: space-between; font-size: var(--fs-sm); color: var(--muted); padding-top: 6px; }
.segtotal.is-off { color: var(--warning); }
.jurchips { display: flex; flex-wrap: wrap; gap: 4px; }

/* Telematics */
.telestatus { display: flex; gap: 14px; align-items: center; padding: 14px; border-radius: var(--r-lg); background: var(--surface-inset); border: 1px solid var(--border); }
.telestatus__dot { width: 12px; height: 12px; border-radius: 50%; background: var(--faint); flex: none; }
.telestatus[data-state="on"] .telestatus__dot { background: var(--success); box-shadow: 0 0 0 4px var(--success-soft); }
.telestatus[data-state="demo"] .telestatus__dot { background: var(--purple); box-shadow: 0 0 0 4px var(--purple-soft); }
.telestatus[data-state="expired"] .telestatus__dot { background: var(--warning); box-shadow: 0 0 0 4px var(--warning-soft); }
.demo-flag { display: inline-flex; align-items: center; gap: 6px; padding: 3px 9px; border-radius: 999px; background: var(--purple-soft); color: var(--purple-ink); font-size: var(--fs-xs); font-weight: var(--fw-semi); }
.segtotal { margin-bottom: 12px; }
.ifta-table th { white-space: normal; min-width: 0; vertical-align: bottom; line-height: 1.25; }
.ifta-table td, .ifta-table th { padding-left: 10px; padding-right: 10px; }
.ifta-table td:first-child { min-width: 150px; }
@media print { .ifta-rate { border: 0; background: none; width: auto; } }

/* ---- FleetNord brand ---------------------------------------------------- */
.brandmark { display: inline-block; height: auto; max-width: 100%; vertical-align: middle; }
.brandmark--dark { display: none; }
[data-theme="dark"] .brandmark--light { display: none; }
[data-theme="dark"] .brandmark--dark { display: inline-block; }
.brandmark--ondark .brandmark--light, .sidebar .brandmark--light { display: none !important; }
.brandmark--ondark .brandmark--dark, .sidebar .brandmark--dark { display: inline-block !important; }
.boot__logo { animation: bootPulse 1.6s var(--ease) infinite; }
.boot__logo .brandmark { width: 240px; }
.sidebar__product { display: block; line-height: 0; margin-bottom: 3px; }
.sidebar__product .brandmark { height: 22px; width: auto; }
.sidebar__name--co { font-size: var(--fs-xs); font-weight: var(--fw-medium); color: var(--sidebar-ink); opacity: .85; }
.sidebar__logo:has(svg) { background: transparent; }
.sidebar__logo svg { width: 30px; height: 30px; }
.appfoot__brand .brandmark { height: 16px; width: auto; }
.signin__brand { margin: 0 auto 18px; }
.signin__brand .brandmark { width: 220px; }
.docbrand { display: inline-flex; align-items: center; gap: 6px; }
.docbrand .brandmark { height: 13px; width: auto; }
.showcase__brand { margin-bottom: 10px; }
.showcase__brand .brandmark { height: 40px; width: auto; }
@media print { .brandmark--light { display: inline-block !important; } .brandmark--dark { display: none !important; } }
