/* ==========================================================================
   mbds.lt — bendrinamas stilius (design system)

   Vienas failas visiems įrankiams. Kiekvienas puslapis jį įkelia:
       <link rel="stylesheet" href="app.css">
   ir savo <style> bloke palieka TIK tam puslapiui būdingas taisykles
   (dokumento A4 lapas, skaičiuoklės hero, prisijungimo kortelė ir pan.).

   Aprašas: STYLEGUIDE.md
   Turinys:
     1. Šriftas
     2. Ženklai (tokens) — šviesi + tamsi tema
     3. Bazė
     4. Viršutinė juosta (app-bar)
     5. Mygtukai
     6. Formos
     7. Kortelės ir sekcijos
     8. Lentelė (parkas / baudos)
     9. Modalai
    10. Pranešimai
    11. Ženkleliai (badges)
    12. Pagalbinės klasės
    13. Prieinamumas + spausdinimas
   ========================================================================== */

/* ---------- 1. Šriftas ---------- */
@font-face{
  font-family:"Inter";
  src:url("fonts/InterVariable.woff2") format("woff2");
  font-weight:100 900;
  font-style:normal;
  font-display:swap;
}

/* ---------- 2. Ženklai (tokens) ---------- */
:root{
  color-scheme:light;

  /* paviršiai */
  --bg:#EBEDF1;
  --bg-blur:rgba(235,237,241,.86);   /* lipni juosta virš turinio */
  --surface:#FFFFFF;                  /* kortelės, modalai */
  --surface-2:#F7F8FA;                /* lentelės antraštė, eilutės hover */
  --surface-3:#EEF0F2;                /* neaktyvūs laukai, ženkleliai */
  --field:#FFFFFF;                    /* įvesties laukų fonas */

  /* tekstas + linijos */
  --ink:#171E27;
  --muted:#5B6675;
  --faint:#8B94A1;
  --line:#E4E8ED;
  --line-strong:#CAD1DA;

  /* firminė žalia */
  --green:#0C5E3F;
  --green-2:#0F7048;
  --green-deep:#0C5E3F;
  --green-deep-2:#0F7048;
  --on-green:#FFFFFF;                 /* tekstas ant TAMSIAI žalio (hero gradientas) */
  --on-accent:#FFFFFF;                /* tekstas ant --green (mygtukas, aktyvi nav piliulė) */
  --green-wash:rgba(12,94,63,.08);    /* nav hover, ghost hover */
  --green-wash-soft:rgba(12,94,63,.06);
  --ring:rgba(12,94,63,.28);          /* fokuso žiedas */

  /* būsenos */
  --req:#C0392B;  --req-bg:#FDF3F2;  --req-line:#F0D7D3;   /* klaida / privaloma */
  --amber:#8A5B00; --amber-bg:#FFF6E6; --amber-line:#F0DCB0; /* įspėjimas */
  --ok:#0C5E3F;   --ok-bg:#EBF4EF;   --ok-line:#CBE5D8;    /* gerai */
  --red:#B04638;                                            /* neigiami skaičiai */

  /* forma */
  --radius:13px;      /* kortelės, modalai */
  --radius-md:10px;   /* mygtukai */
  --radius-sm:9px;    /* įvesties laukai */
  --radius-pill:999px;
  --shadow:0 1px 2px rgba(16,24,32,.04), 0 10px 28px -14px rgba(16,24,32,.14);
  --shadow-dlg:0 24px 60px -20px rgba(16,24,32,.5);
  --scrim:rgba(10,14,18,.45);

  /* šriftai */
  --font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --font-mono:ui-monospace,"SF Mono",SFMono-Regular,"Cascadia Code","Roboto Mono",Menlo,Consolas,monospace;
  --font:var(--font-sans);  /* senas index.html pavadinimas */
}

/* Tamsi tema sąmoningai nenaudojama — sistemos nustatymas ignoruojamas
   (color-scheme:light aukščiau), puslapis visada šviesus. */

/* ---------- 3. Bazė ---------- */
*{box-sizing:border-box;}
body{
  margin:0 auto; max-width:2560px;
  background:var(--bg); color:var(--ink);
  font-family:var(--font-sans); font-size:15px; line-height:1.5;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}

/* pagrindinis turinio rėmas; puslapiai gali persirašyti (grid ir pan.) */
.wrap{max-width:none; padding:20px 20px 56px;}
@media(max-width:560px){ .wrap{padding:16px 16px 44px;} }

