/* ============================================================
   CAMI.SK
   Verzia: 1.3 (2026-09-01)
   Zdržanlivý štýl: text na papieri, jedna farba, žiadne ozdoby.
   Farby sú definované len v tomto bloku.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap');

:root {
    --paper:       #faf8f4;   /* teplá slonovinová biela namiesto chladnej */
    --paper-sunk:  #f1ede5;   /* jemne odlíšená plocha, používa sa zriedka */
    --ink:         #26241f;   /* hlavný text — teplá tmavohnedá namiesto modrosivej */
    --ink-soft:    #5f5b52;
    --ink-faint:   #928c7f;
    --accent:      #6b5539;   /* odkazy a nič iné */
    --rule:        #e6e1d6;
    --rule-strong: #d2cabb;

    --serif:  'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    --hebrew: 'Frank Ruhl Libre', 'David', 'Times New Roman', serif;

    --measure: 34rem;         /* dĺžka riadku pri bežnom texte */
}

:root[data-theme="dark"] {
    --paper:       #1b1815;   /* teplá tmavohnedá namiesto studenej */
    --paper-sunk:  #23201c;
    --ink:         #e6e1d6;
    --ink-soft:    #b3ab9c;
    --ink-faint:   #857c6c;
    --accent:      #c4a877;
    --rule:        #302b25;
    --rule-strong: #453e34;
}

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

html {
    font-size: 100%;
    scroll-behavior: smooth;
}

