/* Ausschließlich Sidebar; Breite, Hauptinhalt, Kopfzeile und Fachseiten bleiben bestehen. */
.sidebar.sidebar-redesign { background: var(--pk-legacy-color-fff); --sidebar-ink: var(--pk-legacy-color-263431); --sidebar-muted: var(--pk-legacy-color-78817e); --sidebar-active-ink: var(--pk-legacy-color-174e3c); --sidebar-active-bg: var(--pk-legacy-color-eaf3ed); --sidebar-active-shadow: none; }
.sidebar-redesign .sidebar-brand { padding: 0.6rem 0.4rem 1.2rem; align-items: flex-start; }
.sidebar-redesign .sidebar-brand a { flex: 1; min-width: 0; }
.sidebar-redesign .sidebar-brand img { width: 100%; max-width: 185px; height: auto; }
.sidebar-redesign .sidebar-collapse-toggle { flex-shrink: 0; }
.sidebar-redesign .sidebar-navigation { gap: 0; }
.sidebar-redesign .sidebar-section { padding: 0.7rem 0; }
.sidebar-redesign .sidebar-section + .sidebar-section { border-top: 1px solid var(--pk-legacy-color-e8ece9); }
.sidebar-redesign .sidebar-heading { margin: 0 0 0.6rem; font-size: 10px; font-weight: 600; letter-spacing: 0.1em; }
.sidebar-redesign .sidebar-navigation a { min-height: 39px; border-radius: 7px; }
.sidebar-redesign .sidebar-navigation a:hover { color: var(--pk-legacy-color-174e3c); background: var(--pk-legacy-color-f1f6f2); }
.sidebar-redesign .sidebar-navigation a.active { position: relative; background: var(--pk-legacy-color-eaf3ed); color: var(--pk-legacy-color-174e3c); box-shadow: none; }
.sidebar-redesign .sidebar-navigation a.active::before { content: ''; position: absolute; inset: 7px auto 7px 0; width: 3px; border-radius: 3px; background: var(--pk-legacy-color-246a50); }
.sidebar-redesign .sidebar-accordion-group { margin: 0; border: 0; padding: 0; background: transparent; }
.sidebar-redesign .sidebar-accordion-group > summary { display: flex; align-items: center; gap: 0.6rem; min-height: 42px; padding: 0.45rem 0.55rem; border-radius: 7px; color: var(--sidebar-ink); cursor: pointer; list-style: none; font-size: var(--fs-xs); font-weight: 600; }
.sidebar-redesign .sidebar-accordion-group > summary::-webkit-details-marker { display: none; }
.sidebar-redesign .sidebar-accordion-group > summary:hover { background: var(--pk-legacy-color-f1f6f2); }
.sidebar-redesign .sidebar-accordion-group > summary svg { width: 17px; height: 17px; flex-shrink: 0; stroke: currentColor; }
.sidebar-redesign .sidebar-accordion-group > summary > span { min-width: 0; }
.sidebar-redesign .sidebar-accordion-group > summary svg:last-child { width: 14px; height: 14px; margin-left: auto; transition: transform 150ms ease; }
.sidebar-redesign .sidebar-accordion-group[open] > summary { color: var(--pk-legacy-color-174e3c); }
.sidebar-redesign .sidebar-accordion-group[open] > summary svg:last-child { transform: rotate(90deg); }
.sidebar-redesign .sidebar-accordion-links { margin: 0.15rem 0 0.5rem 1rem; padding-left: 0.45rem; border-left: 1px solid var(--pk-legacy-color-e4eae5); }
.sidebar-redesign .sidebar-accordion-links a { gap: 0.45rem; min-height: 35px; padding: 0.4rem 0.5rem; }
.sidebar-redesign .sidebar-accordion-links a svg { width: 15px; height: 15px; }
.sidebar-redesign .sidebar-accordion-links a span { white-space: normal; overflow: visible; }
.sidebar-redesign .sidebar-context { margin: 0 0 0.4rem 1.4rem; }
.sidebar-redesign .sidebar-context > summary { display: flex; align-items: center; gap: 0.4rem; min-height: 30px; padding: 0.3rem 0.5rem; color: var(--sidebar-muted); cursor: pointer; list-style: none; font-size: 11px; }
.sidebar-redesign .sidebar-context > summary::-webkit-details-marker { display: none; }
.sidebar-redesign .sidebar-context > summary svg { width: 12px; height: 12px; margin-left: auto; }
.sidebar-redesign .sidebar-context[open] > summary svg { transform: rotate(90deg); }
.sidebar-redesign .sidebar-context a { min-height: 30px; font-size: 11px; }
.sidebar .sidebar-nav a.sidebar-time-dashboard { font-size: var(--fs-xs); font-weight: 650; min-height: 45px; gap: 0.6rem; }
.sidebar-redesign .sidebar-tasks a.is-overdue:not(.active) > svg { stroke: var(--pk-legacy-color-b75454); }
.sidebar-redesign .sidebar-messages .sidebar-compose { background: var(--pk-legacy-color-174e3c); border-radius: 7px; min-height: 40px; margin: 0 0 1rem; }
.sidebar-redesign .sidebar-messages .sidebar-compose:focus-visible { outline: 2px solid var(--pk-legacy-color-246a50); outline-offset: 2px; }
.sidebar .sidebar-time-dashboard > svg:last-child { margin-left: auto; width: 15px; height: 15px; transform: rotate(180deg); }
.sidebar-redesign .sidebar-time-hint { display: block; padding: 0 0.55rem 0.4rem 2.2rem; color: var(--sidebar-muted); font-size: 11px; }
.sidebar-redesign summary:focus-visible, .sidebar-redesign .sidebar-navigation a:focus-visible { outline: 2px solid var(--pk-legacy-color-246a50); outline-offset: 2px; }
@media (width > 900px) {
    [data-app-shell].is-collapsed .sidebar-redesign .sidebar-accordion-group > summary { justify-content: center; padding-left: 0; padding-right: 0; }
    [data-app-shell].is-collapsed .sidebar-redesign .sidebar-accordion-group > summary > span,
    [data-app-shell].is-collapsed .sidebar-redesign .sidebar-accordion-group > summary > svg:last-child,
    [data-app-shell].is-collapsed .sidebar-redesign .sidebar-context,
    [data-app-shell].is-collapsed .sidebar-redesign .sidebar-time-dashboard > svg:last-child,
    [data-app-shell].is-collapsed .sidebar-redesign .sidebar-time-hint,
    [data-app-shell].is-collapsed .sidebar-redesign .sidebar-accordion-links { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    .sidebar-redesign .sidebar-accordion-group > summary svg:last-child { transition: none; }
}

/* Fachnavigation: einheitlich mit Zeiterfassung und Nachrichten. */
.sidebar-redesign .sidebar-module a > span { white-space: normal; overflow: visible; line-height: 1.4; }
.sidebar-redesign .sidebar-module .sidebar-heading { letter-spacing: .06em; }
.sidebar-redesign.sidebar-dashboard-nav .sidebar-navigation { display: flex; flex-direction: column; }

/* Shared rules for every module, including CDE and the address-book tree. */
.sidebar.sidebar-redesign .sidebar-module-title { margin: .7rem .55rem 0; }
.sidebar.sidebar-redesign .sidebar-navigation a { font-size: var(--fs-xs); font-weight: 600; gap: .6rem; }
.sidebar.sidebar-redesign .sidebar-navigation a > svg { width: 17px; height: 17px; flex-shrink: 0; }
.sidebar.sidebar-redesign .sidebar-navigation a > span { white-space: normal; overflow: visible; line-height: 1.4; }
.sidebar.sidebar-redesign .sidebar-module-tree > summary { padding: 0; gap: 0; }
.sidebar.sidebar-redesign .sidebar-module-tree > summary > a { flex: 1; min-width: 0; margin: 0; padding: .45rem .55rem; }
.sidebar.sidebar-redesign .sidebar-module-tree > summary > svg { margin: 0 .55rem 0 .25rem; }
.sidebar.sidebar-redesign .nav-soon { font-size: 10px; font-weight: 500; background: var(--pk-legacy-color-fff0d4); color: var(--pk-legacy-color-725619); border-radius: 10px; padding: 2px 6px; margin-left: auto; }
.sidebar.sidebar-redesign .ct-groups { background: transparent; padding: .7rem 0; border: 0; width: auto; }
.sidebar.sidebar-redesign .ct-groups .sidebar-heading { margin-left: .55rem; }
.sidebar.sidebar-redesign .ct-g { min-height: 39px; font-size: var(--fs-xs); font-weight: 600; border-radius: 7px; color: var(--sidebar-ink); }
.sidebar.sidebar-redesign .ct-g.on { background: var(--sidebar-active-bg); color: var(--sidebar-active-ink); box-shadow: inset 3px 0 var(--pk-legacy-color-246a50); }
.sidebar.sidebar-redesign .ct-g:hover { background: var(--pk-legacy-color-f1f6f2); }
.sidebar.sidebar-redesign .ct-gname { font-size: inherit; font-weight: inherit; }
.sidebar.sidebar-redesign .ct-ghint { padding: .5rem; font-size: 11px; line-height: 1.5; }
.sidebar.sidebar-redesign .ct-g-add { margin-top: .5rem; }
.sidebar.sidebar-redesign .ct-g:focus-visible, .sidebar.sidebar-redesign .ct-gname:focus-visible, .sidebar.sidebar-redesign .ct-gtw:focus-visible { outline: 2px solid var(--pk-legacy-color-246a50); outline-offset: 2px; }
@media (max-width: 900px) { .sidebar.sidebar-redesign .sidebar-navigation a, .sidebar.sidebar-redesign .ct-g { min-height: 44px; } }

.sidebar.sidebar-redesign .sidebar-action { display: flex; align-items: center; gap: .6rem; width: 100%; min-height: 39px; padding: .45rem .55rem; background: transparent; color: var(--sidebar-ink); border: 0; border-radius: 7px; box-shadow: none; font-size: var(--fs-xs); font-weight: 600; text-align: left; }
.sidebar.sidebar-redesign .sidebar-action svg { width: 17px; height: 17px; flex-shrink: 0; }
.sidebar.sidebar-redesign .sidebar-action:hover { background: var(--pk-legacy-color-f1f6f2); color: var(--pk-legacy-color-174e3c); }
.sidebar.sidebar-redesign .sidebar-action:focus-visible { outline: 2px solid var(--pk-legacy-color-246a50); outline-offset: 2px; }
@media (max-width: 900px) { .sidebar.sidebar-redesign .sidebar-action { min-height: 44px; } }