/* ---------- 4. Viršutinė juosta (app-bar) ---------- */
.toolbar{
  position:sticky; top:0; z-index:30;
  background:var(--bg-blur); backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
.bar-inner{max-width:none;}
.toolbar .bar-inner{display:flex; align-items:center; gap:14px; flex-wrap:wrap; padding:14px 20px;}
.toolbar .brand{
  font-family:var(--font-mono); font-size:13px; letter-spacing:.1em; text-transform:uppercase;
  color:var(--green); font-weight:700; text-decoration:none; flex:none;
}
.toolbar .brand:hover{filter:brightness(1.1);}
.sp,
.toolbar .sp{flex:1;}
a.back,
.toolbar a.back{font-size:13px; color:var(--muted); text-decoration:none;}
a.back:hover,
.toolbar a.back:hover{color:var(--green);}

.toolbar .nav{display:flex; align-items:center; gap:5px; flex-wrap:wrap; min-width:0;}
.toolbar .nav a{
  font-size:13px; color:var(--muted); text-decoration:none; white-space:nowrap;
  padding:6px 12px; border-radius:var(--radius-pill); line-height:1;
  transition:background .12s, color .12s;
}
.toolbar .nav a:hover{color:var(--green); background:var(--green-wash);}
.toolbar .nav a[aria-current="page"]{color:var(--on-accent); background:var(--green);}

.toolbar .actions{display:flex; align-items:center; gap:8px;}
.toolbar .actions .btn, .toolbar .actions label{flex:none;}
.toolbar .more{display:contents;}
.toolbar .more-toggle{display:none;}

/* kalbos parinkiklis juostoje */
.langsel{display:inline-flex; align-items:center; gap:6px; font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--faint);}
.langsel select{
  font:inherit; font-size:13px; letter-spacing:0; text-transform:none; color:var(--ink);
  padding:8px 9px; border:1px solid var(--line-strong); border-radius:var(--radius-sm);
  background:var(--field); cursor:pointer;
}

@media(max-width:760px){
  .toolbar .bar-inner{flex-wrap:wrap; row-gap:8px;}
  .toolbar .sp{display:none;}
  .toolbar .pinned{order:1; margin-left:auto;}
  .toolbar .more{order:2; display:block; position:relative; margin-left:auto;}
  .toolbar .pinned + .more{margin-left:0;}
  .toolbar .more-toggle{
    display:inline-flex; align-items:center; justify-content:center;
    width:38px; height:38px; padding:0; border-radius:var(--radius-md); flex:none;
    border:1px solid var(--line-strong); background:var(--surface); color:var(--ink);
    font-size:20px; line-height:1; cursor:pointer;
  }
  .toolbar .more-toggle:hover{background:var(--surface-3);}
  .toolbar .more .actions{
    display:none; position:absolute; right:0; top:calc(100% + 8px); flex-direction:column;
    align-items:stretch; gap:2px; background:var(--surface); border:1px solid var(--line);
    border-radius:12px; box-shadow:var(--shadow); padding:6px; min-width:230px; z-index:30;
  }
  .toolbar .more.open .actions{display:flex;}
  .toolbar .more .actions .btn{width:100%; justify-content:flex-start; text-align:left;}
  .toolbar .more .actions .btn.ghost,
  .toolbar .more .actions .btn-ghost{border-color:transparent;}
  .toolbar .more .actions .btn.ghost:hover,
  .toolbar .more .actions .btn-ghost:hover{background:var(--green-wash);}
  .toolbar .more .actions .langsel,
  .toolbar .more .actions .toggle{width:100%; justify-content:space-between; padding:6px 10px;}
  .toolbar .nav{
    order:3; flex:1 1 100%; width:100%;
    flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; -ms-overflow-style:none;
    margin:0 -2px; padding:2px 14px;
    transition:box-shadow .15s;
  }
  .toolbar .nav::-webkit-scrollbar{display:none;}
  .toolbar .nav.can-scroll-left{box-shadow:inset 14px 0 10px -10px rgba(23,30,39,.28);}
  .toolbar .nav.can-scroll-right{box-shadow:inset -14px 0 10px -10px rgba(23,30,39,.28);}
  .toolbar .nav.can-scroll-left.can-scroll-right{box-shadow:inset 14px 0 10px -10px rgba(23,30,39,.28), inset -14px 0 10px -10px rgba(23,30,39,.28);}
}
@media(max-width:560px){
  .toolbar .bar-inner{gap:10px;}
  .toolbar .bar-inner .sp{display:none;}
}

/* juostos po app-bar: konteksto informacija + validacijos įspėjimas */
.summary{font-size:13px; color:var(--muted); background:var(--surface); border-bottom:1px solid var(--line);}
.summary .bar-inner{display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; padding:9px 20px; gap:6px 16px;}
.summary b{color:var(--ink); font-weight:600; font-variant-numeric:tabular-nums;}

