/* ===== VIDI Kartes — zīmola stils (krāsas no vidi.lv) ===== */
:root{
  --orange:#F57237;      /* Satikts */
  --logo:#ee7237;        /* “Rudens oranžs” — oficiālā logo krāsa no zīmola faila */
  --orange-dk:#D95A22;
  --blue:#3BA7DD;        /* vēl nav apmeklēts */
  --brown:#824216;
  --brown-dk:#6A3611;
  --tan:#A8804F;
  --sand:#E2D7CF;
  --cream:#F2EBE5;
  --grey:#F3F3F3;
  --ink:#2A1A0D;
  --muted:#8A7361;
  --line:rgba(130,66,22,.16);
  --shadow:0 6px 24px rgba(106,54,17,.13);
  --radius:12px;
  --font:"Plus Jakarta Sans","Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;height:100%}
body{font-family:var(--font);color:var(--brown-dk);background:var(--cream);
  font-size:15px;line-height:1.45;-webkit-text-size-adjust:100%}
a{color:var(--brown);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{margin:0 0 .5em;font-weight:700;letter-spacing:-.01em}
h1{font-size:1.5rem}h2{font-size:1.18rem}h3{font-size:1rem}
small{color:var(--muted)}

/* ---------- pogas ---------- */
.btn{display:inline-flex;align-items:center;gap:.45em;justify-content:center;
  padding:.55em 1.05em;border-radius:10px;border:1px solid transparent;cursor:pointer;
  font:inherit;font-weight:600;background:var(--brown);color:#fff;transition:.15s;white-space:nowrap}
.btn:hover{background:var(--brown-dk);text-decoration:none}
.btn:active{transform:translateY(1px)}
.btn.ghost{background:#fff;color:var(--brown);border-color:var(--line)}
.btn.ghost:hover{background:var(--cream)}
.btn.orange{background:var(--orange)}
.btn.orange:hover{background:var(--orange-dk)}
.btn.sm{padding:.35em .7em;font-size:.85rem;border-radius:8px}
.btn.danger{background:#fff;color:#B3261E;border-color:rgba(179,38,30,.3)}
.btn.danger:hover{background:#FDECEA}
.btn[disabled]{opacity:.5;cursor:default}
/* Bez šī noteikuma display:inline-flex uzvar pārlūka [hidden] noteikumu, un
   poga, kas paslēpta no JavaScript, paliek redzama (tā “Atiestatīt filtrus”
   piedāvājās arī tad, kad nebija izvēlēts neviens reģions un filtri nav
   vainīgi). Tas pats iemesls, kas .checkline[hidden] zemāk. */
.btn[hidden]{display:none}

/* ---------- formas ---------- */
label{font-weight:600;font-size:.85rem;color:var(--brown);display:block;margin-bottom:.3em}
input[type=text],input[type=email],input[type=password],input[type=search],select,textarea{
  width:100%;padding:.6em .75em;border:1px solid var(--line);border-radius:10px;
  font:inherit;color:var(--ink);background:#fff}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(245,114,55,.45);outline-offset:1px;border-color:var(--orange)}
input[type=file]{width:100%;padding:.5em;border:1px dashed var(--line);border-radius:10px;background:#fff}
.field{margin-bottom:.9rem}
.row{display:flex;gap:.75rem;flex-wrap:wrap}
.row>*{flex:1 1 200px}
.checkline{display:flex;align-items:center;gap:.5em;font-weight:500;margin:.25em 0}
.checkline input{width:auto;margin:0}

/* ---------- kartītes / tabulas ---------- */
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:1.1rem 1.2rem;box-shadow:0 1px 2px rgba(106,54,17,.05);margin-bottom:1rem}
table{width:100%;border-collapse:collapse;font-size:.9rem}
th{text-align:left;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;
  color:var(--muted);padding:.5em .6em;border-bottom:1px solid var(--line);font-weight:700}
td{padding:.55em .6em;border-bottom:1px solid rgba(130,66,22,.08);vertical-align:middle}
tr:last-child td{border-bottom:none}
.badge{display:inline-block;padding:.15em .6em;border-radius:999px;font-size:.75rem;font-weight:700}
.badge.ok{background:rgba(46,125,91,.14);color:#22684C}
.badge.off{background:rgba(0,0,0,.07);color:#6b6b6b}
.badge.adm{background:rgba(245,114,55,.16);color:var(--orange-dk)}
/* Atstarpe zem plāksnes ir daļa no pašas plāksnes: bez tās paziņojums
   pielīp tam, par ko tas runā (“Šāds e-pasts jau eksistē” pie lietotāju
   tabulas). Vairāk nekā desmit vietās šī atstarpe bija pierakstīta ar roku
   veidnē — tas ir tas pats noteikums, tikai divpadsmit reizes. 1rem = solis
   starp kartītēm, tāpēc lapas ritms nemainās. Augšmalu NEliekam: dažur
   plāksne ir pirmā elementā, un tur atstarpe augšā būtu lieka. */
.note{background:var(--sand);border-radius:10px;padding:.7em .9em;font-size:.87rem;
  margin-bottom:1rem}
/* Ja plāksne ir pēdējā kartītē, atstarpe zem tās vairs nav atstarpe — tā ir
   tukša josla pirms kartītes malas. Tāpēc pēdējam elementam to noņemam. */
.note:last-child{margin-bottom:0}
.note.warn{background:#FFF3E6;border:1px solid rgba(245,114,55,.35)}
.note.err{background:#FDECEA;border:1px solid rgba(179,38,30,.3);color:#8C1D18}
.dot{width:12px;height:12px;border-radius:50%;display:inline-block;flex:none;
  border:2px solid #fff;box-shadow:0 0 0 1px rgba(0,0,0,.15)}

/* ================= AUGŠĒJĀ JOSLA ================= */
.topbar{display:flex;align-items:center;gap:.9rem;padding:.55rem .9rem;background:var(--brown-dk);
  color:#fff;flex:none;box-shadow:0 2px 10px rgba(0,0,0,.18);z-index:900;position:relative}
.topbar a{color:#fff}
.logo{display:flex;align-items:center;gap:.5rem;font-weight:800;letter-spacing:-.02em;font-size:1.05rem}
/* VIDI vārda zīme: proporcijas 644.28:177.87 (no zīmola faila), tāpēc platumu
   rēķinām no augstuma. Krāsa uz zīmes, nevis uz .logo — citādi to pārrakstītu
   .auth .logo. */
.logo .mark{height:19px;width:calc(19px * 644.28 / 177.87);flex:none;
  color:var(--logo);display:block}
.logo span.sub{font-weight:600;opacity:.8;font-size:.92rem;line-height:1;
  padding-left:.5rem;border-left:1px solid rgba(255,255,255,.28)}
.auth .logo span.sub{border-left-color:rgba(130,66,22,.25)}
.topbar .spacer{flex:1}
.topbar .who{font-size:.85rem;opacity:.85;max-width:26vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.panel-user{display:none}
.tb-btn{background:rgba(255,255,255,.12);border:none;color:#fff;font:inherit;font-weight:600;
  padding:.4em .75em;border-radius:8px;cursor:pointer;font-size:.85rem}
.tb-btn:hover{background:rgba(255,255,255,.22);text-decoration:none}
.tb-btn.active{background:var(--orange)}
select.tb-select{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);color:#fff;
  width:auto;max-width:34vw;padding:.4em .6em;font-size:.9rem;font-weight:600;border-radius:8px}
select.tb-select option{color:var(--ink)}

/* ================= SKATĪTĀJS ================= */
.app{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}
.workspace{flex:1;display:flex;min-height:0;position:relative}
#map{flex:1;min-width:0;background:#dfe6e2;z-index:1}

.panel{width:320px;flex:none;background:#fff;border-right:1px solid var(--line);
  display:flex;flex-direction:column;min-height:0;z-index:500}
/* scrollbar-gutter: vieta ritjoslai ir rezervēta vienmēr. Citādi, sakļaujot
   reģionus, saraksts saīsinās, ritjosla pazūd un panelis “palec” platumā. */
.panel .scroll{overflow:auto;scrollbar-gutter:stable;padding:.85rem;flex:1}
.panel h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:1.1rem 0 .45rem}
/* Tikai pašam pirmajam virsrakstam panelī. Agrāk noteikums ķēra arī “Datu tips”
   (tas ir pirmais bērns savā ietvarā), un tas pielipa pie filtra pogām. */
.panel .scroll > h3:first-child{margin-top:0}

.searchbox{position:relative;padding:.7rem .85rem;border-bottom:1px solid var(--line);flex:none}
/* Lupa: SVG, nevis “⌕” zīme — tai fontā ir savs, greizs novietojums.
   Atstarpes abās pusēs vienādas: 13 px no lodziņa malas, 13 px līdz tekstam. */
.searchbox input{padding-left:2.55rem}
.searchbox .ico{position:absolute;left:1.65rem;top:50%;transform:translateY(-50%);
  display:flex;color:var(--brown);opacity:.5;pointer-events:none}
.results{position:absolute;left:.85rem;right:.85rem;top:calc(100% - .35rem);background:#fff;
  border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);max-height:44vh;
  overflow:auto;z-index:1000;display:none}
.results.open{display:block}
.results button{display:block;width:100%;text-align:left;background:none;border:none;
  padding:.55em .8em;font:inherit;cursor:pointer;border-bottom:1px solid rgba(130,66,22,.08)}
.results button:hover{background:var(--cream)}
.results .ttl{font-weight:600;font-size:.9rem}
.results .sub{font-size:.75rem;color:var(--muted)}

/* Kuru atzīmes rādīt. Tālāk uzreiz nāk progresa kartīte — tā ir tas pats
   skaitlis citā nozīmē, un bez atstarpes tā izskatījās pielipusi izvēlnei. */
.marks-src{margin-bottom:1.1rem}

/* progress */
.progress-card{background:var(--cream);border-radius:12px;padding:.8rem .9rem}
.progress-top{display:flex;justify-content:space-between;align-items:baseline;font-weight:700}
.progress-top .big{font-size:1.35rem;color:var(--orange-dk)}
.bar{height:8px;border-radius:99px;background:rgba(59,167,221,.25);overflow:hidden;margin-top:.5rem}
.bar > i{display:block;height:100%;background:var(--orange);border-radius:99px;transition:width .3s}

/* filtrs */
.segmented{display:flex;background:var(--grey);border-radius:10px;padding:3px;gap:3px}
.segmented button{flex:1;border:none;background:none;font:inherit;font-size:.8rem;font-weight:600;
  color:var(--muted);padding:.4em .2em;border-radius:8px;cursor:pointer}
.segmented button.on{background:#fff;color:var(--brown-dk);box-shadow:0 1px 3px rgba(0,0,0,.12)}

/* vietu nosaukumi uz satelīta — balti burti ar melnu kontūru.
   paint-order:stroke fill zīmē kontūru ZEM burta. Bez tā kontūra uzliekas
   burtam virsū, apēd tievās līnijas, un mazie uzraksti izskatās aizsmērēti.
   text-stroke vēl nav visur bez priedēkļa, tāpēc rakstām abus. */
.vietas-nos{
  display:inline-block;white-space:nowrap;font-weight:700;line-height:1.35;
  font-family:system-ui,-apple-system,"Segoe UI",sans-serif;
  color:#fff;-webkit-text-stroke:2.5px #000;text-stroke:2.5px #000;
  paint-order:stroke fill;
  /* Ja pārlūks paint-order neprot, kontūra sanāk tievāka, bet uzraksts paliek
     salasāms; ēna zem tā nodrošina, ka gaišā laukā tas nepazūd pavisam. */
  text-shadow:0 1px 2px rgba(0,0,0,.55);
}

/* slāņi */
.layer{display:flex;align-items:flex-start;gap:.6em;padding:.5em .55em;border-radius:10px;cursor:pointer}
.layer:hover{background:var(--cream)}
.layer input{margin:.25em 0 0;width:auto;accent-color:var(--brown)}
.layer .lname{font-weight:600;font-size:.9rem;line-height:1.25;word-break:break-word}
.layer .lmeta{font-size:.75rem;color:var(--muted);display:flex;align-items:center;gap:.4em;margin-top:.15em}
.layer .lbar{height:4px;border-radius:99px;background:rgba(130,66,22,.12);margin-top:.35em;overflow:hidden}
.layer .lbar > i{display:block;height:100%;background:var(--orange)}
.layer.off{opacity:.45}
.layer-body{flex:1;min-width:0}

.legend{display:flex;flex-direction:column;gap:.35em;font-size:.83rem}
.legend div{display:flex;align-items:center;gap:.5em}

/* mobilais panelis */
.panel-toggle{display:none}
.backdrop{display:none}
@media (max-width:860px){
  .panel{position:absolute;left:0;top:0;bottom:0;width:min(86vw,340px);transform:translateX(-102%);
    transition:transform .22s ease;box-shadow:var(--shadow)}
  .panel.open{transform:none}
  .backdrop.open{display:block;position:absolute;inset:0;background:rgba(0,0,0,.35);z-index:400}
  .panel-toggle{display:inline-flex}
  /* Vārds un pogas “Administrēšana” / “Iziet” joslā neietilpst (Iziet aizgāja
     pat aiz ekrāna malas), tāpēc uz telefona tās pārceļas paneļa augšā. */
  .topbar .who, .tb-desktop{display:none}
  .panel-user{display:flex;align-items:center;gap:.5rem;padding:.6rem .85rem;
    border-bottom:1px solid var(--line);background:var(--cream)}
  .panel-user .pu-name{flex:1;min-width:0;font-weight:700;font-size:.9rem;color:var(--brown-dk);
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .panel-user .pu-links{display:flex;gap:.35rem;flex:none}
  .panel-user a{background:var(--sand);color:var(--brown-dk);font-weight:600;font-size:.78rem;
    padding:.4em .7em;border-radius:8px;white-space:nowrap}
  select.tb-select{max-width:40vw}
}

/* ================= PUNKTA LOGS ================= */
.leaflet-popup-content-wrapper{border-radius:14px;box-shadow:var(--shadow);padding:0;overflow:hidden}
.leaflet-popup-content{margin:0;width:320px!important;max-width:82vw;font-family:var(--font)}
.leaflet-popup-tip{background:#fff}
/* Kartīte rādās visa uzreiz, bez ritināšanas. max-height ir tikai drošības
   robeža: ja punktam kādreiz būtu ļoti daudz kolonnu, kartīte neizaugtu garāka
   par ekrānu (citādi augšu vai apakšu nebūtu iespējams aizsniegt). */
.pp{display:flex;flex-direction:column;max-height:min(calc(100vh - 130px),900px)}
.pp-head{padding:.7rem .45rem .5rem;border-bottom:1px solid var(--line)}
.pp-layer{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);
  display:flex;align-items:center;gap:.4em;margin-bottom:.2em}
/* “Paslēpts darbiniekiem” punkta logā — redz tikai administrators. Sarkans un
   pie virsraksta, nevis kaut kur zemāk: tas ir svarīgākais par šo punktu. */
.pp-slepts{margin-top:.35em;font-size:.75rem;font-weight:700;color:#B3261E;
  background:#FDECEA;border:1px solid rgba(179,38,30,.25);border-radius:7px;
  padding:.25em .5em;display:inline-block}
.pp-title{font-weight:700;font-size:1.02rem;line-height:1.25;color:var(--brown-dk);word-break:break-word}
.pp-body{overflow:auto;padding:.55rem .45rem;flex:1}
.pp-f{display:grid;grid-template-columns:1fr;gap:.1em;padding:.35em 0;border-bottom:1px solid rgba(130,66,22,.07)}
.pp-f:last-child{border-bottom:none}
.pp-f .k{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700}
.pp-f .v{font-size:.9rem;word-break:break-word}
.pp-foot{padding:.6rem .45rem;border-top:1px solid var(--line);background:var(--cream);
  display:flex;flex-direction:column;gap:.55rem}

/* Satikts slēdzis */
.satikts{display:flex;align-items:center;gap:.65em;background:#fff;border:2px solid var(--line);
  border-radius:12px;padding:.6em .75em;cursor:pointer;font-weight:700;user-select:none;
  transition:.15s;font-size:.95rem}
.satikts:hover{border-color:var(--orange)}
.satikts input{width:22px;height:22px;margin:0;accent-color:var(--orange);flex:none;cursor:pointer}
.satikts.on{background:var(--orange);border-color:var(--orange);color:#fff}
.satikts.on input{accent-color:#fff}
.satikts .when{font-weight:500;font-size:.75rem;opacity:.85;display:block}
.pp-note textarea{font-size:.85rem;min-height:2.4em;resize:vertical}
/* Kopskats “Visu darbinieku atzīmes”: ķeksīša vietā — kurš un kad. Baltā
   kastē kā “Satikts” slēdzis, lai kājenē neizskatītos pēc turpinājuma
   punkta laukiem, un ar savu ritjoslu: cilvēku var būt desmit. */
.pp-marks{background:#fff;border:2px solid var(--line);border-radius:12px;
  padding:.55em .7em;max-height:11em;overflow:auto}
.pp-marks > b{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;
  color:var(--muted);display:block;margin-bottom:.3em}
.pp-mark{display:grid;gap:.05em;padding:.3em 0;border-bottom:1px solid rgba(130,66,22,.07)}
.pp-mark:last-child{border-bottom:none}
.pp-mark .k{font-weight:700;font-size:.85rem;color:var(--brown-dk)}
.pp-mark .v{font-size:.78rem;color:var(--muted);word-break:break-word}
/* Visas pogas ir sarindotas pie kreisās malas: rindas pārnesas, bet katra
   sākas tur, kur sākas “Satikts” lodziņš augstāk. Agrāk “Dzēst punktu”
   ar margin-left:auto bija atgrūsts pie labās malas un stāvēja šķībi pret
   pārējām. Nejaušu dzēšanu notur apstiprinājuma logs, nevis atstatums. */
.pp-links{display:flex;gap:.5em;flex-wrap:wrap;justify-content:flex-start}
/* Piezīme pirms slāņu saraksta (administratoram). Maza un pelēka: tā ir uzziņa,
   nevis brīdinājums — punkti nav pazuduši, tos vienkārši neredz darbinieki. */
.slepti-note{margin:0 0 .5rem;font-size:.72rem;color:var(--muted);line-height:1.4}
.slepti-note b{color:var(--brown-dk)}
/* Ikona ir atsevišķā span ar atstatumu: “⊘” blakus tekstam bez atstarpes
   salipa ar pirmo vārdu. Pati zīme ir U+2298, nevis U+20E0 — pēdējā ir
   KOMBINĒJAMĀ zīme, tāpēc tā mēģināja uzgulties blakus burtam. */
.slepti-note .sn-ikona{margin-right:.4em}
.pp-spin{padding:2rem;text-align:center;color:var(--muted)}
/* Uz telefona kartīte izmanto gandrīz visu ekrāna platumu. Šis bloks ir JĀBŪT
   pēc augšējiem noteikumiem: mobilais bloks faila sākumā ir agrāk un bāzes
   max-width:82vw to pārmāktu. */
@media (max-width:860px){
  .leaflet-popup-content{width:90vw!important;max-width:90vw}
}

/* klasteri */
.mc{display:flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;
  font-weight:700;font-family:var(--font);box-shadow:0 2px 6px rgba(0,0,0,.3);border:2px solid #fff}
.mc-l{font-size:11px}
.mc-m{font-size:12px}
.mc-b{font-size:13px}

/* ================= LOGIN ================= */
.auth-wrap{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;
  padding:1.2rem;background:
   radial-gradient(1000px 500px at 15% -10%,rgba(245,114,55,.18),transparent 60%),
   radial-gradient(900px 500px at 100% 110%,rgba(130,66,22,.22),transparent 55%),var(--cream)}
.auth{width:100%;max-width:390px;background:#fff;border-radius:18px;padding:2rem 1.8rem;
  box-shadow:var(--shadow);border:1px solid var(--line)}
.auth .logo{color:var(--brown-dk);justify-content:center;margin-bottom:.4rem;font-size:1.3rem}
.auth p.sub{text-align:center;color:var(--muted);font-size:.87rem;margin:0 0 1.4rem}
.auth .btn{width:100%;margin-top:.4rem;padding:.7em}
.auth .langs{text-align:center;margin-top:1.1rem;font-size:.8rem}
.auth .langs a{color:var(--muted);margin:0 .35em}

/* ================= ADMINS ================= */
.admin{max-width:1120px;margin:0 auto;padding:1.3rem 1rem 4rem}
.tabs{display:flex;gap:.4rem;margin-bottom:1.2rem;flex-wrap:wrap}
.tabs a{padding:.45em .95em;border-radius:99px;font-weight:600;font-size:.9rem;
  background:#fff;border:1px solid var(--line);color:var(--brown)}
.tabs a.on{background:var(--brown-dk);color:#fff;border-color:var(--brown-dk)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media (max-width:800px){.grid2{grid-template-columns:1fr}}
.map-row{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;justify-content:space-between}
/* Viens novads = viens ietvars. Reģionā ir līdz trīsdesmit slāņu, un vienam
   novadam to parasti ir divi (Kadastrs un Deklarētās) — plakanā sarakstā
   nebija redzams, kur beidzas viens novads un sākas nākamais. */
.novads{border:1px solid var(--line);border-left:4px solid var(--orange);
  border-radius:12px;background:var(--grey);padding:0 .7rem .35rem;margin-top:.8rem}
.novads-galva{display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap;
  padding:.5rem 0 .15rem}
.novads-galva b{font-size:1rem;color:var(--brown-dk)}
.novads-galva small{color:var(--muted);font-size:.78rem}
/* ---------- kas redz novadu ----------
   Skaitlis novada galvā, saraksts — pēc nospiešanas. Izskats tāds pats, kā
   atzīmju noņemšanai slāņa rindā (.markclear): abas ir viena veida vadīklas —
   sakļauts skaitlis, kas izvēršas par sarakstu — un divi dažādi izskati vienai
   domai nozīmētu, ka otro jāmācās no jauna. */
.novad-pieeja{margin-left:auto;flex:0 0 auto}
.novad-pieeja > summary{cursor:pointer;user-select:none;list-style:none;
  white-space:nowrap;font-size:.78rem;font-weight:700;color:var(--muted);
  padding:.22em .55em;border-radius:7px;background:var(--grey)}
.novad-pieeja > summary::-webkit-details-marker{display:none}
.novad-pieeja > summary:hover{background:var(--cream);color:var(--brown-dk)}
/* Izvērsts saraksts pārceļas uz savu rindu: novada galvā blakus stāv nosaukums
   un skaitļi, un saraksts tos citādi izstumtu no rindas. */
.novad-pieeja[open]{flex:1 1 100%;margin-left:0}
.novad-pieeja .np-pop{margin-top:.4rem;background:var(--grey);border-radius:10px;
  padding:.5em .7em}
.novad-pieeja ul{margin:0;padding:0;list-style:none;display:flex;
  flex-direction:column;gap:.22em}
.novad-pieeja li{font-size:.82rem;display:flex;align-items:center;gap:.35em;
  flex-wrap:wrap}
.novad-pieeja li a{color:var(--brown-dk);font-weight:700;text-decoration:none;
  border-bottom:1px solid rgba(130,66,22,.35)}
.novad-pieeja li a:hover{color:var(--orange);border-bottom-color:var(--orange)}
/* Zīmes ir paskaidrojums, nevis uzsvars: tās nedrīkst pārkliegt pašu vārdu. */
.np-zime{font-size:.68rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.03em;color:var(--muted);background:#fff;
  border:1px solid var(--line);border-radius:5px;padding:.05em .35em}
/* Brīdinājums: “daļa slāņu” un “atslēgts” nozīmē, ka piešķīrums ir, bet darbs
   nenotiek — to nedrīkst nolasīt tāpat kā “viss reģions”. */
.np-brid{color:#8C1D18;border-color:rgba(140,29,24,.35);background:#FDF1F0}
.np-piez{margin:.5em 0 0;font-size:.72rem;color:var(--muted)}
/* Nulle novadā ir tas pats, kas tukšs slānis: izskatās gatavs, bet neviens to
   neapmeklēs. Tāpēc sarkana, ne pelēka. */
.novads-galva .np-nav{margin-left:auto;flex:0 0 auto;white-space:nowrap;
  font-weight:700;color:#8C1D18}
/* flex-wrap: rindā ir daudz vadīklu (arī ⤓ Excel), uz šaura ekrāna tās
   citādi saspiestos līdz nelietojamībai. */
.layer-row{display:flex;align-items:center;gap:.6rem;padding:.5rem 0;flex-wrap:wrap;
  border-top:1px solid rgba(130,66,22,.09)}
/* Rindas ietvarā ir baltas: uz pelēkā novada fona katrs slānis ir savs
   lauciņš, un divi viena novada slāņi vairs nesaplūst ar nākamā novada. */
.novads .layer-row{background:#fff;border:1px solid var(--line);border-radius:9px;
  padding:.45rem .6rem;margin-bottom:.35rem}
.layer-row form{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;flex:1}
.layer-row input[type=text]{flex:1 1 160px;width:auto;padding:.35em .55em;font-size:.9rem}
/* Atzīmju noņemšana pie slāņa. Sakļauta: rindā jau ir sešas vadīklas, un tā
   arī nejauši nenospiežas. Izvērsta — pārceļas uz savu rindu. */
.markclear{flex:0 0 auto}
.markclear > summary{cursor:pointer;user-select:none;list-style:none;white-space:nowrap;
  font-size:.8rem;font-weight:700;color:var(--muted);padding:.32em .6em;
  border-radius:7px;background:var(--grey)}
.markclear > summary::-webkit-details-marker{display:none}
.markclear > summary:hover{background:var(--cream);color:var(--brown-dk)}
.markclear[open]{flex:1 1 100%}
.markclear form{margin-top:.5rem;background:var(--grey);border-radius:10px;padding:.6em .7em;
  display:flex;gap:.7rem;align-items:flex-end;flex-wrap:wrap}
.markclear label{display:flex;flex-direction:column;gap:.2em;margin:0;
  font-size:.72rem;font-weight:700;color:var(--muted);text-transform:uppercase;
  letter-spacing:.03em}
.markclear select{width:auto;padding:.35em .5em;font-size:.85rem}
/* ---------- admina karšu lapa: reģionu sakļaušana un novadu filtrs ----------
   Ar septiņdesmit slāņiem lapa ir vienpadsmit tūkstoši pikseļu gara, un vienu
   novadu atrast nozīmēja ritināt ar aci. Josla ir sticky: filtra lauks, kas
   pazūd augšā, būtu jāmeklē ritinot atpakaļ. */
.novadu-josla{position:sticky;top:0;z-index:5;display:flex;align-items:center;
  gap:.5rem;flex-wrap:wrap;background:var(--cream);padding:.55rem 0 .6rem;
  margin:0 0 1rem;border-bottom:1px solid var(--line)}
.novadu-josla input[type=search]{width:auto;flex:1 1 220px;max-width:340px;
  padding:.45em .7em;font-size:.9rem}
.novadu-josla .nj-pogas{margin-left:auto;display:flex;gap:.4rem;flex-wrap:wrap}
.nj-skaits{font-size:.8rem;font-weight:700;color:var(--muted);white-space:nowrap}
.nj-skaits.nav{color:#8C1D18}
/* Poga ir tā pati doma, kas reģiona galvā darbinieka panelī: bultiņa pagriežas. */
.fold-btn{flex:0 0 auto;width:28px;height:28px;padding:0;border-radius:8px;
  border:1px solid var(--line);background:#fff;color:var(--brown);cursor:pointer;
  font:inherit;font-size:.8rem;display:flex;align-items:center;justify-content:center;
  transition:.15s}
.fold-btn:hover{background:var(--cream);color:var(--brown-dk)}
.fold-btn span{display:block;transition:transform .15s}
.region-card.folded .fold-btn span{transform:rotate(-90deg)}
.region-card.folded .region-slani{display:none}
.colorpick{display:flex;gap:.25em;flex-wrap:wrap}
/* Krāsa pa datu tipiem: viena rinda vienam tipam. Rinda ir tā pati forma, kas
   slāņa rindā, tāpēc paletes izskats sakrīt un nav jāmācās no jauna. */
.kindcolor{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;
  padding:.5rem 0;border-top:1px solid rgba(130,66,22,.09)}
.kindcolor:first-of-type{border-top:none}
.kindcolor .kc-nos{display:flex;align-items:center;gap:.45em;font-weight:700;
  color:var(--brown-dk);min-width:9.5em}
.colorpick label{margin:0;cursor:pointer}
.colorpick input{position:absolute;opacity:0;pointer-events:none}
.colorpick i{display:block;width:20px;height:20px;border-radius:50%;border:2px solid #fff;
  box-shadow:0 0 0 1px var(--line)}
.colorpick input:checked + i{box-shadow:0 0 0 2px var(--brown-dk)}
/* Krāsa, kas paletē nav (skat. _palete.html): atdalām ar svītru, lai būtu
   redzams, ka tā nav viena no piedāvātajām. */
.colorpick label.cita{padding-right:.4em;margin-right:.15em;border-right:1px solid var(--line)}
.pw-box{font-family:ui-monospace,Consolas,monospace;font-size:1.15rem;font-weight:700;
  background:#fff;border:1px dashed var(--orange);border-radius:10px;padding:.5em .8em;display:inline-block}
/* Papildu imports: rindas, kas netiks importētas, un iemesls tam. */
tr.dim td{opacity:.55}
.warn-txt{color:#8C1D18;font-weight:600;font-size:.82rem}
details.card > summary{cursor:pointer;user-select:none;list-style:revert}
details.card > summary::marker{color:var(--muted)}
.mapping-tbl{overflow:auto;border:1px solid var(--line);border-radius:10px;margin-top:.6rem}
.mapping-tbl table{font-size:.8rem;white-space:nowrap;min-width:100%}
.mapping-tbl th{position:sticky;top:0;background:var(--grey)}
/* Partijas imports: 30 failu vienā tabulā. Uz šauras lapas tabula ritinās
   pati, nevis izstumj lapu — laukiem tāpēc ir savs minimālais platums. */
.part-tbl{overflow-x:auto;border:1px solid var(--line);border-radius:10px;margin-top:.6rem}
.part-tbl table{font-size:.85rem;min-width:820px}
.part-tbl th{background:var(--grey);white-space:nowrap}
.part-tbl td{vertical-align:top}
.part-tbl input[type=text],.part-tbl select{margin:0}
.part-tbl .checkline{margin:.2em 0}
/* Izvēle, kas attiecas uz visām rindām uzreiz. Rāmis to apzināti atdala no
   tabulas: pogu rindā viens garāmklikšķis pārrakstīja visu partiju. */
.visiem{border:1px solid var(--line);border-radius:10px;padding:.3rem .8rem .7rem;margin:.9rem 0 0}
.visiem legend{font-size:.8rem;font-weight:700;color:var(--muted);padding:0 .4em;
  text-transform:uppercase;letter-spacing:.04em}
/* Darbība, kurai neviena rinda neder (piem., “aizstāt” bez neviena slāņa-dvīņa),
   paliek redzama, bet neaktīva — citādi nav saprotams, kāpēc klikšķis neko nedara. */
.visiem .checkline.off{opacity:.5}
.visiem .checkline.off input{cursor:default}
#visiemAtsauc{margin-top:.5rem}
/* Punktu dublikāti importa vednī: katrai sakritības sugai savs jautājums.
   Piemēri ar Excel rindas numuru — bez tiem skaits vien neļauj izlemt. */
.dubl-grupa{margin-top:.7rem;padding-top:.6rem;border-top:1px solid rgba(245,114,55,.3)}
.dubl-grupa:first-of-type{border-top:none;padding-top:0}
.dubl-paraugi{margin:.2rem 0 .5rem;padding-left:1.1em;font-size:.83rem;color:var(--muted)}
.dubl-paraugi li{margin:.1em 0}
tr.part-bad{background:#FDECEA}
.part-err{color:#8C1D18;font-weight:600}

/* Punkta labošana kartes logā (tikai administratoram). */
.pp-edit{display:flex;flex-direction:column;gap:.4em}
.pp-edit label{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;
  color:var(--muted);font-weight:700}
.pp-edit input{font-size:.88rem;padding:.35em .5em;width:100%}
.pp-edit .pp-e2{display:flex;gap:.4em}
.pp-hint{font-size:.72rem;color:var(--muted);line-height:1.35}

.chips{display:flex;flex-wrap:wrap;gap:.4em}
.chip{display:inline-flex;align-items:center;gap:.4em;background:#fff;border:1px solid var(--line);
  border-radius:99px;padding:.3em .7em;font-size:.85rem;cursor:pointer;font-weight:600}
.chip input{width:auto;margin:0;accent-color:var(--brown)}
.chip.on{background:var(--sand);border-color:var(--tan)}
.stat{display:flex;gap:1.2rem;flex-wrap:wrap}
.stat > div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:.8rem 1.1rem;min-width:130px}
.stat .n{font-size:1.6rem;font-weight:800;color:var(--brown-dk);line-height:1.1}
.stat .l{font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.audit{font-size:.78rem;color:var(--muted);font-family:ui-monospace,Consolas,monospace}

/* ---------- punktu marķieri ---------- */
/* Baltā maliņa, nevis pildījums, atdala punktu no kartes: uz satelīta pamatnes
   fons ir tumšs, un plāns gredzens ap tumšu pildījumu izskatījās pēc plankuma.
   3px vietā 2px. iconSize/iconAnchor viewer.js atbilst ŠIM izmēram (16+3+3=22):
   ja tie neatbilst, markieris zīmējas nobīdīts no savas īstās vietas. */
.pin{display:block;width:16px;height:16px;border-radius:50%;background:var(--c);
  border:3px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.55);cursor:pointer;
  transition:transform .12s;position:relative}
.pin:hover{transform:scale(1.35)}
/* Atzīmētais punkts: melns ķeksis punkta iekšpusē. Krāsa vien nepasaka, ka
   punkts ir satikts — blakus var nebūt neatzīmēta punkta, ar ko salīdzināt.
   Melns, nevis balts: tas nolasās uz oranžā. Izmērs 18 -> 20px, lai ķeksim
   būtu, kur stāvēt; margin kompensē pieaugumu, citādi adata pārvietotos no
   savas īstās vietas (iconAnchor viewer.js paliek 11px). */
.pin.done{width:20px;height:20px;margin:-2px}
.pin.done::after{content:"";position:absolute;left:50%;top:50%;width:8px;height:4px;
  border-left:2.5px solid #111;border-bottom:2.5px solid #111;
  transform:translate(-50%,-62%) rotate(-45deg)}
/* Pagaidu adata un maršruta gredzens ķeksi nedrīkst mantot. */
.pin.temp::after{display:none}
.leaflet-marker-icon:focus{outline:none}
.leaflet-container{font-family:var(--font)}
.leaflet-control-attribution{font-size:10px;background:rgba(255,255,255,.75)}

/* ---------- slāņu hierarhija: novads -> datu tips ---------- */
.lgroup{margin-bottom:.15rem}
.layer.group .lname{font-weight:700;font-size:.92rem}
.layer.group{background:var(--grey)}
.layer.group:hover{background:var(--sand)}
.lchildren{padding-left:1.35rem;border-left:2px solid var(--sand);margin-left:.6rem}
.layer.child{padding:.35em .5em}
.layer.child .lname{font-weight:600;font-size:.85rem;display:flex;align-items:center;gap:.4em}
.layer.child .lmeta{font-size:.72rem}
.layer.dim{opacity:.3}
.layer .lname .dot{width:10px;height:10px}

/* ---------- reģionu izvēle augšā ---------- */
.regionsel{position:relative;min-width:0}
/* Bultiņa nedrīkst aiziet uz nākamo rindu, tāpēc poga ir flex un nedalās;
   ja reģiona nosaukums neietilpst, saīsinām TIKAI nosaukumu. */
#regionBtn{display:inline-flex;align-items:center;gap:.35em;max-width:100%;white-space:nowrap}
#regionLabel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
#regionBtn .caret{flex:none;opacity:.7;font-size:.85em;line-height:1}
#regionBtn.busy{opacity:.6}
#regionBtn.busy::after{content:"…"}
.regionmenu{display:none;position:absolute;left:0;top:calc(100% + 6px);min-width:210px;
  background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);
  padding:.45rem;z-index:1200}
.regionmenu.open{display:block}
.regionmenu label{display:flex;align-items:center;gap:.55em;padding:.45em .55em;border-radius:8px;
  color:var(--brown-dk);font-weight:600;font-size:.9rem;margin:0;cursor:pointer}
.regionmenu label:hover{background:var(--cream)}
.regionmenu input{width:auto;margin:0;accent-color:var(--orange)}
.regionmenu-foot{display:flex;gap:.3rem;border-top:1px solid var(--line);margin-top:.35rem;padding-top:.4rem}
.regionmenu-foot button{flex:1;border:none;background:var(--grey);border-radius:8px;font:inherit;
  font-size:.75rem;font-weight:600;color:var(--brown);padding:.35em;cursor:pointer}
.regionmenu-foot button:hover{background:var(--sand)}
/* Reģiona galvene ir poga: ar to novadu sarakstu var sakļaut */
.region{margin-bottom:.3rem}
.regionhead{display:flex;align-items:center;gap:.45em;width:100%;border:none;text-align:left;
  font:inherit;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800;
  color:var(--brown);background:var(--sand);border-radius:7px;padding:.35em .6em;
  margin:.6rem 0 .3rem;cursor:pointer}
.region:first-child .regionhead{margin-top:0}
.regionhead:hover{background:var(--tan);color:#fff}
.rh-caret{flex:none;font-size:.85rem;line-height:1;transition:transform .15s}
.region.folded .rh-caret{transform:rotate(-90deg)}
.rh-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rh-meta{flex:none;font-weight:700;letter-spacing:0;text-transform:none;opacity:.75;
  font-variant-numeric:tabular-nums}
.region.folded .region-body{display:none}

/* ---------- maršruts ---------- */
h3 .cnt{display:inline-block;background:var(--orange);color:#fff;border-radius:99px;
  padding:0 .5em;font-size:.72rem;font-weight:800;vertical-align:middle}
.routelist{list-style:none;margin:0 0 .5rem;padding:0;max-height:34vh;overflow:auto}
.routelist li{display:flex;align-items:center;gap:.3em;padding:.25em 0;
  border-bottom:1px solid rgba(130,66,22,.08)}
/* “Satikts” maršruta rindā — tā pati atzīme, kas punkta logā, tikai maza:
   sarakstam jāpaliek kompaktam arī ar 10 pieturām. */
.rdone{flex:none;width:18px;height:18px;display:flex;align-items:center;justify-content:center;
  border-radius:5px;cursor:pointer;transition:.12s}
.rdone input{width:15px;height:15px;margin:0;cursor:pointer;accent-color:var(--orange)}
.rdone:hover{background:var(--cream)}
.rdone.on{background:var(--orange)}
.rdone.on input{accent-color:#fff}
.rdone input:disabled{cursor:default;opacity:.45}
/* Ievadīta koordināte — atzīmes nav, bet vieta jāpatur, lai kolonna nesalūztu. */
.rdone.off{cursor:default}
.rdone.off::before{content:"";width:9px;height:1.5px;border-radius:1px;background:var(--line)}
.rdone.off:hover{background:none}
.routeerr{font-size:.72rem;font-weight:600;color:#B3261E;margin-top:.3rem}
/* Uz telefona ķeksim jābūt trāpāmam ar pirkstu — laukā strādā tieši tā. */
@media (max-width:860px){
  .rdone{width:26px;height:26px}
  .rdone input{width:19px;height:19px}
}
.rnum{flex:none;width:20px;height:20px;border-radius:50%;background:var(--brown);color:#fff;
  font-size:.7rem;font-weight:800;display:flex;align-items:center;justify-content:center}
.rtitle{flex:1;min-width:0;text-align:left;background:none;border:none;font:inherit;font-size:.85rem;
  font-weight:600;color:var(--brown-dk);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rtitle:hover{color:var(--orange-dk);text-decoration:underline}
.ractions{display:flex;gap:.1em;flex:none}
.ractions button{background:none;border:none;cursor:pointer;color:var(--muted);font-size:.85rem;
  padding:.15em .25em;border-radius:5px;line-height:1}
.ractions button:hover:not([disabled]){background:var(--cream);color:var(--brown-dk)}
.ractions button[disabled]{opacity:.25;cursor:default}
.routemeta{font-size:.75rem;color:var(--muted);font-weight:600}
.rmark{width:24px;height:24px;border-radius:50%;background:var(--brown-dk);color:#fff;
  border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.4);display:flex;align-items:center;
  justify-content:center;font:800 11px/1 var(--font)}
.pin.inroute{box-shadow:0 0 0 3px rgba(106,54,17,.85),0 1px 3px rgba(0,0,0,.45)}
.pin.temp{width:20px;height:20px;background:var(--brown-dk);
  border:3px solid #fff;box-shadow:0 0 0 2px var(--orange),0 2px 6px rgba(0,0,0,.5)}

/* meklēšanas rezultāti: koordinātu trāpījums */
.results .coordhit{background:var(--cream)}
.results .coordhit .ttl{color:var(--brown-dk)}
.results .hint{padding:.5em .8em;font-size:.72rem;color:var(--muted);border-top:1px solid var(--line)}
.results .sub{display:block}
.asbanner{position:absolute;top:8px;left:50%;transform:translateX(-50%);z-index:800;
  background:var(--brown);color:#fff;padding:.4em .9em;border-radius:99px;font-size:.82rem;
  font-weight:600;box-shadow:0 2px 10px rgba(0,0,0,.25)}

/* ================= APSTIPRINĀJUMI, TUKŠA KARTE, PAROLES ACS =================
   Pievienots pēc UX audita (skat. UX_AUDIT.md, Quick Wins). */

/* Flash: “✓ Slānis saglabāts”. Admina lapās plūsmā, kartē — peldošs. */
.flash{margin-bottom:1rem;display:flex;flex-direction:column;gap:.4rem}
.flash-item{background:#E8F5EE;border:1px solid rgba(46,125,91,.35);color:#1B5E43;
  border-radius:10px;padding:.6em .9em;font-size:.88rem;font-weight:600}
.flash.floating{position:fixed;top:14px;left:50%;transform:translateX(-50%);z-index:1500;
  margin:0;max-width:min(92vw,420px)}
.flash.floating .flash-item{box-shadow:0 4px 16px rgba(106,54,17,.22)}
/* Zaļš “izdevās” nav piemērots ziņai “slānis NAV pārvietots” vai “kopiju
   neizdevās saglabāt” — tādām savas krāsas (skat. admin_base.html). */
.flash-item.warn{background:#FDF0E6;border-color:rgba(245,114,55,.5);color:#8A3B10}
.flash-item.info{background:#EEF4FA;border-color:rgba(59,167,221,.45);color:#1C5876}

/* Paziņojums pāri kartei: savienojuma kļūda, ielādējot reģionu. */
.mapmsg{position:absolute;top:8px;left:50%;transform:translateX(-50%);z-index:850;
  max-width:min(90vw,420px);text-align:center;box-shadow:0 2px 10px rgba(0,0,0,.18);
  font-weight:600}
.mapmsg[hidden]{display:none}

/* Kāpēc karte ir tukša + poga, kas atgriež visu redzamu. */
.empty{position:absolute;inset:0;z-index:420;display:flex;align-items:center;
  justify-content:center;pointer-events:none;padding:1.2rem}
.empty[hidden]{display:none}
.empty-box{pointer-events:auto;background:#fff;border:1px solid var(--line);
  border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem 1.3rem;
  text-align:center;max-width:330px;display:flex;flex-direction:column;gap:.5rem}
.empty-box b{color:var(--brown-dk);font-size:.98rem;line-height:1.35}
.empty-box small{color:var(--muted);font-size:.78rem;line-height:1.4}
.empty-box .btn{align-self:center}

/* “Saglabāts” pēc Satikts atzīmēšanas: neuzkrītošs paraksts loga labajā apakšā,
   nevis teksts starp pogām. min-height tur vietu, lai logs nesarautos, kad
   paraksts pēc 1,6 s pazūd. Kļūda paliek redzama (.err) — tā ir vienīgā pazīme,
   ka atzīme nav saglabāta. */
.pp-status{align-self:flex-end;min-height:1.35em;font-size:.72rem;line-height:1.35;
  color:var(--muted);text-align:right}
.pp-status.err{color:#8C1D18;font-weight:700;font-size:.78rem}

/* Punkta logs, kad datus neizdevās ielādēt (agrāk mūžīgs “Ielādē…”). */
.pp-err{padding:1.4rem 1.1rem;text-align:center;color:#8C1D18;font-size:.88rem;
  line-height:1.4;display:flex;flex-direction:column;gap:.8rem;align-items:center}

/* Acs paroles laukā: paroli no WhatsApp uz telefona raksta neredzot. */
.pw-wrap{position:relative;display:block}
.pw-wrap input{padding-right:2.7em}
.pw-eye{position:absolute;right:.45em;top:50%;transform:translateY(-50%);
  background:none;border:0;padding:.2em .3em;border-radius:8px;cursor:pointer;
  font-size:1.05rem;line-height:1;opacity:.5;filter:grayscale(1)}
.pw-eye:hover,.pw-eye:focus-visible{opacity:.85}
.pw-eye.on{opacity:1;filter:none}

/* Kļūdu lapa (404 / 413 / 500). */
.errcode{font-size:2.6rem;font-weight:800;color:var(--orange);line-height:1;
  margin-top:.6rem}

/* ---------- piekļuve: viss reģions vai atsevišķi novadi ----------
   Novadu vienā reģionā ir 30-40. Saraksts tāpēc atveras kā PANELIS virs lapas
   (position:absolute), nevis stiepj tabulas rindu: citādi katrs klikšķis
   pārbīdītu visu pārējo, un blakus stāvošās pogas aizbēgtu no peles. */
/* Bez min-width: par kolonnas platumu atbild tabula (users-tbl min-width), un
   savs minimums šeit nozīmēja, ka saspiestā lapā piekļuves saraksts izlīda
   pāri kolonnas robežai blakus kolonnā. */
.acc{min-width:0}
.acc-reg{padding:.18rem 0}
.acc-reg + .acc-reg{border-top:1px solid rgba(130,66,22,.08)}
.acc-head{display:flex;align-items:center;gap:.45em;margin:0;cursor:pointer;
  font-size:.85rem;line-height:1.6}
.acc-head input{width:auto;margin:0;accent-color:var(--brown);flex:0 0 auto}
.acc-nos{flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acc-st{font-size:.72rem;color:var(--muted);white-space:nowrap;margin-left:auto}

/* Sakļautā rinda “novadi 9” — vienmēr vienāda augstuma, lai rindas nelēkā. */
.acc-nov{position:relative;margin:0 0 .1em 1.55em}
.acc-nov > summary{display:inline-flex;align-items:center;gap:.35em;cursor:pointer;
  font-size:.74rem;color:var(--brown);font-weight:700;list-style:none;
  padding:.1em .45em .1em .35em;border-radius:6px}
.acc-nov > summary::-webkit-details-marker{display:none}
.acc-nov > summary::before{content:"▸";font-size:.7em;opacity:.75}
.acc-nov[open] > summary::before{content:"▾"}
.acc-nov > summary:hover{background:var(--cream)}
.acc-nov[open] > summary{background:var(--sand)}
.acc-num{background:rgba(130,66,22,.1);border-radius:99px;padding:0 .4em;
  font-size:.68rem;font-weight:800}
/* Aizēnojam TIKAI sakļauto rindu, nevis visu <details>: opacity uz vecāka
   padara caurspīdīgu arī paneli (un rada jaunu slāņu kontekstu, tāpēc
   z-index panelim vairs nelīdz — “Pievienot darbinieku” poga uzgūla virsū,
   un novadu saraksts bija nesalasāms). */
.acc-nov.off > summary{opacity:.45}

/* position:fixed, nevis absolute: tabula uz šauras lapas ritinās savā kastē
   (tbl-wrap), un tāda kaste apgriež visu, kas no tās izlien — pēdējās rindas
   panelis pazuda zem malas. Fiksētam elementam kaste netraucē; vietu tam
   izrēķina skripts admin_users.html. */
.acc-pop{position:fixed;z-index:60;width:250px;max-width:calc(100vw - 16px);
  background:#fff;border:1px solid var(--tan);border-radius:10px;
  box-shadow:var(--shadow);padding:.5em .55em}
.acc-pop-top{display:flex;align-items:center;gap:.3em;margin-bottom:.4em}
.acc-pop-nos{flex:1;font-size:.78rem;font-weight:800;color:var(--brown-dk);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acc-mini{background:var(--grey);border:1px solid var(--line);border-radius:6px;
  font:inherit;font-size:.68rem;font-weight:700;color:var(--brown);
  padding:.15em .5em;cursor:pointer}
.acc-mini:hover{background:var(--cream)}
.acc-filter{width:100%;padding:.3em .5em;font-size:.78rem;margin:0 0 .35em}
.acc-list{max-height:220px;overflow-y:auto;scrollbar-gutter:stable}
.acc-list .checkline{font-size:.8rem;margin:0;padding:.16em .3em;border-radius:5px;
  cursor:pointer;font-weight:500}
.acc-list .checkline:hover{background:var(--cream)}
/* Meklēšana slēpj rindas ar hidden. Bez šī noteikuma display:flex no .checkline
   uzvar pārlūka [hidden] noteikumu, un filtrs neko nedarītu. */
.acc-list .checkline[hidden]{display:none}
.acc-list .checkline span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.acc-list input{accent-color:var(--brown)}
.acc-pop-apaksa{display:flex;align-items:flex-end;gap:.5em;margin-top:.4em;
  padding-top:.4em;border-top:1px solid var(--line)}
.acc-pop-apaksa small{flex:1;font-size:.68rem;line-height:1.3}

/* Lietotāju tabula: kolonnu platumi ir fiksēti, tāpēc rindas nemaina platumu
   atkarībā no vārda garuma, un šūnas sākas no augšas — daudzrindu piekļuves
   šūna citādi centrētos pret vienu pogu rindu.
   Starp kolonnām ir gan atstarpe, gan tikko manāma līnija: bez tām lomas
   izvēle un piekļuves lodziņi salipa vienā juceklī, un nebija redzams, kur
   viena kolonna beidzas un sākas otra. */
/* Ritinamā kaste tabulai. Uz šauras lapas tabula ritinās ŠEIT, nevis stiepj
   visu lapu: lapa, kas iet sāņus, uz telefona nozīmē, ka pazūd arī izvēlne un
   virsraksts. Vārds vispārīgs, jo to vajag ne tikai lietotāju tabulai. */
.tbl-wrap{overflow-x:auto;scrollbar-gutter:stable}
.users-tbl{table-layout:fixed;min-width:1000px}
.users-tbl th,.users-tbl td{padding-left:.85em;padding-right:.85em}
.users-tbl th:first-child,.users-tbl td:first-child{padding-left:0}
.users-tbl th:last-child,.users-tbl td:last-child{padding-right:0}
/* VISAS šūnas sākas rindas augšā, arī skaits, pieteikšanās laiks un pogas:
   agrāk tām bija vertical-align:middle, un garā piekļuves saraksta dēļ tās
   nolaidās rindas vidū — pretī tukšai vietai, nevis pretī vārdam. */
.users-tbl td{vertical-align:top;padding-top:.75em;padding-bottom:.75em}
.users-tbl td + td,.users-tbl th + th{border-left:1px solid rgba(130,66,22,.07)}
/* Darbību šūna. Pogas stāv dažādos vecākos (dažas savā <form>), tāpēc inline
   izkārtojumā tās līdzinājās pēc teksta pamatlīnijas: “🔑” emocijzīme ir
   garāka par tekstu, tāpēc tā poga bija augstāka un nesakrita ar “Saglabāt”.
   Flex rinda dod visām vienu augstumu un kopīgu augšmalu. */
.users-tbl .acts{display:flex;flex-wrap:wrap;align-items:stretch;gap:.35em}
.users-tbl .acts form{display:flex}
/* Divrindu uzraksts (“Atzīmētie punkti”) pārnesas pa vārdiem, NEVIS pa vidu
   vārdam: “ATZĪMĒTI / E PUNKTI” izskatījās pēc kļūdas. Tāpēc kolonna ir tik
   plata, cik garākais vārds. */
.users-tbl th{line-height:1.3}
.acc-new .acc-reg{border:0;padding:0}
/* Formā kolonnas ir platas, tāpēc stāvokli spiest pie labās malas nav ko —
   tabulā tas otrādi palīdz salīdzināt rindas. */
.acc-new .acc-st{margin-left:.2em}
.acc-new{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
  gap:.15rem 1.4rem;align-items:start}

/* ------------------------------------------------------------ moduļi
   Pārslēgs “D2D | Ražošana” augšējā joslā. Uz telefona tas paliek redzams
   (atšķirībā no .tb-desktop): tas ir vienīgais ceļš no viena moduļa uz otru. */
.modsel{display:flex;gap:.25rem;flex:none}
.modsel .tb-btn{padding-left:.7em;padding-right:.7em}
@media (max-width:860px){
  .topbar:has(.modsel) .logo .sub{display:none}   /* pārslēgs jau pasaka, kur esam */
}
/* Ražošanas stadiju saraksts panelī */
.raz-stage{font-size:.85rem}
.raz-stage .raz-stage-n{flex:1;min-width:0}
.raz-stage .cnt{font-size:.72rem;color:var(--muted);font-weight:700}
.raz-stage-vor{font-size:.72rem;font-weight:800;color:var(--muted);text-transform:uppercase;
  letter-spacing:.03em;margin:.55em 0 .1em}
.raz-stage-vor:first-child{margin-top:0}
/* Kartes panelis: darījumi bez koordinātām. */
.raz-nocoords{font-size:.8rem;margin:.6rem 0}
.raz-nocoords > summary{cursor:pointer;font-weight:700;color:var(--brown)}
.raz-nocoords small{display:block;margin:.35em 0;color:var(--muted)}
.raz-nocoords ul{list-style:none;margin:0;padding:0;max-height:16rem;overflow:auto}
.raz-nocoords li{padding:.25em 0;border-top:1px solid rgba(130,66,22,.1);line-height:1.35}
.raz-nocoords li .sub{display:block;font-size:.72rem;color:var(--muted)}
.raz-nocoords li code{font-size:.7rem}
/* Admin: piltuves un stadijas. */
.raz-vor{padding:.2em 0}
.raz-vor + .raz-vor{border-top:1px solid rgba(130,66,22,.08)}
.raz-vor .acc-nov{margin-left:1.55em}

/* ------------------------------------------------------ lietotāju lapa
   Saraksts (viena rinda cilvēkam) + labošanas logs. Rindā tikai tas, pēc kā
   cilvēku atrod un saprot, kas viņam ir; lodziņi — logā. */
.u-riki{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin-bottom:.8rem}
.u-riki input[type=search]{max-width:320px}
.u-riki .spacer{flex:1}
.u-skaits{font-size:.85rem;color:var(--muted);white-space:nowrap}
.u-saraksts .users-tbl{min-width:680px}
.u-saraksts .users-tbl td{vertical-align:middle;padding-top:.6em;padding-bottom:.6em}
.u-vards{display:block;color:var(--brown-dk);word-break:break-word}
.u-epasts{display:block;word-break:break-all}
.u-off .u-vards,.u-off .u-zimes{opacity:.55}
.u-zimes{line-height:1.9}
.u-zime{display:inline-block;padding:.1em .6em;border-radius:999px;font-size:.76rem;font-weight:700;
  margin-right:.3em;white-space:nowrap}
.u-zime.d2d{background:rgba(59,167,221,.15);color:#1d6f98}
.u-zime.raz{background:rgba(47,179,68,.15);color:#1f7a2f}
.u-regioni{font-size:.75rem;color:var(--muted);margin-right:.8em}

/* Logs */
.u-dlg{border:none;border-radius:var(--radius);padding:0;width:min(780px,calc(100vw - 20px));
  max-height:calc(100vh - 30px);box-shadow:var(--shadow);color:inherit}
.u-dlg::backdrop{background:rgba(58,30,10,.45)}
.u-dlg > *{padding-left:1.3rem;padding-right:1.3rem}
.u-dlg-galva{display:flex;align-items:flex-start;gap:1rem;padding-top:1.1rem;padding-bottom:.8rem;
  border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:2}
.u-dlg-galva > div{flex:1;min-width:0}
.u-dlg-galva h2{margin:0}
.u-aizvert{background:none;border:none;font-size:1.1rem;cursor:pointer;color:var(--muted);padding:.2em .4em}
.u-dlg form{padding-top:1rem}
.u-sekc{margin:.2rem 0 1rem}
.u-sekc-virs{font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);
  font-weight:700;margin:.4rem 0 .5rem}
.u-mod{border:1px solid var(--line);border-radius:12px;padding:.7rem .9rem;margin-bottom:.6rem}
.u-mod-galva{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.u-mod-ies{margin:0;font-size:1rem}
.u-loma{display:flex;align-items:center;gap:.5em;font-size:.82rem;font-weight:600;color:var(--muted)}
.u-loma select{width:auto;padding:.3em .5em;font-size:.85rem}
.u-loma-admin{display:none}
.u-mod-saturs{margin-top:.6rem}
.u-mod-hint{display:block;margin-bottom:.4rem}
/* Izslēgts modulis: lodziņi paliek (saglabātie reģioni nepazūd), bet aizēnoti. */
.u-mod.off .u-loma,.u-mod.off .u-mod-saturs{opacity:.4;pointer-events:none}
/* Administratoram lomas neizvēlas — viņš redz visu. */
form.ir-admins .u-loma{display:none}
form.ir-admins .u-loma-admin{display:inline}
.u-dlg-saglabat{display:flex;gap:.5rem;padding:.4rem 0 1rem}
.u-konts{border-top:1px solid var(--line);background:var(--cream);padding-top:.7rem;padding-bottom:1rem}
.u-konts-rinda{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:.35rem 0;font-size:.85rem}
.u-konts-rinda form{display:inline-flex}
.u-ierices summary{cursor:pointer;color:var(--brown);font-size:.8rem}

/* Saite-poga punkta logā (Ražošana: “Atvērt darījumu Bitrix”). Leaflet visām
   saitēm kartē uzliek savu zilo krāsu (.leaflet-container a), un uz oranžās
   pogas teksts kļuva nesalasāms. */
.leaflet-container .pp-foot a.btn.orange{color:#fff}
.leaflet-container .pp-foot a.btn.ghost{color:var(--brown)}
