/* LKS-2020 pārrēķins — lapas stils. Tokeni :root (gaišā tēma), tumšā tēma caur prefers-color-scheme un data-theme. */
/* ---------- tokeni ---------- */
:root{
  --ink:#1c3d9e;          /* inženierzilais: zīmols, virsraksti, primārā poga */
  --ink-2:#2f5fd6;        /* saites, fokuss */
  --ink-soft:#e7ecfb;     /* zilais tonis fonam */
  --flag:#b8480f;         /* mērnieka karodziņa oranžais tekstam (kontrasts 5,6:1 uz balta) */
  --flag-vivid:#e8702a;   /* tas pats oranžais grafikai un maziem akcentiem */
  --flag-soft:#fdeadf;
  --ok:#157a3c; --ok-soft:#e1f3e7;
  --warn:#8a5a00; --warn-soft:#fbf0d6;
  --err:#b8352a; --err-soft:#fbe3e0;
  --paper:#f4f5f9;        /* fons, vēss papīrs */
  --card:#ffffff;
  --line:#d9dde8;
  --line-strong:#b3bad0;
  --text:#171a26;
  --muted:#5f677d;
  --grid:rgba(28,61,158,.08);
  --on-ink:#ffffff;      /* teksts uz --ink virsmas */
  --shadow:0 1px 2px rgba(28,31,43,.06), 0 12px 32px -16px rgba(30,47,150,.25);
  --display:"Barlow Semi Condensed", "Arial Narrow", Arial, sans-serif;
  --body:"Source Sans 3", "Segoe UI", system-ui, sans-serif;
  --mono:"JetBrains Mono", Consolas, "Courier New", monospace;
  color-scheme: light;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --ink:#9db0ff; --ink-2:#86a0ff; --ink-soft:#1a2347;
    --flag:#f39a62; --flag-vivid:#f08a4e; --flag-soft:#3a2417;
    --ok:#5fd18c; --ok-soft:#14301e; --warn:#f0c45a; --warn-soft:#332a10; --err:#ff7f73; --err-soft:#3b1a17;
    --paper:#0f1322; --card:#171c30; --line:#2a3150; --line-strong:#3d467a; --on-ink:#0f1322;
    --text:#e6e8f0; --muted:#9aa1b8; --grid:rgba(152,167,255,.10);
    --shadow:0 1px 2px rgba(0,0,0,.4), 0 12px 32px -16px rgba(0,0,0,.6);
    color-scheme: dark;
  }
}
:root[data-theme="dark"]{
  --ink:#9db0ff; --ink-2:#86a0ff; --ink-soft:#1a2347;
  --flag:#f39a62; --flag-vivid:#f08a4e; --flag-soft:#3a2417;
  --ok:#5fd18c; --ok-soft:#14301e; --warn:#f0c45a; --warn-soft:#332a10; --err:#ff7f73; --err-soft:#3b1a17;
  --paper:#0f1322; --card:#171c30; --line:#2a3150; --line-strong:#3d467a; --on-ink:#0f1322;
  --text:#e6e8f0; --muted:#9aa1b8; --grid:rgba(152,167,255,.10);
  --shadow:0 1px 2px rgba(0,0,0,.4), 0 12px 32px -16px rgba(0,0,0,.6);
  color-scheme: dark;
}

