/* ═══════════════════════════════════════════════════════════
   GruldaLand – stránka NÁKUPY (barvy a písmo přebírá z index.html)
   ═══════════════════════════════════════════════════════════ */
.nk-titulek{max-width:none; margin-bottom:20px}
.nk-titulek > p{max-width:640px}
.nk-mini{width:15px; height:15px; flex:none; vertical-align:-2px}

/* souhrn nahoře */
.nk-souhrn{display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:18px}
.nk-cip{display:inline-flex; align-items:center; gap:7px; padding:7px 12px; border-radius:999px; background:#fff; border:1px solid var(--line);
  color:var(--ink); font-size:.9rem; font-weight:600; text-decoration:none}
.nk-cip b{font-weight:800}
a.nk-cip:hover{border-color:#BFDCFA; color:var(--blue-strong)}
.nk-cip-sleva{background:var(--green-tint); border-color:#C3EAD5; color:var(--green-strong)}
a.nk-cip-sleva:hover{border-color:var(--green); color:var(--green-strong)}
.nk-aktualizace{display:inline-flex; align-items:center; gap:6px; color:var(--ink-soft); font-size:.88rem; font-weight:500; margin-left:4px}

.nk-upozorneni{display:flex; gap:10px; align-items:flex-start; background:var(--blue-tint); color:#0B4F96; border-radius:12px;
  padding:12px 16px; font-size:.92rem; margin-bottom:18px; max-width:760px}
.nk-upozorneni .nk-mini{margin-top:4px}
.nk-upozorneni-varovani{background:#FFF4E8; color:#8A4310}

/* rychlé skoky na kategorie */
.nk-skoky{display:flex; gap:8px; overflow-x:auto; padding:2px 2px 6px; margin:0 -2px 22px; scrollbar-width:thin}
.nk-skoky a{flex:none; display:inline-flex; align-items:center; gap:8px; padding:7px 12px; border-radius:10px; background:var(--surface);
  color:var(--ink-soft); font-weight:600; font-size:.9rem; text-decoration:none; white-space:nowrap}
.nk-skoky a:hover{color:var(--ink); background:#DFE6EE}
.nk-skoky span{font-size:.78rem; font-weight:700; color:var(--ink-soft); background:#fff; border-radius:999px; padding:0 7px; min-width:22px; text-align:center}

/* sekce = bílá karta */
.nk-sekce{background:#fff; border:1px solid var(--line); border-radius:var(--radius); margin-bottom:20px; overflow:hidden; scroll-margin-top:96px}
.nk-sekce-hlava{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 20px; border-bottom:1px solid var(--line)}
.nk-sekce-hlava h2{display:flex; align-items:center; gap:12px; font-size:1.12rem; margin:0}
.nk-sekce-ikona{width:36px; height:36px; border-radius:10px; display:grid; place-items:center; background:var(--blue-tint); color:var(--blue-strong); flex:none}
.nk-sekce-ikona svg{width:19px; height:19px}
.nk-ikona-sleva{background:var(--green); color:#fff}
.nk-ikona-koupeno{background:var(--surface); color:var(--ink-soft)}
.nk-pocet{font-weight:700; font-size:.85rem; color:var(--ink-soft); background:var(--surface); border-radius:999px; padding:2px 10px}
.nk-prazdna{margin:0; padding:16px 20px; color:var(--ink-soft); font-size:.93rem}

.nk-sekce-sleva{border-color:#BFE6D0; box-shadow:0 0 0 3px var(--green-tint)}
.nk-sekce-sleva .nk-sekce-hlava{background:linear-gradient(90deg,var(--green-tint),#fff 70%)}
.nk-sekce-sleva .nk-sekce-hlava h2{color:var(--green-strong); letter-spacing:.02em}
.nk-sekce-koupeno .nk-sekce-hlava h2{color:var(--ink-soft); letter-spacing:.02em}

/* tabulka */
.nk-tabulka{width:100%; border-collapse:collapse; table-layout:fixed}
.nk-tabulka th{text-align:left; font-size:.75rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--ink-soft);
  padding:10px 16px; background:#FAFBFD; border-bottom:1px solid var(--line)}
.nk-tabulka th:nth-child(1){width:84px}
.nk-tabulka th:nth-child(3){width:230px}
.nk-tabulka th:nth-child(4){width:96px; text-align:center}
.nk-tabulka td{padding:16px; vertical-align:top; border-top:1px solid var(--line)}
.nk-tabulka tbody tr:first-child td{border-top:0}

.nk-obr{width:52px; height:52px; border-radius:13px; display:grid; place-items:center; background:var(--blue-tint); color:var(--blue-strong)}
.nk-obr svg{width:26px; height:26px}

.nk-nazev-radek{display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px}
.nk-nazev{font-size:1.04rem; font-weight:700; line-height:1.35}
.nk-popis{margin:4px 0 0; color:var(--ink-soft); font-size:.92rem; line-height:1.5}
.nk-stitky{display:flex; flex-wrap:wrap; gap:6px; margin-top:6px}
.nk-stitek{display:inline-flex; align-items:center; gap:5px; font-size:.78rem; font-weight:700; padding:3px 9px; border-radius:999px; line-height:1.4}
.nk-stitek .nk-mini{width:13px; height:13px}
.nk-stitek-sleva{background:var(--green); color:#fff}
.nk-stitek-ukazka{background:var(--surface); color:var(--ink-soft); font-weight:600}
.nk-odkazy{display:flex; flex-wrap:wrap; gap:6px 16px; margin-top:8px}
.nk-odkazy a{display:inline-flex; align-items:center; gap:4px; font-size:.88rem; font-weight:600; text-decoration:none}
.nk-odkazy a:hover{text-decoration:underline}
.nk-odkazy .nk-mini{width:13px; height:13px}

/* ceny */
.nk-cena{display:flex; flex-direction:column; line-height:1.3}
.nk-cena + .nk-cena{margin-top:10px; padding-top:10px; border-top:1px dashed var(--line)}
.nk-castka{display:inline-flex; flex-wrap:wrap; align-items:center; gap:4px 8px; font-weight:800; font-variant-numeric:tabular-nums}
.nk-cena-hlavni .nk-castka{font-size:1.28rem; letter-spacing:-.01em}
.nk-cena-vedlejsi .nk-castka{font-size:.98rem; font-weight:700; color:#33465A}
.nk-zdroj{font-size:.8rem; color:var(--ink-soft); font-weight:500; margin-top:2px}
.nk-pres{white-space:nowrap}
.nk-ve-sleve .nk-castka{color:var(--green-strong)}
.nk-procento{font-size:.76rem; font-weight:800; color:#fff; background:var(--green); border-radius:999px; padding:2px 8px; letter-spacing:0}
.nk-nedostupne .nk-castka{color:#9A4A12; font-size:1rem; font-weight:700}
.nk-cena-vedlejsi.nk-nedostupne .nk-castka{font-size:.92rem}
.nk-ceka .nk-castka{color:var(--ink-soft); font-size:.95rem; font-weight:600; gap:6px}
.nk-varovani{display:inline-flex; align-items:center; gap:5px; font-size:.76rem; font-weight:600; color:#9A4A12; margin-top:3px}
.nk-varovani .nk-mini{width:13px; height:13px}

/* pole Koupeno – jen zobrazuje stav */
.nk-b-koupeno{text-align:center}
.nk-box{display:inline-grid; place-items:center; width:28px; height:28px; border-radius:8px; border:2px solid #C7D3DF; background:#fff; color:#fff; vertical-align:middle}
.nk-box svg{width:18px; height:18px}
.nk-box-ano{background:var(--green); border-color:var(--green)}
.nk-box-datum{display:block; font-size:.76rem; color:var(--ink-soft); margin-top:4px; font-weight:600}

/* zvýraznění produktu ve slevě (originál v kategorii) */
.nk-radek-sleva td{background:#F3FBF6}
.nk-radek-sleva td:first-child{box-shadow:inset 4px 0 0 var(--green)}
.nk-radek-sleva .nk-obr, .nk-radek-kopie .nk-obr{background:#D9F3E5; color:var(--green-strong)}

/* koupené – přeškrtnuté */
.nk-radek-koupeno .nk-nazev, .nk-radek-koupeno .nk-castka{text-decoration:line-through; text-decoration-thickness:2px; text-decoration-color:rgba(15,30,46,.45)}
.nk-radek-koupeno .nk-nazev, .nk-radek-koupeno .nk-popis, .nk-radek-koupeno .nk-cena{opacity:.6}
.nk-radek-koupeno .nk-obr{background:var(--surface); color:var(--ink-soft)}

.nk-nacitam{color:var(--ink-soft); padding:24px 0}
.nk-chyba{margin-top:8px}
.nk-pravidla{color:var(--ink-soft); font-size:.85rem; max-width:760px; margin:8px 0 0}

/* ─── mobil: řádky jako karty ─── */
@media (max-width:760px){
  .nk-tabulka, .nk-tabulka tbody{display:block}
  .nk-tabulka thead{display:none}
  .nk-tabulka tr{display:grid; grid-template-columns:48px minmax(0,1fr) auto; grid-template-areas:"obr info box" "obr cena cena"; gap:12px 14px; padding:16px}
  .nk-tabulka tbody tr + tr{border-top:1px solid var(--line)}
  .nk-tabulka td{display:block; padding:0; border:0}
  .nk-b-obr{grid-area:obr} .nk-b-info{grid-area:info} .nk-b-cena{grid-area:cena} .nk-b-koupeno{grid-area:box}
  .nk-obr{width:48px; height:48px}
  .nk-radek-sleva{background:#F3FBF6; box-shadow:inset 4px 0 0 var(--green)}
  .nk-radek-sleva td{background:none}
  .nk-radek-sleva td:first-child{box-shadow:none}
  .nk-tabulka td.nk-b-cena{background:var(--page); border-radius:12px; padding:10px 12px}
  .nk-tabulka .nk-radek-sleva td.nk-b-cena{background:#fff}
  .nk-sekce-hlava{padding:14px 16px}
}
@media (max-width:420px){
  .nk-tabulka tr{grid-template-columns:40px minmax(0,1fr) auto; gap:10px 12px; padding:14px}
  .nk-obr{width:40px; height:40px; border-radius:11px}
  .nk-obr svg{width:22px; height:22px}
}
