/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* MainLayout scoped styles - minimal overrides for MudBlazor layout */

#blazor-error-ui[b-o3r4nrxeln] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

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

/* Drawer flex layout for bottom-docked profile */
[b-o3r4nrxeln] .mud-drawer-content {
    display: flex;
    flex-direction: column;
    height: 100%;
}

[b-o3r4nrxeln] .mud-navmenu {
    flex: 1;
    overflow-y: auto;
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-82s3t9q8yj] {
    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-82s3t9q8yj] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-82s3t9q8yj] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-82s3t9q8yj] {
    font-size: 1.1rem;
}

.bi[b-82s3t9q8yj] {
    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-82s3t9q8yj] {
    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-82s3t9q8yj] {
    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-82s3t9q8yj] {
    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-82s3t9q8yj] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-82s3t9q8yj] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-82s3t9q8yj] {
        padding-bottom: 1rem;
    }

    .nav-item[b-82s3t9q8yj]  .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-82s3t9q8yj]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-82s3t9q8yj]  .nav-link:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-scrollable[b-82s3t9q8yj] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-82s3t9q8yj] {
    display: block;
}

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

    .nav-scrollable[b-82s3t9q8yj] {
        /* 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/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-fgid8n5jg7],
.components-reconnect-repeated-attempt-visible[b-fgid8n5jg7],
.components-reconnect-failed-visible[b-fgid8n5jg7],
.components-rejoining-animation[b-fgid8n5jg7] {
    display: none;
}

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


#components-reconnect-modal[b-fgid8n5jg7] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-fgid8n5jg7 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-fgid8n5jg7 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-fgid8n5jg7 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-fgid8n5jg7]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-fgid8n5jg7 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-fgid8n5jg7 {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-fgid8n5jg7 {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-fgid8n5jg7 {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-fgid8n5jg7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-fgid8n5jg7] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-fgid8n5jg7] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-fgid8n5jg7] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-fgid8n5jg7] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-fgid8n5jg7] {
    display: block;
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-fgid8n5jg7] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-fgid8n5jg7 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-fgid8n5jg7] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-fgid8n5jg7 {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Accounting/AccountManagement.razor.rz.scp.css */
.am-toolbar[b-txbl2coj4d] {
    display: flex;
    gap: 1rem;
    align-items: flex-end;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
}

.am-search[b-txbl2coj4d] {
    flex: 1 1 260px;
    min-width: 200px;
}

.am-filter[b-txbl2coj4d] {
    flex: 0 1 180px;
    min-width: 140px;
}

.am-grid[b-txbl2coj4d] {
    font-family: var(--apm-font-mono);
    font-size: 0.85rem;
    border: 1px solid var(--apm-border);
    border-radius: 8px;
    overflow: hidden;
}
/* /Components/Pages/Accounting/AccountMapping.razor.rz.scp.css */
.amm-progress-bar[b-ws6yr0v7rd] {
    margin-bottom: 1.5rem;
}

.amm-progress-label[b-ws6yr0v7rd] {
    font-family: var(--apm-font-mono);
    font-size: 0.85rem;
    color: var(--apm-surface);
    margin-bottom: 0.4rem;
}

.am-toolbar[b-ws6yr0v7rd] {
    display: flex;
    gap: 1rem;
    align-items: flex-end;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
}

.am-search[b-ws6yr0v7rd] {
    flex: 1 1 260px;
    min-width: 200px;
}

.am-filter[b-ws6yr0v7rd] {
    flex: 0 1 180px;
    min-width: 140px;
}

.am-grid[b-ws6yr0v7rd] {
    font-family: var(--apm-font-mono);
    font-size: 0.85rem;
    border: 1px solid var(--apm-border);
    border-radius: 8px;
    overflow: hidden;
}
/* /Components/Pages/Accounting/ClientVatDetail.razor.rz.scp.css */
/* ══════════════════════════════════════
   CLIENT VAT DETAIL — Custom Design
   Matches vat-client-detail/interactive/progress mockups
══════════════════════════════════════ */

/* ── Client Header ── */
.vd-client-header[b-89chi7w4tb] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 14px;
    padding: 22px 28px;
    margin-bottom: 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.vd-ch-left[b-89chi7w4tb] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.vd-ch-avatar[b-89chi7w4tb] {
    width: 52px;
    height: 52px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    font-weight: 700;
    color: #fff;
    flex-shrink: 0;
}

.vd-ch-name[b-89chi7w4tb] {
    font-size: 1.15rem;
    font-weight: 700;
    margin-bottom: 3px;
    letter-spacing: -0.3px;
}

.vd-ch-meta[b-89chi7w4tb] {
    display: flex;
    gap: 16px;
    font-size: 0.72rem;
    color: #6b7280;
    flex-wrap: wrap;
}

.vd-ch-meta span[b-89chi7w4tb] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.vd-vat-badge-lg[b-89chi7w4tb] {
    padding: 5px 14px;
    border-radius: 20px;
    font-size: 0.72rem;
    font-weight: 700;
    background: #fff7ed;
    color: #ea580c;
    border: 1px solid rgba(234, 88, 12, 0.15);
}

/* ── Stats Row ── */
.vd-stats[b-89chi7w4tb] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin-bottom: 28px;
}

.vd-stat-card[b-89chi7w4tb] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 14px;
    padding: 18px 20px;
    position: relative;
    overflow: hidden;
}

.vd-stat-card[b-89chi7w4tb]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
}

.vd-stat-card:nth-child(1)[b-89chi7w4tb]::before { background: #22c55e; }
.vd-stat-card:nth-child(2)[b-89chi7w4tb]::before { background: #f59e0b; }
.vd-stat-card:nth-child(3)[b-89chi7w4tb]::before { background: var(--apm-primary); }
.vd-stat-card:nth-child(4)[b-89chi7w4tb]::before { background: var(--apm-info); }

.vd-stat-num[b-89chi7w4tb] {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 3px;
    letter-spacing: -0.5px;
}

.vd-stat-lbl[b-89chi7w4tb] {
    font-size: 0.62rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #6b7280;
    font-weight: 600;
}

.vd-stat-sub[b-89chi7w4tb] {
    font-size: 0.68rem;
    color: #9ca3af;
    margin-top: 4px;
}

/* ── View Tabs ── */
.vd-tabs[b-89chi7w4tb] {
    display: flex;
    gap: 0;
    border-bottom: 2px solid var(--apm-border);
    margin-bottom: 24px;
}

.vd-tab[b-89chi7w4tb] {
    padding: 10px 20px;
    font-size: 0.78rem;
    font-weight: 600;
    color: #6b7280;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    transition: all 0.15s;
    display: flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
    font-family: 'DM Sans', sans-serif;
    background: none;
    border-top: none;
    border-left: none;
    border-right: none;
}

.vd-tab:hover[b-89chi7w4tb] {
    color: #111827;
}

.vd-tab.active[b-89chi7w4tb] {
    color: var(--apm-primary);
    border-bottom-color: var(--apm-primary);
}

.vd-tab-badge[b-89chi7w4tb] {
    font-size: 0.58rem;
    font-weight: 700;
    padding: 1px 6px;
    border-radius: 8px;
    background: rgba(79, 70, 229, 0.1);
    color: var(--apm-primary);
}

/* ── Section ── */
.vd-section[b-89chi7w4tb] {
    margin-bottom: 28px;
}

.vd-section-header[b-89chi7w4tb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
}

.vd-section-title[b-89chi7w4tb] {
    font-size: 0.88rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 8px;
}

/* ── Current Period Card ── */
.vd-current-period[b-89chi7w4tb] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 28px;
}

.vd-cp-header[b-89chi7w4tb] {
    padding: 20px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--apm-border);
}

.vd-cp-title[b-89chi7w4tb] {
    font-size: 1rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 10px;
}

.vd-cp-badge[b-89chi7w4tb] {
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.65rem;
    font-weight: 700;
}

.vd-cp-badge.active[b-89chi7w4tb] {
    background: #fffbeb;
    color: #f59e0b;
}

.vd-cp-badge.filed[b-89chi7w4tb] {
    background: #f0fdf4;
    color: #22c55e;
}

.vd-cp-meta[b-89chi7w4tb] {
    font-size: 0.72rem;
    color: #6b7280;
    display: flex;
    gap: 16px;
}

/* ══ STATUS FLOW ══ */
.vd-sf-hint-bar[b-89chi7w4tb] {
    padding: 12px 24px 0;
    font-size: 0.62rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #6b7280;
    display: flex;
    align-items: center;
    gap: 6px;
}

.vd-sf-hint-tag[b-89chi7w4tb] {
    background: rgba(79, 70, 229, 0.1);
    color: var(--apm-primary);
    padding: 1px 7px;
    border-radius: 8px;
    font-size: 0.55rem;
}

.vd-status-flow[b-89chi7w4tb] {
    padding: 32px 24px;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 0;
    position: relative;
}

.vd-sf-step[b-89chi7w4tb] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    position: relative;
    z-index: 1;
    min-width: 110px;
    cursor: default;
}

.vd-sf-circle[b-89chi7w4tb] {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.85rem;
    font-weight: 700;
    border: 2.5px solid var(--apm-border);
    background: var(--apm-surface);
    color: #9ca3af;
    transition: all 0.3s;
    position: relative;
}

.vd-sf-step.done .vd-sf-circle[b-89chi7w4tb] {
    background: #22c55e;
    border-color: #22c55e;
    color: #fff;
}

.vd-sf-step.active .vd-sf-circle[b-89chi7w4tb] {
    background: #f59e0b;
    border-color: #f59e0b;
    color: #fff;
    box-shadow: 0 0 0 5px rgba(245, 158, 11, 0.15);
    animation: vd-pulse-ring-b-89chi7w4tb 2s infinite;
}

@keyframes vd-pulse-ring-b-89chi7w4tb {
    0%, 100% { box-shadow: 0 0 0 5px rgba(245, 158, 11, 0.15); }
    50% { box-shadow: 0 0 0 10px rgba(245, 158, 11, 0.05); }
}

.vd-sf-step.upcoming .vd-sf-circle[b-89chi7w4tb] {
    background: #f3f4f6;
    border-color: var(--apm-border);
    color: #9ca3af;
}

/* Clickable next step */
.vd-sf-step.clickable[b-89chi7w4tb] {
    cursor: pointer;
}

.vd-sf-step.clickable .vd-sf-circle[b-89chi7w4tb] {
    border-style: dashed;
    border-color: var(--apm-primary);
    color: var(--apm-primary);
    background: rgba(79, 70, 229, 0.04);
}

.vd-sf-step.clickable:hover .vd-sf-circle[b-89chi7w4tb] {
    background: var(--apm-primary);
    color: #fff;
    border-style: solid;
    box-shadow: 0 0 0 5px rgba(79, 70, 229, 0.12);
    transform: scale(1.08);
}

.vd-sf-step.clickable .vd-sf-label[b-89chi7w4tb] {
    color: var(--apm-primary);
}

.vd-sf-step.clickable:hover .vd-sf-label[b-89chi7w4tb] {
    font-weight: 700;
}

/* Clickable hint */
.vd-sf-hint[b-89chi7w4tb] {
    position: absolute;
    top: -24px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 0.58rem;
    font-weight: 700;
    color: var(--apm-primary);
    white-space: nowrap;
    background: rgba(79, 70, 229, 0.1);
    padding: 2px 8px;
    border-radius: 10px;
    opacity: 0;
    transition: opacity 0.2s;
    pointer-events: none;
}

.vd-sf-step.clickable:hover .vd-sf-hint[b-89chi7w4tb] {
    opacity: 1;
}

.vd-sf-label[b-89chi7w4tb] {
    font-size: 0.66rem;
    font-weight: 600;
    color: #6b7280;
    text-align: center;
    max-width: 100px;
    transition: all 0.2s;
}

.vd-sf-step.done .vd-sf-label[b-89chi7w4tb] { color: #22c55e; }
.vd-sf-step.active .vd-sf-label[b-89chi7w4tb] { color: #f59e0b; font-weight: 700; }

.vd-sf-date[b-89chi7w4tb] {
    font-size: 0.56rem;
    color: #9ca3af;
    font-family: var(--apm-font-mono);
}

.vd-sf-connector[b-89chi7w4tb] {
    width: 40px;
    height: 2.5px;
    background: var(--apm-border);
    margin-top: 21px;
    flex-shrink: 0;
    transition: background 0.3s;
}

.vd-sf-connector.done[b-89chi7w4tb] {
    background: #22c55e;
}

/* Undo button */
.vd-sf-undo[b-89chi7w4tb] {
    position: absolute;
    top: -8px;
    right: -8px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.5rem;
    color: #6b7280;
    cursor: pointer;
    opacity: 0;
    transition: all 0.15s;
    z-index: 2;
}

.vd-sf-step.done:hover .vd-sf-undo[b-89chi7w4tb] {
    opacity: 1;
}

.vd-sf-undo:hover[b-89chi7w4tb] {
    background: #fef2f2;
    border-color: var(--apm-error);
    color: var(--apm-error);
}

/* ── CP Details ── */
.vd-cp-details[b-89chi7w4tb] {
    padding: 20px 24px;
    border-top: 1px solid var(--apm-border);
    background: #f3f4f6;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
}

.vd-cpd-item[b-89chi7w4tb] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.vd-cpd-label[b-89chi7w4tb] {
    font-size: 0.6rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #6b7280;
    font-weight: 700;
}

.vd-cpd-value[b-89chi7w4tb] {
    font-size: 0.82rem;
    font-weight: 600;
}

.vd-cpd-value.mono[b-89chi7w4tb] {
    font-family: var(--apm-font-mono);
}

/* ── Action Buttons Row ── */
.vd-actions[b-89chi7w4tb] {
    display: flex;
    gap: 8px;
    align-items: center;
}

.vd-btn[b-89chi7w4tb] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    border-radius: 8px;
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    border: none;
    font-family: 'DM Sans', sans-serif;
    transition: all 0.15s;
    white-space: nowrap;
}

.vd-btn-ghost[b-89chi7w4tb] {
    background: transparent;
    border: 1px solid var(--apm-border);
    color: #6b7280;
}

.vd-btn-ghost:hover[b-89chi7w4tb] {
    border-color: var(--apm-primary);
    color: var(--apm-primary);
}

.vd-btn-success[b-89chi7w4tb] {
    background: #22c55e;
    color: #fff;
    font-size: 0.82rem;
    padding: 10px 20px;
}

.vd-btn-success:hover[b-89chi7w4tb] {
    background: #16a34a;
}

.vd-btn-success:disabled[b-89chi7w4tb] {
    opacity: 0.4;
    cursor: not-allowed;
}

.vd-btn-primary[b-89chi7w4tb] {
    background: var(--apm-primary);
    color: #fff;
}

.vd-btn-primary:hover[b-89chi7w4tb] {
    background: #3730a3;
}

/* ── Timeline ── */
.vd-timeline[b-89chi7w4tb] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 14px;
    padding: 0;
    overflow: hidden;
}

.vd-tl-item[b-89chi7w4tb] {
    display: flex;
    gap: 10px;
    position: relative;
    padding: 0 24px;
}

.vd-tl-item:first-child[b-89chi7w4tb] {
    padding-top: 18px;
}

.vd-tl-item:last-child[b-89chi7w4tb] {
    padding-bottom: 18px;
}

.vd-tl-item:not(:last-child)[b-89chi7w4tb] {
    padding-bottom: 12px;
}

.vd-tl-item:not(:last-child)[b-89chi7w4tb]::after {
    content: '';
    position: absolute;
    left: 31px;
    top: 22px;
    bottom: 0;
    width: 1px;
    background: var(--apm-border);
}

.vd-tl-dot[b-89chi7w4tb] {
    width: 15px;
    height: 15px;
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 2px;
    border: 2px solid;
}

.vd-tl-dot.green[b-89chi7w4tb] { border-color: #22c55e; background: rgba(34, 197, 94, 0.08); }
.vd-tl-dot.orange[b-89chi7w4tb] { border-color: #f59e0b; background: rgba(245, 158, 11, 0.08); }
.vd-tl-dot.blue[b-89chi7w4tb] { border-color: var(--apm-primary); background: rgba(79, 70, 229, 0.06); }
.vd-tl-dot.red[b-89chi7w4tb] { border-color: var(--apm-error); background: rgba(239, 68, 68, 0.06); }
.vd-tl-dot.gray[b-89chi7w4tb] { border-color: var(--apm-border); background: #f3f4f6; }

.vd-tl-action[b-89chi7w4tb] {
    font-size: 0.74rem;
    font-weight: 600;
    margin-bottom: 1px;
}

.vd-tl-time[b-89chi7w4tb] {
    font-size: 0.62rem;
    color: #6b7280;
    font-family: var(--apm-font-mono);
}

/* ══════════════════════════════════
   BOOKKEEPING PROGRESS (Tab 2)
══════════════════════════════════ */
.vd-progress-card[b-89chi7w4tb] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 24px;
}

.vd-pc-top[b-89chi7w4tb] {
    padding: 20px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--apm-border);
}

.vd-pc-title[b-89chi7w4tb] {
    font-size: 0.95rem;
    font-weight: 700;
}

.vd-pc-pct[b-89chi7w4tb] {
    font-size: 0.82rem;
    font-weight: 700;
    font-family: var(--apm-font-mono);
}

.vd-pc-progress-wrap[b-89chi7w4tb] {
    padding: 0 24px;
    padding-top: 20px;
}

.vd-pc-progress-bar[b-89chi7w4tb] {
    height: 10px;
    background: #f3f4f6;
    border-radius: 5px;
    overflow: hidden;
    display: flex;
}

.vd-pc-seg[b-89chi7w4tb] {
    height: 100%;
    transition: width 0.4s ease;
}

.vd-pc-seg.done[b-89chi7w4tb] {
    background: #22c55e;
}

.vd-pc-seg.active[b-89chi7w4tb] {
    background: #f59e0b;
    background-image: repeating-linear-gradient(-45deg, transparent, transparent 4px, rgba(255,255,255,0.15) 4px, rgba(255,255,255,0.15) 8px);
    background-size: 16px 16px;
    animation: vd-barberpole-b-89chi7w4tb 0.8s linear infinite;
}

@keyframes vd-barberpole-b-89chi7w4tb {
    from { background-position: 0 0; }
    to { background-position: 16px 0; }
}

.vd-pc-seg.empty[b-89chi7w4tb] {
    background: #f3f4f6;
}

.vd-pc-legend[b-89chi7w4tb] {
    display: flex;
    gap: 16px;
    padding: 8px 0 0;
    font-size: 0.64rem;
    color: #6b7280;
}

.vd-pc-leg[b-89chi7w4tb] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.vd-pc-leg-dot[b-89chi7w4tb] {
    width: 8px;
    height: 8px;
    border-radius: 2px;
    flex-shrink: 0;
}

/* Monthly grid */
.vd-month-grid[b-89chi7w4tb] {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 0;
    padding: 20px 24px;
}

.vd-month-card[b-89chi7w4tb] {
    padding: 16px 14px;
    border: 1px solid var(--apm-border);
    margin: -0.5px;
    position: relative;
    transition: all 0.15s;
    cursor: pointer;
    background: var(--apm-surface);
}

.vd-month-card:first-child[b-89chi7w4tb] {
    border-radius: 10px 0 0 10px;
}

.vd-month-card:last-child[b-89chi7w4tb] {
    border-radius: 0 10px 10px 0;
}

.vd-month-card:hover[b-89chi7w4tb] {
    z-index: 1;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
    border-color: var(--apm-primary);
}

.vd-month-card.done[b-89chi7w4tb] {
    background: rgba(34, 197, 94, 0.06);
}

.vd-month-card.active[b-89chi7w4tb] {
    background: rgba(245, 158, 11, 0.06);
    border-color: #f59e0b;
}

.vd-month-card.active[b-89chi7w4tb]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: #f59e0b;
}