/* statistikos grupė (kairėje) — atskyrimas tarp elementų per pseudo-tašką, ne tekstą,
   kad persikėlus į naują eilutę neliktų „nukarusio" skyriklio prieš tekstą */
.summary-stats{display:flex; align-items:center; flex-wrap:wrap; gap:5px 16px;}
.summary-stats span{display:flex; align-items:center; gap:5px;}
.summary-stats span:not(:first-child){position:relative; padding-left:16px;}
.summary-stats span:not(:first-child)::before{
  content:""; position:absolute; left:0; top:50%; width:3px; height:3px;
  border-radius:50%; background:var(--faint); transform:translateY(-50%);
}
/* valdikliai (dešinėje) — pvz. mėnesio pasirinkimas + PDF/trynimo mygtukai */
.summary-controls{display:flex; align-items:center; gap:8px; flex-wrap:wrap;}
.summary-controls .lbl{font-size:12px; color:var(--muted); white-space:nowrap;}
.summary-controls select{width:auto; padding:7px 10px; font-size:13px;}
@media(max-width:560px){
  .summary .bar-inner{flex-direction:column; align-items:stretch; gap:9px;}
  .summary-stats span:not(:first-child){padding-left:0;}
  .summary-stats span:not(:first-child)::before{display:none;}
  .summary-stats{flex-direction:column; align-items:flex-start; gap:3px;}
  .summary-controls{padding-top:9px; border-top:1px dashed var(--line);}
  .summary-controls select{flex:1; min-width:0;}
}
.pdfhint{font-size:12px; color:var(--muted); background:var(--surface); border-bottom:1px solid var(--line);}
.pdfhint .bar-inner, .valwarn .bar-inner{padding:9px 20px;}
.pdfhint b{color:var(--ink); font-weight:600;}
.valwarn{display:none; font-size:12.5px; color:var(--req); background:var(--req-bg); border-bottom:1px solid var(--req-line); font-weight:500;}
.valwarn.show{display:block;}

/* ---------- 5. Mygtukai ---------- */
/* .btn            — pirminis (užpildyta žalia)
   .btn.ghost      — antrinis (permatomas, žalias rėmelis)
   .btn.neutral    — neutralus (pilkas rėmelis, lauko fonas)
   .btn.danger     — pavojingas veiksmas (raudonas rėmelis)
   .btn.sm         — mažas
   :disabled       — neaktyvus                                             */
.btn{
  appearance:none; -webkit-appearance:none;
  display:inline-flex; align-items:center; justify-content:center; gap:6px;
  border:1px solid var(--green); background:var(--green); color:var(--on-accent);
  font:inherit; font-size:14px; font-weight:600; line-height:1.2;
  padding:9px 16px; border-radius:var(--radius-md); cursor:pointer; white-space:nowrap;
  transition:filter .12s, opacity .12s, background .12s, border-color .12s, color .12s;
}
.btn:hover{filter:brightness(1.08);}
.btn:focus-visible{outline:2px solid var(--green); outline-offset:2px;}

.btn.ghost, .btn-ghost{background:transparent; color:var(--green); border-color:var(--green);}
.btn.ghost:hover, .btn-ghost:hover{filter:none; background:var(--green-wash-soft);}

.btn.neutral{background:var(--field); border-color:var(--line-strong); color:var(--ink);}
.btn.neutral:hover{filter:none; border-color:var(--muted); background:var(--field);}

.btn.danger{border-color:var(--req); color:var(--req); background:transparent;}
.btn.danger:hover{background:var(--req-bg); filter:none;}

.btn.has-pan{color:var(--ok); border-color:var(--ok); background:transparent;}
.btn.has-pan:hover{filter:none; background:var(--ok-bg);}

.btn.sm{padding:7px 14px; font-size:13px;}
.btn:disabled{opacity:.45; cursor:not-allowed; filter:none;}

/* tekstinis mygtukas — atrodo kaip nuoroda */
.linkbtn{
  font-family:var(--font-mono); font-size:12px; letter-spacing:.04em; color:var(--green);
  font-weight:600; background:none; border:none; padding:0; cursor:pointer;
  display:inline-flex; align-items:center; gap:6px;
}
.linkbtn:hover{text-decoration:underline;}
.linkbtn:focus-visible{outline:2px solid var(--green); outline-offset:3px; border-radius:3px;}

/* ikoninis „pašalinti" mygtukas archyvo eilutėse */
.arch-del{background:none; border:none; color:var(--faint); font-size:15px; cursor:pointer; padding:2px 6px; border-radius:6px;}
.arch-del:hover{color:var(--req); background:var(--req-bg);}
.arch-del:focus-visible{outline:2px solid var(--green); outline-offset:1px;}

