/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-rvwkq83s2h] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-rvwkq83s2h] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-rvwkq83s2h] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-rvwkq83s2h] {
    font-size: 1.1rem;
}

.bi[b-rvwkq83s2h] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-rvwkq83s2h] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-rvwkq83s2h] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-rvwkq83s2h] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.nav-item[b-rvwkq83s2h] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-rvwkq83s2h] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-rvwkq83s2h] {
        padding-bottom: 1rem;
    }

    .nav-item[b-rvwkq83s2h]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
    }

.nav-item[b-rvwkq83s2h]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-rvwkq83s2h]  .nav-link:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-scrollable[b-rvwkq83s2h] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-rvwkq83s2h] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-rvwkq83s2h] {
        display: none;
    }

    .nav-scrollable[b-rvwkq83s2h] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Components/Layout/OctanormLayout.razor.rz.scp.css */
.octanorm-layout[b-iusl1qimp4] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    background-color: var(--color-octa-mono7);
}

.octanorm-layout[b-iusl1qimp4]  .dxbl-drawer .dxbl-drawer-panel {
    background-color:  var(--color-octa-mono7);
    padding-left: 0rem;
    padding-right: 0%;
    padding-top: 1.5rem;
}

.octanorm-layout[b-iusl1qimp4]  .dxbl-drawer-left.dxbl-drawer-open.dxbl-drawer.dxbl-drawer-shrink>.dxbl-drawer-panel {
    border-right: 0px solid var(--color-octa-mono7);
}

.octanorm-layout[b-iusl1qimp4]  .dxbl-drawer .dxbl-drawer-body {
    background-color:  var(--color-octa-white);
    border-radius: 0.5rem;
    margin-left: 1.5rem;
}

.octanorm-layout[b-iusl1qimp4]  div.dxbl-drawer-content {
    background-color:  var(--color-octa-mono7);
    padding: 1.5rem;
    padding-bottom: 0rem;
}

.octanorm-layout[b-iusl1qimp4]  .header-container {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.octanorm-layout[b-iusl1qimp4]  .header-body {
    display: flex;
    flex-direction: row;
    justify-content: center;
    background-color:  var(--color-octa-white);
}

.octanorm-layout[b-iusl1qimp4]  .footer-container {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    color: var(--color-octa-mono3);
    padding: 0.5rem 1.5rem;
}

/* Mittig verankert, unabhängig von der links stehenden DB-Info. */
.octanorm-layout[b-iusl1qimp4]  .footer-copyright {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
}

.octanorm-layout[b-iusl1qimp4]  .db-status {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.85em;
}

.octanorm-layout[b-iusl1qimp4]  .db-status .bi {
    width: auto;
    height: auto;
    font-size: 0.95em;
    margin-bottom: 0;
}

.octanorm-layout[b-iusl1qimp4]  .db-status .db-name {
    font-family: var(--bs-font-monospace, monospace);
}

.octanorm-layout[b-iusl1qimp4]  .status-dot.online  { color: var(--bs-success); }
.octanorm-layout[b-iusl1qimp4]  .status-dot.offline { color: var(--bs-danger); }

.octanorm-layout[b-iusl1qimp4]  .header-container .navbar {
    display: flex;
    flex-direction: row;
    /*max-width: 1920px;*/
    width: 100%;
    -webkit-box-shadow: none;
    box-shadow: none;
    background-color: var(--color-octa-white);
    padding: 1rem 1rem;
}

.octanorm-layout[b-iusl1qimp4]  .header-btn-container {
    align-items: center;
}

.octanorm-layout[b-iusl1qimp4]  .header-btn-text {
    color: var(--color-octa-mono4);
    font-size: 0.7rem;
    font-weight: 400;
}

.octanorm-layout[b-iusl1qimp4]  .logo-image span.logo-image {
      transition: width 0.2s ease-in-out;
      width: 220px;
      height: 50px;
      display: block;
      margin-top: 13px;
      background-repeat: no-repeat;
      background-size: contain;
      background-position: center;
 }

.octanorm-layout[b-iusl1qimp4]  .logo-image span.logo-image {
    background-image: url('../images/payment-logo.svg');
}

.octanorm-layout[b-iusl1qimp4]  .bi {
    margin-bottom: 0.25rem;
    background-size: cover;
}

@media (max-width: 575.98px) {
    .octanorm-layout[b-iusl1qimp4]  .bi {
        width: 1.5rem;
        height: 1.5rem;
    }
}

@media (min-width: 576px) {
    .octanorm-layout[b-iusl1qimp4]  .bi {
        width: 2.5rem;
        height: 2.5rem;
    }
}

@media (max-width: 767.98px) {
    .octanorm-layout[b-iusl1qimp4]  .header-container .navbar {
        padding-top: 0;
        padding-bottom: 0;
    }

    .octanorm-layout[b-iusl1qimp4]  .logo-image span.logo-image {
        height: 35px;
        width: 160px;
    }
}

.octanorm-layout[b-iusl1qimp4]  .navbar-toggler {
    background-color: transparent;
    outline: none;
    box-shadow: none;
    padding: 0.5rem;
    margin: 0.5rem .5rem .5rem 0rem;
    border-radius: 50%;
    border-width: 0px;
}

.octanorm-layout[b-iusl1qimp4]  .navbar-toggler .navbar-toggler-icon {
    color: var(--color-octa-mono3);
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 4.5C0 3.67157 0.671573 3 1.5 3H22.5C23.3284 3 24 3.67157 24 4.5C24 5.32843 23.3284 6 22.5 6H1.5C0.671573 6 0 5.32843 0 4.5Z' fill='currentColor' fill-opacity='0.54'/%3E%3Cpath d='M0 12.5C0 11.6716 0.671573 11 1.5 11H22.5C23.3284 11 24 11.6716 24 12.5C24 13.3284 23.3284 14 22.5 14H1.5C0.671573 14 0 13.3284 0 12.5Z' fill='black' fill-opacity='0.54'/%3E%3Cpath d='M24 20.5C24 19.6716 23.3284 19 22.5 19H1.5C0.671573 19 0 19.6716 0 20.5C0 21.3284 0.671573 22 1.5 22H22.5C23.3284 22 24 21.3284 24 20.5Z' fill='currentColor' fill-opacity='0.54'/%3E%3C/svg%3E%0A");
    mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 4.5C0 3.67157 0.671573 3 1.5 3H22.5C23.3284 3 24 3.67157 24 4.5C24 5.32843 23.3284 6 22.5 6H1.5C0.671573 6 0 5.32843 0 4.5Z' fill='currentColor' fill-opacity='0.54'/%3E%3Cpath d='M0 12.5C0 11.6716 0.671573 11 1.5 11H22.5C23.3284 11 24 11.6716 24 12.5C24 13.3284 23.3284 14 22.5 14H1.5C0.671573 14 0 13.3284 0 12.5Z' fill='black' fill-opacity='0.54'/%3E%3Cpath d='M24 20.5C24 19.6716 23.3284 19 22.5 19H1.5C0.671573 19 0 19.6716 0 20.5C0 21.3284 0.671573 22 1.5 22H22.5C23.3284 22 24 21.3284 24 20.5Z' fill='currentColor' fill-opacity='0.54'/%3E%3C/svg%3E%0A");
    background-color:  var(--color-octa-mono3);
    background-image: none;
    height: 1.5rem;
    width: 1.5rem;
    display: block;
    --dxbl-image-margin-y: 0;
}

.octanorm-layout[b-iusl1qimp4]  .navbar-toggler:hover .navbar-toggler-icon {
    background-color: var(--color-octa-mono4) !important;
}

.octanorm-layout[b-iusl1qimp4]  .dxbl-treeview-item-container:not(.dxbl-disabled):not(:disabled).dxbl-active {
    border-radius: 0px;
}

.octanorm-layout[b-iusl1qimp4]  .dxbl-drawer-body .dxbl-treeview .dxbl-treeview-item>.dxbl-treeview-item-content>.dxbl-treeview-item-container:not(.dxbl-disabled):not(:disabled).dxbl-active::before {
    border-radius: 0.5rem;
}

.octanorm-layout[b-iusl1qimp4]  .logo-container {
    margin-top: 16px;
    margin-left: 1rem;
}

@media (max-width: 575.98px) {
    .octanorm-layout[b-iusl1qimp4]  .logo-text {
        font-size: 1.2rem;
    }

    .octanorm-layout[b-iusl1qimp4]  div.dxbl-drawer-content {
        padding-left: 0rem;
        padding-right: 0rem;
        padding-top: 0;
    }
}

.octanorm-layout[b-iusl1qimp4]  .page-content-container {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    width: 100%;
    overflow: hidden;
    flex: 1;
}

.octanorm-layout[b-iusl1qimp4]  .page-content {
    display: flex;
    flex-direction: row;
    /*max-width: 1920px;*/
    width: 100%;
    height: 100%;
    min-height: 100%;
}

.octanorm-layout[b-iusl1qimp4]  .dxbl-drawer-body {
    height: 100%;
    max-height: 100%;
    background-color: var(--color-octa-mono7);
    overflow-y: auto;
    overflow-x: clip;
    padding: 1.5rem;
}

.octanorm-layout[b-iusl1qimp4]  .main-content-container {
    width: 100%;
    overflow: auto;
}

.octanorm-layout[b-iusl1qimp4]  .body-container {
    width: 100%;
    background-color: var(--color-octa-white);
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    overflow-x: clip;
    overscroll-behavior: none;
    padding: 1.5rem;
    height: 100%;
    border-radius: 0.5rem;
}

@media (max-width: 767.98px) {
    .octanorm-layout[b-iusl1qimp4]  .body-container {
        padding: 0 1.5rem 1.5rem;
    }
}

.octanorm-layout[b-iusl1qimp4]  #blazor-error-ui {
    background: var(--color-warning-bg);
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

.octanorm-layout[b-iusl1qimp4]  .theme-toggle-btn {
    background: transparent;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0;
    margin-right: 0.5rem;
    transition: background-color 0.2s;
}

.octanorm-layout[b-iusl1qimp4]  .theme-toggle-btn:hover {
    background-color: var(--color-octa-mono6);
}

.octanorm-layout[b-iusl1qimp4]  .theme-toggle-btn .bi {
    width: auto;
    height: auto;
    font-size: 1.25rem;
    color: var(--color-octa-mono3);
    margin-bottom: 0;
}

:global([data-theme="dark"]) .octanorm-layout[b-iusl1qimp4]  .logo-image span.logo-image {
    filter: brightness(0) invert(1);
}

.octanorm-layout[b-iusl1qimp4]  #blazor-error-ui .dismiss {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}
/* /Components/Pages/Dashboard.razor.rz.scp.css */
.dashboard-page[b-xsxikclldg] {
    padding: 0.75rem 1rem 1rem;
}
/* /Components/Pages/Database/ActivationCodes.razor.rz.scp.css */
.activation-code-grid[b-azec5rlwna]  .dxbl-grid {
    height: calc(100vh - 18rem);
}
/* /Components/Pages/Database/Apps.razor.rz.scp.css */
.app-grid[b-pei2zh7ykv]  .dxbl-grid {
    height: calc(100vh - 18rem);
}
/* /Components/Pages/Database/BusinessEvents.razor.rz.scp.css */
.business-event-grid[b-b8axntss1f]  .dxbl-grid {
    height: calc(100vh - 21rem);
}
/* /Components/Pages/Database/Countries.razor.rz.scp.css */
.country-grid[b-m4x774xgho]  .dxbl-grid {
    height: calc(100vh - 18rem);
}
/* /Components/Pages/Database/Features.razor.rz.scp.css */
.feature-grid[b-h5cfeq3u32]  .dxbl-grid {
    height: calc(100vh - 18rem);
}
/* /Components/Pages/Database/PromoCodes.razor.rz.scp.css */
.promo-code-grid[b-9vqn0a3dpj]  .dxbl-grid {
    height: calc(100vh - 18rem);
}
/* /Components/Pages/Database/SubscriptionPlans.razor.rz.scp.css */
.plan-grid[b-e3o0tsez76]  .dxbl-grid {
    height: calc(100vh - 18rem);
}
/* /Components/Pages/Database/Subscriptions.razor.rz.scp.css */
.subscription-grid[b-8f4jz5qjci]  .dxbl-grid {
    height: calc(100vh - 18rem);
}
/* /Components/Pages/Database/Users.razor.rz.scp.css */
.user-grid[b-ej1hv127oe]  .dxbl-grid {
    height: calc(100vh - 18rem);
}
/* /Components/Pages/Home.razor.rz.scp.css */
.home-container[b-2w6qxyte5g] {
    padding: 0rem;
    /*max-width: 1920px;*/
    margin: 0 auto;
}

.content-wrapper[b-2w6qxyte5g] {
    
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    align-items: flex-start;
}

.feature-cards[b-2w6qxyte5g] {
    background-color: var(--color-octa-mono6);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    padding: 1.5rem;
    border-radius: 0.5rem;
}

.stats-section[b-2w6qxyte5g] {
    background-color: var(--color-octa-mono6);
    padding: 1.5rem;
    border-radius: 0.5rem;
}

.stats-grid[b-2w6qxyte5g] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}


