/* /Components/Layout/LoginLayout.razor.rz.scp.css */
.login-page[b-4zoaaot2tj] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 32px;
    background: radial-gradient( circle at top, rgba(51, 153, 255, 0.12), transparent 42% ), #f4f6f8;
}

@media (max-width: 640px) {
    .login-page[b-4zoaaot2tj] {
        align-items: flex-start;
        padding: 24px 16px;
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-x2u92ehs8b] {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: radial-gradient( circle at 58% -10%, rgba(75, 159, 222, 0.15), transparent 36rem ), linear-gradient( 180deg, #f8fafc 0%, #f1f5f8 100% );
}

main[b-x2u92ehs8b] {
    flex: 1;
    min-width: 0;
}

.sidebar[b-x2u92ehs8b] {
    border-right: 1px solid rgba(18, 52, 78, 0.07);
    background: linear-gradient( 180deg, rgba(249, 250, 252, 0.98), rgba(242, 246, 249, 0.97) );
    box-shadow: 8px 0 30px rgba(13, 46, 72, 0.035);
    backdrop-filter: blur(16px);
}

.content[b-x2u92ehs8b] {
    padding-top: 2.1rem;
    padding-bottom: 3.5rem;
}

.content-inner[b-x2u92ehs8b] {
    width: 100%;
    max-width: 1600px;
    margin: 0 auto;
}

@media (max-width: 640.98px) {
    .content[b-x2u92ehs8b] {
        padding-top: 1.35rem;
        padding-right: 1rem !important;
        padding-bottom: 2.5rem;
        padding-left: 1rem !important;
    }
}

@media (min-width: 641px) {
    .page[b-x2u92ehs8b] {
        flex-direction: row;
    }

    .sidebar[b-x2u92ehs8b] {
        position: sticky;
        top: 0;
        flex: 0 0 280px;
        width: 280px;
        height: 100vh;
    }

    article[b-x2u92ehs8b] {
        padding-right: 2.25rem !important;
        padding-left: 2.25rem !important;
    }
}

#blazor-error-ui[b-x2u92ehs8b] {
    color-scheme: light only;
    display: none;
    position: fixed;
    right: 1rem;
    bottom: 1rem;
    left: 1rem;
    z-index: 1000;
    box-sizing: border-box;
    padding: 0.9rem 3rem 0.9rem 1.1rem;
    border: 1px solid #efb4b4;
    border-radius: 14px;
    color: #8f2222;
    background: #fff1f1;
    box-shadow: var(--goe-shadow-medium);
}

    #blazor-error-ui .reload[b-x2u92ehs8b] {
        margin-left: 0.4rem;
        color: #8f2222;
        font-weight: 700;
    }

    #blazor-error-ui .dismiss[b-x2u92ehs8b] {
        position: absolute;
        top: 0.75rem;
        right: 0.9rem;
        cursor: pointer;
    }


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 640.98px) {
    .page[b-x2u92ehs8b] {
        min-height: 100dvh;
    }

    .sidebar[b-x2u92ehs8b] {
        position: relative;
        z-index: 100;
        border-right: 0;
        box-shadow: none;
    }

    main[b-x2u92ehs8b] {
        width: 100%;
    }

    .content[b-x2u92ehs8b] {
        padding-top: 1.15rem;
        padding-right: max(0.9rem, env(safe-area-inset-right)) !important;
        padding-bottom: calc(2.5rem + env(safe-area-inset-bottom));
        padding-left: max(0.9rem, env(safe-area-inset-left)) !important;
    }

    .content-inner[b-x2u92ehs8b] {
        min-width: 0;
    }
}


/* ===== v0.9.2 DARK MODE LAYOUT FIX ===== */

:global(html[data-theme="dark"]) .page[b-x2u92ehs8b] {
    background:
        radial-gradient(
            circle at 58% -10%,
            rgba(18, 105, 157, 0.18),
            transparent 36rem),
        linear-gradient(
            180deg,
            #111c24 0%,
            #0f181f 100%) !important;
}

:global(html[data-theme="dark"]) main[b-x2u92ehs8b],
:global(html[data-theme="dark"]) article[b-x2u92ehs8b],
:global(html[data-theme="dark"]) .content[b-x2u92ehs8b],
:global(html[data-theme="dark"]) .content-inner[b-x2u92ehs8b] {
    color: #dce8ef;
    background: transparent !important;
}

:global(html[data-theme="dark"]) .sidebar[b-x2u92ehs8b] {
    border-right-color: #293c49;
    background:
        linear-gradient(
            180deg,
            #17252f 0%,
            #121f28 100%) !important;
    box-shadow: 8px 0 30px rgba(0, 0, 0, 0.15);
}


/* ===== v0.9.2 DARK MODE – LAYOUT FINAL ===== */

.page[data-theme="dark"][b-x2u92ehs8b] {
    color: #dce8ef;
    background:
        radial-gradient(
            circle at 58% -10%,
            rgba(18, 105, 157, 0.16),
            transparent 36rem),
        linear-gradient(
            180deg,
            #101b23 0%,
            #0d171e 100%) !important;
}

.page[data-theme="dark"] .sidebar[b-x2u92ehs8b] {
    border-right-color: #263a47;
    background: #142630 !important;
    box-shadow: 8px 0 30px rgba(0, 0, 0, 0.15);
}

.page[data-theme="dark"] main[b-x2u92ehs8b],
.page[data-theme="dark"] article[b-x2u92ehs8b],
.page[data-theme="dark"] .content[b-x2u92ehs8b],
.page[data-theme="dark"] .content-inner[b-x2u92ehs8b] {
    color: #dce8ef;
    background: transparent !important;
}


/* ============================================================
   v0.9.3 – MOBILE LAYOUT FOUNDATION
   ============================================================ */
@media (max-width: 640.98px) {
    .page[b-x2u92ehs8b] {
        display: block;
        min-height: 100dvh;
    }

    .sidebar[b-x2u92ehs8b] {
        position: sticky;
        top: 0;
        z-index: 190;
        width: 100%;
        border-right: 0;
        background: transparent;
        box-shadow: none;
    }

    main[b-x2u92ehs8b] {
        display: block;
        width: 100%;
        min-width: 0;
    }

    .content[b-x2u92ehs8b] {
        box-sizing: border-box;
        width: 100%;
        padding-top: 1.15rem;
        padding-right: max(1rem, env(safe-area-inset-right)) !important;
        padding-bottom: calc(2.25rem + env(safe-area-inset-bottom));
        padding-left: max(1rem, env(safe-area-inset-left)) !important;
    }

    .content-inner[b-x2u92ehs8b] {
        width: 100%;
        min-width: 0;
        max-width: none;
    }
}


/* ============================================================
   0.9.3d – Native mobile app shell
   ============================================================ */
@media (max-width: 640.98px) {
    .page[b-x2u92ehs8b] {
        display: block;
        min-height: 100dvh;
    }

    .sidebar[b-x2u92ehs8b] {
        position: sticky !important;
        top: 0;
        z-index: 180;
        width: 100%;
        height: auto;
        border: 0;
        background: transparent !important;
        box-shadow: none !important;
    }

    main[b-x2u92ehs8b] {
        display: block;
        width: 100%;
        min-width: 0;
    }

    .content[b-x2u92ehs8b] {
        box-sizing: border-box;
        width: 100%;
        padding-top: 0.9rem;
        padding-right: max(0.9rem, env(safe-area-inset-right)) !important;
        padding-bottom: calc(6.15rem + env(safe-area-inset-bottom)) !important;
        padding-left: max(0.9rem, env(safe-area-inset-left)) !important;
    }

    .content-inner[b-x2u92ehs8b] {
        width: 100%;
        min-width: 0;
        max-width: none;
    }

    #blazor-error-ui[b-x2u92ehs8b] {
        bottom: calc(5.25rem + env(safe-area-inset-bottom));
    }
}

/* ============================================================
   v0.9.6 – Demo mode banner
   ============================================================ */
.demo-mode-banner[b-x2u92ehs8b] {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: 0.65rem;
    width: calc(100% - 4.5rem);
    max-width: 1600px;
    margin: 1rem auto -0.55rem;
    padding: 0.7rem 0.9rem;
    border: 1px solid rgba(12, 128, 193, 0.24);
    border-radius: 14px;
    color: #24485f;
    background: rgba(225, 244, 255, 0.82);
}

.demo-mode-banner strong[b-x2u92ehs8b] {
    flex: 0 0 auto;
    padding: 0.22rem 0.55rem;
    border-radius: 999px;
    color: #ffffff;
    background: #0b8fd3;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.demo-mode-banner span[b-x2u92ehs8b] {
    min-width: 0;
    font-size: 0.88rem;
    font-weight: 650;
}

.page[data-theme="dark"] .demo-mode-banner[b-x2u92ehs8b] {
    border-color: #31566b;
    color: #c9dce7;
    background: rgba(22, 50, 65, 0.92);
}

@media (max-width: 640.98px) {
    .demo-mode-banner[b-x2u92ehs8b] {
        width: calc(100% - 1.8rem);
        margin-top: 0.75rem;
        margin-bottom: -0.25rem;
        padding: 0.62rem 0.72rem;
    }

    .demo-mode-banner span[b-x2u92ehs8b] {
        font-size: 0.8rem;
        line-height: 1.3;
    }
}
/* /Components/Layout/MobileBottomNav.razor.rz.scp.css */
.mobile-bottom-nav[b-hj0lf7ravl],
.mobile-more-layer[b-hj0lf7ravl] {
    display: none;
}

@media (max-width: 640.98px) {
    /*
       Native-like iOS Tab Bar:
       translucent material, compact iconography, no underlines.
    */
    .mobile-bottom-nav[b-hj0lf7ravl] {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 210;
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        box-sizing: border-box;
        height: calc(4.35rem + env(safe-area-inset-bottom));
        padding:
            0.36rem
            max(0.18rem, env(safe-area-inset-right))
            calc(0.28rem + env(safe-area-inset-bottom))
            max(0.18rem, env(safe-area-inset-left));
        border-top: 0.5px solid rgba(35, 62, 82, 0.17);
        background: rgba(247, 250, 252, 0.82);
        box-shadow: 0 -8px 28px rgba(19, 48, 69, 0.06);
        backdrop-filter: saturate(180%) blur(24px);
        -webkit-backdrop-filter: saturate(180%) blur(24px);
        font-family:
            -apple-system,
            BlinkMacSystemFont,
            "SF Pro Text",
            "Roboto",
            sans-serif;
    }

    .mobile-bottom-tab[b-hj0lf7ravl] {
        appearance: none;
        display: grid;
        grid-template-rows: 1.62rem auto;
        place-items: center;
        align-content: center;
        gap: 0.09rem;
        min-width: 0;
        min-height: 3.55rem;
        margin: 0;
        padding: 0.2rem 0.04rem;
        border: 0;
        border-radius: 12px;
        color: #7e8e9b;
        background: transparent;
        font: inherit;
        text-decoration: none !important;
        cursor: pointer;
        touch-action: manipulation;
        -webkit-tap-highlight-color: transparent;
    }

    .mobile-bottom-tab:hover[b-hj0lf7ravl],
    .mobile-bottom-tab:focus[b-hj0lf7ravl],
    .mobile-bottom-tab:active[b-hj0lf7ravl] {
        color: #7e8e9b;
        text-decoration: none !important;
    }

    .mobile-tab-icon[b-hj0lf7ravl] {
        display: grid;
        place-items: center;
        width: 1.62rem;
        height: 1.62rem;
    }

    .mobile-tab-icon img[b-hj0lf7ravl],
    .mobile-tab-icon svg[b-hj0lf7ravl] {
        display: block;
        width: 1.42rem;
        height: 1.42rem;
        object-fit: contain;
    }

    .mobile-tab-icon svg[b-hj0lf7ravl] {
        fill: currentColor;
    }

    .mobile-bottom-tab > span:last-child[b-hj0lf7ravl] {
        max-width: 100%;
        overflow: hidden;
        color: inherit;
        font-size: 0.625rem;
        font-weight: 560;
        line-height: 1;
        letter-spacing: -0.01em;
        text-align: center;
        text-decoration: none !important;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .mobile-bottom-tab.active[b-hj0lf7ravl] {
        color: #0787d1;
        background: transparent;
    }

    .mobile-bottom-tab.active > span:last-child[b-hj0lf7ravl] {
        font-weight: 650;
    }

    .mobile-bottom-tab img[b-hj0lf7ravl] {
        filter:
            brightness(0)
            saturate(100%)
            invert(57%)
            sepia(8%)
            saturate(570%)
            hue-rotate(163deg)
            brightness(91%)
            contrast(86%);
    }

    .mobile-bottom-tab.active img[b-hj0lf7ravl] {
        filter:
            brightness(0)
            saturate(100%)
            invert(45%)
            sepia(97%)
            saturate(1751%)
            hue-rotate(171deg)
            brightness(91%)
            contrast(96%);
    }

    /*
       Bottom Sheet layer. It is present in the DOM but inert/offscreen
       until JS adds mobile-sheet-open to the root element.
    */
    .mobile-more-layer[b-hj0lf7ravl] {
        position: fixed;
        inset: 0;
        z-index: 230;
        display: block;
        visibility: hidden;
        pointer-events: none;
    }

    .mobile-more-backdrop[b-hj0lf7ravl] {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
        border: 0;
        opacity: 0;
        background: rgba(12, 22, 29, 0.28);
        backdrop-filter: blur(2px);
        -webkit-backdrop-filter: blur(2px);
        transition: opacity 260ms ease;
    }

    .mobile-more-sheet[b-hj0lf7ravl] {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        box-sizing: border-box;
        width: 100%;
        max-height: min(78dvh, 650px);
        padding:
            0
            max(1rem, env(safe-area-inset-right))
            calc(1rem + env(safe-area-inset-bottom))
            max(1rem, env(safe-area-inset-left));
        overflow-y: auto;
        overscroll-behavior: contain;
        border: 0;
        border-radius: 28px 28px 0 0;
        color: #15283a;
        background: rgba(249, 251, 253, 0.975);
        box-shadow: 0 -22px 70px rgba(10, 31, 45, 0.20);
        transform: translate3d(0, 104%, 0);
        transition:
            transform 360ms cubic-bezier(.22, .82, .24, 1);
        will-change: transform;
        -webkit-overflow-scrolling: touch;
    }

    html.mobile-sheet-open .mobile-more-layer[b-hj0lf7ravl] {
        visibility: visible;
        pointer-events: auto;
    }

    html.mobile-sheet-open .mobile-more-backdrop[b-hj0lf7ravl] {
        opacity: 1;
    }

    html.mobile-sheet-open .mobile-more-sheet[b-hj0lf7ravl] {
        transform: translate3d(0, 0, 0);
    }

    .mobile-sheet-handle-area[b-hj0lf7ravl] {
        display: grid;
        place-items: center;
        height: 2rem;
        margin: 0 -1rem;
        touch-action: none;
        cursor: grab;
    }

    .mobile-sheet-handle[b-hj0lf7ravl] {
        display: block;
        width: 2.35rem;
        height: 0.3rem;
        border-radius: 999px;
        background: rgba(95, 112, 124, 0.30);
    }

    .mobile-sheet-header[b-hj0lf7ravl] {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 1rem;
        padding: 0.15rem 0 1rem;
    }

    .mobile-sheet-header h2[b-hj0lf7ravl] {
        margin: 0;
        color: #15283a;
        font-size: 1.55rem;
        font-weight: 730;
        line-height: 1.1;
        letter-spacing: -0.035em;
    }

    .mobile-sheet-header p[b-hj0lf7ravl] {
        margin: 0.28rem 0 0;
        color: #788995;
        font-size: 0.78rem;
        line-height: 1.35;
    }

    .mobile-sheet-close[b-hj0lf7ravl] {
        appearance: none;
        display: grid;
        place-items: center;
        width: 2.15rem;
        height: 2.15rem;
        flex: 0 0 2.15rem;
        padding: 0;
        border: 0;
        border-radius: 50%;
        color: #667985;
        background: rgba(115, 132, 143, 0.13);
        cursor: pointer;
        touch-action: manipulation;
    }

    .mobile-sheet-close svg[b-hj0lf7ravl] {
        width: 1.15rem;
        height: 1.15rem;
    }

    .mobile-sheet-menu[b-hj0lf7ravl] {
        overflow: hidden;
        border: 0.5px solid rgba(35, 62, 82, 0.10);
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.86);
    }

    .mobile-sheet-row[b-hj0lf7ravl] {
        display: grid;
        grid-template-columns: 2.4rem minmax(0, 1fr) auto;
        align-items: center;
        gap: 0.75rem;
        min-height: 4.25rem;
        padding: 0.55rem 0.8rem;
        color: #17283a !important;
        text-decoration: none !important;
        -webkit-tap-highlight-color: transparent;
    }

    .mobile-sheet-row + .mobile-sheet-row[b-hj0lf7ravl] {
        border-top: 0.5px solid rgba(38, 64, 83, 0.10);
    }

    .mobile-sheet-row:active[b-hj0lf7ravl] {
        background: rgba(7, 135, 209, 0.055);
    }

    .mobile-sheet-row-icon[b-hj0lf7ravl] {
        display: grid;
        place-items: center;
        width: 2.25rem;
        height: 2.25rem;
        border: 0.5px solid #cfe6f4;
        border-radius: 10px;
        background: #eaf6fc;
    }

    .mobile-sheet-row-icon img[b-hj0lf7ravl] {
        width: 1.25rem;
        height: 1.25rem;
        object-fit: contain;
    }

    .mobile-sheet-row-copy[b-hj0lf7ravl] {
        display: grid;
        gap: 0.12rem;
        min-width: 0;
    }

    .mobile-sheet-row-copy strong[b-hj0lf7ravl] {
        color: #17283a;
        font-size: 0.9rem;
        font-weight: 650;
        line-height: 1.15;
    }

    .mobile-sheet-row-copy small[b-hj0lf7ravl] {
        overflow: hidden;
        color: #81909c;
        font-size: 0.69rem;
        font-weight: 500;
        line-height: 1.2;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .mobile-sheet-chevron[b-hj0lf7ravl] {
        color: #9aa7b0;
        font-size: 1.6rem;
        font-weight: 300;
        line-height: 1;
    }

    .mobile-sheet-secondary[b-hj0lf7ravl] {
        margin-top: 0.85rem;
        overflow: hidden;
        border: 0.5px solid rgba(35, 62, 82, 0.10);
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.86);
    }

    .mobile-sheet-secondary form[b-hj0lf7ravl] {
        margin: 0;
    }

    .mobile-sheet-logout[b-hj0lf7ravl] {
        appearance: none;
        display: grid;
        grid-template-columns: 2.4rem minmax(0, 1fr);
        align-items: center;
        gap: 0.75rem;
        width: 100%;
        min-height: 4rem;
        padding: 0.55rem 0.8rem;
        border: 0;
        color: #c73c45;
        background: transparent;
        font: inherit;
        font-size: 0.9rem;
        font-weight: 620;
        text-align: left;
        cursor: pointer;
    }

    .mobile-sheet-logout .mobile-sheet-row-icon[b-hj0lf7ravl] {
        border-color: #f0d4d7;
        background: #fff1f2;
    }

    .mobile-sheet-logout .mobile-sheet-row-icon img[b-hj0lf7ravl] {
        filter:
            brightness(0)
            saturate(100%)
            invert(35%)
            sepia(48%)
            saturate(1556%)
            hue-rotate(318deg)
            brightness(90%)
            contrast(91%);
    }

    .mobile-sheet-footer[b-hj0lf7ravl] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        padding: 1rem 0 0.2rem;
        color: #8a99a5;
        font-size: 0.68rem;
    }

    .mobile-sheet-footer strong[b-hj0lf7ravl] {
        color: #0787d1;
        font-size: 0.72rem;
    }

    /*
       Dark mode: use a dark translucent material instead of a flat black
       sheet so it still reads like native iOS material.
    */
    :root[data-theme="dark"] .mobile-bottom-nav[b-hj0lf7ravl] {
        border-top-color: rgba(141, 171, 188, 0.15);
        background: rgba(17, 34, 44, 0.84);
        box-shadow: 0 -8px 28px rgba(0, 0, 0, 0.18);
    }

    :root[data-theme="dark"] .mobile-bottom-tab[b-hj0lf7ravl] {
        color: #889da9;
    }

    :root[data-theme="dark"] .mobile-bottom-tab:hover[b-hj0lf7ravl],
    :root[data-theme="dark"] .mobile-bottom-tab:focus[b-hj0lf7ravl] {
        color: #889da9;
    }

    :root[data-theme="dark"] .mobile-bottom-tab img[b-hj0lf7ravl] {
        filter:
            brightness(0)
            saturate(100%)
            invert(68%)
            sepia(7%)
            saturate(691%)
            hue-rotate(157deg)
            brightness(91%)
            contrast(88%);
    }

    :root[data-theme="dark"] .mobile-bottom-tab.active[b-hj0lf7ravl] {
        color: #45b4f0;
    }

    :root[data-theme="dark"] .mobile-bottom-tab.active img[b-hj0lf7ravl] {
        filter:
            brightness(0)
            saturate(100%)
            invert(66%)
            sepia(66%)
            saturate(1527%)
            hue-rotate(168deg)
            brightness(102%)
            contrast(88%);
    }

    :root[data-theme="dark"] .mobile-more-backdrop[b-hj0lf7ravl] {
        background: rgba(0, 0, 0, 0.42);
    }

    :root[data-theme="dark"] .mobile-more-sheet[b-hj0lf7ravl] {
        color: #edf4f8;
        background: rgba(22, 40, 50, 0.975);
        box-shadow: 0 -22px 70px rgba(0, 0, 0, 0.42);
    }

    :root[data-theme="dark"] .mobile-sheet-handle[b-hj0lf7ravl] {
        background: rgba(206, 221, 230, 0.24);
    }

    :root[data-theme="dark"] .mobile-sheet-header h2[b-hj0lf7ravl] {
        color: #edf4f8;
    }

    :root[data-theme="dark"] .mobile-sheet-header p[b-hj0lf7ravl] {
        color: #91a5b2;
    }

    :root[data-theme="dark"] .mobile-sheet-close[b-hj0lf7ravl] {
        color: #b8cad4;
        background: rgba(194, 211, 220, 0.12);
    }

    :root[data-theme="dark"] .mobile-sheet-menu[b-hj0lf7ravl],
    :root[data-theme="dark"] .mobile-sheet-secondary[b-hj0lf7ravl] {
        border-color: rgba(148, 178, 194, 0.13);
        background: rgba(29, 50, 62, 0.92);
    }

    :root[data-theme="dark"] .mobile-sheet-row[b-hj0lf7ravl] {
        color: #edf4f8 !important;
    }

    :root[data-theme="dark"] .mobile-sheet-row + .mobile-sheet-row[b-hj0lf7ravl] {
        border-top-color: rgba(148, 178, 194, 0.12);
    }

    :root[data-theme="dark"] .mobile-sheet-row-icon[b-hj0lf7ravl] {
        border-color: #31566c;
        background: #17394c;
    }

    :root[data-theme="dark"] .mobile-sheet-row-icon img[b-hj0lf7ravl] {
        filter:
            brightness(0)
            saturate(100%)
            invert(83%)
            sepia(13%)
            saturate(698%)
            hue-rotate(165deg)
            brightness(102%)
            contrast(94%);
    }

    :root[data-theme="dark"] .mobile-sheet-row-copy strong[b-hj0lf7ravl] {
        color: #edf4f8;
    }

    :root[data-theme="dark"] .mobile-sheet-row-copy small[b-hj0lf7ravl] {
        color: #93a8b5;
    }

    :root[data-theme="dark"] .mobile-sheet-chevron[b-hj0lf7ravl] {
        color: #718894;
    }

    :root[data-theme="dark"] .mobile-sheet-logout[b-hj0lf7ravl] {
        color: #f09ba3;
    }

    :root[data-theme="dark"] .mobile-sheet-logout .mobile-sheet-row-icon[b-hj0lf7ravl] {
        border-color: #67424a;
        background: #3b252a;
    }

    :root[data-theme="dark"] .mobile-sheet-footer[b-hj0lf7ravl] {
        color: #8298a5;
    }

    html.mobile-sheet-open .mobile-bottom-nav[b-hj0lf7ravl] {
        transform: translateY(
            calc(100% + env(safe-area-inset-bottom)));
        opacity: 0;
        pointer-events: none;
        transition:
            transform 260ms ease,
            opacity 180ms ease;
    }
}

@media (prefers-reduced-motion: reduce) {
    .mobile-more-backdrop[b-hj0lf7ravl],
    .mobile-more-sheet[b-hj0lf7ravl],
    .mobile-bottom-nav[b-hj0lf7ravl] {
        transition: none !important;
    }
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-d7cmm1t5jl] {
    appearance: none;
    position: absolute;
    top: 1.2rem;
    right: 1rem;
    width: 3rem;
    height: 2.5rem;
    margin: 0;
    cursor: pointer;
    border: 1px solid var(--goe-border);
    border-radius: 13px;
    background: linear-gradient(#64778a 0 0) center 33% / 20px 2px no-repeat,
                linear-gradient(#64778a 0 0) center 50% / 20px 2px no-repeat,
                linear-gradient(#64778a 0 0) center 67% / 20px 2px no-repeat,
                #ffffff;
    box-shadow: var(--goe-shadow-small);
}

.top-row[b-d7cmm1t5jl],
.nav-scrollable[b-d7cmm1t5jl] {
    --nav-text-primary: #10243d;
    --nav-text-secondary: #64778a;
    --nav-accent: #0076bd;
    font-family: "Roboto", Arial, sans-serif;
}

.top-row[b-d7cmm1t5jl] {
    display: flex;
    align-items: flex-start;
    min-height: 6.95rem;
    padding: 1.8rem 1.7rem 0;
    background: transparent;
}

.brand-block[b-d7cmm1t5jl] {
    display: grid;
    grid-template-columns: 3rem auto;
    align-items: center;
    gap: 0.82rem;
    color: inherit;
    text-decoration: none;
}

.brand-block:hover[b-d7cmm1t5jl] {
    text-decoration: none;
}

.app-icon[b-d7cmm1t5jl] {
    display: block;
    width: 3rem;
    height: 3rem;
    border: 0;
    border-radius: 14px;
    object-fit: cover;
    box-shadow: 0 8px 22px rgba(0, 112, 184, 0.18);
}

.brand-title[b-d7cmm1t5jl] {
    color: var(--nav-accent);
    font-size: 1.12rem;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.02em;
    white-space: nowrap;
}

.nav-scrollable[b-d7cmm1t5jl] {
    display: none;
    background: transparent;
}

.navbar-toggler:checked ~ .nav-scrollable[b-d7cmm1t5jl] {
    display: flex;
}

.nav[b-d7cmm1t5jl] {
    padding: 0;
}

.nav-group-dashboard[b-d7cmm1t5jl] {
    margin-top: 0.08rem;
}

.nav-group-workflow[b-d7cmm1t5jl],
.nav-group-administration[b-d7cmm1t5jl] {
    position: relative;
    margin-top: 0.9rem;
    padding-top: 0.8rem;
}

.nav-group-workflow[b-d7cmm1t5jl]::before,
.nav-group-administration[b-d7cmm1t5jl]::before {
    position: absolute;
    top: 0;
    right: 1.45rem;
    left: 1.45rem;
    height: 1px;
    content: "";
    background: rgba(18, 52, 78, 0.09);
}

.nav-item[b-d7cmm1t5jl] {
    padding: 0;
    font-size: 0.94rem;
}

.nav-item[b-d7cmm1t5jl]  .nav-link {
    display: grid;
    grid-template-columns: 1.3rem minmax(0, 1fr);
    align-items: center;
    min-height: 3.35rem;
    margin: 0.14rem 1.25rem;
    padding: 0 1.05rem;
    column-gap: 0.95rem;
    border: 1px solid transparent;
    border-radius: 16px;
    color: var(--nav-text-secondary);
    background: transparent;
    font-family: "Roboto", Arial, sans-serif;
    font-size: 0.94rem;
    font-weight: 500;
    line-height: 1.2;
    text-decoration: none;
    transition: color 150ms ease,
                background 150ms ease,
                border-color 150ms ease,
                box-shadow 150ms ease,
                transform 150ms ease;
}

.nav-item[b-d7cmm1t5jl]  .nav-link:hover {
    color: var(--nav-text-primary);
    background: rgba(255, 255, 255, 0.78);
    border-color: rgba(18, 52, 78, 0.07);
    box-shadow: var(--goe-shadow-small);
    transform: translateX(2px);
    text-decoration: none;
}

.nav-item[b-d7cmm1t5jl]  .nav-link.active {
    color: var(--nav-text-primary);
    background: #ffffff;
    border-color: rgba(18, 52, 78, 0.08);
    font-weight: 700;
    box-shadow: 0 8px 22px rgba(13, 46, 72, 0.09);
}

.nav-icon[b-d7cmm1t5jl] {
    display: block;
    width: 1.05rem;
    height: 1.05rem;
    object-fit: contain;
}

.nav-footer[b-d7cmm1t5jl] {
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
    padding: 1rem 1.25rem 1.5rem;
}

.user-panel[b-d7cmm1t5jl] {
    overflow: hidden;
    border: 1px solid rgba(0, 118, 189, 0.13);
    border-radius: 18px;
    background: var(--goe-blue-soft);
    box-shadow: none;
}

.user-panel-main[b-d7cmm1t5jl] {
    display: grid;
    grid-template-columns: 2.75rem minmax(0, 1fr);
    align-items: center;
    gap: 0.85rem;
    min-height: 4.7rem;
    padding: 0.9rem 1rem;
}

.user-avatar[b-d7cmm1t5jl] {
    display: grid;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 14px;
    color: var(--nav-accent);
    background: #ffffff;
    font-size: 0.84rem;
    font-weight: 700;
    box-shadow: 0 5px 16px rgba(13, 46, 72, 0.08);
}

.user-details[b-d7cmm1t5jl] {
    min-width: 0;
}

.user-label[b-d7cmm1t5jl] {
    display: block;
    margin-bottom: 0.12rem;
    color: var(--nav-text-secondary);
    font-size: 0.72rem;
    font-weight: 500;
    line-height: 1.2;
}

.user-name[b-d7cmm1t5jl] {
    display: block;
    color: var(--nav-text-primary);
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.25;
    white-space: normal;
    overflow-wrap: break-word;
}

.logout-form[b-d7cmm1t5jl] {
    display: block;
    width: 100%;
    margin: 0;
    border-top: 1px solid rgba(0, 118, 189, 0.1);
}

.logout-button[b-d7cmm1t5jl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    width: 100%;
    min-height: 2.5rem;
    margin: 0;
    padding: 0.55rem 1rem;
    border: 0;
    color: #61778a;
    background: rgba(255, 255, 255, 0.25);
    font: inherit;
    font-size: 0.78rem;
    font-weight: 650;
    text-align: left;
    cursor: pointer;
    transition: color 150ms ease,
                background-color 150ms ease;
}

.logout-button:hover[b-d7cmm1t5jl] {
    color: var(--nav-text-primary);
    background: rgba(255, 255, 255, 0.68);
}

.logout-button:focus-visible[b-d7cmm1t5jl] {
    outline: 3px solid rgba(0, 118, 189, 0.18);
    outline-offset: -3px;
}

.logout-icon[b-d7cmm1t5jl] {
    display: block;
    width: 1rem;
    height: 1rem;
    flex: 0 0 1rem;
    object-fit: contain;
    opacity: 0.58;
}

.app-information[b-d7cmm1t5jl] {
    display: flex;
    flex-direction: column;
    padding: 0 1rem 0.35rem;
    line-height: 1.35;
}

.footer-title[b-d7cmm1t5jl] {
    color: var(--nav-accent);
    font-size: 0.82rem;
    font-weight: 700;
}

.footer-domain[b-d7cmm1t5jl],
.footer-version[b-d7cmm1t5jl] {
    color: var(--nav-text-secondary);
    font-size: 0.7rem;
    font-weight: 500;
}

.footer-domain[b-d7cmm1t5jl] {
    margin-top: 0.25rem;
}

.footer-version[b-d7cmm1t5jl] {
    margin-top: 0.16rem;
}

.footer-version-row[b-d7cmm1t5jl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.65rem;
    margin-top: 0.16rem;
}

.footer-version-row .footer-version[b-d7cmm1t5jl] {
    margin-top: 0;
}

.footer-maintenance-icon[b-d7cmm1t5jl] {
    display: block;
    width: 1rem;
    height: 1rem;
    flex: 0 0 1rem;
    object-fit: contain;
    opacity: 0.62;
}

@media (min-width: 641px) {
    .navbar-toggler[b-d7cmm1t5jl] {
        display: none;
    }

    .nav-scrollable[b-d7cmm1t5jl] {
        display: flex;
        flex-direction: column;
        height: calc(100vh - 6.95rem);
        overflow-y: auto;
        padding-top: 0.2rem;
    }

    .nav-scrollable .nav[b-d7cmm1t5jl] {
        flex: 1;
    }
}

@media (max-width: 640.98px) {
    .navbar-toggler[b-d7cmm1t5jl] {
        top: 1.4rem;
    }

    .top-row[b-d7cmm1t5jl] {
        align-items: center;
        min-height: 5.5rem;
        padding: 0 1rem;
        border-bottom: 1px solid rgba(18, 52, 78, 0.09);
        background: #ffffff;
        box-shadow: 0 0.35rem 1rem rgba(13, 46, 72, 0.06);
    }

    .brand-block[b-d7cmm1t5jl] {
        grid-template-columns: 2.65rem auto;
    }

    .app-icon[b-d7cmm1t5jl] {
        width: 2.65rem;
        height: 2.65rem;
    }

    .nav-scrollable[b-d7cmm1t5jl] {
        flex-direction: column;
        max-height: calc(100vh - 5.5rem);
        overflow-y: auto;
        border-bottom: 1px solid rgba(18, 52, 78, 0.14);
        background: #f2f7fa;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85),
                    0 0.9rem 1.8rem rgba(13, 46, 72, 0.14);
    }

    .nav-scrollable .nav[b-d7cmm1t5jl] {
        flex: 1;
        padding-top: 0.55rem;
    }

    .nav-group-dashboard[b-d7cmm1t5jl] {
        margin-top: 0;
    }

    .nav-group-workflow[b-d7cmm1t5jl],
    .nav-group-administration[b-d7cmm1t5jl] {
        margin-top: 0.58rem;
        padding-top: 0.58rem;
    }

    .nav-item[b-d7cmm1t5jl]  .nav-link {
        margin-right: 1rem;
        margin-left: 1rem;
    }

    .nav-group-workflow[b-d7cmm1t5jl]::before,
    .nav-group-administration[b-d7cmm1t5jl]::before {
        right: 1.2rem;
        left: 1.2rem;
    }

    .nav-footer[b-d7cmm1t5jl] {
        gap: 0.55rem;
        margin-top: 0.5rem;
        padding: 0.85rem 1rem 1.1rem;
        border-top: 1px solid rgba(18, 52, 78, 0.08);
        background: rgba(255, 255, 255, 0.45);
    }

    .user-panel[b-d7cmm1t5jl] {
        grid-template-columns: 2.45rem minmax(0, 1fr) 2.15rem;
        gap: 0.7rem;
        min-height: 4.15rem;
        padding: 0.72rem 0.78rem;
        background: #e4f2fa;
    }

    .user-avatar[b-d7cmm1t5jl] {
        width: 2.55rem;
        height: 2.55rem;
    }

    .logout-form[b-d7cmm1t5jl],
    .logout-button[b-d7cmm1t5jl] {
        width: 2.15rem;
        height: 2.15rem;
    }

    .app-information[b-d7cmm1t5jl] {
        padding-right: 1rem;
        padding-left: 1rem;
    }
}


@media (max-width: 640.98px) {
    .nav-footer[b-d7cmm1t5jl] {
        gap: 0.8rem;
        padding: 0.9rem 1rem 1.25rem;
    }

    .user-panel-main[b-d7cmm1t5jl] {
        grid-template-columns: 2.6rem minmax(0, 1fr);
        min-height: 4.45rem;
        padding: 0.8rem 0.9rem;
    }

    .user-avatar[b-d7cmm1t5jl] {
        width: 2.6rem;
        height: 2.6rem;
    }

    .logout-button[b-d7cmm1t5jl] {
        min-height: 2.45rem;
        padding-right: 0.9rem;
        padding-left: 0.9rem;
    }

    .app-information[b-d7cmm1t5jl] {
        padding-right: 0.8rem;
        padding-left: 0.8rem;
    }
}


/* v0.9.1 – Navigation nach Platzgewinn wieder etwas großzügiger */
@media (min-width: 641px) {
    .nav-item[b-d7cmm1t5jl]  .nav-link {
        min-height: 3.5rem;
        font-size: 0.98rem;
    }

    .nav-icon[b-d7cmm1t5jl] {
        width: 1.2rem;
        height: 1.2rem;
    }

    .nav-group-workflow[b-d7cmm1t5jl],
    .nav-group-administration[b-d7cmm1t5jl] {
        margin-top: 1rem;
        padding-top: 0.85rem;
    }

    .nav-footer[b-d7cmm1t5jl] {
        padding-bottom: 1.65rem;
    }
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 640.98px) {
    .top-row[b-d7cmm1t5jl] {
        position: sticky;
        top: 0;
        z-index: 120;
        min-height: calc(5.5rem + env(safe-area-inset-top));
        padding-top: env(safe-area-inset-top);
    }

    .navbar-toggler[b-d7cmm1t5jl] {
        position: fixed;
        top: calc(1.4rem + env(safe-area-inset-top));
        right: max(1rem, env(safe-area-inset-right));
        z-index: 140;
        width: 3rem;
        height: 2.75rem;
        min-width: 48px;
        min-height: 44px;
        touch-action: manipulation;
        -webkit-tap-highlight-color: transparent;
    }

    .nav-scrollable[b-d7cmm1t5jl] {
        position: fixed;
        top: calc(5.5rem + env(safe-area-inset-top));
        bottom: 0;
        left: 0;
        z-index: 130;
        display: flex;
        width: min(88vw, 340px);
        max-height: none;
        padding-bottom: env(safe-area-inset-bottom);
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior: contain;
        border-right: 1px solid rgba(18, 52, 78, 0.1);
        border-bottom: 0;
        background: linear-gradient(180deg, #f7fafc 0%, #edf4f8 100%);
        box-shadow: 20px 0 38px rgba(13, 46, 72, 0.16);
        transform: translateX(-105%);
        transition: transform 220ms cubic-bezier(.2, .8, .2, 1);
        -webkit-overflow-scrolling: touch;
    }

    .navbar-toggler:checked ~ .nav-scrollable[b-d7cmm1t5jl] {
        display: flex;
        transform: translateX(0);
        box-shadow:
            20px 0 38px rgba(13, 46, 72, 0.16),
            100vw 0 0 rgba(8, 29, 45, 0.28);
    }

    .nav-scrollable .nav[b-d7cmm1t5jl] {
        padding-top: 0.75rem;
    }

    .nav-item[b-d7cmm1t5jl]  .nav-link {
        min-height: 3.55rem;
        margin: 0.12rem 0.8rem;
        padding-right: 1rem;
        padding-left: 1rem;
        border-radius: 15px;
        font-size: 0.98rem;
        touch-action: manipulation;
        -webkit-tap-highlight-color: transparent;
    }

    .nav-icon[b-d7cmm1t5jl] {
        width: 1.2rem;
        height: 1.2rem;
    }

    .nav-group-workflow[b-d7cmm1t5jl]::before,
    .nav-group-administration[b-d7cmm1t5jl]::before {
        right: 1rem;
        left: 1rem;
    }

    .user-panel-main[b-d7cmm1t5jl] {
        min-height: 4.65rem;
    }

    .logout-button[b-d7cmm1t5jl] {
        min-height: 3rem;
        font-size: 0.84rem;
    }

    .app-information[b-d7cmm1t5jl] {
        padding-bottom: calc(0.35rem + env(safe-area-inset-bottom));
    }
}

@media (prefers-reduced-motion: reduce) {
    .nav-scrollable[b-d7cmm1t5jl] {
        transition: none;
    }
}


/* ===== v0.9.2 DARK MODE – NAVIGATION FINAL ===== */

:root[data-theme="dark"][b-d7cmm1t5jl] {
    --nav-text-primary: #eef5f9;
    --nav-text-secondary: #a9bac6;
    --nav-accent: #39a9ea;
}

:root[data-theme="dark"] .sidebar .top-row[b-d7cmm1t5jl],
:root[data-theme="dark"] .sidebar .nav-scrollable[b-d7cmm1t5jl] {
    background: #142630 !important;
}

:root[data-theme="dark"] .sidebar .nav-group-workflow[b-d7cmm1t5jl]::before,
:root[data-theme="dark"] .sidebar .nav-group-administration[b-d7cmm1t5jl]::before {
    background: rgba(207, 225, 237, 0.09) !important;
}

:root[data-theme="dark"] .sidebar .nav-item .nav-link[b-d7cmm1t5jl] {
    color: #a9bac6 !important;
    background: transparent !important;
}

:root[data-theme="dark"] .sidebar .nav-item .nav-link:hover[b-d7cmm1t5jl] {
    color: #eef5f9 !important;
    border-color: #304652 !important;
    background: #1b3441 !important;
}

:root[data-theme="dark"] .sidebar .nav-item .nav-link.active[b-d7cmm1t5jl] {
    color: #eef5f9 !important;
    border-color: #315469 !important;
    background: #1c4257 !important;
    box-shadow: none !important;
}

:root[data-theme="dark"] .sidebar .nav-icon[b-d7cmm1t5jl],
:root[data-theme="dark"] .sidebar .logout-icon[b-d7cmm1t5jl],
:root[data-theme="dark"] .sidebar .footer-maintenance-icon[b-d7cmm1t5jl] {
    filter:
        brightness(0)
        saturate(100%)
        invert(92%)
        sepia(10%)
        saturate(220%)
        hue-rotate(158deg)
        brightness(104%)
        contrast(94%);
}

:root[data-theme="dark"] .sidebar .nav-link.active .nav-icon[b-d7cmm1t5jl] {
    filter:
        brightness(0)
        saturate(100%)
        invert(67%)
        sepia(62%)
        saturate(1265%)
        hue-rotate(171deg)
        brightness(102%)
        contrast(92%);
}

:root[data-theme="dark"] .sidebar .user-panel[b-d7cmm1t5jl] {
    border-color: #2b4a5b !important;
    background: #183441 !important;
}

:root[data-theme="dark"] .sidebar .user-panel-main[b-d7cmm1t5jl],
:root[data-theme="dark"] .sidebar .logout-button[b-d7cmm1t5jl] {
    background: transparent !important;
}

:root[data-theme="dark"] .sidebar .user-label[b-d7cmm1t5jl],
:root[data-theme="dark"] .sidebar .footer-domain[b-d7cmm1t5jl],
:root[data-theme="dark"] .sidebar .footer-version[b-d7cmm1t5jl] {
    color: #8fa4b2 !important;
}

:root[data-theme="dark"] .sidebar .user-name[b-d7cmm1t5jl] {
    color: #eef5f9 !important;
}

:root[data-theme="dark"] .sidebar .logout-button[b-d7cmm1t5jl] {
    color: #b6c6d0 !important;
    border-top-color: #2b4a5b !important;
}

:root[data-theme="dark"] .sidebar .logout-button:hover[b-d7cmm1t5jl] {
    color: #ffffff !important;
    background: #1f4050 !important;
}

:root[data-theme="dark"] .sidebar .user-avatar[b-d7cmm1t5jl] {
    color: #0785d1 !important;
    background: #f7fbfd !important;
}


/* ============================================================
   v0.9.3 – MOBILE NAVIGATION FOUNDATION
   Robustes Off-Canvas-Menü für iOS/Safari/Blazor Navigation
   ============================================================ */

.mobile-nav-backdrop[b-d7cmm1t5jl] {
    display: none;
}

@media (max-width: 640.98px) {
    .top-row[b-d7cmm1t5jl] {
        position: sticky;
        top: 0;
        z-index: 200;
        align-items: center;
        min-height: calc(4.6rem + env(safe-area-inset-top));
        padding: env(safe-area-inset-top) max(1rem, env(safe-area-inset-right)) 0 max(1rem, env(safe-area-inset-left));
        border-bottom: 1px solid rgba(18, 52, 78, 0.09);
        background: rgba(255,255,255,.98);
        box-shadow: 0 .35rem 1rem rgba(13,46,72,.06);
        backdrop-filter: blur(16px);
    }

    .brand-block[b-d7cmm1t5jl] {
        grid-template-columns: 2.75rem auto;
        gap: .75rem;
    }

    .app-icon[b-d7cmm1t5jl] {
        width: 2.75rem;
        height: 2.75rem;
        border-radius: 13px;
    }

    .brand-title[b-d7cmm1t5jl] {
        font-size: 1.08rem;
    }

    .navbar-toggler[b-d7cmm1t5jl] {
        appearance: none;
        position: fixed;
        top: calc(.9rem + env(safe-area-inset-top));
        right: max(1rem, env(safe-area-inset-right));
        z-index: 230;
        display: grid;
        place-content: center;
        gap: 5px;
        width: 3rem;
        height: 3rem;
        margin: 0;
        padding: 0;
        border: 1px solid #d7e3eb;
        border-radius: 14px;
        color: #64778a;
        background: #fff;
        box-shadow: 0 8px 22px rgba(13,46,72,.08);
        cursor: pointer;
        touch-action: manipulation;
        -webkit-tap-highlight-color: transparent;
    }

    .navbar-toggler span[b-d7cmm1t5jl] {
        display: block;
        width: 21px;
        height: 2px;
        border-radius: 999px;
        background: currentColor;
        transition: transform 180ms ease, opacity 180ms ease;
        transform-origin: center;
    }

    html.mobile-nav-open .navbar-toggler span:nth-child(1)[b-d7cmm1t5jl] {
        transform: translateY(7px) rotate(45deg);
    }

    html.mobile-nav-open .navbar-toggler span:nth-child(2)[b-d7cmm1t5jl] {
        opacity: 0;
    }

    html.mobile-nav-open .navbar-toggler span:nth-child(3)[b-d7cmm1t5jl] {
        transform: translateY(-7px) rotate(-45deg);
    }

    .mobile-nav-backdrop[b-d7cmm1t5jl] {
        position: fixed;
        inset: 0;
        z-index: 210;
        display: block;
        width: 100%;
        height: 100dvh;
        padding: 0;
        border: 0;
        background: rgba(7, 24, 35, .38);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: opacity 200ms ease, visibility 200ms ease;
        -webkit-tap-highlight-color: transparent;
    }

    .nav-scrollable[b-d7cmm1t5jl] {
        position: fixed;
        top: 0;
        bottom: 0;
        left: 0;
        z-index: 220;
        display: flex !important;
        flex-direction: column;
        width: min(86vw, 340px);
        height: 100dvh;
        max-height: none;
        padding-top: calc(5.15rem + env(safe-area-inset-top));
        padding-bottom: env(safe-area-inset-bottom);
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior: contain;
        border: 0;
        border-right: 1px solid rgba(18,52,78,.1);
        background: #f4f8fb;
        box-shadow: 24px 0 48px rgba(10,35,52,.18);
        transform: translate3d(-104%,0,0);
        transition: transform 220ms cubic-bezier(.2,.8,.2,1);
        -webkit-overflow-scrolling: touch;
    }

    html.mobile-nav-open .nav-scrollable[b-d7cmm1t5jl] {
        transform: translate3d(0,0,0);
    }

    html.mobile-nav-open .mobile-nav-backdrop[b-d7cmm1t5jl] {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

    .nav-scrollable .nav[b-d7cmm1t5jl] {
        flex: 1 0 auto;
        padding-top: .35rem;
    }

    .nav-item[b-d7cmm1t5jl]  .nav-link {
        min-height: 3.65rem;
        margin: .12rem .85rem;
        padding: .8rem 1rem;
        border-radius: 15px;
        font-size: 1rem;
        touch-action: manipulation;
    }

    .nav-group-workflow[b-d7cmm1t5jl],
    .nav-group-administration[b-d7cmm1t5jl] {
        margin-top: .7rem;
        padding-top: .7rem;
    }

    .nav-group-workflow[b-d7cmm1t5jl]::before,
    .nav-group-administration[b-d7cmm1t5jl]::before {
        right: 1rem;
        left: 1rem;
    }

    .nav-footer[b-d7cmm1t5jl] {
        flex: 0 0 auto;
        gap: .75rem;
        margin-top: .5rem;
        padding: .85rem 1rem calc(1rem + env(safe-area-inset-bottom));
        border-top: 1px solid rgba(18,52,78,.08);
        background: rgba(255,255,255,.52);
    }

    .user-panel-main[b-d7cmm1t5jl] {
        min-height: 4.3rem;
    }

    .logout-button[b-d7cmm1t5jl] {
        min-height: 3rem;
    }

    :root[data-theme="dark"] .navbar-toggler[b-d7cmm1t5jl] {
        color: #b8c9d4;
        border-color: #31505f;
        background: #18303c;
        box-shadow: none;
    }

    :root[data-theme="dark"] .nav-scrollable[b-d7cmm1t5jl] {
        border-right-color: #294450;
        background: #142630 !important;
        box-shadow: 24px 0 48px rgba(0,0,0,.32);
    }

    :root[data-theme="dark"] .mobile-nav-backdrop[b-d7cmm1t5jl] {
        background: rgba(0,0,0,.56);
    }
}

@media (prefers-reduced-motion: reduce) {
    .navbar-toggler span[b-d7cmm1t5jl],
    .nav-scrollable[b-d7cmm1t5jl],
    .mobile-nav-backdrop[b-d7cmm1t5jl] {
        transition: none !important;
    }
}


/* ============================================================
   0.9.3d – Mobile top bar
   Desktop sidebar remains untouched.
   ============================================================ */
@media (max-width: 640.98px) {
    .top-row[b-d7cmm1t5jl] {
        position: relative;
        z-index: 2;
        display: flex;
        align-items: center;
        min-height: calc(5.1rem + env(safe-area-inset-top));
        padding:
            env(safe-area-inset-top)
            max(1rem, env(safe-area-inset-right))
            0
            max(1rem, env(safe-area-inset-left));
        border-bottom: 0.5px solid rgba(31, 61, 82, 0.09);
        background: rgba(249, 251, 253, 0.91);
        box-shadow: 0 4px 20px rgba(13, 46, 72, 0.035);
        backdrop-filter: saturate(180%) blur(22px);
        -webkit-backdrop-filter: saturate(180%) blur(22px);
    }

    .brand-block[b-d7cmm1t5jl] {
        gap: 0.7rem;
        height: 100%;
        padding: 0;
    }

    .app-icon[b-d7cmm1t5jl] {
        width: 3.15rem;
        height: 3.15rem;
        border-radius: 0.95rem;
    }

    .brand-title[b-d7cmm1t5jl] {
        font-size: 1.15rem;
        font-weight: 720;
        letter-spacing: -0.025em;
    }

    .navbar-toggler[b-d7cmm1t5jl],
    .mobile-nav-backdrop[b-d7cmm1t5jl],
    .nav-scrollable[b-d7cmm1t5jl] {
        display: none !important;
    }

    :global(html[data-theme="dark"]) .top-row[b-d7cmm1t5jl],
    .page[data-theme="dark"] .top-row[b-d7cmm1t5jl] {
        border-bottom-color: rgba(155, 184, 201, 0.11);
        background: rgba(18, 36, 46, 0.91);
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12);
    }
}


/* ============================================================
   0.9.4 – mobiler Header
   ============================================================ */
.mobile-header-refresh[b-d7cmm1t5jl] {
    display: none;
}

@media (max-width: 640.98px) {
    .top-row[b-d7cmm1t5jl] {
        justify-content: space-between !important;
        background: #f7fafc !important;
    }

    .mobile-header-refresh[b-d7cmm1t5jl] {
        appearance: none;
        display: grid;
        place-items: center;
        box-sizing: border-box;
        width: 2.45rem;
        min-width: 2.45rem;
        height: 2.45rem;
        min-height: 2.45rem;
        padding: 0;
        border: 1px solid #d6e3eb;
        border-radius: 12px;
        background: rgba(255,255,255,.82);
        box-shadow: 0 4px 14px rgba(13,46,72,.06);
        -webkit-tap-highlight-color: transparent;
    }

    .mobile-header-refresh img[b-d7cmm1t5jl] {
        width: 1.05rem;
        height: 1.05rem;
        opacity: .72;
    }

    :global(html[data-theme="dark"]) .top-row[b-d7cmm1t5jl],
    .page[data-theme="dark"] .top-row[b-d7cmm1t5jl] {
        background: #17252f !important;
    }

    :global(html[data-theme="dark"]) .mobile-header-refresh[b-d7cmm1t5jl],
    .page[data-theme="dark"] .mobile-header-refresh[b-d7cmm1t5jl] {
        border-color: #304855;
        background: rgba(27,45,56,.9);
    }

    :global(html[data-theme="dark"]) .mobile-header-refresh img[b-d7cmm1t5jl],
    .page[data-theme="dark"] .mobile-header-refresh img[b-d7cmm1t5jl] {
        filter: brightness(0) saturate(100%) invert(83%) sepia(11%) saturate(384%) hue-rotate(157deg) brightness(99%) contrast(91%);
    }
}


/* ============================================================
   0.9.5 – Mobile Header Reload Feedback
   ============================================================ */
@media (max-width: 640.98px) {
    .mobile-header-refresh.is-loading img[b-d7cmm1t5jl] {
        animation: mobile-header-refresh-spin-b-d7cmm1t5jl 0.72s linear infinite;
    }

    .mobile-header-refresh.is-loading[b-d7cmm1t5jl] {
        cursor: wait;
        opacity: 0.72;
    }
}

@keyframes mobile-header-refresh-spin-b-d7cmm1t5jl {
    to { transform: rotate(360deg); }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-wm71ik5muy],
.components-reconnect-repeated-attempt-visible[b-wm71ik5muy],
.components-reconnect-failed-visible[b-wm71ik5muy],
.components-pause-visible[b-wm71ik5muy],
.components-resume-failed-visible[b-wm71ik5muy],
.components-rejoining-animation[b-wm71ik5muy] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show:not(.components-reconnect-retrying):not(.components-reconnect-failed):not(.components-reconnect-paused):not(.components-reconnect-resume-failed)
.components-reconnect-first-attempt-visible[b-wm71ik5muy],
#components-reconnect-modal.components-reconnect-show:not(.components-reconnect-retrying):not(.components-reconnect-failed):not(.components-reconnect-paused):not(.components-reconnect-resume-failed)
.components-rejoining-animation[b-wm71ik5muy] {
    display: block;
}

#components-reconnect-modal.components-reconnect-retrying
.components-reconnect-repeated-attempt-visible[b-wm71ik5muy],
#components-reconnect-modal.components-reconnect-retrying
.components-rejoining-animation[b-wm71ik5muy] {
    display: block;
}

#components-reconnect-modal.components-reconnect-failed
.components-reconnect-failed-visible[b-wm71ik5muy] {
    display: block;
}

#components-reconnect-modal.components-reconnect-paused
.components-pause-visible[b-wm71ik5muy] {
    display: block;
}

#components-reconnect-modal.components-reconnect-resume-failed
.components-resume-failed-visible[b-wm71ik5muy] {
    display: block;
}

#components-reconnect-modal[b-wm71ik5muy] {
    width: min(calc(100vw - 32px), 500px);
    margin: auto;
    padding: 0;
    overflow: visible;
    border: 0;
    border-radius: 24px;
    outline: 0;
    background: transparent;
    color: #17283a;
    box-shadow: none;
    opacity: 0;
}

    #components-reconnect-modal:focus[b-wm71ik5muy],
    #components-reconnect-modal:focus-visible[b-wm71ik5muy] {
        outline: 0;
    }

    #components-reconnect-modal[open][b-wm71ik5muy] {
        animation: reconnect-slide-in-b-wm71ik5muy 360ms cubic-bezier(0.16, 1, 0.3, 1) both, reconnect-fade-in-b-wm71ik5muy 180ms ease both;
    }

    #components-reconnect-modal[b-wm71ik5muy]::backdrop {
        background: rgba(19, 39, 58, 0.42);
        backdrop-filter: blur(5px);
        animation: reconnect-backdrop-in-b-wm71ik5muy 180ms ease both;
    }

.reconnect-card[b-wm71ik5muy] {
    padding: 38px 40px 36px;
    overflow: hidden;
    border: 1px solid rgba(15, 35, 55, 0.07);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.985);
    box-shadow: 0 26px 72px rgba(10, 45, 75, 0.17), 0 5px 18px rgba(10, 45, 75, 0.08);
}

.reconnect-brand[b-wm71ik5muy] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin-bottom: 30px;
}

.reconnect-logo[b-wm71ik5muy] {
    width: 56px;
    height: 56px;
    flex: 0 0 56px;
    border-radius: 14px;
    object-fit: cover;
}

.reconnect-title[b-wm71ik5muy] {
    color: #0874ba;
    font-size: 1.75rem;
    font-weight: 760;
    line-height: 1.05;
    letter-spacing: -0.04em;
}

.reconnect-content[b-wm71ik5muy] {
    text-align: center;
}

    .reconnect-content h2[b-wm71ik5muy] {
        margin: 0 0 11px;
        color: #17283a;
        font-size: 1.28rem;
        font-weight: 740;
        line-height: 1.25;
        letter-spacing: -0.02em;
    }

    .reconnect-content p[b-wm71ik5muy] {
        margin: 0;
        color: #687788;
        font-size: 0.98rem;
        line-height: 1.55;
    }

.reconnect-animation[b-wm71ik5muy] {
    position: relative;
    width: 42px;
    height: 42px;
    margin: 0 auto 24px;
}

    .reconnect-animation span[b-wm71ik5muy] {
        position: absolute;
        inset: 50%;
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #0785d1;
        box-shadow: 0 0 0 0 rgba(7, 133, 209, 0.2);
        transform: translate(-50%, -50%);
        animation: reconnect-pulse-b-wm71ik5muy 1.7s ease-out infinite;
    }

        .reconnect-animation span:nth-child(2)[b-wm71ik5muy] {
            animation-delay: 0.65s;
        }

.reconnect-button[b-wm71ik5muy] {
    width: 100%;
    min-height: 54px;
    margin-top: 24px;
    padding: 0.7rem 1.2rem;
    border: 0;
    border-radius: 13px;
    outline: 0;
    background: linear-gradient(135deg, #078bd7, #006eb4);
    color: #ffffff;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 10px 24px rgba(0, 112, 184, 0.22);
    transition: transform 150ms ease, box-shadow 150ms ease;
}

    .reconnect-button:hover[b-wm71ik5muy] {
        transform: translateY(-1px);
        box-shadow: 0 14px 30px rgba(0, 112, 184, 0.28);
    }

    .reconnect-button:active[b-wm71ik5muy] {
        transform: translateY(0);
    }

    .reconnect-button:focus-visible[b-wm71ik5muy] {
        outline: 0;
        box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.16), 0 10px 24px rgba(0, 112, 184, 0.22);
    }

@keyframes reconnect-slide-in-b-wm71ik5muy {
    from {
        transform: translateY(18px) scale(0.985);
    }

    to {
        transform: translateY(0) scale(1);
    }
}

@keyframes reconnect-fade-in-b-wm71ik5muy {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes reconnect-backdrop-in-b-wm71ik5muy {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes reconnect-pulse-b-wm71ik5muy {
    0% {
        opacity: 1;
        box-shadow: 0 0 0 0 rgba(7, 133, 209, 0.28);
        transform: translate(-50%, -50%) scale(0.9);
    }

    70% {
        opacity: 0.7;
        box-shadow: 0 0 0 16px rgba(7, 133, 209, 0);
        transform: translate(-50%, -50%) scale(1);
    }

    100% {
        opacity: 0;
        box-shadow: 0 0 0 20px rgba(7, 133, 209, 0);
        transform: translate(-50%, -50%) scale(1.05);
    }
}

@media (max-width: 640px) {
    #components-reconnect-modal[b-wm71ik5muy] {
        width: min(calc(100vw - 24px), 500px);
    }

    .reconnect-card[b-wm71ik5muy] {
        padding: 32px 22px 28px;
        border-radius: 20px;
    }

    .reconnect-logo[b-wm71ik5muy] {
        width: 50px;
        height: 50px;
        flex-basis: 50px;
        border-radius: 13px;
    }

    .reconnect-title[b-wm71ik5muy] {
        font-size: 1.6rem;
    }

    .reconnect-content h2[b-wm71ik5muy] {
        font-size: 1.16rem;
    }

    .reconnect-content p[b-wm71ik5muy] {
        font-size: 0.94rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    #components-reconnect-modal[open][b-wm71ik5muy],
    #components-reconnect-modal[b-wm71ik5muy]::backdrop,
    .reconnect-animation span[b-wm71ik5muy],
    .reconnect-button[b-wm71ik5muy] {
        animation: none;
        transition: none;
    }
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 640.98px) {
    .reconnect-dialog[b-wm71ik5muy] {
        box-sizing: border-box;
        width: calc(100vw - 1.5rem);
        max-width: 420px;
        max-height: calc(100dvh - 1.5rem);
        padding: 1.25rem;
        overflow-y: auto;
        border-radius: 20px;
    }

    .reconnect-dialog button[b-wm71ik5muy] {
        min-height: 48px;
    }
}
/* /Components/Pages/Billing.razor.rz.scp.css */
.billing-header-actions[b-fg2059adrx] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

    .billing-header-actions .print-button[b-fg2059adrx],
    .complete-billing-button[b-fg2059adrx] {
        min-height: 2.8rem;
    }

.complete-billing-button[b-fg2059adrx] {
    border: 0;
    border-radius: 0.5rem;
    padding: 0.65rem 1rem;
    background: #198754;
    color: #ffffff;
    font-weight: 600;
    text-align: center;
    cursor: pointer;
}

    .complete-billing-button:hover:not(:disabled)[b-fg2059adrx] {
        background: #157347;
    }

    .complete-billing-button:disabled[b-fg2059adrx] {
        background: #dfe7ee;
        color: #8a99aa;
        cursor: not-allowed;
    }

.billing-status[b-fg2059adrx] {
    margin-bottom: 1rem;
    padding: 0.85rem 1rem;
    border-radius: 0.5rem;
}

.billing-status-success[b-fg2059adrx] {
    border: 1px solid #a3cfbb;
    background: #d1e7dd;
    color: #0a3622;
}

.billing-status-error[b-fg2059adrx] {
    border: 1px solid #f1aeb5;
    background: #f8d7da;
    color: #58151c;
}

.billing-status-info[b-fg2059adrx] {
    border: 1px solid #9eeaf9;
    background: #cff4fc;
    color: #055160;
}

.billing-document[b-fg2059adrx] {
    break-inside: avoid;
}

.billing-document-header[b-fg2059adrx] {
    margin-bottom: 1rem;
}

    .billing-document-header h2[b-fg2059adrx] {
        margin: 0 0 0.25rem;
    }

    .billing-document-header p[b-fg2059adrx] {
        margin: 0;
    }

.billing-table-shell[b-fg2059adrx] {
    width: 100%;
    margin-bottom: 1rem;
    border: 1px solid #cbd5dd;
    border-radius: 0.8rem;
    overflow: hidden;
    background: #ffffff;
}

.billing-master-data[b-fg2059adrx],
.billing-table[b-fg2059adrx],
.billing-summary-table[b-fg2059adrx] {
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    background: #ffffff;
}

/* ---------------- Stammdatenkopf ---------------- */

.billing-master-data[b-fg2059adrx] {
    table-layout: fixed;
}

    .billing-master-data col.billing-master-label-left[b-fg2059adrx] {
        width: 20%;
    }

    .billing-master-data col.billing-master-value-left[b-fg2059adrx] {
        width: 43%;
    }

    .billing-master-data col.billing-master-label-right[b-fg2059adrx] {
        width: 17%;
    }

    .billing-master-data col.billing-master-value-right[b-fg2059adrx] {
        width: 20%;
    }

    .billing-master-data th[b-fg2059adrx],
    .billing-master-data td[b-fg2059adrx] {
        box-sizing: border-box;
        height: 2.75rem;
        padding: 0.45rem 1rem;
        border: 0;
        border-right: 1px solid #d7dfe6;
        border-bottom: 1px solid #d7dfe6;
        vertical-align: middle;
        background: #ffffff;
    }

    .billing-master-data th[b-fg2059adrx] {
        color: #5f6f7f;
        background: #f4f7f9;
        font-weight: 700;
        white-space: nowrap;
        overflow: visible;
    }

    .billing-master-data tr > :last-child[b-fg2059adrx] {
        border-right: 0;
    }

    .billing-master-data tbody > tr:last-child > th[b-fg2059adrx],
    .billing-master-data tbody > tr:last-child > td[b-fg2059adrx] {
        border-bottom: 0;
    }

    /* Unternehmen auf Höhe des Firmennamens, nicht mittig über beide Zeilen. */
    .billing-master-data .billing-company-label[b-fg2059adrx] {
        vertical-align: top;
        padding-top: 0.45rem;
    }

    /* Firmenname + Anschrift: EINE Zelle, zwei gleich hohe interne Zeilen, ohne Trennlinie. */
    .billing-master-data td.billing-company-value[b-fg2059adrx] {
        height: 5.5rem;
        padding: 0 !important;
    }

.billing-company-stack[b-fg2059adrx] {
    display: grid;
    grid-template-rows: 2.75rem 2.75rem;
    height: 5.5rem;
}

.billing-company-name[b-fg2059adrx],
.billing-company-address[b-fg2059adrx] {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    padding: 0.45rem 1rem;
    border: 0;
}

.billing-master-shell[b-fg2059adrx] {
    background: #f4f7f9;
}

/* ---------------- Ladevorgangstabelle ---------------- */

.billing-sessions-shell[b-fg2059adrx] {
    background: #edf1f4;
}

.billing-table[b-fg2059adrx] {
    table-layout: fixed;
}

    .billing-table col.billing-col-id[b-fg2059adrx] {
        width: 15%;
    }

    .billing-table col.billing-col-start[b-fg2059adrx] {
        width: 21%;
    }

    .billing-table col.billing-col-end[b-fg2059adrx] {
        width: 21%;
    }

    .billing-table col.billing-col-duration[b-fg2059adrx] {
        width: 16%;
    }

    .billing-table col.billing-col-energy[b-fg2059adrx] {
        width: 13.5%;
    }

    .billing-table col.billing-col-cost[b-fg2059adrx] {
        width: 13.5%;
    }

    .billing-table th[b-fg2059adrx],
    .billing-table td[b-fg2059adrx] {
        box-sizing: border-box;
        padding: 0.48rem 1rem;
        border: 0;
        border-bottom: 1px solid #d7dfe6;
        vertical-align: middle;
        white-space: nowrap;
    }

    .billing-table thead th[b-fg2059adrx] {
        color: #5f6f7f;
        background: #edf1f4;
        font-weight: 700;
    }

    .billing-table tbody td[b-fg2059adrx] {
        background: #ffffff;
    }

    .billing-table tbody > tr:last-child > td[b-fg2059adrx] {
        border-bottom: 0;
    }

    /* Titel zentriert; rechtsbündige Zahl in einem zentrierten festen Block. */
    .billing-table thead .billing-energy-column[b-fg2059adrx],
    .billing-table thead .billing-cost-column[b-fg2059adrx],
    .billing-table tbody .billing-energy-column[b-fg2059adrx],
    .billing-table tbody .billing-cost-column[b-fg2059adrx] {
        text-align: center;
    }

.billing-number-value[b-fg2059adrx] {
    display: inline-block;
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.billing-energy-value[b-fg2059adrx] {
    width: 7rem;
}

.billing-cost-value[b-fg2059adrx] {
    width: 4.75rem;
}

.billing-session-nonbillable td[b-fg2059adrx] {
    color: #718091;
    background: #f8fafb;
}

.billing-nonbillable-label[b-fg2059adrx] {
    display: inline-flex;
    align-items: center;
    min-height: 1.7rem;
    padding: 0.2rem 0.55rem;
    border: 1px solid #d8e0e7;
    border-radius: 999px;
    color: #5f6f7f;
    background: #f3f6f8;
    font-size: 0.82rem;
    font-weight: 650;
    line-height: 1.2;
    white-space: nowrap;
}

/* ---------------- Abschlussblock ---------------- */

.billing-post-table-block[b-fg2059adrx] {
    break-inside: avoid;
    page-break-inside: avoid;
}

.billing-continuation-header[b-fg2059adrx] {
    display: none;
}

.billing-summary-table[b-fg2059adrx] {
    margin-bottom: 1rem;
    border: 1px solid #cbd5dd;
    border-collapse: collapse;
}

    .billing-summary-table th[b-fg2059adrx],
    .billing-summary-table td[b-fg2059adrx] {
        padding: 0.6rem 0.8rem;
        border: 1px solid #d7dfe6;
        vertical-align: middle;
    }

    .billing-summary-table th[b-fg2059adrx] {
        color: #5f6f7f;
        background: #f4f7f9;
        font-weight: 700;
    }

.billing-summary-count[b-fg2059adrx] {
    margin-left: 0.35rem;
    color: #6b7785;
    font-size: 0.9em;
}

.calculation-box[b-fg2059adrx] {
    margin-bottom: 1rem;
    background: #ffffff;
}

.billing-footer dl[b-fg2059adrx] {
    margin: 0;
}

.billing-footer dt[b-fg2059adrx],
.billing-footer dd[b-fg2059adrx] {
    margin: 0;
}

.billing-footer-export-row[b-fg2059adrx] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 2rem;
    margin-top: 0.75rem;
}

.billing-footer-export-date[b-fg2059adrx] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
}

.billing-footer-app[b-fg2059adrx] {
    margin-left: auto;
    white-space: nowrap;
    text-align: right;
}

@media (max-width: 900px) {
    .billing-header-actions[b-fg2059adrx] {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
    }

        .billing-header-actions .print-button[b-fg2059adrx],
        .complete-billing-button[b-fg2059adrx] {
            width: 100%;
            min-height: 3.5rem;
            margin: 0;
        }

    .billing-footer-export-row[b-fg2059adrx] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.35rem;
    }

    .billing-footer-app[b-fg2059adrx] {
        margin-left: 0;
        text-align: left;
    }
}

/* ---------------- PDF / Druck ---------------- */

@media print {
    @page {
        size: A4 portrait;
        margin: 10mm 10mm 9mm;
    }

    .billing-document[b-fg2059adrx] {
        break-inside: auto;
        font-size: 9.5pt;
        line-height: 1.2;
    }

    .billing-document-header[b-fg2059adrx] {
        margin-bottom: 6mm;
    }

        .billing-document-header h2[b-fg2059adrx] {
            margin: 0 0 1.5mm;
            font-size: 18pt;
            line-height: 1.1;
        }

        .billing-document-header p[b-fg2059adrx] {
            margin: 0;
            font-size: 10.5pt;
        }

    .billing-table-shell[b-fg2059adrx] {
        margin-bottom: 5mm;
        border: 0.45mm solid #8f9aa5;
        border-radius: 0;
        overflow: visible;
        background: #ffffff;
    }

    .billing-master-data[b-fg2059adrx],
    .billing-table[b-fg2059adrx] {
        border-collapse: separate;
        border-spacing: 0;
    }

        .billing-master-data th[b-fg2059adrx],
        .billing-master-data td[b-fg2059adrx] {
            height: 8.4mm;
            padding: 1.55mm 2.5mm;
            border: 0;
            border-right: 0.35mm solid #9da8b2;
            border-bottom: 0.35mm solid #9da8b2;
            font-size: 9.3pt;
            line-height: 1.2;
            vertical-align: middle;
            background: #ffffff;
        }

        .billing-master-data th[b-fg2059adrx] {
            color: #5f6b77;
            background: #dfe2e5;
            font-weight: 700;
            -webkit-print-color-adjust: exact;
            print-color-adjust: exact;
        }

        .billing-master-data tr > :last-child[b-fg2059adrx] {
            border-right: 0;
        }

        .billing-master-data tbody > tr:last-child > th[b-fg2059adrx],
        .billing-master-data tbody > tr:last-child > td[b-fg2059adrx] {
            border-bottom: 0;
        }

        .billing-master-data .billing-company-label[b-fg2059adrx] {
            vertical-align: top;
            padding-top: 1.55mm;
        }

        .billing-master-data td.billing-company-value[b-fg2059adrx] {
            height: 16.8mm;
            padding: 0 !important;
        }

    .billing-company-stack[b-fg2059adrx] {
        grid-template-rows: 8.4mm 8.4mm;
        height: 16.8mm;
    }

    .billing-company-name[b-fg2059adrx],
    .billing-company-address[b-fg2059adrx] {
        padding: 1.55mm 2.5mm;
    }

    .billing-table[b-fg2059adrx] {
        page-break-inside: auto;
    }

        .billing-table thead[b-fg2059adrx] {
            display: table-header-group;
        }

        .billing-table tr[b-fg2059adrx] {
            page-break-inside: avoid;
            break-inside: avoid;
        }

        .billing-table th[b-fg2059adrx],
        .billing-table td[b-fg2059adrx] {
            padding: 1.6mm 2mm;
            border: 0;
            border-bottom: 0.32mm solid #b0bac3;
            font-size: 8.8pt;
            line-height: 1.15;
            white-space: nowrap;
        }

        .billing-table thead th[b-fg2059adrx] {
            color: #5f6b77;
            background: #dfe2e5;
            border-bottom: 0.38mm solid #8f9aa5;
            font-weight: 700;
            -webkit-print-color-adjust: exact;
            print-color-adjust: exact;
        }

        .billing-table tbody td[b-fg2059adrx] {
            background: #ffffff;
        }

        .billing-table tbody > tr:last-child > td[b-fg2059adrx] {
            border-bottom: 0;
        }

        .billing-table thead .billing-energy-column[b-fg2059adrx],
        .billing-table thead .billing-cost-column[b-fg2059adrx],
        .billing-table tbody .billing-energy-column[b-fg2059adrx],
        .billing-table tbody .billing-cost-column[b-fg2059adrx] {
            text-align: center;
        }

    .billing-number-value[b-fg2059adrx] {
        display: inline-block;
        text-align: right;
        font-variant-numeric: tabular-nums;
    }

    .billing-energy-value[b-fg2059adrx] {
        width: 21mm;
    }

    .billing-cost-value[b-fg2059adrx] {
        width: 14mm;
    }

    .billing-session-nonbillable td[b-fg2059adrx] {
        color: #5f6f7f;
        background: #f6f7f8;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .billing-nonbillable-label[b-fg2059adrx] {
        min-height: auto;
        padding: 0;
        border: 0;
        border-radius: 0;
        color: #5f6f7f;
        background: transparent;
        font-size: 8.2pt;
        font-weight: 600;
    }

    .billing-post-table-block[b-fg2059adrx] {
        page-break-inside: avoid;
        break-inside: avoid;
    }

    .billing-continuation-header[b-fg2059adrx] {
        display: none;
    }

    .billing-post-table-block.force-new-page[b-fg2059adrx] {
        page-break-before: always;
        break-before: page;
    }

    .billing-post-table-block.show-continuation-header .billing-continuation-header[b-fg2059adrx] {
        display: block;
        margin-bottom: 6mm;
        page-break-after: avoid;
        break-after: avoid;
    }

    .billing-summary-table[b-fg2059adrx] {
        width: 100%;
        margin-bottom: 5mm;
        border: 0.35mm solid #9da8b2;
        border-collapse: collapse;
    }

        .billing-summary-table th[b-fg2059adrx],
        .billing-summary-table td[b-fg2059adrx] {
            padding: 1.8mm 2.5mm;
            border: 0.35mm solid #9da8b2;
            font-size: 9.2pt;
            line-height: 1.15;
        }

        .billing-summary-table th[b-fg2059adrx] {
            color: #5f6b77;
            background: #dfe2e5;
            font-weight: 700;
            -webkit-print-color-adjust: exact;
            print-color-adjust: exact;
        }

    .billing-summary-count[b-fg2059adrx] {
        margin-left: 1.5mm;
        font-size: 8.5pt;
    }

    .calculation-box[b-fg2059adrx] {
        margin-bottom: 5mm;
        padding: 2.5mm 3mm;
        font-size: 9.2pt;
        line-height: 1.2;
        page-break-inside: avoid;
        break-inside: avoid;
        background: #ffffff;
    }

    .billing-footer[b-fg2059adrx] {
        padding: 3mm;
        font-size: 8.8pt;
        line-height: 1.25;
        page-break-inside: avoid;
        break-inside: avoid;
    }

        .billing-footer dl[b-fg2059adrx] {
            display: grid;
            grid-template-columns: 28mm minmax(0, 1fr);
            gap: 1.2mm 3mm;
            margin: 0;
        }

        .billing-footer dt[b-fg2059adrx],
        .billing-footer dd[b-fg2059adrx] {
            margin: 0;
        }

    .billing-footer-export-row[b-fg2059adrx] {
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        gap: 5mm;
        margin-top: 3mm;
    }

    .billing-footer-export-date[b-fg2059adrx] {
        display: flex;
        align-items: baseline;
        gap: 2mm;
    }

    .billing-footer-app[b-fg2059adrx] {
        margin-left: auto;
        white-space: nowrap;
        text-align: right;
    }
}


/* ============================================================
   v0.8.9 – WEB-ONLY Feinschliff
   WICHTIG: Dieser Block gilt ausschließlich für die Webansicht.
   Der PDF-/Druckbereich bleibt vollständig unverändert.
   ============================================================ */

@media screen {

    /* --------------------------------------------------------
       Stammdatenkopf
       -------------------------------------------------------- */

    /*
       "Unternehmen" sitzt in einer rowspan-Zelle.
       Der Text wird exakt auf die optische Höhe des Firmennamens
       in der ersten internen Zeile gesetzt.
    */
    .billing-master-data .billing-company-label[b-fg2059adrx] {
        vertical-align: top;
        padding-top: 0.65rem;
    }

    /*
       Ausschließlich diese beiden horizontalen Web-Linien werden
       explizit mit derselben 1-px-Linie gezeichnet:
       1) Unterkante Unternehmen/Firmenanschrift -> Ladestandort
       2) Fahrzeug -> Kennzeichen

       box-shadow verhindert dabei unterschiedliche Browser-
       Darstellung an rowspan-/Tabellengrenzen.
    */
    .billing-master-data .billing-company-label[b-fg2059adrx],
    .billing-master-data .billing-company-value[b-fg2059adrx],
    .billing-master-data .billing-vehicle-label[b-fg2059adrx],
    .billing-master-data .billing-vehicle-value[b-fg2059adrx] {
        border-bottom: 0;
        box-shadow: inset 0 -1px 0 #d7dfe6;
    }

    /*
       Innerhalb der gemeinsamen Unternehmenszelle bleibt weiterhin
       ausdrücklich KEINE Linie zwischen Firmenname und Anschrift.
    */
    .billing-master-data .billing-company-value[b-fg2059adrx] {
        border-top: 0;
    }

    .billing-company-stack[b-fg2059adrx],
    .billing-company-name[b-fg2059adrx],
    .billing-company-address[b-fg2059adrx] {
        border-top: 0;
        border-bottom: 0;
    }

    /* --------------------------------------------------------
       Ladevorgangstabelle – nur Tabellenkopf höher
       -------------------------------------------------------- */

    .billing-table thead th[b-fg2059adrx] {
        padding-top: 0.7rem;
        padding-bottom: 0.7rem;
    }

    /* --------------------------------------------------------
       Abrechnungsblock – saubere Rundungen
       -------------------------------------------------------- */

    .billing-summary-table[b-fg2059adrx] {
        border: 1px solid #cbd5dd;
        border-collapse: separate;
        border-spacing: 0;
        border-radius: 0.8rem;
        overflow: hidden;
    }

        .billing-summary-table th[b-fg2059adrx],
        .billing-summary-table td[b-fg2059adrx] {
            border: 0;
            border-right: 1px solid #d7dfe6;
            border-bottom: 1px solid #d7dfe6;
        }

        .billing-summary-table tr > :last-child[b-fg2059adrx] {
            border-right: 0;
        }

        .billing-summary-table tbody > tr:last-child > th[b-fg2059adrx],
        .billing-summary-table tbody > tr:last-child > td[b-fg2059adrx] {
            border-bottom: 0;
        }
}


/* ============================================================
   v0.9.1 – einheitliche Header-Aktionen
   ============================================================ */

.billing-header-actions[b-fg2059adrx] {
    gap: 0.75rem;
}

.billing-header-actions .print-button[b-fg2059adrx],
.billing-header-actions .complete-billing-button[b-fg2059adrx] {
    min-height: 48px;
    margin: 0;
    padding: 0.72rem 1.1rem;
    border-radius: 13px;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.2;
    box-shadow: none;
    transition: border-color 150ms ease,
                background-color 150ms ease,
                box-shadow 150ms ease,
                transform 150ms ease;
}

.billing-header-actions .print-button:hover:not(:disabled)[b-fg2059adrx],
.billing-header-actions .complete-billing-button:hover:not(:disabled)[b-fg2059adrx] {
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(18, 74, 114, 0.10);
}

.billing-header-actions .complete-billing-button[b-fg2059adrx] {
    border-radius: 13px;
}

@media (max-width: 900px) {
    .billing-header-actions .print-button[b-fg2059adrx],
    .billing-header-actions .complete-billing-button[b-fg2059adrx] {
        min-height: 48px;
    }
}


/* ============================================================
   v0.9.1 – deterministische PDF-Paginierung
   ============================================================ */

@media print {
    html[b-fg2059adrx],
    body[b-fg2059adrx] {
        margin: 0 !important;
        padding: 0 !important;
    }

    .billing-document[b-fg2059adrx] {
        width: 190mm;
        max-width: 190mm;
        margin: 0;
    }

    .billing-post-table-block[b-fg2059adrx] {
        page-break-inside: avoid;
        break-inside: avoid;
    }

    .billing-continuation-header[b-fg2059adrx] {
        display: none;
    }

    .billing-post-table-block.show-continuation-header .billing-continuation-header[b-fg2059adrx] {
        display: block;
    }
}


/* ============================================================
   v0.9.1 – finaler PDF-Seitenumbruch
   Chromium übernimmt die Paginierung nativ.
   ============================================================ */

@media print {
    .billing-sessions-shell[b-fg2059adrx] {
        page-break-inside: auto !important;
        break-inside: auto !important;
    }

    .billing-table[b-fg2059adrx] {
        page-break-inside: auto !important;
        break-inside: auto !important;
    }

    .billing-table thead[b-fg2059adrx] {
        display: table-header-group !important;
    }

    .billing-table tbody[b-fg2059adrx] {
        display: table-row-group !important;
    }

    .billing-table tr[b-fg2059adrx] {
        page-break-inside: avoid !important;
        break-inside: avoid-page !important;
    }

    .billing-post-table-block[b-fg2059adrx] {
        page-break-inside: avoid !important;
        break-inside: avoid-page !important;
        page-break-before: auto !important;
        break-before: auto !important;
    }

    /* Folgekopf ist standardmäßig unsichtbar.
       Er wird serverseitig nur dann eingeblendet, wenn der erste
       Playwright-PDF-Durchlauf tatsächlich mehr als eine Seite ergibt. */
    .billing-continuation-header[b-fg2059adrx] {
        display: none !important;
    }

    .billing-post-table-block.show-continuation-header .billing-continuation-header[b-fg2059adrx] {
        display: block !important;
        margin-bottom: 6mm;
        page-break-after: avoid !important;
        break-after: avoid-page !important;
    }

    /* Kein künstlicher Seitenwechsel:
       Der Abschlussblock bleibt an seiner natürlichen Chromium-Position. */
    .billing-post-table-block.force-new-page[b-fg2059adrx] {
        page-break-before: auto !important;
        break-before: auto !important;
    }
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media screen and (max-width: 640.98px) {
    .billing-header-actions[b-fg2059adrx] {
        display: grid;
        grid-template-columns: 1fr;
        gap: 0.65rem;
    }

    .billing-header-actions .print-button[b-fg2059adrx],
    .complete-billing-button[b-fg2059adrx] {
        width: 100%;
        min-height: 48px;
    }

    .billing-period-selector[b-fg2059adrx] {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .document-tabs[b-fg2059adrx] {
        gap: 0.45rem;
        padding-bottom: 0.25rem;
        overflow-x: auto;
        scroll-snap-type: x proximity;
        -webkit-overflow-scrolling: touch;
    }

    .document-tab[b-fg2059adrx] {
        min-height: 46px;
        scroll-snap-align: start;
    }

    .billing-document[b-fg2059adrx] {
        width: 100%;
        min-width: 0;
        padding: 0.9rem;
    }

    .billing-table-shell[b-fg2059adrx] {
        max-width: 100%;
        overflow-x: auto;
        border-radius: 14px;
        -webkit-overflow-scrolling: touch;
    }
}


/* ============================================================
   0.9.3d – Abrechnung mobile app view
   PDF / print rules are intentionally untouched.
   ============================================================ */
.billing-mobile-master[b-fg2059adrx] {
    display: none;
}

@media screen and (max-width: 640.98px) {
    .billing-header-actions[b-fg2059adrx] {
        grid-template-columns: 1fr 1fr !important;
        gap: 0.55rem !important;
    }

    .billing-header-actions .print-button[b-fg2059adrx],
    .billing-header-actions .complete-billing-button[b-fg2059adrx] {
        min-height: 44px !important;
        padding: 0.55rem 0.65rem !important;
        font-size: 0.72rem !important;
    }

    .billing-period-selector[b-fg2059adrx] {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 0.5rem !important;
        padding: 0.5rem !important;
        border-radius: 17px !important;
    }

    .billing-period-selector label[b-fg2059adrx] {
        display: block !important;
        padding: 0 !important;
    }

    .billing-period-selector label:nth-child(1)[b-fg2059adrx],
    .billing-period-selector label:nth-child(2)[b-fg2059adrx] {
        grid-column: span 1;
    }

    .billing-period-selector select[b-fg2059adrx] {
        min-height: 44px !important;
        padding: 0.55rem 1.9rem 0.55rem 0.7rem !important;
        border-radius: 12px !important;
        font-size: 0.78rem !important;
    }

    .document-tabs[b-fg2059adrx] {
        width: 100% !important;
        margin-bottom: 0.85rem !important;
        padding: 0.25rem !important;
        border-radius: 14px !important;
    }

    .document-tab[b-fg2059adrx] {
        flex: 1 1 auto !important;
        min-height: 40px !important;
        padding: 0.5rem 0.65rem !important;
        font-size: 0.74rem !important;
    }

    .billing-document[b-fg2059adrx] {
        padding: 0.85rem !important;
        border-radius: 20px !important;
    }

    .billing-document-header[b-fg2059adrx] {
        margin-bottom: 0.8rem !important;
    }

    .billing-document-header h2[b-fg2059adrx] {
        font-size: 1.18rem !important;
        line-height: 1.15 !important;
    }

    .billing-document-header p[b-fg2059adrx] {
        font-size: 0.76rem !important;
        line-height: 1.4 !important;
    }

    .billing-mobile-master[b-fg2059adrx] {
        display: grid !important;
        gap: 0.55rem !important;
        margin-bottom: 0.7rem !important;
    }

    .billing-mobile-master-row[b-fg2059adrx],
    .billing-mobile-master-grid > div[b-fg2059adrx] {
        display: grid !important;
        gap: 0.16rem !important;
        padding: 0.68rem 0.72rem !important;
        border: 1px solid #dde6ed !important;
        border-radius: 14px !important;
        background: #f8fafc !important;
    }

    .billing-mobile-master-row span[b-fg2059adrx],
    .billing-mobile-master-grid span[b-fg2059adrx] {
        color: #7a8b99 !important;
        font-size: 0.63rem !important;
        font-weight: 650 !important;
    }

    .billing-mobile-master-row strong[b-fg2059adrx],
    .billing-mobile-master-grid strong[b-fg2059adrx] {
        color: #203548 !important;
        font-size: 0.79rem !important;
        font-weight: 650 !important;
        overflow-wrap: anywhere !important;
    }

    .billing-mobile-master-row small[b-fg2059adrx] {
        color: #7a8b99 !important;
        font-size: 0.7rem !important;
        overflow-wrap: anywhere !important;
    }

    .billing-mobile-master-grid[b-fg2059adrx] {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 0.55rem !important;
    }

    .billing-master-shell[b-fg2059adrx] {
        display: none !important;
    }

    .billing-sessions-shell[b-fg2059adrx] {
        overflow: visible !important;
        background: transparent !important;
    }

    .billing-table[b-fg2059adrx] {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }

    .billing-table thead[b-fg2059adrx] {
        display: none !important;
    }

    .billing-table tbody[b-fg2059adrx] {
        display: grid !important;
        gap: 0.65rem !important;
    }

    .billing-table tr[b-fg2059adrx] {
        display: grid !important;
        gap: 0 !important;
        overflow: hidden !important;
        border: 1px solid #dce6ed !important;
        border-radius: 15px !important;
        background: #ffffff !important;
    }

    .billing-table td[b-fg2059adrx] {
        display: grid !important;
        grid-template-columns: minmax(90px, 0.42fr) minmax(0, 1fr) !important;
        gap: 0.6rem !important;
        align-items: center !important;
        padding: 0.55rem 0.68rem !important;
        border: 0 !important;
        border-bottom: 0.5px solid #e6edf2 !important;
        color: #263b4d !important;
        font-size: 0.74rem !important;
        text-align: left !important;
        white-space: normal !important;
    }

    .billing-table td:last-child[b-fg2059adrx] {
        border-bottom: 0 !important;
    }

    .billing-table td[b-fg2059adrx]::before {
        content: attr(data-label);
        color: #7b8c99;
        font-size: 0.63rem;
        font-weight: 650;
    }

    .billing-summary-table[b-fg2059adrx] {
        display: table !important;
        min-width: 0 !important;
        width: 100% !important;
        margin: 0.7rem 0 !important;
    }

    .billing-summary-table th[b-fg2059adrx],
    .billing-summary-table td[b-fg2059adrx] {
        padding: 0.62rem 0.68rem !important;
        font-size: 0.72rem !important;
        white-space: normal !important;
    }

    .calculation-box[b-fg2059adrx],
    .billing-footer[b-fg2059adrx] {
        padding: 0.75rem !important;
        border-radius: 14px !important;
        font-size: 0.71rem !important;
    }

    .billing-footer dl[b-fg2059adrx] {
        grid-template-columns: 1fr !important;
        gap: 0.08rem !important;
    }

    .billing-footer dt[b-fg2059adrx] {
        margin-top: 0.35rem !important;
    }

    .billing-footer dd[b-fg2059adrx] {
        margin: 0 !important;
        overflow-wrap: anywhere !important;
    }

    :root[data-theme="dark"] .billing-mobile-master-row[b-fg2059adrx],
    :root[data-theme="dark"] .billing-mobile-master-grid > div[b-fg2059adrx] {
        border-color: #2d4452 !important;
        background: #172a35 !important;
    }

    :root[data-theme="dark"] .billing-mobile-master-row span[b-fg2059adrx],
    :root[data-theme="dark"] .billing-mobile-master-grid span[b-fg2059adrx],
    :root[data-theme="dark"] .billing-mobile-master-row small[b-fg2059adrx] {
        color: #90a5b2 !important;
    }

    :root[data-theme="dark"] .billing-mobile-master-row strong[b-fg2059adrx],
    :root[data-theme="dark"] .billing-mobile-master-grid strong[b-fg2059adrx] {
        color: #dce8ef !important;
    }

    :root[data-theme="dark"] .billing-table tr[b-fg2059adrx] {
        border-color: #2d4452 !important;
        background: #182a35 !important;
    }

    :root[data-theme="dark"] .billing-table td[b-fg2059adrx] {
        border-bottom-color: #263b47 !important;
        color: #d6e3ea !important;
        background: transparent !important;
    }

    :root[data-theme="dark"] .billing-table td[b-fg2059adrx]::before {
        color: #8fa4b1;
    }
}

@media screen and (max-width:640.98px){.billing-table td.billing-energy-column[b-fg2059adrx],.billing-table td.billing-cost-column[b-fg2059adrx]{text-align:left!important}.billing-table .billing-number-value[b-fg2059adrx],.billing-table .billing-energy-value[b-fg2059adrx],.billing-table .billing-cost-value[b-fg2059adrx]{display:block!important;width:auto!important;max-width:100%!important;margin:0!important;text-align:left!important;justify-self:stretch!important;white-space:normal!important}}


/* ============================================================
   0.9.3f – Abrechnung mobile Wertausrichtung final
   ============================================================ */
@media screen and (max-width: 640.98px) {
    .billing-table td.billing-energy-column[b-fg2059adrx],
    .billing-table td.billing-cost-column[b-fg2059adrx] {
        justify-items: stretch !important;
        text-align: left !important;
    }

    .billing-table td.billing-energy-column > *[b-fg2059adrx],
    .billing-table td.billing-cost-column > *[b-fg2059adrx],
    .billing-table .billing-number-value[b-fg2059adrx],
    .billing-table .billing-energy-value[b-fg2059adrx],
    .billing-table .billing-cost-value[b-fg2059adrx] {
        position: static !important;
        display: block !important;
        float: none !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
        text-align: left !important;
        justify-self: stretch !important;
        white-space: normal !important;
    }
}


/* ============================================================
   0.9.3g – Abrechnung Ladevorgänge Außenrahmen final
   ============================================================ */
@media screen and (max-width: 640.98px) {
    .billing-table-shell.billing-sessions-shell[b-fg2059adrx],
    .billing-sessions-shell[b-fg2059adrx] {
        display: block !important;
        overflow: visible !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        outline: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .billing-sessions-shell[b-fg2059adrx]::before,
    .billing-sessions-shell[b-fg2059adrx]::after {
        display: none !important;
        content: none !important;
    }

    .billing-table[b-fg2059adrx] {
        margin: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .billing-table tbody[b-fg2059adrx] {
        margin: 0 !important;
        padding: 0 !important;
    }

    .billing-table tr[b-fg2059adrx] {
        margin: 0 0 0.55rem !important;
    }

    .billing-table tr:last-child[b-fg2059adrx] {
        margin-bottom: 0 !important;
    }
}
/* /Components/Pages/ChargingSessions.razor.rz.scp.css */
.charging-page[b-6s4mp15zdb] {
    display: grid;
    gap: 1.55rem;
    width: 100%;
    max-width: 1540px;
    margin: 0 auto;
    padding: 0.2rem 0 2rem;
    color: #17283a;
    font-family: "Roboto", Arial, sans-serif;
}

.charging-header[b-6s4mp15zdb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
}

.charging-section-kicker[b-6s4mp15zdb] {
    display: inline-block;
    color: #0076bd;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.075em;
}

.charging-header h1[b-6s4mp15zdb],
.charging-section-heading h2[b-6s4mp15zdb] {
    margin: 0;
    color: #17283a;
}

.charging-header h1[b-6s4mp15zdb] {
    margin: 0;
    color: #17283a;
    font-size: 2rem;
    font-weight: 750;
    line-height: 1.15;
    letter-spacing: -0.035em;
}

.charging-header p[b-6s4mp15zdb],
.charging-section-heading p[b-6s4mp15zdb] {
    margin: 0.42rem 0 0;
    color: #718091;
    line-height: 1.5;
}

.charging-header p[b-6s4mp15zdb] {
    max-width: 760px;
    font-size: 0.94rem;
}

.charging-refresh-button[b-6s4mp15zdb],
.charging-reset-button[b-6s4mp15zdb] {
    border: 1px solid #dbe5ec;
    color: #334b5f;
    background: #ffffff;
    font: inherit;
    cursor: pointer;
    transition: border-color 150ms ease,
                background 150ms ease,
                box-shadow 150ms ease,
                transform 150ms ease;
}

.charging-refresh-button[b-6s4mp15zdb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    min-height: 48px;
    padding: 0.72rem 1.1rem;
    border: 1px solid #d7e3eb;
    border-radius: 13px;
    color: #40566a;
    background: #ffffff;
    font: inherit;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
    cursor: pointer;
    transition: border-color 150ms ease,
                background-color 150ms ease,
                box-shadow 150ms ease,
                transform 150ms ease;
}

.charging-refresh-button:hover:not(:disabled)[b-6s4mp15zdb],
.charging-reset-button:hover[b-6s4mp15zdb] {
    border-color: #cbd9e3;
    background: #f8fbfd;
    box-shadow: 0 6px 18px rgba(29, 59, 82, 0.07);
}

.charging-refresh-button:disabled[b-6s4mp15zdb] {
    opacity: 0.65;
    cursor: default;
}

.charging-refresh-icon[b-6s4mp15zdb] {
    width: 0.86rem;
    height: 0.86rem;
    opacity: 0.55;
}

.charging-refresh-icon.is-spinning[b-6s4mp15zdb] {
    animation: charging-spin-b-6s4mp15zdb 0.8s linear infinite;
}

@keyframes charging-spin-b-6s4mp15zdb {
    to {
        transform: rotate(360deg);
    }
}

.charging-summary-grid[b-6s4mp15zdb] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.9rem;
}

.charging-summary-card[b-6s4mp15zdb] {
    display: grid;
    gap: 0.2rem;
    min-height: 7.2rem;
    padding: 1.05rem 1.15rem;
    border: 1px solid #e0e8ef;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 7px 22px rgba(29, 59, 82, 0.045);
}

.charging-summary-card > span[b-6s4mp15zdb] {
    color: #718091;
    font-size: 0.76rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.045em;
}

.charging-summary-card > strong[b-6s4mp15zdb] {
    align-self: end;
    color: #17283a;
    font-size: 1.52rem;
    font-weight: 800;
    letter-spacing: -0.025em;
}

.charging-summary-card > small[b-6s4mp15zdb] {
    color: #82909d;
    font-size: 0.76rem;
}

.charging-panel[b-6s4mp15zdb] {
    overflow: hidden;
    border: 1px solid #e0e8ef;
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 8px 24px rgba(29, 59, 82, 0.045);
}

.charging-filter-panel[b-6s4mp15zdb] {
    overflow: visible;
    padding: 1.15rem 1.2rem 1.25rem;
}

.charging-section-heading[b-6s4mp15zdb] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.charging-section-heading h2[b-6s4mp15zdb] {
    margin-top: 0.22rem;
    font-size: 1.08rem;
    font-weight: 780;
}

.charging-section-heading p[b-6s4mp15zdb] {
    font-size: 0.82rem;
}

.charging-reset-button[b-6s4mp15zdb] {
    min-height: 2.4rem;
    padding: 0 0.8rem;
    border-radius: 11px;
    font-size: 0.78rem;
    font-weight: 700;
}

.charging-filter-grid[b-6s4mp15zdb] {
    display: grid;
    grid-template-columns: 130px 170px 180px 180px minmax(240px, 1fr);
    gap: 0.85rem;
    margin-top: 1rem;
}

.charging-field[b-6s4mp15zdb] {
    display: grid;
    gap: 0.35rem;
}

.charging-field label[b-6s4mp15zdb] {
    color: #64778a;
    font-size: 0.73rem;
    font-weight: 700;
}

.charging-select[b-6s4mp15zdb],
.charging-input[b-6s4mp15zdb] {
    width: 100%;
    min-height: 2.75rem;
    border: 1px solid #dce5ec;
    border-radius: 12px;
    outline: none;
    color: #263d50;
    background: #ffffff;
    font: inherit;
    font-size: 0.86rem;
    transition: border-color 150ms ease,
                box-shadow 150ms ease;
}

.charging-select[b-6s4mp15zdb] {
    padding: 0 2.2rem 0 0.78rem;
}

.charging-input[b-6s4mp15zdb] {
    padding: 0 0.85rem;
}

.charging-select:focus[b-6s4mp15zdb],
.charging-input:focus[b-6s4mp15zdb] {
    border-color: rgba(0, 118, 189, 0.5);
    box-shadow: 0 0 0 3px rgba(0, 118, 189, 0.09);
}

.charging-search-field[b-6s4mp15zdb] {
    grid-column: -2 / -1;
}

.charging-list-heading[b-6s4mp15zdb] {
    padding: 1.1rem 1.2rem;
    border-bottom: 1px solid #edf1f4;
}

.charging-count-badge[b-6s4mp15zdb] {
    display: grid;
    place-items: center;
    min-width: 2.15rem;
    height: 2.15rem;
    padding: 0 0.6rem;
    border-radius: 999px;
    color: #0076bd;
    background: #eef7fc;
    font-size: 0.8rem;
    font-weight: 800;
}

.charging-table-shell[b-6s4mp15zdb] {
    width: 100%;
    overflow-x: auto;
}

.charging-table[b-6s4mp15zdb] {
    width: 100%;
    min-width: 1140px;
    border-collapse: collapse;
}

.charging-table th[b-6s4mp15zdb],
.charging-table td[b-6s4mp15zdb] {
    padding: 0.92rem 1rem;
    border-bottom: 1px solid #edf1f4;
    vertical-align: middle;
    text-align: left;
}

.charging-table th[b-6s4mp15zdb] {
    color: #718091;
    background: #f8fafc;
    font-size: 0.7rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.charging-table td[b-6s4mp15zdb] {
    color: #334b5f;
    font-size: 0.82rem;
    font-weight: 400;
}

.charging-table tbody tr:last-child td[b-6s4mp15zdb] {
    border-bottom: 0;
}

.charging-table tbody tr[b-6s4mp15zdb] {
    transition: background 140ms ease;
}

.charging-table tbody tr:hover[b-6s4mp15zdb] {
    background: #fbfdfe;
}

.charging-primary-value[b-6s4mp15zdb] {
    display: block;
    color: #263d50;
    font-size: 0.82rem;
    font-weight: 500;
    line-height: 1.35;
    white-space: nowrap;
}

.charging-time[b-6s4mp15zdb],
.charging-secondary[b-6s4mp15zdb],
.charging-source-detail[b-6s4mp15zdb] {
    display: block;
    margin-top: 0.16rem;
    color: #82909d;
    font-size: 0.74rem;
    font-weight: 400;
    line-height: 1.35;
    white-space: nowrap;
}


.charging-assignment[b-6s4mp15zdb] {
    display: inline-flex;
    align-items: center;
    gap: 0.33rem;
    margin-top: 0.3rem;
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

.charging-assignment-ok[b-6s4mp15zdb] {
    color: #3f7f5f;
}

.charging-assignment-open[b-6s4mp15zdb] {
    color: #a36b24;
}

.charging-status-dot[b-6s4mp15zdb] {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 0 2px color-mix(in srgb, currentColor 12%, transparent);
}

.charging-number-column[b-6s4mp15zdb] {
    text-align: right !important;
    white-space: nowrap;
}

.charging-source-badge[b-6s4mp15zdb] {
    display: inline-flex;
    align-items: center;
    min-height: 1.6rem;
    padding: 0 0.55rem;
    border: 1px solid #dce8ef;
    border-radius: 999px;
    color: #4c6678;
    background: #f6fafc;
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

.charging-empty[b-6s4mp15zdb],
.charging-loading[b-6s4mp15zdb],
.charging-message[b-6s4mp15zdb] {
    padding: 1.2rem;
    border-radius: 16px;
}

.charging-empty[b-6s4mp15zdb] {
    display: grid;
    gap: 0.28rem;
    margin: 1.2rem;
    border: 1px dashed #d9e3ea;
    color: #718091;
    background: #fafcfd;
    text-align: center;
}

.charging-empty strong[b-6s4mp15zdb] {
    color: #3b5366;
}

.charging-empty span[b-6s4mp15zdb] {
    font-size: 0.82rem;
}

.charging-loading[b-6s4mp15zdb] {
    border: 1px solid #e0e8ef;
    color: #718091;
    background: #ffffff;
}

.charging-message-error[b-6s4mp15zdb] {
    border: 1px solid #f0d0d0;
    color: #9c4444;
    background: #fff6f6;
}

@media (max-width: 1250px) {
    .charging-filter-grid[b-6s4mp15zdb] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .charging-search-field[b-6s4mp15zdb] {
        grid-column: span 2;
    }
}

@media (max-width: 920px) {
    .charging-summary-grid[b-6s4mp15zdb] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .charging-filter-grid[b-6s4mp15zdb] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .charging-search-field[b-6s4mp15zdb] {
        grid-column: 1 / -1;
    }
}

@media (max-width: 640.98px) {
    .charging-page[b-6s4mp15zdb] {
        gap: 1rem;
        padding-top: 0;
    }

    .charging-header[b-6s4mp15zdb] {
        display: grid;
        gap: 1rem;
    }

    .charging-refresh-button[b-6s4mp15zdb] {
        justify-self: start;
    }

    .charging-summary-grid[b-6s4mp15zdb] {
        grid-template-columns: 1fr 1fr;
        gap: 0.7rem;
    }

    .charging-summary-card[b-6s4mp15zdb] {
        min-height: 6.6rem;
        padding: 0.9rem;
        border-radius: 16px;
    }

    .charging-summary-card > strong[b-6s4mp15zdb] {
        font-size: 1.25rem;
    }

    .charging-panel[b-6s4mp15zdb] {
        border-radius: 17px;
    }

    .charging-filter-panel[b-6s4mp15zdb] {
        padding: 1rem;
    }

    .charging-section-heading[b-6s4mp15zdb] {
        display: grid;
    }

    .charging-reset-button[b-6s4mp15zdb] {
        justify-self: start;
    }

    .charging-filter-grid[b-6s4mp15zdb] {
        grid-template-columns: 1fr;
    }

    .charging-search-field[b-6s4mp15zdb] {
        grid-column: auto;
    }

    .charging-list-heading[b-6s4mp15zdb] {
        grid-template-columns: 1fr auto;
        display: grid;
        padding: 1rem;
    }

    .charging-table th[b-6s4mp15zdb],
    .charging-table td[b-6s4mp15zdb] {
        padding: 0.8rem 0.85rem;
    }
}




.charging-statistics-section[b-6s4mp15zdb] {
    overflow: hidden;
    border: 1px solid #e0e8ef;
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 8px 24px rgba(29, 59, 82, 0.045);
}

.charging-statistics-toggle[b-6s4mp15zdb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem;
    width: 100%;
    padding: 1.15rem 1.2rem;
    border: 0;
    color: inherit;
    background: #ffffff;
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: background-color 150ms ease;
}

.charging-statistics-toggle:hover[b-6s4mp15zdb] {
    background: #fbfdfe;
}

.charging-statistics-toggle > span:first-child[b-6s4mp15zdb] {
    display: grid;
    gap: 0.18rem;
}

.charging-statistics-toggle strong[b-6s4mp15zdb] {
    color: #17283a;
    font-size: 1rem;
    font-weight: 700;
}

.charging-statistics-toggle small[b-6s4mp15zdb] {
    color: #718091;
    font-size: 0.8rem;
    font-weight: 400;
}

.charging-statistics-toggle-action[b-6s4mp15zdb] {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    flex: 0 0 2rem;
    border-radius: 10px;
}

.charging-statistics-arrow[b-6s4mp15zdb] {
    display: block;
    width: 0.9rem;
    height: 0.9rem;
    opacity: 0.48;
    object-fit: contain;
    transform: rotate(0deg);
    transition: opacity 150ms ease, transform 180ms ease;
}

.charging-statistics-toggle:hover .charging-statistics-arrow[b-6s4mp15zdb] {
    opacity: 0.68;
}

.charging-statistics-arrow.is-open[b-6s4mp15zdb] {
    transform: rotate(180deg);
}

.charging-statistics-section .charging-statistics-grid[b-6s4mp15zdb] {
    padding: 0 1.2rem 1.2rem;
}

@media (max-width: 640.98px) {
    .charging-statistics-toggle[b-6s4mp15zdb] {
        align-items: flex-start;
        padding: 1rem;
    }

    .charging-statistics-toggle small[b-6s4mp15zdb] {
        display: none;
    }

    .charging-statistics-section .charging-statistics-grid[b-6s4mp15zdb] {
        padding: 0 1rem 1rem;
    }
}

.charging-statistics-grid[b-6s4mp15zdb] {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.85fr);
    gap: 1rem;
}

.charging-stat-card[b-6s4mp15zdb] {
    min-height: 21rem;
    padding: 1.2rem;
    border: 1px solid #e0e8ef;
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 8px 24px rgba(29, 59, 82, 0.045);
}

.charging-stat-heading h2[b-6s4mp15zdb] {
    margin: 0.22rem 0 0;
    color: #17283a;
    font-size: 1.08rem;
    font-weight: 780;
}

.charging-stat-heading p[b-6s4mp15zdb] {
    margin: 0.38rem 0 0;
    color: #718091;
    font-size: 0.82rem;
    line-height: 1.45;
}

.charging-stat-empty[b-6s4mp15zdb] {
    display: grid;
    place-items: center;
    min-height: 13rem;
    color: #82909d;
    font-size: 0.82rem;
}

.charging-energy-bars[b-6s4mp15zdb] {
    display: grid;
    gap: 0.95rem;
    margin-top: 1.35rem;
}

.charging-energy-bar-row[b-6s4mp15zdb] {
    display: grid;
    gap: 0.42rem;
}

.charging-energy-bar-label[b-6s4mp15zdb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.charging-energy-bar-label strong[b-6s4mp15zdb] {
    color: #334b5f;
    font-size: 0.78rem;
    font-weight: 650;
}

.charging-energy-bar-label span[b-6s4mp15zdb] {
    color: #718091;
    font-size: 0.75rem;
}

.charging-energy-bar-track[b-6s4mp15zdb] {
    position: relative;
    height: 0.68rem;
    overflow: hidden;
    border-radius: 999px;
    background: #eef3f6;
}

.charging-energy-bar-fill[b-6s4mp15zdb] {
    position: absolute;
    inset: 0 auto 0 0;
    border-radius: inherit;
    background: linear-gradient(
        90deg,
        rgba(0, 118, 189, 0.78),
        rgba(0, 118, 189, 0.48)
    );
}

.charging-week-chart[b-6s4mp15zdb] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    align-items: end;
    gap: 0.65rem;
    min-height: 15.5rem;
    margin-top: 1.2rem;
    padding: 1rem 0.4rem 0.1rem;
}

.charging-week-column[b-6s4mp15zdb] {
    display: grid;
    grid-template-rows: 1.3rem 10.8rem 1.2rem;
    align-items: end;
    gap: 0.45rem;
    min-width: 0;
    text-align: center;
}

.charging-week-value[b-6s4mp15zdb] {
    color: #718091;
    font-size: 0.68rem;
    white-space: nowrap;
}

.charging-week-track[b-6s4mp15zdb] {
    position: relative;
    width: min(2.5rem, 80%);
    height: 10.8rem;
    justify-self: center;
    overflow: hidden;
    border-radius: 14px 14px 7px 7px;
    background:
        linear-gradient(
            to top,
            rgba(221, 231, 238, 0.72) 1px,
            transparent 1px
        );
    background-size: 100% 25%;
    background-color: #f7fafc;
}

.charging-week-fill[b-6s4mp15zdb] {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    min-height: 0;
    border-radius: 12px 12px 5px 5px;
    background: linear-gradient(
        180deg,
        rgba(0, 118, 189, 0.8),
        rgba(0, 118, 189, 0.48)
    );
}

.charging-week-label[b-6s4mp15zdb] {
    color: #64778a;
    font-size: 0.74rem;
    font-weight: 700;
}


@media (max-width: 980px) {
    .charging-statistics-grid[b-6s4mp15zdb] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640.98px) {
    .charging-stat-card[b-6s4mp15zdb] {
        min-height: 0;
        padding: 1rem;
        border-radius: 17px;
    }

    .charging-week-chart[b-6s4mp15zdb] {
        gap: 0.35rem;
        min-height: 13rem;
        padding-right: 0;
        padding-left: 0;
    }

    .charging-week-track[b-6s4mp15zdb] {
        width: min(2rem, 80%);
        height: 9rem;
    }

    .charging-week-column[b-6s4mp15zdb] {
        grid-template-rows: 1.2rem 9rem 1.2rem;
    }
}

.charging-refresh-button.is-success[b-6s4mp15zdb] {
    border-color: #b9dec7;
    color: #28623c;
    background: #eef9f1;
    box-shadow: 0 6px 18px rgba(40, 98, 60, 0.08);
}


/* v0.9.2 – Aktualisieren im Uhrzeigersinn */
.charging-refresh-icon.is-spinning[b-6s4mp15zdb] {
    animation: charging-refresh-spin-clockwise-b-6s4mp15zdb 800ms linear infinite;
}

@keyframes charging-refresh-spin-clockwise-b-6s4mp15zdb {
    to {
        transform: rotate(360deg);
    }
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 640.98px) {
    .charging-page[b-6s4mp15zdb],
    .charging-panel[b-6s4mp15zdb] {
        min-width: 0;
    }

    .charging-header[b-6s4mp15zdb] {
        align-items: stretch;
        gap: 0.9rem;
    }

    .charging-refresh-button[b-6s4mp15zdb],
    .charging-reset-button[b-6s4mp15zdb] {
        min-height: 48px;
    }

    .charging-filter-grid[b-6s4mp15zdb],
    .charging-summary-grid[b-6s4mp15zdb],
    .charging-statistics-grid[b-6s4mp15zdb] {
        grid-template-columns: 1fr;
    }

    .charging-field[b-6s4mp15zdb],
    .charging-input[b-6s4mp15zdb],
    .charging-select[b-6s4mp15zdb] {
        width: 100%;
        min-width: 0;
    }

    .charging-input[b-6s4mp15zdb],
    .charging-select[b-6s4mp15zdb] {
        min-height: 48px;
    }

    .charging-table-shell[b-6s4mp15zdb] {
        margin-right: -0.15rem;
        margin-left: -0.15rem;
        border-radius: 16px;
    }

    .charging-statistics-toggle[b-6s4mp15zdb] {
        min-height: 52px;
        touch-action: manipulation;
    }
}


/* ============================================================
   0.9.3d – Ladevorgänge mobile card list
   ============================================================ */
@media (max-width: 640.98px) {
    .charging-page[b-6s4mp15zdb] {
        gap: 0.9rem !important;
    }

    .charging-header[b-6s4mp15zdb] {
        display: grid !important;
        gap: 0.65rem !important;
    }

    .charging-header-actions[b-6s4mp15zdb] {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 0.55rem !important;
        width: 100% !important;
    }

    .charging-refresh-button[b-6s4mp15zdb],
    .charging-reset-button[b-6s4mp15zdb] {
        width: 100% !important;
        min-height: 42px !important;
        padding: 0.55rem 0.65rem !important;
    }

    .charging-filter-grid[b-6s4mp15zdb] {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.7rem !important;
    }

    .charging-panel[b-6s4mp15zdb] {
        padding: 0.85rem !important;
    }

    .charging-list-heading[b-6s4mp15zdb] {
        align-items: flex-start !important;
        gap: 0.7rem !important;
    }

    .charging-table-shell[b-6s4mp15zdb] {
        overflow: visible !important;
        border: 0 !important;
        background: transparent !important;
    }

    .charging-table[b-6s4mp15zdb] {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }

    .charging-table thead[b-6s4mp15zdb] {
        display: none !important;
    }

    .charging-table tbody[b-6s4mp15zdb] {
        display: grid !important;
        gap: 0.7rem !important;
    }

    .charging-table tr[b-6s4mp15zdb] {
        display: grid !important;
        gap: 0 !important;
        overflow: hidden !important;
        border: 1px solid #dce6ed !important;
        border-radius: 16px !important;
        background: #ffffff !important;
        box-shadow: 0 5px 18px rgba(13, 46, 72, 0.045) !important;
    }

    .charging-table td[b-6s4mp15zdb] {
        display: grid !important;
        grid-template-columns: minmax(88px, 0.42fr) minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 0.65rem !important;
        min-width: 0 !important;
        padding: 0.6rem 0.72rem !important;
        border: 0 !important;
        border-bottom: 0.5px solid #e6edf2 !important;
        color: #273b4d !important;
        text-align: left !important;
        white-space: normal !important;
    }

    .charging-table td:last-child[b-6s4mp15zdb] {
        border-bottom: 0 !important;
    }

    .charging-table td[b-6s4mp15zdb]::before {
        content: attr(data-label);
        color: #7b8c9a;
        font-size: 0.67rem;
        font-weight: 650;
        line-height: 1.2;
    }

    .charging-table td > *[b-6s4mp15zdb] {
        min-width: 0;
    }

    .charging-primary-value[b-6s4mp15zdb],
    .charging-secondary[b-6s4mp15zdb],
    .charging-time[b-6s4mp15zdb],
    .charging-source-detail[b-6s4mp15zdb] {
        overflow-wrap: anywhere !important;
    }

    .charging-number-column[b-6s4mp15zdb] {
        text-align: left !important;
    }

    .charging-statistics-section[b-6s4mp15zdb] {
        border-radius: 20px !important;
    }

    .charging-statistics-grid[b-6s4mp15zdb] {
        grid-template-columns: 1fr !important;
    }

    :root[data-theme="dark"] .charging-table tr[b-6s4mp15zdb] {
        border-color: #2d4452 !important;
        background: #182a35 !important;
        box-shadow: none !important;
    }

    :root[data-theme="dark"] .charging-table td[b-6s4mp15zdb] {
        border-bottom-color: #263b47 !important;
        color: #d5e2e9 !important;
        background: transparent !important;
    }

    :root[data-theme="dark"] .charging-table td[b-6s4mp15zdb]::before {
        color: #8fa4b1;
    }
}

@media (max-width:640.98px){.charging-table tbody[b-6s4mp15zdb]{gap:.5rem!important}.charging-table tr[b-6s4mp15zdb]{border-radius:14px!important}.charging-table td[b-6s4mp15zdb]{grid-template-columns:minmax(78px,.36fr) minmax(0,1fr)!important;gap:.5rem!important;padding:.43rem .62rem!important;min-height:0!important}.charging-table td[b-6s4mp15zdb]::before{font-size:.61rem!important}.charging-primary-value[b-6s4mp15zdb]{font-size:.76rem!important;line-height:1.25!important}.charging-secondary[b-6s4mp15zdb],.charging-time[b-6s4mp15zdb],.charging-source-detail[b-6s4mp15zdb]{margin-top:.08rem!important;font-size:.65rem!important;line-height:1.25!important}}


/* ============================================================
   0.9.3f – Ladevorgänge final kompakt
   ============================================================ */
@media (max-width: 640.98px) {
    .charging-table tbody[b-6s4mp15zdb] {
        gap: 0.48rem !important;
    }

    .charging-table tr[b-6s4mp15zdb] {
        border-radius: 14px !important;
    }

    .charging-table td[b-6s4mp15zdb] {
        grid-template-columns: 76px minmax(0, 1fr) !important;
        gap: 0.48rem !important;
        padding: 0.42rem 0.62rem !important;
        min-height: 0 !important;
    }

    .charging-table td[b-6s4mp15zdb]::before {
        font-size: 0.6rem !important;
        line-height: 1.15 !important;
    }

    .charging-mobile-inline[b-6s4mp15zdb] {
        display: flex !important;
        align-items: center !important;
        gap: 0.42rem !important;
        min-width: 0 !important;
        flex-wrap: wrap !important;
    }

    .charging-mobile-inline .charging-primary-value[b-6s4mp15zdb] {
        display: inline !important;
        margin: 0 !important;
        font-size: 0.75rem !important;
        line-height: 1.2 !important;
    }

    .charging-mobile-inline .charging-secondary[b-6s4mp15zdb],
    .charging-mobile-inline .charging-assignment[b-6s4mp15zdb],
    .charging-mobile-inline [class*="charging-assignment"][b-6s4mp15zdb] {
        display: inline-flex !important;
        align-items: center !important;
        margin: 0 !important;
        font-size: 0.62rem !important;
        line-height: 1.15 !important;
        white-space: nowrap !important;
    }

    .charging-source-inline[b-6s4mp15zdb] {
        flex-wrap: nowrap !important;
    }

    .charging-source-badge[b-6s4mp15zdb] {
        display: inline-flex !important;
        align-items: center !important;
        width: auto !important;
        min-width: 0 !important;
        padding: 0.22rem 0.48rem !important;
        border-radius: 999px !important;
        font-size: 0.61rem !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    .charging-source-detail[b-6s4mp15zdb] {
        display: inline !important;
        min-width: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
        font-size: 0.61rem !important;
        line-height: 1.15 !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    .charging-time[b-6s4mp15zdb],
    .charging-secondary[b-6s4mp15zdb] {
        font-size: 0.62rem !important;
    }
}


/* ============================================================
   0.9.3g – Ladevorgänge finaler Mobile-Feinschliff
   ============================================================ */
@media (max-width: 640.98px) {
    /* Avoid double padding: panel + list heading. */
    .charging-list-panel[b-6s4mp15zdb] {
        padding: 0 !important;
    }

    .charging-list-heading[b-6s4mp15zdb] {
        padding: 0.95rem 0.95rem 0.8rem !important;
        margin: 0 !important;
        align-items: flex-start !important;
    }

    .charging-list-heading > div[b-6s4mp15zdb] {
        min-width: 0 !important;
    }

    .charging-list-heading h2[b-6s4mp15zdb] {
        margin-top: 0.15rem !important;
        font-size: 1.02rem !important;
        line-height: 1.22 !important;
    }

    .charging-list-heading p[b-6s4mp15zdb] {
        max-width: none !important;
        margin-top: 0.28rem !important;
        font-size: 0.72rem !important;
        line-height: 1.35 !important;
    }

    .charging-count-badge[b-6s4mp15zdb] {
        min-width: 2rem !important;
        height: 2rem !important;
        padding: 0 0.5rem !important;
    }

    .charging-table-shell[b-6s4mp15zdb] {
        padding: 0 0.7rem 0.7rem !important;
    }

    .charging-table td[b-6s4mp15zdb] {
        grid-template-columns: 72px minmax(0, 1fr) !important;
        padding: 0.38rem 0.58rem !important;
    }

    .charging-begin-inline[b-6s4mp15zdb] {
        flex-wrap: nowrap !important;
        gap: 0.35rem !important;
    }

    .charging-begin-inline .charging-primary-value[b-6s4mp15zdb],
    .charging-begin-inline .charging-time[b-6s4mp15zdb] {
        display: inline !important;
        margin: 0 !important;
        white-space: nowrap !important;
    }

    .charging-begin-inline .charging-time[b-6s4mp15zdb] {
        color: #7f909d !important;
    }

    :root[data-theme="dark"] .charging-begin-inline .charging-time[b-6s4mp15zdb] {
        color: #91a5b2 !important;
    }
}


/* 0.9.5 – Mobil genügt der globale Reload im Header. */
@media (max-width: 640.98px) {
    .charging-header .charging-refresh-button[b-6s4mp15zdb] {
        display: none !important;
    }
}
/* /Components/Pages/Documents.razor.rz.scp.css */
.documents-message[b-jtslnhi8ou] {
    margin-bottom: 1.5rem;
    padding: 1rem 1.25rem;
    border: 1px solid transparent;
    border-radius: 1rem;
    font-weight: 600;
    line-height: 1.5;
    box-shadow: 0 0.5rem 1.4rem rgba(33, 68, 98, 0.06);
}

.documents-message-success[b-jtslnhi8ou] {
    border-color: #b9e3cc;
    background: #e7f7ee;
    color: #17643d;
}

.documents-message-error[b-jtslnhi8ou] {
    border-color: #efc4ca;
    background: #fbeaec;
    color: #922737;
}

.documents-filter[b-jtslnhi8ou] {
    display: grid;
    grid-template-columns: minmax(220px, 1.4fr) minmax(220px, 1.2fr) minmax(130px, 0.55fr) minmax(170px, 0.75fr);
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding: 1rem;
    border: 1px solid #d9e4ec;
    border-radius: 1rem;
    background: #edf5fa;
}

    .documents-filter select[b-jtslnhi8ou] {
        width: 100%;
        min-width: 0;
        border: 0;
        border-radius: 0.8rem;
        padding: 0.8rem 2.4rem 0.8rem 1rem;
        background: #ffffff;
        color: #10243d;
        font: inherit;
        font-weight: 700;
        box-shadow: 0 0.35rem 0.9rem rgba(33, 68, 98, 0.08);
    }

.documents-summary[b-jtslnhi8ou] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.documents-summary-card[b-jtslnhi8ou] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 1.25rem;
    border: 1px solid #d9e4ec;
    border-radius: 1rem;
    background: #ffffff;
    box-shadow: 0 0.75rem 1.8rem rgba(33, 68, 98, 0.08);
}

    .documents-summary-card span[b-jtslnhi8ou] {
        color: #64778a;
        font-weight: 600;
    }

    .documents-summary-card strong[b-jtslnhi8ou] {
        color: #10243d;
        font-size: 1.75rem;
        line-height: 1;
    }

.documents-user-section[b-jtslnhi8ou] {
    margin-bottom: 1.5rem;
    padding: 1.5rem;
    border-radius: 1.25rem;
    background: #ffffff;
    box-shadow: 0 1rem 2.5rem rgba(33, 68, 98, 0.1);
}

.documents-user-header[b-jtslnhi8ou] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

    .documents-user-header h2[b-jtslnhi8ou] {
        margin: 0;
        color: #10243d;
        font-size: 1.5rem;
    }

    .documents-user-header p[b-jtslnhi8ou] {
        margin: 0.25rem 0 0;
        color: #64778a;
    }

.documents-count[b-jtslnhi8ou] {
    padding: 0.55rem 0.85rem;
    border-radius: 999px;
    background: #edf5fa;
    color: #45657f;
    font-weight: 700;
}

.documents-list[b-jtslnhi8ou] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.document-card[b-jtslnhi8ou] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1.25rem;
    border: 1px solid #dbe6ee;
    border-radius: 1rem;
    background: #fbfdff;
}

.document-main[b-jtslnhi8ou] {
    min-width: 0;
    flex: 1;
}

.document-title-row[b-jtslnhi8ou] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
}

    .document-title-row h3[b-jtslnhi8ou] {
        margin: 0;
        color: #10243d;
        font-size: 1.25rem;
    }

.document-status[b-jtslnhi8ou] {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.65rem;
    border-radius: 999px;
    font-size: 0.85rem;
    font-weight: 700;
}

    .document-status.completed[b-jtslnhi8ou] {
        background: #d9f2e4;
        color: #16643c;
    }

    .document-status.paid[b-jtslnhi8ou] {
        background: #dbeafe;
        color: #1d4f91;
    }

.document-values[b-jtslnhi8ou] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.75rem;
    color: #10243d;
    font-weight: 700;
}

.document-meta[b-jtslnhi8ou],
.document-paid-meta[b-jtslnhi8ou] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin-top: 0.55rem;
    color: #64778a;
}

.document-paid-meta[b-jtslnhi8ou] {
    color: #1d4f91;
    font-weight: 600;
}

.document-actions[b-jtslnhi8ou] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.65rem;
}

.document-action-button[b-jtslnhi8ou] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 0.65rem;
    padding: 0.7rem 0.95rem;
    background: #0087ce;
    color: #ffffff;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
}

    .document-action-button:hover[b-jtslnhi8ou],
    .document-action-button:focus[b-jtslnhi8ou] {
        color: #ffffff;
        text-decoration: none;
    }

    .document-action-button.secondary[b-jtslnhi8ou] {
        background: #e9f1f7;
        color: #36566f;
    }

        .document-action-button.secondary:hover[b-jtslnhi8ou],
        .document-action-button.secondary:focus[b-jtslnhi8ou] {
            color: #36566f;
        }

    .document-action-button.danger[b-jtslnhi8ou] {
        background: #f8e1e4;
        color: #9a2635;
    }

        .document-action-button.danger:hover[b-jtslnhi8ou],
        .document-action-button.danger:focus[b-jtslnhi8ou] {
            color: #9a2635;
        }

    .document-action-button:disabled[b-jtslnhi8ou] {
        background: #dfe7ee;
        color: #8a99aa;
        cursor: not-allowed;
    }

.documents-empty-state[b-jtslnhi8ou] {
    padding: 2rem;
    border-radius: 1.25rem;
    background: #ffffff;
    box-shadow: 0 1rem 2.5rem rgba(33, 68, 98, 0.1);
}

    .documents-empty-state h2[b-jtslnhi8ou] {
        margin-top: 0;
        color: #10243d;
    }

    .documents-empty-state p[b-jtslnhi8ou] {
        margin-bottom: 0;
        color: #64778a;
    }

@media (max-width: 1200px) {
    .documents-filter[b-jtslnhi8ou] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .documents-filter[b-jtslnhi8ou],
    .documents-summary[b-jtslnhi8ou] {
        grid-template-columns: 1fr;
    }

    .document-card[b-jtslnhi8ou] {
        align-items: flex-start;
        flex-direction: column;
    }

    .document-actions[b-jtslnhi8ou] {
        justify-content: flex-start;
        width: 100%;
    }
}


/* v0.9.1 – einheitliche Haupt-Seitenüberschrift */
.page-header h1[b-jtslnhi8ou] {
    margin: 0;
    color: #17283a;
    font-size: 2rem;
    font-weight: 750;
    line-height: 1.15;
    letter-spacing: -0.035em;
}

.page-header p[b-jtslnhi8ou] {
    margin-top: 0.45rem;
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 640.98px) {
    .documents-filter[b-jtslnhi8ou] {
        grid-template-columns: 1fr;
    }

    .document-card[b-jtslnhi8ou],
    .document-main[b-jtslnhi8ou],
    .document-title-row[b-jtslnhi8ou],
    .document-values[b-jtslnhi8ou],
    .document-actions[b-jtslnhi8ou] {
        min-width: 0;
    }

    .document-card[b-jtslnhi8ou] {
        grid-template-columns: 1fr;
        gap: 0.85rem;
    }

    .document-title-row[b-jtslnhi8ou] {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.35rem;
    }

    .document-actions[b-jtslnhi8ou] {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }

    .document-action-button[b-jtslnhi8ou] {
        width: 100%;
        min-height: 48px;
    }

    .document-meta[b-jtslnhi8ou] {
        overflow-wrap: anywhere;
    }
}


@media (max-width: 640.98px) {
    .documents-filter[b-jtslnhi8ou] {
        grid-template-columns: 1fr 1fr !important;
        gap: 0.5rem !important;
        padding: 0.65rem !important;
        border-radius: 18px !important;
    }

    .documents-summary[b-jtslnhi8ou] {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 0.5rem !important;
    }

    .documents-summary-card[b-jtslnhi8ou] {
        padding: 0.75rem !important;
    }

    .documents-summary-card span[b-jtslnhi8ou] {
        font-size: 0.62rem !important;
    }

    .documents-summary-card strong[b-jtslnhi8ou] {
        font-size: 1rem !important;
    }

    .documents-user-section[b-jtslnhi8ou] {
        padding: 0.85rem !important;
        border-radius: 19px !important;
    }

    .document-card[b-jtslnhi8ou] {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.75rem !important;
        padding: 0.8rem !important;
    }

    .document-actions[b-jtslnhi8ou] {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.5rem !important;
        width: 100% !important;
    }

    .document-action-button[b-jtslnhi8ou] {
        width: 100% !important;
        min-height: 44px !important;
    }
}

/* ============================================================
   0.9.4 – E-Mail-Versand
   ============================================================ */
.document-action-button.email[b-jtslnhi8ou] {
    color: #ffffff;
    border-color: #0787d1;
    background: #0787d1;
}

.document-action-button.email:hover:not(:disabled)[b-jtslnhi8ou] {
    border-color: #0877b7;
    background: #0877b7;
}

.documents-dialog-backdrop[b-jtslnhi8ou] {
    position: fixed;
    inset: 0;
    z-index: 500;
    display: grid;
    place-items: center;
    box-sizing: border-box;
    padding: 1rem;
    background: rgba(12, 28, 38, 0.38);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
}

.documents-email-dialog[b-jtslnhi8ou] {
    width: min(560px, 100%);
    max-height: min(82dvh, 720px);
    overflow-y: auto;
    padding: 1.25rem;
    border: 1px solid #dbe6ed;
    border-radius: 22px;
    background: #ffffff;
    box-shadow: 0 24px 80px rgba(13, 46, 72, 0.24);
}

.documents-dialog-header[b-jtslnhi8ou] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.documents-dialog-eyebrow[b-jtslnhi8ou] {
    color: #0787d1;
    font-size: 0.72rem;
    font-weight: 750;
    letter-spacing: 0.06em;
}

.documents-dialog-header h2[b-jtslnhi8ou] {
    margin: 0.25rem 0 0;
    font-size: 1.4rem;
}

.documents-dialog-header p[b-jtslnhi8ou] {
    margin: 0.3rem 0 0;
    color: #748797;
}

.documents-dialog-close[b-jtslnhi8ou] {
    width: 2.25rem;
    min-width: 2.25rem;
    height: 2.25rem;
    min-height: 2.25rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    color: #687b88;
    background: #eef3f6;
    font-size: 1.35rem;
    line-height: 1;
}

.documents-recipient-list[b-jtslnhi8ou] {
    display: grid;
    gap: 0.55rem;
    margin-top: 1rem;
}

.documents-recipient-option[b-jtslnhi8ou] {
    display: grid;
    grid-template-columns: auto 2.6rem minmax(0, 1fr);
    align-items: center;
    gap: 0.7rem;
    min-height: 4.2rem;
    padding: 0.65rem 0.75rem;
    border: 1px solid #dbe6ed;
    border-radius: 15px;
    background: #f9fbfc;
    cursor: pointer;
}

.documents-recipient-option input[b-jtslnhi8ou] {
    width: 1.05rem;
    height: 1.05rem;
}

.documents-recipient-avatar[b-jtslnhi8ou] {
    display: grid;
    place-items: center;
    width: 2.45rem;
    height: 2.45rem;
    border-radius: 11px;
    color: #087dc2;
    background: #e8f5fc;
    font-size: 0.72rem;
    font-weight: 750;
}

.documents-recipient-copy[b-jtslnhi8ou] {
    display: grid;
    gap: 0.12rem;
    min-width: 0;
}

.documents-recipient-copy strong[b-jtslnhi8ou] {
    color: #182b3c;
}

.documents-recipient-copy small[b-jtslnhi8ou] {
    overflow: hidden;
    color: #758895;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.documents-dialog-empty[b-jtslnhi8ou] {
    margin-top: 1rem;
    padding: 0.85rem;
    border-radius: 14px;
    color: #6a7e8d;
    background: #f4f8fa;
}

.documents-dialog-actions[b-jtslnhi8ou] {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.6rem;
    margin-top: 1rem;
}

:root[data-theme="dark"] .documents-email-dialog[b-jtslnhi8ou] {
    border-color: #2d4452;
    background: #172a35;
}

:root[data-theme="dark"] .documents-dialog-header h2[b-jtslnhi8ou],
:root[data-theme="dark"] .documents-recipient-copy strong[b-jtslnhi8ou] {
    color: #edf4f8;
}

:root[data-theme="dark"] .documents-dialog-header p[b-jtslnhi8ou],
:root[data-theme="dark"] .documents-recipient-copy small[b-jtslnhi8ou] {
    color: #91a5b2;
}

:root[data-theme="dark"] .documents-dialog-close[b-jtslnhi8ou] {
    color: #afc1cb;
    background: #263b47;
}

:root[data-theme="dark"] .documents-recipient-option[b-jtslnhi8ou] {
    border-color: #2d4452;
    background: #1a303b;
}

:root[data-theme="dark"] .documents-recipient-avatar[b-jtslnhi8ou] {
    color: #6bc4f2;
    background: #17394c;
}

@media (max-width: 640.98px) {
    .documents-dialog-backdrop[b-jtslnhi8ou] {
        align-items: end;
        padding: 0.7rem 0.7rem 7rem;
    }

    .documents-email-dialog[b-jtslnhi8ou] {
        width: 100%;
        max-height: calc(100dvh - 9rem);
        padding: 1rem;
        border-radius: 24px;
    }

    .documents-dialog-actions[b-jtslnhi8ou] {
        grid-template-columns: 1fr;
    }

    .documents-dialog-actions .document-action-button[b-jtslnhi8ou] {
        width: 100%;
    }
}


/* ============================================================
   0.9.4 – Dokument-Aktionen final
   ============================================================ */
.document-card[b-jtslnhi8ou] {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: stretch !important;
    gap: 1rem !important;
}

.document-main[b-jtslnhi8ou] {
    width: 100%;
}

.document-actions[b-jtslnhi8ou] {
    display: flex !important;
    align-items: center;
    justify-content: flex-end !important;
    flex-wrap: wrap;
    gap: 0.65rem;
    width: 100%;
    padding-top: 0.9rem;
    border-top: 1px solid #e4ebf0;
}

.document-action-button[b-jtslnhi8ou] {
    min-height: 42px;
    white-space: nowrap;
}

.document-action-button.email:disabled[b-jtslnhi8ou] {
    border: 1px solid #d7e1e7 !important;
    background: #e8eef2 !important;
    color: #8b9aa5 !important;
    opacity: 1 !important;
}

.document-email-disabled-note[b-jtslnhi8ou] {
    margin-top: -0.25rem;
    color: #758896;
    font-size: 0.75rem;
    text-align: right;
}

:root[data-theme="dark"] .document-actions[b-jtslnhi8ou] {
    border-top-color: #2a414e;
}

:root[data-theme="dark"] .document-action-button.email:disabled[b-jtslnhi8ou] {
    border-color: #314956 !important;
    background: #223640 !important;
    color: #78909d !important;
}

:root[data-theme="dark"] .document-email-disabled-note[b-jtslnhi8ou] {
    color: #899da9;
}

@media (max-width: 640.98px) {
    .document-actions[b-jtslnhi8ou] {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 0.5rem !important;
        padding-top: 0.75rem !important;
    }

    .document-action-button[b-jtslnhi8ou] {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 46px !important;
        padding-inline: 0.6rem !important;
        white-space: normal !important;
    }

    .document-email-disabled-note[b-jtslnhi8ou] {
        margin-top: 0 !important;
        text-align: left !important;
        line-height: 1.4;
    }
}

@media (max-width: 390px) {
    .document-actions[b-jtslnhi8ou] {
        grid-template-columns: 1fr !important;
    }
}


/* 0.9.5 – Empfängerrollen im Versanddialog */
.documents-recipient-option[b-jtslnhi8ou] {
    grid-template-columns: auto 2.6rem minmax(0, 1fr) auto !important;
}
.documents-recipient-role-badge[b-jtslnhi8ou] {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:1.8rem;
    padding:.25rem .6rem;
    border:1px solid #cfe3f0;
    border-radius:999px;
    color:#0874ba;
    background:#eef8fd;
    font-size:.7rem;
    font-weight:750;
}
:root[data-theme="dark"] .documents-recipient-role-badge[b-jtslnhi8ou] {
    color:#78c7f1;
    border-color:#31566c;
    background:#17394c;
}
@media(max-width:480px){
    .documents-recipient-option[b-jtslnhi8ou]{grid-template-columns:auto 2.4rem minmax(0,1fr) auto!important;gap:.55rem!important}
    .documents-recipient-role-badge[b-jtslnhi8ou]{padding:.2rem .45rem;font-size:.64rem}
}
/* /Components/Pages/Home.razor.rz.scp.css */
.dashboard-page[b-pezt09pf6m] {
    display: grid;
    gap: 1.4rem;
    padding-bottom: 2rem;
}

.dashboard-header[b-pezt09pf6m] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 2rem;
}

.dashboard-intro[b-pezt09pf6m] {
    min-width: 0;
}

.dashboard-eyebrow[b-pezt09pf6m] {
    display: inline-flex;
    margin-bottom: 0.45rem;
    color: #0874ba;
    font-size: 0.72rem;
    font-weight: 750;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.dashboard-header h1[b-pezt09pf6m] {
    margin: 0;
    color: #17283a;
    font-size: 2rem;
    font-weight: 760;
    line-height: 1.15;
    letter-spacing: -0.035em;
}

.dashboard-header p[b-pezt09pf6m] {
    max-width: 760px;
    margin: 0.6rem 0 0;
    color: #687788;
    font-size: 0.98rem;
    line-height: 1.5;
}

.dashboard-date-panel[b-pezt09pf6m] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-shrink: 0;
    margin-top: 2.15rem;
    padding: 0.75rem 0.8rem 0.75rem 1rem;
    border: 1px solid #dfe8f0;
    border-radius: 17px;
    background: rgba(255, 255, 255, 0.92);
    box-shadow: 0 12px 30px rgba(18, 54, 82, 0.05);
}

.dashboard-date-time[b-pezt09pf6m] {
    display: grid;
    gap: 0.18rem;
    min-width: 170px;
    color: #32495c;
    font-size: 0.88rem;
    font-weight: 650;
    line-height: 1.25;
    text-align: left;
}

    .dashboard-date-time span[b-pezt09pf6m] {
        color: inherit;
        font: inherit;
    }

.dashboard-refresh-button[b-pezt09pf6m] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    min-height: 42px;
    padding: 0.65rem 0.85rem;
    border: 1px solid #d7e3eb;
    border-radius: 12px;
    color: #687788;
    background: #f7fbfd;
    font: inherit;
    font-size: 0.78rem;
    font-weight: 700;
    cursor: pointer;
}

    .dashboard-refresh-button:hover[b-pezt09pf6m] {
        border-color: #b7d4e7;
        background: #eef7fc;
    }

    .dashboard-refresh-button:disabled[b-pezt09pf6m] {
        cursor: wait;
        opacity: 0.7;
    }

.dashboard-refresh-icon[b-pezt09pf6m] {
    width: 16px;
    height: 16px;
    object-fit: contain;
}

    .dashboard-refresh-icon.is-spinning[b-pezt09pf6m] {
        animation: dashboard-spin-b-pezt09pf6m 800ms linear infinite;
    }

.dashboard-overview-row[b-pezt09pf6m] {
    display: grid;
    grid-template-columns: minmax(190px, 0.7fr) minmax(230px, 0.9fr) minmax(420px, 2fr);
    gap: 1rem;
    align-items: stretch;
}

.dashboard-metric-card[b-pezt09pf6m],
.dashboard-information-card[b-pezt09pf6m],
.dashboard-panel[b-pezt09pf6m] {
    min-width: 0;
    border: 1px solid #dfe8f0;
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.05);
}

.dashboard-metric-card[b-pezt09pf6m] {
    position: relative;
    padding: 1.15rem;
    overflow: hidden;
}

    .dashboard-metric-card[b-pezt09pf6m]::after {
        position: absolute;
        right: -30px;
        bottom: -45px;
        width: 105px;
        height: 105px;
        border-radius: 50%;
        background: rgba(7, 133, 209, 0.052);
        content: "";
    }

.dashboard-metric-icon[b-pezt09pf6m] {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    margin-bottom: 0.95rem;
    border: 1px solid #d8ebf7;
    border-radius: 12px;
    background: #eef7fc;
}

    .dashboard-metric-icon img[b-pezt09pf6m] {
        width: 20px;
        height: 20px;
        object-fit: contain;
    }

.dashboard-metric-card > span[b-pezt09pf6m] {
    display: block;
    color: #718091;
    font-size: 0.92rem;
    font-weight: 700;
}

.dashboard-metric-card > strong[b-pezt09pf6m] {
    position: relative;
    z-index: 1;
    display: block;
    margin-top: 0.22rem;
    overflow: hidden;
    color: #17283a;
    font-size: clamp(1.55rem, 2.4vw, 2rem);
    font-weight: 780;
    line-height: 1.15;
    letter-spacing: -0.04em;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-metric-card > small[b-pezt09pf6m] {
    position: relative;
    z-index: 1;
    display: block;
    margin-top: 0.55rem;
    color: #8a97a3;
    font-size: 0.8rem;
}

.dashboard-information-card[b-pezt09pf6m] {
    padding: 1.1rem;
}

.dashboard-panel[b-pezt09pf6m] {
    padding: 1.3rem;
}

.dashboard-panel-heading[b-pezt09pf6m] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.9rem;
}

    .dashboard-panel-heading > div > span[b-pezt09pf6m] {
        display: block;
        margin-bottom: 0.22rem;
        color: #0874ba;
        font-size: 0.75rem;
        font-weight: 750;
        letter-spacing: 0.06em;
        text-transform: uppercase;
    }

    .dashboard-panel-heading h2[b-pezt09pf6m] {
        margin: 0;
        color: #17283a;
        font-size: 1.18rem;
        font-weight: 750;
        letter-spacing: -0.02em;
    }

    .dashboard-panel-heading > a[b-pezt09pf6m] {
        color: #17699d;
        font-size: 0.76rem;
        font-weight: 700;
        text-decoration: none;
    }

        .dashboard-panel-heading > a:hover[b-pezt09pf6m] {
            color: #0785d1;
        }

.dashboard-notice-list[b-pezt09pf6m] {
    display: grid;
    gap: 0.6rem;
}

.dashboard-notice[b-pezt09pf6m] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.7rem;
    min-height: 57px;
    padding: 0.68rem 0.78rem;
    border: 1px solid #e0e8ef;
    border-radius: 13px;
    color: inherit;
    background: #fbfcfd;
    text-decoration: none;
}

    .dashboard-notice:hover[b-pezt09pf6m] {
        color: inherit;
        border-color: #bfd7e7;
        background: #f6fafc;
    }

.dashboard-notice-status[b-pezt09pf6m] {
    display: grid;
    place-items: center;
    width: 16px;
    height: 16px;
}

.dashboard-notice-dot[b-pezt09pf6m] {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #4b9fce;
    box-shadow: 0 0 0 2px rgba(75, 159, 206, 0.08);
}

.dashboard-notice.is-warning .dashboard-notice-dot[b-pezt09pf6m] {
    background: #d6a12f;
    box-shadow: 0 0 0 2px rgba(214, 161, 47, 0.08);
}

.dashboard-notice.is-success .dashboard-notice-dot[b-pezt09pf6m] {
    background: #56ad72;
    box-shadow: 0 0 0 2px rgba(86, 173, 114, 0.08);
}

.dashboard-notice strong[b-pezt09pf6m] {
    display: block;
    color: #263d50;
    font-size: 0.88rem;
}

.dashboard-notice div > span[b-pezt09pf6m] {
    display: block;
    margin-top: 0.12rem;
    color: #718091;
    font-size: 0.8rem;
    line-height: 1.4;
}

.dashboard-notice-arrow[b-pezt09pf6m] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

    .dashboard-notice-arrow img[b-pezt09pf6m] {
        width: 12px;
        height: 12px;
        opacity: 0.38;
        object-fit: contain;
        transition: opacity 150ms ease, transform 150ms ease;
    }

    .dashboard-notice:hover .dashboard-notice-arrow img[b-pezt09pf6m] {
        opacity: 0.58;
        transform: translateX(2px);
    }

.dashboard-all-clear[b-pezt09pf6m] {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    min-height: 106px;
    padding: 0.9rem;
    border: 1px solid #cfe8d7;
    border-radius: 15px;
    background: #f3faf5;
}

    .dashboard-all-clear > span[b-pezt09pf6m] {
        display: grid;
        place-items: center;
        width: 38px;
        height: 38px;
        border-radius: 50%;
        color: #ffffff;
        background: #35a95d;
        font-size: 1rem;
        font-weight: 800;
    }

    .dashboard-all-clear strong[b-pezt09pf6m] {
        color: #235c37;
        font-size: 0.94rem;
    }

    .dashboard-all-clear p[b-pezt09pf6m] {
        margin: 0.18rem 0 0;
        color: #65816e;
        font-size: 0.73rem;
    }

.dashboard-clean-energy[b-pezt09pf6m] {
    position: relative;
    display: grid;
    grid-template-columns: minmax(420px, 0.88fr) minmax(0, 1.45fr);
    min-height: 250px;
    overflow: hidden;
    border: 1px solid rgba(66, 176, 104, 0.24);
    border-radius: 24px;
    background: #f8fcfa;
    box-shadow: 0 18px 46px rgba(29, 116, 61, 0.075), inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.dashboard-clean-energy-visual[b-pezt09pf6m] {
    position: relative;
    min-width: 0;
    min-height: 250px;
    overflow: hidden;
}

    .dashboard-clean-energy-visual[b-pezt09pf6m]::after {
        position: absolute;
        inset: 0;
        background: linear-gradient( 90deg, transparent 0%, transparent 66%, rgba(248, 252, 250, 0.12) 76%, #f8fcfa 100% );
        content: "";
        pointer-events: none;
    }

.dashboard-clean-energy-image[b-pezt09pf6m] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

.dashboard-clean-energy-content[b-pezt09pf6m] {
    position: relative;
    z-index: 2;
    display: grid;
    align-content: center;
    min-width: 0;
    padding: 1.3rem 1.6rem 1.3rem 0.65rem;
}

.dashboard-clean-energy-kicker[b-pezt09pf6m] {
    display: block;
    margin-bottom: 0.35rem;
    color: #25814a;
    font-size: 0.75rem;
    font-weight: 780;
    letter-spacing: 0.075em;
    text-transform: uppercase;
}

.dashboard-clean-energy-content h2[b-pezt09pf6m] {
    margin: 0;
    color: #184a2b;
    font-size: clamp(1.22rem, 1.75vw, 1.58rem);
    font-weight: 760;
    line-height: 1.2;
    letter-spacing: -0.03em;
}

.dashboard-clean-energy-values[b-pezt09pf6m] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 1rem;
}

.dashboard-clean-energy-value[b-pezt09pf6m] {
    display: flex;
    align-items: center;
    gap: 0.68rem;
    min-width: 0;
}

.dashboard-clean-energy-value-icon[b-pezt09pf6m] {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    border: 1px solid rgba(56, 155, 89, 0.18);
    border-radius: 50%;
    color: #269450;
    background: rgba(255, 255, 255, 0.84);
    box-shadow: 0 8px 18px rgba(31, 116, 61, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

    .dashboard-clean-energy-value-icon svg[b-pezt09pf6m] {
        width: 20px;
        height: 20px;
    }

.dashboard-clean-energy-value strong[b-pezt09pf6m] {
    display: block;
    color: #173f29;
    font-size: clamp(1.05rem, 1.55vw, 1.42rem);
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.035em;
    white-space: nowrap;
}

.dashboard-clean-energy-value span[b-pezt09pf6m] {
    display: block;
    margin-top: 0.25rem;
    color: #547060;
    font-size: 0.74rem;
    font-weight: 650;
    line-height: 1.25;
}

.dashboard-clean-energy-divider[b-pezt09pf6m] {
    width: 1px;
    align-self: stretch;
    min-height: 56px;
    background: linear-gradient( 180deg, transparent, rgba(43, 139, 77, 0.28), transparent );
}

.dashboard-clean-energy-content p[b-pezt09pf6m] {
    max-width: 820px;
    margin: 0.82rem 0 0;
    color: #466657;
    font-size: 0.82rem;
    line-height: 1.45;
}

.dashboard-clean-energy-note[b-pezt09pf6m] {
    max-width: 860px;
    margin-top: 0.82rem;
}

    .dashboard-clean-energy-note small[b-pezt09pf6m] {
        display: block;
        color: #71887a;
        font-size: 0.68rem;
        line-height: 1.42;
    }

.dashboard-personal-grid[b-pezt09pf6m] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: 1rem;
}

    .dashboard-personal-grid > .dashboard-panel[b-pezt09pf6m] {
        height: 100%;
    }

/* ============================================================
   Persönlicher Stromtarif
   ============================================================ */

.dashboard-tariff-summary[b-pezt09pf6m] {
    display: grid;
    grid-template-columns: minmax(170px, 0.85fr) minmax(0, 2.15fr);
    gap: 0.75rem;
}

    .dashboard-tariff-summary > div[b-pezt09pf6m] {
        min-width: 0;
        padding: 0.9rem;
        border: 1px solid #e4ebf1;
        border-radius: 14px;
        background: #f8fafc;
    }

    .dashboard-tariff-summary span[b-pezt09pf6m] {
        display: block;
        color: #718091;
        font-size: 0.82rem;
        font-weight: 650;
        line-height: 1.3;
    }

    .dashboard-tariff-summary strong[b-pezt09pf6m] {
        display: block;
        margin-top: 0.3rem;
        color: #263d50;
        font-size: 1.08rem;
        font-weight: 750;
        line-height: 1.3;
    }

.dashboard-tariff-price-card strong[b-pezt09pf6m] {
    display: flex;
    align-items: baseline;
    gap: 0.3rem;
    white-space: nowrap;
}

    .dashboard-tariff-price-card strong small[b-pezt09pf6m] {
        color: #687788;
        font-size: 0.72rem;
        font-weight: 650;
        line-height: 1;
    }

.dashboard-tariff-name-card strong[b-pezt09pf6m] {
    overflow-wrap: anywhere;
    white-space: normal;
}

.dashboard-tariff-validity[b-pezt09pf6m] {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin-top: 0.9rem;
    padding: 0.34rem 0.68rem;
    border-radius: 999px;
    color: #40566a;
    background: #eef4f7;
    font-size: 0.72rem;
    font-weight: 750;
    line-height: 1.25;
}

.dashboard-last-billing[b-pezt09pf6m] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}

    .dashboard-last-billing > div[b-pezt09pf6m] {
        padding: 0.9rem;
        border: 1px solid #e4ebf1;
        border-radius: 14px;
        background: #f8fafc;
    }

    .dashboard-last-billing span[b-pezt09pf6m] {
        display: block;
        color: #718091;
        font-size: 0.82rem;
        font-weight: 650;
    }

    .dashboard-last-billing strong[b-pezt09pf6m] {
        display: block;
        margin-top: 0.3rem;
        color: #263d50;
        font-size: 1.08rem;
    }

.dashboard-status-badge[b-pezt09pf6m] {
    display: inline-flex;
    margin-top: 0.9rem;
    padding: 0.34rem 0.68rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 750;
}

    .dashboard-status-badge.is-open[b-pezt09pf6m] {
        color: #915e12;
        background: #fff4d9;
    }

    .dashboard-status-badge.is-paid[b-pezt09pf6m] {
        color: #16733d;
        background: #eaf8ef;
    }

.dashboard-empty-state[b-pezt09pf6m] {
    display: grid;
    gap: 0.3rem;
    min-height: 120px;
    align-content: center;
    padding: 1rem;
    border: 1px dashed #cad8e2;
    border-radius: 16px;
    color: #718091;
    background: #fafcfd;
    text-align: center;
}

    .dashboard-empty-state strong[b-pezt09pf6m] {
        color: #40566a;
        font-size: 0.9rem;
    }

    .dashboard-empty-state span[b-pezt09pf6m] {
        font-size: 0.78rem;
        line-height: 1.45;
    }

.dashboard-quick-actions[b-pezt09pf6m] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.8rem;
}

.dashboard-quick-action[b-pezt09pf6m] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.75rem;
    min-height: 82px;
    padding: 0.84rem;
    border: 1px solid #e0e8ef;
    border-radius: 15px;
    color: inherit;
    background: #fbfcfd;
    text-decoration: none;
    transition: transform 150ms ease, border-color 150ms ease, box-shadow 150ms ease;
}

    .dashboard-quick-action:hover[b-pezt09pf6m] {
        color: inherit;
        transform: translateY(-2px);
        border-color: #bfd7e7;
        box-shadow: 0 12px 26px rgba(18, 74, 114, 0.08);
    }

.dashboard-quick-action-icon[b-pezt09pf6m] {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid #d8ebf7;
    border-radius: 12px;
    background: #eef7fc;
}

    .dashboard-quick-action-icon img[b-pezt09pf6m] {
        width: 20px;
        height: 20px;
        object-fit: contain;
    }

.dashboard-quick-action strong[b-pezt09pf6m] {
    display: block;
    color: #263d50;
    font-size: 0.94rem;
}

.dashboard-quick-action small[b-pezt09pf6m] {
    display: block;
    margin-top: 0.16rem;
    color: #80909e;
    font-size: 0.8rem;
    line-height: 1.35;
}

.dashboard-quick-action-arrow[b-pezt09pf6m] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

    .dashboard-quick-action-arrow img[b-pezt09pf6m] {
        width: 12px;
        height: 12px;
        opacity: 0.38;
        object-fit: contain;
        transition: opacity 150ms ease, transform 150ms ease;
    }

    .dashboard-quick-action:hover .dashboard-quick-action-arrow img[b-pezt09pf6m] {
        opacity: 0.58;
        transform: translateX(2px);
    }


/* ============================================================
   Cloud-Sync Schnellzugriff
   ============================================================ */

.dashboard-cloud-sync-action[b-pezt09pf6m] {
    position: relative;
    grid-column: span 2;
    width: 100%;
    border-color: #dfe8f0;
    color: inherit;
    background: #fbfcfd;
    font: inherit;
    text-align: left;
    cursor: pointer;
}

    .dashboard-cloud-sync-action:hover:not(:disabled)[b-pezt09pf6m] {
        transform: translateY(-2px);
        border-color: #bfd7e7;
        background: #f8fbfd;
        box-shadow: 0 12px 26px rgba(18, 74, 114, 0.08);
    }

    .dashboard-cloud-sync-action:focus-visible[b-pezt09pf6m] {
        outline: 0;
        border-color: #0785d1;
        box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.12);
    }

    .dashboard-cloud-sync-action:disabled[b-pezt09pf6m] {
        cursor: default;
    }

.dashboard-cloud-sync-icon[b-pezt09pf6m] {
    border-color: #d8ebf7;
    background: #eef7fc;
}

    .dashboard-cloud-sync-icon img[b-pezt09pf6m] {
        width: 20px;
        height: 20px;
        object-fit: contain;
    }

.dashboard-cloud-sync-copy[b-pezt09pf6m] {
    min-width: 0;
}

    .dashboard-cloud-sync-copy > strong[b-pezt09pf6m] {
        display: block;
        color: #263d50;
        font-size: 0.94rem;
        font-weight: 750;
        line-height: 1.3;
    }

.dashboard-cloud-sync-status-text[b-pezt09pf6m] {
    display: flex !important;
    align-items: center;
    gap: 0.38rem;
    margin-top: 0.16rem !important;
    color: #80909e !important;
    font-size: 0.8rem !important;
    line-height: 1.35;
}

.dashboard-cloud-sync-indicator[b-pezt09pf6m] {
    display: inline-block;
    width: 5px;
    height: 5px;
    flex: 0 0 5px;
    border-radius: 50%;
}

    .dashboard-cloud-sync-indicator.is-online[b-pezt09pf6m] {
        background: #56ad72;
        box-shadow: 0 0 0 2px rgba(86, 173, 114, 0.08);
    }

    .dashboard-cloud-sync-indicator.is-syncing[b-pezt09pf6m] {
        background: #4b9fce;
        box-shadow: 0 0 0 2px rgba(75, 159, 206, 0.08);
        animation: dashboard-cloud-sync-pulse-b-pezt09pf6m 900ms ease-in-out infinite;
    }

    .dashboard-cloud-sync-indicator.is-error[b-pezt09pf6m] {
        background: #c86a6a;
        box-shadow: 0 0 0 2px rgba(200, 106, 106, 0.08);
    }

.dashboard-cloud-sync-refresh[b-pezt09pf6m] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.dashboard-cloud-sync-refresh-icon[b-pezt09pf6m] {
    width: 13px;
    height: 13px;
    opacity: 0.42;
    object-fit: contain;
    transform-origin: center;
    transition: opacity 150ms ease;
}

    .dashboard-cloud-sync-action:hover:not(:disabled) .dashboard-cloud-sync-refresh-icon:not(.is-spinning)[b-pezt09pf6m] {
        opacity: 0.62;
        animation: dashboard-cloud-sync-hover-spin-b-pezt09pf6m 420ms ease-out 1;
    }

    .dashboard-cloud-sync-refresh-icon.is-spinning[b-pezt09pf6m] {
        opacity: 0.62;
        animation: dashboard-spin-b-pezt09pf6m 800ms linear infinite;
    }

.dashboard-cloud-sync-action.is-success[b-pezt09pf6m] {
    border-color: #d9e9df;
    background: #fbfdfb;
}

.dashboard-cloud-sync-action.is-error[b-pezt09pf6m] {
    border-color: #edd6d6;
    background: #fffafa;
}

.dashboard-cloud-sync-action.is-unavailable[b-pezt09pf6m] {
    opacity: 0.66;
    border-color: #dde6ec;
    background: #f8fafb;
}

@keyframes dashboard-cloud-sync-pulse-b-pezt09pf6m {
    0%, 100% {
        opacity: 0.5;
        transform: scale(0.88);
    }

    50% {
        opacity: 1;
        transform: scale(1.12);
    }
}

@keyframes dashboard-cloud-sync-hover-spin-b-pezt09pf6m {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.dashboard-message[b-pezt09pf6m],
.dashboard-loading[b-pezt09pf6m] {
    padding: 1.2rem;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #ffffff;
}

.dashboard-message[b-pezt09pf6m] {
    display: grid;
    gap: 0.35rem;
}

    .dashboard-message strong[b-pezt09pf6m] {
        color: #263d50;
    }

    .dashboard-message span[b-pezt09pf6m] {
        color: #718091;
        font-size: 0.86rem;
    }

    .dashboard-message button[b-pezt09pf6m] {
        justify-self: start;
        margin-top: 0.5rem;
        padding: 0.55rem 0.8rem;
        border: 0;
        border-radius: 10px;
        color: #ffffff;
        background: #0874ba;
        font: inherit;
        font-size: 0.78rem;
        font-weight: 700;
        cursor: pointer;
    }

.dashboard-message-warning[b-pezt09pf6m] {
    border-color: #ead3a0;
    background: #fffaf0;
}

.dashboard-message-error[b-pezt09pf6m] {
    border-color: #efcaca;
    background: #fff5f5;
}

.dashboard-loading[b-pezt09pf6m] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: #687788;
}

.dashboard-loading-pulse[b-pezt09pf6m] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #0785d1;
    animation: dashboard-loading-b-pezt09pf6m 1.2s ease-in-out infinite;
}

@keyframes dashboard-spin-b-pezt09pf6m {
    to {
        transform: rotate(360deg);
    }
}

@keyframes dashboard-core-float-b-pezt09pf6m {
    0%, 100% {
        transform: translateY(0) rotate(-8deg);
    }

    50% {
        transform: translateY(-7px) rotate(-5deg);
    }
}

@keyframes dashboard-ring-spin-b-pezt09pf6m {
    to {
        transform: rotate(360deg);
    }
}

@keyframes dashboard-ring-spin-reverse-b-pezt09pf6m {
    to {
        transform: rotate(-360deg);
    }
}

@keyframes dashboard-particle-pulse-b-pezt09pf6m {
    0%, 100% {
        opacity: 0.45;
        transform: scale(0.78);
    }

    50% {
        opacity: 1;
        transform: scale(1.25);
    }
}

@keyframes dashboard-flow-b-pezt09pf6m {
    0%, 100% {
        opacity: 0.2;
        transform: translateX(-7px) scaleX(0.72);
    }

    50% {
        opacity: 1;
        transform: translateX(7px) scaleX(1);
    }
}

@keyframes dashboard-loading-b-pezt09pf6m {
    0%, 100% {
        opacity: 0.35;
        transform: scale(0.85);
    }

    50% {
        opacity: 1;
        transform: scale(1);
    }
}

@media (max-width: 1180px) {
    .dashboard-overview-row[b-pezt09pf6m] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-information-card[b-pezt09pf6m] {
        grid-column: 1 / -1;
    }

    .dashboard-quick-actions[b-pezt09pf6m] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-clean-energy[b-pezt09pf6m] {
        grid-template-columns: minmax(350px, 0.82fr) minmax(0, 1.18fr);
    }

    .dashboard-clean-energy-values[b-pezt09pf6m] {
        flex-wrap: wrap;
    }
}

@media (max-width: 820px) {
    .dashboard-header[b-pezt09pf6m] {
        display: grid;
    }

    .dashboard-date-panel[b-pezt09pf6m] {
        justify-content: space-between;
    }

    .dashboard-date-panel[b-pezt09pf6m] {
        margin-top: 0;
    }

    .dashboard-personal-grid[b-pezt09pf6m] {
        grid-template-columns: 1fr;
    }

    .dashboard-last-billing[b-pezt09pf6m] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .dashboard-clean-energy[b-pezt09pf6m] {
        grid-template-columns: 1fr;
        min-height: auto;
    }

    .dashboard-clean-energy-visual[b-pezt09pf6m] {
        min-height: 210px;
    }

        .dashboard-clean-energy-visual[b-pezt09pf6m]::after {
            background: linear-gradient( 180deg, transparent 0%, transparent 67%, rgba(248, 252, 250, 0.32) 78%, #f8fcfa 100% );
        }

    .dashboard-clean-energy-content[b-pezt09pf6m] {
        padding: 1rem 1.15rem 1.3rem;
    }
}

@media (max-width: 640px) {
    .dashboard-page[b-pezt09pf6m] {
        gap: 1rem;
    }

    .dashboard-header h1[b-pezt09pf6m] {
        font-size: 1.75rem;
    }

    .dashboard-date-panel[b-pezt09pf6m],
    .dashboard-overview-row[b-pezt09pf6m],
    .dashboard-quick-actions[b-pezt09pf6m] {
        grid-template-columns: 1fr;
    }

    .dashboard-cloud-sync-action[b-pezt09pf6m] {
        grid-column: span 1;
    }

    .dashboard-date-panel[b-pezt09pf6m] {
        display: grid;
    }

    .dashboard-refresh-button[b-pezt09pf6m] {
        width: 100%;
    }

    .dashboard-information-card[b-pezt09pf6m] {
        grid-column: auto;
    }

    .dashboard-panel-heading[b-pezt09pf6m] {
        display: grid;
    }
}

@media (max-width: 560px) {
    .dashboard-tariff-summary[b-pezt09pf6m] {
        grid-template-columns: 1fr;
    }

    .dashboard-clean-energy-values[b-pezt09pf6m] {
        display: grid;
        gap: 0.85rem;
    }

    .dashboard-clean-energy-divider[b-pezt09pf6m] {
        width: 100%;
        min-height: 1px;
        height: 1px;
        background: linear-gradient( 90deg, transparent, rgba(43, 139, 77, 0.25), transparent );
    }
}

@media (prefers-reduced-motion: reduce) {
    .dashboard-refresh-icon[b-pezt09pf6m],
    .dashboard-loading-pulse[b-pezt09pf6m],
    .dashboard-cloud-sync-refresh-icon[b-pezt09pf6m],
    .dashboard-cloud-sync-indicator[b-pezt09pf6m],
    .dashboard-quick-action[b-pezt09pf6m] {
        animation: none;
        transition: none;
    }
}


/* ============================================================
   v0.9.1 – Aktualisieren-Button wie auf Ladevorgänge
   ============================================================ */

.dashboard-refresh-button[b-pezt09pf6m] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    min-height: 48px;
    padding: 0.72rem 1.1rem;
    border: 1px solid #d7e3eb;
    border-radius: 13px;
    color: #40566a;
    background: #ffffff;
    font: inherit;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.2;
    cursor: pointer;
    box-shadow: none;
    transition:
        border-color 150ms ease,
        background-color 150ms ease,
        box-shadow 150ms ease,
        transform 150ms ease;
}

.dashboard-refresh-button:hover:not(:disabled)[b-pezt09pf6m] {
    transform: translateY(-1px);
    border-color: #bfd7e7;
    background: #f8fbfd;
    box-shadow: 0 8px 20px rgba(18, 74, 114, 0.08);
}

.dashboard-refresh-button:disabled[b-pezt09pf6m] {
    cursor: wait;
    opacity: 0.7;
}

.dashboard-refresh-button.is-success[b-pezt09pf6m] {
    border-color: #b9dec7;
    color: #28623c;
    background: #eef9f1;
    box-shadow: 0 6px 18px rgba(40, 98, 60, 0.08);
}

/* v0.9.2 – Datum/Aktualisieren-Kachel mit zusätzlichem Platz */
@media (min-width: 761px) {
    .dashboard-date-panel[b-pezt09pf6m] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 2rem;
        width: 430px;
        box-sizing: border-box;
    }

    .dashboard-date-time[b-pezt09pf6m] {
        flex: 0 0 170px;
        min-width: 170px;
        width: auto;
    }

    .dashboard-refresh-button[b-pezt09pf6m] {
        flex: 0 0 auto;
        width: auto;
        min-width: 0;
    }
}


/* v0.9.2 – Refresh-/Sync-Animationen im Uhrzeigersinn */
.dashboard-refresh-icon.is-spinning[b-pezt09pf6m] {
    animation: dashboard-refresh-spin-clockwise-b-pezt09pf6m 800ms linear infinite;
}

.dashboard-cloud-sync-action:hover:not(:disabled) .dashboard-cloud-sync-refresh-icon:not(.is-spinning)[b-pezt09pf6m] {
    animation: dashboard-cloud-sync-hover-spin-clockwise-b-pezt09pf6m 420ms ease-out 1;
}

.dashboard-cloud-sync-refresh-icon.is-spinning[b-pezt09pf6m] {
    animation: dashboard-cloud-sync-spin-clockwise-b-pezt09pf6m 800ms linear infinite;
}

@keyframes dashboard-refresh-spin-clockwise-b-pezt09pf6m {
    to {
        transform: rotate(360deg);
    }
}

@keyframes dashboard-cloud-sync-hover-spin-clockwise-b-pezt09pf6m {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

@keyframes dashboard-cloud-sync-spin-clockwise-b-pezt09pf6m {
    to {
        transform: rotate(360deg);
    }
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 760px) {
    .dashboard-page[b-pezt09pf6m] {
        min-width: 0;
    }

    .dashboard-header[b-pezt09pf6m] {
        align-items: stretch;
        gap: 1rem;
    }

    .dashboard-date-panel[b-pezt09pf6m] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        width: 100%;
        min-width: 0;
        padding: 1rem;
    }

    .dashboard-date-time[b-pezt09pf6m] {
        flex: 1 1 auto;
        min-width: 0;
        width: auto;
    }

    .dashboard-refresh-button[b-pezt09pf6m] {
        flex: 0 0 auto;
        min-height: 48px;
        width: auto;
    }

    .dashboard-overview-row[b-pezt09pf6m],
    .dashboard-personal-grid[b-pezt09pf6m],
    .dashboard-quick-actions[b-pezt09pf6m] {
        grid-template-columns: 1fr;
    }

    .dashboard-metric-card[b-pezt09pf6m],
    .dashboard-information-card[b-pezt09pf6m],
    .dashboard-panel[b-pezt09pf6m],
    .dashboard-clean-energy[b-pezt09pf6m] {
        min-width: 0;
    }

    .dashboard-clean-energy[b-pezt09pf6m] {
        grid-template-columns: 1fr;
    }

    .dashboard-clean-energy-visual[b-pezt09pf6m] {
        min-height: 180px;
    }

    .dashboard-clean-energy-values[b-pezt09pf6m] {
        grid-template-columns: 1fr;
        gap: 0.75rem;
    }

    .dashboard-quick-action[b-pezt09pf6m] {
        min-height: 70px;
        touch-action: manipulation;
    }
}

@media (max-width: 520px) {
    .dashboard-date-panel[b-pezt09pf6m] {
        align-items: flex-start;
    }

    .dashboard-refresh-button[b-pezt09pf6m] {
        min-width: 48px;
        padding-right: 0.9rem;
        padding-left: 0.9rem;
    }
}


/* ============================================================
   v0.9.3 – MOBILE DASHBOARD FOUNDATION
   ============================================================ */
@media (max-width: 640.98px) {
    .dashboard-page[b-pezt09pf6m] {
        gap: 1rem;
        padding-bottom: 1rem;
    }

    .dashboard-header[b-pezt09pf6m] {
        display: grid;
        gap: 1rem;
    }

    .dashboard-eyebrow[b-pezt09pf6m] {
        margin-bottom: .35rem;
        font-size: .68rem;
    }

    .dashboard-header h1[b-pezt09pf6m] {
        font-size: clamp(1.85rem, 8vw, 2.25rem);
        line-height: 1.08;
    }

    .dashboard-header p[b-pezt09pf6m] {
        margin-top: .55rem;
        font-size: .94rem;
        line-height: 1.45;
    }

    .dashboard-date-panel[b-pezt09pf6m] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: .75rem;
        width: 100%;
        margin: 0;
        padding: .8rem .85rem;
        border-radius: 17px;
    }

    .dashboard-date-time[b-pezt09pf6m] {
        min-width: 0;
        font-size: .84rem;
    }

    .dashboard-refresh-button[b-pezt09pf6m] {
        flex: 0 0 auto;
        width: auto;
        min-height: 44px;
        padding: .65rem .8rem;
        font-size: .84rem;
    }

    .dashboard-overview-row[b-pezt09pf6m] {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .75rem;
    }

    .dashboard-metric-card[b-pezt09pf6m] {
        min-height: 148px;
        padding: 1rem;
        border-radius: 18px;
    }

    .dashboard-metric-icon[b-pezt09pf6m] {
        width: 34px;
        height: 34px;
        margin-bottom: .7rem;
        border-radius: 11px;
    }

    .dashboard-metric-icon img[b-pezt09pf6m] {
        width: 18px;
        height: 18px;
    }

    .dashboard-metric-card > span[b-pezt09pf6m] {
        font-size: .78rem;
    }

    .dashboard-metric-card > strong[b-pezt09pf6m] {
        margin-top: .15rem;
        font-size: clamp(1.35rem, 6.5vw, 1.7rem);
        white-space: normal;
    }

    .dashboard-metric-card > small[b-pezt09pf6m] {
        margin-top: .4rem;
        font-size: .72rem;
    }

    .dashboard-information-card[b-pezt09pf6m] {
        grid-column: 1 / -1;
        padding: 1rem;
        border-radius: 18px;
    }

    .dashboard-notice[b-pezt09pf6m] {
        padding: .85rem;
    }

    .dashboard-clean-energy[b-pezt09pf6m] {
        grid-template-columns: 1fr;
        min-height: 0;
        border-radius: 20px;
    }

    .dashboard-clean-energy-visual[b-pezt09pf6m] {
        min-height: 145px;
    }

    .dashboard-clean-energy-visual[b-pezt09pf6m]::after {
        background: linear-gradient(180deg, transparent 0%, rgba(248,252,250,.05) 60%, #f8fcfa 100%);
    }

    .dashboard-clean-energy-content[b-pezt09pf6m] {
        padding: 1rem !important;
    }

    .dashboard-clean-energy-content h2[b-pezt09pf6m] {
        font-size: 1.25rem;
    }

    .dashboard-clean-energy-values[b-pezt09pf6m] {
        display: grid;
        grid-template-columns: 1fr;
        gap: .75rem;
        margin-top: .8rem;
    }

    .dashboard-clean-energy-divider[b-pezt09pf6m] {
        width: 100%;
        min-height: 1px;
        height: 1px;
    }

    .dashboard-clean-energy-value-icon[b-pezt09pf6m] {
        width: 36px;
        height: 36px;
        flex-basis: 36px;
    }

    .dashboard-panel[b-pezt09pf6m] {
        padding: 1rem;
        border-radius: 18px;
    }

    .dashboard-quick-actions[b-pezt09pf6m] {
        display: grid;
        grid-template-columns: 1fr;
        gap: .65rem;
    }

    .dashboard-quick-action[b-pezt09pf6m],
    .dashboard-cloud-sync-action[b-pezt09pf6m] {
        min-height: 64px;
        padding: .8rem;
        border-radius: 15px;
    }

    .dashboard-quick-action-icon[b-pezt09pf6m] {
        width: 36px;
        height: 36px;
    }

    :root[data-theme="dark"] .dashboard-clean-energy-visual[b-pezt09pf6m]::after {
        background: linear-gradient(180deg, rgba(13,23,30,.03) 0%, rgba(13,23,30,.14) 54%, #104529 100%) !important;
    }
}

@media (max-width: 390px) {
    .dashboard-overview-row[b-pezt09pf6m] {
        gap: .6rem;
    }

    .dashboard-metric-card[b-pezt09pf6m] {
        min-height: 140px;
        padding: .85rem;
    }

    .dashboard-refresh-button span[b-pezt09pf6m] {
        display: none;
    }

    .dashboard-refresh-button[b-pezt09pf6m] {
        width: 44px;
        padding: 0;
    }
}


/* ============================================================
   0.9.3d – Dashboard mobile native layout
   ============================================================ */
@media (max-width: 640.98px) {
    .dashboard-page[b-pezt09pf6m] {
        gap: 0.95rem !important;
        padding-bottom: 0 !important;
    }

    .dashboard-header[b-pezt09pf6m] {
        display: grid !important;
        gap: 0.85rem !important;
    }

    .dashboard-date-panel[b-pezt09pf6m] {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        gap: 0.65rem !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0.78rem 0.85rem !important;
        border-radius: 17px !important;
    }

    .dashboard-date-time[b-pezt09pf6m] {
        min-width: 0 !important;
        width: auto !important;
        font-size: 0.79rem !important;
    }

    .dashboard-refresh-button[b-pezt09pf6m] {
        min-height: 42px !important;
        padding: 0.55rem 0.72rem !important;
        border-radius: 12px !important;
        font-size: 0.74rem !important;
    }

    .dashboard-overview-row[b-pezt09pf6m] {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 0.7rem !important;
    }

    .dashboard-information-card[b-pezt09pf6m] {
        grid-column: 1 / -1;
    }

    .dashboard-metric-card[b-pezt09pf6m] {
        min-height: 126px !important;
        padding: 0.85rem !important;
        border-radius: 18px !important;
    }

    .dashboard-metric-icon[b-pezt09pf6m] {
        width: 34px !important;
        height: 34px !important;
        margin-bottom: 0.7rem !important;
        border-radius: 11px !important;
    }

    .dashboard-metric-icon img[b-pezt09pf6m] {
        width: 18px !important;
        height: 18px !important;
    }

    .dashboard-metric-card > span[b-pezt09pf6m] {
        font-size: 0.76rem !important;
    }

    .dashboard-metric-card > strong[b-pezt09pf6m] {
        font-size: clamp(1.35rem, 6vw, 1.65rem) !important;
    }

    .dashboard-metric-card > small[b-pezt09pf6m] {
        margin-top: 0.38rem !important;
        font-size: 0.71rem !important;
    }

    .dashboard-information-card[b-pezt09pf6m],
    .dashboard-panel[b-pezt09pf6m] {
        padding: 1rem !important;
        border-radius: 20px !important;
    }

    .dashboard-clean-energy[b-pezt09pf6m] {
        display: grid !important;
        grid-template-columns: 1fr !important;
        min-height: 0 !important;
        border-radius: 21px !important;
    }

    .dashboard-clean-energy-visual[b-pezt09pf6m] {
        min-height: 145px !important;
        max-height: 145px !important;
    }

    .dashboard-clean-energy-image[b-pezt09pf6m] {
        object-position: center 46% !important;
    }

    .dashboard-clean-energy-content[b-pezt09pf6m] {
        padding: 1.05rem !important;
    }

    .dashboard-clean-energy-content[b-pezt09pf6m]::before {
        display: none !important;
    }

    .dashboard-clean-energy-content h2[b-pezt09pf6m] {
        font-size: 1.17rem !important;
        line-height: 1.18 !important;
    }

    .dashboard-clean-energy-values[b-pezt09pf6m] {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0 !important;
        margin-top: 0.72rem !important;
    }

    .dashboard-clean-energy-value[b-pezt09pf6m] {
        padding: 0.7rem 0 !important;
        border-bottom: 1px solid rgba(63, 139, 88, 0.13);
    }

    .dashboard-clean-energy-value:last-of-type[b-pezt09pf6m] {
        border-bottom: 0;
    }

    .dashboard-clean-energy-divider[b-pezt09pf6m] {
        display: none !important;
    }

    .dashboard-clean-energy-value-icon[b-pezt09pf6m] {
        width: 36px !important;
        height: 36px !important;
        flex-basis: 36px !important;
    }

    .dashboard-clean-energy-value strong[b-pezt09pf6m] {
        font-size: 1rem !important;
    }

    .dashboard-clean-energy-value span[b-pezt09pf6m] {
        font-size: 0.7rem !important;
    }

    .dashboard-clean-energy-note[b-pezt09pf6m] {
        margin-top: 0.45rem !important;
    }

    .dashboard-quick-actions[b-pezt09pf6m] {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.55rem !important;
    }

    .dashboard-quick-action[b-pezt09pf6m],
    .dashboard-cloud-sync-action[b-pezt09pf6m] {
        min-height: 64px !important;
        padding: 0.7rem 0.75rem !important;
        border-radius: 15px !important;
    }

    .dashboard-quick-action-icon[b-pezt09pf6m] {
        width: 34px !important;
        height: 34px !important;
        border-radius: 10px !important;
    }

    .dashboard-quick-action-icon img[b-pezt09pf6m] {
        width: 18px !important;
        height: 18px !important;
    }
}

/* ============================================================
   0.9.4 – Dashboard Mobile-Feinschliff
   ============================================================ */
@media (max-width: 640.98px) {
    .dashboard-intro h1[b-pezt09pf6m] {
        font-size: clamp(1.65rem, 7vw, 2rem) !important;
        line-height: 1.08 !important;
    }

    .dashboard-date-panel[b-pezt09pf6m] {
        display: none !important;
    }

    .dashboard-page[b-pezt09pf6m] {
        padding-bottom: 2.6rem !important;
    }
}


/* ============================================================
   0.9.4 – Hero SVG-Icons als CSS-Masken
   Die SVG-Dateien selbst dürfen schwarz sein
   ============================================================ */
.dashboard-widget-icon[b-pezt09pf6m] {
    display: block;
    width: 22px;
    height: 22px;
    background: currentColor;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: contain;
    mask-size: contain;
}

.dashboard-widget-icon.is-energy[b-pezt09pf6m] {
    -webkit-mask-image: url('/icons/widget-energy.svg');
    mask-image: url('/icons/widget-energy.svg');
}

.dashboard-widget-icon.is-co2[b-pezt09pf6m] {
    -webkit-mask-image: url('/icons/widget-co2.svg');
    mask-image: url('/icons/widget-co2.svg');
}

.dashboard-widget-icon.is-money[b-pezt09pf6m] {
    -webkit-mask-image: url('/icons/widget-money.svg');
    mask-image: url('/icons/widget-money.svg');
}

.dashboard-clean-energy-note[b-pezt09pf6m] {
    display: grid;
    gap: 0.18rem;
}

/* Dashboard: mobile Begrüßung bewusst kompakter */
@media (max-width: 640.98px) {
    .dashboard-intro h1[b-pezt09pf6m] {
        font-size: clamp(1.5rem, 6.4vw, 1.82rem) !important;
    }

    .dashboard-date-panel[b-pezt09pf6m] {
        display: none !important;
    }

    .dashboard-page[b-pezt09pf6m] {
        padding-bottom: 4rem !important;
    }
}


/* ============================================================
   0.9.4 – Hero-Icon Feinausrichtung
   ============================================================ */
.dashboard-clean-energy-value-icon[b-pezt09pf6m] {
    display: grid !important;
    place-items: center !important;
}

.dashboard-widget-icon[b-pezt09pf6m] {
    width: 20px !important;
    height: 20px !important;
    transform-origin: center;
}

.dashboard-widget-icon.is-energy[b-pezt09pf6m] {
    transform: translateY(-0.5px);
}

.dashboard-widget-icon.is-co2[b-pezt09pf6m] {
    transform: translate(-0.25px, -0.25px);
}

.dashboard-widget-icon.is-money[b-pezt09pf6m] {
    transform: translateY(-0.5px);
}


/* ============================================================
   0.9.4 – Hero-Icons final zentriert
   ============================================================ */
.dashboard-clean-energy-value-icon[b-pezt09pf6m] {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
}

.dashboard-widget-icon[b-pezt09pf6m] {
    display: block !important;
    flex: 0 0 19px !important;
    width: 19px !important;
    height: 19px !important;
    margin: 0 !important;
    transform: none !important;
    transform-origin: 50% 50% !important;
    -webkit-mask-position: 50% 50% !important;
    mask-position: 50% 50% !important;
    -webkit-mask-size: 18px 18px !important;
    mask-size: 18px 18px !important;
}

.dashboard-widget-icon.is-energy[b-pezt09pf6m],
.dashboard-widget-icon.is-co2[b-pezt09pf6m],
.dashboard-widget-icon.is-money[b-pezt09pf6m] {
    transform: none !important;
}


/* ============================================================
   0.9.5 – Dashboard Header + Schnellzugriffe
   ============================================================ */
@media (min-width: 901px) {
    .dashboard-header[b-pezt09pf6m] {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: stretch !important;
        column-gap: 2rem !important;
        margin-bottom: 0.25rem !important;
    }

    .dashboard-intro[b-pezt09pf6m] {
        display: grid;
        align-content: center;
        min-height: 92px;
        padding-block: 0.15rem;
    }

    .dashboard-eyebrow[b-pezt09pf6m] {
        margin-bottom: 0.52rem !important;
    }

    .dashboard-header p[b-pezt09pf6m] {
        margin-top: 0.72rem !important;
    }

    .dashboard-date-panel[b-pezt09pf6m] {
        align-self: stretch !important;
        min-height: 92px;
        margin-top: 0 !important;
    }

    .dashboard-quick-action strong[b-pezt09pf6m] {
        white-space: nowrap;
    }
}

.dashboard-cloud-sync-status-text[b-pezt09pf6m] {
    display: grid !important;
    gap: 0.08rem !important;
}

.dashboard-cloud-sync-state-line[b-pezt09pf6m] {
    display: inline-flex;
    align-items: center;
    gap: 0.38rem;
}

.dashboard-cloud-sync-detail-line[b-pezt09pf6m] {
    display: inline-block;
}

@media (max-width: 640.98px) {
    .dashboard-cloud-sync-status-text[b-pezt09pf6m] {
        margin-top: 0.24rem !important;
    }

    .dashboard-cloud-sync-state-line[b-pezt09pf6m],
    .dashboard-cloud-sync-detail-line[b-pezt09pf6m] {
        width: 100%;
    }

    .dashboard-cloud-sync-detail-line[b-pezt09pf6m] {
        padding-left: calc(5px + 0.38rem);
    }
}


/* ============================================================
   0.9.5 – Dashboard Desktop-/Sync-Polish
   ============================================================ */
@media (min-width: 821px) {
    .dashboard-header[b-pezt09pf6m] {
        align-items: center !important;
    }

    .dashboard-date-panel[b-pezt09pf6m] {
        margin-top: 0 !important;
        border-color: #d9e5ed !important;
        background: transparent !important;
        box-shadow: none !important;
    }
}

@media (min-width: 1181px) {
    .dashboard-quick-actions[b-pezt09pf6m] {
        grid-template-columns:
            minmax(190px, 0.7fr)
            minmax(230px, 0.9fr)
            minmax(0, 1fr)
            minmax(0, 1fr) !important;
    }

    .dashboard-cloud-sync-action[b-pezt09pf6m] {
        grid-column: 1 / span 2 !important;
    }
}

@media (min-width: 641px) {
    .dashboard-cloud-sync-status-text[b-pezt09pf6m] {
        display: flex !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        gap: 0.35rem !important;
        white-space: nowrap !important;
    }

    .dashboard-cloud-sync-state-line[b-pezt09pf6m] {
        display: inline-flex !important;
        align-items: center !important;
        gap: 0.32rem !important;
        white-space: nowrap !important;
    }

    .dashboard-cloud-sync-detail-line[b-pezt09pf6m] {
        display: inline !important;
        white-space: nowrap !important;
    }

    .dashboard-cloud-sync-detail-line[b-pezt09pf6m]::before {
        content: "· ";
    }
}

@media (max-width: 640.98px) {
    .dashboard-cloud-sync-status-text[b-pezt09pf6m] {
        display: grid !important;
        gap: 0.08rem !important;
    }

    .dashboard-cloud-sync-state-line[b-pezt09pf6m] {
        display: inline-flex !important;
        align-items: center !important;
        gap: 0.32rem !important;
    }

    .dashboard-cloud-sync-detail-line[b-pezt09pf6m] {
        display: block !important;
        padding-left: 0.82rem !important;
    }
}
/* /Components/Pages/Import.razor.rz.scp.css */
.import-page[b-6jnzqbcu2p] {
    display: grid;
    gap: 2rem;
    padding-bottom: 2rem;
}

.import-page-header h1[b-6jnzqbcu2p] {
    margin: 0;
    color: #17283a;
    font-size: 2rem;
    font-weight: 750;
    line-height: 1.15;
    letter-spacing: -0.035em;
}

.import-page-header p[b-6jnzqbcu2p] {
    max-width: 760px;
    margin: 0.45rem 0 0;
    color: #687788;
    font-size: 1rem;
    line-height: 1.5;
}

.import-section[b-6jnzqbcu2p] {
    display: grid;
    gap: 1rem;
}

.import-section-title[b-6jnzqbcu2p] {
    display: grid;
    gap: 0.25rem;
}

.import-section-title > span[b-6jnzqbcu2p] {
    color: #0874ba;
    font-size: 0.74rem;
    font-weight: 750;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.import-section-title h2[b-6jnzqbcu2p] {
    margin: 0;
    color: #17283a;
    font-size: 1.18rem;
    font-weight: 720;
    line-height: 1.25;
}

.import-section-title p[b-6jnzqbcu2p] {
    margin: 0;
    color: #718091;
    font-size: 0.94rem;
    line-height: 1.45;
}

.import-cloud-card[b-6jnzqbcu2p] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    min-height: 92px;
    padding: 1.05rem 1.15rem;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    color: inherit;
    background: #fbfcfd;
    font: inherit;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.05);
    transition:
        transform 150ms ease,
        border-color 150ms ease,
        background-color 150ms ease,
        box-shadow 150ms ease;
}

.import-cloud-card:hover:not(:disabled)[b-6jnzqbcu2p] {
    transform: translateY(-2px);
    border-color: #bfd7e7;
    background: #f8fbfd;
    box-shadow: 0 18px 42px rgba(18, 74, 114, 0.08);
}

.import-cloud-card:focus-visible[b-6jnzqbcu2p] {
    outline: 0;
    border-color: #0785d1;
    box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.12);
}

.import-cloud-card:disabled[b-6jnzqbcu2p] {
    cursor: default;
}

.import-cloud-card.is-error[b-6jnzqbcu2p] {
    border-color: #edd6d6;
    background: #fffafa;
}

.import-cloud-icon[b-6jnzqbcu2p] {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border: 1px solid #d8ebf7;
    border-radius: 14px;
    background: #eef7fc;
}

.import-cloud-icon img[b-6jnzqbcu2p] {
    width: 24px;
    height: 24px;
    object-fit: contain;
}

.import-cloud-copy[b-6jnzqbcu2p] {
    min-width: 0;
}

.import-cloud-copy > strong[b-6jnzqbcu2p] {
    display: block;
    color: #263d50;
    font-size: 0.98rem;
    font-weight: 750;
    line-height: 1.3;
}

.import-cloud-copy > small[b-6jnzqbcu2p] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin-top: 0.2rem;
    color: #80909e;
    font-size: 0.82rem;
    line-height: 1.35;
}

.import-cloud-indicator[b-6jnzqbcu2p] {
    width: 5px;
    height: 5px;
    flex: 0 0 5px;
    border-radius: 50%;
}

.import-cloud-indicator.is-online[b-6jnzqbcu2p] {
    background: #56ad72;
    box-shadow: 0 0 0 2px rgba(86, 173, 114, 0.08);
}

.import-cloud-indicator.is-syncing[b-6jnzqbcu2p] {
    background: #4b9fce;
    box-shadow: 0 0 0 2px rgba(75, 159, 206, 0.08);
    animation: import-cloud-pulse-b-6jnzqbcu2p 900ms ease-in-out infinite;
}

.import-cloud-indicator.is-error[b-6jnzqbcu2p] {
    background: #c86a6a;
    box-shadow: 0 0 0 2px rgba(200, 106, 106, 0.08);
}

.import-cloud-action[b-6jnzqbcu2p] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.import-cloud-action img[b-6jnzqbcu2p] {
    width: 14px;
    height: 14px;
    opacity: 0.42;
    object-fit: contain;
    transform-origin: center;
}

.import-cloud-card:hover:not(:disabled) .import-cloud-action img:not(.is-spinning)[b-6jnzqbcu2p] {
    opacity: 0.62;
    animation: import-cloud-hover-spin-b-6jnzqbcu2p 420ms ease-out 1;
}

.import-cloud-action img.is-spinning[b-6jnzqbcu2p] {
    opacity: 0.62;
    animation: import-cloud-spin-b-6jnzqbcu2p 800ms linear infinite;
}

.import-cloud-message[b-6jnzqbcu2p] {
    padding: 0.8rem 0.95rem;
    border: 1px solid;
    border-radius: 13px;
    font-size: 0.84rem;
    font-weight: 650;
    line-height: 1.4;
}

.import-cloud-message.is-success[b-6jnzqbcu2p] {
    border-color: #cde7d7;
    color: #24633c;
    background: #eff9f3;
}

.import-cloud-message.is-error[b-6jnzqbcu2p] {
    border-color: #f0cfd0;
    color: #8b3b3f;
    background: #fff3f3;
}

.import-cloud-unavailable[b-6jnzqbcu2p] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 1rem;
    padding: 1.05rem 1.15rem;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #f8fafb;
}

.import-cloud-unavailable strong[b-6jnzqbcu2p] {
    color: #40566a;
    font-size: 0.94rem;
}

.import-cloud-unavailable p[b-6jnzqbcu2p] {
    margin: 0.25rem 0 0;
    color: #718091;
    font-size: 0.84rem;
    line-height: 1.45;
}

.import-overview-panel[b-6jnzqbcu2p] {
    display: grid;
    gap: 1rem;
    padding: 1.5rem;
    border: 1px solid #dfe8f0;
    border-radius: 24px;
    background: #ffffff;
    box-shadow: 0 16px 42px rgba(18, 54, 82, 0.06);
}

@keyframes import-cloud-spin-b-6jnzqbcu2p {
    to {
        transform: rotate(360deg);
    }
}

@keyframes import-cloud-hover-spin-b-6jnzqbcu2p {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

@keyframes import-cloud-pulse-b-6jnzqbcu2p {
    0%, 100% {
        opacity: 0.5;
        transform: scale(0.88);
    }

    50% {
        opacity: 1;
        transform: scale(1.12);
    }
}

.import-panel[b-6jnzqbcu2p] {
    display: grid;
    gap: 1.35rem;
    padding: 1.5rem;
    border: 1px solid #dfe8f0;
    border-radius: 24px;
    background: #ffffff;
    box-shadow: 0 16px 42px rgba(18, 54, 82, 0.06);
}

.import-source-section[b-6jnzqbcu2p] {
    display: grid;
    grid-template-columns: minmax(240px, 0.85fr) minmax(420px, 1.35fr);
    align-items: center;
    gap: 1.5rem;
    padding: 1.15rem 1.25rem;
    border: 1px solid #e1e9ef;
    border-radius: 18px;
    background: #fbfdfe;
}

.import-section-heading[b-6jnzqbcu2p] {
    min-width: 0;
}

    .import-section-heading > span[b-6jnzqbcu2p] {
        display: block;
        margin-bottom: 0.3rem;
        color: #0874ba;
        font-size: 0.74rem;
        font-weight: 750;
        letter-spacing: 0.06em;
        text-transform: uppercase;
    }

    .import-section-heading > strong[b-6jnzqbcu2p] {
        display: block;
        color: #17283a;
        font-size: 1rem;
        font-weight: 750;
        line-height: 1.35;
    }

    .import-section-heading > p[b-6jnzqbcu2p] {
        margin: 0.35rem 0 0;
        color: #718091;
        font-size: 0.84rem;
        line-height: 1.45;
    }

.import-source-options[b-6jnzqbcu2p] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.8rem;
}

.import-source-option[b-6jnzqbcu2p] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 0.8rem;
    min-height: 76px;
    padding: 0.9rem 1rem;
    border: 1px solid #dce6ed;
    border-radius: 15px;
    color: inherit;
    background: #ffffff;
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: border-color 150ms ease, background-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

    .import-source-option:hover:not(:disabled)[b-6jnzqbcu2p] {
        transform: translateY(-1px);
        border-color: #b9d7eb;
        background: #f9fcfe;
        box-shadow: 0 9px 22px rgba(18, 74, 114, 0.07);
    }

    .import-source-option:focus-visible[b-6jnzqbcu2p] {
        outline: 0;
        border-color: #0785d1;
        box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.12);
    }

    .import-source-option:disabled[b-6jnzqbcu2p] {
        cursor: wait;
        opacity: 0.72;
    }

    .import-source-option.is-selected[b-6jnzqbcu2p] {
        border-color: rgba(7, 133, 209, 0.36);
        background: #eef8fd;
        box-shadow: inset 0 0 0 1px rgba(7, 133, 209, 0.08);
    }

.import-source-radio[b-6jnzqbcu2p] {
    position: relative;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    border: 2px solid #aebdca;
    border-radius: 50%;
    background: #ffffff;
}

.import-source-option.is-selected .import-source-radio[b-6jnzqbcu2p] {
    border-color: #0785d1;
}

    .import-source-option.is-selected .import-source-radio[b-6jnzqbcu2p]::after {
        position: absolute;
        inset: 4px;
        border-radius: 50%;
        background: #0785d1;
        content: "";
    }

.import-source-copy[b-6jnzqbcu2p] {
    min-width: 0;
}

    .import-source-copy strong[b-6jnzqbcu2p] {
        display: block;
        color: #263d50;
        font-size: 0.94rem;
        font-weight: 750;
    }

    .import-source-copy small[b-6jnzqbcu2p] {
        display: block;
        margin-top: 0.18rem;
        color: #80909e;
        font-size: 0.78rem;
        line-height: 1.35;
    }

.import-upload-card[b-6jnzqbcu2p] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 1.5rem;
    min-height: 148px;
    padding: 1.3rem 1.5rem;
    border: 1px solid #e0e8ef;
    border-radius: 18px;
    background: #ffffff;
}

.import-upload-content[b-6jnzqbcu2p] {
    min-width: 0;
}

    .import-upload-content > span[b-6jnzqbcu2p] {
        display: block;
        color: #718091;
        font-size: 0.86rem;
        font-weight: 700;
    }

    .import-upload-content > strong[b-6jnzqbcu2p] {
        display: block;
        margin-top: 0.32rem;
        color: #17283a;
        font-size: 1.15rem;
        font-weight: 760;
    }

    .import-upload-content > p[b-6jnzqbcu2p] {
        margin: 0.4rem 0 0;
        color: #718091;
        font-size: 0.9rem;
        line-height: 1.45;
    }

.import-selected-file[b-6jnzqbcu2p] {
    overflow-wrap: anywhere;
}

    .import-selected-file strong[b-6jnzqbcu2p] {
        color: #40566a;
    }

.import-upload-actions[b-6jnzqbcu2p] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.file-upload-button[b-6jnzqbcu2p] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 180px;
    min-height: 48px;
    margin: 0;
    padding: 0.72rem 1.1rem;
    border: 1px solid #0785d1;
    border-radius: 13px;
    color: #ffffff;
    background: #0785d1;
    font: inherit;
    font-size: 0.9rem;
    font-weight: 750;
    line-height: 1.2;
    text-align: center;
    cursor: pointer;
    transition: border-color 150ms ease, background-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

    .file-upload-button:hover:not(:disabled)[b-6jnzqbcu2p] {
        transform: translateY(-1px);
        border-color: #006fb8;
        background: #006fb8;
        box-shadow: 0 10px 22px rgba(0, 112, 184, 0.16);
    }

    .file-upload-button:focus-visible[b-6jnzqbcu2p],
    .file-upload-button:focus-within[b-6jnzqbcu2p] {
        outline: 0;
        box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.13);
    }

    .file-upload-button:disabled[b-6jnzqbcu2p] {
        border-color: #dfe7ee;
        color: #8a99aa;
        background: #e7eef3;
        box-shadow: none;
        cursor: not-allowed;
        transform: none;
    }

    .file-upload-button input[b-6jnzqbcu2p] {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        opacity: 0;
        pointer-events: none;
    }

.import-metric-row[b-6jnzqbcu2p] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

    .import-metric-row .metric-card[b-6jnzqbcu2p] {
        min-width: 0;
        min-height: 118px;
        padding: 1.2rem 1.3rem;
        border: 1px solid #e0e8ef;
        border-radius: 18px;
        background: #ffffff;
    }

        .import-metric-row .metric-card > span[b-6jnzqbcu2p] {
            display: block;
            color: #718091;
            font-size: 0.88rem;
            font-weight: 700;
        }

        .import-metric-row .metric-card > strong[b-6jnzqbcu2p] {
            display: block;
            margin-top: 0.45rem;
            overflow: hidden;
            color: #17283a;
            font-size: clamp(1.35rem, 2vw, 1.75rem);
            font-weight: 780;
            line-height: 1.15;
            letter-spacing: -0.035em;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

.import-table-wrapper[b-6jnzqbcu2p] {
    overflow-x: auto;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #ffffff;
}

    .import-table-wrapper .data-table[b-6jnzqbcu2p] {
        min-width: 860px;
        margin: 0;
    }

        .import-table-wrapper .data-table > :not(caption) > * > *[b-6jnzqbcu2p] {
            padding: 0.85rem 1rem;
            border-color: #e9eef2;
            vertical-align: middle;
        }

        .import-table-wrapper .data-table thead th[b-6jnzqbcu2p] {
            color: #64778a;
            background: #f4f8fb;
            font-size: 0.82rem;
            font-weight: 750;
            white-space: nowrap;
        }

        .import-table-wrapper .data-table tbody td[b-6jnzqbcu2p] {
            color: #17283a;
            font-size: 0.88rem;
        }

.empty-table-cell[b-6jnzqbcu2p] {
    padding: 1.75rem !important;
    color: #718091 !important;
    text-align: center;
}

.import-status[b-6jnzqbcu2p] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    margin-top: 0.85rem;
    padding: 0.78rem 0.9rem;
    border: 1px solid;
    border-radius: 13px;
    font-size: 0.84rem;
    font-weight: 650;
    line-height: 1.4;
}

.import-status-icon[b-6jnzqbcu2p] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    font-size: 0.88rem;
    font-weight: 800;
}

.import-status-info[b-6jnzqbcu2p] {
    border-color: #bae6fd;
    color: #075985;
    background: #f0f9ff;
}

    .import-status-info .import-status-icon[b-6jnzqbcu2p] {
        color: #ffffff;
        background: #0284c7;
    }

.import-status-success[b-6jnzqbcu2p] {
    border-color: #bbf7d0;
    color: #166534;
    background: #f0fdf4;
}

    .import-status-success .import-status-icon[b-6jnzqbcu2p] {
        color: #ffffff;
        background: #22c55e;
    }

.import-status-error[b-6jnzqbcu2p] {
    border-color: #fecaca;
    color: #991b1b;
    background: #fef2f2;
}

    .import-status-error .import-status-icon[b-6jnzqbcu2p] {
        color: #ffffff;
        background: #dc2626;
    }

@media (max-width: 980px) {
    .import-source-section[b-6jnzqbcu2p] {
        grid-template-columns: 1fr;
    }

    .import-upload-card[b-6jnzqbcu2p] {
        grid-template-columns: 1fr;
    }

    .import-upload-actions[b-6jnzqbcu2p] {
        justify-content: flex-start;
    }
}

@media (max-width: 760px) {
    .import-panel[b-6jnzqbcu2p] {
        padding: 1rem;
        border-radius: 20px;
    }

    .import-source-options[b-6jnzqbcu2p],
    .import-metric-row[b-6jnzqbcu2p] {
        grid-template-columns: 1fr;
    }

    .import-upload-actions[b-6jnzqbcu2p] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .file-upload-button[b-6jnzqbcu2p] {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .import-source-option[b-6jnzqbcu2p],
    .file-upload-button[b-6jnzqbcu2p] {
        transition: none;
    }
}


@media (max-width: 640px) {
    .import-page[b-6jnzqbcu2p] {
        gap: 1.6rem;
    }

    .import-page-header h1[b-6jnzqbcu2p] {
        font-size: 1.75rem;
    }

    .import-cloud-card[b-6jnzqbcu2p],
    .import-cloud-unavailable[b-6jnzqbcu2p] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .import-cloud-action[b-6jnzqbcu2p] {
        grid-column: 2;
        justify-self: start;
    }

    .import-overview-panel[b-6jnzqbcu2p] {
        padding: 1rem;
        border-radius: 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .import-cloud-card[b-6jnzqbcu2p],
    .import-cloud-action img[b-6jnzqbcu2p],
    .import-cloud-indicator[b-6jnzqbcu2p] {
        animation: none;
        transition: none;
    }
}


/* ============================================================
   v0.9.1 – Designkonsistenz Kennzahlen & Übersichtstabelle
   ============================================================ */

.import-metric-row .metric-card > span[b-6jnzqbcu2p] {
    color: #718091;
    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0.045em;
    text-transform: uppercase;
}

.import-metric-row .metric-card > strong[b-6jnzqbcu2p] {
    margin-top: 0.42rem;
    color: #17283a;
    font-size: clamp(1.35rem, 2vw, 1.65rem);
    font-weight: 780;
    line-height: 1.15;
    letter-spacing: -0.03em;
}

/* Ladevorgänge-Tabelle dient als Referenz für Tabellenoptik. */
.import-table-wrapper[b-6jnzqbcu2p] {
    overflow-x: auto;
    border: 1px solid #e0e8ef;
    border-radius: 20px;
    background: #ffffff;
}

.import-table-wrapper .data-table[b-6jnzqbcu2p] {
    width: 100%;
    min-width: 860px;
    margin: 0;
    border-collapse: collapse;
}

.import-table-wrapper .data-table > :not(caption) > * > *[b-6jnzqbcu2p] {
    padding: 0.92rem 1rem;
    border: 0;
    border-bottom: 1px solid #edf1f4;
    vertical-align: middle;
}

.import-table-wrapper .data-table thead th[b-6jnzqbcu2p] {
    color: #718091;
    background: #f8fafc;
    font-size: 0.72rem;
    font-weight: 800;
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.import-table-wrapper .data-table tbody td[b-6jnzqbcu2p] {
    color: #334b5f;
    background: #ffffff;
    font-size: 0.82rem;
    font-weight: 400;
    line-height: 1.4;
}

.import-table-wrapper .data-table tbody tr:last-child td[b-6jnzqbcu2p] {
    border-bottom: 0;
}

.import-table-wrapper .data-table tbody tr[b-6jnzqbcu2p] {
    transition: background-color 140ms ease;
}

.import-table-wrapper .data-table tbody tr:hover td[b-6jnzqbcu2p] {
    background: #fbfdfe;
}


/* ============================================================
   v0.9.1 – Datenimport: neue Monatsübersicht
   Referenz: Ladevorgänge-Tabelle
   ============================================================ */

.import-history-table-shell[b-6jnzqbcu2p] {
    width: 100%;
    overflow-x: auto;
    border: 1px solid #e0e8ef;
    border-radius: 20px;
    background: #ffffff;
}

.import-history-table[b-6jnzqbcu2p] {
    width: 100%;
    min-width: 980px;
    margin: 0;
    border-collapse: collapse;
    background: #ffffff;
}

.import-history-table th[b-6jnzqbcu2p],
.import-history-table td[b-6jnzqbcu2p] {
    padding: 0.95rem 1rem;
    border: 0;
    border-bottom: 1px solid #edf1f4;
    vertical-align: middle;
    text-align: left;
}

.import-history-table th[b-6jnzqbcu2p] {
    color: #718091;
    background: #f8fafc;
    font-size: 0.72rem;
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    white-space: nowrap;
}

.import-history-table td[b-6jnzqbcu2p] {
    color: #334b5f;
    background: #ffffff;
    font-size: 0.82rem;
    font-weight: 400;
    line-height: 1.4;
}

.import-history-table tbody tr:last-child td[b-6jnzqbcu2p] {
    border-bottom: 0;
}

.import-history-table tbody tr[b-6jnzqbcu2p] {
    transition: background-color 140ms ease;
}

.import-history-table tbody tr:hover td[b-6jnzqbcu2p] {
    background: #fbfdfe;
}

.import-history-primary[b-6jnzqbcu2p] {
    display: block;
    color: #263d50;
    font-size: 0.82rem;
    font-weight: 500;
    line-height: 1.35;
    white-space: nowrap;
}

.import-history-secondary[b-6jnzqbcu2p] {
    display: block;
    margin-top: 0.16rem;
    color: #82909d;
    font-size: 0.74rem;
    font-weight: 400;
    line-height: 1.35;
    white-space: nowrap;
}

.import-number-column[b-6jnzqbcu2p] {
    text-align: right !important;
    white-space: nowrap;
}

.import-history-empty[b-6jnzqbcu2p] {
    padding: 1.8rem !important;
    color: #718091 !important;
    text-align: center !important;
}

/* v0.9.2 – Cloud-Synchronisation im Uhrzeigersinn */
.import-cloud-card:hover:not(:disabled) .import-cloud-action img:not(.is-spinning)[b-6jnzqbcu2p] {
    animation: import-cloud-hover-spin-clockwise-b-6jnzqbcu2p 420ms ease-out 1;
}

.import-cloud-action img.is-spinning[b-6jnzqbcu2p] {
    animation: import-cloud-spin-clockwise-b-6jnzqbcu2p 800ms linear infinite;
}

@keyframes import-cloud-hover-spin-clockwise-b-6jnzqbcu2p {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

@keyframes import-cloud-spin-clockwise-b-6jnzqbcu2p {
    to {
        transform: rotate(360deg);
    }
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 640.98px) {
    .import-page[b-6jnzqbcu2p],
    .import-panel[b-6jnzqbcu2p],
    .import-upload-card[b-6jnzqbcu2p],
    .import-overview-panel[b-6jnzqbcu2p] {
        min-width: 0;
    }

    .import-page-header[b-6jnzqbcu2p],
    .import-section-heading[b-6jnzqbcu2p] {
        align-items: stretch;
    }

    .import-source-options[b-6jnzqbcu2p] {
        grid-template-columns: 1fr;
    }

    .import-source-radio[b-6jnzqbcu2p],
    .file-upload-button[b-6jnzqbcu2p],
    .import-cloud-action[b-6jnzqbcu2p] {
        min-height: 48px;
        touch-action: manipulation;
    }

    .import-upload-actions[b-6jnzqbcu2p] {
        grid-template-columns: 1fr;
    }

    .import-selected-file[b-6jnzqbcu2p] {
        overflow-wrap: anywhere;
    }

    .import-history-table-shell[b-6jnzqbcu2p] {
        border-radius: 16px;
    }
}


/* ============================================================
   0.9.3d – Datenimport mobile native layout
   ============================================================ */
@media (max-width: 640.98px) {
    .import-page[b-6jnzqbcu2p] {
        gap: 1rem !important;
    }

    .import-section[b-6jnzqbcu2p] {
        gap: 0.7rem !important;
    }

    .import-panel[b-6jnzqbcu2p] {
        padding: 0.85rem !important;
        border-radius: 20px !important;
    }

    .import-cloud-card[b-6jnzqbcu2p] {
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        gap: 0.7rem !important;
        min-height: 70px !important;
        padding: 0.75rem !important;
        border-radius: 16px !important;
    }

    .import-source-section[b-6jnzqbcu2p],
    .import-upload-card[b-6jnzqbcu2p] {
        padding: 0.85rem !important;
        border-radius: 16px !important;
    }

    .import-source-options[b-6jnzqbcu2p] {
        grid-template-columns: 1fr !important;
        gap: 0.55rem !important;
    }

    .import-source-option[b-6jnzqbcu2p] {
        min-height: 66px !important;
        padding: 0.65rem 0.75rem !important;
        border-radius: 14px !important;
    }

    .import-upload-card[b-6jnzqbcu2p] {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.8rem !important;
    }

    .import-upload-actions[b-6jnzqbcu2p] {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.55rem !important;
    }

    .file-upload-button[b-6jnzqbcu2p],
    .import-upload-actions button[b-6jnzqbcu2p] {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 46px !important;
    }

    .import-metric-row[b-6jnzqbcu2p] {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 0.5rem !important;
    }

    .import-metric-row .metric-card[b-6jnzqbcu2p] {
        min-width: 0 !important;
        padding: 0.75rem 0.65rem !important;
    }

    .import-metric-row .metric-card span[b-6jnzqbcu2p] {
        font-size: 0.62rem !important;
    }

    .import-metric-row .metric-card strong[b-6jnzqbcu2p] {
        font-size: 1rem !important;
    }

    .import-table-wrapper[b-6jnzqbcu2p],
    .import-history-table-shell[b-6jnzqbcu2p] {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width:640.98px){.import-cloud-card[b-6jnzqbcu2p]{grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important}.import-cloud-action[b-6jnzqbcu2p]{grid-column:auto!important;justify-self:end!important;align-self:center!important;width:2rem!important;min-width:2rem!important;height:2rem!important;min-height:2rem!important}.import-cloud-action img[b-6jnzqbcu2p]{width:14px!important;height:14px!important}.import-source-radio[b-6jnzqbcu2p]{box-sizing:border-box!important;width:20px!important;min-width:20px!important;max-width:20px!important;height:20px!important;min-height:20px!important;max-height:20px!important;aspect-ratio:1/1!important;border-radius:50%!important;padding:0!important}.import-source-option.is-selected .import-source-radio[b-6jnzqbcu2p]::after{inset:4px!important;border-radius:50%!important}}


/* ============================================================
   0.9.3f – Datenimport final
   ============================================================ */
@media (max-width: 640.98px) {
    .import-cloud-card[b-6jnzqbcu2p] {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) 2rem !important;
        align-items: center !important;
        gap: 0.68rem !important;
    }

    .import-cloud-action[b-6jnzqbcu2p] {
        display: grid !important;
        place-items: center !important;
        grid-column: 3 !important;
        grid-row: 1 !important;
        justify-self: end !important;
        align-self: center !important;
        box-sizing: border-box !important;
        width: 2rem !important;
        min-width: 2rem !important;
        max-width: 2rem !important;
        height: 2rem !important;
        min-height: 2rem !important;
        max-height: 2rem !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .import-cloud-action img[b-6jnzqbcu2p] {
        width: 14px !important;
        height: 14px !important;
    }

    .import-source-option[b-6jnzqbcu2p] {
        display: grid !important;
        grid-template-columns: 20px minmax(0, 1fr) !important;
        align-items: center !important;
    }

    .import-source-radio[b-6jnzqbcu2p] {
        position: relative !important;
        display: block !important;
        box-sizing: border-box !important;
        width: 20px !important;
        min-width: 20px !important;
        max-width: 20px !important;
        height: 20px !important;
        min-height: 20px !important;
        max-height: 20px !important;
        flex: 0 0 20px !important;
        margin: 0 !important;
        padding: 0 !important;
        border-width: 2px !important;
        border-radius: 50% !important;
        aspect-ratio: 1 / 1 !important;
    }

    .import-source-option.is-selected .import-source-radio[b-6jnzqbcu2p]::after {
        position: absolute !important;
        inset: 4px !important;
        width: auto !important;
        height: auto !important;
        border-radius: 50% !important;
    }
}


/* ============================================================
   0.9.3g – Datenimport Rhythmus
   ============================================================ */
@media (max-width: 640.98px) {
    .import-page[b-6jnzqbcu2p] {
        gap: 1.15rem !important;
    }

    .import-manual-section[b-6jnzqbcu2p] {
        position: relative;
        margin-top: 0.25rem !important;
        padding-top: 1.25rem !important;
    }

    .import-manual-section[b-6jnzqbcu2p]::before {
        position: absolute;
        top: 0;
        right: 0.15rem;
        left: 0.15rem;
        height: 1px;
        background: rgba(85, 111, 129, 0.14);
        content: "";
    }

    .import-manual-section .import-section-title[b-6jnzqbcu2p] {
        margin-bottom: 0.15rem !important;
    }

    :root[data-theme="dark"] .import-manual-section[b-6jnzqbcu2p]::before {
        background: rgba(156, 181, 196, 0.15);
    }
}


/* ============================================================
   0.9.5 – Cloud-Sync Statusstruktur
   ============================================================ */
.import-cloud-status-text[b-6jnzqbcu2p] {
    display: grid !important;
    gap: 0.08rem !important;
}

.import-cloud-state-line[b-6jnzqbcu2p] {
    display: inline-flex;
    align-items: center;
    gap: 0.38rem;
}

.import-cloud-detail-line[b-6jnzqbcu2p] {
    display: inline-block;
}

@media (max-width: 640.98px) {
    .import-cloud-state-line[b-6jnzqbcu2p],
    .import-cloud-detail-line[b-6jnzqbcu2p] {
        width: 100%;
    }

    .import-cloud-detail-line[b-6jnzqbcu2p] {
        padding-left: calc(5px + 0.38rem);
    }
}
/* /Components/Pages/Login.razor.rz.scp.css */
.login-card[b-p8ajp8gv06] {
    width: min(100%, 520px);
    padding: 44px 40px 30px;
    border: 1px solid rgba(15, 35, 55, 0.08);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 24px 70px rgba(10, 45, 75, 0.12), 0 4px 16px rgba(10, 45, 75, 0.06);
}

.login-brand[b-p8ajp8gv06] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
}

.login-logo[b-p8ajp8gv06] {
    width: 58px;
    height: 58px;
    border-radius: 14px;
    object-fit: cover;
}

.login-title[b-p8ajp8gv06] {
    color: #0874ba;
    font-size: 2rem;
    font-weight: 750;
    letter-spacing: -0.04em;
}

.login-subtitle[b-p8ajp8gv06] {
    margin: 18px 0 34px;
    color: #687788;
    font-size: 1rem;
    text-align: center;
}


.login-demo-notice[b-p8ajp8gv06] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: -12px 0 28px;
    padding: 13px 14px;
    border: 1px solid rgba(7, 133, 209, 0.20);
    border-radius: 13px;
    background: rgba(7, 133, 209, 0.075);
    color: #17405d;
}

.login-demo-badge[b-p8ajp8gv06] {
    flex: 0 0 auto;
    padding: 5px 9px;
    border-radius: 999px;
    background: #078bd7;
    color: #fff;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.login-demo-copy[b-p8ajp8gv06] {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.login-demo-copy strong[b-p8ajp8gv06] {
    color: #173852;
    font-size: 0.86rem;
    font-weight: 750;
}

.login-demo-copy span[b-p8ajp8gv06] {
    color: #62788a;
    font-size: 0.78rem;
    line-height: 1.35;
}

.login-form[b-p8ajp8gv06] {
    display: grid;
    gap: 20px;
}

.form-field[b-p8ajp8gv06] {
    display: grid;
    gap: 8px;
}

    .form-field label[b-p8ajp8gv06] {
        color: #17283a;
        font-size: 0.95rem;
        font-weight: 650;
    }

    .form-field input[b-p8ajp8gv06] {
        width: 100%;
        min-height: 56px;
        padding: 0 16px;
        border: 1px solid #d7dfe7;
        border-radius: 13px;
        background: #fff;
        color: #122235;
        font: inherit;
        outline: none;
        transition: border-color 160ms ease, box-shadow 160ms ease;
    }

        .form-field input:focus[b-p8ajp8gv06] {
            border-color: #0785d1;
            box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.13);
        }

.remember-me[b-p8ajp8gv06] {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #5d6d7d;
    font-size: 0.92rem;
    cursor: pointer;
}

    .remember-me input[b-p8ajp8gv06] {
        width: 18px;
        height: 18px;
        accent-color: #087ec5;
    }

.login-button[b-p8ajp8gv06] {
    min-height: 56px;
    border: 0;
    border-radius: 13px;
    background: linear-gradient(135deg, #078bd7, #006eb4);
    color: #fff;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
    box-shadow: 0 10px 24px rgba(0, 112, 184, 0.22);
    transition: transform 150ms ease, box-shadow 150ms ease;
}

    .login-button:hover[b-p8ajp8gv06] {
        transform: translateY(-1px);
        box-shadow: 0 14px 30px rgba(0, 112, 184, 0.28);
    }

    .login-button:active[b-p8ajp8gv06] {
        transform: translateY(0);
    }

.login-error[b-p8ajp8gv06] {
    margin-bottom: 20px;
    padding: 13px 15px;
    border: 1px solid #efb4b4;
    border-radius: 12px;
    background: #fff1f1;
    color: #9f2323;
    font-size: 0.92rem;
}

.login-version[b-p8ajp8gv06] {
    margin-top: 28px;
    padding-top: 18px;
    border-top: 1px solid rgba(15, 35, 55, 0.08);
    color: #94a0ab;
    font-size: 0.76rem;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
}

@media (max-width: 640px) {
    .login-card[b-p8ajp8gv06] {
        padding: 34px 22px 24px;
        border-radius: 20px;
    }

    .login-logo[b-p8ajp8gv06] {
        width: 52px;
        height: 52px;
    }

    .login-title[b-p8ajp8gv06] {
        font-size: 1.75rem;
    }

    .login-demo-notice[b-p8ajp8gv06] {
        align-items: flex-start;
        margin-top: -10px;
        margin-bottom: 24px;
        padding: 12px;
    }

    .login-version[b-p8ajp8gv06] {
        margin-top: 24px;
        padding-top: 16px;
    }
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 640.98px) {
    .login-card[b-p8ajp8gv06] {
        width: 100%;
        max-width: 100%;
        padding-right: 1.25rem;
        padding-left: 1.25rem;
    }

    .login-card input[b-p8ajp8gv06],
    .login-card button[b-p8ajp8gv06] {
        min-height: 50px;
    }
}
/* /Components/Pages/Maintenance.razor.rz.scp.css */
.maintenance-page[b-acprsg9bkc] {
    display: grid;
    place-items: center;
    width: 100%;
}

.maintenance-card[b-acprsg9bkc] {
    display: grid;
    justify-items: center;
    width: min(100%, 560px);
    padding: 2.4rem 2.2rem;
    border: 1px solid rgba(18, 52, 78, 0.08);
    border-radius: 26px;
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 26px 70px rgba(13, 46, 72, 0.12);
    text-align: center;
}

.maintenance-brand[b-acprsg9bkc] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
}

.maintenance-logo[b-acprsg9bkc] {
    width: 58px;
    height: 58px;
    border-radius: 14px;
    object-fit: cover;
}

.maintenance-title[b-acprsg9bkc] {
    color: #0874ba;
    font-size: 2rem;
    font-weight: 750;
    letter-spacing: -0.035em;
    line-height: 1.1;
}

.maintenance-icon[b-acprsg9bkc] {
    display: grid;
    place-items: center;
    width: 72px;
    height: 72px;
    margin: 2rem 0 1.2rem;
    border-radius: 22px;
    background: #e8f4fb;
}

.maintenance-icon img[b-acprsg9bkc] {
    width: 31px;
    height: 31px;
    opacity: 0.78;
}

.maintenance-card h1[b-acprsg9bkc] {
    margin: 0;
    color: #17283a;
    font-size: 1.6rem;
    font-weight: 760;
    letter-spacing: -0.035em;
}

.maintenance-message[b-acprsg9bkc] {
    max-width: 460px;
    margin: 0.9rem 0 0;
    color: #687788;
    font-size: 0.98rem;
    line-height: 1.6;
}

.maintenance-refresh-button[b-acprsg9bkc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    min-height: 48px;
    margin-top: 1.65rem;
    padding: 0.72rem 1.1rem;
    border: 1px solid #d7e3eb;
    border-radius: 13px;
    color: #40566a;
    background: #ffffff;
    font: inherit;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
    cursor: pointer;
    transition: border-color 150ms ease,
                background-color 150ms ease,
                box-shadow 150ms ease,
                transform 150ms ease;
}

.maintenance-refresh-button:hover:not(:disabled)[b-acprsg9bkc] {
    border-color: #cbd9e3;
    background: #f8fbfd;
    box-shadow: 0 6px 18px rgba(29, 59, 82, 0.07);
}

.maintenance-refresh-button:disabled[b-acprsg9bkc] {
    opacity: 0.65;
    cursor: default;
}

.maintenance-refresh-icon[b-acprsg9bkc] {
    width: 0.86rem;
    height: 0.86rem;
    opacity: 0.55;
}

.maintenance-refresh-icon.is-spinning[b-acprsg9bkc] {
    animation: maintenance-spin-b-acprsg9bkc 0.8s linear infinite;
}

.maintenance-version[b-acprsg9bkc] {
    margin-top: 1.25rem;
    color: #8a98a5;
    font-size: 0.74rem;
    font-weight: 600;
}

@keyframes maintenance-spin-b-acprsg9bkc {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 640px) {
    .maintenance-card[b-acprsg9bkc] {
        padding: 2rem 1.25rem;
        border-radius: 20px;
    }

    .maintenance-logo[b-acprsg9bkc] {
        width: 52px;
        height: 52px;
    }

    .maintenance-title[b-acprsg9bkc] {
        font-size: 1.8rem;
    }

    .maintenance-card h1[b-acprsg9bkc] {
        font-size: 1.4rem;
    }

    .maintenance-message[b-acprsg9bkc] {
        font-size: 0.94rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .maintenance-refresh-button[b-acprsg9bkc] {
        transition: none;
    }

    .maintenance-refresh-icon.is-spinning[b-acprsg9bkc] {
        animation: none;
    }
}

.maintenance-refresh-button.is-success[b-acprsg9bkc] {
    border-color: #b9dec7;
    color: #28623c;
    background: #eef9f1;
    box-shadow: 0 6px 18px rgba(40, 98, 60, 0.08);
}


/* v0.9.2 – Aktualisieren im Uhrzeigersinn */
.maintenance-refresh-icon.is-spinning[b-acprsg9bkc] {
    animation: maintenance-refresh-spin-clockwise-b-acprsg9bkc 800ms linear infinite;
}

@keyframes maintenance-refresh-spin-clockwise-b-acprsg9bkc {
    to {
        transform: rotate(360deg);
    }
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 640.98px) {
    .maintenance-card[b-acprsg9bkc] {
        width: 100%;
        max-width: 100%;
        padding: 1.75rem 1.15rem;
    }

    .maintenance-refresh-button[b-acprsg9bkc] {
        min-height: 50px;
    }
}
/* /Components/Pages/Settings.razor.rz.scp.css */
.settings-page[b-eyvqb2cvvo] {
    display: grid;
    gap: 2rem;
}

.settings-header[b-eyvqb2cvvo] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
}

    .settings-header h1[b-eyvqb2cvvo] {
        margin: 0;
        color: #17283a;
        font-size: 2rem;
        font-weight: 750;
        line-height: 1.15;
        letter-spacing: -0.035em;
    }

    .settings-header p[b-eyvqb2cvvo] {
        margin: 0.45rem 0 0;
        color: #687788;
        font-size: 1rem;
        line-height: 1.5;
    }

.settings-section[b-eyvqb2cvvo] {
    display: grid;
    gap: 1.15rem;
}

.settings-section-heading[b-eyvqb2cvvo] {
    display: grid;
    gap: 0.3rem;
}

    .settings-section-heading h2[b-eyvqb2cvvo] {
        margin: 0;
        color: #17283a;
        font-size: 1.18rem;
        font-weight: 720;
        line-height: 1.25;
    }

    .settings-section-heading p[b-eyvqb2cvvo] {
        margin: 0;
        color: #718091;
        font-size: 0.94rem;
        line-height: 1.45;
    }

.settings-section-title-row[b-eyvqb2cvvo] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.7rem;
}

.settings-admin-badge[b-eyvqb2cvvo] {
    display: inline-flex;
    align-items: center;
    min-height: 1.75rem;
    padding: 0.25rem 0.65rem;
    border: 1px solid #cfe2f3;
    border-radius: 999px;
    background: #edf6fc;
    color: #17699d;
    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1;
}

.settings-grid[b-eyvqb2cvvo] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.settings-card[b-eyvqb2cvvo] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    min-height: 132px;
    padding: 1.25rem;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #ffffff;
    color: inherit;
    text-decoration: none;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.06), 0 2px 8px rgba(18, 54, 82, 0.03);
    transition: transform 150ms ease, border-color 150ms ease, box-shadow 150ms ease;
}

    .settings-card:hover[b-eyvqb2cvvo] {
        transform: translateY(-2px);
        border-color: #b9d7eb;
        box-shadow: 0 18px 42px rgba(18, 74, 114, 0.1), 0 4px 12px rgba(18, 74, 114, 0.05);
    }

    .settings-card:focus-visible[b-eyvqb2cvvo] {
        outline: 0;
        border-color: #0785d1;
        box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.13), 0 18px 42px rgba(18, 74, 114, 0.1);
    }

.settings-card-icon[b-eyvqb2cvvo] {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    overflow: hidden;
    border-radius: 14px;
    background: linear-gradient(145deg, #e9f5fc, #dceefa);
}

.settings-card-image[b-eyvqb2cvvo] {
    display: block;
    width: 26px;
    height: 26px;
    object-fit: contain;
}

.settings-card-content[b-eyvqb2cvvo] {
    min-width: 0;
}

    .settings-card-content h3[b-eyvqb2cvvo] {
        margin: 0;
        color: #17283a;
        font-size: 1rem;
        font-weight: 720;
        line-height: 1.3;
    }

    .settings-card-content p[b-eyvqb2cvvo] {
        margin: 0.35rem 0 0;
        color: #687788;
        font-size: 0.9rem;
        line-height: 1.45;
    }

.settings-card-arrow[b-eyvqb2cvvo] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

    .settings-card-arrow img[b-eyvqb2cvvo] {
        width: 12px;
        height: 12px;
        opacity: 0.38;
        object-fit: contain;
        transition: opacity 150ms ease, transform 150ms ease;
    }

    .settings-card:hover .settings-card-arrow img[b-eyvqb2cvvo] {
        opacity: 0.58;
        transform: translateX(2px);
    }

.settings-card-disabled[b-eyvqb2cvvo] {
    cursor: default;
    opacity: 0.5;
    filter: grayscale(1);
    box-shadow: none;
}

    .settings-card-disabled:hover[b-eyvqb2cvvo] {
        transform: none;
        border-color: #dfe8f0;
        box-shadow: none;
    }

    .settings-card-disabled .settings-card-icon[b-eyvqb2cvvo] {
        background: #eef1f4;
    }

    .settings-card-disabled .settings-card-arrow img[b-eyvqb2cvvo] {
        opacity: 0.22;
    }

    .settings-card-disabled:hover .settings-card-arrow img[b-eyvqb2cvvo] {
        transform: none;
        opacity: 0.22;
    }

.settings-admin-section[b-eyvqb2cvvo] {
    padding-top: 0.25rem;
}

@media (max-width: 900px) {
    .settings-grid[b-eyvqb2cvvo] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .settings-page[b-eyvqb2cvvo] {
        gap: 1.6rem;
    }

    .settings-header h1[b-eyvqb2cvvo] {
        font-size: 1.75rem;
    }

    .settings-card[b-eyvqb2cvvo] {
        min-height: 0;
        padding: 1rem;
        border-radius: 16px;
    }

    .settings-card-icon[b-eyvqb2cvvo] {
        width: 44px;
        height: 44px;
        border-radius: 12px;
    }

    .settings-card-image[b-eyvqb2cvvo] {
        width: 24px;
        height: 24px;
    }

    .settings-card-content p[b-eyvqb2cvvo] {
        font-size: 0.87rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .settings-card[b-eyvqb2cvvo],
    .settings-card-arrow[b-eyvqb2cvvo] {
        transition: none;
    }
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 640.98px) {
    .settings-grid[b-eyvqb2cvvo] {
        grid-template-columns: 1fr;
    }

    .settings-card[b-eyvqb2cvvo] {
        min-height: 84px;
        touch-action: manipulation;
    }

    .settings-section-title-row[b-eyvqb2cvvo] {
        align-items: flex-start;
        gap: 0.65rem;
    }
}


@media (max-width: 640.98px) {
    .settings-page[b-eyvqb2cvvo] {
        gap: 1.15rem !important;
    }

    .settings-grid[b-eyvqb2cvvo] {
        grid-template-columns: 1fr !important;
        gap: 0.6rem !important;
    }

    .settings-section[b-eyvqb2cvvo] {
        gap: 0.7rem !important;
    }

    .settings-card[b-eyvqb2cvvo] {
        min-height: 76px !important;
        padding: 0.78rem !important;
        border-radius: 16px !important;
        gap: 0.7rem !important;
    }

    .settings-card-icon[b-eyvqb2cvvo] {
        width: 38px !important;
        height: 38px !important;
        border-radius: 11px !important;
    }

    .settings-card-image[b-eyvqb2cvvo] {
        width: 21px !important;
        height: 21px !important;
    }

    .settings-card-content h3[b-eyvqb2cvvo] {
        font-size: 0.9rem !important;
    }

    .settings-card-content p[b-eyvqb2cvvo] {
        margin-top: 0.18rem !important;
        font-size: 0.72rem !important;
    }
}
/* /Components/Pages/SettingsCompanies.razor.rz.scp.css */
.admin-companies-page[b-5ggbytsopz] {
    display: grid;
    gap: 1.5rem;
}

.admin-companies-header[b-5ggbytsopz] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
}

    .admin-companies-header h1[b-5ggbytsopz] {
        margin: 0.45rem 0 0;
        color: #17283a;
        font-size: 2rem;
        font-weight: 750;
        line-height: 1.15;
        letter-spacing: -0.035em;
    }

    .admin-companies-header p[b-5ggbytsopz] {
        margin: 0.45rem 0 0;
        color: #687788;
        line-height: 1.5;
    }

.admin-companies-back-link[b-5ggbytsopz] {
    color: #17699d;
    font-size: 0.9rem;
    font-weight: 700;
    text-decoration: none;
}

    .admin-companies-back-link:hover[b-5ggbytsopz] {
        color: #0785d1;
    }

.admin-companies-create-button[b-5ggbytsopz],
.admin-company-primary-button[b-5ggbytsopz],
.admin-company-secondary-button[b-5ggbytsopz],
.admin-company-danger-button[b-5ggbytsopz],
.admin-company-danger-outline-button[b-5ggbytsopz] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0.7rem 1.1rem;
    border-radius: 14px;
    font-size: 0.92rem;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
}

.admin-companies-create-button[b-5ggbytsopz],
.admin-company-primary-button[b-5ggbytsopz] {
    border: 0;
    color: #ffffff;
    background: linear-gradient(135deg, #0788d1, #006fb8);
    box-shadow: 0 10px 24px rgba(0, 112, 184, 0.2);
}

    .admin-companies-create-button:disabled[b-5ggbytsopz],
    .admin-company-primary-button:disabled[b-5ggbytsopz] {
        color: #8b98a5;
        background: #e5ecf2;
        box-shadow: none;
        cursor: not-allowed;
    }

.admin-company-secondary-button[b-5ggbytsopz] {
    border: 1px solid #d8e4ec;
    color: #29445b;
    background: #ffffff;
}

.admin-companies-toolbar[b-5ggbytsopz] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 1.25rem;
    padding: 1.25rem;
    border: 1px solid #dfe8f0;
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.05);
}

.admin-companies-search[b-5ggbytsopz] {
    display: grid;
    gap: 0.45rem;
}

    .admin-companies-search label[b-5ggbytsopz] {
        color: #5f7080;
        font-size: 0.83rem;
        font-weight: 700;
    }

    .admin-companies-search input[b-5ggbytsopz] {
        min-height: 48px;
        padding: 0.75rem 0.95rem;
        border: 1px solid #d7e2ea;
        border-radius: 14px;
        color: #17283a;
        background: #ffffff;
    }

        .admin-companies-search input:focus[b-5ggbytsopz] {
            border-color: #0785d1;
            outline: 0;
            box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.12);
        }

.admin-companies-summary[b-5ggbytsopz] {
    min-width: 120px;
    padding: 0.75rem 0.9rem;
    border: 1px solid #e0e8ef;
    border-radius: 14px;
    background: #f7fafc;
}

    .admin-companies-summary span[b-5ggbytsopz] {
        display: block;
        color: #718091;
        font-size: 0.75rem;
        font-weight: 700;
    }

    .admin-companies-summary strong[b-5ggbytsopz] {
        display: block;
        margin-top: 0.1rem;
        color: #17283a;
        font-size: 1.15rem;
    }

.admin-companies-list[b-5ggbytsopz] {
    display: grid;
    gap: 0.85rem;
}

.admin-company-card[b-5ggbytsopz] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    min-height: 118px;
    padding: 1.15rem 1.25rem;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    color: inherit;
    background: #ffffff;
    text-decoration: none;
    box-shadow: 0 12px 30px rgba(18, 54, 82, 0.05);
    transition: transform 150ms ease, border-color 150ms ease, box-shadow 150ms ease;
}

    .admin-company-card:hover[b-5ggbytsopz] {
        color: inherit;
        transform: translateY(-2px);
        border-color: #b9d7eb;
        box-shadow: 0 18px 42px rgba(18, 74, 114, 0.09);
    }

    .admin-company-card:focus-visible[b-5ggbytsopz] {
        outline: 0;
        border-color: #0785d1;
        box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.13);
    }

.admin-company-avatar[b-5ggbytsopz] {
    display: grid;
    place-items: center;
    width: 54px;
    height: 54px;
    border: 1px solid #d8ebf7;
    border-radius: 16px;
    color: #0874ba;
    background: linear-gradient(145deg, #e9f5fc, #dceefa);
    font-size: 0.94rem;
    font-weight: 750;
}

.admin-company-main[b-5ggbytsopz] {
    min-width: 0;
}

.admin-company-name-row[b-5ggbytsopz] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.65rem;
}

    .admin-company-name-row h2[b-5ggbytsopz] {
        margin: 0;
        color: #17283a;
        font-size: 1rem;
        font-weight: 750;
    }

.admin-company-code-badge[b-5ggbytsopz] {
    display: inline-flex;
    align-items: center;
    min-height: 1.6rem;
    padding: 0.2rem 0.6rem;
    border: 1px solid #c6dff0;
    border-radius: 999px;
    color: #17699d;
    background: #eef7fc;
    font-size: 0.72rem;
    font-weight: 750;
    line-height: 1;
}

.admin-company-address[b-5ggbytsopz] {
    margin: 0.3rem 0 0;
    overflow: hidden;
    color: #687788;
    font-size: 0.9rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-company-meta[b-5ggbytsopz] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem 1.2rem;
    margin-top: 0.55rem;
    color: #607283;
    font-size: 0.82rem;
}

    .admin-company-meta strong[b-5ggbytsopz] {
        color: #465b6d;
    }

.admin-company-arrow[b-5ggbytsopz] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

    .admin-company-arrow img[b-5ggbytsopz] {
        width: 12px;
        height: 12px;
        opacity: 0.38;
        object-fit: contain;
        transition: opacity 150ms ease, transform 150ms ease;
    }

    .admin-company-card:hover .admin-company-arrow img[b-5ggbytsopz] {
        opacity: 0.58;
        transform: translateX(2px);
    }

.admin-companies-state[b-5ggbytsopz],
.admin-company-detail[b-5ggbytsopz] {
    padding: 1.5rem;
    border: 1px solid #dfe8f0;
    border-radius: 20px;
    color: #687788;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.05);
}

.admin-companies-state-error[b-5ggbytsopz] {
    border-color: #efcaca;
    color: #9b2929;
    background: #fff5f5;
}

.admin-company-detail[b-5ggbytsopz] {
    display: grid;
    gap: 1.5rem;
}

.admin-company-page-navigation[b-5ggbytsopz] {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0.8rem 0 0 0.15rem;
}

.admin-company-detail-header[b-5ggbytsopz] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

    .admin-company-detail-header h2[b-5ggbytsopz],
    .admin-company-form-heading h2[b-5ggbytsopz] {
        margin: 0.4rem 0 0;
        color: #17283a;
        font-size: 1.45rem;
        font-weight: 750;
    }

    .admin-company-detail-header p[b-5ggbytsopz],
    .admin-company-form-heading p[b-5ggbytsopz] {
        margin: 0.25rem 0 0;
        color: #687788;
    }

.admin-company-form-heading > span[b-5ggbytsopz] {
    color: #0874ba;
    font-size: 0.78rem;
    font-weight: 750;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

.admin-company-detail-grid[b-5ggbytsopz] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
}

    .admin-company-detail-grid div[b-5ggbytsopz] {
        padding: 1rem;
        border: 1px solid #e0e8ef;
        border-radius: 15px;
        background: #f8fafc;
    }

    .admin-company-detail-grid span[b-5ggbytsopz] {
        display: block;
        color: #718091;
        font-size: 0.78rem;
        font-weight: 700;
    }

    .admin-company-detail-grid strong[b-5ggbytsopz] {
        display: block;
        margin-top: 0.3rem;
        color: #17283a;
        font-size: 1.05rem;
    }

.admin-company-form-grid[b-5ggbytsopz] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.admin-company-form-field[b-5ggbytsopz] {
    display: grid;
    align-content: start;
    gap: 0.4rem;
}

.admin-company-form-field-wide[b-5ggbytsopz] {
    grid-column: 1 / -1;
}

.admin-company-form-field label[b-5ggbytsopz] {
    color: #516579;
    font-size: 0.83rem;
    font-weight: 700;
}

.admin-company-input[b-5ggbytsopz] {
    width: 100%;
    min-height: 48px;
    padding: 0.72rem 0.9rem;
    border: 1px solid #d7e2ea;
    border-radius: 13px;
    color: #17283a;
    background: #ffffff;
    outline: 0;
}

    .admin-company-input:focus[b-5ggbytsopz] {
        border-color: #0785d1;
        box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.12);
    }

.admin-company-code-input[b-5ggbytsopz] {
    text-transform: uppercase;
}

.admin-company-address-input[b-5ggbytsopz] {
    min-height: 116px;
    resize: vertical;
}

.admin-company-actions[b-5ggbytsopz] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    margin-top: 1.25rem;
}

.admin-company-actions-split[b-5ggbytsopz] {
    align-items: center;
    justify-content: space-between;
}

.admin-company-actions-right[b-5ggbytsopz] {
    display: flex;
    gap: 0.75rem;
}

.admin-company-validation-summary[b-5ggbytsopz],
.admin-company-message[b-5ggbytsopz] {
    padding: 0.85rem 1rem;
    border-radius: 13px;
    font-size: 0.87rem;
    font-weight: 600;
}

.admin-company-validation-summary[b-5ggbytsopz],
.admin-company-message-error[b-5ggbytsopz] {
    border: 1px solid #efcaca;
    color: #9b2929;
    background: #fff5f5;
}

    .admin-company-validation-summary:empty[b-5ggbytsopz] {
        display: none;
    }

.admin-company-message-success[b-5ggbytsopz] {
    border: 1px solid #bfe6ce;
    color: #16733d;
    background: #edf9f1;
}

.admin-company-danger-button[b-5ggbytsopz] {
    border: 0;
    color: #ffffff;
    background: #bd2c2c;
    box-shadow: 0 10px 24px rgba(189, 44, 44, 0.18);
}

.admin-company-danger-outline-button[b-5ggbytsopz] {
    border: 1px solid #e5bcbc;
    color: #a72727;
    background: #ffffff;
}

    .admin-company-danger-button:disabled[b-5ggbytsopz],
    .admin-company-danger-outline-button:disabled[b-5ggbytsopz] {
        color: #9ba6af;
        border-color: #dfe5e9;
        background: #edf1f4;
        box-shadow: none;
        cursor: not-allowed;
    }

.admin-company-delete-confirmation[b-5ggbytsopz] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1rem;
    border: 1px solid #e8baba;
    border-radius: 15px;
    color: #783030;
    background: #fff6f6;
}

    .admin-company-delete-confirmation h3[b-5ggbytsopz] {
        margin: 0;
        color: #8c2424;
        font-size: 1rem;
        font-weight: 750;
    }

    .admin-company-delete-confirmation p[b-5ggbytsopz] {
        margin: 0.35rem 0 0;
        font-size: 0.84rem;
        line-height: 1.45;
    }

.admin-company-delete-actions[b-5ggbytsopz] {
    display: flex;
    flex-shrink: 0;
    gap: 0.75rem;
}

.admin-company-delete-hint[b-5ggbytsopz] {
    margin: -0.4rem 0 0;
    color: #7c8995;
    font-size: 0.78rem;
}

.validation-message[b-5ggbytsopz] {
    color: #a42828;
    font-size: 0.78rem;
}


.admin-company-detail-grid .admin-company-detail-wide[b-5ggbytsopz] {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

    .admin-company-detail-grid .admin-company-detail-wide strong[b-5ggbytsopz] {
        margin-top: 0;
        color: #0874ba;
        font-size: 0.9rem;
    }

.admin-company-tariff-permission[b-5ggbytsopz] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 2rem;
    min-height: 88px;
    padding: 1rem 1.05rem;
    border: 1px solid #dfe8f0;
    border-radius: 15px;
    background: #f8fafc;
}

.admin-company-tariff-permission-content[b-5ggbytsopz] {
    display: grid;
    gap: 0.28rem;
}

    .admin-company-tariff-permission-content strong[b-5ggbytsopz] {
        color: #263d50;
        font-size: 0.9rem;
        font-weight: 720;
    }

    .admin-company-tariff-permission-content span[b-5ggbytsopz] {
        color: #718091;
        font-size: 0.82rem;
        line-height: 1.45;
    }

.admin-company-switch[b-5ggbytsopz] {
    position: relative;
    display: inline-flex;
    flex: 0 0 auto;
    width: 48px;
    height: 27px;
    margin: 0;
    cursor: pointer;
    user-select: none;
}

.admin-company-switch-input[b-5ggbytsopz] {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: 0;
    padding: 0;
    opacity: 0;
    pointer-events: none;
}

.admin-company-switch-slider[b-5ggbytsopz] {
    position: absolute;
    inset: 0;
    border-radius: 999px;
    background: #cbd5dd;
    transition: background 160ms ease;
}

    .admin-company-switch-slider[b-5ggbytsopz]::after {
        position: absolute;
        top: 3px;
        left: 3px;
        width: 21px;
        height: 21px;
        border-radius: 50%;
        background: #ffffff;
        box-shadow: 0 2px 6px rgba(18, 54, 82, 0.2);
        content: "";
        transition: transform 160ms ease;
    }

.admin-company-switch-input:checked + .admin-company-switch-slider[b-5ggbytsopz] {
    background: #0785d1;
}

    .admin-company-switch-input:checked + .admin-company-switch-slider[b-5ggbytsopz]::after {
        transform: translateX(21px);
    }

.admin-company-switch:focus-within .admin-company-switch-slider[b-5ggbytsopz] {
    box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.12);
}

@media (max-width: 800px) {
    .admin-companies-header[b-5ggbytsopz],
    .admin-companies-toolbar[b-5ggbytsopz] {
        grid-template-columns: 1fr;
    }

    .admin-companies-header[b-5ggbytsopz] {
        display: grid;
    }

    .admin-companies-create-button[b-5ggbytsopz] {
        width: 100%;
    }

    .admin-company-detail-grid[b-5ggbytsopz],
    .admin-company-form-grid[b-5ggbytsopz] {
        grid-template-columns: 1fr;
    }

        .admin-company-detail-grid .admin-company-detail-wide[b-5ggbytsopz] {
            grid-column: auto;
        }

    .admin-company-tariff-permission[b-5ggbytsopz] {
        grid-template-columns: 1fr auto;
        gap: 1rem;
    }

    .admin-company-form-field-wide[b-5ggbytsopz] {
        grid-column: auto;
    }
}

@media (max-width: 640px) {
    .admin-companies-header h1[b-5ggbytsopz] {
        font-size: 1.75rem;
    }

    .admin-company-card[b-5ggbytsopz] {
        grid-template-columns: auto minmax(0, 1fr);
        padding: 1rem;
    }

    .admin-company-arrow[b-5ggbytsopz] {
        display: none;
    }

    .admin-company-meta[b-5ggbytsopz] {
        display: grid;
        gap: 0.25rem;
    }

    .admin-company-actions[b-5ggbytsopz],
    .admin-company-actions-split[b-5ggbytsopz],
    .admin-company-actions-right[b-5ggbytsopz],
    .admin-company-delete-confirmation[b-5ggbytsopz],
    .admin-company-delete-actions[b-5ggbytsopz] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .admin-company-primary-button[b-5ggbytsopz],
    .admin-company-secondary-button[b-5ggbytsopz],
    .admin-company-danger-button[b-5ggbytsopz],
    .admin-company-danger-outline-button[b-5ggbytsopz] {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .admin-company-card[b-5ggbytsopz],
    .admin-company-arrow[b-5ggbytsopz] {
        transition: none;
    }
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 640.98px) {
    .admin-companies-page[b-5ggbytsopz],
    .admin-company-detail[b-5ggbytsopz] {
        min-width: 0;
    }

    .admin-companies-toolbar[b-5ggbytsopz],
    .admin-company-actions[b-5ggbytsopz],
    .admin-company-actions-split[b-5ggbytsopz],
    .admin-company-delete-actions[b-5ggbytsopz] {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .admin-company-form-grid[b-5ggbytsopz],
    .admin-company-detail-grid[b-5ggbytsopz] {
        grid-template-columns: 1fr;
    }

    .admin-company-input[b-5ggbytsopz],
    .admin-companies-search[b-5ggbytsopz],
    .admin-companies-create-button[b-5ggbytsopz],
    .admin-company-primary-button[b-5ggbytsopz],
    .admin-company-secondary-button[b-5ggbytsopz],
    .admin-company-danger-button[b-5ggbytsopz],
    .admin-company-danger-outline-button[b-5ggbytsopz] {
        width: 100%;
        min-height: 48px;
    }

    .admin-company-card[b-5ggbytsopz] {
        min-height: 72px;
        touch-action: manipulation;
    }
}


@media (max-width: 640.98px) {
    .admin-companies-toolbar[b-5ggbytsopz],
    .admin-company-detail[b-5ggbytsopz] {
        padding: 0.8rem !important;
        border-radius: 18px !important;
    }

    .admin-companies-summary[b-5ggbytsopz],
    .admin-company-detail-grid[b-5ggbytsopz],
    .admin-company-form-grid[b-5ggbytsopz] {
        grid-template-columns: 1fr !important;
        gap: 0.6rem !important;
    }

    .admin-company-card[b-5ggbytsopz] {
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        gap: 0.65rem !important;
        padding: 0.75rem !important;
        border-radius: 16px !important;
    }

    .admin-company-actions[b-5ggbytsopz],
    .admin-company-actions-split[b-5ggbytsopz],
    .admin-company-delete-actions[b-5ggbytsopz] {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.5rem !important;
    }

    .admin-company-actions button[b-5ggbytsopz],
    .admin-company-actions-split button[b-5ggbytsopz],
    .admin-company-delete-actions button[b-5ggbytsopz] {
        width: 100% !important;
    }
}
/* /Components/Pages/SettingsDevices.razor.rz.scp.css */
.device-page[b-ulszc9yf6f] {
    display: grid;
    gap: 1.5rem;
}

.device-header[b-ulszc9yf6f] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
}

    .device-header h1[b-ulszc9yf6f] {
        margin: 0.45rem 0 0;
        color: #17283a;
        font-size: 2rem;
        font-weight: 750;
        line-height: 1.15;
        letter-spacing: -0.035em;
    }

    .device-header p[b-ulszc9yf6f] {
        margin: 0.45rem 0 0;
        color: #687788;
        font-size: 1rem;
        line-height: 1.5;
    }

.device-back[b-ulszc9yf6f] {
    color: #0874ba;
    font-size: 0.9rem;
    font-weight: 650;
    text-decoration: none;
}

    .device-back:hover[b-ulszc9yf6f] {
        color: #0785d1;
        text-decoration: none;
    }

.device-primary-button[b-ulszc9yf6f],
.device-secondary-button[b-ulszc9yf6f] {
    min-height: 42px;
    padding: 0.65rem 1rem;
    border-radius: 12px;
    font: inherit;
    font-size: 0.9rem;
    font-weight: 700;
    cursor: pointer;
}

.device-primary-button[b-ulszc9yf6f] {
    border: 1px solid #0785d1;
    background: #0785d1;
    color: #ffffff;
}

    .device-primary-button:hover:not(:disabled)[b-ulszc9yf6f] {
        background: #0874ba;
    }

.device-secondary-button[b-ulszc9yf6f] {
    border: 1px solid #cbd8e3;
    background: #ffffff;
    color: #294257;
}

    .device-secondary-button:hover:not(:disabled)[b-ulszc9yf6f] {
        border-color: #9fc7df;
        background: #f5fafd;
    }

    .device-primary-button:disabled[b-ulszc9yf6f],
    .device-secondary-button:disabled[b-ulszc9yf6f] {
        cursor: default;
        opacity: 0.55;
    }

.device-state[b-ulszc9yf6f],
.device-empty[b-ulszc9yf6f],
.device-detail[b-ulszc9yf6f],
.device-form-card[b-ulszc9yf6f] {
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.05);
}

.device-state[b-ulszc9yf6f] {
    padding: 1.25rem;
    color: #687788;
}

.device-state-error[b-ulszc9yf6f] {
    border-color: #efc6c6;
    background: #fff8f8;
    color: #a33737;
}

.device-list[b-ulszc9yf6f] {
    display: grid;
    gap: 0.85rem;
}

.device-card[b-ulszc9yf6f] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    padding: 1.1rem 1.2rem;
    border: 1px solid #dfe8f0;
    border-radius: 17px;
    background: #ffffff;
    color: inherit;
    text-decoration: none;
    box-shadow: 0 12px 30px rgba(18, 54, 82, 0.05);
    transition: transform 150ms ease, border-color 150ms ease, box-shadow 150ms ease;
}

    .device-card:hover[b-ulszc9yf6f] {
        transform: translateY(-1px);
        border-color: #b9d7eb;
        box-shadow: 0 16px 36px rgba(18, 74, 114, 0.09);
    }

.device-card-icon[b-ulszc9yf6f],
.device-empty-icon[b-ulszc9yf6f] {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 14px;
    background: linear-gradient(145deg, #e9f5fc, #dceefa);
}

    .device-card-icon img[b-ulszc9yf6f],
    .device-empty-icon img[b-ulszc9yf6f] {
        width: 27px;
        height: 27px;
        object-fit: contain;
    }

.device-card-main[b-ulszc9yf6f] {
    min-width: 0;
}

.device-card-title-row[b-ulszc9yf6f] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.65rem;
}

    .device-card-title-row h2[b-ulszc9yf6f] {
        margin: 0;
        color: #17283a;
        font-size: 1rem;
        font-weight: 730;
    }

.device-card-main > p[b-ulszc9yf6f] {
    margin: 0.25rem 0 0;
    color: #687788;
    font-size: 0.88rem;
}

.device-card-meta[b-ulszc9yf6f] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem 1.25rem;
    margin-top: 0.65rem;
    color: #718091;
    font-size: 0.82rem;
}

    .device-card-meta strong[b-ulszc9yf6f] {
        color: #4b6174;
    }

.device-card-arrow[b-ulszc9yf6f] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

    .device-card-arrow img[b-ulszc9yf6f] {
        width: 12px;
        height: 12px;
        opacity: 0.38;
        object-fit: contain;
        transition: opacity 150ms ease, transform 150ms ease;
    }

    .device-card:hover .device-card-arrow img[b-ulszc9yf6f] {
        opacity: 0.58;
        transform: translateX(2px);
    }

.device-status-badge[b-ulszc9yf6f] {
    display: inline-flex;
    align-items: center;
    min-height: 1.7rem;
    padding: 0.22rem 0.62rem;
    border: 1px solid;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 750;
    line-height: 1;
}

.device-status-badge-ok[b-ulszc9yf6f] {
    border-color: #b9dfc7;
    background: #effaf3;
    color: #277a45;
}

.device-status-badge-error[b-ulszc9yf6f] {
    border-color: #efc7c7;
    background: #fff3f3;
    color: #a53b3b;
}

.device-status-badge-muted[b-ulszc9yf6f] {
    border-color: #d8e1e8;
    background: #f5f7f9;
    color: #6c7b88;
}

.device-empty[b-ulszc9yf6f] {
    display: grid;
    justify-items: center;
    gap: 0.75rem;
    padding: 3rem 1.5rem;
    text-align: center;
}

    .device-empty h2[b-ulszc9yf6f] {
        margin: 0.25rem 0 0;
        color: #17283a;
        font-size: 1.15rem;
    }

    .device-empty p[b-ulszc9yf6f] {
        max-width: 560px;
        margin: 0;
        color: #718091;
        line-height: 1.5;
    }

.device-detail[b-ulszc9yf6f] {
    display: grid;
    gap: 1.25rem;
    padding: 1.25rem;
}

.device-detail-heading[b-ulszc9yf6f] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.device-kicker[b-ulszc9yf6f],
.device-form-heading > span[b-ulszc9yf6f] {
    color: #0874ba;
    font-size: 0.76rem;
    font-weight: 760;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.device-detail-heading h2[b-ulszc9yf6f],
.device-form-heading h2[b-ulszc9yf6f] {
    margin: 0.25rem 0 0;
    color: #17283a;
    font-size: 1.3rem;
    font-weight: 740;
}

.device-detail-heading p[b-ulszc9yf6f],
.device-form-heading p[b-ulszc9yf6f] {
    margin: 0.3rem 0 0;
    color: #718091;
    font-size: 0.9rem;
    line-height: 1.45;
}

.device-status-grid[b-ulszc9yf6f] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

.device-status-item[b-ulszc9yf6f] {
    display: grid;
    gap: 0.25rem;
    min-width: 0;
    padding: 0.85rem 0.95rem;
    border: 1px solid #e1e9ef;
    border-radius: 14px;
    background: #f8fafc;
}

    .device-status-item span[b-ulszc9yf6f] {
        color: #7a8996;
        font-size: 0.76rem;
    }

    .device-status-item strong[b-ulszc9yf6f] {
        overflow: hidden;
        color: #294257;
        font-size: 0.88rem;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.device-detail-actions[b-ulszc9yf6f] {
    display: flex;
    justify-content: flex-end;
}

.device-form-card[b-ulszc9yf6f] {
    display: grid;
    gap: 1.25rem;
    padding: 1.25rem;
}

.device-detail .device-form-card[b-ulszc9yf6f] {
    border-radius: 15px;
    box-shadow: none;
}

.device-form-heading[b-ulszc9yf6f] {
    display: grid;
    gap: 0.1rem;
}

.device-validation-summary[b-ulszc9yf6f],
.device-message[b-ulszc9yf6f] {
    padding: 0.8rem 0.95rem;
    border: 1px solid;
    border-radius: 12px;
    font-size: 0.86rem;
    line-height: 1.45;
}

.device-validation-summary[b-ulszc9yf6f] {
    border-color: #efc7c7;
    background: #fff6f6;
    color: #a53b3b;
}

    .device-validation-summary ul[b-ulszc9yf6f] {
        margin: 0;
        padding-left: 1.2rem;
    }

.device-message-success[b-ulszc9yf6f] {
    border-color: #b9dfc7;
    background: #effaf3;
    color: #277a45;
}

.device-message-error[b-ulszc9yf6f] {
    border-color: #efc7c7;
    background: #fff3f3;
    color: #a53b3b;
}

.device-form-grid[b-ulszc9yf6f] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.device-form-field[b-ulszc9yf6f] {
    display: grid;
    gap: 0.42rem;
}

.device-form-field-wide[b-ulszc9yf6f] {
    grid-column: 1 / -1;
}

.device-form-field label[b-ulszc9yf6f] {
    color: #40576a;
    font-size: 0.82rem;
    font-weight: 700;
}

.device-input[b-ulszc9yf6f] {
    width: 100%;
    min-height: 43px;
    box-sizing: border-box;
    padding: 0.65rem 0.8rem;
    border: 1px solid #ccd9e3;
    border-radius: 11px;
    background: #ffffff;
    color: #17283a;
    font: inherit;
    font-size: 0.9rem;
    outline: none;
}

    .device-input:focus[b-ulszc9yf6f] {
        border-color: #0785d1;
        box-shadow: 0 0 0 3px rgba(7, 133, 209, 0.11);
    }

.device-field-hint[b-ulszc9yf6f] {
    color: #7a8996;
    font-size: 0.78rem;
    line-height: 1.4;
}

.device-switch-grid[b-ulszc9yf6f] {
    display: grid;
    gap: 0.75rem;
}

.device-switch-row[b-ulszc9yf6f] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 1.5rem;
    min-height: 78px;
    padding: 0.9rem 1rem;
    border: 1px solid #dfe8f0;
    border-radius: 14px;
    background: #f8fafc;
}

    .device-switch-row > div[b-ulszc9yf6f] {
        display: grid;
        gap: 0.25rem;
    }

    .device-switch-row strong[b-ulszc9yf6f] {
        color: #294257;
        font-size: 0.88rem;
    }

    .device-switch-row > div > span[b-ulszc9yf6f] {
        color: #718091;
        font-size: 0.8rem;
        line-height: 1.4;
    }

.device-switch[b-ulszc9yf6f] {
    position: relative;
    display: inline-flex;
    width: 48px;
    height: 27px;
    cursor: pointer;
    user-select: none;
}

.device-switch-input[b-ulszc9yf6f] {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.device-switch-slider[b-ulszc9yf6f] {
    position: absolute;
    inset: 0;
    border-radius: 999px;
    background: #cbd5dd;
    transition: background 160ms ease;
}

    .device-switch-slider[b-ulszc9yf6f]::after {
        position: absolute;
        top: 3px;
        left: 3px;
        width: 21px;
        height: 21px;
        border-radius: 50%;
        background: #ffffff;
        box-shadow: 0 2px 6px rgba(18, 54, 82, 0.2);
        content: "";
        transition: transform 160ms ease;
    }

.device-switch-input:checked + .device-switch-slider[b-ulszc9yf6f] {
    background: #0785d1;
}

    .device-switch-input:checked + .device-switch-slider[b-ulszc9yf6f]::after {
        transform: translateX(21px);
    }

.device-users-section[b-ulszc9yf6f] {
    display: grid;
    gap: 0.8rem;
}

.device-users-heading[b-ulszc9yf6f] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

    .device-users-heading h3[b-ulszc9yf6f] {
        margin: 0;
        color: #294257;
        font-size: 0.95rem;
    }

    .device-users-heading p[b-ulszc9yf6f] {
        margin: 0.25rem 0 0;
        color: #718091;
        font-size: 0.82rem;
    }

    .device-users-heading > strong[b-ulszc9yf6f] {
        color: #0874ba;
        font-size: 0.82rem;
        white-space: nowrap;
    }

.device-users-list[b-ulszc9yf6f] {
    display: grid;
    gap: 0.55rem;
}

.device-user-option[b-ulszc9yf6f] {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.75rem;
    padding: 0.8rem 0.9rem;
    border: 1px solid #dfe8f0;
    border-radius: 13px;
    background: #ffffff;
    cursor: pointer;
}

    .device-user-option:hover[b-ulszc9yf6f] {
        border-color: #b9d7eb;
        background: #fbfdff;
    }

    .device-user-option > input[b-ulszc9yf6f] {
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }

.device-user-check[b-ulszc9yf6f] {
    display: grid;
    place-items: center;
    width: 20px;
    height: 20px;
    border: 1px solid #bccbd7;
    border-radius: 6px;
    background: #ffffff;
}

.device-user-option > input:checked + .device-user-check[b-ulszc9yf6f] {
    border-color: #0785d1;
    background: #0785d1;
}

    .device-user-option > input:checked + .device-user-check[b-ulszc9yf6f]::after {
        color: #ffffff;
        font-size: 0.8rem;
        font-weight: 800;
        content: "✓";
    }

.device-user-main[b-ulszc9yf6f] {
    display: grid;
    gap: 0.2rem;
    min-width: 0;
}

    .device-user-main strong[b-ulszc9yf6f] {
        overflow: hidden;
        color: #294257;
        font-size: 0.86rem;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .device-user-main span[b-ulszc9yf6f],
    .device-user-meta[b-ulszc9yf6f] {
        color: #718091;
        font-size: 0.78rem;
    }

.device-user-meta[b-ulszc9yf6f] {
    text-align: right;
    white-space: nowrap;
}

.device-users-empty[b-ulszc9yf6f] {
    padding: 1rem;
    border: 1px dashed #ccd9e3;
    border-radius: 12px;
    color: #718091;
    font-size: 0.85rem;
    text-align: center;
}

.device-form-actions[b-ulszc9yf6f] {
    display: flex;
    justify-content: flex-end;
    gap: 0.65rem;
    padding-top: 0.25rem;
}

.device-bottom-navigation[b-ulszc9yf6f] {
    padding-top: 0.25rem;
}

@media (max-width: 900px) {
    .device-status-grid[b-ulszc9yf6f] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .device-header[b-ulszc9yf6f],
    .device-detail-heading[b-ulszc9yf6f],
    .device-users-heading[b-ulszc9yf6f] {
        display: grid;
    }

        .device-header .device-primary-button[b-ulszc9yf6f] {
            width: 100%;
        }

    .device-form-grid[b-ulszc9yf6f],
    .device-status-grid[b-ulszc9yf6f] {
        grid-template-columns: 1fr;
    }

    .device-form-field-wide[b-ulszc9yf6f] {
        grid-column: auto;
    }

    .device-user-option[b-ulszc9yf6f] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .device-user-meta[b-ulszc9yf6f] {
        grid-column: 2;
        text-align: left;
    }
}

@media (max-width: 520px) {
    .device-header h1[b-ulszc9yf6f] {
        font-size: 1.75rem;
    }

    .device-card[b-ulszc9yf6f] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .device-card-arrow[b-ulszc9yf6f] {
        display: none;
    }

    .device-form-actions[b-ulszc9yf6f] {
        display: grid;
    }

    .device-primary-button[b-ulszc9yf6f],
    .device-secondary-button[b-ulszc9yf6f] {
        width: 100%;
    }

    .device-switch-row[b-ulszc9yf6f] {
        gap: 0.8rem;
    }
}


/* ============================================================
   v0.9.0 – Geräteverwaltung Feinschliff
   ============================================================ */

.device-form-field-wide[b-ulszc9yf6f] {
    margin-bottom: 0.65rem;
}

.device-field-hint[b-ulszc9yf6f] {
    display: block;
    margin-top: 0.05rem;
}

.device-switch-grid[b-ulszc9yf6f] {
    margin-top: 0.55rem;
}

.device-switch-row[b-ulszc9yf6f] {
    position: relative;
    min-height: 82px;
}

.device-switch[b-ulszc9yf6f] {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 28px;
    flex: 0 0 50px;
}

.device-switch-input[b-ulszc9yf6f] {
    position: absolute;
    inset: 0;
    width: 50px;
    height: 28px;
    margin: 0;
    opacity: 0;
    cursor: pointer;
    z-index: 2;
    pointer-events: auto;
}

.device-switch-slider[b-ulszc9yf6f] {
    position: absolute;
    inset: 0;
    display: block;
    border-radius: 999px;
    background: #cbd5dd;
    box-shadow: inset 0 0 0 1px rgba(55, 78, 96, 0.08);
    transition: background 160ms ease;
    pointer-events: none;
}

    .device-switch-slider[b-ulszc9yf6f]::after {
        position: absolute;
        top: 3px;
        left: 3px;
        width: 22px;
        height: 22px;
        border-radius: 50%;
        background: #ffffff;
        box-shadow: 0 2px 6px rgba(18, 54, 82, 0.22);
        content: "";
        transition: transform 160ms ease;
    }

.device-switch-input:checked + .device-switch-slider[b-ulszc9yf6f] {
    background: #0785d1;
}

    .device-switch-input:checked + .device-switch-slider[b-ulszc9yf6f]::after {
        transform: translateX(22px);
    }

.device-switch-input:focus-visible + .device-switch-slider[b-ulszc9yf6f] {
    box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.13), inset 0 0 0 1px rgba(55, 78, 96, 0.08);
}

.device-users-section[b-ulszc9yf6f] {
    margin-top: 1.2rem;
    padding-top: 1.15rem;
    border-top: 1px solid #e3ebf1;
}

.device-user-search[b-ulszc9yf6f] {
    display: grid;
    gap: 0.42rem;
    margin-top: 0.25rem;
}

    .device-user-search label[b-ulszc9yf6f] {
        color: #40576a;
        font-size: 0.82rem;
        font-weight: 700;
    }

.device-rfid-badge[b-ulszc9yf6f] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.75rem;
    padding: 0.25rem 0.62rem;
    border: 1px solid #cfe2f3;
    border-radius: 999px;
    background: #edf6fc;
    color: #17699d;
    font-size: 0.75rem;
    font-weight: 720;
    line-height: 1;
    white-space: nowrap;
}

.device-form-actions[b-ulszc9yf6f] {
    margin-top: 1.25rem;
    padding-top: 1.15rem;
    border-top: 1px solid #e3ebf1;
}

@media (max-width: 700px) {
    .device-rfid-badge[b-ulszc9yf6f] {
        grid-column: 2;
        justify-self: start;
    }
}


/* ============================================================
   v0.9.0 – Geräteübersicht konsistent zu Benutzer/Unternehmen
   ============================================================ */

.device-toolbar[b-ulszc9yf6f] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 1.25rem;
    padding: 1.25rem;
    border: 1px solid #dfe8f0;
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.05);
}

.device-overview-search[b-ulszc9yf6f] {
    display: grid;
    gap: 0.45rem;
}

    .device-overview-search label[b-ulszc9yf6f] {
        color: #5f7080;
        font-size: 0.83rem;
        font-weight: 700;
    }

    .device-overview-search input[b-ulszc9yf6f] {
        min-height: 48px;
        padding: 0.75rem 0.95rem;
        border: 1px solid #d7e2ea;
        border-radius: 14px;
        color: #17283a;
        background: #ffffff;
        font: inherit;
        outline: 0;
    }

        .device-overview-search input:focus[b-ulszc9yf6f] {
            border-color: #0785d1;
            box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.12);
        }

.device-overview-summary[b-ulszc9yf6f] {
    display: flex;
    gap: 0.75rem;
}

    .device-overview-summary > div[b-ulszc9yf6f] {
        min-width: 96px;
        padding: 0.75rem 0.9rem;
        border: 1px solid #e0e8ef;
        border-radius: 14px;
        background: #f7fafc;
    }

    .device-overview-summary span[b-ulszc9yf6f] {
        display: block;
        color: #718091;
        font-size: 0.75rem;
        font-weight: 700;
    }

    .device-overview-summary strong[b-ulszc9yf6f] {
        display: block;
        margin-top: 0.1rem;
        color: #17283a;
        font-size: 1.15rem;
    }

.device-bottom-navigation[b-ulszc9yf6f] {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0.8rem 0 0 0.15rem;
}

@media (max-width: 800px) {
    .device-toolbar[b-ulszc9yf6f] {
        grid-template-columns: 1fr;
    }

    .device-overview-summary[b-ulszc9yf6f] {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 640px) {
    .device-toolbar[b-ulszc9yf6f] {
        padding: 1rem;
        border-radius: 17px;
    }

    .device-overview-summary[b-ulszc9yf6f] {
        grid-template-columns: 1fr;
    }
}


/* ============================================================
   v0.9.0 – manueller Cloud-Sync
   ============================================================ */

.device-status-grid[b-ulszc9yf6f] {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.device-detail-actions[b-ulszc9yf6f] {
    gap: 0.65rem;
}

@media (max-width: 1100px) {
    .device-status-grid[b-ulszc9yf6f] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .device-status-grid[b-ulszc9yf6f] {
        grid-template-columns: 1fr;
    }

    .device-detail-actions[b-ulszc9yf6f] {
        display: grid;
        grid-template-columns: 1fr;
    }

        .device-detail-actions .device-primary-button[b-ulszc9yf6f],
        .device-detail-actions .device-secondary-button[b-ulszc9yf6f] {
            width: 100%;
        }
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 640.98px) {
    .device-page[b-ulszc9yf6f],
    .device-detail[b-ulszc9yf6f],
    .device-form-card[b-ulszc9yf6f] {
        min-width: 0;
    }

    .device-toolbar[b-ulszc9yf6f],
    .device-detail-actions[b-ulszc9yf6f],
    .device-form-actions[b-ulszc9yf6f],
    .device-bottom-navigation[b-ulszc9yf6f] {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .device-form-grid[b-ulszc9yf6f],
    .device-detail-grid[b-ulszc9yf6f],
    .device-status-grid[b-ulszc9yf6f],
    .device-switch-grid[b-ulszc9yf6f] {
        grid-template-columns: 1fr;
    }

    .device-input[b-ulszc9yf6f],
    .device-primary-button[b-ulszc9yf6f],
    .device-secondary-button[b-ulszc9yf6f] {
        width: 100%;
        min-height: 48px;
    }

    .device-user-option[b-ulszc9yf6f],
    .device-card[b-ulszc9yf6f] {
        min-height: 64px;
        touch-action: manipulation;
    }
}


@media (max-width: 640.98px) {
    .device-toolbar[b-ulszc9yf6f],
    .device-detail[b-ulszc9yf6f],
    .device-form-card[b-ulszc9yf6f] {
        padding: 0.8rem !important;
        border-radius: 18px !important;
    }

    .device-overview-summary[b-ulszc9yf6f],
    .device-form-grid[b-ulszc9yf6f],
    .device-detail-grid[b-ulszc9yf6f],
    .device-status-grid[b-ulszc9yf6f],
    .device-switch-grid[b-ulszc9yf6f] {
        grid-template-columns: 1fr !important;
        gap: 0.6rem !important;
    }

    .device-detail-actions[b-ulszc9yf6f],
    .device-form-actions[b-ulszc9yf6f] {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.5rem !important;
    }

    .device-detail-actions button[b-ulszc9yf6f],
    .device-form-actions button[b-ulszc9yf6f] {
        width: 100% !important;
    }
}
/* /Components/Pages/SettingsGeneral.razor.rz.scp.css */
.general-settings-page[b-ybra91p5vn] {
    display: grid;
    gap: 2rem;
    max-width: 1120px;
}

.general-settings-header[b-ybra91p5vn] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
}

    .general-settings-header h1[b-ybra91p5vn] {
        margin: 0.55rem 0 0;
        color: #17283a;
        font-size: 2rem;
        font-weight: 750;
        line-height: 1.15;
        letter-spacing: -0.035em;
    }

    .general-settings-header p[b-ybra91p5vn] {
        margin: 0.45rem 0 0;
        color: #687788;
        font-size: 1rem;
        line-height: 1.5;
    }

.general-settings-back[b-ybra91p5vn] {
    display: inline-flex;
    align-items: center;
    color: #0874ba;
    font-size: 0.88rem;
    font-weight: 700;
    text-decoration: none;
}

    .general-settings-back:hover[b-ybra91p5vn] {
        text-decoration: underline;
    }

.general-settings-loading[b-ybra91p5vn] {
    padding: 1.1rem 1.2rem;
    border: 1px solid #dfe8f0;
    border-radius: 16px;
    color: #687788;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(18, 54, 82, 0.05), 0 2px 6px rgba(18, 54, 82, 0.025);
}

.general-settings-message[b-ybra91p5vn] {
    padding: 0.9rem 1rem;
    border-radius: 14px;
    font-size: 0.9rem;
    font-weight: 650;
    line-height: 1.4;
}

.general-settings-message-success[b-ybra91p5vn] {
    border: 1px solid #cde7d7;
    color: #24633c;
    background: #eff9f3;
}

.general-settings-message-error[b-ybra91p5vn] {
    border: 1px solid #f0cfd0;
    color: #8b3b3f;
    background: #fff3f3;
}

.general-settings-section[b-ybra91p5vn] {
    display: grid;
    gap: 1rem;
}

.general-settings-section-heading[b-ybra91p5vn] {
    display: grid;
    gap: 0.3rem;
}

    .general-settings-section-heading h2[b-ybra91p5vn] {
        margin: 0;
        color: #17283a;
        font-size: 1.18rem;
        font-weight: 720;
        line-height: 1.25;
    }

    .general-settings-section-heading p[b-ybra91p5vn] {
        margin: 0;
        color: #718091;
        font-size: 0.94rem;
        line-height: 1.45;
    }

.general-settings-panel[b-ybra91p5vn] {
    overflow: hidden;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.06), 0 2px 8px rgba(18, 54, 82, 0.03);
}

.general-settings-row[b-ybra91p5vn] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 2rem;
    min-height: 92px;
    padding: 1.15rem 1.25rem;
}

.general-settings-row-content[b-ybra91p5vn] {
    display: grid;
    gap: 0.3rem;
    min-width: 0;
}

    .general-settings-row-content strong[b-ybra91p5vn] {
        color: #263d50;
        font-size: 0.96rem;
        font-weight: 720;
        line-height: 1.3;
    }

    .general-settings-row-content span[b-ybra91p5vn] {
        max-width: 680px;
        color: #718091;
        font-size: 0.88rem;
        line-height: 1.45;
    }

.general-settings-divider[b-ybra91p5vn] {
    height: 1px;
    margin: 0 1.25rem;
    background: #edf1f4;
}

.general-settings-select[b-ybra91p5vn] {
    min-width: 220px;
    min-height: 42px;
    padding: 0.55rem 2.3rem 0.55rem 0.8rem;
    border: 1px solid #ccd9e3;
    border-radius: 11px;
    color: #263d50;
    background: #ffffff;
    font: inherit;
    font-size: 0.88rem;
    font-weight: 650;
}

    .general-settings-select:focus[b-ybra91p5vn] {
        outline: 0;
        border-color: #0785d1;
        box-shadow: 0 0 0 3px rgba(7, 133, 209, 0.12);
    }

    .general-settings-select:disabled[b-ybra91p5vn] {
        cursor: default;
        color: #6e7c89;
        background: #f5f7f9;
        opacity: 1;
    }

.general-settings-control-with-badge[b-ybra91p5vn] {
    display: grid;
    justify-items: end;
    gap: 0.45rem;
}

.general-settings-coming-soon[b-ybra91p5vn],
.general-settings-version-badge[b-ybra91p5vn] {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    min-height: 1.55rem;
    padding: 0.2rem 0.55rem;
    border-radius: 999px;
    color: #647586;
    background: #eef2f5;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1;
}

.general-settings-switch[b-ybra91p5vn] {
    position: relative;
    display: inline-flex;
    flex: 0 0 auto;
    width: 48px;
    height: 27px;
    cursor: pointer;
}

    .general-settings-switch input[b-ybra91p5vn] {
        position: absolute;
        width: 1px;
        height: 1px;
        opacity: 0;
    }

.general-settings-switch-slider[b-ybra91p5vn] {
    position: absolute;
    inset: 0;
    border-radius: 999px;
    background: #cbd5dd;
    transition: background 160ms ease, box-shadow 160ms ease;
}

    .general-settings-switch-slider[b-ybra91p5vn]::after {
        position: absolute;
        top: 3px;
        left: 3px;
        width: 21px;
        height: 21px;
        border-radius: 50%;
        background: #ffffff;
        box-shadow: 0 2px 6px rgba(18, 54, 82, 0.2);
        content: "";
        transition: transform 160ms ease;
    }

.general-settings-switch input:checked +
.general-settings-switch-slider[b-ybra91p5vn] {
    background: #0785d1;
}

    .general-settings-switch input:checked +
    .general-settings-switch-slider[b-ybra91p5vn]::after {
        transform: translateX(21px);
    }

.general-settings-switch input:focus-visible +
.general-settings-switch-slider[b-ybra91p5vn] {
    box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.13);
}

.general-settings-feature-note[b-ybra91p5vn] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.9rem;
    margin: 0 1.25rem 1.25rem;
    padding: 0.9rem 1rem;
    border: 1px solid #d9eaf5;
    border-radius: 14px;
    background: #f3f9fd;
}

.general-settings-feature-icon[b-ybra91p5vn] {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 11px;
    color: #0874ba;
    background: #e0f1fb;
    font-size: 1.15rem;
    font-weight: 700;
}

.general-settings-feature-note > div:nth-child(2)[b-ybra91p5vn] {
    display: grid;
    gap: 0.2rem;
}

.general-settings-feature-note strong[b-ybra91p5vn] {
    color: #29465c;
    font-size: 0.87rem;
    font-weight: 720;
}

.general-settings-feature-note span:not(.general-settings-version-badge)[b-ybra91p5vn] {
    color: #6a7b8a;
    font-size: 0.82rem;
    line-height: 1.4;
}

.general-settings-mail-note[b-ybra91p5vn] {
    grid-template-columns: auto minmax(0, 1fr);
}

.general-settings-plan[b-ybra91p5vn] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.06), 0 2px 8px rgba(18, 54, 82, 0.03);
}

.general-settings-plan-icon[b-ybra91p5vn] {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 14px;
    color: #0874ba;
    background: linear-gradient(145deg, #e9f5fc, #dceefa);
    font-size: 1.3rem;
    font-weight: 800;
}

.general-settings-plan-content[b-ybra91p5vn] {
    display: grid;
    gap: 0.18rem;
    min-width: 0;
}

    .general-settings-plan-content > span[b-ybra91p5vn] {
        color: #718091;
        font-size: 0.76rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.04em;
    }

    .general-settings-plan-content strong[b-ybra91p5vn] {
        color: #17283a;
        font-size: 1.12rem;
        font-weight: 760;
        line-height: 1.2;
    }

    .general-settings-plan-content p[b-ybra91p5vn] {
        margin: 0.15rem 0 0;
        color: #687788;
        font-size: 0.88rem;
        line-height: 1.45;
    }

.general-settings-plan-badge[b-ybra91p5vn] {
    display: inline-flex;
    align-items: center;
    min-height: 1.75rem;
    padding: 0.25rem 0.65rem;
    border: 1px solid #cfe2f3;
    border-radius: 999px;
    color: #17699d;
    background: #edf6fc;
    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1;
}

.general-settings-actions[b-ybra91p5vn] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1rem;
    padding-top: 0.25rem;
}

.general-settings-button[b-ybra91p5vn] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0.65rem 1rem;
    border-radius: 11px;
    font: inherit;
    font-size: 0.88rem;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    transition: transform 150ms ease, border-color 150ms ease, background 150ms ease, box-shadow 150ms ease;
}

.general-settings-button-secondary[b-ybra91p5vn] {
    border: 1px solid #d3dde5;
    color: #40566a;
    background: #ffffff;
}

    .general-settings-button-secondary:hover[b-ybra91p5vn] {
        border-color: #b9c9d5;
        color: #263d50;
        background: #f8fafb;
        text-decoration: none;
    }

.general-settings-button-primary[b-ybra91p5vn] {
    border: 1px solid #0785d1;
    color: #ffffff;
    background: #0785d1;
    box-shadow: 0 7px 18px rgba(7, 133, 209, 0.16);
}

    .general-settings-button-primary:hover:not(:disabled)[b-ybra91p5vn] {
        transform: translateY(-1px);
        background: #0679bf;
        box-shadow: 0 9px 22px rgba(7, 133, 209, 0.2);
    }

    .general-settings-button-primary:disabled[b-ybra91p5vn] {
        cursor: wait;
        opacity: 0.62;
    }

@media (max-width: 820px) {
    .general-settings-row[b-ybra91p5vn] {
        grid-template-columns: 1fr;
        gap: 0.8rem;
    }

    .general-settings-select[b-ybra91p5vn] {
        width: 100%;
        min-width: 0;
    }

    .general-settings-control-with-badge[b-ybra91p5vn] {
        width: 100%;
        justify-items: stretch;
    }

        .general-settings-control-with-badge
        .general-settings-coming-soon[b-ybra91p5vn] {
            justify-self: start;
        }

    .general-settings-feature-note[b-ybra91p5vn] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .general-settings-version-badge[b-ybra91p5vn] {
        grid-column: 2;
        justify-self: start;
    }

    .general-settings-plan[b-ybra91p5vn] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .general-settings-plan-badge[b-ybra91p5vn] {
        grid-column: 2;
        justify-self: start;
    }
}

@media (max-width: 640px) {
    .general-settings-page[b-ybra91p5vn] {
        gap: 1.6rem;
    }

    .general-settings-header h1[b-ybra91p5vn] {
        font-size: 1.75rem;
    }

    .general-settings-panel[b-ybra91p5vn],
    .general-settings-plan[b-ybra91p5vn] {
        border-radius: 16px;
    }

    .general-settings-row[b-ybra91p5vn] {
        min-height: 0;
        padding: 1rem;
    }

    .general-settings-divider[b-ybra91p5vn] {
        margin: 0 1rem;
    }

    .general-settings-feature-note[b-ybra91p5vn] {
        margin: 0 1rem 1rem;
        padding: 0.85rem;
    }

    .general-settings-plan[b-ybra91p5vn] {
        padding: 1rem;
    }

    .general-settings-actions[b-ybra91p5vn] {
        flex-direction: column-reverse;
        align-items: stretch;
    }

    .general-settings-button[b-ybra91p5vn] {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .general-settings-switch-slider[b-ybra91p5vn],
    .general-settings-switch-slider[b-ybra91p5vn]::after,
    .general-settings-button[b-ybra91p5vn] {
        transition: none;
    }
}


/* ===== v0.9.2 DARK MODE SAVE FIX ===== */

.general-settings-actions .general-settings-message[b-ybra91p5vn] {
    flex: 0 1 auto;
    margin: 0;
}

@media (max-width: 640.98px) {
    .general-settings-actions .general-settings-message[b-ybra91p5vn] {
        width: 100%;
        box-sizing: border-box;
    }
}


@media (max-width: 640.98px) {
    .general-settings-page[b-ybra91p5vn] {
        gap: 0.9rem !important;
    }

    .general-settings-panel[b-ybra91p5vn],
    .general-settings-plan[b-ybra91p5vn] {
        padding: 0.8rem !important;
        border-radius: 18px !important;
    }

    .general-settings-row[b-ybra91p5vn] {
        grid-template-columns: 1fr !important;
        gap: 0.55rem !important;
        padding: 0.7rem 0 !important;
    }

    .general-settings-row-control[b-ybra91p5vn] {
        justify-self: stretch !important;
        width: 100% !important;
    }

    .general-settings-row-control select[b-ybra91p5vn] {
        width: 100% !important;
    }

    .general-settings-actions[b-ybra91p5vn] {
        width: 100% !important;
    }

    .general-settings-button[b-ybra91p5vn] {
        width: 100% !important;
    }
}

/* ============================================================
   0.9.4 – Benachrichtigungen / Empfängerauswahl
   ============================================================ */
.general-settings-subrow[b-ybra91p5vn] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    padding: 0.8rem 0;
}

.general-settings-subrow > div[b-ybra91p5vn] {
    display: grid;
    gap: 0.25rem;
}

.general-settings-subrow strong[b-ybra91p5vn],
.general-settings-recipient-heading strong[b-ybra91p5vn] {
    color: #17304a;
    font-size: 0.9rem;
}

.general-settings-subrow span[b-ybra91p5vn],
.general-settings-recipient-heading span[b-ybra91p5vn] {
    color: #75899a;
    font-size: 0.78rem;
    line-height: 1.45;
}

.general-settings-day-select[b-ybra91p5vn] {
    min-width: 120px;
}

.general-settings-recipient-section[b-ybra91p5vn] {
    display: grid;
    gap: 0.85rem;
    padding: 1rem 0;
}

.general-settings-recipient-heading[b-ybra91p5vn] {
    display: grid;
    gap: 0.28rem;
}

.general-settings-recipient-list[b-ybra91p5vn] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
}

.general-settings-recipient-option[b-ybra91p5vn] {
    display: grid;
    grid-template-columns: auto 2.4rem minmax(0, 1fr);
    align-items: center;
    gap: 0.65rem;
    min-height: 64px;
    padding: 0.65rem 0.75rem;
    border: 1px solid #dce7ee;
    border-radius: 14px;
    background: #fbfdfe;
    cursor: pointer;
}

.general-settings-recipient-option input[b-ybra91p5vn] {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: #0787d1;
}

.general-settings-recipient-avatar[b-ybra91p5vn] {
    display: grid;
    place-items: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 10px;
    color: #087fc6;
    background: #e8f5fc;
    font-size: 0.75rem;
    font-weight: 750;
}

.general-settings-recipient-copy[b-ybra91p5vn] {
    display: grid;
    gap: 0.12rem;
    min-width: 0;
}

.general-settings-recipient-copy strong[b-ybra91p5vn] {
    overflow: hidden;
    color: #1a3044;
    font-size: 0.84rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.general-settings-recipient-copy small[b-ybra91p5vn] {
    overflow: hidden;
    color: #7b8e9d;
    font-size: 0.7rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.general-settings-recipient-empty[b-ybra91p5vn] {
    padding: 0.85rem;
    border-radius: 12px;
    color: #7a8d9c;
    background: #f6f9fb;
    font-size: 0.78rem;
}

:global(html[data-theme="dark"]) .general-settings-subrow strong[b-ybra91p5vn],
:global(html[data-theme="dark"]) .general-settings-recipient-heading strong[b-ybra91p5vn] {
    color: #eaf2f7;
}

:global(html[data-theme="dark"]) .general-settings-subrow span[b-ybra91p5vn],
:global(html[data-theme="dark"]) .general-settings-recipient-heading span[b-ybra91p5vn],
:global(html[data-theme="dark"]) .general-settings-recipient-copy small[b-ybra91p5vn] {
    color: #92a7b4;
}

:global(html[data-theme="dark"]) .general-settings-recipient-option[b-ybra91p5vn] {
    border-color: #2c4553;
    background: #172a35;
}

:global(html[data-theme="dark"]) .general-settings-recipient-copy strong[b-ybra91p5vn] {
    color: #e7f0f5;
}

:global(html[data-theme="dark"]) .general-settings-recipient-avatar[b-ybra91p5vn] {
    color: #69c2ef;
    background: #17394c;
}

@media (max-width: 640.98px) {
    .general-settings-subrow[b-ybra91p5vn] {
        grid-template-columns: 1fr;
        gap: 0.55rem;
    }

    .general-settings-day-select[b-ybra91p5vn] {
        width: 100%;
    }

    .general-settings-recipient-list[b-ybra91p5vn] {
        grid-template-columns: 1fr;
    }
}


/* ============================================================
   0.9.4 – persönliche E-Mobilitätsbilanz
   ============================================================ */
.general-settings-balance-cost-row[b-ybra91p5vn] {
    align-items: center;
}

.general-settings-balance-cost-select[b-ybra91p5vn] {
    width: min(100%, 360px);
}

@media (max-width: 640.98px) {
    .general-settings-balance-cost-row[b-ybra91p5vn] {
        grid-template-columns: 1fr !important;
        gap: 0.65rem !important;
    }

    .general-settings-balance-cost-select[b-ybra91p5vn] {
        width: 100% !important;
        max-width: none !important;
    }
}


/* ============================================================
   0.9.4 – Allgemein UI final
   ============================================================ */
.general-settings-plan-title-row[b-ybra91p5vn] {
    display: flex;
    align-items: baseline;
    gap: 0.65rem;
    flex-wrap: wrap;
}

.general-settings-plan-price[b-ybra91p5vn] {
    color: #0874ba;
    font-size: 0.82rem;
    font-weight: 720;
}

.general-settings-plan-actions[b-ybra91p5vn] {
    display: grid;
    justify-items: end;
    gap: 0.55rem;
}

.general-settings-plan-change[b-ybra91p5vn] {
    min-height: 36px;
    padding: 0.45rem 0.75rem;
    border: 1px solid #d7e1e8;
    border-radius: 10px;
    color: #8796a2;
    background: #f3f6f8;
    font: inherit;
    font-size: 0.74rem;
    font-weight: 680;
}

.general-settings-plan-change:disabled[b-ybra91p5vn] {
    cursor: default;
    opacity: 1;
}

.general-settings-subrow[b-ybra91p5vn],
.general-settings-recipient-section[b-ybra91p5vn] {
    box-sizing: border-box;
    width: 100%;
    padding: 1rem 1.25rem;
}

.general-settings-subrow[b-ybra91p5vn] {
    min-height: 82px;
}

.general-settings-recipient-section[b-ybra91p5vn] {
    gap: 0.9rem;
}

.general-settings-recipient-heading[b-ybra91p5vn] {
    max-width: 820px;
}

.general-settings-balance-cost-row[b-ybra91p5vn] {
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
}

:global(html[data-theme="dark"]) .general-settings-plan-price[b-ybra91p5vn] {
    color: #5dbcf0;
}

:global(html[data-theme="dark"]) .general-settings-plan-change[b-ybra91p5vn] {
    border-color: #2b4350;
    color: #7f95a2;
    background: #162832;
}

@media (max-width: 640.98px) {
    .general-settings-plan-actions[b-ybra91p5vn] {
        justify-items: start;
    }

    .general-settings-subrow[b-ybra91p5vn],
    .general-settings-recipient-section[b-ybra91p5vn] {
        padding: 0.85rem 0.9rem !important;
    }

    .general-settings-balance-cost-row[b-ybra91p5vn] {
        grid-template-columns: 1fr !important;
    }
}


/* ============================================================
   0.9.4 – Abonnement final
   ============================================================ */
.general-settings-plan-icon[b-ybra91p5vn] {
    font-weight: 800 !important;
}

.general-settings-plan-title-row[b-ybra91p5vn] {
    display: flex !important;
    align-items: center !important;
    gap: 0.65rem !important;
}

.general-settings-plan-title-row .general-settings-plan-badge[b-ybra91p5vn] {
    min-height: 26px !important;
    padding: 0.3rem 0.58rem !important;
    font-size: 0.68rem !important;
}

.general-settings-plan-actions[b-ybra91p5vn] {
    align-self: center !important;
    justify-items: end !important;
    min-width: 170px !important;
}

.general-settings-plan-actions .general-settings-plan-price[b-ybra91p5vn] {
    color: #60788a !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
}

@media (max-width: 640.98px) {
    .general-settings-plan-actions[b-ybra91p5vn] {
        justify-items: start !important;
        min-width: 0 !important;
    }
}


/* ============================================================
   0.9.5 – Allgemein: Typografie, Abschnitte und Abonnement
   ============================================================ */
.general-settings-plan-actions .general-settings-plan-price[b-ybra91p5vn] {
    font-size: 0.94rem !important;
    font-weight: 760 !important;
}

.general-settings-plan-change[b-ybra91p5vn] {
    white-space: nowrap;
}

.general-settings-recipient-heading span[b-ybra91p5vn] {
    font-size: 0.88rem !important;
    line-height: 1.48 !important;
}

.general-settings-subrow > div > strong[b-ybra91p5vn] {
    color: #263d50;
    font-size: 0.96rem !important;
    font-weight: 720;
    line-height: 1.3;
}

.general-settings-subrow > div > span[b-ybra91p5vn] {
    display: block;
    margin-top: 0.3rem;
    color: #718091;
    font-size: 0.88rem !important;
    line-height: 1.45;
}

@media (max-width: 640.98px) {
    .general-settings-page[b-ybra91p5vn] {
        gap: 0 !important;
    }

    .general-settings-section + .general-settings-section[b-ybra91p5vn] {
        margin-top: 2.65rem !important;
    }

    .general-settings-section[b-ybra91p5vn] {
        gap: 1.15rem !important;
    }

    .general-settings-section-heading[b-ybra91p5vn] {
        gap: 0.4rem !important;
    }

    .general-settings-section-heading h2[b-ybra91p5vn] {
        font-size: 1.28rem !important;
    }

    .general-settings-section-heading p[b-ybra91p5vn] {
        font-size: 0.92rem !important;
        line-height: 1.48 !important;
    }

    .general-settings-plan[b-ybra91p5vn] {
        grid-template-columns: auto minmax(0, 1fr) !important;
    }

    .general-settings-plan-actions[b-ybra91p5vn] {
        grid-column: 1 / -1 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        margin-top: 0.35rem !important;
    }

    .general-settings-plan-actions .general-settings-plan-price[b-ybra91p5vn] {
        font-size: 0.98rem !important;
    }

    .general-settings-plan-change[b-ybra91p5vn] {
        min-height: 42px !important;
        padding-inline: 0.9rem !important;
    }

    .general-settings-subrow.general-settings-balance-cost-row[b-ybra91p5vn] {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.85rem !important;
        padding: 1rem 0 !important;
    }

    .general-settings-balance-cost-row > div[b-ybra91p5vn] {
        padding-inline: 0 !important;
    }

    .general-settings-balance-cost-select[b-ybra91p5vn] {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        color: #17283a !important;
        font-size: 1rem !important;
        font-weight: 650 !important;
    }
}


/* ============================================================
   0.9.5 – Free-Abo + Erinnerung
   ============================================================ */
.general-settings-plan-change[b-ybra91p5vn] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0.62rem 0.9rem;
    border: 1px solid #ccdbe5;
    border-radius: 11px;
    color: #40586a;
    background: #f8fafb;
    font-size: 0.82rem;
    font-weight: 700;
    text-decoration: none;
}
.general-settings-plan-change:hover[b-ybra91p5vn] {
    color: #0874ba;
    border-color: #afd0e5;
    background: #f3f9fd;
}
.general-settings-plan-price[b-ybra91p5vn] {
    font-size: 1rem !important;
    font-weight: 800 !important;
}
.general-settings-reminder-controls[b-ybra91p5vn] {
    display: grid;
    grid-template-columns: 90px minmax(150px, 1fr) 110px;
    gap: 0.55rem;
    width: min(100%, 470px);
}
.general-settings-reminder-controls label[b-ybra91p5vn] {
    display: grid;
    gap: 0.28rem;
}
.general-settings-reminder-controls label > span[b-ybra91p5vn] {
    color: #718091;
    font-size: 0.72rem;
    font-weight: 650;
}
.general-settings-reminder-controls .general-settings-select[b-ybra91p5vn] {
    min-width: 0;
    width: 100%;
}
@media (max-width: 640.98px) {
    .general-settings-reminder-controls[b-ybra91p5vn] {
        grid-template-columns: 0.72fr 1.45fr 0.9fr;
        width: 100%;
    }
    .general-settings-reminder-controls .general-settings-select[b-ybra91p5vn] {
        padding-right: 1.7rem;
        font-size: 0.82rem;
    }
}
@media (max-width: 390px) {
    .general-settings-reminder-controls[b-ybra91p5vn] {
        grid-template-columns: 1fr;
    }
}


/* 0.9.7 – Standard-Empfänger im Dark Mode */
:global(html[data-theme="dark"]) .general-settings-recipient-option[b-ybra91p5vn] {
    border-color:#2d4452 !important;
    background:#182a35 !important;
}
:global(html[data-theme="dark"]) .general-settings-recipient-option:has(input:checked)[b-ybra91p5vn] {
    border-color:#2d78a4 !important;
    background:#17384a !important;
}
/* /Components/Pages/SettingsRoles.razor.rz.scp.css */
.roles-page[b-cz4i9b1g0l] {
    display: grid;
    gap: 2rem;
    max-width: 1120px;
}

.roles-header[b-cz4i9b1g0l] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
}

    .roles-header h1[b-cz4i9b1g0l] {
        margin: 0.55rem 0 0;
        color: #17283a;
        font-size: 2rem;
        font-weight: 750;
        line-height: 1.15;
        letter-spacing: -0.035em;
    }

    .roles-header p[b-cz4i9b1g0l] {
        margin: 0.45rem 0 0;
        color: #687788;
        font-size: 1rem;
        line-height: 1.5;
    }

.roles-back[b-cz4i9b1g0l] {
    display: inline-flex;
    align-items: center;
    color: #0874ba;
    font-size: 0.88rem;
    font-weight: 700;
    text-decoration: none;
}

    .roles-back:hover[b-cz4i9b1g0l] {
        text-decoration: underline;
    }

.roles-section[b-cz4i9b1g0l] {
    display: grid;
    gap: 1rem;
}

.roles-section-heading[b-cz4i9b1g0l] {
    display: grid;
    gap: 0.3rem;
}

    .roles-section-heading h2[b-cz4i9b1g0l] {
        margin: 0;
        color: #17283a;
        font-size: 1.18rem;
        font-weight: 720;
        line-height: 1.25;
    }

    .roles-section-heading p[b-cz4i9b1g0l] {
        margin: 0;
        color: #718091;
        font-size: 0.94rem;
        line-height: 1.45;
    }

.roles-cards[b-cz4i9b1g0l] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.role-card[b-cz4i9b1g0l] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    gap: 1rem;
    min-height: 150px;
    padding: 1.25rem;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.06), 0 2px 8px rgba(18, 54, 82, 0.03);
}

.role-card-admin[b-cz4i9b1g0l] {
    border-color: #cfe3f1;
    background: linear-gradient( 145deg, #ffffff 0%, #f5faff 100% );
}

.role-card-icon[b-cz4i9b1g0l] {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 14px;
    color: #0874ba;
    background: linear-gradient(145deg, #e9f5fc, #dceefa);
    font-size: 1rem;
    font-weight: 800;
}

.role-card-content[b-cz4i9b1g0l] {
    display: grid;
    gap: 0.65rem;
    min-width: 0;
}

.role-card-title[b-cz4i9b1g0l] {
    display: grid;
    gap: 0.2rem;
}

    .role-card-title h3[b-cz4i9b1g0l] {
        margin: 0;
        color: #17283a;
        font-size: 1rem;
        font-weight: 750;
        line-height: 1.3;
    }

    .role-card-title span[b-cz4i9b1g0l] {
        color: #0874ba;
        font-size: 0.72rem;
        font-weight: 700;
        line-height: 1.3;
    }

.role-card-content p[b-cz4i9b1g0l] {
    margin: 0;
    color: #687788;
    font-size: 0.86rem;
    line-height: 1.5;
}

.permissions-panel[b-cz4i9b1g0l] {
    overflow: hidden;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.06), 0 2px 8px rgba(18, 54, 82, 0.03);
}

.permissions-table-wrapper[b-cz4i9b1g0l] {
    overflow-x: auto;
}

.permissions-table[b-cz4i9b1g0l] {
    width: 100%;
    border-collapse: collapse;
}

    .permissions-table th[b-cz4i9b1g0l],
    .permissions-table td[b-cz4i9b1g0l] {
        padding: 1rem 1.1rem;
        border-bottom: 1px solid #edf1f4;
    }

    .permissions-table thead th[b-cz4i9b1g0l] {
        color: #516579;
        background: #f8fafc;
        font-size: 0.78rem;
        font-weight: 750;
        text-align: center;
        white-space: nowrap;
    }

        .permissions-table thead th:first-child[b-cz4i9b1g0l] {
            width: 58%;
            text-align: left;
        }

    .permissions-table tbody th[b-cz4i9b1g0l] {
        color: #263d50;
        font-weight: 400;
        text-align: left;
    }

    .permissions-table tbody td[b-cz4i9b1g0l] {
        width: 14%;
        text-align: center;
        vertical-align: middle;
    }

    .permissions-table tbody tr:last-child th[b-cz4i9b1g0l],
    .permissions-table tbody tr:last-child td[b-cz4i9b1g0l] {
        border-bottom: 0;
    }

    .permissions-table tbody th strong[b-cz4i9b1g0l] {
        display: block;
        color: #263d50;
        font-size: 0.88rem;
        font-weight: 720;
        line-height: 1.35;
    }

    .permissions-table tbody th span[b-cz4i9b1g0l] {
        display: block;
        margin-top: 0.2rem;
        color: #718091;
        font-size: 0.78rem;
        line-height: 1.4;
    }

.permissions-group-row th[b-cz4i9b1g0l] {
    padding: 0.7rem 1.1rem;
    color: #0874ba !important;
    background: #f3f9fd;
    font-size: 0.72rem !important;
    font-weight: 750 !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.permission-yes[b-cz4i9b1g0l],
.permission-no[b-cz4i9b1g0l] {
    display: inline-grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border-radius: 999px;
    font-size: 0.9rem;
    font-weight: 800;
}

.permission-yes[b-cz4i9b1g0l] {
    color: #17699d;
    background: #eaf5fc;
}

.permission-no[b-cz4i9b1g0l] {
    color: #98a5b0;
    background: #f1f4f6;
}

.permissions-note[b-cz4i9b1g0l] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 0.9rem;
    margin: 1.25rem;
    padding: 0.9rem 1rem;
    border: 1px solid #d9eaf5;
    border-radius: 14px;
    background: #f3f9fd;
}

.permissions-note-icon[b-cz4i9b1g0l] {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 11px;
    color: #0874ba;
    background: #e0f1fb;
    font-size: 1rem;
    font-weight: 800;
}

.permissions-note > div:last-child[b-cz4i9b1g0l] {
    display: grid;
    gap: 0.2rem;
}

.permissions-note strong[b-cz4i9b1g0l] {
    color: #29465c;
    font-size: 0.87rem;
    font-weight: 720;
}

.permissions-note span[b-cz4i9b1g0l] {
    color: #6a7b8a;
    font-size: 0.82rem;
    line-height: 1.4;
}

@media (max-width: 900px) {
    .roles-cards[b-cz4i9b1g0l] {
        grid-template-columns: 1fr;
    }

    .role-card[b-cz4i9b1g0l] {
        min-height: 0;
    }
}

@media (max-width: 640px) {
    .roles-page[b-cz4i9b1g0l] {
        gap: 1.6rem;
    }

    .roles-header h1[b-cz4i9b1g0l] {
        font-size: 1.75rem;
    }

    .role-card[b-cz4i9b1g0l],
    .permissions-panel[b-cz4i9b1g0l] {
        border-radius: 16px;
    }

    .role-card[b-cz4i9b1g0l] {
        padding: 1rem;
    }

    .permissions-table th[b-cz4i9b1g0l],
    .permissions-table td[b-cz4i9b1g0l] {
        padding: 0.85rem;
    }

    .permissions-table thead th:first-child[b-cz4i9b1g0l] {
        min-width: 260px;
    }

    .permissions-note[b-cz4i9b1g0l] {
        margin: 1rem;
        padding: 0.85rem;
    }
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 640.98px) {
    .roles-page[b-cz4i9b1g0l],
    .roles-panel[b-cz4i9b1g0l] {
        min-width: 0;
    }

    button[b-cz4i9b1g0l],
    input[b-cz4i9b1g0l],
    select[b-cz4i9b1g0l] {
        min-height: 46px;
    }
}


@media (max-width: 640.98px) {
    .roles-panel[b-cz4i9b1g0l],
    .permissions-panel[b-cz4i9b1g0l] {
        padding: 0.8rem !important;
        border-radius: 18px !important;
    }

    .permissions-table-wrapper[b-cz4i9b1g0l] {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .permissions-table[b-cz4i9b1g0l] {
        min-width: 620px !important;
    }
}
/* /Components/Pages/SettingsSystem.razor.rz.scp.css */
.system-page[b-7amk3gowqt] {
    display: grid;
    gap: 2rem;
    max-width: 1120px;
}

.system-header[b-7amk3gowqt] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
}

    .system-header h1[b-7amk3gowqt] {
        margin: 0.55rem 0 0;
        color: #17283a;
        font-size: 2rem;
        font-weight: 750;
        line-height: 1.15;
        letter-spacing: -0.035em;
    }

    .system-header p[b-7amk3gowqt] {
        margin: 0.45rem 0 0;
        color: #687788;
        font-size: 1rem;
        line-height: 1.5;
    }

.system-back[b-7amk3gowqt] {
    display: inline-flex;
    align-items: center;
    color: #0874ba;
    font-size: 0.88rem;
    font-weight: 700;
    text-decoration: none;
}

    .system-back:hover[b-7amk3gowqt] {
        text-decoration: underline;
    }

.system-loading[b-7amk3gowqt],
.system-message[b-7amk3gowqt] {
    padding: 0.95rem 1rem;
    border-radius: 14px;
    font-size: 0.9rem;
    font-weight: 650;
    line-height: 1.4;
}

.system-loading[b-7amk3gowqt] {
    border: 1px solid #dfe8f0;
    color: #687788;
    background: #ffffff;
}

.system-message-success[b-7amk3gowqt] {
    border: 1px solid #cde7d7;
    color: #24633c;
    background: #eff9f3;
}

.system-message-error[b-7amk3gowqt] {
    border: 1px solid #f0cfd0;
    color: #8b3b3f;
    background: #fff3f3;
}

.system-section[b-7amk3gowqt] {
    display: grid;
    gap: 1rem;
}

.system-section-heading[b-7amk3gowqt] {
    display: grid;
    gap: 0.3rem;
}

    .system-section-heading h2[b-7amk3gowqt] {
        margin: 0;
        color: #17283a;
        font-size: 1.18rem;
        font-weight: 720;
        line-height: 1.25;
    }

    .system-section-heading p[b-7amk3gowqt] {
        margin: 0;
        color: #718091;
        font-size: 0.94rem;
        line-height: 1.45;
    }

.system-section-title-row[b-7amk3gowqt] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.7rem;
}

.system-version-badge[b-7amk3gowqt] {
    display: inline-flex;
    align-items: center;
    min-height: 1.7rem;
    padding: 0.25rem 0.65rem;
    border: 1px solid #d9e5ed;
    border-radius: 999px;
    color: #657586;
    background: #f3f6f8;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1;
}

.system-panel[b-7amk3gowqt] {
    overflow: hidden;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.06), 0 2px 8px rgba(18, 54, 82, 0.03);
}

.system-info-row[b-7amk3gowqt],
.system-setting-row[b-7amk3gowqt] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(190px, 280px);
    align-items: center;
    gap: 2rem;
    min-height: 92px;
    padding: 1.15rem 1.25rem;
}

.system-row-content[b-7amk3gowqt] {
    display: grid;
    gap: 0.3rem;
}

    .system-row-content strong[b-7amk3gowqt] {
        color: #263d50;
        font-size: 0.94rem;
        font-weight: 720;
    }

    .system-row-content span[b-7amk3gowqt] {
        color: #718091;
        font-size: 0.84rem;
        line-height: 1.45;
    }

.system-value[b-7amk3gowqt] {
    justify-self: stretch;
    padding: 0.68rem 0.8rem;
    border: 1px solid #e0e8ef;
    border-radius: 11px;
    color: #263d50;
    background: #f7f9fb;
    font-size: 0.86rem;
    font-weight: 700;
    text-align: right;
}

.system-value-date[b-7amk3gowqt] {
    font-variant-numeric: tabular-nums;
}

.system-divider[b-7amk3gowqt] {
    height: 1px;
    margin: 0 1.25rem;
    background: #edf1f4;
}

.system-number-setting[b-7amk3gowqt] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.65rem;
}

.system-number-input[b-7amk3gowqt] {
    width: 100%;
    min-width: 0;
    min-height: 44px;
    padding: 0.65rem 0.8rem;
    border: 1px solid #d7e2ea;
    border-radius: 11px;
    outline: 0;
    color: #17283a;
    background: #ffffff;
    font: inherit;
    font-size: 0.9rem;
    font-weight: 650;
    transition: border-color 150ms ease, box-shadow 150ms ease;
}

    .system-number-input:focus[b-7amk3gowqt] {
        border-color: #0785d1;
        box-shadow: 0 0 0 3px rgba(7, 133, 209, 0.12);
    }

.system-number-setting > span[b-7amk3gowqt] {
    min-width: 88px;
    color: #6d7d8d;
    font-size: 0.76rem;
    font-weight: 700;
    white-space: nowrap;
}

.system-info-note[b-7amk3gowqt] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 0.85rem;
    margin: 0 1.25rem 1.25rem;
    padding: 0.9rem 1rem;
    border: 1px solid #d9eaf5;
    border-radius: 14px;
    background: #f3f9fd;
}

.system-info-note-icon[b-7amk3gowqt] {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 10px;
    color: #0874ba;
    background: #e0f1fb;
    font-size: 0.9rem;
    font-weight: 800;
}

.system-info-note > div:last-child[b-7amk3gowqt] {
    display: grid;
    gap: 0.18rem;
}

.system-info-note strong[b-7amk3gowqt] {
    color: #29465c;
    font-size: 0.84rem;
    font-weight: 720;
}

.system-info-note span[b-7amk3gowqt] {
    color: #6a7b8a;
    font-size: 0.79rem;
    line-height: 1.4;
}

.system-switch[b-7amk3gowqt] {
    position: relative;
    justify-self: end;
    display: inline-block;
    width: 50px;
    height: 28px;
    flex: 0 0 50px;
    margin: 0;
    cursor: pointer;
    user-select: none;
}

.system-switch-input[b-7amk3gowqt] {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2;
    display: block;
    width: 50px !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    outline: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    background: transparent !important;
    box-shadow: none !important;
    opacity: 0 !important;
    cursor: pointer;
}

.system-switch-slider[b-7amk3gowqt] {
    position: absolute;
    inset: 0;
    display: block;
    overflow: hidden;
    border-radius: 999px;
    background: #cbd5dd;
    box-shadow: inset 0 0 0 1px rgba(55, 78, 96, 0.08);
    transition: background 160ms ease, box-shadow 160ms ease;
    pointer-events: none;
}

    .system-switch-slider[b-7amk3gowqt]::after {
        position: absolute;
        top: 3px;
        left: 3px;
        width: 22px;
        height: 22px;
        border-radius: 50%;
        background: #ffffff;
        box-shadow: 0 2px 6px rgba(18, 54, 82, 0.22);
        content: "";
        transition: transform 160ms ease;
    }

.system-switch-input:checked + .system-switch-slider[b-7amk3gowqt] {
    background: #0785d1;
}

    .system-switch-input:checked + .system-switch-slider[b-7amk3gowqt]::after {
        transform: translateX(22px);
    }

.system-switch-input:focus-visible + .system-switch-slider[b-7amk3gowqt] {
    box-shadow:
        0 0 0 4px rgba(7, 133, 209, 0.13),
        inset 0 0 0 1px rgba(55, 78, 96, 0.08);
}

.system-cloud-status[b-7amk3gowqt] {
    display: inline-flex;
    align-items: center;
    justify-self: end;
    gap: 0.45rem;
    min-height: 36px;
    padding: 0.5rem 0.7rem;
    border: 1px solid #e0e8ef;
    border-radius: 11px;
    color: #607283;
    background: #f7f9fb;
    font-size: 0.82rem;
}

.system-cloud-status-dot[b-7amk3gowqt] {
    width: 5px;
    height: 5px;
    flex: 0 0 5px;
    border-radius: 50%;
    background: #9ba8b3;
    box-shadow: 0 0 0 2px rgba(155, 168, 179, 0.08);
}

.system-cloud-status.is-online[b-7amk3gowqt] {
    color: #3f6d4e;
}

    .system-cloud-status.is-online .system-cloud-status-dot[b-7amk3gowqt] {
        background: #56ad72;
        box-shadow: 0 0 0 2px rgba(86, 173, 114, 0.08);
    }

.system-cloud-status.is-error[b-7amk3gowqt] {
    color: #8b4d4d;
}

    .system-cloud-status.is-error .system-cloud-status-dot[b-7amk3gowqt] {
        background: #c86a6a;
        box-shadow: 0 0 0 2px rgba(200, 106, 106, 0.08);
    }

.system-cloud-status.is-inactive[b-7amk3gowqt] {
    color: #73818d;
}

.system-maintenance-row[b-7amk3gowqt] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 46%);
    align-items: start;
    gap: 2rem;
    padding: 1.15rem 1.25rem 1.25rem;
}

.system-textarea[b-7amk3gowqt] {
    width: 100%;
    min-height: 90px;
    padding: 0.72rem 0.8rem;
    border: 1px solid #d7e2ea;
    border-radius: 11px;
    color: #17283a;
    background: #ffffff;
    font: inherit;
    font-size: 0.86rem;
    line-height: 1.45;
    resize: vertical;
}

    .system-textarea:focus[b-7amk3gowqt] {
        border-color: #0785d1;
        outline: 0;
        box-shadow: 0 0 0 3px rgba(7, 133, 209, 0.12);
    }

.system-planned-grid[b-7amk3gowqt] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.system-planned-card[b-7amk3gowqt] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    gap: 0.9rem;
    min-height: 145px;
    padding: 1.15rem;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.05), 0 2px 8px rgba(18, 54, 82, 0.025);
}

.system-planned-icon[b-7amk3gowqt] {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    color: #0874ba;
    background: #e8f5fc;
    font-size: 0.76rem;
    font-weight: 800;
}

.system-planned-icon-api[b-7amk3gowqt] {
    font-size: 0.65rem;
}

.system-planned-content[b-7amk3gowqt] {
    display: grid;
    gap: 0.3rem;
}

    .system-planned-content h3[b-7amk3gowqt] {
        margin: 0;
        color: #17283a;
        font-size: 0.95rem;
        font-weight: 720;
    }

    .system-planned-content p[b-7amk3gowqt] {
        margin: 0;
        color: #687788;
        font-size: 0.82rem;
        line-height: 1.45;
    }

    .system-planned-content span[b-7amk3gowqt] {
        margin-top: 0.25rem;
        color: #0874ba;
        font-size: 0.73rem;
        font-weight: 700;
    }

.system-actions[b-7amk3gowqt] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.85rem;
    padding-top: 0.2rem;
}

.system-actions .system-message[b-7amk3gowqt] {
    flex: 0 1 auto;
    margin: 0;
    padding: 0.72rem 0.9rem;
}

.system-save-button[b-7amk3gowqt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0.65rem 1rem;
    border: 1px solid #0785d1;
    border-radius: 11px;
    color: #ffffff;
    background: #0785d1;
    box-shadow: 0 7px 18px rgba(7, 133, 209, 0.16);
    font: inherit;
    font-size: 0.88rem;
    font-weight: 700;
    cursor: pointer;
    transition: transform 150ms ease, background 150ms ease, box-shadow 150ms ease;
}

    .system-save-button:hover:not(:disabled)[b-7amk3gowqt] {
        transform: translateY(-1px);
        background: #0679bf;
        box-shadow: 0 9px 22px rgba(7, 133, 209, 0.2);
    }

    .system-save-button:disabled[b-7amk3gowqt] {
        cursor: wait;
        opacity: 0.62;
    }

@media (max-width: 900px) {
    .system-planned-grid[b-7amk3gowqt] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .system-info-row[b-7amk3gowqt],
    .system-setting-row[b-7amk3gowqt],
    .system-maintenance-row[b-7amk3gowqt] {
        grid-template-columns: 1fr;
        gap: 0.8rem;
    }

    .system-value[b-7amk3gowqt] {
        text-align: left;
    }

    .system-switch[b-7amk3gowqt] {
        justify-self: start;
    }
}

@media (max-width: 640px) {
    .system-page[b-7amk3gowqt] {
        gap: 1.6rem;
    }

    .system-header h1[b-7amk3gowqt] {
        font-size: 1.75rem;
    }

    .system-panel[b-7amk3gowqt],
    .system-planned-card[b-7amk3gowqt] {
        border-radius: 16px;
    }

    .system-info-row[b-7amk3gowqt],
    .system-setting-row[b-7amk3gowqt],
    .system-maintenance-row[b-7amk3gowqt] {
        padding: 1rem;
    }

    .system-divider[b-7amk3gowqt] {
        margin: 0 1rem;
    }

    .system-info-note[b-7amk3gowqt] {
        margin: 0 1rem 1rem;
        padding: 0.85rem;
    }

    .system-number-setting[b-7amk3gowqt] {
        grid-template-columns: 1fr;
        gap: 0.3rem;
    }

        .system-number-setting > span[b-7amk3gowqt] {
            min-width: 0;
        }

    .system-actions[b-7amk3gowqt] {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
    }

    .system-actions .system-message[b-7amk3gowqt],
    .system-save-button[b-7amk3gowqt] {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .system-number-input[b-7amk3gowqt],
    .system-switch-slider[b-7amk3gowqt],
    .system-switch-slider[b-7amk3gowqt]::after,
    .system-save-button[b-7amk3gowqt] {
        transition: none;
    }
}

.system-maintenance-switch-control[b-7amk3gowqt] {
    display: inline-flex;
    align-items: center;
    justify-self: end;
    gap: 0.75rem;
    flex-shrink: 0;
}

.system-maintenance-state[b-7amk3gowqt] {
    min-width: 4.5rem;
    padding: 0.32rem 0.58rem;
    border: 1px solid #dce5ec;
    border-radius: 999px;
    color: #6f7f8d;
    background: #f7f9fb;
    font-size: 0.76rem;
    font-weight: 700;
    text-align: center;
}

.system-maintenance-state-active[b-7amk3gowqt] {
    border-color: #b9ddc8;
    color: #287247;
    background: #edf8f1;
}

@media (max-width: 640px) {
    .system-maintenance-switch-control[b-7amk3gowqt] {
        width: 100%;
        justify-content: space-between;
    }
}

.system-decimal-control[b-7amk3gowqt] {
    position: relative;
    display: inline-flex;
    align-items: stretch;
    width: 140px;
}

.system-decimal-control .system-number-input[b-7amk3gowqt] {
    width: 100%;
    padding-right: 2.35rem;
}

.system-decimal-spinner[b-7amk3gowqt] {
    position: absolute;
    top: 1px;
    right: 1px;
    bottom: 1px;
    display: grid;
    grid-template-rows: 1fr 1fr;
    width: 1.9rem;
    overflow: hidden;
    border-left: 1px solid #d9e3ea;
    border-radius: 0 10px 10px 0;
    background: #f7f9fb;
}

.system-decimal-spinner button[b-7amk3gowqt] {
    display: grid;
    place-items: center;
    min-width: 0;
    min-height: 0;
    padding: 0;
    border: 0;
    color: #7a8793;
    background: transparent;
    font: inherit;
    font-size: 0.52rem;
    line-height: 1;
    cursor: pointer;
}

.system-decimal-spinner button:first-child[b-7amk3gowqt] {
    border-bottom: 1px solid #e1e8ed;
}

.system-decimal-spinner button:hover[b-7amk3gowqt] {
    color: #40566a;
    background: #edf3f7;
}

.system-decimal-text[b-7amk3gowqt] {
    font-variant-numeric: tabular-nums;
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 640.98px) {
    .system-page[b-7amk3gowqt],
    .system-panel[b-7amk3gowqt],
    .system-section[b-7amk3gowqt] {
        min-width: 0;
    }

    .system-setting-row[b-7amk3gowqt],
    .system-info-row[b-7amk3gowqt],
    .system-maintenance-row[b-7amk3gowqt] {
        grid-template-columns: 1fr;
        gap: 0.8rem;
    }

    .system-value[b-7amk3gowqt],
    .system-number-setting[b-7amk3gowqt],
    .system-decimal-control[b-7amk3gowqt],
    .system-textarea[b-7amk3gowqt] {
        width: 100%;
        max-width: none;
    }

    .system-number-input[b-7amk3gowqt],
    .system-textarea[b-7amk3gowqt] {
        min-height: 48px;
    }

    .system-actions[b-7amk3gowqt] {
        align-items: stretch;
    }

    .system-save-button[b-7amk3gowqt] {
        width: 100%;
        min-height: 50px;
    }

    .system-planned-grid[b-7amk3gowqt] {
        grid-template-columns: 1fr;
    }
}


@media (max-width: 640.98px) {
    .system-page[b-7amk3gowqt] {
        gap: 0.9rem !important;
    }

    .system-panel[b-7amk3gowqt] {
        padding: 0.8rem !important;
        border-radius: 18px !important;
    }

    .system-setting-row[b-7amk3gowqt],
    .system-info-row[b-7amk3gowqt] {
        grid-template-columns: 1fr !important;
        gap: 0.55rem !important;
        padding: 0.7rem 0 !important;
    }

    .system-value[b-7amk3gowqt],
    .system-cloud-status[b-7amk3gowqt],
    .system-decimal-control[b-7amk3gowqt],
    .system-textarea[b-7amk3gowqt] {
        width: 100% !important;
        max-width: none !important;
    }

    .system-planned-grid[b-7amk3gowqt] {
        grid-template-columns: 1fr !important;
        gap: 0.6rem !important;
    }

    .system-save-button[b-7amk3gowqt] {
        width: 100% !important;
    }
}

/* ============================================================
   0.9.4 – E-Mail / Brevo
   ============================================================ */
.system-mail-field-row[b-7amk3gowqt] {
    align-items: center;
}

.system-mail-input[b-7amk3gowqt] {
    box-sizing: border-box;
    width: min(100%, 420px);
    min-height: 46px;
    padding: 0.65rem 0.8rem;
    border: 1px solid #d8e4eb;
    border-radius: 12px;
    color: #183048;
    background: #ffffff;
    font: inherit;
    font-size: 0.82rem;
}

.system-mail-input:focus[b-7amk3gowqt] {
    border-color: #78bee6;
    outline: 3px solid rgba(7, 135, 209, 0.09);
}

.system-mail-number[b-7amk3gowqt] {
    width: 110px;
}

.system-mail-number-with-unit[b-7amk3gowqt] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
}

.system-mail-number-with-unit span[b-7amk3gowqt] {
    color: #708596;
    font-size: 0.78rem;
}

.system-mail-test-row[b-7amk3gowqt] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    padding: 0.85rem 0;
}

.system-secondary-button[b-7amk3gowqt] {
    min-height: 44px;
    padding: 0.62rem 0.9rem;
    border: 1px solid #d5e2ea;
    border-radius: 12px;
    color: #263f52;
    background: #ffffff;
    font: inherit;
    font-size: 0.8rem;
    font-weight: 650;
    cursor: pointer;
}

.system-secondary-button:hover:not(:disabled)[b-7amk3gowqt] {
    background: #f5f9fb;
}

.system-secondary-button:disabled[b-7amk3gowqt] {
    cursor: default;
    opacity: 0.62;
}

.system-mail-last-test[b-7amk3gowqt] {
    display: block;
    margin-top: 0.35rem;
    color: #8294a2;
    font-size: 0.7rem;
}

.system-mail-suboption[b-7amk3gowqt] {
    padding: 0.65rem 0 0.85rem;
}

.system-mail-checkbox[b-7amk3gowqt] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    color: #667d8e;
    font-size: 0.78rem;
    cursor: pointer;
}

.system-mail-checkbox input[b-7amk3gowqt] {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: #0787d1;
}

.system-planned-grid-single[b-7amk3gowqt] {
    grid-template-columns: minmax(0, 1fr) !important;
}

:global(html[data-theme="dark"]) .system-mail-input[b-7amk3gowqt],
:global(html[data-theme="dark"]) .system-secondary-button[b-7amk3gowqt] {
    border-color: #314956;
    color: #dce8ef;
    background: #172a35;
}

:global(html[data-theme="dark"]) .system-mail-number-with-unit span[b-7amk3gowqt],
:global(html[data-theme="dark"]) .system-mail-checkbox[b-7amk3gowqt],
:global(html[data-theme="dark"]) .system-mail-last-test[b-7amk3gowqt] {
    color: #94a8b5;
}

@media (max-width: 640.98px) {
    .system-mail-test-row[b-7amk3gowqt],
    .system-mail-field-row[b-7amk3gowqt] {
        grid-template-columns: 1fr !important;
        gap: 0.6rem !important;
    }

    .system-mail-input[b-7amk3gowqt],
    .system-mail-number[b-7amk3gowqt] {
        width: 100%;
        max-width: none;
    }

    .system-secondary-button[b-7amk3gowqt] {
        width: 100%;
    }

    .system-mail-number-with-unit[b-7amk3gowqt] {
        display: grid;
        grid-template-columns: 1fr auto;
    }
}


/* ============================================================
   0.9.4 – E-Mail-System UI final
   ============================================================ */
.system-mail-select[b-7amk3gowqt] {
    appearance: auto;
    -webkit-appearance: menulist;
    cursor: pointer;
}

.system-mail-test-row[b-7amk3gowqt] {
    min-height: 92px;
}

.system-mail-test-row .system-secondary-button[b-7amk3gowqt] {
    justify-self: stretch;
    width: 100%;
}

.system-notification-subrow[b-7amk3gowqt] {
    padding-left: 2rem;
    background: #fbfcfd;
}

.system-notification-subrow .system-row-content strong[b-7amk3gowqt] {
    font-size: 0.88rem;
}

:global(html[data-theme="dark"]) .system-notification-subrow[b-7amk3gowqt] {
    background: #152630;
}

@media (max-width: 640.98px) {
    .system-mail-field-row[b-7amk3gowqt],
    .system-mail-test-row[b-7amk3gowqt],
    .system-notification-subrow[b-7amk3gowqt] {
        grid-template-columns: 1fr !important;
        gap: 0.65rem !important;
        padding: 0.9rem !important;
    }

    .system-mail-select[b-7amk3gowqt],
    .system-mail-test-row .system-secondary-button[b-7amk3gowqt] {
        width: 100% !important;
        max-width: none !important;
    }

    .system-notification-subrow .system-switch[b-7amk3gowqt] {
        justify-self: end !important;
    }
}


/* ============================================================
   0.9.4 – System UI + Backup final
   ============================================================ */
.system-maintenance-textarea[b-7amk3gowqt] {
    min-height: 150px !important;
    resize: vertical;
}

.system-value-link[b-7amk3gowqt] {
    color: #0874ba;
    text-decoration: none;
}

.system-value-link:hover[b-7amk3gowqt] {
    text-decoration: underline;
}

.system-cloud-sync-action[b-7amk3gowqt] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 40px;
    align-items: center;
    gap: 0.55rem;
    width: min(100%, 390px);
}

.system-icon-button[b-7amk3gowqt] {
    display: grid;
    place-items: center;
    box-sizing: border-box;
    width: 40px;
    min-width: 40px;
    height: 40px;
    min-height: 40px;
    padding: 0;
    border: 1px solid #d5e1e9;
    border-radius: 11px;
    background: #ffffff;
    cursor: pointer;
}

.system-icon-button img[b-7amk3gowqt] {
    width: 17px;
    height: 17px;
    opacity: 0.72;
}

.system-mail-action-row[b-7amk3gowqt] {
    grid-template-columns: minmax(0, 1fr) minmax(190px, 270px);
}

.system-row-action[b-7amk3gowqt],
.system-row-action .system-secondary-button[b-7amk3gowqt] {
    width: 100%;
}

.system-notification-subrow[b-7amk3gowqt] {
    padding-left: 2rem;
    background: #fbfcfd;
}

.system-backup-restore-controls[b-7amk3gowqt] {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) auto;
    align-items: center;
    gap: 0.6rem;
    width: min(100%, 590px);
}

.system-danger-outline[b-7amk3gowqt] {
    color: #8d3b3f;
    border-color: #ebcfd1;
    background: #fffafa;
}

.system-external-backup-row[b-7amk3gowqt] {
    background: #fafcfd;
}

:global(html[data-theme="dark"]) .system-icon-button[b-7amk3gowqt] {
    border-color: #2d4654;
    background: #172a35;
}

:global(html[data-theme="dark"]) .system-notification-subrow[b-7amk3gowqt],
:global(html[data-theme="dark"]) .system-external-backup-row[b-7amk3gowqt] {
    background: #152630;
}

:global(html[data-theme="dark"]) .system-danger-outline[b-7amk3gowqt] {
    color: #efa5a9;
    border-color: #684047;
    background: #2a1f23;
}

@media (max-width: 640.98px) {
    .system-mail-action-row[b-7amk3gowqt],
    .system-backup-restore-row[b-7amk3gowqt] {
        grid-template-columns: 1fr !important;
        width: 100% !important;
    }

    .system-backup-restore-controls[b-7amk3gowqt] {
        grid-template-columns: 1fr !important;
        width: 100% !important;
    }

    .system-backup-restore-controls .system-secondary-button[b-7amk3gowqt],
    .system-backup-restore-controls .system-mail-select[b-7amk3gowqt] {
        width: 100% !important;
        max-width: none !important;
    }

    .system-notification-subrow[b-7amk3gowqt] {
        padding-left: 0.9rem !important;
    }
}


/* ============================================================
   0.9.4 – finaler System-Feinschliff
   ============================================================ */

/* Hinweistext im Wartungsmodus wirklich vollständig sichtbar */
.system-maintenance-row[b-7amk3gowqt] {
    align-items: stretch !important;
}

.system-maintenance-row .system-maintenance-textarea[b-7amk3gowqt] {
    box-sizing: border-box !important;
    min-height: 172px !important;
    height: 172px !important;
    max-height: none !important;
    overflow-y: auto !important;
    resize: vertical !important;
}

/* Unteroptionen bleiben normale weiße Einstellungszeilen */
.system-notification-detail-row[b-7amk3gowqt] {
    padding-left: 1.25rem !important;
    background: transparent !important;
}

:global(html[data-theme="dark"]) .system-notification-detail-row[b-7amk3gowqt] {
    background: transparent !important;
}

/* Backup-Bereich vollständig in der rechten Spalte halten */
.system-backup-restore-controls[b-7amk3gowqt] {
    grid-template-columns: 1fr !important;
    width: min(100%, 390px) !important;
}

.system-backup-restore-controls .system-mail-select[b-7amk3gowqt],
.system-backup-restore-controls .system-secondary-button[b-7amk3gowqt] {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
}

.system-backup-restore-controls .system-secondary-button[b-7amk3gowqt] {
    white-space: normal !important;
}

.system-external-backup-row[b-7amk3gowqt] {
    background: transparent !important;
}

:global(html[data-theme="dark"]) .system-external-backup-row[b-7amk3gowqt] {
    background: transparent !important;
}

@media (max-width: 640.98px) {
    .system-maintenance-row .system-maintenance-textarea[b-7amk3gowqt] {
        min-height: 160px !important;
        height: 160px !important;
    }

    .system-notification-detail-row[b-7amk3gowqt] {
        padding-left: 0 !important;
    }

    .system-backup-restore-controls[b-7amk3gowqt] {
        width: 100% !important;
    }
}


/* ============================================================
   0.9.4 – Backup Status / visuelles Feedback
   ============================================================ */
.system-backup-state[b-7amk3gowqt] {
    display: inline-flex;
    align-items: center;
    gap: 0.42rem;
    margin-top: 0.38rem;
    color: #738696;
    font-size: 0.76rem;
    font-weight: 650;
}

.system-backup-status-dot[b-7amk3gowqt] {
    display: block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #9aabb6;
}

.system-backup-state.is-success[b-7amk3gowqt] {
    color: #39775a;
}

.system-backup-state.is-success .system-backup-status-dot[b-7amk3gowqt] {
    background: #51b777;
}

.system-backup-state.is-warning[b-7amk3gowqt] {
    color: #927127;
}

.system-backup-state.is-warning .system-backup-status-dot[b-7amk3gowqt] {
    background: #d6a62c;
}

.system-backup-state.is-error[b-7amk3gowqt] {
    color: #a3454d;
}

.system-backup-state.is-error .system-backup-status-dot[b-7amk3gowqt] {
    background: #d95a62;
}

.system-backup-state.is-running[b-7amk3gowqt] {
    color: #0878bb;
}

.system-backup-state.is-running .system-backup-status-dot[b-7amk3gowqt] {
    background: #1596db;
    animation: backup-dot-pulse-b-7amk3gowqt 1s ease-in-out infinite;
}

.system-backup-create-button[b-7amk3gowqt] {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
}

.system-button-spinner[b-7amk3gowqt] {
    display: block;
    box-sizing: border-box;
    width: 16px;
    height: 16px;
    border: 2px solid rgba(70, 92, 106, 0.25);
    border-top-color: #087fc5;
    border-radius: 50%;
    animation: backup-button-spin-b-7amk3gowqt 0.8s linear infinite;
}

@keyframes backup-button-spin-b-7amk3gowqt {
    to { transform: rotate(360deg); }
}

@keyframes backup-dot-pulse-b-7amk3gowqt {
    0%, 100% { opacity: 0.45; transform: scale(0.9); }
    50% { opacity: 1; transform: scale(1.12); }
}

:global(html[data-theme="dark"]) .system-backup-state.is-success[b-7amk3gowqt] {
    color: #75c993;
}

:global(html[data-theme="dark"]) .system-backup-state.is-warning[b-7amk3gowqt] {
    color: #e5bd60;
}

:global(html[data-theme="dark"]) .system-backup-state.is-error[b-7amk3gowqt] {
    color: #f09aa0;
}


/* ============================================================
   0.9.4 – finaler Cloud-/Backup-Polish
   ============================================================ */
.system-icon-button.is-loading img[b-7amk3gowqt] {
    animation: system-sync-spin-b-7amk3gowqt 0.8s linear infinite;
}

@keyframes system-sync-spin-b-7amk3gowqt {
    to { transform: rotate(360deg); }
}

.system-cloud-action-message[b-7amk3gowqt] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin: 0 1.25rem 1rem;
    padding: 0.75rem 0.85rem;
    border-radius: 10px;
    font-size: 0.76rem;
    font-weight: 650;
    color: #607889;
    background: #f7fafc;
}

.system-cloud-action-dot[b-7amk3gowqt] {
    flex: 0 0 7px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #9eafb9;
}

.system-cloud-action-message.is-running[b-7amk3gowqt] {
    color: #0876b8;
}

.system-cloud-action-message.is-running .system-cloud-action-dot[b-7amk3gowqt] {
    background: #1295d8;
    animation: backup-dot-pulse-b-7amk3gowqt 1s ease-in-out infinite;
}

.system-cloud-action-message.is-success[b-7amk3gowqt] {
    color: #39775a;
}

.system-cloud-action-message.is-success .system-cloud-action-dot[b-7amk3gowqt] {
    background: #4fb776;
}

.system-cloud-action-message.is-error[b-7amk3gowqt] {
    color: #a2454c;
}

.system-cloud-action-message.is-error .system-cloud-action-dot[b-7amk3gowqt] {
    background: #d95b63;
}

.system-backup-control[b-7amk3gowqt] {
    box-sizing: border-box !important;
    width: min(100%, 390px) !important;
    justify-self: end !important;
}

.system-backup-value[b-7amk3gowqt] {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}

.system-backup-number-control[b-7amk3gowqt] {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 0.7rem !important;
}

.system-backup-number-control .system-mail-input[b-7amk3gowqt] {
    text-align: center !important;
}

.system-backup-restore-controls[b-7amk3gowqt] {
    width: min(100%, 390px) !important;
    justify-self: end !important;
}

.system-backup-restore-controls .system-mail-select[b-7amk3gowqt] {
    text-align: center !important;
    text-align-last: center !important;
}

.system-backup-restore-controls .system-secondary-button[b-7amk3gowqt] {
    text-align: center !important;
}

:global(html[data-theme="dark"]) .system-cloud-action-message[b-7amk3gowqt] {
    background: #152630;
}

:global(html[data-theme="dark"]) .system-cloud-action-message.is-success[b-7amk3gowqt] {
    color: #79c997;
}

:global(html[data-theme="dark"]) .system-cloud-action-message.is-error[b-7amk3gowqt] {
    color: #ee9aa0;
}

@media (max-width: 640.98px) {
    .system-backup-control[b-7amk3gowqt],
    .system-backup-restore-controls[b-7amk3gowqt] {
        width: 100% !important;
        justify-self: stretch !important;
    }

    .system-cloud-action-message[b-7amk3gowqt] {
        margin-inline: 0.9rem;
    }
}


/* ============================================================
   0.9.5 – System: klarer mobiler Abschnittsrhythmus
   ============================================================ */
@media (max-width: 640.98px) {
    .system-page[b-7amk3gowqt] {
        gap: 0 !important;
    }

    .system-section + .system-section[b-7amk3gowqt] {
        margin-top: 2.7rem !important;
    }

    .system-section[b-7amk3gowqt] {
        gap: 1.15rem !important;
    }

    .system-section-heading[b-7amk3gowqt] {
        gap: 0.4rem !important;
    }

    .system-section-heading h2[b-7amk3gowqt] {
        font-size: 1.28rem !important;
        line-height: 1.22 !important;
    }

    .system-section-heading p[b-7amk3gowqt] {
        font-size: 0.92rem !important;
        line-height: 1.48 !important;
    }
}


/* ============================================================
   0.9.5 – System rechte Spalte vereinheitlicht
   ============================================================ */
.system-value[b-7amk3gowqt],
.system-mail-input[b-7amk3gowqt],
.system-mail-select[b-7amk3gowqt],
.system-number-input[b-7amk3gowqt],
.system-secondary-button[b-7amk3gowqt],
.system-backup-value[b-7amk3gowqt],
.system-backup-restore-controls .system-mail-select[b-7amk3gowqt],
.system-backup-restore-controls .system-secondary-button[b-7amk3gowqt] {
    text-align: left !important;
    text-align-last: left !important;
}
.system-value[b-7amk3gowqt] {
    display: flex;
    align-items: center;
    justify-content: flex-start !important;
}
.system-row-action .system-secondary-button[b-7amk3gowqt],
.system-backup-create-button[b-7amk3gowqt] {
    justify-content: flex-start !important;
}
.system-control-left[b-7amk3gowqt] {
    width: min(100%, 390px);
    justify-self: end;
}
.system-maintenance-row .system-maintenance-textarea[b-7amk3gowqt] {
    min-height: 118px !important;
    height: 118px !important;
}
@media (max-width:640.98px){
    .system-maintenance-row .system-maintenance-textarea[b-7amk3gowqt] {
        min-height: 112px !important;
        height: 112px !important;
    }
    .system-control-left[b-7amk3gowqt] {width:100%;justify-self:stretch}
}


/* ============================================================
   0.9.5 – finale System-UI-Vereinheitlichung
   Rechte Spalte: gleiche Typografie, Höhe, Ausrichtung und
   eindeutig erkennbare Aktionen
   ============================================================ */

/* Status-Pille Cloud-Sync bewusst kompakt lassen */
.system-cloud-status[b-7amk3gowqt] {
    width: auto !important;
    justify-self: end !important;
}

/* Eingaben / Selects in der rechten Spalte */
.system-mail-input[b-7amk3gowqt],
.system-mail-select[b-7amk3gowqt],
.system-number-input[b-7amk3gowqt],
.system-control-left[b-7amk3gowqt] {
    min-height: 52px !important;
    font-size: 0.86rem !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: left !important;
    text-align-last: left !important;
}

/* Systemwerte bleiben wie bisher kräftig und linksbündig */
.system-value[b-7amk3gowqt] {
    min-height: 52px !important;
    box-sizing: border-box !important;
    padding: 0.78rem 0.9rem !important;
    font-size: 0.86rem !important;
    font-weight: 700 !important;
    text-align: left !important;
    justify-content: flex-start !important;
}

/* Alle regulären Aktionsbuttons der rechten Spalte erhalten
   dieselbe Größe wie die Eingabefelder und einen klaren Button-Look. */
.system-secondary-button[b-7amk3gowqt],
.system-control-button[b-7amk3gowqt] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
    min-height: 52px !important;
    padding: 0.78rem 0.95rem !important;
    border: 1px solid #bcd8e8 !important;
    border-radius: 12px !important;
    color: #176d9c !important;
    background: #f6fbfe !important;
    font-size: 0.86rem !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: left !important;
    text-decoration: none !important;
    box-shadow: 0 2px 7px rgba(16, 87, 128, 0.045) !important;
}

.system-secondary-button:hover:not(:disabled)[b-7amk3gowqt],
.system-control-button:hover[b-7amk3gowqt] {
    border-color: #9dcce4 !important;
    color: #075f94 !important;
    background: #edf8fd !important;
    text-decoration: none !important;
}

/* Aktivierte Cloud-Geräte als echte Aktionsfläche statt Textlink */
.system-device-link-button[b-7amk3gowqt] {
    width: min(100%, 390px) !important;
    justify-self: end !important;
}

/* Verbindungstest / Backup erstellen: exakt gleiche rechte Spaltenbreite */
.system-row-action[b-7amk3gowqt] {
    width: min(100%, 390px) !important;
    justify-self: end !important;
}

.system-row-action .system-secondary-button[b-7amk3gowqt],
.system-backup-create-button[b-7amk3gowqt] {
    width: 100% !important;
    max-width: none !important;
}

/* Restore-Block vollständig einheitlich */
.system-backup-restore-controls[b-7amk3gowqt] {
    width: min(100%, 390px) !important;
}

.system-backup-restore-controls .system-mail-select[b-7amk3gowqt],
.system-backup-restore-controls .system-secondary-button[b-7amk3gowqt] {
    width: 100% !important;
    min-height: 52px !important;
    font-size: 0.86rem !important;
    font-weight: 700 !important;
    text-align: left !important;
    text-align-last: left !important;
}

/* Destruktive Aktion behält ihre semantische rote Darstellung */
.system-secondary-button.system-danger-outline[b-7amk3gowqt] {
    color: #a24a4f !important;
    border-color: #eccfd2 !important;
    background: #fffafa !important;
}

.system-secondary-button.system-danger-outline:hover:not(:disabled)[b-7amk3gowqt] {
    color: #8c343a !important;
    border-color: #e4b9bd !important;
    background: #fff3f4 !important;
}

/* Aufbewahrung: Zahl fett, Einheit normal */
.system-backup-number-control .system-mail-input[b-7amk3gowqt] {
    text-align: left !important;
}
.system-backup-number-control > span[b-7amk3gowqt] {
    font-weight: 400 !important;
}

/* Wartungstext wieder kompakter */
.system-maintenance-row .system-maintenance-textarea[b-7amk3gowqt] {
    min-height: 94px !important;
    height: 94px !important;
}

/* Dark Mode */
:global(html[data-theme="dark"]) .system-secondary-button[b-7amk3gowqt],
:global(html[data-theme="dark"]) .system-control-button[b-7amk3gowqt] {
    color: #9ed8f5 !important;
    border-color: #35576a !important;
    background: #193440 !important;
}

:global(html[data-theme="dark"]) .system-secondary-button:hover:not(:disabled)[b-7amk3gowqt],
:global(html[data-theme="dark"]) .system-control-button:hover[b-7amk3gowqt] {
    color: #c2e8fb !important;
    border-color: #447087 !important;
    background: #20404d !important;
}

:global(html[data-theme="dark"]) .system-secondary-button.system-danger-outline[b-7amk3gowqt] {
    color: #efa4aa !important;
    border-color: #68454a !important;
    background: #38262a !important;
}

/* Mobil identisch, aber volle Breite */
@media (max-width: 640.98px) {
    .system-device-link-button[b-7amk3gowqt],
    .system-row-action[b-7amk3gowqt],
    .system-backup-restore-controls[b-7amk3gowqt] {
        width: 100% !important;
        justify-self: stretch !important;
    }

    .system-maintenance-row .system-maintenance-textarea[b-7amk3gowqt] {
        min-height: 92px !important;
        height: 92px !important;
    }
}
/* /Components/Pages/SettingsTariffs.razor.rz.scp.css */
.tariffs-page[b-wap2hjhyx0]{display:grid;gap:1.6rem;max-width:1220px}.tariffs-header[b-wap2hjhyx0]{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem}.tariffs-back[b-wap2hjhyx0]{color:#0874ba;font-size:.88rem;font-weight:700;text-decoration:none}.tariffs-header h1[b-wap2hjhyx0]{margin:.55rem 0 0;color:#17283a;font-size:2rem;font-weight:760;letter-spacing:-.035em}.tariffs-header p[b-wap2hjhyx0]{margin:.45rem 0 0;color:#718091}.tariffs-current-note[b-wap2hjhyx0]{display:flex;align-items:center;gap:.7rem;padding:.8rem 1rem;border:1px solid #dbe8ef;border-radius:15px;background:#fff}.tariffs-current-icon[b-wap2hjhyx0]{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;color:#0874ba;background:#eaf6fc;font-weight:800}.tariffs-current-note div[b-wap2hjhyx0]{display:grid}.tariffs-current-note strong[b-wap2hjhyx0]{font-size:.85rem}.tariffs-current-note div span[b-wap2hjhyx0]{color:#80909e;font-size:.75rem}.tariffs-grid[b-wap2hjhyx0]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.tariff-plan-card[b-wap2hjhyx0]{position:relative;display:flex;flex-direction:column;min-width:0;padding:1.35rem;border:1px solid #dfe8f0;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(18,54,82,.05)}.tariff-plan-card.is-recommended[b-wap2hjhyx0]{border-color:#e4ae21;background:linear-gradient(180deg,#fffdf7,#fff)}.tariff-plan-recommended[b-wap2hjhyx0]{position:absolute;top:.7rem;right:.9rem;padding:.25rem .55rem;border-radius:999px;color:#fff;background:#e8a600;font-size:.66rem;font-weight:800}.tariff-plan-heading h2[b-wap2hjhyx0]{margin:0;color:#0874ba;font-size:1.25rem}.is-recommended .tariff-plan-heading h2[b-wap2hjhyx0]{color:#c88700}.tariff-plan-heading p[b-wap2hjhyx0]{min-height:2.8rem;margin:.5rem 0 0;color:#718091;font-size:.82rem;line-height:1.45}.tariff-plan-price[b-wap2hjhyx0]{display:flex;align-items:baseline;gap:.35rem;margin-top:1.25rem}.tariff-plan-price strong[b-wap2hjhyx0]{color:#17283a;font-size:2rem;line-height:1;font-weight:800}.tariff-plan-price span[b-wap2hjhyx0]{color:#53697a;font-size:.78rem}.tariff-plan-yearly[b-wap2hjhyx0]{margin-top:.38rem;color:#6a7e8c;font-size:.75rem}.tariff-plan-divider[b-wap2hjhyx0]{height:1px;margin:1.15rem 0;background:#edf1f4}.tariff-plan-feature-title[b-wap2hjhyx0]{font-size:.82rem}.tariff-plan-features[b-wap2hjhyx0]{display:grid;gap:.58rem;margin:.8rem 0 1.2rem;padding:0;list-style:none}.tariff-plan-features li[b-wap2hjhyx0]{display:grid;grid-template-columns:18px 1fr;gap:.35rem;color:#40566a;font-size:.78rem;line-height:1.35}.tariff-plan-features li span[b-wap2hjhyx0]{color:#2b9a55;font-weight:800}.tariff-plan-action[b-wap2hjhyx0]{display:grid;gap:.35rem;margin-top:auto;text-align:center}.tariff-plan-action button[b-wap2hjhyx0]{min-height:44px;border:1px solid #d7e1e8;border-radius:11px;color:#8b99a4;background:#eef2f5;font-weight:750}.tariff-plan-action small[b-wap2hjhyx0]{color:#8a98a4;font-size:.7rem}.tariff-comparison-card[b-wap2hjhyx0]{padding:1.2rem;border:1px solid #dfe8f0;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(18,54,82,.04)}.tariff-comparison-card h2[b-wap2hjhyx0]{margin:0 0 1rem;font-size:1.08rem}.tariff-comparison-scroll[b-wap2hjhyx0]{overflow-x:auto}.tariff-comparison-card table[b-wap2hjhyx0]{width:100%;min-width:700px;border-collapse:collapse}.tariff-comparison-card th[b-wap2hjhyx0],.tariff-comparison-card td[b-wap2hjhyx0]{padding:.7rem;border-bottom:1px solid #e8eef2;text-align:center;font-size:.78rem}.tariff-comparison-card th:first-child[b-wap2hjhyx0],.tariff-comparison-card td:first-child[b-wap2hjhyx0]{text-align:left}.is-included[b-wap2hjhyx0]{color:#289750;font-size:1rem;font-weight:800}.is-not-included[b-wap2hjhyx0]{color:#a8b3bc}.tariffs-info-note[b-wap2hjhyx0]{display:flex;align-items:center;gap:.8rem;padding:.9rem 1rem;border:1px solid #d9e9f4;border-radius:15px;background:#f7fbfe}.tariffs-info-note>span[b-wap2hjhyx0]{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:#0874ba;background:#e7f4fc;font-weight:800}.tariffs-info-note strong[b-wap2hjhyx0]{font-size:.82rem}.tariffs-info-note p[b-wap2hjhyx0]{margin:.12rem 0 0;color:#718091;font-size:.75rem}@media(max-width:900px){.tariffs-grid[b-wap2hjhyx0]{grid-template-columns:1fr}.tariffs-header[b-wap2hjhyx0]{align-items:stretch;flex-direction:column}.tariff-plan-heading p[b-wap2hjhyx0]{min-height:0}}@media(max-width:640.98px){.tariffs-page[b-wap2hjhyx0]{gap:1.25rem}.tariffs-header h1[b-wap2hjhyx0]{font-size:1.8rem}.tariffs-current-note[b-wap2hjhyx0]{align-self:stretch}.tariff-plan-card[b-wap2hjhyx0]{border-radius:18px}.tariff-plan-recommended[b-wap2hjhyx0]{position:static;width:fit-content;margin-bottom:.65rem}.tariff-comparison-card[b-wap2hjhyx0]{padding:.9rem}}

:global(html[data-theme="dark"]) .tariffs-current-note[b-wap2hjhyx0],
:global(html[data-theme="dark"]) .tariff-plan-card[b-wap2hjhyx0],
:global(html[data-theme="dark"]) .tariff-comparison-card[b-wap2hjhyx0],
:global(html[data-theme="dark"]) .tariffs-info-note[b-wap2hjhyx0] {
    color: #d8e5ec;
    border-color: #2d4452;
    background: #182a35;
}
:global(html[data-theme="dark"]) .tariff-plan-card.is-recommended[b-wap2hjhyx0] {
    border-color: #8f6b1e;
    background: linear-gradient(180deg, #2c2a1d, #182a35);
}
:global(html[data-theme="dark"]) .tariffs-header h1[b-wap2hjhyx0],
:global(html[data-theme="dark"]) .tariff-plan-price strong[b-wap2hjhyx0],
:global(html[data-theme="dark"]) .tariff-comparison-card h2[b-wap2hjhyx0] {
    color: #edf4f8;
}
:global(html[data-theme="dark"]) .tariff-plan-features li[b-wap2hjhyx0],
:global(html[data-theme="dark"]) .tariffs-header p[b-wap2hjhyx0],
:global(html[data-theme="dark"]) .tariff-plan-heading p[b-wap2hjhyx0],
:global(html[data-theme="dark"]) .tariff-plan-yearly[b-wap2hjhyx0],
:global(html[data-theme="dark"]) .tariffs-current-note div span[b-wap2hjhyx0],
:global(html[data-theme="dark"]) .tariffs-info-note p[b-wap2hjhyx0] {
    color: #9fb0bd;
}
:global(html[data-theme="dark"]) .tariff-comparison-card th[b-wap2hjhyx0],
:global(html[data-theme="dark"]) .tariff-comparison-card td[b-wap2hjhyx0] {
    border-color: #2d4452;
}


/* 0.9.7 – Tarifvergleich mobil ohne horizontalen Seitenscroll */
@media(max-width:640.98px){
  .tariffs-page[b-wap2hjhyx0],.tariffs-header[b-wap2hjhyx0],.tariffs-grid[b-wap2hjhyx0],.tariff-plan-card[b-wap2hjhyx0],.tariff-comparison-card[b-wap2hjhyx0]{min-width:0;max-width:100%;box-sizing:border-box}
  .tariff-comparison-scroll[b-wap2hjhyx0]{overflow:visible}
  .tariff-comparison-card table[b-wap2hjhyx0],.tariff-comparison-card tbody[b-wap2hjhyx0],.tariff-comparison-card tr[b-wap2hjhyx0],.tariff-comparison-card td[b-wap2hjhyx0]{display:block;width:100%;min-width:0;box-sizing:border-box}
  .tariff-comparison-card thead[b-wap2hjhyx0]{display:none}
  .tariff-comparison-card tbody[b-wap2hjhyx0]{display:grid;gap:.7rem}
  .tariff-comparison-card tr[b-wap2hjhyx0]{padding:.8rem;border:1px solid #e2eaf0;border-radius:14px;background:#fbfcfd}
  .tariff-comparison-card td[b-wap2hjhyx0]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.35rem 0;border:0;text-align:right}
  .tariff-comparison-card td.comparison-feature[b-wap2hjhyx0]{display:block;padding:0 0 .45rem;margin-bottom:.2rem;border-bottom:1px solid #e8eef2;text-align:left;font-weight:750}
  .tariff-comparison-card td[data-plan][b-wap2hjhyx0]::before{content:attr(data-plan);color:#718091;font-weight:650}
}
:global(html[data-theme="dark"]) .tariff-plan-action button[b-wap2hjhyx0]{color:#879aa7!important;border-color:#344b59!important;background:#223742!important}
@media(max-width:640.98px){
  :global(html[data-theme="dark"]) .tariff-comparison-card tr[b-wap2hjhyx0]{border-color:#2d4452;background:#152630}
  :global(html[data-theme="dark"]) .tariff-comparison-card td.comparison-feature[b-wap2hjhyx0]{border-color:#2d4452}
  :global(html[data-theme="dark"]) .tariff-comparison-card td[data-plan][b-wap2hjhyx0]::before{color:#9fb0bd}
}
/* /Components/Pages/SettingsUsers.razor.rz.scp.css */
.admin-users-page[b-j719kj2ooh] {
    display: grid;
    gap: 1.5rem;
}

.admin-users-header[b-j719kj2ooh] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
}

    .admin-users-header h1[b-j719kj2ooh] {
        margin: 0.45rem 0 0;
        color: #17283a;
        font-size: 2rem;
        font-weight: 750;
        line-height: 1.15;
        letter-spacing: -0.035em;
    }

    .admin-users-header p[b-j719kj2ooh] {
        margin: 0.45rem 0 0;
        color: #687788;
        font-size: 1rem;
        line-height: 1.5;
    }

.admin-users-back-link[b-j719kj2ooh] {
    color: #17699d;
    font-size: 0.9rem;
    font-weight: 700;
    text-decoration: none;
}

    .admin-users-back-link:hover[b-j719kj2ooh] {
        color: #0785d1;
    }

.admin-users-create-button[b-j719kj2ooh],
.admin-user-primary-button[b-j719kj2ooh],
.admin-user-secondary-button[b-j719kj2ooh] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0.7rem 1.1rem;
    border-radius: 14px;
    font-size: 0.92rem;
    font-weight: 700;
    text-decoration: none;
}

.admin-users-create-button[b-j719kj2ooh],
.admin-user-primary-button[b-j719kj2ooh] {
    border: 0;
    color: #ffffff;
    background: linear-gradient( 135deg, #0788d1, #006fb8 );
    box-shadow: 0 10px 24px rgba(0, 112, 184, 0.2);
    cursor: pointer;
}

    .admin-users-create-button:disabled[b-j719kj2ooh],
    .admin-user-primary-button:disabled[b-j719kj2ooh] {
        color: #8b98a5;
        background: #e5ecf2;
        box-shadow: none;
        cursor: not-allowed;
    }

.admin-user-secondary-button[b-j719kj2ooh] {
    border: 1px solid #d8e4ec;
    color: #29445b;
    background: #ffffff;
    cursor: pointer;
}

.admin-users-toolbar[b-j719kj2ooh] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 1.25rem;
    padding: 1.25rem;
    border: 1px solid #dfe8f0;
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.05);
}

.admin-users-search[b-j719kj2ooh] {
    display: grid;
    gap: 0.45rem;
}

    .admin-users-search label[b-j719kj2ooh] {
        color: #5f7080;
        font-size: 0.83rem;
        font-weight: 700;
    }

    .admin-users-search input[b-j719kj2ooh] {
        min-height: 48px;
        padding: 0.75rem 0.95rem;
        border: 1px solid #d7e2ea;
        border-radius: 14px;
        color: #17283a;
        background: #ffffff;
    }

        .admin-users-search input:focus[b-j719kj2ooh] {
            border-color: #0785d1;
            outline: 0;
            box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.12);
        }

.admin-users-summary[b-j719kj2ooh] {
    display: flex;
    gap: 0.75rem;
}

    .admin-users-summary div[b-j719kj2ooh] {
        min-width: 88px;
        padding: 0.75rem 0.9rem;
        border: 1px solid #e0e8ef;
        border-radius: 14px;
        background: #f7fafc;
    }

    .admin-users-summary span[b-j719kj2ooh] {
        display: block;
        color: #718091;
        font-size: 0.75rem;
        font-weight: 700;
    }

    .admin-users-summary strong[b-j719kj2ooh] {
        display: block;
        margin-top: 0.1rem;
        color: #17283a;
        font-size: 1.15rem;
    }

.admin-users-list[b-j719kj2ooh] {
    display: grid;
    gap: 0.85rem;
}

.admin-user-card[b-j719kj2ooh] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    min-height: 112px;
    padding: 1.15rem 1.25rem;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    color: inherit;
    background: #ffffff;
    text-decoration: none;
    box-shadow: 0 12px 30px rgba(18, 54, 82, 0.05), 0 2px 8px rgba(18, 54, 82, 0.025);
    transition: transform 150ms ease, border-color 150ms ease, box-shadow 150ms ease;
}

    .admin-user-card:hover[b-j719kj2ooh] {
        color: inherit;
        transform: translateY(-2px);
        border-color: #b9d7eb;
        box-shadow: 0 18px 42px rgba(18, 74, 114, 0.09), 0 4px 12px rgba(18, 74, 114, 0.04);
    }

    .admin-user-card:focus-visible[b-j719kj2ooh] {
        outline: 0;
        border-color: #0785d1;
        box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.13), 0 18px 42px rgba(18, 74, 114, 0.09);
    }

.admin-user-avatar[b-j719kj2ooh] {
    display: grid;
    place-items: center;
    width: 50px;
    height: 50px;
    border: 1px solid #d8ebf7;
    border-radius: 15px;
    color: #0874ba;
    background: linear-gradient( 145deg, #e9f5fc, #dceefa );
    font-size: 0.92rem;
    font-weight: 750;
}

.admin-user-avatar-large[b-j719kj2ooh] {
    width: 68px;
    height: 68px;
    border-radius: 20px;
    font-size: 1.1rem;
}

.admin-user-avatar-manager[b-j719kj2ooh] {
    border-color: #d8c5fb;
    color: #6d28d9;
    background: linear-gradient(145deg, #f5efff, #e7dcff);
}

.admin-user-avatar-admin[b-j719kj2ooh] {
    border-color: #f3c39f;
    color: #a94d12;
    background: linear-gradient(145deg, #fff4ea, #ffe1ca);
}

.admin-user-main[b-j719kj2ooh] {
    min-width: 0;
}

.admin-user-name-row[b-j719kj2ooh] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.65rem;
}

    .admin-user-name-row h2[b-j719kj2ooh] {
        margin: 0;
        color: #17283a;
        font-size: 1rem;
        font-weight: 750;
    }

.admin-user-email[b-j719kj2ooh] {
    margin: 0.25rem 0 0;
    overflow: hidden;
    color: #687788;
    font-size: 0.9rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-user-meta[b-j719kj2ooh] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem 1.2rem;
    margin-top: 0.5rem;
    color: #607283;
    font-size: 0.82rem;
}

    .admin-user-meta strong[b-j719kj2ooh] {
        color: #465b6d;
    }

.admin-user-status[b-j719kj2ooh] {
    display: inline-flex;
    align-items: center;
    min-height: 1.6rem;
    padding: 0.2rem 0.6rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 750;
    line-height: 1;
}

.admin-user-status-active[b-j719kj2ooh] {
    border: 1px solid #bfe6ce;
    color: #16733d;
    background: #edf9f1;
}

.admin-user-status-inactive[b-j719kj2ooh] {
    border: 1px solid #d7dde3;
    color: #677482;
    background: #f0f3f5;
}

.admin-user-role-badge[b-j719kj2ooh] {
    display: inline-flex;
    align-items: center;
    min-height: 1.6rem;
    padding: 0.2rem 0.6rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 750;
    line-height: 1;
}

.admin-user-role-manager[b-j719kj2ooh] {
    border: 1px solid #d8b4fe;
    color: #6d28d9;
    background: #f3e8ff;
}

.admin-user-role-admin[b-j719kj2ooh] {
    border: 1px solid #f1b98e;
    color: #a94d12;
    background: #fff0e4;
}

.admin-user-arrow[b-j719kj2ooh] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

    .admin-user-arrow img[b-j719kj2ooh] {
        width: 12px;
        height: 12px;
        opacity: 0.38;
        object-fit: contain;
        transition: opacity 150ms ease, transform 150ms ease;
    }

    .admin-user-card:hover .admin-user-arrow img[b-j719kj2ooh] {
        opacity: 0.58;
        transform: translateX(2px);
    }

.admin-users-state[b-j719kj2ooh],
.admin-user-detail[b-j719kj2ooh] {
    padding: 1.5rem;
    border: 1px solid #dfe8f0;
    border-radius: 20px;
    color: #687788;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.05);
}

.admin-users-state-error[b-j719kj2ooh] {
    border-color: #efcaca;
    color: #9b2929;
    background: #fff5f5;
}

.admin-user-detail[b-j719kj2ooh] {
    display: grid;
    gap: 1.5rem;
}

.admin-user-page-navigation[b-j719kj2ooh] {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0.8rem 0 0 0.15rem;
}


.admin-user-detail-header[b-j719kj2ooh] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.admin-user-detail-title h2[b-j719kj2ooh],
.admin-user-form-page-heading h2[b-j719kj2ooh] {
    margin: 0.4rem 0 0;
    color: #17283a;
    font-size: 1.45rem;
    font-weight: 750;
}

.admin-user-detail-title p[b-j719kj2ooh],
.admin-user-form-page-heading p[b-j719kj2ooh] {
    margin: 0.25rem 0 0;
    color: #687788;
}

.admin-user-form-kicker[b-j719kj2ooh] {
    color: #0874ba;
    font-size: 0.78rem;
    font-weight: 750;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

.admin-user-detail-grid[b-j719kj2ooh] {
    display: grid;
    grid-template-columns: repeat( 3, minmax(0, 1fr) );
    gap: 0.85rem;
}

    .admin-user-detail-grid div[b-j719kj2ooh] {
        padding: 1rem;
        border: 1px solid #e0e8ef;
        border-radius: 15px;
        background: #f8fafc;
    }

    .admin-user-detail-grid span[b-j719kj2ooh] {
        display: block;
        color: #718091;
        font-size: 0.78rem;
        font-weight: 700;
    }

    .admin-user-detail-grid strong[b-j719kj2ooh] {
        display: block;
        margin-top: 0.3rem;
        color: #17283a;
        font-size: 0.95rem;
    }

.admin-user-detail-actions[b-j719kj2ooh] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    margin-top: 1rem;
}

.admin-user-form-section[b-j719kj2ooh] {
    display: grid;
    gap: 1rem;
    margin-top: 1.15rem;
    padding-top: 1.5rem;
    border-top: 1px solid #e3eaf0;
}

.admin-user-form-heading h3[b-j719kj2ooh] {
    margin: 0;
    color: #17283a;
    font-size: 1.05rem;
    font-weight: 750;
}

.admin-user-form-heading p[b-j719kj2ooh] {
    margin: 0.25rem 0 0;
    color: #718091;
    font-size: 0.88rem;
}

.admin-user-form-grid[b-j719kj2ooh] {
    display: grid;
    grid-template-columns: repeat( 2, minmax(0, 1fr) );
    gap: 1rem;
}

.admin-user-form-field[b-j719kj2ooh] {
    display: grid;
    align-content: start;
    gap: 0.4rem;
}

.admin-user-form-field-wide[b-j719kj2ooh] {
    grid-column: 1 / -1;
    margin-bottom: 0.75rem;
}

.admin-user-form-field label[b-j719kj2ooh] {
    color: #516579;
    font-size: 0.83rem;
    font-weight: 700;
}

.admin-user-input[b-j719kj2ooh] {
    width: 100%;
    min-height: 48px;
    padding: 0.72rem 0.9rem;
    border: 1px solid #d7e2ea;
    border-radius: 13px;
    color: #17283a;
    background: #ffffff;
    outline: 0;
}

    .admin-user-input:focus[b-j719kj2ooh] {
        border-color: #0785d1;
        box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.12);
    }

.admin-user-form-field small[b-j719kj2ooh] {
    color: #718091;
    font-size: 0.78rem;
    line-height: 1.4;
}

.admin-user-checkbox[b-j719kj2ooh] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-height: 52px;
    padding: 0.8rem 0.95rem;
    margin-bottom: 0.75rem;
    border: 1px solid #dce6ed;
    border-radius: 14px;
    background: #f8fafc;
    cursor: pointer;
}

    .admin-user-checkbox input[b-j719kj2ooh] {
        width: 1.15rem;
        height: 1.15rem;
    }

    .admin-user-checkbox span[b-j719kj2ooh] {
        color: #17283a;
        font-size: 0.9rem;
        font-weight: 700;
    }

.admin-user-validation-summary[b-j719kj2ooh],
.admin-user-message[b-j719kj2ooh] {
    padding: 0.85rem 1rem;
    border-radius: 13px;
    font-size: 0.87rem;
    font-weight: 600;
}

.admin-user-validation-summary[b-j719kj2ooh] {
    border: 1px solid #efcaca;
    color: #9b2929;
    background: #fff5f5;
}

    .admin-user-validation-summary:empty[b-j719kj2ooh] {
        display: none;
    }

.admin-user-message-error[b-j719kj2ooh] {
    border: 1px solid #efcaca;
    color: #9b2929;
    background: #fff5f5;
}

.admin-user-message-success[b-j719kj2ooh] {
    border: 1px solid #bfe6ce;
    color: #16733d;
    background: #edf9f1;
}

.admin-user-password-heading[b-j719kj2ooh] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.admin-user-password-tools[b-j719kj2ooh] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.6rem;
}

.admin-user-password-tool-button[b-j719kj2ooh] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0.55rem 0.8rem;
    border: 1px solid #d5e2eb;
    border-radius: 11px;
    color: #17699d;
    background: #ffffff;
    font-size: 0.8rem;
    font-weight: 700;
    cursor: pointer;
    transition: border-color 150ms ease, background-color 150ms ease, color 150ms ease;
}

    .admin-user-password-tool-button:hover[b-j719kj2ooh] {
        border-color: #acd1e8;
        color: #006fb8;
        background: #f3f9fd;
    }

    .admin-user-password-tool-button:focus-visible[b-j719kj2ooh] {
        border-color: #0785d1;
        outline: 0;
        box-shadow: 0 0 0 4px rgba(7, 133, 209, 0.12);
    }

.admin-user-password-input[b-j719kj2ooh] {
    font-family: Consolas, "Courier New", monospace;
    letter-spacing: 0.035em;
}

.admin-user-password-info[b-j719kj2ooh] {
    padding: 0.75rem 0.9rem;
    margin-bottom: 0.75rem;
    border: 1px solid #dce8f0;
    border-radius: 12px;
    color: #5d7184;
    background: #f6fafc;
    font-size: 0.8rem;
    line-height: 1.45;
}

.admin-user-detail-actions-split[b-j719kj2ooh] {
    align-items: center;
    justify-content: space-between;
}

.admin-user-detail-actions-right[b-j719kj2ooh] {
    display: flex;
    gap: 0.75rem;
}

.admin-user-danger-button[b-j719kj2ooh],
.admin-user-danger-outline-button[b-j719kj2ooh] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0.7rem 1.1rem;
    border-radius: 14px;
    font-size: 0.92rem;
    font-weight: 700;
    cursor: pointer;
}

.admin-user-danger-button[b-j719kj2ooh] {
    border: 0;
    color: #ffffff;
    background: #bd2c2c;
    box-shadow: 0 10px 24px rgba(189, 44, 44, 0.18);
}

.admin-user-danger-outline-button[b-j719kj2ooh] {
    border: 1px solid #e5bcbc;
    color: #a72727;
    background: #ffffff;
}

.admin-user-danger-button:hover[b-j719kj2ooh] {
    background: #a92222;
}

.admin-user-danger-outline-button:hover[b-j719kj2ooh] {
    border-color: #d98f8f;
    color: #911d1d;
    background: #fff7f7;
}

.admin-user-danger-button:disabled[b-j719kj2ooh],
.admin-user-danger-outline-button:disabled[b-j719kj2ooh] {
    color: #9ba6af;
    border-color: #dfe5e9;
    background: #edf1f4;
    box-shadow: none;
    cursor: not-allowed;
}

.admin-user-delete-confirmation[b-j719kj2ooh] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1rem;
    border: 1px solid #e8baba;
    border-radius: 15px;
    color: #783030;
    background: #fff6f6;
}

    .admin-user-delete-confirmation h3[b-j719kj2ooh] {
        margin: 0;
        color: #8c2424;
        font-size: 1rem;
        font-weight: 750;
    }

    .admin-user-delete-confirmation p[b-j719kj2ooh] {
        margin: 0.35rem 0 0;
        font-size: 0.84rem;
        line-height: 1.45;
    }

.admin-user-delete-confirmation-actions[b-j719kj2ooh] {
    display: flex;
    flex-shrink: 0;
    gap: 0.75rem;
}

.admin-user-delete-protection-hint[b-j719kj2ooh] {
    margin: -0.4rem 0 0;
    color: #7c8995;
    font-size: 0.78rem;
    text-align: left;
}

.validation-message[b-j719kj2ooh] {
    color: #a42828;
    font-size: 0.78rem;
}



.admin-user-tariff-section[b-j719kj2ooh] {
    display: grid;
    gap: 1rem;
    margin-top: 1.15rem;
    padding-top: 1.5rem;
    border-top: 1px solid #e3eaf0;
}

.admin-user-tariff-heading[b-j719kj2ooh] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.25rem;
}

    .admin-user-tariff-heading h3[b-j719kj2ooh] {
        margin: 0.35rem 0 0;
        color: #17283a;
        font-size: 1.05rem;
        font-weight: 750;
    }

    .admin-user-tariff-heading p[b-j719kj2ooh] {
        margin: 0.25rem 0 0;
        color: #718091;
        font-size: 0.88rem;
        line-height: 1.45;
    }

.admin-user-tariff-empty[b-j719kj2ooh] {
    padding: 1rem;
    border: 1px solid #e0e8ef;
    border-radius: 15px;
    color: #718091;
    background: #f8fafc;
    font-size: 0.88rem;
}

.admin-user-current-tariff[b-j719kj2ooh] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto auto;
    align-items: center;
    gap: 1.25rem;
    padding: 1.15rem 1.25rem;
    border: 1px solid #d9eaf5;
    border-radius: 16px;
    background: #f3f9fd;
}

.admin-user-current-tariff-main[b-j719kj2ooh],
.admin-user-current-tariff-price[b-j719kj2ooh],
.admin-user-current-tariff-meta[b-j719kj2ooh] {
    display: grid;
    gap: 0.2rem;
}

    .admin-user-current-tariff-main > span[b-j719kj2ooh],
    .admin-user-current-tariff-meta > span[b-j719kj2ooh] {
        color: #718091;
        font-size: 0.74rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.04em;
    }

    .admin-user-current-tariff-main > strong[b-j719kj2ooh] {
        color: #17283a;
        font-size: 1rem;
        font-weight: 760;
    }

    .admin-user-current-tariff-main > p[b-j719kj2ooh] {
        margin: 0;
        color: #687788;
        font-size: 0.84rem;
    }

.admin-user-current-tariff-price[b-j719kj2ooh] {
    justify-items: end;
    min-width: 130px;
}

    .admin-user-current-tariff-price > strong[b-j719kj2ooh] {
        color: #0874ba;
        font-size: 1.15rem;
        font-weight: 800;
    }

    .admin-user-current-tariff-price > span[b-j719kj2ooh] {
        color: #718091;
        font-size: 0.75rem;
        font-weight: 700;
    }

.admin-user-current-tariff-meta[b-j719kj2ooh] {
    justify-items: end;
    min-width: 120px;
}

    .admin-user-current-tariff-meta > strong[b-j719kj2ooh] {
        color: #263d50;
        font-size: 0.9rem;
        font-weight: 720;
    }

.admin-user-tariff-history[b-j719kj2ooh] {
    overflow: hidden;
    border: 1px solid #e0e8ef;
    border-radius: 16px;
    background: #ffffff;
}

.admin-user-tariff-history-heading[b-j719kj2ooh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.9rem 1rem;
    border-bottom: 1px solid #edf1f4;
    background: #f8fafc;
}

    .admin-user-tariff-history-heading strong[b-j719kj2ooh] {
        color: #263d50;
        font-size: 0.88rem;
    }

    .admin-user-tariff-history-heading span[b-j719kj2ooh] {
        color: #718091;
        font-size: 0.78rem;
        font-weight: 700;
    }

.admin-user-tariff-history-row[b-j719kj2ooh] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto auto;
    align-items: center;
    gap: 1rem;
    padding: 0.95rem 1rem;
}

    .admin-user-tariff-history-row + .admin-user-tariff-history-row[b-j719kj2ooh] {
        border-top: 1px solid #edf1f4;
    }

    .admin-user-tariff-history-row > div[b-j719kj2ooh] {
        display: grid;
        gap: 0.18rem;
    }

        .admin-user-tariff-history-row > div:nth-child(2)[b-j719kj2ooh] {
            justify-items: end;
        }

    .admin-user-tariff-history-row strong[b-j719kj2ooh] {
        color: #263d50;
        font-size: 0.86rem;
        font-weight: 720;
    }

    .admin-user-tariff-history-row span[b-j719kj2ooh] {
        color: #718091;
        font-size: 0.78rem;
    }

.admin-user-tariff-status[b-j719kj2ooh] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.7rem;
    padding: 0.2rem 0.6rem;
    border-radius: 999px;
    color: #697887;
    background: #eef2f5;
    font-size: 0.72rem !important;
    font-weight: 700;
}

.admin-user-tariff-status-current[b-j719kj2ooh] {
    color: #17699d;
    background: #eaf5fc;
}

.admin-user-current-tariff-actions[b-j719kj2ooh] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.admin-user-compact-button[b-j719kj2ooh] {
    min-height: 38px !important;
    padding: 0.5rem 0.75rem !important;
    border-radius: 10px !important;
    font-size: 0.78rem !important;
}

.admin-user-tariff-proof[b-j719kj2ooh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.85rem 1rem;
    border: 1px solid #e0e8ef;
    border-radius: 14px;
    background: #ffffff;
}

    .admin-user-tariff-proof > div[b-j719kj2ooh] {
        display: grid;
        gap: 0.18rem;
        min-width: 0;
    }

    .admin-user-tariff-proof span[b-j719kj2ooh] {
        color: #718091;
        font-size: 0.74rem;
        font-weight: 700;
    }

    .admin-user-tariff-proof a[b-j719kj2ooh],
    .admin-user-tariff-proof-link[b-j719kj2ooh] {
        color: #0874ba;
        font-size: 0.8rem;
        font-weight: 700;
        text-decoration: none;
        overflow-wrap: anywhere;
    }

        .admin-user-tariff-proof a:hover[b-j719kj2ooh],
        .admin-user-tariff-proof-link:hover[b-j719kj2ooh] {
            text-decoration: underline;
        }

.admin-user-tariff-proof-link[b-j719kj2ooh] {
    margin-top: 0.15rem;
}

.admin-user-danger-text-button[b-j719kj2ooh],
.admin-user-tariff-link-button[b-j719kj2ooh],
.admin-user-tariff-delete-button[b-j719kj2ooh] {
    padding: 0;
    border: 0;
    background: transparent;
    font: inherit;
    font-size: 0.76rem;
    font-weight: 700;
    cursor: pointer;
}

.admin-user-danger-text-button[b-j719kj2ooh],
.admin-user-tariff-delete-button[b-j719kj2ooh] {
    color: #ae2a2a;
}

.admin-user-tariff-link-button[b-j719kj2ooh] {
    color: #0874ba;
}

    .admin-user-danger-text-button:hover[b-j719kj2ooh],
    .admin-user-tariff-delete-button:hover[b-j719kj2ooh],
    .admin-user-tariff-link-button:hover[b-j719kj2ooh] {
        text-decoration: underline;
    }

.admin-user-tariff-row-actions[b-j719kj2ooh] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.7rem;
    min-width: 112px;
}

.admin-user-tariff-delete-confirmation[b-j719kj2ooh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.85rem 1rem;
    border-top: 1px solid #f0d1d1;
    background: #fff7f7;
}

    .admin-user-tariff-delete-confirmation > div:first-child[b-j719kj2ooh] {
        display: grid;
        gap: 0.2rem;
    }

        .admin-user-tariff-delete-confirmation > div:first-child strong[b-j719kj2ooh] {
            color: #8c2424;
            font-size: 0.84rem;
        }

        .admin-user-tariff-delete-confirmation > div:first-child span[b-j719kj2ooh] {
            color: #7c5a5a;
            font-size: 0.78rem;
            line-height: 1.4;
        }

    .admin-user-tariff-delete-confirmation > div:last-child[b-j719kj2ooh] {
        display: flex;
        gap: 0.6rem;
        flex-shrink: 0;
    }

.admin-user-tariff-form[b-j719kj2ooh] {
    display: grid;
    gap: 1rem;
    padding: 1.1rem;
    border: 1px solid #d9eaf5;
    border-radius: 16px;
    background: #fbfdff;
}



.admin-user-tariff-permission-setting[b-j719kj2ooh] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(250px, 330px);
    align-items: center;
    gap: 2rem;
    min-height: 92px;
    padding: 1rem 1.05rem;
    border: 1px solid #dfe8f0;
    border-radius: 15px;
    background: #f8fafc;
}

.admin-user-tariff-permission-content[b-j719kj2ooh] {
    display: grid;
    gap: 0.28rem;
}

    .admin-user-tariff-permission-content strong[b-j719kj2ooh] {
        color: #263d50;
        font-size: 0.9rem;
        font-weight: 720;
    }

    .admin-user-tariff-permission-content span[b-j719kj2ooh] {
        color: #718091;
        font-size: 0.82rem;
        line-height: 1.45;
    }

.admin-user-permission-select[b-j719kj2ooh] {
    min-width: 0;
}

@media (max-width: 900px) {
    .admin-user-detail-grid[b-j719kj2ooh] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 800px) {
    .admin-user-tariff-permission-setting[b-j719kj2ooh] {
        grid-template-columns: 1fr;
        gap: 0.8rem;
    }

    .admin-users-header[b-j719kj2ooh],
    .admin-users-toolbar[b-j719kj2ooh] {
        grid-template-columns: 1fr;
    }

    .admin-users-header[b-j719kj2ooh] {
        display: grid;
    }

    .admin-users-create-button[b-j719kj2ooh] {
        width: 100%;
    }

    .admin-users-summary[b-j719kj2ooh] {
        display: grid;
        grid-template-columns: repeat( 3, 1fr );
    }
}

@media (max-width: 640px) {

    .admin-user-current-tariff[b-j719kj2ooh],
    .admin-user-tariff-history-row[b-j719kj2ooh] {
        grid-template-columns: 1fr;
    }

    .admin-user-current-tariff-actions[b-j719kj2ooh],
    .admin-user-tariff-row-actions[b-j719kj2ooh] {
        justify-content: flex-start;
    }

    .admin-user-tariff-delete-confirmation[b-j719kj2ooh],
    .admin-user-tariff-delete-confirmation > div:last-child[b-j719kj2ooh] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .admin-user-current-tariff-price[b-j719kj2ooh],
    .admin-user-current-tariff-meta[b-j719kj2ooh],
    .admin-user-tariff-history-row > div:nth-child(2)[b-j719kj2ooh] {
        justify-items: start;
        min-width: 0;
    }

    .admin-user-tariff-status[b-j719kj2ooh] {
        justify-self: start;
    }

    .admin-user-tariff-heading[b-j719kj2ooh] {
        display: grid;
    }

    .admin-users-header h1[b-j719kj2ooh] {
        font-size: 1.75rem;
    }

    .admin-users-toolbar[b-j719kj2ooh] {
        padding: 1rem;
        border-radius: 17px;
    }

    .admin-users-summary[b-j719kj2ooh] {
        grid-template-columns: 1fr;
    }

    .admin-user-card[b-j719kj2ooh] {
        grid-template-columns: auto minmax(0, 1fr);
        padding: 1rem;
    }

    .admin-user-arrow[b-j719kj2ooh] {
        display: none;
    }

    .admin-user-meta[b-j719kj2ooh] {
        display: grid;
        gap: 0.25rem;
    }

    .admin-user-detail-header[b-j719kj2ooh] {
        align-items: flex-start;
    }

    .admin-user-form-grid[b-j719kj2ooh] {
        grid-template-columns: 1fr;
    }

    .admin-user-form-field-wide[b-j719kj2ooh] {
        grid-column: auto;
    }

    .admin-user-detail-actions[b-j719kj2ooh] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .admin-user-password-heading[b-j719kj2ooh] {
        display: grid;
    }

    .admin-user-password-tools[b-j719kj2ooh] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .admin-user-password-tool-button[b-j719kj2ooh] {
        width: 100%;
    }

    .admin-user-detail-actions-split[b-j719kj2ooh] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .admin-user-detail-actions-right[b-j719kj2ooh],
    .admin-user-delete-confirmation[b-j719kj2ooh],
    .admin-user-delete-confirmation-actions[b-j719kj2ooh] {
        display: grid;
        grid-template-columns: 1fr;
    }

    .admin-user-danger-button[b-j719kj2ooh],
    .admin-user-danger-outline-button[b-j719kj2ooh] {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .admin-user-card[b-j719kj2ooh],
    .admin-user-arrow[b-j719kj2ooh] {
        transition: none;
    }
}


/* ===== v0.9.2 MOBILE RESTORE ===== */
@media (max-width: 640.98px) {
    .admin-users-page[b-j719kj2ooh],
    .admin-user-detail[b-j719kj2ooh],
    .admin-user-form-section[b-j719kj2ooh],
    .admin-user-tariff-section[b-j719kj2ooh] {
        min-width: 0;
    }

    .admin-users-toolbar[b-j719kj2ooh],
    .admin-user-detail-actions[b-j719kj2ooh],
    .admin-user-detail-actions-split[b-j719kj2ooh],
    .admin-user-current-tariff[b-j719kj2ooh],
    .admin-user-current-tariff-actions[b-j719kj2ooh] {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .admin-user-form-grid[b-j719kj2ooh],
    .admin-user-detail-grid[b-j719kj2ooh] {
        grid-template-columns: 1fr;
    }

    .admin-user-input[b-j719kj2ooh],
    .admin-users-search[b-j719kj2ooh],
    .admin-users-create-button[b-j719kj2ooh],
    .admin-user-primary-button[b-j719kj2ooh],
    .admin-user-secondary-button[b-j719kj2ooh],
    .admin-user-danger-button[b-j719kj2ooh],
    .admin-user-danger-outline-button[b-j719kj2ooh] {
        width: 100%;
        min-height: 48px;
    }

    .admin-user-card[b-j719kj2ooh] {
        min-height: 72px;
        touch-action: manipulation;
    }

    .admin-user-tariff-history-row[b-j719kj2ooh] {
        grid-template-columns: 1fr;
        gap: 0.55rem;
    }
}


@media (max-width: 640.98px) {
    .admin-users-toolbar[b-j719kj2ooh],
    .admin-user-detail[b-j719kj2ooh],
    .admin-user-form-section[b-j719kj2ooh],
    .admin-user-tariff-section[b-j719kj2ooh] {
        padding: 0.8rem !important;
        border-radius: 18px !important;
    }

    .admin-users-summary[b-j719kj2ooh],
    .admin-user-detail-grid[b-j719kj2ooh],
    .admin-user-form-grid[b-j719kj2ooh] {
        grid-template-columns: 1fr !important;
        gap: 0.6rem !important;
    }

    .admin-user-card[b-j719kj2ooh] {
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        gap: 0.65rem !important;
        padding: 0.75rem !important;
        border-radius: 16px !important;
    }

    .admin-user-detail-actions[b-j719kj2ooh],
    .admin-user-detail-actions-split[b-j719kj2ooh],
    .admin-user-current-tariff-actions[b-j719kj2ooh] {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 0.5rem !important;
    }

    .admin-user-detail-actions button[b-j719kj2ooh],
    .admin-user-detail-actions-split button[b-j719kj2ooh],
    .admin-user-current-tariff-actions button[b-j719kj2ooh] {
        width: 100% !important;
    }
}

@media (max-width:640.98px){.admin-user-detail-header[b-j719kj2ooh]{align-items:flex-start!important}.admin-user-detail-title[b-j719kj2ooh]{display:flex!important;flex-direction:column!important;min-width:0!important}.admin-user-detail-title h2[b-j719kj2ooh]{order:1;margin-top:0!important}.admin-user-detail-title p[b-j719kj2ooh]{order:2}.admin-user-detail-title .admin-user-name-row[b-j719kj2ooh]{order:3;margin-top:.5rem!important}}


/* ============================================================
   0.9.3f – Benutzer Detailkopf final
   ============================================================ */
@media (max-width: 640.98px) {
    .admin-user-detail-header[b-j719kj2ooh] {
        align-items: flex-start !important;
    }

    .admin-user-detail-title[b-j719kj2ooh] {
        display: flex !important;
        flex-direction: column !important;
        min-width: 0 !important;
    }

    .admin-user-detail-title h2[b-j719kj2ooh] {
        order: 1 !important;
        margin: 0 !important;
    }

    .admin-user-detail-title > p[b-j719kj2ooh] {
        order: 2 !important;
        margin-top: 0.22rem !important;
    }

    .admin-user-detail-title .admin-user-name-row[b-j719kj2ooh] {
        order: 3 !important;
        margin-top: 0.55rem !important;
        margin-bottom: 0 !important;
    }
}
/* /Components/Pages/Users.razor.rz.scp.css */
.profile-section[b-w5zhac1897] {
    margin-bottom: 1.35rem;
}

.section-heading[b-w5zhac1897] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.4rem;
}

    .section-heading h2[b-w5zhac1897] {
        margin: 0;
        color: #10243d;
        font-size: 1.08rem;
        font-weight: 700;
        line-height: 1.3;
    }

    .section-heading p[b-w5zhac1897] {
        margin: 0.3rem 0 0;
        color: #64778a;
        font-size: 0.88rem;
        line-height: 1.5;
    }

.profile-grid[b-w5zhac1897] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.15rem 1.25rem;
}

.profile-grid-three[b-w5zhac1897] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.profile-field-full[b-w5zhac1897] {
    grid-column: 1 / -1;
}

.form-field[b-w5zhac1897] {
    min-width: 0;
}

    .form-field label[b-w5zhac1897] {
        display: block;
        margin-bottom: 0.45rem;
        color: #30465b;
        font-size: 0.82rem;
        font-weight: 600;
        line-height: 1.3;
    }

    .form-field .form-control[b-w5zhac1897] {
        width: 100%;
        min-height: 2.85rem;
        padding: 0.7rem 0.85rem;
        border: 1px solid #ced9e2;
        border-radius: 12px;
        color: #10243d;
        background: #ffffff;
        font-family: inherit;
        font-size: 0.92rem;
        line-height: 1.4;
        box-shadow: none;
        transition: border-color 150ms ease, box-shadow 150ms ease, background 150ms ease;
    }

    .form-field textarea.form-control[b-w5zhac1897] {
        min-height: 5.8rem;
        resize: vertical;
    }

    .form-field .form-control:hover:not(:disabled)[b-w5zhac1897] {
        border-color: #adc1d0;
    }

    .form-field .form-control:focus[b-w5zhac1897] {
        border-color: #0076bd;
        outline: none;
        box-shadow: 0 0 0 3px rgba(0, 118, 189, 0.13);
    }

    .form-field .form-control:disabled[b-w5zhac1897] {
        color: #66798a;
        border-color: #dce5eb;
        background: #f4f7f9;
        cursor: not-allowed;
        opacity: 1;
    }

.profile-file-information[b-w5zhac1897] {
    margin-top: 1.15rem;
    padding: 0.85rem 1rem;
    border: 1px solid rgba(0, 118, 189, 0.12);
    border-radius: 12px;
    color: #52687a;
    background: #f3f9fc;
    font-size: 0.85rem;
    line-height: 1.45;
}

    .profile-file-information strong[b-w5zhac1897] {
        color: #10243d;
        font-weight: 600;
    }

.profile-save-area[b-w5zhac1897] {
    margin: 0.2rem 0 2.25rem;
    padding: 1.15rem 1.25rem;
    border: 1px solid rgba(0, 118, 189, 0.12);
    border-radius: 16px;
    background: rgba(232, 245, 252, 0.65);
}

.profile-actions[b-w5zhac1897] {
    display: flex;
    justify-content: flex-end;
    margin: 0;
}

    .profile-actions .btn[b-w5zhac1897] {
        min-width: 12rem;
        min-height: 2.9rem;
        padding: 0.7rem 1.25rem;
        border-radius: 12px;
        font-size: 0.9rem;
        font-weight: 700;
    }

        .profile-actions .btn:disabled[b-w5zhac1897] {
            cursor: wait;
            opacity: 0.7;
        }

.profile-activity-grid[b-w5zhac1897] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.9rem;
}

.profile-activity-item[b-w5zhac1897] {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 1rem;
    border: 1px solid #dce5eb;
    border-radius: 14px;
    background: #f8fafb;
}

    .profile-activity-item span[b-w5zhac1897] {
        margin-bottom: 0.35rem;
        color: #64778a;
        font-size: 0.75rem;
        font-weight: 500;
        line-height: 1.3;
    }

    .profile-activity-item strong[b-w5zhac1897] {
        overflow: hidden;
        color: #10243d;
        font-size: 0.88rem;
        font-weight: 700;
        line-height: 1.4;
        text-overflow: ellipsis;
    }

.tariff-section[b-w5zhac1897] {
    overflow: hidden;
}

.tariff-empty-state[b-w5zhac1897] {
    padding: 1rem 1.1rem;
    border: 1px dashed #c9d6df;
    border-radius: 14px;
    color: #64778a;
    background: #f8fafb;
    font-size: 0.88rem;
    line-height: 1.5;
}

.tariff-card[b-w5zhac1897] {
    padding: 1.15rem;
    border: 1px solid #dce5eb;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 0.45rem 1.2rem rgba(13, 46, 72, 0.05);
}

.tariff-card-current[b-w5zhac1897] {
    border-color: rgba(0, 118, 189, 0.18);
    background: linear-gradient( 135deg, rgba(0, 118, 189, 0.055), rgba(255, 255, 255, 0.98) 58% );
    box-shadow: 0 0.6rem 1.5rem rgba(13, 75, 112, 0.08);
}

.tariff-card-heading[b-w5zhac1897] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.15rem;
}

    .tariff-card-heading > div[b-w5zhac1897] {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 0.55rem;
        min-width: 0;
    }

    .tariff-card-heading h3[b-w5zhac1897] {
        margin: 0;
        color: #10243d;
        font-size: 1rem;
        font-weight: 700;
        line-height: 1.45;
        overflow-wrap: anywhere;
    }

.tariff-card-archived .tariff-card-heading[b-w5zhac1897] {
    margin-bottom: 1rem;
}

    .tariff-card-archived .tariff-card-heading > div[b-w5zhac1897] {
        gap: 0;
    }

.tariff-status[b-w5zhac1897] {
    display: inline-flex;
    align-items: center;
    min-height: 1.7rem;
    padding: 0.25rem 0.65rem;
    border-radius: 999px;
    color: #52687a;
    background: #eef3f6;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1.2;
}

.tariff-card-current .tariff-status[b-w5zhac1897] {
    color: #0068a6;
    background: #e2f2fb;
}

.tariff-details[b-w5zhac1897] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.8rem 1rem;
    margin: 0;
}

    .tariff-details div[b-w5zhac1897] {
        min-width: 0;
        padding: 0.9rem 0.95rem;
        border: 1px solid #e2e9ee;
        border-radius: 12px;
        background: rgba(248, 250, 251, 0.9);
    }

    .tariff-details .tariff-detail-full[b-w5zhac1897] {
        grid-column: 1 / -1;
    }

    .tariff-details dt[b-w5zhac1897] {
        margin: 0 0 0.3rem;
        color: #64778a;
        font-size: 0.72rem;
        font-weight: 600;
        line-height: 1.35;
    }

    .tariff-details dd[b-w5zhac1897] {
        margin: 0;
        overflow-wrap: anywhere;
        color: #10243d;
        font-size: 0.86rem;
        font-weight: 700;
        line-height: 1.45;
    }

.tariff-proof-row[b-w5zhac1897] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    min-width: 0;
}

.tariff-pdf-link[b-w5zhac1897] {
    min-width: 0;
    color: #0076bd;
    font-weight: 700;
    text-decoration: none;
    overflow-wrap: anywhere;
}

    .tariff-pdf-link:hover[b-w5zhac1897] {
        color: #005f98;
        text-decoration: underline;
    }

    .tariff-pdf-link:focus-visible[b-w5zhac1897] {
        border-radius: 4px;
        outline: 3px solid rgba(0, 118, 189, 0.18);
        outline-offset: 2px;
    }

.tariff-base-price-setting[b-w5zhac1897] {
    margin-top: 1rem;
    padding: 1rem;
    border: 1px solid rgba(0, 118, 189, 0.14);
    border-radius: 14px;
    background: rgba(243, 249, 252, 0.9);
}

.tariff-setting-heading[b-w5zhac1897] {
    margin-bottom: 0.9rem;
}

    .tariff-setting-heading > div[b-w5zhac1897] {
        display: flex;
        flex-direction: column;
        gap: 0.25rem;
    }

    .tariff-setting-heading strong[b-w5zhac1897] {
        color: #10243d;
        font-size: 0.86rem;
        font-weight: 700;
        line-height: 1.35;
    }

    .tariff-setting-heading span[b-w5zhac1897] {
        color: #64778a;
        font-size: 0.78rem;
        line-height: 1.45;
    }

.tariff-setting-grid[b-w5zhac1897] {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(11rem, 0.8fr) auto;
    align-items: end;
    gap: 0.85rem;
}

.tariff-setting-button[b-w5zhac1897] {
    min-width: 10.5rem;
    min-height: 2.85rem;
    padding: 0.65rem 1rem;
    border-radius: 11px;
    font-size: 0.84rem;
    font-weight: 700;
    white-space: nowrap;
}

    .tariff-setting-button:disabled[b-w5zhac1897] {
        cursor: wait;
        opacity: 0.7;
    }

.tariff-pdf-upload[b-w5zhac1897] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 1rem;
    padding: 0.95rem 1rem;
    border: 1px solid rgba(0, 118, 189, 0.15);
    border-radius: 14px;
    background: rgba(232, 245, 252, 0.72);
}

    .tariff-pdf-upload > div:first-child[b-w5zhac1897] {
        display: flex;
        flex-direction: column;
        min-width: 0;
    }

    .tariff-pdf-upload strong[b-w5zhac1897] {
        color: #10243d;
        font-size: 0.84rem;
        font-weight: 700;
        line-height: 1.35;
    }

    .tariff-pdf-upload span[b-w5zhac1897] {
        margin-top: 0.2rem;
        color: #64778a;
        font-size: 0.76rem;
        line-height: 1.4;
    }

.tariff-pdf-actions[b-w5zhac1897] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex: 0 0 auto;
    gap: 0.7rem;
}

.tariff-download-button[b-w5zhac1897],
.tariff-file-button[b-w5zhac1897] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-width: 9.5rem;
    min-height: 2.65rem;
    margin: 0;
    padding: 0.65rem 1rem;
    border-radius: 11px;
    font-size: 0.84rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition: background 150ms ease, border-color 150ms ease, color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

.tariff-download-button[b-w5zhac1897] {
    border: 1px solid #b9ccd9;
    color: #30465b;
    background: #ffffff;
}

    .tariff-download-button:hover[b-w5zhac1897] {
        border-color: #0076bd;
        color: #0068a6;
        background: #f6fbfe;
    }

.tariff-file-button[b-w5zhac1897] {
    position: relative;
    border: 1px solid #0076bd;
    color: #ffffff;
    background: #0076bd;
}

    .tariff-file-button:hover[b-w5zhac1897] {
        border-color: #0065a2;
        background: #0065a2;
    }

    .tariff-download-button:focus-visible[b-w5zhac1897],
    .tariff-file-button:focus-within[b-w5zhac1897] {
        outline: none;
        box-shadow: 0 0 0 3px rgba(0, 118, 189, 0.18);
    }

    .tariff-download-button:active[b-w5zhac1897],
    .tariff-file-button:active[b-w5zhac1897] {
        transform: translateY(1px);
    }

    .tariff-file-button input[b-w5zhac1897] {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        opacity: 0;
        pointer-events: none;
    }

    .tariff-file-button span[b-w5zhac1897] {
        margin: 0;
        color: inherit;
        font-size: inherit;
        font-weight: inherit;
        line-height: inherit;
    }

.tariff-new-section[b-w5zhac1897],
.tariff-archive[b-w5zhac1897] {
    margin-top: 1.7rem;
    padding-top: 1.45rem;
    border-top: 1px solid #e2e9ee;
}

.tariff-subheading[b-w5zhac1897] {
    margin-bottom: 1.15rem;
}

    .tariff-subheading h3[b-w5zhac1897] {
        margin: 0;
        color: #10243d;
        font-size: 1rem;
        font-weight: 700;
        line-height: 1.35;
    }

    .tariff-subheading p[b-w5zhac1897] {
        margin-top: 0.3rem;
    }

.tariff-checkbox-field[b-w5zhac1897] {
    display: flex;
    align-items: flex-end;
}

.tariff-checkbox[b-w5zhac1897] {
    display: flex !important;
    align-items: flex-start;
    gap: 0.7rem;
    width: 100%;
    min-height: 2.85rem;
    margin: 0 !important;
    padding: 0.72rem 0.85rem;
    border: 1px solid #ced9e2;
    border-radius: 12px;
    color: #30465b !important;
    background: #ffffff;
    cursor: pointer;
    transition: border-color 150ms ease, box-shadow 150ms ease, background 150ms ease;
}

    .tariff-checkbox:hover[b-w5zhac1897] {
        border-color: #adc1d0;
        background: #fbfdfe;
    }

    .tariff-checkbox:focus-within[b-w5zhac1897] {
        border-color: #0076bd;
        box-shadow: 0 0 0 3px rgba(0, 118, 189, 0.13);
    }

    .tariff-checkbox input[b-w5zhac1897] {
        flex: 0 0 auto;
        width: 1.05rem;
        height: 1.05rem;
        margin-top: 0.08rem;
        accent-color: #0076bd;
    }

    .tariff-checkbox span[b-w5zhac1897] {
        margin: 0;
        color: inherit;
        font-size: 0.82rem;
        font-weight: 600;
        line-height: 1.4;
    }

.tariff-actions[b-w5zhac1897] {
    display: flex;
    justify-content: flex-end;
    margin-top: 1.15rem;
}

    .tariff-actions .btn[b-w5zhac1897] {
        min-width: 12rem;
        min-height: 2.9rem;
        padding: 0.7rem 1.25rem;
        border-radius: 12px;
        font-size: 0.9rem;
        font-weight: 700;
    }

        .tariff-actions .btn:disabled[b-w5zhac1897] {
            cursor: wait;
            opacity: 0.7;
        }

.tariff-archive-list[b-w5zhac1897] {
    display: grid;
    gap: 1rem;
}

.alert[b-w5zhac1897] {
    margin-bottom: 1.25rem;
    padding: 0.95rem 1.1rem;
    border-radius: 13px;
    font-size: 0.9rem;
    line-height: 1.45;
}

.alert-success[b-w5zhac1897] {
    border: 1px solid rgba(28, 139, 91, 0.2);
    color: #176640;
    background: #edf8f2;
}

.alert-danger[b-w5zhac1897] {
    border: 1px solid rgba(185, 54, 54, 0.18);
    color: #8d2d2d;
    background: #fff2f2;
}

@media (max-width: 1100px) {
    .profile-activity-grid[b-w5zhac1897] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tariff-setting-grid[b-w5zhac1897] {
        grid-template-columns: minmax(0, 1fr) minmax(11rem, 0.75fr);
    }

    .tariff-setting-button[b-w5zhac1897] {
        grid-column: 1 / -1;
        justify-self: end;
    }
}

@media (max-width: 800px) {
    .profile-grid[b-w5zhac1897],
    .profile-grid-three[b-w5zhac1897] {
        grid-template-columns: 1fr;
    }

    .profile-field-full[b-w5zhac1897] {
        grid-column: auto;
    }

    .profile-actions[b-w5zhac1897],
    .tariff-actions[b-w5zhac1897] {
        justify-content: stretch;
    }

        .profile-actions .btn[b-w5zhac1897],
        .tariff-actions .btn[b-w5zhac1897] {
            width: 100%;
        }

    .tariff-details[b-w5zhac1897] {
        grid-template-columns: 1fr;
    }

        .tariff-details .tariff-detail-full[b-w5zhac1897] {
            grid-column: auto;
        }

    .tariff-proof-row[b-w5zhac1897] {
        align-items: stretch;
        flex-direction: column;
    }

        .tariff-proof-row .tariff-download-button[b-w5zhac1897] {
            align-self: flex-start;
        }

    .tariff-checkbox-field[b-w5zhac1897] {
        align-items: stretch;
    }

    .tariff-setting-grid[b-w5zhac1897] {
        grid-template-columns: 1fr;
    }

    .tariff-setting-button[b-w5zhac1897] {
        grid-column: auto;
        justify-self: stretch;
        width: 100%;
    }

    .tariff-pdf-upload[b-w5zhac1897] {
        align-items: stretch;
        flex-direction: column;
    }

    .tariff-pdf-actions[b-w5zhac1897] {
        justify-content: stretch;
    }

    .tariff-file-button[b-w5zhac1897] {
        width: 100%;
    }
}

@media (max-width: 560px) {
    .profile-section[b-w5zhac1897] {
        margin-bottom: 1rem;
    }

    .section-heading[b-w5zhac1897] {
        margin-bottom: 1.15rem;
    }

        .section-heading h2[b-w5zhac1897] {
            font-size: 1rem;
        }

        .section-heading p[b-w5zhac1897] {
            font-size: 0.82rem;
        }

    .profile-grid[b-w5zhac1897] {
        gap: 1rem;
    }

    .profile-save-area[b-w5zhac1897] {
        margin-bottom: 1.6rem;
        padding: 0.9rem;
        border-radius: 14px;
    }

    .profile-activity-grid[b-w5zhac1897] {
        grid-template-columns: 1fr;
    }

    .form-field .form-control[b-w5zhac1897] {
        min-height: 2.75rem;
        font-size: 0.9rem;
    }

    .tariff-card[b-w5zhac1897] {
        padding: 1rem;
    }

    .tariff-card-heading[b-w5zhac1897] {
        margin-bottom: 1rem;
    }

        .tariff-card-heading > div[b-w5zhac1897] {
            gap: 0.5rem;
        }

    .tariff-card-archived .tariff-card-heading > div[b-w5zhac1897] {
        gap: 0;
    }

    .tariff-base-price-setting[b-w5zhac1897],
    .tariff-pdf-upload[b-w5zhac1897] {
        padding: 0.85rem;
    }

    .tariff-proof-row .tariff-download-button[b-w5zhac1897] {
        width: 100%;
    }

    .tariff-new-section[b-w5zhac1897],
    .tariff-archive[b-w5zhac1897] {
        margin-top: 1.4rem;
        padding-top: 1.2rem;
    }
}


/* =====================================================================
   v0.8.8 – Profil Redesign
   Visueller Standard analog Einstellungen > Allgemein
   ===================================================================== */

.profile-page[b-w5zhac1897] {
    display: grid;
    gap: 2rem;
    max-width: 1120px;
}

.profile-page-header[b-w5zhac1897] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
}

    .profile-page-header h1[b-w5zhac1897] {
        margin: 0.55rem 0 0;
        color: #17283a;
        font-size: 2rem;
        font-weight: 750;
        line-height: 1.15;
        letter-spacing: -0.035em;
    }

    .profile-page-header p[b-w5zhac1897] {
        margin: 0.45rem 0 0;
        color: #687788;
        font-size: 1rem;
        line-height: 1.5;
    }

.profile-settings-back[b-w5zhac1897] {
    display: inline-flex;
    align-items: center;
    color: #0874ba;
    font-size: 0.88rem;
    font-weight: 700;
    text-decoration: none;
}

    .profile-settings-back:hover[b-w5zhac1897] {
        text-decoration: underline;
    }

/*
   Die bisherigen goe-panel-Container werden auf der Profilseite bewusst
   "entkleidet". Überschrift und Beschreibung wirken dadurch wie bei
   Einstellungen > Allgemein außerhalb der eigentlichen Inhaltskarte.
*/
.profile-page .goe-panel.profile-section[b-w5zhac1897] {
    display: grid;
    gap: 1rem;
    margin: 0 0 2rem;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    overflow: visible;
}

.profile-page .section-heading[b-w5zhac1897] {
    display: grid;
    gap: 0.3rem;
    margin: 0;
}

    .profile-page .section-heading > div[b-w5zhac1897] {
        display: grid;
        gap: 0.3rem;
        min-width: 0;
    }

    .profile-page .section-heading h2[b-w5zhac1897] {
        margin: 0;
        color: #17283a;
        font-size: 1.18rem;
        font-weight: 720;
        line-height: 1.25;
    }

    .profile-page .section-heading p[b-w5zhac1897] {
        margin: 0;
        color: #718091;
        font-size: 0.94rem;
        line-height: 1.45;
    }

/*
   Formularbereiche werden zu den kompakten weißen Karten des neuen
   Einstellungsdesigns.
*/
.profile-page .profile-section > .profile-grid[b-w5zhac1897] {
    gap: 1rem 1.15rem;
    padding: 1.25rem;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.06), 0 2px 8px rgba(18, 54, 82, 0.03);
}

.profile-page .form-field label[b-w5zhac1897] {
    margin-bottom: 0.4rem;
    color: #516579;
    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1.3;
}

.profile-page .form-field .form-control[b-w5zhac1897] {
    min-height: 46px;
    padding: 0.68rem 0.82rem;
    border: 1px solid #d7e2ea;
    border-radius: 11px;
    color: #17283a;
    background: #ffffff;
    font-size: 0.9rem;
    box-shadow: none;
}

.profile-page .form-field textarea.form-control[b-w5zhac1897] {
    min-height: 82px;
}

.profile-page .form-field .form-control:hover:not(:disabled)[b-w5zhac1897] {
    border-color: #b8cad7;
}

.profile-page .form-field .form-control:focus[b-w5zhac1897] {
    border-color: #0785d1;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(7, 133, 209, 0.12);
}

.profile-page .form-field .form-control:disabled[b-w5zhac1897] {
    color: #6e7c89;
    border-color: #dfe6eb;
    background: #f5f7f9;
    opacity: 1;
}

/* Speichern wie auf Allgemein: kein zusätzlicher blauer Container. */
.profile-page .profile-save-area[b-w5zhac1897] {
    margin: -1rem 0 2rem;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.profile-page .profile-actions[b-w5zhac1897] {
    justify-content: flex-end;
}

    .profile-page .profile-actions .btn[b-w5zhac1897] {
        min-width: 0;
        min-height: 44px;
        padding: 0.65rem 1rem;
        border-radius: 11px;
        font-size: 0.88rem;
        font-weight: 700;
    }

/* Stromtarif: eigener moderner Inhaltsbereich */
.profile-page .tariff-section[b-w5zhac1897] {
    gap: 1rem;
    margin-bottom: 2rem;
}

.profile-page .tariff-empty-state[b-w5zhac1897] {
    padding: 1rem 1.1rem;
    border: 1px solid #dfe8f0;
    border-radius: 16px;
    color: #718091;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.05), 0 2px 8px rgba(18, 54, 82, 0.025);
}

.profile-page .tariff-card[b-w5zhac1897] {
    padding: 1.25rem;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.06), 0 2px 8px rgba(18, 54, 82, 0.03);
}

.profile-page .tariff-card-current[b-w5zhac1897] {
    border-color: #d9eaf5;
    background: linear-gradient( 135deg, #f3f9fd 0%, #ffffff 64% );
}

.profile-page .tariff-card-heading[b-w5zhac1897] {
    margin-bottom: 1rem;
}

    .profile-page .tariff-card-heading h3[b-w5zhac1897] {
        color: #17283a;
        font-size: 1rem;
        font-weight: 750;
    }

.profile-page .tariff-status[b-w5zhac1897] {
    min-height: 1.65rem;
    padding: 0.22rem 0.6rem;
    color: #17699d;
    background: #eaf5fc;
    font-size: 0.7rem;
    font-weight: 700;
}

.profile-page .tariff-details[b-w5zhac1897] {
    gap: 0.75rem;
}

    .profile-page .tariff-details div[b-w5zhac1897] {
        padding: 0.85rem 0.9rem;
        border: 1px solid #e0e8ef;
        border-radius: 13px;
        background: #f8fafc;
    }

    .profile-page .tariff-details dt[b-w5zhac1897] {
        color: #718091;
        font-size: 0.72rem;
        font-weight: 700;
    }

    .profile-page .tariff-details dd[b-w5zhac1897] {
        color: #263d50;
        font-size: 0.86rem;
        font-weight: 720;
    }

.profile-page .tariff-base-price-setting[b-w5zhac1897],
.profile-page .tariff-pdf-upload[b-w5zhac1897] {
    border: 1px solid #d9eaf5;
    border-radius: 14px;
    background: #f3f9fd;
}

.profile-page .tariff-new-section[b-w5zhac1897],
.profile-page .tariff-archive[b-w5zhac1897] {
    margin-top: 0;
    padding: 1.25rem;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.06), 0 2px 8px rgba(18, 54, 82, 0.03);
}

.profile-page .tariff-new-section[b-w5zhac1897] {
    margin-top: 0.25rem;
}

.profile-page .tariff-archive[b-w5zhac1897] {
    margin-top: 0.25rem;
}

.profile-page .tariff-subheading[b-w5zhac1897] {
    margin-bottom: 1rem;
}

.profile-page .tariff-new-section .profile-grid[b-w5zhac1897] {
    gap: 1rem 1.15rem;
}

.profile-page .tariff-actions[b-w5zhac1897] {
    margin-top: 1rem;
}

    .profile-page .tariff-actions .btn[b-w5zhac1897],
    .profile-page .tariff-setting-button[b-w5zhac1897] {
        min-height: 44px;
        border-radius: 11px;
        font-size: 0.88rem;
        font-weight: 700;
    }

.profile-page .tariff-checkbox[b-w5zhac1897] {
    min-height: 46px;
    border: 1px solid #d7e2ea;
    border-radius: 11px;
}

.profile-page .tariff-download-button[b-w5zhac1897],
.profile-page .tariff-file-button[b-w5zhac1897] {
    min-height: 42px;
    border-radius: 11px;
    font-size: 0.82rem;
}

/* Kontoaktivität als eine moderne Karte mit vier kompakten Kennzahlen */
.profile-page .profile-section > .profile-activity-grid[b-w5zhac1897] {
    gap: 0.85rem;
    padding: 1.25rem;
    border: 1px solid #dfe8f0;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 54, 82, 0.06), 0 2px 8px rgba(18, 54, 82, 0.03);
}

.profile-page .profile-activity-item[b-w5zhac1897] {
    padding: 0.9rem;
    border: 1px solid #e0e8ef;
    border-radius: 13px;
    background: #f8fafc;
}

    .profile-page .profile-activity-item span[b-w5zhac1897] {
        color: #718091;
        font-size: 0.72rem;
        font-weight: 700;
    }

    .profile-page .profile-activity-item strong[b-w5zhac1897] {
        color: #263d50;
        font-size: 0.86rem;
        font-weight: 720;
    }

/* Meldungen ebenfalls analog Allgemein */
.profile-page .alert[b-w5zhac1897] {
    margin: 0;
    padding: 0.9rem 1rem;
    border-radius: 14px;
    font-size: 0.88rem;
    font-weight: 650;
}

.profile-page .alert-success[b-w5zhac1897] {
    border: 1px solid #cde7d7;
    color: #24633c;
    background: #eff9f3;
}

.profile-page .alert-danger[b-w5zhac1897] {
    border: 1px solid #f0cfd0;
    color: #8b3b3f;
    background: #fff3f3;
}

@media (max-width: 800px) {
    .profile-page .profile-section > .profile-grid[b-w5zhac1897],
    .profile-page .profile-section > .profile-activity-grid[b-w5zhac1897],
    .profile-page .tariff-card[b-w5zhac1897],
    .profile-page .tariff-new-section[b-w5zhac1897],
    .profile-page .tariff-archive[b-w5zhac1897] {
        padding: 1rem;
    }
}

@media (max-width: 640px) {
    .profile-page[b-w5zhac1897] {
        gap: 1.6rem;
    }

        .profile-page .goe-panel.profile-section[b-w5zhac1897] {
            margin-bottom: 1.6rem;
        }

        .profile-page .profile-save-area[b-w5zhac1897] {
            margin: -0.6rem 0 1.6rem;
        }

    .profile-page-header h1[b-w5zhac1897] {
        font-size: 1.75rem;
    }

    .profile-page .profile-section > .profile-grid[b-w5zhac1897],
    .profile-page .profile-section > .profile-activity-grid[b-w5zhac1897],
    .profile-page .tariff-card[b-w5zhac1897],
    .profile-page .tariff-new-section[b-w5zhac1897],
    .profile-page .tariff-archive[b-w5zhac1897] {
        border-radius: 16px;
    }

    .profile-page .profile-actions .btn[b-w5zhac1897],
    .profile-page .tariff-actions .btn[b-w5zhac1897] {
        width: 100%;
    }
}


.tariff-locked-note[b-w5zhac1897] {
    display: grid;
    gap: 0.3rem;
    margin-top: 1rem;
    padding: 0.95rem 1rem;
    border: 1px solid #d9e3ea;
    border-radius: 14px;
    background: #f7f9fb;
}

    .tariff-locked-note strong[b-w5zhac1897] {
        color: #30465b;
        font-size: 0.84rem;
        font-weight: 700;
    }

    .tariff-locked-note span[b-w5zhac1897] {
        color: #64778a;
        font-size: 0.8rem;
        line-height: 1.45;
    }


/* v0.9.1 – Profilüberschrift an übrige Hauptseiten angleichen */
.profile-page-header h1[b-w5zhac1897] {
    margin: 0;
    color: #17283a;
    font-size: 2rem;
    font-weight: 750;
    line-height: 1.15;
    letter-spacing: -0.035em;
}

.profile-page-header .profile-settings-back + h1[b-w5zhac1897] {
    margin-top: 0.55rem;
}


@media (max-width: 640.98px) {
    .profile-page[b-w5zhac1897] {
        display: grid !important;
        gap: 0.85rem !important;
    }

    .profile-section[b-w5zhac1897] {
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .section-heading[b-w5zhac1897] {
        margin: 0 0 0.55rem !important;
    }

    .profile-grid[b-w5zhac1897],
    .profile-grid-three[b-w5zhac1897] {
        grid-template-columns: 1fr !important;
        gap: 0.65rem !important;
        padding: 0.8rem !important;
        border-radius: 18px !important;
    }

    .form-field .form-control[b-w5zhac1897] {
        min-height: 46px !important;
        border-radius: 12px !important;
    }

    .form-field textarea.form-control[b-w5zhac1897] {
        min-height: 92px !important;
    }

    .tariff-new-section[b-w5zhac1897],
    .tariff-archive[b-w5zhac1897],
    .profile-activity-grid[b-w5zhac1897] {
        padding: 0.8rem !important;
        border-radius: 18px !important;
    }

    .profile-activity-grid[b-w5zhac1897] {
        grid-template-columns: 1fr 1fr !important;
        gap: 0.55rem !important;
    }

    .profile-actions[b-w5zhac1897] {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    .profile-actions .btn[b-w5zhac1897],
    .tariff-actions .btn[b-w5zhac1897],
    .tariff-setting-button[b-w5zhac1897] {
        width: 100% !important;
        min-width: 0 !important;
    }
}

@media (max-width:640.98px){.profile-page .profile-save-area[b-w5zhac1897]{margin:.6rem 0 1rem!important;padding:0!important;border:0!important;background:transparent!important}.profile-page .profile-actions[b-w5zhac1897]{display:grid!important;width:100%!important}.profile-page .profile-actions .btn[b-w5zhac1897]{position:static!important;width:100%!important;min-height:46px!important;margin:0!important}}


/* ============================================================
   0.9.3f – Profil speichern final
   ============================================================ */
@media (max-width: 640.98px) {
    .profile-page .profile-save-area[b-w5zhac1897] {
        position: static !important;
        display: block !important;
        box-sizing: border-box !important;
        width: 100% !important;
        margin: 0.75rem 0 1.15rem !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        transform: none !important;
    }

    .profile-page .profile-actions[b-w5zhac1897] {
        position: static !important;
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .profile-page .profile-actions .btn[b-w5zhac1897] {
        position: static !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 46px !important;
        margin: 0 !important;
        padding: 0.7rem 0.9rem !important;
        transform: none !important;
    }
}


/* 0.9.7 – Profil mobil: echte Breitenbegrenzung statt Overflow-Hiding */
@media (max-width: 640.98px) {
    .profile-page[b-w5zhac1897],
    .profile-page .goe-panel.profile-section[b-w5zhac1897],
    .profile-page .profile-section > .profile-grid[b-w5zhac1897],
    .profile-page .profile-section > .profile-activity-grid[b-w5zhac1897],
    .profile-page .tariff-card[b-w5zhac1897],
    .profile-page .tariff-new-section[b-w5zhac1897],
    .profile-page .tariff-archive[b-w5zhac1897],
    .profile-page .tariff-details[b-w5zhac1897],
    .profile-page .form-field[b-w5zhac1897] {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
    }
    .profile-page .profile-grid[b-w5zhac1897],
    .profile-page .profile-grid-three[b-w5zhac1897],
    .profile-page .tariff-setting-grid[b-w5zhac1897] {
        grid-template-columns: minmax(0, 1fr);
    }
    .profile-page :is(input,select,textarea,.form-control)[b-w5zhac1897] { min-width:0; max-width:100%; }
}