/* ---------- pamats ---------- */
*{box-sizing:border-box}
html{scroll-behavior:smooth; -webkit-text-size-adjust:100%}
@media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto} *{animation:none!important; transition:none!important} }
body{
  margin:0; background:var(--paper); color:var(--text);
  font-family:var(--body); font-size:17px; line-height:1.55;
  font-feature-settings:"kern"; -webkit-font-smoothing:antialiased;
}
img,svg{max-width:100%}
a{color:var(--ink-2)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--ink-2); outline-offset:2px}
h1,h2,h3,h4{font-family:var(--display); font-weight:600; line-height:1.1; margin:0; text-wrap:balance; letter-spacing:-.005em}
h1{font-size:clamp(2.2rem,4.6vw,3.7rem); font-weight:700}
h2{font-size:clamp(1.75rem,3.2vw,2.5rem)}
h3{font-size:1.3rem}
h4{font-size:1.05rem}
p{margin:0}
.lead{font-size:1.2rem; line-height:1.5}
.muted{color:var(--muted)}
.mono{font-family:var(--mono); font-size:.92em}
.num{font-variant-numeric:tabular-nums}
.eyebrow{
  font-family:var(--display); font-weight:600; font-size:.82rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--ink); display:flex; align-items:center; gap:.6rem; margin-bottom:.9rem;
}
.eyebrow::before{content:""; width:1.6rem; height:2px; background:var(--ink); display:inline-block}
.wrap{max-width:1140px; margin:0 auto; padding:0 clamp(1rem,4vw,2.5rem)}
.prose{max-width:66ch}
.prose p + p{margin-top:1em}
section.block{padding:clamp(3.2rem,7vw,6rem) 0; border-top:1px solid var(--line)}
section.block > .wrap > .eyebrow + h2{margin-bottom:1rem}
.cols{display:grid; gap:clamp(1.5rem,4vw,3.5rem)}
@media (min-width:880px){ .cols-2{grid-template-columns:1fr 1fr} .cols-3{grid-template-columns:repeat(3,1fr)} .cols-5-7{grid-template-columns:5fr 7fr} .cols-7-5{grid-template-columns:7fr 5fr} }