/* ---------- 6. Formos ---------- */
/* Lauko blokas. Trys istoriniai pavadinimai — viena taisyklė. */
.f, .fld, .field{margin-bottom:11px;}
.f:last-child, .fld:last-child, .field:last-child{margin-bottom:0;}
.f > label, .fld > label, .field > label{display:block; font-size:12px; color:var(--muted); margin-bottom:5px;}
.req{color:var(--req); font-weight:700;}
.req-vat{display:none;}
body.is-vat .req-vat{display:inline;}

/* Vienas įvesties laukų apvalkalas visam projektui — taikomas VISIEMS
   teksto tipo valdikliams, kad nereikėtų kartoti to paties skino kiekviename
   puslapyje. Varnelės, radio, failai ir mygtukai — neįtraukiami. */
input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]):not([type=color]):not([type=submit]):not([type=button]):not([type=reset]):not([type=image]),
textarea, select{
  width:100%; font:inherit; font-size:14px; padding:9px 11px;
  color:var(--ink); background:var(--field);
  border:1px solid var(--line-strong); border-radius:var(--radius-sm); outline:none;
  transition:border-color .12s, box-shadow .12s;
}
input:not([type=checkbox]):not([type=radio]):not([type=file]):focus,
textarea:focus, select:focus{
  border-color:var(--green); box-shadow:0 0 0 3px var(--ring);
}
input.invalid, textarea.invalid, select.invalid{border-color:var(--req); background:var(--req-bg);}
input:disabled, textarea:disabled, select:disabled{background:var(--surface-3); color:var(--faint); cursor:not-allowed;}
input::placeholder, textarea::placeholder{color:var(--faint); opacity:1;}
textarea{resize:vertical; min-height:64px; line-height:1.45;}
select{cursor:pointer;}

/* skaitiniai laukai — be naršyklės rodyklių */
input[type=number]{-moz-appearance:textfield;}
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none; margin:0;}

/* .control — laukas su priedu (matavimo vienetas dešinėje, select rodyklė) */
.control{position:relative; display:block;}
.control input{padding-right:40px; font-family:var(--font-mono); font-variant-numeric:tabular-nums;}
.control select{padding-right:36px; appearance:none; -webkit-appearance:none;}
.control .unit{
  position:absolute; right:13px; top:50%; transform:translateY(-50%);
  font-family:var(--font-mono); font-size:13px; color:var(--faint); pointer-events:none;
}
.control.select::after{
  content:""; position:absolute; right:15px; top:50%; width:8px; height:8px;
  border-right:2px solid var(--muted); border-bottom:2px solid var(--muted);
  transform:translateY(-68%) rotate(45deg); pointer-events:none;
}

/* Varnelės ir radio — vienas dydis (19px) visame projekte. */
label.toggle, label.chk, label.ck, label.check, .field > label.check,
.defs label, .radio-row label{
  display:flex; align-items:center; gap:9px;
  font-size:13px; color:var(--ink); cursor:pointer; user-select:none; margin:0 0 0;
}
label.toggle, label.check, .field > label.check{font-size:14px;}
.toggle input, .chk input, .ck input, .check input,
.defs input, .radio-row input{
  width:19px; height:19px; accent-color:var(--green); cursor:pointer; flex:none;
}
.toggle input:focus-visible, .chk input:focus-visible, .ck input:focus-visible,
.check input:focus-visible, .defs input:focus-visible, .radio-row input:focus-visible{
  outline:2px solid var(--green); outline-offset:2px;
}
.radio-row{display:flex; gap:18px; flex-wrap:wrap; align-items:center; padding:4px 0;}
.radio-row.invalid{background:var(--req-bg); border-radius:6px; padding:4px 6px;}
.radio-row label{gap:6px;}
.defs{display:grid; grid-template-columns:1fr; gap:6px;}
.defs label{gap:8px;}
.sigmode{display:flex; gap:18px;}

/* laukų tinkleliai */
.row2{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:10px;}
.row3{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr); gap:10px;}
.row-nc{display:grid; grid-template-columns:minmax(0,1.6fr) minmax(0,1fr); gap:10px;}
.fields2{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:11px;}
.fields2:last-child{margin-bottom:0;}
.fields2 > .field{margin-bottom:0; display:flex; flex-direction:column;}
.fields2 > .field > label{flex:1 0 auto; line-height:1.3;}
@media(max-width:560px){ .row2, .row3, .row-nc{grid-template-columns:1fr;} }
@media(max-width:520px){ .fields2{grid-template-columns:1fr;} }

