/* PASS – světlý / tmavý režim (data-theme + localStorage ve theme.js) */

html {
    scrollbar-gutter: stable;
}

/* Výchozí = světlý, pokud není v <html> atribut data-theme */
:root,
html[data-theme="light"] {
    --pass-bg: #f8f9fb;
    --pass-ink: #0f172a;
    --pass-ink-2: #334155;
    --pass-muted: #64748b;
    --pass-muted-2: #94a3b8;
    --pass-surface: #ffffff;
    --pass-surface-dim: #f1f3f6;
    --pass-surface-elev: #f8fafc;
    --pass-line: #e5e7eb;
    --pass-line-strong: #d1d5db;
    --pass-panel: #ffffff;
    --pass-shadow-umbra: 0.06;
    --pass-shadow-soft: rgba(15, 23, 42, 0.08);
    --pass-alert-bg: #fff7df;
    --pass-alert-border: #f0d08a;
    --pass-alert-ink: #7a5a12;
    --pass-search-placeholder: #94a3b8;
    --pass-hero-tint: #f0f2f4;
    --pass-dialog-scrim: rgba(10, 18, 28, 0.45);
    --pass-footer-muted: #94a3b8;
}

html[data-theme="dark"] {
    --pass-bg: #0a0e12;
    --pass-ink: #e6edf4;
    --pass-ink-2: #c6d0dc;
    --pass-muted: #8b9aaf;
    --pass-muted-2: #6b7b90;
    --pass-surface: #101820;
    --pass-surface-dim: #151e2a;
    --pass-surface-elev: #141d28;
    --pass-line: rgba(255, 255, 255, 0.1);
    --pass-line-strong: rgba(255, 255, 255, 0.16);
    --pass-panel: #101820;
    --pass-shadow-umbra: 0.35;
    --pass-shadow-soft: rgba(0, 0, 0, 0.4);
    --pass-alert-bg: #2a220e;
    --pass-alert-border: #4d3d14;
    --pass-alert-ink: #f1d58a;
    --pass-search-placeholder: #6b7b8f;
    --pass-hero-tint: #1a1f2a;
    --pass-dialog-scrim: rgba(0, 0, 0, 0.62);
    --pass-footer-muted: #5c6a7d;
}

/* Topnav: konzistentní box – odstranění 1px posunu kvůli scrollbaru */
#topnav {
    right: 0;
    left: 0;
    width: 100%;
    max-width: 100vw;
    box-sizing: border-box;
}

/* Upozornění „Informace…“ – stejné jako u Spolky (šířka 1000, centrováno) */
.page-alert {
    max-width: 1000px;
    margin: 14px auto 0;
    padding: 12px 16px;
    border-radius: 12px;
    background: var(--pass-alert-bg);
    border: 1px solid var(--pass-alert-border);
    color: var(--pass-alert-ink);
    font-size: 13px;
    font-weight: 700;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
    box-sizing: border-box;
}
html[data-theme="dark"] .page-alert {
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}

/* Společná patička (Katedry, Odkazy) – vystředění jako obsah, stejné odsazení jako .foot u Spolky */
.pass-site-foot {
    width: 100%;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    margin-top: auto;
    margin-bottom: 0;
    padding: 28px 20px 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 12px;
    color: var(--pass-footer-muted);
    font-weight: 600;
    box-sizing: border-box;
}
@media (max-width: 640px) {
    .page-alert {
        margin: 12px 16px 0;
        padding: 11px 14px;
    }
}
@media (max-width: 380px) {
    .page-alert {
        margin-left: 12px;
        margin-right: 12px;
    }
}
.pass-site-foot-inner {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 6px;
}
.pass-site-foot .foot-sep {
    opacity: 0.4;
}
.pass-site-foot .footer-link {
    background: none;
    border: none;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    font-family: inherit;
    padding: 0;
    text-decoration: underline;
    text-decoration-color: transparent;
    transition: text-decoration-color 0.15s;
    cursor: pointer;
    opacity: 0.95;
}
.pass-credit {
    color: inherit;
    font: inherit;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
}
.pass-credit:hover,
.pass-credit:focus,
.pass-credit:visited {
    color: inherit;
    text-decoration: none;
}

.pass-site-foot .footer-link:hover {
    text-decoration-color: currentColor;
}

/* img/*-X.png (libovolné logo v img s koncovkou -X před příponou) – přebarvení na sytou bílou */
img.pass-img--white {
    filter: brightness(0) invert(1);
}