.vd-month-card.locked[b-89chi7w4tb] {
    background: #f3f4f6;
    opacity: 0.6;
    cursor: default;
}

.vd-mc-header[b-89chi7w4tb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}

.vd-mc-month[b-89chi7w4tb] {
    font-size: 0.78rem;
    font-weight: 700;
}

.vd-mc-status-icon[b-89chi7w4tb] {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.6rem;
    font-weight: 700;
}

.vd-mc-status-icon.done[b-89chi7w4tb] {
    background: #22c55e;
    color: #fff;
}

.vd-mc-status-icon.active[b-89chi7w4tb] {
    background: #f59e0b;
    color: #fff;
}

.vd-mc-status-icon.locked[b-89chi7w4tb] {
    background: var(--apm-border);
    color: #9ca3af;
}

.vd-mc-stats[b-89chi7w4tb] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.vd-mc-stat[b-89chi7w4tb] {
    display: flex;
    justify-content: space-between;
    font-size: 0.66rem;
}

.vd-mc-stat-label[b-89chi7w4tb] {
    color: #6b7280;
}

.vd-mc-stat-value[b-89chi7w4tb] {
    font-weight: 600;
    font-family: var(--apm-font-mono);
    font-size: 0.62rem;
}

.vd-mc-bar[b-89chi7w4tb] {
    height: 4px;
    background: #f3f4f6;
    border-radius: 2px;
    overflow: hidden;
    margin-top: 8px;
}

.vd-mc-bar-fill[b-89chi7w4tb] {
    height: 100%;
    border-radius: 2px;
    transition: width 0.3s;
}

/* Month detail panel */
.vd-month-detail[b-89chi7w4tb] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 14px;
    padding: 20px 24px;
    margin-bottom: 24px;
    animation: vd-slide-in-b-89chi7w4tb 0.2s ease-out;
}

@keyframes vd-slide-in-b-89chi7w4tb {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
}

.vd-md-header[b-89chi7w4tb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}

.vd-md-title[b-89chi7w4tb] {
    font-size: 1rem;
    font-weight: 700;
}

.vd-md-close[b-89chi7w4tb] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    border: 1px solid var(--apm-border);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    background: var(--apm-surface);
    color: #6b7280;
    font-size: 0.7rem;
    transition: all 0.15s;
    font-family: 'DM Sans', sans-serif;
}

.vd-md-close:hover[b-89chi7w4tb] {
    background: #fef2f2;
    color: var(--apm-error);
    border-color: var(--apm-error);
}

.vd-md-grid[b-89chi7w4tb] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin-bottom: 16px;
}

.vd-md-stat[b-89chi7w4tb] {
    background: #f3f4f6;
    border-radius: 8px;
    padding: 12px 14px;
}

.vd-md-stat-num[b-89chi7w4tb] {
    font-size: 1.2rem;
    font-weight: 700;
    font-family: var(--apm-font-mono);
    margin-bottom: 2px;
}

.vd-md-stat-label[b-89chi7w4tb] {
    font-size: 0.6rem;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: #6b7280;
    font-weight: 600;
}

/* ══════════════════════════════════
   CLOSING CHECKLIST (Tab 3)
══════════════════════════════════ */
.vd-closing-card[b-89chi7w4tb] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 24px;
}

.vd-closing-header[b-89chi7w4tb] {
    padding: 20px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid var(--apm-border);
}

.vd-closing-title[b-89chi7w4tb] {
    font-size: 0.95rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 10px;
}

.vd-closing-badge[b-89chi7w4tb] {
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.62rem;
    font-weight: 700;
}

.vd-closing-pct[b-89chi7w4tb] {
    font-size: 0.78rem;
    font-weight: 600;
    font-family: var(--apm-font-mono);
    color: #6b7280;
}

/* Category */
.vd-cl-category[b-89chi7w4tb] {
    border-bottom: 1px solid var(--apm-border);
}

.vd-cl-category:last-child[b-89chi7w4tb] {
    border-bottom: none;
}

.vd-cl-cat-header[b-89chi7w4tb] {
    padding: 14px 24px;
    background: #f3f4f6;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    transition: background 0.15s;
}

.vd-cl-cat-header:hover[b-89chi7w4tb] {
    background: rgba(79, 70, 229, 0.04);
}

.vd-cl-cat-title[b-89chi7w4tb] {
    font-size: 0.76rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 8px;
}

.vd-cl-cat-count[b-89chi7w4tb] {
    font-size: 0.62rem;
    color: #6b7280;
    font-weight: 500;
}

.vd-cl-cat-status[b-89chi7w4tb] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.vd-cl-cat-bar[b-89chi7w4tb] {
    width: 60px;
    height: 4px;
    background: #f3f4f6;
    border-radius: 2px;
    overflow: hidden;
}

.vd-cl-cat-bar-fill[b-89chi7w4tb] {
    height: 100%;
    border-radius: 2px;
    background: #22c55e;
    transition: width 0.3s;
}

.vd-cl-cat-pct[b-89chi7w4tb] {
    font-size: 0.62rem;
    font-weight: 700;
    color: #6b7280;
    min-width: 28px;
    text-align: right;
}

.vd-cl-cat-chevron[b-89chi7w4tb] {
    font-size: 0.7rem;
    color: #6b7280;
    transition: transform 0.2s;
}

.vd-cl-category.open .vd-cl-cat-chevron[b-89chi7w4tb] {
    transform: rotate(180deg);
}

/* Items */
.vd-cl-items[b-89chi7w4tb] {
    display: none;
    padding: 0 24px;
}

.vd-cl-category.open .vd-cl-items[b-89chi7w4tb] {
    display: block;
}

.vd-cl-item[b-89chi7w4tb] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 0;
    border-bottom: 1px solid #f3f4f6;
    transition: background 0.1s;
    cursor: pointer;
}

.vd-cl-item:last-child[b-89chi7w4tb] {
    border-bottom: none;
}

.vd-cl-item:hover[b-89chi7w4tb] {
    background: rgba(79, 70, 229, 0.04);
    margin: 0 -24px;
    padding-left: 24px;
    padding-right: 24px;
}

.vd-cl-item.checked .vd-cl-text[b-89chi7w4tb] {
    text-decoration: line-through;
    color: #9ca3af;
}

.vd-cl-check[b-89chi7w4tb] {
    width: 20px;
    height: 20px;
    border-radius: 6px;
    border: 2px solid var(--apm-border);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
    margin-top: 1px;
    transition: all 0.15s;
    font-size: 0.6rem;
    color: transparent;
}

.vd-cl-check:hover[b-89chi7w4tb] {
    border-color: var(--apm-primary);
}

.vd-cl-item.checked .vd-cl-check[b-89chi7w4tb] {
    background: #22c55e;
    border-color: #22c55e;
    color: #fff;
}

.vd-cl-content[b-89chi7w4tb] {
    flex: 1;
    min-width: 0;
}

.vd-cl-text[b-89chi7w4tb] {
    font-size: 0.78rem;
    font-weight: 600;
    margin-bottom: 2px;
    transition: all 0.15s;
}

.vd-cl-desc[b-89chi7w4tb] {
    font-size: 0.66rem;
    color: #6b7280;
    line-height: 1.5;
}

.vd-cl-right[b-89chi7w4tb] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
    flex-shrink: 0;
}

.vd-cl-assigned[b-89chi7w4tb] {
    font-size: 0.62rem;
    color: #6b7280;
}

/* Closing ready banner */
.vd-closing-ready[b-89chi7w4tb] {
    background: var(--apm-surface);
    border: 2px solid #22c55e;
    border-radius: 14px;
    padding: 28px;
    text-align: center;
    margin-bottom: 24px;
}

/* ── All Periods Table ── */
.vd-history-table-wrap[b-89chi7w4tb] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 14px;
    overflow: hidden;
}

.vd-history-table[b-89chi7w4tb] {
    width: 100%;
    border-collapse: collapse;
}

.vd-history-table thead[b-89chi7w4tb] {
    background: var(--apm-background);
}

.vd-history-table thead th[b-89chi7w4tb] {
    padding: 11px 16px;
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: #6b7280;
    text-align: left;
    border-bottom: 1px solid var(--apm-border);
}

.vd-history-table thead th:first-child[b-89chi7w4tb] {
    padding-left: 20px;
}

.vd-history-table tbody tr[b-89chi7w4tb] {
    border-bottom: 1px solid #f3f4f6;
    transition: background 0.1s;
    cursor: pointer;
}

.vd-history-table tbody tr:last-child[b-89chi7w4tb] {
    border-bottom: none;
}

.vd-history-table tbody tr:hover[b-89chi7w4tb] {
    background: rgba(79, 70, 229, 0.04);
}

.vd-history-table tbody tr.is-current[b-89chi7w4tb] {
    background: rgba(245, 158, 11, 0.04);
}

.vd-history-table tbody td[b-89chi7w4tb] {
    padding: 12px 16px;
    font-size: 0.78rem;
    vertical-align: middle;
}

.vd-history-table tbody td:first-child[b-89chi7w4tb] {
    padding-left: 20px;
}

.vd-status-badge[b-89chi7w4tb] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.65rem;
    font-weight: 700;
}

.vd-status-badge.filed[b-89chi7w4tb] { background: #f0fdf4; color: #22c55e; }
.vd-status-badge.inprogress[b-89chi7w4tb] { background: #fffbeb; color: #f59e0b; }
.vd-status-badge.overdue[b-89chi7w4tb] { background: #fef2f2; color: var(--apm-error); }

/* ── Notes Section ── */
.vd-notes-section[b-89chi7w4tb] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 14px;
    padding: 20px 24px;
}

.vd-note-input[b-89chi7w4tb] {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid var(--apm-border);
    border-radius: 8px;
    font-family: 'DM Sans', sans-serif;
    font-size: 0.78rem;
    resize: vertical;
    min-height: 60px;
    transition: border-color 0.15s;
    color: #111827;
    background: var(--apm-surface);
}

.vd-note-input:focus[b-89chi7w4tb] {
    outline: none;
    border-color: var(--apm-primary);
}

/* ── Modal ── */
.vd-modal-overlay[b-89chi7w4tb] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.45);
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: vd-fade-in-b-89chi7w4tb 0.15s;
}

@keyframes vd-fade-in-b-89chi7w4tb {
    from { opacity: 0; }
    to { opacity: 1; }
}

.vd-modal[b-89chi7w4tb] {
    background: var(--apm-surface);
    border-radius: 16px;
    width: 520px;
    max-width: 95vw;
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 24px 80px rgba(0,0,0,0.25);
    animation: vd-slide-up-b-89chi7w4tb 0.2s ease-out;
}

@keyframes vd-slide-up-b-89chi7w4tb {
    from { transform: translateY(20px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}

.vd-modal-header[b-89chi7w4tb] {
    padding: 24px 28px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.vd-modal-title[b-89chi7w4tb] {
    font-size: 1.1rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 10px;
}

.vd-modal-close[b-89chi7w4tb] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: none;
    background: #f3f4f6;
    cursor: pointer;
    font-size: 0.85rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
    transition: all 0.15s;
    font-family: 'DM Sans', sans-serif;
}

.vd-modal-close:hover[b-89chi7w4tb] {
    background: #fef2f2;
    color: var(--apm-error);
}

.vd-modal-body[b-89chi7w4tb] {
    padding: 20px 28px;
}

.vd-modal-footer[b-89chi7w4tb] {
    padding: 16px 28px 24px;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

/* Modal form */
.vd-form-group[b-89chi7w4tb] {
    margin-bottom: 18px;
}

.vd-form-label[b-89chi7w4tb] {
    display: block;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: #6b7280;
    margin-bottom: 6px;
}

.vd-form-input[b-89chi7w4tb] {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid var(--apm-border);
    border-radius: 8px;
    font-family: 'DM Sans', sans-serif;
    font-size: 0.82rem;
    transition: border-color 0.15s;
    color: #111827;
    background: var(--apm-surface);
}

.vd-form-input:focus[b-89chi7w4tb] {
    outline: none;
    border-color: var(--apm-primary);
    box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.08);
}

.vd-form-hint[b-89chi7w4tb] {
    font-size: 0.65rem;
    color: #6b7280;
    margin-top: 4px;
}

.vd-form-row[b-89chi7w4tb] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

/* Confirm banner */
.vd-confirm-banner[b-89chi7w4tb] {
    padding: 14px 18px;
    border-radius: 10px;
    margin-bottom: 18px;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-size: 0.78rem;
    line-height: 1.6;
}

.vd-confirm-banner.warning[b-89chi7w4tb] {
    background: rgba(245, 158, 11, 0.06);
    border: 1px solid rgba(245, 158, 11, 0.2);
}

.vd-confirm-banner.success[b-89chi7w4tb] {
    background: rgba(34, 197, 94, 0.06);
    border: 1px solid rgba(34, 197, 94, 0.2);
}

.vd-confirm-banner-icon[b-89chi7w4tb] {
    font-size: 1.1rem;
    flex-shrink: 0;
    margin-top: 1px;
}

/* Modal summary */
.vd-modal-summary[b-89chi7w4tb] {
    background: #f3f4f6;
    border-radius: 10px;
    padding: 14px 18px;
    margin-bottom: 16px;
}

.vd-ms-row[b-89chi7w4tb] {
    display: flex;
    justify-content: space-between;
    padding: 5px 0;
    font-size: 0.78rem;
}

.vd-ms-row:not(:last-child)[b-89chi7w4tb] {
    border-bottom: 1px solid var(--apm-border);
}

.vd-ms-label[b-89chi7w4tb] {
    color: #6b7280;
}

.vd-ms-value[b-89chi7w4tb] {
    font-weight: 600;
}

.vd-ms-value.mono[b-89chi7w4tb] {
    font-family: var(--apm-font-mono);
    font-size: 0.72rem;
}

/* File upload */
.vd-file-upload[b-89chi7w4tb] {
    border: 2px dashed var(--apm-border);
    border-radius: 10px;
    padding: 20px;
    text-align: center;
    cursor: pointer;
    transition: all 0.15s;
    background: #f3f4f6;
}

.vd-file-upload:hover[b-89chi7w4tb] {
    border-color: var(--apm-primary);
    background: rgba(79, 70, 229, 0.04);
}

.vd-file-upload-text[b-89chi7w4tb] {
    font-size: 0.75rem;
    color: #6b7280;
    font-weight: 500;
}

.vd-file-upload-sub[b-89chi7w4tb] {
    font-size: 0.62rem;
    color: #9ca3af;
    margin-top: 2px;
}

/* Checkbox row */
.vd-checkbox-row[b-89chi7w4tb] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.78rem;
    cursor: pointer;
    padding: 4px 0;
}

.vd-checkbox-row input[type=checkbox][b-89chi7w4tb] {
    width: 16px;
    height: 16px;
    accent-color: var(--apm-primary);
    cursor: pointer;
}

/* Success state */
.vd-success-state[b-89chi7w4tb] {
    text-align: center;
    padding: 32px 20px;
}

.vd-success-icon[b-89chi7w4tb] {
    font-size: 3rem;
    margin-bottom: 12px;
    animation: vd-pop-b-89chi7w4tb 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes vd-pop-b-89chi7w4tb {
    from { transform: scale(0); }
    to { transform: scale(1); }
}

.vd-success-title[b-89chi7w4tb] {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 6px;
}

.vd-success-sub[b-89chi7w4tb] {
    font-size: 0.78rem;
    color: #6b7280;
    line-height: 1.6;
}

/* ── Toast ── */
.vd-toast[b-89chi7w4tb] {
    position: fixed;
    bottom: 24px;
    right: 24px;
    padding: 14px 20px;
    border-radius: 12px;
    font-size: 0.78rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 10px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18);
    transform: translateY(80px);
    opacity: 0;
    transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
    z-index: 999;
    color: #fff;
}

.vd-toast.show[b-89chi7w4tb] {
    transform: translateY(0);
    opacity: 1;
}

.vd-toast.green[b-89chi7w4tb] { background: #22c55e; }
.vd-toast.blue[b-89chi7w4tb] { background: var(--apm-primary); }
.vd-toast.orange[b-89chi7w4tb] { background: #f59e0b; }

/* ── Back Link ── */
.vd-back[b-89chi7w4tb] {
    font-size: 0.75rem;
    color: #6b7280;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-weight: 500;
    margin-bottom: 20px;
    transition: color 0.15s;
    text-decoration: none;
}

.vd-back:hover[b-89chi7w4tb] {
    color: var(--apm-primary);
}

/* ── VAT Calculation Tab (Momsberegning) ── */

.vvc-section[b-89chi7w4tb] {
    padding: 0 0 24px 0;
}

.vvc-summary-cards[b-89chi7w4tb] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 12px;
    margin-bottom: 24px;
}

.vvc-card[b-89chi7w4tb] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 8px;
    padding: 16px;
}

.vvc-card-label[b-89chi7w4tb] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #6b7280;
    margin-bottom: 6px;
}

.vvc-card-value[b-89chi7w4tb] {
    font-size: 1.4rem;
    font-weight: 700;
    font-family: var(--apm-font-mono);
    margin-bottom: 4px;
}

.vvc-card-sub[b-89chi7w4tb] {
    font-size: 0.72rem;
    color: #9ca3af;
}