.btn{
  display:inline-flex; align-items:center; gap:.55rem; font-family:var(--display); font-weight:600; font-size:1.02rem; letter-spacing:.02em;
  padding:.85rem 1.35rem; border-radius:6px; border:1.5px solid transparent; text-decoration:none; cursor:pointer; line-height:1;
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease;
}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--ink); color:#fff; border-color:var(--ink)}
:root[data-theme="dark"] .btn-primary{color:#0f1322}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .btn-primary{color:#0f1322} }
.btn-primary:hover{box-shadow:var(--shadow)}
.btn-ghost{background:transparent; color:var(--ink); border-color:var(--line-strong)}
.btn-ghost:hover{background:var(--ink-soft)}
.btn-flag{background:var(--flag); color:#fff; border-color:var(--flag)}
.btn[aria-disabled="true"], .btn:disabled{opacity:.45; cursor:not-allowed; box-shadow:none}
.pill{display:inline-flex; align-items:center; gap:.4rem; font-family:var(--display); font-weight:600; font-size:.8rem; letter-spacing:.08em; text-transform:uppercase; padding:.3rem .65rem; border-radius:4px}
.pill-flag{background:var(--flag-soft); color:var(--flag)}
.pill-ink{background:var(--ink-soft); color:var(--ink)}
.pill-ok{background:var(--ok-soft); color:var(--ok)}

/* ---------- galvene ---------- */
header.top{
  position:sticky; top:0; z-index:50; background:color-mix(in srgb, var(--paper) 88%, transparent);
  backdrop-filter:saturate(1.3) blur(10px); -webkit-backdrop-filter:saturate(1.3) blur(10px); border-bottom:1px solid var(--line);
}
header.top .wrap{display:flex; align-items:center; justify-content:space-between; gap:1rem; height:64px}
.brand{display:flex; align-items:center; gap:.7rem; text-decoration:none; color:var(--text)}
.brand .mark{width:34px; height:34px; border-radius:6px; flex:none}
.brand b{font-family:var(--display); font-weight:700; font-size:1.15rem; letter-spacing:.01em; line-height:1}
.brand small{display:block; font-size:.72rem; color:var(--muted); letter-spacing:.06em; text-transform:uppercase; font-family:var(--display); font-weight:600; margin-top:.15rem}
nav.main{display:none; gap:1.4rem}
nav.main a{text-decoration:none; color:var(--text); font-family:var(--display); font-weight:600; font-size:.98rem; letter-spacing:.02em}
nav.main a:hover{color:var(--ink)}
@media (min-width:960px){ nav.main{display:flex} }
.top-actions{display:flex; gap:.6rem; align-items:center}
.top-actions .btn{padding:.6rem 1rem; font-size:.95rem}
.menu-btn{display:inline-flex; background:none; border:1.5px solid var(--line-strong); border-radius:6px; padding:.5rem .6rem; color:var(--text); cursor:pointer}
@media (min-width:960px){ .menu-btn{display:none} }
.drawer{display:none; border-top:1px solid var(--line); background:var(--card)}
.drawer.open{display:block}
.drawer a{display:block; padding:.9rem clamp(1rem,4vw,2.5rem); text-decoration:none; color:var(--text); font-family:var(--display); font-weight:600; border-bottom:1px solid var(--line)}

/* ---------- termiņa josla ---------- */
.deadline{background:var(--ink-soft); color:var(--text); border-bottom:1px solid var(--line)}
.deadline .wrap{display:flex; flex-wrap:wrap; gap:.3rem 1.2rem; align-items:center; padding-top:.5rem; padding-bottom:.5rem; font-size:.92rem}
.deadline b{font-family:var(--display); letter-spacing:.04em; color:var(--ink)}
.deadline span:not(.count){color:var(--muted)}
.deadline .count{font-family:var(--mono); font-size:.86rem; color:var(--flag); font-weight:600; margin-left:auto}

/* ---------- hero ---------- */
.hero{position:relative; overflow:hidden; padding:clamp(3rem,7vw,5.5rem) 0 clamp(3rem,6vw,5rem)}
.hero::before{
  content:""; position:absolute; inset:0; pointer-events:none;
  background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);
  background-size:48px 48px; mask-image:linear-gradient(to bottom, rgba(0,0,0,.9), transparent 85%); -webkit-mask-image:linear-gradient(to bottom, rgba(0,0,0,.9), transparent 85%);
}
.hero .wrap{position:relative; display:grid; gap:clamp(2rem,4vw,3.5rem); align-items:center}
@media (min-width:960px){ .hero .wrap{grid-template-columns:minmax(0,7fr) minmax(0,6fr)} }
.hero h1 span{color:var(--ink)}
.hero .lead{margin-top:1.2rem; max-width:34em}
.hero .cta{display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1.8rem; align-items:center}
.hero .fine{margin-top:1rem; font-size:.92rem; color:var(--muted)}
.hero .facts{display:flex; flex-wrap:wrap; gap:1.6rem; margin-top:2rem; padding-top:1.4rem; border-top:1px solid var(--line)}
.hero .facts div b{display:block; font-family:var(--display); font-size:1.5rem; font-weight:700; color:var(--ink); line-height:1}
.hero .facts div span{font-size:.85rem; color:var(--muted)}

/* nobīdes diagramma */
.shiftmap{background:var(--card); border:1px solid var(--line); border-radius:8px; box-shadow:var(--shadow); padding:1rem 1rem .8rem}
.shiftmap .cap{display:flex; justify-content:space-between; align-items:baseline; gap:1rem; font-size:.82rem; color:var(--muted); margin-bottom:.4rem}
.shiftmap .cap b{font-family:var(--display); font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--text); font-size:.8rem}
.shiftmap svg{display:block; width:100%; height:auto}
.shiftmap .legend{display:flex; flex-wrap:wrap; gap:1rem; font-size:.82rem; color:var(--muted); margin-top:.6rem}
.shiftmap .legend i{display:inline-block; width:10px; height:10px; border-radius:50%; vertical-align:-1px; margin-right:.35rem}
.sv-grid{stroke:var(--line); stroke-width:1}
.sv-land{fill:var(--ink-soft); stroke:var(--line-strong); stroke-width:1.2; stroke-linejoin:round}
.sv-old{fill:none; stroke:var(--muted); stroke-width:1.6}
.sv-new{fill:var(--ink)}
.sv-vec{stroke:var(--flag-vivid); stroke-width:2; fill:none; marker-end:url(#arrow)}
.sv-lbl{font-family:var(--mono); font-size:11.5px; fill:var(--text)}
.sv-lbl2{font-family:var(--body); font-size:12px; fill:var(--muted)}
.sv-tick{font-family:var(--mono); font-size:10px; fill:var(--muted)}

/* ---------- divi lietojumi ---------- */
.uses{display:grid; gap:1.2rem}
@media (min-width:700px){ .uses{grid-template-columns:1fr 1fr} }
@media (min-width:1000px){ .uses{grid-template-columns:1fr 1fr 1fr} }
.use{background:var(--card); border:1px solid var(--line); border-radius:8px; padding:1.5rem; display:flex; flex-direction:column; gap:.7rem}
.use h3{font-size:1.7rem; line-height:1.15}
.use .sub{font-family:var(--display); font-weight:600; font-size:1.1rem; color:var(--flag); margin-top:-.3rem}
.use ul{margin:.3rem 0 0; padding-left:1.1rem}
.use li + li{margin-top:.35rem}

/* ---------- slazds ---------- */
.trap{background:var(--card); border:1px solid var(--line); border-left:6px solid var(--flag-vivid); border-radius:8px; padding:clamp(1.4rem,3vw,2.2rem); box-shadow:var(--shadow)}
.trap h3{font-size:1.6rem}
.trap pre{
  margin:1.2rem 0 0; background:var(--paper); border:1px solid var(--line); border-radius:6px; padding:1rem 1.1rem; font-family:var(--mono); font-size:.86rem; line-height:1.55; overflow-x:auto; color:var(--text)
}
.trap pre .c{color:var(--muted)} .trap pre .bad{color:var(--err); font-weight:600} .trap pre .good{color:var(--ok); font-weight:600}
.shift-table{width:100%; border-collapse:collapse; font-size:.98rem; margin-top:1rem}
.shift-table th,.shift-table td{padding:.5rem .2rem; border-bottom:1px solid var(--line); text-align:left}
.shift-table td:last-child,.shift-table th:last-child{text-align:right; font-family:var(--mono)}
.shift-table th{font-family:var(--display); font-weight:600; letter-spacing:.08em; text-transform:uppercase; font-size:.78rem; color:var(--muted)}

/* ---------- kalkulators ---------- */
.calc{background:var(--card); border:1px solid var(--line); border-radius:10px; box-shadow:var(--shadow); overflow:hidden}
.calc-head{display:flex; flex-wrap:wrap; gap:.7rem 1rem; align-items:center; justify-content:space-between; padding:.9rem 1.2rem; border-bottom:1px solid var(--line); background:var(--paper)}
.calc-dir{display:inline-flex; border:1.5px solid var(--line-strong); border-radius:6px; overflow:hidden}
.calc-dir button{font:inherit; font-family:var(--display); font-weight:600; font-size:.92rem; padding:.45rem .85rem; background:transparent; color:var(--muted); border:0; cursor:pointer}
.calc-dir button + button{border-left:1.5px solid var(--line-strong)}
.calc-dir button[aria-pressed="true"]{background:var(--ink); color:var(--on-ink)}
.calc-cities{display:flex; flex-wrap:wrap; gap:.35rem; align-items:center}
.calc-cities span{font-size:.85rem; color:var(--muted); margin-right:.2rem}
.calc-cities button{font:inherit; font-size:.85rem; padding:.28rem .6rem; border:1px solid var(--line-strong); border-radius:20px; background:var(--card); color:var(--text); cursor:pointer}
.calc-cities button:hover{border-color:var(--ink); color:var(--ink)}
.calc-city{display:inline-flex; align-items:center; gap:.5rem; font-size:.9rem; color:var(--muted)}
.calc-city select{font:inherit; font-size:.95rem; padding:.4rem 2rem .4rem .7rem; border:1.5px solid var(--line-strong); border-radius:6px; background:var(--card); color:var(--text); max-width:16rem}
.calc-body{display:grid}
@media (min-width:780px){ .calc-body{grid-template-columns:1fr 1fr} }
.calc-in{padding:1.2rem; display:grid; gap:.9rem; align-content:start}
.calc-out{padding:1.2rem; background:var(--ink-soft); display:grid; gap:.75rem; align-content:start}
@media (min-width:780px){ .calc-out{border-left:1px solid var(--line)} }
.calc-lbl{font-family:var(--display); font-weight:600; font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted)}
.calc-out .calc-lbl{color:var(--ink)}
.calc-val{font-family:var(--mono); font-size:1.32rem; font-variant-numeric:tabular-nums; color:var(--text); word-break:break-all; line-height:1.25}
.calc-row{display:flex; justify-content:space-between; align-items:baseline; gap:1rem; border-top:1px solid var(--line); padding-top:.7rem}
.calc-row b{font-family:var(--display); font-size:1.55rem; color:var(--ink); font-variant-numeric:tabular-nums; line-height:1}
.calc-row span{font-size:.88rem; color:var(--muted); text-align:right}
.calc-shift{font-family:var(--mono); font-size:.92rem; color:var(--muted); font-variant-numeric:tabular-nums}
.calc-err{color:var(--flag); font-size:.95rem}
.calc-note{margin:0; padding:.85rem 1.2rem; border-top:1px solid var(--line); font-size:.85rem; color:var(--muted); background:var(--paper)}
.calc input{font-family:var(--mono); font-size:1.05rem; padding:.65rem .75rem; border:1.5px solid var(--line-strong); border-radius:6px; background:var(--paper); color:var(--text); width:100%; font-variant-numeric:tabular-nums}
.calc .field label{font-family:var(--display); font-weight:600; font-size:.9rem}
.calc .hint{font-size:.82rem; color:var(--muted)}

/* ---------- konkurents ---------- */
.free-cols{display:grid; gap:1.6rem}
@media (min-width:880px){ .free-cols{grid-template-columns:7fr 5fr} }
.method{background:var(--card); border:1px solid var(--line); border-left:4px solid var(--ink); border-radius:8px; padding:1.1rem 1.3rem}
.method h4{margin-bottom:.5rem}
.method ol{margin:0; padding-left:1.2rem; font-size:.95rem; color:var(--muted)}
.method li + li{margin-top:.3rem}

/* ---------- programmas logs (ilustrācija) ---------- */
.app{background:var(--card); border:1px solid var(--line-strong); border-radius:8px; box-shadow:var(--shadow); overflow:hidden; font-family:"Segoe UI", var(--body); font-size:.86rem; color:var(--text)}
.app .titlebar{display:flex; align-items:center; gap:.6rem; padding:.5rem .8rem; border-bottom:1px solid var(--line); background:var(--paper)}
.app .titlebar img{width:18px; height:18px; border-radius:3px}
.app .titlebar span{flex:1; font-weight:600}
.app .titlebar i{width:10px; height:10px; border-radius:50%; background:var(--line-strong); display:inline-block}
.app .row{display:flex; align-items:center; gap:.7rem; padding:.55rem .9rem; border-bottom:1px solid var(--line); flex-wrap:wrap}
.app .row .lbl{font-weight:600; min-width:5.5rem}
.app .radio{display:inline-flex; align-items:center; gap:.35rem; color:var(--muted)}
.app .radio.on{color:var(--text); font-weight:600}
.app .radio::before{content:""; width:11px; height:11px; border-radius:50%; border:1.5px solid var(--line-strong); display:inline-block}
.app .radio.on::before{border-color:var(--ink); background:radial-gradient(var(--ink) 45%, transparent 50%)}
.app table{width:100%; border-collapse:collapse}
.app th{font-weight:600; text-align:left; padding:.45rem .9rem; border-bottom:1px solid var(--line); color:var(--muted); font-size:.78rem}
.app td{padding:.42rem .9rem; border-bottom:1px solid var(--line); vertical-align:top}
.app td.st{width:2rem; text-align:center; font-weight:700}
.app tr.ok td.st{color:var(--ok)} .app tr.warn td.st{color:var(--warn)} .app tr.err td.st{color:var(--err)} .app tr.wait td.st{color:var(--muted)}
.app td.res{color:var(--muted); font-size:.8rem}
.app tr.warn td.res{color:var(--warn)} .app tr.err td.res{color:var(--err)}
.app .foot{display:flex; align-items:center; justify-content:space-between; gap:.7rem; padding:.7rem .9rem; flex-wrap:wrap}
.app .run{background:var(--ink); color:var(--card); font-weight:700; letter-spacing:.06em; padding:.55rem 1rem; border-radius:4px; font-size:.82rem}
.app .btns span{border:1px solid var(--line-strong); border-radius:4px; padding:.3rem .6rem; margin-left:.35rem; color:var(--muted)}
.app .stage{font-size:.78rem; color:var(--muted); padding:.45rem .9rem; border-top:1px solid var(--line); background:var(--paper); font-family:var(--mono)}
figcaption.small{font-size:.85rem; color:var(--muted); margin-top:.6rem}

/* ---------- funkciju saraksts ---------- */
.feat{display:grid; gap:1rem}
@media (min-width:700px){ .feat{grid-template-columns:1fr 1fr} }
.feat div{padding:1rem 0 1rem 1.1rem; border-left:2px solid var(--ink)}
.feat h4{margin-bottom:.3rem}
.feat p{font-size:.98rem; color:var(--muted)}

/* ---------- salīdzinājums ---------- */
.cmp-wrap{overflow-x:auto; border:1px solid var(--line); border-radius:8px; background:var(--card); box-shadow:var(--shadow)}
table.cmp{width:100%; border-collapse:collapse; min-width:640px; font-size:.98rem}
table.cmp th,table.cmp td{padding:.85rem 1rem; border-bottom:1px solid var(--line); text-align:left; vertical-align:top}
table.cmp thead th{font-family:var(--display); font-weight:600; letter-spacing:.06em; text-transform:uppercase; font-size:.8rem; color:var(--muted); background:var(--paper)}
table.cmp thead th.us{color:var(--ink)}
table.cmp td.n{font-variant-numeric:tabular-nums}
table.cmp td.us{background:var(--ink-soft); font-weight:600}
table.cmp tbody tr:last-child td{border-bottom:0}
.footnote{font-size:.9rem; color:var(--muted); margin-top:.9rem}

/* ---------- pierādījumi ---------- */
.proof{display:grid; gap:1px; background:var(--line); border:1px solid var(--line); border-radius:8px; overflow:hidden}
@media (min-width:700px){ .proof{grid-template-columns:repeat(3,1fr)} }
.proof div{background:var(--card); padding:1.3rem 1.3rem 1.2rem}
.proof b{display:block; font-family:var(--display); font-weight:700; font-size:2rem; color:var(--ink); line-height:1; font-variant-numeric:tabular-nums}
.proof span{display:block; margin-top:.4rem; font-size:.92rem; color:var(--muted)}
.checks{margin:1.4rem 0 0; padding:0; list-style:none; display:grid; gap:.7rem}
@media (min-width:700px){ .checks{grid-template-columns:1fr 1fr} }
.checks li{display:flex; gap:.7rem; align-items:flex-start; font-size:.98rem}
.checks li::before{content:"✓"; color:var(--ok); font-weight:700; flex:none; font-family:var(--mono)}

/* ---------- nedara / prasības ---------- */
.plain{margin:0; padding:0; list-style:none; display:grid; gap:.75rem}
.plain li{display:flex; gap:.75rem; align-items:flex-start}
.plain li::before{content:"—"; color:var(--flag); flex:none; font-weight:700}
.req{width:100%; border-collapse:collapse; background:var(--card); border:1px solid var(--line); border-radius:8px; overflow:hidden}
.req th,.req td{padding:.9rem 1rem; text-align:left; border-bottom:1px solid var(--line); vertical-align:top}
.req th{font-family:var(--display); font-weight:600; letter-spacing:.06em; text-transform:uppercase; font-size:.8rem; color:var(--muted); background:var(--paper)}
.req tr:last-child td{border-bottom:0}
.req td:first-child{font-family:var(--mono); font-weight:600; white-space:nowrap}

/* ---------- cena ---------- */
.price-grid{display:grid; gap:1.2rem; align-items:start}
@media (min-width:880px){ .price-grid{grid-template-columns:minmax(0,1fr) 380px} }
.price{background:var(--card); border:1.5px solid var(--ink); border-radius:10px; padding:1.6rem; box-shadow:var(--shadow); position:relative}
.price .tag{position:absolute; top:-.75rem; left:1.4rem}
.price .amount{display:flex; align-items:baseline; gap:.4rem; margin-top:.6rem}
.price .amount b{font-family:var(--display); font-weight:700; font-size:3rem; line-height:1; color:var(--ink); font-variant-numeric:tabular-nums}
.price .amount span{color:var(--muted)}
.price ul{margin:1rem 0 0; padding:0; list-style:none; display:grid; gap:.5rem; font-size:.97rem}
.price ul li{display:flex; gap:.6rem}
.price ul li::before{content:"✓"; color:var(--ok); font-family:var(--mono); font-weight:700}
.price .renew{margin-top:1.1rem; padding-top:1rem; border-top:1px solid var(--line); font-size:.95rem; color:var(--muted)}
.price .renew b{color:var(--text); font-family:var(--mono)}
.steps{counter-reset:s; margin:1.4rem 0 0; padding:0; list-style:none; display:grid; gap:1rem}
.steps li{display:grid; grid-template-columns:2.4rem 1fr; gap:.9rem; align-items:start}
.steps li::before{counter-increment:s; content:counter(s); font-family:var(--display); font-weight:700; font-size:1.2rem; color:var(--card); background:var(--ink); width:2.4rem; height:2.4rem; border-radius:50%; display:grid; place-items:center}
.steps h4{margin-bottom:.2rem}
.steps p{color:var(--muted); font-size:.98rem}
.steps code{font-family:var(--mono); background:var(--ink-soft); color:var(--ink); padding:.1rem .4rem; border-radius:4px; font-size:.9em}

/* ---------- pasūtīšana ---------- */
.order{display:grid; gap:1.2rem}
@media (min-width:960px){ .order{grid-template-columns:1fr 1fr} }
.panel{background:var(--card); border:1px solid var(--line); border-radius:8px; padding:1.5rem; display:flex; flex-direction:column; gap:1rem}
.panel h3{display:flex; align-items:center; gap:.6rem}
.panel .who{font-size:.9rem; color:var(--muted)}
.field{display:grid; gap:.3rem}
.field label{font-family:var(--display); font-weight:600; font-size:.9rem; letter-spacing:.03em}
.field input,.field textarea,.field select{
  font:inherit; font-size:1rem; padding:.7rem .8rem; border:1.5px solid var(--line-strong); border-radius:6px; background:var(--paper); color:var(--text); width:100%
}
.field textarea{min-height:5.5rem; resize:vertical}
.field .hint{font-size:.85rem; color:var(--muted)}
.field input.mono{font-family:var(--mono); letter-spacing:.05em; text-transform:uppercase}
.check{display:flex; gap:.7rem; align-items:flex-start; font-size:.93rem; line-height:1.4}
.check input{margin-top:.25rem; width:1.1rem; height:1.1rem; flex:none; accent-color:var(--ink)}
.grid2{display:grid; gap:.9rem}
@media (min-width:560px){ .grid2{grid-template-columns:1fr 1fr} }
.notice{background:var(--warn-soft); color:var(--warn); border-radius:6px; padding:.75rem .9rem; font-size:.92rem}
.notice.ok{background:var(--ok-soft); color:var(--ok)}
.notice.info{background:var(--ink-soft); color:var(--ink)}
.pay-logos{display:flex; gap:.6rem; flex-wrap:wrap; font-family:var(--display); font-weight:600; font-size:.78rem; letter-spacing:.06em; text-transform:uppercase; color:var(--muted)}
.pay-logos span{border:1px solid var(--line); border-radius:4px; padding:.25rem .5rem}

/* ---------- BUJ ---------- */
.faq{display:grid; gap:.6rem}
.faq details{background:var(--card); border:1px solid var(--line); border-radius:8px}
.faq summary{cursor:pointer; padding:1rem 1.2rem; font-family:var(--display); font-weight:600; font-size:1.1rem; list-style:none; display:flex; justify-content:space-between; gap:1rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+"; font-family:var(--mono); color:var(--ink); font-weight:600}
.faq details[open] summary::after{content:"–"}
.faq .a{padding:0 1.2rem 1.1rem; color:var(--text)}

/* ---------- kājene ---------- */
footer.site{border-top:1px solid var(--line); padding:3rem 0 2.5rem; font-size:.93rem; color:var(--muted)}
footer.site .cols{gap:2rem}
footer.site h4{color:var(--text); margin-bottom:.6rem; font-size:.85rem; letter-spacing:.1em; text-transform:uppercase}
footer.site ul{margin:0; padding:0; list-style:none; display:grid; gap:.35rem}
footer.site a{color:var(--text); text-decoration:none}
footer.site a:hover{color:var(--ink); text-decoration:underline}
footer.site .legal{margin-top:2rem; padding-top:1.2rem; border-top:1px solid var(--line); display:flex; flex-wrap:wrap; gap:.5rem 1.5rem; justify-content:space-between}

/* ---------- dokumentu skati ---------- */
.doc{padding:clamp(2rem,5vw,4rem) 0 4rem}
.doc .wrap{max-width:820px}
.doc .back{display:inline-flex; gap:.4rem; align-items:center; text-decoration:none; font-family:var(--display); font-weight:600; margin-bottom:1.6rem}
.doc h1,.doc h2.doc-title{font-size:clamp(1.9rem,4vw,2.8rem); margin:0}
.doc .meta{font-size:.9rem; color:var(--muted); margin:.6rem 0 2rem}
.doc h3{font-size:1.35rem; margin:2.2rem 0 .7rem}
.doc h4{font-size:1.1rem; margin:1.4rem 0 .4rem}
.doc p,.doc li{max-width:70ch}
.doc p + p{margin-top:.8em}
.doc ol,.doc ul{padding-left:1.4rem; margin:.5rem 0}
.doc li + li{margin-top:.4rem}
.doc table{width:100%; border-collapse:collapse; font-size:.95rem}
.doc table td,.doc table th{padding:.5rem .6rem; border-bottom:1px solid var(--line); text-align:left; vertical-align:top}
.doc .box{background:var(--card); border:1px solid var(--line); border-radius:8px; padding:1.2rem 1.4rem; margin:1rem 0}
.doc .box.form{font-family:var(--mono); font-size:.9rem; white-space:pre-wrap; line-height:1.6}
.doc .tip{background:var(--warn-soft); color:var(--warn); border-radius:6px; padding:.7rem .9rem; font-size:.9rem}
[hidden]{display:none!important}
.toast{position:fixed; left:50%; bottom:1.5rem; transform:translateX(-50%); background:var(--text); color:var(--paper); padding:.8rem 1.2rem; border-radius:8px; font-size:.95rem; box-shadow:var(--shadow); z-index:99; max-width:min(92vw,40rem)}
.sr{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0)}
@media print{ header.top,.deadline,.drawer,.toast{display:none} .doc{padding:0} }

/* ---------- mobilais skats (pārbaude 2026-09-08 uz 375 px) ---------- */
/* režģa bērni nedrīkst izstiept lapu platāku par ekrānu (min-width:auto → 0) */
.cols > *, .free-cols > *, .hero .wrap > *, .calc-body > *, .price-grid > *, .order > *, .grid2 > *, .uses > *{min-width:0}
figure{margin:0}   /* pārlūka noklusējums 1em 40px šaurina karti un programmas attēlu */
.app{min-width:0; max-width:100%}
.app td, .app .stage, .app .res{overflow-wrap:anywhere}
.app .row .lbl{min-width:0}
.scroll-hint{display:none; font-size:.82rem; color:var(--muted); margin:.6rem 0 -1rem}
@media (max-width:699px){
  .scroll-hint{display:block}
  table.cmp{min-width:560px; font-size:.9rem}
  table.cmp th, table.cmp td{padding:.7rem .75rem}
  table.cmp th:first-child, table.cmp td:first-child{position:sticky; left:0; z-index:1; background:var(--card); min-width:6.5rem; box-shadow:1px 0 0 var(--line)}
  table.cmp thead th:first-child{background:var(--paper)}
}
@media (max-width:559px){
  .brand small{display:none}
  .brand b{font-size:1.05rem}
  header.top .wrap{gap:.6rem; height:58px}
  .top-actions .btn{padding:.5rem .8rem; font-size:.9rem}
  .deadline .wrap{font-size:.86rem; gap:.15rem .8rem}
  .deadline .count{margin-left:0}
  .hero .facts{gap:1rem 1.4rem}
  .shiftmap{padding:.8rem .7rem .7rem}
  .sv-lbl2{font-size:14px}
  .sv-lbl{font-size:12.5px}
  .app{font-size:.8rem}
  .app td:nth-child(2){min-width:8.5rem; overflow-wrap:break-word}
  .app .btns span{margin-left:0; margin-right:.35rem}
}

/* tehniskā specifikācija, salokāma */
details.techspec{margin-top:1.6rem; border-top:1px solid var(--line); padding-top:1rem}
details.techspec summary{cursor:pointer; list-style:none; font-family:var(--display); font-weight:600; font-size:1.05rem; color:var(--ink); display:flex; align-items:center; gap:.5rem}
details.techspec summary::-webkit-details-marker{display:none}
details.techspec summary::before{content:"+"; font-family:var(--mono); font-weight:700; width:1.2rem}
details.techspec[open] summary::before{content:"–"}

/* sīkdatņu paziņojums */
.cookie{position:fixed; left:50%; bottom:1rem; transform:translateX(-50%); z-index:60; width:min(calc(100% - 2rem), 720px); background:var(--card); color:var(--text); border:1px solid var(--line-strong); border-radius:10px; box-shadow:var(--shadow); padding:1rem 1.2rem; display:flex; gap:1rem; align-items:center; flex-wrap:wrap}
.cookie p{margin:0; flex:1 1 320px; font-size:.92rem; line-height:1.45}
.cookie-btns{display:flex; gap:.5rem; flex-wrap:wrap}
.cookie .btn{padding:.55rem .9rem; font-size:.9rem}
@media print{ .cookie{display:none} }