body {
    background: var(--paper);
    color: var(--ink);
    font-family: var(--serif);
    font-size: 0.96rem;
    line-height: 1.65;
    letter-spacing: -0.005em;
    min-height: 100vh;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* --- Prístupnosť --- */

.skip-link {
    position: absolute;
    left: -9999px;
    top: 0;
    background: var(--ink);
    color: var(--paper);
    padding: 0.6rem 1.2rem;
    z-index: 100;
}

.skip-link:focus { left: 0; }

:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 2px;
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

/* --- Odkazy ---
   :visited je zámerne rovnaká ako :link — inak by prehliadač
   navštívené odkazy prefarbil a v texte by zmizli. */

a, a:link, a:visited {
    color: var(--accent);
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 0.16em;
    text-decoration-color: var(--rule-strong);
}

a:hover, a:focus-visible { text-decoration-color: currentColor; }

/* Odkaz na verš v čítačke Tanachu */
.ref, .ref:visited {
    font-size: 0.88em;
    white-space: nowrap;
    text-decoration: none;
    border-bottom: 1px solid var(--rule-strong);
}

.ref:hover, .ref:focus-visible { border-bottom-color: currentColor; }

/* --- Rozloženie --- */

.container {
    max-width: 41rem;
    margin: 0 auto;
    padding: 2rem 1.5rem 4rem;
}

.container-wide { max-width: 52rem; }

/* --- Horná lišta --- */

.topbar {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 1rem;
    margin-bottom: 3.5rem;
    font-size: 0.82rem;
}

.back-link,
.theme-toggle {
    color: var(--ink-faint);
    text-decoration: none;
    background: none;
    border: 0;
    padding: 0;
    font: inherit;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}

.theme-toggle { margin-left: auto; }

/* Otáznik na stránku O projekte — zámerne nenápadný, len na úvode. */
.about-link {
    order: 2;
    color: var(--ink-faint);
    text-decoration: none;
    line-height: 1;
    padding: 0 0.15rem;
}

.about-link:hover, .about-link:focus-visible { color: var(--ink); }

.back-link:hover, .back-link:focus-visible,
.theme-toggle:hover, .theme-toggle:focus-visible { color: var(--ink); }

.theme-toggle svg,
.back-link svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* Vidno vždy len ikonu témy, na ktorú sa dá prepnúť. */
.theme-toggle .i-sun { display: none; }
:root[data-theme="dark"] .theme-toggle .i-sun { display: inline; }
:root[data-theme="dark"] .theme-toggle .i-moon { display: none; }

/* --- Hlavička stránky --- */

.page-header { margin-bottom: 3rem; }

.page-header h1 {
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 1.3;
    letter-spacing: -0.015em;
}

.page-header h1 .he {
    display: block;
    font-family: var(--hebrew);
    font-size: 1.3rem;
    font-weight: 400;
    line-height: 1.6;
    color: var(--ink);        /* rovnaký atrament ako slovenčina */
    text-align: left;         /* inak by ho dir="rtl" odhodilo doprava */
    margin-bottom: 0.15rem;
}

.page-header h1 .page-header-sk {
    display: block;
    font-size: 0.95rem;
    font-weight: 400;
    line-height: 1.6;
    color: var(--ink-soft);
    margin-top: 0.5rem;
}

/* --- Úvodná stránka --- */

.hero { margin-bottom: 2.5rem; }

.hero h1 { font-weight: 600; line-height: 1.3; }

.hero h1 .he {
    display: block;
    font-family: var(--hebrew);
    font-size: 1.75rem;
    font-weight: 400;
    line-height: 1.6;
    text-align: left;
}

.hero h1 .tagline {
    display: block;
    font-size: 1.05rem;
    font-weight: 400;
    color: var(--ink-soft);
    margin-top: 0.3rem;
}

.lead {
    max-width: var(--measure);
    margin-top: 1.2rem;
    color: var(--ink-soft);
}

.divider { display: none; }

/* --- Text --- */

.content-section { margin-bottom: 2.5rem; }

.content-section h2,
.group-head {
    font-size: 1.08rem;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: -0.005em;
    margin: 2.8rem 0 0.9rem;
    text-wrap: balance;
}

.content-section h3 {
    font-size: 0.96rem;
    font-weight: 600;
    line-height: 1.45;
    margin: 1.8rem 0 0.5rem;
}

.content-section p,
.group-note {
    max-width: var(--measure);
    margin-bottom: 1.1rem;
}

.content-section strong { font-weight: 600; }
.content-section em { font-style: italic; }

.content-section ul,
.content-section ol {
    max-width: var(--measure);
    margin: 0 0 1.2rem 1.3rem;
}

.content-section li {
    margin-bottom: 0.45rem;
    padding-left: 0.2rem;
}

li::marker { color: var(--ink-faint); }

/* Podnadpis pod nadpisom sekcie */
.lead-in,
.content-section p.lead-in,
.group-note {
    font-style: italic;
    color: var(--ink-soft);
    margin: -0.4rem 0 1.3rem;
}

/* Doplňujúca poznámka drobným písmom */
.note,
.content-section p.note {
    max-width: var(--measure);
    font-size: 0.84rem;
    line-height: 1.6;
    color: var(--ink-faint);
    border-top: 1px solid var(--rule);
    padding-top: 0.9rem;
    margin-top: 1.6rem;
}

/* --- Hebrejčina v texte --- */

.hebrew-inline {
    font-family: var(--hebrew);
    font-size: 1.1em;
    unicode-bidi: isolate;
}

/* --- Citát verša --- */

.verse {
    max-width: var(--measure);
    margin: 1.6rem 0;
    padding-left: 1.1rem;
    border-left: 1px solid var(--rule-strong);
    color: var(--ink-soft);
}

.verse cite {
    display: block;
    margin-top: 0.5rem;
    font-style: normal;
    font-size: 0.8rem;
    letter-spacing: 0.06em;
    color: var(--ink-faint);
}

/* Zvýraznená myšlienka — nie citát, preto bez zvislej čiary */
.callout {
    max-width: var(--measure);
    margin: 1.7rem 0;
    padding: 0.9rem 0;
    border-top: 1px solid var(--rule);
    border-bottom: 1px solid var(--rule);
    color: var(--ink-soft);
}

/* Hebrejský verš na samostatnom riadku */
.verse-hebrew,
.content-section p.verse-hebrew {
    font-family: var(--hebrew);
    font-size: 1.6rem;
    line-height: 1.9;
    direction: rtl;
    text-align: right;
    max-width: var(--measure);
    margin: 1.3rem 0 1.7rem;
}

/* --- Karty → zoznam --- */

.card-grid {
    max-width: var(--measure);
    margin: 1.6rem 0 2rem;
    border-top: 1px solid var(--rule);
}

.card {
    padding: 1.1rem 0;
    border-bottom: 1px solid var(--rule);
}

.card h3 {
    display: inline;
    font-size: 0.96rem;
    font-weight: 600;
    margin: 0;
}

.card .hebrew {
    display: inline;
    font-family: var(--hebrew);
    font-size: 1.1em;
    color: var(--ink-soft);
    margin-left: 0.45rem;
    unicode-bidi: isolate;
}

.card .label {
    display: block;
    font-size: 0.74rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--ink-faint);
    margin-top: 0.2rem;
}