.vvc-card-output .vvc-card-value[b-89chi7w4tb] { color: var(--apm-primary); }
.vvc-card-input .vvc-card-value[b-89chi7w4tb] { color: #7c3aed; }
.vvc-card-net.positive .vvc-card-value[b-89chi7w4tb] { color: #dc2626; }
.vvc-card-net.negative .vvc-card-value[b-89chi7w4tb] { color: #16a34a; }
.vvc-card-disc.ok .vvc-card-value[b-89chi7w4tb] { color: #16a34a; }
.vvc-card-disc.warn .vvc-card-value[b-89chi7w4tb] { color: #d97706; }

.vvc-section-title[b-89chi7w4tb] {
    font-size: 0.82rem;
    font-weight: 700;
    color: #374151;
    margin-bottom: 10px;
    padding-bottom: 6px;
    border-bottom: 1px solid var(--apm-border);
}

.vvc-rubrik-section[b-89chi7w4tb] {
    margin-bottom: 24px;
}

.vvc-table[b-89chi7w4tb] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
    font-family: var(--apm-font-mono);
}

.vvc-table th[b-89chi7w4tb] {
    padding: 8px 12px;
    text-align: left;
    font-weight: 600;
    background: var(--apm-surface);
    border-bottom: 1px solid var(--apm-border);
    color: #6b7280;
    font-size: 0.75rem;
}

.vvc-table td[b-89chi7w4tb] {
    padding: 7px 12px;
    border-bottom: 1px solid var(--apm-border);
}

.vvc-table .text-right[b-89chi7w4tb] {
    text-align: right;
}

.vvc-rubrik-row:hover td[b-89chi7w4tb] {
    background: var(--apm-surface);
}

.vvc-rubrik-row.selected td[b-89chi7w4tb] {
    background: #eff6ff;
    border-color: #bfdbfe;
}

.vvc-drill-btn[b-89chi7w4tb] {
    font-size: 0.72rem;
    padding: 3px 10px;
    border-radius: 4px;
    border: 1px solid var(--apm-border);
    background: var(--apm-surface);
    cursor: pointer;
    color: var(--apm-primary);
    font-weight: 500;
    transition: background 0.15s;
}

.vvc-drill-btn:hover[b-89chi7w4tb] {
    background: var(--apm-primary);
    color: white;
}

.vvc-drill-section[b-89chi7w4tb] {
    margin-bottom: 24px;
}

.vvc-desc[b-89chi7w4tb] {
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-family: inherit;
    color: #6b7280;
    font-size: 0.78rem;
}

.vvc-filed-section[b-89chi7w4tb] {
    margin-top: 16px;
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 8px;
    padding: 16px;
}

.vvc-compare-row[b-89chi7w4tb] {
    display: flex;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap;
}

.vvc-compare-item[b-89chi7w4tb] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.vvc-compare-label[b-89chi7w4tb] {
    font-size: 0.72rem;
    color: #6b7280;
    font-weight: 600;
}

.vvc-compare-value[b-89chi7w4tb] {
    font-size: 1.1rem;
    font-weight: 700;
    font-family: var(--apm-font-mono);
}

.vvc-compare-sep[b-89chi7w4tb] {
    font-size: 0.88rem;
    color: #9ca3af;
    font-style: italic;
}

.vvc-compare-disc[b-89chi7w4tb] {
    font-size: 0.88rem;
    font-weight: 700;
    font-family: var(--apm-font-mono);
    padding: 4px 12px;
    border-radius: 4px;
}

.vvc-compare-disc.ok[b-89chi7w4tb] {
    background: #dcfce7;
    color: #15803d;
}

.vvc-compare-disc.warn[b-89chi7w4tb] {
    background: #fef3c7;
    color: #92400e;
}
/* /Components/Pages/Accounting/CustomerDetail.razor.rz.scp.css */
.cd-tabs[b-8ely6gkcpp] {
    margin-top: 16px;
}

.cd-info-grid[b-8ely6gkcpp] {
    display: grid;
    grid-template-columns: 180px 1fr;
    gap: 8px 16px;
    padding: 16px;
    align-items: baseline;
}

.cd-card[b-8ely6gkcpp] {
    padding: 12px 16px;
    margin-bottom: 12px;
    border-radius: 6px;
}

.cd-empty[b-8ely6gkcpp] {
    color: var(--apm-border);
    padding: 16px;
    font-style: italic;
}
/* /Components/Pages/Accounting/CustomerList.razor.rz.scp.css */
.cl-toolbar[b-kmeib9kkzn] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    margin-bottom: 16px;
    flex-wrap: wrap;
}

.cl-search[b-kmeib9kkzn] {
    flex: 1 1 300px;
    min-width: 200px;
}

.cl-filter[b-kmeib9kkzn] {
    width: 150px;
}

.cl-grid[b-kmeib9kkzn] {
    width: 100%;
}
/* /Components/Pages/Accounting/FinancialStatements.razor.rz.scp.css */
.fs-toolbar[b-87lg1r7wgp] {
    display: flex;
    gap: 12px;
    align-items: flex-end;
    margin-bottom: 20px;
    flex-wrap: wrap;
}

.fs-date-controls[b-87lg1r7wgp] {
    display: flex;
    gap: 8px;
    align-items: flex-end;
}

.fs-date-picker[b-87lg1r7wgp] {
    min-width: 160px;
}

.fs-tab-toggle[b-87lg1r7wgp] {
    display: flex;
    border: 1px solid var(--apm-border);
    border-radius: 6px;
    overflow: hidden;
    margin-left: auto;
}

.fs-toggle-btn[b-87lg1r7wgp] {
    padding: 8px 18px;
    font-size: 0.82rem;
    font-weight: 500;
    background: var(--apm-surface);
    border: none;
    cursor: pointer;
    color: #6b7280;
    transition: background 0.15s, color 0.15s;
}

.fs-toggle-btn:not(:last-child)[b-87lg1r7wgp] {
    border-right: 1px solid var(--apm-border);
}

.fs-toggle-btn.active[b-87lg1r7wgp] {
    background: var(--apm-primary);
    color: white;
}

.fs-section[b-87lg1r7wgp] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 8px;
    padding: 24px;
}

.fs-section-title[b-87lg1r7wgp] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--apm-primary);
    margin-bottom: 4px;
}

.fs-period-label[b-87lg1r7wgp] {
    font-size: 0.78rem;
    color: #9ca3af;
    margin-bottom: 20px;
    font-family: var(--apm-font-mono);
}

.fs-subsection-title[b-87lg1r7wgp] {
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #6b7280;
    margin: 16px 0 8px 0;
    padding-bottom: 4px;
    border-bottom: 1px solid var(--apm-border);
}

.fs-line[b-87lg1r7wgp] {
    display: grid;
    grid-template-columns: 1fr auto auto auto;
    gap: 12px;
    align-items: center;
    padding: 6px 8px;
    border-radius: 4px;
}

.fs-line:hover[b-87lg1r7wgp] {
    background: var(--apm-background);
}

.fs-line-name[b-87lg1r7wgp] {
    font-size: 0.83rem;
    font-weight: 500;
}

.fs-line-range[b-87lg1r7wgp] {
    font-size: 0.73rem;
    color: #9ca3af;
    font-family: var(--apm-font-mono);
}

.fs-line-amount[b-87lg1r7wgp] {
    font-family: var(--apm-font-mono);
    font-size: 0.85rem;
    font-weight: 600;
    text-align: right;
    min-width: 120px;
}

.fs-line-amount.positive[b-87lg1r7wgp] { color: #16a34a; }
.fs-line-amount.negative[b-87lg1r7wgp] { color: var(--apm-error, #dc2626); }

.fs-line-count[b-87lg1r7wgp] {
    font-size: 0.72rem;
    color: #9ca3af;
    text-align: right;
    min-width: 50px;
}

.fs-subtotal[b-87lg1r7wgp] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 12px;
    padding: 10px 8px;
    background: var(--apm-background);
    border-radius: 4px;
    font-weight: 600;
    font-size: 0.88rem;
    border-top: 2px solid var(--apm-border);
    font-family: var(--apm-font-mono);
}

.fs-subtotal .positive[b-87lg1r7wgp] { color: #16a34a; }
.fs-subtotal .negative[b-87lg1r7wgp] { color: var(--apm-error, #dc2626); }

.fs-net-result[b-87lg1r7wgp] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 16px;
    padding: 14px 12px;
    border-radius: 6px;
    font-size: 1rem;
    font-weight: 700;
    font-family: var(--apm-font-mono);
}

.fs-net-result.profit[b-87lg1r7wgp] {
    background: #dcfce7;
    color: #15803d;
    border: 1px solid #86efac;
}

.fs-net-result.loss[b-87lg1r7wgp] {
    background: #fee2e2;
    color: #b91c1c;
    border: 1px solid #fca5a5;
}

.fs-balance-columns[b-87lg1r7wgp] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

.fs-balance-col[b-87lg1r7wgp] {
    /* each column */
}

.fs-alert[b-87lg1r7wgp] {
    margin-top: 16px;
}
/* /Components/Pages/Accounting/ManualBookkeeping.razor.rz.scp.css */
.mb-toolbar[b-xaajzok3q4] {
    display: flex;
    gap: 1rem;
    align-items: flex-end;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
}

.mb-toolbar-left[b-xaajzok3q4] {
    display: flex;
    gap: 1rem;
    align-items: flex-end;
    flex-wrap: wrap;
    flex: 1;
}

.mb-toolbar-right[b-xaajzok3q4] {
    display: flex;
    gap: 0.5rem;
    align-items: flex-end;
    flex-shrink: 0;
}

.mb-filter[b-xaajzok3q4] {
    flex: 0 1 180px;
    min-width: 140px;
}

.mb-date[b-xaajzok3q4] {
    flex: 0 1 160px;
    min-width: 130px;
}

.mb-grid[b-xaajzok3q4] {
    font-family: var(--apm-font-mono);
    font-size: 0.85rem;
    border: 1px solid var(--apm-border);
    border-radius: 8px;
    overflow: hidden;
}

.mb-row-locked[b-xaajzok3q4] {
    opacity: 0.7;
    background-color: var(--apm-surface);
}

.mb-voucher[b-xaajzok3q4] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.mb-amount[b-xaajzok3q4] {
    font-family: var(--apm-font-mono);
    text-align: right;
    display: block;
}

/* ── Dialog form ── */

.mb-dialog-form[b-xaajzok3q4] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 0.5rem;
}

.mb-dialog-field[b-xaajzok3q4] {
    flex: 1 1 200px;
    min-width: 160px;
}

.mb-dialog-field-full[b-xaajzok3q4] {
    flex: 1 1 100%;
}

/* ── Lines ── */

.mb-lines-header[b-xaajzok3q4] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.5rem;
}

.mb-line-row[b-xaajzok3q4] {
    display: flex;
    gap: 0.5rem;
    align-items: flex-end;
    flex-wrap: wrap;
    margin-bottom: 0.5rem;
    padding: 0.5rem;
    border: 1px solid var(--apm-border);
    border-radius: 6px;
    background-color: var(--apm-surface);
}

.mb-amount-field[b-xaajzok3q4] {
    flex: 0 1 110px;
    min-width: 90px;
}

.mb-line-desc[b-xaajzok3q4] {
    flex: 1 1 160px;
    min-width: 100px;
}

/* ── Balance indicator ── */

.mb-balance-indicator[b-xaajzok3q4] {
    margin-top: 0.75rem;
    padding: 0.5rem 1rem;
    border-radius: 6px;
    text-align: center;
    font-family: var(--apm-font-mono);
}

.mb-balanced[b-xaajzok3q4] {
    background-color: rgba(76, 175, 80, 0.12);
    border: 1px solid rgba(76, 175, 80, 0.4);
    color: #388e3c;
}

.mb-unbalanced[b-xaajzok3q4] {
    background-color: rgba(244, 67, 54, 0.1);
    border: 1px solid rgba(244, 67, 54, 0.4);
    color: #c62828;
}
/* /Components/Pages/Accounting/MomsOverview.razor.rz.scp.css */
/* ══════════════════════════════════════
   MOMS OVERVIEW — Custom Design System
   Matches vat-overview-v2.html mockup
══════════════════════════════════════ */

/* ── Stats Row ── */
.vo-stats[b-55y032dads] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin-bottom: 24px;
}

.vo-stat-card[b-55y032dads] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 14px;
    padding: 18px 20px;
    position: relative;
    overflow: hidden;
}

.vo-stat-bar[b-55y032dads] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
}

.vo-stat-num[b-55y032dads] {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 3px;
    letter-spacing: -0.5px;
    font-family: var(--apm-font-mono);
}

.vo-stat-label[b-55y032dads] {
    font-size: 0.62rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #6b7280;
    font-weight: 600;
}

/* ── Filter Bar ── */
.vo-filter-bar[b-55y032dads] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 14px;
    padding: 10px 16px;
    margin-bottom: 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.vo-chips[b-55y032dads] {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
}

.vo-chip[b-55y032dads] {
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
    border: none;
    background: transparent;
    color: #6b7280;
    white-space: nowrap;
    font-family: 'DM Sans', sans-serif;
}

.vo-chip:hover[b-55y032dads] {
    background: rgba(0,0,0,0.04);
    color: #111827;
}

.vo-chip.active[b-55y032dads] {
    background: var(--apm-primary);
    color: #fff;
}

.vo-chip-count[b-55y032dads] {
    font-size: 0.6rem;
    font-weight: 700;
    margin-left: 4px;
    opacity: 0.7;
}

/* ── Search ── */
.vo-search[b-55y032dads] {
    position: relative;
    flex: 1;
    max-width: 260px;
    min-width: 140px;
}

.vo-search-icon[b-55y032dads] {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #9ca3af;
    pointer-events: none;
}

.vo-search-input[b-55y032dads] {
    width: 100%;
    padding: 6px 30px 6px 32px;
    border: 1px solid var(--apm-border);
    border-radius: 8px;
    font-size: 0.78rem;
    font-weight: 500;
    font-family: 'DM Sans', sans-serif;
    color: #111827;
    background: var(--apm-surface);
    transition: border-color 0.15s;
    outline: none;
    box-sizing: border-box;
}

.vo-search-input[b-55y032dads]::placeholder {
    color: #9ca3af;
    font-weight: 400;
}

.vo-search-input:focus[b-55y032dads] {
    border-color: var(--apm-primary);
}

.vo-search-clear[b-55y032dads] {
    position: absolute;
    right: 4px;
    top: 50%;
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    border: none;
    background: transparent;
    color: #9ca3af;
    font-size: 1rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    transition: color 0.15s, background 0.15s;
    padding: 0;
    line-height: 1;
}

.vo-search-clear:hover[b-55y032dads] {
    color: #111827;
    background: rgba(0,0,0,0.05);
}

.vo-filter-right[b-55y032dads] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.vo-select[b-55y032dads] {
    padding: 6px 28px 6px 12px;
    border: 1px solid var(--apm-border);
    border-radius: 8px;
    font-size: 0.78rem;
    font-weight: 600;
    font-family: 'DM Sans', sans-serif;
    color: #111827;
    background: var(--apm-surface);
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M3 5l3 3 3-3'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 8px center;
    transition: border-color 0.15s;
}

.vo-select:focus[b-55y032dads] {
    outline: none;
    border-color: var(--apm-primary);
}

/* ── Deadline Group ── */
.vo-deadline-group[b-55y032dads] {
    margin-bottom: 28px;
}

.vo-dg-header[b-55y032dads] {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 10px;
}

.vo-dg-date[b-55y032dads] {
    font-size: 0.82rem;
    font-weight: 700;
    white-space: nowrap;
    color: #111827;
}

.vo-dg-countdown[b-55y032dads] {
    font-size: 0.68rem;
    font-weight: 700;
    padding: 2px 10px;
    border-radius: 20px;
    white-space: nowrap;
}

.vo-dg-countdown.urgent[b-55y032dads] {
    background: #fef2f2;
    color: var(--apm-error);
}

.vo-dg-countdown.soon[b-55y032dads] {
    background: #fffbeb;
    color: #f59e0b;
}

.vo-dg-countdown.normal[b-55y032dads] {
    background: #eff6ff;
    color: var(--apm-info);
}

.vo-dg-line[b-55y032dads] {
    flex: 1;
    height: 1px;
    background: var(--apm-border);
}

.vo-dg-stats[b-55y032dads] {
    font-size: 0.7rem;
    color: #6b7280;
    white-space: nowrap;
    font-weight: 500;
}

/* Deadline progress bar */
.vo-dg-progress[b-55y032dads] {
    height: 4px;
    background: #f3f4f6;
    border-radius: 2px;
    display: flex;
    overflow: hidden;
    margin-bottom: 10px;
}

.vo-dg-seg[b-55y032dads] {
    height: 100%;
    transition: width 0.4s ease;
}

.vo-dg-seg.done[b-55y032dads] {
    background: #22c55e;
}

.vo-dg-seg.remaining[b-55y032dads] {
    background: #f3f4f6;
}

/* ── Table ── */
.vo-table-wrapper[b-55y032dads] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 14px;
    overflow: hidden;
}

.vo-table[b-55y032dads] {
    width: 100%;
    border-collapse: collapse;
}

.vo-table thead[b-55y032dads] {
    background: var(--apm-background);
}

.vo-table thead th[b-55y032dads] {
    padding: 11px 16px;
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: #6b7280;
    text-align: left;
    border-bottom: 1px solid var(--apm-border);
}

.vo-table thead th:first-child[b-55y032dads] {
    padding-left: 20px;
}

.vo-table tbody tr[b-55y032dads] {
    border-bottom: 1px solid #f3f4f6;
    transition: background 0.1s;
    cursor: pointer;
}

.vo-table tbody tr:last-child[b-55y032dads] {
    border-bottom: none;
}

.vo-table tbody tr:hover[b-55y032dads] {
    background: rgba(79, 70, 229, 0.04);
}

.vo-table tbody td[b-55y032dads] {
    padding: 12px 16px;
    font-size: 0.78rem;
    vertical-align: middle;
}

.vo-table tbody td:first-child[b-55y032dads] {
    padding-left: 20px;
}

/* Client cell */
.vo-client-cell[b-55y032dads] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.vo-avatar[b-55y032dads] {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.62rem;
    font-weight: 700;
    color: #fff;
    flex-shrink: 0;
}

.vo-client-name[b-55y032dads] {
    font-weight: 600;
    font-size: 0.82rem;
    color: #111827;
    line-height: 1.3;
}

.vo-client-cvr[b-55y032dads] {
    font-size: 0.66rem;
    color: #9ca3af;
    font-family: var(--apm-font-mono);
}

/* VAT frequency badge */
.vo-vat-badge[b-55y032dads] {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.65rem;
    font-weight: 700;
    white-space: nowrap;
}

.vo-vat-badge.vat-quarterly[b-55y032dads] {
    background: #eff6ff;
    color: var(--apm-info);
}

.vo-vat-badge.vat-semi[b-55y032dads] {
    background: #fff7ed;
    color: #ea580c;
}

.vo-vat-badge.vat-monthly[b-55y032dads] {
    background: #f0fdf4;
    color: #22c55e;
}

.vo-vat-badge.vat-annual[b-55y032dads] {
    background: #f5f3ff;
    color: #8b5cf6;
}

/* Period cell */
.vo-period-cell[b-55y032dads] {
    font-weight: 600;
    font-size: 0.82rem;
}

.vo-period-label[b-55y032dads] {
    display: block;
    font-size: 0.66rem;
    color: #9ca3af;
    font-weight: 400;
}

/* Status */
.vo-status[b-55y032dads] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

.vo-status-dot[b-55y032dads] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex-shrink: 0;
}

