/**
 * NETZKOLLEKTIV Sphinx theme (aligned with netzkollektiv.com/docs).
 * Brand accent: #33cccb
 */

:root {
    --nk-brand: #33cccb;
    --nk-brand-dark: #2ab8b7;
    --nk-brand-darker: #1f9a99;
    --nk-surface-muted: #f2f2f2;
    --nk-text-on-brand: #ffffff;
    --nk-sidebar-link: #b3b3b3;
    --nk-sidebar-link-hover: #ffffff;
    --nk-sidebar-submenu-link: #666666;
    --nk-sidebar-submenu-link-hover: #404040;
    --nk-sidebar-submenu-active-bg: #fcfcfc;
}

/* Sidebar & mobile header */
.wy-side-nav-search,
.wy-nav-top {
    background-color: var(--nk-brand) !important;
}

.wy-side-nav-search > a,
.wy-side-nav-search .wy-dropdown > a,
.wy-side-nav-search > a:hover,
.wy-nav-top a {
    color: var(--nk-text-on-brand) !important;
}

.wy-side-nav-search > div.version {
    color: rgba(255, 255, 255, 0.85) !important;
}

.wy-side-nav-search .wy-side-nav-search__logo {
    max-height: 48px;
    width: auto;
}

/* Top-level nav (dark sidebar) */
.wy-menu-vertical > ul > li > a {
    color: var(--nk-sidebar-link) !important;
}

.wy-menu-vertical > ul > li > a:hover {
    background-color: rgba(51, 204, 203, 0.15) !important;
    color: var(--nk-sidebar-link-hover) !important;
}

.wy-menu-vertical > ul > li.current > a,
.wy-menu-vertical > ul > li.on > a,
.wy-menu-vertical > ul > li.current > a:hover,
.wy-menu-vertical > ul > li.on > a:hover {
    background-color: var(--nk-brand) !important;
    color: var(--nk-text-on-brand) !important;
}

/* Submenu (lighter panel under expanded sections) */
.wy-menu-vertical li.current {
    background: var(--nk-surface-muted) !important;
}

.wy-menu-vertical li.toctree-l2 a,
.wy-menu-vertical li.toctree-l3 a,
.wy-menu-vertical li.toctree-l4 a,
.wy-menu-vertical li.toctree-l5 a,
.wy-menu-vertical li.toctree-l6 a,
.wy-menu-vertical li.current ul li a {
    color: var(--nk-sidebar-submenu-link) !important;
}

.wy-menu-vertical li.toctree-l2 a:hover,
.wy-menu-vertical li.toctree-l3 a:hover,
.wy-menu-vertical li.toctree-l4 a:hover,
.wy-menu-vertical li.current ul li a:hover {
    background-color: rgba(51, 204, 203, 0.12) !important;
    color: var(--nk-sidebar-submenu-link-hover) !important;
}

.wy-menu-vertical li.toctree-l2.current > a,
.wy-menu-vertical li.toctree-l3.current > a,
.wy-menu-vertical li.toctree-l4.current > a {
    background-color: var(--nk-sidebar-submenu-active-bg) !important;
    color: var(--nk-brand-darker) !important;
    font-weight: 700;
}

.wy-menu-vertical li.toctree-l2.current > a:hover,
.wy-menu-vertical li.toctree-l3.current > a:hover,
.wy-menu-vertical li.toctree-l4.current > a:hover {
    background-color: var(--nk-sidebar-submenu-active-bg) !important;
    color: var(--nk-brand) !important;
}

/* Sidebar section titles (e.g. „Handbuch“) — replace RTD default blue */
.wy-menu-vertical p.caption,
.wy-menu-vertical p.caption .caption-text,
.wy-menu-vertical .caption,
.wy-menu-vertical .caption-text {
    color: var(--nk-brand-darker) !important;
}

