/* Shared layout layer.
   Keep structural rules here so theme files can focus on colors. */

:root {
    --content-max: 1200px;
    --layout-shell-pad: var(--space-4, 16px);
    --layout-shell-pad-mobile: 10px;
}

.header-top-row,
.scroll-nav {
    width: min(var(--content-max), 100%);
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--layout-shell-pad);
    padding-right: var(--layout-shell-pad);
}

.main-container {
    max-width: var(--content-max);
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--layout-shell-pad);
    padding-right: var(--layout-shell-pad);
}

@media (max-width: 768px) {
    .header-top-row {
        width: 100%;
        margin: 0;
        padding-left: var(--layout-shell-pad-mobile) !important;
        padding-right: var(--layout-shell-pad-mobile) !important;
    }

    .scroll-nav {
        width: 100%;
        margin: 0;
        padding-left: var(--layout-shell-pad-mobile) !important;
        padding-right: var(--layout-shell-pad-mobile) !important;
    }

    .main-container {
        padding-left: var(--space-3, 12px);
        padding-right: var(--space-3, 12px);
    }
}
/* Dark theme color layer.
   Applied when no explicit light theme is selected. */

html:not([data-theme]),
html[data-theme="dark"] {
    color-scheme: dark;
}

html:not([data-theme]) .header-container,
html[data-theme="dark"] .header-container {
    background: rgba(5, 5, 5, 0.95);
    border-bottom: 1px solid var(--border-color);
}

html:not([data-theme]) .pill,
html[data-theme="dark"] .pill {
    background: #111;
    color: var(--text-dim);
    border-color: var(--border-color);
}

html:not([data-theme]) .pill:hover,
html[data-theme="dark"] .pill:hover {
    background: #1a1a1a;
    color: #fff;
    border-color: var(--border-highlight);
}

html:not([data-theme]) .pill.active,
html[data-theme="dark"] .pill.active {
    background: #fff;
    color: #000;
    border-color: #fff;
}

html:not([data-theme]) .side-mini-nav,
html[data-theme="dark"] .side-mini-nav {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

html:not([data-theme]) .side-mini-title,
html[data-theme="dark"] .side-mini-title {
    color: #888;
}

html:not([data-theme]) .side-mini-link,
html[data-theme="dark"] .side-mini-link {
    color: #cbd5e1;
    border: 1px solid transparent;
    background: transparent;
}

html:not([data-theme]) .side-mini-link.active,
html:not([data-theme]) .side-mini-link:hover,
html[data-theme="dark"] .side-mini-link.active,
html[data-theme="dark"] .side-mini-link:hover {
    color: #fff;
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.15);
}