.vo-status.s-filed[b-55y032dads] { color: #22c55e; }
.vo-status.s-filed .vo-status-dot[b-55y032dads] { background: #22c55e; }

.vo-status.s-inprogress[b-55y032dads] { color: #f59e0b; }
.vo-status.s-inprogress .vo-status-dot[b-55y032dads] { background: #f59e0b; }

.vo-status.s-overdue[b-55y032dads] { color: var(--apm-error); }
.vo-status.s-overdue .vo-status-dot[b-55y032dads] { background: var(--apm-error); }

.vo-status.s-default[b-55y032dads] { color: #6b7280; }
.vo-status.s-default .vo-status-dot[b-55y032dads] { background: #9ca3af; }

/* Assigned */
.vo-assigned[b-55y032dads] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.vo-assigned-avatar[b-55y032dads] {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.52rem;
    font-weight: 700;
    color: #fff;
    flex-shrink: 0;
}

.vo-assigned-name[b-55y032dads] {
    font-size: 0.72rem;
    font-weight: 500;
}

.vo-unassigned[b-55y032dads] {
    font-size: 0.72rem;
    color: #9ca3af;
    font-style: italic;
}

/* Action button */
.vo-action-btn[b-55y032dads] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    border: 1px solid var(--apm-border);
    background: var(--apm-surface);
    color: #6b7280;
    font-size: 0.75rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s;
    font-family: 'DM Sans', sans-serif;
}

.vo-action-btn:hover[b-55y032dads] {
    border-color: var(--apm-primary);
    color: var(--apm-primary);
    background: rgba(79, 70, 229, 0.04);
}
/* /Components/Pages/Accounting/SafTExport.razor.rz.scp.css */
.se-readiness-row[b-ds4mcgcb9p] {
    display: flex;
    gap: 2rem;
    align-items: flex-start;
    flex-wrap: wrap;
}

.se-readiness-stat[b-ds4mcgcb9p] {
    flex: 1 1 200px;
    min-width: 180px;
}

.se-issues[b-ds4mcgcb9p] {
    max-height: 200px;
    overflow-y: auto;
}

.se-toolbar[b-ds4mcgcb9p] {
    margin-bottom: 1rem;
}

.se-form-row[b-ds4mcgcb9p] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: flex-start;
}

.se-date-picker[b-ds4mcgcb9p] {
    min-width: 180px;
    flex: 0 0 auto;
}

.se-tax-entity[b-ds4mcgcb9p] {
    flex: 1 1 250px;
    min-width: 200px;
}

.se-actions[b-ds4mcgcb9p] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.se-errors[b-ds4mcgcb9p] {
    max-height: 300px;
    overflow-y: auto;
}

.se-grid[b-ds4mcgcb9p] {
    border-radius: var(--mud-default-borderradius);
    border: 1px solid var(--apm-border, var(--mud-palette-lines-default));
}
/* /Components/Pages/Accounting/SafTReadiness.razor.rz.scp.css */
.saft-summary[b-hezwm4a1dv] {
    margin-bottom: 1.5rem;
}

.saft-status-card[b-hezwm4a1dv] {
    border-radius: 8px;
    border: 2px solid transparent;
}

.saft-ready[b-hezwm4a1dv] {
    border-color: var(--apm-success, #4caf50);
    background-color: rgba(76, 175, 80, 0.05);
}

.saft-not-ready[b-hezwm4a1dv] {
    border-color: var(--apm-error, #f44336);
    background-color: rgba(244, 67, 54, 0.05);
}

.saft-status-header[b-hezwm4a1dv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.saft-progress-section[b-hezwm4a1dv] {
    margin-bottom: 1.5rem;
}

.saft-progress-row[b-hezwm4a1dv] {
    display: flex;
    gap: 2rem;
    flex-wrap: wrap;
}

.saft-progress-item[b-hezwm4a1dv] {
    flex: 1 1 300px;
}

.saft-progress-label[b-hezwm4a1dv] {
    font-family: var(--apm-font-mono);
    font-size: 0.85rem;
    margin-bottom: 0.4rem;
}

.saft-issues[b-hezwm4a1dv] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.saft-issue-card[b-hezwm4a1dv] {
    border-radius: 6px;
}

.saft-issue-content[b-hezwm4a1dv] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.75rem 1rem !important;
}

.saft-issue-severity[b-hezwm4a1dv] {
    flex-shrink: 0;
}

.saft-issue-details[b-hezwm4a1dv] {
    flex: 1;
}

.saft-issue-category[b-hezwm4a1dv] {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    opacity: 0.7;
}

.saft-issue-message[b-hezwm4a1dv] {
    font-family: var(--apm-font-mono);
    font-size: 0.875rem;
}

.saft-stats-grid[b-hezwm4a1dv] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.saft-stat-card[b-hezwm4a1dv] {
    flex: 1 1 150px;
    border-radius: 8px;
    border: 1px solid var(--apm-border);
}

.saft-actions[b-hezwm4a1dv] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}
/* /Components/Pages/Accounting/SupplierDetail.razor.rz.scp.css */
.sd-tabs[b-kqi0kffddy] {
    margin-top: 16px;
}

.sd-info-grid[b-kqi0kffddy] {
    display: grid;
    grid-template-columns: 180px 1fr;
    gap: 8px 16px;
    padding: 16px;
    align-items: baseline;
}

.sd-card[b-kqi0kffddy] {
    padding: 12px 16px;
    margin-bottom: 12px;
    border-radius: 6px;
}

.sd-empty[b-kqi0kffddy] {
    color: var(--apm-border);
    padding: 16px;
    font-style: italic;
}
/* /Components/Pages/Accounting/SupplierList.razor.rz.scp.css */
.sl-toolbar[b-8bso230ifc] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    margin-bottom: 16px;
    flex-wrap: wrap;
}

.sl-search[b-8bso230ifc] {
    flex: 1 1 300px;
    min-width: 200px;
}

.sl-filter[b-8bso230ifc] {
    width: 150px;
}

.sl-grid[b-8bso230ifc] {
    width: 100%;
}
/* /Components/Pages/Accounting/TrialBalance.razor.rz.scp.css */
.tb-toolbar[b-l4zv1ksu9z] {
    display: flex;
    gap: 12px;
    align-items: flex-end;
    margin-bottom: 20px;
    flex-wrap: wrap;
}

.tb-date-picker[b-l4zv1ksu9z] {
    min-width: 160px;
}

.tb-alert[b-l4zv1ksu9z] {
    margin-bottom: 16px;
}

.tb-group[b-l4zv1ksu9z] {
    margin-bottom: 16px;
    border: 1px solid var(--apm-border);
    border-radius: 6px;
    overflow: hidden;
}

.tb-group-header[b-l4zv1ksu9z] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    background: var(--apm-surface);
    cursor: pointer;
    user-select: none;
    border-bottom: 1px solid var(--apm-border);
}

.tb-group-header:hover[b-l4zv1ksu9z] {
    background: var(--apm-background);
}

.tb-group-icon[b-l4zv1ksu9z] {
    font-size: 0.75rem;
    color: var(--apm-primary);
}

.tb-group-title[b-l4zv1ksu9z] {
    font-weight: 600;
    font-size: 0.85rem;
    flex: 1;
}

.tb-group-count[b-l4zv1ksu9z] {
    font-size: 0.75rem;
    color: #6b7280;
}

.tb-table[b-l4zv1ksu9z] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
    font-family: var(--apm-font-mono);
}

.tb-table th[b-l4zv1ksu9z] {
    padding: 8px 12px;
    text-align: left;
    font-weight: 600;
    background: var(--apm-surface);
    border-bottom: 1px solid var(--apm-border);
    color: #6b7280;
    font-size: 0.75rem;
    white-space: nowrap;
}

.tb-table td[b-l4zv1ksu9z] {
    padding: 6px 12px;
    border-bottom: 1px solid var(--apm-border);
    white-space: nowrap;
}

.tb-table tr:last-child td[b-l4zv1ksu9z] {
    border-bottom: none;
}

.tb-table tr:hover td[b-l4zv1ksu9z] {
    background: var(--apm-surface);
}

.text-right[b-l4zv1ksu9z] {
    text-align: right !important;
}

.tb-account-num[b-l4zv1ksu9z] {
    color: var(--apm-primary);
    font-weight: 500;
}

.tb-closing.has-value[b-l4zv1ksu9z] {
    font-weight: 600;
}

.tb-subtotal[b-l4zv1ksu9z] {
    background: var(--apm-surface);
    font-weight: 600;
}

.tb-subtotal td[b-l4zv1ksu9z] {
    border-top: 2px solid var(--apm-border);
    border-bottom: none;
}

.tb-grand-total[b-l4zv1ksu9z] {
    margin-top: 20px;
    border: 2px solid var(--apm-primary);
    border-radius: 6px;
    overflow: hidden;
}

.tb-totals-table th[b-l4zv1ksu9z] {
    background: var(--apm-primary);
    color: white;
}

.tb-grand-row td[b-l4zv1ksu9z] {
    font-weight: 700;
    font-size: 0.88rem;
}

.tb-note[b-l4zv1ksu9z] {
    margin-top: 12px;
    font-size: 0.75rem;
    color: #9ca3af;
    font-style: italic;
}
/* /Components/Pages/Accounting/VatCodeManagement.razor.rz.scp.css */
.vcm-toolbar[b-hmd4xlqhoc] {
    display: flex;
    gap: 1rem;
    align-items: flex-end;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
}

.vcm-search[b-hmd4xlqhoc] {
    flex: 1 1 260px;
    min-width: 200px;
}

.vcm-filter[b-hmd4xlqhoc] {
    flex: 0 1 180px;
    min-width: 140px;
}

.vcm-grid[b-hmd4xlqhoc] {
    font-family: var(--apm-font-mono);
    font-size: 0.85rem;
    border: 1px solid var(--apm-border);
    border-radius: 8px;
    overflow: hidden;
}
/* /Components/Pages/Accounting/VatCodeMapping.razor.rz.scp.css */
.vcmm-progress-bar[b-dok95cyd9j] {
    margin-bottom: 1.5rem;
}

.vcmm-progress-label[b-dok95cyd9j] {
    font-family: var(--apm-font-mono);
    font-size: 0.85rem;
    color: var(--apm-surface);
    margin-bottom: 0.4rem;
}

.am-toolbar[b-dok95cyd9j] {
    display: flex;
    gap: 1rem;
    align-items: flex-end;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
}

.am-search[b-dok95cyd9j] {
    flex: 1 1 260px;
    min-width: 200px;
}

.am-filter[b-dok95cyd9j] {
    flex: 0 1 180px;
    min-width: 140px;
}

.am-grid[b-dok95cyd9j] {
    font-family: var(--apm-font-mono);
    font-size: 0.85rem;
    border: 1px solid var(--apm-border);
    border-radius: 8px;
    overflow: hidden;
}
/* /Components/Pages/Documentation/ClientDocumentation.razor.rz.scp.css */
.cd-page[b-bytpi3k8k8] {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 100px);
    overflow: hidden;
}

/* Top bar */
.cd-topbar[b-bytpi3k8k8] {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--apm-border);
    padding: 0 24px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;
    z-index: 10;
}

.cd-topbar-left[b-bytpi3k8k8] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.cd-back-btn[b-bytpi3k8k8]  .mud-button-root {
    font-size: 0.75rem;
    color: var(--apm-text-muted);
    text-transform: none;
    padding: 4px 10px;
    min-width: 0;
    border-radius: 10px;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.cd-back-btn[b-bytpi3k8k8]  .mud-button-root:hover {
    color: var(--apm-primary);
    background: var(--apm-primary-bg);
}

.cd-topbar-title[b-bytpi3k8k8] {
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.2;
    color: var(--apm-text-primary);
}

.cd-topbar-sub[b-bytpi3k8k8] {
    font-size: 0.7rem;
    color: var(--apm-text-muted);
}

/* Stats cards */
.cd-stats[b-bytpi3k8k8] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    padding: 16px 24px;
    flex-shrink: 0;
}

.cd-stat-card[b-bytpi3k8k8] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 14px;
    padding: 18px 20px;
    position: relative;
    overflow: hidden;
}

.cd-stat-card[b-bytpi3k8k8]::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 3px;
}

.cd-stat-card:nth-child(1)[b-bytpi3k8k8]::before { background: var(--apm-warning); }
.cd-stat-card:nth-child(2)[b-bytpi3k8k8]::before { background: var(--apm-success); }
.cd-stat-card:nth-child(3)[b-bytpi3k8k8]::before { background: var(--apm-error); }
.cd-stat-card:nth-child(4)[b-bytpi3k8k8]::before { background: var(--apm-text-muted); }

.cd-stat-num[b-bytpi3k8k8] {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 3px;
    letter-spacing: -0.5px;
}

.cd-stat-lbl[b-bytpi3k8k8] {
    font-size: 0.62rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #6b7280;
    font-weight: 600;
}

.cd-stat-sub[b-bytpi3k8k8] {
    font-size: 0.68rem;
    color: #9ca3af;
    margin-top: 4px;
}

/* Custom tab bar */
.cd-tab-bar[b-bytpi3k8k8] {
    display: flex;
    align-items: center;
    padding: 0 24px;
    border-bottom: 1px solid var(--apm-border);
    background: var(--apm-surface);
    flex-shrink: 0;
    gap: 2px;
}

.cd-tab-btn[b-bytpi3k8k8] {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 13px 16px;
    font-size: 0.78rem;
    font-weight: 500;
    color: var(--apm-text-secondary);
    background: none;
    border: none;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
    font-family: inherit;
}

.cd-tab-btn .material-icons[b-bytpi3k8k8] {
    font-size: 17px;
}

.cd-tab-btn:hover[b-bytpi3k8k8] {
    color: var(--apm-primary);
}

.cd-tab-btn.active[b-bytpi3k8k8] {
    color: var(--apm-primary);
    border-bottom-color: var(--apm-primary);
    font-weight: 600;
}

/* 3-pane main area */
.cd-main[b-bytpi3k8k8] {
    flex: 1;
    display: flex;
    overflow: hidden;
    min-height: 0;
}

/* Left column (queue + detail) */
.cd-left-col[b-bytpi3k8k8] {
    width: var(--split-left);
    display: flex;
    overflow: hidden;
    background: var(--apm-background);
}

/* Resize handle */
.cd-resize-handle[b-bytpi3k8k8] {
    width: 5px;
    cursor: col-resize;
    background: transparent;
    position: relative;
    flex-shrink: 0;
    z-index: 5;
    transition: background 0.15s;
}

.cd-resize-handle:hover[b-bytpi3k8k8],
.cd-resize-handle.active[b-bytpi3k8k8] {
    background: rgba(67, 97, 238, 0.15);
}

.cd-resize-handle[b-bytpi3k8k8]::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 3px;
    height: 32px;
    border-radius: 2px;
    background: var(--apm-border);
    transition: background 0.15s;
}

.cd-resize-handle:hover[b-bytpi3k8k8]::after,
.cd-resize-handle.active[b-bytpi3k8k8]::after {
    background: var(--apm-primary);
}

/* Tab content (non-review tabs) */
.cd-tab-content[b-bytpi3k8k8] {
    flex: 1;
    overflow-y: auto;
    padding: 24px;
    min-height: 0;
}

/* Tab badge (e.g. Afvist count) */
.cd-tab-badge[b-bytpi3k8k8] {
    background: var(--apm-error);
    color: #fff;
    border-radius: 10px;
    padding: 1px 6px;
    font-size: .6rem;
    font-weight: 700;
    margin-left: 4px;
}

/* ── AFVIST TAB ─────────────────────────────────── */

.denied-intro[b-bytpi3k8k8] {
    background: var(--apm-error-bg);
    border: 1px solid rgba(239, 68, 68, .2);
    border-radius: 12px;
    padding: 14px 18px;
    margin-bottom: 16px;
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.di-icon[b-bytpi3k8k8] { font-size: 1.2rem; margin-top: 1px; }

.di-text[b-bytpi3k8k8] { font-size: .78rem; line-height: 1.55; color: var(--apm-text-primary); }

.denied-list[b-bytpi3k8k8] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 16px;
}

.denied-card[b-bytpi3k8k8] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 10px;
    overflow: hidden;
}

.dc-head[b-bytpi3k8k8] {
    padding: 12px 16px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.dc-check[b-bytpi3k8k8] {
    width: 20px;
    height: 20px;
    border-radius: 6px;
    border: 2px solid var(--apm-border);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .15s;
    flex-shrink: 0;
    font-size: .65rem;
    color: #fff;
}

.dc-check.checked[b-bytpi3k8k8] {
    background: var(--apm-primary);
    border-color: var(--apm-primary);
}

.dc-info[b-bytpi3k8k8] { flex: 1; min-width: 0; }

.dc-title[b-bytpi3k8k8] {
    font-size: .8rem;
    font-weight: 700;
    margin-bottom: 3px;
    display: flex;
    align-items: center;
    gap: 6px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dc-voucher[b-bytpi3k8k8] {
    font-family: var(--apm-font-mono);
    color: var(--apm-primary);
    font-size: .75rem;
    flex-shrink: 0;
}

.dc-sub[b-bytpi3k8k8] {
    font-size: .68rem;
    color: var(--apm-text-muted);
    display: flex;
    gap: 10px;
}

.dc-amount[b-bytpi3k8k8] {
    font-family: var(--apm-font-mono);
    font-size: .71rem;
    font-weight: 600;
}

.dc-reason[b-bytpi3k8k8] {
    margin: 0 14px 12px;
    padding: 9px 12px;
    background: var(--apm-error-bg);
    border-radius: 7px;
    font-size: .72rem;
    color: var(--apm-error);
}

.dc-reason-lbl[b-bytpi3k8k8] {
    font-size: .58rem;
    text-transform: uppercase;
    letter-spacing: .7px;
    font-weight: 700;
    margin-bottom: 3px;
}

.cd-send-bar[b-bytpi3k8k8] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 12px;
    padding: 16px 18px;
    margin-top: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.sb-count-text[b-bytpi3k8k8] {
    font-size: .92rem;
    color: var(--apm-text-primary);
    margin-bottom: 2px;
}

.sb-count-text strong[b-bytpi3k8k8] {
    font-size: 1.1rem;
    color: var(--apm-primary);
}

.sb-sub[b-bytpi3k8k8] {
    font-size: .7rem;
    color: var(--apm-text-muted);
    margin-top: 2px;
}

/* Shared color utilities */
.neg[b-bytpi3k8k8] { color: var(--apm-error); }
.pos[b-bytpi3k8k8] { color: var(--apm-success); }

/* Status badges */
.badge[b-bytpi3k8k8] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 3px 9px;
    border-radius: 20px;
    font-size: .63rem;
    font-weight: 700;
    white-space: nowrap;
}

.b-waiting[b-bytpi3k8k8]  { background: var(--apm-warning-bg); color: var(--apm-warning); }
.b-review[b-bytpi3k8k8]   { background: rgba(124, 58, 237, .1); color: #7c3aed; }
.b-done[b-bytpi3k8k8]     { background: var(--apm-success-bg); color: var(--apm-success); }
.b-denied[b-bytpi3k8k8]   { background: var(--apm-error-bg); color: var(--apm-error); }
.b-approved[b-bytpi3k8k8] { background: var(--apm-success-bg); color: var(--apm-success); }

/* ── ANMODNINGER CARDS ───────────────────────────── */

.request-list[b-bytpi3k8k8] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.req-card[b-bytpi3k8k8] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: 12px;
    overflow: hidden;
    transition: box-shadow .15s;
}

.req-card:hover[b-bytpi3k8k8] { box-shadow: var(--apm-shadow-md); }

.rc-head[b-bytpi3k8k8] {
    padding: 14px 18px;
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
    user-select: none;
}

.rc-icon[b-bytpi3k8k8] {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .85rem;
    flex-shrink: 0;
}

.rc-main[b-bytpi3k8k8] { flex: 1; min-width: 0; }

.rc-title[b-bytpi3k8k8] {
    font-size: .82rem;
    font-weight: 700;
    margin-bottom: 3px;
}

.rc-sub[b-bytpi3k8k8] {
    font-size: .69rem;
    color: var(--apm-text-muted);
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 6px;
}

.rc-progress[b-bytpi3k8k8] {
    height: 4px;
    background: var(--apm-background);
    border-radius: 2px;
    width: 160px;
    overflow: hidden;
}

.rc-progress-fill[b-bytpi3k8k8] {
    height: 100%;
    border-radius: 2px;
    transition: width .4s;
}

.rc-right[b-bytpi3k8k8] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 5px;
    flex-shrink: 0;
}

.rc-chevron[b-bytpi3k8k8] {
    font-size: .65rem !important;
    color: var(--apm-text-muted);
    transition: transform .2s;
}

.req-card.expanded .rc-chevron[b-bytpi3k8k8] { transform: rotate(180deg); }

.rc-counters[b-bytpi3k8k8] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.rc-cnt[b-bytpi3k8k8] {
    font-size: .63rem;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 10px;
    white-space: nowrap;
}

.rc-cnt-green[b-bytpi3k8k8]  { background: var(--apm-success-bg); color: var(--apm-success); }
.rc-cnt-red[b-bytpi3k8k8]    { background: var(--apm-error-bg); color: var(--apm-error); }
.rc-cnt-yellow[b-bytpi3k8k8] { background: var(--apm-warning-bg); color: var(--apm-warning); }
.rc-cnt-muted[b-bytpi3k8k8]  { background: var(--apm-background); color: var(--apm-text-secondary); }
.rc-cnt-total[b-bytpi3k8k8]  { font-size: .7rem; color: var(--apm-text-muted); }

/* Card body (expanded view) */
.rc-body[b-bytpi3k8k8] { border-top: 1px solid var(--apm-border); }

/* Entries table */
.entries-wrap[b-bytpi3k8k8] { padding: 0 18px 14px; }

.ew-title[b-bytpi3k8k8] {
    font-size: .62rem;
    text-transform: uppercase;
    letter-spacing: .8px;
    color: var(--apm-text-muted);
    font-weight: 700;
    margin: 14px 0 8px;
}

.entries-table[b-bytpi3k8k8] {
    width: 100%;
    border-collapse: collapse;
    font-size: .73rem;
}