/* paaiškinimai po lauku */
.hint{font-size:11.5px; color:var(--faint); margin:9px 0 0;}
.fld .hint, .f .hint{margin-top:5px;}
.field-note{margin:7px 0 0; font-family:var(--font-mono); font-size:11.5px; line-height:1.4; color:var(--faint); font-variant-numeric:tabular-nums;}
.field-note b{color:var(--green); font-weight:600;}
.you{color:var(--green); font-weight:600; font-size:11px; margin-left:6px;}

/* data su parinkikliu (📅) */
.date-wrap{position:relative;}
.date-wrap > input[type=text]{padding-right:36px;}
.date-wrap .dbtn, .date-wrap #dateBtn{
  position:absolute; right:5px; top:50%; transform:translateY(-50%);
  border:none; background:none; cursor:pointer; font-size:16px; line-height:1;
  padding:4px; border-radius:6px; color:var(--ink);
}
.date-wrap .dbtn:hover, .date-wrap #dateBtn:hover{background:var(--surface-3);}
.date-wrap .dpick, .date-wrap #datePick{
  position:absolute; right:10px; bottom:3px; width:1px; height:1px;
  opacity:0; padding:0; border:0; pointer-events:none;
}

/* ---------- 7. Kortelės ir sekcijos ---------- */
.panel, .card, .tablewrap, .barwrap, .statement{
  background:var(--surface); border:1px solid var(--line);
  border-radius:var(--radius); box-shadow:var(--shadow);
}
.panel{padding:13px 15px 14px;}
.tablewrap{overflow-x:auto;}

/* Viena mono/didžiosiomis sekcijos antraštė visam projektui. */
.panel h2, .sec-h, .maint-h, .maint-add h4, .dlg-sec > h3, .barwrap h3, .note h4, .home-title{
  font-family:var(--font-mono); font-size:11px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--faint); font-weight:600; margin:0 0 11px;
  display:flex; align-items:center; gap:8px;
}
.sec-h{margin:16px 0 9px;}
.panel h2 .add{margin-left:auto; font-size:12px; color:var(--green); cursor:pointer; letter-spacing:0; text-transform:none; font-weight:600;}

/* tuščios būsenos blokas */
.empty{background:var(--surface); border:1px dashed var(--line-strong); border-radius:var(--radius); padding:34px 20px; text-align:center; color:var(--muted);}
.empty p{margin:0 0 14px; font-size:14px;}

/* ---------- 8. Lentelė (parkas / baudos) ---------- */
table.fleet{width:100%; border-collapse:collapse; font-size:14px; min-width:760px;}
table.fleet th, table.fleet td{padding:12px 14px; text-align:left; border-bottom:1px solid var(--line); vertical-align:middle;}
table.fleet td.c-name{vertical-align:top;}
table.fleet thead th{
  font-family:var(--font-mono); font-size:11px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--faint); font-weight:600; white-space:nowrap; background:var(--surface-2);
}
table.fleet tbody tr:last-child td{border-bottom:none;}
table.fleet tbody tr:hover{background:var(--surface-2);}
table.fleet th.r, table.fleet td.r{text-align:right;}
table.fleet td.mono, table.fleet td.r{font-family:var(--font-mono); font-variant-numeric:tabular-nums; white-space:nowrap;}
table.fleet th.rownum, table.fleet td.rownum{width:1%; white-space:nowrap; text-align:right; padding-right:8px; color:var(--faint); font-variant-numeric:tabular-nums;}
td.c-name{font-weight:600; min-width:150px;}
td.c-name .rsub{display:block; font-weight:400; font-size:12px; color:var(--muted); margin-top:2px;}
td.c-name .rnote{
  display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:4; line-clamp:4; overflow:hidden;
  font-weight:400; font-size:12px; color:var(--faint); margin-top:3px; white-space:normal; max-width:280px; cursor:help;
}
td.vin, td.sdk{max-width:130px;}
/* spustelėk-kopijuoti laukas — naudojamas VIN/SDK/Numeris/Reg.nr/TA/Draudimo langeliuose */
.fieldcopy{cursor:pointer; border-bottom:1px dotted var(--line-strong);}
.fieldcopy:hover, .fieldcopy.copied{color:var(--green); border-bottom-color:var(--green);}
td.vin .fieldcopy, td.sdk .fieldcopy, td.vin .vincopy{
  display:inline-block; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
  vertical-align:bottom; font-family:var(--font-mono); font-size:12.5px; color:var(--muted);
}
td.vin .vincopy:hover, td.vin .vincopy.copied{color:var(--green); border-bottom-color:var(--green);}
/* valst. numerio ženkliukas — apvadas jau yra, tad be papildomo taškuoto pabraukimo */
.plate.fieldcopy{border-bottom:none;}
.plate.fieldcopy:hover, .plate.fieldcopy.copied{color:var(--green); border-color:var(--green); background:var(--green-wash-soft);}

