/* ---------------------------------------------------------------
   FF AI Survey — klienta saskarne
   Krāsas: tumši zils (uzticība) + zeltains akcents (FF stils)
   --------------------------------------------------------------- */
:root{
  --navy:#0f2f4f; --navy-2:#163f68; --gold:#c8a24a; --gold-d:#b08d36;
  --ink:#15181c; --mut:#65707d; --line:#e4e8ee; --bg:#f5f7fa;
  --ok:#0d7a3e; --err:#b91c1c; --radius:14px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  color:var(--ink); background:var(--bg); -webkit-font-smoothing:antialiased;
}
body.embed{background:transparent}
.shell{max-width:900px;margin:0 auto;padding:20px 16px 60px}
body.embed .shell{padding:8px 4px 20px}

/* header */
.top{display:flex;justify-content:space-between;align-items:center;padding:8px 0 20px}
.logo{font-weight:800;font-size:19px;color:var(--navy);letter-spacing:-.01em;white-space:nowrap;display:flex;align-items:center;min-width:0}
/* Uzņēmuma logo galvenē. Augstums fiksēts — tā rinda vienmēr ir vienāda
   neatkarīgi no tā, cik lielu attēlu kāds ieliks. Platums ierobežots, lai
   plats logo neizspiestu valodu pogas ārpus ekrāna. */