.entries-table th[b-bytpi3k8k8] {
    padding: 8px 14px;
    text-align: left;
    font-size: .59rem;
    text-transform: uppercase;
    letter-spacing: .7px;
    color: var(--apm-text-muted);
    font-weight: 600;
    border-bottom: 1px solid var(--apm-border);
    background: var(--apm-background);
}

.entries-table td[b-bytpi3k8k8] {
    padding: 9px 14px;
    border-bottom: 1px solid var(--apm-border);
    vertical-align: middle;
}

.entries-table tr:last-child td[b-bytpi3k8k8] { border-bottom: none; }
.entries-table tr:hover td[b-bytpi3k8k8] { background: #fafafa; }

.et-voucher[b-bytpi3k8k8] {
    font-family: var(--apm-font-mono);
    font-size: .7rem;
    color: var(--apm-primary);
}

.et-desc[b-bytpi3k8k8] {
    max-width: 200px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 500;
}

.et-amt[b-bytpi3k8k8] {
    font-family: var(--apm-font-mono);
    font-size: .71rem;
    white-space: nowrap;
}

.sdot[b-bytpi3k8k8] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    flex-shrink: 0;
    display: inline-block;
}

.et-sc[b-bytpi3k8k8] {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: .65rem;
    font-weight: 600;
    white-space: nowrap;
}

/* Timeline */
.timeline[b-bytpi3k8k8] {
    padding: 14px 18px;
    background: var(--apm-background);
    border-top: 1px solid var(--apm-border);
}

.tl-title[b-bytpi3k8k8] {
    font-size: .6rem;
    text-transform: uppercase;
    letter-spacing: .8px;
    color: var(--apm-text-muted);
    font-weight: 700;
    margin-bottom: 10px;
}

.tl-item[b-bytpi3k8k8] {
    display: flex;
    gap: 10px;
    position: relative;
}

.tl-item:not(:last-child)[b-bytpi3k8k8]::before {
    content: '';
    position: absolute;
    left: 11px;
    top: 18px;
    bottom: -4px;
    width: 1px;
    background: var(--apm-border);
}

.tl-dot[b-bytpi3k8k8] {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .6rem;
    font-weight: 700;
    flex-shrink: 0;
    margin-top: 1px;
}

.tl-right[b-bytpi3k8k8] {
    flex: 1;
    padding-bottom: 12px;
}

.tl-action[b-bytpi3k8k8] {
    font-size: .75rem;
    font-weight: 600;
    margin-bottom: 1px;
}

.tl-note[b-bytpi3k8k8] {
    font-size: .69rem;
    color: var(--apm-text-muted);
    margin-bottom: 1px;
    font-style: italic;
}

.tl-time[b-bytpi3k8k8] {
    font-size: .62rem;
    color: var(--apm-text-muted);
}

/* Bank item filter chips */
.bank-filter-row[b-bytpi3k8k8] {
    display: flex;
    gap: 6px;
    margin-bottom: 10px;
    flex-wrap: nowrap;
}

.bank-filter-chip[b-bytpi3k8k8] {
    padding: 4px 11px;
    border-radius: 20px;
    font-size: 0.67rem;
    font-weight: 600;
    border: 1px solid var(--apm-border);
    background: transparent;
    color: var(--apm-text-secondary);
    cursor: pointer;
    transition: all 0.15s;
    font-family: inherit;
}

.bank-filter-chip:hover[b-bytpi3k8k8] {
    border-color: var(--apm-primary);
    color: var(--apm-primary);
    background: var(--apm-primary-bg);
}

.bank-filter-chip.active[b-bytpi3k8k8] {
    background: var(--apm-warning-bg);
    border-color: var(--apm-warning);
    color: var(--apm-warning);
}

/* Responsive */
@media (max-width: 960px) {
    .cd-main[b-bytpi3k8k8] {
        flex-direction: column;
    }

    .cd-left-col[b-bytpi3k8k8] {
        width: 100%;
        max-height: 55vh;
    }

    .cd-resize-handle[b-bytpi3k8k8] {
        display: none;
    }

    .cd-topbar[b-bytpi3k8k8] {
        padding: 0 16px;
    }
}
/* /Components/Pages/Documentation/DocumentationHub.razor.rz.scp.css */
/* DocumentationHub — minimal page-level styles; shared components handle most styling */
/* /Components/Pages/Home.razor.rz.scp.css */
.metric-card[b-wyhux8h8z3] {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.metric-card:hover[b-wyhux8h8z3] {
    transform: translateY(-2px);
    box-shadow: var(--apm-shadow-lg) !important;
}

.metric-icon-wrapper[b-wyhux8h8z3] {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.quick-action-card[b-wyhux8h8z3] {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    text-align: center;
}

.quick-action-card:hover[b-wyhux8h8z3] {
    transform: translateY(-2px);
    box-shadow: var(--apm-shadow-lg) !important;
}
/* /Components/Pages/Login.razor.rz.scp.css */
.login-container[b-dsw430u1e5] {
    display: flex;
    min-height: 100vh;
    background: var(--apm-background);
}

.login-branding[b-dsw430u1e5] {
    flex: 0 0 45%;
    background: linear-gradient(135deg, var(--apm-primary) 0%, var(--apm-primary-dark) 50%, var(--apm-secondary) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    position: relative;
    overflow: hidden;
}

.login-branding[b-dsw430u1e5]::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle at 30% 50%, rgba(255,255,255,0.08) 0%, transparent 50%);
    pointer-events: none;
}

.branding-content[b-dsw430u1e5] {
    position: relative;
    z-index: 1;
    text-align: center;
}

.brand-logo[b-dsw430u1e5] {
    width: 80px;
    height: 80px;
    border-radius: 20px;
    background: rgba(255,255,255,0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    backdrop-filter: blur(10px);
}

.brand-features[b-dsw430u1e5] {
    margin-top: 2.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    text-align: left;
}

.brand-feature-item[b-dsw430u1e5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.login-form-side[b-dsw430u1e5] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3rem;
}

.login-form-wrapper[b-dsw430u1e5] {
    width: 100%;
    max-width: 420px;
}

@media (max-width: 960px) {
    .login-container[b-dsw430u1e5] {
        flex-direction: column;
    }

    .login-branding[b-dsw430u1e5] {
        flex: none;
        padding: 2rem;
        min-height: auto;
    }

    .brand-features[b-dsw430u1e5] {
        display: none;
    }

    .login-form-side[b-dsw430u1e5] {
        padding: 2rem;
    }
}
/* /Components/Pages/Profile/ProfilePage.razor.rz.scp.css */
/* ==========================================================================
   Profile Page — Design: Hierarchy / Sections
   Matches Settings page aesthetic with pro-* prefix
   ========================================================================== */

/* ── Page Container ── */
.pro-profile-page[b-jgt2mzlza2] {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 24px 80px;
    animation: proFadeIn-b-jgt2mzlza2 0.35s ease-out;
}

@keyframes proFadeIn-b-jgt2mzlza2 {
    from { opacity: 0; transform: translateY(12px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Hero Header ── */
.pro-hero[b-jgt2mzlza2] {
    padding: 48px 0 40px;
    border-bottom: 2px solid var(--apm-border);
    margin-bottom: 40px;
}

.pro-hero-label[b-jgt2mzlza2] {
    font-family: var(--apm-font-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.16em;
    color: var(--apm-primary);
    margin-bottom: 20px;
    text-transform: uppercase;
}

.pro-hero-identity[b-jgt2mzlza2] {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 20px;
}

/* ── Avatar ── */
.pro-avatar[b-jgt2mzlza2] {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: var(--apm-primary);
    color: #fff;
    font-size: 28px;
    font-weight: 700;
    letter-spacing: -0.02em;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-family: var(--apm-font-mono);
}

.pro-hero-text[b-jgt2mzlza2] {
    flex: 1;
    min-width: 0;
}

.pro-hero-name[b-jgt2mzlza2] {
    font-size: 42px;
    font-weight: 700;
    color: var(--apm-text-primary);
    letter-spacing: -0.03em;
    line-height: 1.1;
    margin: 0 0 4px;
}

.pro-hero-email[b-jgt2mzlza2] {
    font-size: 14px;
    color: var(--apm-text-secondary);
    margin: 0 0 10px;
}

.pro-hero-roles[b-jgt2mzlza2] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.pro-role-chip[b-jgt2mzlza2] {
    font-family: var(--apm-font-mono);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.06em;
    padding: 3px 10px;
    border-radius: 100px;
    background: rgba(67, 97, 238, 0.08);
    color: var(--apm-primary);
    border: 1px solid rgba(67, 97, 238, 0.2);
    text-transform: uppercase;
}

/* ── Meta Row ── */
.pro-hero-meta[b-jgt2mzlza2] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.pro-meta-item[b-jgt2mzlza2] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.pro-meta-label[b-jgt2mzlza2] {
    font-family: var(--apm-font-mono);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.06em;
    color: var(--apm-text-muted);
    text-transform: uppercase;
}

.pro-meta-value[b-jgt2mzlza2] {
    font-size: 13px;
    font-weight: 500;
    color: var(--apm-text-secondary);
}

.pro-meta-dot[b-jgt2mzlza2] {
    color: var(--apm-border);
    font-size: 16px;
}

/* ── Content Stream ── */
.pro-content[b-jgt2mzlza2] {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

/* ── Sections: Base ── */
.pro-section[b-jgt2mzlza2] {
    position: relative;
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: var(--apm-radius-lg);
    overflow: hidden;
    transition: box-shadow 0.25s ease;
}

@media (hover: hover) {
    .pro-section:hover[b-jgt2mzlza2] {
        box-shadow: var(--apm-shadow-md);
    }
}

/* Hero style: primary top border, no left accent */
.pro-section--hero[b-jgt2mzlza2] {
    border-top: 3px solid var(--apm-primary);
}

/* Prominent: slightly elevated for security-sensitive section */
.pro-section--prominent[b-jgt2mzlza2] {
    background: var(--apm-surface);
    border-color: var(--apm-border);
    box-shadow: var(--apm-shadow-sm);
}

.pro-section--prominent .pro-section-header[b-jgt2mzlza2] {
    padding-bottom: 24px;
    border-bottom: 1px solid var(--apm-border);
    margin-bottom: 28px;
}

/* Left accent bar */
.pro-section-accent[b-jgt2mzlza2] {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    border-radius: var(--apm-radius-lg) 0 0 var(--apm-radius-lg);
}

.pro-accent--error[b-jgt2mzlza2] { background: var(--apm-error); }

.pro-section-inner[b-jgt2mzlza2] {
    padding: 36px 40px;
}

/* ── Section Header — Editorial Typography ── */
.pro-section-header[b-jgt2mzlza2] {
    margin-bottom: 32px;
}

.pro-section-number[b-jgt2mzlza2] {
    font-family: var(--apm-font-mono);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.12em;
    color: var(--apm-text-muted);
    display: block;
    margin-bottom: 8px;
}

.pro-section-title[b-jgt2mzlza2] {
    color: var(--apm-text-primary);
    letter-spacing: -0.025em;
    line-height: 1.15;
    margin: 0 0 8px;
    font-weight: 700;
}

.pro-title--xl[b-jgt2mzlza2] {
    font-size: 34px;
}

.pro-section-desc[b-jgt2mzlza2] {
    font-size: 14px;
    color: var(--apm-text-secondary);
    margin: 0;
    line-height: 1.5;
}

/* ── Field System ── */
.pro-fields--grid-2[b-jgt2mzlza2] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px 24px;
}

.pro-fields--stack[b-jgt2mzlza2] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.pro-field[b-jgt2mzlza2] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.pro-label[b-jgt2mzlza2] {
    font-family: var(--apm-font-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.08em;
    color: var(--apm-text-secondary);
    text-transform: uppercase;
    margin-bottom: 2px;
}

/* ── Error Message ── */
.pro-error-msg[b-jgt2mzlza2] {
    font-size: 13px;
    color: var(--apm-error);
    padding: 10px 14px;
    background: rgba(239, 68, 68, 0.06);
    border: 1px solid rgba(239, 68, 68, 0.2);
    border-radius: var(--apm-radius-sm);
    line-height: 1.4;
}

/* ── MudBlazor Overrides (scoped) ── */
[b-jgt2mzlza2] .mud-input-outlined .mud-input-outlined-border {
    border-color: var(--apm-border);
    border-radius: var(--apm-radius-sm);
}

[b-jgt2mzlza2] .mud-input-outlined:hover .mud-input-outlined-border {
    border-color: var(--apm-primary-light);
}

[b-jgt2mzlza2] .mud-input.mud-input-outlined {
    border-radius: var(--apm-radius-sm);
}

/* ── Action Bar ── */
.pro-actions[b-jgt2mzlza2] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 32px;
    padding-top: 24px;
    border-top: 1px solid var(--apm-border);
}

/* ── Buttons ── */
.pro-btn[b-jgt2mzlza2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 24px;
    font-family: 'DM Sans', sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.02em;
    border: none;
    border-radius: var(--apm-radius-sm);
    cursor: pointer;
    transition: all 0.15s ease;
    line-height: 1;
}

.pro-btn:disabled[b-jgt2mzlza2] {
    opacity: 0.6;
    cursor: not-allowed;
}

.pro-btn--primary[b-jgt2mzlza2] {
    background: var(--apm-primary);
    color: #fff;
}

.pro-btn--primary:hover:not(:disabled)[b-jgt2mzlza2] {
    background: var(--apm-primary-dark);
    box-shadow: var(--apm-shadow-sm);
}

.pro-btn--ghost[b-jgt2mzlza2] {
    background: transparent;
    color: var(--apm-primary);
    border: 1px solid var(--apm-border);
}

.pro-btn--ghost:hover:not(:disabled)[b-jgt2mzlza2] {
    background: rgba(67, 97, 238, 0.06);
    border-color: var(--apm-primary-light);
}

.pro-btn--danger[b-jgt2mzlza2] {
    background: var(--apm-error);
    color: #fff;
}

.pro-btn--danger:hover:not(:disabled)[b-jgt2mzlza2] {
    background: #dc2626;
    box-shadow: var(--apm-shadow-sm);
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .pro-profile-page[b-jgt2mzlza2] {
        padding: 0 16px 60px;
    }

    .pro-hero-identity[b-jgt2mzlza2] {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .pro-hero-name[b-jgt2mzlza2] {
        font-size: 30px;
    }

    .pro-avatar[b-jgt2mzlza2] {
        width: 56px;
        height: 56px;
        font-size: 22px;
    }

    .pro-section-inner[b-jgt2mzlza2] {
        padding: 24px 20px;
    }

    .pro-fields--grid-2[b-jgt2mzlza2] {
        grid-template-columns: 1fr;
    }

    .pro-title--xl[b-jgt2mzlza2] {
        font-size: 26px;
    }

    .pro-hero-meta[b-jgt2mzlza2] {
        flex-wrap: wrap;
        gap: 6px;
    }
}
/* /Components/Pages/Settings/SettingsPage.razor.rz.scp.css */
/* ==========================================================================
   Settings Page — Design B: Hierarchy / Sections
   Editorial typography, visual rhythm, progressive disclosure
   ========================================================================== */

/* ── Page Container ── */
.sb-settings-page[b-868g9znhzt] {
    max-width: 960px;
    margin: 0 auto;
    padding: 0 24px 80px;
    animation: sbFadeIn-b-868g9znhzt 0.35s ease-out;
}

@keyframes sbFadeIn-b-868g9znhzt {
    from { opacity: 0; transform: translateY(12px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ── Hero Header ── */
.sb-hero[b-868g9znhzt] {
    padding: 48px 0 40px;
    border-bottom: 2px solid var(--apm-border);
    margin-bottom: 48px;
}

.sb-hero-label[b-868g9znhzt] {
    font-family: var(--apm-font-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.16em;
    color: var(--apm-primary);
    margin-bottom: 12px;
    text-transform: uppercase;
}

.sb-hero-title[b-868g9znhzt] {
    font-size: 42px;
    font-weight: 700;
    color: var(--apm-text-primary);
    letter-spacing: -0.03em;
    line-height: 1.1;
    margin: 0 0 12px;
}

.sb-hero-subtitle[b-868g9znhzt] {
    font-size: 16px;
    color: var(--apm-text-secondary);
    line-height: 1.6;
    margin: 0;
    max-width: 480px;
}

/* ── Layout: Floating Nav + Content ── */
.sb-layout[b-868g9znhzt] {
    display: flex;
    gap: 48px;
    position: relative;
}

.sb-content[b-868g9znhzt] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 32px;
}

/* ── Floating Section Indicator (mini-nav) ── */
.sb-section-nav[b-868g9znhzt] {
    position: sticky;
    top: 100px;
    align-self: flex-start;
    width: 40px;
    flex-shrink: 0;
    z-index: 10;
}

.sb-nav-track[b-868g9znhzt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    padding: 12px 0;
}

.sb-nav-dot[b-868g9znhzt] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid var(--apm-border);
    background: var(--apm-surface);
    cursor: pointer;
    position: relative;
    transition: all 0.2s ease;
    padding: 0;
    text-decoration: none;
    display: block;
}

.sb-nav-dot:hover[b-868g9znhzt] {
    border-color: var(--apm-primary);
    transform: scale(1.3);
}

.sb-nav-dot--active[b-868g9znhzt] {
    background: var(--apm-primary);
    border-color: var(--apm-primary);
    box-shadow: 0 0 0 3px rgba(67, 97, 238, 0.2);
}

.sb-nav-dot .sb-nav-label[b-868g9znhzt] {
    position: absolute;
    left: 22px;
    top: 50%;
    transform: translateY(-50%);
    font-family: var(--apm-font-mono);
    font-size: 10px;
    letter-spacing: 0.06em;
    color: var(--apm-text-muted);
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.15s ease;
    text-transform: uppercase;
}

.sb-nav-dot:hover .sb-nav-label[b-868g9znhzt] {
    opacity: 1;
}

.sb-nav-separator[b-868g9znhzt] {
    width: 2px;
    height: 16px;
    background: var(--apm-border);
    margin: 4px 0;
}

.sb-nav-admin[b-868g9znhzt] {
    border-style: dashed;
}

/* ── Sections: Base ── */
.sb-section[b-868g9znhzt] {
    position: relative;
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: var(--apm-radius-lg);
    overflow: hidden;
    transition: box-shadow 0.25s ease;
}

@media (hover: hover) {
    .sb-section:hover[b-868g9znhzt] {
        box-shadow: var(--apm-shadow-md);
    }
}

.sb-section-accent[b-868g9znhzt] {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    border-radius: var(--apm-radius-lg) 0 0 var(--apm-radius-lg);
}

.sb-accent--primary[b-868g9znhzt] { background: var(--apm-primary); }
.sb-accent--info[b-868g9znhzt]    { background: var(--apm-info); }
.sb-accent--secondary[b-868g9znhzt] { background: var(--apm-secondary); }
.sb-accent--warning[b-868g9znhzt] { background: var(--apm-warning); }
.sb-accent--error[b-868g9znhzt]   { background: var(--apm-error); }

.sb-section-inner[b-868g9znhzt] {
    padding: 36px 40px;
}

/* ── Section Header — Editorial Typography ── */
.sb-section-header[b-868g9znhzt] {
    margin-bottom: 32px;
}

.sb-section-number[b-868g9znhzt] {
    font-family: var(--apm-font-mono);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.12em;
    color: var(--apm-text-muted);
    display: block;
    margin-bottom: 8px;
}

.sb-number--admin[b-868g9znhzt] {
    color: var(--apm-secondary);
    font-weight: 600;
}

/* Title size variations for visual rhythm */
.sb-section-title[b-868g9znhzt] {
    color: var(--apm-text-primary);
    letter-spacing: -0.025em;
    line-height: 1.15;
    margin: 0 0 8px;
    font-weight: 700;
}

.sb-title--xl[b-868g9znhzt] {
    font-size: 34px;
}

.sb-title--lg[b-868g9znhzt] {
    font-size: 28px;
}

.sb-title--md[b-868g9znhzt] {
    font-size: 22px;
}

.sb-section-desc[b-868g9znhzt] {
    font-size: 14px;
    color: var(--apm-text-secondary);
    margin: 0;
    line-height: 1.5;
}

/* ── Section Variants ── */

/* Hero style: subtle top gradient */
.sb-section--hero[b-868g9znhzt] {
    border-top: 3px solid var(--apm-primary);
}

.sb-section--hero .sb-section-accent[b-868g9znhzt] {
    display: none;
}

/* Bordered: standard card with left accent */
.sb-section--bordered[b-868g9znhzt] {
    /* default behavior from .sb-section */
}

/* Tinted: light background wash */
.sb-section--tinted[b-868g9znhzt] {
    background: linear-gradient(135deg, var(--apm-surface) 0%, rgba(124, 58, 237, 0.03) 100%);
}

/* Prominent: slightly darker treatment for security */
.sb-section--prominent[b-868g9znhzt] {
    background: var(--apm-surface);
    border-color: var(--apm-border);
    box-shadow: var(--apm-shadow-sm);
}

.sb-section--prominent .sb-section-header[b-868g9znhzt] {
    padding-bottom: 24px;
    border-bottom: 1px solid var(--apm-border);
    margin-bottom: 28px;
}

/* Admin section: dashed border, muted */
.sb-section--admin[b-868g9znhzt] {
    border-style: dashed;
    background: var(--apm-background);
}

.sb-section--admin .sb-section-accent[b-868g9znhzt] {
    background: var(--apm-secondary);
    opacity: 0.5;
}

/* ── Field System ── */
.sb-fields--grid-2[b-868g9znhzt] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px 24px;
}

.sb-fields--stack[b-868g9znhzt] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.sb-field[b-868g9znhzt] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.sb-label[b-868g9znhzt] {
    font-family: var(--apm-font-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.08em;
    color: var(--apm-text-secondary);
    text-transform: uppercase;
    margin-bottom: 2px;
}

.sb-hint[b-868g9znhzt] {
    font-size: 12px;
    color: var(--apm-text-muted);
    line-height: 1.4;
    margin-top: 2px;
}

.sb-field--switch[b-868g9znhzt] {
    flex-direction: column;
    gap: 2px;
}

/* ── MudBlazor Overrides (scoped) ── */
[b-868g9znhzt] .mud-input-outlined .mud-input-outlined-border {
    border-color: var(--apm-border);
    border-radius: var(--apm-radius-sm);
}

[b-868g9znhzt] .mud-input-outlined:hover .mud-input-outlined-border {
    border-color: var(--apm-primary-light);
}

[b-868g9znhzt] .mud-input.mud-input-outlined {
    border-radius: var(--apm-radius-sm);
}

[b-868g9znhzt] .mud-switch .mud-switch-span {
    font-size: 14px;
    color: var(--apm-text-primary);
    font-weight: 500;
}

/* ── Action Bar ── */
.sb-actions[b-868g9znhzt] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 32px;
    padding-top: 24px;
    border-top: 1px solid var(--apm-border);
}

/* ── Buttons (custom, reduced MudBlazor) ── */
.sb-btn[b-868g9znhzt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 24px;
    font-family: 'DM Sans', sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.02em;
    border: none;
    border-radius: var(--apm-radius-sm);
    cursor: pointer;
    transition: all 0.15s ease;
    line-height: 1;
}

.sb-btn--primary[b-868g9znhzt] {
    background: var(--apm-primary);
    color: #fff;
}

.sb-btn--primary:hover[b-868g9znhzt] {
    background: var(--apm-primary-dark);
    box-shadow: var(--apm-shadow-sm);
}

.sb-btn--ghost[b-868g9znhzt] {
    background: transparent;
    color: var(--apm-primary);
    border: 1px solid var(--apm-border);
}

.sb-btn--ghost:hover[b-868g9znhzt] {
    background: rgba(67, 97, 238, 0.06);
    border-color: var(--apm-primary-light);
}

/* ── Integration Status Row ── */
.sb-status-row[b-868g9znhzt] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 4px;
}

.sb-status-card[b-868g9znhzt] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    border: 1px solid var(--apm-border);
    border-radius: var(--apm-radius-sm);
    transition: border-color 0.2s ease;
}

.sb-status-card:hover[b-868g9znhzt] {
    border-color: var(--apm-primary-light);
}

.sb-status-indicator[b-868g9znhzt] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}

.sb-status--success .sb-status-indicator[b-868g9znhzt] {
    background: var(--apm-success);
    box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.15);
}

.sb-status--warning .sb-status-indicator[b-868g9znhzt] {
    background: var(--apm-warning);
    box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.15);
}

.sb-status-info[b-868g9znhzt] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.sb-status-name[b-868g9znhzt] {
    font-size: 13px;
    font-weight: 600;
    color: var(--apm-text-primary);
}

.sb-status-state[b-868g9znhzt] {
    font-size: 11px;
    font-family: var(--apm-font-mono);
    letter-spacing: 0.03em;
}

.sb-status--success .sb-status-state[b-868g9znhzt] { color: var(--apm-success); }
.sb-status--warning .sb-status-state[b-868g9znhzt] { color: var(--apm-warning); }

.sb-status-badge[b-868g9znhzt] {
    font-family: var(--apm-font-mono);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.06em;
    padding: 4px 10px;
    border-radius: 100px;
    text-transform: uppercase;
}

.sb-badge--success[b-868g9znhzt] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--apm-success);
}

.sb-badge--warning[b-868g9znhzt] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--apm-warning);
}