/* terminų langeliai — būsena spalva */
td.dcell{font-family:var(--font-mono); font-variant-numeric:tabular-nums; white-space:nowrap;}
td.dcell.overdue{background:var(--req-bg); color:var(--req); font-weight:600;}
td.dcell.soon{background:var(--amber-bg); color:var(--amber); font-weight:600;}
td.dcell.ok{color:var(--ok);}
td.dcell.none{color:var(--faint);}

td.apva{font-size:12px; white-space:nowrap;}
td.apva .amt{font-family:var(--font-mono); color:var(--muted);}
td.apva .hold{display:inline-block; margin-top:3px; font-weight:600;}
td.apva .hold.locked{color:var(--ink);}
td.apva .hold.free{color:var(--ok);}
td.apva.none{color:var(--faint);}
td.acts{white-space:nowrap; text-align:right;}
td.acts .btn{margin-left:6px;}

/* mobilus: plati lentelė virsta kortelėmis */
@media (max-width:800px){
  .tablewrap{overflow-x:visible; border:none; background:none; box-shadow:none;}
  table.fleet{min-width:0;}
  table.fleet thead{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0);}
  table.fleet, table.fleet tbody, table.fleet tr, table.fleet td{display:block; width:auto;}
  table.fleet tr{background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow); padding:11px 14px 13px; margin-bottom:12px;}
  table.fleet tr:hover{background:var(--surface);}
  table.fleet td{border:none; padding:4px 0; display:flex; justify-content:space-between; align-items:baseline; gap:14px; text-align:right;}
  table.fleet td::before{content:attr(data-label); flex:none; text-align:left; color:var(--faint); font-family:var(--font-mono); font-size:10.5px; letter-spacing:.06em; text-transform:uppercase;}
  table.fleet td.rownum{color:var(--faint); border-bottom:1px solid var(--line); padding-bottom:7px; margin-bottom:4px;}
  table.fleet td.c-name{display:block; text-align:left; font-size:16px; padding:2px 0 6px;}
  table.fleet td.c-name::before{display:none;}
  table.fleet td.c-name .rsub{max-width:none;}
  table.fleet td.vin, table.fleet td.sdk{max-width:none;}
  table.fleet td.vin .fieldcopy, table.fleet td.sdk .fieldcopy, table.fleet td.vin .vincopy{
    max-width:none; white-space:normal; word-break:break-all; border-bottom:none; color:var(--ink);
  }
  table.fleet td.dcell, table.fleet td.apva{white-space:normal;}
  table.fleet td.apva .hold{margin-top:0;}
  table.fleet td.acts{justify-content:flex-end; gap:8px; padding-top:9px;}
  table.fleet td.acts::before{display:none;}
  /* tušči neprivalomi laukai lentelėje rodomi kaip „—"; kortelėse (mobiliajame) jų
     nerodome visai, kad kortelė nebūtų ilgas brūkšnelių sąrašas */
  table.fleet td.cell-empty,
  table.fleet td.dcell.none,
  table.fleet td.apva.none{display:none;}
}

/* Mėnesio/savaitės blokai (bites-valandos.html + valandos-perziura.html) — bendra, nes abu
   puslapiai grupuoja tuos pačius bite_hours įrašus vienodai. */
.month-block{margin-bottom:26px;}
.month-block:last-child{margin-bottom:0;}
.month-head{display:flex; align-items:center; gap:10px; margin-bottom:9px;}
.month-head h2{margin:0; font-size:15px; font-weight:600; color:var(--ink);}
.month-total{font-weight:400; color:var(--muted); font-size:13px; margin-left:6px;}
.month-head .btn{margin-left:auto;}
table.fleet tr.week-sep td{background:var(--surface-2); color:var(--muted); font-size:12px; font-weight:600; padding:7px 14px;}
@media(max-width:800px){
  table.fleet tr.week-sep{background:var(--surface-2); border:none; box-shadow:none; padding:0; margin-bottom:8px;}
  table.fleet tr.week-sep td{display:block; padding:7px 10px;}
}