@media (max-width: 1200px) {
    .content-wrapper[b-2w6qxyte5g] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 992px) {
    .feature-cards[b-2w6qxyte5g] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .home-container[b-2w6qxyte5g] {
        padding: 1rem;
    }

    .hero-section[b-2w6qxyte5g] {
        padding: 2rem 1.5rem;
    }

    .hero-section h1[b-2w6qxyte5g] {
        font-size: 1.75rem;
        flex-direction: column;
        gap: 0.75rem;
    }

    .hero-section h1 i[b-2w6qxyte5g] {
        width: 2.5rem;
        height: 2.5rem;
    }

    .hero-section .lead[b-2w6qxyte5g] {
        font-size: 1rem;
    }

    .feature-cards[b-2w6qxyte5g] {
        grid-template-columns: 1fr;
    }

    .stats-section[b-2w6qxyte5g] {
        padding: 1.5rem;
    }

    .stats-section h3[b-2w6qxyte5g] {
        font-size: 1.5rem;
    }

    .stats-grid[b-2w6qxyte5g] {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
}

@media (max-width: 575.98px) {
    .hero-section h1[b-2w6qxyte5g] {
        font-size: 1.5rem;
    }
    
    .hero-section .lead[b-2w6qxyte5g] {
        font-size: 0.95rem;
        flex-direction: column;
    }
}
/* /Components/Pages/Live.razor.rz.scp.css */
.live-ticker-container[b-nz6y7unsph] {
    padding: 0;
}
/* /Components/Pages/LiveComponents/LiveStatisticsTab.razor.rz.scp.css */
.stats-tab-wrapper[b-6lg2aswj21] {
    padding: 0;
}


.stats-tab-refresh[b-6lg2aswj21] {
    margin-top: 1.5rem;
    display: flex;
    justify-content: flex-end;
}

/* Dual-value widget row (analog LiveStatusTab) */
.ticker-stats-row[b-6lg2aswj21] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

.ticker-stats-row--bottom[b-6lg2aswj21] {
    grid-template-columns: repeat(2, 1fr);
    margin-top: 1.5rem;
}

.ticker-metric-card[b-6lg2aswj21] {
    border-radius: 0.75rem;
    padding: 1rem 1.25rem;
    background-color: var(--color-octa-mono7);
}

.ticker-metric-header[b-6lg2aswj21] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin-bottom: 0.6rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--color-octa-mono5, #e9ecef);
}

.ticker-metric-header-clickable[b-6lg2aswj21] {
    cursor: pointer;
    transition: opacity 0.15s;
    user-select: none;
}

.ticker-metric-header-clickable:hover[b-6lg2aswj21] {
    opacity: 0.75;
}

.ticker-detail-chevron[b-6lg2aswj21] {
    width: 1rem;
    height: 1rem;
    color: var(--color-octa-mono4);
    margin-left: auto;
    flex-shrink: 0;
}

.ticker-metric-icon[b-6lg2aswj21] {
    width: 1.5rem;
    height: 1.5rem;
    color: var(--color-octa-lightred);
    stroke-width: 1.5;
    flex-shrink: 0;
}

.ticker-metric-title[b-6lg2aswj21] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--color-octa-mono3);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.ticker-metric-rows[b-6lg2aswj21] {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
}

.ticker-metric-row[b-6lg2aswj21] {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    gap: 0.15rem;
}

.ticker-metric-value[b-6lg2aswj21] {
    font-size: 1.5rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: var(--color-octa-mono3);
    text-align: center;
}

