:root{
  /* FIRMINIS STILIUS (Hoobrid brandbook, 2022-11-21).
     Spalvos ten dvi: juoda #000000 (Pantone Black C) ir šviesiai pilka
     #EBEBEB (Pantone 649 C). Todėl akcentas — juodas, o ne mėlynas.
     Šriftas — Cerebri Sans Pro, vienintelis (ir dydžių skalė) — static/sriftas.css:
     tik var(--font) ir var(--fs-…), kitaip krenta tests/run.cjs 2sr. */
  --bg:#ebebeb;--card:#fff;--sunk:#f6f6f6;
  --ink:#000;--mut:#4a4a4a;--mut2:#7a7a7a;
  --line:#d2d2d2;--line2:#e4e4e4;
  --acc:#000;--acc2:#ebebeb;--accink:#000;
  --ok:#256b4c;--ok2:#e3efe9;
  --warn:#8a6210;--warnbg:#f8f1df;
  --err:#a12f26;--errbg:#f9eae8;
  --auto:#333;--autobg:#f1f1f1;
  /* Tekstas ant akcento (juodo mygtuko, žymos) ir kitos spalvos, kurios tamsiame režime keičiasi. */
  --onacc:#fff;--hov:#f2f4f7;--warnline:#f0dcb0;--errline:#f3c9c6;--guess:#fffbf0;
  --veil:rgba(235,235,235,.82);--guestbg:#eef4ff;--guestline:#c3d6ff;
  /* Brėžinys (ProBox, docs/darbai.md 27) — popieriaus lapas, kaip PDF: šviesus ir tamsiame ekrane (poros tos pačios). */
  --brez-popierius:#fff;--brez-linija:#000;--brez-pilka:#8f8f8f;--brez-matmuo:#4a4a4a;--brez-prailg:#db5c0d;
  /* Furgonų šalčio balansas (docs/architektura.md 8j): pro sienas / pro duris / nuotėkis / pertvara. */
  --cold:#1d5f8a;--cold2:#7fb1d1;--cold3:#c9dfee;--cold4:#5f8fa8}
/* NAKTINIS (TAMSUS) REŽIMAS (Paulius 2026-10-07: „kaip Claude — sutemus įsijungia, dieną grįžta").
   Kurią temą rodyti, nusprendžia mažas scenarijus <head> pradžioje (temaTaikyti): „Auto" seka
   kompiuterio ar telefono nustatymą (Mac „Išvaizda → Automatiškai" tamsėja saulei nusileidus), arba
   žmogus „Nustatymuose" pasirenka „Šviesi" / „Tamsi". Čia keičiamos TIK spalvos-kintamieji, todėl naujame kode
   spalvos rašomos tik per juos (var(--ink), var(--card)…) — įkalta #fff tamsiame ekrane taptų balta
   dėme. Tikrina tests/run.cjs (2ad). Firminės spalvos tos pačios, tik apverstos: akcentas — firminė
   šviesiai pilka #EBEBEB vietoj juodos. „screen" — spausdinant (PDF) visada šviesu. */
@media screen{
  :root[data-theme="dark"]{
    color-scheme:dark;
    --bg:#121212;--card:#1c1c1c;--sunk:#242424;
    --ink:#ebebeb;--mut:#b3b3b3;--mut2:#8c8c8c;
    --line:#3a3a3a;--line2:#2b2b2b;
    --acc:#ebebeb;--acc2:#2e2e2e;--accink:#fff;
    --ok:#6cc59a;--ok2:#173326;
    --warn:#e2b45c;--warnbg:#342a12;
    --err:#f28b82;--errbg:#3b1d1a;
    --auto:#d0d0d0;--autobg:#262626;
    --onacc:#121212;--hov:#262626;--warnline:#5c4a1f;--errline:#6e302a;--guess:#2e2914;
    --veil:rgba(18,18,18,.82);--guestbg:#1a2433;--guestline:#2f4466;
    --brez-popierius:#fff;--brez-linija:#000;--brez-pilka:#8f8f8f;--brez-matmuo:#4a4a4a;--brez-prailg:#db5c0d;
    --cold:#7fb8de;--cold2:#3f7aa3;--cold3:#24435a;--cold4:#5d8aa3}
  /* Taisyklių tipų žymos — savo spalvų poros (fonas + tekstas); tamsiame ekrane — tamsūs to paties atspalvio. */
  :root[data-theme="dark"] .t-ALT{background:#3b1d1d;color:#f5a3a3}
  :root[data-theme="dark"] .t-UNL{background:#15301f;color:#7fd6a0}
  :root[data-theme="dark"] .t-REQ{background:#23264a;color:#b4bcf7}
  :root[data-theme="dark"] .t-NEG{background:#3a2a12;color:#f5c27a}
  :root[data-theme="dark"] .t-ADD{background:#10293a;color:#8fd0f5}
  :root[data-theme="dark"] .t-SUG{background:#24310f;color:#bfe08a}
  /* Fonas po iššokančiu langu (visi langai — <dialog>). Naršyklės numatytas užtamsinimas (10 % juodos)
     tamsiame ekrane beveik nematomas (Paulius 2026-10-07: „papilkėja, bet nelabai ryškiai"). Spalva įrašyta
     čia, ne kintamuoju: senesnės naršyklės ::backdrop kintamųjų iš :root nepaveldi. */
  :root[data-theme="dark"] dialog::backdrop{background:rgba(0,0,0,.6)}
}
*{box-sizing:border-box}
/* Prilipusi kainos juosta — tik siaurame ekrane. Plačiame ekrane kaina jau
   stovi lipnioje suvestinėje dešinėje, todėl juostos ten nėra. Riba — 1100 px, kaip .layout: siauresniame
   suvestinė jau puslapio apačioje (iki 2026-10-16 buvo 900 px, ir tarp 900–1100 kainos nesimatė niekur).
   Visiems konfigūratoriams (Paulius 2026-10-16) — renderMBar / mbarKonf. */
#mbar{display:none}
@media(max-width:1100px){
  #mbar.on{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;
    align-items:center;gap:10px;padding:9px 14px;
    background:var(--card);border-top:1px solid var(--line);
    box-shadow:0 -5px 16px rgba(0,0,0,.10);
    padding-bottom:calc(9px + env(safe-area-inset-bottom))}
  #mbar .mb-l{min-width:0;flex:1}
  #mbar .mb-p{font-family:var(--font);font-size:var(--fs-20);font-weight:700;letter-spacing:-.02em;
    line-height:1.15;white-space:nowrap}
  #mbar .mb-s{color:var(--mut);font-size:var(--fs-12);margin-top:1px;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #mbar .mb-b{flex:0 0 auto;padding:8px 13px;border:1px solid var(--line);
    border-radius:7px;background:var(--sunk);font:inherit;font-size:var(--fs-13);
    font-weight:400;cursor:pointer}
  #mbar .mb-b[disabled]{opacity:.45}
  #mbar .mb-w{color:var(--warn)}
  body.mbar{padding-bottom:76px}
}
@media(max-width:900px){
  /* iOS Safari pats priartina puslapį, kai fokusuojamas laukas su mažesniu
     nei 16 px šriftu, ir atgal nebeatitraukia — žmogus turi zoominti pirštais
     po kiekvieno įrašyto skaičiaus. Todėl siaurame ekrane VISI laukai yra
     16 px. Rakinti mastelio (maximum-scale) negalima: tada puslapio
     nebegalėtų priartinti tas, kuriam to tikrai reikia. */
  input,select,textarea,.dims input,#mlmail{font-size:var(--fs-16)!important}
  .dims input{width:100%;padding:6px 8px}
  /* Kiekio laukas neturi tįsti per visą eilutę: dviženklis skaičius plačiame
     lauke atrodo pamestas, o „+" ir „−" atsiduria toli vienas nuo kito.
     Matmenų skaičius irgi centruojamas — prie dešinio krašto priglaustas
     skaičius plačiame lauke skaitosi blogiau nei per vidurį. */
  .dims .step input{width:78px;flex:0 0 78px;text-align:center}
  .dims .multi input{text-align:center}
  .dims .stepb{width:38px}
}
body{margin:0;background:var(--bg);color:var(--ink);font:var(--fs-14)/1.45 var(--font)}
header{background:var(--card);border-bottom:1px solid var(--line);padding:12px 20px;display:flex;gap:14px;align-items:center;flex-wrap:wrap;position:sticky;top:0;z-index:30}
header h1{font-size:var(--fs-16);margin:0;font-weight:700}
.tabs{display:inline-flex;border:1px solid var(--line);border-radius:7px;overflow:hidden;margin-left:auto}
.tabs button{border:0;background:var(--card);padding:6px 14px;font:inherit;cursor:pointer}
.tabs button[aria-pressed=true]{background:var(--ink);color:var(--onacc)}
.wrap{max-width:1320px;margin:0 auto;padding:16px 20px 70px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}
@media(max-width:980px){.wrap{grid-template-columns:1fr}}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:15px;margin-bottom:13px}
.card>h2{font-size:var(--fs-11);text-transform:uppercase;letter-spacing:.06em;color:var(--mut);margin:0 0 11px;font-weight:700;display:flex;gap:8px;align-items:center}
.step{display:inline-flex;width:19px;height:19px;border-radius:50%;background:var(--ink);color:var(--onacc);font-size:var(--fs-11);align-items:center;justify-content:center;flex:none}
.card.done>h2 .step{background:var(--ok)}
.card.locked{opacity:.45;pointer-events:none}
label{display:block;font-size:var(--fs-12);color:var(--mut);margin-bottom:4px}
input,select{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:7px;background:var(--card);font:inherit;color:inherit}
input:focus,select:focus{outline:2px solid var(--acc);outline-offset:-1px}
.vdp{position:relative}
.vdp-f{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid var(--line);background:var(--card);font:inherit;color:inherit;text-align:left;cursor:pointer}
.vdp-f:focus{outline:2px solid var(--acc);outline-offset:-1px}
.vdp-pop{position:absolute;z-index:30;left:0;right:0;top:100%;margin-top:4px;background:var(--card);border:1px solid var(--line);box-shadow:0 6px 18px rgba(0,0,0,.12);padding:10px}
.vdp-y{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:8px}
.vdp-y b{min-width:60px;text-align:center}
.vdp-m{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.vdp-pop button{padding:7px 4px;border:1px solid var(--line);background:var(--card);font:inherit;font-size:var(--fs-13);color:inherit;cursor:pointer}
.vdp-pop button:hover:not(:disabled){border-color:var(--acc)}
.vdp-pop button.on{background:var(--acc);border-color:var(--acc);color:var(--onacc)}
.vdp-pop button:disabled{opacity:.35;cursor:default}
.vdp-pop .vdp-n{display:block;width:100%;padding:8px 6px;font-weight:700}
.vdp-arba{color:var(--mut);font-size:var(--fs-12);margin:10px 0 6px}
.row{display:grid;gap:10px}.r2{grid-template-columns:1fr 1fr}.r3{grid-template-columns:1fr 1fr 1fr}
button.b{cursor:pointer;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:7px;padding:8px 12px;font:inherit}
button.b.primary{background:var(--acc);border-color:var(--acc);color:var(--onacc);font-weight:700}
button.b:disabled{opacity:.45;cursor:default}
.fams{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px}
.fam{border:1.5px solid var(--line);border-radius:9px;padding:11px;cursor:pointer;background:var(--card);color:var(--ink)}
.fam:hover{border-color:var(--mut2)}
.fam[aria-pressed=true]{border-color:var(--acc);background:var(--acc2)}
.fam b{display:block;font-size:var(--fs-14)}.fam span{font-size:var(--fs-12);color:var(--mut)}
/* Šeimos aprašymas — po pavadinimu, prieš dizaino kodą. */
.fam{position:relative}
.fam .famap{display:block;margin-top:5px;font-size:var(--fs-12);line-height:1.4;color:var(--mut)}
.fam .famqm{position:absolute;top:7px;right:7px;display:inline-flex;
  align-items:center;justify-content:center}
.fam code{font-family:var(--font);font-variant-numeric:tabular-nums;font-size:var(--fs-11);color:var(--mut)}
.grp{border-top:1px solid var(--line);padding-top:9px;margin-top:9px}
.grp:first-child{border-top:0;margin-top:0;padding-top:0}
.grp h3{font-size:var(--fs-12);margin:0 0 6px;font-weight:700}
.grp .req{font-size:var(--fs-11);color:var(--err);font-weight:700;margin-left:6px}
/* PRIVALOMO PASIRINKIMO ŽYMA — viena visuose konfigūratoriuose (reqTag, reqMiss).
   Kol nepasirinkta: raudona „privaloma" + paryškintas pats laukas (.miss);
   pasirinkus: pilka su varnele. Paulius 2026-10-06. Atskira klasė, o ne .req:
   .req naudojama ir kitur (galiojimas, vartotojo būsena) — jų nelieskim. */
.privaloma{font-family:var(--font);font-size:var(--fs-11);color:var(--err);font-weight:700;margin-left:6px;
  text-transform:none;letter-spacing:0;white-space:nowrap}
.privaloma.ok{color:var(--mut2);font-weight:400}
select.miss,input.miss,.vdp-f.miss{border-color:var(--err);background:var(--errbg)}
.items.miss,.fams.miss,#kitList.miss,#coolList.miss,.vgrid.miss{outline:1.5px dashed var(--err);outline-offset:4px}
.need{align-self:center;color:var(--err);font-weight:700}
/* Statistikos plytelės. Skaičius didelis, paaiškinimas mažas — darbastalyje
   žmogus žiūri į skaičių, o ne skaito. */
.stats{display:flex;flex-wrap:wrap;gap:10px}
.stat{flex:1 1 150px;min-width:140px;background:var(--sunk);
  border:1px solid var(--line2);padding:9px 12px}
.stat b{display:block;font-family:var(--font);font-size:var(--fs-24);font-weight:900;
  letter-spacing:-.02em;line-height:1.15}
.stat span{display:block;font-family:var(--font);font-variant-numeric:tabular-nums;font-size:var(--fs-10);letter-spacing:.08em;
  text-transform:uppercase;color:var(--mut2);margin-top:2px}
.grp .sub{margin:0 0 10px}
.grp .sub h4{font-size:var(--fs-12);margin:0 0 5px;font-weight:700;color:var(--mut)}
/* Kėbulų šaldymo ir lifto etapai (Paulius 2026-10-21: „daug tuščios vietos"): sąrašų blokai per visą plotį (ne „main .sub"
   70ch). Nustatymai — kaip furgonų šaldymo etape: trys stulpeliai (.row.r3), eilutės po 10 px. */
#ki-agr .sub,#ki-lift .sub{max-width:none}
.opt .req{font-size:var(--fs-10);color:var(--err);font-weight:700;display:block;margin:0}
/* Informacinė žymė, ne reikalavimas: „atskira eilutė pasiūlyme" nieko
   neprivalo — ji tik sako, kur ši suma atsiras dokumente. Raudona ją
   darė panašią į klaidą. Dviejų klasių selektorius — kad nugalėtų. */
.opt .req.info{color:var(--mut,#666);font-weight:700}
.opt.sub{padding-left:33px}
.opt.sub .nm{font-size:var(--fs-13)}
.items{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1px}
.opt{display:flex;gap:8px;align-items:flex-start;padding:5px 7px;border-radius:6px}
.opt:hover{background:var(--hov)}
.opt input{width:auto;margin-top:2px;flex:none}
.opt .t{flex:1;min-width:0}
.opt .nm{font-size:var(--fs-13)}
.opt code{font-family:var(--font);font-variant-numeric:tabular-nums;font-size:var(--fs-11);color:var(--mut);display:block}
.opt.auto{background:var(--autobg)}
.opt.auto .nm:after{content:" · automatiškai";color:var(--auto);font-size:var(--fs-11)}
.opt .remo-pz{display:block;font-size:var(--fs-12);color:var(--mut);margin-top:2px}   /* rėmo eilutės priežastis (eilės 78 p.) */
/* Automatiškai pridėta / privaloma eilutė (fixEilHtml, 2026-10-29): užpildytas apskritimas kaip „įskaičiuota", nespaudžiama, be hover. */
.opt.fix{cursor:default;background:none}
.opt.fix:hover{background:none}
.opt .fix-pz{display:block;font-size:var(--fs-12);color:var(--auto);margin-top:2px}
.fix-o{flex:none;order:4;width:20px;height:20px;border-radius:50%;background:var(--acc);position:relative}
.fix-o:after{content:"";position:absolute;top:7px;left:7px;width:6px;height:6px;border-radius:50%;background:var(--onacc)}
.cell{display:flex;flex-direction:column}
/* Priedas po savo opcija (priedaiPoTevuHtml; Paulius 2026-10-19) — tėvinės kortelės viduje, su įtrauka ir linija kairėje. */
.potevu{margin:0 0 6px 26px;padding:2px 0 0 6px;border-left:2px solid var(--line)}
.potevu-h{font-size:var(--fs-11);color:var(--mut);padding:0 7px}
/* „Siūlyti pasiūlyme" — nepasirinktai opcijai, po jos eilute. */
.siul{align-self:flex-start;margin:-2px 0 6px 33px;padding:1px 7px;border:1px dashed var(--line);border-radius:5px;
  background:transparent;font:inherit;font-size:var(--fs-11);color:var(--mut);cursor:pointer}
.siul:hover{border-color:var(--acc);color:var(--ink)}
.siul.on{border-style:solid;border-color:var(--acc);background:var(--acc2);color:var(--ink)}
/* Aprašymas po opcija (Paulius 2026-10-07) — vienodas visuose konfigūratoriuose: pilkas tekstas po pavadinimu ir kodu,
   virš „Siūlyti pasiūlyme"; ilgesnis nei 2 eilutės — sutrauktas su „Daugiau" (aprHtml). */
.oapr{padding:0 7px 6px 33px;margin-top:-2px;font-size:var(--fs-12);line-height:1.4;color:var(--mut)}
.oapr .tx{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;white-space:pre-wrap}
.oapr.open .tx{display:block;overflow:visible}
.oapr .mr{display:block;margin:1px 0 0;padding:0;border:0;background:none;font:inherit;font-size:var(--fs-11);color:var(--mut);
  text-decoration:underline dotted;cursor:pointer}
.oapr .mr:hover{color:var(--ink)}
.oapr .mr[hidden]{display:none}
/* Opcija, kuri su liftu arba–arba („Bet kuris liftas") — užrašas po ja, matomas visada (ne po ⓘ). */
.ki-belifto{padding:0 7px 6px 33px;margin-top:-2px;font-size:var(--fs-12);line-height:1.4;color:var(--mut)}
/* Aprašymas svečio specifikacijos eilutėje (specEilutes, eilAprSvecio) — smulkiai po pavadinimu. */
/* Montavimo komplekto sudėtis (tik Hoobrid darbuotojams, važiuoklių biblioteka 2026-10-15). */
.vzkit{border:1px solid var(--line);border-radius:8px;padding:6px 10px;font-size:var(--fs-13);background:var(--card)}
.vzkit summary{cursor:pointer}
.vzkt{width:100%;border-collapse:collapse;margin-top:6px}
.vzkt td{border-top:1px solid var(--line);padding:3px 4px;vertical-align:top}
.vzkt td.n{width:42px;text-align:right;white-space:nowrap}
#quote .q .qa,#vquote .q .qa,#fquote .q .qa,#lquote .q .qa{display:block;margin-top:1px;font-size:var(--fs-11);line-height:1.35;opacity:.85;white-space:pre-wrap}
.dims{display:flex;flex-wrap:wrap;gap:9px;padding:0 7px 7px 33px;align-items:flex-end}
.dims .f{display:flex;flex-direction:column;gap:2px}
.dims .f>span{font-size:var(--fs-11);color:var(--mut)}
.dims .multi{display:flex;gap:4px;flex-wrap:wrap}
.dims .multi input{width:64px;text-align:right}
.dims .multi .n{font-size:var(--fs-10);color:var(--mut);align-self:center;padding-right:1px}
.dims input{width:92px;padding:3px 6px;border:1px solid var(--line);border-radius:5px;font:inherit;font-size:var(--fs-12)}
/* Kiekio mygtukai. Kvadratiniai ir tokio pat aukščio kaip laukas, kad eilutė
   neiššoktų; ties riba pilkėja, todėl nereikia spausti ir gauti nieko. */
/* Bendra .step — etapo numerio skritulys (19 px, juodas): čia jį panaikinam, kitaip kiekio eilutė suspaudžiama į 19 px ir
   „−" išlenda už laukelio krašto (2026-10-19). */
.dims .step{display:inline-flex;align-items:stretch;gap:4px;width:auto;height:auto;border-radius:0;background:none;color:inherit;font-size:inherit}
.dims .step input{width:56px;text-align:center}
.dims .stepb{width:26px;border:1px solid var(--line);border-radius:5px;background:var(--sunk);
  font:inherit;font-size:var(--fs-14);line-height:1;cursor:pointer;color:var(--ink);padding:0}
.dims .stepb:hover:not([disabled]){border-color:var(--acc);background:var(--acc2)}
.dims .stepb[disabled]{opacity:.35;cursor:default}
.dims input.bad,#c3 input.bad{border-color:var(--err);background:var(--errbg)}
.dims select{width:auto;max-width:150px;padding:3px 6px;border:1px solid var(--line);border-radius:5px;background:var(--card);color:var(--ink);font:inherit;font-size:var(--fs-12)}
.dims .noprice{font-size:var(--fs-11);color:var(--warn);padding-bottom:4px}
.qm{border:1px solid var(--line);background:var(--card);border-radius:50%;width:18px;height:18px;font-size:var(--fs-11);
    line-height:1;cursor:pointer;flex:none;color:var(--mut)}
/* Opcijos nuotrauka eilutėje (fotoMini, Paulius 2026-10-22): visada matoma, karkase — eilutės kairėje. */
.qm.ofoto{width:48px;height:48px;border-radius:4px;padding:0;overflow:hidden;background:var(--sunk);cursor:zoom-in;
    display:inline-flex;align-self:center}
.qm.ofoto img{width:100%;height:100%;object-fit:cover;display:block}
.qm.ofoto:hover,.qm.ofoto:focus-visible{border-color:var(--acc)}
#p-box #opts .opt .qm.ofoto,:is(#p-van,#p-fan,#p-vanlift) .kk-opt .opt .qm.ofoto{display:inline-flex;order:0}
/* Arba–arba juostoje (.nv-alt) nuotrauka — visose kortelėse, ir pažymėtoje (Paulius 2026-10-27, eilės 81 p.: pažymėta LED-NO-MOTION
   buvo be nuotraukos, kai kita — su). Iki tol juostoje ji buvo slepiama, kol neatidarytas ⓘ. */
.note{font-size:var(--fs-12);padding:8px 10px;border-radius:7px;margin-bottom:9px;line-height:1.4}
.note.warn{background:var(--warnbg);color:var(--warn);border:1px solid var(--warnline)}
/* Atnaujinimo juosta (eilės 121 punktas): viršuje, virš lipnios antraštės; kol matoma — antraštės nusileidžia po ja. */
.upd-bar{position:fixed;left:0;right:0;top:0;z-index:60;min-height:var(--upd-h);box-sizing:border-box;display:flex;align-items:center;
  justify-content:center;gap:12px;flex-wrap:wrap;padding:6px 16px;background:var(--warnbg);color:var(--ink);
  border-bottom:1px solid var(--warnline);font-size:var(--fs-14);font-weight:700;text-align:center}
.upd-bar.info{font-weight:400}
.upd-bar .b{padding:5px 14px}
:root{--upd-h:46px}
body.upd-on{padding-top:var(--upd-h)}
body.upd-on header,body.upd-on .kk-head{top:var(--upd-h)}
.note.err{background:var(--errbg);color:var(--err);border:1px solid var(--errline)}
.note.info{background:var(--acc2);color:var(--ink);border:1px solid var(--line)}
.note.auto{background:var(--autobg);color:var(--auto);border:1px solid var(--line)}
/* Kliento kortelės įmonių paieška (registras / ES VIES) */
#cFind{display:flex;flex-direction:column;margin-top:-4px;border:1px solid var(--line);border-radius:7px;background:var(--card);
  max-height:300px;overflow:auto}
#cFind.hide{display:none}
.imf-e{display:block;width:100%;text-align:left;padding:7px 10px;border:0;border-bottom:1px solid var(--line2);background:none;
  color:var(--ink);font:inherit;font-size:var(--fs-13);cursor:pointer}
.imf-e:last-child{border-bottom:0}
.imf-e:hover,.imf-e.on{background:var(--hov)}
.imf-e .mut{display:block;font-size:var(--fs-12);margin-top:2px}
.imf-w{color:var(--warn);font-size:var(--fs-12);font-weight:400}
.imf-m{padding:7px 10px;font-size:var(--fs-12)}
.price{font-size:var(--fs-28);font-weight:700;letter-spacing:-.02em}
.price small{font-size:var(--fs-13);font-weight:400;color:var(--mut)}
.kv{display:flex;justify-content:space-between;gap:10px;padding:4px 0;border-bottom:1px dashed var(--line);font-size:var(--fs-13)}
.kv:last-child{border-bottom:0}.kv span:first-child{color:var(--mut)}
.kv span:last-child{font-family:var(--font);font-variant-numeric:tabular-nums}
.mut{color:var(--mut);font-size:var(--fs-12)}
table{width:100%;border-collapse:collapse;font-size:var(--fs-13)}
th,td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-size:var(--fs-11);text-transform:uppercase;letter-spacing:.05em;color:var(--mut)}
td code{font-family:var(--font);font-variant-numeric:tabular-nums;font-size:var(--fs-11)}
tr.guess{background:var(--guess)}
.tag{display:inline-block;font-size:var(--fs-11);font-weight:700;padding:1px 6px;border-radius:4px;font-family:var(--font);font-variant-numeric:tabular-nums}
.t-ALT{background:#fde8e8;color:#9b1c1c}.t-UNL{background:#e6f4ea;color:#0a7d3f}
.t-REQ{background:#e0e7ff;color:#3730a3}.t-NEG{background:#fef3c7;color:#92400e}.t-ADD{background:#e0f2fe;color:#075985}.t-SUG{background:#ecfccb;color:#3f6212}
.stick{position:sticky;top:62px}
/* LENTELĖS TELEFONE. „tblwrap" markupe buvo nuo pat pradžių, bet stiliaus
   neturėjo — todėl plati lentelė stumdavo į šoną visą puslapį, ir telefone
   statistika „netilpdavo": realiai ji buvo už ekrano krašto. Dabar slenka
   pati lentelė, o puslapis stovi vietoje. */
.tblwrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
/* Ilgas kodas gali lūžti; tekstas ir mygtukai — ne. Anksčiau leidau lūžti
   viskam, ir telefone „Atidaryti" virsdavo „Ati / dar / yti". */
td code{overflow-wrap:anywhere}
td .b, th .b{white-space:nowrap}
/* PASIŪLYMŲ REGISTRAS (Paulius 2026-10-07: „negražiai tik išdėliojo"). Atsiradus „→ Komplektavimas",
   mygtukų eilutė su „white-space:nowrap" tapo plačiausiu stulpeliu ir suspaudė kitus — numeris lūžo
   po kelias raides („HB-202 / 6-004 / 2"), kaina — nuo „€". Dabar mygtukai persikelia į kitą eilutę
   (ne platesni nei .q-veiksmai), o numeris, data ir kaina nelūžta. Kad ~1000 px ekrane lentelė tilptų be
   šoninio slinkimo — siauresni langelių tarpai, o pardavėjo el. paštas gali lūžti prieš „@". */
table.q-lent th,table.q-lent td{padding:6px 6px}
td.q-nr code{overflow-wrap:normal;white-space:nowrap}
td.q-kaina{text-align:right;font-family:var(--font);font-variant-numeric:tabular-nums;white-space:nowrap}
.q-veiksmai{display:flex;flex-wrap:wrap;gap:4px;max-width:330px}
.q-veiksmai .b{padding:3px 9px;font-size:var(--fs-12)}
pre{font-family:var(--font);font-variant-numeric:tabular-nums;font-size:var(--fs-11);background:#0f1419;color:#d7dde5;padding:11px;border-radius:8px;overflow:auto;max-height:300px;margin:0}
details summary{cursor:pointer;font-size:var(--fs-12);color:var(--mut);margin-top:9px}
.hide{display:none}
.opt .pr{font-family:var(--font);font-size:var(--fs-12);font-variant-numeric:tabular-nums;color:var(--ink);flex:none;padding-top:1px}
.opt .pr.none{color:var(--mut)}
.pr.exact{color:var(--ok);font-weight:700}
.opt .pr{text-align:right}
.opt .pr small{display:block;font-size:var(--fs-10);font-weight:400;color:var(--mut);line-height:1.15;font-family:var(--font);font-variant-numeric:tabular-nums}
.kv small{font-family:var(--font);font-variant-numeric:tabular-nums;color:var(--mut);font-size:var(--fs-11)}
/* Pasiūlymo eilutės: pavadinimas | kaina | svoris. Kaina ir svoris viename
   langelyje neišsirikiuodavo — ilgas pavadinimas juos nustumdavo į kitą eilutę. */
#quote .q,#vquote .q,#fquote .q,#lquote .q{display:grid;grid-template-columns:1fr 76px 64px;gap:8px;align-items:baseline;
  padding:4px 0;border-bottom:1px dashed var(--line);font-size:var(--fs-13)}
#quote .q>span:first-child,#vquote .q>span:first-child,#fquote .q>span:first-child,#lquote .q>span:first-child{color:var(--mut)}
#quote .q>span+span,#vquote .q>span+span,#fquote .q>span+span,#lquote .q>span+span{font-family:var(--font);font-variant-numeric:tabular-nums;text-align:right;
  white-space:nowrap}
#quote .q>span:last-child,#vquote .q>span:last-child,#fquote .q>span:last-child,#lquote .q>span:last-child{color:var(--mut);font-size:var(--fs-12)}
#quote .q.tot,#vquote .q.tot,#fquote .q.tot,#lquote .q.tot{border-top:1px solid var(--line);border-bottom:0;margin-top:4px;padding-top:7px}
#quote .q.tot>span,#vquote .q.tot>span,#fquote .q.tot>span,#quote .q>span>b,#vquote .q>span>b,#fquote .q>span>b,#lquote .q.tot>span,#lquote .q>span>b{font-weight:700}
#quote .q.tot>span:first-child,#vquote .q.tot>span:first-child,#fquote .q.tot>span:first-child,#quote .q.hdr>span:first-child,#vquote .q.hdr>span:first-child,#fquote .q.hdr>span:first-child,#lquote .q.tot>span:first-child,#lquote .q.hdr>span:first-child{color:var(--ink)}
#quote .q.hdr>span,#vquote .q.hdr>span,#fquote .q.hdr>span,#lquote .q.hdr>span{color:var(--ink)}
/* „Papildomai galime pasiūlyti" rezultato kortelėje (Paulius 2026-10-07) — kaip pasiūlymo eilutės, su mygtuku
   „Nesiūlyti" (×); nuimtos — eilutėje „Nesiūloma:" su grąžinimu. Abiem konfigūratoriams (papildEkranoHtml). */
.papild .q{display:grid;grid-template-columns:1fr 76px 52px 14px;gap:8px;align-items:baseline;
  padding:4px 0;border-bottom:1px dashed var(--line);font-size:var(--fs-13)}
.papild .q>span:first-child{color:var(--mut)}
.papild .q>span:nth-child(2),.papild .q>span:nth-child(3){font-family:var(--font);font-variant-numeric:tabular-nums;
  text-align:right;white-space:nowrap}
.papild .q>span:nth-child(3){color:var(--mut);font-size:var(--fs-12)}
.papild .papx{border:0;background:none;color:var(--mut);cursor:pointer;padding:0;font:inherit;line-height:1}
.papild .papx:hover{color:var(--err)}
.papild .nu{margin-top:6px;font-size:var(--fs-12);color:var(--mut);line-height:1.7}
.papild .nu .papx{font-size:var(--fs-12);margin-right:10px;text-decoration:underline dotted}
.papild .nu .papx:hover{color:var(--ink)}
/* Etapo antraštė pasiūlymo eilutėse. Pardavėjas ir klientas skaito tą patį
   dokumentą, kurį matė konfigūruodamas — todėl ir skirstymas tas pats. */
/* Varnelių tinklelis prieigos lange. Bendroji taisyklė „input{width:100%}"
   išpučia ir varnelę, todėl čia ji grąžinama į savo dydį — kitaip pirmoji
   varnelė atrodo kaip įvedimo laukas, o tekstas nustumiamas į dešinę. */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:2px 16px}
.pgrid label{display:flex;align-items:center;gap:8px;font-size:var(--fs-13);padding:5px 0;
  cursor:pointer;text-align:left;line-height:1.3}
.pgrid input[type=checkbox]{flex:0 0 auto;width:16px;height:16px;padding:0;margin:0;
  border-radius:3px;accent-color:var(--acc)}
.pgrid label>span{flex:1;min-width:0}
.pgrid .none{grid-column:1/-1;color:var(--mut);font-size:var(--fs-12)}
#cdlg{max-width:640px}
.khist{max-height:260px;overflow:auto;font-size:var(--fs-12)}
.khist .kh-e{padding:6px 0;border-bottom:1px solid var(--line2)}
.khist .kh-m{color:var(--mut);font-size:var(--fs-11);margin-bottom:2px}
#quote .q.grp,#vquote .q.grp,#fquote .q.grp,#lquote .q.grp{border-bottom:0;padding:9px 0 2px;grid-template-columns:1fr}
#quote .q.grp>span,#vquote .q.grp>span,#fquote .q.grp>span,#lquote .q.grp>span{color:var(--mut);font-size:var(--fs-11);font-weight:700;
  text-transform:uppercase;letter-spacing:.06em}
/* REZULTATO KORTELĖ (Paulius 2026-10-16: „mirga marga, sunku suprasti, kas kur, kainos nesimato, nes kai išsiplečia
   pametamas anchor"; pasirinktas variantas A). Visuose konfigūratoriuose vienodai: viršus (.rez-top — kaina, svoris,
   PDF būsena) visada matomas, po juo — suskleidžiami blokai (.rez-d), prie kiekvieno — jo suma ar pagrindinis skaičius.
   Plačiame ekrane kortelė ne aukštesnė už langą ir slenka tik blokų dalis — anksčiau visa kortelė buvo „sticky", bet
   aukštesnė už ekraną, todėl kaina nuvažiuodavo. Siaurame (≤1100 px) kortelė puslapio apačioje — kainą rodo juosta #mbar. */
@media(min-width:1101px){
  .stick>.card.rez{display:flex;flex-direction:column;max-height:calc(100vh - 40px)}
  .card.rez>.rez-body{overflow-y:auto;min-height:0;margin-right:-10px;padding-right:10px}
}
.rez-top{padding-bottom:8px;border-bottom:1px solid var(--line)}
.rez-sub{font-size:var(--fs-13);color:var(--mut);margin-top:3px}
.rez-sub>span:empty{display:none}
.rez-sub>span+span::before{content:" · "}
.rez-sub b{color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}
.rez-ok{font-size:var(--fs-13);color:var(--ok);margin-top:7px}
details.rez-bl{margin-top:8px;padding:8px 10px}
details.rez-bl>summary{margin:0;font-size:var(--fs-13);color:var(--err);list-style:none}
details.rez-bl>summary::-webkit-details-marker{display:none}
details.rez-bl>summary .rez-n{white-space:nowrap;text-decoration:underline dotted}
details.rez-bl[open]>summary .rez-n{display:none}
details.rez-bl>div{margin-top:4px;font-size:var(--fs-13)}
.note.rez-lauk{margin-top:8px;padding:8px 10px;font-size:var(--fs-13);color:var(--mut)}
.rez-d{border-bottom:1px solid var(--line)}
/* Ašių patikra ir brėžinys (docs/darbai.md 27). ProBox piešinys spalvas ima iš --accent / --draw / --paper… —
   .pbbrez jas nukreipia į brėžinio (popieriaus) kintamuosius. */
#patikra .pbn{margin-top:6px;font-size:var(--fs-13);line-height:1.4}
.pbt{width:100%;border-collapse:collapse;font-size:var(--fs-13);margin:6px 0 2px}
.pbt th,.pbt td{padding:3px 4px;border-bottom:1px solid var(--line);text-align:left;font-weight:400}
.pbt th{color:var(--mut);font-size:var(--fs-11)}
.pbt .n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.pbdis{font-size:var(--fs-11);color:var(--mut);margin:3px 0 8px}
.pbpast{margin:6px 0;font-size:var(--fs-12)}
.pbpast>summary{cursor:pointer;color:var(--mut)}
.pbp{margin:4px 0;line-height:1.35}
.pbvid{margin:6px 0;font-size:var(--fs-12);line-height:1.35}
.pbp.bad b{color:var(--err)}
.pbp.warn b{color:var(--warn)}
.pbap>summary{cursor:pointer;font-weight:700}
.pbbrez{--accent:var(--brez-linija);--ink:var(--brez-linija);--ink-3:var(--brez-pilka);--paper:var(--brez-popierius);
  --draw:var(--brez-linija);--draw-soft:var(--brez-pilka);--dim:var(--brez-matmuo);--ext:var(--brez-prailg);
  background:var(--brez-popierius);border-radius:6px;margin-top:8px}
.pbbrez svg{display:block;width:100%;height:auto}
/* Skirtukai „Brėžinys | Europaletės“ virš brėžinio (eilės 117 p.; pbPalSkirtukas) — rodomi tik kai paletės telpa. */
.pbsk{display:flex;gap:6px;margin:0 0 2px}
.pbsk[hidden],.pbbrez[hidden]{display:none}
.pbsk-b{font:inherit;font-size:var(--fs-12);padding:4px 12px;border:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--mut);cursor:pointer}
.pbsk-b.on{background:var(--ink);border-color:var(--ink);color:var(--onacc);font-weight:700}
.pbsk-b:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
/* Tuščios važiuoklės brėžinio paaiškinimas ir trūkstami duomenys (pbTusciaPiesk). */
.pbtv{font-size:var(--fs-12);color:var(--mut);margin-top:6px;line-height:1.4}
.rez-d>summary,.rg>summary{list-style:none;cursor:pointer}
.rez-d>summary::-webkit-details-marker,.rg>summary::-webkit-details-marker{display:none}
.rez-d>summary{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:0;padding:9px 0;
  font-size:var(--fs-13);font-weight:700;color:var(--ink)}
.rez-d>summary::before,.rg>summary>span:first-child::before{content:"▸";display:inline-block;width:13px;color:var(--mut);
  font-weight:400;transition:transform .12s}
.rez-d[open]>summary::before,.rg[open]>summary>span:first-child::before{transform:rotate(90deg)}
.rez-d>summary>span:first-of-type{margin-right:auto}
/* Vienos reikšmės blokas (faneravimo, liftų savikaina) — be išskleidimo, bet tokio pat pavidalo. */
.rez-row{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:9px 0 9px 13px;font-size:var(--fs-13);
  font-weight:700;color:var(--ink)}
.rez-d>summary .rez-s,.rez-row .rez-s{font-family:var(--font);font-size:var(--fs-12);font-weight:400;color:var(--mut);text-align:right;
  font-variant-numeric:tabular-nums}
.rez-d>div{padding-bottom:8px}
:is(#quote,#vquote,#fquote,#lquote) .rg>summary.q.grp{grid-template-columns:1fr 76px 64px;margin:0;padding:6px 0;
  border-bottom:1px dashed var(--line)}
:is(#quote,#vquote,#fquote,#lquote) .rg>summary.q.grp>span+span{font-size:var(--fs-12);font-weight:400;text-transform:none;
  letter-spacing:0;color:var(--ink)}
:is(#quote,#vquote,#fquote,#lquote) .rg>summary.q.grp>span:last-child{color:var(--mut);font-size:var(--fs-12)}
.rg>summary .rg-n{font-weight:400;margin-left:4px}
.rg>.q{padding-left:13px}
#pchg{font-size:var(--fs-12);color:var(--mut);margin:-7px 0 10px;min-height:16px}
#pchg b{color:var(--ink);font-variant-numeric:tabular-nums}
.spin{display:inline-block;width:11px;height:11px;border:2px solid var(--line);border-top-color:var(--acc);border-radius:50%;animation:s .7s linear infinite;vertical-align:-1px}
@keyframes s{to{transform:rotate(360deg)}}
/* Lango plotis pastovus: be „min-width" maža nuotrauka suspausdavo visą
   langą iki savo pločio, ir kiekvienas „?" atrodydavo vis kitokio dydžio. */
dialog{border:1px solid var(--line);border-radius:11px;padding:20px;
  width:min(520px,92vw);max-width:92vw;
  max-height:85vh;overflow:auto;box-shadow:0 20px 50px rgba(0,0,0,.2);background:var(--card);color:var(--ink)}
/* NUOTRAUKOS RĖMAS. Lape suvestos nuotraukos bus įvairaus dydžio ir formos:
   viena plati, kita stati, trečia maža. Be rėmo stati nuotrauka išpūstų
   langą per visą ekraną, o maža būtų ištempta ir susilietų.
   Rėmas — pastovaus santykio langelis; „scale-down" reiškia: didelę
   sumažinam, kad tilptų visa, mažos NEDIDINAM. Taip nė viena nenukerpama
   ir nė viena nesusilieja, o visos atrodo vienodo dydžio. */
.fotoram{aspect-ratio:4/3;background:var(--sunk);border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:11px}
.fotoram img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:scale-down;display:block}
dialog h4{margin:0 0 8px;font-size:var(--fs-16)}
/* Vartotojų kvietimas ir teisės — iššokantys langai (Paulius 2026-11-03): trys laukai eilutėje, todėl platesni už įprastą
   langą. Sąrašo viršuje — paieška ir „+ Pakviesti vartotoją" vienoje eilutėje (telefone — vienas po kitu). */
dialog.usdlg{width:min(860px,94vw)}
.us-top{display:flex;gap:10px;align-items:end;margin-bottom:10px}
.us-top .of{flex:1;min-width:0}
@media(max-width:600px){.us-top{flex-direction:column;align-items:stretch}dialog.usdlg .row.r3{grid-template-columns:1fr}}

