:root{
  --fonas:#F4F5F2;
  --korta:#FFFFFF;
  --korta2:#ECEEE9;
  --rasalas:#1D2422;
  --rasalas2:#4C5652;
  --linija:#D8DCD4;
  --spauda:#0E8A5F;
  --spauda-svelni:#E2F1EA;
  --spauda-tamsi:#0A6B4A;
  --lazeris:#CE3F22;
  --lazeris-svelni:#F9E8E2;
  --lazeris-tamsi:#A93318;
  --demesio-fonas:#FBF3DC;
  --demesio-krastas:#C89A2B;
  --pavojus-fonas:#F9E8E2;
  --pavojus-krastas:#CE3F22;
}
@media (prefers-color-scheme: dark){
  :root{
    --fonas:#151A19;
    --korta:#1E2523;
    --korta2:#242C2A;
    --rasalas:#E7ECE8;
    --rasalas2:#A2ADA7;
    --linija:#333D3A;
    --spauda:#3CC08C;
    --spauda-svelni:#1B322A;
    --spauda-tamsi:#7ADCB4;
    --lazeris:#F0663F;
    --lazeris-svelni:#3A241D;
    --lazeris-tamsi:#F79A7C;
    --demesio-fonas:#332B18;
    --demesio-krastas:#D8B052;
    --pavojus-fonas:#3A241D;
    --pavojus-krastas:#F0663F;
  }
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *{transition:none !important; animation:none !important}
}
body{
  margin:0;
  background:var(--fonas);
  color:var(--rasalas);
  font-family:"Source Sans 3", "Segoe UI", Arial, sans-serif;
  font-size:17px;
  line-height:1.6;
}
h1,h2,h3,h4{
  font-family:"Bricolage Grotesque", "Arial Black", Arial, sans-serif;
  line-height:1.15;
  text-wrap:balance;
  margin:0 0 .5em;
}
a{color:inherit}
.vidus{max-width:800px; margin:0 auto; padding:0 20px}

/* ---------- viršus ---------- */
header.herojus{
  padding:56px 0 40px;
  border-bottom:1px solid var(--linija);
}
header.herojus.h-abu{
  background:
    linear-gradient(90deg, var(--spauda) 0 50%, var(--lazeris) 50% 100%) top/100% 6px no-repeat,
    var(--fonas);
}
header.herojus.h-spauda{
  background: linear-gradient(90deg, var(--spauda) 0 100%) top/100% 6px no-repeat, var(--fonas);
}
header.herojus.h-lazeris{
  background: linear-gradient(90deg, var(--lazeris) 0 100%) top/100% 6px no-repeat, var(--fonas);
}
.antzyme{
  font-family:"Spline Sans Mono", monospace;
  font-size:13px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--rasalas2);
  margin-bottom:14px;
}
h1{font-size:clamp(34px, 6vw, 54px); font-weight:800}
.herojus p.ivadas{max-width:60ch; font-size:19px; color:var(--rasalas2); margin:0}

/* ---------- pradinio puslapio skirsniai ---------- */
.skirsnis{
  padding:44px 0;
  border-bottom:1px solid var(--linija);
}
.skirsnis .zenklas{
  font-family:"Spline Sans Mono", monospace;
  font-size:13px; letter-spacing:.14em; text-transform:uppercase;
  display:inline-block; padding:4px 12px; border-radius:99px; margin-bottom:12px;
}
.skirsnis.s-spauda .zenklas{background:var(--spauda-svelni); color:var(--spauda-tamsi)}
.skirsnis.s-lazeris .zenklas{background:var(--lazeris-svelni); color:var(--lazeris-tamsi)}
.skirsnis h2{font-size:clamp(24px, 4vw, 34px); font-weight:800}
.skirsnis p{max-width:62ch; color:var(--rasalas2)}
.skirsnis ul{max-width:62ch; padding-left:22px; margin:.6em 0 1.2em}
.skirsnis li{margin:.3em 0}
.mygtukas{
  display:inline-block; text-decoration:none; font-weight:700; font-size:17px;
  padding:12px 26px; border-radius:10px; color:#FFFFFF;
}
.mygtukas.m-spauda{background:var(--spauda)}
.mygtukas.m-lazeris{background:var(--lazeris)}
.mygtukas:hover{filter:brightness(1.08)}
.mygtukas:focus-visible{outline:3px solid var(--rasalas2); outline-offset:3px}

/* ---------- prisegta navigacija ---------- */
nav.prisegta{
  position:sticky; top:0; z-index:50;
  background:var(--fonas);
  border-bottom:1px solid var(--linija);
}
nav.prisegta .vidus{display:flex; gap:8px; padding-top:10px; padding-bottom:10px; flex-wrap:wrap}
nav.prisegta a{
  text-decoration:none; font-weight:600; font-size:15px;
  padding:7px 14px; border-radius:99px; border:1px solid var(--linija);
  background:var(--korta);
}
nav.prisegta a.n-spauda{color:var(--spauda-tamsi)}
nav.prisegta a.n-lazeris{color:var(--lazeris-tamsi)}
nav.prisegta a:hover{border-color:var(--rasalas2)}
nav.prisegta a:focus-visible{outline:3px solid var(--rasalas2); outline-offset:2px}