/* ── Subsection Divider ── */
.sb-subsection-divider[b-868g9znhzt] {
    height: 1px;
    background: var(--apm-border);
    margin: 28px 0;
}

.sb-subsection-title[b-868g9znhzt] {
    font-size: 14px;
    font-weight: 600;
    color: var(--apm-text-secondary);
    letter-spacing: 0.01em;
    margin: 0 0 20px;
}

/* ── Notification Columns ── */
.sb-notif-columns[b-868g9znhzt] {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 0 32px;
}

.sb-notif-divider[b-868g9znhzt] {
    width: 1px;
    background: var(--apm-border);
    min-height: 100%;
}

/* ── Group Labels ── */
.sb-group-label[b-868g9znhzt] {
    font-family: var(--apm-font-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.1em;
    color: var(--apm-text-muted);
    text-transform: uppercase;
    margin: 0 0 16px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--apm-border);
}

.sb-switch-list[b-868g9znhzt] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.sb-switch-item[b-868g9znhzt] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.sb-switch-hint[b-868g9znhzt] {
    font-size: 11px;
    color: var(--apm-text-muted);
    padding-left: 52px;
    margin-top: -4px;
    line-height: 1.4;
}

/* ── Security Grid ── */
.sb-security-grid[b-868g9znhzt] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
}

/* ── Admin Links ── */
.sb-admin-links[b-868g9znhzt] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.sb-admin-link[b-868g9znhzt] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 20px;
    border: 1px dashed var(--apm-border);
    border-radius: var(--apm-radius-sm);
    text-decoration: none;
    color: inherit;
    transition: all 0.2s ease;
}

.sb-admin-link:hover[b-868g9znhzt] {
    border-color: var(--apm-secondary);
    background: rgba(124, 58, 237, 0.03);
    box-shadow: var(--apm-shadow-sm);
}

.sb-admin-link-icon[b-868g9znhzt] {
    width: 36px;
    height: 36px;
    border-radius: var(--apm-radius-sm);
    background: rgba(124, 58, 237, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--apm-secondary);
}

.sb-admin-link-text[b-868g9znhzt] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.sb-admin-link-title[b-868g9znhzt] {
    font-size: 14px;
    font-weight: 600;
    color: var(--apm-text-primary);
}

.sb-admin-link-desc[b-868g9znhzt] {
    font-size: 12px;
    color: var(--apm-text-muted);
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .sb-settings-page[b-868g9znhzt] {
        padding: 0 16px 60px;
    }

    .sb-hero-title[b-868g9znhzt] {
        font-size: 30px;
    }

    .sb-section-nav[b-868g9znhzt] {
        display: none;
    }

    .sb-layout[b-868g9znhzt] {
        gap: 0;
    }

    .sb-section-inner[b-868g9znhzt] {
        padding: 24px 20px;
    }

    .sb-fields--grid-2[b-868g9znhzt] {
        grid-template-columns: 1fr;
    }

    .sb-status-row[b-868g9znhzt] {
        grid-template-columns: 1fr;
    }

    .sb-notif-columns[b-868g9znhzt] {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .sb-notif-divider[b-868g9znhzt] {
        width: 100%;
        height: 1px;
        min-height: auto;
    }

    .sb-security-grid[b-868g9znhzt] {
        grid-template-columns: 1fr;
    }

    .sb-title--xl[b-868g9znhzt] {
        font-size: 26px;
    }

    .sb-title--lg[b-868g9znhzt] {
        font-size: 22px;
    }

    .sb-title--md[b-868g9znhzt] {
        font-size: 18px;
    }
}
/* /Components/Pages/Settings/VatDeadlineConfiguration.razor.rz.scp.css */
/* ==========================================================================
   VAT Deadline Configuration — Calendar Swimlanes
   ========================================================================== */

/* --- Page Container --- */
.vat-page[b-yvgihukrhy] {
    animation: fadeInUp-b-yvgihukrhy 0.3s ease-out;
    max-width: 1400px;
    margin: 0 auto;
}

/* --- Year Navigation --- */
.vat-year-nav[b-yvgihukrhy] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
}

.vat-year-selector[b-yvgihukrhy] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.vat-year-display[b-yvgihukrhy] {
    font-family: var(--apm-font-mono);
    font-size: 2rem;
    font-weight: 600;
    color: var(--apm-text-primary);
    min-width: 80px;
    text-align: center;
    letter-spacing: -0.02em;
}

.vat-year-btn[b-yvgihukrhy] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1.5px solid var(--apm-border);
    background: var(--apm-surface);
    color: var(--apm-text-secondary);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease;
    font-size: 1.1rem;
}

.vat-year-btn:hover[b-yvgihukrhy] {
    border-color: var(--apm-primary);
    color: var(--apm-primary);
    background: var(--apm-primary-bg);
}

.vat-year-pills[b-yvgihukrhy] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: center;
}

.vat-year-pill[b-yvgihukrhy] {
    font-family: var(--apm-font-mono);
    font-size: 0.8rem;
    padding: 4px 14px;
    border-radius: 20px;
    border: 1.5px solid var(--apm-border);
    background: var(--apm-surface);
    color: var(--apm-text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
    font-weight: 500;
}

.vat-year-pill:hover[b-yvgihukrhy] {
    border-color: var(--apm-primary);
    color: var(--apm-primary);
    background: var(--apm-primary-bg);
}

.vat-year-pill--active[b-yvgihukrhy] {
    border-color: var(--apm-primary);
    background: var(--apm-primary);
    color: #fff;
}

.vat-year-pill--active:hover[b-yvgihukrhy] {
    background: var(--apm-primary-dark);
    border-color: var(--apm-primary-dark);
    color: #fff;
}

.vat-year-pill--add[b-yvgihukrhy] {
    border-style: dashed;
    color: var(--apm-text-muted);
    font-size: 1rem;
    padding: 4px 12px;
}

.vat-year-pill--add:hover[b-yvgihukrhy] {
    border-color: var(--apm-primary);
    color: var(--apm-primary);
}

.vat-jump-input[b-yvgihukrhy] {
    width: 70px;
    font-family: var(--apm-font-mono);
    font-size: 0.8rem;
    padding: 4px 8px;
    border-radius: 20px;
    border: 1.5px solid var(--apm-primary);
    background: var(--apm-primary-bg);
    color: var(--apm-text-primary);
    text-align: center;
    outline: none;
    font-weight: 500;
}

.vat-jump-input:focus[b-yvgihukrhy] {
    box-shadow: 0 0 0 2px rgba(67, 97, 238, 0.2);
}

/* --- Progress Bar --- */
.vat-progress[b-yvgihukrhy] {
    margin-bottom: 24px;
    padding: 16px 20px;
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: var(--apm-radius-md);
}

.vat-progress-header[b-yvgihukrhy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}

.vat-progress-label[b-yvgihukrhy] {
    font-size: 0.85rem;
    color: var(--apm-text-secondary);
    font-weight: 500;
}

.vat-progress-count[b-yvgihukrhy] {
    font-family: var(--apm-font-mono);
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--apm-text-primary);
}

.vat-progress-bar[b-yvgihukrhy] {
    height: 6px;
    border-radius: 3px;
    background: var(--apm-background);
    overflow: hidden;
}

.vat-progress-fill[b-yvgihukrhy] {
    height: 100%;
    border-radius: 3px;
    background: var(--apm-primary);
    transition: width 0.4s ease;
}

.vat-progress-fill--complete[b-yvgihukrhy] {
    background: var(--apm-success);
}

/* --- Timeline Grid Container --- */
.vat-timeline[b-yvgihukrhy] {
    background: var(--apm-surface);
    border: 1px solid var(--apm-border);
    border-radius: var(--apm-radius-lg);
    overflow: hidden;
    box-shadow: var(--apm-shadow-sm);
}

/* --- Month Headers --- */
.vat-month-headers[b-yvgihukrhy] {
    display: grid;
    grid-template-columns: 120px repeat(12, 1fr);
    border-bottom: 2px solid var(--apm-border);
    background: var(--apm-background);
}

.vat-month-header-spacer[b-yvgihukrhy] {
    padding: 12px 16px;
}

.vat-month-header[b-yvgihukrhy] {
    padding: 12px 4px;
    text-align: center;
    font-family: var(--apm-font-mono);
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--apm-text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-left: 1px solid var(--apm-border);
}

/* --- Swimlane Row --- */
.vat-lane[b-yvgihukrhy] {
    border-bottom: 1px solid var(--apm-border);
    transition: background 0.2s ease;
}

.vat-lane:last-child[b-yvgihukrhy] {
    border-bottom: none;
}

.vat-lane-inner[b-yvgihukrhy] {
    display: grid;
    grid-template-columns: 120px repeat(12, 1fr);
    min-height: 80px;
}

.vat-lane--editing[b-yvgihukrhy] {
    background: rgba(67, 97, 238, 0.02);
    box-shadow: inset 3px 0 0 0 var(--apm-primary);
}

/* --- Lane Label (left column) --- */
.vat-lane-label[b-yvgihukrhy] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 12px 16px;
    border-right: 1px solid var(--apm-border);
    background: var(--apm-background);
}

.vat-lane-type[b-yvgihukrhy] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--apm-text-primary);
    margin-bottom: 4px;
}

.vat-lane-status[b-yvgihukrhy] {
    font-family: var(--apm-font-mono);
    font-size: 0.7rem;
    color: var(--apm-text-muted);
}

.vat-lane-status--complete[b-yvgihukrhy] {
    color: var(--apm-success);
}

.vat-lane-actions[b-yvgihukrhy] {
    display: flex;
    gap: 4px;
    margin-top: 6px;
}

.vat-lane-btn[b-yvgihukrhy] {
    font-size: 0.7rem;
    font-weight: 500;
    padding: 2px 10px;
    border-radius: 4px;
    border: 1px solid var(--apm-border);
    background: var(--apm-surface);
    color: var(--apm-text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.vat-lane-btn:hover[b-yvgihukrhy] {
    border-color: var(--apm-primary);
    color: var(--apm-primary);
}

.vat-lane-btn--primary[b-yvgihukrhy] {
    background: var(--apm-primary);
    border-color: var(--apm-primary);
    color: #fff;
}

.vat-lane-btn--primary:hover[b-yvgihukrhy] {
    background: var(--apm-primary-dark);
    border-color: var(--apm-primary-dark);
    color: #fff;
}

.vat-lane-btn--primary:disabled[b-yvgihukrhy],
.vat-lane-btn:disabled[b-yvgihukrhy] {
    opacity: 0.5;
    cursor: not-allowed;
}

.vat-lane-btn--cancel[b-yvgihukrhy] {
    color: var(--apm-text-muted);
}

.vat-lane-btn--cancel:hover[b-yvgihukrhy] {
    color: var(--apm-error);
    border-color: var(--apm-error);
}

/* --- Grid Cells --- */
.vat-cell[b-yvgihukrhy] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 10px 6px;
    border-left: 1px solid var(--apm-border);
    text-align: center;
    transition: background 0.15s ease;
    min-height: 80px;
}

/* Spanning for quarterly (3 cols) and semi-annual (6 cols) */
.vat-cell--q[b-yvgihukrhy] { grid-column: span 3; }
.vat-cell--h[b-yvgihukrhy] { grid-column: span 6; }

/* Color variants */
.vat-cell--monthly[b-yvgihukrhy] {
    background: var(--apm-primary-bg);
}

.vat-cell--quarterly[b-yvgihukrhy] {
    background: var(--apm-success-bg);
}

.vat-cell--semiannual[b-yvgihukrhy] {
    background: #f5f0ff;
}

/* Locked state */
.vat-cell--locked[b-yvgihukrhy] {
    cursor: default;
}

.vat-cell--locked .vat-cell-period[b-yvgihukrhy] {
    font-size: 0.7rem;
    color: var(--apm-text-muted);
    font-weight: 500;
    margin-bottom: 2px;
}

.vat-cell--locked .vat-cell-date[b-yvgihukrhy] {
    font-family: var(--apm-font-mono);
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--apm-text-primary);
}

/* Empty / Not configured state */
.vat-cell--empty[b-yvgihukrhy] {
    border: 1.5px dashed var(--apm-border);
    background: transparent;
}

.vat-cell--empty .vat-cell-placeholder[b-yvgihukrhy] {
    font-size: 0.75rem;
    color: var(--apm-text-muted);
}

/* Editing state */
.vat-cell--editing[b-yvgihukrhy] {
    padding: 8px 6px;
}

.vat-cell--editing .vat-cell-period[b-yvgihukrhy] {
    font-size: 0.65rem;
    color: var(--apm-text-muted);
    font-weight: 500;
    margin-bottom: 4px;
}

.vat-cell-input-wrap[b-yvgihukrhy] {
    position: relative;
    width: 100%;
    max-width: 130px;
}

.vat-cell-input[b-yvgihukrhy] {
    width: 100%;
    font-family: var(--apm-font-mono);
    font-size: 0.8rem;
    padding: 5px 28px 5px 8px;
    border: 1.5px solid var(--apm-border);
    border-radius: 6px;
    background: var(--apm-surface);
    color: var(--apm-text-primary);
    text-align: center;
    outline: none;
    transition: border-color 0.15s ease;
}

.vat-cell-input:focus[b-yvgihukrhy] {
    border-color: var(--apm-primary);
    box-shadow: 0 0 0 2px rgba(67, 97, 238, 0.15);
}

.vat-cell-input[b-yvgihukrhy]::placeholder {
    color: var(--apm-text-muted);
    font-size: 0.75rem;
}

.vat-cell-calendar-btn[b-yvgihukrhy] {
    position: absolute;
    right: 4px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    color: var(--apm-text-muted);
    cursor: pointer;
    padding: 2px;
    font-size: 0.9rem;
    line-height: 1;
    transition: color 0.15s ease;
}

.vat-cell-calendar-btn:hover[b-yvgihukrhy] {
    color: var(--apm-primary);
}

/* Compact MudDatePicker in cells */
[b-yvgihukrhy] .vat-date-picker {
    margin: 0;
}

