/* ==========================================================================
   GeoCAD Mesh — štýl webovej prezentácie
   --------------------------------------------------------------------------
   FAROBNÝ ZÁKLAD NIE JE VYMYSLENÝ: #0E7C74 je doslova farba doštičky z ikony
   programu (res/brand/app_icon.svg) a #D9A357 je odtieň, ktorým samotný
   program píše „skúšobná verzia, ostáva N dní" (Application_Dialogs.cpp).
   Web tak vyzerá ako produkt, nie ako leták o produkte.

   MOTÍV: svetlý je základ (`:root`), tmavý sa dopĺňa len prepisom premenných.
   Nikdy nedávaj farbu LEN do @media bloku — v prehliadači bez preferencie by
   taká farba nikdy nesadla a text by ostal na nesprávnom podklade.
   ========================================================================== */

:root {
    /* ground + text */
    --papier:        #F2F4F3;   /* chladný papier, nie krémový */
    --papier-2:      #FFFFFF;
    --papier-3:      #E7EBE9;
    --text:          #131A1C;
    --text-2:        #4C5B5C;   /* neutrál s ťahom do tyrkysu, nie čistá šeď */
    --text-3:        #778688;

    /* značka */
    --znacka:        #0E7C74;   /* doštička ikony */
    --znacka-tm:     #0A5F59;
    --znacka-sv:     #2FB3A6;
    --jantar:        #B8823A;   /* odpočet skúšky v programe */
    --jantar-sv:     #D9A357;

    /* čiary a plochy */
    --linka:         #D2D9D7;
    --linka-2:       #BCC6C4;
    --plocha:        #FFFFFF;
    --plocha-2:      #EAEEEC;
    --tien:          0 1px 2px rgba(19, 26, 28, .06), 0 8px 24px rgba(19, 26, 28, .05);

    /* tmavý pruh (hero, päta) — rovnaký v oboch motívoch */
    --atrament:      #0C1416;
    --atrament-2:    #121D1F;
    --atrament-text: #E8EDEC;
    --atrament-t2:   #8CA0A0;
    --atrament-linka:#223234;

    /* typografia */
    --font-nadpis: "Archivo", "Segoe UI", system-ui, sans-serif;
    --font-text:   "Source Sans 3", "Segoe UI", system-ui, sans-serif;
    --font-data:   "IBM Plex Mono", "Cascadia Mono", Consolas, monospace;

    /* rozmery */
    --sirka:      1140px;
    --sirka-text: 68ch;
    --r:          4px;          /* technický, nie zaoblený */
    --r-2:        8px;
}

@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) {
        --papier:   #0C1416;
        --papier-2: #101A1C;
        --papier-3: #162224;
        --text:     #E8EDEC;
        --text-2:   #9FB0B0;
        --text-3:   #748586;
        --znacka:   #2FB3A6;
        --znacka-tm:#1D8C83;
        --znacka-sv:#57CEC1;
        --jantar:   #D9A357;
        --jantar-sv:#E8BC7C;
        --linka:    #223234;
        --linka-2:  #2E4245;
        --plocha:   #101A1C;
        --plocha-2: #162224;
        --tien:     0 1px 2px rgba(0, 0, 0, .35), 0 8px 24px rgba(0, 0, 0, .28);
    }
}

:root[data-theme="dark"] {
    --papier:   #0C1416;
    --papier-2: #101A1C;
    --papier-3: #162224;
    --text:     #E8EDEC;
    --text-2:   #9FB0B0;
    --text-3:   #748586;
    --znacka:   #2FB3A6;
    --znacka-tm:#1D8C83;
    --znacka-sv:#57CEC1;
    --jantar:   #D9A357;
    --jantar-sv:#E8BC7C;
    --linka:    #223234;
    --linka-2:  #2E4245;
    --plocha:   #101A1C;
    --plocha-2: #162224;
    --tien:     0 1px 2px rgba(0, 0, 0, .35), 0 8px 24px rgba(0, 0, 0, .28);
}

/* ── základ ─────────────────────────────────────────────────────────────── */

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