.card .quote {
    display: block;
    font-style: italic;
    color: var(--ink-soft);
    margin: 0.25rem 0 0.35rem;
}

.card p {
    margin: 0.35rem 0 0;
    color: var(--ink-soft);
}

.card .card-list {
    margin-top: 0.6rem;
    font-size: 0.95rem;
    line-height: 1.85;
    color: var(--ink-soft);
}

.card .card-list strong { color: var(--ink); font-weight: 600; }

/* --- Panel s rozborom --- */

.panel {
    max-width: var(--measure);
    margin: 1.8rem 0;
    padding-top: 1.1rem;
    border-top: 1px solid var(--rule);
}

.panel--accent {
    border-top: 0;
    padding: 0.2rem 0 0.2rem 1.1rem;
    border-left: 1px solid var(--rule-strong);
}

.content-section .panel h3 {
    margin: 0 0 0.6rem;
}

.panel h3 small {
    display: block;
    font-size: 0.95rem;
    font-weight: 400;
    font-style: italic;
    color: var(--ink-soft);
    margin-top: 0.1rem;
}

.content-section .panel p:last-child,
.content-section .panel ul:last-child,
.content-section .panel ol:last-child { margin-bottom: 0; }

/* --- Metafory --- */

.metaphor { margin: 1.6rem 0; max-width: var(--measure); }

.maxim {
    font-style: italic;
    font-size: 1.05rem;
    line-height: 1.55;
    color: var(--ink-soft);
    margin: 0 0 1.5rem;
    padding: 0.9rem 0;
    border-top: 1px solid var(--rule);
    border-bottom: 1px solid var(--rule);
    max-width: 100%;
}

.maxim cite {
    display: block;
    margin-top: 0.5rem;
    font-style: normal;
    font-size: 0.8rem;
    letter-spacing: 0.06em;
    color: var(--ink-faint);
}

.metaphor-grid { display: block; }

.metaphor-item {
    margin-bottom: 1.1rem;
    color: var(--ink-soft);
}

.metaphor-item strong {
    display: block;
    color: var(--ink);
    font-weight: 600;
}

/* --- Navigácia na úvode --- */

.site-nav {
    max-width: var(--measure);
    margin: 2rem 0;
    border-top: 1px solid var(--rule);
}

.site-nav a {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 1rem;
    padding: 0.7rem 0;
    border-bottom: 1px solid var(--rule);
    text-decoration: none;
}

.site-nav a:hover .nav-sk,
.site-nav a:focus-visible .nav-sk { text-decoration: underline; }

.nav-sk { color: var(--accent); }

.nav-he {
    font-family: var(--hebrew);
    color: var(--ink-faint);
    unicode-bidi: isolate;
}

/* --- Rozcestník tém --- */

.link-grid {
    max-width: var(--measure);
    margin: 1.8rem 0;
    border-top: 1px solid var(--rule);
}

.link-card {
    display: block;
    padding: 1rem 0;
    border-bottom: 1px solid var(--rule);
    text-decoration: none;
    color: inherit;
}

.link-card h2 {
    display: inline;
    font-size: 0.98rem;
    font-weight: 600;
    color: var(--accent);
}

.link-card:hover h2,
.link-card:focus-visible h2 { text-decoration: underline; }