/* In-page toctree captions (index etc.) */
.rst-content p.caption,
.rst-content p.caption .caption-text,
.rst-content .toctree-wrapper > p.caption,
.rst-content .toctree-wrapper > p.caption .caption-text {
    color: var(--nk-brand-darker) !important;
}

/* Breadcrumbs, headerlinks, download links */
.wy-breadcrumbs a,
.rst-content .headerlink,
.rst-content code.download span:first-child,
a.icon-home {
    color: var(--nk-brand-darker) !important;
}

.rst-content .headerlink:hover,
.wy-breadcrumbs a:hover {
    color: var(--nk-brand) !important;
}

/* Content links */
.rst-content a,
.rst-content a:visited {
    color: var(--nk-brand-darker);
}

.rst-content a:hover {
    color: var(--nk-brand-dark);
}

/* Headings accent */
.rst-content h1,
.rst-content h2,
.rst-content h3 {
    border-bottom-color: var(--nk-brand);
}

/* Info / note admonitions */
.wy-alert.wy-alert-info,
.rst-content .note,
.rst-content .wy-alert-info.attention,
.rst-content .wy-alert-info.caution,
.rst-content .wy-alert-info.danger,
.rst-content .wy-alert-info.error,
.rst-content .wy-alert-info.hint,
.rst-content .wy-alert-info.important,
.rst-content .wy-alert-info.tip,
.rst-content .wy-alert-info.warning,
.rst-content .seealso,
.rst-content .wy-alert-info.admonition-todo {
    background-color: var(--nk-surface-muted) !important;
}

.wy-alert.wy-alert-info .wy-alert-title,
.rst-content .note .wy-alert-title,
.rst-content .wy-alert-info.attention .wy-alert-title,
.rst-content .wy-alert-info.caution .wy-alert-title,
.rst-content .wy-alert-info.danger .wy-alert-title,
.rst-content .wy-alert-info.error .wy-alert-title,
.rst-content .wy-alert-info.hint .wy-alert-title,
.rst-content .wy-alert-info.important .wy-alert-title,
.rst-content .wy-alert-info.tip .wy-alert-title,
.rst-content .wy-alert-info.warning .wy-alert-title,
.rst-content .seealso .wy-alert-title,
.rst-content .wy-alert-info.admonition-todo .wy-alert-title,
.wy-alert.wy-alert-info .rst-content .admonition-title,
.rst-content .wy-alert.wy-alert-info .admonition-title,
.rst-content .note .admonition-title,
.rst-content .wy-alert-info.attention .admonition-title,
.rst-content .wy-alert-info.caution .admonition-title,
.rst-content .wy-alert-info.danger .admonition-title,
.rst-content .wy-alert-info.error .admonition-title,
.rst-content .wy-alert-info.hint .admonition-title,
.rst-content .wy-alert-info.important .admonition-title,
.rst-content .wy-alert-info.tip .admonition-title,
.rst-content .wy-alert-info.warning .admonition-title,
.rst-content .seealso .admonition-title,
.rst-content .wy-alert-info.admonition-todo .admonition-title {
    background-color: var(--nk-brand) !important;
}

/* Language switcher */
.nk-docs-lang-switch {
    border-top: 1px solid rgba(255, 255, 255, 0.25);
    color: var(--nk-text-on-brand);
}

.nk-docs-lang-switch a {
    color: var(--nk-text-on-brand) !important;
    text-decoration: underline;
}

.nk-docs-lang-switch strong {
    color: var(--nk-text-on-brand);
}

/* Footer (inside .rst-content) */
footer,
.rst-footer-buttons {
    color: #666;
}

.nk-docs-footer {
    padding: 0.5em 0 1.5em;
    font-size: 0.9em;
    line-height: 1.6;
    color: #555 !important;
}

.nk-docs-footer p {
    margin: 0.35em 0;
    color: #555 !important;
}

.nk-docs-footer a {
    color: var(--nk-brand-darker) !important;
    text-decoration: underline;
}

.nk-docs-footer a:hover {
    color: var(--nk-brand) !important;
}