body {
    margin: 0;
    background: var(--papier);              /* povinné: bez toho presvitá podklad hostiteľa */
    color: var(--text);
    font-family: var(--font-text);
    font-size: 17px;
    line-height: 1.65;
    -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4 {
    font-family: var(--font-nadpis);
    font-variation-settings: "wdth" 100;
    line-height: 1.12;
    text-wrap: balance;
    margin: 0;
    letter-spacing: -.015em;
}

h1 { font-size: clamp(1.9rem, 5.2vw, 3.5rem); font-weight: 800; }
h2 { font-size: clamp(1.6rem, 3.4vw, 2.3rem); font-weight: 700; }
h3 { font-size: 1.16rem; font-weight: 700; letter-spacing: -.005em; }

p { margin: 0 0 1em; }
a { color: var(--znacka); text-decoration-thickness: 1px; text-underline-offset: 2px; }
a:hover { color: var(--znacka-tm); }
img, svg { max-width: 100%; height: auto; }

:focus-visible {
    outline: 2px solid var(--znacka-sv);
    outline-offset: 3px;
    border-radius: 2px;
}

.obal { width: 100%; max-width: var(--sirka); margin-inline: auto; padding-inline: 24px; }
.uzky { max-width: var(--sirka-text); }
.skryte {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* Preskočiť na obsah — prvý cieľ tabulátora. */
.preskoc {
    position: absolute; left: 12px; top: -60px; z-index: 100;
    background: var(--znacka); color: #fff; padding: 10px 16px;
    border-radius: var(--r); font-weight: 600; transition: top .15s;
}
.preskoc:focus { top: 12px; color: #fff; }

/* ── mono „štítok" (eyebrow) ────────────────────────────────────────────── */

.stitok {
    font-family: var(--font-data);
    font-size: .74rem;
    font-weight: 500;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--text-3);
    display: block;
    margin-bottom: .9rem;
}
.stitok--svetly { color: var(--atrament-t2); }
.stitok--znacka { color: var(--znacka); }

/* ── hlavička ───────────────────────────────────────────────────────────── */

.hlavicka {
    position: sticky; top: 0; z-index: 50;
    background: color-mix(in srgb, var(--papier) 88%, transparent);
    backdrop-filter: saturate(1.6) blur(10px);
    border-bottom: 1px solid var(--linka);
}
.hlavicka__obal {
    display: flex; align-items: center; gap: 28px;
    height: 66px;
}
.znak { display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--text); flex: none; }
.znak img { width: 30px; height: 30px; display: block; }
.znak b {
    font-family: var(--font-nadpis); font-weight: 700; font-size: 1.06rem;
    letter-spacing: -.01em;
}
.znak sup { font-size: .55em; color: var(--text-3); font-weight: 500; }

.menu { display: flex; gap: 22px; margin-left: auto; align-items: center; }
.menu a {
    color: var(--text-2); text-decoration: none; font-size: .95rem; font-weight: 600;
    padding: 6px 0; border-bottom: 2px solid transparent;
}
.menu a:hover { color: var(--text); border-bottom-color: var(--znacka); }
.menu a[aria-current="page"] { color: var(--text); border-bottom-color: var(--znacka); }
.hlavicka__cta { flex: none; }

@media (max-width: 860px) {
    .hlavicka__obal { gap: 18px; }
    .menu { gap: 16px; }
    .menu a { font-size: .88rem; }
}

/* Pod 700 px sa hlavička zalomí na dva riadky: logo + tlačidlo, pod tým odkazy.
   Zámerne sa nič neschováva — „Novinky" a „Pomoc" musia byť dostupné aj na
   telefóne, inak sa k nim zákazník nedostane inak než cez pätu. */
@media (max-width: 700px) {
    .hlavicka__obal {
        flex-wrap: wrap; height: auto; gap: 8px 16px; padding-block: 10px;
    }
    .hlavicka__cta { margin-left: auto; }
    .menu {
        order: 3; width: 100%; margin-left: 0; justify-content: space-between;
        gap: 8px; border-top: 1px solid var(--linka); padding-top: 7px;
    }
    .menu a { font-size: .85rem; padding: 2px 0; }
}

/* Pod 380 px sa názov vedľa značky už nezmestí do riadka s tlačidlom a hlavička
   by narástla na tri riadky. Ostáva samotná ikona — meno programu je aj tak
   hneď pod ňou v nadpise. */
@media (max-width: 380px) {
    .znak b { display: none; }
}

/* ── tlačidlá ───────────────────────────────────────────────────────────── */

.tl {
    display: inline-flex; align-items: center; justify-content: center; gap: 10px;
    font-family: var(--font-text); font-size: 1rem; font-weight: 600;
    padding: 13px 24px; border-radius: var(--r); border: 1px solid transparent;
    text-decoration: none; cursor: pointer; transition: background .15s, border-color .15s, color .15s;
    line-height: 1.2;
}
.tl--hlavne { background: var(--znacka); color: #fff; border-color: var(--znacka); }
.tl--hlavne:hover { background: var(--znacka-tm); border-color: var(--znacka-tm); color: #fff; }
.tl--druhe { background: transparent; color: var(--text); border-color: var(--linka-2); }
.tl--druhe:hover { border-color: var(--text-2); color: var(--text); background: var(--plocha-2); }
.tl--naatramente { background: transparent; color: var(--atrament-text); border-color: #35494B; }
.tl--naatramente:hover { background: #17272A; border-color: #4A6062; color: var(--atrament-text); }
.tl--maly { padding: 9px 16px; font-size: .92rem; }

/* ── hero ───────────────────────────────────────────────────────────────── */

.hero {
    background: var(--atrament);
    color: var(--atrament-text);
    border-bottom: 1px solid var(--atrament-linka);
    position: relative;
    overflow: hidden;
}
/* Rasterové pozadie: rám výkresu, nie dekorácia. 10 mm delenie. */
.hero::before {
    content: ""; position: absolute; inset: 0; pointer-events: none;
    background-image:
        linear-gradient(to right, rgba(47, 179, 166, .085) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(47, 179, 166, .085) 1px, transparent 1px);
    background-size: 44px 44px;
    mask-image: radial-gradient(ellipse 85% 70% at 50% 32%, #000 25%, transparent 78%);
}
.hero__obal { position: relative; padding: 76px 24px 0; }
.hero__mriezka { display: grid; grid-template-columns: minmax(0, 1fr); gap: 44px; align-items: start; }
@media (min-width: 980px) {
    .hero__mriezka { grid-template-columns: minmax(0, 1.02fr) minmax(0, 1fr); gap: 56px; align-items: center; }
    .hero__obal { padding-top: 88px; }
}

.hero h1 { color: #fff; margin-bottom: 20px; }
.hero__perex {
    font-size: 1.14rem; color: #B9C9C8; max-width: 52ch; margin-bottom: 30px;
}
.hero__akcie { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.hero__poznamka {
    font-family: var(--font-data); font-size: .8rem; color: var(--atrament-t2);
    margin-top: 16px; letter-spacing: .01em;
}
.hero__fakty {
    display: flex; flex-wrap: wrap; gap: 0 32px;
    margin-top: 40px; padding-top: 24px; border-top: 1px solid var(--atrament-linka);
    list-style: none; padding-left: 0;
}
.hero__fakty li { padding: 6px 0; }
.hero__fakty b {
    display: block; font-family: var(--font-nadpis); font-size: 1.02rem; color: #fff; font-weight: 700;
}
.hero__fakty span { font-size: .87rem; color: var(--atrament-t2); }

/* Rám ako na výkrese: tenká linka + rohové značky. */
.ram {
    position: relative;
    border: 1px solid var(--atrament-linka);
    border-radius: var(--r-2);
    background: var(--atrament-2);
    padding: 10px;
}
.ram::before, .ram::after {
    content: ""; position: absolute; width: 14px; height: 14px; pointer-events: none;
    border-color: var(--znacka-sv); opacity: .75;
}
.ram::before { top: -1px; left: -1px; border-top: 2px solid; border-left: 2px solid; border-top-left-radius: var(--r-2); }
.ram::after { bottom: -1px; right: -1px; border-bottom: 2px solid; border-right: 2px solid; border-bottom-right-radius: var(--r-2); }
.ram__popis {
    font-family: var(--font-data); font-size: .72rem; color: var(--atrament-t2);
    display: flex; justify-content: space-between; gap: 12px;
    padding: 6px 4px 2px; letter-spacing: .06em; text-transform: uppercase;
}
.ram picture { display: block; }
.ram img, .ram .zastupny { display: block; width: 100%; height: auto; border-radius: var(--r); }

/* Zástupné miesto pre obrázok — vyzerá zámerne, nie ako chyba. */
.zastupny {
    aspect-ratio: 16 / 10;
    background:
        repeating-linear-gradient(-45deg, rgba(47,179,166,.06) 0 10px, transparent 10px 20px),
        var(--atrament);
    border: 1px dashed #2C4043;
    display: grid; place-content: center; text-align: center; gap: 6px; padding: 24px;
}
.zastupny b { font-family: var(--font-data); font-size: .8rem; color: var(--znacka-sv); letter-spacing: .08em; }
.zastupny span { font-size: .82rem; color: var(--atrament-t2); }

/* ── sekcie ─────────────────────────────────────────────────────────────── */

.sekcia { padding: 84px 0; border-bottom: 1px solid var(--linka); }
.sekcia--bez { border-bottom: 0; }
.sekcia--plocha { background: var(--papier-3); }
.sekcia__hlava { margin-bottom: 44px; max-width: 62ch; }
.sekcia__hlava p { color: var(--text-2); font-size: 1.06rem; margin-top: 14px; margin-bottom: 0; }

@media (max-width: 620px) { .sekcia { padding: 60px 0; } }

/* ── karty vlastností ───────────────────────────────────────────────────── */

.karty { display: grid; gap: 20px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 272px), 1fr)); }
.karta {
    background: var(--plocha); border: 1px solid var(--linka); border-radius: var(--r-2);
    padding: 26px 24px;
}
.karta h3 { margin-bottom: 10px; }
.karta p { color: var(--text-2); margin-bottom: 0; font-size: .97rem; }
.karta__ikona {
    width: 34px; height: 34px; margin-bottom: 16px; color: var(--znacka);
    display: block;
}

/* ── formáty ────────────────────────────────────────────────────────────── */

.formaty { display: grid; gap: 18px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); }
.formaty__blok {
    border: 1px solid var(--linka); border-radius: var(--r-2); padding: 22px 22px 18px;
    background: var(--plocha);
}
.formaty__blok h3 { font-size: 1rem; margin-bottom: 14px; }
.formaty__blok ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 7px; }
.formaty__blok li {
    font-family: var(--font-data); font-size: .78rem; font-weight: 500;
    background: var(--plocha-2); border: 1px solid var(--linka);
    color: var(--text-2); padding: 4px 9px; border-radius: 3px;
    letter-spacing: .02em;
}
.formaty__pozn { color: var(--text-2); font-size: .95rem; margin-top: 26px; margin-bottom: 0; }

/* ── moduly ─────────────────────────────────────────────────────────────── */

.moduly { display: grid; gap: 20px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); }
.modul {
    border: 1px solid var(--linka); border-radius: var(--r-2); background: var(--plocha);
    padding: 26px 24px; display: flex; flex-direction: column; gap: 12px;
}
.modul--pripravujeme { background: transparent; border-style: dashed; }
.modul__hlava { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.modul h3 { margin: 0; }
.modul p { color: var(--text-2); margin: 0; font-size: .97rem; flex: 1; }
.modul ul { margin: 0; padding-left: 1.15em; color: var(--text-2); font-size: .94rem; }
.modul li { margin-bottom: 5px; }

.znacka-stav {
    font-family: var(--font-data); font-size: .68rem; font-weight: 500;
    letter-spacing: .08em; text-transform: uppercase;
    padding: 3px 8px; border-radius: 3px; white-space: nowrap; flex: none;
}
.znacka-stav--platene { background: color-mix(in srgb, var(--znacka) 14%, transparent); color: var(--znacka-tm); border: 1px solid color-mix(in srgb, var(--znacka) 32%, transparent); }
.znacka-stav--chystame { background: color-mix(in srgb, var(--jantar) 14%, transparent); color: var(--jantar); border: 1px solid color-mix(in srgb, var(--jantar) 32%, transparent); }
.znacka-stav--zaklad { background: var(--plocha-2); color: var(--text-2); border: 1px solid var(--linka-2); }

:root[data-theme="dark"] .znacka-stav--platene,
:root:not([data-theme="light"]) .znacka-stav--platene { color: var(--znacka-sv); }

/* ── kroky (skutočná postupnosť, preto číslované) ───────────────────────── */

.kroky { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; counter-reset: k; }
.krok {
    display: grid; grid-template-columns: 46px 1fr; gap: 20px; align-items: start;
    padding: 22px 0; border-top: 1px solid var(--linka);
}
.kroky .krok:last-child { border-bottom: 1px solid var(--linka); }
.krok::before {
    counter-increment: k; content: counter(k, decimal-leading-zero);
    font-family: var(--font-data); font-size: .95rem; font-weight: 500;
    color: var(--znacka); padding-top: 2px;
}
.krok h3 { margin-bottom: 6px; }
.krok p { color: var(--text-2); margin-bottom: 0; font-size: .97rem; max-width: 62ch; }

/* ── novinky ────────────────────────────────────────────────────────────── */

.vydanie { border-top: 1px solid var(--linka); padding: 34px 0; }
.vydanie:first-of-type { border-top: 0; padding-top: 0; }
.vydanie__hlava { display: flex; align-items: baseline; gap: 14px; flex-wrap: wrap; margin-bottom: 22px; }
.vydanie__cislo {
    font-family: var(--font-nadpis); font-size: 1.5rem; font-weight: 700; letter-spacing: -.01em;
    margin: 0;
}
.vydanie__najnovsie {
    font-family: var(--font-data); font-size: .68rem; letter-spacing: .09em; text-transform: uppercase;
    background: color-mix(in srgb, var(--znacka) 14%, transparent); color: var(--znacka-tm);
    border: 1px solid color-mix(in srgb, var(--znacka) 32%, transparent);
    padding: 3px 8px; border-radius: 3px;
}
:root[data-theme="dark"] .vydanie__najnovsie,
:root:not([data-theme="light"]) .vydanie__najnovsie { color: var(--znacka-sv); }

.vydanie__cast { margin-bottom: 26px; }
.vydanie__cast:last-child { margin-bottom: 0; }
.vydanie__cast .nadpis-casti {
    font-family: var(--font-data); font-size: .76rem; font-weight: 500;
    letter-spacing: .11em; text-transform: uppercase; color: var(--text-3);
    margin-bottom: 12px;
}
.vydanie__cast ul { margin: 0; padding-left: 1.2em; }
.vydanie__cast li { margin-bottom: 10px; color: var(--text-2); max-width: 76ch; }
.vydanie__cast li::marker { color: var(--znacka); }

/* ── stiahnutie ─────────────────────────────────────────────────────────── */

.stiahnut {
    background: var(--atrament); color: var(--atrament-text);
    border-radius: var(--r-2); padding: 40px;
    display: grid; gap: 30px; align-items: center;
}
@media (min-width: 900px) { .stiahnut { grid-template-columns: 1.1fr .9fr; padding: 48px; } }
.stiahnut h2 { color: #fff; margin-bottom: 14px; }
.stiahnut p { color: #B9C9C8; margin-bottom: 0; }
.stiahnut__box {
    border: 1px solid var(--atrament-linka); border-radius: var(--r); padding: 24px;
    background: var(--atrament-2);
}
.stiahnut__meta {
    font-family: var(--font-data); font-size: .8rem; color: var(--atrament-t2);
    display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 16px 0 0;
    list-style: none; padding: 0;
}
.stiahnut__meta li::before { content: "· "; color: #3E5457; }
.stiahnut__meta li:first-child::before { content: ""; }

/* Upozornenie — SmartScreen. Nezamlčať, vysvetliť. */
.vystraha {
    border: 1px solid color-mix(in srgb, var(--jantar) 40%, transparent);
    background: color-mix(in srgb, var(--jantar) 9%, transparent);
    border-radius: var(--r); padding: 18px 20px; margin-top: 24px;
}
.vystraha p { margin-bottom: 0; color: var(--text-2); font-size: .95rem; }
.vystraha strong { color: var(--text); }
.vystraha--tmava { border-color: #4A3C22; background: rgba(217, 163, 87, .09); }
.vystraha--tmava p { color: #C7B394; }
.vystraha--tmava strong { color: var(--jantar-sv); }

/* ── kontakt ────────────────────────────────────────────────────────────── */

.kontakt { display: grid; gap: 34px; }
@media (min-width: 900px) { .kontakt { grid-template-columns: 1fr 1fr; gap: 56px; } }
.kontakt__polozka { border-top: 1px solid var(--linka); padding: 18px 0; }
.kontakt__polozka dt {
    font-family: var(--font-data); font-size: .72rem; letter-spacing: .1em;
    text-transform: uppercase; color: var(--text-3); margin-bottom: 5px;
}
.kontakt__polozka dd { margin: 0; font-size: 1.06rem; }
.kontakt dl { margin: 0; }

/* ── otázky (FAQ) ───────────────────────────────────────────────────────── */

.otazka { border-top: 1px solid var(--linka); }
.otazka:last-of-type { border-bottom: 1px solid var(--linka); }
.otazka summary {
    cursor: pointer; padding: 20px 34px 20px 0; position: relative;
    font-weight: 600; font-size: 1.04rem; list-style: none;
}
.otazka summary::-webkit-details-marker { display: none; }
.otazka summary::after {
    content: "+"; position: absolute; right: 4px; top: 50%; transform: translateY(-50%);
    font-family: var(--font-data); font-size: 1.3rem; color: var(--znacka); font-weight: 400;
}
.otazka[open] summary::after { content: "−"; }
.otazka__telo { padding: 0 0 22px; color: var(--text-2); max-width: 74ch; }
.otazka__telo > :last-child { margin-bottom: 0; }

/* ── päta ───────────────────────────────────────────────────────────────── */

.pata {
    background: var(--atrament); color: var(--atrament-t2);
    padding: 56px 0 34px; font-size: .93rem;
}
.pata__mriezka { display: grid; gap: 32px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr)); }
.pata h4 {
    font-family: var(--font-data); font-size: .72rem; font-weight: 500; letter-spacing: .1em;
    text-transform: uppercase; color: #6E8385; margin-bottom: 14px;
}
.pata ul { list-style: none; margin: 0; padding: 0; }
.pata li { margin-bottom: 8px; }
.pata a { color: var(--atrament-text); text-decoration: none; }
.pata a:hover { color: var(--znacka-sv); text-decoration: underline; }
.pata__spodok {
    margin-top: 40px; padding-top: 22px; border-top: 1px solid var(--atrament-linka);
    display: flex; flex-wrap: wrap; gap: 10px 24px; justify-content: space-between;
    font-family: var(--font-data); font-size: .78rem; color: #6E8385;
}

/* ── obsah stránok Pomoc/Novinky ────────────────────────────────────────── */

.dok { padding: 56px 0 84px; }
.dok__hlava { margin-bottom: 46px; }
.dok__hlava p { color: var(--text-2); font-size: 1.08rem; margin-top: 14px; max-width: 66ch; }
.dok h2 { margin-top: 52px; margin-bottom: 18px; }
.dok h2:first-of-type { margin-top: 0; }
.dok h3 { margin-top: 28px; margin-bottom: 8px; }
.dok p, .dok li { color: var(--text-2); }
.dok p { max-width: var(--sirka-text); }
.dok ul, .dok ol { max-width: var(--sirka-text); padding-left: 1.25em; }
.dok li { margin-bottom: 8px; }
.dok strong { color: var(--text); }
.dok code {
    font-family: var(--font-data); font-size: .88em; background: var(--plocha-2);
    border: 1px solid var(--linka); border-radius: 3px; padding: 1px 5px; color: var(--text);
}

/* Tabuľka požiadaviek — čísla v stĺpci sa musia zarovnať. */
.tabulka { width: 100%; border-collapse: collapse; margin: 20px 0; font-size: .97rem; }
.tabulka th, .tabulka td {
    text-align: left; padding: 11px 14px; border-bottom: 1px solid var(--linka);
    vertical-align: top;
}
.tabulka th {
    font-family: var(--font-data); font-size: .74rem; letter-spacing: .08em;
    text-transform: uppercase; color: var(--text-3); font-weight: 500;
}
.tabulka td { color: var(--text-2); }
.tabulka td:first-child { color: var(--text); font-weight: 600; width: 34%; }
.tabulka--cisla td { font-variant-numeric: tabular-nums; }
.tabulka-obal { overflow-x: auto; }

/* Obsah po stranách (na stránke noviniek). */
.obsah-vydani {
    display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 44px;
    padding-bottom: 28px; border-bottom: 1px solid var(--linka);
}
.obsah-vydani a {
    font-family: var(--font-data); font-size: .82rem; text-decoration: none;
    border: 1px solid var(--linka); border-radius: 3px; padding: 4px 10px;
    color: var(--text-2); background: var(--plocha);
}
.obsah-vydani a:hover { border-color: var(--znacka); color: var(--znacka); }