[b-yvgihukrhy] .vat-date-picker .mud-input-outlined {
    font-family: var(--apm-font-mono);
    font-size: 0.8rem;
}

[b-yvgihukrhy] .vat-date-picker .mud-input-slot {
    padding: 4px 8px;
    font-family: var(--apm-font-mono);
    font-size: 0.8rem;
}

[b-yvgihukrhy] .vat-date-picker .mud-input-outlined .mud-input-outlined-border {
    border-radius: 6px;
}

[b-yvgihukrhy] .vat-date-picker .mud-input-adornment {
    margin: 0;
}

[b-yvgihukrhy] .vat-date-picker .mud-input-adornment .mud-icon-button {
    padding: 4px;
}

/* --- Responsive: Tablet --- */
@media (max-width: 1200px) {
    .vat-timeline[b-yvgihukrhy] {
        overflow-x: auto;
    }

    .vat-month-headers[b-yvgihukrhy],
    .vat-lane-inner[b-yvgihukrhy] {
        min-width: 900px;
    }

    .vat-lane-label[b-yvgihukrhy] {
        position: sticky;
        left: 0;
        z-index: 2;
    }

    .vat-month-header-spacer[b-yvgihukrhy] {
        position: sticky;
        left: 0;
        z-index: 2;
        background: var(--apm-background);
    }
}

/* --- Responsive: Mobile --- */
@media (max-width: 768px) {
    .vat-timeline[b-yvgihukrhy] {
        overflow: visible;
    }

    .vat-month-headers[b-yvgihukrhy] {
        display: none;
    }

    .vat-lane-inner[b-yvgihukrhy] {
        display: flex;
        flex-direction: column;
        min-width: unset;
    }

    .vat-lane-label[b-yvgihukrhy] {
        position: static;
        border-right: none;
        border-bottom: 1px solid var(--apm-border);
        flex-direction: row;
        align-items: center;
        gap: 12px;
    }

    .vat-cell[b-yvgihukrhy] {
        border-left: none;
        border-top: 1px solid var(--apm-border);
        flex-direction: row;
        justify-content: space-between;
        padding: 12px 16px;
        min-height: unset;
    }

    .vat-cell--q[b-yvgihukrhy],
    .vat-cell--h[b-yvgihukrhy] {
        grid-column: unset;
    }

    .vat-cell--editing[b-yvgihukrhy] {
        flex-direction: column;
        align-items: stretch;
    }

    .vat-cell-input-wrap[b-yvgihukrhy] {
        max-width: 100%;
    }
}

/* --- Animations --- */
@keyframes fadeInUp-b-yvgihukrhy {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes shimmer-b-yvgihukrhy {
    0% { opacity: 0.6; }
    50% { opacity: 1; }
    100% { opacity: 0.6; }
}

.vat-cell--saving[b-yvgihukrhy] {
    animation: shimmer-b-yvgihukrhy 1s ease-in-out infinite;
}
/* /Components/Pages/TimeTracking/MyTimesheet.razor.rz.scp.css */
/* ==========================================================================
   MyTimesheet - Scoped Styles
   ========================================================================== */

/* --- Summary Cards --- */
.summary-card[b-ijol0nmhfg] {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.summary-card:hover[b-ijol0nmhfg] {
    transform: translateY(-2px);
    box-shadow: var(--apm-shadow-lg) !important;
}

.metric-icon-wrapper[b-ijol0nmhfg] {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* --- Period Selector --- */
.period-selector[b-ijol0nmhfg] {
    display: flex;
    align-items: center;
}

/* --- Weekly Grid --- */
.weekly-grid[b-ijol0nmhfg] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 8px;
}

@media (max-width: 768px) {
    .weekly-grid[b-ijol0nmhfg] {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 480px) {
    .weekly-grid[b-ijol0nmhfg] {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* --- Day Cell --- */
.day-cell[b-ijol0nmhfg] {
    border: 1px solid var(--apm-border);
    border-radius: var(--apm-radius-sm);
    padding: 12px;
    text-align: center;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
    background: var(--apm-surface);
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-height: 140px;
}

.day-cell:hover[b-ijol0nmhfg] {
    transform: translateY(-2px);
    box-shadow: var(--apm-shadow-md);
    border-color: var(--apm-primary-light);
}

.day-cell.today[b-ijol0nmhfg] {
    border-color: var(--apm-primary);
    border-width: 2px;
    background: rgba(67, 97, 238, 0.03);
    box-shadow: var(--apm-shadow-sm);
}

.day-cell.weekend[b-ijol0nmhfg] {
    background: var(--apm-background);
    opacity: 0.7;
}

.day-header[b-ijol0nmhfg] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.day-name[b-ijol0nmhfg] {
    font-weight: 600;
    font-size: 0.85rem;
    color: var(--apm-text-primary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.day-cell.today .day-name[b-ijol0nmhfg] {
    color: var(--apm-primary);
}

.day-date[b-ijol0nmhfg] {
    font-size: 0.75rem;
    color: var(--apm-text-muted);
}

/* --- Day Hours Visual --- */
.day-hours-wrapper[b-ijol0nmhfg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    flex: 1;
    justify-content: flex-end;
}

.day-bar-track[b-ijol0nmhfg] {
    width: 32px;
    height: 48px;
    background: var(--apm-background);
    border-radius: 4px;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
}

.day-bar[b-ijol0nmhfg] {
    width: 100%;
    background: linear-gradient(180deg, var(--apm-primary) 0%, var(--apm-primary-light) 100%);
    border-radius: 4px;
    transition: height 0.3s ease;
    min-height: 0;
}

.day-cell.today .day-bar[b-ijol0nmhfg] {
    background: linear-gradient(180deg, var(--apm-primary) 0%, var(--apm-primary-dark) 100%);
}

.day-hours[b-ijol0nmhfg] {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--apm-text-primary);
}

.day-entries-count[b-ijol0nmhfg] {
    font-size: 0.7rem;
    color: var(--apm-text-muted);
    letter-spacing: 0.02em;
}

/* --- Submission Card --- */
.submission-card[b-ijol0nmhfg] {
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.submission-card:hover[b-ijol0nmhfg] {
    transform: translateY(-1px);
    box-shadow: var(--apm-shadow-md) !important;
}
/* /Components/Pages/TimeTracking/TimeEntryList.razor.rz.scp.css */
/* ==========================================================================
   TimeEntryList - Scoped Styles
   ========================================================================== */

/* --- Summary Cards --- */
.summary-card[b-cz59or9155] {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.summary-card:hover[b-cz59or9155] {
    transform: translateY(-2px);
    box-shadow: var(--apm-shadow-lg) !important;
}

.metric-icon-wrapper[b-cz59or9155] {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* --- Period Selector --- */
.period-selector[b-cz59or9155] {
    display: flex;
    align-items: center;
}
/* /Components/Shared/ClientSlidePanel.razor.rz.scp.css */
/* ── Field Grid ──────────────────────────────────────────────────────────── */

.csp-fields[b-hkif5jhigc] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px 24px;
}

.csp-field[b-hkif5jhigc] {
    display: flex;
    flex-direction: column;
    align-items: flex-start; /* prevents chips from stretching full-width */
    gap: 4px;
    min-width: 0;
}

.csp-field--full[b-hkif5jhigc] {
    grid-column: 1 / -1;
}

.csp-label[b-hkif5jhigc] {
    font-family: var(--apm-font-mono);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--apm-text-muted);
    line-height: 1;
}

.csp-value[b-hkif5jhigc] {
    font-size: 13px;
    color: var(--apm-text-primary);
    font-weight: 500;
    line-height: 1.4;
    word-break: break-word;
}

/* ── Card (contacts, services, agreements) ───────────────────────────────── */

.csp-card[b-hkif5jhigc] {
    border: 1px solid var(--apm-border);
    border-radius: var(--apm-radius-sm);
    padding: 12px 14px;
    margin-bottom: 8px;
    background: var(--apm-background);
    transition: border-color 0.15s ease;
}

.csp-card:last-child[b-hkif5jhigc] {
    margin-bottom: 0;
}

.csp-card:hover[b-hkif5jhigc] {
    border-color: var(--apm-primary-light);
}

.csp-card-header[b-hkif5jhigc] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
}

.csp-card-name[b-hkif5jhigc] {
    font-size: 13px;
    font-weight: 600;
    color: var(--apm-text-primary);
    line-height: 1.3;
}

.csp-card-actions[b-hkif5jhigc] {
    display: flex;
    gap: 0;
    margin: -4px -8px -4px 0; /* tighten icon button whitespace */
    flex-shrink: 0;
}

/* ── Stat Boxes (Dokumentation) ──────────────────────────────────────────── */

.csp-stat-row[b-hkif5jhigc] {
    display: flex;
    gap: 8px;
    margin-bottom: 16px;
}

.csp-stat[b-hkif5jhigc] {
    flex: 1;
    padding: 10px 12px;
    border-radius: var(--apm-radius-sm);
    border: 1px solid var(--apm-border);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
}

.csp-stat-value[b-hkif5jhigc] {
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    font-family: var(--apm-font-mono);
}

.csp-stat-label[b-hkif5jhigc] {
    font-family: var(--apm-font-mono);
    font-size: 9px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--apm-text-muted);
}

.csp-stat--warning[b-hkif5jhigc] {
    background: rgba(245, 158, 11, 0.06);
    border-color: rgba(245, 158, 11, 0.25);
}
.csp-stat--warning .csp-stat-value[b-hkif5jhigc] { color: var(--apm-warning); }

.csp-stat--success[b-hkif5jhigc] {
    background: rgba(16, 185, 129, 0.06);
    border-color: rgba(16, 185, 129, 0.25);
}
.csp-stat--success .csp-stat-value[b-hkif5jhigc] { color: var(--apm-success); }

.csp-stat--error[b-hkif5jhigc] {
    background: rgba(239, 68, 68, 0.06);
    border-color: rgba(239, 68, 68, 0.25);
}
.csp-stat--error .csp-stat-value[b-hkif5jhigc] { color: var(--apm-error); }

/* ── Inline form card ─────────────────────────────────────────────────────── */

.csp-card--form[b-hkif5jhigc] {
    border-color: var(--apm-primary-light);
    background: var(--apm-surface);
    margin-bottom: 12px;
}

/* ── Form action row ──────────────────────────────────────────────────────── */

.csp-form-actions[b-hkif5jhigc] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding-top: 14px;
    margin-top: 14px;
    border-top: 1px solid var(--apm-border);
}

/* ── Inline form buttons ──────────────────────────────────────────────────── */

.csp-btn[b-hkif5jhigc] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 18px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.02em;
    border: none;
    border-radius: var(--apm-radius-sm);
    cursor: pointer;
    transition: all 0.15s ease;
    line-height: 1;
    font-family: 'DM Sans', sans-serif;
}
.csp-btn:disabled[b-hkif5jhigc] { opacity: 0.55; cursor: not-allowed; }
.csp-btn--primary[b-hkif5jhigc] { background: var(--apm-primary); color: #fff; }
.csp-btn--primary:hover:not(:disabled)[b-hkif5jhigc] { background: var(--apm-primary-dark); }
.csp-btn--ghost[b-hkif5jhigc] {
    background: transparent;
    color: var(--apm-text-secondary);
    border: 1px solid var(--apm-border);
}
.csp-btn--ghost:hover:not(:disabled)[b-hkif5jhigc] {
    border-color: var(--apm-primary-light);
    color: var(--apm-primary);
}
/* /Components/Shared/DocumentReviewPanel.razor.rz.scp.css */
.cd-detail-panel[b-3ty9ixr8wh] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    min-width: 0;
    background: var(--apm-background);
}

/* Empty state */
.sr-empty-state[b-3ty9ixr8wh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: var(--apm-text-muted);
    gap: 10px;
    padding: 24px;
}

.sr-es-text[b-3ty9ixr8wh] {
    font-size: 0.82rem;
    color: var(--apm-text-muted);
}

/* Detail head */
.cd-detail-head[b-3ty9ixr8wh] {
    flex-shrink: 0;
    padding: 20px 24px;
    background: var(--apm-surface);
    border-bottom: 1px solid var(--apm-border);
}

.cd-dh-top[b-3ty9ixr8wh] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 12px;
}

.cd-dh-voucher[b-3ty9ixr8wh] {
    font-family: var(--apm-font-mono);
    font-size: 0.76rem;
    color: var(--apm-primary);
    margin-bottom: 3px;
}

.cd-dh-desc[b-3ty9ixr8wh] {
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.3;
    color: var(--apm-text-primary);
}

/* Status pill */
.sr-status-pill[b-3ty9ixr8wh] {
    border-radius: 20px;
    padding: 5px 14px;
    font-size: 0.72rem;
    font-weight: 700;
    white-space: nowrap;
    flex-shrink: 0;
}

.sr-status-pill.pending[b-3ty9ixr8wh]  { background: var(--apm-warning-bg); color: var(--apm-warning); }
.sr-status-pill.approved[b-3ty9ixr8wh] { background: var(--apm-success-bg); color: var(--apm-success); }
.sr-status-pill.denied[b-3ty9ixr8wh]   { background: var(--apm-error-bg);   color: var(--apm-error); }
.sr-status-pill.waived[b-3ty9ixr8wh]   { background: rgba(148,163,184,.12); color: #64748b; border: 1px solid rgba(148,163,184,.3); }

/* Meta row */
.cd-dh-meta[b-3ty9ixr8wh] {
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
}

.cd-meta-item[b-3ty9ixr8wh] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.cd-meta-lbl[b-3ty9ixr8wh] {
    font-size: 0.57rem;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: var(--apm-text-muted);
    font-weight: 600;
}

.cd-meta-val[b-3ty9ixr8wh] {
    font-size: 0.82rem;
    font-weight: 600;
    font-family: var(--apm-font-mono);
    color: var(--apm-text-primary);
}

/* Scrollable body */
.cd-detail-scroll[b-3ty9ixr8wh] {
    flex: 1;
    overflow-y: auto;
    min-height: 0;
    padding: 20px 24px;
}

.cd-detail-scroll[b-3ty9ixr8wh]::-webkit-scrollbar { width: 5px; }
.cd-detail-scroll[b-3ty9ixr8wh]::-webkit-scrollbar-track { background: transparent; }
.cd-detail-scroll[b-3ty9ixr8wh]::-webkit-scrollbar-thumb { background: var(--apm-border); border-radius: 4px; }
.cd-detail-scroll[b-3ty9ixr8wh]::-webkit-scrollbar-thumb:hover { background: var(--apm-text-muted); }

/* Comment card */
.cd-comment-card[b-3ty9ixr8wh] {
    background: var(--apm-surface);
    border-radius: var(--apm-radius-md);
    box-shadow: var(--apm-shadow-sm);
    padding: 14px 16px;
    margin-bottom: 16px;
    border-left: 4px solid var(--apm-primary);
}

.cd-comment-lbl[b-3ty9ixr8wh] {
    font-size: 0.57rem;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: var(--apm-text-muted);
    margin-bottom: 4px;
    font-weight: 600;
}

.cd-comment-text[b-3ty9ixr8wh] {
    font-size: 0.82rem;
    line-height: 1.5;
    color: var(--apm-text-primary);
}

/* Timeline card */
.cd-timeline-card[b-3ty9ixr8wh] {
    background: var(--apm-surface);
    border-radius: var(--apm-radius-md);
    box-shadow: var(--apm-shadow-sm);
    padding: 14px 16px;
    margin-bottom: 16px;
}

.cd-tc-title[b-3ty9ixr8wh] {
    font-size: 0.6rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--apm-text-muted);
    font-weight: 700;
    margin-bottom: 14px;
}

/* Timeline */
.sr-timeline[b-3ty9ixr8wh] {
    position: relative;
    padding-left: 22px;
}

.sr-tl-item[b-3ty9ixr8wh] {
    position: relative;
    padding-bottom: 18px;
    padding-left: 18px;
}

.sr-tl-item[b-3ty9ixr8wh]::before {
    content: '';
    position: absolute;
    left: -17px;
    top: 14px;
    bottom: -4px;
    width: 2px;
    background: var(--apm-border);
    border-radius: 1px;
}

.sr-tl-item:last-child[b-3ty9ixr8wh]::before { display: none; }
.sr-tl-item:last-child[b-3ty9ixr8wh] { padding-bottom: 0; }

.sr-tl-item[b-3ty9ixr8wh]::after {
    content: '';
    position: absolute;
    left: -21px;
    top: 4px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid var(--apm-surface);
    box-shadow: 0 0 0 2px var(--apm-border);
    background: var(--apm-text-muted);
}

.sr-tl-item.tl-orange[b-3ty9ixr8wh]::after { background: var(--apm-warning); box-shadow: 0 0 0 3px var(--apm-warning-bg); }
.sr-tl-item.tl-blue[b-3ty9ixr8wh]::after   { background: var(--apm-primary); box-shadow: 0 0 0 3px var(--apm-primary-bg); }
.sr-tl-item.tl-green[b-3ty9ixr8wh]::after  { background: var(--apm-success); box-shadow: 0 0 0 3px var(--apm-success-bg); }
.sr-tl-item.tl-red[b-3ty9ixr8wh]::after    { background: var(--apm-error);   box-shadow: 0 0 0 3px var(--apm-error-bg); }
.sr-tl-item.tl-gray[b-3ty9ixr8wh]::after   { background: #94a3b8; box-shadow: 0 0 0 3px rgba(148,163,184,.15); }

.sr-tl-label[b-3ty9ixr8wh] {
    font-size: 0.77rem;
    font-weight: 600;
    margin-bottom: 2px;
    color: var(--apm-text-primary);
}

.sr-tl-time[b-3ty9ixr8wh] {
    font-size: 0.64rem;
    color: var(--apm-text-muted);
}

/* Action bar */
.cd-action-bar[b-3ty9ixr8wh] {
    flex-shrink: 0;
    padding: 16px 24px;
    border-top: 1px solid var(--apm-border);
    background: var(--apm-surface);
}

.cd-ab-note[b-3ty9ixr8wh] {
    margin-bottom: 12px;
}

.cd-ab-note textarea[b-3ty9ixr8wh] {
    width: 100%;
    padding: 11px 13px;
    font-size: 0.78rem;
    font-family: inherit;
    border: 1px solid var(--apm-border);
    border-radius: var(--apm-radius-sm);
    background: var(--apm-surface);
    color: var(--apm-text-primary);
    resize: none;
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s;
    line-height: 1.5;
}

.cd-ab-note textarea:focus[b-3ty9ixr8wh] {
    border-color: var(--apm-primary);
    box-shadow: 0 0 0 3px rgba(67, 97, 238, 0.1);
}

.cd-ab-note textarea[b-3ty9ixr8wh]::placeholder {
    color: var(--apm-text-muted);
    font-size: 0.75rem;
}

.cd-ab-note textarea.note-error[b-3ty9ixr8wh] {
    border-color: var(--apm-error);
}

.cd-note-error-text[b-3ty9ixr8wh] {
    font-size: 0.68rem;
    color: var(--apm-error);
    margin-top: 4px;
    display: block;
}

.cd-ab-btns[b-3ty9ixr8wh] {
    display: flex;
    gap: 10px;
}

/* Action buttons */
.cd-action-btn[b-3ty9ixr8wh] {
    border-radius: var(--apm-radius-md);
    font-size: 0.78rem;
    font-weight: 600;
    padding: 10px 16px;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    flex: 1;
    cursor: pointer;
    font-family: inherit;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.cd-action-btn:hover:not(:disabled)[b-3ty9ixr8wh] {
    transform: translateY(-1px);
    box-shadow: var(--apm-shadow-md);
}

.cd-action-btn:disabled[b-3ty9ixr8wh] {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none !important;
    box-shadow: none !important;
}

.cd-action-btn .material-icons[b-3ty9ixr8wh] {
    font-size: 17px;
}

.cd-action-btn.approve[b-3ty9ixr8wh] {
    background: var(--apm-success);
    color: #fff;
}

.cd-action-btn.approve:hover:not(:disabled)[b-3ty9ixr8wh] {
    background: #0ea369;
}

.cd-action-btn.deny[b-3ty9ixr8wh] {
    background: var(--apm-error-bg);
    color: var(--apm-error);
    border: 1px solid var(--apm-error);
}

.cd-action-btn.deny:hover:not(:disabled)[b-3ty9ixr8wh] {
    background: var(--apm-error);
    color: #fff;
}

.cd-action-btn.skip[b-3ty9ixr8wh] {
    flex: 0 0 auto;
    min-width: 76px;
    background: transparent;
    border: 1px solid var(--apm-border);
    color: var(--apm-text-muted);
}

.cd-action-btn.skip:hover:not(:disabled)[b-3ty9ixr8wh] {
    border-color: var(--apm-primary);
    color: var(--apm-primary);
    background: var(--apm-primary-bg);
}

.cd-action-btn.request[b-3ty9ixr8wh] {
    background: var(--apm-warning-bg);
    color: var(--apm-warning);
    border: 1px solid var(--apm-warning);
    flex: 2;
}

.cd-action-btn.waived[b-3ty9ixr8wh] {
    background: rgba(148, 163, 184, 0.08);
    color: #64748b;
    border: 1px solid rgba(148, 163, 184, 0.3);
    flex: 2;
}

.cd-action-btn.confirmed[b-3ty9ixr8wh] {
    flex: 2;
    cursor: default;
}

.cd-action-btn.confirmed.approved[b-3ty9ixr8wh] {
    background: var(--apm-success-bg);
    color: var(--apm-success);
    border: 1px solid var(--apm-success);
}

.cd-action-btn.confirmed.denied[b-3ty9ixr8wh] {
    background: var(--apm-error-bg);
    color: var(--apm-error);
    border: 1px solid var(--apm-error);
}

.cd-action-btn.unlock[b-3ty9ixr8wh] {
    flex: 0 0 auto;
    min-width: 100px;
    background: transparent;
    border: 1px solid var(--apm-border);
    color: var(--apm-text-muted);
}

.cd-action-btn.unlock:hover:not(:disabled)[b-3ty9ixr8wh] {
    border-color: var(--apm-warning);
    color: var(--apm-warning);
    background: var(--apm-warning-bg);
}

/* Keyboard hints */
.cd-kb-hints[b-3ty9ixr8wh] {
    display: flex;
    gap: 14px;
    padding-top: 8px;
    justify-content: center;
}

.cd-kb[b-3ty9ixr8wh] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.6rem;
    color: var(--apm-text-muted);
}

.cd-kb kbd[b-3ty9ixr8wh] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 18px;
    padding: 0 4px;
    border-radius: 4px;
    border: 1px solid var(--apm-border);
    background: var(--apm-background);
    font-family: var(--apm-font-mono);
    font-size: 0.58rem;
    font-weight: 600;
    color: var(--apm-text-secondary);
}
/* /Components/Shared/DocumentViewerPanel.razor.rz.scp.css */
.cd-right-col[b-kb03qp8p0a] {
    width: var(--split-right);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #f0f1f5;
}

.cd-viewer-empty[b-kb03qp8p0a] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: var(--apm-text-muted);
    font-size: 0.82rem;
    height: 100%;
}

/* Doc toolbar */
.cd-doc-toolbar[b-kb03qp8p0a] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 14px;
    background: var(--apm-surface);
    border-bottom: 1px solid var(--apm-border);
    gap: 8px;
}