.ticker-metric-period[b-6lg2aswj21] {
    font-size: 0.72rem;
    color: var(--color-octa-mono4);
    text-align: center;
}

/* Detail popup */
.detail-section[b-6lg2aswj21] {
    padding: 0.5rem 1.5rem;
}

.detail-section-rest[b-6lg2aswj21] {
    border-top: 1px solid var(--color-octa-mono5, #e9ecef);
    margin-top: 0.25rem;
    padding-top: 0.75rem;
}

.detail-section-header[b-6lg2aswj21] {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--color-octa-mono4);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 0.4rem;
}

.detail-row[b-6lg2aswj21] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.3rem 0;
    border-bottom: 1px solid var(--color-octa-mono6, #f7f8f9);
}

.detail-row:last-child[b-6lg2aswj21] {
    border-bottom: none;
}

.detail-email[b-6lg2aswj21] {
    flex: 1;
    font-size: 0.9rem;
    color: var(--color-octa-mono2);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.detail-value[b-6lg2aswj21] {
    font-size: 0.9rem;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    color: var(--color-octa-mono3);
    white-space: nowrap;
    flex-shrink: 0;
}


.detail-empty[b-6lg2aswj21] {
    font-size: 0.85rem;
    color: var(--color-octa-mono4);
    padding: 0.25rem 0;
}

@media (max-width: 768px) {
    .ticker-stats-row[b-6lg2aswj21] {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
}
/* /Components/Pages/LiveComponents/LiveStatusTab.razor.rz.scp.css */
.ticker-stats-row[b-e2jrd59wzc] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

.ticker-metric-card[b-e2jrd59wzc] {
    border-radius: 0.75rem;
    padding: 1rem 1.25rem;
    background-color: var(--color-octa-mono7);
}

.ticker-metric-header[b-e2jrd59wzc] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin-bottom: 0.6rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--color-octa-mono5, #e9ecef);
}

.ticker-metric-header-clickable[b-e2jrd59wzc] {
    cursor: pointer;
    transition: opacity 0.15s;
    user-select: none;
}

.ticker-metric-header-clickable:hover[b-e2jrd59wzc] {
    opacity: 0.75;
}

.ticker-metric-icon[b-e2jrd59wzc] {
    width: 1.5rem;
    height: 1.5rem;
    color: var(--color-octa-lightred);
    stroke-width: 1.5;
    flex-shrink: 0;
}

.ticker-metric-title[b-e2jrd59wzc] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--color-octa-mono3);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.ticker-detail-chevron[b-e2jrd59wzc] {
    width: 1rem;
    height: 1rem;
    color: var(--color-octa-mono4);
    margin-left: auto;
    flex-shrink: 0;
}

.ticker-metric-rows[b-e2jrd59wzc] {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    gap: 0;
}

.ticker-metric-row[b-e2jrd59wzc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    gap: 0.15rem;
}

.ticker-metric-value[b-e2jrd59wzc] {
    font-size: 1.5rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: var(--color-octa-mono3);
    text-align: center;
}

.ticker-metric-period[b-e2jrd59wzc] {
    font-size: 0.72rem;
    color: var(--color-octa-mono4);
    text-align: center;
}

.ticker-trend-up[b-e2jrd59wzc] {
    color: #28a745;
}

.ticker-trend-down[b-e2jrd59wzc] {
    color: #dc3545;
}

/* Detail popup */
.detail-section[b-e2jrd59wzc] {
    padding: 0.5rem 1.5rem;
}

.detail-section-rest[b-e2jrd59wzc] {
    border-top: 1px solid var(--color-octa-mono5, #e9ecef);
    margin-top: 0.25rem;
    padding-top: 0.75rem;
}

.detail-section-header[b-e2jrd59wzc] {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--color-octa-mono4);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 0.4rem;
}


.detail-empty[b-e2jrd59wzc] {
    font-size: 0.85rem;
    color: var(--color-octa-mono4);
    padding: 0.25rem 0;
}

@media (max-width: 768px) {
    .ticker-stats-row[b-e2jrd59wzc] {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
}
/* /Components/Pages/LiveComponents/LiveStripeTab.razor.rz.scp.css */
/* Section headers */
.stripe-section-header[b-ohxw6g57y9] {
    font-size: 0.85rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--color-octa-mono3);
    margin-top: 1rem;
    margin-bottom: 0.5rem;
}

.stripe-section-header:first-child[b-ohxw6g57y9] {
    margin-top: 0;
}

/* List container */
.stripe-list[b-ohxw6g57y9] {
    background-color: var(--color-octa-white);
    border-radius: 0.5rem;
    padding: 0.75rem;
    margin-bottom: 0.5rem;
}

.stripe-empty[b-ohxw6g57y9] {
    text-align: center;
    color: var(--color-octa-mono4);
    padding: 1.5rem 0;
    font-size: 0.85rem;
}

/* Card item */
.stripe-item[b-ohxw6g57y9] {
    display: grid;
    grid-template-columns: 40px 1fr auto;
    grid-template-rows: auto auto;
    align-items: center;
    column-gap: 0.75rem;
    row-gap: 0.15rem;
    background: var(--color-octa-mono7);
    border-radius: 0.5rem;
    margin-bottom: 0.5rem;
    padding: 0.6rem 0.75rem;
    border-left: 8px solid transparent;
}

.stripe-item:last-child[b-ohxw6g57y9] {
    margin-bottom: 0;
}

.stripe-item-clickable[b-ohxw6g57y9] {
    cursor: pointer;
    transition: filter 0.15s;
}

.stripe-item-clickable:hover[b-ohxw6g57y9] {
    filter: brightness(0.93);
}

/* Border colors */
.stripe-border-invoice[b-ohxw6g57y9] {
    border-left-color: #ff4907;
}

.stripe-border-subscription[b-ohxw6g57y9] {
    border-left-color: #198754;
}

