/* =========================================================
   Jestřebí bouda – vlastní styly
   Tailwind CSS je načítán přes CDN, zde jsou doplňky.
   ========================================================= */

/* Větší základní písmo pro lepší čitelnost */
html {
    font-size: 16px;
}

/* Body background – jemně teplejší než gray-50 */
body {
    background: #f6f7f5;
}

/* Eyebrow – malý letterspaced popisek nad nadpisem */
.eyebrow {
    font-family: 'Bebas Neue', sans-serif;
    letter-spacing: 0.18em;
    font-size: 0.75rem;
    text-transform: uppercase;
    color: #0a7075;
}

/* ── Typografie – Source Sans 3 (tělo) + Bebas Neue (nadpisy) ── */

/* Source Sans 3 jako základ pro všechny prvky */
html, body,
button, input, select, textarea,
a, span, p, li, td, th, label, div {
    font-family: 'Source Sans 3', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

body {
    font-weight: 400;
    letter-spacing: 0.01em;
}

/* Bebas Neue pouze pro nadpisy */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Bebas Neue', sans-serif !important;
    font-weight: 400 !important;
    letter-spacing: 0.05em;
    line-height: 1.15;
}

/* Smooth scrolling */
html {
    scroll-behavior: smooth;
}

/* Výchozí focus outline pro přístupnost */
:focus-visible {
    outline: 2px solid #40916c;
    outline-offset: 2px;
}

/* Přizpůsobení Tailwind prose (obsah článků) */
.prose h2 { color: #2d6a4f; margin-top: 1.5em; }
.prose h3 { color: #40916c; }
.prose a  { color: #2d6a4f; }
.prose a:hover { color: #1e4d37; }

/* Animace fade-in pro flash zprávy */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(-4px); }
    to   { opacity: 1; transform: translateY(0); }
}

[role="alert"] {
    animation: fadeIn 0.25s ease-out;
}

/* Sidebar link – zvýraznění aktivní položky */
.sidebar-link.active {
    background-color: #40916c;
    color: #fff;
}

/* Lightbox: zakázat scrollování */
body.lightbox-open {
    overflow: hidden;
}

/* Tiskový styl */
@media print {
    header, footer, nav, .no-print { display: none !important; }
    main { max-width: 100% !important; }
}