.cd-dt-file[b-kb03qp8p0a] {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.cd-dt-file .material-icons[b-kb03qp8p0a] {
    font-size: 17px;
    color: var(--apm-error);
    opacity: 0.7;
    flex-shrink: 0;
}

.cd-dt-filename[b-kb03qp8p0a] {
    font-size: 0.74rem;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cd-dt-filesize[b-kb03qp8p0a] {
    font-size: 0.64rem;
    color: var(--apm-text-muted);
    flex-shrink: 0;
}

.cd-dt-actions[b-kb03qp8p0a] {
    display: flex;
    align-items: center;
    gap: 3px;
    flex-shrink: 0;
}

.cd-dt-btn[b-kb03qp8p0a] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: var(--apm-radius-sm);
    border: 1px solid var(--apm-border);
    background: var(--apm-surface);
    color: var(--apm-text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
}

.cd-dt-btn:hover[b-kb03qp8p0a] {
    background: var(--apm-primary-bg);
    border-color: var(--apm-primary);
    color: var(--apm-primary);
}

.cd-dt-btn .material-icons[b-kb03qp8p0a] {
    font-size: 16px;
}

.cd-dt-zoom-label[b-kb03qp8p0a] {
    font-size: 0.66rem;
    font-family: var(--apm-font-mono);
    color: var(--apm-text-muted);
    min-width: 34px;
    text-align: center;
}

.cd-dt-sep[b-kb03qp8p0a] {
    width: 1px;
    height: 18px;
    background: var(--apm-border);
    margin: 0 3px;
}

.cd-dt-link[b-kb03qp8p0a] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--apm-primary);
    padding: 4px 9px;
    border-radius: var(--apm-radius-sm);
    border: 1px solid var(--apm-primary);
    background: transparent;
    cursor: pointer;
    transition: all 0.15s ease;
    text-decoration: none;
    white-space: nowrap;
}

.cd-dt-link:hover[b-kb03qp8p0a] {
    background: var(--apm-primary-bg);
}

.cd-dt-link .material-icons[b-kb03qp8p0a] {
    font-size: 14px;
}

/* Document viewport */
.cd-doc-viewport[b-kb03qp8p0a] {
    flex: 1;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    padding: 8px;
    min-height: 0;
}

.cd-a4-page[b-kb03qp8p0a] {
    flex: 1;
    width: 100%;
    min-height: 0;
    background: white;
    border-radius: 4px;
    box-shadow: 0 1px 3px rgba(0,0,0,.08), 0 8px 24px rgba(0,0,0,.06), 0 0 0 1px rgba(0,0,0,.04);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform 0.15s ease;
}

.cd-a4-page iframe[b-kb03qp8p0a] {
    flex: 1;
    width: 100%;
    border: none;
    display: block;
    min-height: 0;
}

.cd-a4-page img[b-kb03qp8p0a] {
    width: 100%;
    height: auto;
    display: block;
}

/* Responsive */
@media (max-width: 960px) {
    .cd-right-col[b-kb03qp8p0a] {
        width: 100%;
    }
}
/* /Components/Shared/EmptyState.razor.rz.scp.css */
@keyframes emptyStateFadeIn-b-7m9ztr78r7 {
    from {
        opacity: 0;
        transform: translateY(12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.empty-state-wrapper[b-7m9ztr78r7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 300px;
    padding: 32px 16px;
    animation: emptyStateFadeIn-b-7m9ztr78r7 0.4s ease-out;
}

.empty-state-icon-wrapper[b-7m9ztr78r7] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: rgba(100, 116, 139, 0.08);
}
/* /Components/Shared/LoadingSpinner.razor.rz.scp.css */
@keyframes loadingPulse-b-mov08f13mm {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.6;
    }
}

.loading-spinner-wrapper[b-mov08f13mm] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    animation: loadingPulse-b-mov08f13mm 2s ease-in-out infinite;
}

.loading-skeleton-wrapper[b-mov08f13mm] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 24px;
    animation: loadingPulse-b-mov08f13mm 2s ease-in-out infinite;
}
/* /Components/Shared/ReviewQueuePanel.razor.rz.scp.css */
.cd-queue-panel[b-q682qqlq6s] {
    width: 390px;
    flex-shrink: 0;
    background: var(--apm-surface);
    border-right: 1px solid var(--apm-border);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.cd-qp-head[b-q682qqlq6s] {
    padding: 16px 18px;
    border-bottom: 1px solid var(--apm-border);
    flex-shrink: 0;
}

.cd-qp-row[b-q682qqlq6s] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.cd-qp-title[b-q682qqlq6s] {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--apm-text-primary);
}

.cd-qp-count[b-q682qqlq6s] {
    font-size: 0.64rem;
    font-weight: 700;
    background: var(--apm-warning-bg);
    color: var(--apm-warning);
    border-radius: 20px;
    padding: 3px 10px;
}

.cd-qp-filters[b-q682qqlq6s] {
    display: flex;
    gap: 5px;
    flex-wrap: nowrap;
}

.sr-filter-chip[b-q682qqlq6s] {
    padding: 4px 11px;
    border-radius: 20px;
    font-size: 0.67rem;
    font-weight: 600;
    border: 1px solid var(--apm-border);
    color: var(--apm-text-muted);
    background: transparent;
    cursor: pointer;
    transition: all 0.2s ease;
    font-family: inherit;
}

.sr-filter-chip:hover[b-q682qqlq6s] {
    border-color: var(--apm-primary);
    color: var(--apm-primary);
    background: var(--apm-primary-bg);
}

.sr-filter-chip.active-warn[b-q682qqlq6s] {
    background: var(--apm-warning-bg);
    border-color: var(--apm-warning);
    color: var(--apm-warning);
}

/* Queue list */
.cd-queue-list[b-q682qqlq6s] {
    flex: 1;
    overflow-y: auto;
    padding: 10px;
}

.cd-queue-list[b-q682qqlq6s]::-webkit-scrollbar { width: 5px; }
.cd-queue-list[b-q682qqlq6s]::-webkit-scrollbar-track { background: transparent; }
.cd-queue-list[b-q682qqlq6s]::-webkit-scrollbar-thumb { background: var(--apm-border); border-radius: 4px; }
.cd-queue-list[b-q682qqlq6s]::-webkit-scrollbar-thumb:hover { background: var(--apm-text-muted); }

/* Queue item */
.cd-qi[b-q682qqlq6s] {
    padding: 12px 14px;
    border-radius: var(--apm-radius-md);
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    border: 2px solid transparent;
    border-left: 4px solid transparent;
    margin-bottom: 4px;
}

.cd-qi:hover[b-q682qqlq6s] {
    background: var(--apm-background);
    box-shadow: var(--apm-shadow-sm);
}

.cd-qi.selected[b-q682qqlq6s] {
    background: var(--apm-primary-bg);
    border-color: var(--apm-primary);
    border-left: 4px solid var(--apm-primary);
    box-shadow: var(--apm-shadow-sm);
}

.cd-qi-top[b-q682qqlq6s] {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 4px;
}

.cd-qi-voucher[b-q682qqlq6s] {
    font-family: var(--apm-font-mono);
    font-size: 0.72rem;
    color: var(--apm-primary);
    font-weight: 500;
}

.cd-qi-type[b-q682qqlq6s] {
    font-size: 0.57rem;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 20px;
    text-transform: uppercase;
    line-height: 1.3;
}

.cd-qi-type.ts[b-q682qqlq6s] { background: #fde8f0; color: #b54a6f; }
.cd-qi-type.tf[b-q682qqlq6s] { background: #e8f0fd; color: #4a6fa5; }
.cd-qi-type.tv[b-q682qqlq6s] { background: #e8fdf0; color: #2a9d5c; }

.cd-qi-date[b-q682qqlq6s] {
    font-size: 0.65rem;
    color: var(--apm-text-muted);
    margin-left: auto;
}

.cd-qi-desc[b-q682qqlq6s] {
    font-size: 0.78rem;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 4px;
    color: var(--apm-text-primary);
}

.cd-qi-bottom[b-q682qqlq6s] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.cd-qi-amount[b-q682qqlq6s] {
    font-family: var(--apm-font-mono);
    font-size: 0.73rem;
    font-weight: 500;
}

.cd-qi-amount.neg[b-q682qqlq6s] { color: var(--apm-error); }
.cd-qi-amount.pos[b-q682qqlq6s] { color: var(--apm-success); }

.cd-qi-status[b-q682qqlq6s] {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 0.64rem;
    font-weight: 600;
    color: var(--apm-text-muted);
}

.sr-sdot[b-q682qqlq6s] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex-shrink: 0;
    display: inline-block;
}

/* Empty state */
.sr-empty-state[b-q682qqlq6s] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: var(--apm-text-muted);
    gap: 10px;
    padding: 24px;
}

.sr-es-text[b-q682qqlq6s] {
    font-size: 0.82rem;
    color: var(--apm-text-muted);
}

/* Footer progress */
.cd-qp-footer[b-q682qqlq6s] {
    padding: 12px 18px;
    border-top: 1px solid var(--apm-border);
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

.cd-qp-pbar[b-q682qqlq6s] {
    flex: 1;
    height: 4px;
    background: var(--apm-border);
    border-radius: 2px;
    overflow: hidden;
}

.cd-qp-pfill[b-q682qqlq6s] {
    height: 100%;
    background: var(--apm-primary);
    border-radius: 2px;
    transition: width 0.3s ease;
}

.cd-qp-plabel[b-q682qqlq6s] {
    font-size: 0.65rem;
    color: var(--apm-text-muted);
    white-space: nowrap;
}

/* Responsive */
@media (max-width: 1100px) {
    .cd-queue-panel[b-q682qqlq6s] { width: 320px; }
}

@media (max-width: 960px) {
    .cd-queue-panel[b-q682qqlq6s] { width: 100%; }
}
/* /Components/Shared/ReviewStatsBar.razor.rz.scp.css */
.sr-stats-bar[b-1bqiwjyvy3] {
    display: flex;
    gap: 12px;
    padding: 16px 0;
    flex-shrink: 0;
}

.sr-stat[b-1bqiwjyvy3] {
    background: var(--apm-surface);
    border-radius: var(--apm-radius-md);
    padding: 14px 18px;
    box-shadow: var(--apm-shadow-sm);
    border-left: 4px solid transparent;
    flex: 1;
    min-width: 130px;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.sr-stat:hover[b-1bqiwjyvy3] {
    box-shadow: var(--apm-shadow-md);
    transform: translateY(-1px);
}

.sr-stat--orange[b-1bqiwjyvy3] { border-left-color: var(--apm-warning); }
.sr-stat--green[b-1bqiwjyvy3]  { border-left-color: var(--apm-success); }
.sr-stat--red[b-1bqiwjyvy3]    { border-left-color: var(--apm-error); }
.sr-stat--muted[b-1bqiwjyvy3]  { border-left-color: var(--apm-text-muted); }
.sr-stat--text[b-1bqiwjyvy3]   { border-left-color: var(--apm-primary); }

.sr-stat-num[b-1bqiwjyvy3] {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1;
    font-family: var(--apm-font-mono);
}

.sr-stat-num--orange[b-1bqiwjyvy3] { color: var(--apm-warning); }
.sr-stat-num--green[b-1bqiwjyvy3]  { color: var(--apm-success); }
.sr-stat-num--red[b-1bqiwjyvy3]    { color: var(--apm-error); }
.sr-stat-num--muted[b-1bqiwjyvy3]  { color: var(--apm-text-muted); }

.sr-stat-lbl[b-1bqiwjyvy3] {
    font-size: 0.6rem;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: var(--apm-text-muted);
    margin-top: 4px;
}

@media (max-width: 960px) {
    .sr-stats-bar[b-1bqiwjyvy3] {
        flex-wrap: wrap;
        gap: 8px;
        padding: 12px 0;
    }

    .sr-stat[b-1bqiwjyvy3] {
        min-width: 120px;
    }
}
/* /Components/Shared/SlidePanel.razor.rz.scp.css */
.slide-panel-overlay[b-t5uxmeuluz] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3);
    z-index: 1299;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    backdrop-filter: blur(2px);
}

.slide-panel-overlay.open[b-t5uxmeuluz] {
    opacity: 1;
    visibility: visible;
}

.slide-panel[b-t5uxmeuluz] {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: 60%;
    max-width: 900px;
    min-width: 500px;
    background: var(--apm-surface, #ffffff);
    z-index: 1300;
    transform: translateX(100%);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    flex-direction: column;
    box-shadow: -4px 0 24px rgba(0, 0, 0, 0.12);
}

.slide-panel.open[b-t5uxmeuluz] {
    transform: translateX(0);
}

.slide-panel-header[b-t5uxmeuluz] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.5rem;
    border-bottom: 1px solid var(--apm-border, #e2e8f0);
    min-height: 64px;
    flex-shrink: 0;
}

.slide-panel-header-content[b-t5uxmeuluz] {
    flex: 1;
    min-width: 0;
}

.slide-panel-body[b-t5uxmeuluz] {
    flex: 1;
    overflow-y: auto;
    padding: 1.5rem;
}

@media (max-width: 1200px) {
    .slide-panel[b-t5uxmeuluz] {
        width: 75%;
    }
}

@media (max-width: 768px) {
    .slide-panel[b-t5uxmeuluz] {
        width: 100%;
        min-width: 0;
    }
}

/* Compact tabs inside slide panels */
[b-t5uxmeuluz] .mud-tabs .mud-tabs-toolbar {
    min-height: 40px;
}

[b-t5uxmeuluz] .mud-tab {
    font-size: 0.78rem;
    min-height: 40px;
    min-width: 0;
    padding: 4px 12px;
    letter-spacing: 0;
}

[b-t5uxmeuluz] .mud-tab .mud-icon-root {
    font-size: 18px !important;
    width: 18px;
    height: 18px;
}
/* /Components/Shared/TaskSlidePanel.razor.rz.scp.css */
/* ── Field Grid (scoped copy — CSS isolation prevents sharing with ClientSlidePanel) ── */

.csp-fields[b-c109e3193e] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px 24px;
}

.csp-field[b-c109e3193e] {
    display: flex;
    flex-direction: column;
    align-items: flex-start; /* prevents chips from stretching full-width */
    gap: 4px;
    min-width: 0;
}

.csp-field--full[b-c109e3193e] {
    grid-column: 1 / -1;
}

.csp-label[b-c109e3193e] {
    font-family: var(--apm-font-mono);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--apm-text-muted);
    line-height: 1;
}

.csp-value[b-c109e3193e] {
    font-size: 13px;
    color: var(--apm-text-primary);
    font-weight: 500;
    line-height: 1.4;
    word-break: break-word;
}

/* ── Card (comments) ─────────────────────────────────────────────────────── */

.csp-card[b-c109e3193e] {
    border: 1px solid var(--apm-border);
    border-radius: var(--apm-radius-sm);
    padding: 12px 14px;
    margin-bottom: 8px;
    background: var(--apm-background);
    transition: border-color 0.15s ease;
}

.csp-card:last-child[b-c109e3193e] {
    margin-bottom: 0;
}

.csp-card-header[b-c109e3193e] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
}

.csp-card-name[b-c109e3193e] {
    font-size: 13px;
    font-weight: 600;
    color: var(--apm-text-primary);
    line-height: 1.3;
}

/* ── Section containers ──────────────────────────────────────────────────── */

.tsp-section[b-c109e3193e] {
    border: 1px solid var(--apm-border);
    border-radius: var(--apm-radius-sm);
    padding: 14px 16px;
    margin-bottom: 12px;
    background: var(--apm-surface);
}

.tsp-section-label[b-c109e3193e] {
    display: block;
    font-family: var(--apm-font-mono);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: var(--apm-primary);
    margin-bottom: 14px;
}

/* ── Comments ────────────────────────────────────────────────────────────── */

.tsp-comments-header[b-c109e3193e] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.tsp-comment-time[b-c109e3193e] {
    font-family: var(--apm-font-mono);
    font-size: 10px;
    color: var(--apm-text-muted);
    flex-shrink: 0;
}

.tsp-empty[b-c109e3193e] {
    font-size: 13px;
    color: var(--apm-text-muted);
    margin: 0;
}