/* Icon column */
.stripe-item-icon[b-ohxw6g57y9] {
    grid-column: 1;
    grid-row: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.stripe-item-icon-svg[b-ohxw6g57y9] {
    width: 22px;
    height: 22px;
    color: var(--color-octa-mono3);
}

.stripe-interval-icon[b-ohxw6g57y9] {
    font-size: 1.3rem;
    font-weight: 800;
    color: var(--color-octa-mono3);
    line-height: 1;
}

.stripe-plan-badge[b-ohxw6g57y9] {
    display: inline-block;
    font-size: 0.68rem;
    font-weight: 600;
    padding: 0.1em 0.45em;
    border-radius: 0.2rem;
    background-color: var(--color-octa-mono6, #e9ecef);
    color: var(--color-octa-mono2);
    white-space: nowrap;
    flex-shrink: 0;
}

/* Middle column */
.stripe-item-middle-top[b-ohxw6g57y9] {
    grid-column: 2;
    grid-row: 1;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
}

.stripe-item-title[b-ohxw6g57y9] {
    font-weight: 600;
    font-size: 0.95rem;
    color: var(--color-octa-mono2);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.stripe-item-subtitle[b-ohxw6g57y9] {
    font-weight: 400;
    font-size: 0.85rem;
    color: var(--color-octa-mono4);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.stripe-item-date[b-ohxw6g57y9] {
    font-weight: 400;
    font-size: 0.85rem;
    color: var(--color-octa-mono4);
    white-space: nowrap;
    flex-shrink: 0;
}

.stripe-item-middle-bottom[b-ohxw6g57y9] {
    grid-column: 2;
    grid-row: 2;
    font-size: 0.8rem;
    color: var(--color-octa-mono4);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.stripe-cancel-hint[b-ohxw6g57y9] {
    color: var(--color-octa-lightred, #e03030);
    font-weight: 500;
}

/* Right column - values */
.stripe-item-value-primary[b-ohxw6g57y9] {
    grid-column: 3;
    grid-row: 1;
    font-variant-numeric: tabular-nums;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--color-octa-mono2);
    text-align: right;
    white-space: nowrap;
}

.stripe-item-value-secondary[b-ohxw6g57y9] {
    grid-column: 3;
    grid-row: 2;
    font-variant-numeric: tabular-nums;
    font-size: 0.75rem;
    color: var(--color-octa-mono4);
    text-align: right;
    white-space: nowrap;
}

/* Status badges */
.stripe-badge[b-ohxw6g57y9] {
    display: inline-block;
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.15em 0.5em;
    border-radius: 0.25rem;
    white-space: nowrap;
    flex-shrink: 0;
    text-transform: lowercase;
}

.stripe-badge-success[b-ohxw6g57y9] {
    background-color: #198754;
    color: #fff;
}

.stripe-badge-warning[b-ohxw6g57y9] {
    background-color: #ffc107;
    color: #212529;
}

.stripe-badge-danger[b-ohxw6g57y9] {
    background-color: #dc3545;
    color: #fff;
}

.stripe-badge-info[b-ohxw6g57y9] {
    background-color: #0dcaf0;
    color: #212529;
}

.stripe-badge-secondary[b-ohxw6g57y9] {
    background-color: #6c757d;
    color: #fff;
}

/* Responsive */
@media (max-width: 768px) {
    .stripe-list[b-ohxw6g57y9] {
        padding: 0.5rem;
    }

    .stripe-item[b-ohxw6g57y9] {
        grid-template-columns: 32px 1fr auto;
        column-gap: 0.4rem;
        padding: 0.5rem 0.6rem;
    }

    .stripe-item-icon-svg[b-ohxw6g57y9] {
        width: 18px;
        height: 18px;
    }

    .stripe-item-title[b-ohxw6g57y9] {
        font-size: 0.85rem;
    }

    .stripe-item-value-primary[b-ohxw6g57y9] {
        font-size: 0.82rem;
    }

    .stripe-item-value-secondary[b-ohxw6g57y9] {
        font-size: 0.7rem;
    }

    .stripe-item-middle-bottom[b-ohxw6g57y9] {
        font-size: 0.75rem;
    }
}
/* /Components/Pages/LiveComponents/LiveTickerTab.razor.rz.scp.css */
/* Smart-Filter bar */
.ticker-filter-bar[b-cfpmtbo9yv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.ticker-search-input[b-cfpmtbo9yv] {
    flex: 1;
    min-width: 0;
    max-width: 280px;
    height: 28px;
    padding: 0 0.6rem;
    font-size: 0.82rem;
    border: 1px solid var(--color-octa-mono5, #ccc);
    border-radius: 14px;
    background-color: var(--color-octa-white);
    color: var(--color-octa-mono1);
    outline: none;
    transition: border-color 0.15s;
}

.ticker-search-input:focus[b-cfpmtbo9yv] {
    border-color: var(--color-octa-primary, #0078d4);
}

/* Category filter buttons */
.ticker-category-filters[b-cfpmtbo9yv] {
    display: flex;
    gap: 0.3rem;
    align-items: center;
    flex-shrink: 0;
}

.ticker-category-btn[b-cfpmtbo9yv] {
    width: 26px;
    height: 26px;
    border: 2px solid transparent;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
    padding: 0;
    outline: none;
    flex-shrink: 0;
}

.ticker-category-btn:hover[b-cfpmtbo9yv] {
    filter: brightness(1.12);
    transform: scale(1.08);
}

.ticker-category-btn.active[b-cfpmtbo9yv] {
    border-color: var(--color-octa-mono1, #1a1a1a);
    box-shadow: 0 0 0 2px var(--color-octa-white), 0 0 0 4px var(--color-octa-mono1, #1a1a1a);
}

.ticker-category-btn:active[b-cfpmtbo9yv] {
    transform: scale(0.95);
}

.ticker-filter-smart[b-cfpmtbo9yv] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin-left: auto;
    flex-shrink: 0;
}

.ticker-filter-label[b-cfpmtbo9yv] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--color-octa-mono3);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

@media (max-width: 480px) {
    .ticker-filter-label[b-cfpmtbo9yv] {
        display: none;
    }

    .ticker-filter-bar[b-cfpmtbo9yv] {
        gap: 0.4rem;
    }
}

.ticker-filter-hint[b-cfpmtbo9yv] {
    font-size: 0.75rem;
    color: var(--color-octa-mono4);
}

/* Toggle switch */
.ticker-filter-switch[b-cfpmtbo9yv] {
    position: relative;
    display: inline-block;
    width: 36px;
    height: 20px;
    flex-shrink: 0;
    margin: 0;
}

.ticker-filter-switch input[b-cfpmtbo9yv] {
    opacity: 0;
    width: 0;
    height: 0;
    position: absolute;
}

.ticker-filter-slider[b-cfpmtbo9yv] {
    position: absolute;
    inset: 0;
    background-color: var(--color-octa-mono5, #ccc);
    border-radius: 20px;
    cursor: pointer;
    transition: background-color 0.2s;
}

.ticker-filter-slider[b-cfpmtbo9yv]::before {
    content: "";
    position: absolute;
    width: 14px;
    height: 14px;
    left: 3px;
    top: 3px;
    background-color: var(--color-octa-white);
    border-radius: 50%;
    transition: transform 0.2s;
}

.ticker-filter-switch input:checked + .ticker-filter-slider[b-cfpmtbo9yv] {
    background-color: var(--color-octa-lightred, #e03030);
}

.ticker-filter-switch input:checked + .ticker-filter-slider[b-cfpmtbo9yv]::before {
    transform: translateX(16px);
}

.ticker-event-list[b-cfpmtbo9yv] {
    background-color: var(--color-octa-white);
    border-radius: 0.5rem;
    padding: 1rem;
    max-height: calc(100vh - 35rem);
    overflow-y: auto;
    overflow-x: hidden;
}

.ticker-empty[b-cfpmtbo9yv] {
    text-align: center;
    color: var(--color-octa-mono2);
    padding: 2rem 0;
}

.ticker-event-item[b-cfpmtbo9yv] {
    display: grid;
    grid-template-columns: 40px 33px 1fr auto;
    grid-template-rows: auto auto;
    align-items: center;
    column-gap: 0.75rem;
    row-gap: 0.2rem;
    background: var(--color-octa-mono7);
    border-radius: 0.5rem;
    margin-bottom: 0.5rem;
    padding: 0.6rem 0.75rem;
    border-left: 8px solid transparent;
}

/* Icon column */
.ticker-event-icon[b-cfpmtbo9yv] {
    grid-column: 1;
    grid-row: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ticker-event-icon-svg[b-cfpmtbo9yv] {
    width: 24px;
    height: 24px;
    color: var(--color-octa-mono3);
}

.ticker-event-item:last-child[b-cfpmtbo9yv] {
    margin-bottom: 0;
}

.ticker-event-clickable[b-cfpmtbo9yv] {
    cursor: pointer;
    transition: filter 0.15s;
}

.ticker-event-clickable:hover[b-cfpmtbo9yv] {
    filter: brightness(0.93);
}

.ticker-border-user[b-cfpmtbo9yv] {
    border-left-color: #ffc107;
}

.ticker-border-subscription[b-cfpmtbo9yv] {
    border-left-color: #198754;
}

.ticker-border-credits[b-cfpmtbo9yv] {
    border-left-color: #0d5cf0;
}

.ticker-border-payment[b-cfpmtbo9yv] {
    border-left-color: #ff4907;
}

.ticker-border-default[b-cfpmtbo9yv] {
    border-left-color: #6c757d;
}

/* Left column */
.ticker-event-time-relative[b-cfpmtbo9yv] {
    grid-column: 2;
    grid-row: 1;
    font-variant-numeric: tabular-nums;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--color-octa-mono3);
    text-align: right;
    white-space: nowrap;
}

.ticker-event-time-absolute[b-cfpmtbo9yv] {
    grid-column: 2;
    grid-row: 2;
    font-variant-numeric: tabular-nums;
    font-size: 0.75rem;
    color: var(--color-octa-mono4);
    text-align: right;
    white-space: nowrap;
}

/* Middle column */
.ticker-event-middle-top[b-cfpmtbo9yv] {
    grid-column: 3;
    grid-row: 1;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
}

.ticker-event-badge[b-cfpmtbo9yv] {
    font-size: 0.72rem;
    padding: 0.25em 0.55em;
    white-space: nowrap;
    flex-shrink: 0;
}

.ticker-event-description[b-cfpmtbo9yv] {
    grid-column: 3;
    grid-row: 2;
    font-size: 0.8rem;
    color: var(--color-octa-mono4);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.ticker-event-email[b-cfpmtbo9yv] {
    font-weight: 600;
    font-size: 1rem;
    color: var(--color-octa-mono3);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.ticker-event-user-info[b-cfpmtbo9yv] {
    font-weight: 400;
    font-size: 0.85rem;
    color: var(--color-octa-mono4);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

/* Right column */
.ticker-event-value-primary[b-cfpmtbo9yv] {
    grid-column: 4;
    grid-row: 1;
    font-variant-numeric: tabular-nums;
    font-size: 1rem;
    font-weight: 600;
    color: var(--color-octa-mono3);
    text-align: right;
    white-space: nowrap;
}

.ticker-event-value-secondary[b-cfpmtbo9yv] {
    grid-column: 4;
    grid-row: 2;
    font-variant-numeric: tabular-nums;
    font-size: 0.75rem;
    color: var(--color-octa-mono4);
    text-align: right;
    white-space: nowrap;
}

@media (max-width: 768px) {
    .ticker-event-list[b-cfpmtbo9yv] {
        max-height: calc(100vh - 12.5rem);
        padding: 0rem;
    }

    .ticker-event-item[b-cfpmtbo9yv] {
        grid-template-columns: 32px 47px 1fr auto;
        column-gap: 0.4rem;
        row-gap: 0.15rem;
        padding: 0.5rem 0.6rem;
    }

    .ticker-event-icon-svg[b-cfpmtbo9yv] {
        width: 20px;
        height: 20px;
    }

    .ticker-event-time-relative[b-cfpmtbo9yv],
    .ticker-event-value-primary[b-cfpmtbo9yv] {
        font-size: 0.78rem;
    }

    .ticker-event-time-absolute[b-cfpmtbo9yv],
    .ticker-event-value-secondary[b-cfpmtbo9yv] {
        font-size: 0.7rem;
    }

    .ticker-event-description[b-cfpmtbo9yv] {
        font-size: 0.82rem;
    }
}
/* /Components/Shared/CreditTransactionsGrid.razor.rz.scp.css */
.credit-transactions-grid[b-trvgr6cjkz]  .dxbl-grid {
    height: calc(100vh - 18rem);
}
/* /Components/Shared/Dashboard/DashboardFilterBar.razor.rz.scp.css */
/* Filter-Leiste als dezent abgesetzte Bedienfläche: helle Füllung + hauchdünner Rand,
   damit sie sich von den weißen Kachel-Cards darunter abhebt. */
.dashboard-toolbar-wrap[b-oy7a5khynr] {
    margin-bottom: 0.75rem;
    padding: 0.5rem 0.75rem;
    background: #f8f9fa;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
}

/* Eigene Toolbar-Chrome (Rand/Hintergrund/Schatten des DxToolbar) neutralisieren,
   damit die Wrapper-Fläche durchscheint und keine doppelte Umrandung entsteht. */
.dashboard-toolbar-wrap[b-oy7a5khynr]  .dxbl-toolbar {
    background: transparent;
    border: none;
    box-shadow: none;
}

/* Toolbar-Items vertikal mittig ausrichten, damit Comboboxen, Datumsfelder und
   der Vergleich-Switch auf einer Linie sitzen. */
.dashboard-toolbar-wrap[b-oy7a5khynr]  .dxbl-toolbar-item {
    display: flex;
    align-items: center;
}

.dashboard-toolbar-wrap[b-oy7a5khynr]  .cf-combo {
    min-width: 190px;
}

.cf-switch-label[b-oy7a5khynr] {
    font-size: 0.9rem;
    color: #374151;
    margin-left: 0.35rem;
    white-space: nowrap;
}
/* /Components/Shared/Dashboard/DashboardMetricTile.razor.rz.scp.css */
.metric-tile[b-srs7omq8l2] {
    height: 100%;
    display: flex;
    flex-direction: column;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 1rem 1.1rem 0.75rem;
    background: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
    min-height: 260px;
}

.metric-tile-head[b-srs7omq8l2] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.35rem;
}

.metric-tile-head-left[b-srs7omq8l2] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.metric-tile-headline[b-srs7omq8l2] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.metric-tile-head-right[b-srs7omq8l2] {
    text-align: right;
    flex-shrink: 0;
}

.metric-tile-title[b-srs7omq8l2] {
    font-size: 1.15rem;
    font-weight: 700;
    color: #111827;
    line-height: 1.2;
}

.metric-tile-info[b-srs7omq8l2] {
    font-size: 0.85rem;
    color: #9ca3af;
    cursor: help;
}

.metric-tile-value[b-srs7omq8l2] {
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.1;
    color: #111827;
    font-variant-numeric: tabular-nums;
}

.metric-tile-value-row[b-srs7omq8l2] {
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.metric-tile-change[b-srs7omq8l2] {
    font-weight: 700;
    padding: 0.05rem 0.35rem;
    border-radius: 5px;
    font-size: 0.8rem;
    font-variant-numeric: tabular-nums;
}

.metric-tile-change.positive[b-srs7omq8l2] {
    color: #0f7b3f;
    background: #e6f5ec;
}

.metric-tile-change.negative[b-srs7omq8l2] {
    color: #b42318;
    background: #fdeceb;
}

.metric-tile-prev[b-srs7omq8l2] {
    margin-top: 0.25rem;
    font-size: 0.8rem;
    color: #6b7280;
    font-variant-numeric: tabular-nums;
}

.metric-tile-chart[b-srs7omq8l2] {
    flex: 1 1 auto;
    margin-top: 0.5rem;
    min-height: 185px;
}

/* Gestapelte Balken: Plotfläche + gedrehtes Achsenband + Legende teilen sich die Chart-Höhe.
   Bei 225px blieben davon nur ~70px Plotfläche übrig — die Höhe ist daher großzügig bemessen. */
.metric-tile-chart-stacked[b-srs7omq8l2] {
    min-height: 300px;
}

/* Die 2px-Trennung zwischen gestapelten Segmenten ist ein Spalt in der Kachelfarbe, kein Rahmen:
   ein weißer Stroke auf den Balken-Rects trennt benachbarte Stufen der Farbrampe, ohne zusätzliche
   Ink hinzuzufügen. DevExpress zeichnet die Segmente als <rect> in g.dxc-series. */
.metric-tile-chart-stacked[b-srs7omq8l2]  g.dxc-series rect {
    stroke: #fff;
    stroke-width: 2px;
}

/* Grau wie die Vergleichsserie (DashboardColors.PreviousGrey) — Detail-Link ist Kontext, nicht Aussage. */
.metric-tile-details[b-srs7omq8l2] {
    align-self: flex-start;
    margin-top: 0.15rem;
    font-size: 0.8rem;
    font-weight: 600;
    color: #8c8c8c;
    cursor: pointer;
    text-decoration: none;
}

.metric-tile-details:hover[b-srs7omq8l2] {
    text-decoration: underline;
}

.metric-tile-loading[b-srs7omq8l2],
.metric-tile-error[b-srs7omq8l2],
.metric-tile-placeholder[b-srs7omq8l2] {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    color: #6b7280;
    font-size: 0.85rem;
}

.metric-tile-placeholder-badge[b-srs7omq8l2] {
    padding: 0.25rem 0.75rem;
    border-radius: 999px;
    background: #f3f4f6;
    color: #9ca3af;
    font-weight: 600;
    font-size: 0.8rem;
}
/* /Components/Shared/Dashboard/DateRangeField.razor.rz.scp.css */
/* Akzentfarbe = Fluent-OCTANORM-Accent. Farben bewusst theme-agnostisch (halbtransparente
   Grautöne + Akzent), damit der Popover in Hell und Dunkel gleichermaßen lesbar bleibt und
   Text/Hintergrund vom DevExpress-Theme geerbt werden. */

/* ---- Geschlossenes Feld ---- */
/* ::deep, weil die Klasse per CssClass am Wurzelelement von DxDropDownBox landet —
   dort setzt die CSS-Isolation kein Scope-Attribut. */
.drf-wrap[b-if93n2zvex]  .drf-box {
    min-width: 320px;
}

.drf-display[b-if93n2zvex] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    white-space: nowrap;
    overflow: hidden;
}

.drf-icon[b-if93n2zvex] {
    flex: 0 0 auto;
    opacity: 0.7;
}

.drf-main[b-if93n2zvex] {
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
}

.drf-sub[b-if93n2zvex] {
    opacity: 0.55;
    font-size: 0.85em;
}

/* ---- Popover-Panel ---- */
/* Keine feste Breite: die zwei Kalender bringen ihre eigene Intrinsic-Breite mit (inkl.
   Wochennummern-Spalte). Ein fester Wert schneidet den rechten Kalender ab, sobald das
   Theme die Zellen anders bemisst. max-content + DropDownWidthMode.ContentWidth lassen
   den Popover exakt so breit werden wie sein Inhalt. */
.drf-panel[b-if93n2zvex] {
    display: flex;
    align-items: stretch;
    width: max-content;
    max-width: 92vw;
}

/* Linke Preset-Liste */
.drf-presets[b-if93n2zvex] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 0.5rem;
    flex: 0 0 auto;
    min-width: 190px;
    border-right: 1px solid rgba(128, 128, 128, 0.25);
}

.drf-preset[b-if93n2zvex] {
    text-align: left;
    background: transparent;
    border: none;
    border-radius: 6px;
    padding: 0.4rem 0.6rem;
    font-size: 0.9rem;
    color: inherit;
    cursor: pointer;
    white-space: nowrap;
}

.drf-preset:hover[b-if93n2zvex] {
    background: rgba(128, 128, 128, 0.15);
}

.drf-preset.active[b-if93n2zvex] {
    background: rgb(213, 17, 42);
    color: #fff;
    font-weight: 600;
}

/* Rechte Seite: Kalender + Fußzeile.
   Kein min-width: 0 — die Spalte darf nicht unter ihre Inhaltsbreite schrumpfen,
   sonst wird der rechte Kalender wieder abgeschnitten. */
.drf-right[b-if93n2zvex] {
    display: flex;
    flex-direction: column;
    flex: 0 0 auto;
}

.drf-calendars[b-if93n2zvex] {
    display: flex;
    gap: 0.5rem;
    padding: 0.5rem;
}

/* Eigene Chrome der beiden DxCalendar neutralisieren, damit sie als eine Fläche
   im Popover sitzen und nicht als zwei umrandete Kästen. */
.drf-calendars[b-if93n2zvex]  .drf-cal {
    background: transparent;
    border: none;
    box-shadow: none;
}

/* „Today" / „Clear" des DxCalendar ausblenden: beide schreiben nur DxCalendars eigenes
   SelectedDate, während der Bereichs-Entwurf am @onclick im DayCellTemplate hängt — sie
   wären also sichtbare Buttons ohne Wirkung. Zurückgesetzt wird über „Abbrechen". */
.drf-calendars[b-if93n2zvex]  .dxbl-calendar-footer {
    display: none;
}

/* Range-Hervorhebung der Tageszellen */
.drf-day[b-if93n2zvex] {
    display: block;
    text-align: center;
    line-height: 1.9;
    border-radius: 50%;
    cursor: pointer;
}

.drf-day.sel-in[b-if93n2zvex] {
    background: rgba(213, 17, 42, 0.14);
    border-radius: 0;
}

.drf-day.sel-start[b-if93n2zvex],
.drf-day.sel-end[b-if93n2zvex] {
    background: rgb(213, 17, 42);
    color: #fff;
}

.drf-day.sel-start[b-if93n2zvex] {
    border-radius: 50% 0 0 50%;
}

.drf-day.sel-end[b-if93n2zvex] {
    border-radius: 0 50% 50% 0;
}

.drf-day.sel-start.sel-end[b-if93n2zvex] {
    border-radius: 50%;
}

/* Fußzeile */
.drf-footer[b-if93n2zvex] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-top: auto;
    padding: 0.6rem 0.75rem;
    border-top: 1px solid rgba(128, 128, 128, 0.25);
}

.drf-readout[b-if93n2zvex] {
    font-size: 0.85rem;
    opacity: 0.85;
    white-space: nowrap;
}

.drf-actions[b-if93n2zvex] {
    display: flex;
    gap: 0.5rem;
}

.drf-btn[b-if93n2zvex] {
    border-radius: 6px;
    padding: 0.35rem 0.9rem;
    font-size: 0.9rem;
    cursor: pointer;
}

.drf-cancel[b-if93n2zvex] {
    background: transparent;
    border: 1px solid rgba(128, 128, 128, 0.4);
    color: inherit;
}

.drf-cancel:hover[b-if93n2zvex] {
    background: rgba(128, 128, 128, 0.15);
}

.drf-apply[b-if93n2zvex] {
    background: rgb(213, 17, 42);
    border: 1px solid rgb(213, 17, 42);
    color: #fff;
}

.drf-apply:disabled[b-if93n2zvex] {
    opacity: 0.5;
    cursor: default;
}
/* /Components/Shared/Dashboard/FiscalYearForecastChart.razor.rz.scp.css */
/* Chrome-los: die umgebende .gj-tile liefert Rahmen, Padding und Zentrierung. */
.fcast-mini[b-3jbolsk6r7] {
    width: 100%;
}

.fcast-mini-label[b-3jbolsk6r7] {
    font-size: 0.85rem;
    font-weight: 600;
    color: #6b7280;
    margin-bottom: 0.2rem;
}

.fcast-mini-value[b-3jbolsk6r7] {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.1;
    font-variant-numeric: tabular-nums;
}

.fcast-pos[b-3jbolsk6r7] { color: #0f7b3f; }
.fcast-neg[b-3jbolsk6r7] { color: #b42318; }

.fcast-mini-chart[b-3jbolsk6r7] {
    width: 100%;
    margin-top: 0.35rem;
}

/* Kleine Achsenbeschriftung im Mini-Chart (nur SVG-<text> der X-Achse; Tooltip ist HTML). */
.fcast-mini-chart[b-3jbolsk6r7]  text {
    font-size: 10px;
}

.fcast-mini-figures[b-3jbolsk6r7] {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    gap: 0.15rem 0.9rem;
    margin-top: 0.3rem;
    font-size: 0.75rem;
    font-variant-numeric: tabular-nums;
}

.fcast-income[b-3jbolsk6r7]  { color: #0284C7; }
.fcast-expense[b-3jbolsk6r7] { color: #D93A2B; }

.fcast-tooltip[b-3jbolsk6r7] {
    text-align: center;
    padding: 0.15rem 0.25rem;
}

.fcast-tooltip-series[b-3jbolsk6r7] {
    font-size: 0.78rem;
    color: #6b7280;
}

.fcast-tooltip-value[b-3jbolsk6r7] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #111827;
}
/* /Components/Shared/Dashboard/GjOverviewBand.razor.rz.scp.css */
.gj-band[b-xly44lluwx] {
    margin-bottom: 1.5rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px dashed #e5e7eb;
}

.gj-tile[b-xly44lluwx] {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 0.9rem 1.05rem;
    background: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
}

.gj-tile-label[b-xly44lluwx] {
    font-size: 0.85rem;
    font-weight: 600;
    color: #6b7280;
    margin-bottom: 0.35rem;
}

.gj-tile-value[b-xly44lluwx] {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.1;
    color: #111827;
    font-variant-numeric: tabular-nums;
}

.gj-tile-sub[b-xly44lluwx] {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    color: #9ca3af;
}

.gj-pos[b-xly44lluwx] {
    color: #0f7b3f;
}

.gj-neg[b-xly44lluwx] {
    color: #b42318;
}

/* Auf kleineren Auflösungen (<= md, d.h. unter dem lg-Breakpoint) sind die Kacheln schmal —
   die erklärenden Untertitel entfallen dort, Label + Wert bleiben. */
@media (max-width: 991.98px) {
    .gj-tile-sub[b-xly44lluwx] {
        display: none;
    }
}
/* /Components/Shared/Dashboard/KpiSparklineTile.razor.rz.scp.css */
/* Chrome-los: die umgebende .gj-tile liefert Rahmen, Padding und Zentrierung. */
.kpi-tile[b-8fdcz45g08] {
    width: 100%;
}

.kpi-label[b-8fdcz45g08] {
    font-size: 0.85rem;
    font-weight: 600;
    color: #6b7280;
    margin-bottom: 0.2rem;
}

.kpi-value[b-8fdcz45g08] {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.1;
    color: #111827;
    font-variant-numeric: tabular-nums;
}

.kpi-sub[b-8fdcz45g08] {
    margin-top: 0.2rem;
    font-size: 0.75rem;
    color: #9ca3af;
}

.kpi-spark[b-8fdcz45g08] {
    width: 100%;
    margin-top: 0.45rem;
}

/* Kleine Achsenbeschriftung (nur SVG-<text> des Charts; Tooltip ist HTML). */
.kpi-spark[b-8fdcz45g08]  text {
    font-size: 10px;
}

.kpi-spark-tooltip[b-8fdcz45g08] {
    text-align: center;
    padding: 0.1rem 0.25rem;
}

.kpi-spark-tt-label[b-8fdcz45g08] {
    display: block;
    font-size: 0.75rem;
    color: #6b7280;
}

.kpi-spark-tt-value[b-8fdcz45g08] {
    font-size: 0.9rem;
    font-weight: 700;
    color: #111827;
}

/* Wie im GJ-Band: auf schmalen Auflösungen (≤ md) den erklärenden Untertitel weglassen. */
@media (max-width: 991.98px) {
    .kpi-sub[b-8fdcz45g08] {
        display: none;
    }
}
/* /Components/Shared/Dashboard/MetricDetailList.razor.rz.scp.css */
.metric-detail-list[b-0jnjjogw05] {
    padding: 1.25rem 1.5rem 1.5rem;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.metric-detail-toolbar[b-0jnjjogw05] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1rem;
    margin-bottom: 0.85rem;
}

.metric-detail-export[b-0jnjjogw05] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
}

/* Rahmen ums Grid + abgerundete Ecken, damit das Grid nicht randlos im Popup klebt. */
.metric-detail-grid-wrap[b-0jnjjogw05] {
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    overflow: hidden;
}

/* Definite Höhe direkt auf dem Grid-Root — Voraussetzung dafür, dass DevExpress-
   Virtual-Scrolling greift (statt intern auf volle Content-Höhe umzuschalten). */
.metric-detail-grid-wrap[b-0jnjjogw05]  .dxbl-grid {
    height: 62vh;
    border: none;
    border-radius: 10px;
}
/* /Components/Shared/Dashboard/RevenueExpenseMonthlyChart.razor.rz.scp.css */
/* Eigene Kachel-Chrome — .metric-tile ist auf DashboardMetricTile scoped und greift hier nicht. */
.revx-tile[b-iddl3d2rah] {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 1rem 1.1rem 0.75rem;
    background: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
}

.revx-top[b-iddl3d2rah] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.6rem;
}

/* Kennzahlen als drei Zeilen untereinander (Label vor Wert). Farbe = Serienfarbe → ersetzt die Legende. */
.revx-figures[b-iddl3d2rah] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.revx-figure[b-iddl3d2rah] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
}

/* Label im Font der (entfallenen) Überschrift: fett, ~0.95rem. */
.revx-figure-label[b-iddl3d2rah] {
    font-size: 0.95rem;
    font-weight: 700;
    min-width: 5.5rem;
}

.revx-figure-value[b-iddl3d2rah] {
    min-width: 5.5rem;
    text-align: right;
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.2;
    font-variant-numeric: tabular-nums;
}

/* Serienfarben (identisch zu den Chart-Serien). Einnahmen-Blau spiegelt DashboardColors.IncomeBlue,
   Ergebnis-Grün DashboardColors.CurrentGreen. */
.revx-income[b-iddl3d2rah]  { color: #0284C7; }
.revx-expense[b-iddl3d2rah] { color: #D93A2B; }
.revx-result[b-iddl3d2rah]  { color: #A2C61A; }

.revx-controls[b-iddl3d2rah] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex: 0 0 auto;
}

.revx-info[b-iddl3d2rah] {
    font-size: 0.85rem;
    color: #9ca3af;
    cursor: help;
}

.revx-smart[b-iddl3d2rah] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin: 0;
    white-space: nowrap;
}

.revx-smart .form-check-input[b-iddl3d2rah] {
    cursor: pointer;
    margin-top: 0;
}

.revx-smart .form-check-label[b-iddl3d2rah] {
    cursor: pointer;
    user-select: none;
    font-size: 0.9rem;
    color: #374151;
}

.revx-tooltip[b-iddl3d2rah] {
    text-align: center;
    padding: 0.15rem 0.1rem;
}

.revx-tooltip-series[b-iddl3d2rah] {
    font-size: 0.8rem;
    color: #6b7280;
}

.revx-tooltip-value[b-iddl3d2rah] {
    font-size: 0.95rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: #111827;
}

.revx-chart[b-iddl3d2rah] {
    margin-top: 0.25rem;
}

.revx-empty[b-iddl3d2rah] {
    padding: 2rem 0;
    text-align: center;
    color: #6b7280;
    font-size: 0.85rem;
}
/* /Components/Shared/Dashboard/SubscriptionMovementMonthlyChart.razor.rz.scp.css */
/* Eigene Kachel-Chrome (analog RevenueExpenseMonthlyChart) — scoped, greift nicht in andere Kacheln. */
.submov-tile[b-y2y7cv8kwv] {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 1rem 1.1rem 0.75rem;
    background: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
}

.submov-top[b-y2y7cv8kwv] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.6rem;
}

/* Kennzahlen als drei Zeilen untereinander (Label vor Wert). Farbe = Serienfarbe → ersetzt die Legende. */
.submov-figures[b-y2y7cv8kwv] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.submov-figure[b-y2y7cv8kwv] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
}

.submov-figure-label[b-y2y7cv8kwv] {
    font-size: 0.95rem;
    font-weight: 700;
    min-width: 5.5rem;
}

.submov-figure-value[b-y2y7cv8kwv] {
    min-width: 5.5rem;
    text-align: right;
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.2;
    font-variant-numeric: tabular-nums;
}

/* Serienfarben (identisch zu den Chart-Serien; spiegeln DashboardColors). */
.submov-new[b-y2y7cv8kwv]   { color: #0284C7; }
.submov-churn[b-y2y7cv8kwv] { color: #D93A2B; }
.submov-net[b-y2y7cv8kwv]   { color: #A2C61A; }

.submov-controls[b-y2y7cv8kwv] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex: 0 0 auto;
}

.submov-info[b-y2y7cv8kwv] {
    font-size: 0.85rem;
    color: #9ca3af;
    cursor: help;
}

.submov-tooltip[b-y2y7cv8kwv] {
    text-align: center;
    padding: 0.15rem 0.1rem;
}

.submov-tooltip-series[b-y2y7cv8kwv] {
    font-size: 0.8rem;
    color: #6b7280;
}

.submov-tooltip-value[b-y2y7cv8kwv] {
    font-size: 0.95rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: #111827;
}

.submov-chart[b-y2y7cv8kwv] {
    margin-top: 0.25rem;
}

.submov-empty[b-y2y7cv8kwv] {
    padding: 2rem 0;
    text-align: center;
    color: #6b7280;
    font-size: 0.85rem;
}
/* /Components/Shared/Dashboard/SubscriptionTypeDonut.razor.rz.scp.css */
.donut-tile[b-5ck578wd2n] {
    width: 100%;
}

.donut-label[b-5ck578wd2n] {
    font-size: 0.85rem;
    font-weight: 600;
    color: #6b7280;
    margin-bottom: 0.35rem;
}

/* Chart + zentriertes Overlay teilen sich denselben Kasten → die Gesamtzahl sitzt im Donut-Loch. */
.donut-chartwrap[b-5ck578wd2n] {
    position: relative;
}

/* Kleine, unaufdringliche Sektor-Zahlen (die Erklärung liefert der Tooltip). Trifft nur die SVG-
   Label-<text> des Donuts — Mitte, Legende und Tooltip sind HTML und bleiben unberührt. */
.donut-chartwrap[b-5ck578wd2n]  text {
    font-size: 9px !important;
}

.donut-center[b-5ck578wd2n] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

.donut-center-value[b-5ck578wd2n] {
    font-size: 1.85rem;
    font-weight: 700;
    line-height: 1;
    color: #111827;
    font-variant-numeric: tabular-nums;
}

/* Horizontal umbrechende Legende (1–2 Zeilen) — spart Höhe zugunsten eines größeren Donuts. */
.donut-legend[b-5ck578wd2n] {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    gap: 0.2rem 0.85rem;
    margin-top: 0.5rem;
}

.donut-legend-item[b-5ck578wd2n] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.8rem;
}

.donut-legend-swatch[b-5ck578wd2n] {
    width: 0.7rem;
    height: 0.7rem;
    border-radius: 2px;
    flex: 0 0 auto;
}

.donut-legend-name[b-5ck578wd2n] {
    color: #374151;
}

.donut-empty[b-5ck578wd2n] {
    padding: 1.5rem 0;
    text-align: center;
    color: #6b7280;
    font-size: 0.85rem;
}

.donut-tooltip[b-5ck578wd2n] {
    text-align: center;
    padding: 0.15rem 0.1rem;
}

.donut-tooltip-t[b-5ck578wd2n] {
    font-size: 0.8rem;
    color: #6b7280;
}

.donut-tooltip-v[b-5ck578wd2n] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #111827;
}
/* /Components/Shared/DrillDownPopup.razor.rz.scp.css */
.drilldown-header[b-fifwbvfu0u] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    min-width: 0;
}

.drilldown-back-btn[b-fifwbvfu0u] {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.25rem;
    display: flex;
    align-items: center;
    color: var(--color-octa-lightred, #e03030);
    transition: opacity 0.15s;
    flex-shrink: 0;
}

.drilldown-back-btn:hover[b-fifwbvfu0u] {
    opacity: 0.7;
}

.drilldown-title[b-fifwbvfu0u] {
    font-weight: 600;
    font-size: 1rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.drilldown-viewport[b-fifwbvfu0u] {
    overflow-x: hidden;
    overflow-y: auto;
    position: relative;
    max-height: calc(90vh - 4rem);
}

.drilldown-page[b-fifwbvfu0u] {
    animation-duration: 0.25s;
    animation-timing-function: ease-out;
    animation-fill-mode: both;
}

.drilldown-page.slide-left[b-fifwbvfu0u] {
    animation-name: drilldown-slide-in-left-b-fifwbvfu0u;
}

.drilldown-page.slide-right[b-fifwbvfu0u] {
    animation-name: drilldown-slide-in-right-b-fifwbvfu0u;
}

@keyframes drilldown-slide-in-left-b-fifwbvfu0u {
    from { transform: translateX(100%); opacity: 0.5; }
    to   { transform: translateX(0);    opacity: 1; }
}

@keyframes drilldown-slide-in-right-b-fifwbvfu0u {
    from { transform: translateX(-30%); opacity: 0.5; }
    to   { transform: translateX(0);    opacity: 1; }
}
/* /Components/Shared/FeatureCard.razor.rz.scp.css */
.feature-card-link[b-ezptaa52qq] {
    text-decoration: none;
    display: block;
    height: 100%;
}

.feature-card[b-ezptaa52qq] {
    border-radius: 0.5rem;
    overflow: hidden;
    border: 1px solid var(--color-octa-white);
    background-color: var(--color-octa-white);
    display: flex;
    flex-direction: column;
    height: 100%;
    transition: border-color 0.2s ease;
}

.feature-card-link:hover .feature-card[b-ezptaa52qq] {
    border: 1px solid var(--color-octa-mono3);
}

.feature-card .card-body[b-ezptaa52qq] {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    flex: 1;
    position: relative;
}

.feature-icon[b-ezptaa52qq] {
    width: 3rem;
    height: 3rem;
    color: var(--color-octa-lightred);
    margin-bottom: 1rem;
    stroke-width: 1.5;
}

.feature-card .card-title[b-ezptaa52qq] {
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: var(--color-octa-mono3);
}

.feature-card .card-text[b-ezptaa52qq] {
    color: var(--ccolor-octa-mono2);
    margin-bottom: 1.5rem;
    line-height: 1.6;
    flex: 1;
}

.feature-card-arrow[b-ezptaa52qq] {
    position: absolute;
    bottom: 1.5rem;
    right: 1.5rem;
    width: 2rem;
    height: 2rem;
    background-color: var(--color-octa-white);
    border: 1px solid var(--color-octa-mono3);
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.feature-card-arrow i[b-ezptaa52qq] {
    width: 1.5rem;
    height: 1.5rem;
    color: var(--color-octa-mono3) !important;
    stroke-width: 2;
}

.feature-card-arrow svg[b-ezptaa52qq] {
    color: var(--color-octa-mono3);
    stroke: currentColor;
}

.feature-card-link:hover .feature-card-arrow[b-ezptaa52qq] {
    background-color: var(--color-octa-mono3);
}

.feature-card-link:hover .feature-card-arrow i[b-ezptaa52qq] {
    color: var(--color-octa-white) !important;
}

.feature-card-link:hover .feature-card-arrow svg[b-ezptaa52qq] {
    color: var(--color-octa-white);
    stroke: currentColor;
}
/* /Components/Shared/StatCard.razor.rz.scp.css */
.stat-item[b-rlmannpl8z] {
    text-align: center;
    padding: 1.5rem;
    background: var(--color-octa-white);
    border-radius: 0.75rem;
}

.stat-icon[b-rlmannpl8z] {
    width: 2.5rem;
    height: 2.5rem;
    color: var(--color-octa-lightred);
    margin-bottom: 1rem;
    stroke-width: 1.5;
}

.stat-value[b-rlmannpl8z] {
    font-size: 2rem;
    font-weight: bold;
    color: var(--color-octa-mono3);
    margin-bottom: 0.5rem;
}

.stat-label[b-rlmannpl8z] {
    color: var(--color-octa-mono2);
    font-size: 0.875rem;
    font-weight: 500;
}
/* /Components/Shared/UserCard.razor.rz.scp.css */
.user-card[b-fyf0dw4do5] {
    display: grid;
    grid-template-columns: 44px 1fr auto;
    grid-template-rows: auto auto;
    align-items: center;
    column-gap: 0.75rem;
    row-gap: 0.15rem;
    background: var(--color-octa-mono7);
    border-radius: 0.5rem;
    margin-bottom: 0.4rem;
    padding: 0.55rem 0.75rem;
    border-left: 8px solid transparent;
}

.user-card:last-child[b-fyf0dw4do5] {
    margin-bottom: 0;
}

.user-card--clickable[b-fyf0dw4do5] {
    cursor: pointer;
    transition: filter 0.15s;
}

.user-card--clickable:hover[b-fyf0dw4do5] {
    filter: brightness(0.93);
}

/* Left column (col 1) */
.user-card__time-relative[b-fyf0dw4do5] {
    grid-column: 1;
    grid-row: 1;
    font-variant-numeric: tabular-nums;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--color-octa-mono3);
    text-align: right;
    white-space: nowrap;
}

.user-card__time-absolute[b-fyf0dw4do5] {
    grid-column: 1;
    grid-row: 2;
    font-variant-numeric: tabular-nums;
    font-size: 0.75rem;
    color: var(--color-octa-mono4);
    text-align: right;
    white-space: nowrap;
}

/* Center column (col 2) */
.user-card__middle-top[b-fyf0dw4do5] {
    grid-column: 2;
    grid-row: 1;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-width: 0;
}

.user-card__email[b-fyf0dw4do5] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--color-octa-mono2);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.user-card__middle-bottom[b-fyf0dw4do5] {
    grid-column: 2;
    grid-row: 2;
    font-size: 0.78rem;
    color: var(--color-octa-mono4);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

/* Right column (col 3) */
.user-card__badge-slot[b-fyf0dw4do5] {
    grid-column: 3;
    grid-row: 1;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.user-card__badge[b-fyf0dw4do5] {
    font-size: 0.72rem;
    font-weight: 600;
    padding: 0.2em 0.5em;
    border-radius: 0.3rem;
    background: var(--color-octa-mono6);
    color: var(--color-octa-mono3);
    white-space: nowrap;
    flex-shrink: 0;
}

.user-card__value[b-fyf0dw4do5] {
    grid-column: 3;
    grid-row: 2;
    font-variant-numeric: tabular-nums;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--color-octa-mono3);
    text-align: right;
    white-space: nowrap;
}
/* /Components/Shared/UserDetailView.razor.rz.scp.css */
.prop-row[b-lqeg6k9n0h] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 0.5rem;
    padding: 0.25rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
    font-size: 1rem;
}

.prop-row:last-of-type[b-lqeg6k9n0h] {
    border-bottom: none;
}

.prop-label[b-lqeg6k9n0h] {
    color: var(--bs-secondary-color, #6c757d);
    flex-shrink: 0;
    white-space: nowrap;
}

.prop-value[b-lqeg6k9n0h] {
    text-align: right;
    word-break: break-word;
}

.user-detail-view[b-lqeg6k9n0h] {
    padding-bottom: 1rem;
}

@media (max-width: 600px) {
    .user-detail-view[b-lqeg6k9n0h] {
        padding: 0.5rem !important;
    }


}