.link-card .he {
    display: inline;
    font-family: var(--hebrew);
    font-size: 1.1em;
    color: var(--ink-soft);
    margin-left: 0.45rem;
    unicode-bidi: isolate;
}

.link-card p {
    margin: 0.3rem 0 0;
    color: var(--ink-soft);
    font-size: 0.97rem;
}

.link-card .step {
    display: block;
    font-size: 0.72rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--ink-faint);
    margin-top: 0.35rem;
}

/* --- Reťaz pojmov (kabala) --- */

.chain {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.3rem 0.45rem;
    font-size: 0.78rem;
    color: var(--ink-faint);
    margin-bottom: 2.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--rule);
}

.chain a { color: var(--ink-soft); }
.chain .is-here { color: var(--ink); font-weight: 600; }
.chain .sep { color: var(--rule-strong); }

/* --- Modlitby --- */

.prayer-nav {
    max-width: var(--measure);
    margin-bottom: 2rem;
    border-top: 1px solid var(--rule);
}

.nav-group {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.3rem 0.9rem;
    padding: 0.7rem 0;
    border-bottom: 1px solid var(--rule);
    font-size: 0.95rem;
}

.nav-group-label {
    flex: 0 0 8rem;
    font-size: 0.74rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--ink-faint);
}

.prayer-tools { display: none; }

.btn {
    background: none;
    border: 1px solid var(--rule-strong);
    border-radius: 2px;
    color: var(--ink-soft);
    font: inherit;
    font-size: 0.82rem;
    padding: 0.35rem 0.85rem;
    cursor: pointer;
}

.btn:hover, .btn:focus-visible { color: var(--ink); border-color: var(--ink-faint); }

.prayer {
    max-width: var(--measure);
    background: var(--paper-sunk);
    border: 1px solid var(--rule);
    border-radius: 3px;
    padding: 1.6rem 1.6rem 1.9rem;
    margin-bottom: 1.8rem;
    scroll-margin-top: 1.5rem;
}

.prayer-header { margin-bottom: 0.9rem; }

.prayer-header h2,
.prayer-header h3 {
    font-weight: 600;
    font-size: 1.02rem;
    line-height: 1.35;
    margin: 0;
}

.prayer-title { display: inline; }

.prayer-hebrew-title {
    display: inline;
    font-family: var(--hebrew);
    font-size: 1.1em;
    font-weight: 400;
    color: var(--ink-soft);
    margin-left: 0.5rem;
    unicode-bidi: isolate;
}

.prayer-description {
    font-style: italic;
    color: var(--ink-soft);
    font-size: 0.97rem;
    margin-top: 0.2rem;
}

.prayer-number { display: none; }

/* Rozbaľovanie zrušené — text je vždy celý zobrazený. */
.prayer-toggle { display: none; }

.prayer-body,
.prayer-body[hidden] { display: block !important; }

/* Popisky nad časťami modlitby — namiesto rámov okolo nich */
.prayer-slovak::before,
.prayer-hebrew-text::before,
.prayer-transliteration::before {
    display: block;
    font-size: 0.72rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--ink-faint);
    margin-bottom: 0.5rem;
    direction: ltr;
    text-align: left;
}

.prayer-slovak::before { content: 'Preklad'; }
.prayer-hebrew-text::before { content: 'Hebrejsky'; }
.prayer-transliteration::before { content: 'Slovo za slovom'; }

.prayer-slovak {
    margin-bottom: 1.8rem;
    line-height: 1.9;
}

.prayer-hebrew-text {
    font-family: var(--hebrew);
    font-size: 1.5rem;
    line-height: 2.15;
    direction: rtl;
    text-align: right;
    margin-bottom: 1.8rem;
}

.prayer-transliteration {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem 1.5rem;
    padding-top: 1.2rem;
    border-top: 1px solid var(--rule);
}

.prayer-transliteration::before { flex: 0 0 100%; margin-bottom: 0; }

.word-pair {
    display: inline-flex;
    flex-direction: column;
    align-items: center;   /* dvojica sa tak číta ako jeden celok */
}

.word-pair .hebrew-word {
    font-family: var(--hebrew);
    font-size: 1.2rem;
    line-height: 1.75;
    color: var(--ink-faint);
}