/* ---------- pamokos ---------- */
main.kursas{padding:44px 0 24px}
.pamoka{
  background:var(--korta);
  border:1px solid var(--linija);
  border-radius:12px;
  padding:26px 28px;
  margin-bottom:20px;
}
@media (max-width:640px){ .pamoka{padding:20px 18px} }
.pamoka .pamokos-nr{
  font-family:"Spline Sans Mono", monospace;
  font-size:13px; font-weight:600; letter-spacing:.1em;
  margin-bottom:6px;
}
body.t-spauda .pamokos-nr{color:var(--spauda)}
body.t-lazeris .pamokos-nr{color:var(--lazeris)}
.pamoka h3{font-size:21px}
.pamoka p{margin:.6em 0; max-width:66ch}
.pamoka ul, .pamoka ol{margin:.6em 0; padding-left:24px; max-width:64ch}
.pamoka li{margin:.35em 0}
.pamoka li::marker{color:var(--rasalas2)}
.pamoka strong{font-weight:700}

.zingsniai{counter-reset:z; list-style:none; padding-left:0}
.zingsniai li{
  counter-increment:z;
  position:relative; padding-left:40px; margin:.7em 0;
}
.zingsniai li::before{
  content:counter(z);
  position:absolute; left:0; top:1px;
  width:26px; height:26px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-family:"Spline Sans Mono", monospace; font-size:13px; font-weight:600;
}
body.t-spauda .zingsniai li::before{background:var(--spauda-svelni); color:var(--spauda-tamsi)}
body.t-lazeris .zingsniai li::before{background:var(--lazeris-svelni); color:var(--lazeris-tamsi)}

.terminas{
  font-family:"Spline Sans Mono", monospace;
  font-size:.88em;
  background:var(--korta2);
  padding:1px 6px; border-radius:5px;
  white-space:nowrap;
}

/* ---------- įspėjimai ---------- */
.demesio, .pavojus{
  border-radius:10px; padding:16px 18px 16px 20px; margin:16px 0;
  border-left:5px solid;
}
.demesio{background:var(--demesio-fonas); border-color:var(--demesio-krastas)}
.pavojus{background:var(--pavojus-fonas); border-color:var(--pavojus-krastas)}
.demesio .antraste, .pavojus .antraste{
  font-weight:700; font-size:14px; letter-spacing:.08em; text-transform:uppercase;
  font-family:"Spline Sans Mono", monospace; margin-bottom:6px;
}
.pavojus .antraste{color:var(--lazeris-tamsi)}
.demesio p, .pavojus p{margin:.3em 0}

/* ---------- lentelės ---------- */
.lenteles-dezute{overflow-x:auto; margin:14px 0; border:1px solid var(--linija); border-radius:10px}
table{border-collapse:collapse; width:100%; min-width:520px; font-size:15px}
th, td{padding:10px 14px; text-align:left; border-bottom:1px solid var(--linija); vertical-align:top}
tbody tr:last-child td{border-bottom:none}
th{
  font-family:"Spline Sans Mono", monospace; font-weight:600;
  font-size:12.5px; letter-spacing:.08em; text-transform:uppercase;
  background:var(--korta2); color:var(--rasalas2);
}
td.sk{font-variant-numeric:tabular-nums; font-family:"Spline Sans Mono", monospace; font-size:14px}

/* ---------- kontrolinis sąrašas ---------- */
.saraso-dezute{background:var(--korta2); border-radius:10px; padding:18px 20px; margin-top:8px}
.saraso-dezute label{
  display:flex; gap:12px; align-items:flex-start;
  padding:7px 4px; cursor:pointer; border-radius:6px;
}
.saraso-dezute label:hover{background:var(--korta)}
.saraso-dezute input[type="checkbox"]{
  width:19px; height:19px; margin-top:3px; flex:none;
  accent-color:var(--spauda);
}
body.t-lazeris .saraso-dezute input[type="checkbox"]{accent-color:var(--lazeris)}
.saraso-dezute input[type="checkbox"]:focus-visible{outline:3px solid var(--rasalas2); outline-offset:2px}
.saraso-dezute .pastaba{font-size:13.5px; color:var(--rasalas2); margin-top:10px}
.valyti{
  font:600 14px "Source Sans 3", Arial, sans-serif;
  color:var(--rasalas);
  background:var(--korta);
  border:1px solid var(--linija);
  border-radius:8px;
  padding:7px 14px;
  cursor:pointer;
}
.valyti:hover{border-color:var(--rasalas2)}
.valyti:focus-visible{outline:3px solid var(--rasalas2); outline-offset:2px}

/* ---------- žodynėlis, pabaiga ---------- */
.zodynelis dt{font-weight:700; margin-top:12px}
.zodynelis dt .terminas{font-size:.95em}
.zodynelis dd{margin:2px 0 0 0; color:var(--rasalas2); max-width:64ch}
footer{
  border-top:1px solid var(--linija);
  padding:34px 0 44px; margin-top:40px;
  color:var(--rasalas2); font-size:15px;
}
footer p{max-width:66ch; margin:.4em 0}
.skyriklis{
  height:6px; border:none; margin:0 0 26px;
  background:linear-gradient(90deg, var(--spauda) 0 50%, var(--lazeris) 50% 100%);
  border-radius:99px; opacity:.9;
}