/* ---------- 9. Modalai ---------- */
.dlg{
  border:none; padding:0; background:transparent; color:var(--ink);
  width:min(560px, calc(100% - 28px)); max-width:560px; max-height:min(92vh,860px);
}
.dlg[open]{display:flex;}
.dlg::backdrop{background:var(--scrim);}
.dlg-card{
  display:flex; flex-direction:column; width:100%; max-height:inherit; min-height:0;
  background:var(--surface); border:1px solid var(--line); border-radius:var(--radius);
  box-shadow:var(--shadow-dlg); overflow:hidden;
}
.dlg-head{flex:none; display:flex; align-items:flex-start; gap:12px; padding:15px 18px 12px; border-bottom:1px solid var(--line);}
.dlg-head h2{font-size:17px; font-weight:700; margin:0; flex:1; letter-spacing:-.01em;}
.dlg-head .t{flex:1; min-width:0;}
.dlg-head .t h2{margin:0 0 3px;}
.dlg-head .t p{margin:0; font-size:12.5px; color:var(--muted); line-height:1.45;}
.dlg-x{
  flex:none; width:32px; height:32px; border-radius:8px; border:1px solid transparent;
  background:none; color:var(--faint); cursor:pointer; font-size:21px; line-height:1;
  display:flex; align-items:center; justify-content:center;
}
.dlg-x:hover{background:var(--field); border-color:var(--line-strong); color:var(--ink);}
.dlg-x:focus-visible{outline:2px solid var(--green); outline-offset:2px;}
.dlg-body{flex:1 1 auto; min-height:0; overflow:auto; padding:15px 18px; -webkit-overflow-scrolling:touch;}
.dlg-sec{margin-bottom:16px;}
.dlg-sec:last-child{margin-bottom:0;}
.dlg-foot{
  flex:none; display:flex; flex-wrap:wrap; align-items:center; gap:8px;
  padding:12px 18px calc(14px + env(safe-area-inset-bottom)); border-top:1px solid var(--line);
}
.dlg-foot .right, .dlg-foot .grp.right{margin-left:auto; display:flex; gap:8px; flex-wrap:wrap;}
.dlg-foot .grp{display:flex; gap:8px; flex-wrap:wrap;}
.dlg-err{font-size:12.5px; color:var(--req); margin:0 0 11px; display:none;}
.dlg-err.show{display:block;}
.dlg-note{margin:12px 0 0; font-family:var(--font-mono); font-size:12px; color:var(--green); line-height:1.4;}
.dlg-note.err{color:var(--red);}
.dlg-note:empty{display:none;}
.dlg-reset{font-family:var(--font-mono); font-size:12px; color:var(--faint); background:none; border:none; cursor:pointer; padding:8px 0 0; display:inline-flex; align-items:center; gap:6px;}
.dlg-reset:hover{color:var(--red); text-decoration:underline;}
.dlg-reset:focus-visible{outline:2px solid var(--green); outline-offset:2px; border-radius:3px;}

@media (max-width:520px){
  .dlg{width:100%; max-width:none; max-height:92vh; margin:auto 0 0;}
  .dlg-card{border-radius:16px 16px 0 0;}
  .dlg-foot .grp{flex:1 1 auto;}
  .dlg-foot .grp.right{width:100%; margin-left:0;}
  .dlg-foot .grp.right .btn{flex:1 1 auto;}
}
@media (prefers-reduced-motion: no-preference){
  .dlg[open]{animation:dlgIn .18s cubic-bezier(.4,0,.2,1);}
  .dlg::backdrop{animation:bdIn .18s ease;}
  @keyframes dlgIn{from{opacity:0; transform:translateY(8px) scale(.99);} to{opacity:1; transform:none;}}
  @keyframes bdIn{from{opacity:0;} to{opacity:1;}}
}
@media (max-width:520px) and (prefers-reduced-motion: no-preference){
  @keyframes dlgIn{from{opacity:.5; transform:translateY(100%);} to{opacity:1; transform:none;}}
}

/* Archyvo / parašo langas — paprastas overlay + kortelė (ne <dialog>).
   Rodymą valdo JS per `style.display` ('' = matomas, 'none' = paslėptas),
   todėl `display` čia NENUSTATOMAS. */
.modal-overlay{position:fixed; inset:0; background:var(--scrim); z-index:50;}
.modal-card{
  background:var(--surface); color:var(--ink); border:1px solid var(--line);
  max-width:760px; margin:5vh auto; border-radius:var(--radius);
  max-height:90vh; overflow:auto; padding:18px 20px; box-shadow:var(--shadow-dlg);
}
.modal-card.narrow{max-width:560px; margin:8vh auto;}
.modal-card.wide{max-width:820px;}
.modal-card.mid{max-width:720px;}
.modal-head{display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:12px;}
.modal-head h3{margin:0; font-size:16px; font-weight:700;}

/* archyvo sąrašo lentelė */
table.arch{width:100%; border-collapse:collapse; font-size:13px;}
table.arch th{text-align:left; padding:6px; border-bottom:1px solid var(--line); color:var(--muted); font-weight:600;}
table.arch th.r{text-align:right;}
table.arch th.shrink{width:1%;}
table.arch td{padding:6px; border-bottom:1px solid var(--line);}
table.arch td.c{text-align:center;}
table.arch td.r{text-align:right; font-variant-numeric:tabular-nums;}
table.arch tbody tr{cursor:pointer;}
table.arch tbody tr:hover{background:var(--surface-2);}
.arch-empty{color:var(--muted); font-size:13px;}