.brandmark{display:block;height:30px;width:auto;max-width:min(100%,220px);object-fit:contain}
.langs{white-space:nowrap}
.langs a{display:inline-block;padding:5px 8px;margin-left:2px;border-radius:8px;text-decoration:none;color:var(--mut);font-size:13px;font-weight:600}
.langs a.on{background:var(--navy);color:#fff}

/* hero */
.hero{margin-bottom:22px}
.hero h1{font-size:clamp(24px,4.2vw,34px);line-height:1.2;margin:0 0 8px;color:var(--navy);letter-spacing:-.02em}
.hero p{margin:0;color:var(--mut);max-width:640px}

/* steps */
.steps{display:flex;gap:6px;list-style:none;margin:0 0 16px;padding:0;overflow-x:auto}
.steps li{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--mut);white-space:nowrap;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid var(--line)}
.steps li span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--line);color:var(--mut);font-size:12px;font-weight:700}
.steps li.on{color:var(--navy);border-color:var(--navy)}
.steps li.on span{background:var(--navy);color:#fff}
.steps li.done span{background:var(--gold);color:#111}

/* card */
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.pane{display:none}
.pane.on{display:block;animation:fade .25s ease}
@keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
h2{font-size:20px;margin:0 0 6px;color:var(--navy)}
.hint{color:var(--mut);font-size:14px;margin:0 0 16px}

/* fields */
.fld{display:block;margin-bottom:14px}
.fld>span{display:block;font-size:13px;font-weight:600;color:var(--mut);margin-bottom:5px}
.fld input,.fld textarea,select{
  width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:10px;
  font:inherit;font-size:15px;background:#fff;color:var(--ink);transition:border-color .15s,box-shadow .15s;
}
.fld input:focus,.fld textarea:focus,select:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(15,47,79,.10)}

/* Google adrešu lauks. Google to zīmē pats savā ēnas kokā, tāpēc ārpusē
   varam noteikt tikai platumu un fontu — pārējais nāk no viņu stila.
   Ja Google neielādējas, šī klase vienkārši nekad neparādās. */
.ffplaces{display:block;width:100%;font:inherit;font-size:15px}
.ffplaces::part(input){
  width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:10px;
  font:inherit;font-size:15px;background:#fff;color:var(--ink);
}
.ffplaces::part(input):focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(15,47,79,.10)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.grid4{display:grid;grid-template-columns:1fr auto 1fr auto;gap:0 14px;align-items:end}
@media(max-width:640px){.grid2,.grid4{grid-template-columns:1fr}}

/* chips */
fieldset.chips{border:0;padding:0;margin:0 0 18px}
fieldset.chips legend{font-size:13px;font-weight:600;color:var(--mut);padding:0;margin-bottom:8px}
.chips label{display:inline-block;margin:0 8px 8px 0;cursor:pointer}
.chips input{position:absolute;opacity:0;width:0;height:0}
.chips span{display:inline-block;padding:9px 15px;border:1px solid var(--line);border-radius:999px;font-size:14px;background:#fff;transition:.15s}
.chips input:checked+span{background:var(--navy);border-color:var(--navy);color:#fff}
.chips input:focus-visible+span{box-shadow:0 0 0 3px rgba(15,47,79,.18)}

.chk{display:flex;align-items:flex-start;gap:9px;font-size:14px;margin-bottom:14px;cursor:pointer}
.chk input{margin-top:3px;width:17px;height:17px;accent-color:var(--navy);flex:0 0 auto}
.chk.consent{background:#f8fafc;padding:12px 14px;border-radius:10px;border:1px solid var(--line)}
.chk a{color:var(--navy)}

/* rooms + dropzone */
.room{border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:12px;background:#fdfdfe}
.room-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.room-h b{font-size:15px;color:var(--navy)}
.room-h button{background:none;border:0;color:var(--mut);cursor:pointer;font-size:13px;padding:4px 6px}
.room-h button:hover{color:var(--err)}
.drop{
  border:2px dashed #cfd8e3;border-radius:10px;padding:22px 14px;text-align:center;color:var(--mut);
  font-size:14px;cursor:pointer;background:#fff;transition:.15s
}
.drop:hover,.drop.over{border-color:var(--gold);background:#fffdf6;color:var(--navy)}
.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;margin-top:10px}
.th{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;background:#eef1f5;border:1px solid var(--line)}
.th img{width:100%;height:100%;object-fit:cover;display:block}
.th .vid{display:grid;place-items:center;height:100%;font-size:22px;color:var(--navy)}
.th .x{position:absolute;top:3px;right:3px;width:20px;height:20px;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;border:0;cursor:pointer;font-size:12px;line-height:1;display:grid;place-items:center}
.th .pg{position:absolute;left:0;bottom:0;height:3px;background:var(--gold);width:0;transition:width .2s}
.th.err{border-color:var(--err)}
.addroom{display:flex;gap:10px;align-items:center;margin-top:6px}
.addroom select{max-width:260px}

/* buttons */
.nav{display:flex;gap:10px;justify-content:flex-end;margin-top:20px;flex-wrap:wrap}
.btn{
  appearance:none;border:0;border-radius:10px;padding:12px 22px;font:inherit;font-weight:600;font-size:15px;
  cursor:pointer;background:var(--navy);color:#fff;transition:.15s
}
.btn:hover{background:var(--navy-2)}
.btn.ghost{background:#fff;color:var(--navy);border:1px solid var(--line)}
.btn.ghost:hover{border-color:var(--navy)}
.btn.go{background:var(--gold);color:#14181d}
.btn.go:hover{background:var(--gold-d)}
.btn:disabled{opacity:.55;cursor:not-allowed}

.err{background:#fef2f2;border:1px solid #fecaca;color:var(--err);padding:11px 14px;border-radius:10px;font-size:14px;margin-bottom:12px}

/* working */
.working{text-align:center;padding:34px 10px}
.spinner{width:46px;height:46px;margin:0 auto 18px;border:3px solid var(--line);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.bar{height:6px;background:var(--line);border-radius:999px;overflow:hidden;max-width:420px;margin:18px auto 10px}
.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--navy),var(--gold));width:5%;transition:width .6s ease}

.foot{text-align:center;color:var(--mut);font-size:13px;margin-top:34px}

/* ===============================================================
   PWA, kameras pogas, bezsaistes stāvoklis
   =============================================================== */

/* tīkla josla lapas augšā */
.netbar{
  position:sticky;top:0;z-index:50;padding:9px 16px;font-size:13.5px;font-weight:600;
  text-align:center;color:#fff;background:var(--navy)
}
.netbar.off{background:#92400e}
.netbar.busy{background:#1d4ed8}

/* instalēšanas poga un iPhone padoms */
.installbtn{
  background:var(--gold);color:#14181d;border:0;border-radius:999px;
  padding:7px 14px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;margin-right:8px
}
.iostip{
  position:relative;background:#eef4fb;border:1px solid #cfe0f2;color:#0f2f4f;
  border-radius:12px;padding:12px 38px 12px 14px;font-size:13.5px;margin-bottom:16px
}
.iostip .close{
  position:absolute;top:6px;right:8px;background:none;border:0;color:var(--mut);
  font-size:15px;cursor:pointer;padding:4px
}

/* kameras pogas telpas kartītē */
.rhint{color:var(--mut);font-size:13px;margin:0 0 10px}
.caps{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:10px}
.cap{
  appearance:none;border:1px solid var(--line);background:#fff;border-radius:11px;
  padding:14px 6px;font:inherit;font-size:13.5px;font-weight:600;color:var(--navy);
  cursor:pointer;line-height:1.35;transition:.15s
}
.cap:hover{border-color:var(--navy)}
.cap:active{transform:scale(.97)}
.cap.vid{background:var(--navy);color:#fff;border-color:var(--navy)}
.cap.vid:hover{background:var(--navy-2)}
@media(max-width:420px){.caps{grid-template-columns:1fr 1fr}.cap.gal{grid-column:1 / -1}}

/* miniatūru stāvokļi */
.th .badge{
  position:absolute;left:3px;bottom:3px;min-width:18px;height:18px;padding:0 4px;
  border-radius:9px;background:rgba(15,47,79,.85);color:#fff;font-size:11px;
  display:grid;place-items:center;line-height:1
}
.th.ok .badge{background:rgba(13,122,62,.9)}
.th.bad{border-color:var(--err)}
.th.bad .badge{background:rgba(185,28,28,.92)}

/* darbinieka režīms */
body.staff .hero h1{font-size:22px}
.staffnote{background:#fff7ed;border:1px solid #fdba74;border-radius:10px;padding:11px 14px;color:#7c2d12}

/* PIN lapa */
body.pinpage{display:grid;place-items:center;min-height:100dvh;background:var(--navy);padding:20px}
.pinbox{background:#fff;border-radius:18px;padding:30px 26px;width:100%;max-width:340px;box-shadow:0 14px 44px rgba(0,0,0,.3)}
.pinbox .logo{text-align:center;margin-bottom:20px}
.pinbox .btn{display:block;text-align:center;margin-top:10px;text-decoration:none}
.pinbox .ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46;padding:10px 14px;border-radius:10px;font-size:14px}
.pinbox code{background:#eef1f5;padding:1px 5px;border-radius:4px;font-size:13px}

/* pilnekrāna režīmā telefonā (izsauktā no sākuma ekrāna) */
@media (display-mode: standalone){
  .shell{padding-top:max(14px, env(safe-area-inset-top))}
  .foot{padding-bottom:env(safe-area-inset-bottom)}
}

/* uz telefona nomešanas lauks ir lieks — kameras pogas dara to pašu */
@media (hover: none) and (pointer: coarse){
  .drop{display:none}
  .cap{padding:16px 6px;font-size:14px}
}
@media (max-width: 640px){
  .drop{display:none}
  .cap{padding:16px 6px;font-size:14px}

  /* Platākas maliņas telefonā. Uz platā ekrāna 16 px pietiek, jo teksts
     tāpat neaizsniedzas līdz malai; telefonā rinda beidzas tieši pie
     stikla, un lasīt kļūst nepatīkami. Kartītes iekšējo atkāpi vienlaikus
     mazliet samazinām, lai teksta rinda nekļūtu par šauru. */
  .shell{padding-left:24px;padding-right:24px}
  .card{padding:20px 18px}
  /* Piecas valodas plus "Uzlikt uz telefona" telefonā vienā rindā vairs
     neietilpst. Ļaujam galvenei salūzt divās rindās, nevis izspiesties
     ārpus ekrāna. */
  .top{flex-wrap:wrap;gap:6px 0}
  .logo{font-size:17px}
  .langs a{padding:5px 7px;font-size:12.5px}
  .brandmark{height:26px;max-width:150px}
}
#addroom{white-space:nowrap}
.addroom{flex-wrap:wrap}

/* turpināt vēlāk */
.resumewrap{margin:14px 0 4px}
.btn.small{padding:8px 14px;font-size:13.5px}
.resumebox{margin-top:10px;background:#f8fafc;border:1px solid var(--line);border-radius:10px;padding:12px 14px}
.resumebox p{margin:0 0 8px}
.resumebox input{width:100%;font-size:13px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:#fff}

/* ---------------------------------------------------------------
   Papildināšanas režīms — jau reģistrētie darba dati
   ---------------------------------------------------------------
   Rādām kā tekstu, ne kā laukus. Ieskatoties uzreiz redzams, ka tie
   pieder darbam, nevis šai formai, un tos šeit nemaina.
   --------------------------------------------------------------- */
.kvlock{width:100%;font-size:14.5px;border-collapse:collapse;margin:6px 0 12px}
.kvlock td{padding:7px 0;vertical-align:top;border-bottom:1px solid #eef1f5}
.kvlock tr:last-child td{border-bottom:0}
.kvlock td:first-child{color:#6b7280;width:34%;font-size:13px;padding-right:12px}

/* ---------------------------------------------------------------------
   TASTATŪRA TELEFONĀ
   Kamēr tastatūra ir atvērta, lapai apakšā vajag brīvu vietu — citādi
   pēdējo lauku uzritināt uz augšu nav kur. Klasi uzliek app.js.
   scroll-margin-top palīdz arī tad, kad pārlūks ritina pats.
   --------------------------------------------------------------------- */
body.kbd .shell{padding-bottom:62vh}
input,textarea,select,.ffplaces{scroll-margin-top:92px;scroll-margin-bottom:24px}

/* Ieeja administrācijā — diskrēta ikona valodu blakus. Pelēka, līdz uzbrauc. */
.adminlink{display:inline-flex;align-items:center;justify-content:center;
  width:30px;height:30px;margin-left:6px;border-radius:8px;
  color:#9aa3ae;text-decoration:none;transition:.15s}
.adminlink:hover{color:#0f2f4f;background:#eef1f5}
.adminlink:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(15,47,79,.18)}

/* --- Adrešu kastes (2. solis) ------------------------------------------
   Viena adrese — viena kaste. Agrāk «no» un «uz» lauki telefonā mijās
   sešas reizes, un cilvēkam tikpat reižu bija jāpārslēdz galva starp veco
   un jauno dzīvesvietu. Rāmis to nošķir arī tad, kad viss ir vienā ailē. */
.block{border:1px solid var(--line);border-radius:12px;padding:14px 16px 4px;margin:0 0 16px;min-width:0}
.block>legend{font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;
              color:var(--navy);padding:0 7px;margin-left:-4px}
.block .fld:last-child{margin-bottom:14px}

/* Lifta pogas — tās pašas aplītes, kas pakalpojumiem, tikai ciešāk un ar
   etiķeti blakus, ne virs. Trīs īsas pogas vienā rindā ietilpst arī šaurā
   telefonā, tāpēc te nekas nesaplok. */
.chips.tight{margin:0 0 12px}
.chips.tight>legend{font-size:13px;font-weight:600;text-transform:none;letter-spacing:0;
                    color:var(--mut);margin-bottom:6px;padding:0}
.chips.tight span{padding:7px 14px;font-size:13.5px}

/* Stāvs ir divciparu lauks — tam nav jāaizņem vesela rinda arī telefonā.
   Valsts un stāvs blakus ietaupa katrā kastē ~76 px, proti, pusi no tā,
   par ko 2. solis pārsniedza ekrānu. */
@media(max-width:640px){
  .block .grid2{grid-template-columns:1fr 92px;gap:0 12px}
}