.word-pair .translit {
    font-size: 0.8rem;
    color: var(--ink);
}

/* --- Sviatky --- */

.facts {
    max-width: var(--measure);
    margin: 1.8rem 0 2.2rem;
    border-top: 1px solid var(--rule);
}

.facts > div {
    display: flex;
    gap: 1rem;
    padding: 0.55rem 0;
    border-bottom: 1px solid var(--rule);
}

.facts dt {
    flex: 0 0 8rem;
    font-size: 0.78rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--ink-faint);
    padding-top: 0.12em;
}

.facts dd { margin: 0; }

.year-wrap { overflow-x: auto; }

.year {
    width: 100%;
    border-collapse: collapse;
    margin: 1.4rem 0;
    font-size: 0.95rem;
}

.year caption {
    caption-side: bottom;
    padding-top: 0.9rem;
    font-size: 0.85rem;
    color: var(--ink-faint);
    text-align: left;
}

.year th, .year td {
    text-align: left;
    padding: 0.55rem 0.9rem 0.55rem 0;
    border-bottom: 1px solid var(--rule);
    vertical-align: top;
}

.year th {
    font-size: 0.74rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--ink-faint);
}

.year td:first-child { white-space: nowrap; font-weight: 600; }
.year td:last-child { color: var(--ink-soft); }
.year .quiet td { color: var(--ink-faint); }

.section-head {
    display: flex;
    align-items: baseline;
    gap: 0.7rem;
    margin: 2.6rem 0 1.1rem;
}

.section-head h2 { margin: 0; font-size: 1.02rem; white-space: nowrap; }

.section-head .he {
    font-family: var(--hebrew);
    font-size: 1.05rem;
    color: var(--ink-faint);
    white-space: nowrap;
}

.section-head::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--rule);
}

/* --- Slovníček --- */

.gloss-tools {
    max-width: var(--measure);
    margin: 1.8rem 0 1.5rem;
}

.gloss-search {
    display: block;
    width: 100%;
    padding: 0.5rem 0;
    background: none;
    border: 0;
    border-bottom: 1px solid var(--rule-strong);
    color: var(--ink);
    font: inherit;
    font-size: 1.05rem;
}

.gloss-search::placeholder { color: var(--ink-faint); }
.gloss-search:focus { outline: none; border-bottom-color: var(--accent); }

.gloss-cats {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem 1rem;
    margin-top: 0.9rem;
}

.gloss-cat {
    background: none;
    border: 0;
    padding: 0;
    font: inherit;
    font-size: 0.85rem;
    color: var(--ink-faint);
    cursor: pointer;
}

.gloss-cat:hover { color: var(--ink); }

.gloss-cat.is-on {
    color: var(--ink);
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 0.2em;
}

.gloss-count {
    font-size: 0.78rem;
    letter-spacing: 0.06em;
    color: var(--ink-faint);
    margin-top: 0.9rem;
    min-height: 1.2em;
}

.glossary { max-width: var(--measure); border-top: 1px solid var(--rule); }

.gloss-item {
    padding: 0.9rem 0;
    border-bottom: 1px solid var(--rule);
}

.gloss-item[hidden] { display: none; }

.gloss-item dt {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.3rem 0.7rem;
    margin-bottom: 0.2rem;
}

.gloss-he {
    font-family: var(--hebrew);
    font-size: 1.2rem;
    line-height: 1.75;
    unicode-bidi: isolate;
}

.gloss-tr { font-weight: 600; }

.gloss-sk {
    font-size: 0.78rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--ink-faint);
}

.gloss-item dd {
    margin: 0;
    color: var(--ink-soft);
    font-size: 0.97rem;
}

.gloss-item dd a {
    font-size: 0.8rem;
    letter-spacing: 0.04em;
    white-space: nowrap;
    margin-left: 0.4rem;
}

.gloss-empty {
    padding: 2rem 0;
    font-style: italic;
    color: var(--ink-faint);
}

.gloss-empty[hidden] { display: none; }

