/* EST-Planer v44: thematisch geordnete Admin-Navigation */
/* EST-Planer v44: eigenständige Admin-Menü-CSS – bewusst neue Datei gegen Browsercache */
.admin-menu-v44,
.admin-menu-v44 * {
    box-sizing: border-box;
}

.admin-menu-v44 {
    position: sticky;
    top: 0;
    z-index: 500;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .5rem;
    padding: .7rem max(1rem, calc((100% - 1100px) / 2));
    background: #f3f4f6;
    border-bottom: 1px solid #c9cdd3;
    box-shadow: 0 2px 7px rgba(0,0,0,.10);
    color: #16181b;
}

.admin-menu-v44 a,
.admin-menu-v44 button {
    font: inherit;
}

.admin-menu-home,
.admin-menu-trigger {
    min-height: 2.45rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    margin: 0;
    padding: .48rem .82rem;
    border: 1px solid #aeb4bc;
    border-radius: .42rem;
    background: #fff;
    color: #15171a !important;
    text-decoration: none !important;
    font-weight: 650;
    line-height: 1.1;
    cursor: pointer;
    white-space: nowrap;
    box-shadow: 0 1px 2px rgba(0,0,0,.05);
}

.admin-menu-home:hover,
.admin-menu-home:focus-visible,
.admin-menu-trigger:hover,
.admin-menu-trigger:focus-visible,
.admin-menu-home.active,
.admin-menu-section.active-group > .admin-menu-trigger,
.admin-menu-section.open > .admin-menu-trigger {
    background: #17191c;
    border-color: #17191c;
    color: #fff !important;
    outline: none;
}

.admin-menu-chevron {
    display: inline-block;
    font-size: .95rem;
    line-height: 1;
    transition: transform .15s ease;
}

.admin-menu-section.open .admin-menu-chevron {
    transform: rotate(180deg);
}

.admin-menu-section {
    position: relative;
}

.admin-menu-panel[hidden] {
    display: none !important;
}

.admin-menu-panel {
    position: absolute;
    left: 0;
    top: calc(100% + .45rem);
    z-index: 550;
    width: max-content;
    min-width: 16.5rem;
    max-width: min(25rem, calc(100vw - 2rem));
    padding: .38rem;
    border: 1px solid #aeb4bc;
    border-radius: .5rem;
    background: #fff;
    box-shadow: 0 8px 22px rgba(0,0,0,.18);
}

.admin-menu-panel a {
    display: block;
    width: 100%;
    margin: 0;
    padding: .62rem .72rem;
    border-radius: .34rem;
    color: #191b1e !important;
    background: transparent;
    text-decoration: none !important;
    font-weight: 500;
    line-height: 1.25;
}

.admin-menu-panel a + a {
    margin-top: .08rem;
}

.admin-menu-panel a:hover,
.admin-menu-panel a:focus-visible,
.admin-menu-panel a.active {
    background: #eceff2;
    color: #000 !important;
    outline: none;
}

.admin-menu-panel a.active {
    font-weight: 700;
    box-shadow: inset 3px 0 0 #17191c;
}

@media (max-width: 850px) {
    .admin-menu-v44 {
        position: relative;
        padding: .65rem;
        gap: .4rem;
    }

    .admin-menu-home,
    .admin-menu-section {
        flex: 1 1 calc(50% - .4rem);
    }

    .admin-menu-trigger,
    .admin-menu-home {
        width: 100%;
    }

    .admin-menu-panel {
        position: fixed;
        left: .65rem;
        right: .65rem;
        top: auto;
        width: auto;
        min-width: 0;
        max-width: none;
    }
}

@media (max-width: 520px) {
    .admin-menu-home,
    .admin-menu-section {
        flex-basis: 100%;
    }
}

@media print {
    .admin-menu-v44 {
        display: none !important;
    }
}
