@import '_content/PM.Personaleinsatzplanung.Web/PM.Personaleinsatzplanung.Web.065i27plzm.bundle.scp.css';
@import '_content/PM.Portal.Shared/PM.Portal.Shared.8ms3nu7f69.bundle.scp.css';
@import '_content/PM.Projekte.Web/PM.Projekte.Web.6v1oslfhvn.bundle.scp.css';
@import '_content/PM.Stammdaten.Web/PM.Stammdaten.Web.idrsojkoan.bundle.scp.css';
@import '_content/PM.Zutrittskontrolle.Web/PM.Zutrittskontrolle.Web.y2x9l90jcs.bundle.scp.css';

/* _content/PM.Portal.Web/Components/Layout/AdminLayout.razor.rz.scp.css */
/* ── Admin Layout ── */
.admin-layout[b-pqhlgjw4r2] {
    display: grid;
    grid-template-columns: 220px 1fr;
    height: calc(100vh - 48px);
    min-height: 500px;
}

.admin-sidebar[b-pqhlgjw4r2] {
    background: #222d62;
    display: flex;
    flex-direction: column;
    padding: 12px 0;
    overflow-y: auto;
}

.admin-nav-item[b-pqhlgjw4r2] {
    display: block;
    padding: 10px 20px;
    color: rgba(255,255,255,0.7);
    text-decoration: none;
    font-size: 0.88rem;
    font-weight: 500;
    transition: background 0.15s, color 0.15s;
    border-left: 3px solid transparent;
}

.admin-nav-item:hover[b-pqhlgjw4r2] {
    background: rgba(255,255,255,0.1);
    color: #fff;
    text-decoration: none;
}

.admin-nav-item.active[b-pqhlgjw4r2] {
    background: rgba(0,152,255,0.2);
    color: #fff;
    border-left-color: #0098ff;
    font-weight: 700;
}

.admin-nav-back[b-pqhlgjw4r2] {
    margin-top: auto;
    border-top: 1px solid rgba(255,255,255,0.15);
    font-size: 0.82rem;
}

.admin-content[b-pqhlgjw4r2] {
    overflow-y: auto;
    padding: 24px 32px;
    background: #f5f6f8;
}

@media (max-width: 768px) {
    .admin-layout[b-pqhlgjw4r2] {
        grid-template-columns: 1fr;
        grid-template-rows: auto 1fr;
    }
    .admin-sidebar[b-pqhlgjw4r2] {
        flex-direction: row;
        padding: 0;
        overflow-x: auto;
    }
    .admin-nav-item[b-pqhlgjw4r2] {
        padding: 8px 14px;
        white-space: nowrap;
        border-left: none;
        border-bottom: 3px solid transparent;
    }
    .admin-nav-item.active[b-pqhlgjw4r2] {
        border-left-color: transparent;
        border-bottom-color: #0098ff;
    }
    .admin-nav-back[b-pqhlgjw4r2] {
        margin-top: 0;
        border-top: none;
        border-left: 1px solid rgba(255,255,255,0.15);
    }
}
/* _content/PM.Portal.Web/Components/Layout/BereichBar.razor.rz.scp.css */
/* ── Bereich Bar (top-level area selector) ── */
.bereich-bar[b-dpyz781n1n] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 1.75rem;
    background: #1a1a2e;
    flex-shrink: 0;
    min-height: 36px;
}

.bereich-tabs[b-dpyz781n1n] {
    display: flex;
    gap: 4px;
}

.bereich-tab[b-dpyz781n1n] {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 4px 14px;
    border: none;
    border-radius: 6px;
    background: transparent;
    color: rgba(255,255,255,0.6);
    font-family: 'Montserrat', sans-serif;
    font-size: 0.78rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}

.bereich-tab:hover[b-dpyz781n1n] {
    color: rgba(255,255,255,0.9);
    background: rgba(255,255,255,0.1);
}

.bereich-tab--active[b-dpyz781n1n] {
    color: #fff;
    background: var(--bereich-color, #0098ff);
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}

.bereich-tab-icon[b-dpyz781n1n] {
    font-size: 0.85rem;
    line-height: 1;
}

.bereich-tab-label[b-dpyz781n1n] {
    line-height: 1;
}

/* ── Separator ── */
.bereich-sep[b-dpyz781n1n] {
    width: 1px;
    height: 20px;
    background: rgba(255,255,255,0.2);
    margin: 0 8px;
}

/* ── Querschnitt pills ── */
.bereich-qs[b-dpyz781n1n] {
    display: flex;
    gap: 4px;
    margin-left: auto;
}

.bereich-qs-item[b-dpyz781n1n] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 3px 10px;
    border-radius: 5px;
    background: rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.55);
    font-family: 'Montserrat', sans-serif;
    font-size: 0.72rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.12s;
    white-space: nowrap;
}

.bereich-qs-item:hover[b-dpyz781n1n] {
    background: rgba(255,255,255,0.16);
    color: rgba(255,255,255,0.9);
    text-decoration: none;
}

.bereich-qs-icon[b-dpyz781n1n] {
    font-size: 0.78rem;
    line-height: 1;
}

@media (max-width: 768px) {
    .bereich-bar[b-dpyz781n1n] { flex-wrap: wrap; padding: 4px 0.75rem; }
    .bereich-tab-label[b-dpyz781n1n] { display: none; }
    .bereich-tab-icon[b-dpyz781n1n] { font-size: 1rem; }
    .bereich-qs[b-dpyz781n1n] { margin-left: 0; }
}
/* _content/PM.Portal.Web/Components/Layout/MainLayout.razor.rz.scp.css */
/* ── Shell wrapper (carries bereich CSS variables) ── */
.pm-shell[b-mxcsui7vik] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