/* --- Videá --- */

.video-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1.4rem 1.2rem;
}

.video-card {
    display: block;
    width: 100%;
    padding: 0;
    text-align: left;
    background: none;
    border: 0;
    color: inherit;
    font: inherit;
    cursor: pointer;
}

.video-thumb {
    display: block;
    position: relative;
    aspect-ratio: 16 / 9;
    background: var(--paper-sunk);
    border: 1px solid var(--rule);
}

.video-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }

.play-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgba(20, 22, 25, 0.75);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
}

.video-card:hover .play-icon,
.video-card:focus-visible .play-icon { opacity: 1; }

.play-icon svg { width: 12px; height: 12px; margin-left: 2px; fill: #fff; }

.video-title {
    display: block;
    margin-top: 0.5rem;
    font-size: 0.95rem;
    line-height: 1.4;
    color: var(--ink-soft);
}

.video-card:hover .video-title { color: var(--ink); }

.modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
    background: rgba(10, 12, 14, 0.92);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
}

.modal[hidden] { display: none; }

.modal-inner { position: relative; width: 100%; max-width: 900px; }

.modal-box { overflow: hidden; background: #000; }

.modal-ratio { position: relative; padding-bottom: 56.25%; height: 0; }

.modal-ratio iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

.modal-close {
    position: absolute;
    top: -2.4rem;
    right: 0;
    background: none;
    border: 0;
    color: #d5d9dc;
    font: inherit;
    font-size: 0.85rem;
    cursor: pointer;
    padding: 0.3rem;
}

.modal-close:hover, .modal-close:focus-visible { color: #fff; text-decoration: underline; }

@media (max-width: 640px) {
    .modal-close { top: auto; bottom: -2.4rem; right: 50%; transform: translateX(50%); }
}

/* --- Pätička --- */

.footer {
    margin-top: 4.5rem;
    text-align: center;
    color: var(--rule-strong);
}

.footer svg { display: inline-block; }

/* --- Stránka vysádzaná maličkým písmom (O projekte) --- */

.fine-print .container {
    font-size: 0.8rem;
    line-height: 1.65;
    --measure: 27rem;   /* pri menšom písme kratší riadok, nech sa dá čítať */
}
.fine-print .page-header { margin-bottom: 2rem; }
.fine-print .page-header h1 { font-size: 1.1rem; }
.fine-print .page-header h1 .he { font-size: 1rem; }
.fine-print .page-header h1 .page-header-sk { font-size: 0.85rem; margin-top: 0.3rem; }
.fine-print .content-section { margin-bottom: 1.6rem; }
.fine-print .content-section h2 { font-size: 0.9rem; margin: 1.8rem 0 0.5rem; }
.fine-print .note, .fine-print .content-section p.note { font-size: 0.78rem; }

/* --- Responzívne --- */

@media (max-width: 34rem) {
    html { font-size: 106%; }
    .container { padding: 1.5rem 1.15rem 3rem; }
    .facts > div { display: block; padding: 0.7rem 0; }
    .facts dt { padding-top: 0; margin-bottom: 0.1rem; }
    .nav-group-label { flex-basis: 100%; }
    .prayer-hebrew-text { font-size: 1.35rem; line-height: 2.05; }
    .hero h1 .he { font-size: 1.7rem; }
    .video-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        transition-duration: 0.01ms !important;
    }
}

/* --- Tlač --- */

@media print {
    :root {
        --paper: #fff;
        --paper-sunk: #fff;
        --ink: #000;
        --ink-soft: #222;
        --ink-faint: #555;
        --accent: #000;
        --rule: #ccc;
        --rule-strong: #999;
    }
    body { background: #fff; }
    .skip-link, .topbar, .prayer-nav, .prayer-tools, .prayer-toggle,
    .chain, .modal, .video-grid, .site-nav, .gloss-tools { display: none !important; }
    .prayer-body[hidden] { display: block !important; }
    .prayer, .panel, .metaphor-item, .card { break-inside: avoid; }
    a { text-decoration: underline; }
    .container { max-width: none; }
}