/* ---------- 10. Pranešimai ---------- */
/* .msg — vienos eilutės pranešimas; .alert — blokas su sąrašu */
.msg{
  display:none; margin:0 0 16px; padding:10px 13px; font-size:13px;
  border-radius:var(--radius-sm);
  background:var(--req-bg); color:var(--req); border:1px solid var(--req-line);
}
.msg.show{display:block;}
.msg.ok{background:var(--ok-bg); color:var(--ok); border-color:var(--ok-line);}
.msg.warn, .miss{background:var(--amber-bg); color:var(--amber); border:1px solid var(--amber-line);}
.miss{font-size:12.5px; border-radius:var(--radius-sm); padding:8px 11px; margin:0 0 12px;}
.err{color:var(--req); font-size:13px; margin-top:10px; min-height:18px;}

.alert{margin:0 0 18px; padding:13px 16px; border-radius:var(--radius); box-shadow:var(--shadow);}
.alert.has-over{background:var(--req-bg); border:1px solid var(--req-line);}
.alert.soon-only{background:var(--amber-bg); border:1px solid var(--amber-line);}
.alert h3{margin:0 0 8px; font-size:13px; font-weight:700; letter-spacing:.01em;}
.alert.has-over h3{color:var(--req);}
.alert.soon-only h3{color:var(--amber);}
.alert ul{margin:0; padding-left:20px; display:flex; flex-direction:column; gap:3px;}
.alert li{font-size:13px;}
.alert li.over{color:var(--req); font-weight:600;}
.alert li.soon{color:var(--amber);}
.alert li .dt{font-family:var(--font-mono); font-variant-numeric:tabular-nums;}

/* pastaba prie kopijavimo bloko */
.important{
  margin-top:10px; padding:9px 11px; font-size:12px; line-height:1.45;
  color:var(--amber); background:var(--amber-bg); border:1px solid var(--amber-line);
  border-radius:var(--radius-sm);
}
.important b{color:var(--amber); font-weight:700;}
.copymsg{font-size:12.5px; color:var(--green); font-weight:600;}

/* ---------- 11. Ženkleliai (badges) ---------- */
.plate, .ctag, .stag, .badge-status{
  display:inline-block; font-size:11px; font-weight:600;
  border-radius:7px; padding:2px 8px; white-space:nowrap;
  border:1px solid var(--line-strong); color:var(--muted); background:transparent;
}
.plate{font-family:var(--font-mono); font-size:12.5px; letter-spacing:.06em; color:var(--ink); background:var(--surface-3); padding:3px 8px;}
.ctag{color:var(--green); border-color:var(--green); margin-left:8px; vertical-align:middle;}
.badge-status{font-size:12px; padding:2px 9px; background:var(--surface-3); color:var(--ink);}
.badge-status.s-uzdaryta,
.badge-status.s-pateikta{background:var(--ok-bg); color:var(--ok); border-color:var(--ok-line);}
.badge-status.s-gauta,
.badge-status.s-paklausta{background:var(--req-bg); color:var(--req); border-color:var(--req-line);}
.badge-status.s-gautas_vairuotojas{background:var(--amber-bg); color:var(--amber); border-color:var(--amber-line);}

/* pavienis nustatymo jungiklis savo kortelėje (pvz. baudų auto-siuntimas) —
   kad neatrodytų kaip pamestas, jokio konteinerio neturintis žymimasis langelis */
.togglebar{
  display:inline-flex; align-items:center; gap:9px;
  font-size:13px; color:var(--muted); cursor:pointer;
  background:var(--surface); border:1px solid var(--line); border-radius:var(--radius-sm);
  padding:10px 13px; margin:0 0 16px;
}
.togglebar input{width:19px; height:19px; accent-color:var(--green); cursor:pointer; flex:none;}

/* ---------- 12. Pagalbinės klasės ---------- */
.mono{font-family:var(--font-mono); font-variant-numeric:tabular-nums;}
.nowrap{white-space:nowrap;}
.hidden{display:none !important;}

/* ---------- 13. Prieinamumas + spausdinimas ---------- */
a:focus-visible, button:focus-visible, summary:focus-visible{outline:2px solid var(--green); outline-offset:2px;}
input:focus-visible, select:focus-visible, textarea:focus-visible{outline:2px solid var(--green); outline-offset:2px;}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{transition-duration:.01ms !important; animation-duration:.01ms !important;}
}

@media print{
  body{background:#fff;}
  .toolbar, .pdfhint, .valwarn, .modal-overlay{display:none !important;}
}