/* ── Bereich color themes (on .pm-shell itself, NOT a descendant → no :deep()) ── */
.bereich-pm[b-mxcsui7vik]  { --bereich-color: #0098ff; --bereich-bg: #eef6ff; }
.bereich-zuk[b-mxcsui7vik] { --bereich-color: #28a745; --bereich-bg: #eefaf0; }
.bereich-prj[b-mxcsui7vik] { --bereich-color: #7c3aed; --bereich-bg: #f3eefe; }
.bereich-log[b-mxcsui7vik] { --bereich-color: #f59e0b; --bereich-bg: #fffbeb; }

/* ── Topbar ──────────────────────────────────────────────────── */
.pm-topbar[b-mxcsui7vik] {
    background: #ffffff;
    color: #333;
    padding: 0 1.75rem;
    height: 56px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    position: sticky;
    top: 0;
    z-index: 200;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.10);
    border-bottom: 1px solid #e0e0e0;
}

/* ── Brand (simple, no dropdown) ─────────────────────────────── */
.pm-brand-simple[b-mxcsui7vik] {
    display: flex;
    align-items: center;
    gap: 7px;
    color: #333;
    text-decoration: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.0rem;
    font-weight: 700;
    padding: 6px 0;
    flex-shrink: 0;
}

.pm-brand-simple:hover[b-mxcsui7vik] {
    opacity: 0.75;
    text-decoration: none;
}

.pm-brand-logo[b-mxcsui7vik] { height: 44px; width: auto; }
.pm-brand-name[b-mxcsui7vik] { font-size: 1.0rem; font-weight: 800; letter-spacing: 0.5px; color: #333; }

/* ── OBServe Augen-Animation ── */
.observe-logo[b-mxcsui7vik] { position: relative; display: inline-block; }

.observe-eyes[b-mxcsui7vik] {
    position: absolute;
    left: 15px; top: 11px;
    display: flex; gap: 3px;
    opacity: 0;
    pointer-events: none;
    animation: observe-cycle-b-mxcsui7vik 14s ease-in-out infinite;
    animation-delay: 5s;
}

.observe-eye[b-mxcsui7vik] {
    width: 7px; height: 9px;
    background: rgba(220, 240, 255, 0.92);
    border-radius: 50%;
    position: relative; overflow: hidden;
    box-shadow: 0 0 3px rgba(40, 180, 255, 0.4);
    animation: observe-blink-b-mxcsui7vik 14s ease-in-out infinite;
    animation-delay: 5s;
}

.observe-pupil[b-mxcsui7vik] {
    width: 3px; height: 3px;
    background: #0a1929;
    border-radius: 50%;
    position: absolute; left: 2px; top: 3px;
    transition: transform 0.15s ease;
}

@keyframes observe-cycle-b-mxcsui7vik {
    0%, 82%  { opacity: 0; }
    85%      { opacity: 1; }
    94%      { opacity: 1; }
    97%      { opacity: 0; }
    100%     { opacity: 0; }
}

@keyframes observe-blink-b-mxcsui7vik {
    0%, 86%  { transform: scaleY(1); }
    87%      { transform: scaleY(0.08); }
    88%      { transform: scaleY(1); }
    91%      { transform: scaleY(1); }
    91.5%    { transform: scaleY(0.08); }
    92%      { transform: scaleY(1); }
    100%     { transform: scaleY(1); }
}

/* ── Gear Menu (Querschnitt + Admin) ─────────────────────────── */
.pm-gear-menu[b-mxcsui7vik] { position: relative; }

.pm-gear-btn[b-mxcsui7vik] {
    list-style: none;
    cursor: pointer;
    font-size: 1.4rem;
    color: #555;
    padding: 4px 8px;
    border-radius: 6px;
    transition: color 0.15s, background 0.15s;
    user-select: none;
}

.pm-gear-btn[b-mxcsui7vik]::-webkit-details-marker,
.pm-gear-btn[b-mxcsui7vik]::marker { display: none; }

.pm-gear-btn:hover[b-mxcsui7vik],
.pm-gear-menu[open] .pm-gear-btn[b-mxcsui7vik] {
    color: #0098ff;
    background: #f0f4ff;
}

.pm-gear-dropdown[b-mxcsui7vik] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.18);
    min-width: 200px;
    overflow: hidden;
    border: 1px solid #e0e0e0;
    z-index: 500;
}

.pm-gear-item[b-mxcsui7vik] {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 10px 16px;
    color: #333;
    text-decoration: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.88rem;
    font-weight: 600;
    transition: background 0.1s;
}

.pm-gear-item:hover[b-mxcsui7vik] {
    background: #f4f8ff;
    color: #0098ff;
    text-decoration: none;
}

.pm-gear-icon[b-mxcsui7vik] {
    font-size: 1.15rem;
    font-family: 'Segoe UI Emoji', 'Apple Color Emoji', 'Noto Color Emoji', sans-serif;
    line-height: 1;
}

.pm-gear-admin[b-mxcsui7vik] { color: #c8a800; }
.pm-gear-admin:hover[b-mxcsui7vik] { background: #fffbe6; color: #a08800; }

/* ── User Display & Logout ─────────────────────────────────── */
.pm-user-name[b-mxcsui7vik] {
    color: #555;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 0.88rem;
    margin-right: 0.75rem;
}

.pm-logout-btn[b-mxcsui7vik] {
    background: transparent;
    border: 2px solid #ccc;
    color: #555;
    border-radius: 20px;
    padding: 5px 14px;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.82rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}

.pm-logout-btn:hover[b-mxcsui7vik] {
    background: #f0f4ff;
    border-color: #0098ff;
    color: #0098ff;
}

/* ── Vorbesetzung Display ──────────────────────────────────── */
.pm-vorbesetzung-display[b-mxcsui7vik] { display: flex; gap: 6px; align-items: center; margin-right: 8px; }
.pm-vorbesetzung-chip[b-mxcsui7vik] {
    display: inline-flex; align-items: center; gap: 4px;
    background: #e0ecff; color: #1a4a8a;
    border: 1px solid #b8d4ff;
    padding: 3px 10px; border-radius: 12px;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.78rem; font-weight: 600;
    white-space: nowrap;
}
.pm-vorbesetzung-icon[b-mxcsui7vik] { font-size: 0.85rem; line-height: 1; }
.pm-vorbesetzung-penr[b-mxcsui7vik] { color: #5a7faa; font-size: 0.72rem; font-weight: 500; margin-right: 2px; }
.pm-user-penr[b-mxcsui7vik] { color: #999; font-size: 0.78rem; font-weight: 500; margin-left: 4px; }

/* ── ESS Modul Bar ─────────────────────────────────────────── */
.pm-ess-modulbar[b-mxcsui7vik] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 5px 1.75rem;
    background: var(--bereich-bg, #eef6ff);
    border-bottom: 2px solid var(--bereich-color, #0098ff);
    flex-shrink: 0;
    min-height: 34px;
    position: sticky;
    top: 56px;
    z-index: 199;
}

.pm-ess-tab[b-mxcsui7vik] {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 4px 14px;
    border-radius: 6px;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.8rem;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    border: 1px solid transparent;
}

.pm-ess-tab--active[b-mxcsui7vik] {
    background: var(--bereich-color, #0098ff);
    color: #fff;
    border-color: var(--bereich-color, #0098ff);
}

.pm-ess-tab-icon[b-mxcsui7vik] { font-size: 0.9rem; line-height: 1; }
.pm-ess-tab-label[b-mxcsui7vik] { line-height: 1; }

/* ── Main ──────────────────────────────────────────────────── */
.pm-main[b-mxcsui7vik] {
    flex: 1;
    min-height: calc(100vh - 56px - 34px);
    padding: 1.75rem 2rem;
    background: #f2f2f2;
}

#blazor-error-ui[b-mxcsui7vik] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-mxcsui7vik] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* _content/PM.Portal.Web/Components/Layout/ModulBar.razor.rz.scp.css */
/* ── Module Bar (product selector, all products) ── */
.modul-bar[b-3a6g8r8bu0] {
    display: flex;
    align-items: center;
    gap: 0;
    padding: 4px 1.75rem;
    background: #eee;
    border-bottom: 1px solid #e0e0e0;
    flex-shrink: 0;
    min-height: 34px;
    overflow-x: hidden;
    position: sticky;
    top: 56px;
    z-index: 199;
}

/* ── Scrollbarer Tab-Bereich ── */
.modul-bar-tabs[b-3a6g8r8bu0] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 1;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: none; /* Firefox */
}

.modul-bar-tabs[b-3a6g8r8bu0]::-webkit-scrollbar {
    display: none; /* Chrome/Safari */
}

/* ── Bereich Group (visual separation per Bereich) ── */
.modul-bereich-group[b-3a6g8r8bu0] {
    display: flex;
    align-items: center;
    gap: 2px;
    padding: 0;
    background: transparent;
    border: none;
}

.modul-tab[b-3a6g8r8bu0] {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 4px 14px;
    border-radius: 6px;
    background: transparent;
    color: #333;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.8rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.12s;
    white-space: nowrap;
    border: 1.5px solid var(--tab-color, #0098ff);
}

/* Override browser/bootstrap link defaults */
a.modul-tab[b-3a6g8r8bu0],
a.modul-tab:link[b-3a6g8r8bu0],
a.modul-tab:visited[b-3a6g8r8bu0] {
    color: #333;
    text-decoration: none;
}

.modul-tab:hover[b-3a6g8r8bu0],
a.modul-tab:hover[b-3a6g8r8bu0] {
    background: color-mix(in srgb, var(--tab-color, #0098ff) 8%, transparent);
    color: #333;
    text-decoration: none;
}

.modul-tab--active[b-3a6g8r8bu0],
a.modul-tab--active[b-3a6g8r8bu0],
a.modul-tab--active:link[b-3a6g8r8bu0],
a.modul-tab--active:visited[b-3a6g8r8bu0] {
    background: color-mix(in srgb, var(--tab-color, #0098ff) 10%, transparent);
    color: #333;
    border-width: 2px;
    font-weight: 700;
}

.modul-tab--active:hover[b-3a6g8r8bu0],
a.modul-tab--active:hover[b-3a6g8r8bu0] {
    color: #333;
    background: color-mix(in srgb, var(--tab-color, #0098ff) 12%, transparent);
    filter: none;
}

/* ── Vertikaler Trenner (nach Stammdaten) ── */
.modul-teaser-spacer[b-3a6g8r8bu0] {
    width: 2px;
    height: 20px;
    background: #bbb;
    margin: 0 6px;
    flex-shrink: 0;
}

/* ── Teaser-Tab (rollierendes inaktives Produkt) ── */
.modul-tab--teaser[b-3a6g8r8bu0] {
    border: 1px dashed var(--tab-color, #0098ff);
    background: transparent;
    color: #333;
    opacity: 0.7;
    width: 180px;
    overflow: hidden;
}

a.modul-tab--teaser[b-3a6g8r8bu0],
a.modul-tab--teaser:link[b-3a6g8r8bu0],
a.modul-tab--teaser:visited[b-3a6g8r8bu0] {
    color: #333;
    text-decoration: none;
}

a.modul-tab--teaser:hover[b-3a6g8r8bu0] {
    opacity: 1;
    background: color-mix(in srgb, var(--tab-color, #0098ff) 8%, transparent);
    border-style: dashed;
    color: #333;
}

/* Teaser im aktiven Zustand (Teaser-Seite geoeffnet) */
a.modul-tab--teaser.modul-tab--active[b-3a6g8r8bu0],
a.modul-tab--teaser.modul-tab--active:link[b-3a6g8r8bu0],
a.modul-tab--teaser.modul-tab--active:visited[b-3a6g8r8bu0] {
    opacity: 1;
    border-style: dashed;
    border-width: 2px;
    background: color-mix(in srgb, var(--tab-color, #0098ff) 10%, transparent);
    color: #333;
}

.modul-tab-icon[b-3a6g8r8bu0] {
    font-size: 0.9rem;
    line-height: 1;
    filter: grayscale(1);
}

.modul-tab-label[b-3a6g8r8bu0] {
    line-height: 1;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ── Teaser Dropdown ── */
.modul-teaser-wrap[b-3a6g8r8bu0] {
    position: relative;
    display: inline-flex;
    align-items: center;
    width: 375px;
    flex-shrink: 0;
    margin-left: 8px;
    padding-left: 8px;
    border-left: 1px solid #ccc;
}

/* ── Shuffle-Button (Teaser durchschalten) ── */
.modul-shuffle-btn[b-3a6g8r8bu0] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 1.5px solid #999;
    background: #fff;
    cursor: pointer;
    border-radius: 6px;
    color: #555;
    font-size: 0.9rem;
    transition: all 0.15s;
    padding: 0;
    margin-left: 4px;
    flex-shrink: 0;
    line-height: 1;
}

.modul-shuffle-btn:hover[b-3a6g8r8bu0] {
    background: #eee;
    color: #333;
    border-color: #666;
}

.modul-teaser-toggle[b-3a6g8r8bu0] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    border: 1.5px solid #999;
    background: #fff;
    cursor: pointer;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.78rem;
    font-weight: 600;
    padding: 4px 12px;
    border-radius: 6px;
    color: #555;
    transition: all 0.15s;
    line-height: 1;
    margin-left: 6px;
    flex-shrink: 0;
    white-space: nowrap;
}

.modul-teaser-toggle:hover[b-3a6g8r8bu0] {
    background: #eee;
    color: #333;
    border-color: #666;
}

.modul-teaser-dropdown[b-3a6g8r8bu0] {
    display: none;
    position: fixed;
    z-index: 1000;
    min-width: 240px;
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    box-shadow: 0 6px 20px rgba(0,0,0,.12);
    flex-direction: column;
}

.modul-teaser-dropdown--open[b-3a6g8r8bu0] {
    display: flex;
}

.modul-teaser-dropdown-head[b-3a6g8r8bu0] {
    padding: 8px 12px;
    font-size: 0.72rem;
    font-weight: 700;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 1px solid #f0f0f0;
}

.modul-teaser-dropdown-item[b-3a6g8r8bu0] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    text-decoration: none;
    color: #333;
    font-size: 0.82rem;
    transition: background 0.1s;
}

.modul-teaser-dropdown-item:hover[b-3a6g8r8bu0] {
    background: #f0f4ff;
    text-decoration: none;
    color: #0d6efd;
}

.modul-teaser-dropdown-icon[b-3a6g8r8bu0] {
    font-size: 1rem;
    line-height: 1;
    flex-shrink: 0;
}

.modul-teaser-dropdown-label[b-3a6g8r8bu0] {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.modul-teaser-dropdown-kuerzel[b-3a6g8r8bu0] {
    font-size: 0.7rem;
    font-weight: 600;
    color: #aaa;
    flex-shrink: 0;
}

@media (max-width: 768px) {
    .modul-bar[b-3a6g8r8bu0] { padding: 4px 0.75rem; }
    .modul-teaser-wrap[b-3a6g8r8bu0] { width: 220px; }
}
/* _content/PM.Portal.Web/Components/Layout/PortalLayout.razor.rz.scp.css */
.pm-login-main[b-alqsg58kir] {
    min-height: 100vh;
}
/* _content/PM.Portal.Web/Components/Pages/Admin/Benutzer.razor.rz.scp.css */
/* ── Zweispalten-Layout (identisch mit PM.System.Web) ── */
.bv-layout[b-vgaxzt4peq] { display: grid; grid-template-columns: 300px 1fr; height: calc(100vh - 48px - 48px); min-height: 500px; background: #fff; border: 1px solid #e0e0e0; border-radius: 10px; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,0.07); }
.bv-list-panel[b-vgaxzt4peq] { display: flex; flex-direction: column; border-right: 1px solid #e0e0e0; background: #f8f8f8; min-height: 0; overflow: hidden; }
.bv-list-toolbar[b-vgaxzt4peq] { padding: 12px 12px 8px; border-bottom: 1px solid #e0e0e0; background: #fff; }
.bv-panel-title[b-vgaxzt4peq] { font-family: 'Montserrat', sans-serif; font-size: 0.95rem; font-weight: 700; color: #222d62; margin: 0 0 8px; }
.bv-list-scroll[b-vgaxzt4peq] { flex: 1; overflow-y: auto; min-height: 0; padding: 4px 0; }
.bv-list-empty[b-vgaxzt4peq] { padding: 16px 12px; font-size: 0.82rem; color: #999; }
.bv-list-item[b-vgaxzt4peq] { display: flex; flex-direction: column; padding: 7px 12px; cursor: pointer; border-bottom: 1px solid #efefef; transition: background 0.1s; }
.bv-list-item:hover[b-vgaxzt4peq] { background: #eef4ff; }
.bv-list-active[b-vgaxzt4peq] { background: #dceeff !important; border-left: 3px solid #0098ff; }
.bv-item-user[b-vgaxzt4peq] { font-size: 0.82rem; font-weight: 700; color: #222d62; }
.bv-item-name[b-vgaxzt4peq] { font-size: 0.75rem; color: #666; }
.bv-item-meta[b-vgaxzt4peq] { font-size: 0.68rem; color: #999; margin-top: 2px; }
.bv-list-footer[b-vgaxzt4peq] { padding: 10px 12px; border-top: 1px solid #e0e0e0; background: #fff; display: flex; align-items: center; gap: 10px; }
.bv-list-count[b-vgaxzt4peq] { font-size: 0.75rem; color: #888; margin-left: auto; }
.bv-form-panel[b-vgaxzt4peq] { display: flex; flex-direction: column; overflow: hidden; min-height: 0; }
.bv-placeholder[b-vgaxzt4peq] { display: flex; align-items: center; justify-content: center; height: 100%; color: #aaa; font-size: 0.9rem; padding: 2rem; text-align: center; }
.bv-form-scroll[b-vgaxzt4peq] { flex: 1; overflow-y: auto; min-height: 0; padding: 16px 20px; }
.bv-section[b-vgaxzt4peq] { margin-bottom: 18px; border: 1px solid #e8e8e8; border-radius: 8px; overflow: hidden; }
.bv-section-info[b-vgaxzt4peq] { background: #fafafa; }
.bv-section-head[b-vgaxzt4peq] { background: #f0f0f0; padding: 7px 14px; font-family: 'Montserrat', sans-serif; font-size: 0.78rem; font-weight: 700; color: #444; letter-spacing: 0.4px; text-transform: uppercase; display: flex; align-items: center; gap: 8px; }
.bv-section-hint[b-vgaxzt4peq] { font-weight: 400; text-transform: none; font-size: 0.72rem; color: #888; letter-spacing: 0; }
.bv-grid-2[b-vgaxzt4peq] { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 12px 14px; }
.bv-grid-3[b-vgaxzt4peq] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; padding: 12px 14px; }
.bv-field[b-vgaxzt4peq] { display: flex; flex-direction: column; gap: 3px; }
.bv-label[b-vgaxzt4peq] { font-size: 0.72rem; font-weight: 600; color: #666; white-space: nowrap; }
.bv-actions[b-vgaxzt4peq] { padding: 10px 20px; border-top: 1px solid #e0e0e0; background: #fafafa; display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
.bv-portal-grid[b-vgaxzt4peq] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4px 16px; }
@media (max-width: 768px) { .bv-layout[b-vgaxzt4peq] { grid-template-columns: 1fr; grid-template-rows: 280px 1fr; height: auto; } .bv-list-panel[b-vgaxzt4peq] { border-right: none; border-bottom: 1px solid #e0e0e0; } .bv-grid-2[b-vgaxzt4peq], .bv-grid-3[b-vgaxzt4peq] { grid-template-columns: 1fr; } .bv-portal-grid[b-vgaxzt4peq] { grid-template-columns: 1fr 1fr; } }
/* _content/PM.Portal.Web/Components/Pages/Admin/Index.razor.rz.scp.css */
.admin-dashboard[b-j3ahqul8rq] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 16px;
}

.admin-kpi-card[b-j3ahqul8rq] {
    background: #fff;
    border-radius: 10px;
    padding: 20px;
    text-align: center;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
    border: 1px solid #e8e8e8;
}

.admin-kpi-value[b-j3ahqul8rq] {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    color: #222d62;
    line-height: 1.2;
}

.admin-kpi-label[b-j3ahqul8rq] {
    font-size: 0.82rem;
    color: #666;
    margin-top: 4px;
}

.admin-kpi-sub[b-j3ahqul8rq] {
    font-size: 0.72rem;
    color: #999;
    margin-top: 2px;
}
/* _content/PM.Portal.Web/Components/Pages/Admin/Organigramm.razor.rz.scp.css */
/* ── Organigramm two-column layout ── */
.org-layout[b-fp40boqbco] { display: grid; grid-template-columns: 380px 1fr; height: calc(100vh - 48px - 48px); min-height: 500px; background: #fff; border: 1px solid #e0e0e0; border-radius: 10px; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,0.07); }

/* ── Tree panel (left) ── */
.org-tree-panel[b-fp40boqbco] { display: flex; flex-direction: column; border-right: 1px solid #e0e0e0; background: #f8f8f8; min-height: 0; overflow: hidden; }
.org-tree-toolbar[b-fp40boqbco] { padding: 12px 12px 8px; border-bottom: 1px solid #e0e0e0; background: #fff; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.org-panel-title[b-fp40boqbco] { font-family: 'Montserrat', sans-serif; font-size: 0.95rem; font-weight: 700; color: #222d62; margin: 0; }
.org-tree-actions[b-fp40boqbco] { display: flex; gap: 6px; margin-left: auto; }
.org-tree-scroll[b-fp40boqbco] { flex: 1; overflow-y: auto; min-height: 0; padding: 4px 0; }
.org-tree-empty[b-fp40boqbco] { padding: 16px 12px; font-size: 0.82rem; color: #999; }
.org-tree-footer[b-fp40boqbco] { padding: 8px 12px; border-top: 1px solid #e0e0e0; background: #fff; }
.org-tree-count[b-fp40boqbco] { font-size: 0.75rem; color: #888; }

/* ── Tree nodes ── */
.org-node[b-fp40boqbco] { display: flex; align-items: center; gap: 6px; padding: 6px 8px; cursor: pointer; border-bottom: 1px solid #f0f0f0; transition: background 0.1s; font-size: 0.84rem; }
.org-node:hover[b-fp40boqbco] { background: #eef4ff; }
.org-node-selected[b-fp40boqbco] { background: #dceeff !important; border-left: 3px solid #0098ff; }

.org-expand[b-fp40boqbco] { width: 14px; text-align: center; color: #888; font-size: 0.9rem; flex-shrink: 0; }
.org-label[b-fp40boqbco] { font-weight: 600; color: #222d62; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.org-badge[b-fp40boqbco] { font-size: 0.62rem; padding: 1px 6px; border-radius: 8px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.3px; white-space: nowrap; flex-shrink: 0; }
.org-badge-gf[b-fp40boqbco] { background: #ffeeba; color: #856404; }
.org-badge-bereich[b-fp40boqbco] { background: #d4edda; color: #155724; }
.org-badge-abt[b-fp40boqbco] { background: #d1ecf1; color: #0c5460; }
.org-person[b-fp40boqbco] { font-size: 0.72rem; color: #888; margin-left: auto; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 140px; flex-shrink: 0; }

/* ── Form panel (right) ── */
.org-form-panel[b-fp40boqbco] { display: flex; flex-direction: column; overflow: hidden; min-height: 0; }
.org-placeholder[b-fp40boqbco] { display: flex; align-items: center; justify-content: center; height: 100%; color: #aaa; font-size: 0.9rem; padding: 2rem; text-align: center; }
.org-form-scroll[b-fp40boqbco] { flex: 1; overflow-y: auto; min-height: 0; padding: 16px 20px; }

/* ── Responsive ── */
@media (max-width: 768px) {
    .org-layout[b-fp40boqbco] { grid-template-columns: 1fr; grid-template-rows: 300px 1fr; height: auto; }
    .org-tree-panel[b-fp40boqbco] { border-right: none; border-bottom: 1px solid #e0e0e0; }
}
/* _content/PM.Portal.Web/Components/Pages/Admin/OrganigrammBaum.razor.rz.scp.css */
/* ══════════════════════════════════════════════════════════
   Organigramm – Grafische Baumansicht
   Top-down tree chart with CSS connecting lines
   ══════════════════════════════════════════════════════════ */

/* ── Toolbar ── */
.ob-toolbar[b-0ha07i1gm1] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px 12px;
    border-bottom: 1px solid #e0e0e0;
    background: #fff;
}
.ob-title[b-0ha07i1gm1] {
    font-family: 'Montserrat', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    color: #222d62;
    margin: 0;
}
.ob-loading[b-0ha07i1gm1], .ob-empty[b-0ha07i1gm1] {
    padding: 2rem;
    color: #999;
    font-size: 0.9rem;
    text-align: center;
}

/* ── Scroll container ── */
.ob-scroll[b-0ha07i1gm1] {
    overflow: auto;
    padding: 32px 20px 40px;
    min-height: calc(100vh - 170px);
    background:
        radial-gradient(circle at 50% 0%, rgba(34,45,98,0.03) 0%, transparent 60%);
}

/* ══════════════════════════════════════════════════════════
   TREE STRUCTURE – nested <ul>/<li>
   ══════════════════════════════════════════════════════════ */

.ob-tree[b-0ha07i1gm1] {
    display: flex;
    justify-content: center;
}

.ob-tree ul[b-0ha07i1gm1] {
    display: flex;
    justify-content: center;
    padding: 0;
    margin: 0;
    list-style: none;
    position: relative;
}

.ob-tree li[b-0ha07i1gm1] {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    padding: 28px 8px 0;
}

/* ── Vertical line from horizontal rail UP to card ── */
.ob-tree li[b-0ha07i1gm1]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 2px;
    height: 28px;
    background: #b0bec5;
}

/* ── Horizontal rail connecting siblings ── */
.ob-tree li[b-0ha07i1gm1]::after {
    content: '';
    position: absolute;
    top: 0;
    width: 100%;
    height: 2px;
    background: #b0bec5;
    left: 0;
}

/* First child: rail starts at center → right */
.ob-tree li:first-child[b-0ha07i1gm1]::after {
    left: 50%;
    width: 50%;
}

/* Last child: rail ends at center ← left */
.ob-tree li:last-child[b-0ha07i1gm1]::after {
    left: 0;
    width: 50%;
}

/* Only child: no horizontal rail */
.ob-tree li:only-child[b-0ha07i1gm1]::after {
    display: none;
}

/* Root level: no connectors above */
.ob-tree > ul > li[b-0ha07i1gm1]::before,
.ob-tree > ul > li[b-0ha07i1gm1]::after {
    display: none;
}

/* ── Vertical line from card DOWN to children ── */
.ob-tree li > ul[b-0ha07i1gm1]::before {
    content: '';
    position: absolute;
    top: -1px;
    left: 50%;
    width: 2px;
    height: 28px;
    background: #b0bec5;
}

.ob-tree li > ul[b-0ha07i1gm1] {
    padding-top: 28px;
    position: relative;
}

/* ══════════════════════════════════════════════════════════
   NODE CARDS
   ══════════════════════════════════════════════════════════ */

.ob-card[b-0ha07i1gm1] {
    position: relative;
    z-index: 1;
    min-width: 180px;
    max-width: 260px;
    background: #fff;
    border: 2px solid #d0d8e0;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    overflow: hidden;
    transition: transform 0.15s, box-shadow 0.15s;
}

.ob-card:hover[b-0ha07i1gm1] {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0,0,0,0.12);
}

/* ── Typ header bar ── */
.ob-card-typ[b-0ha07i1gm1] {
    padding: 4px 12px;
    font-size: 0.62rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    text-align: center;
    color: #fff;
}

/* ── Color themes ── */
.ob-typ-gf[b-0ha07i1gm1] {
    border-color: #c9a227;
}
.ob-typ-gf .ob-card-typ[b-0ha07i1gm1] {
    background: linear-gradient(135deg, #d4a017, #c9a227);
}

.ob-typ-bereich[b-0ha07i1gm1] {
    border-color: #43a047;
}
.ob-typ-bereich .ob-card-typ[b-0ha07i1gm1] {
    background: linear-gradient(135deg, #43a047, #388e3c);
}

.ob-typ-abt[b-0ha07i1gm1] {
    border-color: #1976d2;
}
.ob-typ-abt .ob-card-typ[b-0ha07i1gm1] {
    background: linear-gradient(135deg, #1e88e5, #1565c0);
}

/* ── Card content ── */
.ob-card-name[b-0ha07i1gm1] {
    padding: 10px 12px 4px;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.85rem;
    font-weight: 700;
    color: #222d62;
    text-align: center;
    line-height: 1.25;
}

.ob-card-abt[b-0ha07i1gm1] {
    padding: 0 12px 4px;
    font-size: 0.7rem;
    color: #888;
    text-align: center;
}

.ob-card-person[b-0ha07i1gm1],
.ob-card-stellv[b-0ha07i1gm1] {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 3px 12px;
    font-size: 0.74rem;
    color: #444;
}

.ob-card-person[b-0ha07i1gm1] {
    border-top: 1px solid #f0f0f0;
    padding-top: 7px;
}

.ob-card-stellv[b-0ha07i1gm1] {
    color: #888;
    font-style: italic;
    padding-bottom: 10px;
}

.ob-card-person:last-child[b-0ha07i1gm1] {
    padding-bottom: 10px;
}

.ob-card-icon[b-0ha07i1gm1] {
    font-size: 0.55rem;
    flex-shrink: 0;
    line-height: 1;
}

.ob-typ-gf .ob-card-icon[b-0ha07i1gm1]  { color: #c9a227; }
.ob-typ-bereich .ob-card-icon[b-0ha07i1gm1] { color: #43a047; }
.ob-typ-abt .ob-card-icon[b-0ha07i1gm1] { color: #1976d2; }

/* ══════════════════════════════════════════════════════════
   PRINT STYLES
   ══════════════════════════════════════════════════════════ */

@media print {
    .ob-toolbar[b-0ha07i1gm1] { display: none !important; }

    .ob-scroll[b-0ha07i1gm1] {
        overflow: visible !important;
        padding: 0 !important;
        min-height: auto !important;
    }

    .ob-tree[b-0ha07i1gm1] {
        zoom: 0.7; /* Fit wider trees on A4 landscape */
    }

    .ob-card[b-0ha07i1gm1] {
        box-shadow: none !important;
        border-width: 1px;
        break-inside: avoid;
    }

    .ob-card:hover[b-0ha07i1gm1] {
        transform: none;
    }
}
/* _content/PM.Portal.Web/Components/Pages/Admin/Produkte.razor.rz.scp.css */
/* ── Produktportal Admin ── */
.pp-tabs[b-id8zvpevn0] {
    display: flex;
    gap: 4px;
    margin-bottom: 1.25rem;
    border-bottom: 2px solid #e0e0e0;
    padding-bottom: 8px;
}

.pp-tab[b-id8zvpevn0] {
    padding: 6px 18px;
    border: 1px solid #d0d0d0;
    border-radius: 6px 6px 0 0;
    background: #f8f8f8;
    font-size: 0.82rem;
    font-weight: 600;
    color: #555;
    cursor: pointer;
    transition: all 0.12s;
    border-bottom: none;
}

.pp-tab:hover[b-id8zvpevn0] { background: #eef4ff; }

.pp-tab--active[b-id8zvpevn0] {
    background: #0098ff;
    border-color: #0098ff;
    color: #fff;
}

.pp-section[b-id8zvpevn0] {
    margin-bottom: 1.5rem;
}

.pp-edit-form[b-id8zvpevn0] {
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 1rem;
    margin-top: 0.75rem;
}

.pp-color-dot[b-id8zvpevn0] {
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    vertical-align: middle;
    margin-right: 4px;
}

/* ── Katalog-Grid: scrollable with sticky header ── */
.pp-katalog-scroll[b-id8zvpevn0] {
    max-height: 70vh;
    overflow-y: auto;
    overflow-x: auto;
    border: 1px solid #dee2e6;
    border-radius: 6px;
}

.pp-katalog-thead th[b-id8zvpevn0] {
    position: sticky;
    top: 0;
    z-index: 2;
    background: #212529;
}

/* ── Sub-tabs within Seiten-Zuordnung II ── */
.pp-sub-tabs[b-id8zvpevn0] {
    display: flex;
    gap: 6px;
    margin-bottom: 1rem;
}

.pp-sub-tab[b-id8zvpevn0] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 16px;
    border-radius: 6px;
    border: 1px solid #d0d0d0;
    background: #fff;
    font-size: 0.82rem;
    font-weight: 600;
    color: #555;
    cursor: pointer;
    transition: all 0.12s;
}

.pp-sub-tab:hover[b-id8zvpevn0] { background: #eef4ff; }

.pp-sub-tab--active[b-id8zvpevn0] {
    background: #0098ff;
    border-color: #0098ff;
    color: #fff;
}

/* ── Einstellungen grid ── */
.pp-einst-grid[b-id8zvpevn0] {
    max-height: 70vh;
    overflow-y: auto;
    overflow-x: auto;
    border: 1px solid #dee2e6;
    border-radius: 6px;
}

.pp-einst-grid thead th[b-id8zvpevn0] {
    position: sticky;
    top: 0;
    z-index: 2;
    background: #212529;
}

.pp-einst-tag[b-id8zvpevn0] {
    display: inline-block;
    padding: 1px 8px;
    border-radius: 4px;
    font-size: 0.72rem;
    font-weight: 600;
    background: #e9ecef;
    color: #495057;
}

.pp-einst-tag--freitext[b-id8zvpevn0] { background: #d4edda; color: #155724; }
.pp-einst-tag--option[b-id8zvpevn0]   { background: #cce5ff; color: #004085; }
.pp-einst-tag--zahl[b-id8zvpevn0]     { background: #fff3cd; color: #856404; }
.pp-einst-tag--checkbox[b-id8zvpevn0]  { background: #f8d7da; color: #721c24; }

/* ── Modul-Kopfzeilen im Katalog-Grid ── */
.pp-modul-header[b-id8zvpevn0] {
    background: #e8edf3 !important;
}

.pp-modul-header td[b-id8zvpevn0] {
    border-top: 2px solid #b0bec5;
    padding-top: 8px;
}

/* ── Inline-Edit in Seiten-Grid ── */
.pp-inline-edit[b-id8zvpevn0] {
    font-size: 0.78rem !important;
    padding: 2px 6px !important;
    height: auto !important;
    min-height: 0 !important;
    min-width: 100px;
}

/* ── Icon-Picker ── */
.pp-icon-preview[b-id8zvpevn0] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 31px;
    min-width: 32px;
    border: 1px solid #ced4da;
    border-radius: 4px;
    font-size: 1.1rem;
    background: #fff;
}

.pp-icon-picker[b-id8zvpevn0] {
    position: relative;
}

.pp-icon-grid[b-id8zvpevn0] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(36px, 1fr));
    gap: 3px;
    padding: 8px;
    max-height: 200px;
    overflow-y: auto;
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.pp-icon-btn[b-id8zvpevn0] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid transparent;
    border-radius: 4px;
    background: transparent;
    font-size: 1.15rem;
    cursor: pointer;
    transition: all 0.1s;
    padding: 0;
}

.pp-icon-btn:hover[b-id8zvpevn0] {
    background: #eef4ff;
    border-color: #0098ff;
}

.pp-icon-btn--active[b-id8zvpevn0] {
    background: #0098ff;
    border-color: #0098ff;
}
/* _content/PM.Portal.Web/Components/Pages/Admin/SiteMap.razor.rz.scp.css */
.sitemap-controls[b-1r5wwf3u61] {
    display: flex;
    gap: 1.5rem;
    margin-bottom: 1rem;
}

.sitemap-checkbox[b-1r5wwf3u61] {
    display: flex;
    align-items: center;
    gap: .4rem;
    cursor: pointer;
    font-size: .9rem;
}

.sitemap-config-panel[b-1r5wwf3u61] {
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    padding: 1rem;
    margin-bottom: 1rem;
}

.sitemap-config-panel h4[b-1r5wwf3u61] {
    margin: 0 0 .75rem;
    font-size: .95rem;
}

.sitemap-table[b-1r5wwf3u61] {
    width: 100%;
    border-collapse: collapse;
    font-size: .85rem;
}

.sitemap-table th[b-1r5wwf3u61],
.sitemap-table td[b-1r5wwf3u61] {
    padding: .4rem .6rem;
    text-align: left;
    border-bottom: 1px solid #e9ecef;
}

.sitemap-table th[b-1r5wwf3u61] {
    background: #e9ecef;
    font-weight: 600;
}

.sitemap-row--error[b-1r5wwf3u61] {
    background: #fff5f5;
}

.sitemap-row--warn[b-1r5wwf3u61] {
    background: #fffbeb;
}

.sitemap-summary[b-1r5wwf3u61] {
    display: flex;
    gap: 1rem;
    margin-bottom: 1.2rem;
    flex-wrap: wrap;
}

.sitemap-stat[b-1r5wwf3u61] {
    padding: .3rem .7rem;
    background: #e9ecef;
    border-radius: 4px;
    font-size: .85rem;
    font-weight: 500;
}

.sitemap-stat--error[b-1r5wwf3u61] {
    background: #fee2e2;
    color: #dc2626;
}

.sitemap-stat--ok[b-1r5wwf3u61] {
    background: #dcfce7;
    color: #16a34a;
}

.sitemap-badge[b-1r5wwf3u61] {
    display: inline-block;
    padding: .15rem .45rem;
    border-radius: 3px;
    font-size: .75rem;
    font-weight: 500;
    background: #e9ecef;
    color: #495057;
    margin-left: .3rem;
}

.sitemap-badge--error[b-1r5wwf3u61] {
    background: #fee2e2;
    color: #dc2626;
}

.sitemap-badge--warn[b-1r5wwf3u61] {
    background: #fef3c7;
    color: #d97706;
}

.sitemap-badge--ok[b-1r5wwf3u61] {
    background: #dcfce7;
    color: #16a34a;
}

.sitemap-badge--info[b-1r5wwf3u61] {
    background: #dbeafe;
    color: #2563eb;
}

.sitemap-produkt[b-1r5wwf3u61] {
    border: 1px solid #dee2e6;
    border-radius: 6px;
    margin-bottom: .6rem;
    overflow: hidden;
}

.sitemap-produkt--error[b-1r5wwf3u61] {
    border-color: #fca5a5;
}

.sitemap-produkt-header[b-1r5wwf3u61] {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .6rem .8rem;
    cursor: pointer;
    background: #f8f9fa;
    font-size: .9rem;
}

.sitemap-produkt-header:hover[b-1r5wwf3u61] {
    background: #e9ecef;
}

.sitemap-produkt-icon[b-1r5wwf3u61] {
    font-size: 1.1rem;
}

.sitemap-produkt-name[b-1r5wwf3u61] {
    font-weight: 600;
}

.sitemap-produkt-kuerzel[b-1r5wwf3u61] {
    color: #6c757d;
    font-size: .8rem;
}

.sitemap-produkt-count[b-1r5wwf3u61] {
    margin-left: auto;
    color: #6c757d;
    font-size: .8rem;
}

.sitemap-produkt-body[b-1r5wwf3u61] {
    padding: .5rem .8rem .8rem;
}

.sitemap-produkt-meta[b-1r5wwf3u61] {
    font-size: .8rem;
    color: #6c757d;
    margin-bottom: .5rem;
}

.sitemap-produkt-meta a[b-1r5wwf3u61] {
    color: #2563eb;
}

.sitemap-gruppe[b-1r5wwf3u61] {
    margin-bottom: .5rem;
}

.sitemap-gruppe-header[b-1r5wwf3u61] {
    font-size: .8rem;
    font-weight: 600;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: .03em;
    padding: .3rem 0;
    border-bottom: 1px solid #e9ecef;
    margin-bottom: .3rem;
}

.sitemap-seite[b-1r5wwf3u61] {
    display: flex;
    align-items: center;
    gap: .4rem;
    padding: .25rem .4rem;
    font-size: .85rem;
    border-radius: 3px;
}

.sitemap-seite:hover[b-1r5wwf3u61] {
    background: #f1f5f9;
}

.sitemap-seite--error[b-1r5wwf3u61] {
    background: #fff5f5;
}

.sitemap-seite--warn[b-1r5wwf3u61] {
    background: #fffbeb;
}

.sitemap-seite-icon[b-1r5wwf3u61] {
    font-size: .9rem;
    flex-shrink: 0;
}

.sitemap-seite-label[b-1r5wwf3u61] {
    font-weight: 500;
    min-width: 140px;
}

.sitemap-seite-url[b-1r5wwf3u61] {
    color: #6c757d;
    text-decoration: none;
    font-family: monospace;
    font-size: .8rem;
}

.sitemap-seite-url:hover[b-1r5wwf3u61] {
    color: #2563eb;
    text-decoration: underline;
}
/* _content/PM.Portal.Web/Components/Pages/Admin/Zugriffstatistiken.razor.rz.scp.css */
.zugriff-dashboard[b-e3ed5e9b06] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 16px;
}

.zugriff-kpi-card[b-e3ed5e9b06] {
    background: #fff;
    border-radius: 10px;
    padding: 20px;
    text-align: center;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
    border: 1px solid #e8e8e8;
}

.zugriff-kpi-value[b-e3ed5e9b06] {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    color: #222d62;
    line-height: 1.2;
}

.zugriff-kpi-label[b-e3ed5e9b06] {
    font-size: 0.82rem;
    color: #666;
    margin-top: 4px;
}

.zugriff-filter[b-e3ed5e9b06] {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.zugriff-filter-group[b-e3ed5e9b06] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.zugriff-filter-group label[b-e3ed5e9b06] {
    font-size: 0.78rem;
    color: #666;
    font-weight: 500;
}

.zugriff-filter-group input[b-e3ed5e9b06],
.zugriff-filter-group select[b-e3ed5e9b06] {
    min-width: 140px;
}

th.sortable[b-e3ed5e9b06] {
    cursor: pointer;
    user-select: none;
}

th.sortable:hover[b-e3ed5e9b06] {
    background: rgba(255,255,255,0.1);
}

/* ── TOP 10 Ranking ─────────────────────────── */

.top10-list[b-e3ed5e9b06] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.top10-row[b-e3ed5e9b06] {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    padding: 8px 14px;
}

.top10-rang[b-e3ed5e9b06] {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.1rem;
    font-weight: 700;
    color: #888;
    min-width: 28px;
    text-align: center;
}

.top10-rang.top3[b-e3ed5e9b06] {
    color: #222d62;
    font-size: 1.25rem;
}

.top10-info[b-e3ed5e9b06] {
    flex: 1;
    min-width: 0;
}

.top10-url[b-e3ed5e9b06] {
    font-weight: 600;
    font-size: 0.9rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.top10-path[b-e3ed5e9b06] {
    font-size: 0.75rem;
    color: #888;
}

.top10-modul[b-e3ed5e9b06] {
    font-size: 0.7rem;
    background: #e8ecf4;
    color: #222d62;
    padding: 1px 7px;
    border-radius: 4px;
}

.top10-bar-wrap[b-e3ed5e9b06] {
    width: 120px;
    height: 10px;
    background: #eee;
    border-radius: 5px;
    overflow: hidden;
    flex-shrink: 0;
}

.top10-bar[b-e3ed5e9b06] {
    height: 100%;
    background: linear-gradient(90deg, #222d62, #4a6cf7);
    border-radius: 5px;
    transition: width 0.3s ease;
}

.top10-count[b-e3ed5e9b06] {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 0.95rem;
    color: #222d62;
    min-width: 50px;
    text-align: right;
}
/* _content/PM.Portal.Web/Components/Pages/ProduktHome.razor.rz.scp.css */
/* ── ProduktHome page ── */
.ph-container[b-n1bfp2a398] {
    max-width: 1400px;
    margin: 0 auto;
}

.ph-header[b-n1bfp2a398] {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 1.5rem;
}

.ph-icon[b-n1bfp2a398] {
    font-size: 2.5rem;
    line-height: 1;
}

.ph-title[b-n1bfp2a398] {
    margin: 0;
    font-size: 1.5rem;
}

.ph-desc[b-n1bfp2a398] {
    margin: 2px 0 0;
    color: #666;
    font-size: 0.88rem;
}

/* ── Side-by-side columns ── */
.ph-columns[b-n1bfp2a398] {
    display: flex;
    gap: 16px;
    align-items: flex-start;
}

.ph-column[b-n1bfp2a398] {
    flex: 1;
    min-width: 0;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04);
}

.ph-column-header[b-n1bfp2a398] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 18px;
    background: #f8f8f8;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.9rem;
    font-weight: 700;
    color: #333;
    border-bottom: 1px solid #f0f0f0;
}

.ph-column-title[b-n1bfp2a398] {
    flex: 1;
}

.ph-section-count[b-n1bfp2a398] {
    font-size: 0.72rem;
    color: #999;
    font-weight: 600;
    background: #eee;
    padding: 2px 8px;
    border-radius: 10px;
}

/* ── Link list inside column ── */
.ph-column-body[b-n1bfp2a398] {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 6px 0;
}

.ph-link-wrapper[b-n1bfp2a398] {
    display: flex;
    align-items: stretch;
    gap: 0;
}

.ph-link[b-n1bfp2a398] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    min-width: 0;
    padding: 9px 18px;
    color: #333;
    text-decoration: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.82rem;
    font-weight: 600;
    transition: all 0.12s;
    border: none;
    background: transparent;
}

.ph-link:hover[b-n1bfp2a398] {
    background: var(--bereich-bg, #eef6ff);
    color: var(--bereich-color, #0098ff);
    text-decoration: none;
}

.ph-link-icon[b-n1bfp2a398] {
    font-size: 1rem;
    line-height: 1;
    flex-shrink: 0;
}

.ph-link-label[b-n1bfp2a398] {
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ── Favorite toggle button ── */
.ph-fav-btn[b-n1bfp2a398] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    flex-shrink: 0;
    border: none;
    background: transparent;
    color: #ccc;
    font-family: 'Segoe UI Symbol', 'Apple Color Emoji', 'Noto Color Emoji', sans-serif;
    font-size: 0.9rem;
    cursor: pointer;
    transition: all 0.12s;
    padding: 0;
}

.ph-fav-btn:hover[b-n1bfp2a398] {
    background: #fffbe6;
    color: #d4a800;
}

.ph-fav-btn.ph-fav-active[b-n1bfp2a398] {
    color: #d4a800;
}

/* ── Mode toggle (Alle / Favoriten) ── */
.ph-mode-toggle[b-n1bfp2a398] {
    display: flex;
    gap: 6px;
    flex-shrink: 0;
}

.ph-mode-btn[b-n1bfp2a398] {
    padding: 6px 16px;
    border-radius: 6px;
    border: 1px solid #e0e0e0;
    background: #fff;
    color: #666;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.12s;
}

.ph-mode-btn:hover[b-n1bfp2a398] {
    background: #f4f4f4;
    border-color: #ccc;
    color: #333;
}

.ph-mode-btn.active[b-n1bfp2a398] {
    background: var(--bereich-color, #0098ff);
    border-color: var(--bereich-color, #0098ff);
    color: white;
}

.ph-mode-btn.ph-mode-fav.active[b-n1bfp2a398] {
    background: #d4a800;
    border-color: #d4a800;
    color: white;
}

/* ── Alle Seiten tab color ── */
.ph-mode-btn.ph-mode-alle.active[b-n1bfp2a398] {
    background: var(--bereich-color, #0098ff);
    border-color: var(--bereich-color, #0098ff);
    color: white;
}

/* ── Kategorie tab color ── */
.ph-mode-btn.ph-mode-kat.active[b-n1bfp2a398] {
    background: #5b8c3e;
    border-color: #5b8c3e;
    color: white;
}

/* ── Kategorie: Vertikale Panels ── */
.ph-kat-panels[b-n1bfp2a398] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.ph-kat-panel[b-n1bfp2a398] {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04);
}

.ph-kat-panel-header[b-n1bfp2a398] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 18px;
    background: #f8f8f8;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.9rem;
    font-weight: 700;
    color: #333;
    border-bottom: 1px solid #f0f0f0;
}

.ph-kat-panel-header > span:first-of-type[b-n1bfp2a398] {
    flex: 1;
}

/* ── Panel sort buttons (move panels up/down) ── */
.ph-panel-sort-btns[b-n1bfp2a398] {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    margin-right: 4px;
}

.ph-panel-sort-btns button[b-n1bfp2a398] {
    border: none;
    background: transparent;
    cursor: pointer;
    padding: 1px 8px;
    font-size: 0.6rem;
    color: #999;
    line-height: 1;
    transition: all 0.12s;
}

.ph-panel-sort-btns button:hover:not(:disabled)[b-n1bfp2a398] {
    background: #e8e8e8;
    color: #333;
}

.ph-panel-sort-btns button:disabled[b-n1bfp2a398] {
    color: #ddd;
    cursor: default;
}

.ph-kat-panel-body[b-n1bfp2a398] {
    padding: 6px 0;
}

.ph-kat-item[b-n1bfp2a398] {
    display: flex;
    align-items: center;
    gap: 0;
    border-bottom: 1px solid #f5f5f5;
}

.ph-kat-item:last-child[b-n1bfp2a398] {
    border-bottom: none;
}

.ph-sort-btns[b-n1bfp2a398] {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    margin-right: 6px;
}

.ph-sort-btns button[b-n1bfp2a398] {
    border: none;
    background: transparent;
    cursor: pointer;
    padding: 4px 10px;
    font-size: 0.65rem;
    color: #999;
    line-height: 1;
    transition: all 0.12s;
}

.ph-sort-btns button:hover:not(:disabled)[b-n1bfp2a398] {
    background: #eef6ff;
    color: var(--bereich-color, #0098ff);
}

.ph-sort-btns button:disabled[b-n1bfp2a398] {
    color: #e0e0e0;
    cursor: default;
}

/* ── Empty state ── */
.ph-empty[b-n1bfp2a398] {
    text-align: center;
    padding: 3rem 1rem;
    color: #aaa;
    font-size: 0.9rem;
}

/* ── Teaser-Landingpage (inaktive Produkte) ── */
.ph-teaser-container[b-n1bfp2a398] {
    max-width: 800px;
    margin: 2rem auto;
    padding: 2rem;
}

.ph-teaser-header[b-n1bfp2a398] {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 1.5rem;
}

.ph-teaser-icon[b-n1bfp2a398] {
    font-size: 3rem;
    line-height: 1;
}

.ph-teaser-title[b-n1bfp2a398] {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.8rem;
    font-weight: 700;
    color: #222;
    margin: 0;
}

.ph-teaser-beschreibung[b-n1bfp2a398] {
    font-size: 0.95rem;
    line-height: 1.7;
    color: #444;
    margin-bottom: 2rem;
}

.ph-teaser-beschreibung img[b-n1bfp2a398] {
    max-width: 100%;
    border-radius: 8px;
    margin: 1rem 0;
}

.ph-teaser-placeholder[b-n1bfp2a398] {
    font-size: 0.95rem;
    color: #888;
    font-style: italic;
    margin-bottom: 2rem;
}

.ph-teaser-cta[b-n1bfp2a398] {
    text-align: center;
    padding-top: 1rem;
    border-top: 1px solid #eee;
}

.ph-teaser-btn[b-n1bfp2a398] {
    display: inline-block;
    background: #0098ff;
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 12px 32px;
    font-family: 'Montserrat', sans-serif;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.15s;
}

a.ph-teaser-btn[b-n1bfp2a398],
a.ph-teaser-btn:link[b-n1bfp2a398],
a.ph-teaser-btn:visited[b-n1bfp2a398] {
    color: #fff;
    text-decoration: none;
}

.ph-teaser-btn:hover[b-n1bfp2a398] {
    background: #007acc;
}

/* ── Schnittstellen-Anfrage-Formular ── */
.ph-snt-form[b-n1bfp2a398] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    text-align: left;
    max-width: 600px;
    margin: 0 auto;
}

.ph-snt-field[b-n1bfp2a398] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.ph-snt-label[b-n1bfp2a398] {
    font-size: 0.88rem;
    color: #333;
    font-weight: 500;
    line-height: 1.5;
}

.ph-snt-form .form-control[b-n1bfp2a398] {
    font-size: 0.88rem;
}

.ph-snt-form .ph-teaser-btn[b-n1bfp2a398] {
    align-self: center;
    margin-top: 0.5rem;
}

/* ── Responsive: stack columns on small screens ── */
@media (max-width: 768px) {
    .ph-columns[b-n1bfp2a398] {
        flex-direction: column;
    }
    .ph-link[b-n1bfp2a398] { padding: 8px 14px; font-size: 0.78rem; }
}
