/* ============================================================
   ClassicSidebarLayout – Header oben (fix), Sidebar links (fix),
   Body scrollt nativ mit <body> (Browser merkt Scrollposition).

   CSS-Variablen (überschreibbar per :root oder inline):
     --oo-csl-header-height   Standard: 56px
     --oo-csl-sidebar-width   Standard: 260px
   ============================================================ */

:root {
    --oo-csl-header-height: 56px;
    --oo-csl-sidebar-width: 260px;
}

/* Header – fix oben, volle Breite */
.oo-csl-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background-color: var(--oo-color-background);
    border-bottom: var(--oo-border-width) solid var(--oo-color-border);
    z-index: var(--oo-z-dropdown);
    overflow: visible;
}

.oo-csl-header > .oo-stack {
    height: var(--oo-csl-header-height);
    padding: 0 var(--oo-space-3);
}

.oo-csl-header__brand {
    font-weight: 600;
    font-size: var(--oo-font-size-lg);
}


/* Sidebar – fix links, von unterhalb des Headers bis ganz unten */
.oo-csl-sidebar {
    position: fixed;
    top: var(--oo-csl-header-height);
    left: 0;
    bottom: 0;
    width: var(--oo-csl-sidebar-width);
    overflow-y: auto;
    overflow-x: hidden;
    background-color: var(--oo-color-background);
    border-right: var(--oo-border-width) solid var(--oo-color-border);
    padding: var(--oo-space-2);
    scrollbar-width: thin;
    scrollbar-color: var(--oo-gray-300) transparent;
    z-index: 90;
}

/* Body – Margin für Header und Sidebar; scrollt nativ mit <body> */
.oo-csl-body {
    box-sizing: border-box;
    background-color: var(--oo-color-surface);
    margin-top: var(--oo-csl-header-height);
    margin-left: var(--oo-csl-sidebar-width);
    min-height: calc(100vh - var(--oo-csl-header-height));
    padding: var(--oo-space-3);
}
