/* /Components/Layout/BlockedLayout.razor.rz.scp.css */
.blocked-layout-container[b-vxqv6p0dai] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
}

.blocked-header[b-vxqv6p0dai] {
    background-color: #ffffff;
    border-bottom: 1px solid #e5e7eb;
    padding: 1rem 2rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.blocked-brand[b-vxqv6p0dai] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.blocked-brand .brand-icon[b-vxqv6p0dai] {
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.25rem;
}

.blocked-brand .brand-text[b-vxqv6p0dai] {
    font-size: 1.25rem;
    font-weight: 600;
    color: #1f2937;
}

.blocked-main[b-vxqv6p0dai] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.blocked-footer[b-vxqv6p0dai] {
    background-color: #ffffff;
    border-top: 1px solid #e5e7eb;
    padding: 1rem 2rem;
    text-align: center;
}

.blocked-footer p[b-vxqv6p0dai] {
    margin: 0;
    color: #6b7280;
    font-size: 0.875rem;
}

@media (max-width: 576px) {
    .blocked-header[b-vxqv6p0dai] {
        padding: 0.75rem 1rem;
    }
    
    .blocked-brand .brand-icon[b-vxqv6p0dai] {
        width: 32px;
        height: 32px;
        font-size: 1rem;
    }
    
    .blocked-brand .brand-text[b-vxqv6p0dai] {
        font-size: 1rem;
    }
    
    .blocked-main[b-vxqv6p0dai] {
        padding: 1rem;
    }
}

/* /Components/Layout/DocsLayout.razor.rz.scp.css */
/* ========================================
   DocsLayout — public API documentation shell
   ======================================== */

.docs-shell[b-g6iofqasgy] {
    min-height: 100vh;
    background: #ffffff;
    color: #111827;
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    display: flex;
    flex-direction: column;
}

/* ─── Topbar ─── */
.docs-topbar[b-g6iofqasgy] {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: saturate(180%) blur(12px);
    -webkit-backdrop-filter: saturate(180%) blur(12px);
    border-bottom: 1px solid #e5e7eb;
}

.docs-topbar-inner[b-g6iofqasgy] {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 24px;
    height: 64px;
    display: flex;
    align-items: center;
    gap: 24px;
}

.docs-brand[b-g6iofqasgy] {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: #111827;
    flex-shrink: 0;
}

.brand-text[b-g6iofqasgy] {
    display: flex;
    flex-direction: column;
    line-height: 1;
}

.brand-name[b-g6iofqasgy] {
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -0.2px;
}

.brand-tag[b-g6iofqasgy] {
    font-size: 11px;
    color: #6b7280;
    margin-top: 3px;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    font-weight: 600;
}

.docs-search-wrap[b-g6iofqasgy] {
    flex: 1;
    max-width: 440px;
}

.docs-topnav[b-g6iofqasgy] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.docs-topnav-link[b-g6iofqasgy] {
    color: #4b5563;
    font-size: 14px;
    font-weight: 500;
    padding: 8px 12px;
    border-radius: 6px;
    text-decoration: none;
    transition: all 0.12s ease;
}

.docs-topnav-link:hover[b-g6iofqasgy] {
    background: #f3f4f6;
    color: #111827;
}

.docs-scalar-btn[b-g6iofqasgy] { margin-left: 8px; }

.docs-mobile-toggle[b-g6iofqasgy] {
    display: none;
    background: none;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 6px 10px;
    font-size: 18px;
    color: #4b5563;
    cursor: pointer;
}

/* ─── Layout grid ─── */
.docs-layout[b-g6iofqasgy] {
    display: grid;
    grid-template-columns: 280px 1fr;
    max-width: 1400px;
    margin: 0 auto;
    width: 100%;
    flex: 1;
    align-items: start;
}

.docs-sidebar[b-g6iofqasgy] {
    position: sticky;
    top: 64px;
    height: calc(100vh - 64px);
    overflow-y: auto;
    padding: 32px 16px 32px 24px;
    border-right: 1px solid #f3f4f6;
}

.docs-main[b-g6iofqasgy] {
    padding: 40px 48px 80px;
    min-width: 0;
    max-width: 920px;
}

/* ─── Footer ─── */
.docs-footer[b-g6iofqasgy] {
    margin-top: 80px;
    padding: 24px 0;
    border-top: 1px solid #e5e7eb;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #6b7280;
    font-size: 13px;
    flex-wrap: wrap;
    gap: 12px;
}

.docs-footer a[b-g6iofqasgy] {
    color: #6b7280;
    text-decoration: none;
}

.docs-footer a:hover[b-g6iofqasgy] { color: var(--brand-600); }

.docs-footer .sep[b-g6iofqasgy] { margin: 0 8px; opacity: 0.5; }

.docs-footer-links[b-g6iofqasgy] { display: flex; align-items: center; }

/* ─── Responsive ─── */
@media (max-width: 900px) {
    .docs-layout[b-g6iofqasgy] { grid-template-columns: 1fr; }
    .docs-sidebar[b-g6iofqasgy] {
        position: fixed;
        top: 64px;
        left: 0;
        bottom: 0;
        width: 280px;
        background: white;
        transform: translateX(-100%);
        transition: transform 0.2s ease;
        z-index: 40;
        border-right: 1px solid #e5e7eb;
    }
    .docs-menu-open .docs-sidebar[b-g6iofqasgy] { transform: translateX(0); }
    .docs-main[b-g6iofqasgy] { padding: 24px 20px 60px; }
    .docs-topnav-link[b-g6iofqasgy] { display: none; }
    .docs-mobile-toggle[b-g6iofqasgy] { display: inline-flex; }
    .docs-search-wrap[b-g6iofqasgy] { max-width: 260px; }
}

@media (max-width: 600px) {
    /* min-width:0 lets the search field shrink past the intrinsic width of the
       <input>; without it the wider wordmark pushes the topbar past the
       viewport instead of squeezing the field. */
    .docs-search-wrap[b-g6iofqasgy] { max-width: 180px; min-width: 0; }
    /* The logo was the product-name carrier on small screens; with it removed,
       the text brand ("LP3 API · Docs") is now the only brand, so keep it
       visible instead of hiding "LP3 API". */
    .docs-scalar-btn[b-g6iofqasgy] { display: none; }
}
/* /Components/Layout/HelpDrawer.razor.rz.scp.css */
/* Context-aware Help drawer (feature 032). Slides in from the right, mirroring the app's
   overlay chrome. Uses leca-theme tokens; interactive radius 10, flat surfaces, no gradients. */

.help-drawer-root[b-uf5v8nn6kd] {
    position: fixed;
    inset: 0;
    z-index: 1080;
    pointer-events: none;
    visibility: hidden;
}

.help-drawer-root.open[b-uf5v8nn6kd] {
    pointer-events: auto;
    visibility: visible;
}

.help-drawer-backdrop[b-uf5v8nn6kd] {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, 0.28);
    opacity: 0;
    transition: opacity 0.2s ease;
}

.help-drawer-root.open .help-drawer-backdrop[b-uf5v8nn6kd] {
    opacity: 1;
}

.help-drawer-panel[b-uf5v8nn6kd] {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: min(440px, 100%);
    background: var(--bg-surface);
    border-left: 1px solid var(--border-light);
    box-shadow: var(--shadow-xl);
    display: flex;
    flex-direction: column;
    transform: translateX(100%);
    transition: transform 0.24s cubic-bezier(0.16, 1, 0.3, 1);
}

.help-drawer-root.open .help-drawer-panel[b-uf5v8nn6kd] {
    transform: translateX(0);
}

.help-drawer-header[b-uf5v8nn6kd] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--border-light);
    flex-shrink: 0;
}

.help-drawer-breadcrumb[b-uf5v8nn6kd] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.35rem;
    font-size: 0.8125rem;
    color: var(--text-muted);
    min-width: 0;
}

.help-drawer-crumb[b-uf5v8nn6kd] {
    color: var(--text-muted);
    text-decoration: none;
}

a.help-drawer-crumb:hover[b-uf5v8nn6kd] {
    color: var(--brand-600);
    text-decoration: underline;
}

.help-drawer-crumb-sep[b-uf5v8nn6kd] {
    font-size: 0.625rem;
    color: var(--text-disabled);
}

.help-drawer-close[b-uf5v8nn6kd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--border-light);
    border-radius: 10px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.15s ease, color 0.15s ease;
}

.help-drawer-close:hover[b-uf5v8nn6kd] {
    background: var(--bg-hover);
    color: var(--text-primary);
}

.help-drawer-close:active[b-uf5v8nn6kd] {
    transform: scale(0.96);
}

.help-drawer-body[b-uf5v8nn6kd] {
    flex: 1;
    overflow-y: auto;
    padding: 1.25rem 1.25rem 2rem;
    scroll-behavior: smooth;
}

.help-drawer-title[b-uf5v8nn6kd] {
    font-size: 1.375rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: var(--text-primary);
    margin: 0 0 0.35rem;
}

.help-drawer-summary[b-uf5v8nn6kd] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
    line-height: 1.55;
    margin: 0 0 1rem;
}

.help-drawer-note[b-uf5v8nn6kd] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.625rem 0.75rem;
    margin-bottom: 1rem;
    background: var(--bg-info);
    border: 1px solid var(--info-200);
    border-radius: 10px;
    font-size: 0.8125rem;
    color: var(--info-700);
}

.help-drawer-toc[b-uf5v8nn6kd] {
    background: var(--bg-subtle);
    border: 1px solid var(--border-light);
    border-radius: 10px;
    padding: 0.75rem 0.875rem;
    margin-bottom: 1.25rem;
}

.help-drawer-toc-label[b-uf5v8nn6kd] {
    display: block;
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted);
    margin-bottom: 0.5rem;
}

.help-drawer-toc ul[b-uf5v8nn6kd] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.help-drawer-toc li[b-uf5v8nn6kd] {
    margin: 0.15rem 0;
}

.help-drawer-toc a[b-uf5v8nn6kd] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    text-decoration: none;
}

.help-drawer-toc a:hover[b-uf5v8nn6kd] {
    color: var(--brand-600);
    text-decoration: underline;
}

.help-drawer-toc-l3[b-uf5v8nn6kd] { padding-left: 0.85rem; }
.help-drawer-toc-l4[b-uf5v8nn6kd] { padding-left: 1.6rem; }

.help-drawer-content[b-uf5v8nn6kd] {
    font-size: 0.9375rem;
    line-height: 1.65;
    color: var(--text-primary);
}

.help-drawer-content[b-uf5v8nn6kd]  h1,
.help-drawer-content[b-uf5v8nn6kd]  h2,
.help-drawer-content[b-uf5v8nn6kd]  h3 {
    letter-spacing: -0.01em;
    scroll-margin-top: 0.5rem;
    margin: 1.4rem 0 0.5rem;
}

.help-drawer-content[b-uf5v8nn6kd]  h1 { font-size: 1.2rem; }
.help-drawer-content[b-uf5v8nn6kd]  h2 { font-size: 1.05rem; }
.help-drawer-content[b-uf5v8nn6kd]  h3 { font-size: 0.95rem; }

.help-drawer-content[b-uf5v8nn6kd]  p,
.help-drawer-content[b-uf5v8nn6kd]  li {
    color: var(--text-secondary);
}

.help-drawer-content[b-uf5v8nn6kd]  a {
    color: var(--brand-600);
}

.help-drawer-content[b-uf5v8nn6kd]  code {
    background: var(--bg-subtle);
    padding: 0.1rem 0.35rem;
    border-radius: 6px;
    font-size: 0.85em;
}

.help-drawer-content[b-uf5v8nn6kd]  pre {
    background: var(--bg-secondary);
    padding: 0.75rem;
    border-radius: 10px;
    overflow-x: auto;
}

.help-drawer-content[b-uf5v8nn6kd]  img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    border: 1px solid var(--border-light);
}

.help-drawer-content[b-uf5v8nn6kd]  table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
    margin: 0.75rem 0;
}

.help-drawer-content[b-uf5v8nn6kd]  th,
.help-drawer-content[b-uf5v8nn6kd]  td {
    border: 1px solid var(--border-light);
    padding: 0.4rem 0.55rem;
    text-align: left;
}

.help-drawer-content[b-uf5v8nn6kd]  details.help-details {
    border: 1px solid var(--border-light);
    border-radius: 10px;
    padding: 0.5rem 0.75rem;
    margin: 0.75rem 0;
    background: var(--bg-subtle);
}

.help-drawer-content[b-uf5v8nn6kd]  details.help-details summary {
    cursor: pointer;
    font-weight: 600;
    color: var(--text-primary);
}

.help-drawer-related[b-uf5v8nn6kd] {
    margin-top: 1.5rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border-light);
}

.help-drawer-related h3[b-uf5v8nn6kd] {
    font-size: 0.8125rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted);
    margin: 0 0 0.5rem;
}

.help-drawer-related ul[b-uf5v8nn6kd] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.help-drawer-related li[b-uf5v8nn6kd] {
    margin: 0.2rem 0;
}

.help-drawer-related a[b-uf5v8nn6kd] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.875rem;
    color: var(--brand-600);
    text-decoration: none;
}

.help-drawer-related a:hover[b-uf5v8nn6kd] {
    text-decoration: underline;
}

.help-drawer-footer[b-uf5v8nn6kd] {
    margin-top: 1.5rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border-light);
}

.help-drawer-fullpage[b-uf5v8nn6kd] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.5rem 0.9rem;
    background: var(--brand-600);
    color: var(--text-inverse);
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.15s ease;
}

.help-drawer-fullpage:hover[b-uf5v8nn6kd] {
    background: var(--brand-700);
    color: var(--text-inverse);
}

.help-drawer-fullpage:active[b-uf5v8nn6kd] {
    transform: scale(0.98);
}

.help-drawer-empty[b-uf5v8nn6kd] {
    text-align: center;
    padding: 2.5rem 1rem;
}

.help-drawer-empty-icon[b-uf5v8nn6kd] {
    font-size: 2.5rem;
    color: var(--brand-300);
}

.help-drawer-empty h2[b-uf5v8nn6kd] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0.75rem 0 0.35rem;
}

.help-drawer-empty p[b-uf5v8nn6kd] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0 auto 1.25rem;
    max-width: 30ch;
    line-height: 1.55;
}

/* Full-width sheet on mobile (< 768px). */
@media (max-width: 767px) {
    .help-drawer-panel[b-uf5v8nn6kd] {
        width: 100%;
        border-left: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .help-drawer-panel[b-uf5v8nn6kd],
    .help-drawer-backdrop[b-uf5v8nn6kd] {
        transition: none;
    }
}
/* /Components/Layout/LandingLayout.razor.rz.scp.css */
.landing-page-container[b-outtxs9lw9] {
    width: 100%;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: #F8FAFC;
}

.landing-nav[b-outtxs9lw9] {
    background: white;
    border-bottom: 1px solid #E5E7EB;
    padding: 12px 40px;
    position: sticky;
    top: 0;
    z-index: 1000;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

.landing-nav-content[b-outtxs9lw9] {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.landing-brand[b-outtxs9lw9] {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
}

/* lendiligence.png is a 443x61 horizontal wordmark; same height-only sizing as
   the borrower payment header (Components/Pages/BorrowerPaymentPage.razor.css),
   trimmed to 32px so the nav row keeps its original height. */
.landing-brand img[b-outtxs9lw9] {
    height: 32px;
    width: auto;
}

.landing-nav-links[b-outtxs9lw9] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.landing-nav-links .btn[b-outtxs9lw9] {
    padding: 8px 20px;
    font-size: 13px;
    font-weight: 600;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    transition: all 0.15s;
    text-decoration: none;
}

.landing-nav-links .btn-primary[b-outtxs9lw9] {
    background: var(--brand-500);
    color: white;
}

.landing-nav-links .btn-primary:hover[b-outtxs9lw9] {
    background: var(--brand-600, #0a526a);
}

.landing-nav-links .btn-outline-primary[b-outtxs9lw9] {
    background: transparent;
    color: var(--brand-500);
    border: 1.5px solid var(--brand-500);
}

.landing-nav-links .btn-outline-primary:hover[b-outtxs9lw9] {
    background: var(--brand-50, #f0f9ff);
}

.landing-main[b-outtxs9lw9] {
    flex: 1;
    width: 100%;
}

@media (max-width: 768px) {
    .landing-nav[b-outtxs9lw9] {
        padding: 10px 16px;
    }

    .landing-nav-links[b-outtxs9lw9] {
        gap: 8px;
    }

    .landing-nav-links .btn[b-outtxs9lw9] {
        padding: 6px 14px;
        font-size: 12px;
    }

    .landing-brand img[b-outtxs9lw9] {
        height: 26px;
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-f1470x2kop] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-f1470x2kop] {
    flex: 1;
}

.sidebar[b-f1470x2kop] {
    background: var(--sidebar-bg);
}

.top-row[b-f1470x2kop] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-f1470x2kop]  a, .top-row[b-f1470x2kop]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-f1470x2kop]  a:hover, .top-row[b-f1470x2kop]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-f1470x2kop]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-f1470x2kop] {
        justify-content: space-between;
    }

    .top-row[b-f1470x2kop]  a, .top-row[b-f1470x2kop]  .btn-link {
        margin-left: 0;
    }
}

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

    .sidebar[b-f1470x2kop] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-f1470x2kop] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-f1470x2kop]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-f1470x2kop], article[b-f1470x2kop] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-f1470x2kop] {
    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-f1470x2kop] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-9yh9h2lydv] {
    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-9yh9h2lydv] {
    background-color: rgba(255, 255, 255, 0.5);
}

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

.navbar-brand[b-9yh9h2lydv] {
    font-size: 1.1rem;
}

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

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

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

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

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

.nav-scrollable[b-9yh9h2lydv] {
    display: none;
}

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

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

    .nav-scrollable[b-9yh9h2lydv] {
        /* 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/PrintableLayout.razor.rz.scp.css */
.printable-layout[b-qocul9y5si] {
    min-height: 100vh;
    background: #f1f5f9;
}

@media print {
    .printable-layout[b-qocul9y5si] {
        background: white;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-4eqpge4c3g],
.components-reconnect-repeated-attempt-visible[b-4eqpge4c3g],
.components-reconnect-failed-visible[b-4eqpge4c3g],
.components-pause-visible[b-4eqpge4c3g],
.components-resume-failed-visible[b-4eqpge4c3g],
.components-rejoining-animation[b-4eqpge4c3g] {
    display: none;
}

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


#components-reconnect-modal[b-4eqpge4c3g] {
    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-4eqpge4c3g 0.5s both;
    &[open]

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

}

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

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

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

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

    100% {
        opacity: 1;
    }
}

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

    100% {
        opacity: 0;
    }
}

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

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

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

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

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

.components-rejoining-animation[b-4eqpge4c3g] {
    position: relative;
    width: 80px;
    height: 80px;
}

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

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

@keyframes components-rejoining-animation-b-4eqpge4c3g {
    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/Layout/SigningLayout.razor.rz.scp.css */
.signing-layout[b-tm3drj44uo] {
    min-height: 100vh;
    background: #F8FAFC;
    display: flex;
    flex-direction: column;
}
/* /Components/Pages/Account/AccessDeniedPage.razor.rz.scp.css */
.error-container[b-6rq998sga2] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 70vh;
    padding: 2rem;
}

.error-card[b-6rq998sga2] {
    background: linear-gradient(135deg, #fff5f5 0%, #ffffff 100%);
    border-radius: 12px;
    padding: 3rem;
    max-width: 500px;
    width: 100%;
    text-align: center;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    border: 1px solid #fecaca;
}

.error-icon[b-6rq998sga2] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    font-size: 2.5rem;
}

.error-icon-denied[b-6rq998sga2] {
    background-color: #fee2e2;
    color: var(--error-600);
}

.error-card h1[b-6rq998sga2] {
    color: #1a1a1a;
    font-size: 1.75rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
}

.error-message[b-6rq998sga2] {
    color: #666;
    font-size: 1.1rem;
    margin-bottom: 1rem;
}

.attempted-url[b-6rq998sga2] {
    background-color: #f8f9fa;
    border-radius: 8px;
    padding: 0.75rem 1rem;
    margin-bottom: 1.5rem;
    font-size: 0.9rem;
}

.attempted-url span[b-6rq998sga2] {
    color: #666;
    display: block;
    margin-bottom: 0.25rem;
}

.attempted-url code[b-6rq998sga2] {
    color: var(--error-600);
    background-color: transparent;
    font-size: 0.95rem;
    word-break: break-all;
}

.error-actions[b-6rq998sga2] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    align-items: center;
}

.error-actions .btn[b-6rq998sga2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    border-radius: 8px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s;
    min-width: 200px;
}

.error-actions .btn-primary[b-6rq998sga2] {
    background-color: #f87171;
    color: white;
    border: none;
}

.error-actions .btn-primary:hover[b-6rq998sga2] {
    background-color: #ef4444;
}

.error-actions .btn-outline-secondary[b-6rq998sga2] {
    background-color: transparent;
    color: #9ca3af;
    border: 1px solid #d1d5db;
}

.error-actions .btn-outline-secondary:hover[b-6rq998sga2] {
    background-color: #f3f4f6;
    color: #6b7280;
}

@media (max-width: 576px) {
    .error-card[b-6rq998sga2] {
        padding: 2rem 1.5rem;
    }
    
    .error-icon[b-6rq998sga2] {
        width: 64px;
        height: 64px;
        font-size: 2rem;
    }
    
    .error-card h1[b-6rq998sga2] {
        font-size: 1.5rem;
    }
    
    .error-actions .btn[b-6rq998sga2] {
        width: 100%;
    }
}

/* /Components/Pages/Account/NoTenantAssignedPage.razor.rz.scp.css */
/* ===========================
   No Tenant Assigned Page
   =========================== */

.no-tenant-container[b-69a1larp95] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: calc(100vh - 140px);
    padding: 2rem;
}

.no-tenant-card[b-69a1larp95] {
    background: #ffffff;
    border-radius: 12px;
    max-width: 480px;
    width: 100%;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.08);
}

/* Header Section */
.card-header-section[b-69a1larp95] {
    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
    padding: 1.5rem 1.5rem 1.25rem;
    text-align: center;
    border-bottom: 1px solid #fcd34d;
    border-radius: 12px 12px 0 0;
}

.status-icon[b-69a1larp95] {
    width: 56px;
    height: 56px;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 0.75rem;
    font-size: 1.5rem;
    color: white;
    box-shadow: 0 3px 8px rgba(245, 158, 11, 0.3);
}

.card-header-section h1[b-69a1larp95] {
    color: #92400e;
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0 0 0.25rem;
}

.card-header-section .subtitle[b-69a1larp95] {
    color: #b45309;
    font-size: 0.8rem;
    margin: 0;
    line-height: 1.4;
}

/* User Info Section */
.user-info-section[b-69a1larp95] {
    display: flex;
    flex-direction: column;
    gap: 0;
    background: #fafafa;
    border-bottom: 1px solid #e5e7eb;
}

.info-item[b-69a1larp95] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1rem;
    border-bottom: 1px solid #e5e7eb;
}

.info-item:last-child[b-69a1larp95] {
    border-bottom: none;
}

.info-icon[b-69a1larp95] {
    width: 32px;
    height: 32px;
    background: #f3f4f6;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
    font-size: 0.9rem;
    flex-shrink: 0;
}

.info-content[b-69a1larp95] {
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
}

.info-label[b-69a1larp95] {
    font-size: 0.65rem;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
}

.info-value[b-69a1larp95] {
    font-size: 0.85rem;
    color: #1f2937;
    font-weight: 500;
    word-break: break-all;
}

/* Content Section */
.content-section[b-69a1larp95] {
    padding: 1rem;
    overflow: visible;
}

/* Status Card - Pending */
.status-card[b-69a1larp95] {
    border-radius: 12px;
    overflow: hidden;
}

.status-pending[b-69a1larp95] {
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border: 1px solid #93c5fd;
}

.status-header[b-69a1larp95] {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #93c5fd;
}

.status-badge[b-69a1larp95] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: #3b82f6;
    color: white;
    padding: 0.375rem 0.875rem;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
}

.status-badge i[b-69a1larp95] {
    animation: pulse-b-69a1larp95 2s infinite;
}

@keyframes pulse-b-69a1larp95 {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

.status-body[b-69a1larp95] {
    padding: 1.25rem;
}

.status-body h4[b-69a1larp95] {
    color: #1e40af;
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0 0 0.5rem;
}

.status-body > p[b-69a1larp95] {
    color: #3b82f6;
    font-size: 0.9rem;
    margin: 0 0 1rem;
}

.request-details[b-69a1larp95] {
    background: rgba(255, 255, 255, 0.6);
    border-radius: 8px;
    padding: 0.75rem 1rem;
}

.detail-row[b-69a1larp95] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0;
    color: #1e3a5f;
    font-size: 0.9rem;
}

.detail-row i[b-69a1larp95] {
    color: #3b82f6;
    width: 18px;
}

.detail-row strong[b-69a1larp95] {
    margin-left: auto;
    color: #1e40af;
}

.status-footer[b-69a1larp95] {
    padding: 1rem 1.25rem;
    background: rgba(255, 255, 255, 0.4);
    border-top: 1px solid #93c5fd;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    align-items: center;
}

.status-footer-secondary[b-69a1larp95] {
    display: flex;
    gap: 0.5rem;
    justify-content: center;
}

.status-footer-secondary .btn-sm[b-69a1larp95] {
    font-size: 0.75rem;
    padding: 0.25rem 0.625rem;
}

/* Request Form Card */
.request-form-card[b-69a1larp95] {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
}

.form-header[b-69a1larp95] {
    background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
    padding: 0.75rem 1rem;
    text-align: center;
    border-bottom: 1px solid #bbf7d0;
    border-radius: 10px 10px 0 0;
}

.form-header i[b-69a1larp95] {
    font-size: 1.25rem;
    color: var(--success-600);
    margin-bottom: 0.125rem;
    display: block;
}

.form-header h4[b-69a1larp95] {
    color: #166534;
    font-size: 0.9rem;
    font-weight: 600;
    margin: 0 0 0.125rem;
}

.form-header p[b-69a1larp95] {
    color: #15803d;
    font-size: 0.7rem;
    margin: 0;
}

.request-form[b-69a1larp95] {
    padding: 0;
}

.form-body[b-69a1larp95] {
    padding: 0.875rem 1rem 1rem;
    overflow: visible;
}

.form-section[b-69a1larp95] {
    margin-bottom: 0.875rem;
    padding-bottom: 0.875rem;
    border-bottom: 1px solid #f1f5f9;
    position: relative;
}

.form-section:last-of-type[b-69a1larp95] {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.form-label[b-69a1larp95] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 0.375rem;
    font-size: 0.8rem;
}

.form-label i[b-69a1larp95] {
    color: #6b7280;
    font-size: 0.8rem;
}

.optional-badge[b-69a1larp95] {
    font-size: 0.6rem;
    background: #f3f4f6;
    color: #6b7280;
    padding: 0.1rem 0.4rem;
    border-radius: 8px;
    font-weight: 500;
    margin-left: 0.25rem;
}

/* Bank Selector */
.bank-selector[b-69a1larp95] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.bank-dropdown[b-69a1larp95] {
    flex: 1;
    position: relative;
}

.bank-dropdown-btn[b-69a1larp95] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0.5rem 0.75rem;
    background: white;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 0.8rem;
    color: #6b7280;
    text-align: left;
    transition: all 0.2s;
}

.bank-dropdown-btn:hover[b-69a1larp95] {
    border-color: #9ca3af;
    background: #fafafa;
}

.bank-dropdown-btn:focus[b-69a1larp95] {
    outline: none;
    border-color: #3b82f6;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1);
}

.bank-dropdown-btn span[b-69a1larp95] {
    flex: 1;
}

.bank-dropdown-btn[b-69a1larp95]::after {
    margin-left: auto;
}

.bank-dropdown.show .bank-dropdown-btn[b-69a1larp95] {
    border-color: #3b82f6;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1);
}

.bank-dropdown-menu[b-69a1larp95] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 1000;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
    margin-top: 4px;
    display: none;
    overflow: hidden;
}

.bank-dropdown-menu.show[b-69a1larp95] {
    display: block;
}

.dropdown-search[b-69a1larp95] {
    padding: 0.625rem 0.75rem;
    position: relative;
    background: #f9fafb;
    border-bottom: 1px solid #e5e7eb;
}

.dropdown-search i[b-69a1larp95] {
    position: absolute;
    left: 1.125rem;
    top: 50%;
    transform: translateY(-50%);
    color: #9ca3af;
    font-size: 0.85rem;
}

.dropdown-search input[b-69a1larp95] {
    width: 100%;
    padding: 0.5rem 0.75rem 0.5rem 2rem;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    font-size: 0.8rem;
    background: white;
}

.dropdown-search input:focus[b-69a1larp95] {
    outline: none;
    border-color: #3b82f6;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1);
}

.dropdown-items[b-69a1larp95] {
    max-height: 180px;
    overflow-y: auto;
    padding: 0.25rem 0;
}

.dropdown-item[b-69a1larp95] {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0.5rem 0.875rem;
    border: none;
    background: none;
    text-align: left;
    font-size: 0.8rem;
    color: #374151;
    cursor: pointer;
    transition: background 0.15s;
}

.dropdown-item:hover[b-69a1larp95] {
    background: #f3f4f6;
}

.dropdown-item.active[b-69a1larp95] {
    background: #eff6ff;
    color: #1d4ed8;
}

.dropdown-item i[b-69a1larp95] {
    color: #9ca3af;
    font-size: 0.85rem;
}

.dropdown-item.active i[b-69a1larp95] {
    color: #3b82f6;
}

.bank-code[b-69a1larp95] {
    margin-left: auto;
    font-size: 0.65rem;
    color: #6b7280;
    background: #f3f4f6;
    padding: 0.125rem 0.4rem;
    border-radius: 4px;
    font-weight: 500;
}

.dropdown-item-empty[b-69a1larp95] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1.25rem;
    color: #9ca3af;
    font-size: 0.8rem;
}

.dropdown-item-empty i[b-69a1larp95] {
    font-size: 1.5rem;
    opacity: 0.5;
}

.dropdown-item-other[b-69a1larp95] {
    margin: 0.25rem 0.5rem 0.5rem;
    border-radius: 6px;
    color: #3b82f6;
    font-weight: 500;
    background: #f0f9ff;
    font-size: 0.8rem;
}

.dropdown-item-other:hover[b-69a1larp95] {
    background: #e0f2fe;
}

.btn-clear[b-69a1larp95] {
    padding: 0.375rem;
    color: #9ca3af;
    border-radius: 6px;
    transition: all 0.2s;
}

.btn-clear:hover[b-69a1larp95] {
    color: #ef4444;
    background: #fef2f2;
}

.manual-bank-input[b-69a1larp95] {
    animation: slideDown-b-69a1larp95 0.2s ease-out;
    background: #fefce8;
    border: 1px solid #fde68a;
    border-radius: 8px;
    padding: 0.75rem 1rem;
}

.manual-bank-input .form-label[b-69a1larp95] {
    margin-bottom: 0.375rem;
    font-size: 0.8rem;
}

@keyframes slideDown-b-69a1larp95 {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Form Controls */
.form-control[b-69a1larp95] {
    padding: 0.5rem 0.75rem;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 0.8rem;
    transition: all 0.2s;
    background: white;
}

.form-control:focus[b-69a1larp95] {
    outline: none;
    border-color: #3b82f6;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1);
}

.form-control[b-69a1larp95]::placeholder {
    color: #9ca3af;
    font-size: 0.8rem;
}

textarea.form-control[b-69a1larp95] {
    resize: vertical;
    min-height: 60px;
    line-height: 1.4;
}

/* Alert */
.alert[b-69a1larp95] {
    border-radius: 8px;
    padding: 0.625rem 0.875rem;
    font-size: 0.8rem;
    margin-bottom: 1rem;
}

.alert-danger[b-69a1larp95] {
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: var(--error-600);
}

/* Form Actions */
.form-actions[b-69a1larp95] {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
    padding-top: 0.75rem;
    border-top: 1px solid #f1f5f9;
    margin-top: 0.125rem;
}

.form-actions .btn[b-69a1larp95] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.4rem 0.875rem;
    border-radius: 8px;
    font-weight: 500;
    font-size: 0.8rem;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.form-actions .btn-primary[b-69a1larp95] {
    background: var(--brand-600, #004980);
    border: none;
    color: white;
    padding: 0.4rem 1rem;
}

.form-actions .btn-primary:hover:not(:disabled)[b-69a1larp95] {
    background: var(--brand-700, #003760);
}

.form-actions .btn-primary:disabled[b-69a1larp95] {
    opacity: 0.6;
    cursor: not-allowed;
}

.form-actions .btn-outline-secondary[b-69a1larp95] {
    background: transparent;
    border: 1px solid #E2E8F0;
    color: #64748B;
}

.form-actions .btn-outline-secondary:hover[b-69a1larp95] {
    background: #F1F5F9;
    border-color: #E2E8F0;
    color: #0F172A;
}

/* CTA Section */
.cta-section[b-69a1larp95] {
    text-align: center;
    padding: 0.25rem;
}

.cta-message[b-69a1larp95] {
    background: #f0f9ff;
    border: 1px solid #bae6fd;
    border-radius: 8px;
    padding: 0.875rem 1rem;
    margin-bottom: 1.25rem;
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    text-align: left;
}

.cta-message i[b-69a1larp95] {
    color: #0ea5e9;
    font-size: 1.125rem;
    flex-shrink: 0;
    margin-top: 0;
}

.cta-message p[b-69a1larp95] {
    color: #0369a1;
    font-size: 0.8rem;
    margin: 0;
    line-height: 1.4;
}

.action-buttons[b-69a1larp95] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    align-items: center;
}

.action-buttons .btn-lg[b-69a1larp95] {
    padding: 0.625rem 1.5rem;
    font-size: 0.875rem;
    border-radius: 10px;
}

.action-buttons .btn-primary[b-69a1larp95] {
    background: var(--brand-600, #004980);
    border: none;
    color: white;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.action-buttons .btn-primary:hover[b-69a1larp95] {
    background: var(--brand-700, #003760);
}

.secondary-actions[b-69a1larp95] {
    display: flex;
    gap: 0.75rem;
}

.secondary-actions .btn[b-69a1larp95] {
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
    border-radius: 8px;
}

.secondary-actions .btn-outline-secondary[b-69a1larp95] {
    background: transparent;
    border: 1px solid #E2E8F0;
    color: #64748B;
}

.secondary-actions .btn-outline-secondary:hover[b-69a1larp95] {
    background: #F1F5F9;
    border-color: #E2E8F0;
    color: #0F172A;
}

/* Responsive Design */
@media (max-width: 576px) {
    .no-tenant-container[b-69a1larp95] {
        padding: 1rem;
    }
    
    .no-tenant-card[b-69a1larp95] {
        border-radius: 12px;
    }
    
    .card-header-section[b-69a1larp95] {
        padding: 2rem 1.5rem 1.5rem;
    }
    
    .status-icon[b-69a1larp95] {
        width: 64px;
        height: 64px;
        font-size: 1.75rem;
    }
    
    .card-header-section h1[b-69a1larp95] {
        font-size: 1.5rem;
    }
    
    .info-item[b-69a1larp95] {
        padding: 0.875rem 1rem;
    }
    
    .content-section[b-69a1larp95] {
        padding: 1rem;
    }
    
    .form-header[b-69a1larp95] {
        padding: 1.25rem 1rem;
    }
    
    .request-form[b-69a1larp95] {
        padding: 1rem;
    }
    
    .form-actions[b-69a1larp95] {
        flex-direction: column-reverse;
    }
    
    .form-actions .btn[b-69a1larp95] {
        width: 100%;
    }
    
    .secondary-actions[b-69a1larp95] {
        flex-direction: column;
        width: 100%;
    }
    
    .secondary-actions .btn[b-69a1larp95] {
        width: 100%;
    }
    
    .detail-row[b-69a1larp95] {
        flex-wrap: wrap;
    }
    
    .detail-row strong[b-69a1larp95] {
        width: 100%;
        margin-left: 26px;
        margin-top: 0.25rem;
    }
}

/* Contact Support Modal — chrome (radius, white header, footer strip, backdrop)
   comes from the global wwwroot/css/modal-theme.css. */
.support-intro[b-69a1larp95] {
    color: #64748b;
    font-size: 0.85rem;
    margin-bottom: 1rem;
    line-height: 1.5;
}

.contact-options[b-69a1larp95] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.contact-option[b-69a1larp95] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 0.75rem;
    background: #f8fafc;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
}

.contact-icon[b-69a1larp95] {
    width: 36px;
    height: 36px;
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 0.9rem;
    flex-shrink: 0;
}

.contact-details[b-69a1larp95] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.contact-label[b-69a1larp95] {
    font-size: 0.7rem;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
}

.contact-value[b-69a1larp95] {
    font-size: 0.85rem;
    color: #1e293b;
    font-weight: 500;
    text-decoration: none;
}

.contact-value:hover[b-69a1larp95] {
    color: #3b82f6;
}

.support-note[b-69a1larp95] {
    background: #fefce8;
    border: 1px solid #fde68a;
    border-radius: 8px;
    padding: 0.75rem;
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    font-size: 0.8rem;
    color: #854d0e;
}

.support-note i[b-69a1larp95] {
    color: #ca8a04;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.contact-modal .modal-footer .btn[b-69a1larp95] {
    font-size: 0.85rem;
    padding: 0.55rem 1.15rem;
    border-radius: 10px;
    font-weight: 600;
}

.contact-modal .modal-footer .btn-secondary[b-69a1larp95] {
    background: transparent;
    border: 1px solid #E2E8F0;
    color: #64748B;
}

.contact-modal .modal-footer .btn-secondary:hover[b-69a1larp95] {
    background: #F1F5F9;
    color: #0F172A;
}

.contact-modal .modal-footer .btn-primary[b-69a1larp95] {
    background: var(--brand-600, #004980);
    border: none;
}

.contact-modal .modal-footer .btn-primary:hover[b-69a1larp95] {
    background: var(--brand-700, #003760);
}

.modal-backdrop[b-69a1larp95] {
    z-index: 1040;
}

.modal[b-69a1larp95] {
    z-index: 1050;
}
/* /Components/Pages/Account/ProfilePage.razor.rz.scp.css */
.profile-container[b-yvvg6bq6rq] {
    padding: 2rem;
    max-width: 900px;
    margin: 0 auto;
}

.page-header[b-yvvg6bq6rq] {
    margin-bottom: 2rem;
}

.page-header h2[b-yvvg6bq6rq] {
    color: #1a1a1a;
    font-size: 2rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.page-header p[b-yvvg6bq6rq] {
    color: #666;
    font-size: 1rem;
}

.profile-content[b-yvvg6bq6rq] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.profile-card[b-yvvg6bq6rq] {
    background: white;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: center;
    gap: 2rem;
}

.profile-avatar[b-yvvg6bq6rq] {
    flex-shrink: 0;
}

.avatar-img[b-yvvg6bq6rq] {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #f0f0f0;
}

.avatar-placeholder[b-yvvg6bq6rq] {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: #f0f0f0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 4rem;
    color: #999;
}

.profile-info[b-yvvg6bq6rq] {
    flex: 1;
}

.profile-info h3[b-yvvg6bq6rq] {
    color: #1a1a1a;
    font-size: 1.75rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.profile-email[b-yvvg6bq6rq] {
    color: #666;
    font-size: 1rem;
    margin-bottom: 1rem;
}

.profile-roles[b-yvvg6bq6rq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.badge[b-yvvg6bq6rq] {
    display: inline-block;
    padding: 0.35rem 0.65rem;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 500;
}

.bg-primary[b-yvvg6bq6rq] {
    background-color: #0d6efd;
    color: white;
}

.text-muted[b-yvvg6bq6rq] {
    color: #999;
}

.account-actions[b-yvvg6bq6rq] {
    display: flex;
    gap: 1rem;
}

.btn[b-yvvg6bq6rq] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 500;
    transition: all 0.2s;
    border: none;
    cursor: pointer;
}

.btn-danger[b-yvvg6bq6rq] {
    background-color: #dc3545;
    color: white;
}

.btn-danger:hover[b-yvvg6bq6rq] {
    background-color: #c82333;
}

.claims-section[b-yvvg6bq6rq] {
    background: white;
    border-radius: 12px;
    padding: 1.5rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.claims-section h4[b-yvvg6bq6rq] {
    color: #1a1a1a;
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 1rem;
}

.claims-grid[b-yvvg6bq6rq] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    max-height: 400px;
    overflow-y: auto;
}

.claim-row[b-yvvg6bq6rq] {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 1rem;
    padding: 0.75rem;
    border-bottom: 1px solid #f0f0f0;
}

.claim-row:last-child[b-yvvg6bq6rq] {
    border-bottom: none;
}

.claim-type[b-yvvg6bq6rq] {
    font-weight: 600;
    color: #555;
    word-break: break-word;
}

.claim-value[b-yvvg6bq6rq] {
    color: #333;
    word-break: break-all;
}

.not-authorized[b-yvvg6bq6rq] {
    background: white;
    border-radius: 12px;
    padding: 2rem;
    text-align: center;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* /Components/Pages/Admin/AdminActivityLogPage.razor.rz.scp.css */
.content-header[b-yvabkvhu23] { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
.content-title[b-yvabkvhu23] { font-size: 1.5rem; font-weight: 700; color: #1a1a2e; margin: 0; }
.content-subtitle[b-yvabkvhu23] { font-size: 0.8rem; color: #94A3B8; margin: 2px 0 0; }
.header-actions[b-yvabkvhu23] { display: flex; align-items: center; gap: 8px; }
.btn-header-action[b-yvabkvhu23] { width: 36px; height: 36px; border-radius: 50%; border: 1px solid #E2E8F0; background: white; display: flex; align-items: center; justify-content: center; cursor: pointer; color: #64748B; transition: all 0.2s; }
.btn-header-action:hover[b-yvabkvhu23] { background: #F1F5F9; color: #334155; }
/* /Components/Pages/Admin/AdminAlertsPage.razor.rz.scp.css */
.content-header[b-rzbixgxzl7] { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
.content-title[b-rzbixgxzl7] { font-size: 1.5rem; font-weight: 700; color: #1a1a2e; margin: 0; }
.content-subtitle[b-rzbixgxzl7] { font-size: 0.8rem; color: #94A3B8; margin: 2px 0 0; }
.header-actions[b-rzbixgxzl7] { display: flex; align-items: center; gap: 8px; }
.btn-header-action[b-rzbixgxzl7] { width: 36px; height: 36px; border-radius: 50%; border: 1px solid #E2E8F0; background: white; display: flex; align-items: center; justify-content: center; cursor: pointer; color: #64748B; transition: all 0.2s; }
.btn-header-action:hover[b-rzbixgxzl7] { background: #F1F5F9; color: #334155; }
/* /Components/Pages/Admin/AdminDashboardPage.razor.rz.scp.css */
/* ========================================
   Admin Dashboard Styles - Professional Theme Aligned
   ======================================== */

/* Dashboard Header */
.dashboard-header[b-je66ibfrcu] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 32px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--neutral-200);
}

.header-content[b-je66ibfrcu] {
    flex: 1;
}

.dashboard-title[b-je66ibfrcu] {
    font-size: 28px;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 8px 0;
    letter-spacing: -0.5px;
}

.dashboard-subtitle[b-je66ibfrcu] {
    font-size: 14px;
    color: var(--text-muted);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    font-weight: 500;
}

.separator[b-je66ibfrcu] {
    color: var(--text-muted);
    opacity: 0.5;
    margin: 0 4px;
}

.header-actions[b-je66ibfrcu] {
    display: flex;
    align-items: center;
    gap: 12px;
}

/* Header Actions & Buttons Alignment */
.header-actions > *[b-je66ibfrcu] {
    height: 40px; /* Enforce consistent height for all header actions */
}

/* Connection Indicator */
.connection-indicator[b-je66ibfrcu] {
    display: flex;
    align-items: center;
    justify-content: center; /* Center content */
    width: 40px; /* Fixed width to make it square */
    height: 40px; /* Fixed height */
    padding: 0; /* Remove padding */
    border-radius: 8px;
    background: white;
    border: 1px solid var(--neutral-200);
    color: var(--text-secondary);
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}

.connection-indicator i[b-je66ibfrcu] {
    font-size: 12px;
    margin: 0; /* Remove margin for perfect centering */
}

.connection-indicator.connected i[b-je66ibfrcu] {
    color: var(--success-500);
    animation: pulse-b-je66ibfrcu 2s ease-in-out infinite;
}

.connection-indicator.reconnecting i[b-je66ibfrcu] {
    color: var(--warning-500);
    animation: blink-b-je66ibfrcu 1s ease-in-out infinite;
}

.connection-indicator.disconnected i[b-je66ibfrcu] {
    color: var(--error-500);
}

/* Refresh Button */
.btn-refresh[b-je66ibfrcu] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--neutral-300);
    background: white;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s;
    color: var(--text-secondary);
    font-size: 18px;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}

.btn-refresh:hover:not(:disabled)[b-je66ibfrcu] {
    border-color: var(--brand-300);
    color: var(--brand-600);
    background: var(--brand-50);
}

.btn-refresh.spinning i[b-je66ibfrcu] {
    animation: spin-b-je66ibfrcu 1s linear infinite;
}

@keyframes spin-b-je66ibfrcu { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
@keyframes pulse-b-je66ibfrcu { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
@keyframes blink-b-je66ibfrcu { 0%, 50%, 100% { opacity: 1; } 25%, 75% { opacity: 0.3; } }

/* Entrance Animations */
@keyframes fadeInUp-b-je66ibfrcu {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.admin-stat-card[b-je66ibfrcu] {
    display: flex;
    flex-direction: column;
    animation: fadeInUp-b-je66ibfrcu 0.5s ease-out backwards;
}

/* Staggered animation delays for stat cards */
.admin-stat-card:nth-child(1)[b-je66ibfrcu] { animation-delay: 0.1s; }
.admin-stat-card:nth-child(2)[b-je66ibfrcu] { animation-delay: 0.2s; }
.admin-stat-card:nth-child(3)[b-je66ibfrcu] { animation-delay: 0.3s; }
.admin-stat-card:nth-child(4)[b-je66ibfrcu] { animation-delay: 0.4s; }

/* Animate main sections */
.row[b-je66ibfrcu] {
    animation: fadeInUp-b-je66ibfrcu 0.6s ease-out backwards;
}

/* Stagger row animations */
.row:nth-of-type(1)[b-je66ibfrcu] { animation-delay: 0.1s; } /* Stats grid row is actually inside .admin-card-grid which is not a .row but let's target specific containers */
.admin-card-grid[b-je66ibfrcu] { animation-delay: 0.1s; } 
.row:nth-of-type(2)[b-je66ibfrcu] { animation-delay: 0.2s; } /* Charts */
.row:nth-of-type(3)[b-je66ibfrcu] { animation-delay: 0.3s; } /* Quick Actions/Health */
.row:nth-of-type(4)[b-je66ibfrcu] { animation-delay: 0.4s; } /* Alerts */
.row:nth-of-type(5)[b-je66ibfrcu] { animation-delay: 0.5s; } /* Activity */

/* Admin Statistics Cards - Aligned with WorkbenchStatCard */
.admin-card-grid[b-je66ibfrcu] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    margin-bottom: 32px;
}

.admin-stat-card[b-je66ibfrcu] {
    background: white;
    border: 1px solid var(--neutral-200);
    border-radius: 12px;
    padding: 20px;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
    display: flex;
    flex-direction: column;
}

.admin-stat-card:hover[b-je66ibfrcu] {
    transform: translateY(-2px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.08);
    border-color: var(--brand-200);
}

.admin-stat-header[b-je66ibfrcu] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.admin-stat-label[b-je66ibfrcu] {
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-secondary);
}

.admin-stat-icon[b-je66ibfrcu] {
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, var(--brand-50) 0%, var(--white) 100%);
    color: var(--brand-600);
    border: 1px solid var(--brand-100);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    transition: transform 0.2s ease;
}

.admin-stat-card:hover .admin-stat-icon[b-je66ibfrcu] {
    transform: scale(1.05);
    background: linear-gradient(135deg, var(--brand-100) 0%, var(--brand-50) 100%);
    border-color: var(--brand-200);
}

.admin-stat-value[b-je66ibfrcu] {
    font-size: 32px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 4px;
    line-height: 1.2;
    letter-spacing: -0.5px;
}

.admin-stat-description[b-je66ibfrcu] {
    font-size: 13px;
    color: var(--text-muted);
    font-weight: 500;
}

/* Critical Alerts Banner */
.critical-alerts-banner[b-je66ibfrcu] {
    background: #FEF2F2;
    border: 1px solid #FECACA;
    border-left: 4px solid var(--error-600);
    border-radius: 8px;
    padding: 16px 20px;
    margin-bottom: 32px;
    box-shadow: 0 4px 6px rgba(220, 38, 38, 0.05);
}

.critical-alerts-header[b-je66ibfrcu] {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 16px;
    font-weight: 700;
    color: #991B1B;
    margin-bottom: 12px;
}

.critical-alerts-header i[b-je66ibfrcu] {
    font-size: 20px;
    color: var(--error-600);
}

.critical-alert-item[b-je66ibfrcu] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    background: white;
    border: 1px solid #FEE2E2;
    border-radius: 6px;
}

.critical-alert-item strong[b-je66ibfrcu] {
    color: #991B1B;
    font-weight: 600;
}

.btn-resolve[b-je66ibfrcu] {
    padding: 6px 16px;
    background-color: white;
    color: var(--error-600);
    border: 1px solid #FECACA;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-resolve:hover[b-je66ibfrcu] {
    background-color: #FEF2F2;
    border-color: #F87171;
}

/* Cards & Sections */
.card[b-je66ibfrcu] {
    background: white;
    border: 1px solid var(--neutral-200);
    border-radius: 12px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.04);
}

.card-body[b-je66ibfrcu] {
    padding: 20px;
}

.section-title[b-je66ibfrcu] {
    font-size: 16px;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 2px 0;
    letter-spacing: -0.3px;
}

.section-subtitle[b-je66ibfrcu] {
    font-size: 13px;
    color: var(--text-muted);
    margin: 0 0 16px 0;
}

.section-header-with-action[b-je66ibfrcu] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 16px;
}

/* Quick Actions */
.quick-actions-list[b-je66ibfrcu] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.quick-action-button[b-je66ibfrcu] {
    display: flex;
    align-items: center;
    padding: 12px 16px;
    background: white;
    border: 1px solid var(--neutral-200);
    border-radius: 8px;
    color: var(--text-primary);
    text-decoration: none;
    transition: all 0.2s;
    font-size: 13px;
    font-weight: 600;
    box-shadow: 0 1px 2px rgba(0,0,0,0.02);
}

.quick-action-button:hover[b-je66ibfrcu] {
    border-color: var(--brand-300);
    transform: translateX(4px);
    background: var(--brand-50);
    color: var(--brand-700);
}

.quick-action-button i[b-je66ibfrcu] {
    margin-right: 10px;
    font-size: 16px;
    color: var(--text-secondary);
    transition: color 0.2s;
}

.quick-action-button:hover i[b-je66ibfrcu] {
    color: var(--brand-600);
}

.quick-action-button.primary-action[b-je66ibfrcu] {
    border-color: var(--brand-200);
    background: var(--brand-50);
}

/* Quick Actions — customizable (edit mode) */
.quick-actions-header[b-je66ibfrcu] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
}

.quick-actions-header .section-subtitle[b-je66ibfrcu] {
    margin-bottom: 0;
}

.qa-edit-toggle[b-je66ibfrcu] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
    padding: 6px 12px;
    font-size: 13px;
    font-weight: 600;
    color: var(--brand-600);
    background: var(--brand-50);
    border: 1px solid var(--brand-100);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s;
}

.qa-edit-toggle:hover[b-je66ibfrcu] {
    background: var(--brand-100);
    color: var(--brand-700);
}

.qa-edit-toggle.active[b-je66ibfrcu] {
    color: var(--success-700);
    background: var(--success-50);
    border-color: var(--success-200);
}

.qa-edit-toggle i[b-je66ibfrcu] {
    font-size: 14px;
}

.qa-row-editing[b-je66ibfrcu] {
    justify-content: space-between;
    cursor: default;
}

.qa-row-editing:hover[b-je66ibfrcu] {
    transform: none;
    background: white;
    border-color: var(--neutral-200);
    color: var(--text-primary);
}

.qa-row-label[b-je66ibfrcu] {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.qa-row-label i[b-je66ibfrcu] {
    margin-right: 10px;
    font-size: 16px;
    color: var(--text-secondary);
}

.qa-row-actions[b-je66ibfrcu] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
}

.qa-icon-btn[b-je66ibfrcu] {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid transparent;
    border-radius: 6px;
    background: transparent;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s;
}

.qa-icon-btn i[b-je66ibfrcu] {
    margin: 0;
    font-size: 14px;
    color: inherit;
}

.qa-icon-btn:hover[b-je66ibfrcu] {
    background: var(--neutral-100);
    color: var(--brand-600);
    border-color: var(--neutral-200);
}

.qa-icon-btn-danger:hover[b-je66ibfrcu] {
    background: var(--error-50, #fef2f2);
    color: var(--error-600);
    border-color: var(--error-200, #fecaca);
}

.qa-add-btn[b-je66ibfrcu] {
    justify-content: center;
    border-style: dashed;
    color: var(--brand-600);
    font-weight: 600;
}

.qa-add-btn:hover[b-je66ibfrcu] {
    transform: none;
}

.qa-add-btn i[b-je66ibfrcu] {
    color: var(--brand-600);
}

.qa-external-indicator[b-je66ibfrcu] {
    margin-left: auto;
    margin-right: 0 !important;
    font-size: 12px !important;
    opacity: 0.6;
}

.qa-empty[b-je66ibfrcu] {
    font-size: 13px;
    color: var(--text-muted);
    margin: 4px 0;
    padding: 12px 16px;
    border: 1px dashed var(--neutral-200);
    border-radius: 8px;
    text-align: center;
}

.qa-icon-input[b-je66ibfrcu] {
    display: flex;
    align-items: stretch;
    gap: 8px;
}

.qa-icon-preview[b-je66ibfrcu] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    flex-shrink: 0;
    border: 1px solid var(--neutral-200);
    border-radius: 8px;
    background: var(--neutral-50);
    color: var(--brand-600);
    font-size: 18px;
}

/* System Health */
.health-status-list[b-je66ibfrcu] {
    display: flex;
    flex-direction: column;
    gap: 0;
    border: 1px solid var(--neutral-200);
    border-radius: 8px;
    overflow: hidden;
}

.health-status-item[b-je66ibfrcu] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 16px;
    border-bottom: 1px solid var(--neutral-100);
    background: white;
    transition: background-color 0.2s;
}

.health-status-item:hover[b-je66ibfrcu] {
    background-color: var(--neutral-50);
}

.health-status-item:last-child[b-je66ibfrcu] {
    border-bottom: none;
}

.health-status-label[b-je66ibfrcu] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.health-icon-wrapper[b-je66ibfrcu] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: var(--brand-50);
    color: var(--brand-600);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
}

.health-label-text[b-je66ibfrcu] {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary);
    line-height: 1.2;
}

.health-label-sub[b-je66ibfrcu] {
    display: block;
    font-size: 11px;
    color: var(--text-muted);
    line-height: 1.2;
}

.health-status-pill[b-je66ibfrcu] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 16px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.health-status-pill i[b-je66ibfrcu] {
    font-size: 12px;
}

.status-online[b-je66ibfrcu], .status-healthy[b-je66ibfrcu] { background: var(--success-50); color: var(--success-700); border: 1px solid var(--success-200); }
.status-warning[b-je66ibfrcu] { background: var(--warning-50); color: var(--warning-700); border: 1px solid var(--warning-200); }
.status-success[b-je66ibfrcu] { background: var(--success-50); color: var(--success-700); border: 1px solid var(--success-200); }

/* Alerts List */
.alerts-list[b-je66ibfrcu] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.alert-card[b-je66ibfrcu] {
    display: flex;
    gap: 16px;
    padding: 16px 20px;
    border-radius: 10px;
    background: white;
    border: 1px solid var(--neutral-200);
    transition: all 0.2s;
    position: relative;
    overflow: hidden;
}

.alert-card[b-je66ibfrcu]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
}

.alert-card.alert-critical[b-je66ibfrcu]::before { background: var(--error-500); }
.alert-card.alert-critical[b-je66ibfrcu] { background: #FEF2F2; border-color: #FECACA; }

.alert-card.alert-high[b-je66ibfrcu]::before { background: var(--error-500); }
.alert-card.alert-medium[b-je66ibfrcu]::before { background: var(--warning-500); }
.alert-card.alert-low[b-je66ibfrcu]::before { background: var(--info-500); }

.alert-content[b-je66ibfrcu] {
    flex: 1;
}

.alert-title-row[b-je66ibfrcu] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 6px;
}

.alert-title[b-je66ibfrcu] {
    font-size: 15px;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
}

.alert-description[b-je66ibfrcu] {
    font-size: 14px;
    color: var(--text-secondary);
    margin: 0 0 8px 0;
    line-height: 1.5;
}

.badge[b-je66ibfrcu] {
    padding: 4px 8px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.badge-critical[b-je66ibfrcu], .badge-high[b-je66ibfrcu] { background: var(--error-100); color: var(--error-700); }
.badge-category[b-je66ibfrcu] { background: white; border: 1px solid var(--neutral-200); color: var(--neutral-600); }

/* Activity Timeline */
.activity-timeline-compact[b-je66ibfrcu] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.activity-item-compact[b-je66ibfrcu] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 16px 0;
    border-bottom: 1px solid var(--neutral-100);
}

.activity-item-compact:last-child[b-je66ibfrcu] {
    border-bottom: none;
    padding-bottom: 0;
}

.activity-icon-compact[b-je66ibfrcu] {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: var(--neutral-50);
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
}

.activity-content-compact[b-je66ibfrcu] {
    flex: 1;
}

.activity-title-compact[b-je66ibfrcu] {
    font-size: 14px;
    color: var(--text-primary);
    font-weight: 600;
    margin-bottom: 4px;
}

.activity-meta-compact[b-je66ibfrcu] {
    font-size: 13px;
    color: var(--text-secondary);
}

.activity-time-compact[b-je66ibfrcu] {
    font-size: 12px;
    color: var(--text-muted);
    white-space: nowrap;
    font-weight: 500;
}

/* Utilities */
.view-all-link[b-je66ibfrcu] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--brand-600);
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
    padding: 6px 12px;
    border-radius: 6px;
    background: var(--brand-50);
    transition: all 0.2s;
}

.view-all-link:hover[b-je66ibfrcu] {
    background: var(--brand-100);
    color: var(--brand-700);
}

.performance-badge[b-je66ibfrcu] {
    position: fixed;
    bottom: 20px;
    right: 20px;
    padding: 6px 12px;
    background: rgba(31, 41, 55, 0.9);
    color: white;
    border-radius: 6px;
    font-size: 11px;
    font-family: monospace;
    z-index: 100;
    backdrop-filter: blur(4px);
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
}

.dashboard-loading[b-je66ibfrcu], .dashboard-error[b-je66ibfrcu] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    color: var(--text-muted);
}

.loading-spinner[b-je66ibfrcu] {
    font-size: 32px;
    color: var(--brand-500);
    margin-bottom: 16px;
}

/* Responsive */
@media (max-width: 1200px) {
    .admin-card-grid[b-je66ibfrcu] { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
    .header-actions[b-je66ibfrcu] { flex-wrap: wrap; }
    .alert-card[b-je66ibfrcu] { flex-direction: column; }
    .alert-actions[b-je66ibfrcu] { width: 100%; display: flex; justify-content: flex-end; }
}

@media (max-width: 480px) {
    .admin-card-grid[b-je66ibfrcu] { grid-template-columns: 1fr; }
    .dashboard-header[b-je66ibfrcu] { flex-direction: column; gap: 16px; }
    .header-actions[b-je66ibfrcu] { width: 100%; justify-content: space-between; }
}

.admin-tab-badge[b-je66ibfrcu] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    background-color: var(--error-600);
    color: white;
    font-size: 11px;
    font-weight: 700;
    border-radius: 10px;
}

.admin-tab-button.active .admin-tab-badge[b-je66ibfrcu] {
    background-color: var(--brand-600);
}

/* Tab Card */
.admin-tab-card[b-je66ibfrcu] {
    min-height: 400px;
}

.admin-tab-content[b-je66ibfrcu] {
    padding: 0;
}

.admin-tab-header[b-je66ibfrcu] {
    padding-bottom: 24px;
    border-bottom: 1px solid var(--border-light);
    margin-bottom: 24px;
}

.admin-tab-title[b-je66ibfrcu] {
    font-size: 20px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 4px;
}

.admin-tab-subtitle[b-je66ibfrcu] {
    font-size: 14px;
    color: var(--text-muted);
}

/* System Alerts List */
.system-alerts-list[b-je66ibfrcu] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.system-alert-item[b-je66ibfrcu] {
    position: relative;
    display: flex;
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(240, 247, 252, 0.6) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.2s;
}

.system-alert-item:hover[b-je66ibfrcu] {
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.12);
}

.system-alert-left-bar[b-je66ibfrcu] {
    width: 6px;
    flex-shrink: 0;
}

.system-alert-item.alert-high .system-alert-left-bar[b-je66ibfrcu] {
    background: linear-gradient(180deg, #EF4444 0%, #DC2626 100%);
}

.system-alert-item.alert-medium .system-alert-left-bar[b-je66ibfrcu] {
    background: linear-gradient(180deg, #3B82F6 0%, #2563EB 100%);
}

.system-alert-item.alert-low .system-alert-left-bar[b-je66ibfrcu] {
    background: linear-gradient(180deg, #6B7280 0%, #4B5563 100%);
}

.system-alert-content[b-je66ibfrcu] {
    flex: 1;
    padding: 20px 24px;
}

.system-alert-header[b-je66ibfrcu] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 12px;
    gap: 16px;
}

.system-alert-title-row[b-je66ibfrcu] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
}

.system-alert-title[b-je66ibfrcu] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.alert-priority-badge[b-je66ibfrcu] {
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.alert-priority-badge.badge-high[b-je66ibfrcu] {
    background-color: #FEE2E2;
    color: #991B1B;
}

.alert-priority-badge.badge-medium[b-je66ibfrcu] {
    background-color: #DBEAFE;
    color: #1E40AF;
}

.alert-priority-badge.badge-low[b-je66ibfrcu] {
    background-color: #F3F4F6;
    color: #374151;
}

.alert-category-badge[b-je66ibfrcu] {
    padding: 4px 10px;
    background-color: var(--neutral-100);
    color: var(--neutral-700);
    font-size: 11px;
    font-weight: 700;
    border-radius: 6px;
    letter-spacing: 0.05em;
}

.system-alert-actions[b-je66ibfrcu] {
    display: flex;
    gap: 8px;
}

.system-alert-description[b-je66ibfrcu] {
    font-size: 14px;
    color: var(--text-secondary);
    margin-bottom: 8px;
}

.system-alert-timestamp[b-je66ibfrcu] {
    font-size: 13px;
    color: var(--text-muted);
    margin: 0;
}

/* Button Styles */
.btn[b-je66ibfrcu] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 20px;
    border: 1px solid transparent;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    text-decoration: none;
}

.btn-primary[b-je66ibfrcu] {
    background-color: var(--brand-600);
    color: white;
}

.btn-primary:hover[b-je66ibfrcu] {
    background-color: var(--brand-700);
}

.btn-sm[b-je66ibfrcu] {
    padding: 6px 14px;
    font-size: 13px;
    border-radius: 8px;
}

.btn-outline-secondary[b-je66ibfrcu] {
    background: transparent;
    border-color: #E2E8F0;
    color: #64748B;
}

.btn-outline-secondary:hover[b-je66ibfrcu] {
    background-color: #F1F5F9;
    border-color: #E2E8F0;
    color: #0F172A;
}

/* Responsive Design */
@media (max-width: 768px) {
    .admin-card-grid[b-je66ibfrcu] {
        grid-template-columns: 1fr;
    }

    .admin-tabs-container[b-je66ibfrcu] {
        overflow-x: auto;
    }

    .system-alert-header[b-je66ibfrcu] {
        flex-direction: column;
        align-items: flex-start;
    }

    .system-alert-actions[b-je66ibfrcu] {
        width: 100%;
        justify-content: flex-end;
    }
}

/* ========================================
   Skeleton Loading State
   ======================================== */

@keyframes admin-dash-skel-pulse-b-je66ibfrcu {
    0% { opacity: 1; }
    50% { opacity: 0.5; }
    100% { opacity: 1; }
}

.skel-block[b-je66ibfrcu] {
    background: linear-gradient(90deg, #e5e7eb 25%, #f3f4f6 50%, #e5e7eb 75%);
    background-size: 200% 100%;
    animation: admin-dash-skel-pulse-b-je66ibfrcu 1.5s ease-in-out infinite;
    border-radius: 6px;
}

.skel-admin-header[b-je66ibfrcu] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 32px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--neutral-200);
}

.skel-admin-header-content[b-je66ibfrcu] {
    flex: 1;
}

.skel-admin-header-actions[b-je66ibfrcu] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.skel-admin-card-grid[b-je66ibfrcu] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    margin-bottom: 32px;
}

.skel-admin-card[b-je66ibfrcu] {
    background: white;
    border: 1px solid var(--neutral-200);
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
    display: flex;
    flex-direction: column;
}

.skel-admin-card-header[b-je66ibfrcu] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.skel-admin-secondary[b-je66ibfrcu] {
    display: grid;
    grid-template-columns: 7fr 5fr;
    gap: 24px;
    margin-bottom: 32px;
}

.skel-admin-section-card[b-je66ibfrcu] {
    background: white;
    border: 1px solid var(--neutral-200);
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
}

@media (max-width: 1200px) {
    .skel-admin-card-grid[b-je66ibfrcu] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .skel-admin-secondary[b-je66ibfrcu] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .skel-admin-card-grid[b-je66ibfrcu] {
        grid-template-columns: 1fr;
    }
    .skel-admin-header[b-je66ibfrcu] {
        flex-direction: column;
        gap: 16px;
    }
    .skel-admin-header-actions[b-je66ibfrcu] {
        width: 100%;
        justify-content: space-between;
    }
}
/* /Components/Pages/Admin/AdminPaymentSettingsPage.razor.rz.scp.css */
.settings-page[b-l3we4ufpr7] {
    padding: 24px 32px;
    max-width: 800px;
}

/* Header */
.page-header[b-l3we4ufpr7] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
}

.page-title[b-l3we4ufpr7] {
    font-size: 1.35rem;
    font-weight: 700;
    color: #1f2937;
    margin: 0;
}

.page-title i[b-l3we4ufpr7] {
    color: #0d6785;
    margin-right: 6px;
}

.page-subtitle[b-l3we4ufpr7] {
    font-size: 0.8rem;
    color: #9ca3af;
    margin: 2px 0 0;
}

.status-badge[b-l3we4ufpr7] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.78rem;
    font-weight: 600;
}

.status-active[b-l3we4ufpr7] {
    background: #dcfce7;
    color: #166534;
}

.status-inactive[b-l3we4ufpr7] {
    background: #f3f4f6;
    color: #6b7280;
}

/* Loading */
.loading-state[b-l3we4ufpr7] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 40px 20px;
    color: #9ca3af;
    justify-content: center;
}

/* Gateway Card */
.gateway-card[b-l3we4ufpr7] {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 20px;
}

.gateway-header[b-l3we4ufpr7] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 1px solid #f3f4f6;
    background: #fafbfc;
}

.gateway-brand[b-l3we4ufpr7] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.gateway-logo[b-l3we4ufpr7] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: #e0f2fe;
    color: #0284c7;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
}

.gateway-name[b-l3we4ufpr7] {
    font-size: 1rem;
    font-weight: 700;
    color: #1f2937;
    margin: 0;
    line-height: 1.2;
}

.gateway-desc[b-l3we4ufpr7] {
    font-size: 0.75rem;
    color: #9ca3af;
}

.gateway-body[b-l3we4ufpr7] {
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.gateway-footer[b-l3we4ufpr7] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 20px;
    border-top: 1px solid #f3f4f6;
    background: #fafbfc;
}

.footer-left[b-l3we4ufpr7],
.footer-right[b-l3we4ufpr7] {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Config Sections */
.config-section[b-l3we4ufpr7] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.config-label[b-l3we4ufpr7] {
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #6b7280;
}

.config-hint[b-l3we4ufpr7] {
    font-size: 0.7rem;
    color: #9ca3af;
}

/* Environment Buttons */
.env-options[b-l3we4ufpr7] {
    display: flex;
    gap: 10px;
}

.env-btn[b-l3we4ufpr7] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border: 2px solid #e5e7eb;
    border-radius: 10px;
    background: white;
    cursor: pointer;
    transition: all 0.15s;
    text-align: left;
    font-family: inherit;
    color: inherit;
}

.env-btn:hover[b-l3we4ufpr7] {
    border-color: #d1d5db;
}

.env-btn.env-active[b-l3we4ufpr7] {
    border-color: #0d6785;
    background: #f0f9ff;
}

.env-btn.env-active.env-live[b-l3we4ufpr7] {
    border-color: #16a34a;
    background: #f0fdf4;
}

.env-btn i[b-l3we4ufpr7] {
    font-size: 1.1rem;
    color: #9ca3af;
}

.env-btn.env-active i[b-l3we4ufpr7] {
    color: #0d6785;
}

.env-btn.env-active.env-live i[b-l3we4ufpr7] {
    color: #16a34a;
}

.env-title[b-l3we4ufpr7] {
    display: block;
    font-size: 0.85rem;
    font-weight: 600;
    color: #374151;
}

.env-url[b-l3we4ufpr7] {
    display: block;
    font-size: 0.7rem;
    color: #9ca3af;
}

/* API Key Input */
.api-key-input[b-l3we4ufpr7] {
    display: flex;
    gap: 6px;
}

.api-key-input .form-control[b-l3we4ufpr7] {
    flex: 1;
    font-family: 'Courier New', monospace;
    font-size: 0.82rem;
    letter-spacing: 0.5px;
}

/* Test Result */
.test-result[b-l3we4ufpr7] {
    font-size: 0.78rem;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.test-success[b-l3we4ufpr7] {
    color: #16a34a;
}

.test-fail[b-l3we4ufpr7] {
    color: #dc2626;
}

/* Alert SM */
.alert-sm[b-l3we4ufpr7] {
    padding: 8px 14px;
    font-size: 0.8rem;
    margin: 12px 20px 16px;
    border-radius: 8px;
}

/* Info Panel */
.info-panel[b-l3we4ufpr7] {
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 16px 20px;
}

.info-panel h3[b-l3we4ufpr7] {
    font-size: 0.85rem;
    font-weight: 600;
    color: #374151;
    margin: 0 0 10px;
}

.info-panel h3 i[b-l3we4ufpr7] {
    color: #0d6785;
    margin-right: 4px;
}

.info-panel ul[b-l3we4ufpr7] {
    margin: 0;
    padding-left: 18px;
}

.info-panel li[b-l3we4ufpr7] {
    font-size: 0.78rem;
    color: #6b7280;
    margin-bottom: 6px;
    line-height: 1.5;
}

/* Form switch styling */
.form-check-input:checked[b-l3we4ufpr7] {
    background-color: #0d6785;
    border-color: #0d6785;
}
/* /Components/Pages/Admin/AdminPaymentsPage.razor.rz.scp.css */
/* Header — matches UserManagement */
.content-header[b-6jqwnt730c] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

.content-title[b-6jqwnt730c] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a1a2e;
    margin: 0;
}

.content-subtitle[b-6jqwnt730c] {
    font-size: 0.8rem;
    color: #94A3B8;
    margin: 2px 0 0;
}

/* Header stat pills — matches UserManagement */
.header-stats[b-6jqwnt730c] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.stat-pill[b-6jqwnt730c] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 20px;
    font-size: 0.75rem;
    color: #64748B;
}

.stat-pill i[b-6jqwnt730c] {
    font-size: 0.8rem;
}

.stat-pill .stat-value[b-6jqwnt730c] {
    font-weight: 700;
    color: #1E293B;
}

.stat-pill .stat-label[b-6jqwnt730c] {
    font-size: 0.6rem;
    letter-spacing: 0.5px;
    color: #94A3B8;
}

.stat-pill.stat-primary[b-6jqwnt730c] { border-color: #BFDBFE; background: #EFF6FF; }
.stat-pill.stat-primary i[b-6jqwnt730c] { color: #3B82F6; }
.stat-pill.stat-warning[b-6jqwnt730c] { border-color: #FDE68A; background: #FFFBEB; }
.stat-pill.stat-warning i[b-6jqwnt730c] { color: #F59E0B; }
.stat-pill.stat-success[b-6jqwnt730c] { border-color: #A7F3D0; background: #ECFDF5; }
.stat-pill.stat-success i[b-6jqwnt730c] { color: #10B981; }
.stat-pill.stat-info[b-6jqwnt730c] { border-color: #BAE6FD; background: #F0F9FF; }
.stat-pill.stat-info i[b-6jqwnt730c] { color: #0284C7; }

.btn-header-action[b-6jqwnt730c] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #E2E8F0;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #64748B;
    transition: all 0.2s;
}

.btn-header-action:hover[b-6jqwnt730c] {
    background: #F1F5F9;
    color: #334155;
}

/* Card with tabs — matches UserManagement */
.card-with-tabs[b-6jqwnt730c] {
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    background: white;
    overflow: hidden;
}

/* Toolbar */
.card-toolbar[b-6jqwnt730c] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    border-bottom: 1px solid #F1F5F9;
    background: #FAFBFC;
}

.toolbar-search[b-6jqwnt730c] {
    position: relative;
    flex: 1;
    max-width: 280px;
}

.toolbar-search i[b-6jqwnt730c] {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.75rem;
    color: #94A3B8;
    pointer-events: none;
}

.toolbar-search .form-control[b-6jqwnt730c] {
    padding-left: 30px;
    font-size: 0.8rem;
    border-color: #E2E8F0;
    height: 34px;
}

.toolbar-search .form-control:focus[b-6jqwnt730c] {
    border-color: #93C5FD;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.toolbar-filters[b-6jqwnt730c] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: auto;
}

.filter-group .form-control[b-6jqwnt730c],
.filter-group .form-select[b-6jqwnt730c] {
    font-size: 0.8rem;
    border-color: #E2E8F0;
    height: 34px;
    min-width: 130px;
}

.toolbar-btn[b-6jqwnt730c] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.78rem;
    white-space: nowrap;
    height: 34px;
    border-radius: 6px;
    padding: 0 12px;
    cursor: pointer;
    border: none;
    font-weight: 500;
    transition: all 0.15s;
}

.btn-brand[b-6jqwnt730c] {
    background: var(--brand-500);
    color: white;
}

.btn-brand:hover[b-6jqwnt730c] {
    background: var(--brand-600, #0a526a);
    color: white;
}

.btn-ghost[b-6jqwnt730c] {
    background: transparent;
    border: 1px solid #E2E8F0;
    color: #64748B;
}

.btn-ghost:hover[b-6jqwnt730c] {
    background: #F1F5F9;
    color: #374151;
}

/* Table area inside card */
.table-card[b-6jqwnt730c] {
    overflow: hidden;
}

.table thead th[b-6jqwnt730c] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #94A3B8;
    font-weight: 600;
    border-bottom: 1px solid #F1F5F9;
    padding: 12px 16px;
    white-space: nowrap;
    background: white;
}

.table tbody td[b-6jqwnt730c] {
    padding: 11px 16px;
    vertical-align: middle;
    border-bottom: 1px solid #F9FAFB;
    font-size: 0.82rem;
}

.payment-row[b-6jqwnt730c] {
    cursor: pointer;
    transition: background 0.1s;
}

.payment-row:hover[b-6jqwnt730c] {
    background: #F8FAFC !important;
}

.app-number[b-6jqwnt730c] {
    font-weight: 600;
    color: #0d6785;
    font-size: 0.8rem;
}

.cell-text[b-6jqwnt730c] {
    color: #374151;
    font-weight: 500;
}

.cell-email[b-6jqwnt730c] {
    color: #64748B;
    font-size: 0.78rem;
}

.cell-property[b-6jqwnt730c] {
    color: #64748B;
    max-width: 180px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cell-date[b-6jqwnt730c] {
    color: #64748B;
    white-space: nowrap;
    font-size: 0.78rem;
}

/* Status Badges */
.status-badge[b-6jqwnt730c] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

.badge-awaiting[b-6jqwnt730c] {
    background: #FEF3C7;
    color: #92400E;
}

.badge-paid[b-6jqwnt730c] {
    background: #DCFCE7;
    color: #166534;
}

.badge-bounced[b-6jqwnt730c] {
    background: #FEE2E2;
    color: #991B1B;
}

.badge-expired[b-6jqwnt730c] {
    background: #F3F4F6;
    color: #6B7280;
}

/* Table empty / loading */
.table-empty[b-6jqwnt730c] {
    padding: 60px 20px;
    text-align: center;
    color: #94A3B8;
}

.table-empty i[b-6jqwnt730c] {
    font-size: 2rem;
    margin-bottom: 8px;
    display: block;
}

.table-empty p[b-6jqwnt730c] {
    margin: 0 0 12px;
}

.table-loading[b-6jqwnt730c] {
    padding: 40px 20px;
    text-align: center;
    color: #94A3B8;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 0.85rem;
}

/* Table Footer / Pagination */
.table-footer[b-6jqwnt730c] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 16px;
    border-top: 1px solid #F1F5F9;
    background: #FAFBFC;
}

.table-info[b-6jqwnt730c] {
    font-size: 0.75rem;
    color: #94A3B8;
}

.table-pagination[b-6jqwnt730c] {
    display: flex;
    gap: 4px;
}

/* Animations */
@keyframes spin-b-6jqwnt730c {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.spinning[b-6jqwnt730c] {
    animation: spin-b-6jqwnt730c 1s linear infinite;
}

/* Responsive */
@media (max-width: 1200px) {
    .card-toolbar[b-6jqwnt730c] {
        flex-wrap: wrap;
    }

    .toolbar-search[b-6jqwnt730c] {
        max-width: 100%;
    }

    .toolbar-filters[b-6jqwnt730c] {
        flex-wrap: wrap;
        margin-left: 0;
    }
}

@media (max-width: 768px) {
    .content-header[b-6jqwnt730c] {
        flex-direction: column;
        gap: 12px;
        align-items: flex-start;
    }

    .header-stats[b-6jqwnt730c] {
        width: 100%;
        overflow-x: auto;
    }
}

/* ── Actions column ── */
/* Widened from 70px: the actions cell can now hold up to three buttons
   (copy link, reveal link, override status). No new class, just the existing width. */
.th-actions[b-6jqwnt730c] {
    width: 150px;
    text-align: center;
}

.cell-actions[b-6jqwnt730c] {
    text-align: center;
    width: 150px;
    white-space: nowrap;
}

.btn-action[b-6jqwnt730c] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: 1px solid #E2E8F0;
    background: white;
    color: #64748B;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-action:hover[b-6jqwnt730c] {
    background: #F1F5F9;
    color: #0D6785;
    border-color: #CBD5E1;
}

/* ── Status Override Modal ── */
.modal-backdrop[b-6jqwnt730c] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    z-index: 1050;
}

.modal-overlay-status[b-6jqwnt730c] {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1051;
    padding: 24px;
}

.status-modal[b-6jqwnt730c] {
    background: white;
    border-radius: 16px;
    width: 100%;
    max-width: 500px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    animation: modalSlideIn-b-6jqwnt730c 0.2s ease-out;
    overflow: hidden;
}

@keyframes modalSlideIn-b-6jqwnt730c {
    from {
        opacity: 0;
        transform: translateY(-12px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.status-modal-header[b-6jqwnt730c] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 1px solid #EEF2F6;
}

.status-modal-title-group[b-6jqwnt730c] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
}

.status-modal-title[b-6jqwnt730c] {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
    margin: 0;
}

.status-modal-subtitle[b-6jqwnt730c] {
    font-size: 0.8rem;
    color: #64748B;
    line-height: 1.45;
    margin: 2px 0 0;
}

.status-modal-close[b-6jqwnt730c] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: none;
    background: transparent;
    color: #94A3B8;
    cursor: pointer;
    transition: all 0.15s;
}

.status-modal-close:hover[b-6jqwnt730c] {
    background: #F1F5F9;
    color: #0F172A;
}

.status-modal-body[b-6jqwnt730c] {
    padding: 1.15rem 1.5rem;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.current-status-row[b-6jqwnt730c] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
    background: #F8FAFC;
    border-radius: 10px;
    border: 1px solid #F1F5F9;
}

.current-status-label[b-6jqwnt730c] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #64748B;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

/* Action radio options */
.action-options[b-6jqwnt730c] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 8px;
}

.action-option[b-6jqwnt730c] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
    font-size: 0.875rem;
    font-weight: 500;
    color: #334155;
}

.action-option:hover[b-6jqwnt730c] {
    background: #F8FAFC;
    border-color: #CBD5E1;
}

.action-option.selected[b-6jqwnt730c] {
    background: #F0F9FF;
    border-color: #0D6785;
    box-shadow: 0 0 0 1px #0D6785;
}

.action-option input[type="radio"][b-6jqwnt730c] {
    display: none;
}

.action-option i[b-6jqwnt730c] {
    font-size: 1.1rem;
}

/* Form elements */
.form-group[b-6jqwnt730c] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.form-label[b-6jqwnt730c] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #334155;
}

.form-label .required[b-6jqwnt730c] {
    color: #EF4444;
}

.form-hint[b-6jqwnt730c] {
    font-size: 0.75rem;
    color: #94A3B8;
}

/* Info callouts */
.info-callout[b-6jqwnt730c] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 16px;
    border-radius: 10px;
    font-size: 0.8rem;
    line-height: 1.5;
}

.info-callout i[b-6jqwnt730c] {
    margin-top: 2px;
    flex-shrink: 0;
    font-size: 1rem;
}

.info-callout-blue[b-6jqwnt730c] {
    background: #EFF6FF;
    color: #1E40AF;
    border: 1px solid #BFDBFE;
}

.info-callout-amber[b-6jqwnt730c] {
    background: #FFFBEB;
    color: #92400E;
    border: 1px solid #FDE68A;
}

.info-callout-red[b-6jqwnt730c] {
    background: #FEF2F2;
    color: #991B1B;
    border: 1px solid #FECACA;
}

/* Modal footer */
.status-modal-footer[b-6jqwnt730c] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

.btn-modal-cancel[b-6jqwnt730c] {
    padding: 0.55rem 1.15rem;
    border-radius: 10px;
    border: 1px solid #E2E8F0;
    background: transparent;
    color: #64748B;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-modal-cancel:hover:not(:disabled)[b-6jqwnt730c] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-modal-confirm[b-6jqwnt730c] {
    padding: 0.55rem 1.15rem;
    border-radius: 10px;
    border: none;
    background: var(--brand-600, #004980);
    color: white;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: all 0.15s;
}

.btn-modal-confirm:hover:not(:disabled)[b-6jqwnt730c] {
    filter: brightness(1.1);
}

.btn-modal-confirm:disabled[b-6jqwnt730c] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-modal-cancel:disabled[b-6jqwnt730c] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Confirm button color variants */
.btn-confirm-success[b-6jqwnt730c] {
    background: #059669;
}

.btn-confirm-warning[b-6jqwnt730c] {
    background: #D97706;
}

.btn-confirm-danger[b-6jqwnt730c] {
    background: #DC2626;
}

/* ── Skeleton loader ─────────────────────────────────────────────────── */
@keyframes admin-payments-skel-pulse-b-6jqwnt730c {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.tbl-row-skeleton td[b-6jqwnt730c] {
    padding: 0.875rem 0.75rem;
}

.tbl-skel[b-6jqwnt730c] {
    height: 1.0625rem;
    width: 80px;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: admin-payments-skel-pulse-b-6jqwnt730c 1.5s ease-in-out infinite;
}

.tbl-skel-badge[b-6jqwnt730c] {
    height: 1.25rem;
    width: 90px;
    border-radius: 9999px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: admin-payments-skel-pulse-b-6jqwnt730c 1.5s ease-in-out infinite;
}

/* /Components/Pages/Admin/AdminReportedConcernsPage.razor.rz.scp.css */
/* Page header */
.page-header[b-yu4k9bybct] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--neutral-200, #e5e7eb);
}

.page-title[b-yu4k9bybct] {
    font-size: 28px;
    font-weight: 700;
    color: var(--text-primary, #0f172a);
    margin: 0 0 6px 0;
    letter-spacing: -0.5px;
}

.page-subtitle[b-yu4k9bybct] {
    font-size: 14px;
    color: var(--text-muted, #6b7280);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.separator[b-yu4k9bybct] {
    color: var(--neutral-300, #d1d5db);
}

.header-actions[b-yu4k9bybct] {
    display: flex;
    gap: 12px;
    align-items: center;
}

.header-actions > *[b-yu4k9bybct] {
    height: 40px;
}

.btn-refresh[b-yu4k9bybct] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--neutral-300, #d1d5db);
    background: white;
    border-radius: 8px;
    cursor: pointer;
    color: var(--text-secondary, #475569);
    transition: all 0.15s ease;
}

.btn-refresh:hover:not(:disabled)[b-yu4k9bybct] {
    border-color: var(--brand-300, #93c5fd);
    color: var(--brand-600, #2563eb);
    background: var(--brand-50, #eff6ff);
}

.btn-refresh.spinning i[b-yu4k9bybct] {
    animation: spin-b-yu4k9bybct 1s linear infinite;
}

@keyframes spin-b-yu4k9bybct { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

/* Stat cards */
.stat-grid[b-yu4k9bybct] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 24px;
}

.stat-card[b-yu4k9bybct] {
    background: white;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 12px;
    padding: 20px;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.stat-card:hover[b-yu4k9bybct] {
    border-color: var(--neutral-300, #d1d5db);
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.04);
}

.stat-card.alert[b-yu4k9bybct] {
    border-color: #fecaca;
    background: linear-gradient(180deg, #fef2f2 0%, #ffffff 60%);
}

.stat-header[b-yu4k9bybct] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.stat-label[b-yu4k9bybct] {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-secondary, #475569);
}

.stat-icon[b-yu4k9bybct] {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}

.stat-icon.neutral[b-yu4k9bybct] { background: #f1f5f9; color: #475569; }
.stat-icon.info[b-yu4k9bybct]    { background: #eff6ff; color: #2563eb; }
.stat-icon.success[b-yu4k9bybct] { background: #ecfdf5; color: #059669; }
.stat-icon.danger[b-yu4k9bybct]  { background: #fef2f2; color: #dc2626; }

.stat-value[b-yu4k9bybct] {
    font-size: 30px;
    font-weight: 700;
    color: var(--text-primary, #0f172a);
    line-height: 1.1;
    letter-spacing: -0.5px;
    margin-bottom: 4px;
}

.stat-description[b-yu4k9bybct] {
    font-size: 13px;
    color: var(--text-muted, #6b7280);
}

/* Filter toolbar */
.filter-toolbar[b-yu4k9bybct] {
    background: white;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 12px;
    padding: 16px 20px;
    margin-bottom: 20px;
}

.filter-row[b-yu4k9bybct] {
    display: grid;
    grid-template-columns: 160px 160px 180px 1fr auto;
    gap: 16px;
    align-items: end;
}

.filter-field[b-yu4k9bybct] { display: flex; flex-direction: column; }

.filter-label[b-yu4k9bybct] {
    font-size: 12px;
    font-weight: 600;
    color: var(--text-secondary, #475569);
    margin-bottom: 6px;
}

.filter-field .form-control[b-yu4k9bybct],
.filter-field .form-select[b-yu4k9bybct] {
    height: 40px;
    font-size: 14px;
}

.search-input[b-yu4k9bybct] {
    position: relative;
}

.search-input i[b-yu4k9bybct] {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted, #9ca3af);
    font-size: 14px;
    pointer-events: none;
}

.search-input .form-control[b-yu4k9bybct] {
    padding-left: 36px;
}

.btn-clear-filters[b-yu4k9bybct] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 40px;
    padding: 0 14px;
    border: 1px solid var(--neutral-300, #d1d5db);
    background: white;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 500;
    color: var(--text-secondary, #475569);
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-clear-filters:hover[b-yu4k9bybct] {
    border-color: #fecaca;
    color: #dc2626;
    background: #fef2f2;
}

/* State panel (loading / empty) */
.state-panel[b-yu4k9bybct] {
    background: white;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 12px;
    padding: 64px 24px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}

.empty-icon[b-yu4k9bybct] {
    width: 72px;
    height: 72px;
    border-radius: 18px;
    background: linear-gradient(135deg, #f1f5f9 0%, #ffffff 100%);
    border: 1px solid var(--neutral-200, #e5e7eb);
    color: var(--text-muted, #94a3b8);
    font-size: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 4px;
}

.state-title[b-yu4k9bybct] {
    font-size: 18px;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    margin: 0;
}

.state-subtitle[b-yu4k9bybct] {
    font-size: 14px;
    color: var(--text-muted, #6b7280);
    margin: 0;
    max-width: 420px;
}

/* Concerns card + table */
.concerns-card[b-yu4k9bybct] {
    background: white;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 12px;
    overflow: hidden;
}

.concerns-table-wrap[b-yu4k9bybct] { overflow-x: auto; }

.concerns-table[b-yu4k9bybct] {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}

.concerns-table thead th[b-yu4k9bybct] {
    position: sticky;
    top: 0;
    background: #f8fafc;
    color: var(--text-secondary, #475569);
    font-weight: 600;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 12px 16px;
    border-bottom: 1px solid var(--neutral-200, #e5e7eb);
    text-align: left;
    white-space: nowrap;
}

.concerns-table tbody td[b-yu4k9bybct] {
    padding: 14px 16px;
    border-bottom: 1px solid #f1f5f9;
    vertical-align: top;
}

.col-expand[b-yu4k9bybct] { width: 36px; text-align: center; color: var(--text-muted, #94a3b8); }
.col-status[b-yu4k9bybct] { width: 110px; text-align: center; }

.concern-row[b-yu4k9bybct] { cursor: pointer; transition: background 0.12s ease; }
.concern-row:hover[b-yu4k9bybct] { background: #f8fafc; }
.concern-row.expanded[b-yu4k9bybct] { background: #f8fafc; }
.concern-row.expanded td[b-yu4k9bybct] { border-bottom: none; }

.cell-primary[b-yu4k9bybct] {
    color: var(--text-primary, #0f172a);
    font-weight: 500;
}

.cell-secondary[b-yu4k9bybct] {
    color: var(--text-muted, #94a3b8);
    font-size: 12px;
    margin-top: 2px;
}

.description-preview[b-yu4k9bybct] {
    max-width: 360px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--text-secondary, #475569);
}

.role-pill[b-yu4k9bybct] {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 999px;
    background: #f1f5f9;
    color: #475569;
    font-size: 12px;
    font-weight: 500;
}

.status-pill[b-yu4k9bybct] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 500;
}

.status-pill.sent[b-yu4k9bybct] {
    background: #ecfdf5;
    color: #047857;
    border: 1px solid #a7f3d0;
}

.status-pill.failed[b-yu4k9bybct] {
    background: #fef2f2;
    color: #b91c1c;
    border: 1px solid #fecaca;
}

.status-dot[b-yu4k9bybct] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
}

/* Detail panel */
.detail-row > td[b-yu4k9bybct] {
    padding: 0 !important;
    background: #f8fafc;
    border-bottom: 1px solid var(--neutral-200, #e5e7eb) !important;
}

.detail-panel[b-yu4k9bybct] {
    padding: 18px 24px 22px 56px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.detail-section[b-yu4k9bybct] { display: flex; flex-direction: column; gap: 6px; }

.detail-label[b-yu4k9bybct] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-secondary, #475569);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.detail-description[b-yu4k9bybct] {
    background: white;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 8px;
    padding: 12px 14px;
    font-size: 14px;
    line-height: 1.55;
    color: var(--text-primary, #0f172a);
    white-space: pre-wrap;
}

.detail-error .detail-label[b-yu4k9bybct] { color: #b91c1c; }

.detail-error-text[b-yu4k9bybct] {
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    padding: 10px 14px;
    font-size: 13px;
    color: #b91c1c;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.detail-meta[b-yu4k9bybct] {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    font-size: 12px;
    color: var(--text-muted, #6b7280);
    padding-top: 4px;
}

.detail-meta strong[b-yu4k9bybct] {
    color: var(--text-secondary, #475569);
    margin-right: 4px;
    font-weight: 600;
}

/* Footer + pager */
.concerns-footer[b-yu4k9bybct] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 20px;
    border-top: 1px solid var(--neutral-200, #e5e7eb);
    background: #fafbfc;
}

.page-summary[b-yu4k9bybct] {
    font-size: 13px;
    color: var(--text-muted, #6b7280);
}

.page-summary strong[b-yu4k9bybct] { color: var(--text-primary, #0f172a); font-weight: 600; }

.pager[b-yu4k9bybct] {
    display: flex;
    gap: 4px;
}

.pager-btn[b-yu4k9bybct] {
    min-width: 36px;
    height: 36px;
    padding: 0 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 8px;
    font-size: 13px;
    font-weight: 500;
    color: var(--text-secondary, #475569);
    cursor: pointer;
    transition: all 0.12s ease;
}

.pager-btn:hover:not(:disabled):not(.active)[b-yu4k9bybct] {
    border-color: var(--neutral-300, #d1d5db);
    background: #f8fafc;
}

.pager-btn.active[b-yu4k9bybct] {
    background: var(--brand-600, #2563eb);
    border-color: var(--brand-600, #2563eb);
    color: white;
}

.pager-btn:disabled[b-yu4k9bybct] { opacity: 0.4; cursor: not-allowed; }

/* Responsive */
@media (max-width: 1024px) {
    .stat-grid[b-yu4k9bybct] { grid-template-columns: repeat(2, 1fr); }
    .filter-row[b-yu4k9bybct] {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
    .filter-field.filter-search[b-yu4k9bybct] { grid-column: 1 / -1; }
}

@media (max-width: 640px) {
    .page-header[b-yu4k9bybct] { flex-direction: column; gap: 16px; }
    .header-actions[b-yu4k9bybct] { width: 100%; }
    .stat-grid[b-yu4k9bybct] { grid-template-columns: 1fr; }
    .filter-row[b-yu4k9bybct] { grid-template-columns: 1fr; }
    .concerns-footer[b-yu4k9bybct] { flex-direction: column; gap: 12px; align-items: stretch; }
    .pager[b-yu4k9bybct] { justify-content: center; }
}

/* ----- Attachment thumbnails ----- */

.attachment-badge[b-yu4k9bybct] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    margin-top: 0.25rem;
    font-size: 0.75rem;
    color: var(--text-secondary, #6b7280);
}

.attachment-thumbs[b-yu4k9bybct] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 0.75rem;
    margin-top: 0.5rem;
}

.attachment-thumb[b-yu4k9bybct] {
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 6px;
    overflow: hidden;
    background: #fff;
    display: flex;
    flex-direction: column;
}

.attachment-thumb a[b-yu4k9bybct],
.attachment-thumb-loading[b-yu4k9bybct] {
    display: block;
    width: 100%;
    height: 140px;
    background: #f3f4f6;
    text-decoration: none;
}

.attachment-thumb img[b-yu4k9bybct] {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.attachment-thumb-loading[b-yu4k9bybct] {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-secondary);
}

.attachment-thumb-meta[b-yu4k9bybct] {
    padding: 0.4rem 0.5rem;
    display: flex;
    justify-content: space-between;
    gap: 0.5rem;
    font-size: 0.72rem;
    color: var(--text-secondary, #6b7280);
}

.attachment-thumb-name[b-yu4k9bybct] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ── Skeleton loader ─────────────────────────────────────────────────── */
@keyframes admin-concerns-skel-pulse-b-yu4k9bybct {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.tbl-row-skeleton td[b-yu4k9bybct] {
    padding: 0.875rem 0.75rem;
}

.tbl-skel[b-yu4k9bybct] {
    height: 1.0625rem;
    width: 80px;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: admin-concerns-skel-pulse-b-yu4k9bybct 1.5s ease-in-out infinite;
}

.tbl-skel-badge[b-yu4k9bybct] {
    height: 1.25rem;
    width: 90px;
    border-radius: 9999px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: admin-concerns-skel-pulse-b-yu4k9bybct 1.5s ease-in-out infinite;
}
/* /Components/Pages/Admin/AdminSeedersPage.razor.rz.scp.css */
.seeders-header[b-h765tfg7o4] {
    margin-bottom: 32px;
}

.seeders-title[b-h765tfg7o4] {
    font-size: 28px;
    font-weight: 700;
    color: var(--text-primary, #1a1a2e);
    margin: 0 0 8px;
}

.seeders-subtitle[b-h765tfg7o4] {
    font-size: 14px;
    color: var(--text-secondary, #6b7280);
    margin: 0;
}

.seeders-grid[b-h765tfg7o4] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.seeder-card[b-h765tfg7o4] {
    background: white;
    border-radius: 12px;
    padding: 24px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
    border: 1px solid var(--neutral-200, #e5e7eb);
    display: flex;
    flex-direction: column;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.seeder-card:hover[b-h765tfg7o4] {
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.08);
    transform: translateY(-2px);
}

.seeder-card-header[b-h765tfg7o4] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.seeder-icon[b-h765tfg7o4] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--brand-50, #f0fdfa);
    color: var(--brand-600, #0d6785);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}

.seeder-name[b-h765tfg7o4] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary, #1a1a2e);
    margin: 0;
}

.seeder-description[b-h765tfg7o4] {
    font-size: 13px;
    color: var(--text-secondary, #6b7280);
    line-height: 1.5;
    margin: 0 0 16px;
    flex-grow: 1;
}

.seeder-result[b-h765tfg7o4] {
    font-size: 13px;
    padding: 10px 12px;
    border-radius: 8px;
    margin-bottom: 16px;
    line-height: 1.4;
}

.result-success[b-h765tfg7o4] {
    background: #f0fdf4;
    color: #166534;
    border: 1px solid #bbf7d0;
}

.result-error[b-h765tfg7o4] {
    background: #fef2f2;
    color: #991b1b;
    border: 1px solid #fecaca;
}

.seeder-run-btn[b-h765tfg7o4] {
    align-self: flex-start;
    border-radius: 8px;
    padding: 8px 20px;
    font-size: 14px;
    font-weight: 500;
}

@media (max-width: 1200px) {
    .seeders-grid[b-h765tfg7o4] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .seeders-grid[b-h765tfg7o4] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Admin/AdminSettingsPage.razor.rz.scp.css */
.admin-settings-container[b-y9u3ckplop] {
    padding: 2rem;
}

.page-header[b-y9u3ckplop] {
    margin-bottom: 2rem;
}

.page-header h2[b-y9u3ckplop] {
    color: #1a1a1a;
    font-size: 2rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.page-header p[b-y9u3ckplop] {
    color: #666;
    font-size: 1rem;
}

.alert[b-y9u3ckplop] {
    padding: 1rem;
    border-radius: 8px;
    margin-bottom: 1.5rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.alert-success[b-y9u3ckplop] {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.alert-danger[b-y9u3ckplop] {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

.user-info-card[b-y9u3ckplop],
.claims-card[b-y9u3ckplop] {
    background: white;
    border-radius: 12px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.user-info-card h4[b-y9u3ckplop],
.claims-card h4[b-y9u3ckplop] {
    color: #1a1a1a;
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 1rem;
}

.user-info-table[b-y9u3ckplop] {
    width: 100%;
}

.user-info-table td[b-y9u3ckplop] {
    padding: 0.5rem;
    border-bottom: 1px solid #eee;
}

.user-info-table td:first-child[b-y9u3ckplop] {
    width: 150px;
}

.badge[b-y9u3ckplop] {
    display: inline-block;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    font-size: 0.875rem;
    font-weight: 500;
}

.bg-primary[b-y9u3ckplop] {
    background-color: #0d6efd;
    color: white;
}

.me-1[b-y9u3ckplop] {
    margin-right: 0.25rem;
}

.claims-list[b-y9u3ckplop] {
    max-height: 400px;
    overflow-y: auto;
}

.claim-item[b-y9u3ckplop] {
    padding: 0.75rem;
    border-bottom: 1px solid #eee;
    display: flex;
    gap: 1rem;
}

.claim-item:last-child[b-y9u3ckplop] {
    border-bottom: none;
}

.claim-type[b-y9u3ckplop] {
    font-weight: 600;
    color: #555;
    min-width: 200px;
    word-break: break-word;
}

.claim-value[b-y9u3ckplop] {
    color: #333;
    word-break: break-all;
}

/* /Components/Pages/Admin/AdminTrendChart.razor.rz.scp.css */
.admin-chart-card[b-hxux7mosdi] {
    background: white;
    border: 1px solid var(--neutral-200);
    border-radius: 12px;
    padding: 24px;
    height: 100%;
    min-height: 320px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 2px 4px rgba(0,0,0,0.04);
}

.chart-header[b-hxux7mosdi] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
}

.chart-title[b-hxux7mosdi] {
    font-size: 18px;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 4px 0;
    letter-spacing: -0.3px;
}

.chart-subtitle[b-hxux7mosdi] {
    font-size: 13px;
    color: var(--text-muted);
    margin: 0;
}

.chart-badge[b-hxux7mosdi] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: var(--brand-50);
    color: var(--brand-700);
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    border: 1px solid var(--brand-100);
}

.chart-badge i[b-hxux7mosdi] {
    font-size: 14px;
}

.chart-body[b-hxux7mosdi] {
    flex: 1;
    position: relative;
    min-height: 240px;
}

.chart-canvas-container[b-hxux7mosdi] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.chart-loading[b-hxux7mosdi], .chart-empty[b-hxux7mosdi] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: var(--text-muted);
}

.chart-empty i[b-hxux7mosdi] {
    font-size: 32px;
    margin-bottom: 12px;
    opacity: 0.5;
}

@keyframes fadeIn-b-hxux7mosdi {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

.animate-fade-in[b-hxux7mosdi] {
    animation: fadeIn-b-hxux7mosdi 0.4s ease-out forwards;
}
/* /Components/Pages/Admin/AgencyDetailPage.razor.rz.scp.css */
/* Loading / error states */
.agency-loading[b-lt4fyirkl0],
.agency-error[b-lt4fyirkl0] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 80px 20px;
    color: #64748B;
    text-align: center;
}

.agency-error i[b-lt4fyirkl0] { font-size: 48px; color: #CBD5E1; }
.agency-error h2[b-lt4fyirkl0] { font-size: 20px; font-weight: 700; color: #1F2937; margin: 0; }

/* Page layout */
.agency-detail-page[b-lt4fyirkl0] {
    padding: 24px;
    max-width: 1200px;
    margin: 0 auto;
}

/* Header
   Note: classes are prefixed "agency-" on purpose — generic names like
   .header-left collide with globally-loaded css (ipd-dashboard.css). */
.agency-header[b-lt4fyirkl0] { margin-bottom: 24px; }

.agency-header-nav[b-lt4fyirkl0] { margin-bottom: 16px; }

.back-link[b-lt4fyirkl0] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #64748B;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    transition: color 0.2s;
}

.back-link:hover[b-lt4fyirkl0] { color: var(--brand-500); }

.agency-header-content[b-lt4fyirkl0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.agency-header-left[b-lt4fyirkl0] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
}

.agency-avatar[b-lt4fyirkl0] {
    width: 64px;
    height: 64px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 22px;
    font-weight: 700;
    flex-shrink: 0;
}

.agency-header-info h1[b-lt4fyirkl0] { font-size: 24px; font-weight: 700; color: #1F2937; margin: 0 0 6px; }

.agency-header-meta[b-lt4fyirkl0] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.agency-code[b-lt4fyirkl0] {
    background: #F1F5F9;
    color: #475569;
    padding: 2px 8px;
    border-radius: 6px;
    font-size: 13px;
}

.agency-status[b-lt4fyirkl0] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
}

.agency-status-active[b-lt4fyirkl0] { background: #ECFDF5; color: #059669; }
.agency-status-inactive[b-lt4fyirkl0] { background: #FEF2F2; color: #DC2626; }
.agency-status-internal[b-lt4fyirkl0] { background: var(--brand-50); color: var(--brand-500); }

/* Stats row */
.agency-stats-row[b-lt4fyirkl0] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 16px;
    margin-bottom: 24px;
}

.agency-stat-card[b-lt4fyirkl0] {
    display: flex;
    align-items: center;
    gap: 14px;
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 16px 20px;
}

.agency-stat-icon[b-lt4fyirkl0] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: var(--brand-50);
    color: var(--brand-500);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}

.agency-stat-content[b-lt4fyirkl0] { display: flex; flex-direction: column; }
.agency-stat-value[b-lt4fyirkl0] { font-size: 20px; font-weight: 700; color: #1F2937; line-height: 1.2; }
.agency-stat-sub[b-lt4fyirkl0] { font-size: 13px; font-weight: 500; color: #94A3B8; }
.agency-stat-label[b-lt4fyirkl0] { font-size: 12px; color: #64748B; font-weight: 500; }

/* Detail cards */
.detail-grid[b-lt4fyirkl0] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
    gap: 16px;
    margin-bottom: 16px;
}

.detail-card[b-lt4fyirkl0] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    overflow: hidden;
}

.detail-card.full-width[b-lt4fyirkl0] { width: 100%; margin-bottom: 16px; }
.detail-card.full-width:last-child[b-lt4fyirkl0] { margin-bottom: 0; }

.detail-card .card-header[b-lt4fyirkl0] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 20px;
    background: #F8FAFC;
    border-bottom: 1px solid #E2E8F0;
}

.detail-card .card-header i[b-lt4fyirkl0] { color: var(--brand-500); font-size: 16px; }
.detail-card .card-header h3[b-lt4fyirkl0] { font-size: 15px; font-weight: 600; color: #1F2937; margin: 0; }

.count-pill[b-lt4fyirkl0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 22px;
    padding: 0 7px;
    border-radius: 11px;
    background: var(--brand-50);
    color: var(--brand-500);
    font-size: 12px;
    font-weight: 700;
}

.detail-card .card-body[b-lt4fyirkl0] { padding: 20px; }

/* Contact */
.contact-grid[b-lt4fyirkl0] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
}

.contact-item[b-lt4fyirkl0] { display: flex; flex-direction: column; gap: 2px; }
.contact-label[b-lt4fyirkl0] { font-size: 12px; color: #94A3B8; font-weight: 600; text-transform: uppercase; letter-spacing: 0.03em; }
.contact-value[b-lt4fyirkl0] { font-size: 14px; color: #1F2937; }

a.contact-value[b-lt4fyirkl0] { text-decoration: none; }
a.contact-value:hover[b-lt4fyirkl0] { color: var(--brand-500); text-decoration: underline; }

.empty-hint a[b-lt4fyirkl0] { color: var(--brand-500); font-weight: 600; }

.agency-notes[b-lt4fyirkl0] { margin-top: 16px; }
.agency-notes.agency-notes-only[b-lt4fyirkl0] { margin-top: 12px; }
.agency-notes p[b-lt4fyirkl0] { font-size: 14px; color: #475569; margin: 4px 0 0; white-space: pre-wrap; }

/* Entity list (banks) */
.entity-list[b-lt4fyirkl0] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }

.entity-list-item[b-lt4fyirkl0] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border: 1px solid #F1F5F9;
    border-radius: 10px;
}

.entity-icon[b-lt4fyirkl0] {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    background: #F1F5F9;
    color: #64748B;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.entity-info[b-lt4fyirkl0] { display: flex; flex-direction: column; flex: 1; min-width: 0; }
.entity-name[b-lt4fyirkl0] { font-size: 14px; font-weight: 600; color: #1F2937; }
.entity-code[b-lt4fyirkl0] { font-size: 12px; color: #64748B; background: transparent; padding: 0; }

.empty-hint[b-lt4fyirkl0] { font-size: 14px; color: #94A3B8; margin: 0; }

/* Agents table */
.agents-table[b-lt4fyirkl0] { width: 100%; border-collapse: collapse; }

.agents-table th[b-lt4fyirkl0] {
    text-align: left;
    font-size: 12px;
    font-weight: 600;
    color: #94A3B8;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    padding: 8px 12px;
    border-bottom: 1px solid #E2E8F0;
}

.agents-table td[b-lt4fyirkl0] {
    padding: 12px;
    font-size: 14px;
    color: #475569;
    border-bottom: 1px solid #F1F5F9;
    vertical-align: middle;
}

.agents-table tbody tr:last-child td[b-lt4fyirkl0] { border-bottom: none; }
.agents-table tbody tr:hover[b-lt4fyirkl0] { background: #F8FAFC; }

.agent-cell[b-lt4fyirkl0] { display: flex; align-items: center; gap: 10px; }

.agent-avatar[b-lt4fyirkl0] {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 12px;
    font-weight: 700;
    flex-shrink: 0;
}

.agent-name[b-lt4fyirkl0] { font-weight: 600; color: #1F2937; cursor: pointer; }
.agent-name:hover[b-lt4fyirkl0] { color: var(--brand-500); text-decoration: underline; }

/* Add agent picker */
.agent-picker-list[b-lt4fyirkl0] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-height: 360px;
    overflow-y: auto;
}

.agent-picker-item[b-lt4fyirkl0] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s;
}

.agent-picker-item:hover[b-lt4fyirkl0] { border-color: var(--brand-500); background: var(--brand-50); }

.agent-picker-info[b-lt4fyirkl0] { display: flex; flex-direction: column; flex: 1; min-width: 0; }
.agent-picker-info .agent-name[b-lt4fyirkl0] { cursor: inherit; }
.agent-meta[b-lt4fyirkl0] { font-size: 12px; color: #64748B; }

/* Confirm dialog look comes from the global confirm-* classes in wwwroot/css/modal-theme.css */
.modal-overlay[b-lt4fyirkl0] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1.5rem;
}

/* Responsive */
@media (max-width: 768px) {
    .agency-detail-page[b-lt4fyirkl0] { padding: 16px; }
    .agency-header-content[b-lt4fyirkl0] { flex-direction: column; align-items: flex-start; }
    .agents-table th:nth-child(2)[b-lt4fyirkl0],
    .agents-table td:nth-child(2)[b-lt4fyirkl0] { display: none; }
}

/* Branding card (feature 007) */
.branding-block[b-lt4fyirkl0] { }

.branding-subheading[b-lt4fyirkl0] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 8px;
}

.branding-subheading i[b-lt4fyirkl0] { color: var(--brand-500); font-size: 15px; }

.branding-divider[b-lt4fyirkl0] {
    height: 1px;
    background: #F1F5F9;
    margin: 20px 0;
}

/* Solid action buttons — align with the brand scheme used across Admin */
.btn-agency-edit[b-lt4fyirkl0],
.btn-agency-add[b-lt4fyirkl0] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 9px 18px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}

.btn-agency-edit:hover[b-lt4fyirkl0],
.btn-agency-add:hover[b-lt4fyirkl0] {
    background: var(--brand-700, #003760);
}

/* Distinct accent per stat, matching the app's tinted-icon convention */
.agency-stat-icon-brand[b-lt4fyirkl0] { background: var(--brand-50); color: var(--brand-500); }
.agency-stat-icon-success[b-lt4fyirkl0] { background: #ECFDF5; color: #059669; }
.agency-stat-icon-violet[b-lt4fyirkl0] { background: #F5F3FF; color: #7C3AED; }

/* Subtle depth + hover interactivity on info cards and list rows */
.agency-stat-card[b-lt4fyirkl0] {
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
    transition: box-shadow 0.2s, border-color 0.2s;
}

.agency-stat-card:hover[b-lt4fyirkl0] {
    border-color: var(--brand-400, #3397C7);
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.06);
}

.detail-card[b-lt4fyirkl0] {
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}

.entity-list-item[b-lt4fyirkl0] {
    transition: all 0.15s;
}

.entity-list-item:hover[b-lt4fyirkl0] {
    border-color: var(--brand-400, #3397C7);
    background: var(--brand-50);
}

.entity-list-item:hover .entity-icon[b-lt4fyirkl0] {
    background: white;
    color: var(--brand-500);
}
/* /Components/Pages/Admin/ApiClientDetailPage.razor.rz.scp.css */
/* ========================================
   API Client detail — drill-down page
   Shares baseline classes with ApiClientsPage; this file only adds
   detail-specific bits (breadcrumbs, webhook table, etc.).
   ======================================== */

.client-detail[b-f1wfxck4b8] {
    padding: 24px;
    max-width: 1400px;
    margin: 0 auto;
}

.breadcrumb-row[b-f1wfxck4b8] {
    margin-bottom: 6px;
}

.back-link[b-f1wfxck4b8] {
    color: var(--text-muted, #6b7280);
    font-size: 13px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: color 0.15s;
}

.back-link:hover[b-f1wfxck4b8] {
    color: var(--brand-600, #4f46e5);
}

.client-detail .dashboard-header[b-f1wfxck4b8] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 28px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--neutral-200, #e5e7eb);
    gap: 16px;
    flex-wrap: wrap;
}

.client-detail .dashboard-title[b-f1wfxck4b8] {
    font-size: 26px;
    font-weight: 700;
    letter-spacing: -0.4px;
    margin: 0 0 8px 0;
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.client-detail .dashboard-subtitle[b-f1wfxck4b8] {
    font-size: 13.5px;
    color: var(--text-muted, #6b7280);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.client-detail .header-actions[b-f1wfxck4b8] {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
}

.btn-refresh[b-f1wfxck4b8] {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 8px;
    color: var(--text-secondary, #4b5563);
    cursor: pointer;
    transition: all 0.15s;
}

.btn-refresh:hover[b-f1wfxck4b8] {
    background: var(--brand-50, #eef2ff);
    border-color: var(--brand-300, #a5b4fc);
    color: var(--brand-600, #4f46e5);
}

.btn-refresh.spinning i[b-f1wfxck4b8] {
    animation: refresh-spin-b-f1wfxck4b8 0.7s linear infinite;
}

@keyframes refresh-spin-b-f1wfxck4b8 {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* 5-card stat row (1 more than the list page) */
.client-detail .admin-card-grid[b-f1wfxck4b8] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 14px;
    margin-bottom: 24px;
}

@media (max-width: 1200px) { .client-detail .admin-card-grid[b-f1wfxck4b8] { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 768px)  { .client-detail .admin-card-grid[b-f1wfxck4b8] { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px)  { .client-detail .admin-card-grid[b-f1wfxck4b8] { grid-template-columns: 1fr; } }

.client-detail .admin-stat-card[b-f1wfxck4b8] {
    background: #ffffff;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 10px;
    padding: 14px 16px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
    /* Left column = icon + label + description (stacked); right column = the value. */
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto;
    column-gap: 16px;
    row-gap: 3px;
    align-items: center;
}

.client-detail .admin-stat-card.alert-card[b-f1wfxck4b8] {
    border-color: var(--error-200, #fecaca);
    background: linear-gradient(180deg, var(--error-50, #fef2f2) 0%, white 100%);
}

.client-detail .admin-stat-header[b-f1wfxck4b8] {
    grid-column: 1;
    grid-row: 1;
    display: flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
}

.client-detail .admin-stat-label[b-f1wfxck4b8] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-muted, #6b7280);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.client-detail .admin-stat-icon[b-f1wfxck4b8] {
    order: -1; /* render the icon before the label within the header flex row */
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    background: linear-gradient(135deg, var(--brand-50, #eef2ff) 0%, white 100%);
    color: var(--brand-600, #4f46e5);
    border: 1px solid var(--brand-100, #e0e7ff);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}

.client-detail .admin-stat-icon.success[b-f1wfxck4b8] { background: linear-gradient(135deg, #ecfdf5 0%, white 100%); color: #059669; border-color: #d1fae5; }
.client-detail .admin-stat-icon.danger[b-f1wfxck4b8]  { background: linear-gradient(135deg, #fef2f2 0%, white 100%); color: #dc2626; border-color: #fee2e2; }
.client-detail .admin-stat-icon.info[b-f1wfxck4b8]    { background: linear-gradient(135deg, #eff6ff 0%, white 100%); color: #2563eb; border-color: #dbeafe; }

/* Value lives in the right column, vertically centered across both rows. */
.client-detail .admin-stat-value[b-f1wfxck4b8] {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: center;
    justify-self: end;
    text-align: right;
    font-size: 26px;
    font-weight: 700;
    color: var(--text-primary, #111827);
    line-height: 1.1;
    letter-spacing: -0.3px;
    white-space: nowrap;
}

.client-detail .admin-stat-description[b-f1wfxck4b8] {
    grid-column: 1;
    grid-row: 2;
    font-size: 11.5px;
    color: var(--text-muted, #6b7280);
    font-weight: 500;
}

/* Cards */
.client-detail .card[b-f1wfxck4b8] {
    background: #ffffff !important;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 10px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}

.client-detail .card-body[b-f1wfxck4b8] {
    padding: 20px 22px;
}

.section-title[b-f1wfxck4b8] {
    font-size: 17px;
    font-weight: 700;
    color: var(--text-primary, #111827);
    letter-spacing: -0.2px;
}

.section-subtitle[b-f1wfxck4b8] {
    font-size: 13px;
    color: var(--text-muted, #6b7280);
}

.list-head[b-f1wfxck4b8] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 16px;
    flex-wrap: wrap;
}

/* Tables */
.client-detail .table thead th[b-f1wfxck4b8] {
    background: transparent;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: var(--text-muted, #6b7280);
    font-weight: 600;
    border-bottom: 1px solid var(--neutral-200, #e5e7eb);
    padding: 10px 12px;
}

.client-detail .table tbody td[b-f1wfxck4b8] {
    padding: 12px;
    border-color: var(--neutral-100, #f3f4f6);
    font-size: 13px;
    vertical-align: middle;
}

.client-detail .table tbody tr.row-muted[b-f1wfxck4b8] { opacity: 0.55; }

.empty-inline[b-f1wfxck4b8] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 16px;
    background: var(--neutral-50, #f9fafb);
    border: 1px dashed var(--neutral-200, #e5e7eb);
    border-radius: 8px;
    font-size: 13px;
    color: var(--text-muted, #6b7280);
}

.empty-inline i[b-f1wfxck4b8] { font-size: 18px; }

/* Status pills (carried over from clients page) */
.status-pill[b-f1wfxck4b8] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 11.5px;
    padding: 3px 9px;
    border-radius: 999px;
    font-weight: 600;
}

.status-pill.status-active[b-f1wfxck4b8]   { background: #ecfdf5; color: #059669; border: 1px solid #d1fae5; }
.status-pill.status-revoked[b-f1wfxck4b8]  { background: var(--neutral-100, #f3f4f6); color: var(--text-muted, #6b7280); border: 1px solid var(--neutral-200, #e5e7eb); }
.status-pill.status-pending[b-f1wfxck4b8]  { background: #eff6ff; color: #1e40af; border: 1px solid #dbeafe; }
.status-pill.status-warn[b-f1wfxck4b8]     { background: #fef3c7; color: #92400e; border: 1px solid #fde68a; }
.status-pill.status-app[b-f1wfxck4b8]      { background: var(--neutral-100, #f3f4f6); color: var(--text-secondary, #4b5563); border: 1px solid var(--neutral-200, #e5e7eb); }

.status-pill i[b-f1wfxck4b8] { font-size: 10px; }

/* Webhook URL truncation */
.webhook-url[b-f1wfxck4b8] {
    background: var(--neutral-50, #f9fafb);
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 12px;
    color: var(--text-secondary, #4b5563);
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.event-pill[b-f1wfxck4b8] {
    background: #eef2ff;
    color: #4338ca;
    font-size: 11px;
    padding: 2px 8px;
    border-radius: 999px;
    font-weight: 500;
    border: 1px solid #e0e7ff;
}

.response-status[b-f1wfxck4b8] {
    display: inline-block;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 12px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 4px;
    min-width: 38px;
    text-align: center;
}

.response-status.status-success[b-f1wfxck4b8] { background: #dcfce7; color: #166534; }
.response-status.status-info[b-f1wfxck4b8]    { background: #dbeafe; color: #1e40af; }
.response-status.status-warn[b-f1wfxck4b8]    { background: #fef3c7; color: #92400e; }
.response-status.status-danger[b-f1wfxck4b8]  { background: #fee2e2; color: #991b1b; }
.response-status.status-muted[b-f1wfxck4b8]   { background: #e5e7eb; color: #374151; }

.key-prefix[b-f1wfxck4b8] {
    background: var(--neutral-100, #f3f4f6);
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    color: var(--text-primary, #111827);
}

.separator[b-f1wfxck4b8] {
    color: var(--text-muted, #6b7280);
    opacity: 0.5;
}

/* Modal look comes from the global wwwroot/css/modal-theme.css */

.issued-meta[b-f1wfxck4b8] {
    background: var(--neutral-50, #f9fafb);
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 8px;
    padding: 14px 16px;
    display: grid;
    gap: 8px;
}

.issued-meta > div[b-f1wfxck4b8] {
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 12px;
    font-size: 14px;
    align-items: center;
}

.meta-label[b-f1wfxck4b8] {
    color: var(--text-muted, #6b7280);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    font-weight: 600;
}

/* Send-test-event modal: JSON payload textarea */
.test-payload[b-f1wfxck4b8] {
    font-size: 12.5px;
    line-height: 1.45;
    background: #0f172a;
    color: #e2e8f0;
    border-color: #1e293b;
    min-height: 280px;
    white-space: pre;
    tab-size: 2;
}

.test-payload:focus[b-f1wfxck4b8] {
    background: #0f172a;
    color: #e2e8f0;
    border-color: #3b82f6;
    box-shadow: 0 0 0 0.2rem rgba(59, 130, 246, 0.25);
}

/* ===== Webhook event subscription chips + reference guide ===== */
.event-chips[b-f1wfxck4b8] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.event-chip[b-f1wfxck4b8] {
    border: 1px solid var(--bs-border-color, #dee2e6);
    background: var(--bs-body-bg, #fff);
    color: var(--bs-secondary-color, #6c757d);
    font-size: 0.75rem;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    padding: 0.25rem 0.6rem;
    border-radius: 999px;
    cursor: pointer;
    transition: background 0.12s ease, color 0.12s ease, border-color 0.12s ease;
}

.event-chip:hover:not(:disabled)[b-f1wfxck4b8] {
    border-color: var(--bs-primary, #0d6efd);
    color: var(--bs-primary, #0d6efd);
}

.event-chip.is-active[b-f1wfxck4b8] {
    background: var(--bs-primary, #0d6efd);
    border-color: var(--bs-primary, #0d6efd);
    color: #fff;
}

.event-chip:disabled[b-f1wfxck4b8] {
    opacity: 0.6;
    cursor: default;
}

.event-guide[b-f1wfxck4b8] {
    background: var(--bs-tertiary-bg, #f8f9fa);
    border: 1px solid var(--bs-border-color, #dee2e6);
}

.event-guide-group[b-f1wfxck4b8] {
    margin-bottom: 0.75rem;
}

.event-guide-group:last-child[b-f1wfxck4b8] {
    margin-bottom: 0;
}

.event-guide-cat[b-f1wfxck4b8] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--bs-secondary-color, #6c757d);
    margin-bottom: 0.3rem;
}

.event-guide-row[b-f1wfxck4b8] {
    display: flex;
    gap: 0.75rem;
    padding: 0.25rem 0;
    align-items: baseline;
}

.event-guide-name[b-f1wfxck4b8] {
    flex: 0 0 auto;
    min-width: 12rem;
    color: var(--bs-emphasis-color, #212529);
    font-size: 0.78rem;
}

.event-guide-desc[b-f1wfxck4b8] {
    font-size: 0.8rem;
    color: var(--bs-secondary-color, #6c757d);
}

@media (max-width: 575px) {
    .event-guide-row[b-f1wfxck4b8] { flex-direction: column; gap: 0.1rem; }
    .event-guide-name[b-f1wfxck4b8] { min-width: 0; }
}

/* ===== Webhook register form ===== */
.register-form[b-f1wfxck4b8] {
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

.register-form-head[b-f1wfxck4b8] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px;
    background: linear-gradient(135deg, var(--brand-50, #eef2ff) 0%, #fff 100%);
    border-bottom: 1px solid var(--neutral-200, #e5e7eb);
}

.register-form-icon[b-f1wfxck4b8] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 9px;
    background: var(--brand-600, #4f46e5);
    color: #fff;
    font-size: 16px;
    flex-shrink: 0;
}

.register-form-title[b-f1wfxck4b8] {
    font-weight: 700;
    font-size: 14px;
    color: var(--text-primary, #111827);
}

.register-form-sub[b-f1wfxck4b8] {
    font-size: 12px;
    color: var(--text-muted, #6b7280);
    margin-top: 2px;
}

.register-form-body[b-f1wfxck4b8] { padding: 16px; }

.field-label[b-f1wfxck4b8] {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: var(--text-secondary, #4b5563);
    margin-bottom: 5px;
}

.field-label-note[b-f1wfxck4b8] {
    font-weight: 500;
    color: var(--text-muted, #9ca3af);
    margin-left: 4px;
}

.field-hint[b-f1wfxck4b8] {
    font-size: 11px;
    color: var(--text-muted, #9ca3af);
    margin-top: 4px;
}

.register-form .input-group-text[b-f1wfxck4b8] {
    background: var(--neutral-50, #f9fafb);
    border-color: var(--neutral-200, #e5e7eb);
    color: var(--text-muted, #6b7280);
}

.register-form .form-control:focus[b-f1wfxck4b8] {
    border-color: var(--brand-300, #a5b4fc);
    box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.12);
}

.register-form-actions[b-f1wfxck4b8] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    border-top: 1px solid var(--neutral-100, #f3f4f6);
    padding-top: 14px;
}

/* ===== Event pills in the list ===== */
.event-pill-group[b-f1wfxck4b8] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    max-width: 280px;
}

.event-pill-all[b-f1wfxck4b8] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: var(--brand-50, #eef2ff);
    color: var(--brand-600, #4f46e5);
    border-color: var(--brand-100, #e0e7ff);
}

.event-pill-all i[b-f1wfxck4b8] { font-size: 9px; }

/* ===== Compact icon action buttons ===== */
.row-actions[b-f1wfxck4b8] {
    display: inline-flex;
    gap: 6px;
    justify-content: flex-end;
}

.icon-btn[b-f1wfxck4b8] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 8px;
    border: 1px solid var(--neutral-200, #e5e7eb);
    background: #fff;
    color: var(--text-secondary, #4b5563);
    font-size: 13px;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    text-decoration: none;
}

.icon-btn-primary:hover[b-f1wfxck4b8]   { background: var(--brand-600, #4f46e5); border-color: var(--brand-600, #4f46e5); color: #fff; }
.icon-btn-secondary:hover[b-f1wfxck4b8] { background: var(--neutral-100, #f3f4f6); color: var(--text-primary, #111827); }
.icon-btn-danger:hover[b-f1wfxck4b8]    { background: #ef4444; border-color: #ef4444; color: #fff; }

/* ===== Webhook section buttons ===== */
.wh-btn[b-f1wfxck4b8] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1;
    padding: 9px 16px;
    border-radius: 9px;
    border: 1px solid transparent;
    cursor: pointer;
    white-space: nowrap;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.wh-btn:disabled[b-f1wfxck4b8] { opacity: 0.6; cursor: default; }
.wh-btn i[b-f1wfxck4b8] { font-size: 13px; }

/* Primary — solid indigo */
.wh-btn-primary[b-f1wfxck4b8] {
    background: var(--brand-600, #4f46e5);
    color: #fff;
}
.wh-btn-primary:hover:not(:disabled)[b-f1wfxck4b8] {
    background: var(--brand-700, #4338ca);
}

/* Outline — indigo on white (header "Add webhook") */
.wh-btn-outline[b-f1wfxck4b8] {
    background: #fff;
    color: var(--brand-600, #4f46e5);
    border-color: var(--brand-200, #c7d2fe);
}
.wh-btn-outline:hover:not(:disabled)[b-f1wfxck4b8] {
    background: var(--brand-50, #eef2ff);
    border-color: var(--brand-300, #a5b4fc);
}

/* Ghost — neutral (Cancel) */
.wh-btn-ghost[b-f1wfxck4b8] {
    background: #fff;
    color: var(--text-secondary, #4b5563);
    border-color: var(--neutral-200, #e5e7eb);
}
.wh-btn-ghost:hover:not(:disabled)[b-f1wfxck4b8] {
    background: var(--neutral-50, #f9fafb);
    border-color: var(--neutral-300, #d1d5db);
    color: var(--text-primary, #111827);
}

.wh-btn:focus-visible[b-f1wfxck4b8] {
    outline: none;
    box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.3);
}

/* Disclosure — "What events can I subscribe to?" */
.wh-disclosure[b-f1wfxck4b8] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: transparent;
    border: none;
    padding: 4px 2px;
    font-size: 13px;
    font-weight: 600;
    color: var(--brand-600, #4f46e5);
    cursor: pointer;
    border-radius: 6px;
    transition: color 0.12s ease;
}
.wh-disclosure:hover[b-f1wfxck4b8] { color: var(--brand-700, #4338ca); }
.wh-disclosure:focus-visible[b-f1wfxck4b8] { outline: none; box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.25); }

.wh-disclosure-chevron[b-f1wfxck4b8] { transition: transform 0.15s ease; font-size: 11px; }
.wh-disclosure.is-open .wh-disclosure-chevron[b-f1wfxck4b8] { transform: rotate(90deg); }
/* /Components/Pages/Admin/ApiClientsPage.razor.rz.scp.css */
/* ========================================
   API Clients — self-contained styles
   Aligned with AdminDashboardPage conventions but scoped here.
   ======================================== */

/* Dashboard header */
.dashboard-header[b-gr175wqo7b] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 32px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--neutral-200, #e5e7eb);
    gap: 16px;
    flex-wrap: wrap;
}

.header-content[b-gr175wqo7b] { flex: 1; min-width: 280px; }

.dashboard-title[b-gr175wqo7b] {
    font-size: 28px;
    font-weight: 700;
    color: var(--text-primary, #111827);
    margin: 0 0 8px 0;
    letter-spacing: -0.5px;
}

.dashboard-subtitle[b-gr175wqo7b] {
    font-size: 14px;
    color: var(--text-muted, #6b7280);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    font-weight: 500;
}

.dashboard-subtitle code[b-gr175wqo7b] {
    background: var(--neutral-100, #f3f4f6);
    padding: 1px 6px;
    border-radius: 4px;
    font-size: 13px;
    color: var(--text-primary, #111827);
}

.separator[b-gr175wqo7b] {
    color: var(--text-muted, #6b7280);
    opacity: 0.5;
    margin: 0 4px;
}

.header-actions[b-gr175wqo7b] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.header-actions > .btn[b-gr175wqo7b],
.header-actions > .btn-refresh[b-gr175wqo7b] {
    height: 40px;
}

.btn-refresh[b-gr175wqo7b] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--neutral-300, #d1d5db);
    background: white;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s;
    color: var(--text-secondary, #4b5563);
    font-size: 18px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    padding: 0;
}

.btn-refresh:hover:not(:disabled)[b-gr175wqo7b] {
    border-color: var(--brand-300, #a5b4fc);
    color: var(--brand-600, #4f46e5);
    background: var(--brand-50, #eef2ff);
}

.btn-refresh.spinning i[b-gr175wqo7b] { animation: spin-b-gr175wqo7b 1s linear infinite; }

@keyframes spin-b-gr175wqo7b { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

/* Stat grid */
.admin-card-grid[b-gr175wqo7b] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    margin-bottom: 18px;
}

.admin-card-grid.stats-row-6[b-gr175wqo7b] {
    grid-template-columns: repeat(6, 1fr);
}

@media (max-width: 1400px) { .admin-card-grid.stats-row-6[b-gr175wqo7b] { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 1200px) { .admin-card-grid.stats-row-6[b-gr175wqo7b] { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 992px) {
    .admin-card-grid[b-gr175wqo7b] { grid-template-columns: repeat(2, 1fr); }
    .admin-card-grid.stats-row-6[b-gr175wqo7b] { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 576px) {
    .admin-card-grid[b-gr175wqo7b],
    .admin-card-grid.stats-row-6[b-gr175wqo7b] { grid-template-columns: 1fr; }
}

.admin-stat-card.alert-card[b-gr175wqo7b] {
    border-color: var(--error-200, #fecaca);
    background: linear-gradient(180deg, var(--error-50, #fef2f2) 0%, white 100%);
}

.admin-stat-card[b-gr175wqo7b] {
    background: #ffffff;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 12px;
    padding: 14px 16px;
    transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
    display: flex;
    align-items: center;
    gap: 12px;
}

.admin-stat-card:hover[b-gr175wqo7b] {
    border-color: var(--brand-200, #c7d2fe);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
}

.admin-stat-body[b-gr175wqo7b] {
    min-width: 0;
}

.admin-stat-icon[b-gr175wqo7b] {
    width: 38px;
    height: 38px;
    flex: 0 0 auto;
    background: #eef2ff;
    color: #4f46e5;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}

.admin-stat-icon.success[b-gr175wqo7b] { background: #ecfdf5; color: #059669; }
.admin-stat-icon.danger[b-gr175wqo7b] { background: #fee2e2; color: #dc2626; }
.admin-stat-icon.info[b-gr175wqo7b] { background: #eff6ff; color: #2563eb; }
.admin-stat-icon.violet[b-gr175wqo7b] { background: #f3e8ff; color: #7c3aed; }

.admin-stat-value[b-gr175wqo7b] {
    font-size: 22px;
    font-weight: 700;
    color: var(--text-primary, #111827);
    line-height: 1.1;
    letter-spacing: -0.5px;
    margin: 0;
}

.admin-stat-label[b-gr175wqo7b] {
    font-size: 11.5px;
    font-weight: 600;
    color: var(--text-secondary, #4b5563);
    line-height: 1.25;
    margin-top: 1px;
}

.admin-stat-description[b-gr175wqo7b] {
    font-size: 11px;
    color: var(--text-muted, #6b7280);
    font-weight: 500;
    line-height: 1.25;
    margin-top: 1px;
}

/* Cards (body-level sections) — explicit white, no bg bleed */
.card[b-gr175wqo7b] {
    background: #ffffff !important;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 10px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}

.card-body[b-gr175wqo7b] {
    background: #ffffff;
    padding: 20px 22px;
    border-radius: 10px;
}

.section-title[b-gr175wqo7b] {
    font-size: 18px;
    font-weight: 700;
    color: var(--text-primary, #111827);
    margin: 0 0 4px 0;
    letter-spacing: -0.2px;
}

.section-subtitle[b-gr175wqo7b] {
    font-size: 13px;
    color: var(--text-muted, #6b7280);
    margin: 0 0 20px 0;
}

/* Collapsible "Issue a new key" card */
.issue-card[b-gr175wqo7b] { overflow: hidden; }

.issue-toggle[b-gr175wqo7b] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    background: transparent;
    border: 0;
    text-align: left;
    padding: 18px 22px;
    cursor: pointer;
    transition: background 0.15s;
}

.issue-toggle:hover[b-gr175wqo7b] { background: var(--neutral-50, #f9fafb); }

.issue-toggle .section-subtitle[b-gr175wqo7b] { margin: 4px 0 0 0; }

.issue-toggle .chevron[b-gr175wqo7b] {
    font-size: 16px;
    color: var(--text-muted, #6b7280);
    transition: transform 0.2s ease;
    flex-shrink: 0;
}

.issue-toggle .chevron.open[b-gr175wqo7b] { transform: rotate(180deg); }

.issue-body[b-gr175wqo7b] {
    padding-top: 0;
    transition: opacity 0.15s ease;
}

.issue-body.collapsed[b-gr175wqo7b] { display: none; }

/* Consistent control heights across the issue-key row */
.issue-body .form-label[b-gr175wqo7b] {
    margin-bottom: 6px;
}

.issue-body .form-select[b-gr175wqo7b],
.issue-body .form-control[b-gr175wqo7b],
.issue-body .btn[b-gr175wqo7b] {
    height: 42px;
    font-size: 14px;
    border-radius: 8px;
}

.issue-body .btn[b-gr175wqo7b] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
}

/* List head — title + filters inline */
.list-head[b-gr175wqo7b] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 20px;
    flex-wrap: wrap;
}

.list-head .section-title[b-gr175wqo7b] { margin-bottom: 2px; }

.list-toolbar[b-gr175wqo7b] {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}

.search-wrap[b-gr175wqo7b] {
    position: relative;
    width: 300px;
    max-width: 100%;
}

.search-wrap i[b-gr175wqo7b] {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted, #6b7280);
    font-size: 14px;
    pointer-events: none;
}

.search-wrap .form-control[b-gr175wqo7b] {
    padding-left: 36px;
    height: 38px;
    font-size: 13px;
}

.btn-group .btn-outline-secondary[b-gr175wqo7b] {
    font-size: 13px;
    padding: 6px 14px;
    border-color: var(--neutral-200, #e5e7eb);
    color: var(--text-secondary, #4b5563);
    font-weight: 500;
}

.btn-group .btn-check:checked + .btn-outline-secondary[b-gr175wqo7b] {
    background: var(--brand-600, #4f46e5);
    border-color: var(--brand-600, #4f46e5);
    color: white;
}

/* Table */
.clients-table[b-gr175wqo7b] { margin-bottom: 0; }

.clients-table thead th[b-gr175wqo7b] {
    background: transparent;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: var(--text-muted, #6b7280);
    font-weight: 600;
    border-bottom: 1px solid var(--neutral-200, #e5e7eb);
    padding: 12px;
}

.clients-table thead th.sortable[b-gr175wqo7b] {
    cursor: pointer;
    user-select: none;
    transition: color 0.15s;
    white-space: nowrap;
}

.clients-table thead th.sortable:hover[b-gr175wqo7b] { color: var(--brand-600, #4f46e5); }

.sort-caret[b-gr175wqo7b] {
    font-size: 10px;
    margin-left: 4px;
    opacity: 0.4;
    transition: opacity 0.15s;
    vertical-align: baseline;
}

.clients-table thead th.sortable:hover .sort-caret[b-gr175wqo7b] { opacity: 0.7; }

.sort-caret.active[b-gr175wqo7b] {
    opacity: 1;
    color: var(--brand-600, #4f46e5);
}

.clients-table tbody td[b-gr175wqo7b] {
    padding: 14px 12px;
    border-color: var(--neutral-100, #f3f4f6);
    font-size: 13px;
    color: var(--text-primary, #111827);
}

.clients-table tbody tr:hover[b-gr175wqo7b] { background: var(--neutral-50, #f9fafb); }
.clients-table .row-muted[b-gr175wqo7b] { opacity: 0.55; }

.key-prefix[b-gr175wqo7b] {
    background: var(--neutral-100, #f3f4f6);
    padding: 3px 8px;
    border-radius: 4px;
    font-size: 12.5px;
    color: var(--text-primary, #111827);
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.row-link[b-gr175wqo7b] {
    color: inherit;
    text-decoration: none;
    display: block;
}

.row-link:hover[b-gr175wqo7b] {
    color: var(--brand-600, #4f46e5);
}

.row-link:hover .fw-semibold[b-gr175wqo7b] {
    color: var(--brand-600, #4f46e5);
}

.metric-stack[b-gr175wqo7b] {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    line-height: 1.1;
}

.metric-value[b-gr175wqo7b] {
    font-size: 16px;
    font-weight: 700;
    color: var(--text-primary, #111827);
    font-variant-numeric: tabular-nums;
}

.metric-recent[b-gr175wqo7b] {
    font-size: 10.5px;
    font-weight: 600;
    color: var(--success-600, #059669);
    background: var(--success-50, #ecfdf5);
    padding: 1px 6px;
    border-radius: 999px;
    border: 1px solid var(--success-100, #d1fae5);
}

.metric-bad[b-gr175wqo7b] {
    font-size: 10.5px;
    font-weight: 600;
    color: var(--error-700, #b91c1c);
    background: var(--error-50, #fef2f2);
    padding: 1px 6px;
    border-radius: 999px;
    border: 1px solid var(--error-100, #fee2e2);
    display: inline-flex;
    align-items: center;
    gap: 3px;
}

/* Status pills */
.status-pill[b-gr175wqo7b] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    padding: 4px 10px;
    border-radius: 999px;
    font-weight: 600;
}

.status-pill.status-active[b-gr175wqo7b] {
    background: #ecfdf5;
    color: #059669;
    border: 1px solid #d1fae5;
}

.status-pill.status-active i[b-gr175wqo7b] { font-size: 10px; }

.status-pill.status-revoked[b-gr175wqo7b] {
    background: var(--neutral-100, #f3f4f6);
    color: var(--text-muted, #6b7280);
    border: 1px solid var(--neutral-200, #e5e7eb);
}

/* Empty state */
.empty-state[b-gr175wqo7b] {
    text-align: center;
    padding: 56px 16px;
    border: none;
}

/* Modal look comes from the global wwwroot/css/modal-theme.css */

.issued-meta[b-gr175wqo7b] {
    background: var(--neutral-50, #f9fafb);
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 8px;
    padding: 14px 16px;
    display: grid;
    gap: 8px;
}

.issued-meta > div[b-gr175wqo7b] {
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 12px;
    font-size: 14px;
    align-items: center;
}

.meta-label[b-gr175wqo7b] {
    color: var(--text-muted, #6b7280);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    font-weight: 600;
}

/* Responsive */
@media (max-width: 768px) {
    .list-head[b-gr175wqo7b] { flex-direction: column; align-items: stretch; }
    .list-toolbar[b-gr175wqo7b] { width: 100%; }
    .search-wrap[b-gr175wqo7b] { width: 100%; }
}
/* /Components/Pages/Admin/ApiPlaygroundPage.razor.rz.scp.css */
/* ========================================
   API Playground — Postman/Insomnia-style workspace
   ======================================== */

.playground[b-yd3jsce8jf] {
    padding: 20px 24px;
    max-width: 1600px;
    margin: 0 auto;
    color: var(--text-primary, #111827);
}

/* ─── Toolbar header ─── */
.playground-toolbar[b-yd3jsce8jf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 12px 16px;
    background: white;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 12px;
    margin-bottom: 20px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
    flex-wrap: wrap;
}

.toolbar-left[b-yd3jsce8jf] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.app-icon[b-yd3jsce8jf] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--brand-600, #4f46e5), #7c3aed);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    box-shadow: 0 4px 10px rgba(79, 70, 229, 0.3);
}

.toolbar-title[b-yd3jsce8jf] {
    font-size: 17px;
    font-weight: 700;
    letter-spacing: -0.3px;
    line-height: 1.2;
}

.toolbar-subtitle[b-yd3jsce8jf] {
    font-size: 12.5px;
    color: var(--text-muted, #6b7280);
    line-height: 1.2;
    margin-top: 2px;
}

.toolbar-subtitle code[b-yd3jsce8jf] {
    background: var(--neutral-100, #f3f4f6);
    padding: 1px 5px;
    border-radius: 3px;
    font-size: 11.5px;
    color: var(--text-primary, #111827);
}

.toolbar-right[b-yd3jsce8jf] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.env-chip[b-yd3jsce8jf] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 600;
    padding: 5px 10px;
    border-radius: 999px;
    border: 1px solid transparent;
}

.env-chip.env-ready[b-yd3jsce8jf] {
    background: #ecfdf5;
    color: #059669;
    border-color: #d1fae5;
}

.env-chip.env-missing[b-yd3jsce8jf] {
    background: #fffbeb;
    color: #b45309;
    border-color: #fef3c7;
}

/* ─── Workspace grid ─── */
.playground-grid[b-yd3jsce8jf] {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 20px;
    align-items: start;
}

@media (max-width: 1100px) {
    .playground-grid[b-yd3jsce8jf] { grid-template-columns: 1fr; }
}

.pg-sidebar[b-yd3jsce8jf] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    position: sticky;
    top: 20px;
}

.pg-main[b-yd3jsce8jf] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
}

/* ─── Cards ─── */
.pg-card[b-yd3jsce8jf] {
    background: white;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 12px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
    overflow: hidden;
}

.pg-card-head[b-yd3jsce8jf] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    background: #fafbfc;
    border-bottom: 1px solid var(--neutral-200, #e5e7eb);
    font-size: 12.5px;
    font-weight: 600;
    color: var(--text-primary, #111827);
}

.pg-card-head > i:first-child[b-yd3jsce8jf] {
    color: var(--brand-600, #4f46e5);
}

.pg-card-body[b-yd3jsce8jf] {
    padding: 16px;
}

.pg-card-body.p-0[b-yd3jsce8jf] { padding: 0; }

.pg-label[b-yd3jsce8jf] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: var(--text-muted, #6b7280);
    margin-bottom: 6px;
    display: block;
}

/* ─── Request bar (Postman-like URL builder) ─── */
.request-bar[b-yd3jsce8jf] {
    display: flex;
    background: white;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
}

.method-select[b-yd3jsce8jf] {
    border: none;
    background: white;
    padding: 0 14px;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 13px;
    font-weight: 700;
    outline: none;
    cursor: pointer;
    min-width: 110px;
    border-right: 1px solid var(--neutral-200, #e5e7eb);
    letter-spacing: 0.3px;
}

.method-select.get[b-yd3jsce8jf]    { color: #1e40af; }
.method-select.post[b-yd3jsce8jf]   { color: #166534; }
.method-select.patch[b-yd3jsce8jf]  { color: #92400e; }
.method-select.delete[b-yd3jsce8jf] { color: #991b1b; }

.url-input[b-yd3jsce8jf] {
    flex: 1;
    border: none;
    padding: 12px 14px;
    font-size: 13.5px;
    background: white;
    outline: none;
    color: var(--text-primary, #111827);
}

.url-input:focus[b-yd3jsce8jf] { background: #fafbfc; }

.send-btn[b-yd3jsce8jf] {
    border: none;
    border-radius: 0;
    padding: 0 22px;
    display: flex;
    align-items: center;
    gap: 7px;
    font-weight: 600;
    font-size: 14px;
    min-width: 90px;
    background: var(--brand-600, #4f46e5);
}

.send-btn:hover:not(:disabled)[b-yd3jsce8jf] { background: var(--brand-700, #4338ca); }

/* ─── Body editor ─── */
.body-editor[b-yd3jsce8jf] {
    width: 100%;
    border: none;
    padding: 14px 16px;
    background: #fafbfc;
    font-size: 12.5px;
    color: var(--text-primary, #111827);
    resize: vertical;
    outline: none;
    min-height: 100px;
    line-height: 1.55;
}

.body-editor:focus[b-yd3jsce8jf] { background: white; }

/* ─── Quick scenarios (chips) ─── */
.chip-row[b-yd3jsce8jf] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px;
}

/* Banner showing the application id chained scenarios will target */
.tracked-app[b-yd3jsce8jf] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    margin-bottom: 12px;
    background: var(--brand-50, #eef2ff);
    border: 1px solid var(--brand-200, #c7d2fe);
    border-radius: 8px;
    font-size: 12.5px;
    color: var(--brand-800, #3730a3);
}

.tracked-app i[b-yd3jsce8jf] { font-size: 14px; color: var(--brand-600, #4f46e5); }
.tracked-app span[b-yd3jsce8jf] { flex: 1; }
.tracked-app strong[b-yd3jsce8jf] { color: var(--brand-700, #4338ca); font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }

.tracked-clear[b-yd3jsce8jf] {
    background: transparent;
    border: none;
    color: var(--text-muted, #6b7280);
    padding: 0 4px;
    cursor: pointer;
    font-size: 14px;
    line-height: 1;
    border-radius: 4px;
}

.tracked-clear:hover[b-yd3jsce8jf] {
    color: var(--text-primary, #111827);
    background: rgba(255, 255, 255, 0.5);
}

.chip-row:last-child[b-yd3jsce8jf] { margin-bottom: 0; }

.chip-group-label[b-yd3jsce8jf] {
    font-size: 10.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: var(--text-muted, #6b7280);
    width: 75px;
    flex-shrink: 0;
}

.chip[b-yd3jsce8jf] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12.5px;
    padding: 5px 10px 5px 5px;
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 999px;
    background: white;
    color: var(--text-primary, #111827);
    font-weight: 500;
    cursor: pointer;
    transition: all 0.12s ease;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.chip em[b-yd3jsce8jf] {
    font-style: normal;
    color: var(--text-muted, #6b7280);
    font-size: 11.5px;
    margin-left: 3px;
}

.chip:hover[b-yd3jsce8jf] {
    background: var(--brand-50, #eef2ff);
    border-color: var(--brand-300, #a5b4fc);
    color: var(--brand-700, #4338ca);
}

.chip-warning[b-yd3jsce8jf] { border-color: #fde68a; }
.chip-warning:hover[b-yd3jsce8jf] { background: #fffbeb; border-color: #f59e0b; color: #92400e; }

.chip-danger[b-yd3jsce8jf] { border-color: #fecaca; padding: 5px 10px; }
.chip-danger:hover[b-yd3jsce8jf] { background: #fef2f2; border-color: #f87171; color: #b91c1c; }

/* Replayed badge next to response status */
.response-replayed[b-yd3jsce8jf] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 999px;
    background: #e0e7ff;
    color: #3730a3;
    border: 1px solid #c7d2fe;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.response-replayed i[b-yd3jsce8jf] { font-size: 12px; }

/* ─── Method pills (small, used inside chips/history/response) ─── */
.method-pill[b-yd3jsce8jf] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 10px;
    font-weight: 700;
    padding: 3px 6px;
    border-radius: 4px;
    letter-spacing: 0.4px;
    min-width: 42px;
    flex-shrink: 0;
}

.method-pill.get[b-yd3jsce8jf]    { background: #dbeafe; color: #1e40af; }
.method-pill.post[b-yd3jsce8jf]   { background: #dcfce7; color: #166534; }
.method-pill.patch[b-yd3jsce8jf]  { background: #fef3c7; color: #92400e; }
.method-pill.delete[b-yd3jsce8jf] { background: #fee2e2; color: #991b1b; }
.method-pill.other[b-yd3jsce8jf]  { background: #e5e7eb; color: #374151; }

.badge-status[b-yd3jsce8jf] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 10.5px;
    font-weight: 700;
    padding: 3px 6px;
    border-radius: 4px;
    background: #fee2e2;
    color: #991b1b;
    min-width: 34px;
}

/* ─── Response card ─── */
.response-card[b-yd3jsce8jf] { min-height: 260px; }

.response-meta[b-yd3jsce8jf] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-left: auto;
    font-size: 12px;
    color: var(--text-muted, #6b7280);
}

.response-time[b-yd3jsce8jf],
.response-size[b-yd3jsce8jf] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.response-time i[b-yd3jsce8jf],
.response-size i[b-yd3jsce8jf] { font-size: 11px; opacity: 0.7; }

.response-status[b-yd3jsce8jf] {
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 11.5px;
    padding: 3px 8px;
    border-radius: 5px;
    font-weight: 700;
    letter-spacing: 0.3px;
    border: 1px solid transparent;
}

.st-ok[b-yd3jsce8jf]     { background: #dcfce7; color: #166534; border-color: #bbf7d0; }
.st-info[b-yd3jsce8jf]   { background: #dbeafe; color: #1e40af; border-color: #bfdbfe; }
.st-warn[b-yd3jsce8jf]   { background: #fef3c7; color: #92400e; border-color: #fde68a; }
.st-danger[b-yd3jsce8jf] { background: #fee2e2; color: #991b1b; border-color: #fecaca; }
.st-muted[b-yd3jsce8jf]  { background: #e5e7eb; color: #374151; border-color: #d1d5db; }

.response-request-echo[b-yd3jsce8jf] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    background: #fafbfc;
    border-bottom: 1px solid var(--neutral-200, #e5e7eb);
}

.echo-url[b-yd3jsce8jf] {
    color: var(--text-primary, #111827);
    font-size: 12.5px;
    word-break: break-all;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    background: transparent;
    padding: 0;
}

.request-body-details[b-yd3jsce8jf] {
    padding: 0;
    border-bottom: 1px solid var(--neutral-200, #e5e7eb);
    background: #fafbfc;
}

.request-body-details summary[b-yd3jsce8jf] {
    padding: 8px 16px;
    font-size: 12px;
    cursor: pointer;
    color: var(--text-muted, #6b7280);
    user-select: none;
}

.request-body-details summary:hover[b-yd3jsce8jf] { color: var(--text-primary, #111827); }
.request-body-details pre[b-yd3jsce8jf] { margin: 0; border-radius: 0; }

.code-block[b-yd3jsce8jf] {
    background: #0f172a;
    color: #e2e8f0;
    padding: 16px 18px;
    margin: 0;
    font-size: 12.5px;
    line-height: 1.6;
    max-height: 560px;
    overflow: auto;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    border-radius: 0;
}

.code-block code[b-yd3jsce8jf] {
    color: inherit;
    background: transparent;
    padding: 0;
}

.code-block-light[b-yd3jsce8jf] {
    background: #f1f5f9;
    color: #334155;
    max-height: 300px;
}

.empty-response[b-yd3jsce8jf] {
    text-align: center;
    padding: 56px 20px;
    color: var(--text-muted, #6b7280);
}

.empty-response > i[b-yd3jsce8jf] {
    font-size: 40px;
    display: block;
    margin-bottom: 14px;
    opacity: 0.45;
}

.empty-title[b-yd3jsce8jf] {
    font-weight: 600;
    color: var(--text-primary, #111827);
    font-size: 14px;
}

.empty-hint[b-yd3jsce8jf] {
    font-size: 12.5px;
    margin-top: 4px;
}

.empty-hint kbd[b-yd3jsce8jf] {
    background: var(--neutral-100, #f3f4f6);
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 4px;
    padding: 1px 6px;
    font-size: 11px;
    font-family: inherit;
    color: var(--text-primary, #111827);
}

/* ─── History ─── */
.history-list[b-yd3jsce8jf] {
    display: flex;
    flex-direction: column;
    max-height: 380px;
    overflow-y: auto;
}

.history-row[b-yd3jsce8jf] {
    display: grid;
    grid-template-columns: 40px 46px 1fr auto;
    gap: 8px;
    align-items: center;
    padding: 9px 14px;
    border: none;
    border-bottom: 1px solid var(--neutral-100, #f3f4f6);
    background: transparent;
    text-align: left;
    font-size: 11.5px;
    cursor: pointer;
    transition: background 0.12s ease;
    width: 100%;
}

.history-row:hover[b-yd3jsce8jf] { background: var(--neutral-50, #f9fafb); }
.history-row:last-child[b-yd3jsce8jf] { border-bottom: none; }

.history-row.active[b-yd3jsce8jf] {
    background: var(--brand-50, #eef2ff);
    border-left: 3px solid var(--brand-600, #4f46e5);
    padding-left: 11px;
}

.h-status[b-yd3jsce8jf] {
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-weight: 700;
    font-size: 10.5px;
    padding: 2px 4px;
    border-radius: 4px;
    text-align: center;
    border: 1px solid transparent;
}

.h-method[b-yd3jsce8jf] {
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-weight: 700;
    font-size: 10px;
    letter-spacing: 0.3px;
}

.h-method.get[b-yd3jsce8jf]    { color: #1e40af; }
.h-method.post[b-yd3jsce8jf]   { color: #166534; }
.h-method.patch[b-yd3jsce8jf]  { color: #92400e; }
.h-method.delete[b-yd3jsce8jf] { color: #991b1b; }
.h-method.other[b-yd3jsce8jf]  { color: #374151; }

.h-path[b-yd3jsce8jf] {
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 11px;
    color: var(--text-primary, #111827);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.h-time[b-yd3jsce8jf] {
    font-size: 10.5px;
    color: var(--text-muted, #6b7280);
    font-variant-numeric: tabular-nums;
}

.ms-unit[b-yd3jsce8jf] { color: var(--text-muted, #6b7280); margin-left: 1px; }

.empty-history[b-yd3jsce8jf] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    padding: 22px 14px;
    color: var(--text-muted, #6b7280);
    font-size: 12px;
    text-align: center;
}

.empty-history i[b-yd3jsce8jf] {
    font-size: 22px;
    opacity: 0.5;
}

/* ─── Misc ─── */
.btn-link-muted[b-yd3jsce8jf] {
    background: none;
    border: none;
    color: var(--text-muted, #6b7280);
    font-size: 12px;
    padding: 2px 6px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    border-radius: 4px;
    transition: all 0.12s ease;
}

.btn-link-muted:hover:not(:disabled)[b-yd3jsce8jf] {
    color: var(--brand-600, #4f46e5);
    background: var(--brand-50, #eef2ff);
}

.btn-link-muted:disabled[b-yd3jsce8jf] { opacity: 0.4; cursor: not-allowed; }

/* ─── Selected-scenario description (what the loaded endpoint is for) ─── */
.scenario-desc[b-yd3jsce8jf] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 0 0 16px;
    padding: 8px 12px;
    background: var(--brand-50, #eef2ff);
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-left: 3px solid var(--brand-600, #4f46e5);
    border-radius: 8px;
    font-size: 12.5px;
    color: var(--text-primary, #374151);
    line-height: 1.45;
}

.scenario-desc i[b-yd3jsce8jf] {
    color: var(--brand-600, #4f46e5);
    margin-top: 1px;
    flex: 0 0 auto;
}
/* /Components/Pages/Admin/ApiRequestLogsPage.razor.rz.scp.css */
/* ========================================
   API Request Logs — admin audit viewer
   ======================================== */
.logs-page[b-9lqiuw4f68] {
    padding: 20px 24px;
    max-width: 1600px;
    margin: 0 auto;
    color: var(--text-primary, #111827);
}

/* ─── Toolbar ─── */
.logs-toolbar[b-9lqiuw4f68] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 12px 16px;
    background: var(--surface, #fff);
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 12px;
    margin-bottom: 16px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
    flex-wrap: wrap;
}
.tb-left[b-9lqiuw4f68] { display: flex; align-items: center; gap: 12px; }
.tb-icon[b-9lqiuw4f68] {
    width: 40px; height: 40px; border-radius: 10px;
    background: linear-gradient(135deg, var(--brand-600, #4f46e5), #7c3aed);
    color: #fff; display: flex; align-items: center; justify-content: center;
    font-size: 19px; box-shadow: 0 4px 10px rgba(79, 70, 229, 0.3);
}
.tb-title[b-9lqiuw4f68] { font-size: 17px; font-weight: 700; letter-spacing: -0.3px; line-height: 1.2; }
.tb-subtitle[b-9lqiuw4f68] { font-size: 12.5px; color: var(--text-muted, #6b7280); margin-top: 2px; }
.tb-subtitle code[b-9lqiuw4f68] { background: var(--neutral-100, #f3f4f6); padding: 1px 5px; border-radius: 3px; font-size: 11.5px; }
.tb-right[b-9lqiuw4f68] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.btn.spin i[b-9lqiuw4f68] { animation: spin-b-9lqiuw4f68 0.8s linear infinite; }
@keyframes spin-b-9lqiuw4f68 { to { transform: rotate(360deg); } }

/* ─── Stat cards ─── */
.stat-grid[b-9lqiuw4f68] {
    display: grid; grid-template-columns: repeat(4, 1fr);
    gap: 12px; margin-bottom: 16px;
}
.stat-card[b-9lqiuw4f68] {
    display: flex; align-items: center; gap: 12px;
    background: var(--surface, #fff);
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 12px; padding: 14px 16px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}
.stat-card.is-error[b-9lqiuw4f68] { border-color: #fecaca; background: #fef2f2; }
.stat-ico[b-9lqiuw4f68] {
    width: 38px; height: 38px; border-radius: 9px; flex: 0 0 auto;
    display: flex; align-items: center; justify-content: center; font-size: 18px;
}
.ico-blue[b-9lqiuw4f68] { background: #eef2ff; color: #4f46e5; }
.ico-red[b-9lqiuw4f68] { background: #fee2e2; color: #dc2626; }
.ico-amber[b-9lqiuw4f68] { background: #fef3c7; color: #d97706; }
.ico-violet[b-9lqiuw4f68] { background: #f3e8ff; color: #7c3aed; }
.stat-val[b-9lqiuw4f68] { font-size: 22px; font-weight: 700; letter-spacing: -0.5px; line-height: 1.1; }
.stat-val .u[b-9lqiuw4f68] { font-size: 12px; font-weight: 600; color: var(--text-muted, #6b7280); margin-left: 2px; }
.stat-lbl[b-9lqiuw4f68] { font-size: 11.5px; color: var(--text-muted, #6b7280); margin-top: 1px; }

/* ─── Filter bar ─── */
.filter-bar[b-9lqiuw4f68] {
    display: flex; gap: 12px; align-items: flex-end; flex-wrap: wrap;
    background: var(--surface, #fff);
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 12px; padding: 14px 16px; margin-bottom: 16px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}
.f-field[b-9lqiuw4f68] { display: flex; flex-direction: column; gap: 4px; flex: 1 1 180px; min-width: 130px; }
.f-field.f-sm[b-9lqiuw4f68] { flex: 0 0 130px; }
.f-field label[b-9lqiuw4f68] { font-size: 11px; font-weight: 600; color: var(--text-muted, #6b7280); text-transform: uppercase; letter-spacing: 0.4px; }
.f-actions[b-9lqiuw4f68] { display: flex; align-items: center; gap: 8px; }

/* Uniform control height so selects, the text input, and the buttons all line up */
.filter-bar .form-select[b-9lqiuw4f68],
.filter-bar .form-control[b-9lqiuw4f68],
.filter-bar .f-actions .btn[b-9lqiuw4f68] {
    height: 36px;
    box-sizing: border-box;
    font-size: 13px;
}

/* Filter action buttons — match the page's brand styling */
.filter-bar .f-actions .btn[b-9lqiuw4f68] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0 16px;
    border-radius: 8px;
    font-weight: 600;
    border: 1px solid transparent;
    transition: background-color 0.15s, box-shadow 0.15s, border-color 0.15s, transform 0.05s;
}
.filter-bar .f-actions .btn i[b-9lqiuw4f68] { font-size: 12px; }
.filter-bar .f-actions .btn-primary[b-9lqiuw4f68] {
    background: var(--brand-600, #4f46e5);
    border-color: var(--brand-600, #4f46e5);
    color: #fff;
    box-shadow: 0 1px 2px rgba(79, 70, 229, 0.25);
}
.filter-bar .f-actions .btn-primary:hover:not(:disabled)[b-9lqiuw4f68] {
    background: #4338ca; border-color: #4338ca;
    box-shadow: 0 2px 8px rgba(79, 70, 229, 0.35);
}
.filter-bar .f-actions .btn-primary:active:not(:disabled)[b-9lqiuw4f68] { transform: translateY(1px); }
.filter-bar .f-actions .btn-primary:disabled[b-9lqiuw4f68] { opacity: 0.6; }
/* Reset — a quiet ghost button instead of a bare link */
.filter-bar .f-actions .btn-link[b-9lqiuw4f68] {
    color: var(--text-muted, #6b7280);
    text-decoration: none;
    background: var(--surface, #fff);
    border-color: var(--neutral-200, #e5e7eb);
}
.filter-bar .f-actions .btn-link:hover[b-9lqiuw4f68] {
    background: var(--neutral-50, #f9fafb);
    color: var(--text-primary, #111827);
    border-color: var(--neutral-300, #d1d5db);
}

/* ─── Layout ─── */
.logs-layout[b-9lqiuw4f68] { display: grid; grid-template-columns: 1fr; gap: 16px; }
.logs-layout.with-detail[b-9lqiuw4f68] { grid-template-columns: minmax(0, 1.4fr) minmax(360px, 1fr); }
@media (max-width: 1100px) { .logs-layout.with-detail[b-9lqiuw4f68] { grid-template-columns: 1fr; } }

.logs-main[b-9lqiuw4f68] {
    background: var(--surface, #fff);
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 12px; overflow: hidden;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}
.logs-table-wrap[b-9lqiuw4f68] { overflow-x: auto; }

/* ─── Table ─── */
.logs-table[b-9lqiuw4f68] { width: 100%; border-collapse: collapse; font-size: 13px; }
.logs-table thead th[b-9lqiuw4f68] {
    text-align: left; font-size: 11px; font-weight: 600; text-transform: uppercase;
    letter-spacing: 0.4px; color: var(--text-muted, #6b7280);
    padding: 10px 14px; border-bottom: 1px solid var(--neutral-200, #e5e7eb);
    background: var(--neutral-50, #f9fafb); position: sticky; top: 0; z-index: 1;
}
.logs-table tbody td[b-9lqiuw4f68] { padding: 9px 14px; border-bottom: 1px solid var(--neutral-100, #f3f4f6); vertical-align: middle; }
.logs-table tbody tr[b-9lqiuw4f68] { cursor: pointer; transition: background 0.1s; }
.logs-table tbody tr:hover[b-9lqiuw4f68] { background: var(--neutral-50, #f9fafb); }
.logs-table tbody tr.active[b-9lqiuw4f68] { background: #eef2ff; box-shadow: inset 3px 0 0 var(--brand-600, #4f46e5); }
.mono[b-9lqiuw4f68] { font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; }
.dim[b-9lqiuw4f68] { color: var(--text-muted, #6b7280); }
.nowrap[b-9lqiuw4f68] { white-space: nowrap; }
.ta-r[b-9lqiuw4f68] { text-align: right; }
.slow[b-9lqiuw4f68] { color: #d97706; font-weight: 600; }
.path[b-9lqiuw4f68] { max-width: 320px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.empty[b-9lqiuw4f68] { text-align: center; color: var(--text-muted, #9ca3af); padding: 40px 0 !important; }
.empty i[b-9lqiuw4f68] { font-size: 26px; display: block; margin-bottom: 6px; opacity: 0.5; }

.pager[b-9lqiuw4f68] {
    display: flex; justify-content: space-between; align-items: center;
    padding: 10px 14px; font-size: 12.5px; border-top: 1px solid var(--neutral-100, #f3f4f6);
}

/* ─── Method + status pills ─── */
.m-pill[b-9lqiuw4f68], .s-pill[b-9lqiuw4f68] {
    display: inline-block; font-size: 10.5px; font-weight: 700; letter-spacing: 0.3px;
    padding: 2px 7px; border-radius: 5px; font-family: ui-monospace, Menlo, Consolas, monospace;
}
.m-pill.get[b-9lqiuw4f68] { background: #dbeafe; color: #1d4ed8; }
.m-pill.post[b-9lqiuw4f68] { background: #dcfce7; color: #15803d; }
.m-pill.patch[b-9lqiuw4f68] { background: #fef3c7; color: #b45309; }
.m-pill.delete[b-9lqiuw4f68] { background: #fee2e2; color: #b91c1c; }
.m-pill.other[b-9lqiuw4f68] { background: #e5e7eb; color: #374151; }
.s-pill.s-ok[b-9lqiuw4f68] { background: #dcfce7; color: #15803d; }
.s-pill.s-info[b-9lqiuw4f68] { background: #cffafe; color: #0e7490; }
.s-pill.s-warn[b-9lqiuw4f68] { background: #fef3c7; color: #b45309; }
.s-pill.s-danger[b-9lqiuw4f68] { background: #fee2e2; color: #b91c1c; }
.s-pill.s-muted[b-9lqiuw4f68] { background: #e5e7eb; color: #374151; }

/* ─── Detail drawer ─── */
.detail[b-9lqiuw4f68] {
    background: var(--surface, #fff);
    border: 1px solid var(--neutral-200, #e5e7eb);
    border-radius: 12px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
    align-self: start; position: sticky; top: 16px; max-height: calc(100vh - 32px);
    display: flex; flex-direction: column; overflow: hidden;
}
.detail-head[b-9lqiuw4f68] {
    display: flex; justify-content: space-between; align-items: center;
    padding: 12px 14px; border-bottom: 1px solid var(--neutral-200, #e5e7eb);
    background: var(--neutral-50, #f9fafb);
}
.detail-head .x[b-9lqiuw4f68] { border: 0; background: none; color: var(--text-muted, #6b7280); cursor: pointer; padding: 4px; border-radius: 6px; }
.detail-head .x:hover[b-9lqiuw4f68] { background: var(--neutral-200, #e5e7eb); }
.detail-body[b-9lqiuw4f68] { padding: 14px; overflow-y: auto; font-size: 13px; }
.kv[b-9lqiuw4f68] { display: grid; grid-template-columns: 96px 1fr; gap: 8px; padding: 4px 0; }
.kv > span:first-child[b-9lqiuw4f68] { color: var(--text-muted, #6b7280); font-size: 12px; }
.kv code[b-9lqiuw4f68] { background: var(--neutral-100, #f3f4f6); padding: 1px 5px; border-radius: 4px; font-size: 12px; word-break: break-all; }
.brk[b-9lqiuw4f68] { word-break: break-all; }
.trunc-note[b-9lqiuw4f68] { margin: 10px 0; padding: 6px 10px; background: #fffbeb; border: 1px solid #fde68a; color: #92400e; border-radius: 8px; font-size: 12px; }
.body-head[b-9lqiuw4f68] { display: flex; justify-content: space-between; align-items: center; margin: 12px 0 4px; font-weight: 600; font-size: 12.5px; }
.body-head .copy[b-9lqiuw4f68] { border: 0; background: none; color: var(--text-muted, #6b7280); cursor: pointer; padding: 2px 6px; border-radius: 6px; }
.body-head .copy:hover:not(:disabled)[b-9lqiuw4f68] { background: var(--neutral-100, #f3f4f6); color: var(--brand-600, #4f46e5); }
.body-head .copy:disabled[b-9lqiuw4f68] { opacity: 0.4; cursor: default; }
.code[b-9lqiuw4f68] {
    background: #0f172a; color: #e2e8f0; border-radius: 8px; padding: 10px 12px; margin: 0;
    font-size: 12px; line-height: 1.5; max-height: 260px; overflow: auto;
    font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; white-space: pre-wrap; word-break: break-word;
}
/* /Components/Pages/Admin/AuditPage.razor.rz.scp.css */
/* Audit Tab Styles */

.audit-page-content[b-znw3c3szcv] {
    max-width: 100%;
}

/* Header Section */
.audit-header[b-znw3c3szcv] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 28px;
    padding: 24px;
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(240, 247, 252, 0.6) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
}

.audit-title-section[b-znw3c3szcv] {
    flex: 1;
}

.audit-title[b-znw3c3szcv] {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 24px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 8px 0;
}

.audit-title i[b-znw3c3szcv] {
    font-size: 28px;
    color: var(--brand-500);
}

.audit-subtitle[b-znw3c3szcv] {
    font-size: 14px;
    color: #6B7280;
    margin: 0;
}

.audit-actions[b-znw3c3szcv] {
    display: flex;
    gap: 12px;
}

.btn-export[b-znw3c3szcv] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-export:hover[b-znw3c3szcv] {
    background: var(--brand-700, #003760);
}

.btn-export i[b-znw3c3szcv] {
    font-size: 16px;
}

/* Filter Section */
.audit-filters[b-znw3c3szcv] {
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 24px;
}

.filter-row[b-znw3c3szcv] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-bottom: 16px;
}

.filter-group[b-znw3c3szcv] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.filter-label[b-znw3c3szcv] {
    font-size: 13px;
    font-weight: 600;
    color: #374151;
}

.filter-input[b-znw3c3szcv],
.filter-select[b-znw3c3szcv] {
    padding: 10px 14px;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 8px;
    font-size: 14px;
    color: #1F2937;
    background: white;
    transition: all 0.2s;
}

.filter-input:focus[b-znw3c3szcv],
.filter-select:focus[b-znw3c3szcv] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}


.search-input-wrapper[b-znw3c3szcv] {
    position: relative;
    display: flex;
    align-items: center;
}

.search-input-wrapper > i[b-znw3c3szcv] {
    position: absolute;
    left: 14px;
    font-size: 16px;
    color: #6B7280;
    pointer-events: none;
}

.search-input[b-znw3c3szcv] {
    padding-left: 40px;
    padding-right: 40px;
    width: 100%;
}

.clear-search[b-znw3c3szcv] {
    position: absolute;
    right: 8px;
    background: none;
    border: none;
    padding: 4px;
    cursor: pointer;
    color: #6B7280;
    transition: color 0.2s;
}

.clear-search:hover[b-znw3c3szcv] {
    color: var(--brand-500);
}

.clear-search i[b-znw3c3szcv] {
    font-size: 18px;
}

.filter-actions[b-znw3c3szcv] {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
}

.btn-filter-apply[b-znw3c3szcv],
.btn-filter-reset[b-znw3c3szcv] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-filter-apply[b-znw3c3szcv] {
    background: var(--brand-600, #004980);
    color: white;
}

.btn-filter-apply:hover[b-znw3c3szcv] {
    background: var(--brand-700, #003760);
}

.btn-filter-reset[b-znw3c3szcv] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.btn-filter-reset:hover[b-znw3c3szcv] {
    background: #F1F5F9;
    color: #0F172A;
}

/* Audit Table */
.audit-table-container[b-znw3c3szcv] {
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 24px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.audit-table[b-znw3c3szcv] {
    width: 100%;
    border-collapse: collapse;
}

.audit-table thead[b-znw3c3szcv] {
    background: #E3F1FB;
    border-bottom: 2px solid #B8DAF0;
}

.audit-table th[b-znw3c3szcv] {
    padding: 14px 16px;
    text-align: left;
    font-size: 13px;
    font-weight: 700;
    color: #1F2937;
    text-transform: capitalize;
    letter-spacing: 0.3px;
}

.audit-table tbody tr[b-znw3c3szcv] {
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    transition: background-color 0.2s;
}

.audit-table tbody tr:hover[b-znw3c3szcv] {
    background-color: rgba(15, 23, 42, 0.04);
}

.audit-table tbody tr:last-child[b-znw3c3szcv] {
    border-bottom: none;
}

.audit-table td[b-znw3c3szcv] {
    padding: 14px 16px;
    font-size: 14px;
    color: #374151;
}

/* Column Specific Styles */
.col-timestamp[b-znw3c3szcv] {
    width: 140px;
}

.col-user[b-znw3c3szcv] {
    width: 180px;
}

.col-action[b-znw3c3szcv] {
    width: 120px;
}

.col-details[b-znw3c3szcv] {
    min-width: 250px;
}

.col-ip[b-znw3c3szcv] {
    width: 130px;
}

.col-status[b-znw3c3szcv] {
    width: 110px;
}

/* Cell Content Styles */
.timestamp-wrapper[b-znw3c3szcv] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.timestamp-wrapper .date[b-znw3c3szcv] {
    font-weight: 600;
    color: #1F2937;
    font-size: 13px;
}

.timestamp-wrapper .time[b-znw3c3szcv] {
    font-size: 12px;
    color: #6B7280;
}

.user-info[b-znw3c3szcv] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.user-icon[b-znw3c3szcv] {
    font-size: 24px;
    color: var(--brand-500);
}

.user-details[b-znw3c3szcv] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.user-name[b-znw3c3szcv] {
    font-weight: 600;
    color: #1F2937;
    font-size: 13px;
}

.user-role[b-znw3c3szcv] {
    font-size: 11px;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.action-badge[b-znw3c3szcv] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.action-badge i[b-znw3c3szcv] {
    font-size: 12px;
}

.action-create[b-znw3c3szcv] {
    background: #ECFDF5;
    color: #047857;
}

.action-update[b-znw3c3szcv] {
    background: #DBEAFE;
    color: #1E40AF;
}

.action-delete[b-znw3c3szcv] {
    background: #FEE2E2;
    color: var(--error-600);
}

.action-login[b-znw3c3szcv] {
    background: #F3E8FF;
    color: #7C3AED;
}

.action-logout[b-znw3c3szcv] {
    background: #FEF3C7;
    color: #D97706;
}

.action-export[b-znw3c3szcv] {
    background: #E0E7FF;
    color: #4338CA;
}

.action-import[b-znw3c3szcv] {
    background: #FCE7F3;
    color: #BE185D;
}

/* UserActivityAction badge tiers (from UserDisplayExtensions.GetActivityBadgeClass) */
.action-badge.activity-success[b-znw3c3szcv] {
    background: #ECFDF5;
    color: #047857;
}

.action-badge.activity-warning[b-znw3c3szcv] {
    background: #FEF3C7;
    color: #D97706;
}

.action-badge.activity-info[b-znw3c3szcv] {
    background: #DBEAFE;
    color: #1E40AF;
}

.action-badge.activity-error[b-znw3c3szcv] {
    background: #FEE2E2;
    color: var(--error-600);
}

.action-badge.activity-default[b-znw3c3szcv] {
    background: rgba(15, 23, 42, 0.08);
    color: var(--brand-500);
}

.details-content[b-znw3c3szcv] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.details-text[b-znw3c3szcv] {
    color: #1F2937;
    font-size: 13px;
    line-height: 1.4;
}

.entity-id[b-znw3c3szcv] {
    font-size: 11px;
    color: #6B7280;
    font-family: 'Courier New', monospace;
    font-weight: 600;
}

.ip-address[b-znw3c3szcv] {
    font-family: 'Courier New', monospace;
    font-size: 12px;
    color: #374151;
}

.status-indicator[b-znw3c3szcv] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.status-indicator i[b-znw3c3szcv] {
    font-size: 14px;
}

.status-success[b-znw3c3szcv] {
    background: #ECFDF5;
    color: #047857;
    border: 1px solid #A7F3D0;
}

.status-failure[b-znw3c3szcv] {
    background: #FEF2F2;
    color: var(--error-600);
    border: 1px solid #FECACA;
}

/* Empty State */
.empty-state[b-znw3c3szcv] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 80px 20px;
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 10px;
}

.empty-state i[b-znw3c3szcv] {
    font-size: 64px;
    color: #D1D5DB;
    margin-bottom: 16px;
}

.empty-state p[b-znw3c3szcv] {
    font-size: 16px;
    font-weight: 600;
    color: #6B7280;
    margin: 0 0 8px 0;
}

.empty-hint[b-znw3c3szcv] {
    font-size: 14px;
    color: #9CA3AF;
}

/* Pagination */
.pagination-container[b-znw3c3szcv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 10px;
}

.pagination-info[b-znw3c3szcv] {
    font-size: 14px;
    color: #6B7280;
}

.pagination-controls[b-znw3c3szcv] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.btn-page[b-znw3c3szcv] {
    padding: 8px 12px;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 6px;
    color: var(--brand-500);
    font-size: 14px;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-page:hover:not(:disabled)[b-znw3c3szcv] {
    background: rgba(15, 23, 42, 0.08);
    border-color: var(--brand-500);
}

.btn-page:disabled[b-znw3c3szcv] {
    opacity: 0.5;
    cursor: not-allowed;
}

.page-indicator[b-znw3c3szcv] {
    padding: 0 12px;
    font-size: 14px;
    font-weight: 600;
    color: #1F2937;
}

.page-size-selector[b-znw3c3szcv] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.page-size-selector label[b-znw3c3szcv] {
    font-size: 14px;
    color: #6B7280;
}

.page-size-select[b-znw3c3szcv] {
    padding: 8px 12px;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 6px;
    font-size: 14px;
    color: #1F2937;
    background: white;
    cursor: pointer;
    transition: all 0.2s;
}

.page-size-select:focus[b-znw3c3szcv] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

/* Responsive Design */
@media (max-width: 1400px) {
    .filter-row[b-znw3c3szcv] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 1024px) {
    .filter-row[b-znw3c3szcv] {
        grid-template-columns: repeat(2, 1fr);
    }

    .audit-table-container[b-znw3c3szcv] {
        overflow-x: auto;
    }

    .audit-table[b-znw3c3szcv] {
        min-width: 1200px;
    }
}

@media (max-width: 768px) {
    .audit-header[b-znw3c3szcv] {
        flex-direction: column;
        gap: 16px;
    }

    .filter-row[b-znw3c3szcv] {
        grid-template-columns: 1fr;
    }

    .pagination-container[b-znw3c3szcv] {
        flex-direction: column;
        gap: 16px;
        align-items: stretch;
    }

    .pagination-controls[b-znw3c3szcv] {
        justify-content: center;
    }

    .page-size-selector[b-znw3c3szcv] {
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .audit-title[b-znw3c3szcv] {
        font-size: 20px;
    }

    .audit-title i[b-znw3c3szcv] {
        font-size: 24px;
    }
}

/* /Components/Pages/Admin/BillingPage.razor.rz.scp.css */
/* Billing Tab Styles */

.billing-page-content[b-jtxd002a7b] {
    max-width: 100%;
}

/* Header Section */
.billing-header[b-jtxd002a7b] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
}

.billing-title-section[b-jtxd002a7b] {
    flex: 1;
}

.billing-title[b-jtxd002a7b] {
    font-size: 24px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 4px 0;
}

.billing-subtitle[b-jtxd002a7b] {
    font-size: 14px;
    color: #6B7280;
    margin: 0;
}

.btn-generate-invoice[b-jtxd002a7b] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-generate-invoice:hover[b-jtxd002a7b] {
    background: var(--brand-700, #003760);
}

.btn-generate-invoice i[b-jtxd002a7b] {
    font-size: 16px;
}

/* Statistics Grid */
.stats-grid[b-jtxd002a7b] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
    margin-bottom: 32px;
}

/* Billing Summary Section */
.billing-summary-section[b-jtxd002a7b] {
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(240, 247, 252, 0.6) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 24px;
    margin-bottom: 24px;
}

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

.section-title[b-jtxd002a7b] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 18px;
    font-weight: 700;
    color: #1F2937;
}

.section-title i[b-jtxd002a7b] {
    font-size: 22px;
    color: var(--brand-500);
}

.section-subtitle[b-jtxd002a7b] {
    font-size: 14px;
    color: #6B7280;
    margin-bottom: 20px;
}

/* Billing Table */
.billing-table-wrapper[b-jtxd002a7b] {
    background: rgba(255, 255, 255, 0.6);
    border-radius: 8px;
    overflow: hidden;
}

.billing-table[b-jtxd002a7b] {
    width: 100%;
    border-collapse: collapse;
}

.billing-table thead[b-jtxd002a7b] {
    background: rgba(255, 255, 255, 0.8);
}

.billing-table th[b-jtxd002a7b] {
    padding: 14px 20px;
    text-align: left;
    font-size: 12px;
    font-weight: 700;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 2px solid rgba(15, 23, 42, 0.12);
    white-space: nowrap;
}

.billing-table td[b-jtxd002a7b] {
    padding: 16px 20px;
    font-size: 14px;
    color: #1F2937;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    vertical-align: middle;
}

.billing-table tbody tr[b-jtxd002a7b] {
    background: transparent;
    transition: all 0.2s;
}

.billing-table tbody tr:hover[b-jtxd002a7b] {
    background: rgba(255, 255, 255, 0.9);
}

.billing-table tbody tr:last-child td[b-jtxd002a7b] {
    border-bottom: none;
}

/* Bank Info */
.bank-info[b-jtxd002a7b] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.bank-name[b-jtxd002a7b] {
    font-weight: 600;
    color: #1F2937;
    font-size: 14px;
}

.bank-code[b-jtxd002a7b] {
    font-size: 13px;
    color: #6B7280;
}

/* Table Amounts */
.policies-count[b-jtxd002a7b] {
    font-weight: 500;
    color: #1F2937;
}

.amount[b-jtxd002a7b] {
    font-weight: 500;
    color: #1F2937;
}

.total-amount[b-jtxd002a7b] {
    font-weight: 700;
    color: #1F2937;
    font-size: 15px;
}

.btn-action-text[b-jtxd002a7b] {
    padding: 8px 16px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-action-text:hover[b-jtxd002a7b] {
    background: var(--brand-700, #003760);
}

/* Invoice History Section */
.invoice-history-section[b-jtxd002a7b] {
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(240, 247, 252, 0.6) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 24px;
}

/* Empty State */
.empty-state[b-jtxd002a7b] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    background: rgba(255, 255, 255, 0.6);
    border-radius: 8px;
    border: 2px dashed rgba(15, 23, 42, 0.15);
}

.empty-state i[b-jtxd002a7b] {
    font-size: 64px;
    color: #D1D5DB;
    margin-bottom: 16px;
}

.empty-state p[b-jtxd002a7b] {
    font-size: 14px;
    color: #6B7280;
    margin: 0;
}

/* Invoice History List */
.invoice-history-list[b-jtxd002a7b] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.invoice-item[b-jtxd002a7b] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 20px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 8px;
    transition: all 0.2s;
}

.invoice-item:hover[b-jtxd002a7b] {
    background: white;
    border-color: rgba(15, 23, 42, 0.15);
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

.invoice-icon[b-jtxd002a7b] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-400) 100%);
    border-radius: 8px;
    flex-shrink: 0;
}

.invoice-icon i[b-jtxd002a7b] {
    font-size: 24px;
    color: white;
}

.invoice-details[b-jtxd002a7b] {
    flex: 1;
    min-width: 0;
}

.invoice-number[b-jtxd002a7b] {
    font-size: 14px;
    font-weight: 600;
    color: #1F2937;
    margin-bottom: 4px;
}

.invoice-meta[b-jtxd002a7b] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: #6B7280;
}

.separator[b-jtxd002a7b] {
    color: #D1D5DB;
}

.invoice-amount[b-jtxd002a7b] {
    font-size: 16px;
    font-weight: 700;
    color: #1F2937;
    margin-right: 16px;
}

.invoice-status[b-jtxd002a7b] {
    margin-right: 8px;
}

/* Status Badges */
.status-badge[b-jtxd002a7b] {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 700;
    text-transform: capitalize;
    white-space: nowrap;
}

.status-badge.status-pending[b-jtxd002a7b] {
    background: #FEF3C7;
    color: #D97706;
}

.status-badge.status-paid[b-jtxd002a7b] {
    background: #ECFDF5;
    color: #059669;
}

.status-badge.status-overdue[b-jtxd002a7b] {
    background: #FEE2E2;
    color: var(--error-600);
}

/* Invoice Actions */
.invoice-actions[b-jtxd002a7b] {
    display: flex;
    gap: 0;
}

/* Bootstrap Button Group Customization for Invoice Actions */
.invoice-actions .btn-action[b-jtxd002a7b] {
    padding: 6px 10px;
    font-size: 14px;
}

.invoice-actions .btn-action i[b-jtxd002a7b] {
    font-size: 14px;
}

/* Custom colors for outline buttons */
.invoice-actions .btn-outline-primary[b-jtxd002a7b] {
    color: var(--brand-500);
    border-color: var(--brand-500);
}

.invoice-actions .btn-outline-primary:hover[b-jtxd002a7b] {
    background-color: var(--brand-500);
    border-color: var(--brand-500);
    color: white;
}

.invoice-actions .btn-outline-secondary[b-jtxd002a7b] {
    color: #7C3AED;
    border-color: #9CA3AF;
}

.invoice-actions .btn-outline-secondary:hover[b-jtxd002a7b] {
    background-color: #7C3AED;
    border-color: #7C3AED;
    color: white;
}

.invoice-actions .btn-outline-danger[b-jtxd002a7b] {
    color: var(--error-600);
    border-color: var(--error-600);
}

.invoice-actions .btn-outline-danger:hover[b-jtxd002a7b] {
    background-color: var(--error-600);
    border-color: var(--error-600);
    color: white;
}

/* Modal Styles — aligned with wwwroot/css/modal-theme.css */
.modal-overlay[b-jtxd002a7b] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 1.5rem;
    backdrop-filter: blur(4px);
}

.modal-content[b-jtxd002a7b] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    width: 90%;
    max-width: 500px;
    max-height: 90vh;
    overflow: auto;
}

.modal-header[b-jtxd002a7b] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 1px solid #EEF2F6;
}

.modal-title[b-jtxd002a7b] {
    flex: 1;
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
    margin: 0;
}

.btn-close-modal[b-jtxd002a7b] {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    border-radius: 8px;
    color: #94A3B8;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-close-modal:hover[b-jtxd002a7b] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-close-modal i[b-jtxd002a7b] {
    font-size: 18px;
}

.modal-body[b-jtxd002a7b] {
    padding: 1.15rem 1.5rem;
}

.modal-description[b-jtxd002a7b] {
    font-size: 14px;
    color: #6B7280;
    margin: 0 0 24px 0;
}

.form-group[b-jtxd002a7b] {
    margin-bottom: 20px;
}

.form-row[b-jtxd002a7b] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 20px;
}

.form-label[b-jtxd002a7b] {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: #374151;
    margin-bottom: 8px;
}

.form-select[b-jtxd002a7b],
.form-input[b-jtxd002a7b] {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-size: 14px;
    color: #1F2937;
    background: white;
    transition: all 0.2s;
    font-family: inherit;
}

.form-select:focus[b-jtxd002a7b],
.form-input:focus[b-jtxd002a7b] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.form-select[b-jtxd002a7b] {
    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='M6 9L1 4h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    padding-right: 36px;
}

.modal-footer[b-jtxd002a7b] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

.btn-cancel[b-jtxd002a7b] {
    padding: 0.55rem 1.15rem;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-cancel:hover[b-jtxd002a7b] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-generate[b-jtxd002a7b] {
    padding: 0.55rem 1.15rem;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-generate:hover[b-jtxd002a7b] {
    background: var(--brand-700, #003760);
}

/* Responsive Design */
@media (max-width: 1200px) {
    .stats-grid[b-jtxd002a7b] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .billing-header[b-jtxd002a7b] {
        flex-direction: column;
        gap: 16px;
    }

    .btn-generate-invoice[b-jtxd002a7b] {
        width: 100%;
        justify-content: center;
    }
    
    .stats-grid[b-jtxd002a7b] {
        grid-template-columns: 1fr;
    }
    
    .billing-table-wrapper[b-jtxd002a7b] {
        overflow-x: auto;
    }

    .billing-table[b-jtxd002a7b] {
        min-width: 700px;
    }
    
    .invoice-item[b-jtxd002a7b] {
        flex-wrap: wrap;
    }
    
    .invoice-amount[b-jtxd002a7b] {
        margin-right: 0;
        width: 100%;
        margin-bottom: 8px;
    }
    
    .invoice-status[b-jtxd002a7b] {
        margin-right: 0;
    }
    
    .invoice-actions[b-jtxd002a7b] {
        width: 100%;
        justify-content: flex-end;
    }
    
    .form-row[b-jtxd002a7b] {
        grid-template-columns: 1fr;
    }
    
    .modal-content[b-jtxd002a7b] {
        width: 95%;
    }
}

/* /Components/Pages/Admin/DocuSignTestPage.razor.rz.scp.css */
/* DocuSign Test Page Styles */

/* Page Header */
.page-header[b-wymy0bf2ep] {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 32px;
    animation: fadeInDown-b-wymy0bf2ep 0.5s ease-out;
}

.page-header-icon[b-wymy0bf2ep] {
    width: 56px;
    height: 56px;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-600) 100%);
    color: white;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.18);
}

.page-header h1[b-wymy0bf2ep] {
    font-size: 28px;
    font-weight: 700;
    color: var(--text-primary, #0F172A);
    margin: 0;
}

.page-header p[b-wymy0bf2ep] {
    font-size: 14px;
    color: var(--text-secondary, #64748B);
    margin: 4px 0 0 0;
}

/* Card Styles */
.docusign-card[b-wymy0bf2ep] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 16px;
    margin-bottom: 24px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    animation: fadeInUp-b-wymy0bf2ep 0.5s ease-out;
    animation-fill-mode: both;
}

.docusign-card:nth-child(1)[b-wymy0bf2ep] { animation-delay: 0.1s; }
.docusign-card:nth-child(2)[b-wymy0bf2ep] { animation-delay: 0.15s; }
.docusign-card:nth-child(3)[b-wymy0bf2ep] { animation-delay: 0.2s; }
.docusign-card:nth-child(4)[b-wymy0bf2ep] { animation-delay: 0.25s; }
.docusign-card:nth-child(5)[b-wymy0bf2ep] { animation-delay: 0.3s; }

.docusign-card:hover[b-wymy0bf2ep] {
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.1);
    border-color: rgba(15, 23, 42, 0.15);
}

.card-header-modern[b-wymy0bf2ep] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 20px 24px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(255, 255, 255, 0.8) 100%);
}

.card-header-icon[b-wymy0bf2ep] {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    transition: transform 0.2s ease;
}

.docusign-card:hover .card-header-icon[b-wymy0bf2ep] {
    transform: scale(1.1);
}

.card-header-icon.icon-config[b-wymy0bf2ep] {
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-600) 100%);
    color: white;
}

.card-header-icon.icon-warning[b-wymy0bf2ep] {
    background: linear-gradient(135deg, #F59E0B 0%, #D97706 100%);
    color: white;
}

.card-header-icon.icon-auth[b-wymy0bf2ep] {
    background: linear-gradient(135deg, #6366F1 0%, #4F46E5 100%);
    color: white;
}

.card-header-icon.icon-envelope[b-wymy0bf2ep] {
    background: linear-gradient(135deg, #10B981 0%, #059669 100%);
    color: white;
}

.card-header-icon.icon-upload[b-wymy0bf2ep] {
    background: linear-gradient(135deg, #F59E0B 0%, #D97706 100%);
    color: white;
}

.card-header-icon.icon-help[b-wymy0bf2ep] {
    background: linear-gradient(135deg, #06B6D4 0%, #0891B2 100%);
    color: white;
}

.card-header-content h5[b-wymy0bf2ep] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary, #0F172A);
    margin: 0;
}

.card-header-content p[b-wymy0bf2ep] {
    font-size: 13px;
    color: var(--text-secondary, #64748B);
    margin: 2px 0 0 0;
}

.card-body-modern[b-wymy0bf2ep] {
    padding: 24px;
}

/* Config Table */
.config-grid[b-wymy0bf2ep] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

@media (max-width: 768px) {
    .config-grid[b-wymy0bf2ep] {
        grid-template-columns: 1fr;
    }
}

.config-table[b-wymy0bf2ep] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.config-table tr[b-wymy0bf2ep] {
    transition: background-color 0.15s ease;
}

.config-table tr:hover[b-wymy0bf2ep] {
    background: rgba(15, 23, 42, 0.03);
}

.config-table td[b-wymy0bf2ep] {
    padding: 12px 8px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.05);
    font-size: 14px;
}

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

.config-label[b-wymy0bf2ep] {
    font-weight: 600;
    color: var(--text-secondary, #64748B);
    width: 45%;
}

.config-value code[b-wymy0bf2ep] {
    background: rgba(15, 23, 42, 0.05);
    color: var(--brand-600);
    padding: 4px 8px;
    border-radius: 6px;
    font-size: 12px;
    font-family: 'Monaco', 'Consolas', monospace;
}

/* Status Badges */
.status-badge[b-wymy0bf2ep] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    transition: all 0.2s ease;
}

.status-badge i[b-wymy0bf2ep] {
    font-size: 12px;
}

.status-badge.badge-success[b-wymy0bf2ep] {
    background: var(--success-50);
    color: var(--success-600);
    border: 1px solid var(--success-200);
}

.status-badge.badge-danger[b-wymy0bf2ep] {
    background: var(--error-50);
    color: var(--error-600);
    border: 1px solid var(--error-200);
}

.status-badge.badge-warning[b-wymy0bf2ep] {
    background: var(--warning-50);
    color: var(--warning-600);
    border: 1px solid var(--warning-200);
}

.status-badge.badge-info[b-wymy0bf2ep] {
    background: var(--brand-50);
    color: var(--brand-600);
    border: 1px solid var(--brand-200);
}

/* Form Controls */
.form-group[b-wymy0bf2ep] {
    margin-bottom: 20px;
}

.form-label-modern[b-wymy0bf2ep] {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--text-secondary, #64748B);
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.form-control-modern[b-wymy0bf2ep] {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 10px;
    font-size: 14px;
    color: var(--text-primary, #0F172A);
    background: white;
    transition: all 0.2s ease;
}

.form-control-modern:focus[b-wymy0bf2ep] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.form-control-modern[b-wymy0bf2ep]::placeholder {
    color: var(--text-muted, #94A3B8);
}

.form-select-modern[b-wymy0bf2ep] {
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2364748B' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    padding-right: 44px;
}

/* Button Styles */
.btn-modern[b-wymy0bf2ep] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 24px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    min-width: 180px;
}

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

.btn-modern.btn-primary[b-wymy0bf2ep] {
    background: var(--brand-600, #004980);
    color: white;
}

.btn-modern.btn-primary:hover:not(:disabled)[b-wymy0bf2ep] {
    background: var(--brand-700, #003760);
}

.btn-modern.btn-success[b-wymy0bf2ep] {
    background: var(--success-600, #059669);
    color: white;
}

.btn-modern.btn-success:hover:not(:disabled)[b-wymy0bf2ep] {
    background: var(--success-700, #047857);
}

.btn-modern.btn-warning[b-wymy0bf2ep] {
    background: #D97706;
    color: white;
}

.btn-modern.btn-warning:hover:not(:disabled)[b-wymy0bf2ep] {
    background: #B45309;
}

.btn-modern.btn-outline[b-wymy0bf2ep] {
    background: transparent;
    border: 2px solid var(--brand-500);
    color: var(--brand-500);
}

.btn-modern.btn-outline:hover:not(:disabled)[b-wymy0bf2ep] {
    background: var(--brand-50);
}

/* Loading Spinner */
.spinner-modern[b-wymy0bf2ep] {
    width: 18px;
    height: 18px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-wymy0bf2ep 0.8s linear infinite;
}

/* Result Alerts */
.result-alert[b-wymy0bf2ep] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 20px;
    border-radius: 12px;
    margin-top: 20px;
    animation: fadeIn-b-wymy0bf2ep 0.3s ease-out;
}

.result-alert.alert-success[b-wymy0bf2ep] {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.08) 0%, rgba(16, 185, 129, 0.03) 100%);
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.result-alert.alert-danger[b-wymy0bf2ep] {
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.08) 0%, rgba(239, 68, 68, 0.03) 100%);
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.result-icon[b-wymy0bf2ep] {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
}

.alert-success .result-icon[b-wymy0bf2ep] {
    background: var(--success-100);
    color: var(--success-600);
}

.alert-danger .result-icon[b-wymy0bf2ep] {
    background: var(--error-100);
    color: var(--error-600);
}

.result-content h6[b-wymy0bf2ep] {
    font-size: 15px;
    font-weight: 600;
    color: var(--text-primary, #0F172A);
    margin: 0 0 8px 0;
}

.result-content p[b-wymy0bf2ep] {
    font-size: 14px;
    color: var(--text-secondary, #64748B);
    margin: 0;
    line-height: 1.5;
}

.result-content code[b-wymy0bf2ep] {
    background: rgba(15, 23, 42, 0.08);
    color: var(--brand-600);
    padding: 4px 8px;
    border-radius: 6px;
    font-size: 13px;
    font-family: 'Monaco', 'Consolas', monospace;
}

/* File Upload */
.file-upload-wrapper[b-wymy0bf2ep] {
    position: relative;
}

.file-upload-input[b-wymy0bf2ep] {
    width: 100%;
    padding: 12px 16px;
    border: 2px dashed rgba(15, 23, 42, 0.2);
    border-radius: 12px;
    background: rgba(15, 23, 42, 0.02);
    transition: all 0.2s ease;
    cursor: pointer;
}

.file-upload-input:hover[b-wymy0bf2ep] {
    border-color: var(--brand-500);
    background: rgba(15, 23, 42, 0.05);
}

.file-success[b-wymy0bf2ep] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
    font-size: 13px;
    color: var(--success-600);
    animation: fadeIn-b-wymy0bf2ep 0.3s ease-out;
}

/* Accordion Styles */
.accordion-modern[b-wymy0bf2ep] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.accordion-item-modern[b-wymy0bf2ep] {
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(255, 255, 255, 0.8) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.2s ease;
}

.accordion-item-modern:hover[b-wymy0bf2ep] {
    border-color: rgba(15, 23, 42, 0.18);
}

.accordion-button-modern[b-wymy0bf2ep] {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    background: transparent;
    border: none;
    cursor: pointer;
    text-align: left;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary, #0F172A);
    transition: background-color 0.2s ease;
}

.accordion-button-modern:hover[b-wymy0bf2ep] {
    background: rgba(15, 23, 42, 0.05);
}

.accordion-button-modern i[b-wymy0bf2ep] {
    font-size: 14px;
    color: var(--brand-500);
    transition: transform 0.3s ease;
}

.accordion-button-modern.expanded i[b-wymy0bf2ep] {
    transform: rotate(180deg);
}

.accordion-content-modern[b-wymy0bf2ep] {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.accordion-content-modern.show[b-wymy0bf2ep] {
    max-height: 1000px;
}

.accordion-body-modern[b-wymy0bf2ep] {
    padding: 0 20px 20px 20px;
    font-size: 14px;
    line-height: 1.7;
    color: var(--text-secondary, #64748B);
}

.accordion-body-modern ol[b-wymy0bf2ep] {
    padding-left: 20px;
    margin: 0;
}

.accordion-body-modern li[b-wymy0bf2ep] {
    margin-bottom: 8px;
}

.accordion-body-modern code[b-wymy0bf2ep] {
    background: rgba(15, 23, 42, 0.08);
    color: var(--brand-600);
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 12px;
}

.code-block[b-wymy0bf2ep] {
    display: block;
    padding: 12px 16px;
    background: rgba(15, 23, 42, 0.05);
    border-radius: 8px;
    margin: 12px 0;
    overflow-x: auto;
    font-size: 12px;
}

.alert-box[b-wymy0bf2ep] {
    padding: 12px 16px;
    background: var(--warning-50);
    border: 1px solid var(--warning-200);
    border-radius: 8px;
    color: var(--warning-700);
    font-size: 13px;
    margin-top: 12px;
}

/* External Link Button */
.link-btn[b-wymy0bf2ep] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
}

.link-btn.link-primary[b-wymy0bf2ep] {
    background: var(--brand-50);
    color: var(--brand-600);
    border: 1px solid var(--brand-200);
}

.link-btn.link-primary:hover[b-wymy0bf2ep] {
    background: var(--brand-100);
    text-decoration: none;
}

.link-btn.link-success[b-wymy0bf2ep] {
    background: var(--success-50);
    color: var(--success-600);
    border: 1px solid var(--success-200);
}

.link-btn.link-success:hover[b-wymy0bf2ep] {
    background: var(--success-100);
    text-decoration: none;
}

/* Grid Layout */
.form-row[b-wymy0bf2ep] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

@media (max-width: 768px) {
    .form-row[b-wymy0bf2ep] {
        grid-template-columns: 1fr;
    }
}

/* Animations */
@keyframes fadeIn-b-wymy0bf2ep {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fadeInUp-b-wymy0bf2ep {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInDown-b-wymy0bf2ep {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes spin-b-wymy0bf2ep {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

@keyframes pulse-b-wymy0bf2ep {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.5;
    }
}

/* Redirect URI Notice */
.redirect-uri-notice[b-wymy0bf2ep] {
    display: flex;
    gap: 16px;
    padding: 20px;
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.08) 0%, rgba(217, 119, 6, 0.04) 100%);
    border: 1px solid rgba(245, 158, 11, 0.2);
    border-radius: 12px;
    animation: fadeInUp-b-wymy0bf2ep 0.4s ease-out;
}

.redirect-uri-notice .notice-icon[b-wymy0bf2ep] {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    background: linear-gradient(135deg, #F59E0B 0%, #D97706 100%);
    color: white;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
}

.redirect-uri-notice .notice-content[b-wymy0bf2ep] {
    flex: 1;
}

.redirect-uri-notice .notice-content h6[b-wymy0bf2ep] {
    font-size: 15px;
    font-weight: 600;
    color: var(--text-primary, #0F172A);
    margin: 0 0 8px 0;
}

.redirect-uri-notice .notice-content p[b-wymy0bf2ep] {
    font-size: 13px;
    color: var(--text-secondary, #64748B);
    margin: 0;
}

.redirect-uri-notice .text-muted-sm[b-wymy0bf2ep] {
    font-size: 12px;
    color: var(--text-secondary, #64748B);
}

.redirect-uri-notice .text-muted-sm a[b-wymy0bf2ep] {
    color: var(--brand-500);
    text-decoration: none;
    font-weight: 500;
}

.redirect-uri-notice .text-muted-sm a:hover[b-wymy0bf2ep] {
    text-decoration: underline;
}

.uri-display[b-wymy0bf2ep] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 8px;
    padding: 10px 12px;
    margin-top: 8px;
}

.uri-display code[b-wymy0bf2ep] {
    flex: 1;
    font-family: 'Monaco', 'Consolas', 'Courier New', monospace;
    font-size: 12px;
    color: var(--brand-600);
    background: transparent;
    padding: 0;
    word-break: break-all;
}

.btn-copy[b-wymy0bf2ep] {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    background: var(--brand-50);
    color: var(--brand-500);
    border: 1px solid var(--brand-200);
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-copy:hover[b-wymy0bf2ep] {
    background: var(--brand-100);
    transform: scale(1.05);
}

.btn-copy:active[b-wymy0bf2ep] {
    transform: scale(0.95);
}

/* Utility Classes */
.text-muted-modern[b-wymy0bf2ep] {
    font-size: 13px;
    color: var(--text-secondary, #64748B);
    margin-bottom: 16px;
}

.mt-0[b-wymy0bf2ep] { margin-top: 0; }
.mb-0[b-wymy0bf2ep] { margin-bottom: 0; }
.mt-2[b-wymy0bf2ep] { margin-top: 8px; }
.mb-2[b-wymy0bf2ep] { margin-bottom: 8px; }
.mt-3[b-wymy0bf2ep] { margin-top: 16px; }
.mb-3[b-wymy0bf2ep] { margin-bottom: 16px; }

/* /Components/Pages/Admin/EmailQueueDetailsPage.razor.rz.scp.css */
/* Base Page Styling */
.email-details-page[b-bddkgaxch7] {
    font-size: var(--font-size-sm, 0.875rem);
    color: var(--text-primary, #0F172A);
}

/* Page Header */
.email-details-page .page-header[b-bddkgaxch7] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: var(--space-md, 16px);
    margin-bottom: var(--space-lg, 24px);
    border-bottom: 1px solid var(--border-light);
}

.email-details-page .page-header-left[b-bddkgaxch7] {
    display: flex;
    align-items: center;
    gap: var(--space-md, 16px);
}

.email-details-page .btn-back[b-bddkgaxch7] {
    width: 40px;
    height: 40px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-md, 8px);
    border: 1px solid var(--border-medium);
    background: var(--bg-surface, #fff);
    color: var(--text-secondary, #475569);
    font-size: 1rem;
    transition: all var(--transition-fast, 160ms ease);
}

.email-details-page .btn-back:hover[b-bddkgaxch7] {
    background: var(--bg-hover, #F1F5F9);
    color: var(--text-primary, #0F172A);
    border-color: var(--border-dark);
}

.email-details-page .page-title[b-bddkgaxch7] {
    font-size: var(--font-size-xl, 1.25rem);
    font-weight: var(--font-weight-semibold, 600);
    color: var(--text-primary, #344054);
    margin: 0;
    display: flex;
    align-items: center;
}

.email-details-page .page-title i[b-bddkgaxch7] {
    color: var(--brand-500);
}

.email-details-page .page-subtitle[b-bddkgaxch7] {
    font-size: var(--font-size-xs, 0.75rem);
    color: var(--text-muted, #667085);
    margin: 0;
}

.email-details-page .btn-retry[b-bddkgaxch7] {
    display: flex;
    align-items: center;
    gap: var(--space-sm, 8px);
    padding: 0.5rem 1rem;
    font-size: var(--font-size-sm, 0.875rem);
    font-weight: var(--font-weight-medium, 500);
    background: var(--accent-600);
    border: none;
    border-radius: var(--radius-md, 8px);
    color: #fff;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.email-details-page .btn-retry:hover:not(:disabled)[b-bddkgaxch7] {
    background: var(--accent-700);
}

.email-details-page .btn-retry:disabled[b-bddkgaxch7] {
    opacity: 0.65;
    cursor: not-allowed;
}

/* Loading State */
.email-details-page .loading-state[b-bddkgaxch7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--space-2xl, 48px);
    text-align: center;
}

.email-details-page .loading-state p[b-bddkgaxch7] {
    margin-top: var(--space-md, 16px);
    color: var(--text-muted, #64748B);
    font-size: var(--font-size-sm, 0.875rem);
}

/* Alert Card */
.email-details-page .alert-card[b-bddkgaxch7] {
    display: flex;
    align-items: flex-start;
    gap: var(--space-md, 16px);
    padding: var(--space-lg, 24px);
    border-radius: var(--radius-lg, 12px);
    background: var(--warning-50);
    border: 1px solid var(--warning-200);
}

.email-details-page .alert-card .alert-icon[b-bddkgaxch7] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-md, 8px);
    background: var(--warning-200);
    color: var(--warning-700);
    font-size: 1.25rem;
    flex-shrink: 0;
}

.email-details-page .alert-card .alert-content strong[b-bddkgaxch7] {
    display: block;
    font-size: var(--font-size-base, 1rem);
    font-weight: var(--font-weight-semibold, 600);
    color: var(--warning-700);
    margin-bottom: var(--space-xs, 4px);
}

.email-details-page .alert-card .alert-content p[b-bddkgaxch7] {
    font-size: var(--font-size-sm, 0.875rem);
    color: var(--text-secondary, #475569);
    margin: 0;
}

/* Status Overview Card */
.email-details-page .status-overview-card[b-bddkgaxch7] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--space-md, 16px) var(--space-lg, 24px);
    background: var(--bg-surface, #fff);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg, 12px);
    margin-bottom: var(--space-lg, 24px);
    box-shadow: var(--shadow-sm, 0 1px 3px rgba(0,0,0,0.08));
}

.email-details-page .status-overview-main[b-bddkgaxch7] {
    display: flex;
    align-items: center;
    gap: var(--space-md, 16px);
}

.email-details-page .status-badge[b-bddkgaxch7],
.email-details-page .priority-badge[b-bddkgaxch7] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-sm, 8px);
    padding: 0.5rem 1rem;
    font-size: var(--font-size-sm, 0.875rem);
    font-weight: var(--font-weight-medium, 500);
    border-radius: var(--radius-pill, 9999px);
    border: 1px solid transparent;
}

.email-details-page .status-badge i[b-bddkgaxch7],
.email-details-page .priority-badge i[b-bddkgaxch7] {
    font-size: 0.75rem;
}

/* Status Badge Colors */
.email-details-page .badge-pending[b-bddkgaxch7] {
    background-color: #fef9e7;
    color: #8a6d1b;
    border-color: #f5e6a3;
}

.email-details-page .badge-sending[b-bddkgaxch7] {
    background-color: #e8f4fd;
    color: #1e5a8d;
    border-color: #c2dcf5;
}

.email-details-page .badge-sent[b-bddkgaxch7] {
    background-color: #e8f4fd;
    color: #1e5a8d;
    border-color: #c2dcf5;
}

.email-details-page .badge-delivered[b-bddkgaxch7] {
    background-color: #e8f8f0;
    color: #1d6a4d;
    border-color: #a8e0c4;
}

.email-details-page .badge-failed[b-bddkgaxch7] {
    background-color: #fdf2f2;
    color: #9b2c2c;
    border-color: #f5c6c6;
}

.email-details-page .badge-retrying[b-bddkgaxch7] {
    background-color: #fff7ed;
    color: #c2410c;
    border-color: #fed7aa;
}

/* Priority Badge Colors */
.email-details-page .badge-high[b-bddkgaxch7] {
    background-color: #fdf2f2;
    color: #9b2c2c;
    border-color: #f5c6c6;
}

.email-details-page .badge-normal[b-bddkgaxch7] {
    background-color: #f5f5f5;
    color: #525252;
    border-color: #d4d4d4;
}

.email-details-page .badge-low[b-bddkgaxch7] {
    background-color: #f0fdf4;
    color: #166534;
    border-color: #bbf7d0;
}

.email-details-page .status-overview-id[b-bddkgaxch7] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.email-details-page .id-label[b-bddkgaxch7] {
    font-size: var(--font-size-xs, 0.75rem);
    color: var(--text-muted, #64748B);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.email-details-page .id-value[b-bddkgaxch7] {
    font-size: var(--font-size-lg, 1.125rem);
    font-weight: var(--font-weight-semibold, 600);
    color: var(--text-primary, #0F172A);
    font-family: var(--font-family-mono, monospace);
}

/* Detail Cards */
.email-details-page .detail-card[b-bddkgaxch7] {
    background: var(--bg-surface, #fff);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg, 12px);
    margin-bottom: var(--space-md, 16px);
    box-shadow: var(--shadow-sm, 0 1px 3px rgba(0,0,0,0.08));
    overflow: hidden;
}

.email-details-page .detail-card-header[b-bddkgaxch7] {
    display: flex;
    align-items: center;
    gap: var(--space-sm, 8px);
    padding: var(--space-md, 16px);
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-light);
}

.email-details-page .card-header-icon[b-bddkgaxch7] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-md, 8px);
    background: linear-gradient(135deg, var(--brand-100) 0%, var(--brand-50) 100%);
    color: var(--brand-600);
    font-size: 0.875rem;
}

.email-details-page .card-header-icon.error[b-bddkgaxch7] {
    background: linear-gradient(135deg, var(--error-50) 0%, #fce4e4 100%);
    color: var(--error-600);
}

.email-details-page .card-header-icon.application[b-bddkgaxch7] {
    background: linear-gradient(135deg, var(--accent-100) 0%, var(--accent-50) 100%);
    color: var(--accent-700);
}

.email-details-page .card-header-title[b-bddkgaxch7] {
    flex: 1;
    font-size: var(--font-size-sm, 0.875rem);
    font-weight: var(--font-weight-semibold, 600);
    color: var(--text-primary, #0F172A);
    margin: 0;
}

.email-details-page .btn-view-toggle[b-bddkgaxch7] {
    display: flex;
    align-items: center;
    gap: var(--space-xs, 4px);
    padding: 0.375rem 0.75rem;
    font-size: var(--font-size-xs, 0.75rem);
    font-weight: var(--font-weight-medium, 500);
    background: var(--bg-surface, #fff);
    border: 1px solid var(--border-medium);
    border-radius: var(--radius-md, 8px);
    color: var(--text-secondary, #475569);
    transition: all var(--transition-fast, 160ms ease);
}

.email-details-page .btn-view-toggle:hover[b-bddkgaxch7] {
    background: var(--bg-hover, #F1F5F9);
    border-color: var(--border-dark);
    color: var(--text-primary, #0F172A);
}

.email-details-page .btn-view-application[b-bddkgaxch7] {
    display: flex;
    align-items: center;
    gap: var(--space-xs, 4px);
    padding: 0.375rem 0.75rem;
    font-size: var(--font-size-xs, 0.75rem);
    font-weight: var(--font-weight-medium, 500);
    background: var(--accent-600);
    border: none;
    border-radius: var(--radius-md, 8px);
    color: #fff;
    text-decoration: none;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.email-details-page .btn-view-application:hover[b-bddkgaxch7] {
    background: var(--accent-700);
    color: #fff;
}

.email-details-page .attachment-count[b-bddkgaxch7] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    padding: 0 8px;
    font-size: var(--font-size-xs, 0.75rem);
    font-weight: var(--font-weight-semibold, 600);
    background: var(--brand-500);
    color: #fff;
    border-radius: var(--radius-pill, 9999px);
}

.email-details-page .detail-card-body[b-bddkgaxch7] {
    padding: var(--space-md, 16px);
}

.email-details-page .detail-card-body.body-content[b-bddkgaxch7] {
    padding: 0;
}

/* Detail Rows */
.email-details-page .detail-row[b-bddkgaxch7] {
    display: flex;
    align-items: flex-start;
    padding: var(--space-sm, 8px) 0;
    border-bottom: 1px solid var(--neutral-100);
}

.email-details-page .detail-row:last-child[b-bddkgaxch7] {
    border-bottom: none;
    padding-bottom: 0;
}

.email-details-page .detail-row:first-child[b-bddkgaxch7] {
    padding-top: 0;
}

.email-details-page .detail-label[b-bddkgaxch7] {
    display: flex;
    align-items: center;
    gap: var(--space-sm, 8px);
    width: 80px;
    flex-shrink: 0;
    font-size: var(--font-size-xs, 0.75rem);
    font-weight: var(--font-weight-medium, 500);
    color: var(--text-muted, #64748B);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.email-details-page .detail-label i[b-bddkgaxch7] {
    font-size: 0.875rem;
    color: var(--neutral-400);
}

.email-details-page .detail-value[b-bddkgaxch7] {
    flex: 1;
    font-size: var(--font-size-sm, 0.875rem);
    color: var(--text-secondary, #475569);
    word-break: break-word;
}

.email-details-page .detail-value.primary[b-bddkgaxch7] {
    font-weight: var(--font-weight-medium, 500);
    color: var(--text-primary, #0F172A);
}

/* Subject Text */
.email-details-page .subject-text[b-bddkgaxch7] {
    font-size: var(--font-size-sm, 0.875rem);
    font-weight: var(--font-weight-medium, 500);
    color: var(--text-primary, #0F172A);
    line-height: 1.5;
}

/* Email Body */
.email-details-page .html-view[b-bddkgaxch7] {
    margin: 0;
    padding: var(--space-md, 16px);
    background: var(--neutral-50);
    font-size: var(--font-size-xs, 0.75rem);
    font-family: var(--font-family-mono, 'Monaco', 'Menlo', monospace);
    color: var(--text-secondary, #475569);
    white-space: pre-wrap;
    word-break: break-word;
    max-height: 400px;
    overflow: auto;
    border-radius: 0;
}

.email-details-page .email-preview[b-bddkgaxch7] {
    padding: var(--space-md, 16px);
    background: #fff;
    max-height: 400px;
    overflow: auto;
}

/* Attachments */
.email-details-page .attachments-list[b-bddkgaxch7] {
    display: flex;
    flex-direction: column;
    gap: var(--space-sm, 8px);
}

.email-details-page .attachment-item[b-bddkgaxch7] {
    display: flex;
    align-items: center;
    gap: var(--space-sm, 8px);
    padding: var(--space-sm, 8px) var(--space-md, 16px);
    background: var(--neutral-50);
    border: 1px solid var(--neutral-200);
    border-radius: var(--radius-md, 8px);
}

.email-details-page .attachment-icon[b-bddkgaxch7] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface, #fff);
    border-radius: var(--radius-md, 8px);
    color: var(--brand-500);
    font-size: 1rem;
}

.email-details-page .attachment-info[b-bddkgaxch7] {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.email-details-page .attachment-name[b-bddkgaxch7] {
    font-size: var(--font-size-sm, 0.875rem);
    font-weight: var(--font-weight-medium, 500);
    color: var(--text-primary, #0F172A);
}

.email-details-page .attachment-size[b-bddkgaxch7] {
    font-size: var(--font-size-xs, 0.75rem);
    color: var(--text-muted, #64748B);
}

.email-details-page .inline-badge[b-bddkgaxch7] {
    font-size: var(--font-size-xs, 0.75rem);
    font-weight: var(--font-weight-medium, 500);
    padding: 0.25rem 0.5rem;
    background: var(--brand-50);
    color: var(--brand-600);
    border-radius: var(--radius-sm, 4px);
}

/* Error Card */
.email-details-page .error-card[b-bddkgaxch7] {
    border-color: var(--error-500);
}

.email-details-page .error-header[b-bddkgaxch7] {
    background: var(--error-50);
    border-bottom-color: #fecaca;
}

.email-details-page .error-message[b-bddkgaxch7] {
    margin: 0;
    padding: var(--space-md, 16px);
    background: #fffbfb;
    font-size: var(--font-size-xs, 0.75rem);
    font-family: var(--font-family-mono, monospace);
    color: var(--error-700);
    white-space: pre-wrap;
    word-break: break-word;
}

/* Timeline */
.email-details-page .timeline[b-bddkgaxch7] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.email-details-page .timeline-item[b-bddkgaxch7] {
    display: flex;
    align-items: flex-start;
    gap: var(--space-sm, 8px);
    padding: var(--space-sm, 8px) 0;
    position: relative;
}

.email-details-page .timeline-item:not(:last-child)[b-bddkgaxch7]::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 36px;
    bottom: -4px;
    width: 2px;
    background: var(--neutral-200);
    transform: translateX(11px);
}

.email-details-page .timeline-icon[b-bddkgaxch7] {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 0.75rem;
    flex-shrink: 0;
    z-index: 1;
}

.email-details-page .timeline-icon.created[b-bddkgaxch7] {
    background: var(--brand-100);
    color: var(--brand-600);
}

.email-details-page .timeline-icon.scheduled[b-bddkgaxch7] {
    background: var(--neutral-200);
    color: var(--neutral-600);
}

.email-details-page .timeline-icon.sent[b-bddkgaxch7] {
    background: var(--accent-100);
    color: var(--accent-700);
}

.email-details-page .timeline-icon.delivered[b-bddkgaxch7] {
    background: var(--success-100);
    color: var(--success-700);
}

.email-details-page .timeline-icon.failed[b-bddkgaxch7] {
    background: var(--error-50);
    color: var(--error-600);
}

.email-details-page .timeline-content[b-bddkgaxch7] {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.email-details-page .timeline-label[b-bddkgaxch7] {
    font-size: var(--font-size-xs, 0.75rem);
    font-weight: var(--font-weight-medium, 500);
    color: var(--text-muted, #64748B);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.email-details-page .timeline-date[b-bddkgaxch7] {
    font-size: var(--font-size-sm, 0.875rem);
    font-weight: var(--font-weight-medium, 500);
    color: var(--text-primary, #0F172A);
}

.email-details-page .timeline-time[b-bddkgaxch7] {
    font-size: var(--font-size-xs, 0.75rem);
    color: var(--text-muted, #64748B);
    font-family: var(--font-family-mono, monospace);
}

.email-details-page .timeline-content.success .timeline-date[b-bddkgaxch7] {
    color: var(--success-700);
}

.email-details-page .timeline-content.error .timeline-date[b-bddkgaxch7] {
    color: var(--error-600);
}

/* Info Grid */
.email-details-page .info-grid[b-bddkgaxch7] {
    display: flex;
    flex-direction: column;
    gap: var(--space-md, 16px);
}

.email-details-page .info-item[b-bddkgaxch7] {
    display: flex;
    flex-direction: column;
    gap: var(--space-xs, 4px);
}

.email-details-page .info-label[b-bddkgaxch7] {
    font-size: var(--font-size-xs, 0.75rem);
    font-weight: var(--font-weight-medium, 500);
    color: var(--text-muted, #64748B);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.email-details-page .info-value[b-bddkgaxch7] {
    font-size: var(--font-size-sm, 0.875rem);
    font-weight: var(--font-weight-medium, 500);
    color: var(--text-primary, #0F172A);
}

.email-details-page .info-value.monospace[b-bddkgaxch7] {
    font-family: var(--font-family-mono, monospace);
}

.email-details-page .info-value.small[b-bddkgaxch7] {
    font-size: var(--font-size-xs, 0.75rem);
    word-break: break-all;
}

/* Retry Status */
.email-details-page .retry-status[b-bddkgaxch7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: var(--space-md, 16px) 0;
}

.email-details-page .retry-count[b-bddkgaxch7] {
    display: flex;
    align-items: baseline;
    gap: 2px;
}

.email-details-page .retry-current[b-bddkgaxch7] {
    font-size: var(--font-size-2xl, 1.5rem);
    font-weight: var(--font-weight-bold, 700);
    color: var(--text-primary, #0F172A);
}

.email-details-page .retry-separator[b-bddkgaxch7] {
    font-size: var(--font-size-lg, 1.125rem);
    color: var(--text-muted, #64748B);
}

.email-details-page .retry-max[b-bddkgaxch7] {
    font-size: var(--font-size-lg, 1.125rem);
    font-weight: var(--font-weight-medium, 500);
    color: var(--text-muted, #64748B);
}

.email-details-page .retry-label[b-bddkgaxch7] {
    font-size: var(--font-size-xs, 0.75rem);
    color: var(--text-muted, #64748B);
    margin-top: var(--space-xs, 4px);
}

.email-details-page .retry-progress[b-bddkgaxch7] {
    width: 100%;
    height: 6px;
    background: var(--neutral-200);
    border-radius: var(--radius-pill, 9999px);
    overflow: hidden;
    margin-top: var(--space-md, 16px);
}

.email-details-page .retry-progress .progress-bar[b-bddkgaxch7] {
    height: 100%;
    background: linear-gradient(90deg, var(--accent-400) 0%, var(--accent-500) 100%);
    border-radius: var(--radius-pill, 9999px);
    transition: width 0.3s ease;
}

.email-details-page .retry-progress .progress-bar.exhausted[b-bddkgaxch7] {
    background: linear-gradient(90deg, var(--error-500) 0%, var(--error-600) 100%);
}

/* Spin Animation */
[b-bddkgaxch7] .spin {
    animation: spin-b-bddkgaxch7 1s linear infinite;
}

@keyframes spin-b-bddkgaxch7 {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Responsive */
@media (max-width: 991.98px) {
    .email-details-page .page-header[b-bddkgaxch7] {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--space-md, 16px);
    }

    .email-details-page .page-header-actions[b-bddkgaxch7] {
        width: 100%;
    }

    .email-details-page .btn-retry[b-bddkgaxch7] {
        width: 100%;
        justify-content: center;
    }

    .email-details-page .status-overview-card[b-bddkgaxch7] {
        flex-direction: column;
        gap: var(--space-md, 16px);
        align-items: flex-start;
    }

    .email-details-page .status-overview-id[b-bddkgaxch7] {
        align-items: flex-start;
    }
}

/* /Components/Pages/Admin/EmailQueuePage.razor.rz.scp.css */
/* Content Header */
.content-header[b-u55se2yibx] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

.content-title[b-u55se2yibx] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a1a2e;
    margin: 0;
}

.content-subtitle[b-u55se2yibx] {
    font-size: 0.8rem;
    color: #94A3B8;
    margin: 2px 0 0;
}

.header-stats[b-u55se2yibx] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.stat-pill[b-u55se2yibx] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 20px;
    padding: 6px 14px;
    font-size: 0.75rem;
    color: #64748B;
}

.stat-pill i[b-u55se2yibx] {
    font-size: 1rem;
    color: var(--brand-500);
}

.stat-pill.stat-success i[b-u55se2yibx] {
    color: #10B981;
}

.stat-pill.stat-warning i[b-u55se2yibx] {
    color: #F59E0B;
}

.stat-pill.stat-danger i[b-u55se2yibx] {
    color: #EF4444;
}

.stat-pill .stat-value[b-u55se2yibx] {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1F2937;
}

.stat-pill .stat-label[b-u55se2yibx] {
    font-size: 0.65rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.btn-header-action[b-u55se2yibx] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #E2E8F0;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #64748B;
    transition: all 0.2s;
}

.btn-header-action:hover[b-u55se2yibx] {
    background: #F1F5F9;
    color: #334155;
}

.spinning[b-u55se2yibx] {
    animation: spin-b-u55se2yibx 1s linear infinite;
}

.filter-section[b-u55se2yibx] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 1rem;
}

.filter-label[b-u55se2yibx] {
    font-size: 0.75rem;
    font-weight: 500;
    color: #475569;
    margin-bottom: 0.25rem;
}

.form-select-sm[b-u55se2yibx],
.form-control-sm[b-u55se2yibx] {
    font-size: 0.8rem;
    padding: 0.375rem 0.625rem;
}

.btn-filter[b-u55se2yibx] {
    font-size: 0.75rem;
    padding: 0.375rem 0.75rem;
}

.table-section[b-u55se2yibx] {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    overflow: hidden;
}

.table-header[b-u55se2yibx] {
    background: #f8fafc;
    padding: 0.625rem 1rem;
    border-bottom: 1px solid #e2e8f0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.table-title[b-u55se2yibx] {
    font-size: 0.875rem;
    font-weight: 600;
    color: #344054;
    margin: 0;
}

.data-table[b-u55se2yibx] {
    font-size: 0.8rem;
    margin: 0;
}

.data-table th[b-u55se2yibx] {
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    color: #667085;
    background: #f8fafc;
    border-bottom: 2px solid #e2e8f0;
    padding: 0.75rem;
    white-space: nowrap;
}

.data-table th.sortable-header[b-u55se2yibx] {
    cursor: pointer;
    user-select: none;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.data-table th.sortable-header:hover[b-u55se2yibx] {
    background: #eef2f6;
    color: #3b82f6;
}

.data-table th .sort-icons[b-u55se2yibx] {
    display: inline-flex;
    flex-direction: column;
    vertical-align: middle;
    line-height: 0;
    gap: 0;
}

.data-table th .sort-icons i[b-u55se2yibx] {
    font-size: 0.5rem;
    line-height: 0.5;
    color: #cbd5e1;
    transition: color 0.15s ease;
}

.data-table th .sort-icons i.active[b-u55se2yibx] {
    color: #3b82f6;
}

.data-table th.sortable-header:hover .sort-icons i:not(.active)[b-u55se2yibx] {
    color: #94a3b8;
}

.data-table th i[b-u55se2yibx] {
    font-size: 0.65rem;
}

.data-table td[b-u55se2yibx] {
    padding: 0.625rem 0.75rem;
    vertical-align: middle;
    border-bottom: 1px solid #f1f5f9;
}

.data-table tbody tr[b-u55se2yibx] {
    cursor: pointer;
    transition: all 0.15s ease;
}

.data-table tbody tr:hover[b-u55se2yibx] {
    background-color: #f0f7ff !important;
    box-shadow: inset 3px 0 0 #3b82f6;
}

.data-table tbody tr:hover td[b-u55se2yibx] {
    background-color: transparent !important;
}

.data-table tbody tr.row-failed[b-u55se2yibx] {
    background-color: #fef8f8;
}

.data-table tbody tr.row-failed:hover[b-u55se2yibx] {
    background-color: #fee2e2 !important;
    box-shadow: inset 3px 0 0 #ef4444;
}

/* Subtle badge styling - keep default Bootstrap size */
.badge-status[b-u55se2yibx] {
    font-weight: 500;
    border: 1px solid transparent;
}

.badge-priority[b-u55se2yibx] {
    font-weight: 500;
    border: 1px solid transparent;
}

/* Subtle status badge colors */
.badge-pending[b-u55se2yibx] {
    background-color: #fef9e7;
    color: #8a6d1b;
    border-color: #f5e6a3;
}

.badge-sending[b-u55se2yibx] {
    background-color: #e8f4fd;
    color: #1e5a8d;
    border-color: #c2dcf5;
}

.badge-sent[b-u55se2yibx] {
    background-color: #e8f4fd;
    color: #1e5a8d;
    border-color: #c2dcf5;
}

.badge-delivered[b-u55se2yibx] {
    background-color: #e8f8f0;
    color: #1d6a4d;
    border-color: #a8e0c4;
}

.badge-failed[b-u55se2yibx] {
    background-color: #fdf2f2;
    color: #9b2c2c;
    border-color: #f5c6c6;
}

.badge-retrying[b-u55se2yibx] {
    background-color: #f5f5f5;
    color: #525252;
    border-color: #d4d4d4;
}

/* Subtle priority badge colors */
.badge-high[b-u55se2yibx] {
    background-color: #fdf2f2;
    color: #9b2c2c;
    border-color: #f5c6c6;
}

.badge-normal[b-u55se2yibx] {
    background-color: #e8f4fd;
    color: #1e5a8d;
    border-color: #c2dcf5;
}

.badge-low[b-u55se2yibx] {
    background-color: #f5f5f5;
    color: #525252;
    border-color: #d4d4d4;
}

.email-to[b-u55se2yibx] {
    max-width: 180px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: inline-block;
}

.email-subject[b-u55se2yibx] {
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: inline-block;
}

.template-name[b-u55se2yibx] {
    max-width: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: inline-block;
    color: #667085;
}

.date-cell[b-u55se2yibx] {
    font-size: 0.75rem;
    color: #667085;
    white-space: nowrap;
}

.btn-action[b-u55se2yibx] {
    /* Keep default button size */
}

.pagination-section[b-u55se2yibx] {
    background: #f8fafc;
    padding: 0.625rem 1rem;
    border-top: 1px solid #e2e8f0;
}

.pagination[b-u55se2yibx] {
    margin: 0;
}

.pagination .page-link[b-u55se2yibx] {
    font-size: 0.75rem;
    padding: 0.25rem 0.625rem;
}

.pagination-info[b-u55se2yibx] {
    font-size: 0.7rem;
    color: #667085;
}

.empty-state[b-u55se2yibx] {
    padding: 3rem 1rem;
    text-align: center;
}

.empty-state i[b-u55se2yibx] {
    font-size: 2.5rem;
    color: #cbd5e1;
}

.empty-state p[b-u55se2yibx] {
    font-size: 0.85rem;
    color: #94a3b8;
    margin-top: 0.75rem;
}

/* Subtle bulk action buttons */
.bulk-actions[b-u55se2yibx] {
    display: flex;
    gap: 0;
}

.btn-bulk-action[b-u55se2yibx] {
    font-size: 0.75rem;
    font-weight: 500;
    padding: 0.35rem 0.75rem;
    transition: all 0.15s ease;
}

.btn-bulk-retry[b-u55se2yibx] {
    background-color: #3b82f6;
    border: 1px solid #3b82f6;
    border-radius: 6px 0 0 6px;
    color: #fff;
    font-size: 0.8rem;
    font-weight: 500;
    padding: 0.375rem 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.btn-bulk-retry:hover[b-u55se2yibx] {
    background-color: #2563eb;
    border-color: #2563eb;
    color: #fff;
}

.btn-bulk-retry .count-badge[b-u55se2yibx] {
    background-color: rgba(255, 255, 255, 0.25);
    color: #fff;
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.1rem 0.4rem;
    border-radius: 10px;
    min-width: 1.25rem;
    text-align: center;
}

.btn-bulk-cancel[b-u55se2yibx] {
    background-color: #fff;
    border: 1px solid #e2e8f0;
    border-left: none;
    border-radius: 0 6px 6px 0;
    color: #64748b;
    font-size: 0.8rem;
    font-weight: 500;
    padding: 0.375rem 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.btn-bulk-cancel:hover[b-u55se2yibx] {
    background-color: #f8fafc;
    border-color: #cbd5e1;
    color: #475569;
}

/* Search input group with subtle button */
.search-input-group[b-u55se2yibx] {
    display: flex;
}

.search-input-group input.form-control[b-u55se2yibx] {
    border-radius: 6px 0 0 6px;
    border-right: none;
}

.search-input-group input.form-control:focus[b-u55se2yibx] {
    border-color: #94a3b8;
    box-shadow: 0 0 0 2px rgba(148, 163, 184, 0.2);
    z-index: 1;
}

.search-input-group .btn-search[b-u55se2yibx] {
    background-color: #f8fafc;
    border: 1px solid #ced4da;
    border-left: none;
    color: #64748b;
    padding: 0.375rem 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease;
}

.search-input-group .btn-search:hover[b-u55se2yibx] {
    background-color: #e2e8f0;
    color: #475569;
}

.search-input-group .btn-clear-search[b-u55se2yibx] {
    background-color: #f8fafc;
    border: 1px solid #ced4da;
    border-left: none;
    border-radius: 0 6px 6px 0;
    color: #94a3b8;
    padding: 0.375rem 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease;
}

.search-input-group .btn-clear-search:hover[b-u55se2yibx] {
    background-color: #fee2e2;
    color: #ef4444;
}

@keyframes spin-b-u55se2yibx {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
/* /Components/Pages/Admin/EmailTemplateStudioPage.razor.rz.scp.css */
/* ========================================
   Email Template Studio Styles
   3-Panel Layout with LECA Theme
   ======================================== */

/* ========================================
   Global Thin Scrollbar Styling
   ======================================== */

/* WebKit browsers (Chrome, Safari, Edge) */
.email-studio [b-zrhrtnqk7y]::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

.email-studio [b-zrhrtnqk7y]::-webkit-scrollbar-track {
    background: transparent;
}

.email-studio [b-zrhrtnqk7y]::-webkit-scrollbar-thumb {
    background: var(--neutral-300);
    border-radius: 3px;
}

.email-studio [b-zrhrtnqk7y]::-webkit-scrollbar-thumb:hover {
    background: var(--neutral-400);
}

/* Firefox scrollbar */
.email-studio *[b-zrhrtnqk7y] {
    scrollbar-width: thin;
    scrollbar-color: var(--neutral-300) transparent;
}

/* ========================================
   Button Styling - Subtle & Theme Aligned
   ======================================== */

/* Primary Button - Main action buttons */
.email-studio .btn-primary[b-zrhrtnqk7y] {
    background: var(--brand-600);
    border: 1px solid var(--brand-600);
    color: #ffffff;
    font-weight: 500;
    font-size: 13px;
    padding: 8px 16px;
    border-radius: 6px;
    transition: all 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.email-studio .btn-primary:hover[b-zrhrtnqk7y] {
    background: var(--brand-700);
    border-color: var(--brand-700);
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.15);
}

.email-studio .btn-primary:active[b-zrhrtnqk7y] {
    background: var(--brand-800);
    transform: translateY(1px);
}

.email-studio .btn-primary:disabled[b-zrhrtnqk7y] {
    background: var(--neutral-300);
    border-color: var(--neutral-300);
    color: var(--neutral-500);
    cursor: not-allowed;
}

/* Secondary Button - Less prominent actions */
.email-studio .btn-secondary[b-zrhrtnqk7y] {
    background: var(--neutral-100);
    border: 1px solid var(--neutral-300);
    color: var(--text-secondary, #475569);
    font-weight: 500;
    font-size: 13px;
    padding: 8px 16px;
    border-radius: 6px;
    transition: all 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.email-studio .btn-secondary:hover[b-zrhrtnqk7y] {
    background: var(--neutral-200);
    border-color: var(--neutral-400);
    color: var(--text-primary, #0f172a);
}

.email-studio .btn-secondary:active[b-zrhrtnqk7y] {
    background: var(--neutral-300);
    transform: translateY(1px);
}

/* Outline Primary - Ghost button with brand color */
.email-studio .btn-outline-primary[b-zrhrtnqk7y] {
    background: transparent;
    border: 1px solid var(--brand-300);
    color: var(--brand-600);
    font-weight: 500;
    font-size: 13px;
    padding: 8px 16px;
    border-radius: 6px;
    transition: all 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.email-studio .btn-outline-primary:hover[b-zrhrtnqk7y] {
    background: var(--brand-50);
    border-color: var(--brand-400);
    color: var(--brand-700);
}

.email-studio .btn-outline-primary:active[b-zrhrtnqk7y] {
    background: var(--brand-100);
    transform: translateY(1px);
}

/* Outline Secondary - Subtle ghost button */
.email-studio .btn-outline-secondary[b-zrhrtnqk7y] {
    background: transparent;
    border: 1px solid var(--neutral-300);
    color: var(--text-muted, #64748b);
    font-weight: 500;
    font-size: 13px;
    padding: 8px 16px;
    border-radius: 6px;
    transition: all 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.email-studio .btn-outline-secondary:hover[b-zrhrtnqk7y] {
    background: var(--neutral-50);
    border-color: var(--neutral-400);
    color: var(--text-secondary, #475569);
}

.email-studio .btn-outline-secondary:active[b-zrhrtnqk7y] {
    background: var(--neutral-100);
    transform: translateY(1px);
}

/* Outline Danger - For delete/destructive actions */
.email-studio .btn-outline-danger[b-zrhrtnqk7y] {
    background: transparent;
    border: 1px solid var(--error-200);
    color: var(--error-600);
    font-weight: 500;
    font-size: 13px;
    padding: 8px 16px;
    border-radius: 6px;
    transition: all 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.email-studio .btn-outline-danger:hover[b-zrhrtnqk7y] {
    background: var(--error-50);
    border-color: var(--error-300);
    color: var(--error-700);
}

.email-studio .btn-outline-danger:active[b-zrhrtnqk7y] {
    background: var(--error-100);
    transform: translateY(1px);
}

/* Outline Success - For activate/positive actions */
.email-studio .btn-outline-success[b-zrhrtnqk7y] {
    background: transparent;
    border: 1px solid var(--success-200);
    color: var(--success-600);
    font-weight: 500;
    font-size: 13px;
    padding: 8px 16px;
    border-radius: 6px;
    transition: all 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.email-studio .btn-outline-success:hover[b-zrhrtnqk7y] {
    background: var(--success-50);
    border-color: var(--success-300);
    color: var(--success-700);
}

.email-studio .btn-outline-success:active[b-zrhrtnqk7y] {
    background: var(--success-100);
    transform: translateY(1px);
}

/* Small buttons */
.email-studio .btn-sm[b-zrhrtnqk7y] {
    font-size: 12px;
    padding: 4px 10px;
    border-radius: 4px;
}

/* Link button - for inline actions */
.email-studio .btn-link[b-zrhrtnqk7y] {
    background: transparent;
    border: none;
    color: var(--brand-600);
    font-weight: 500;
    font-size: 13px;
    padding: 4px 8px;
    text-decoration: none;
    transition: all 0.15s ease;
}

.email-studio .btn-link:hover[b-zrhrtnqk7y] {
    color: var(--brand-700);
    text-decoration: underline;
}

/* Button groups */
.email-studio .btn-group[b-zrhrtnqk7y] {
    display: inline-flex;
    gap: 0;
}

.email-studio .btn-group .btn[b-zrhrtnqk7y] {
    border-radius: 0;
}

.email-studio .btn-group .btn:first-child[b-zrhrtnqk7y] {
    border-radius: 6px 0 0 6px;
}

.email-studio .btn-group .btn:last-child[b-zrhrtnqk7y] {
    border-radius: 0 6px 6px 0;
}

.email-studio .btn-group .btn:not(:first-child)[b-zrhrtnqk7y] {
    margin-left: -1px;
}

.email-studio .btn-group-sm .btn[b-zrhrtnqk7y] {
    padding: 4px 8px;
    font-size: 12px;
}

/* ======================================== */

.email-studio[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 60px);
    background: var(--bg-base-solid);
}

/* Header */
.studio-header[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 24px;
    background: var(--bg-surface, #ffffff);
    border-bottom: 1px solid var(--border-default, #e5e7eb);
}

.studio-title h1[b-zrhrtnqk7y] {
    font-size: 20px;
    font-weight: 600;
    margin: 0;
    color: var(--text-primary, #0f172a);
    display: flex;
    align-items: center;
    gap: 10px;
}

.studio-title h1 i[b-zrhrtnqk7y] {
    color: var(--brand-500);
}

.studio-actions .btn-primary[b-zrhrtnqk7y] {
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.12);
}

/* Content - 3 Panel Layout */
.studio-content[b-zrhrtnqk7y] {
    display: flex;
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

/* Panel Base Styles */
.studio-panel[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
    background: var(--bg-surface, #ffffff);
    border-right: 1px solid var(--border-default, #e5e7eb);
}

.studio-panel:last-child[b-zrhrtnqk7y] {
    border-right: none;
}

.panel-header[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-default, #e5e7eb);
}

.panel-title[b-zrhrtnqk7y] {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.5px;
    color: var(--text-muted, #64748b);
    text-transform: uppercase;
}

.panel-body[b-zrhrtnqk7y] {
    flex: 1;
    overflow: auto;
    padding: 8px;
}

/* Left Panel - Template Tree */
.panel-left[b-zrhrtnqk7y] {
    width: 320px;
    min-width: 320px;
}

.panel-search[b-zrhrtnqk7y] {
    padding: 8px 12px;
    border-bottom: 1px solid var(--border-default, #e5e7eb);
}

.template-count[b-zrhrtnqk7y] {
    font-size: 12px;
    font-weight: 500;
    color: var(--text-muted, #64748b);
    background: var(--neutral-200);
    padding: 2px 8px;
    border-radius: 10px;
}

.loading-state[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px;
    gap: 12px;
    color: var(--text-muted, #64748b);
    font-size: 13px;
}

/* Simple Tree View Styles */
.template-tree-simple[b-zrhrtnqk7y] {
    padding: 4px;
}

.tree-category[b-zrhrtnqk7y] {
    margin-bottom: 4px;
}

.tree-category-header[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 6px;
    width: 100%;
    padding: 6px 8px;
    border: none;
    background: transparent;
    font-size: 13px;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
    border-radius: 4px;
    cursor: pointer;
    text-align: left;
}

.tree-category-header:hover[b-zrhrtnqk7y] {
    background: var(--bg-hover, rgba(15, 23, 42, 0.05));
}

.tree-category-header .bi-chevron-down[b-zrhrtnqk7y],
.tree-category-header .bi-chevron-right[b-zrhrtnqk7y] {
    font-size: 12px;
    color: var(--text-muted, #64748b);
}

.tree-category-header .bi-folder[b-zrhrtnqk7y],
.tree-category-header .bi-folder2-open[b-zrhrtnqk7y] {
    font-size: 14px;
}

.tree-badge[b-zrhrtnqk7y] {
    margin-left: auto;
    font-size: 11px;
    font-weight: 600;
    background: var(--neutral-200);
    color: var(--text-secondary, #475569);
    padding: 2px 6px;
    border-radius: 10px;
}

.tree-children[b-zrhrtnqk7y] {
    margin-left: 12px;
    padding-left: 8px;
    border-left: 1px solid var(--border-default, #e5e7eb);
}

.tree-item[b-zrhrtnqk7y] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    width: 100%;
    padding: 8px;
    border: none;
    background: transparent;
    font-size: 12px;
    color: var(--text-primary, #0f172a);
    border-radius: 4px;
    cursor: pointer;
    text-align: left;
    transition: all 0.15s ease;
    line-height: 1.4;
}

.tree-item:hover[b-zrhrtnqk7y] {
    background: var(--bg-hover, rgba(15, 23, 42, 0.05));
}

.tree-item.selected[b-zrhrtnqk7y] {
    background: var(--brand-100);
    color: var(--brand-700);
    font-weight: 500;
}

.tree-item.inactive[b-zrhrtnqk7y] {
    opacity: 0.6;
}

.tree-item.inactive .tree-item-name[b-zrhrtnqk7y] {
    font-style: italic;
}

.tree-item .bi-file-earmark-text[b-zrhrtnqk7y] {
    color: var(--brand-500);
    flex-shrink: 0;
    margin-top: 2px;
}

.tree-item .bi-file-earmark-lock[b-zrhrtnqk7y] {
    color: var(--warning-600);
    flex-shrink: 0;
    margin-top: 2px;
}

.tree-item-name[b-zrhrtnqk7y] {
    flex: 1;
    word-break: break-word;
    overflow-wrap: break-word;
}

.tree-item-badge[b-zrhrtnqk7y] {
    flex-shrink: 0;
    font-size: 10px;
    margin-top: 2px;
}

/* System template icon badge */
.tree-item-system-badge[b-zrhrtnqk7y] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 4px;
    background: var(--warning-100);
    color: var(--warning-600);
    font-size: 10px;
    margin-left: auto;
}

.tree-item.selected .tree-item-system-badge[b-zrhrtnqk7y] {
    background: var(--warning-200);
}

/* New Template Item */
.tree-item.tree-item-new[b-zrhrtnqk7y] {
    border: 1px dashed var(--brand-300);
    background: var(--brand-50);
    margin-bottom: 12px;
    color: var(--brand-700);
}

.tree-item.tree-item-new:hover[b-zrhrtnqk7y] {
    background: var(--brand-100);
    border-color: var(--brand-500);
}

.tree-item.tree-item-new.selected[b-zrhrtnqk7y] {
    background: var(--brand-200);
    border-color: var(--brand-600);
    border-style: solid;
}

.tree-item.tree-item-new .tree-item-name[b-zrhrtnqk7y] {
    font-weight: 500;
}

/* Center Panel - Editor */
.panel-center[b-zrhrtnqk7y] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    overflow: visible;
}

/* Ensure dropdown menus can overflow panels */
.panel-center .dropdown-menu[b-zrhrtnqk7y],
.panel-center .ql-toolbar .dropdown-menu[b-zrhrtnqk7y] {
    z-index: 1050;
}

/* Editor Tabs */
.editor-tabs[b-zrhrtnqk7y] {
    display: flex;
    gap: 4px;
    padding: 8px 16px;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-default, #e5e7eb);
}

.editor-tab[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    border: none;
    background: transparent;
    color: var(--text-muted, #64748b);
    font-size: 13px;
    font-weight: 500;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.editor-tab:hover[b-zrhrtnqk7y] {
    background: rgba(15, 23, 42, 0.05);
    color: var(--text-secondary, #475569);
}

.editor-tab.active[b-zrhrtnqk7y] {
    background: var(--bg-surface, #ffffff);
    color: var(--brand-600);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.editor-tab .tab-badge[b-zrhrtnqk7y] {
    font-size: 10px;
    font-weight: 600;
    background: var(--brand-100);
    color: var(--brand-700);
    padding: 2px 6px;
    border-radius: 10px;
}

/* Editor Content */
.editor-content[b-zrhrtnqk7y] {
    flex: 1;
    overflow-y: auto;
    padding: 20px;
}


.editor-form[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.editor-form .form-group[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
}

.editor-form .form-label[b-zrhrtnqk7y] {
    font-size: 13px;
    font-weight: 500;
    color: var(--text-secondary, #475569);
    margin-bottom: 6px;
}

.editor-form .form-group.flex-grow-1[b-zrhrtnqk7y] {
    min-height: 450px;
}

/* ===== Enhanced Settings Tab ===== */
.settings-container[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 4px;
}

.settings-section[b-zrhrtnqk7y] {
    background: var(--bg-surface, #ffffff);
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: var(--radius-lg, 12px);
    overflow: hidden;
    transition: box-shadow 0.2s ease;
}

.settings-section:hover[b-zrhrtnqk7y] {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.settings-section-header[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 20px;
    background: linear-gradient(135deg, var(--neutral-50) 0%, var(--bg-surface, #ffffff) 100%);
    border-bottom: 1px solid var(--border-default, #e5e7eb);
}

.section-icon[b-zrhrtnqk7y] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--brand-50);
    border-radius: var(--radius-md, 8px);
    color: var(--brand-600);
    font-size: 18px;
}

.section-title h6[b-zrhrtnqk7y] {
    margin: 0;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
}

.section-description[b-zrhrtnqk7y] {
    font-size: 12px;
    color: var(--text-muted, #64748b);
}

.settings-section-content[b-zrhrtnqk7y] {
    padding: 20px;
}

.settings-row[b-zrhrtnqk7y] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.settings-field[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.settings-field.full-width[b-zrhrtnqk7y] {
    grid-column: 1 / -1;
}

.settings-label[b-zrhrtnqk7y] {
    font-size: 13px;
    font-weight: 500;
    color: var(--text-secondary, #475569);
    display: flex;
    align-items: center;
}

.settings-help[b-zrhrtnqk7y] {
    font-size: 11px;
    color: var(--text-muted, #64748b);
}

.settings-help code[b-zrhrtnqk7y] {
    background: var(--neutral-100);
    padding: 1px 4px;
    border-radius: 3px;
    font-size: 10px;
}

.input-with-icon[b-zrhrtnqk7y] {
    position: relative;
    display: flex;
    align-items: center;
}

.input-with-icon i[b-zrhrtnqk7y] {
    position: absolute;
    left: 12px;
    color: var(--text-muted, #64748b);
    font-size: 14px;
    z-index: 1;
}

.input-with-icon input[b-zrhrtnqk7y] {
    padding-left: 36px;
}

/* Variable Preview */
.variable-preview[b-zrhrtnqk7y] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 12px;
    padding: 12px;
    background: var(--neutral-50);
    border-radius: var(--radius-md, 8px);
    border: 1px dashed var(--border-default, #e5e7eb);
}

.preview-label[b-zrhrtnqk7y] {
    font-size: 11px;
    font-weight: 500;
    color: var(--text-muted, #64748b);
    white-space: nowrap;
}

.variable-tags[b-zrhrtnqk7y] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.variable-tag[b-zrhrtnqk7y] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-family: 'Consolas', 'Monaco', monospace;
    font-size: 11px;
    color: var(--brand-700);
    background: var(--brand-50);
    padding: 3px 8px;
    border-radius: 4px;
    border: 1px solid var(--brand-100);
}

.variable-tag i[b-zrhrtnqk7y] {
    font-size: 10px;
    color: var(--brand-500);
}

/* Settings Toggles */
.settings-toggles[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.settings-toggle-item[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    background: var(--neutral-50);
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: var(--radius-md, 8px);
    transition: all 0.2s ease;
}

.settings-toggle-item:hover[b-zrhrtnqk7y] {
    border-color: var(--brand-200);
    background: var(--brand-50);
}

.toggle-info[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.toggle-icon[b-zrhrtnqk7y] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-md, 8px);
    font-size: 16px;
}

.toggle-icon.active[b-zrhrtnqk7y] {
    background: var(--success-100);
    color: var(--success-600);
}

.toggle-icon.aws[b-zrhrtnqk7y] {
    background: var(--warning-100);
    color: var(--warning-600);
}

.toggle-text[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
}

.toggle-title[b-zrhrtnqk7y] {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
}

.toggle-description[b-zrhrtnqk7y] {
    font-size: 11px;
    color: var(--text-muted, #64748b);
}

.settings-toggle-item .form-check-input[type="checkbox"][b-zrhrtnqk7y] {
    width: 44px;
    height: 24px;
    cursor: pointer;
    background-color: #cbd5e1;
    border: none;
    border-radius: 24px;
    transition: background-color 0.2s ease, background-position 0.2s ease;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.settings-toggle-item .form-check-input[type="checkbox"]:focus[b-zrhrtnqk7y] {
    box-shadow: 0 0 0 3px rgba(0, 115, 177, 0.15);
    outline: none;
}

.settings-toggle-item .form-check-input[type="checkbox"]:checked[b-zrhrtnqk7y] {
    background-color: var(--brand-500);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e") !important;
    background-position: right center;
}

.settings-toggle-item .form-check-input[type="checkbox"][b-zrhrtnqk7y]::before,
.settings-toggle-item .form-check-input[type="checkbox"][b-zrhrtnqk7y]::after {
    display: none !important;
    content: none !important;
}

/* System Template Notice */
.system-template-notice[b-zrhrtnqk7y] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    background: linear-gradient(135deg, var(--info-50) 0%, var(--brand-50) 100%);
    border: 1px solid var(--info-200);
    border-radius: var(--radius-lg, 12px);
}

.notice-icon[b-zrhrtnqk7y] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--info-100);
    border-radius: 50%;
    color: var(--info-600);
    font-size: 18px;
    flex-shrink: 0;
}

.notice-content[b-zrhrtnqk7y] {
    flex: 1;
}

.notice-content strong[b-zrhrtnqk7y] {
    display: block;
    font-size: 13px;
    color: var(--info-700);
    margin-bottom: 4px;
}

.notice-content p[b-zrhrtnqk7y] {
    margin: 0;
    font-size: 12px;
    color: var(--info-600);
    line-height: 1.5;
}

/* Quill editor inside flex-grow container */
.editor-form .form-group.flex-grow-1[b-zrhrtnqk7y]  .quill-editor-wrapper {
    height: 100%;
    min-height: 400px;
    display: flex;
    flex-direction: column;
}

.editor-form .form-group.flex-grow-1[b-zrhrtnqk7y]  .quill-container {
    flex: 1;
    min-height: 350px;
}

.editor-form .form-group.flex-grow-1[b-zrhrtnqk7y]  .ql-container {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.editor-form .form-group.flex-grow-1[b-zrhrtnqk7y]  .ql-editor {
    flex: 1;
    min-height: 300px;
    max-height: 500px;
    overflow-y: auto;
}

/* Variable insertion */
.input-with-variables[b-zrhrtnqk7y] {
    position: relative;
}

/* Subject Variables Button */
.subject-variables-btn[b-zrhrtnqk7y] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    margin-left: 8px;
    font-size: 11px;
    font-weight: 500;
    color: var(--brand-600);
    background: var(--bg-surface, #ffffff);
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.subject-variables-btn:hover[b-zrhrtnqk7y] {
    color: var(--brand-700);
    background: var(--brand-50);
    border-color: var(--brand-300);
}

.subject-variables-btn.active[b-zrhrtnqk7y] {
    color: var(--brand-700);
    background: var(--brand-100);
    border-color: var(--brand-400);
}

.subject-variables-btn i[b-zrhrtnqk7y] {
    font-size: 12px;
}

/* Subject Undo Button */
.subject-undo-btn[b-zrhrtnqk7y] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    margin-left: 4px;
    font-size: 12px;
    color: var(--text-muted, #64748b);
    background: var(--bg-surface, #ffffff);
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.subject-undo-btn:hover[b-zrhrtnqk7y] {
    color: var(--brand-600);
    background: var(--brand-50);
    border-color: var(--brand-300);
}

.subject-undo-btn:active[b-zrhrtnqk7y] {
    transform: scale(0.95);
}

.variable-quick-insert[b-zrhrtnqk7y] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-top: 6px;
}

.variable-quick-insert .btn[b-zrhrtnqk7y] {
    font-size: 11px;
    padding: 2px 8px;
}

/* Brand preview card */
.brand-preview-card[b-zrhrtnqk7y] {
    padding: 16px;
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: var(--radius-md, 8px);
    background: var(--neutral-50);
}

.brand-colors[b-zrhrtnqk7y] {
    display: flex;
    gap: 12px;
    margin-bottom: 12px;
}

.color-swatch[b-zrhrtnqk7y] {
    width: 60px;
    height: 40px;
    border-radius: 6px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: 4px;
}

.color-swatch span[b-zrhrtnqk7y] {
    font-size: 10px;
    color: white;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

.brand-logo[b-zrhrtnqk7y] {
    margin-bottom: 12px;
}

.brand-logo img[b-zrhrtnqk7y] {
    max-height: 40px;
}

.brand-info[b-zrhrtnqk7y] {
    font-size: 12px;
    color: var(--text-muted, #64748b);
}

/* HTML Preview */
.html-preview[b-zrhrtnqk7y] {
    padding: 12px;
    background: var(--bg-surface, #ffffff);
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: 4px;
    font-size: 13px;
}

/* Git-style Version History */
.git-history[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: var(--bg-surface, #ffffff);
    border-radius: var(--radius-md, 8px);
    border: 1px solid var(--border-default, #e5e7eb);
    overflow: hidden;
}

.git-history-header[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
    background: linear-gradient(135deg, var(--neutral-50) 0%, var(--neutral-100) 100%);
    border-bottom: 1px solid var(--border-default, #e5e7eb);
}

.git-branch-info[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.git-branch-info i[b-zrhrtnqk7y] {
    color: var(--brand-500);
    font-size: 16px;
}

.branch-name[b-zrhrtnqk7y] {
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    font-size: 14px;
}

.commit-count[b-zrhrtnqk7y] {
    font-size: 12px;
    color: var(--text-muted, #64748b);
    padding: 2px 8px;
    background: var(--neutral-200);
    border-radius: 10px;
}

.git-commits[b-zrhrtnqk7y] {
    flex: 1;
    overflow-y: auto;
    padding: 16px;
}

/* Individual Commit */
.git-commit[b-zrhrtnqk7y] {
    display: flex;
    gap: 16px;
    position: relative;
}

.git-commit:not(:last-child)[b-zrhrtnqk7y] {
    padding-bottom: 24px;
}

/* Timeline */
.commit-timeline[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 20px;
    flex-shrink: 0;
}

.commit-dot[b-zrhrtnqk7y] {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--neutral-200);
    border: 3px solid var(--bg-surface, #ffffff);
    box-shadow: 0 0 0 2px var(--neutral-300);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    transition: all 0.2s ease;
}

.commit-dot.current[b-zrhrtnqk7y] {
    background: var(--success-500);
    box-shadow: 0 0 0 2px var(--success-200);
}

.commit-dot.current i[b-zrhrtnqk7y] {
    font-size: 10px;
    color: white;
}

.commit-dot.published[b-zrhrtnqk7y] {
    background: var(--brand-500);
    box-shadow: 0 0 0 2px var(--brand-200);
}

.commit-line[b-zrhrtnqk7y] {
    width: 2px;
    flex: 1;
    background: var(--neutral-200);
    margin-top: 4px;
}

/* Commit Content */
.commit-content[b-zrhrtnqk7y] {
    flex: 1;
    background: var(--neutral-50);
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: var(--radius-md, 8px);
    padding: 12px 16px;
    transition: all 0.2s ease;
}

.git-commit.current .commit-content[b-zrhrtnqk7y] {
    background: linear-gradient(135deg, var(--success-50) 0%, var(--neutral-50) 100%);
    border-color: var(--success-200);
}

.git-commit:hover .commit-content[b-zrhrtnqk7y] {
    border-color: var(--brand-300);
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

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

.commit-title[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.commit-hash[b-zrhrtnqk7y] {
    font-family: 'Consolas', 'Monaco', monospace;
    font-size: 13px;
    font-weight: 600;
    color: var(--brand-700);
    background: var(--brand-50);
    padding: 2px 8px;
    border-radius: 4px;
}

.commit-tag[b-zrhrtnqk7y] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    padding: 2px 6px;
    border-radius: 4px;
}

.commit-tag i[b-zrhrtnqk7y] {
    font-size: 9px;
}

.commit-tag.current[b-zrhrtnqk7y] {
    background: var(--success-100);
    color: var(--success-700);
    border: 1px solid var(--success-200);
}

.commit-tag.published[b-zrhrtnqk7y] {
    background: var(--brand-100);
    color: var(--brand-700);
    border: 1px solid var(--brand-200);
}

.commit-actions[b-zrhrtnqk7y] {
    display: flex;
    gap: 6px;
    opacity: 0;
    transition: opacity 0.2s ease;
}

.git-commit:hover .commit-actions[b-zrhrtnqk7y] {
    opacity: 1;
}

.commit-action-btn[b-zrhrtnqk7y] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    font-size: 11px;
    font-weight: 500;
    color: var(--text-muted, #64748b);
    background: var(--bg-surface, #ffffff);
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.commit-action-btn:hover[b-zrhrtnqk7y] {
    color: var(--brand-600);
    background: var(--brand-50);
    border-color: var(--brand-300);
}

.commit-action-btn i[b-zrhrtnqk7y] {
    font-size: 12px;
}

.commit-message[b-zrhrtnqk7y] {
    font-size: 13px;
    color: var(--text-primary, #0f172a);
    line-height: 1.5;
    margin-bottom: 8px;
}

.commit-message .no-message[b-zrhrtnqk7y] {
    color: var(--text-muted, #64748b);
    font-style: italic;
}

.commit-meta[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: 12px;
    color: var(--text-muted, #64748b);
}

.commit-author[b-zrhrtnqk7y],
.commit-date[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.commit-author i[b-zrhrtnqk7y],
.commit-date i[b-zrhrtnqk7y] {
    font-size: 12px;
    color: var(--neutral-400);
}

/* Empty state */
.empty-state[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    text-align: center;
}

.empty-state h5[b-zrhrtnqk7y] {
    margin-top: 16px;
    color: var(--text-primary, #0f172a);
}

.empty-state p[b-zrhrtnqk7y] {
    color: var(--text-muted, #64748b);
    max-width: 300px;
}

/* Editor Footer */
.editor-footer[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 20px;
    background: var(--neutral-50);
    border-top: 1px solid var(--border-default, #e5e7eb);
}

.footer-left[b-zrhrtnqk7y],
.footer-right[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.footer-left .btn[b-zrhrtnqk7y] {
    padding: 6px 12px;
    font-size: 12px;
}

.footer-right .btn[b-zrhrtnqk7y] {
    padding: 8px 14px;
}

.footer-right .btn-primary[b-zrhrtnqk7y] {
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.12);
}

.unsaved-indicator[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: var(--warning-600);
    padding: 4px 10px;
    background: var(--warning-50);
    border-radius: 12px;
}

.unsaved-indicator i[b-zrhrtnqk7y] {
    font-size: 8px;
}

/* Empty Editor State */
.empty-editor[b-zrhrtnqk7y] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px;
    text-align: center;
    color: var(--text-muted, #64748b);
}

.empty-editor h4[b-zrhrtnqk7y] {
    margin-top: 20px;
    color: var(--text-primary, #0f172a);
}

.empty-editor .btn-primary[b-zrhrtnqk7y] {
    margin-top: 8px;
}

/* Loading state button */
.loading-state .btn-primary[b-zrhrtnqk7y] {
    margin-top: 4px;
}

/* Right Panel - Template Info */
.panel-right[b-zrhrtnqk7y] {
    width: 280px;
    min-width: 280px;
    transition: width 0.2s ease, min-width 0.2s ease;
}

.panel-right.collapsed[b-zrhrtnqk7y] {
    width: 44px;
    min-width: 44px;
}

.panel-right.collapsed .panel-header[b-zrhrtnqk7y] {
    justify-content: center;
    padding: 12px 8px;
}

.panel-right.collapsed .info-panel-content[b-zrhrtnqk7y],
.panel-right.collapsed .info-panel-empty[b-zrhrtnqk7y] {
    display: none;
}

.panel-collapse-btn[b-zrhrtnqk7y] {
    padding: 4px 8px;
    color: var(--text-muted, #64748b);
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: 4px;
    background: var(--bg-surface, #ffffff);
    transition: all 0.15s ease;
}

.panel-collapse-btn:hover[b-zrhrtnqk7y] {
    color: var(--text-primary, #0f172a);
    background: var(--bg-hover, rgba(15, 23, 42, 0.05));
    border-color: var(--brand-300);
}

/* Info Panel Content */
.info-panel-content[b-zrhrtnqk7y] {
    flex: 1;
    overflow-y: auto;
    padding: 12px;
}

/* Template Status Header */
.template-status-header[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px;
    margin: -12px -12px 12px -12px;
    background: linear-gradient(135deg, var(--neutral-50) 0%, var(--neutral-100) 100%);
    border-bottom: 1px solid var(--border-default, #e5e7eb);
}

.status-badges[b-zrhrtnqk7y] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.status-badge[b-zrhrtnqk7y] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    font-size: 11px;
    font-weight: 600;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.status-badge i[b-zrhrtnqk7y] {
    font-size: 10px;
}

.status-badge.status-active[b-zrhrtnqk7y] {
    background: linear-gradient(135deg, var(--success-50) 0%, var(--success-100) 100%);
    color: var(--success-700);
    border: 1px solid var(--success-200);
}

.status-badge.status-inactive[b-zrhrtnqk7y] {
    background: linear-gradient(135deg, var(--neutral-100) 0%, var(--neutral-200) 100%);
    color: var(--neutral-600);
    border: 1px solid var(--neutral-300);
}

.status-badge.status-system[b-zrhrtnqk7y] {
    background: linear-gradient(135deg, var(--warning-50) 0%, var(--warning-100) 100%);
    color: var(--warning-700);
    border: 1px solid var(--warning-200);
}

.version-badge[b-zrhrtnqk7y] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    font-size: 11px;
    font-weight: 600;
    background: var(--brand-50);
    color: var(--brand-700);
    border-radius: 20px;
    border: 1px solid var(--brand-200);
}

.version-badge i[b-zrhrtnqk7y] {
    font-size: 10px;
}

.info-section[b-zrhrtnqk7y] {
    padding: 12px 0;
    border-bottom: 1px solid var(--border-default, #e5e7eb);
}

.info-section:first-child[b-zrhrtnqk7y] {
    padding-top: 0;
}

.info-section:last-child[b-zrhrtnqk7y] {
    border-bottom: none;
}

.info-section-title[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-muted, #64748b);
    margin-bottom: 10px;
}

.info-section-title i[b-zrhrtnqk7y] {
    font-size: 12px;
    color: var(--brand-500);
}

.info-count[b-zrhrtnqk7y] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    font-size: 10px;
    font-weight: 600;
    background: var(--brand-100);
    color: var(--brand-700);
    border-radius: 10px;
    margin-left: auto;
}

.info-item[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 6px 0;
    font-size: 13px;
}

.info-label[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--text-muted, #64748b);
}

.info-label i[b-zrhrtnqk7y] {
    font-size: 12px;
    width: 14px;
    text-align: center;
    color: var(--neutral-400);
}

.info-value[b-zrhrtnqk7y] {
    color: var(--text-primary, #0f172a);
    font-weight: 500;
}

.info-value.small[b-zrhrtnqk7y] {
    font-size: 12px;
    font-weight: 400;
}

.info-code[b-zrhrtnqk7y] {
    font-size: 11px;
    background: var(--neutral-100);
    padding: 2px 6px;
    border-radius: 4px;
    font-family: 'Consolas', 'Monaco', monospace;
    color: var(--neutral-700);
}

/* Info Badges */
.info-badge[b-zrhrtnqk7y] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 3px 8px;
    font-size: 11px;
    font-weight: 500;
    border-radius: 4px;
}

.info-badge i[b-zrhrtnqk7y] {
    font-size: 10px;
}

.info-badge-category[b-zrhrtnqk7y] {
    background: var(--neutral-100);
    color: var(--neutral-700);
    border: 1px solid var(--neutral-200);
}

.info-badge-enabled[b-zrhrtnqk7y] {
    background: var(--success-50);
    color: var(--success-700);
    border: 1px solid var(--success-200);
}

.info-badge-disabled[b-zrhrtnqk7y] {
    background: var(--neutral-100);
    color: var(--neutral-500);
    border: 1px solid var(--neutral-200);
}

.variable-tags[b-zrhrtnqk7y] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.variable-tag[b-zrhrtnqk7y] {
    font-size: 11px;
    font-family: 'Consolas', 'Monaco', monospace;
    background: linear-gradient(135deg, var(--brand-50) 0%, var(--brand-100) 100%);
    color: var(--brand-700);
    padding: 4px 8px;
    border-radius: 4px;
    border: 1px solid var(--brand-200);
    cursor: default;
    transition: all 0.15s ease;
}

.variable-tag:hover[b-zrhrtnqk7y] {
    background: linear-gradient(135deg, var(--brand-100) 0%, var(--brand-200) 100%);
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.08);
}

.info-panel-empty[b-zrhrtnqk7y] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    text-align: center;
    color: var(--text-muted, #64748b);
}

.info-panel-empty i[b-zrhrtnqk7y] {
    font-size: 32px;
    margin-bottom: 12px;
}

.info-panel-empty p[b-zrhrtnqk7y] {
    font-size: 13px;
    margin: 0;
}

/* Preview Modal */
.preview-modal[b-zrhrtnqk7y] {
    max-width: 900px;
}

.preview-modal .modal-content[b-zrhrtnqk7y] {
    height: 85vh;
    display: flex;
    flex-direction: column;
}

.preview-modal .modal-body[b-zrhrtnqk7y] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.preview-modal-toolbar[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: auto;
    margin-right: 12px;
}

/* Preview Mode Toggle - Subtle pill buttons */
.preview-mode-toggle[b-zrhrtnqk7y] {
    display: flex;
    background: var(--neutral-100);
    border-radius: 8px;
    padding: 3px;
    gap: 2px;
}

.preview-mode-btn[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border: none;
    background: transparent;
    color: var(--text-muted, #64748b);
    font-size: 13px;
    font-weight: 500;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.preview-mode-btn:hover[b-zrhrtnqk7y] {
    color: var(--text-secondary, #475569);
    background: var(--neutral-200);
}

.preview-mode-btn.active[b-zrhrtnqk7y] {
    background: var(--bg-surface, #ffffff);
    color: var(--brand-600);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.preview-mode-btn i[b-zrhrtnqk7y] {
    font-size: 14px;
}

.preview-mode-btn span[b-zrhrtnqk7y] {
    display: inline;
}

/* Refresh button - subtle */
.preview-refresh-btn[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid var(--border-default, #e5e7eb);
    background: var(--bg-surface, #ffffff);
    color: var(--text-muted, #64748b);
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.preview-refresh-btn:hover[b-zrhrtnqk7y] {
    background: var(--neutral-50);
    color: var(--text-primary, #0f172a);
    border-color: var(--border-hover, #d1d5db);
}

.preview-refresh-btn i[b-zrhrtnqk7y] {
    font-size: 14px;
}

.preview-loading-modal[b-zrhrtnqk7y] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: var(--text-muted, #64748b);
}

.preview-modal-subject[b-zrhrtnqk7y] {
    padding: 12px 16px;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-default, #e5e7eb);
    font-size: 13px;
    color: var(--text-secondary, #475569);
    flex-shrink: 0;
    display: flex;
    align-items: center;
}

.preview-modal-subject i[b-zrhrtnqk7y] {
    color: var(--text-muted, #64748b);
}

.preview-modal-subject strong[b-zrhrtnqk7y] {
    color: var(--text-muted, #64748b);
    font-weight: 500;
    margin-right: 6px;
}

.preview-modal-subject span[b-zrhrtnqk7y] {
    color: var(--text-primary, #0f172a);
}

.preview-modal-content[b-zrhrtnqk7y] {
    flex: 1;
    overflow: auto;
    background: var(--neutral-200);
}

.preview-modal-content.text[b-zrhrtnqk7y] {
    background: var(--neutral-900);
}

.preview-modal-text[b-zrhrtnqk7y] {
    margin: 0;
    padding: 20px;
    font-family: 'Consolas', 'Monaco', monospace;
    font-size: 13px;
    line-height: 1.6;
    color: var(--neutral-100);
    white-space: pre-wrap;
    word-wrap: break-word;
}

.preview-modal-frame-wrapper[b-zrhrtnqk7y] {
    display: flex;
    justify-content: center;
    padding: 24px;
    min-height: 100%;
}

.preview-modal-frame[b-zrhrtnqk7y] {
    background: white;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12);
    border-radius: 8px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.preview-modal-frame.desktop[b-zrhrtnqk7y] {
    width: 600px;
    min-height: 500px;
}

.preview-modal-frame.mobile[b-zrhrtnqk7y] {
    width: 375px;
    min-height: 600px;
    border-radius: 32px;
    border: 10px solid #1f2937;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.2);
}

.preview-modal-frame.mobile[b-zrhrtnqk7y]::before {
    content: '';
    display: block;
    height: 24px;
    background: #1f2937;
    border-radius: 0 0 12px 12px;
}

.preview-modal-frame iframe[b-zrhrtnqk7y] {
    flex: 1;
    width: 100%;
    min-height: 500px;
    border: none;
    background: white;
}

/* Responsive - hide text labels on smaller screens */
@media (max-width: 768px) {
    .preview-mode-btn span[b-zrhrtnqk7y] {
        display: none;
    }
    
    .preview-mode-btn[b-zrhrtnqk7y] {
        padding: 8px 10px;
    }
}

.preview-subject[b-zrhrtnqk7y] {
    padding: 12px 16px;
    background: var(--neutral-100);
    border-bottom: 1px solid var(--border-default, #e5e7eb);
    font-size: 13px;
}

.preview-subject strong[b-zrhrtnqk7y] {
    color: var(--text-muted, #64748b);
}

.preview-frame[b-zrhrtnqk7y] {
    flex: 1;
    padding: 16px;
    display: flex;
    justify-content: center;
}

.preview-frame iframe[b-zrhrtnqk7y] {
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: 8px;
    background: white;
    box-shadow: var(--shadow-md);
}

.preview-frame.desktop iframe[b-zrhrtnqk7y] {
    width: 100%;
    max-width: 600px;
    min-height: 500px;
}

.preview-frame.mobile iframe[b-zrhrtnqk7y] {
    width: 375px;
    min-height: 600px;
    border-radius: 20px;
}

.preview-text[b-zrhrtnqk7y] {
    flex: 1;
    margin: 0;
    padding: 16px;
    font-family: 'Consolas', 'Monaco', monospace;
    font-size: 12px;
    line-height: 1.5;
    background: var(--neutral-900);
    color: var(--neutral-100);
    white-space: pre-wrap;
    word-wrap: break-word;
}

.preview-empty[b-zrhrtnqk7y] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px;
    color: var(--text-muted, #64748b);
    font-size: 13px;
}

.preview-empty i[b-zrhrtnqk7y] {
    font-size: 48px;
    margin-bottom: 12px;
}

/* Responsive adjustments */
@media (max-width: 1400px) {
    .panel-right[b-zrhrtnqk7y] {
        width: 300px;
        min-width: 300px;
    }
}

@media (max-width: 1200px) {
    .panel-left[b-zrhrtnqk7y] {
        width: 250px;
        min-width: 250px;
    }
    
    .panel-right[b-zrhrtnqk7y] {
        width: 280px;
        min-width: 280px;
    }
}

@media (max-width: 992px) {
    .studio-content[b-zrhrtnqk7y] {
        flex-direction: column;
    }
    
    .panel-left[b-zrhrtnqk7y],
    .panel-right[b-zrhrtnqk7y] {
        width: 100%;
        min-width: 100%;
        max-height: 300px;
    }
    
    .panel-center[b-zrhrtnqk7y] {
        min-height: 400px;
    }
}

/* ========================================
   Modal Button Styling
   ======================================== */

/* Brand card actions */
.email-studio .card .btn[b-zrhrtnqk7y] {
    font-size: 12px;
}

/* Accordion button styling */
.email-studio .accordion-button[b-zrhrtnqk7y] {
    font-size: 13px;
    font-weight: 500;
    color: var(--text-secondary, #475569);
    padding: 10px 14px;
    background: var(--bg-surface, #ffffff);
}

.email-studio .accordion-button:not(.collapsed)[b-zrhrtnqk7y] {
    color: var(--brand-700);
    background: var(--brand-50);
}

.email-studio .accordion-button:focus[b-zrhrtnqk7y] {
    box-shadow: 0 0 0 2px var(--brand-100);
    border-color: var(--brand-300);
}

/* Info panel preview button */
.info-section .btn-outline-primary.w-100[b-zrhrtnqk7y] {
    justify-content: center;
    padding: 10px 16px;
}

/* Variable quick insert buttons */
.variable-quick-insert .btn[b-zrhrtnqk7y] {
    font-size: 11px;
    padding: 3px 8px;
    font-family: 'Consolas', monospace;
    background: var(--brand-50);
    border-color: var(--brand-200);
    color: var(--brand-700);
}

.variable-quick-insert .btn:hover[b-zrhrtnqk7y] {
    background: var(--brand-100);
    border-color: var(--brand-300);
}

/* Form switch styling */
.email-studio .form-switch .form-check-input[type="checkbox"][b-zrhrtnqk7y] {
    width: 44px;
    height: 24px;
    cursor: pointer;
    background-color: #cbd5e1;
    border: none;
    border-radius: 24px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e") !important;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    transition: background-color 0.2s ease, background-position 0.2s ease;
}

.email-studio .form-switch .form-check-input[type="checkbox"]:checked[b-zrhrtnqk7y] {
    background-color: var(--brand-600);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e") !important;
    background-position: right center;
}

.email-studio .form-switch .form-check-input[type="checkbox"]:focus[b-zrhrtnqk7y] {
    box-shadow: 0 0 0 2px var(--brand-100);
    outline: none;
}

.email-studio .form-switch .form-check-input[type="checkbox"][b-zrhrtnqk7y]::before,
.email-studio .form-switch .form-check-input[type="checkbox"][b-zrhrtnqk7y]::after {
    display: none !important;
    content: none !important;
}

/* Select dropdown styling */
.email-studio .form-select[b-zrhrtnqk7y] {
    font-size: 13px;
    border-color: var(--border-default, #e5e7eb);
    padding: 8px 12px;
}

.email-studio .form-select:focus[b-zrhrtnqk7y] {
    border-color: var(--brand-400);
    box-shadow: 0 0 0 2px var(--brand-100);
}

/* Toast buttons */
.toast-body .btn-link[b-zrhrtnqk7y] {
    font-size: 12px;
    padding: 0 4px;
    color: var(--brand-600);
}

.toast-body .btn-link:hover[b-zrhrtnqk7y] {
    color: var(--brand-700);
}

/* ========================================
   Save Version Modal - Enhanced Styling
   ======================================== */

.save-version-title[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.save-title-text[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
}

.save-subtitle[b-zrhrtnqk7y] {
    font-size: 0.8rem;
    color: #64748B;
    line-height: 1.45;
    margin-top: 2px;
}

.save-version-body[b-zrhrtnqk7y] {
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Version Info Card */
.version-info-card[b-zrhrtnqk7y] {
    background: var(--neutral-50);
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: var(--radius-md, 8px);
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.version-info-row[b-zrhrtnqk7y] {
    display: flex;
    justify-content: space-between;
    gap: 16px;
}

.version-info-item[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
}

.version-label[b-zrhrtnqk7y] {
    font-size: 11px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    color: var(--text-muted, #64748b);
}

.version-value[b-zrhrtnqk7y] {
    font-size: 13px;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.version-number[b-zrhrtnqk7y] {
    display: inline-flex;
    align-items: center;
    font-family: 'Consolas', 'Monaco', monospace;
    font-size: 13px;
    font-weight: 600;
    color: var(--success-700);
    background: var(--success-100);
    padding: 2px 10px;
    border-radius: 12px;
    width: fit-content;
}

.version-current[b-zrhrtnqk7y] {
    display: inline-flex;
    align-items: center;
    font-family: 'Consolas', 'Monaco', monospace;
    font-size: 12px;
    font-weight: 500;
    color: var(--text-muted, #64748b);
    background: var(--neutral-200);
    padding: 2px 8px;
    border-radius: 10px;
    width: fit-content;
}

.version-date[b-zrhrtnqk7y] {
    font-size: 12px;
    color: var(--text-secondary, #475569);
}

/* Change Notes Section */
.change-notes-section[b-zrhrtnqk7y] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.change-notes-label[b-zrhrtnqk7y] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 500;
    color: var(--text-secondary, #475569);
}

.change-notes-label i[b-zrhrtnqk7y] {
    color: var(--brand-500);
}

.optional-badge[b-zrhrtnqk7y] {
    font-size: 10px;
    font-weight: 500;
    color: var(--text-muted, #64748b);
    background: var(--neutral-100);
    padding: 2px 6px;
    border-radius: 4px;
    margin-left: auto;
}

.change-notes-input[b-zrhrtnqk7y] {
    font-size: 13px;
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: var(--radius-md, 8px);
    padding: 12px;
    resize: vertical;
    min-height: 90px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.change-notes-input:focus[b-zrhrtnqk7y] {
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px var(--brand-100);
    outline: none;
}

.change-notes-input[b-zrhrtnqk7y]::placeholder {
    color: var(--text-muted, #64748b);
    opacity: 0.7;
}

.change-notes-help[b-zrhrtnqk7y] {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    font-size: 11px;
    color: var(--text-muted, #64748b);
    padding: 8px 10px;
    background: var(--neutral-50);
    border-radius: var(--radius-sm, 6px);
    line-height: 1.4;
}

.change-notes-help i[b-zrhrtnqk7y] {
    color: var(--brand-400);
    margin-top: 1px;
    flex-shrink: 0;
}

/* Animation for modal */
.save-version-modal[b-zrhrtnqk7y] {
    animation: modalSlideIn-b-zrhrtnqk7y 0.25s ease-out;
}

@keyframes modalSlideIn-b-zrhrtnqk7y {
    from {
        opacity: 0;
        transform: translateY(-20px) scale(0.95);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* ========================================
   Animations & Transitions
   ======================================== */

/* Keyframe Animations */
@keyframes fadeIn-b-zrhrtnqk7y {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fadeInUp-b-zrhrtnqk7y {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInLeft-b-zrhrtnqk7y {
    from {
        opacity: 0;
        transform: translateX(-10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeInRight-b-zrhrtnqk7y {
    from {
        opacity: 0;
        transform: translateX(10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideInLeft-b-zrhrtnqk7y {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideInRight-b-zrhrtnqk7y {
    from {
        opacity: 0;
        transform: translateX(20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes scaleIn-b-zrhrtnqk7y {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes pulse-b-zrhrtnqk7y {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.5;
    }
}

@keyframes shimmer-b-zrhrtnqk7y {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

@keyframes spin-b-zrhrtnqk7y {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

/* Page Load Animation */
.email-studio[b-zrhrtnqk7y] {
    animation: fadeIn-b-zrhrtnqk7y 0.3s ease-out;
}

/* Header Animation */
.studio-header[b-zrhrtnqk7y] {
    animation: fadeInUp-b-zrhrtnqk7y 0.3s ease-out;
    animation-delay: 0.1s;
    animation-fill-mode: backwards;
}

/* Panel Animations */
.panel-left[b-zrhrtnqk7y] {
    animation: slideInLeft-b-zrhrtnqk7y 0.4s ease-out;
    animation-delay: 0.15s;
    animation-fill-mode: backwards;
}

.panel-center[b-zrhrtnqk7y] {
    animation: fadeIn-b-zrhrtnqk7y 0.4s ease-out;
    animation-delay: 0.2s;
    animation-fill-mode: backwards;
}

.panel-right[b-zrhrtnqk7y] {
    animation: slideInRight-b-zrhrtnqk7y 0.4s ease-out;
    animation-delay: 0.25s;
    animation-fill-mode: backwards;
}

/* Right Panel Collapse Animation */
.panel-right[b-zrhrtnqk7y] {
    transition: width 0.3s ease, min-width 0.3s ease, padding 0.3s ease;
}

.panel-right.collapsed[b-zrhrtnqk7y] {
    animation: none;
}

/* Template Tree Item Animations */
.tree-category[b-zrhrtnqk7y] {
    animation: fadeInUp-b-zrhrtnqk7y 0.3s ease-out;
    animation-fill-mode: backwards;
}

.tree-category:nth-child(1)[b-zrhrtnqk7y] { animation-delay: 0.1s; }
.tree-category:nth-child(2)[b-zrhrtnqk7y] { animation-delay: 0.15s; }
.tree-category:nth-child(3)[b-zrhrtnqk7y] { animation-delay: 0.2s; }
.tree-category:nth-child(4)[b-zrhrtnqk7y] { animation-delay: 0.25s; }
.tree-category:nth-child(5)[b-zrhrtnqk7y] { animation-delay: 0.3s; }

.tree-children[b-zrhrtnqk7y] {
    animation: fadeIn-b-zrhrtnqk7y 0.2s ease-out;
}

.tree-item[b-zrhrtnqk7y] {
    transition: all 0.2s ease;
}

.tree-item:hover[b-zrhrtnqk7y] {
    transform: translateX(2px);
}

.tree-item.selected[b-zrhrtnqk7y] {
    animation: scaleIn-b-zrhrtnqk7y 0.15s ease-out;
}

/* Editor Tab Animations */
.editor-tabs[b-zrhrtnqk7y] {
    animation: fadeInUp-b-zrhrtnqk7y 0.3s ease-out;
    animation-delay: 0.3s;
    animation-fill-mode: backwards;
}

.editor-tab[b-zrhrtnqk7y] {
    transition: all 0.2s ease;
}

.editor-tab:hover[b-zrhrtnqk7y] {
    transform: translateY(-1px);
}

.editor-tab.active[b-zrhrtnqk7y] {
    animation: scaleIn-b-zrhrtnqk7y 0.15s ease-out;
}

/* Editor Content Animation */
.editor-content[b-zrhrtnqk7y] {
    animation: fadeIn-b-zrhrtnqk7y 0.3s ease-out;
}

.editor-form > .form-group[b-zrhrtnqk7y] {
    animation: fadeInUp-b-zrhrtnqk7y 0.3s ease-out;
    animation-fill-mode: backwards;
}

.editor-form > .form-group:nth-child(1)[b-zrhrtnqk7y] { animation-delay: 0.05s; }
.editor-form > .form-group:nth-child(2)[b-zrhrtnqk7y] { animation-delay: 0.1s; }
.editor-form > .form-group:nth-child(3)[b-zrhrtnqk7y] { animation-delay: 0.15s; }
.editor-form > .form-group:nth-child(4)[b-zrhrtnqk7y] { animation-delay: 0.2s; }

/* Settings Section Animations */
.settings-section[b-zrhrtnqk7y] {
    animation: fadeInUp-b-zrhrtnqk7y 0.3s ease-out;
    animation-fill-mode: backwards;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.settings-section:nth-child(1)[b-zrhrtnqk7y] { animation-delay: 0.1s; }
.settings-section:nth-child(2)[b-zrhrtnqk7y] { animation-delay: 0.15s; }
.settings-section:nth-child(3)[b-zrhrtnqk7y] { animation-delay: 0.2s; }
.settings-section:nth-child(4)[b-zrhrtnqk7y] { animation-delay: 0.25s; }

.settings-section:hover[b-zrhrtnqk7y] {
    transform: translateY(-2px);
}

/* Settings Toggle Animation */
.settings-toggle-item[b-zrhrtnqk7y] {
    transition: all 0.2s ease;
}

.settings-toggle-item:hover[b-zrhrtnqk7y] {
    transform: translateX(4px);
}

/* Git History Animations */
.git-history[b-zrhrtnqk7y] {
    animation: fadeIn-b-zrhrtnqk7y 0.3s ease-out;
}

.git-commit[b-zrhrtnqk7y] {
    animation: fadeInLeft-b-zrhrtnqk7y 0.3s ease-out;
    animation-fill-mode: backwards;
    transition: all 0.2s ease;
}

.git-commit:nth-child(1)[b-zrhrtnqk7y] { animation-delay: 0.1s; }
.git-commit:nth-child(2)[b-zrhrtnqk7y] { animation-delay: 0.15s; }
.git-commit:nth-child(3)[b-zrhrtnqk7y] { animation-delay: 0.2s; }
.git-commit:nth-child(4)[b-zrhrtnqk7y] { animation-delay: 0.25s; }
.git-commit:nth-child(5)[b-zrhrtnqk7y] { animation-delay: 0.3s; }

.git-commit:hover[b-zrhrtnqk7y] {
    transform: translateX(4px);
}

/* Commit Timeline Animation */
.commit-dot[b-zrhrtnqk7y] {
    transition: all 0.2s ease;
}

.git-commit:hover .commit-dot[b-zrhrtnqk7y] {
    transform: scale(1.2);
}

/* Loading State Animations */
.loading-state[b-zrhrtnqk7y] {
    animation: fadeIn-b-zrhrtnqk7y 0.3s ease-out;
}

.loading-state .spinner-border[b-zrhrtnqk7y] {
    animation: spin-b-zrhrtnqk7y 0.75s linear infinite;
}

/* Unsaved Indicator Pulse */
.unsaved-indicator[b-zrhrtnqk7y] {
    animation: pulse-b-zrhrtnqk7y 2s ease-in-out infinite;
}

.unsaved-indicator i[b-zrhrtnqk7y] {
    animation: pulse-b-zrhrtnqk7y 1.5s ease-in-out infinite;
}

/* Empty State Animations */
.empty-editor[b-zrhrtnqk7y] {
    animation: fadeIn-b-zrhrtnqk7y 0.4s ease-out;
}

.empty-editor i[b-zrhrtnqk7y] {
    animation: fadeInUp-b-zrhrtnqk7y 0.4s ease-out;
    animation-delay: 0.1s;
    animation-fill-mode: backwards;
}

.empty-editor h4[b-zrhrtnqk7y] {
    animation: fadeInUp-b-zrhrtnqk7y 0.4s ease-out;
    animation-delay: 0.2s;
    animation-fill-mode: backwards;
}

.empty-editor p[b-zrhrtnqk7y] {
    animation: fadeInUp-b-zrhrtnqk7y 0.4s ease-out;
    animation-delay: 0.3s;
    animation-fill-mode: backwards;
}

.empty-editor .btn[b-zrhrtnqk7y] {
    animation: fadeInUp-b-zrhrtnqk7y 0.4s ease-out;
    animation-delay: 0.4s;
    animation-fill-mode: backwards;
}

/* Info Panel Content Animation */
.info-panel-content[b-zrhrtnqk7y] {
    animation: fadeIn-b-zrhrtnqk7y 0.3s ease-out;
}

.info-section[b-zrhrtnqk7y] {
    animation: fadeInUp-b-zrhrtnqk7y 0.25s ease-out;
    animation-fill-mode: backwards;
}

.info-section:nth-child(1)[b-zrhrtnqk7y] { animation-delay: 0.1s; }
.info-section:nth-child(2)[b-zrhrtnqk7y] { animation-delay: 0.15s; }
.info-section:nth-child(3)[b-zrhrtnqk7y] { animation-delay: 0.2s; }

/* Status Badge Animations */
.status-badge[b-zrhrtnqk7y] {
    transition: all 0.2s ease;
}

.status-badge:hover[b-zrhrtnqk7y] {
    transform: scale(1.05);
}

/* Template Status Header Animation */
.template-status-header[b-zrhrtnqk7y] {
    animation: fadeIn-b-zrhrtnqk7y 0.3s ease-out;
}

/* Variable Quick Insert Animation */
.variable-quick-insert[b-zrhrtnqk7y] {
    animation: fadeIn-b-zrhrtnqk7y 0.2s ease-out;
}

.variable-quick-insert .btn[b-zrhrtnqk7y] {
    animation: fadeInUp-b-zrhrtnqk7y 0.2s ease-out;
    animation-fill-mode: backwards;
    transition: all 0.15s ease;
}

.variable-quick-insert .btn:nth-child(1)[b-zrhrtnqk7y] { animation-delay: 0.02s; }
.variable-quick-insert .btn:nth-child(2)[b-zrhrtnqk7y] { animation-delay: 0.04s; }
.variable-quick-insert .btn:nth-child(3)[b-zrhrtnqk7y] { animation-delay: 0.06s; }
.variable-quick-insert .btn:nth-child(4)[b-zrhrtnqk7y] { animation-delay: 0.08s; }
.variable-quick-insert .btn:nth-child(5)[b-zrhrtnqk7y] { animation-delay: 0.1s; }

.variable-quick-insert .btn:hover[b-zrhrtnqk7y] {
    transform: translateY(-2px);
}

/* Panel Collapse Button Animation */
.panel-collapse-btn[b-zrhrtnqk7y] {
    transition: all 0.2s ease;
}

.panel-collapse-btn:hover[b-zrhrtnqk7y] {
    transform: scale(1.1);
}

.panel-collapse-btn i[b-zrhrtnqk7y] {
    transition: transform 0.3s ease;
}

/* Button Hover Effects Enhancement */
.email-studio .btn[b-zrhrtnqk7y] {
    transition: all 0.2s ease;
}

.email-studio .btn:hover:not(:disabled)[b-zrhrtnqk7y] {
    transform: translateY(-1px);
}

.email-studio .btn:active:not(:disabled)[b-zrhrtnqk7y] {
    transform: translateY(1px);
}

/* Footer Animation */
.editor-footer[b-zrhrtnqk7y] {
    animation: fadeInUp-b-zrhrtnqk7y 0.3s ease-out;
    animation-delay: 0.35s;
    animation-fill-mode: backwards;
}

/* Modal Animations (for when modals are shown) */
.modal.show .modal-dialog[b-zrhrtnqk7y] {
    animation: scaleIn-b-zrhrtnqk7y 0.2s ease-out;
}

/* Preview iframe Animation */
.preview-frame[b-zrhrtnqk7y] {
    transition: opacity 0.3s ease;
}

.preview-frame.loading[b-zrhrtnqk7y] {
    opacity: 0.5;
}

/* System Template Notice Animation */
.system-template-notice[b-zrhrtnqk7y] {
    animation: fadeIn-b-zrhrtnqk7y 0.3s ease-out;
    animation-delay: 0.3s;
    animation-fill-mode: backwards;
}

/* Search Result Highlight Animation */
.tree-item-name mark[b-zrhrtnqk7y] {
    animation: pulse-b-zrhrtnqk7y 1s ease-in-out;
    background: var(--warning-200);
    padding: 0 2px;
    border-radius: 2px;
}

/* Accordion Animation */
.email-studio .accordion-collapse[b-zrhrtnqk7y] {
    transition: height 0.3s ease;
}

/* Variable Tag Animation */
.variable-tag[b-zrhrtnqk7y] {
    transition: all 0.2s ease;
}

.variable-tag:hover[b-zrhrtnqk7y] {
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Commit Tag Animation */
.commit-tag[b-zrhrtnqk7y] {
    transition: all 0.2s ease;
}

.commit-tag:hover[b-zrhrtnqk7y] {
    transform: scale(1.05);
}

/* Preview Mode Button Animation */
.preview-mode-btn[b-zrhrtnqk7y] {
    transition: all 0.2s ease;
}

.preview-mode-btn:hover[b-zrhrtnqk7y] {
    transform: translateY(-1px);
}

.preview-mode-btn.active[b-zrhrtnqk7y] {
    animation: scaleIn-b-zrhrtnqk7y 0.15s ease-out;
}

/* Reduced Motion Support */
@media (prefers-reduced-motion: reduce) {
    .email-studio[b-zrhrtnqk7y],
    .email-studio *[b-zrhrtnqk7y],
    .email-studio *[b-zrhrtnqk7y]::before,
    .email-studio *[b-zrhrtnqk7y]::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}
/* /Components/Pages/Admin/HealthPage.razor.rz.scp.css */
.health-page-content[b-bupuhlrw0s] {
    padding: 0;
}

/* Health Header */
.health-header[b-bupuhlrw0s] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
}

.health-title[b-bupuhlrw0s] {
    font-size: 24px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 4px 0;
}

.health-subtitle[b-bupuhlrw0s] {
    font-size: 14px;
    color: #64748B;
    margin: 0;
}

.btn-refresh-main[b-bupuhlrw0s] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-refresh-main:hover[b-bupuhlrw0s] {
    background: var(--brand-700, #003760);
}

/* Status Cards Grid */
.status-cards-grid[b-bupuhlrw0s] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
    margin-bottom: 32px;
}

.status-card[b-bupuhlrw0s] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 20px;
    display: flex;
    gap: 16px;
    align-items: flex-start;
    transition: all 0.2s;
}

.status-card:hover[b-bupuhlrw0s] {
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.1);
    transform: translateY(-2px);
}

.status-card-icon[b-bupuhlrw0s] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    font-size: 24px;
    flex-shrink: 0;
}

.status-operational .status-card-icon[b-bupuhlrw0s] {
    background: #D1FAE5;
    color: #059669;
}

.status-info .status-card-icon[b-bupuhlrw0s] {
    background: #DBEAFE;
    color: #2563EB;
}

.status-warning .status-card-icon[b-bupuhlrw0s] {
    background: #FEF3C7;
    color: #D97706;
}

.status-time .status-card-icon[b-bupuhlrw0s] {
    background: #F1F5F9;
    color: #64748B;
}

.status-card-content[b-bupuhlrw0s] {
    flex: 1;
}

.status-card-label[b-bupuhlrw0s] {
    font-size: 13px;
    color: #64748B;
    font-weight: 500;
    margin-bottom: 4px;
}

.status-card-value[b-bupuhlrw0s] {
    font-size: 28px;
    font-weight: 700;
    color: #1F2937;
    line-height: 1;
    margin-bottom: 4px;
}

.status-card-details[b-bupuhlrw0s] {
    font-size: 12px;
    color: #94A3B8;
}

/* Health Section */
.health-section[b-bupuhlrw0s] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 24px;
    margin-bottom: 24px;
}

.section-header-simple[b-bupuhlrw0s] {
    margin-bottom: 24px;
}

.section-title[b-bupuhlrw0s] {
    font-size: 18px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 4px 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.section-title i[b-bupuhlrw0s] {
    font-size: 20px;
    color: var(--brand-500);
}

.section-subtitle[b-bupuhlrw0s] {
    font-size: 13px;
    color: #64748B;
    margin: 0;
}

/* Health Metrics List */
.health-metrics-list[b-bupuhlrw0s] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(450px, 1fr));
    gap: 16px;
}

.health-metric-item[b-bupuhlrw0s] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    transition: all 0.2s;
}

.health-metric-item:hover[b-bupuhlrw0s] {
    background: white;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

.metric-icon[b-bupuhlrw0s] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 18px;
    flex-shrink: 0;
}

.metric-icon.healthy[b-bupuhlrw0s] {
    background: #D1FAE5;
    color: #059669;
}

.metric-icon.warning[b-bupuhlrw0s] {
    background: #FEF3C7;
    color: #D97706;
}

.metric-icon.error[b-bupuhlrw0s] {
    background: #FEE2E2;
    color: var(--error-600);
}

.metric-info[b-bupuhlrw0s] {
    flex: 1;
}

.metric-name[b-bupuhlrw0s] {
    font-size: 15px;
    font-weight: 600;
    color: #1F2937;
    margin-bottom: 2px;
}

.metric-description[b-bupuhlrw0s] {
    font-size: 12px;
    color: #64748B;
}

.metric-value-display[b-bupuhlrw0s] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.metric-current[b-bupuhlrw0s] {
    font-size: 16px;
    font-weight: 600;
    color: #1F2937;
}

.metric-badge[b-bupuhlrw0s] {
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.metric-badge.healthy[b-bupuhlrw0s] {
    background: #D1FAE5;
    color: #047857;
}

.metric-badge.warning[b-bupuhlrw0s] {
    background: #FEF3C7;
    color: #B45309;
}

/* Background Jobs List */
.background-jobs-list[b-bupuhlrw0s] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.job-item[b-bupuhlrw0s] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    border-left: 4px solid;
}

.job-running[b-bupuhlrw0s] {
    border-left-color: #2563EB;
}

.job-completed[b-bupuhlrw0s] {
    border-left-color: #10B981;
}

.job-pending[b-bupuhlrw0s] {
    border-left-color: #F59E0B;
}

.job-failed[b-bupuhlrw0s] {
    border-left-color: #EF4444;
}

.job-icon[b-bupuhlrw0s] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 18px;
    flex-shrink: 0;
}

.job-running .job-icon[b-bupuhlrw0s] {
    background: #DBEAFE;
    color: #2563EB;
}

.job-completed .job-icon[b-bupuhlrw0s] {
    background: #D1FAE5;
    color: #059669;
}

.job-pending .job-icon[b-bupuhlrw0s] {
    background: #FEF3C7;
    color: #D97706;
}

.job-failed .job-icon[b-bupuhlrw0s] {
    background: #FEE2E2;
    color: var(--error-600);
}

.job-content[b-bupuhlrw0s] {
    flex: 1;
}

.job-name[b-bupuhlrw0s] {
    font-size: 15px;
    font-weight: 600;
    color: #1F2937;
    margin-bottom: 4px;
}

.job-time[b-bupuhlrw0s] {
    font-size: 12px;
    color: #64748B;
}

.job-error[b-bupuhlrw0s] {
    font-size: 12px;
    color: var(--error-600);
    margin-top: 4px;
}

.job-status[b-bupuhlrw0s] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.job-progress[b-bupuhlrw0s] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.progress-bar-mini[b-bupuhlrw0s] {
    width: 100px;
    height: 8px;
    background: #E2E8F0;
    border-radius: 4px;
    overflow: hidden;
}

.progress-fill-mini[b-bupuhlrw0s] {
    height: 100%;
    background: linear-gradient(90deg, #2563EB 0%, #60A5FA 100%);
    border-radius: 4px;
    transition: width 0.3s;
}

.progress-text[b-bupuhlrw0s] {
    font-size: 13px;
    font-weight: 600;
    color: #1F2937;
}

.job-badge[b-bupuhlrw0s] {
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
}

.job-badge.running[b-bupuhlrw0s] {
    background: #DBEAFE;
    color: #1E40AF;
}

.job-badge.completed[b-bupuhlrw0s] {
    background: #D1FAE5;
    color: #047857;
}

.job-badge.pending[b-bupuhlrw0s] {
    background: #FEF3C7;
    color: #B45309;
}

.job-badge.failed[b-bupuhlrw0s] {
    background: #FEE2E2;
    color: #B91C1C;
}

.btn-retry[b-bupuhlrw0s] {
    padding: 6px 16px;
    background: white;
    border: 1px solid #DC2626;
    color: var(--error-600);
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-retry:hover[b-bupuhlrw0s] {
    background: var(--error-600);
    color: white;
}

/* System Alerts List */
.system-alerts-list[b-bupuhlrw0s] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.alert-item[b-bupuhlrw0s] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 16px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    border-left: 4px solid;
}

.alert-info[b-bupuhlrw0s] {
    border-left-color: #3B82F6;
}

.alert-warning[b-bupuhlrw0s] {
    border-left-color: #F59E0B;
}

.alert-error[b-bupuhlrw0s] {
    border-left-color: #EF4444;
}

.alert-icon[b-bupuhlrw0s] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 16px;
    flex-shrink: 0;
}

.alert-info .alert-icon[b-bupuhlrw0s] {
    background: #DBEAFE;
    color: #2563EB;
}

.alert-warning .alert-icon[b-bupuhlrw0s] {
    background: #FEF3C7;
    color: #D97706;
}

.alert-error .alert-icon[b-bupuhlrw0s] {
    background: #FEE2E2;
    color: var(--error-600);
}

.alert-content[b-bupuhlrw0s] {
    flex: 1;
}

.alert-title[b-bupuhlrw0s] {
    font-size: 15px;
    font-weight: 600;
    color: #1F2937;
    margin-bottom: 4px;
}

.alert-message[b-bupuhlrw0s] {
    font-size: 13px;
    color: #64748B;
    margin-bottom: 6px;
    line-height: 1.5;
}

.alert-time[b-bupuhlrw0s] {
    font-size: 12px;
    color: #94A3B8;
}

.alert-actions[b-bupuhlrw0s] {
    display: flex;
    align-items: center;
}

.btn-alert-action[b-bupuhlrw0s] {
    padding: 6px 16px;
    background: white;
    border: 1px solid var(--brand-500);
    color: var(--brand-500);
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-alert-action:hover[b-bupuhlrw0s] {
    background: var(--brand-500);
    color: white;
}

.btn-alert-action.error[b-bupuhlrw0s] {
    border-color: var(--error-600);
    color: var(--error-600);
}

.btn-alert-action.error:hover[b-bupuhlrw0s] {
    background: var(--error-600);
    color: white;
}

.btn-alert-action.error:hover[b-bupuhlrw0s] {
    background: var(--error-600);
    color: white;
}

/* Original Health Tab Styles */

/* Section Header */
.section-header[b-bupuhlrw0s] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
}

.view-all-link[b-bupuhlrw0s] {
    color: var(--brand-500);
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    transition: color 0.2s;
}

.view-all-link:hover[b-bupuhlrw0s] {
    color: var(--brand-400);
    text-decoration: underline;
}

/* Health Metrics Grid (Original) */
.health-metrics-grid[b-bupuhlrw0s] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 24px;
}

/* Health Checks Grid */
.health-checks-grid[b-bupuhlrw0s] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 16px;
}

/* Infrastructure Grid */
.infrastructure-grid[b-bupuhlrw0s] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 20px;
}

.metric-box[b-bupuhlrw0s] {
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(240, 247, 252, 0.6) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 20px;
    transition: all 0.3s;
}

.metric-box:hover[b-bupuhlrw0s] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.1);
    border-color: rgba(15, 23, 42, 0.15);
}

.metric-box-header[b-bupuhlrw0s] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    color: #475569;
    font-size: 14px;
    font-weight: 600;
}

.metric-box-header i[b-bupuhlrw0s] {
    font-size: 18px;
    color: var(--brand-500);
}

.metric-box-value[b-bupuhlrw0s] {
    font-size: 32px;
    font-weight: 700;
    color: #1F2937;
    margin-bottom: 12px;
    line-height: 1;
}

.metric-box-footer[b-bupuhlrw0s] {
    font-size: 12px;
    color: #64748B;
    margin-top: 8px;
}

/* Progress Bar */
.progress-bar[b-bupuhlrw0s] {
    width: 100%;
    height: 8px;
    background: #E2E8F0;
    border-radius: 4px;
    overflow: hidden;
}

.progress-fill[b-bupuhlrw0s] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s ease;
}

.progress-fill.healthy[b-bupuhlrw0s] {
    background: linear-gradient(90deg, #10B981 0%, #34D399 100%);
}

.progress-fill.warning[b-bupuhlrw0s] {
    background: linear-gradient(90deg, #F59E0B 0%, #FBBF24 100%);
}

.progress-fill.error[b-bupuhlrw0s] {
    background: linear-gradient(90deg, #EF4444 0%, #F87171 100%);
}

/* Health Events List */
.health-events-list[b-bupuhlrw0s] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.health-event[b-bupuhlrw0s] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    border-left: 4px solid;
    transition: all 0.2s;
}

.health-event:hover[b-bupuhlrw0s] {
    background: white;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

.event-indicator[b-bupuhlrw0s] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 16px;
    flex-shrink: 0;
}

.event-content[b-bupuhlrw0s] {
    flex: 1;
}

.event-title[b-bupuhlrw0s] {
    font-size: 14px;
    font-weight: 600;
    color: #1F2937;
    margin-bottom: 4px;
}

.event-time[b-bupuhlrw0s] {
    font-size: 12px;
    color: #64748B;
}

/* Event Status Variants */
.health-event.success[b-bupuhlrw0s] {
    border-left-color: #10B981;
}

.health-event.success .event-indicator[b-bupuhlrw0s] {
    background: #D1FAE5;
    color: #059669;
}

.health-event.info[b-bupuhlrw0s] {
    border-left-color: #3B82F6;
}

.health-event.info .event-indicator[b-bupuhlrw0s] {
    background: #DBEAFE;
    color: #2563EB;
}

.health-event.warning[b-bupuhlrw0s] {
    border-left-color: #F59E0B;
}

.health-event.warning .event-indicator[b-bupuhlrw0s] {
    background: #FEF3C7;
    color: #D97706;
}

.health-event.error[b-bupuhlrw0s] {
    border-left-color: #EF4444;
}

.health-event.error .event-indicator[b-bupuhlrw0s] {
    background: #FEE2E2;
    color: var(--error-600);
}

/* Responsive Design */
@media (max-width: 768px) {
    .status-cards-grid[b-bupuhlrw0s] {
        grid-template-columns: 1fr;
    }

    .health-metrics-list[b-bupuhlrw0s] {
        grid-template-columns: 1fr;
    }

    .health-metrics-grid[b-bupuhlrw0s] {
        grid-template-columns: 1fr;
    }

    .health-checks-grid[b-bupuhlrw0s] {
        grid-template-columns: 1fr;
    }

    .infrastructure-grid[b-bupuhlrw0s] {
        grid-template-columns: 1fr;
    }

    .health-header[b-bupuhlrw0s] {
        flex-direction: column;
        gap: 16px;
    }

    .btn-refresh-main[b-bupuhlrw0s] {
        width: 100%;
        justify-content: center;
    }
}

/* Health Section */
.health-section[b-bupuhlrw0s] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 24px;
    margin-bottom: 24px;
}

.section-header[b-bupuhlrw0s] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
}

.section-title[b-bupuhlrw0s] {
    font-size: 18px;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.section-title i[b-bupuhlrw0s] {
    font-size: 20px;
    color: var(--brand-500);
}

.btn-refresh[b-bupuhlrw0s] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-refresh:hover[b-bupuhlrw0s] {
    background: var(--brand-700, #003760);
}

.btn-refresh i[b-bupuhlrw0s] {
    font-size: 16px;
}

.view-all-link[b-bupuhlrw0s] {
    color: var(--brand-500);
    text-decoration: none;
    font-weight: 600;
    font-size: 14px;
    transition: color 0.2s;
}

.view-all-link:hover[b-bupuhlrw0s] {
    color: var(--brand-400);
    text-decoration: underline;
}

/* Health Checks Grid */
.health-checks-grid[b-bupuhlrw0s] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 16px;
}

/* Infrastructure Grid */
.infrastructure-grid[b-bupuhlrw0s] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 20px;
}

.metric-box[b-bupuhlrw0s] {
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(240, 247, 252, 0.6) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 20px;
    transition: all 0.3s;
}

.metric-box:hover[b-bupuhlrw0s] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.1);
    border-color: rgba(15, 23, 42, 0.15);
}

.metric-box-header[b-bupuhlrw0s] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    color: #475569;
    font-size: 14px;
    font-weight: 600;
}

.metric-box-header i[b-bupuhlrw0s] {
    font-size: 18px;
    color: var(--brand-500);
}

.metric-box-value[b-bupuhlrw0s] {
    font-size: 32px;
    font-weight: 700;
    color: #1F2937;
    margin-bottom: 12px;
    line-height: 1;
}

.metric-box-footer[b-bupuhlrw0s] {
    font-size: 12px;
    color: #64748B;
    margin-top: 8px;
}

/* Progress Bar */
.progress-bar[b-bupuhlrw0s] {
    width: 100%;
    height: 8px;
    background: #E2E8F0;
    border-radius: 4px;
    overflow: hidden;
}

.progress-fill[b-bupuhlrw0s] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s ease;
}

.progress-fill.healthy[b-bupuhlrw0s] {
    background: linear-gradient(90deg, #10B981 0%, #34D399 100%);
}

.progress-fill.warning[b-bupuhlrw0s] {
    background: linear-gradient(90deg, #F59E0B 0%, #FBBF24 100%);
}

.progress-fill.error[b-bupuhlrw0s] {
    background: linear-gradient(90deg, #EF4444 0%, #F87171 100%);
}

/* Health Events List */
.health-events-list[b-bupuhlrw0s] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.health-event[b-bupuhlrw0s] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    border-left: 4px solid;
    transition: all 0.2s;
}

.health-event:hover[b-bupuhlrw0s] {
    background: white;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

.event-indicator[b-bupuhlrw0s] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 16px;
    flex-shrink: 0;
}

.event-content[b-bupuhlrw0s] {
    flex: 1;
}

.event-title[b-bupuhlrw0s] {
    font-size: 14px;
    font-weight: 600;
    color: #1F2937;
    margin-bottom: 4px;
}

.event-time[b-bupuhlrw0s] {
    font-size: 12px;
    color: #64748B;
}

/* Event Status Variants */
.health-event.success[b-bupuhlrw0s] {
    border-left-color: #10B981;
}

.health-event.success .event-indicator[b-bupuhlrw0s] {
    background: #D1FAE5;
    color: #059669;
}

.health-event.info[b-bupuhlrw0s] {
    border-left-color: #3B82F6;
}

.health-event.info .event-indicator[b-bupuhlrw0s] {
    background: #DBEAFE;
    color: #2563EB;
}

.health-event.warning[b-bupuhlrw0s] {
    border-left-color: #F59E0B;
}

.health-event.warning .event-indicator[b-bupuhlrw0s] {
    background: #FEF3C7;
    color: #D97706;
}

.health-event.error[b-bupuhlrw0s] {
    border-left-color: #EF4444;
}

.health-event.error .event-indicator[b-bupuhlrw0s] {
    background: #FEE2E2;
    color: var(--error-600);
}

/* Responsive Design */
@media (max-width: 768px) {
    .health-metrics-grid[b-bupuhlrw0s],
    .health-checks-grid[b-bupuhlrw0s],
    .infrastructure-grid[b-bupuhlrw0s] {
        grid-template-columns: 1fr;
    }

    .section-header[b-bupuhlrw0s] {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .btn-refresh[b-bupuhlrw0s] {
        width: 100%;
        justify-content: center;
    }
}

/* /Components/Pages/Admin/HelpAnalyticsDashboard.razor.rz.scp.css */
/* Help Analytics Dashboard Styles */

.help-analytics-page[b-8flq125gma] {
    padding: 1.5rem;
    background: #f8fafc;
    min-height: 100vh;
}

/* Page Header */
.page-header[b-8flq125gma] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 2rem;
    flex-wrap: wrap;
}

.header-content h1[b-8flq125gma] {
    font-size: 1.75rem;
    font-weight: 700;
    color: #1e293b;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.header-content h1 i[b-8flq125gma] {
    color: #3b82f6;
}

.header-subtitle[b-8flq125gma] {
    color: #64748b;
    margin: 0.5rem 0 0 0;
    font-size: 0.875rem;
}

.header-actions[b-8flq125gma] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.date-range-selector[b-8flq125gma] {
    display: flex;
    background: white;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
    overflow: hidden;
}

.date-btn[b-8flq125gma] {
    padding: 0.5rem 1rem;
    border: none;
    background: white;
    color: #64748b;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
    border-right: 1px solid #e2e8f0;
}

.date-btn:last-child[b-8flq125gma] {
    border-right: none;
}

.date-btn:hover[b-8flq125gma] {
    background: #f1f5f9;
}

.date-btn.active[b-8flq125gma] {
    background: #3b82f6;
    color: white;
}

.btn-refresh[b-8flq125gma] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    color: #475569;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-refresh:hover[b-8flq125gma] {
    background: #f1f5f9;
}

.btn-refresh:disabled[b-8flq125gma] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Loading */
.loading-container[b-8flq125gma] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem;
    gap: 1rem;
    color: #64748b;
}

/* Overview Cards */
.overview-cards[b-8flq125gma] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 1rem;
    margin-bottom: 2rem;
}

.overview-card[b-8flq125gma] {
    background: white;
    border-radius: 12px;
    padding: 1.25rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    border: 1px solid #e2e8f0;
    transition: transform 0.2s, box-shadow 0.2s;
}

.overview-card:hover[b-8flq125gma] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.card-icon[b-8flq125gma] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: white;
}

.overview-card.views .card-icon[b-8flq125gma] { background: linear-gradient(135deg, #3b82f6, #2563eb); }
.overview-card.users .card-icon[b-8flq125gma] { background: linear-gradient(135deg, #8b5cf6, #7c3aed); }
.overview-card.helpful .card-icon[b-8flq125gma] { background: linear-gradient(135deg, #10b981, #059669); }
.overview-card.media .card-icon[b-8flq125gma] { background: linear-gradient(135deg, #f59e0b, #d97706); }
.overview-card.searches .card-icon[b-8flq125gma] { background: linear-gradient(135deg, #6366f1, #4f46e5); }
.overview-card.failed .card-icon[b-8flq125gma] { background: linear-gradient(135deg, var(--error-500), var(--error-600)); }

.card-content[b-8flq125gma] {
    display: flex;
    flex-direction: column;
}

.card-value[b-8flq125gma] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1e293b;
}

.card-label[b-8flq125gma] {
    font-size: 0.75rem;
    color: #64748b;
    font-weight: 500;
}

/* Analytics Grid */
.analytics-grid[b-8flq125gma] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 1.5rem;
}

.analytics-card[b-8flq125gma] {
    background: white;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    overflow: hidden;
}

.card-header[b-8flq125gma] {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #e2e8f0;
    background: #f8fafc;
}

.card-header.warning[b-8flq125gma] {
    background: #fef3c7;
}

.card-header h2[b-8flq125gma] {
    font-size: 1rem;
    font-weight: 600;
    color: #1e293b;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.card-header h2 i[b-8flq125gma] {
    color: #3b82f6;
}

.card-header.warning h2 i[b-8flq125gma] {
    color: #d97706;
}

.card-body[b-8flq125gma] {
    padding: 1.25rem;
}

/* Analytics Table */
.analytics-table[b-8flq125gma] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.analytics-table th[b-8flq125gma] {
    text-align: left;
    padding: 0.75rem;
    color: #64748b;
    font-weight: 600;
    border-bottom: 1px solid #e2e8f0;
}

.analytics-table td[b-8flq125gma] {
    padding: 0.75rem;
    color: #374151;
    border-bottom: 1px solid #f1f5f9;
}

.analytics-table tr:last-child td[b-8flq125gma] {
    border-bottom: none;
}

.clickable-row[b-8flq125gma] {
    cursor: pointer;
    transition: background 0.2s;
}

.clickable-row:hover[b-8flq125gma] {
    background: #f8fafc;
}

.topic-title[b-8flq125gma] {
    font-weight: 500;
    color: #1e293b;
}

.search-query[b-8flq125gma] {
    font-family: monospace;
    color: #475569;
    font-size: 0.8125rem;
}

.media-url[b-8flq125gma] {
    font-family: monospace;
    font-size: 0.75rem;
    color: #64748b;
    max-width: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: inline-block;
}

.helpful-badge[b-8flq125gma] {
    display: inline-block;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
}

.helpful-badge.high[b-8flq125gma] {
    background: #d1fae5;
    color: #065f46;
}

.helpful-badge.medium[b-8flq125gma] {
    background: #fef3c7;
    color: #92400e;
}

.helpful-badge.low[b-8flq125gma] {
    background: #fee2e2;
    color: #991b1b;
}

.zero-results[b-8flq125gma] {
    color: var(--error-600);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

/* Empty State */
.empty-state[b-8flq125gma] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    color: #94a3b8;
    gap: 0.5rem;
}

.empty-state i[b-8flq125gma] {
    font-size: 2rem;
}

.empty-state.success[b-8flq125gma] {
    color: #10b981;
}

/* Failed Searches List */
.failed-searches-list[b-8flq125gma] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.failed-search-item[b-8flq125gma] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem;
    background: #fef2f2;
    border-radius: 6px;
    border-left: 3px solid #ef4444;
}

.failed-search-item .search-query[b-8flq125gma] {
    color: #991b1b;
}

.failed-search-item .search-count[b-8flq125gma] {
    font-size: 0.75rem;
    color: var(--error-600);
}

/* Action Hint */
.action-hint[b-8flq125gma] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem;
    background: #eff6ff;
    border-radius: 6px;
    margin-top: 1rem;
    font-size: 0.75rem;
    color: #1d4ed8;
}

.action-hint i[b-8flq125gma] {
    color: #3b82f6;
}

.action-hint.warning[b-8flq125gma] {
    background: #fef3c7;
    color: #92400e;
}

.action-hint.warning i[b-8flq125gma] {
    color: #d97706;
}

/* Feedback List */
.feedback-list[b-8flq125gma] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.feedback-item[b-8flq125gma] {
    padding: 1rem;
    background: #f8fafc;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
}

.feedback-header[b-8flq125gma] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
}

.feedback-topic[b-8flq125gma] {
    font-weight: 600;
    color: #1e293b;
}

.feedback-stats[b-8flq125gma] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.feedback-count[b-8flq125gma] {
    font-size: 0.75rem;
    color: #64748b;
}

.feedback-comments[b-8flq125gma] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.comment-item[b-8flq125gma] {
    display: flex;
    gap: 0.5rem;
    padding: 0.5rem;
    background: white;
    border-radius: 4px;
    font-size: 0.8125rem;
    color: #475569;
    font-style: italic;
}

.comment-item i[b-8flq125gma] {
    color: #94a3b8;
    flex-shrink: 0;
}

/* Stale Topics List */
.stale-topics-list[b-8flq125gma] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.stale-topic-item[b-8flq125gma] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    background: #f8fafc;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.2s;
}

.stale-topic-item:hover[b-8flq125gma] {
    background: #f1f5f9;
}

.stale-topic-info[b-8flq125gma] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.stale-topic-title[b-8flq125gma] {
    font-weight: 500;
    color: #1e293b;
}

.stale-topic-category[b-8flq125gma] {
    font-size: 0.75rem;
    color: #64748b;
}

.stale-topic-date[b-8flq125gma] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
    color: #94a3b8;
}

.version-badge[b-8flq125gma] {
    background: #e0f2fe;
    color: #0369a1;
    padding: 0.125rem 0.5rem;
    border-radius: 4px;
    font-weight: 500;
}

/* Responsive */
@media (max-width: 768px) {
    .help-analytics-page[b-8flq125gma] {
        padding: 1rem;
    }

    .page-header[b-8flq125gma] {
        flex-direction: column;
    }

    .header-actions[b-8flq125gma] {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
    }

    .date-range-selector[b-8flq125gma] {
        width: 100%;
    }

    .date-btn[b-8flq125gma] {
        flex: 1;
    }

    .btn-refresh[b-8flq125gma] {
        justify-content: center;
    }

    .overview-cards[b-8flq125gma] {
        grid-template-columns: repeat(2, 1fr);
    }

    .analytics-grid[b-8flq125gma] {
        grid-template-columns: 1fr;
    }

    .analytics-table[b-8flq125gma] {
        font-size: 0.8125rem;
    }

    .analytics-table th[b-8flq125gma],
    .analytics-table td[b-8flq125gma] {
        padding: 0.5rem;
    }
}

/* /Components/Pages/Admin/IntegrationSettingsPage.razor.rz.scp.css */
/* Header */
.content-header[b-fp7f4zamnj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.content-title[b-fp7f4zamnj] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a1a2e;
    margin: 0;
}

.content-subtitle[b-fp7f4zamnj] {
    font-size: 0.8rem;
    color: #94A3B8;
    margin: 2px 0 0;
}

.btn-header-action[b-fp7f4zamnj] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #E2E8F0;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #64748B;
    transition: all 0.2s;
}

.btn-header-action:hover[b-fp7f4zamnj] { background: #F1F5F9; color: #334155; }
.btn-header-action:disabled[b-fp7f4zamnj] { opacity: 0.5; cursor: not-allowed; }

/* Loading / Empty */
.loading-state[b-fp7f4zamnj] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 80px 20px;
    color: #64748B;
    font-size: 0.875rem;
}

.empty-state[b-fp7f4zamnj] {
    text-align: center;
    padding: 80px 20px;
    color: #94A3B8;
}

.empty-state i[b-fp7f4zamnj] { font-size: 3rem; margin-bottom: 16px; display: block; }
.empty-state h3[b-fp7f4zamnj] { font-size: 1.125rem; font-weight: 600; color: #475569; margin-bottom: 8px; }
.empty-state p[b-fp7f4zamnj] { font-size: 0.875rem; max-width: 400px; margin: 0 auto; }

/* Layout: sidebar nav + detail panel */
.integrations-layout[b-fp7f4zamnj] {
    display: grid;
    grid-template-columns: 260px 1fr;
    gap: 0;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    background: white;
    overflow: hidden;
    min-height: 580px;
}

/* Left nav */
.integration-nav[b-fp7f4zamnj] {
    background: #F8FAFC;
    border-right: 1px solid #E2E8F0;
    padding: 8px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.integration-nav-item[b-fp7f4zamnj] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 8px;
    border: none;
    background: transparent;
    cursor: pointer;
    text-align: left;
    font-family: inherit;
    color: inherit;
    transition: all 0.15s;
    width: 100%;
}

.integration-nav-item:hover[b-fp7f4zamnj] {
    background: #EFF6FF;
}

.integration-nav-item.active[b-fp7f4zamnj] {
    background: white;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    border: 1px solid #E2E8F0;
}

.nav-item-icon[b-fp7f4zamnj] {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.95rem;
    flex-shrink: 0;
}

.nav-item-info[b-fp7f4zamnj] {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

.nav-item-name[b-fp7f4zamnj] {
    font-size: 0.82rem;
    font-weight: 600;
    color: #1E293B;
    line-height: 1.3;
}

.nav-item-type[b-fp7f4zamnj] {
    font-size: 0.65rem;
    color: #94A3B8;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.nav-item-status[b-fp7f4zamnj] {
    flex-shrink: 0;
}

.status-dot[b-fp7f4zamnj] {
    display: block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.status-dot.active[b-fp7f4zamnj] {
    background: #10B981;
    box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.2);
}

.status-dot.inactive[b-fp7f4zamnj] {
    background: #CBD5E1;
}

/* Icon color variants */
.icon-verification[b-fp7f4zamnj] { background: #ECFDF5; color: #059669; }
.icon-document[b-fp7f4zamnj] { background: #EFF6FF; color: #2563EB; }
.icon-ai[b-fp7f4zamnj] { background: #F5F3FF; color: #7C3AED; }
.icon-payment[b-fp7f4zamnj] { background: #F0FDFA; color: #0D9488; }
.icon-storage[b-fp7f4zamnj] { background: #FFF7ED; color: #EA580C; }
.icon-email[b-fp7f4zamnj] { background: #FDF2F8; color: #DB2777; }

/* Right detail panel */
.integration-detail[b-fp7f4zamnj] {
    display: flex;
    flex-direction: column;
}

.detail-placeholder[b-fp7f4zamnj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #CBD5E1;
    gap: 8px;
}

.detail-placeholder i[b-fp7f4zamnj] { font-size: 2rem; }
.detail-placeholder p[b-fp7f4zamnj] { font-size: 0.85rem; margin: 0; }

/* Detail header */
.detail-header[b-fp7f4zamnj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    border-bottom: 1px solid #F1F5F9;
}

.detail-header-left[b-fp7f4zamnj] {
    display: flex;
    align-items: center;
    gap: 14px;
}

.detail-icon[b-fp7f4zamnj] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
}

.detail-title[b-fp7f4zamnj] {
    font-size: 1.15rem;
    font-weight: 700;
    color: #1E293B;
    margin: 0;
    line-height: 1.2;
}

.detail-meta[b-fp7f4zamnj] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 4px;
}

.type-pill[b-fp7f4zamnj] {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 0.6rem;
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.pill-verification[b-fp7f4zamnj] { background: #ECFDF5; color: #059669; border: 1px solid #A7F3D0; }
.pill-document[b-fp7f4zamnj] { background: #EFF6FF; color: #2563EB; border: 1px solid #BFDBFE; }
.pill-ai[b-fp7f4zamnj] { background: #F5F3FF; color: #7C3AED; border: 1px solid #DDD6FE; }
.pill-payment[b-fp7f4zamnj] { background: #F0FDFA; color: #0D9488; border: 1px solid #99F6E4; }
.pill-storage[b-fp7f4zamnj] { background: #FFF7ED; color: #EA580C; border: 1px solid #FDBA74; }
.pill-email[b-fp7f4zamnj] { background: #FDF2F8; color: #DB2777; border: 1px solid #F9A8D4; }

.test-indicator[b-fp7f4zamnj] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.7rem;
    font-weight: 500;
}

.test-pass[b-fp7f4zamnj] { color: #059669; }
.test-fail[b-fp7f4zamnj] { color: #DC2626; }

.detail-header-right[b-fp7f4zamnj] {
    flex-shrink: 0;
}

.toggle-group[b-fp7f4zamnj] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.toggle-label[b-fp7f4zamnj] {
    font-size: 0.75rem;
    font-weight: 500;
    color: #64748B;
}

.form-check-input:checked[b-fp7f4zamnj] {
    background-color: #10B981;
    border-color: #10B981;
}

/* Detail body */
.detail-body[b-fp7f4zamnj] {
    flex: 1;
    padding: 20px 24px;
    overflow-y: auto;
    transition: opacity 0.2s;
}

.body-disabled[b-fp7f4zamnj] {
    opacity: 0.5;
    pointer-events: none;
}

/* Config sections */
.config-section[b-fp7f4zamnj] {
    margin-bottom: 24px;
}

.config-section:last-child[b-fp7f4zamnj] {
    margin-bottom: 0;
}

.section-title[b-fp7f4zamnj] {
    font-size: 0.72rem;
    font-weight: 700;
    color: #94A3B8;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0 0 12px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.section-title i[b-fp7f4zamnj] {
    font-size: 0.8rem;
}

/* Environment selector */
.env-selector[b-fp7f4zamnj] {
    display: flex;
    gap: 6px;
}

.env-btn[b-fp7f4zamnj] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    background: white;
    font-size: 0.78rem;
    font-weight: 500;
    color: #64748B;
    cursor: pointer;
    transition: all 0.15s;
    font-family: inherit;
}

.env-btn:hover[b-fp7f4zamnj] {
    background: #F8FAFC;
    border-color: #CBD5E1;
}

.env-btn.env-active[b-fp7f4zamnj] {
    background: #EFF6FF;
    border-color: var(--brand-500, #0D6785);
    color: var(--brand-500, #0D6785);
    box-shadow: 0 0 0 1px var(--brand-500, #0D6785);
}

.env-btn i[b-fp7f4zamnj] {
    font-size: 0.85rem;
}

/* Config fields grid */
.config-fields[b-fp7f4zamnj] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px 20px;
}

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

.field-row.full-width[b-fp7f4zamnj] {
    grid-column: 1 / -1;
}

.field-label[b-fp7f4zamnj] {
    font-size: 0.72rem;
    font-weight: 600;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

/* Secret field */
.secret-input[b-fp7f4zamnj] {
    position: relative;
}

/* Secret inputs are display-only — this page has no write path to Secrets Manager, so they
   render read-only and empty, carrying only the field label and a placeholder. Styled to read
   as non-editable at a glance rather than as an editable field the admin forgot to fill in.
   The old .btn-eye reveal button and the padding-right that reserved room for it are gone: it
   revealed the (always-blank) DB value and so contradicted the Credential status block. */
.secret-input input[readonly][b-fp7f4zamnj] {
    background-color: #F1F5F9;
    color: #64748B;
    cursor: default;
}

.secret-input input[readonly][b-fp7f4zamnj]::placeholder {
    color: #94A3B8;
    font-style: italic;
}

.pem-textarea[b-fp7f4zamnj] {
    font-family: 'Courier New', monospace;
    font-size: 0.72rem;
    line-height: 1.4;
    resize: vertical;
    min-height: 120px;
}

/* Detail footer */
.detail-footer[b-fp7f4zamnj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 24px;
    border-top: 1px solid #F1F5F9;
    background: #FAFBFC;
}

.footer-left[b-fp7f4zamnj] {
    display: flex;
    align-items: center;
    gap: 12px;
    /* Takes the row's spare width (and is allowed to shrink) so a wrapped
       multi-line test result stays inside the footer instead of pushing
       Save Changes off the edge. */
    flex: 1 1 auto;
    min-width: 0;
    flex-wrap: wrap;
}

.btn-test-connection[b-fp7f4zamnj] {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    gap: 6px;
    padding: 7px 16px;
    font-size: 0.78rem;
    font-weight: 500;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    background: white;
    color: #475569;
    cursor: pointer;
    transition: all 0.15s;
    font-family: inherit;
}

.btn-test-connection:hover:not(:disabled)[b-fp7f4zamnj] {
    background: #F8FAFC;
    border-color: #CBD5E1;
}

.btn-test-connection:disabled[b-fp7f4zamnj] {
    opacity: 0.5;
    cursor: not-allowed;
}

.test-result-msg[b-fp7f4zamnj] {
    display: inline-flex;
    /* flex-start so the icon stays on the first line of a wrapped message */
    align-items: flex-start;
    gap: 4px;
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1.45;
    /* Test-connection failures carry provider text whose useful part is at the
       END ("User: arn:… is not authorized to perform: ses:…"). The old
       max-width + overflow:hidden + white-space:nowrap clipped it mid-string —
       and because this is a flex container, text-overflow:ellipsis never
       applied, so the cut had no "…" to hint at it. Wrap instead, matching the
       .ping-result banner on the NetSuite test page and .t-err on the webhook
       deliveries page. word-break lets an unbroken ARN wrap too. */
    flex: 1 1 auto;
    min-width: 0;
    word-break: break-word;
}

.test-result-msg > i[b-fp7f4zamnj] {
    flex-shrink: 0;
    margin-top: 0.15em;
}

.msg-success[b-fp7f4zamnj] { color: #059669; }
.msg-failure[b-fp7f4zamnj] { color: #DC2626; }

.btn-save-config[b-fp7f4zamnj] {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    gap: 6px;
    padding: 7px 20px;
    font-size: 0.8rem;
    font-weight: 600;
    border: none;
    border-radius: 8px;
    background: var(--brand-500, #0D6785);
    color: white;
    cursor: pointer;
    transition: all 0.15s;
    font-family: inherit;
}

.btn-save-config:hover:not(:disabled)[b-fp7f4zamnj] {
    filter: brightness(1.1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.btn-save-config:disabled[b-fp7f4zamnj] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Form overrides */
[b-fp7f4zamnj] .form-control-sm,
[b-fp7f4zamnj] .form-select-sm {
    font-size: 0.8rem;
    border-radius: 6px;
    border-color: #E2E8F0;
}

[b-fp7f4zamnj] .form-control-sm:focus,
[b-fp7f4zamnj] .form-select-sm:focus {
    border-color: var(--brand-500, #0D6785);
    box-shadow: 0 0 0 2px rgba(13, 103, 133, 0.1);
}

/* Credential status (AWS Secrets Manager presence check)
   Reuses the palette already established above — the same greens, ambers/reds and slates as
   .status-dot / .test-pass / .test-fail — so the block reads as part of this page rather than a
   bolted-on widget. */
.nav-secret-warn[b-fp7f4zamnj] {
    font-size: 0.72rem;
    color: #D97706;
    margin-right: 5px;
}

.secret-status[b-fp7f4zamnj] {
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    padding: 12px 14px;
    background: #FCFDFE;
}

.secret-status-head[b-fp7f4zamnj] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.secret-status-source[b-fp7f4zamnj] {
    font-size: 0.78rem;
    font-weight: 500;
    color: #334155;
    word-break: break-all;
}

.secret-status-muted[b-fp7f4zamnj] {
    font-size: 0.72rem;
    color: #94A3B8;
    line-height: 1.5;
    margin-top: 2px;
}

.btn-recheck[b-fp7f4zamnj] {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    gap: 6px;
    padding: 5px 12px;
    font-size: 0.74rem;
    font-weight: 500;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    background: white;
    color: #475569;
    cursor: pointer;
    transition: all 0.15s;
    font-family: inherit;
}

.btn-recheck:hover:not(:disabled)[b-fp7f4zamnj] {
    background: #F8FAFC;
    border-color: #CBD5E1;
}

.btn-recheck:disabled[b-fp7f4zamnj] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Caption for the expected-key list. Separated from the source line above by a rule so the
   list reads as its own answer to "which keys should exist?" rather than as trailing detail. */
.secret-keys-head[b-fp7f4zamnj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid #E2E8F0;
}

.secret-keys-title[b-fp7f4zamnj] {
    font-size: 0.74rem;
    font-weight: 600;
    color: #334155;
}

.secret-key-list[b-fp7f4zamnj] {
    list-style: none;
    margin: 8px 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.secret-key-row[b-fp7f4zamnj] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

/* Status trails the key so the exact strings form a scannable left column. */
.secret-key-row .secret-pill[b-fp7f4zamnj] {
    margin-left: auto;
}

.secret-key-label[b-fp7f4zamnj] {
    font-size: 0.72rem;
    color: #94A3B8;
}

.secret-key-name[b-fp7f4zamnj] {
    font-size: 0.72rem;
    color: #475569;
    background: #F1F5F9;
    border-radius: 4px;
    padding: 1px 6px;
    word-break: break-all;
}

/* Summary/row badge. text-transform:none because it also sits inside .section-title,
   which uppercases — and "SECRET NOT FOUND" shouts. */
.secret-pill[b-fp7f4zamnj] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.68rem;
    font-weight: 600;
    text-transform: none;
    letter-spacing: 0;
    padding: 2px 8px;
    border-radius: 10px;
    white-space: nowrap;
}

.secret-pill.secret-ok[b-fp7f4zamnj] { background: #ECFDF5; color: #059669; border: 1px solid #A7F3D0; }
.secret-pill.secret-bad[b-fp7f4zamnj] { background: #FEF2F2; color: #DC2626; border: 1px solid #FECACA; }
.secret-pill.secret-unknown[b-fp7f4zamnj] { background: #F8FAFC; color: #64748B; border: 1px solid #E2E8F0; }

.secret-status-msg[b-fp7f4zamnj] {
    font-size: 0.74rem;
    line-height: 1.5;
    margin: 10px 0 0;
    word-break: break-word;
}

.secret-status-msg.secret-ok[b-fp7f4zamnj] { color: #059669; }
.secret-status-msg.secret-bad[b-fp7f4zamnj] { color: #DC2626; }
.secret-status-msg.secret-unknown[b-fp7f4zamnj] { color: #64748B; }

/* Spinning */
@keyframes spin-b-fp7f4zamnj {
    to { transform: rotate(360deg); }
}

.spinning[b-fp7f4zamnj] {
    animation: spin-b-fp7f4zamnj 1s linear infinite;
}

/* Responsive */
@media (max-width: 900px) {
    .integrations-layout[b-fp7f4zamnj] {
        grid-template-columns: 1fr;
    }

    .integration-nav[b-fp7f4zamnj] {
        border-right: none;
        border-bottom: 1px solid #E2E8F0;
        flex-direction: row;
        overflow-x: auto;
        padding: 6px 8px;
        gap: 4px;
    }

    .integration-nav-item[b-fp7f4zamnj] {
        white-space: nowrap;
        min-width: fit-content;
    }

    .config-fields[b-fp7f4zamnj] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Admin/InvoiceBackfillPage.razor.rz.scp.css */
.backfill-page[b-hb1zheluz9] {
    padding: 1.5rem;
    max-width: 1100px;
    margin: 0 auto;
}

.page-header[b-hb1zheluz9] {
    margin-bottom: 1.25rem;
}

.back-link[b-hb1zheluz9] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.6rem;
    text-decoration: none;
    color: #475569;
    font-size: 0.875rem;
}

.back-link:hover[b-hb1zheluz9] { color: #2c5aa0; }

.page-header h1[b-hb1zheluz9] {
    margin: 0 0 0.25rem 0;
    font-size: 1.6rem;
    font-weight: 700;
}

.state-block[b-hb1zheluz9] {
    padding: 2.5rem 1rem;
    text-align: center;
    color: #6b7280;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
}

/* ── Hero (state-driven) ──────────────────────────────────────────── */

.hero[b-hb1zheluz9] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.5rem 1.75rem;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    margin-bottom: 0.85rem;
}

.hero-success[b-hb1zheluz9] {
    background: linear-gradient(135deg, #f0fdf4, #ecfdf5);
    border-color: #86efac;
}

.hero-success .hero-icon[b-hb1zheluz9] {
    background: #dcfce7;
    color: #16a34a;
}

.hero-warn[b-hb1zheluz9] {
    background: linear-gradient(135deg, #fffbeb, #fef3c7);
    border-color: #fcd34d;
}

.hero-warn .hero-icon[b-hb1zheluz9] {
    background: #fef3c7;
    color: #d97706;
}

.hero-icon[b-hb1zheluz9] {
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 12px;
    display: grid;
    place-items: center;
    font-size: 1.6rem;
    flex-shrink: 0;
}

.hero-body[b-hb1zheluz9] {
    flex: 1;
    min-width: 0;
}

.hero-headline[b-hb1zheluz9] {
    font-size: 1.15rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 0.25rem;
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.hero-count[b-hb1zheluz9] {
    font-size: 2rem;
    color: #d97706;
    font-variant-numeric: tabular-nums;
    line-height: 1;
}

.hero-success .hero-headline[b-hb1zheluz9] { color: #14532d; }

.hero-subline[b-hb1zheluz9] {
    color: #475569;
    font-size: 0.9rem;
}

/* Per-kind breakdown chips inside the hero — Diligence + Policy counts so admins
   know the run will create both kinds. Each chip suppresses itself when zero. */
.kind-breakdown[b-hb1zheluz9] {
    display: flex;
    gap: 0.5rem;
    margin-top: 0.6rem;
    flex-wrap: wrap;
}

.kind-chip[b-hb1zheluz9] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    font-size: 0.8rem;
    border: 1px solid transparent;
}

.kind-chip i[b-hb1zheluz9] { font-size: 0.85rem; line-height: 1; color: currentColor; }
.kind-chip strong[b-hb1zheluz9] { font-variant-numeric: tabular-nums; }

.kind-chip-diligence[b-hb1zheluz9] {
    background: #fffbeb;
    color: #b45309;
    border-color: #fde68a;
}

.kind-chip-policy[b-hb1zheluz9] {
    background: #f1f5f9;
    color: #475569;
    border-color: #e2e8f0;
}

.hero-actions[b-hb1zheluz9] {
    display: flex;
    gap: 0.5rem;
    flex-shrink: 0;
    flex-wrap: wrap;
}

/* ── Run-confirm panel ────────────────────────────────────────────── */

.run-panel[b-hb1zheluz9] {
    background: white;
    border: 1px solid #fcd34d;
    border-radius: 10px;
    margin-bottom: 0.85rem;
    overflow: hidden;
    animation: slideDown-b-hb1zheluz9 150ms ease-out;
}

@keyframes slideDown-b-hb1zheluz9 {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
}

.run-panel-title[b-hb1zheluz9] {
    background: #fef3c7;
    color: #6b4f0f;
    padding: 0.6rem 1rem;
    font-weight: 600;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border-bottom: 1px solid #fcd34d;
}

.run-panel-body[b-hb1zheluz9] {
    padding: 0.85rem 1rem;
}

.run-controls[b-hb1zheluz9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

/* ── Buttons (matches detail page style) ──────────────────────────── */

.btn-action[b-hb1zheluz9] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.4rem 0.85rem;
    background: white;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    color: #374151;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: border-color 120ms, color 120ms, background-color 120ms;
}

.btn-action:hover:not(:disabled)[b-hb1zheluz9] {
    border-color: #2c5aa0;
    color: #2c5aa0;
}

.btn-action:disabled[b-hb1zheluz9] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-action-primary[b-hb1zheluz9] {
    background: #2c5aa0;
    border-color: #2c5aa0;
    color: white;
}

.btn-action-primary:hover:not(:disabled)[b-hb1zheluz9] {
    background: #244b87;
    border-color: #244b87;
    color: white;
}

.btn-action i[b-hb1zheluz9] { font-size: 0.95rem; }

/* ── Detail grid (by-bank + samples) ──────────────────────────────── */

.detail-grid[b-hb1zheluz9] {
    display: grid;
    grid-template-columns: 1fr 1.3fr;
    gap: 0.85rem;
    margin-bottom: 0.85rem;
}

@media (max-width: 800px) {
    .detail-grid[b-hb1zheluz9] { grid-template-columns: 1fr; }
}

.card-section[b-hb1zheluz9] {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 1rem 1.25rem;
}

.card-section h2[b-hb1zheluz9] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #2c5aa0;
    font-weight: 700;
    margin: 0 0 0.6rem 0;
}

.card-section h2 .small[b-hb1zheluz9],
.card-section h2 .muted[b-hb1zheluz9] {
    font-weight: 500;
    color: #94a3b8;
    margin-left: 0.4rem;
    text-transform: none;
    letter-spacing: 0;
    font-size: 0.7rem;
}

.card-section table[b-hb1zheluz9] { margin-bottom: 0; }

.card-section thead th[b-hb1zheluz9] {
    background: #f8fafc;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #475569;
    font-weight: 600;
}

.mono[b-hb1zheluz9] { font-variant-numeric: tabular-nums; }

.muted[b-hb1zheluz9] { color: #6b7280; }

.link-muted[b-hb1zheluz9] {
    color: #475569;
    text-decoration: none;
    font-weight: 500;
}
.link-muted:hover[b-hb1zheluz9] { color: #2c5aa0; text-decoration: underline; }

/* ── How-it-works disclosure ─────────────────────────────────────── */

.info-section[b-hb1zheluz9] {
    background: #f8fafc;
}

.info-toggle[b-hb1zheluz9] {
    background: none;
    border: none;
    padding: 0;
    font-size: 0.875rem;
    color: #475569;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-weight: 500;
}

.info-toggle:hover[b-hb1zheluz9] { color: #2c5aa0; }

.info-content[b-hb1zheluz9] {
    margin-top: 0.85rem;
    color: #475569;
    font-size: 0.875rem;
}

.info-content ul[b-hb1zheluz9] {
    margin: 0;
    padding-left: 1.25rem;
}

.info-content li[b-hb1zheluz9] { margin-bottom: 0.4rem; }

.info-content code[b-hb1zheluz9] {
    background: #e5e7eb;
    color: #374151;
    padding: 0.05rem 0.3rem;
    border-radius: 3px;
    font-size: 0.82rem;
}

/* ── Post-run report ──────────────────────────────────────────────── */

.report-hero[b-hb1zheluz9] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.5rem 1.75rem;
    border-radius: 10px;
    margin-bottom: 0.85rem;
}

.report-hero-success[b-hb1zheluz9] {
    background: linear-gradient(135deg, #f0fdf4, #ecfdf5);
    border: 1px solid #86efac;
}

.report-hero-success .report-icon[b-hb1zheluz9] {
    background: #dcfce7;
    color: #16a34a;
}

.report-hero-warn[b-hb1zheluz9] {
    background: linear-gradient(135deg, #fef2f2, #fee2e2);
    border: 1px solid #fecaca;
}

.report-hero-warn .report-icon[b-hb1zheluz9] {
    background: #fee2e2;
    color: #dc2626;
}

.report-icon[b-hb1zheluz9] {
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 12px;
    display: grid;
    place-items: center;
    font-size: 1.6rem;
    flex-shrink: 0;
}

.report-summary[b-hb1zheluz9] {
    flex: 1;
    min-width: 0;
}

.report-headline[b-hb1zheluz9] {
    font-size: 1.15rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 0.2rem;
}

.report-subline[b-hb1zheluz9] {
    color: #475569;
    font-size: 0.9rem;
    font-variant-numeric: tabular-nums;
}

.report-subline strong[b-hb1zheluz9] {
    color: #111827;
    font-weight: 700;
}

.report-actions[b-hb1zheluz9] {
    display: flex;
    gap: 0.5rem;
    flex-shrink: 0;
    flex-wrap: wrap;
}

.error-log[b-hb1zheluz9] {
    background: #1f2937;
    color: #fca5a5;
    padding: 1rem;
    border-radius: 6px;
    font-size: 0.8rem;
    max-height: 320px;
    overflow-y: auto;
    margin: 0;
}
/* /Components/Pages/Admin/LP3SignTestPage.razor.rz.scp.css */
/* Leca Signing Test — scoped styles */

.lst-page[b-5p7beyn5m5] { padding: 0; }

.lst-header[b-5p7beyn5m5] {
    display: flex; align-items: center; gap: 16px;
    margin-bottom: 24px;
}
.lst-header-icon[b-5p7beyn5m5] {
    width: 52px; height: 52px; border-radius: 12px;
    background: linear-gradient(135deg, var(--brand-500), var(--brand-400));
    color: white; display: flex; align-items: center; justify-content: center;
    font-size: 22px; box-shadow: 0 4px 12px rgba(15,23,42,0.18);
}
.lst-header h1[b-5p7beyn5m5] { font-size: 1.6rem; font-weight: 700; color: #0F172A; margin: 0; }
.lst-header p[b-5p7beyn5m5] { font-size: 13px; color: #64748B; margin: 2px 0 0; }

/* Cards */
.lst-card[b-5p7beyn5m5] {
    background: white; border: 1px solid #E2E8F0; border-radius: 14px;
    margin-bottom: 20px; overflow: hidden;
    box-shadow: 0 2px 6px rgba(15,23,42,0.04);
}
.lst-card-header[b-5p7beyn5m5] {
    display: flex; align-items: center; gap: 12px;
    padding: 16px 20px; border-bottom: 1px solid #F1F5F9;
    background: linear-gradient(135deg, #F8FAFC 0%, #ffffff 100%);
}
.lst-card-icon[b-5p7beyn5m5] {
    width: 36px; height: 36px; border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    font-size: 16px; color: white;
    background: linear-gradient(135deg, var(--brand-500), var(--brand-400));
    flex-shrink: 0;
}
.lst-card-icon.green[b-5p7beyn5m5] { background: linear-gradient(135deg, #10B981, #34D399); }
.lst-card-title[b-5p7beyn5m5] { font-size: 14px; font-weight: 700; color: #0F172A; margin: 0; }
.lst-card-sub[b-5p7beyn5m5] { font-size: 12px; color: #64748B; margin: 2px 0 0; }
.lst-card-body[b-5p7beyn5m5] { padding: 18px 20px; }

/* Create form */
.lst-create-row[b-5p7beyn5m5] {
    display: flex; gap: 16px; align-items: flex-end; flex-wrap: wrap;
}
.lst-create-row .lst-app-picker[b-5p7beyn5m5] { flex: 1 1 320px; min-width: 0; }
.lst-create-row label[b-5p7beyn5m5] {
    display: block; font-size: 12px; font-weight: 600; color: #475569;
    margin-bottom: 6px; text-transform: uppercase; letter-spacing: 0.03em;
}
.lst-create-row select[b-5p7beyn5m5] {
    width: 100%; padding: 9px 12px; border: 1px solid #E2E8F0; border-radius: 8px;
    font-size: 14px; background: white; color: #0F172A; transition: all 0.15s;
}
.lst-create-row select:focus[b-5p7beyn5m5] { outline: none; border-color: var(--brand-400); box-shadow: 0 0 0 3px rgba(37,99,235,0.1); }
.lst-help[b-5p7beyn5m5] { font-size: 11px; color: #94A3B8; margin-top: 4px; }

.lst-btn-primary[b-5p7beyn5m5] {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    padding: 11px 22px; border: 1px solid transparent; border-radius: 10px;
    background: var(--brand-600, #004980);
    color: white; font-size: 14px; font-weight: 600; cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap; min-width: 220px;
}
.lst-btn-primary:hover:not(:disabled)[b-5p7beyn5m5] {
    background: var(--brand-700, #003760);
}
/* Disabled state: a soft filled chip with a subtle left-pointing arrow. Reads as
   "this will light up once you pick an app" rather than "this is broken". */
.lst-btn-primary:disabled[b-5p7beyn5m5] {
    background: #E2E8F0;
    color: #64748B;
    border-color: #E2E8F0;
    cursor: not-allowed;
    box-shadow: none;
    transform: none;
}
.lst-btn-primary:disabled i[b-5p7beyn5m5] { color: #94A3B8; }

.lst-btn-secondary[b-5p7beyn5m5] {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 14px; border: 1px solid #E2E8F0; border-radius: 8px;
    background: transparent; color: #64748B; font-size: 13px; font-weight: 500; cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.lst-btn-secondary:hover[b-5p7beyn5m5] { background: #F1F5F9; color: #0F172A; }

.lst-alert[b-5p7beyn5m5] {
    margin-top: 14px; padding: 10px 14px; border-radius: 8px;
    font-size: 13px; display: flex; align-items: center; gap: 8px;
}
.lst-alert.success[b-5p7beyn5m5] { background: #ECFDF5; color: #065F46; border: 1px solid #A7F3D0; }
.lst-alert.danger[b-5p7beyn5m5] { background: #FEF2F2; color: #991B1B; border: 1px solid #FECACA; }
.lst-alert.info[b-5p7beyn5m5] { background: #EFF6FF; color: #1E40AF; border: 1px solid #BFDBFE; }

/* Table */
.lst-table-wrap[b-5p7beyn5m5] { overflow-x: auto; }
.lst-table[b-5p7beyn5m5] { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 13px; }
.lst-table thead th[b-5p7beyn5m5] {
    text-align: left; font-size: 11px; font-weight: 600; text-transform: uppercase;
    letter-spacing: 0.04em; color: #94A3B8; padding: 10px 12px;
    background: #FAFBFC; border-bottom: 1px solid #E2E8F0;
}
.lst-table tbody td[b-5p7beyn5m5] {
    padding: 12px; border-bottom: 1px solid #F1F5F9; vertical-align: middle;
}
.lst-table tbody tr:hover[b-5p7beyn5m5] { background: #F8FAFC; }
.lst-table tbody tr:last-child td[b-5p7beyn5m5] { border-bottom: none; }

.lst-req-id[b-5p7beyn5m5] { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; color: #0F172A; font-weight: 600; }
.lst-req-env[b-5p7beyn5m5] { font-size: 10px; color: #94A3B8; font-family: ui-monospace, monospace; margin-top: 2px; }

.lst-badge[b-5p7beyn5m5] {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 3px 9px; border-radius: 6px;
    font-size: 11px; font-weight: 600;
}
.lst-badge.status-Completed[b-5p7beyn5m5] { background: #ECFDF5; color: #059669; }
.lst-badge.status-Declined[b-5p7beyn5m5] { background: #FEF2F2; color: #DC2626; }
.lst-badge.status-Voided[b-5p7beyn5m5] { background: #F1F5F9; color: #64748B; }
.lst-badge.status-Expired[b-5p7beyn5m5] { background: #FEF3C7; color: #D97706; }
.lst-badge.status-Sent[b-5p7beyn5m5],
.lst-badge.status-Delivered[b-5p7beyn5m5],
.lst-badge.status-PartiallySigned[b-5p7beyn5m5],
.lst-badge.status-Draft[b-5p7beyn5m5] { background: #EFF6FF; color: #2563EB; }

.lst-signer[b-5p7beyn5m5] {
    display: flex; justify-content: space-between; align-items: center;
    padding: 4px 0; border-bottom: 1px dashed #F1F5F9; font-size: 12px;
}
.lst-signer:last-child[b-5p7beyn5m5] { border-bottom: none; }
.lst-signer-name[b-5p7beyn5m5] { color: #1F2937; font-weight: 500; }
.lst-signer-routing[b-5p7beyn5m5] { font-size: 10px; color: #94A3B8; font-weight: 700; padding-right: 6px; }
.lst-signer-status[b-5p7beyn5m5] { font-size: 10px; color: #94A3B8; text-transform: uppercase; font-weight: 600; }

.lst-sign-link[b-5p7beyn5m5] {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 3px 8px; border-radius: 6px;
    background: var(--brand-500); color: white !important;
    font-size: 11px; font-weight: 600; text-decoration: none;
    transition: all 0.15s;
}
.lst-sign-link:hover[b-5p7beyn5m5] { background: var(--brand-600); }

.lst-hash[b-5p7beyn5m5] { font-family: ui-monospace, monospace; font-size: 11px; color: #0F172A; }
.lst-hash-empty[b-5p7beyn5m5] { color: #CBD5E1; }

.lst-actions[b-5p7beyn5m5] { display: flex; gap: 6px; flex-wrap: wrap; }
.lst-action-link[b-5p7beyn5m5] {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 4px 10px; border-radius: 6px;
    border: 1px solid #E2E8F0; background: white;
    font-size: 11px; color: #475569; font-weight: 500;
    text-decoration: none; cursor: pointer;
    transition: all 0.15s;
}
.lst-action-link:hover[b-5p7beyn5m5] { border-color: var(--brand-400); color: var(--brand-500); background: #F8FAFC; }

.lst-empty[b-5p7beyn5m5] {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    padding: 40px 20px; color: #94A3B8; gap: 8px;
}
.lst-empty i[b-5p7beyn5m5] { font-size: 36px; color: #CBD5E1; }
.lst-empty-text[b-5p7beyn5m5] { font-size: 13px; }

.lst-table-footer[b-5p7beyn5m5] {
    display: flex; justify-content: space-between; align-items: center;
    padding: 12px 20px; border-top: 1px solid #F1F5F9; background: #FAFBFC;
    font-size: 11px; color: #94A3B8;
}

@media (max-width: 768px) {
    .lst-create-row[b-5p7beyn5m5] { grid-template-columns: 1fr; }
    .lst-btn-primary[b-5p7beyn5m5] { width: 100%; }
}
/* /Components/Pages/Admin/Modals/BankDetailsModal.razor.rz.scp.css */
/* Thin scrollbar for modal body */
[b-cvtic7q8nr] .modal-body {
    scrollbar-width: thin;
    scrollbar-color: #CBD5E1 transparent;
}

[b-cvtic7q8nr] .modal-body::-webkit-scrollbar {
    width: 5px;
}

[b-cvtic7q8nr] .modal-body::-webkit-scrollbar-track {
    background: transparent;
}

[b-cvtic7q8nr] .modal-body::-webkit-scrollbar-thumb {
    background: #CBD5E1;
    border-radius: 4px;
}

[b-cvtic7q8nr] .modal-body::-webkit-scrollbar-thumb:hover {
    background: #94A3B8;
}
/* /Components/Pages/Admin/Modals/EmailTemplateDetailsModal.razor.rz.scp.css */
/* Bootstrap Modal Enhancements */
.modal.show[b-nixh3x4jke] {
    display: block !important;
}

/* Header/body/footer/backdrop styling comes from the global modal theme
   (wwwroot/css/modal-theme.css) — no scoped overrides needed. */

/* Tab styling comes from the global .tabs-container / .tab-button family in
   wwwroot/leca-theme.css — no scoped overrides needed. */

/* Tab Content */
.tab-content[b-nixh3x4jke] {
    min-height: 400px;
}

/* Form Labels */
.form-label[b-nixh3x4jke] {
    font-size: 14px;
    font-weight: 600;
    color: #374151;
    margin-bottom: 6px;
}

.form-label .text-danger[b-nixh3x4jke] {
    color: var(--error-600);
    font-weight: 700;
}

/* Form Controls */
.form-control[b-nixh3x4jke],
.form-select[b-nixh3x4jke] {
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 14px;
    transition: all 0.2s;
}

.form-control:focus[b-nixh3x4jke],
.form-select:focus[b-nixh3x4jke] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
    outline: none;
}

.form-control.font-monospace[b-nixh3x4jke] {
    font-family: 'Courier New', Courier, monospace;
    font-size: 13px;
}

/* Form Text */
.form-text[b-nixh3x4jke] {
    font-size: 13px;
    color: #6b7280;
    margin-top: 4px;
}

/* Form Check (Checkboxes) */
.form-check[b-nixh3x4jke] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0;
}

.form-check-input[b-nixh3x4jke] {
    width: 18px;
    height: 18px;
    border: 2px solid #d1d5db;
    border-radius: 4px;
    cursor: pointer;
}

.form-check-input:checked[b-nixh3x4jke] {
    background-color: var(--brand-600);
    border-color: var(--brand-600);
}

.form-check-label[b-nixh3x4jke] {
    font-size: 14px;
    font-weight: 500;
    color: #374151;
    cursor: pointer;
    margin-bottom: 0;
}

/* Validation Messages */
.validation-message[b-nixh3x4jke] {
    color: var(--error-600);
    font-size: 13px;
    margin-top: 4px;
    display: block;
}

/* Alert Styles */
.alert[b-nixh3x4jke] {
    border-radius: 8px;
    padding: 14px 16px;
    font-size: 14px;
    margin-bottom: 16px;
}

.alert-info[b-nixh3x4jke] {
    background: #dbeafe;
    border: 1px solid #93c5fd;
    color: #1e40af;
}

.alert-danger[b-nixh3x4jke] {
    background: #fee2e2;
    border: 1px solid #fca5a5;
    color: #991b1b;
}

.alert-light[b-nixh3x4jke] {
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    color: #374151;
}

.alert-heading[b-nixh3x4jke] {
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 8px;
}

/* Badge Styles */
.badge[b-nixh3x4jke] {
    padding: 6px 12px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    font-family: 'Courier New', monospace;
}

.badge.bg-primary[b-nixh3x4jke] {
    background: var(--brand-600) !important;
    color: white;
}

/* Preview Content */
.preview-content[b-nixh3x4jke] {
    background: white;
    padding: 16px;
    border-radius: 6px;
}

.preview-content pre[b-nixh3x4jke] {
    background: #f9fafb;
    padding: 12px;
    border-radius: 6px;
    border: 1px solid #e5e7eb;
    font-size: 13px;
}

/* Primary Button */
.btn-primary[b-nixh3x4jke] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0.55rem 1.15rem;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all var(--transition-base);
}

.btn-primary:hover:not(:disabled)[b-nixh3x4jke] {
    background: var(--brand-700, #003760);
}

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

/* Secondary Button (ghost) */
.btn-outline-secondary[b-nixh3x4jke] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0.55rem 1.15rem;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all var(--transition-base);
}

.btn-outline-secondary:hover:not(:disabled)[b-nixh3x4jke] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-outline-secondary:disabled[b-nixh3x4jke] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Small Buttons */
.btn-sm[b-nixh3x4jke] {
    padding: 6px 14px;
    font-size: 13px;
}

/* Spinner */
.spinner-border-sm[b-nixh3x4jke] {
    width: 16px;
    height: 16px;
    border-width: 2px;
}

/* Responsive Design */
@media (max-width: 768px) {
    .modal-dialog.modal-xl[b-nixh3x4jke] {
        margin: 10px;
        max-width: calc(100% - 20px);
    }

    .modal-footer[b-nixh3x4jke] {
        flex-direction: column;
        gap: 8px;
    }

    .modal-footer .btn[b-nixh3x4jke] {
        width: 100%;
        justify-content: center;
    }

    .tab-content[b-nixh3x4jke] {
        min-height: 300px;
    }
}
/* /Components/Pages/Admin/Modals/VersionCompareModal.razor.rz.scp.css */
/* ========================================
   Version Compare Modal Styles
   Git-style diff comparison design
   ======================================== */

.version-compare-modal[b-u037ih8tza] {
    display: flex;
    flex-direction: column;
    max-height: 90vh;
    overflow: hidden;
}

/* Header/footer/title/radius styling comes from the global modal theme (wwwroot/css/modal-theme.css). */

.version-compare-modal .modal-body[b-u037ih8tza] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
    background: var(--neutral-50);
}

/* Ghost secondary button (canonical modal footer style) */
.version-compare-modal .modal-footer .btn-secondary[b-u037ih8tza] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-weight: 600;
    padding: 0.55rem 1.15rem;
}

.version-compare-modal .modal-footer .btn-secondary:hover[b-u037ih8tza] {
    background: #F1F5F9;
    color: #0F172A;
}

.compare-container[b-u037ih8tza] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 500px;
}

/* Version selector header */
.compare-header[b-u037ih8tza] {
    display: flex;
    align-items: stretch;
    padding: 16px 20px;
    background: white;
    border-bottom: 1px solid var(--border-default, #e5e7eb);
    gap: 12px;
}

.version-selector[b-u037ih8tza] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px;
    background: var(--neutral-50);
    border-radius: 8px;
    border: 1px solid var(--border-default, #e5e7eb);
}

.version-selector .selector-label[b-u037ih8tza] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-secondary, #64748b);
}

.version-selector .form-select[b-u037ih8tza] {
    font-size: 13px;
    border-radius: 6px;
}

.version-selector .version-meta[b-u037ih8tza] {
    font-size: 11px;
    color: var(--text-muted, #94a3b8);
    display: flex;
    align-items: center;
    gap: 4px;
}

.left-selector[b-u037ih8tza] {
    border-left: 3px solid #ef4444;
}

.right-selector[b-u037ih8tza] {
    border-left: 3px solid var(--success-500);
}

.compare-arrow[b-u037ih8tza] {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-muted, #94a3b8);
    font-size: 24px;
}

/* Change summary stats */
.change-summary[b-u037ih8tza] {
    display: flex;
    gap: 12px;
    padding: 12px 20px;
    background: white;
    border-bottom: 1px solid var(--border-default, #e5e7eb);
}

.change-stat[b-u037ih8tza] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    background: var(--neutral-50);
    border-radius: 6px;
    font-size: 13px;
    color: var(--text-secondary, #64748b);
}

.change-stat.changed[b-u037ih8tza] {
    background: rgba(245, 158, 11, 0.1);
    color: #b45309;
}

.change-stat.changed i[b-u037ih8tza] {
    color: #f59e0b;
}

.change-stat.unchanged i[b-u037ih8tza] {
    color: var(--success-500);
}

.change-stat .stat-badge[b-u037ih8tza] {
    font-size: 11px;
    font-weight: 500;
    padding: 2px 8px;
    border-radius: 10px;
    background: var(--neutral-200);
}

.change-stat.changed .stat-badge[b-u037ih8tza] {
    background: rgba(245, 158, 11, 0.2);
    color: #92400e;
}

/* Sections */
.compare-section[b-u037ih8tza] {
    display: flex;
    flex-direction: column;
    background: white;
    margin: 0 12px 12px 12px;
    border-radius: 8px;
    border: 1px solid var(--border-default, #e5e7eb);
    overflow: hidden;
}

.compare-section:first-of-type[b-u037ih8tza] {
    margin-top: 12px;
}

.compare-section-header[b-u037ih8tza] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-default, #e5e7eb);
    font-weight: 600;
    font-size: 13px;
    color: var(--text-primary, #1e293b);
}

.compare-section-header i[b-u037ih8tza] {
    color: var(--text-muted, #94a3b8);
}

/* Content rows */
.compare-content-row[b-u037ih8tza] {
    display: flex;
    flex: 1;
    min-height: 0;
}

.compare-content-row.body-compare[b-u037ih8tza] {
    min-height: 280px;
    max-height: 350px;
}

.compare-content-row.notes-row[b-u037ih8tza] {
    min-height: auto;
}

.compare-column[b-u037ih8tza] {
    flex: 1;
    padding: 12px 16px;
    overflow: auto;
    background: var(--bg-surface, #ffffff);
    position: relative;
}

.compare-column.left[b-u037ih8tza] {
    border-right: 1px solid var(--border-default, #e5e7eb);
}

/* Column indicators */
.column-indicator[b-u037ih8tza] {
    position: absolute;
    top: 8px;
    right: 8px;
}

.indicator-badge[b-u037ih8tza] {
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 2px 6px;
    border-radius: 4px;
}

.indicator-badge.old[b-u037ih8tza] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-600);
}

.indicator-badge.new[b-u037ih8tza] {
    background: rgba(34, 197, 94, 0.1);
    color: var(--success-600);
}

/* Change highlights */
.compare-column.has-deletion[b-u037ih8tza] {
    background: linear-gradient(to right, rgba(239, 68, 68, 0.03) 0%, rgba(239, 68, 68, 0.06) 100%);
}

.compare-column.has-addition[b-u037ih8tza] {
    background: linear-gradient(to right, rgba(34, 197, 94, 0.06) 0%, rgba(34, 197, 94, 0.03) 100%);
}

/* Text content */
.compare-text[b-u037ih8tza] {
    font-size: 14px;
    color: var(--text-primary, #0f172a);
    word-break: break-word;
    padding-right: 40px;
}

.compare-notes[b-u037ih8tza] {
    font-size: 13px;
    color: var(--text-secondary, #475569);
    padding: 4px 0;
}

/* Rendered HTML view */
.compare-rendered[b-u037ih8tza] {
    font-size: 14px;
    line-height: 1.6;
    padding-top: 24px;
}

.compare-rendered img[b-u037ih8tza] {
    max-width: 100%;
    height: auto;
}

/* Code/HTML view */
.compare-code[b-u037ih8tza] {
    font-family: 'JetBrains Mono', 'Fira Code', 'Consolas', monospace;
    font-size: 12px;
    line-height: 1.6;
    margin: 0;
    padding-top: 24px;
    white-space: pre-wrap;
    word-break: break-all;
    color: var(--text-primary, #0f172a);
    background: transparent;
}

/* View toggle */
.view-toggle[b-u037ih8tza] {
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: 6px;
    overflow: hidden;
}

.view-toggle .btn[b-u037ih8tza] {
    border: none;
    border-radius: 0;
    padding: 4px 12px;
    font-size: 12px;
    color: var(--text-secondary, #64748b);
    background: transparent;
}

.view-toggle .btn:hover[b-u037ih8tza] {
    background: var(--neutral-100);
}

.view-toggle .btn.active[b-u037ih8tza] {
    background: #4f46e5;
    color: white;
}

/* Badge styles */
.compare-section-header .badge[b-u037ih8tza] {
    font-size: 10px;
    font-weight: 600;
    padding: 4px 8px;
    border-radius: 4px;
}

/* Empty state */
.empty-state-icon[b-u037ih8tza] {
    width: 64px;
    height: 64px;
    margin: 0 auto;
    background: rgba(245, 158, 11, 0.1);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.empty-state-icon i[b-u037ih8tza] {
    font-size: 28px;
    color: #f59e0b;
}

/* Custom scrollbar */
.compare-column[b-u037ih8tza]::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

.compare-column[b-u037ih8tza]::-webkit-scrollbar-track {
    background: transparent;
}

.compare-column[b-u037ih8tza]::-webkit-scrollbar-thumb {
    background: var(--neutral-300);
    border-radius: 3px;
}

.compare-column[b-u037ih8tza]::-webkit-scrollbar-thumb:hover {
    background: var(--neutral-400);
}

/* /Components/Pages/Admin/NetSuiteSyncPage.razor.rz.scp.css */
.netsuite-sync-page[b-ro6q03nput] {
    padding: 1.5rem 2rem;
    /* Widened from 1200px so the Generated batches + Failed rows tables stop clipping
       columns on standard 1080p/1440p monitors. Kept centered; ultrawide monitors
       still get comfortable line lengths on the description text via .info-toggle. */
    max-width: 1440px;
    margin: 0 auto;
}

/* Any .data-table that would overflow its card gets a horizontal scrollbar
   instead of clipping — belt-and-braces with the wider page above. */
.card-section[b-ro6q03nput] {
    overflow-x: auto;
}

/* ── Toolbar card (icon tile + title/subtitle + actions) ─────────────── */
.logs-toolbar[b-ro6q03nput] {
    display: flex; justify-content: space-between; align-items: center; gap: 16px;
    padding: 12px 16px; background: var(--bg-surface, #fff);
    border: 1px solid var(--border, #e5e7eb); border-radius: 12px;
    margin-bottom: 16px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03); flex-wrap: wrap;
}

.tb-left[b-ro6q03nput] { display: flex; align-items: flex-start; gap: 12px; min-width: 0; }

.tb-icon[b-ro6q03nput] {
    width: 40px; height: 40px; border-radius: 10px;
    background: linear-gradient(135deg, var(--brand-500, #2563eb), var(--brand-700, #1e40af));
    color: #fff; display: flex; align-items: center; justify-content: center;
    font-size: 19px; flex-shrink: 0;
    box-shadow: 0 4px 10px rgba(37, 99, 235, 0.3);
}

.tb-title[b-ro6q03nput] {
    font-size: 17px; font-weight: 700; letter-spacing: -0.3px; line-height: 1.2;
    display: inline-flex; align-items: center; gap: 0.6rem; flex-wrap: wrap;
}

.tb-subtitle[b-ro6q03nput] {
    font-size: 12.5px; color: var(--text-muted, #6b7280); margin-top: 2px;
    display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap;
}

.header-description[b-ro6q03nput] {
    font-size: 0.825rem;
    max-width: 720px;
    margin-top: 0.4rem !important;
}

.info-toggle[b-ro6q03nput] {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 1px solid var(--border, #e5e7eb);
    background: var(--bg-surface, #fff);
    color: var(--text-muted, #6b7280);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 0;
    font-size: 0.75rem;
    line-height: 1;
    transition: color .12s ease, background .12s ease, border-color .12s ease;
}

.info-toggle:hover[b-ro6q03nput] {
    color: var(--brand-600, #1d4ed8);
    border-color: var(--brand-300, #93c5fd);
    background: var(--brand-50, #eff6ff);
}

.info-toggle[aria-expanded="true"][b-ro6q03nput] {
    color: var(--brand-700, #1e40af);
    border-color: var(--brand-400, #60a5fa);
    background: var(--brand-50, #eff6ff);
}

.tb-right[b-ro6q03nput] { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; }

.scope-pill[b-ro6q03nput] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--text-muted, #6c757d);
    text-decoration: none;
}

.scope-pill:hover[b-ro6q03nput] { text-decoration: underline; }

.ping-result[b-ro6q03nput] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-radius: 6px;
    margin-bottom: 1rem;
    font-size: 0.875rem;
}

.ping-success[b-ro6q03nput] {
    background: rgba(34, 197, 94, 0.1);
    color: #166534;
    border: 1px solid rgba(34, 197, 94, 0.3);
}

.ping-fail[b-ro6q03nput] {
    background: rgba(239, 68, 68, 0.1);
    color: #991b1b;
    border: 1px solid rgba(239, 68, 68, 0.3);
}

.stat-grid[b-ro6q03nput] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.stat-card[b-ro6q03nput] {
    display: flex; align-items: flex-start; gap: 12px;
    background: var(--bg-surface, #fff);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 12px;
    padding: 14px 16px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}

.stat-card.is-warn[b-ro6q03nput] { border-color: #fde68a; background: #fffbeb; }
.stat-card.is-error[b-ro6q03nput] { border-color: #fecaca; background: #fef2f2; }

/* Clickable KPI card — same visual as .stat-card but a button element so it's
   keyboard-focusable and semantically actionable. Adds subtle hover feedback so
   the operator learns the cards are jump-links. */
.stat-card-btn[b-ro6q03nput] {
    all: unset;
    display: flex; align-items: flex-start; gap: 12px;
    background: var(--bg-surface, #fff);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 12px;
    padding: 14px 16px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
    cursor: pointer;
    transition: transform 0.08s ease, box-shadow 0.15s ease, border-color 0.15s ease;
    text-align: left;
}
.stat-card-btn:hover[b-ro6q03nput] {
    border-color: #94a3b8;
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.08);
    transform: translateY(-1px);
}
.stat-card-btn:focus-visible[b-ro6q03nput] {
    outline: 2px solid var(--brand-500, #3b82f6);
    outline-offset: 2px;
}

/* NsTaskId chip on Submitted batches — visible short-id + click-to-copy full id. */
.ns-task-chip[b-ro6q03nput] {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 6px;
    font-size: 0.7rem;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    color: #475569;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    cursor: pointer;
    user-select: none;
}
.ns-task-chip:hover[b-ro6q03nput] {
    background: #e2e8f0;
    color: #0f172a;
}

.stat-ico[b-ro6q03nput] {
    width: 38px; height: 38px; border-radius: 9px; flex: 0 0 auto;
    display: flex; align-items: center; justify-content: center; font-size: 18px;
}

.ico-blue[b-ro6q03nput] { background: #eef2ff; color: #4f46e5; }
.ico-green[b-ro6q03nput] { background: #dcfce7; color: #16a34a; }
.ico-red[b-ro6q03nput] { background: #fee2e2; color: #dc2626; }
.ico-amber[b-ro6q03nput] { background: #fef3c7; color: #d97706; }

.stat-body[b-ro6q03nput] { min-width: 0; }

.stat-val[b-ro6q03nput] { font-size: 22px; font-weight: 700; letter-spacing: -0.5px; line-height: 1.1; }

.stat-val-sm[b-ro6q03nput] {
    font-size: 1rem;
    font-weight: 600;
    font-family: ui-monospace, "SF Mono", monospace;
}

.stat-lbl[b-ro6q03nput] { font-size: 11.5px; color: var(--text-muted, #6b7280); margin-top: 1px; }

.stat-sub[b-ro6q03nput] {
    margin-top: 0.5rem;
    display: flex;
    gap: 0.4rem;
    flex-wrap: wrap;
}

.kind-pill[b-ro6q03nput] {
    font-size: 0.7rem;
    padding: 0.15rem 0.5rem;
    border-radius: 9999px;
    background: var(--bg-muted, #f3f4f6);
    color: var(--text-muted, #4b5563);
}

.kind-pill.kind-diligence[b-ro6q03nput] { background: rgba(99, 102, 241, 0.12); color: #4338ca; }
.kind-pill.kind-policy[b-ro6q03nput] { background: rgba(34, 197, 94, 0.12); color: #15803d; }

.state-block[b-ro6q03nput] {
    padding: 1.25rem;
    color: var(--text-muted, #6b7280);
}

/* ── Generated-batches filter bar (feature 014, per-invoice volume) ──── */
.batch-filter-bar[b-ro6q03nput] {
    display: flex;
    gap: 12px;
    align-items: flex-end;
    flex-wrap: wrap;
    padding: 10px 16px;
    border-bottom: 1px solid var(--border, #e5e7eb);
    background: var(--bg-muted, #fcfcfd);
}

.batch-filter-bar .form-select[b-ro6q03nput],
.batch-filter-bar .form-control[b-ro6q03nput] {
    /* min-height rather than a fixed height so Bootstrap's form-select-sm
       padding + line-height + dropdown-arrow bg can render "All" fully
       instead of vertically clipping the "A". 34px is the smallest value
       that keeps the "A" glyph un-clipped across Chrome/Firefox/Edge with
       the 13px font-size + Bootstrap's 0.25rem vertical padding. */
    min-height: 34px;
    font-size: 13px;
    border-radius: 8px;
    line-height: 1.4;
}

.state-block-ok[b-ro6q03nput] {
    color: #15803d;
    border-color: rgba(34, 197, 94, 0.4);
    background: rgba(34, 197, 94, 0.06);
}

.card-section[b-ro6q03nput] {
    background: var(--bg-surface, #fff);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 1.5rem;
}

/* ── Card header (icon + title, sits inside the card it titles) ──────── */
.card-header[b-ro6q03nput] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 12px 16px;
    background: var(--bg-muted, #f9fafb);
    border-bottom: 1px solid var(--border, #e5e7eb);
}

.card-header-left[b-ro6q03nput] { display: flex; align-items: center; gap: 10px; }

.card-header-icon[b-ro6q03nput] {
    width: 26px; height: 26px; border-radius: 7px; flex-shrink: 0;
    display: flex; align-items: center; justify-content: center; font-size: 13px;
}

.card-header-title[b-ro6q03nput] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--text-primary, #1f2937);
}

.data-table[b-ro6q03nput] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.data-table th[b-ro6q03nput], .data-table td[b-ro6q03nput] {
    padding: 0.6rem 0.85rem;
    text-align: left;
    border-bottom: 1px solid var(--border, #e5e7eb);
    vertical-align: top;
}

.data-table th[b-ro6q03nput] {
    background: var(--bg-muted, #f9fafb);
    font-weight: 600;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted, #6b7280);
}

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

.error-cell[b-ro6q03nput] {
    color: #991b1b;
    font-family: ui-monospace, "SF Mono", monospace;
    font-size: 0.75rem;
    max-width: 360px;
    word-break: break-word;
}

.row-actions[b-ro6q03nput] {
    display: flex;
    gap: 0.35rem;
    justify-content: flex-end;
}

.backfill-banner[b-ro6q03nput] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 1rem;
    align-items: center;
    padding: 1rem 1.25rem;
    background: rgba(245, 158, 11, 0.08);
    border: 1px solid rgba(245, 158, 11, 0.3);
    border-left: 4px solid #f59e0b;
    border-radius: 8px;
    margin: 1.5rem 0;
}

.backfill-banner-icon[b-ro6q03nput] {
    font-size: 1.5rem;
    color: #b45309;
}

.backfill-banner-body[b-ro6q03nput] { min-width: 0; }

.backfill-banner-headline[b-ro6q03nput] {
    font-size: 1rem;
    margin-bottom: 0.4rem;
}

.backfill-banner-sub[b-ro6q03nput] {
    font-size: 0.825rem;
    color: var(--text-muted, #6b7280);
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
}

.backfill-banner-result[b-ro6q03nput] {
    margin-top: 0.6rem;
    font-size: 0.85rem;
    color: #15803d;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.4rem 0.75rem;
    background: rgba(34, 197, 94, 0.1);
    border-radius: 6px;
}

.backfill-banner-actions[b-ro6q03nput] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
}

.backfill-cap-label[b-ro6q03nput] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted, #6b7280);
}

.backfill-cap-input[b-ro6q03nput] {
    width: 6rem;
    height: 32px;
    padding: 0 0.6rem;
    font-size: 0.875rem;
    border: 1px solid var(--border, #cbd5e1);
    border-radius: 8px;
    font-family: ui-monospace, "SF Mono", monospace;
    text-align: right;
    box-sizing: border-box;
    transition: border-color .12s ease, box-shadow .12s ease;
}

.backfill-cap-input:focus[b-ro6q03nput] {
    outline: none;
    border-color: var(--brand-500, #2563eb);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}

.backfill-banner-actions .btn[b-ro6q03nput] { height: 32px; }

.resolve-summary[b-ro6q03nput] { flex: 1; min-width: 0; }

.resolve-list[b-ro6q03nput] {
    margin: 0.5rem 0 0;
    padding-left: 1.25rem;
    font-size: 0.8rem;
    font-family: ui-monospace, "SF Mono", monospace;
    color: var(--text-muted, #4b5563);
}

.resolve-list li[b-ro6q03nput] { margin: 0.15rem 0; }
.resolve-list code[b-ro6q03nput] { font-size: inherit; padding: 0 0.2rem; background: rgba(0,0,0,0.04); border-radius: 3px; }
.resolve-list-fail[b-ro6q03nput] { color: #991b1b; }
.resolve-list-fail code[b-ro6q03nput] { background: rgba(239, 68, 68, 0.1); }

.resolve-tip[b-ro6q03nput] {
    margin-top: 0.5rem;
    font-size: 0.8rem;
    color: var(--text-muted, #4b5563);
}

/* ── NetSuite catalog diagnostic ──────────────────────────────────────── */
.catalog-details[b-ro6q03nput] {
    margin-top: 0.6rem;
    font-size: 0.8rem;
}

.catalog-details summary[b-ro6q03nput] {
    cursor: pointer;
    padding: 0.25rem 0;
    font-weight: 500;
    color: var(--text-muted, #4b5563);
}

.catalog-table[b-ro6q03nput] {
    width: 100%;
    margin-top: 0.4rem;
    border-collapse: collapse;
    font-size: 0.75rem;
    font-family: ui-monospace, "SF Mono", monospace;
}

.catalog-table th[b-ro6q03nput], .catalog-table td[b-ro6q03nput] {
    padding: 0.3rem 0.5rem;
    border-bottom: 1px solid var(--border, #e5e7eb);
    text-align: left;
    vertical-align: top;
}

.catalog-table th[b-ro6q03nput] {
    background: var(--bg-muted, #f9fafb);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted, #6b7280);
    font-size: 0.7rem;
}

.catalog-table tr:last-child td[b-ro6q03nput] { border-bottom: none; }
.catalog-table code[b-ro6q03nput] { background: rgba(0,0,0,0.04); padding: 0 0.25rem; border-radius: 3px; }
.catalog-table .muted[b-ro6q03nput] { color: var(--text-muted, #9ca3af); }

.badge-info[b-ro6q03nput] {
    display: inline-flex;
    align-items: center;
    padding: 0.1rem 0.5rem;
    background: rgba(59, 130, 246, 0.12);
    color: #1e40af;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 500;
}

.badge-warn[b-ro6q03nput] {
    display: inline-flex;
    align-items: center;
    padding: 0.1rem 0.5rem;
    background: rgba(245, 158, 11, 0.12);
    color: #92400e;
    border: 1px solid rgba(245, 158, 11, 0.3);
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 500;
}

.subsidiary-error-panel[b-ro6q03nput] {
    margin-top: 0.6rem;
    padding: 0.9rem 1.1rem;
    background: rgba(239, 68, 68, 0.06);
    border: 1px solid rgba(239, 68, 68, 0.3);
    border-left: 4px solid #dc2626;
    border-radius: 8px;
    font-size: 0.85rem;
}

.subsidiary-error-headline[b-ro6q03nput] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
    color: #991b1b;
    margin-bottom: 0.4rem;
}

.subsidiary-error-detail[b-ro6q03nput] {
    font-family: ui-monospace, "SF Mono", monospace;
    font-size: 0.75rem;
    color: #7f1d1d;
    background: rgba(239, 68, 68, 0.08);
    padding: 0.5rem 0.75rem;
    border-radius: 4px;
    margin-bottom: 0.6rem;
    word-break: break-word;
}

.subsidiary-error-detail code[b-ro6q03nput] {
    background: transparent;
    color: inherit;
    padding: 0;
}

.subsidiary-error-fix[b-ro6q03nput] {
    color: var(--text-primary, #374151);
    line-height: 1.5;
}

.subsidiary-error-steps[b-ro6q03nput] {
    margin: 0.4rem 0 0.6rem 0;
    padding-left: 1.4rem;
}

.subsidiary-error-steps li[b-ro6q03nput] {
    margin: 0.2rem 0;
}

.subsidiary-empty-note[b-ro6q03nput] {
    margin-top: 0.6rem;
    padding: 0.65rem 0.9rem;
    background: rgba(59, 130, 246, 0.06);
    border: 1px solid rgba(59, 130, 246, 0.25);
    border-radius: 6px;
    font-size: 0.8rem;
    color: #1e3a8a;
    display: flex;
    gap: 0.5rem;
    align-items: flex-start;
}

.subsidiary-error-actions[b-ro6q03nput] {
    display: flex;
    gap: 0.6rem;
    flex-wrap: wrap;
    margin: 0.6rem 0;
}

.ns-deep-link[b-ro6q03nput] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.45rem 0.85rem;
    background: var(--bg-surface, #fff);
    color: var(--text-primary, #374151);
    border: 1px solid var(--border, #d1d5db);
    border-radius: 6px;
    font-size: 0.825rem;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.15s;
}

.ns-deep-link:hover[b-ro6q03nput] {
    background: var(--bg-hover, #f3f4f6);
    text-decoration: none;
    color: var(--text-primary, #374151);
}

.ns-deep-link-primary[b-ro6q03nput] {
    background: #2563eb;
    color: #fff;
    border-color: #2563eb;
}

.ns-deep-link-primary:hover[b-ro6q03nput] {
    background: #1d4ed8;
    color: #fff;
}

.ns-deep-link-hint[b-ro6q03nput] {
    opacity: 0.75;
    font-weight: 400;
    font-size: 0.85em;
}

.ns-deep-link-out[b-ro6q03nput] {
    opacity: 0.6;
    font-size: 0.8em;
    margin-left: 0.1rem;
}

.subsidiary-error-detailed-steps[b-ro6q03nput] {
    margin-top: 0.6rem;
    font-size: 0.825rem;
}

.subsidiary-error-detailed-steps summary[b-ro6q03nput] {
    cursor: pointer;
    color: var(--text-muted, #6b7280);
    font-weight: 500;
    padding: 0.25rem 0;
}

.subsidiary-error-detailed-steps[open] summary[b-ro6q03nput] {
    color: var(--text-primary, #374151);
}

.badge-warn code[b-ro6q03nput] {
    background: rgba(245, 158, 11, 0.18);
    padding: 0 0.2rem;
    border-radius: 3px;
    font-size: 0.9em;
}

/* ── Current configuration table (catalog panel "what's mapped" view) ── */
.catalog-roles-table td[b-ro6q03nput],
.catalog-roles-table th[b-ro6q03nput] {
    vertical-align: middle;
}

.role-field-name[b-ro6q03nput] {
    color: var(--text-muted, #9ca3af);
    font-size: 0.7rem;
    font-family: ui-monospace, "SF Mono", monospace;
    margin-left: 0.35rem;
}

.role-status-pill[b-ro6q03nput] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.15rem 0.55rem;
    border-radius: 9999px;
    font-size: 0.7rem;
    font-weight: 600;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
    letter-spacing: 0.01em;
    white-space: nowrap;
}

.role-status-pill .bi[b-ro6q03nput] {
    font-size: 0.85em;
}

.role-status-ok[b-ro6q03nput] {
    background: rgba(34, 197, 94, 0.15);
    color: #166534;
    border: 1px solid rgba(34, 197, 94, 0.35);
}

.role-status-pending[b-ro6q03nput] {
    background: rgba(59, 130, 246, 0.12);
    color: #1e40af;
    border: 1px solid rgba(59, 130, 246, 0.35);
}

.role-status-warn[b-ro6q03nput] {
    background: rgba(245, 158, 11, 0.15);
    color: #92400e;
    border: 1px solid rgba(245, 158, 11, 0.4);
}

.role-status-fail[b-ro6q03nput] {
    background: rgba(239, 68, 68, 0.12);
    color: #991b1b;
    border: 1px solid rgba(239, 68, 68, 0.35);
}

.role-status-muted[b-ro6q03nput] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--text-muted, #6b7280);
    border: 1px solid rgba(107, 114, 128, 0.25);
}

/* Suggested-role highlighting in the catalog items table */
.suggestion-count[b-ro6q03nput] {
    color: #15803d;
}

.catalog-row-suggested[b-ro6q03nput] {
    background: rgba(34, 197, 94, 0.06);
}

.catalog-row-suggested code[b-ro6q03nput] {
    background: rgba(34, 197, 94, 0.14) !important;
    color: #166534;
}

.role-pill[b-ro6q03nput] {
    display: inline-block;
    padding: 0.15rem 0.55rem;
    background: rgba(34, 197, 94, 0.15);
    color: #166534;
    border: 1px solid rgba(34, 197, 94, 0.35);
    border-radius: 9999px;
    font-size: 0.7rem;
    font-weight: 600;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
    letter-spacing: 0.01em;
    white-space: nowrap;
}

.badge-success[b-ro6q03nput] {
    display: inline-flex;
    align-items: center;
    padding: 0.1rem 0.5rem;
    background: rgba(34, 197, 94, 0.14);
    color: #166534;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 500;
}

.catalog-apply-row[b-ro6q03nput] {
    margin-top: 0.65rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.apply-result-msg[b-ro6q03nput] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.85rem;
}

.apply-result-ok[b-ro6q03nput] { color: #15803d; }
.apply-result-fail[b-ro6q03nput] { color: #991b1b; }
.apply-result-msg .muted[b-ro6q03nput] { color: var(--text-muted, #6b7280); }

/* ── Health pill ──────────────────────────────────────────────────────── */
.health-pill[b-ro6q03nput] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.2rem 0.65rem 0.2rem 0.5rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 600;
    border: 1px solid transparent;
    line-height: 1;
}

.health-pill .health-dot[b-ro6q03nput] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: currentColor;
    flex-shrink: 0;
}

.health-pill.health-ok[b-ro6q03nput]      { background: rgba(34, 197, 94, 0.12); color: #15803d; border-color: rgba(34, 197, 94, 0.3); }
.health-pill.health-pending[b-ro6q03nput] { background: rgba(59, 130, 246, 0.12); color: #1d4ed8; border-color: rgba(59, 130, 246, 0.3); }
.health-pill.health-warn[b-ro6q03nput]    { background: rgba(245, 158, 11, 0.12); color: #b45309; border-color: rgba(245, 158, 11, 0.3); }
.health-pill.health-bad[b-ro6q03nput]     { background: rgba(239, 68, 68, 0.12); color: #b91c1c; border-color: rgba(239, 68, 68, 0.3); }

.health-pill.health-pending .health-dot[b-ro6q03nput] {
    animation: health-pulse-b-ro6q03nput 1.6s ease-in-out infinite;
}

@keyframes health-pulse-b-ro6q03nput {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.35; }
}

/* ── iOS-style switch toggle (Auto-refresh) ──────────────────────────── */
.switch-toggle[b-ro6q03nput] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    user-select: none;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--text-muted, #4b5563);
    margin: 0;
    padding: 0 0.25rem;
    height: 36px;
}

.switch-toggle input[type="checkbox"][b-ro6q03nput] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
    width: 0;
    height: 0;
}

.switch-toggle .switch-track[b-ro6q03nput] {
    position: relative;
    width: 34px;
    height: 20px;
    background: var(--border-medium, #cbd5e1);
    border-radius: 9999px;
    transition: background .18s ease;
    flex-shrink: 0;
}

.switch-toggle .switch-thumb[b-ro6q03nput] {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 16px;
    height: 16px;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
    transition: transform .18s ease;
}

.switch-toggle input:checked + .switch-track[b-ro6q03nput] {
    background: var(--brand-500, #2563eb);
}

.switch-toggle input:checked + .switch-track .switch-thumb[b-ro6q03nput] {
    transform: translateX(14px);
}

.switch-toggle input:focus-visible + .switch-track[b-ro6q03nput] {
    outline: 2px solid var(--brand-400, #60a5fa);
    outline-offset: 2px;
}

.switch-toggle:hover .switch-track:not(:has(input:checked))[b-ro6q03nput] {
    background: var(--text-disabled, #94a3b8);
}

.switch-toggle .switch-label[b-ro6q03nput] {
    white-space: nowrap;
    color: var(--text-primary, #1f2937);
}

.stat-sub-muted[b-ro6q03nput] {
    font-size: 0.75rem;
    color: var(--text-muted, #6b7280);
}

/* ── Failed rows filter bar ───────────────────────────────────────────── */
.filter-bar[b-ro6q03nput] {
    display: flex; gap: 12px; align-items: flex-end; flex-wrap: wrap;
    background: var(--bg-surface, #fff);
    border: 1px solid var(--border, #e5e7eb); border-radius: 12px; padding: 14px 16px;
    margin-bottom: 0.75rem;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}

.f-field[b-ro6q03nput] { display: flex; flex-direction: column; gap: 4px; flex: 1 1 180px; min-width: 130px; }
.f-field.f-sm[b-ro6q03nput] { flex: 0 0 160px; }
.f-field.f-search[b-ro6q03nput] { flex: 1 1 240px; }

.f-field label[b-ro6q03nput] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted, #6b7280);
}

/* Bootstrap's own .form-select-sm is never overridden app-wide, but leca-theme's
   .form-control rule (10px 14px padding, 14px font) fights .form-control-sm for the
   Search box — force both back to the same height/type size here so the row lines up. */
.filter-bar .form-select[b-ro6q03nput],
.filter-bar .form-control[b-ro6q03nput] {
    height: 34px;
    font-size: 13px;
    border-radius: 8px;
}

.f-search-input[b-ro6q03nput] { position: relative; display: flex; align-items: center; }

.f-search-input .bi-search[b-ro6q03nput] {
    position: absolute;
    left: 10px;
    font-size: 12px;
    color: var(--text-muted, #9ca3af);
    pointer-events: none;
}

.f-search-input input.form-control[b-ro6q03nput] { padding-left: 30px; }

.f-actions[b-ro6q03nput] { display: flex; align-items: center; }

/* ── Selection + error trigger ───────────────────────────────────────── */
.select-cell[b-ro6q03nput] {
    width: 32px;
    text-align: center;
}

.select-cell input[type="checkbox"][b-ro6q03nput] { cursor: pointer; margin: 0; }

.row-selected[b-ro6q03nput] { background: rgba(59, 130, 246, 0.06); }

.error-trigger[b-ro6q03nput] {
    background: transparent;
    border: 0;
    padding: 0;
    margin: 0;
    color: inherit;
    font: inherit;
    text-align: left;
    cursor: pointer;
    text-decoration: underline dotted;
    text-decoration-color: rgba(153, 27, 27, 0.4);
    text-underline-offset: 3px;
}

.error-trigger:hover[b-ro6q03nput] { color: #7f1d1d; text-decoration-color: currentColor; }

/* ── Pagination bar ──────────────────────────────────────────────────── */
.pagination-bar[b-ro6q03nput] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.6rem 0.85rem;
    border-top: 1px solid var(--border, #e5e7eb);
    background: var(--bg-muted, #f9fafb);
    font-size: 0.8rem;
    color: var(--text-muted, #6b7280);
}

.pagination-actions[b-ro6q03nput] { display: flex; gap: 0.4rem; }

/* ── Error detail modal ──────────────────────────────────────────────── */
.error-detail-meta[b-ro6q03nput] {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 0.4rem 1rem;
    font-size: 0.85rem;
    margin: 0 0 1rem;
}

.error-detail-meta dt[b-ro6q03nput] {
    color: var(--text-muted, #6b7280);
    font-weight: 600;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.error-detail-meta dd[b-ro6q03nput] { margin: 0; }

.error-detail-text[b-ro6q03nput] {
    background: #0f172a;
    color: #f1f5f9;
    padding: 0.85rem 1rem;
    border-radius: 6px;
    font-size: 0.78rem;
    font-family: ui-monospace, "SF Mono", monospace;
    white-space: pre-wrap;
    word-break: break-word;
    max-height: 280px;
    overflow: auto;
}
/* /Components/Pages/Admin/NetSuiteTestPage.razor.rz.scp.css */
/* NetSuite RESTlet Test — design aligned with /admin/netsuite-sync
   (NetSuiteSyncPage.razor.css): toolbar header, card-section cards with
   ico-* tiles, data-table config, ping-result banners, role-status pills.
   Buttons are the global theme's flat btn btn-sm variants (button canon). */

.netsuite-test-page[b-k20e2frlbv] {
    padding: 1.5rem 2rem;
    max-width: 1200px;
    margin: 0 auto;
}

/* ── Toolbar card (icon tile + title/subtitle + actions) ─────────────── */
.logs-toolbar[b-k20e2frlbv] {
    display: flex; justify-content: space-between; align-items: center; gap: 16px;
    padding: 12px 16px; background: var(--bg-surface, #fff);
    border: 1px solid var(--border, #e5e7eb); border-radius: 12px;
    margin-bottom: 16px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03); flex-wrap: wrap;
}

.tb-left[b-k20e2frlbv] { display: flex; align-items: flex-start; gap: 12px; min-width: 0; }

.tb-icon[b-k20e2frlbv] {
    width: 40px; height: 40px; border-radius: 10px;
    background: linear-gradient(135deg, var(--brand-500, #2563eb), var(--brand-700, #1e40af));
    color: #fff; display: flex; align-items: center; justify-content: center;
    font-size: 19px; flex-shrink: 0;
    box-shadow: 0 4px 10px rgba(37, 99, 235, 0.3);
}

.tb-title[b-k20e2frlbv] {
    font-size: 17px; font-weight: 700; letter-spacing: -0.3px; line-height: 1.2;
    display: inline-flex; align-items: center; gap: 0.6rem; flex-wrap: wrap;
}

.tb-subtitle[b-k20e2frlbv] {
    font-size: 12.5px; color: var(--text-muted, #6b7280); margin-top: 2px;
    display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap;
}

.tb-right[b-k20e2frlbv] { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; }

.scope-pill[b-k20e2frlbv] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--text-muted, #6c757d);
    text-decoration: none;
}

.scope-pill:hover[b-k20e2frlbv] { text-decoration: underline; }

/* ── Health pill (readiness) ─────────────────────────────────────────── */
.health-pill[b-k20e2frlbv] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.2rem 0.65rem 0.2rem 0.5rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 600;
    border: 1px solid transparent;
    line-height: 1;
}

.health-pill .health-dot[b-k20e2frlbv] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: currentColor;
    flex-shrink: 0;
}

.health-pill.health-ok[b-k20e2frlbv]   { background: rgba(34, 197, 94, 0.12); color: #15803d; border-color: rgba(34, 197, 94, 0.3); }
.health-pill.health-warn[b-k20e2frlbv] { background: rgba(245, 158, 11, 0.12); color: #b45309; border-color: rgba(245, 158, 11, 0.3); }

/* ── Card sections ───────────────────────────────────────────────────── */
.card-section[b-k20e2frlbv] {
    background: var(--bg-surface, #fff);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 1.5rem;
}

.card-header[b-k20e2frlbv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 12px 16px;
    background: var(--bg-muted, #f9fafb);
    border-bottom: 1px solid var(--border, #e5e7eb);
}

.card-header-left[b-k20e2frlbv] { display: flex; align-items: center; gap: 10px; }

.card-header-icon[b-k20e2frlbv] {
    width: 26px; height: 26px; border-radius: 7px; flex-shrink: 0;
    display: flex; align-items: center; justify-content: center; font-size: 13px;
}

.card-header-title[b-k20e2frlbv] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--text-primary, #1f2937);
}

.ico-blue[b-k20e2frlbv] { background: #eef2ff; color: #4f46e5; }
.ico-green[b-k20e2frlbv] { background: #dcfce7; color: #16a34a; }
.ico-amber[b-k20e2frlbv] { background: #fef3c7; color: #d97706; }

.stat-sub-muted[b-k20e2frlbv] {
    font-size: 0.75rem;
    color: var(--text-muted, #6b7280);
}

/* ── Config table ────────────────────────────────────────────────────── */
.data-table[b-k20e2frlbv] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.data-table td[b-k20e2frlbv] {
    padding: 0.6rem 0.85rem;
    text-align: left;
    border-bottom: 1px solid var(--border, #e5e7eb);
    vertical-align: middle;
}

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

.cfg-label[b-k20e2frlbv] {
    font-weight: 600;
    color: var(--text-muted, #6b7280);
    width: 280px;
}

.data-table code[b-k20e2frlbv] {
    background: rgba(0, 0, 0, 0.04);
    padding: 0.1rem 0.35rem;
    border-radius: 4px;
    font-size: 0.78rem;
    font-family: ui-monospace, "SF Mono", monospace;
    word-break: break-all;
}

/* ── Step bodies ─────────────────────────────────────────────────────── */
.step-body[b-k20e2frlbv] {
    padding: 1rem 1.25rem 1.25rem;
}

.step-desc[b-k20e2frlbv] {
    font-size: 0.825rem;
    color: var(--text-muted, #6b7280);
    max-width: 720px;
    margin-bottom: 0.85rem;
}

.step-desc code[b-k20e2frlbv] {
    background: rgba(0, 0, 0, 0.04);
    padding: 0 0.25rem;
    border-radius: 3px;
    font-size: 0.9em;
}

.step-input-row[b-k20e2frlbv] {
    display: flex;
    gap: 12px;
    align-items: flex-end;
    flex-wrap: wrap;
    margin-bottom: 0.25rem;
}

.f-field[b-k20e2frlbv] { display: flex; flex-direction: column; gap: 4px; }
.f-field.f-sm[b-k20e2frlbv] { flex: 0 0 320px; min-width: 220px; }

.f-field label[b-k20e2frlbv] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted, #6b7280);
}

.step-input-row .form-control[b-k20e2frlbv] {
    height: 34px;
    font-size: 13px;
    border-radius: 8px;
    font-family: ui-monospace, "SF Mono", monospace;
}

.step-input-row .btn[b-k20e2frlbv] { height: 34px; }

/* ── Result banners (same shape as the sync page's ping result) ─────── */
.ping-result[b-k20e2frlbv] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-radius: 6px;
    margin-top: 0.85rem;
    font-size: 0.875rem;
}

.ping-result code[b-k20e2frlbv] {
    background: rgba(0, 0, 0, 0.06);
    padding: 0 0.25rem;
    border-radius: 3px;
    font-size: 0.9em;
}

.ping-success[b-k20e2frlbv] {
    background: rgba(34, 197, 94, 0.1);
    color: #166534;
    border: 1px solid rgba(34, 197, 94, 0.3);
}

.ping-fail[b-k20e2frlbv] {
    background: rgba(239, 68, 68, 0.1);
    color: #991b1b;
    border: 1px solid rgba(239, 68, 68, 0.3);
}

/* ── Status pills (config verdicts) ──────────────────────────────────── */
.role-status-pill[b-k20e2frlbv] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.15rem 0.55rem;
    border-radius: 9999px;
    font-size: 0.7rem;
    font-weight: 600;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
    letter-spacing: 0.01em;
    white-space: nowrap;
}

.role-status-pill .bi[b-k20e2frlbv] { font-size: 0.85em; }

.role-status-ok[b-k20e2frlbv] {
    background: rgba(34, 197, 94, 0.15);
    color: #166534;
    border: 1px solid rgba(34, 197, 94, 0.35);
}

.role-status-warn[b-k20e2frlbv] {
    background: rgba(245, 158, 11, 0.15);
    color: #92400e;
    border: 1px solid rgba(245, 158, 11, 0.4);
}

.role-status-fail[b-k20e2frlbv] {
    background: rgba(239, 68, 68, 0.12);
    color: #991b1b;
    border: 1px solid rgba(239, 68, 68, 0.35);
}
/* /Components/Pages/Admin/OrganizationsPage.razor.rz.scp.css */
/* ========================================
   Organizations Page — Modern Card Layout
   ======================================== */

.org-page[b-t7f3m7ntk4] {
    padding: 0;
}

/* Header */
.org-header[b-t7f3m7ntk4] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 20px;
    flex-wrap: wrap;
    gap: 16px;
}

.org-title[b-t7f3m7ntk4] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
}

.org-subtitle[b-t7f3m7ntk4] {
    font-size: 13px;
    color: #64748B;
    margin: 4px 0 0;
}

.org-header-stats[b-t7f3m7ntk4] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.stat-chip[b-t7f3m7ntk4] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-size: 13px;
}

.stat-chip i[b-t7f3m7ntk4] { color: var(--brand-500); font-size: 14px; }
.stat-chip-success i[b-t7f3m7ntk4] { color: #059669; }
.stat-chip-info i[b-t7f3m7ntk4] { color: #2563EB; }
.stat-chip-warning i[b-t7f3m7ntk4] { color: #D97706; }
.stat-chip-value[b-t7f3m7ntk4] { font-weight: 700; color: #1F2937; }
.stat-chip-label[b-t7f3m7ntk4] { color: #64748B; font-weight: 500; }

/* Banks / Agencies Tabs */
.org-tabs[b-t7f3m7ntk4] {
    display: flex;
    gap: 6px;
    margin-bottom: 16px;
    border-bottom: 1.5px solid #E2E8F0;
}

.org-tab[b-t7f3m7ntk4] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 18px;
    border: none;
    border-bottom: 2.5px solid transparent;
    background: transparent;
    color: #64748B;
    font-size: 13.5px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    margin-bottom: -1.5px;
}

.org-tab:hover[b-t7f3m7ntk4] { color: var(--brand-500); }
.org-tab.active[b-t7f3m7ntk4] { color: var(--brand-500); border-bottom-color: var(--brand-500); }
.org-tab i[b-t7f3m7ntk4] { font-size: 14px; }

.org-tab-hint[b-t7f3m7ntk4] {
    margin: 0;
    color: #64748B;
    font-size: 12.5px;
    max-width: 640px;
}

.org-tab-hint-standalone[b-t7f3m7ntk4] {
    max-width: none;
    margin: -8px 2px 16px;
}

.org-status-internal[b-t7f3m7ntk4] { background: #EEF2FF; color: #4F46E5; }

/* Filter Bar */
.org-filter-bar[b-t7f3m7ntk4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 14px 18px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    margin-bottom: 20px;
    flex-wrap: wrap;
}

.filter-left[b-t7f3m7ntk4], .filter-right[b-t7f3m7ntk4] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.status-chips[b-t7f3m7ntk4] {
    display: flex;
    gap: 6px;
}

.status-chip[b-t7f3m7ntk4] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 14px;
    border: 1.5px solid #E2E8F0;
    border-radius: 8px;
    background: white;
    color: #64748B;
    font-size: 12.5px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.status-chip:hover[b-t7f3m7ntk4] { border-color: var(--brand-400); color: var(--brand-500); }
.status-chip.active[b-t7f3m7ntk4] { background: var(--brand-500); color: white; border-color: var(--brand-500); }
.status-chip-active.active[b-t7f3m7ntk4] { background: #059669; border-color: #059669; color: white; }
.status-chip-inactive.active[b-t7f3m7ntk4] { background: #DC2626; border-color: #DC2626; color: white; }
.status-chip i[b-t7f3m7ntk4] { font-size: 12px; }
.chip-count[b-t7f3m7ntk4] { opacity: 0.8; font-weight: 700; }

.sort-select[b-t7f3m7ntk4] {
    padding: 6px 12px;
    border: 1.5px solid #E2E8F0;
    border-radius: 8px;
    font-size: 12.5px;
    font-weight: 500;
    color: #475569;
    background: white;
    cursor: pointer;
}

.sort-select:focus[b-t7f3m7ntk4] { outline: none; border-color: var(--brand-400); }

.search-box[b-t7f3m7ntk4] {
    position: relative;
    min-width: 220px;
}

.search-box i[b-t7f3m7ntk4] {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #94A3B8;
    font-size: 14px;
    pointer-events: none;
}

.search-box input[b-t7f3m7ntk4] {
    padding: 7px 12px 7px 36px;
    border: 1.5px solid #E2E8F0;
    border-radius: 8px;
    font-size: 13px;
    width: 100%;
    color: #1F2937;
    transition: all 0.2s;
}

.search-box input:focus[b-t7f3m7ntk4] { outline: none; border-color: var(--brand-400); box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.06); }
.search-box input[b-t7f3m7ntk4]::placeholder { color: #94A3B8; }

.btn-add-org[b-t7f3m7ntk4] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 18px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}

.btn-add-org:hover[b-t7f3m7ntk4] { background: var(--brand-700, #003760); }

/* Card Grid */
.org-grid[b-t7f3m7ntk4] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));
    gap: 16px;
}

.org-card[b-t7f3m7ntk4] {
    background: white;
    border: 1.5px solid #E2E8F0;
    border-radius: 12px;
    padding: 20px;
    cursor: pointer;
    transition: all 0.2s;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.org-card:hover[b-t7f3m7ntk4] {
    border-color: var(--brand-400);
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.08);
    transform: translateY(-2px);
}

.org-card-inactive[b-t7f3m7ntk4] {
    opacity: 0.7;
    background: #FAFAFA;
}

.org-card-inactive:hover[b-t7f3m7ntk4] { opacity: 1; }

/* Card Header */
.org-card-header[b-t7f3m7ntk4] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.org-avatar[b-t7f3m7ntk4] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-weight: 700;
    color: white;
    flex-shrink: 0;
}

.org-card-title[b-t7f3m7ntk4] {
    flex: 1;
    min-width: 0;
}

.org-card-title h3[b-t7f3m7ntk4] {
    font-size: 15px;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.org-card-title h3.org-card-title-wrap[b-t7f3m7ntk4] {
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.3;
}

.org-card-badges[b-t7f3m7ntk4] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 3px;
    flex-wrap: wrap;
}

.org-code[b-t7f3m7ntk4] {
    font-size: 11px;
    color: #0D9488;
    background: #F0FDFA;
    padding: 2px 8px;
    border-radius: 4px;
    font-weight: 600;
}

.org-status[b-t7f3m7ntk4] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
}

.org-status-active[b-t7f3m7ntk4] { background: #ECFDF5; color: #059669; }
.org-status-inactive[b-t7f3m7ntk4] { background: #FEF2F2; color: #DC2626; }
.org-status i[b-t7f3m7ntk4] { font-size: 11px; }

/* Card Stats */
.org-card-stats[b-t7f3m7ntk4] {
    display: flex;
    gap: 16px;
    padding: 10px 14px;
    background: #F8FAFC;
    border-radius: 8px;
}

.org-stat[b-t7f3m7ntk4] {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12.5px;
}

.org-stat i[b-t7f3m7ntk4] { color: #94A3B8; font-size: 13px; }
.org-stat-value[b-t7f3m7ntk4] { font-weight: 700; color: #1F2937; }
.org-stat-label[b-t7f3m7ntk4] { color: #94A3B8; }

/* Card Contact */
.org-card-contact[b-t7f3m7ntk4] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.org-contact-item[b-t7f3m7ntk4] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    color: #64748B;
}

.org-contact-item i[b-t7f3m7ntk4] { font-size: 12px; color: #94A3B8; }

/* Card Actions */
.org-card-actions[b-t7f3m7ntk4] {
    display: flex;
    gap: 8px;
    padding-top: 10px;
    border-top: 1px solid #F1F5F9;
    margin-top: auto;
}

.btn-card-action[b-t7f3m7ntk4] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid #E2E8F0;
    border-radius: 7px;
    background: white;
    color: #64748B;
    cursor: pointer;
    font-size: 14px;
    transition: all 0.2s;
}

.btn-card-action:hover[b-t7f3m7ntk4] { background: #F1F5F9; color: #1F2937; border-color: #CBD5E1; }
.btn-card-danger:hover[b-t7f3m7ntk4] { background: #FEF2F2; color: #DC2626; border-color: #FECACA; }
.btn-card-success:hover[b-t7f3m7ntk4] { background: #ECFDF5; color: #059669; border-color: #A7F3D0; }

/* Disabled Delete CTA (bank has users/clients/applications) — muted, no hover, cursor default. */
.btn-card-action:disabled[b-t7f3m7ntk4],
.btn-card-action:disabled:hover[b-t7f3m7ntk4] {
    background: #F8FAFC;
    color: #CBD5E1;
    border-color: #E2E8F0;
    cursor: not-allowed;
}

.org-card-view-hint[b-t7f3m7ntk4] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    margin-left: auto;
    font-size: 12px;
    font-weight: 600;
    color: #94A3B8;
    opacity: 0;
    transition: opacity 0.2s, color 0.2s;
}

.org-card:hover .org-card-view-hint[b-t7f3m7ntk4] { opacity: 1; color: var(--brand-500); }

/* Loading & Empty */
.org-loading[b-t7f3m7ntk4] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 60px 0;
    color: #64748B;
}

.org-empty[b-t7f3m7ntk4] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 60px 0;
    text-align: center;
}

.org-empty i[b-t7f3m7ntk4] { font-size: 48px; color: #CBD5E1; }
.org-empty h3[b-t7f3m7ntk4] { font-size: 16px; color: #475569; margin: 0; }
.org-empty p[b-t7f3m7ntk4] { font-size: 13px; color: #94A3B8; margin: 0; }

/* ========================================
   Confirm Dialog (SweetAlert-style)
   ======================================== */

.modal-overlay[b-t7f3m7ntk4] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1.5rem;
}

/* Confirm dialogs use the global .confirm-modal pattern (wwwroot/css/modal-theme.css). */

/* Responsive */
@media (max-width: 768px) {
    .org-filter-bar[b-t7f3m7ntk4] { flex-direction: column; align-items: stretch; }
    .filter-left[b-t7f3m7ntk4], .filter-right[b-t7f3m7ntk4] { flex-direction: column; }
    .search-box[b-t7f3m7ntk4] { min-width: auto; }
    .org-grid[b-t7f3m7ntk4] { grid-template-columns: 1fr; }
    .org-card-stats[b-t7f3m7ntk4] { flex-direction: column; gap: 8px; }
}
/* /Components/Pages/Admin/PlaceholderCatalogPage.razor.rz.scp.css */
.pc-page[b-c5jbum54yi] { padding: 0; }
.pc-title[b-c5jbum54yi] { font-size: 1.5rem; font-weight: 700; color: #1F2937; margin: 0; }
.pc-subtitle[b-c5jbum54yi] { font-size: 13px; color: #64748B; margin: 4px 0 0; }

.pc-search[b-c5jbum54yi] { position: relative; }
.pc-search i[b-c5jbum54yi] { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: #94A3B8; font-size: 13px; pointer-events: none; }
.pc-search input[b-c5jbum54yi] { width: 100%; padding: 8px 12px 8px 34px; border: 1px solid #E2E8F0; border-radius: 8px; font-size: 13px; background: white; }
.pc-search input:focus[b-c5jbum54yi] { outline: none; border-color: var(--brand-400); }

.pc-btn-add[b-c5jbum54yi] { display: inline-flex; align-items: center; gap: 6px; padding: 8px 16px; background: var(--brand-600, #004980); color: white; border: none; border-radius: 8px; font-size: 13px; font-weight: 600; cursor: pointer; transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease; }
.pc-btn-add:hover[b-c5jbum54yi] { background: var(--brand-700, #003760); }

.pc-table-wrap[b-c5jbum54yi] { background: white; border: 1px solid #E2E8F0; border-radius: 12px; overflow: auto; }
.pc-table-wrap table[b-c5jbum54yi] { font-size: 13px; margin: 0; }
.pc-table-wrap thead th[b-c5jbum54yi] { font-size: 11px; text-transform: uppercase; color: #94A3B8; font-weight: 600; padding: 12px; border-bottom: 1px solid #E2E8F0; background: #FAFBFC; position: sticky; top: 0; z-index: 1; }
.pc-table-wrap tbody td[b-c5jbum54yi] { padding: 12px; vertical-align: middle; }

.pc-type-badge[b-c5jbum54yi] { display: inline-block; padding: 3px 8px; border-radius: 5px; font-size: 11px; font-weight: 600; }
.pc-type-badge.type-application[b-c5jbum54yi] { background: #DBEAFE; color: #1E40AF; }
.pc-type-badge.type-policy[b-c5jbum54yi] { background: #DCFCE7; color: #166534; }
.pc-type-badge.type-bank[b-c5jbum54yi] { background: #FEF3C7; color: #92400E; }
.pc-type-badge.type-static[b-c5jbum54yi] { background: #F3F4F6; color: #4B5563; }
.pc-type-badge.type-computed[b-c5jbum54yi] { background: #F3E8FF; color: #6B21A8; }
.pc-type-badge.type-template[b-c5jbum54yi] { background: #CFFAFE; color: #0E7490; }
.pc-type-badge.type-calculated[b-c5jbum54yi] { background: #FEE2E2; color: #991B1B; }
.pc-type-badge.type-fee[b-c5jbum54yi] { background: #FEF3C7; color: #854D0E; }

.pc-action-btn[b-c5jbum54yi] { display: inline-flex; align-items: center; justify-content: center; position: relative; width: 28px; height: 28px; border-radius: 7px; border: 1.5px solid #E2E8F0; background: white; cursor: pointer; font-size: 12px; transition: all 0.15s; }
.pc-badge-count[b-c5jbum54yi] { position: absolute; top: -6px; right: -6px; min-width: 16px; height: 16px; padding: 0 4px; border-radius: 8px; background: var(--brand-500); color: white; font-size: 9px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; }
.pc-edit[b-c5jbum54yi] { color: var(--brand-500); }
.pc-edit:hover[b-c5jbum54yi] { border-color: var(--brand-400); background: #EFF6FF; }
.pc-delete[b-c5jbum54yi] { color: #94A3B8; }
.pc-delete:hover[b-c5jbum54yi] { border-color: #FECACA; background: #FEF2F2; color: #DC2626; }

/* ===== Test & Preview tester modal ===== */
.pct-modal .modal-content[b-c5jbum54yi] { border-radius: 16px; overflow: hidden; }
.pct-head[b-c5jbum54yi] { background: #fff; padding: 1.25rem 1.5rem 1rem; border-bottom: 1px solid #EEF2F6; display: flex; align-items: center; gap: 0.9rem; }
.pct-head .modal-title[b-c5jbum54yi] { font-size: 1.05rem; font-weight: 700; color: #0F172A; margin: 0; }
.pct-body[b-c5jbum54yi] { padding: 22px 24px; max-height: 82vh; overflow-y: auto; }
.pct-intro[b-c5jbum54yi] { font-size: 12.5px; color: #64748B; line-height: 1.55; margin: 0 0 18px; }

.pct-field[b-c5jbum54yi] { margin-bottom: 15px; }
.pct-label[b-c5jbum54yi] { display: block; font-size: 10.5px; text-transform: uppercase; letter-spacing: .04em; font-weight: 700; color: #94A3B8; margin-bottom: 6px; }
.pct-select[b-c5jbum54yi], .pct-file[b-c5jbum54yi] { width: 100%; padding: 9px 12px; border: 1px solid #E2E8F0; border-radius: 10px; font-size: 13px; background: #fff; color: #1F2937; transition: border-color .15s, box-shadow .15s; }
.pct-select:focus[b-c5jbum54yi], .pct-file:focus[b-c5jbum54yi] { outline: none; border-color: var(--brand-400); box-shadow: 0 0 0 3px rgba(99,102,241,.12); }
.pct-select:disabled[b-c5jbum54yi] { background: #F8FAFC; color: #94A3B8; cursor: not-allowed; }
.pct-filehint[b-c5jbum54yi] { font-size: 11.5px; color: #94A3B8; margin-top: 5px; }

/* segmented source toggle */
.pct-seg[b-c5jbum54yi] { display: flex; width: 100%; background: #F1F5F9; border-radius: 11px; padding: 4px; gap: 4px; }
.pct-seg input[b-c5jbum54yi] { position: absolute; opacity: 0; pointer-events: none; }
.pct-seg label[b-c5jbum54yi] { flex: 1; text-align: center; padding: 8px 10px; border-radius: 8px; font-size: 12.5px; font-weight: 600; color: #64748B; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 6px; transition: all .15s; margin: 0; }
.pct-seg input:checked + label[b-c5jbum54yi] { background: #fff; color: var(--brand-500); box-shadow: 0 1px 3px rgba(15,23,42,.14); }

/* read-only effective-state chip */
.pct-state[b-c5jbum54yi] { display: flex; align-items: center; gap: 9px; padding: 8px 12px; background: #F8FAFC; border: 1px dashed #E2E8F0; border-radius: 9px; }
.pct-state-badge[b-c5jbum54yi] { font-size: 11px; font-weight: 700; color: #3730A3; background: #E0E7FF; padding: 2px 9px; border-radius: 6px; }
.pct-state-hint[b-c5jbum54yi] { font-size: 11.5px; color: #94A3B8; }

/* action buttons */
.pct-actions[b-c5jbum54yi] { display: flex; gap: 8px; flex-wrap: wrap; }
.pct-btn[b-c5jbum54yi] { display: inline-flex; align-items: center; gap: 7px; padding: 9px 15px; border-radius: 10px; font-size: 13px; font-weight: 600; cursor: pointer; border: 1px solid transparent; transition: all .15s; }
.pct-btn:disabled[b-c5jbum54yi] { opacity: .5; cursor: not-allowed; }
.pct-btn-primary[b-c5jbum54yi] { background: var(--brand-600, #004980); color: #fff; }
.pct-btn-primary:not(:disabled):hover[b-c5jbum54yi] { background: var(--brand-700, #003760); }
.pct-btn-ghost[b-c5jbum54yi] { background: #fff; color: #475569; border-color: #E2E8F0; }
.pct-btn-ghost:not(:disabled):hover[b-c5jbum54yi] { border-color: var(--brand-400); color: var(--brand-500); background: #F5F3FF; }
.pct-spin[b-c5jbum54yi] { width: 14px; height: 14px; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; display: inline-block; animation: pct-spin-b-c5jbum54yi .6s linear infinite; }
@keyframes pct-spin-b-c5jbum54yi { to { transform: rotate(360deg); } }

/* error alert */
.pct-alert-err[b-c5jbum54yi] { margin-top: 14px; padding: 10px 14px; border-radius: 10px; font-size: 12.5px; background: #FEF2F2; color: #B91C1C; border: 1px solid #FECACA; }

/* results / stats panel */
.pct-result[b-c5jbum54yi] { margin-top: 16px; border: 1px solid #E2E8F0; border-radius: 12px; overflow: hidden; }
.pct-result-head[b-c5jbum54yi] { display: flex; align-items: center; gap: 8px; padding: 11px 14px; background: #FAFBFC; flex-wrap: wrap; border-bottom: 1px solid #F1F5F9; }
.pct-stat[b-c5jbum54yi] { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 700; padding: 4px 11px; border-radius: 999px; }
.pct-stat .dot[b-c5jbum54yi] { width: 7px; height: 7px; border-radius: 50%; }
.pct-stat-total[b-c5jbum54yi] { background: #EEF2FF; color: #3730A3; }
.pct-stat-ok[b-c5jbum54yi] { background: #DCFCE7; color: #166534; } .pct-stat-ok .dot[b-c5jbum54yi] { background: #22C55E; }
.pct-stat-warn[b-c5jbum54yi] { background: #FEF3C7; color: #92400E; } .pct-stat-warn .dot[b-c5jbum54yi] { background: #F59E0B; }
.pct-stat-bad[b-c5jbum54yi] { background: #FEE2E2; color: #991B1B; } .pct-stat-bad .dot[b-c5jbum54yi] { background: #EF4444; }
.pct-toggle[b-c5jbum54yi] { margin-left: auto; background: none; border: none; color: var(--brand-500); font-size: 12.5px; font-weight: 600; cursor: pointer; padding: 0; }
.pct-toggle:hover[b-c5jbum54yi] { text-decoration: underline; }

.pct-bd[b-c5jbum54yi] { max-height: 34vh; overflow-y: auto; }
.pct-bd table[b-c5jbum54yi] { width: 100%; font-size: 12.5px; border-collapse: collapse; }
.pct-bd thead th[b-c5jbum54yi] { position: sticky; top: 0; background: #F8FAFC; text-align: left; font-size: 10px; text-transform: uppercase; letter-spacing: .03em; color: #94A3B8; font-weight: 700; padding: 8px 14px; border-bottom: 1px solid #E2E8F0; }
.pct-bd tbody td[b-c5jbum54yi] { padding: 7px 14px; border-bottom: 1px solid #F1F5F9; vertical-align: middle; }
.pct-bd tbody tr:last-child td[b-c5jbum54yi] { border-bottom: none; }
.pct-tok[b-c5jbum54yi] { font-family: var(--bs-font-monospace, ui-monospace, monospace); font-size: 11.5px; color: #4338CA; background: #EEF2FF; padding: 1px 6px; border-radius: 5px; }
.pct-pill[b-c5jbum54yi] { display: inline-flex; align-items: center; gap: 5px; font-size: 10.5px; font-weight: 700; padding: 2px 9px; border-radius: 999px; white-space: nowrap; }
.pct-pill .dot[b-c5jbum54yi] { width: 6px; height: 6px; border-radius: 50%; }
.pct-pill-ok[b-c5jbum54yi] { background: #DCFCE7; color: #166534; } .pct-pill-ok .dot[b-c5jbum54yi] { background: #22C55E; }
.pct-pill-warn[b-c5jbum54yi] { background: #FEF3C7; color: #92400E; } .pct-pill-warn .dot[b-c5jbum54yi] { background: #F59E0B; }
.pct-pill-bad[b-c5jbum54yi] { background: #FEE2E2; color: #991B1B; } .pct-pill-bad .dot[b-c5jbum54yi] { background: #EF4444; }
.pct-val[b-c5jbum54yi] { color: #475569; max-width: 190px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pct-val.blank[b-c5jbum54yi] { color: #CBD5E1; font-style: italic; }
.pct-bd-hint[b-c5jbum54yi] { font-size: 11.5px; color: #94A3B8; padding: 9px 14px; background: #FAFBFC; border-top: 1px solid #F1F5F9; line-height: 1.5; }

/* preview pane */
.pct-preview-head[b-c5jbum54yi] { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.pct-preview[b-c5jbum54yi] { border: 1px solid #E2E8F0; border-radius: 12px; overflow: hidden; height: 74vh; background: #F1F5F9; }
.pct-preview iframe[b-c5jbum54yi] { width: 100%; height: 100%; border: 0; }
.pct-empty[b-c5jbum54yi] { height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; color: #94A3B8; gap: 10px; text-align: center; padding: 20px; }
.pct-empty i[b-c5jbum54yi] { font-size: 2.6rem; opacity: .45; }

/* footer */
.pct-foot[b-c5jbum54yi] { padding: 1rem 1.5rem; border-top: 1px solid #EEF2F6; background: #FAFBFC; display: flex; justify-content: flex-end; gap: 0.6rem; }
.pct-btn-close[b-c5jbum54yi] { padding: 0.55rem 1.15rem; background: transparent; color: #64748B; border: 1px solid #E2E8F0; border-radius: 10px; font-size: 13px; font-weight: 600; cursor: pointer; transition: all .15s; }
.pct-btn-close:hover[b-c5jbum54yi] { background: #F1F5F9; color: #0F172A; }
/* /Components/Pages/Admin/PolicyDetailPage.razor.rz.scp.css */
/* ========================================
   Policy Detail Page Styles
   ======================================== */

/* Loading & Error States */
.loading-container[b-9r6424lww3],
.error-container[b-9r6424lww3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 1rem;
    padding: 2rem;
    text-align: center;
}

.loading-container p[b-9r6424lww3] {
    color: var(--text-muted, #64748b);
    font-size: 0.9375rem;
}

.error-container .error-icon[b-9r6424lww3] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: var(--danger-50);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.5rem;
}

.error-container .error-icon i[b-9r6424lww3] {
    font-size: 2.5rem;
    color: var(--danger-500);
}

.error-container h2[b-9r6424lww3] {
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    margin: 0;
}

.error-container p[b-9r6424lww3] {
    color: var(--text-muted, #64748b);
    margin: 0 0 1.5rem 0;
}

/* Skeleton loading state */
@keyframes admin-policy-skel-pulse-b-9r6424lww3 {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.skel-block[b-9r6424lww3] {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: admin-policy-skel-pulse-b-9r6424lww3 1.5s ease-in-out infinite;
    border-radius: 4px;
}

.policy-skeleton[b-9r6424lww3] {
    padding: 1rem;
}

.skel-policy-header[b-9r6424lww3] {
    background: #fff;
    border-radius: 12px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    border: 1px solid var(--border-light);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.skel-back-row[b-9r6424lww3] {
    margin-bottom: 1.25rem;
}

.skel-header-content[b-9r6424lww3] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1.5rem;
}

.skel-header-left[b-9r6424lww3] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex: 1;
    min-width: 0;
}

.skel-policy-icon[b-9r6424lww3] {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    flex-shrink: 0;
}

.skel-title-section[b-9r6424lww3] {
    flex: 1;
}

.skel-action-btn[b-9r6424lww3] {
    width: 100px;
    height: 36px;
    border-radius: 8px;
}

.skel-tabs-row[b-9r6424lww3] {
    display: flex;
    gap: 0.5rem;
    padding: 1rem;
    background: var(--neutral-50);
    border-radius: var(--radius-lg);
    border: 1px solid var(--border-light);
    margin-bottom: 1.25rem;
}

.skel-overview-grid[b-9r6424lww3] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
    background: #fff;
    border-radius: var(--radius-lg);
    border: 1px solid var(--border-light);
    padding: 1.5rem;
}

.skel-detail-card[b-9r6424lww3] {
    background: var(--neutral-50);
    border: 1px solid var(--border-light);
    border-radius: 10px;
    padding: 1.25rem;
}

@media (max-width: 767.98px) {
    .skel-overview-grid[b-9r6424lww3] {
        grid-template-columns: 1fr;
    }

    .skel-header-content[b-9r6424lww3] {
        flex-direction: column;
    }
}

/* Header */
.policy-detail-header[b-9r6424lww3] {
    background: white;
    border-radius: 12px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    border: 1px solid var(--border-light);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.header-nav[b-9r6424lww3] {
    margin-bottom: 1rem;
}

.back-link[b-9r6424lww3] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary, #64748b);
    text-decoration: none;
    transition: color 0.15s ease;
}

.back-link:hover[b-9r6424lww3] {
    color: var(--brand-600);
}

.back-link i[b-9r6424lww3] {
    font-size: 1rem;
}

.header-content[b-9r6424lww3] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1.5rem;
}

.header-left[b-9r6424lww3] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 1rem;
    flex: 1;
    min-width: 0;
}

.policy-icon[b-9r6424lww3] {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-600) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.25);
}

.policy-icon i[b-9r6424lww3] {
    font-size: 1.5rem;
    color: white;
}

.policy-title-section[b-9r6424lww3] {
    flex: 1;
    min-width: 0;
}

.policy-number-row[b-9r6424lww3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.5rem;
}

.policy-number-row h1[b-9r6424lww3] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary, #0f172a);
    margin: 0;
}

.status-badge[b-9r6424lww3] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.status-badge i[b-9r6424lww3] {
    font-size: 0.7rem;
}

.status-active[b-9r6424lww3] {
    background: var(--success-100);
    color: var(--success-700);
}

.status-pending[b-9r6424lww3] {
    background: var(--warning-100);
    color: var(--warning-700);
}

.status-expired[b-9r6424lww3] {
    background: var(--neutral-100);
    color: var(--neutral-600);
}

.status-cancelled[b-9r6424lww3] {
    background: var(--danger-100);
    color: var(--danger-700);
}

.status-inactive[b-9r6424lww3] {
    background: var(--neutral-200);
    color: var(--neutral-600);
}

.policy-meta[b-9r6424lww3] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.meta-item[b-9r6424lww3] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
    color: var(--text-secondary, #64748b);
}

.meta-item i[b-9r6424lww3] {
    font-size: 1rem;
}

.meta-item.text-warning[b-9r6424lww3] {
    color: var(--warning-600);
}

.meta-divider[b-9r6424lww3] {
    width: 1px;
    height: 14px;
    background: var(--border-medium);
}

.header-actions[b-9r6424lww3] {
    display: flex;
    gap: 0.625rem;
    flex-shrink: 0;
}

.btn-secondary[b-9r6424lww3] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-secondary:hover:not(:disabled)[b-9r6424lww3] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-secondary:disabled[b-9r6424lww3] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-danger-outline:hover:not(:disabled)[b-9r6424lww3] {
    background: var(--danger-50);
    border-color: var(--danger-300);
    color: var(--error-600);
}

.btn-success-outline:hover:not(:disabled)[b-9r6424lww3] {
    background: var(--success-50);
    border-color: var(--success-300);
    color: var(--success-600);
}

.btn-primary[b-9r6424lww3] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.25rem;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: var(--radius-pill, 9999px);
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-primary i[b-9r6424lww3] {
    font-size: 0.9375rem;
}

.btn-primary:hover:not(:disabled)[b-9r6424lww3] {
    background: var(--brand-700, #003760);
}

.btn-primary:disabled[b-9r6424lww3] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Tabs — modern segmented pill control */
.policy-tabs[b-9r6424lww3] {
    display: inline-flex;
    gap: 4px;
    padding: 6px;
    background: var(--neutral-50);
    border-radius: var(--radius-lg);
    border: 1px solid var(--border-light);
    margin-bottom: 1.25rem;
    max-width: 100%;
    overflow-x: auto;
}

.policy-tab[b-9r6424lww3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.125rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary, #64748b);
    background: transparent;
    border: none;
    border-radius: var(--radius-md);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.policy-tab:hover[b-9r6424lww3] {
    color: var(--brand-600);
    background: rgba(15, 23, 42, 0.04);
}

.policy-tab.active[b-9r6424lww3] {
    color: var(--brand-600);
    background: white;
    box-shadow: var(--shadow-sm);
}

.policy-tab i[b-9r6424lww3] {
    font-size: 1rem;
}

.tab-badge[b-9r6424lww3] {
    padding: 0.125rem 0.5rem;
    font-size: 0.75rem;
    font-weight: 600;
    background: var(--brand-100);
    color: var(--brand-700);
    border-radius: 10px;
}

.policy-tab.active .tab-badge[b-9r6424lww3] {
    background: var(--brand-500);
    color: white;
}

/* Content */
.policy-content[b-9r6424lww3] {
    background: white;
    border-radius: var(--radius-lg);
    border: 1px solid var(--border-light);
    padding: 1.5rem;
    min-height: 400px;
}

/* Overview Layout — a simple vertical stack of full-width cards */
.overview-stack[b-9r6424lww3] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.detail-card[b-9r6424lww3] {
    background: var(--neutral-50);
    border: 1px solid var(--border-light);
    border-radius: 10px;
    overflow: hidden;
}

.detail-card .card-header[b-9r6424lww3] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.875rem 1.25rem;
    background: white;
    border-bottom: 1px solid var(--border-light);
}

.detail-card .card-header i[b-9r6424lww3] {
    font-size: 1rem;
    color: var(--brand-500);
}

.detail-card .card-header h3[b-9r6424lww3] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    margin: 0;
}

.detail-card .card-body[b-9r6424lww3] {
    padding: 1.25rem;
}

.detail-grid[b-9r6424lww3] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 1.25rem;
}

.card-footer[b-9r6424lww3] {
    padding: 0.75rem 1.25rem;
    border-top: 1px solid var(--border-light);
    background: white;
}

.audit-footer[b-9r6424lww3] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-muted, #94a3b8);
}

.audit-item[b-9r6424lww3] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
}

.audit-separator[b-9r6424lww3] {
    color: var(--border-medium);
}

.detail-item[b-9r6424lww3] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.detail-label[b-9r6424lww3] {
    font-size: 0.75rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    color: var(--text-muted, #94a3b8);
}

.detail-value[b-9r6424lww3] {
    font-size: 0.9375rem;
    color: var(--text-primary, #0f172a);
}

.detail-value.text-warning[b-9r6424lww3] {
    color: var(--warning-600);
}

.status-badge-sm[b-9r6424lww3] {
    display: inline-flex;
    padding: 0.25rem 0.625rem;
    font-size: 0.75rem;
    font-weight: 600;
    border-radius: 6px;
}

.warning-badge[b-9r6424lww3] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.125rem 0.5rem;
    font-size: 0.6875rem;
    font-weight: 600;
    background: var(--warning-100);
    color: var(--warning-700);
    border-radius: 4px;
}

.description-section[b-9r6424lww3],
.notes-section[b-9r6424lww3] {
    margin: 0;
}

.description-section h4[b-9r6424lww3],
.notes-section h4[b-9r6424lww3] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    margin: 0 0 0.5rem 0;
}

.description-section p[b-9r6424lww3],
.notes-section p[b-9r6424lww3] {
    font-size: 0.9375rem;
    color: var(--text-primary, #0f172a);
    line-height: 1.6;
    margin: 0;
    white-space: pre-wrap;
}

/* Documents Section */
.documents-section[b-9r6424lww3],
.applications-section[b-9r6424lww3] {
    min-height: 300px;
}

.section-header[b-9r6424lww3] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1.5rem;
}

.section-title h3[b-9r6424lww3] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    margin: 0 0 0.25rem 0;
}

.section-title p[b-9r6424lww3] {
    font-size: 0.875rem;
    color: var(--text-muted, #94a3b8);
    margin: 0;
}

/* Empty State */
.empty-state[b-9r6424lww3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    text-align: center;
    background: var(--neutral-50);
    border-radius: 10px;
    border: 1px dashed var(--border-light);
}

.empty-icon[b-9r6424lww3] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--neutral-100);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
}

.empty-icon i[b-9r6424lww3] {
    font-size: 1.75rem;
    color: var(--text-muted, #94a3b8);
}

.empty-state h4[b-9r6424lww3] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    margin: 0 0 0.25rem 0;
}

.empty-state p[b-9r6424lww3] {
    font-size: 0.875rem;
    color: var(--text-muted, #94a3b8);
    margin: 0 0 1rem 0;
}

/* Documents Grid */
.documents-grid[b-9r6424lww3] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 1rem;
}

.document-card[b-9r6424lww3] {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
    padding: 1rem;
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 10px;
    transition: all 0.15s ease;
}

.document-card:hover[b-9r6424lww3] {
    border-color: var(--brand-200);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.doc-icon[b-9r6424lww3] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.doc-type-insurance[b-9r6424lww3] {
    background: var(--success-100);
    color: var(--success-600);
}

.doc-type-legal[b-9r6424lww3] {
    background: var(--brand-100);
    color: var(--brand-600);
}

.doc-type-financial[b-9r6424lww3] {
    background: var(--warning-100);
    color: var(--warning-600);
}

.doc-type-environmental[b-9r6424lww3] {
    background: var(--success-50);
    color: var(--success-600);
}

.doc-type-other[b-9r6424lww3] {
    background: var(--neutral-100);
    color: var(--neutral-600);
}

.doc-info[b-9r6424lww3] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.doc-name[b-9r6424lww3] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.doc-meta[b-9r6424lww3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    font-size: 0.75rem;
}

.doc-type[b-9r6424lww3] {
    padding: 0.125rem 0.5rem;
    background: var(--neutral-100);
    color: var(--text-secondary, #64748b);
    border-radius: 4px;
}

.doc-size[b-9r6424lww3] {
    color: var(--text-muted, #94a3b8);
}

.signature-badge[b-9r6424lww3] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.125rem 0.5rem;
    background: var(--brand-50);
    color: var(--brand-600);
    border-radius: 4px;
}

.doc-date[b-9r6424lww3] {
    font-size: 0.75rem;
    color: var(--text-muted, #94a3b8);
}

.doc-actions[b-9r6424lww3] {
    display: flex;
    gap: 0.375rem;
}

.btn-icon[b-9r6424lww3] {
    width: 32px;
    height: 32px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 1px solid var(--border-light);
    border-radius: 6px;
    color: var(--text-secondary, #64748b);
    cursor: pointer;
    transition: all 0.15s ease;
    text-decoration: none;
}

.btn-icon:hover[b-9r6424lww3] {
    background: var(--neutral-50);
    border-color: var(--neutral-300);
    color: var(--text-primary, #0f172a);
}

.btn-icon.btn-danger:hover[b-9r6424lww3] {
    background: var(--danger-50);
    border-color: var(--danger-300);
    color: var(--error-600);
}

/* Applications Table */
.applications-table-wrapper[b-9r6424lww3] {
    overflow-x: auto;
    border: 1px solid var(--border-light);
    border-radius: 10px;
}

.applications-table[b-9r6424lww3] {
    width: 100%;
    border-collapse: collapse;
}

.applications-table th[b-9r6424lww3] {
    padding: 0.875rem 1rem;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    color: var(--text-muted, #94a3b8);
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-light);
    text-align: left;
}

.applications-table td[b-9r6424lww3] {
    padding: 0.875rem 1rem;
    font-size: 0.9375rem;
    color: var(--text-primary, #0f172a);
    border-bottom: 1px solid var(--neutral-100);
}

.applications-table tbody tr:hover[b-9r6424lww3] {
    background: var(--neutral-50);
}

.applications-table tbody tr:last-child td[b-9r6424lww3] {
    border-bottom: none;
}

.app-link[b-9r6424lww3] {
    font-weight: 500;
    color: var(--brand-600);
    text-decoration: none;
}

.app-link:hover[b-9r6424lww3] {
    text-decoration: underline;
}

.app-status-badge[b-9r6424lww3] {
    display: inline-flex;
    padding: 0.25rem 0.625rem;
    font-size: 0.75rem;
    font-weight: 600;
    border-radius: 6px;
}

.app-status-draft[b-9r6424lww3] {
    background: var(--neutral-100);
    color: var(--neutral-600);
}

.app-status-submitted[b-9r6424lww3] {
    background: var(--brand-100);
    color: var(--brand-700);
}

.app-status-review[b-9r6424lww3] {
    background: var(--warning-100);
    color: var(--warning-700);
}

.app-status-approved[b-9r6424lww3] {
    background: var(--success-100);
    color: var(--success-700);
}

.app-status-ordered[b-9r6424lww3] {
    background: var(--success-200);
    color: var(--success-800);
}

.app-status-declined[b-9r6424lww3] {
    background: var(--danger-100);
    color: var(--danger-700);
}

/* Feature 072 — AwaitingBorrower ("Waiting for Borrower"). */
.app-status-awaiting-borrower[b-9r6424lww3] {
    background: var(--info-100);
    color: var(--info-700);
}

/* Modal Styles */
.modal-overlay[b-9r6424lww3] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1.5rem;
}

.edit-policy-modal[b-9r6424lww3],
.upload-modal[b-9r6424lww3] {
    width: 100%;
    max-width: 520px;
    max-height: 90vh;
    background: white;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    animation: modalSlideIn-b-9r6424lww3 0.25s ease-out;
    overflow: hidden;
}

@keyframes modalSlideIn-b-9r6424lww3 {
    from {
        opacity: 0;
        transform: translateY(-20px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.modal-header[b-9r6424lww3] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    background: #fff;
    border-bottom: 1px solid #EEF2F6;
}

.modal-header h3[b-9r6424lww3] {
    flex: 1;
    align-self: center;
    font-size: 1.05rem;
    font-weight: 700;
    margin: 0;
    color: #0F172A;
}

.btn-close-modal[b-9r6424lww3] {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    color: #94A3B8;
    border-radius: 8px;
    cursor: pointer;
}

.btn-close-modal:hover[b-9r6424lww3] {
    background: #F1F5F9;
    color: #0F172A;
}

.modal-body[b-9r6424lww3] {
    flex: 1;
    overflow-y: auto;
    padding: 1.15rem 1.5rem;
}

.modal-footer[b-9r6424lww3] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

/* Form Styles */
.form-group[b-9r6424lww3] {
    margin-bottom: 1.25rem;
}

.form-group label[b-9r6424lww3] {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.5rem;
}

.form-row[b-9r6424lww3] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.form-control[b-9r6424lww3] {
    width: 100%;
    padding: 0.625rem 0.875rem;
    font-size: 0.9375rem;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    transition: all 0.15s ease;
}

.form-control:focus[b-9r6424lww3] {
    outline: none;
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

textarea.form-control[b-9r6424lww3] {
    resize: vertical;
    min-height: 100px;
}

/* Upload Area */
.upload-area[b-9r6424lww3] {
    position: relative;
    border: 2px dashed var(--border-light);
    border-radius: 10px;
    padding: 2rem;
    text-align: center;
    cursor: pointer;
    transition: all 0.15s ease;
}

.upload-area:hover[b-9r6424lww3] {
    border-color: var(--brand-300);
    background: var(--brand-50);
}

.upload-area input[type="file"][b-9r6424lww3] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.upload-placeholder[b-9r6424lww3] {
    pointer-events: none;
}

.upload-placeholder i[b-9r6424lww3] {
    font-size: 2.5rem;
    color: var(--brand-400);
    margin-bottom: 0.75rem;
}

.upload-placeholder p[b-9r6424lww3] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
    margin: 0 0 0.25rem 0;
}

.upload-placeholder span[b-9r6424lww3] {
    font-size: 0.8125rem;
    color: var(--text-muted, #94a3b8);
}

.selected-file[b-9r6424lww3] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.75rem 1rem;
    background: var(--brand-50);
    border: 1px solid var(--brand-200);
    border-radius: 8px;
    margin-top: 1rem;
}

.selected-file i[b-9r6424lww3] {
    font-size: 1.25rem;
    color: var(--brand-500);
}

.selected-file span[b-9r6424lww3] {
    font-size: 0.875rem;
    color: var(--text-primary, #0f172a);
}

.selected-file .file-size[b-9r6424lww3] {
    margin-left: auto;
    font-size: 0.8125rem;
    color: var(--text-muted, #94a3b8);
}

/* ========================================
   Enhanced Upload Modal Styles
   ======================================== */

.upload-modal-enhanced[b-9r6424lww3] {
    width: 100%;
    max-width: 520px;
    max-height: 90vh;
    background: white;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    animation: modalSlideIn-b-9r6424lww3 0.25s ease-out;
    overflow: hidden;
}

.upload-modal-header[b-9r6424lww3] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    background: #fff;
    border-bottom: 1px solid #EEF2F6;
}

.upload-header-text[b-9r6424lww3] {
    flex: 1;
}

.upload-header-text h3[b-9r6424lww3] {
    font-size: 1.05rem;
    font-weight: 700;
    margin: 0 0 0.25rem 0;
    color: #0F172A;
}

.upload-header-text p[b-9r6424lww3] {
    font-size: 0.8rem;
    margin: 0;
    color: #64748B;
    line-height: 1.45;
}

.upload-modal-body[b-9r6424lww3] {
    flex: 1;
    overflow-y: auto;
    padding: 1.15rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.upload-form-group[b-9r6424lww3] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.upload-form-label[b-9r6424lww3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.upload-form-label i[b-9r6424lww3] {
    font-size: 0.875rem;
}

/* Document Type Dropdown */
.type-dropdown[b-9r6424lww3] {
    position: relative;
}

.dropdown-toggle-custom[b-9r6424lww3] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.dropdown-toggle-custom:hover[b-9r6424lww3] {
    border-color: var(--brand-300);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.08);
}

.selected-type[b-9r6424lww3] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
}

.selected-type i[b-9r6424lww3] {
    font-size: 1.125rem;
    color: var(--brand-500);
}

.chevron-icon[b-9r6424lww3] {
    color: var(--text-muted, #94a3b8);
    transition: transform 0.2s ease;
}

.chevron-icon.rotated[b-9r6424lww3] {
    transform: rotate(180deg);
}

.dropdown-menu-custom[b-9r6424lww3] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    z-index: 100;
    max-height: 280px;
    overflow-y: auto;
    animation: dropdownFadeIn-b-9r6424lww3 0.15s ease-out;
}

@keyframes dropdownFadeIn-b-9r6424lww3 {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.dropdown-item-custom[b-9r6424lww3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    cursor: pointer;
    transition: background 0.15s ease;
}

.dropdown-item-custom:first-child[b-9r6424lww3] {
    border-radius: 12px 12px 0 0;
}

.dropdown-item-custom:last-child[b-9r6424lww3] {
    border-radius: 0 0 12px 12px;
}

.dropdown-item-custom:hover[b-9r6424lww3] {
    background: var(--neutral-50);
}

.dropdown-item-custom.active[b-9r6424lww3] {
    background: var(--brand-50);
}

.dropdown-item-custom .item-icon[b-9r6424lww3] {
    font-size: 1.125rem;
    color: var(--text-muted, #94a3b8);
    width: 24px;
    text-align: center;
}

.dropdown-item-custom.active .item-icon[b-9r6424lww3] {
    color: var(--brand-500);
}

.dropdown-item-custom .item-content[b-9r6424lww3] {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.dropdown-item-custom .item-name[b-9r6424lww3] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
}

.dropdown-item-custom .item-desc[b-9r6424lww3] {
    font-size: 0.75rem;
    color: var(--text-muted, #94a3b8);
}

.dropdown-item-custom .check-icon[b-9r6424lww3] {
    font-size: 1rem;
    color: var(--brand-500);
}

/* Toggle Switch for Requires Signature */
.signature-toggle-section[b-9r6424lww3] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1rem;
    background: linear-gradient(135deg, #fefce8 0%, #fef9c3 100%);
    border: 1px solid #fde047;
    border-radius: 10px;
}

.toggle-switch[b-9r6424lww3] {
    position: relative;
    display: inline-block;
    width: 44px;
    height: 24px;
    flex-shrink: 0;
}

.toggle-switch input[b-9r6424lww3] {
    opacity: 0;
    width: 0;
    height: 0;
}

.toggle-slider[b-9r6424lww3] {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--gray-300, #cbd5e1);
    transition: 0.3s;
    border-radius: 24px;
}

.toggle-slider[b-9r6424lww3]:before {
    position: absolute;
    content: "";
    height: 18px;
    width: 18px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    transition: 0.3s;
    border-radius: 50%;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}

.toggle-switch input:checked + .toggle-slider[b-9r6424lww3] {
    background-color: var(--brand-500);
}

.toggle-switch input:checked + .toggle-slider[b-9r6424lww3]:before {
    transform: translateX(20px);
}

.toggle-switch input:focus + .toggle-slider[b-9r6424lww3] {
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);
}

.toggle-slider.signature-slider[b-9r6424lww3] {
    background-color: #fcd34d;
}

.toggle-switch input:checked + .toggle-slider.signature-slider[b-9r6424lww3] {
    background-color: #ca8a04;
}

.toggle-label-content[b-9r6424lww3] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.toggle-label-text[b-9r6424lww3] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #854d0e;
}

.toggle-label-text i[b-9r6424lww3] {
    color: #ca8a04;
}

.toggle-label-desc[b-9r6424lww3] {
    font-size: 0.75rem;
    color: #a16207;
}

/* Upload Dropzone */
.upload-dropzone[b-9r6424lww3] {
    position: relative;
    border: 2px dashed var(--border-light);
    border-radius: 12px;
    transition: all 0.2s ease;
    background: var(--neutral-50);
}

.upload-dropzone:hover[b-9r6424lww3] {
    border-color: var(--brand-300);
    background: var(--brand-50);
}

.upload-dropzone.dragging[b-9r6424lww3] {
    border-color: var(--brand-400);
    background: var(--brand-50);
    transform: scale(1.01);
}

.upload-dropzone.has-file[b-9r6424lww3] {
    border-style: solid;
    border-color: var(--success-300);
    background: var(--success-50);
}

/* File input wrapper - ensures complete hiding */
.file-input-wrapper[b-9r6424lww3] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 2;
    cursor: pointer;
}

.file-input-wrapper input[type="file"][b-9r6424lww3],
.upload-input-hidden[b-9r6424lww3] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
    font-size: 0;
    z-index: 2;
}

/* Hide the native file input completely */
.upload-input-hidden[b-9r6424lww3]::file-selector-button,
.file-input-wrapper input[b-9r6424lww3]::file-selector-button {
    display: none;
}

.upload-dropzone input[type="file"][b-9r6424lww3] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
    z-index: 2;
    font-size: 0;
}

.dropzone-content[b-9r6424lww3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    cursor: pointer;
    text-align: center;
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
}

.dropzone-content.clickable-label[b-9r6424lww3] {
    pointer-events: auto;
    cursor: pointer;
}

.dropzone-content .upload-input-hidden[b-9r6424lww3],
.dropzone-content input[type="file"][b-9r6424lww3] {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    opacity: 0 !important;
    cursor: pointer !important;
    z-index: 10 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.dropzone-icon[b-9r6424lww3] {
    width: 64px;
    height: 64px;
    border-radius: 16px;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}

.dropzone-icon i[b-9r6424lww3] {
    font-size: 2rem;
    color: var(--brand-500);
}

.dropzone-text[b-9r6424lww3] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.dropzone-title[b-9r6424lww3] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
}

.browse-link[b-9r6424lww3] {
    color: var(--brand-500);
    font-weight: 600;
}

.dropzone-hint[b-9r6424lww3] {
    font-size: 0.8125rem;
    color: var(--text-muted, #94a3b8);
}

/* Selected File Card */
.selected-file-card[b-9r6424lww3] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 1rem;
    position: relative;
    z-index: 2;
}

.selected-file-card .file-icon[b-9r6424lww3] {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.selected-file-card .file-icon i[b-9r6424lww3] {
    font-size: 1.5rem;
    color: var(--success-600);
}

.selected-file-card .file-details[b-9r6424lww3] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 0;
}

.selected-file-card .file-name[b-9r6424lww3] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.selected-file-card .file-meta[b-9r6424lww3] {
    font-size: 0.8125rem;
    color: var(--text-muted, #64748b);
}

.btn-remove-file[b-9r6424lww3] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 8px;
    color: var(--text-muted, #94a3b8);
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-remove-file:hover[b-9r6424lww3] {
    background: var(--danger-50);
    border-color: var(--danger-200);
    color: var(--danger-500);
}

/* Modal Footer */
.upload-modal-footer[b-9r6424lww3] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

.btn-cancel[b-9r6424lww3] {
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-cancel:hover:not(:disabled)[b-9r6424lww3] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-cancel:disabled[b-9r6424lww3] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-upload[b-9r6424lww3] {
    display: flex;
    align-items: center;
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-upload:hover:not(:disabled)[b-9r6424lww3] {
    background: var(--brand-700, #003760);
}

.btn-upload:disabled[b-9r6424lww3] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Responsive */
@media (max-width: 768px) {
    .header-content[b-9r6424lww3] {
        flex-direction: column;
        align-items: stretch;
    }
    
    .header-actions[b-9r6424lww3] {
        flex-wrap: wrap;
    }
    
    .policy-tabs[b-9r6424lww3] {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    
    .policy-tab[b-9r6424lww3] {
        padding: 0.875rem 1rem;
        white-space: nowrap;
    }
    
    .detail-grid[b-9r6424lww3] {
        grid-template-columns: 1fr;
    }
    
    .form-row[b-9r6424lww3] {
        grid-template-columns: 1fr;
    }
    
    .documents-grid[b-9r6424lww3] {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   Subjectivities Section
   ======================================== */
.subjectivities-section[b-9r6424lww3] {
    padding: 1.5rem;
}

.subjectivities-list[b-9r6424lww3] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 1rem;
}

.subjectivity-card[b-9r6424lww3] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: white;
    border: 1px solid var(--neutral-200);
    border-radius: 10px;
    transition: all 0.2s ease;
}

.subjectivity-card:hover[b-9r6424lww3] {
    border-color: var(--brand-300);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.subjectivity-drag-handle[b-9r6424lww3] {
    color: var(--text-muted, #94a3b8);
    cursor: grab;
    padding: 0.25rem;
}

.subjectivity-drag-handle:active[b-9r6424lww3] {
    cursor: grabbing;
}

.subjectivity-icon[b-9r6424lww3] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.subjectivity-icon.type-signature[b-9r6424lww3] {
    background: var(--brand-50);
    color: var(--brand-600);
}

.subjectivity-icon.type-document[b-9r6424lww3] {
    background: var(--success-50);
    color: var(--success-600);
}

.subjectivity-icon.type-acknowledgment[b-9r6424lww3] {
    background: var(--warning-50);
    color: var(--warning-600);
}

.subjectivity-icon.type-custom[b-9r6424lww3] {
    background: var(--neutral-100);
    color: var(--text-secondary, #475569);
}

.subjectivity-icon i[b-9r6424lww3] {
    font-size: 1.125rem;
}

.subjectivity-content[b-9r6424lww3] {
    flex: 1;
    min-width: 0;
}

.subjectivity-header[b-9r6424lww3] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 0.25rem;
}

.subjectivity-header h4[b-9r6424lww3] {
    margin: 0;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
}

.subjectivity-badges[b-9r6424lww3] {
    display: flex;
    gap: 0.375rem;
    flex-shrink: 0;
}

.subjectivity-badges .badge[b-9r6424lww3] {
    padding: 0.25rem 0.5rem;
    font-size: 0.6875rem;
    font-weight: 500;
    border-radius: 4px;
}

.subjectivity-badges .badge-required[b-9r6424lww3] {
    background: var(--danger-50);
    color: var(--error-600);
}

.subjectivity-badges .badge-optional[b-9r6424lww3] {
    background: var(--neutral-100);
    color: var(--text-secondary, #475569);
}

.subjectivity-badges .badge-type[b-9r6424lww3] {
    background: var(--brand-50);
    color: var(--brand-700);
}

.subjectivity-badges .badge-doctype[b-9r6424lww3] {
    background: var(--success-50);
    color: var(--success-700);
}

.subjectivity-description[b-9r6424lww3] {
    margin: 0.25rem 0 0 0;
    font-size: 0.8125rem;
    color: var(--text-muted, #64748b);
    line-height: 1.4;
}

.subjectivity-actions[b-9r6424lww3] {
    display: flex;
    gap: 0.375rem;
    flex-shrink: 0;
}

.subjectivity-actions .btn-icon[b-9r6424lww3] {
    width: 32px;
    height: 32px;
    border-radius: 6px;
    border: none;
    background: transparent;
    color: var(--text-muted, #64748b);
    cursor: pointer;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
}

.subjectivity-actions .btn-icon:hover[b-9r6424lww3] {
    background: var(--neutral-100);
    color: var(--text-primary, #0f172a);
}

.subjectivity-actions .btn-icon-danger:hover[b-9r6424lww3] {
    background: var(--danger-50);
    color: var(--error-600);
}

/* Subjectivity Modal */
.subjectivity-modal[b-9r6424lww3] {
    width: 100%;
    max-width: 540px;
    background: white;
    border-radius: 16px;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    overflow: hidden;
}

.subjectivity-modal .form-group[b-9r6424lww3] {
    margin-bottom: 1rem;
}

.subjectivity-modal .form-group label[b-9r6424lww3] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary, #475569);
    margin-bottom: 0.375rem;
}

.subjectivity-modal .form-group label .required[b-9r6424lww3] {
    color: var(--danger-500);
}

.subjectivity-modal .form-control[b-9r6424lww3] {
    width: 100%;
    padding: 0.625rem 0.875rem;
    font-size: 0.875rem;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    background: white;
    transition: all 0.2s;
}

.subjectivity-modal .form-control:focus[b-9r6424lww3] {
    outline: none;
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px var(--brand-100);
}

.subjectivity-modal .form-row[b-9r6424lww3] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.subjectivity-modal .checkbox-group[b-9r6424lww3] {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.subjectivity-modal .checkbox-label[b-9r6424lww3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
}

.subjectivity-modal .checkbox-label input[b-9r6424lww3] {
    width: 1.125rem;
    height: 1.125rem;
    cursor: pointer;
}

.subjectivity-modal .help-text[b-9r6424lww3] {
    font-size: 0.75rem;
    color: var(--text-muted, #64748b);
    margin-top: 0.25rem;
}


/* ============================================
   POLICY HISTORY TAB (feature 052)
   Reads the policy_audit rows for this policy as a vertical timeline, newest first.
   ============================================ */

.history-loading[b-9r6424lww3] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 1.25rem 0;
    color: #64748b;
    font-size: 0.875rem;
}

.history-timeline[b-9r6424lww3] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.history-entry[b-9r6424lww3] {
    position: relative;
    display: flex;
    gap: 1rem;
    padding: 0 0 1.4rem 0;
}

/* Connector between markers; the last entry has nothing below it to join. */
.history-entry:not(:last-child)[b-9r6424lww3]::before {
    content: "";
    position: absolute;
    left: 15px;
    top: 32px;
    bottom: 0;
    width: 2px;
    background: #e2e8f0;
}

.history-entry:last-child[b-9r6424lww3] {
    padding-bottom: 0;
}

.history-marker[b-9r6424lww3] {
    position: relative;
    z-index: 1;
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f1f5f9;
    color: #475569;
    border: 1px solid #e2e8f0;
    font-size: 0.85rem;
}

.history-marker-create[b-9r6424lww3] { background: #eff6ff; color: #1d4ed8; border-color: #bfdbfe; }
.history-marker-update[b-9r6424lww3] { background: #f5f3ff; color: #6d28d9; border-color: #ddd6fe; }
.history-marker-deactivate[b-9r6424lww3] { background: #fff7ed; color: #c2410c; border-color: #fed7aa; }
.history-marker-reactivate[b-9r6424lww3] { background: #ecfdf5; color: #047857; border-color: #a7f3d0; }
.history-marker-delete[b-9r6424lww3] { background: #fef2f2; color: #b91c1c; border-color: #fecaca; }

.history-body[b-9r6424lww3] {
    flex: 1 1 auto;
    min-width: 0;
    padding-top: 0.15rem;
}

.history-headline[b-9r6424lww3] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.history-action[b-9r6424lww3] {
    font-weight: 600;
    font-size: 0.9rem;
    color: #0f172a;
}

.history-status[b-9r6424lww3] {
    font-size: 0.75rem;
    color: #64748b;
}

.history-outcome[b-9r6424lww3] {
    display: inline-flex;
    align-items: center;
    padding: 0.1rem 0.45rem;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 600;
    border: 1px solid transparent;
}

.history-outcome-pending[b-9r6424lww3] { background: #fef3c7; color: #92400e; border-color: #fcd34d; }
.history-outcome-partialfailure[b-9r6424lww3] { background: #fff7ed; color: #c2410c; border-color: #fed7aa; }
.history-outcome-failed[b-9r6424lww3] { background: #fef2f2; color: #b91c1c; border-color: #fecaca; }

.history-meta[b-9r6424lww3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 1rem;
    margin-top: 0.3rem;
    font-size: 0.78rem;
    color: #64748b;
}

.history-meta i[b-9r6424lww3] {
    margin-right: 0.3rem;
}

.history-reason[b-9r6424lww3] {
    display: flex;
    gap: 0.5rem;
    margin-top: 0.5rem;
    padding: 0.5rem 0.7rem;
    background: #f8fafc;
    border-left: 3px solid #cbd5e1;
    border-radius: 0 4px 4px 0;
    font-size: 0.82rem;
    color: #334155;
}

.history-reason i[b-9r6424lww3] {
    color: #94a3b8;
    flex: 0 0 auto;
}

@media (max-width: 640px) {
    .history-meta[b-9r6424lww3] { flex-direction: column; gap: 0.15rem; }
}
/* /Components/Pages/Admin/PolicyExpirationBackfillPage.razor.rz.scp.css */
.backfill-page[b-zitkjjpg3f] {
    padding: 1.5rem;
    max-width: 1100px;
    margin: 0 auto;
}

.page-header[b-zitkjjpg3f] {
    margin-bottom: 1.25rem;
}

.back-link[b-zitkjjpg3f] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.6rem;
    text-decoration: none;
    color: #475569;
    font-size: 0.875rem;
}

.back-link:hover[b-zitkjjpg3f] { color: #2c5aa0; }

.page-header h1[b-zitkjjpg3f] {
    margin: 0 0 0.25rem 0;
    font-size: 1.6rem;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.title-row[b-zitkjjpg3f] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-bottom: 0.25rem;
}

.page-header p[b-zitkjjpg3f] {
    font-size: 0.85rem;
    line-height: 1.45;
    max-width: 760px;
    margin-top: 0.15rem;
}

.onetime-badge[b-zitkjjpg3f] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.2rem 0.6rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 600;
    background: #eef2ff;
    color: #4338ca;
    border: 1px solid #c7d2fe;
}

.onetime-badge i[b-zitkjjpg3f] { font-size: 0.78rem; }

/* ── Stat cards ───────────────────────────────────────────────────── */

.stat-grid[b-zitkjjpg3f] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 0.75rem;
    margin-bottom: 0.85rem;
}

.stat-card[b-zitkjjpg3f] {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 0.9rem 1.1rem;
}

.stat-icon[b-zitkjjpg3f] {
    width: 2.6rem;
    height: 2.6rem;
    border-radius: 10px;
    display: grid;
    place-items: center;
    font-size: 1.25rem;
    background: #f1f5f9;
    color: #64748b;
    flex-shrink: 0;
}

.stat-value[b-zitkjjpg3f] {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1;
    color: #111827;
    font-variant-numeric: tabular-nums;
}

.stat-label[b-zitkjjpg3f] {
    font-size: 0.78rem;
    color: #6b7280;
    margin-top: 0.2rem;
}

.stat-card-accent[b-zitkjjpg3f] { border-color: #c7d2fe; background: linear-gradient(135deg, #eef2ff, #f5f3ff); }
.stat-card-accent .stat-icon[b-zitkjjpg3f] { background: #e0e7ff; color: #4338ca; }
.stat-card-accent .stat-value[b-zitkjjpg3f] { color: #3730a3; }

.stat-card-good[b-zitkjjpg3f] { border-color: #86efac; background: linear-gradient(135deg, #f0fdf4, #ecfdf5); }
.stat-card-good .stat-icon[b-zitkjjpg3f] { background: #dcfce7; color: #16a34a; }

.stat-card-bad[b-zitkjjpg3f] { border-color: #fecaca; background: linear-gradient(135deg, #fef2f2, #fee2e2); }
.stat-card-bad .stat-icon[b-zitkjjpg3f] { background: #fee2e2; color: #dc2626; }

/* ── Action bar ───────────────────────────────────────────────────── */

.action-bar[b-zitkjjpg3f] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 0.75rem 1.1rem;
    margin-bottom: 0.85rem;
}

.action-bar-text[b-zitkjjpg3f] {
    font-size: 0.875rem;
    color: #475569;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.action-bar-text i[b-zitkjjpg3f] { color: #2c5aa0; font-size: 1rem; }

.action-bar-buttons[b-zitkjjpg3f] {
    display: flex;
    gap: 0.5rem;
    flex-shrink: 0;
    flex-wrap: wrap;
}

/* ── By-bank bars ─────────────────────────────────────────────────── */

.bank-list[b-zitkjjpg3f] {
    display: flex;
    flex-direction: column;
    gap: 0.7rem;
}

.bank-row-head[b-zitkjjpg3f] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

.bank-name[b-zitkjjpg3f] { font-size: 0.875rem; color: #374151; }

.bank-count[b-zitkjjpg3f] { font-weight: 700; color: #111827; }

.bank-bar[b-zitkjjpg3f] {
    height: 6px;
    background: #f1f5f9;
    border-radius: 999px;
    overflow: hidden;
}

.bank-bar-fill[b-zitkjjpg3f] {
    height: 100%;
    background: linear-gradient(90deg, #6366f1, #4338ca);
    border-radius: 999px;
    transition: width 200ms ease-out;
}

/* ── Sample table fill badges ─────────────────────────────────────── */

.sample-table[b-zitkjjpg3f] { font-size: 0.8rem; }

.sample-table thead th[b-zitkjjpg3f] {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
}

.sample-table td[b-zitkjjpg3f] {
    vertical-align: middle;
    padding-top: 0.45rem;
    padding-bottom: 0.45rem;
}

.fill-cell[b-zitkjjpg3f] {
    display: flex;
    gap: 0.3rem;
    flex-wrap: wrap;
}

.fill-badge[b-zitkjjpg3f] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.12rem 0.5rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
    border: 1px solid transparent;
}

.fill-badge i[b-zitkjjpg3f] { font-size: 0.75rem; }

.fill-badge-date[b-zitkjjpg3f] { background: #eff6ff; color: #1d4ed8; border-color: #bfdbfe; }
.fill-badge-limit[b-zitkjjpg3f] { background: #f0fdf4; color: #15803d; border-color: #bbf7d0; }

.state-block[b-zitkjjpg3f] {
    padding: 2.5rem 1rem;
    text-align: center;
    color: #6b7280;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
}

/* ── Hero (state-driven) ──────────────────────────────────────────── */

.hero[b-zitkjjpg3f] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.5rem 1.75rem;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    margin-bottom: 0.85rem;
}

.hero-success[b-zitkjjpg3f] {
    background: linear-gradient(135deg, #f0fdf4, #ecfdf5);
    border-color: #86efac;
}

.hero-success .hero-icon[b-zitkjjpg3f] {
    background: #dcfce7;
    color: #16a34a;
}

.hero-warn[b-zitkjjpg3f] {
    background: linear-gradient(135deg, #fffbeb, #fef3c7);
    border-color: #fcd34d;
}

.hero-warn .hero-icon[b-zitkjjpg3f] {
    background: #fef3c7;
    color: #d97706;
}

.hero-icon[b-zitkjjpg3f] {
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 12px;
    display: grid;
    place-items: center;
    font-size: 1.6rem;
    flex-shrink: 0;
}

.hero-body[b-zitkjjpg3f] {
    flex: 1;
    min-width: 0;
}

.hero-headline[b-zitkjjpg3f] {
    font-size: 1.15rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 0.25rem;
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.hero-count[b-zitkjjpg3f] {
    font-size: 2rem;
    color: #d97706;
    font-variant-numeric: tabular-nums;
    line-height: 1;
}

.hero-success .hero-headline[b-zitkjjpg3f] { color: #14532d; }

.hero-subline[b-zitkjjpg3f] {
    color: #475569;
    font-size: 0.9rem;
}

/* Per-kind breakdown chips inside the hero — Diligence + Policy counts so admins
   know the run will create both kinds. Each chip suppresses itself when zero. */
.kind-breakdown[b-zitkjjpg3f] {
    display: flex;
    gap: 0.5rem;
    margin-top: 0.6rem;
    flex-wrap: wrap;
}

.kind-chip[b-zitkjjpg3f] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.2rem 0.65rem;
    border-radius: 999px;
    font-size: 0.8rem;
    border: 1px solid transparent;
}

.kind-chip i[b-zitkjjpg3f] { font-size: 0.85rem; line-height: 1; color: currentColor; }
.kind-chip strong[b-zitkjjpg3f] { font-variant-numeric: tabular-nums; }

.kind-chip-diligence[b-zitkjjpg3f] {
    background: #fffbeb;
    color: #b45309;
    border-color: #fde68a;
}

.kind-chip-policy[b-zitkjjpg3f] {
    background: #f1f5f9;
    color: #475569;
    border-color: #e2e8f0;
}

.hero-actions[b-zitkjjpg3f] {
    display: flex;
    gap: 0.5rem;
    flex-shrink: 0;
    flex-wrap: wrap;
}

/* ── Run-confirm panel ────────────────────────────────────────────── */

.run-panel[b-zitkjjpg3f] {
    background: white;
    border: 1px solid #fcd34d;
    border-radius: 10px;
    margin-bottom: 0.85rem;
    overflow: hidden;
    animation: slideDown-b-zitkjjpg3f 150ms ease-out;
}

@keyframes slideDown-b-zitkjjpg3f {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
}

.run-panel-title[b-zitkjjpg3f] {
    background: #fef3c7;
    color: #6b4f0f;
    padding: 0.6rem 1rem;
    font-weight: 600;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border-bottom: 1px solid #fcd34d;
}

.run-panel-body[b-zitkjjpg3f] {
    padding: 0.85rem 1rem;
}

.run-controls[b-zitkjjpg3f] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

/* ── Buttons (matches detail page style) ──────────────────────────── */

.btn-action[b-zitkjjpg3f] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.4rem 0.85rem;
    background: white;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    color: #374151;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: border-color 120ms, color 120ms, background-color 120ms;
}

.btn-action:hover:not(:disabled)[b-zitkjjpg3f] {
    border-color: #2c5aa0;
    color: #2c5aa0;
}

.btn-action:disabled[b-zitkjjpg3f] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-action-primary[b-zitkjjpg3f] {
    background: #2c5aa0;
    border-color: #2c5aa0;
    color: white;
}

.btn-action-primary:hover:not(:disabled)[b-zitkjjpg3f] {
    background: #244b87;
    border-color: #244b87;
    color: white;
}

.btn-action i[b-zitkjjpg3f] { font-size: 0.95rem; }

/* ── Detail grid (by-bank + samples) ──────────────────────────────── */

.detail-grid[b-zitkjjpg3f] {
    display: grid;
    grid-template-columns: 1fr 1.3fr;
    gap: 0.85rem;
    margin-bottom: 0.85rem;
}

@media (max-width: 800px) {
    .detail-grid[b-zitkjjpg3f] { grid-template-columns: 1fr; }
}

.card-section[b-zitkjjpg3f] {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 1rem 1.25rem;
}

.card-section h2[b-zitkjjpg3f] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #2c5aa0;
    font-weight: 700;
    margin: 0 0 0.6rem 0;
}

.card-section h2 .small[b-zitkjjpg3f],
.card-section h2 .muted[b-zitkjjpg3f] {
    font-weight: 500;
    color: #94a3b8;
    margin-left: 0.4rem;
    text-transform: none;
    letter-spacing: 0;
    font-size: 0.7rem;
}

.card-section table[b-zitkjjpg3f] { margin-bottom: 0; }

.card-section thead th[b-zitkjjpg3f] {
    background: #f8fafc;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #475569;
    font-weight: 600;
}

.mono[b-zitkjjpg3f] { font-variant-numeric: tabular-nums; }

.muted[b-zitkjjpg3f] { color: #6b7280; }

.link-muted[b-zitkjjpg3f] {
    color: #475569;
    text-decoration: none;
    font-weight: 500;
}
.link-muted:hover[b-zitkjjpg3f] { color: #2c5aa0; text-decoration: underline; }

/* ── How-it-works disclosure ─────────────────────────────────────── */

.info-section[b-zitkjjpg3f] {
    background: #f8fafc;
}

.info-toggle[b-zitkjjpg3f] {
    background: none;
    border: none;
    padding: 0;
    font-size: 0.875rem;
    color: #475569;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-weight: 500;
}

.info-toggle:hover[b-zitkjjpg3f] { color: #2c5aa0; }

.info-content[b-zitkjjpg3f] {
    margin-top: 0.85rem;
    color: #475569;
    font-size: 0.875rem;
}

.info-content ul[b-zitkjjpg3f] {
    margin: 0;
    padding-left: 1.25rem;
}

.info-content li[b-zitkjjpg3f] { margin-bottom: 0.4rem; }

.info-content code[b-zitkjjpg3f] {
    background: #e5e7eb;
    color: #374151;
    padding: 0.05rem 0.3rem;
    border-radius: 3px;
    font-size: 0.82rem;
}

/* ── Post-run report ──────────────────────────────────────────────── */

.report-hero[b-zitkjjpg3f] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.5rem 1.75rem;
    border-radius: 10px;
    margin-bottom: 0.85rem;
}

.report-hero-success[b-zitkjjpg3f] {
    background: linear-gradient(135deg, #f0fdf4, #ecfdf5);
    border: 1px solid #86efac;
}

.report-hero-success .report-icon[b-zitkjjpg3f] {
    background: #dcfce7;
    color: #16a34a;
}

.report-hero-warn[b-zitkjjpg3f] {
    background: linear-gradient(135deg, #fef2f2, #fee2e2);
    border: 1px solid #fecaca;
}

.report-hero-warn .report-icon[b-zitkjjpg3f] {
    background: #fee2e2;
    color: #dc2626;
}

.report-icon[b-zitkjjpg3f] {
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 12px;
    display: grid;
    place-items: center;
    font-size: 1.6rem;
    flex-shrink: 0;
}

.report-summary[b-zitkjjpg3f] {
    flex: 1;
    min-width: 0;
}

.report-headline[b-zitkjjpg3f] {
    font-size: 1.15rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 0.2rem;
}

.report-subline[b-zitkjjpg3f] {
    color: #475569;
    font-size: 0.9rem;
    font-variant-numeric: tabular-nums;
}

.report-subline strong[b-zitkjjpg3f] {
    color: #111827;
    font-weight: 700;
}

.report-actions[b-zitkjjpg3f] {
    display: flex;
    gap: 0.5rem;
    flex-shrink: 0;
    flex-wrap: wrap;
}

.error-log[b-zitkjjpg3f] {
    background: #1f2937;
    color: #fca5a5;
    padding: 1rem;
    border-radius: 6px;
    font-size: 0.8rem;
    max-height: 320px;
    overflow-y: auto;
    margin: 0;
}
/* /Components/Pages/Admin/PolicyManagementPage.razor.rz.scp.css */
/* Policy Management Page - Enhanced Styles */

/* Use existing dashboard styles - this file contains overrides and additions */

/* Added Header Styles for Alignment */
.page-header[b-nm2ughp2xe] {
    display: flex;
    align-items: center; /* Ensures vertical alignment */
    gap: 20px;
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--neutral-200);
}

.header-icon[b-nm2ughp2xe] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    background: linear-gradient(135deg, var(--brand-50) 0%, white 100%);
    color: var(--brand-600);
    border: 1px solid var(--brand-100);
    border-radius: 12px;
    font-size: 1.75rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
    flex-shrink: 0;
}

.header-content[b-nm2ughp2xe] {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.header-content h1[b-nm2ughp2xe] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary, #1e293b);
    margin: 0 0 4px 0;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.header-content p[b-nm2ughp2xe] {
    font-size: 0.95rem;
    color: var(--text-muted, #64748b);
    margin: 0;
    line-height: 1.5;
}

.header-actions[b-nm2ughp2xe] {
    display: flex;
    align-items: center;
    gap: 12px;
}

/* Content Header */
.content-header[b-nm2ughp2xe] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

.content-title[b-nm2ughp2xe] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a1a2e;
    margin: 0;
}

.content-subtitle[b-nm2ughp2xe] {
    font-size: 0.8rem;
    color: #94A3B8;
    margin: 2px 0 0;
}

.header-stats[b-nm2ughp2xe] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.stat-pill[b-nm2ughp2xe] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 20px;
    padding: 6px 14px;
    font-size: 0.75rem;
    color: #64748B;
}

.stat-pill i[b-nm2ughp2xe] {
    font-size: 1rem;
    color: var(--brand-500);
}

.stat-pill.stat-success i[b-nm2ughp2xe] { color: #10B981; }
.stat-pill.stat-warning i[b-nm2ughp2xe] { color: #F59E0B; }
.stat-pill.stat-danger i[b-nm2ughp2xe] { color: #EF4444; }

.stat-pill .stat-value[b-nm2ughp2xe] {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1F2937;
}

.stat-pill .stat-label[b-nm2ughp2xe] {
    font-size: 0.65rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.btn-header-action[b-nm2ughp2xe] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #E2E8F0;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #64748B;
    transition: all 0.2s;
}

.btn-header-action:hover[b-nm2ughp2xe] {
    background: #F1F5F9;
    color: #334155;
}

/* Queue Actions */
.queue-actions[b-nm2ughp2xe] {
    display: flex;
    gap: 12px;
    align-items: center;
    flex-wrap: wrap;
}

.filter-select-compact[b-nm2ughp2xe] {
    padding: 8px 14px;
    border: 1px solid var(--neutral-200);
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    background: var(--bg-surface, white);
    color: var(--text-secondary, #475569);
    min-width: 160px;
    cursor: pointer;
    transition: all 0.2s ease;
    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='%2364748b' d='M2.5 4.5L6 8l3.5-3.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    padding-right: 32px;
}

.filter-select-compact:hover[b-nm2ughp2xe] {
    border-color: var(--brand-400);
    background-color: var(--neutral-50);
}

.filter-select-compact:focus[b-nm2ughp2xe] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.btn-icon-sm[b-nm2ughp2xe] {
    width: 38px;
    height: 38px;
    border-radius: 8px;
    border: 1px solid var(--neutral-200);
    background: var(--bg-surface, white);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    color: var(--text-muted, #64748b);
}

.btn-icon-sm:hover[b-nm2ughp2xe] {
    background: var(--neutral-50);
    border-color: var(--brand-400);
    color: var(--brand-600);
}

.btn-icon-sm:disabled[b-nm2ughp2xe] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-icon-sm.active[b-nm2ughp2xe] {
    background: var(--brand-500);
    border-color: var(--brand-500);
    color: white;
}

.btn-primary-compact[b-nm2ughp2xe] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 18px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-primary-compact:hover[b-nm2ughp2xe] {
    background: var(--brand-700, #003760);
}

/* Table Styles */
.dashboard-table[b-nm2ughp2xe] {
    width: 100%;
    border-collapse: collapse;
}

.dashboard-table th[b-nm2ughp2xe] {
    background: #f8fafc;
    padding: 12px 16px;
    text-align: left;
    font-weight: 600;
    font-size: 0.75rem;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 1px solid #e2e8f0;
}

.dashboard-table td[b-nm2ughp2xe] {
    padding: 12px 16px;
    border-bottom: 1px solid #f1f5f9;
    font-size: 0.875rem;
    vertical-align: middle;
}

.dashboard-table tbody tr:hover[b-nm2ughp2xe] {
    background: #f8fafc;
}

.dashboard-table tbody tr.row-warning[b-nm2ughp2xe] {
    background: #fffbeb;
}

.dashboard-table tbody tr.row-warning:hover[b-nm2ughp2xe] {
    background: #fef3c7;
}

/* Policy Link */
.policy-link[b-nm2ughp2xe] {
    color: #3b82f6;
    text-decoration: none;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
}

.policy-link:hover[b-nm2ughp2xe] {
    text-decoration: underline;
    color: #2563eb;
}

/* Bank Name */
.bank-name[b-nm2ughp2xe] {
    font-weight: 500;
    color: #1e293b;
}

/* Status Badges */
.status-badge[b-nm2ughp2xe] {
    display: inline-flex;
    align-items: center;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    gap: 4px;
}

.status-active[b-nm2ughp2xe] {
    background: var(--success-100);
    color: var(--success-700);
}

.status-pending[b-nm2ughp2xe] {
    background: var(--accent-100);
    color: var(--accent-700);
}

.status-expired[b-nm2ughp2xe] {
    background: var(--neutral-100);
    color: var(--neutral-600);
}

.status-cancelled[b-nm2ughp2xe] {
    background: var(--error-100);
    color: var(--error-700);
}

.status-inactive[b-nm2ughp2xe] {
    background: var(--neutral-200);
    color: var(--neutral-700);
}

/* Count Badges */
.count-badge[b-nm2ughp2xe] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 26px;
    padding: 0 10px;
    border-radius: 13px;
    font-size: 0.75rem;
    font-weight: 600;
    background: var(--neutral-100);
    color: var(--text-muted, #64748b);
    transition: all 0.2s ease;
}

.count-badge-info[b-nm2ughp2xe] {
    background: var(--brand-100);
    color: var(--brand-700);
}

.count-badge-success[b-nm2ughp2xe] {
    background: var(--success-100);
    color: var(--success-700);
}

/* Date Display */
.date-display[b-nm2ughp2xe] {
    color: #475569;
}

.date-display.text-warning[b-nm2ughp2xe] {
    color: #d97706 !important;
}

/* Action Buttons */
.action-buttons[b-nm2ughp2xe] {
    display: flex;
    gap: 4px;
    justify-content: flex-end;
}

.btn-action-icon[b-nm2ughp2xe] {
    width: 32px;
    height: 32px;
    border-radius: 6px;
    border: 1px solid #e2e8f0;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
    color: #64748b;
}

.btn-action-icon:hover[b-nm2ughp2xe] {
    background: #f8fafc;
    border-color: #cbd5e1;
    color: #3b82f6;
}

.btn-action-icon.btn-action-danger:hover[b-nm2ughp2xe] {
    background: #fef2f2;
    border-color: #fecaca;
    color: var(--error-600);
}

.btn-action-icon.btn-action-success:hover[b-nm2ughp2xe] {
    background: #f0fdf4;
    border-color: #bbf7d0;
    color: var(--success-600);
}

/* Loading & Empty States */
.loading-state[b-nm2ughp2xe],
.empty-state[b-nm2ughp2xe] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 48px 20px;
    color: #64748b;
}

/* Pagination */
.pagination-section[b-nm2ughp2xe] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-top: 1px solid #e2e8f0;
    background: #f8fafc;
}

.pagination-info[b-nm2ughp2xe] {
    font-size: 0.875rem;
    color: #64748b;
}

.pagination-controls[b-nm2ughp2xe] {
    display: flex;
    gap: 4px;
}

.btn-page[b-nm2ughp2xe] {
    padding: 6px 12px;
    border: 1px solid #e2e8f0;
    background: white;
    border-radius: 6px;
    cursor: pointer;
    font-size: 0.875rem;
    transition: all 0.2s;
    color: #475569;
}

.btn-page:hover:not(:disabled)[b-nm2ughp2xe] {
    background: #f8fafc;
    border-color: #cbd5e1;
}

.btn-page.active[b-nm2ughp2xe] {
    background: #3b82f6;
    color: white;
    border-color: #3b82f6;
}

.btn-page:disabled[b-nm2ughp2xe] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Policy Detail Header */
.policy-detail-header[b-nm2ughp2xe] {
    background: #f8fafc;
    padding: 20px;
    border-bottom: 1px solid #e2e8f0;
}

.detail-item[b-nm2ughp2xe] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.detail-label[b-nm2ughp2xe] {
    font-size: 0.75rem;
    font-weight: 500;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.detail-value[b-nm2ughp2xe] {
    font-size: 0.9375rem;
    color: #1e293b;
    font-weight: 500;
}

/* Modal Enhancements */
.modal-overlay[b-nm2ughp2xe] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1.5rem;
    animation: fadeIn-b-nm2ughp2xe 0.2s ease-out;
}

@keyframes fadeIn-b-nm2ughp2xe {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes modalSlideIn-b-nm2ughp2xe {
    from {
        opacity: 0;
        transform: translateY(-20px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.policy-modal-enhanced[b-nm2ughp2xe] {
    width: 100%;
    max-width: 600px;
    max-height: 90vh;
    background: white;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    animation: modalSlideIn-b-nm2ughp2xe 0.25s ease-out;
    overflow: hidden;
}

.policy-modal-header[b-nm2ughp2xe] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    background: #fff;
    border-bottom: 1px solid #EEF2F6;
}

.policy-header-text[b-nm2ughp2xe] {
    flex: 1;
}

.policy-header-text h3[b-nm2ughp2xe] {
    font-size: 1.05rem;
    font-weight: 700;
    margin: 0 0 0.25rem 0;
    color: #0F172A;
}

.policy-header-text p[b-nm2ughp2xe] {
    font-size: 0.8rem;
    margin: 0;
    color: #64748B;
    line-height: 1.45;
}

.btn-close-modal[b-nm2ughp2xe] {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    color: #94A3B8;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-close-modal:hover[b-nm2ughp2xe] {
    background: #F1F5F9;
    color: #0F172A;
}

.policy-modal-body[b-nm2ughp2xe] {
    flex: 1;
    overflow-y: auto;
    padding: 1.15rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.form-section[b-nm2ughp2xe] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.form-section.flex-1[b-nm2ughp2xe] {
    flex: 1;
}

.form-section.flex-2[b-nm2ughp2xe] {
    flex: 2;
}

.form-row[b-nm2ughp2xe] {
    display: flex;
    gap: 1rem;
}

.form-row .form-section[b-nm2ughp2xe] {
    flex: 1;
}

.form-section-label[b-nm2ughp2xe] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary, #475569);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.form-section-label i[b-nm2ughp2xe] {
    font-size: 0.875rem;
    color: var(--brand-500);
}

.required-mark[b-nm2ughp2xe] {
    color: var(--error-500);
}

.policy-number-input-group[b-nm2ughp2xe] {
    display: flex;
    gap: 0.5rem;
}

.policy-number-input-group .form-input-enhanced[b-nm2ughp2xe] {
    flex: 1;
}


.btn-generate[b-nm2ughp2xe] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    white-space: nowrap;
    background: var(--brand-50);
    color: var(--brand-600);
    border: 1px solid var(--brand-200);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-generate:hover:not(:disabled)[b-nm2ughp2xe] {
    background: var(--brand-100);
    border-color: var(--brand-300);
}

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

.validation-error[b-nm2ughp2xe] {
    font-size: 0.8125rem;
    color: var(--error-600);
    margin-top: 0.25rem;
}

.policy-modal-footer[b-nm2ughp2xe] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

.btn-modal-cancel[b-nm2ughp2xe] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-modal-cancel:hover:not(:disabled)[b-nm2ughp2xe] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-modal-cancel:disabled[b-nm2ughp2xe] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-modal-primary[b-nm2ughp2xe] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-modal-primary:hover:not(:disabled)[b-nm2ughp2xe] {
    background: var(--brand-700, #003760);
}

.btn-modal-primary:disabled[b-nm2ughp2xe] {
    opacity: 0.7;
    cursor: not-allowed;
}

.modal-dialog-centered[b-nm2ughp2xe] {
    display: flex;
    align-items: center;
    min-height: calc(100% - 1rem);
}

/* Tab Content */
.tab-header[b-nm2ughp2xe] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 20px;
    border-bottom: 1px solid #e2e8f0;
    flex-wrap: wrap;
    gap: 16px;
}

.tab-title[b-nm2ughp2xe] {
    font-size: 1.125rem;
    font-weight: 600;
    color: #1e293b;
    margin: 0;
}

.tab-subtitle[b-nm2ughp2xe] {
    font-size: 0.875rem;
    color: #64748b;
    margin: 4px 0 0;
}

/* Spinning animation */
.spinning[b-nm2ughp2xe] {
    animation: spin-b-nm2ughp2xe 1s linear infinite;
}

@keyframes spin-b-nm2ughp2xe {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Responsive */
@media (max-width: 768px) {
    .content-header[b-nm2ughp2xe] {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .header-stats[b-nm2ughp2xe] {
        width: 100%;
        flex-wrap: wrap;
        justify-content: flex-start;
    }
    
    .queue-actions[b-nm2ughp2xe] {
        width: 100%;
        flex-direction: column;
    }
    
    .tab-header[b-nm2ughp2xe] {
        flex-direction: column;
    }
    
    .policy-modal-enhanced[b-nm2ughp2xe] {
        max-height: 100vh;
        border-radius: 12px 12px 0 0;
    }
    
    .form-row[b-nm2ughp2xe] {
        flex-direction: column;
    }
    
    .policy-number-input-group[b-nm2ughp2xe] {
        flex-direction: column;
    }
    
    .btn-generate[b-nm2ughp2xe] {
        justify-content: center;
    }
}

/* ── Skeleton loader ─────────────────────────────────────────────────── */
@keyframes admin-policy-skel-pulse-b-nm2ughp2xe {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.tbl-row-skeleton td[b-nm2ughp2xe] {
    padding: 0.875rem 0.75rem;
}

.tbl-skel[b-nm2ughp2xe] {
    height: 1.0625rem;
    width: 80px;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: admin-policy-skel-pulse-b-nm2ughp2xe 1.5s ease-in-out infinite;
}

.tbl-skel-badge[b-nm2ughp2xe] {
    height: 1.25rem;
    width: 90px;
    border-radius: 9999px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: admin-policy-skel-pulse-b-nm2ughp2xe 1.5s ease-in-out infinite;
}

/* Delete confirmation facts (feature 052). Rendered into DeleteConfirmationModal's BodyContent,
   which is declared here, so this page's scope id applies. Width and centring are NOT set here:
   they come from .confirm-measure, which the modal puts on the whole BodyContent block so the
   card, the message above it and the inputs below share one column. */
.delete-policy-facts[b-nm2ughp2xe] {
    display: grid;
    gap: 0.4rem;
    padding: 0.75rem 0.9rem;
    background: var(--neutral-50, #F9FAFB);
    border: 1px solid var(--neutral-200, #E5E7EB);
    border-radius: 8px;
    font-size: 0.8125rem;
}

.delete-policy-fact[b-nm2ughp2xe] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.delete-policy-label[b-nm2ughp2xe] {
    color: var(--neutral-500, #6B7280);
    white-space: nowrap;
}

.delete-policy-value[b-nm2ughp2xe] {
    font-weight: 600;
    color: var(--neutral-800, #1F2937);
    text-align: right;
}

.delete-policy-note[b-nm2ughp2xe] {
    margin: 0.6rem 0 0;
    font-size: 0.8125rem;
    color: var(--info-700, #1D4ED8);
    background: var(--info-50, #EFF6FF);
    border: 1px solid var(--info-200, #BFDBFE);
    border-radius: 8px;
    padding: 0.5rem 0.7rem;
}
/* /Components/Pages/Admin/PolicyReservationBackfillPage.razor.rz.scp.css */
/* Uses the global leca-theme.css design tokens (brand/neutral scales, radius,
   shadow, spacing) so the page matches the app rather than default Bootstrap. */

.prb[b-1unjn1juwd] {
    max-width: 1040px;
    margin: 0 auto;
    padding: var(--space-lg) var(--space-md) var(--space-2xl);
    color: var(--text-primary);
}

.prb-muted[b-1unjn1juwd] { color: var(--text-muted); }
.prb-sm[b-1unjn1juwd] { font-size: .82rem; }
.prb-right[b-1unjn1juwd] { text-align: right; }
.prb-warn-text[b-1unjn1juwd] { color: var(--warning-700); }
.prb-error-text[b-1unjn1juwd] { color: var(--error-600); }

/* ── Breadcrumb ────────────────────────────────────────── */
.prb-crumbs[b-1unjn1juwd] {
    display: flex;
    align-items: center;
    gap: .4rem;
    font-size: .8rem;
    color: var(--text-muted);
    margin-bottom: var(--space-sm);
}
.prb-crumbs a[b-1unjn1juwd] { color: var(--brand-600); text-decoration: none; font-weight: 500; }
.prb-crumbs a:hover[b-1unjn1juwd] { color: var(--brand-700); text-decoration: underline; }
.prb-crumbs .bi[b-1unjn1juwd] { font-size: .7rem; opacity: .6; }
.prb-crumb-current[b-1unjn1juwd] { color: var(--text-secondary); font-weight: 600; }

/* ── Hero header ───────────────────────────────────────── */
.prb-hero[b-1unjn1juwd] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-lg);
    padding: var(--space-lg);
    margin-bottom: var(--space-lg);
    border: 1px solid var(--brand-100);
    border-radius: var(--radius-lg);
    background:
        radial-gradient(120% 140% at 0% 0%, var(--brand-50) 0%, rgba(255,255,255,0) 60%),
        var(--bg-surface);
    box-shadow: var(--shadow-sm);
}
.prb-hero-main[b-1unjn1juwd] { display: flex; align-items: flex-start; gap: var(--space-md); min-width: 0; }
.prb-hero-text[b-1unjn1juwd] { min-width: 0; }
.prb-hash[b-1unjn1juwd] {
    flex: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: var(--radius-lg);
    background: linear-gradient(135deg, var(--brand-500), var(--brand-700));
    color: #fff;
    font-size: 1.5rem;
    box-shadow: 0 6px 16px -4px rgba(0, 73, 128, .5);
}
.prb-eyebrow[b-1unjn1juwd] {
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--brand-600);
    margin-bottom: .25rem;
}
.prb-h1[b-1unjn1juwd] { font-size: 1.75rem; font-weight: 700; letter-spacing: -.025em; line-height: 1.15; margin: 0 0 .4rem; color: var(--text-primary); }
.prb-lede[b-1unjn1juwd] { color: var(--text-secondary); max-width: 68ch; margin: 0; line-height: 1.55; font-size: .92rem; }

/* ── Live status pill (header, right) ──────────────────── */
.prb-hero-status[b-1unjn1juwd] { flex: none; }
.prb-status[b-1unjn1juwd] {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    padding: .4rem .8rem;
    border-radius: var(--radius-pill);
    font-size: .82rem;
    font-weight: 600;
    white-space: nowrap;
    border: 1px solid transparent;
}
.prb-status .bi[b-1unjn1juwd] { font-size: .95rem; }
.prb-status-num[b-1unjn1juwd] { font-size: 1rem; font-weight: 800; }
.prb-status--load[b-1unjn1juwd] { background: var(--neutral-100); color: var(--text-secondary); border-color: var(--neutral-200); }
.prb-status--ok[b-1unjn1juwd] { background: var(--success-50); color: var(--success-700); border-color: var(--success-200); }
.prb-status--warn[b-1unjn1juwd] { background: var(--warning-50); color: var(--warning-700); border-color: var(--warning-200); }

@media (max-width: 720px) {
    .prb-hero[b-1unjn1juwd] { flex-direction: column; }
    .prb-hero-status[b-1unjn1juwd] { align-self: flex-start; }
}
.prb code[b-1unjn1juwd] {
    background: var(--brand-50);
    color: var(--brand-700);
    padding: .05rem .35rem;
    border-radius: var(--radius-sm);
    font-size: .85em;
}

/* ── Buttons (themed) ──────────────────────────────────── */
.prb-btn[b-1unjn1juwd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    padding: .5rem .95rem;
    border-radius: var(--radius-md);
    border: 1px solid transparent;
    font: inherit;
    font-size: .875rem;
    font-weight: 600;
    line-height: 1.1;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
.prb-btn i[b-1unjn1juwd] { font-size: 1rem; line-height: 1; }
.prb-btn:disabled[b-1unjn1juwd] { opacity: .55; cursor: not-allowed; }
.prb-btn:focus-visible[b-1unjn1juwd] { outline: 2px solid var(--brand-300); outline-offset: 2px; }

.prb-btn--primary[b-1unjn1juwd] { background: var(--brand-600); color: #fff; }
.prb-btn--primary:hover:not(:disabled)[b-1unjn1juwd] { background: var(--brand-700); }

.prb-btn--ghost[b-1unjn1juwd] { background: var(--bg-surface); border-color: var(--neutral-300); color: var(--text-secondary); }
.prb-btn--ghost:hover:not(:disabled)[b-1unjn1juwd] { border-color: var(--brand-400); color: var(--brand-700); background: var(--bg-hover); }

.prb-btn--sm[b-1unjn1juwd] { padding: .35rem .7rem; font-size: .8rem; }

/* ── Toolbar ───────────────────────────────────────────── */
.prb-toolbar[b-1unjn1juwd] {
    display: flex;
    align-items: center;
    gap: var(--space-sm);
    flex-wrap: wrap;
    margin-bottom: var(--space-lg);
}
.prb-spacer[b-1unjn1juwd] { flex: 1 1 auto; }

.prb-cap[b-1unjn1juwd] {
    display: inline-flex;
    align-items: stretch;
    border: 1px solid var(--neutral-300);
    border-radius: var(--radius-md);
    overflow: hidden;
    background: var(--bg-surface);
}
.prb-cap:focus-within[b-1unjn1juwd] { border-color: var(--brand-400); box-shadow: 0 0 0 3px var(--brand-50); }
.prb-cap-label[b-1unjn1juwd] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    padding: .45rem .65rem;
    background: var(--neutral-100);
    color: var(--text-secondary);
    font-size: .8rem;
    font-weight: 600;
    border-right: 1px solid var(--neutral-200);
}
.prb-cap input[b-1unjn1juwd] {
    width: 88px;
    border: 0;
    outline: 0;
    padding: .45rem .6rem;
    font: inherit;
    font-size: .875rem;
    background: transparent;
    color: var(--text-primary);
}

/* ── Spinner ───────────────────────────────────────────── */
.prb-spinner[b-1unjn1juwd] {
    width: 1rem; height: 1rem;
    border: 2px solid var(--neutral-300);
    border-top-color: var(--brand-600);
    border-radius: 50%;
    display: inline-block;
    animation: prb-spin-b-1unjn1juwd .6s linear infinite;
}
.prb-spinner--on-primary[b-1unjn1juwd] { border-color: rgba(255,255,255,.45); border-top-color: #fff; }
@keyframes prb-spin-b-1unjn1juwd { to { transform: rotate(360deg); } }

/* ── Loading / empty ───────────────────────────────────── */
.prb-state[b-1unjn1juwd] {
    display: flex; align-items: center; gap: .6rem;
    padding: var(--space-xl);
    color: var(--text-secondary);
    background: var(--bg-surface);
    border: 1px solid var(--neutral-200);
    border-radius: var(--radius-lg);
}
.prb-empty[b-1unjn1juwd] {
    display: flex; align-items: center; gap: var(--space-md);
    padding: var(--space-lg) var(--space-xl);
    border: 1px solid var(--success-200);
    background: var(--success-50);
    border-radius: var(--radius-lg);
}
.prb-empty > .bi[b-1unjn1juwd] { font-size: 2rem; color: var(--success-600); }
.prb-empty-title[b-1unjn1juwd] { font-weight: 700; font-size: 1.05rem; color: var(--success-800); }

/* ── Alert ─────────────────────────────────────────────── */
.prb-alert[b-1unjn1juwd] {
    display: flex; align-items: flex-start; gap: .6rem;
    padding: .8rem 1rem;
    border-radius: var(--radius-md);
    margin-bottom: var(--space-md);
}
.prb-alert--danger[b-1unjn1juwd] { background: var(--error-50); border: 1px solid var(--error-200); color: var(--error-700); }
.prb-alert > .bi[b-1unjn1juwd] { margin-top: .1rem; }

/* ── Summary head ──────────────────────────────────────── */
.prb-summary-head[b-1unjn1juwd] {
    display: flex; align-items: baseline; gap: .5rem; flex-wrap: wrap;
    margin-bottom: var(--space-md);
}
.prb-total[b-1unjn1juwd] { font-size: 1.7rem; font-weight: 800; line-height: 1; letter-spacing: -.02em; }
.prb-split[b-1unjn1juwd] { margin-left: auto; display: inline-flex; gap: .4rem; }
.prb-chip[b-1unjn1juwd] {
    display: inline-flex; align-items: center; gap: .35rem;
    padding: .25rem .6rem;
    border-radius: var(--radius-pill);
    font-size: .78rem; font-weight: 600;
}
.prb-chip--ok[b-1unjn1juwd] { background: var(--success-50); color: var(--success-700); }
.prb-chip--warn[b-1unjn1juwd] { background: var(--warning-100); color: var(--warning-700); }

/* ── Stat cards ────────────────────────────────────────── */
.prb-stats[b-1unjn1juwd] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-md);
    margin-bottom: var(--space-lg);
}
@media (max-width: 660px) { .prb-stats[b-1unjn1juwd] { grid-template-columns: 1fr; } }

.prb-stat[b-1unjn1juwd] {
    display: flex; align-items: center; gap: .85rem;
    padding: var(--space-md);
    border-radius: var(--radius-lg);
    border: 1px solid var(--neutral-200);
    background: var(--bg-surface);
    box-shadow: var(--shadow-xs);
    transition: box-shadow .18s, transform .18s;
}
.prb-stat:hover[b-1unjn1juwd] { box-shadow: var(--shadow-card-hover); transform: translateY(-2px); }
.prb-stat-icon[b-1unjn1juwd] {
    flex: none;
    display: inline-flex; align-items: center; justify-content: center;
    width: 2.6rem; height: 2.6rem;
    border-radius: var(--radius-md);
    font-size: 1.2rem;
}
.prb-stat-num[b-1unjn1juwd] { font-size: 1.9rem; font-weight: 800; line-height: 1; letter-spacing: -.02em; }
.prb-stat-label[b-1unjn1juwd] { font-weight: 600; margin-top: .15rem; }
.prb-stat-sub[b-1unjn1juwd] { font-size: .78rem; color: var(--text-muted); margin-top: .1rem; }

.prb-stat--unsigned .prb-stat-icon[b-1unjn1juwd] { background: var(--neutral-100); color: var(--neutral-600); }
.prb-stat--api .prb-stat-icon[b-1unjn1juwd] { background: var(--info-100); color: var(--info-700); }
.prb-stat--ui .prb-stat-icon[b-1unjn1juwd] { background: var(--warning-100); color: var(--warning-700); }

.prb-stat.is-attention[b-1unjn1juwd] { border-color: var(--warning-300); background: var(--warning-50); }
.prb-stat.is-attention .prb-stat-num[b-1unjn1juwd], .prb-stat.is-attention .prb-stat-label[b-1unjn1juwd] { color: var(--warning-800); }

/* ── Confirm panel ─────────────────────────────────────── */
.prb-confirm[b-1unjn1juwd] {
    display: flex; align-items: center; justify-content: space-between;
    gap: var(--space-md); flex-wrap: wrap;
    padding: .9rem 1.1rem;
    border: 1px solid var(--warning-300);
    background: var(--warning-50);
    border-radius: var(--radius-lg);
    margin-bottom: var(--space-lg);
}
.prb-confirm-body[b-1unjn1juwd] { display: flex; align-items: flex-start; gap: .65rem; }
.prb-confirm-body > .bi[b-1unjn1juwd] { color: var(--warning-700); font-size: 1.25rem; margin-top: .05rem; }
.prb-confirm-actions[b-1unjn1juwd] { display: flex; gap: .5rem; }

/* ── Cards / tables ────────────────────────────────────── */
.prb-card[b-1unjn1juwd] {
    border: 1px solid var(--neutral-200);
    border-radius: var(--radius-lg);
    overflow: hidden;
    margin-bottom: var(--space-lg);
    background: var(--bg-surface);
    box-shadow: var(--shadow-sm);
}
.prb-card--warn[b-1unjn1juwd] { border-color: var(--warning-200); }
.prb-card--error[b-1unjn1juwd] { border-color: var(--error-200); }
.prb-card-head[b-1unjn1juwd] {
    display: flex; align-items: center; gap: .4rem;
    padding: .7rem 1rem;
    font-weight: 600; font-size: .92rem;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--neutral-200);
}
.prb-card--warn .prb-card-head[b-1unjn1juwd] { background: var(--warning-50); color: var(--warning-800); border-bottom-color: var(--warning-200); }
.prb-card--error .prb-card-head[b-1unjn1juwd] { background: var(--error-50); color: var(--error-700); border-bottom-color: var(--error-200); }
.prb-card-note[b-1unjn1juwd] { padding: .7rem 1rem 0; font-size: .85rem; color: var(--text-secondary); line-height: 1.5; }
.prb-card-foot[b-1unjn1juwd] { padding: .55rem 1rem; font-size: .8rem; }

.prb-table[b-1unjn1juwd] { width: 100%; border-collapse: collapse; }
.prb-table th[b-1unjn1juwd] {
    text-align: left;
    font-size: .72rem; text-transform: uppercase; letter-spacing: .04em;
    color: var(--text-muted); font-weight: 600;
    padding: .55rem 1rem;
    border-bottom: 1px solid var(--neutral-200);
}
.prb-table td[b-1unjn1juwd] { padding: .6rem 1rem; border-bottom: 1px solid var(--neutral-100); vertical-align: middle; font-size: .9rem; }
.prb-table tbody tr:last-child td[b-1unjn1juwd] { border-bottom: 0; }
.prb-table tbody tr:hover[b-1unjn1juwd] { background: var(--bg-hover); }
.prb-mono[b-1unjn1juwd] { font-family: var(--bs-font-monospace, ui-monospace, monospace); font-variant-numeric: tabular-nums; font-size: .85rem; }

/* ── Bucket badges ─────────────────────────────────────── */
.prb-badge[b-1unjn1juwd] {
    display: inline-block;
    padding: .2rem .55rem;
    border-radius: var(--radius-pill);
    font-size: .72rem; font-weight: 600; letter-spacing: .01em;
}
.prb-badge--unsigned[b-1unjn1juwd] { background: var(--neutral-100); color: var(--neutral-700); }
.prb-badge--apisigned[b-1unjn1juwd] { background: var(--info-100); color: var(--info-700); }
.prb-badge--uisigned[b-1unjn1juwd] { background: var(--warning-100); color: var(--warning-700); }

.prb-errlog[b-1unjn1juwd] {
    margin: 0; padding: 1rem;
    white-space: pre-wrap;
    font-size: .8rem;
    color: var(--error-700);
    background: var(--error-50);
}

/* ── Report hero ───────────────────────────────────────── */
.prb-report[b-1unjn1juwd] {
    display: flex; align-items: center; gap: var(--space-md);
    padding: 1.1rem 1.25rem;
    border-radius: var(--radius-lg);
    margin-bottom: var(--space-lg);
}
.prb-report > .bi[b-1unjn1juwd] { font-size: 1.9rem; }
.prb-report.is-ok[b-1unjn1juwd] { background: linear-gradient(135deg, var(--success-50), var(--bg-surface)); border: 1px solid var(--success-200); }
.prb-report.is-ok > .bi[b-1unjn1juwd] { color: var(--success-600); }
.prb-report.is-warn[b-1unjn1juwd] { background: linear-gradient(135deg, var(--warning-50), var(--bg-surface)); border: 1px solid var(--warning-200); }
.prb-report.is-warn > .bi[b-1unjn1juwd] { color: var(--warning-700); }
.prb-report-title[b-1unjn1juwd] { font-weight: 700; font-size: 1.05rem; }
.prb-report-stats[b-1unjn1juwd] { display: flex; flex-wrap: wrap; gap: .2rem 1.2rem; font-size: .9rem; color: var(--text-secondary); margin-top: .15rem; }
/* /Components/Pages/Admin/ProgramSettingsPage.razor.rz.scp.css */
/* Settings Tab Styles */

.settings-page-content[b-utacj8hf9q] {
    max-width: 100%;
}

/* Header Section */
.settings-header[b-utacj8hf9q] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
}

.settings-title-section[b-utacj8hf9q] {
    flex: 1;
}

.settings-title[b-utacj8hf9q] {
    font-size: 24px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 4px 0;
}

.settings-subtitle[b-utacj8hf9q] {
    font-size: 14px;
    color: #6B7280;
    margin: 0;
}

/* Sub Tabs */
.settings-subtabs[b-utacj8hf9q] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    background: linear-gradient(to bottom, #F8F9FA 0%, #F1F3F5 100%);
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    padding: 16px;
    margin-bottom: 24px;
    overflow-x: auto;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
}

/* Subtab Groups */
.subtab-group[b-utacj8hf9q] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.subtab-group-label[b-utacj8hf9q] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    color: #6B7280;
    letter-spacing: 0.5px;
    padding: 0 8px 8px 8px;
    border-bottom: 1px solid #E5E7EB;
}

.subtab-group-label i[b-utacj8hf9q] {
    font-size: 14px;
    color: var(--brand-500);
}

.subtab-group-items[b-utacj8hf9q] {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.settings-subtabs[b-utacj8hf9q]::-webkit-scrollbar {
    height: 6px;
}

.settings-subtabs[b-utacj8hf9q]::-webkit-scrollbar-thumb {
    background-color: #D1D5DB;
    border-radius: 3px;
}

.subtab-item[b-utacj8hf9q] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    background-color: transparent;
    border: 2px solid transparent;
    border-radius: 8px;
    color: #6B7280;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    white-space: nowrap;
}

.subtab-item i[b-utacj8hf9q] {
    font-size: 16px;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.subtab-item:hover[b-utacj8hf9q] {
    background: linear-gradient(135deg, #E5E7EB 0%, #D1D5DB 100%);
    color: #374151;
    transform: translateY(-1px);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

.subtab-item:hover i[b-utacj8hf9q] {
    transform: scale(1.1);
}

.subtab-item.active[b-utacj8hf9q] {
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-400) 100%);
    color: white;
    border: 2px solid var(--brand-500);
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.2);
}

.subtab-item.active i[b-utacj8hf9q] {
    transform: scale(1.1);
}

/* Sub Tab Content */
.subtab-content[b-utacj8hf9q] {
    min-height: 400px;
}

/* Placeholder Content */
.placeholder-content[b-utacj8hf9q] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 80px 20px;
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(240, 247, 252, 0.6) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
}

.placeholder-content i[b-utacj8hf9q] {
    font-size: 64px;
    color: #D1D5DB;
    margin-bottom: 16px;
}

.placeholder-content p[b-utacj8hf9q] {
    font-size: 16px;
    color: #6B7280;
    margin: 0;
}

/* Responsive Design */
@media (max-width: 768px) {
    .settings-header[b-utacj8hf9q] {
        flex-direction: column;
        gap: 16px;
    }
    
    .settings-subtabs[b-utacj8hf9q] {
        overflow-x: auto;
    }
}

/* /Components/Pages/Admin/PropertyTypesPage.razor.rz.scp.css */
/* ========================================
   Property Types Management Page Styles
   ======================================== */

.property-types-page[b-evbyllrcxh] {
    padding: 0;
}

/* Import Section */
.import-section[b-evbyllrcxh] {
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(240, 247, 252, 0.6) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 24px;
    margin-bottom: 24px;
}

.section-title[b-evbyllrcxh] {
    font-size: 18px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 8px 0;
}

.section-subtitle[b-evbyllrcxh] {
    font-size: 14px;
    color: #64748B;
    margin: 0 0 24px 0;
}

/* Import Options */
.import-option[b-evbyllrcxh] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 16px;
}

.option-header[b-evbyllrcxh] {
    margin-bottom: 12px;
}

.option-label[b-evbyllrcxh] {
    font-size: 15px;
    font-weight: 600;
    color: #1F2937;
    margin: 0;
}

/* File Upload */
.file-upload-container[b-evbyllrcxh] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.file-name[b-evbyllrcxh] {
    font-size: 14px;
    color: #64748B;
}

/* Server File Info */
.server-file-info[b-evbyllrcxh] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 6px;
    margin-top: 12px;
}

/* Bootstrap Form Check Customization */
.import-option .form-check[b-evbyllrcxh] {
    margin-bottom: 12px;
}

.import-option .form-check-input[b-evbyllrcxh] {
    width: 1.25rem;
    height: 1.25rem;
    cursor: pointer;
    border-color: #CBD5E1;
}

.import-option .form-check-input:checked[b-evbyllrcxh] {
    background-color: var(--brand-500);
    border-color: var(--brand-500);
}

.import-option .form-check-input:focus[b-evbyllrcxh] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 0.25rem rgba(15, 23, 42, 0.18);
}

.import-option .form-check-label[b-evbyllrcxh] {
    cursor: pointer;
    user-select: none;
}

.server-file-label[b-evbyllrcxh] {
    font-size: 13px;
    font-weight: 600;
    color: #475569;
}

.server-file-path[b-evbyllrcxh] {
    font-size: 13px;
    color: #1F2937;
    font-family: monospace;
    background: white;
    padding: 4px 8px;
    border-radius: 4px;
    border: 1px solid #E2E8F0;
}

/* Action Row */
.action-row[b-evbyllrcxh] {
    display: flex;
    justify-content: center;
    margin-top: 24px;
}

.btn-parse[b-evbyllrcxh] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 14px 32px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-parse:hover:not(:disabled)[b-evbyllrcxh] {
    background: var(--brand-700, #003760);
}

.btn-parse:disabled[b-evbyllrcxh] {
    background: #E2E8F0;
    color: #94A3B8;
    cursor: not-allowed;
}

.btn-parse i[b-evbyllrcxh] {
    font-size: 18px;
}

/* Version Section */
.version-section[b-evbyllrcxh] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 24px;
}

.no-versions[b-evbyllrcxh] {
    text-align: center;
    padding: 60px 20px;
    color: #64748B;
    font-size: 14px;
}

.no-versions p[b-evbyllrcxh] {
    margin: 0;
}

/* Header Action Buttons */
.btn-header-action[b-evbyllrcxh] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}

.btn-header-action:hover[b-evbyllrcxh] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-header-action.btn-primary[b-evbyllrcxh] {
    background: var(--brand-600, #004980);
    color: white;
    border: none;
}

.btn-header-action.btn-primary:hover[b-evbyllrcxh] {
    background: var(--brand-700, #003760);
    color: white;
}

.btn-header-action i[b-evbyllrcxh] {
    font-size: 16px;
}

/* Responsive */
@media (max-width: 768px) {
    .import-section[b-evbyllrcxh],
    .version-section[b-evbyllrcxh] {
        padding: 16px;
    }

    .file-upload-container[b-evbyllrcxh] {
        flex-direction: column;
        align-items: flex-start;
    }

    .btn-parse[b-evbyllrcxh] {
        width: 100%;
        justify-content: center;
    }
}

/* /Components/Pages/Admin/PurgeAuditPage.razor.rz.scp.css */
/* Reuses the same visual language as TestDataPurgePage; kept in its own scoped file
   so we don't depend on cross-component CSS leakage. Most rules are mirrors. */

.purge-page[b-n3apjks379] {
    padding: 20px 24px;
    max-width: 1500px;
    margin: 0 auto;
    color: #111827;
}

/* Toolbar */
.page-toolbar[b-n3apjks379] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 12px 16px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    margin-bottom: 20px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
    flex-wrap: wrap;
}

.toolbar-left[b-n3apjks379] { display: flex; align-items: center; gap: 12px; }

.app-icon[b-n3apjks379] {
    width: 40px; height: 40px; border-radius: 10px;
    background: linear-gradient(135deg, #2c5aa0, #1e3f73);
    color: white; display: flex; align-items: center; justify-content: center;
    font-size: 20px; box-shadow: 0 4px 10px rgba(44, 90, 160, 0.25);
}

.toolbar-title[b-n3apjks379] { font-size: 17px; font-weight: 700; letter-spacing: -0.3px; line-height: 1.2; }
.toolbar-subtitle[b-n3apjks379] { font-size: 12.5px; color: #6b7280; line-height: 1.3; margin-top: 2px; max-width: 720px; }
.toolbar-subtitle code[b-n3apjks379] { background: #f3f4f6; padding: 1px 5px; border-radius: 3px; font-size: 11.5px; color: #111827; }
.toolbar-right[b-n3apjks379] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }

/* Cards */
.card-section[b-n3apjks379] {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 1.25rem 1.5rem;
    margin-bottom: 16px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}

.card-section h2[b-n3apjks379] {
    font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.06em;
    color: #2c5aa0; font-weight: 700; margin: 0 0 0.85rem 0;
}

.card-section h2 .small[b-n3apjks379],
.card-section h2 .muted[b-n3apjks379] {
    font-weight: 500; color: #94a3b8; margin-left: 0.4rem;
    text-transform: none; letter-spacing: 0; font-size: 0.7rem;
}

.muted[b-n3apjks379] { color: #6b7280; }

/* Filters */
.filters-grid[b-n3apjks379] {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 0.85rem 1rem;
}
.filter-field--sm[b-n3apjks379] { grid-column: span 2; }
.filter-field--md[b-n3apjks379] { grid-column: span 4; }
.filter-field--lg[b-n3apjks379] { grid-column: span 6; }

@media (max-width: 1100px) {
    .filter-field--sm[b-n3apjks379] { grid-column: span 4; }
    .filter-field--md[b-n3apjks379] { grid-column: span 6; }
    .filter-field--lg[b-n3apjks379] { grid-column: span 12; }
}

.filter-field[b-n3apjks379] { min-width: 0; }
.filter-field > .form-control[b-n3apjks379],
.filter-field > .form-select[b-n3apjks379] {
    width: 100%; box-sizing: border-box;
    min-height: 31px; height: 31px;
    padding-top: 0.25rem; padding-bottom: 0.25rem;
    line-height: 1.5; font-size: 0.875rem;
}

.form-label.small[b-n3apjks379] {
    font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.04em;
    color: #475569; font-weight: 600; margin-bottom: 0.3rem;
    display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.filter-actions[b-n3apjks379] {
    display: flex; gap: 0.75rem; align-items: center; justify-content: flex-end;
    margin-top: 1rem; padding-top: 0.85rem; border-top: 1px solid #f1f5f9;
}

.filter-actions-right[b-n3apjks379] { display: flex; gap: 0.5rem; align-items: center; }

/* Buttons (mirror of purge page) */
.btn-action[b-n3apjks379] {
    display: inline-flex; align-items: center; gap: 0.4rem;
    padding: 0.4rem 0.85rem; background: white; border: 1px solid #d1d5db;
    border-radius: 6px; color: #374151; font-size: 0.875rem; font-weight: 500;
    text-decoration: none; cursor: pointer;
    transition: border-color 120ms, color 120ms, background-color 120ms;
}
.btn-action:hover:not(:disabled)[b-n3apjks379] { border-color: #2c5aa0; color: #2c5aa0; }
.btn-action:disabled[b-n3apjks379] { opacity: 0.5; cursor: not-allowed; }
.btn-action-primary[b-n3apjks379] { background: #2c5aa0; border-color: #2c5aa0; color: white; }
.btn-action-primary:hover:not(:disabled)[b-n3apjks379] { background: #244b87; border-color: #244b87; color: white; }
.btn-action i[b-n3apjks379] { font-size: 0.95rem; }

/* Table */
.results-wrap[b-n3apjks379] { border: 1px solid #e5e7eb; border-radius: 8px; overflow: hidden; }

.results-table[b-n3apjks379] { margin: 0; }

.results-table thead th[b-n3apjks379] {
    border-top: 0; border-bottom: 1px solid #e5e7eb;
    padding: 0.6rem 0.75rem; background: #f8fafc;
    font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.04em;
    color: #475569; font-weight: 600;
}

.results-table tbody td[b-n3apjks379] {
    padding: 0.55rem 0.75rem; border-top: 1px solid #f1f5f9;
    vertical-align: middle; font-size: 0.875rem;
}

.results-table tbody tr[b-n3apjks379] {
    transition: background-color 120ms;
    cursor: pointer;
}

.results-table tbody tr:hover:not(.detail-row)[b-n3apjks379] { background: #f8fafc; }
.results-table tbody tr.is-selected[b-n3apjks379] { background: #eff6ff; }
.results-table tbody tr.is-selected:hover[b-n3apjks379] { background: #dbeafe; }

.col-date[b-n3apjks379] { width: 150px; color: #6b7280; font-variant-numeric: tabular-nums; font-size: 0.825rem; white-space: nowrap; }
.col-num[b-n3apjks379] { width: 60px; text-align: center; }
.col-check[b-n3apjks379] { width: 36px; text-align: center; }

.app-number[b-n3apjks379] { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 0.825rem; color: #2c5aa0; font-weight: 600; }
.bank-id[b-n3apjks379] { color: #94a3b8; font-size: 0.85rem; font-variant-numeric: tabular-nums; }

.performer-id[b-n3apjks379] {
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 0.78rem; color: #374151;
    overflow: hidden; text-overflow: ellipsis; max-width: 180px; white-space: nowrap;
}
.performer-email[b-n3apjks379] { color: #6b7280; font-size: 0.78rem; }

.reason-cell[b-n3apjks379] {
    max-width: 280px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    color: #475569;
}

/* Count pills */
.count-pill[b-n3apjks379] {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 28px; height: 22px; padding: 0 0.45rem; border-radius: 11px;
    background: #eef2ff; color: #4338ca;
    font-size: 0.75rem; font-weight: 600; font-variant-numeric: tabular-nums;
}
.count-pill.is-zero[b-n3apjks379] { background: transparent; color: #cbd5e1; }

/* Outcome pills */
.outcome-pill[b-n3apjks379] {
    display: inline-flex; align-items: center; padding: 0.18rem 0.55rem;
    border-radius: 999px; font-size: 0.72rem; font-weight: 600;
    border: 1px solid transparent; line-height: 1.3; white-space: nowrap;
}
.outcome-pending[b-n3apjks379] { background: #fef3c7; color: #92400e; border-color: #fcd34d; }
.outcome-success[b-n3apjks379] { background: #ecfdf5; color: #047857; border-color: #a7f3d0; }
.outcome-partialfailure[b-n3apjks379] { background: #fff7ed; color: #c2410c; border-color: #fed7aa; }
.outcome-failed[b-n3apjks379] { background: #fef2f2; color: #b91c1c; border-color: #fecaca; }

/* Action pills — policy_audit records five actions, and Delete is the one that matters at a
   glance, so it is the only one given a destructive colour. */
.action-pill[b-n3apjks379] {
    display: inline-flex; align-items: center; padding: 0.18rem 0.55rem;
    border-radius: 999px; font-size: 0.72rem; font-weight: 600;
    border: 1px solid #e2e8f0; background: #f8fafc; color: #475569;
    line-height: 1.3; white-space: nowrap;
}
.action-pill.action-create[b-n3apjks379] { background: #eff6ff; color: #1d4ed8; border-color: #bfdbfe; }
.action-pill.action-delete[b-n3apjks379] { background: #fef2f2; color: #b91c1c; border-color: #fecaca; }

/* Detail row */
.results-table tbody tr.detail-row[b-n3apjks379] { background: #f8fafc; cursor: default; }
.results-table tbody tr.detail-row td[b-n3apjks379] { padding: 1rem 1.25rem; }

.detail-grid[b-n3apjks379] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem;
}

@media (max-width: 1000px) {
    .detail-grid[b-n3apjks379] { grid-template-columns: 1fr; }
}

.detail-label[b-n3apjks379] {
    font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.04em;
    color: #475569; font-weight: 700; margin-bottom: 0.4rem;
}

.snapshot-json[b-n3apjks379] {
    background: #1f2937; color: #d1d5db;
    padding: 0.75rem; border-radius: 6px;
    font-size: 0.75rem; line-height: 1.5;
    max-height: 360px; overflow: auto; margin: 0;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.snapshot-json.failure[b-n3apjks379] { color: #fca5a5; }

/* Source switch between the two forensic tables (feature 052). */
.source-toggle[b-n3apjks379] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}
/* /Components/Pages/Admin/RatingModelPage.razor.rz.scp.css */
/* ========================================
   Rating Model Page Styles
   ======================================== */

.rating-model-page[b-13a72y7k34] {
    padding: 0;
}

/* Status Badge */
.status-badge[b-13a72y7k34] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
}

.status-info[b-13a72y7k34] {
    background-color: #E3F1FB;
    color: var(--brand-500);
    border: 1px solid #99CBE3;
}

.status-info i[b-13a72y7k34] {
    font-size: 16px;
}

/* Header Action Buttons */
.btn-header-action[b-13a72y7k34] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}

.btn-header-action:hover[b-13a72y7k34] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-header-action i[b-13a72y7k34] {
    font-size: 16px;
}

/* Tab Navigation */
.rating-model-tabs[b-13a72y7k34] {
    display: flex;
    gap: 24px;
    background: linear-gradient(to bottom, #F8F9FA 0%, #F1F3F5 100%);
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    padding: 8px 12px;
    margin-bottom: 2px;
    overflow-x: auto;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06), 
                0 1px 2px rgba(0, 0, 0, 0.04),
                inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.rating-model-tabs[b-13a72y7k34]::-webkit-scrollbar {
    height: 6px;
}

.rating-model-tabs[b-13a72y7k34]::-webkit-scrollbar-thumb {
    background-color: #D1D5DB;
    border-radius: 3px;
}

.tab-item[b-13a72y7k34] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 6px 14px;
    background-color: transparent;
    border: 2px solid transparent;
    border-radius: 9px;
    color: #6B7280;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    white-space: nowrap;
    position: relative;
    min-width: fit-content;
}

/* Tab Change Indicator */
.tab-change-indicator[b-13a72y7k34] {
    display: inline-block;
    width: 8px;
    height: 8px;
    background-color: #F59E0B;
    border-radius: 50%;
    margin-left: 4px;
    animation: pulse-b-13a72y7k34 2s infinite;
    box-shadow: 0 0 0 0 rgba(245, 158, 11, 0.7);
}

@keyframes pulse-b-13a72y7k34 {
    0% {
        box-shadow: 0 0 0 0 rgba(245, 158, 11, 0.7);
    }
    70% {
        box-shadow: 0 0 0 6px rgba(245, 158, 11, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(245, 158, 11, 0);
    }
}

.tab-item i[b-13a72y7k34] {
    font-size: 18px;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tab-item span[b-13a72y7k34] {
    transition: color 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.tab-item:hover[b-13a72y7k34] {
    background: linear-gradient(135deg, #E5E7EB 0%, #D1D5DB 100%);
    color: #374151;
    transform: translateY(-2px);
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.12);
    border: 2px solid #D1D5DB;
}

.tab-item:hover i[b-13a72y7k34] {
    transform: scale(1.2);
}

/* Active state for tabs */
.tab-item.active[b-13a72y7k34] {
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-400) 100%);
    color: white;
    font-weight: 600;
    border: 2px solid var(--brand-500);
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.2);
}

.tab-item.active i[b-13a72y7k34] {
    transform: scale(1.1);
}

.tab-item.active:hover[b-13a72y7k34] {
    background: linear-gradient(135deg, var(--brand-600) 0%, var(--brand-500) 100%);
    color: white;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.3);
    transform: translateY(-2px);
    border: 2px solid var(--brand-600);
}

/* Two Column Layout */
.rating-model-two-column[b-13a72y7k34] {
    display: grid;
    grid-template-columns: 400px 1fr;
    gap: 24px;
    align-items: start;
}

.tab-column[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.metadata-column[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 20px;
    position: sticky;
    top: 24px;
}

/* Tab Content Area */
.tab-content-area[b-13a72y7k34] {
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(240, 247, 252, 0.6) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 24px;
    min-height: 400px;
}

/* Metadata Card */
.metadata-card[b-13a72y7k34] {
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 20px;
}

/* Metadata card header */
.metadata-card-header[b-13a72y7k34] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
}

.btn-edit-metadata[b-13a72y7k34] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.9);
    color: #6B7280;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-edit-metadata i[b-13a72y7k34] {
    font-size: 16px;
}

.btn-edit-metadata:hover[b-13a72y7k34] {
    background: white;
    border-color: #D97706;
    color: #D97706;
}

.metadata-status[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 8px;
}

.status-pill[b-13a72y7k34] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    width: fit-content;
}

.status-pill i[b-13a72y7k34] {
    font-size: 14px;
}

.status-published[b-13a72y7k34] {
    background: #ECFDF5;
    color: #059669;
    border: 1px solid #A7F3D0;
}

.status-draft[b-13a72y7k34] {
    background: #FEF3C7;
    color: #D97706;
    border: 1px solid #FCD34D;
}

.status-new[b-13a72y7k34] {
    background: #DBEAFE;
    color: #1E40AF;
    border: 1px solid #93C5FD;
}

.status-details-grid[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px;
    background: rgba(248, 250, 252, 0.6);
    border-radius: 8px;
    border: 1px solid rgba(226, 232, 240, 0.8);
}

.status-detail-item[b-13a72y7k34] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: #475569;
}

.status-detail-item i[b-13a72y7k34] {
    font-size: 14px;
    color: #64748B;
    width: 16px;
    flex-shrink: 0;
}

.status-detail-label[b-13a72y7k34] {
    font-weight: 600;
    color: #64748B;
    min-width: 100px;
}

.status-detail-value[b-13a72y7k34] {
    color: #1E293B;
    font-weight: 500;
}

.metadata-display[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.metadata-display-item[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 10px 12px;
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
}

.metadata-display-item .label[b-13a72y7k34] {
    text-transform: uppercase;
    font-size: 11px;
    font-weight: 600;
    color: #94A3B8;
}

.metadata-display-item .value[b-13a72y7k34] {
    font-size: 14px;
    color: #1F2937;
}

.metadata-form-actions[b-13a72y7k34] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 20px;
}

/* Unsaved Changes Banner */
.unsaved-changes-banner[b-13a72y7k34] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px;
    background: linear-gradient(135deg, #FFF7ED 0%, #FFEDD5 100%);
    border: 2px solid #FDBA74;
    border-radius: 10px;
    margin-bottom: 16px;
}

.unsaved-changes-banner i[b-13a72y7k34] {
    color: #F59E0B;
    font-size: 20px;
    margin-top: 2px;
}

.unsaved-changes-content[b-13a72y7k34] {
    flex: 1;
}

.unsaved-changes-content strong[b-13a72y7k34] {
    display: block;
    color: #92400E;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 4px;
}

.unsaved-changes-content p[b-13a72y7k34] {
    color: #B45309;
    font-size: 13px;
    margin: 0;
}

/* Changed Tabs List */
.changed-tabs-list[b-13a72y7k34] {
    background: #FEF3C7;
    border: 1px solid #FCD34D;
    border-radius: 8px;
    padding: 12px;
    margin-bottom: 16px;
}

.changed-tabs-title[b-13a72y7k34] {
    font-size: 13px;
    font-weight: 700;
    color: #92400E;
    margin: 0 0 8px 0;
}

.changed-tab-item[b-13a72y7k34] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 0;
    font-size: 13px;
    color: #B45309;
    font-weight: 600;
}

.changed-tab-item i[b-13a72y7k34] {
    color: #F59E0B;
    font-size: 16px;
}

.metadata-hint[b-13a72y7k34] {
    font-size: 12px;
    color: #6B7280;
    margin-top: 4px;
    display: block;
}

.metadata-label[b-13a72y7k34] {
    font-size: 13px;
    font-weight: 600;
    color: #475569;
}

/* Required field indicator */
.metadata-label[b-13a72y7k34]::after {
    content: "";
}

/* Add asterisk for required fields */
.metadata-item:has(.metadata-input[placeholder*="Enter model name"]) .metadata-label[b-13a72y7k34]::after,
.metadata-item:has(.metadata-input[type="datetime-local"]) .metadata-label[b-13a72y7k34]::after,
.metadata-item:has(.metadata-input[placeholder*="e.g"]) .metadata-label[b-13a72y7k34]::after {
    content: " *";
    color: var(--error-600);
}

.metadata-title[b-13a72y7k34] {
    font-size: 16px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 16px 0;
}

.metadata-form[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.metadata-item[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.metadata-label[b-13a72y7k34] {
    font-size: 13px;
    font-weight: 600;
    color: #475569;
}

.metadata-input[b-13a72y7k34],
.metadata-textarea[b-13a72y7k34] {
    padding: 10px 14px;
    background: white;
    border: 1px solid #CBD5E1;
    border-radius: 8px;
    font-size: 14px;
    color: #1F2937;
    transition: all 0.2s;
}

.metadata-input:focus[b-13a72y7k34],
.metadata-textarea:focus[b-13a72y7k34] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.metadata-textarea[b-13a72y7k34] {
    resize: vertical;
    font-family: inherit;
    min-height: 80px;
}

/* Actions Card */
.actions-card[b-13a72y7k34] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 20px;
}

.actions-title[b-13a72y7k34] {
    font-size: 16px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 16px 0;
}

.actions-buttons[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.btn-primary[b-13a72y7k34],
.btn-secondary[b-13a72y7k34] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 24px;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    width: 100%;
}

.btn-primary[b-13a72y7k34] {
    background: var(--brand-600, #004980);
    color: white;
}

.btn-primary:hover[b-13a72y7k34] {
    background: var(--brand-700, #003760);
}

.btn-secondary[b-13a72y7k34] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.btn-secondary:hover[b-13a72y7k34] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-primary i[b-13a72y7k34],
.btn-secondary i[b-13a72y7k34] {
    font-size: 16px;
}

/* Responsive */
@media (max-width: 1200px) {
    .rating-model-two-column[b-13a72y7k34] {
        grid-template-columns: 350px 1fr;
    }
}

@media (max-width: 1024px) {
    .rating-model-two-column[b-13a72y7k34] {
        grid-template-columns: 1fr;
    }

    .metadata-column[b-13a72y7k34] {
        order: -1;
        position: static;
    }
}

@media (max-width: 768px) {
    .rating-model-tabs[b-13a72y7k34] {
        gap: 12px;
        padding: 6px 8px;
    }

    .tab-item[b-13a72y7k34] {
        padding: 8px 14px;
        gap: 8px;
        font-size: 13px;
    }

    .tab-item i[b-13a72y7k34] {
        font-size: 16px;
    }

    .tab-content-area[b-13a72y7k34] {
        padding: 16px;
    }
}

/* ========================================
   Version History Modal Styles
   ======================================== */

.modal-overlay[b-13a72y7k34] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 1.5rem;
}

.modal-content-large[b-13a72y7k34] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    max-width: 700px;
    width: 100%;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.modal-header[b-13a72y7k34] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    background: #fff;
    border-bottom: 1px solid #EEF2F6;
}

.modal-header-text[b-13a72y7k34] {
    flex: 1;
    min-width: 0;
}

.modal-title[b-13a72y7k34] {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
    margin: 0;
}

.modal-subtitle[b-13a72y7k34] {
    font-size: 0.8rem;
    color: #64748B;
    line-height: 1.45;
    margin: 2px 0 0;
}

.modal-close-btn[b-13a72y7k34] {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    background: transparent;
    border: none;
    color: #94A3B8;
    cursor: pointer;
    border-radius: 8px;
    transition: all 0.15s;
    display: flex;
    align-items: center;
    justify-content: center;
}

.modal-close-btn:hover[b-13a72y7k34] {
    background: #F1F5F9;
    color: #0F172A;
}

.modal-body[b-13a72y7k34] {
    padding: 1.15rem 1.5rem;
    overflow-y: auto;
    flex: 1;
}

.modal-footer[b-13a72y7k34] {
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
}

.btn-modal-close[b-13a72y7k34] {
    padding: 0.55rem 1.15rem;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-modal-close:hover[b-13a72y7k34] {
    background: #F1F5F9;
    color: #0F172A;
}

/* Version List */
.version-list[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 16px;
}

.version-item[b-13a72y7k34] {
    background: #F8FAFC;
    border: 2px solid #E2E8F0;
    border-radius: 10px;
    padding: 18px;
    transition: all 0.2s;
}

.version-item:hover[b-13a72y7k34] {
    border-color: #CBD5E1;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.version-item.active-version[b-13a72y7k34] {
    background: linear-gradient(135deg, #E3F1FB 0%, #CCE5F1 100%);
    border: 2px solid var(--brand-500);
}

.version-header[b-13a72y7k34] {
    margin-bottom: 12px;
}

.version-name-wrapper[b-13a72y7k34] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.version-name[b-13a72y7k34] {
    font-size: 16px;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
}

.version-badge[b-13a72y7k34] {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.active-badge[b-13a72y7k34] {
    background: linear-gradient(135deg, #10B981 0%, #059669 100%);
    color: white;
}

.version-tag[b-13a72y7k34] {
    background: #E5E7EB;
    color: #6B7280;
}

.version-details[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.version-meta[b-13a72y7k34] {
    font-size: 13px;
    color: #475569;
    margin: 0;
}

.version-meta strong[b-13a72y7k34] {
    color: #1F2937;
    font-weight: 600;
}

.version-description[b-13a72y7k34] {
    font-size: 13px;
    color: #64748B;
    line-height: 1.6;
    margin: 8px 0 0 0;
    padding-top: 8px;
    border-top: 1px solid #E2E8F0;
}

/* Responsive Modal */
@media (max-width: 768px) {
    .modal-content-large[b-13a72y7k34] {
        max-width: 100%;
        margin: 0;
        border-radius: 12px 12px 0 0;
        max-height: 95vh;
    }

    .modal-header[b-13a72y7k34],
    .modal-body[b-13a72y7k34],
    .modal-footer[b-13a72y7k34] {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* ========================================
   Preview Calculator Form Styles
   ======================================== */

.preview-form[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.preview-field[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.preview-label[b-13a72y7k34] {
    font-size: 13px;
    font-weight: 600;
    color: var(--brand-500);
}

.preview-input[b-13a72y7k34],
.preview-select[b-13a72y7k34] {
    padding: 10px 14px;
    background: white;
    border: 1px solid #CBD5E1;
    border-radius: 8px;
    font-size: 14px;
    color: #1F2937;
    transition: all 0.2s;
}

.preview-input:focus[b-13a72y7k34],
.preview-select:focus[b-13a72y7k34] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.preview-result-field[b-13a72y7k34] {
    background: #F1F5F9;
    border: 1px solid #CBD5E1;
    border-radius: 8px;
    padding: 12px;
}

.preview-result-label[b-13a72y7k34] {
    font-size: 14px;
    font-weight: 700;
    color: var(--brand-500);
    margin-bottom: 4px;
}

.preview-result-hint[b-13a72y7k34] {
    font-size: 12px;
    color: #64748B;
}

.preview-breakdown[b-13a72y7k34] {
    background: #F8FAFC;
    border: 2px solid #E2E8F0;
    border-radius: 10px;
    padding: 16px;
    margin-top: 8px;
}

.breakdown-row[b-13a72y7k34] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 0;
    font-size: 14px;
    color: #475569;
    border-bottom: 1px solid #E2E8F0;
}

.breakdown-row:last-of-type[b-13a72y7k34] {
    border-bottom: none;
    padding-bottom: 12px;
    margin-bottom: 12px;
}

.breakdown-value[b-13a72y7k34] {
    font-weight: 700;
    color: #1F2937;
}

.breakdown-total[b-13a72y7k34] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 12px;
    border-top: 2px solid var(--brand-500);
    font-size: 16px;
    font-weight: 700;
    color: var(--brand-500);
}

.total-value[b-13a72y7k34] {
    font-size: 18px;
    font-weight: 700;
    color: var(--brand-500);
}

.preview-details[b-13a72y7k34] {
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    padding: 14px;
    font-size: 12px;
    color: #475569;
    line-height: 1.8;
}

.preview-details p[b-13a72y7k34] {
    margin: 4px 0;
}

@media (max-width: 768px) {
    .modal-content-preview[b-13a72y7k34] {
        max-width: 100%;
        max-height: 95vh;
        border-radius: 12px 12px 0 0;
    }
}

/* ========================================
   Inactive Model Banner
   ======================================== */

.inactive-model-banner[b-13a72y7k34] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 16px 20px;
    background: linear-gradient(135deg, #FEF3C7 0%, #FDE68A 100%);
    border: 2px solid #F59E0B;
    border-radius: 12px;
    margin-bottom: 20px;
}

.inactive-banner-content[b-13a72y7k34] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.inactive-banner-content i[b-13a72y7k34] {
    font-size: 24px;
    color: #D97706;
}

.inactive-banner-content strong[b-13a72y7k34] {
    display: block;
    font-size: 15px;
    color: #92400E;
}

.inactive-banner-content p[b-13a72y7k34] {
    margin: 2px 0 0;
    font-size: 13px;
    color: #B45309;
}

.inactive-banner-actions[b-13a72y7k34] {
    display: flex;
    gap: 10px;
    flex-shrink: 0;
}

.btn-banner-activate[b-13a72y7k34] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    background: var(--success-600, #059669);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-banner-activate:hover[b-13a72y7k34] {
    background: var(--success-700, #047857);
}

.btn-banner-back[b-13a72y7k34] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    background: white;
    color: #92400E;
    border: 2px solid #F59E0B;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-banner-back:hover[b-13a72y7k34] {
    background: #FFFBEB;
}

/* ========================================
   Version History Action Buttons
   ======================================== */

.version-header[b-13a72y7k34] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.version-actions[b-13a72y7k34] {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
}

.btn-version-action[b-13a72y7k34] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 12px;
    border: none;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-version-view[b-13a72y7k34] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.btn-version-view:hover[b-13a72y7k34] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-version-activate[b-13a72y7k34] {
    background: #ECFDF5;
    color: #059669;
    border: 1px solid #A7F3D0;
}

.btn-version-activate:hover[b-13a72y7k34] {
    background: #D1FAE5;
    color: #047857;
}

.version-current-label[b-13a72y7k34] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    font-weight: 600;
    color: #059669;
    padding: 6px 12px;
}

/* ========================================
   SweetAlert-Style Dialogs
   ======================================== */

.modal-content-sweet[b-13a72y7k34] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    max-width: 480px;
    width: 100%;
    padding: 32px;
    text-align: center;
    animation: sweetPopIn-b-13a72y7k34 0.3s ease;
}

@keyframes sweetPopIn-b-13a72y7k34 {
    from {
        opacity: 0;
        transform: scale(0.9);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.sweet-icon[b-13a72y7k34] {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: var(--brand-50, #E6F2F8);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.sweet-icon i[b-13a72y7k34] {
    font-size: 1.25rem;
    color: var(--brand-600, #004980);
}

.sweet-icon-warning[b-13a72y7k34] {
    background: var(--accent-50, #FFFBEB);
}

.sweet-icon-warning i[b-13a72y7k34] {
    color: #B45309;
}

.sweet-title[b-13a72y7k34] {
    font-size: 20px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 8px;
}

.sweet-text[b-13a72y7k34] {
    font-size: 14px;
    color: #64748B;
    margin: 0 0 24px;
    line-height: 1.6;
}

/* Choice Grid */
.sweet-choice-grid[b-13a72y7k34] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 20px;
}

.sweet-choice-card[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 20px 16px;
    background: #F8FAFC;
    border: 2px solid #E2E8F0;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s;
    text-align: center;
}

.sweet-choice-card i[b-13a72y7k34] {
    font-size: 28px;
    color: #64748B;
}

.sweet-choice-card strong[b-13a72y7k34] {
    font-size: 14px;
    color: #1F2937;
}

.sweet-choice-card span[b-13a72y7k34] {
    font-size: 12px;
    color: #64748B;
    line-height: 1.4;
}

.sweet-choice-card:hover[b-13a72y7k34] {
    border-color: var(--brand-500);
    background: #F1F5F9;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.sweet-choice-primary[b-13a72y7k34] {
    border-color: var(--brand-400);
    background: linear-gradient(135deg, #E3F1FB 0%, #F0F7FC 100%);
}

.sweet-choice-primary i[b-13a72y7k34] {
    color: var(--brand-500);
}

.sweet-choice-primary:hover[b-13a72y7k34] {
    border-color: var(--brand-500);
    background: linear-gradient(135deg, #CCE5F1 0%, #E3F1FB 100%);
}

/* Clone Form */
.clone-form[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-bottom: 20px;
    text-align: left;
}

.clone-field[b-13a72y7k34] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.clone-label[b-13a72y7k34] {
    font-size: 13px;
    font-weight: 600;
    color: #475569;
}

.clone-input[b-13a72y7k34] {
    padding: 10px 14px;
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-size: 14px;
    color: #1F2937;
    transition: all 0.2s;
}

.clone-input:focus[b-13a72y7k34] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.clone-error[b-13a72y7k34] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: #FEF2F2;
    border: 1px solid #FECACA;
    border-radius: 8px;
    color: #DC2626;
    font-size: 13px;
    font-weight: 500;
    margin-bottom: 16px;
}

/* Sweet Actions */
.sweet-actions[b-13a72y7k34] {
    display: flex;
    gap: 12px;
    justify-content: center;
}

.btn-sweet-cancel[b-13a72y7k34] {
    padding: 0.55rem 1.15rem;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-sweet-cancel:hover[b-13a72y7k34] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-sweet-confirm[b-13a72y7k34] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0.55rem 1.15rem;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-sweet-confirm:hover[b-13a72y7k34] {
    background: var(--brand-700, #003760);
}

.btn-sweet-confirm:disabled[b-13a72y7k34] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-sweet-warning[b-13a72y7k34] {
    background: var(--accent-600, #D97706);
}

.btn-sweet-warning:hover[b-13a72y7k34] {
    background: #B45309;
}

@media (max-width: 480px) {
    .sweet-choice-grid[b-13a72y7k34] {
        grid-template-columns: 1fr;
    }

    .modal-content-sweet[b-13a72y7k34] {
        padding: 24px 20px;
        max-width: 100%;
    }

    .inactive-model-banner[b-13a72y7k34] {
        flex-direction: column;
        text-align: center;
    }

    .inactive-banner-actions[b-13a72y7k34] {
        justify-content: center;
    }
}
/* /Components/Pages/Admin/RatingModelTabs/FeesTab.razor.rz.scp.css */
/* ========================================
   Fees Tab Styles - Matching LtvTab Design
   ======================================== */

.fees-tab[b-rluz2iu2ze] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Tab Header Section */
.tab-header-section[b-rluz2iu2ze] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding-bottom: 20px;
    border-bottom: 2px solid #E2E8F0;
}

.tab-header-left[b-rluz2iu2ze] {
    flex: 1;
}

.tab-title[b-rluz2iu2ze] {
    font-size: 24px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 8px 0;
}

.tab-description[b-rluz2iu2ze] {
    font-size: 14px;
    color: #64748B;
    margin: 0;
}

/* Tab Header Right */
.tab-header-right[b-rluz2iu2ze] {
    display: flex;
    gap: 8px;
}

.btn-action[b-rluz2iu2ze] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    background: transparent;
    color: #64748B;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-action:hover:not(:disabled)[b-rluz2iu2ze] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-action:disabled[b-rluz2iu2ze] {
    opacity: 0.4;
    cursor: not-allowed;
}

.btn-update:not(:disabled)[b-rluz2iu2ze] {
    background: var(--success-600, #059669);
    color: white;
    border-color: var(--success-600, #059669);
}

.btn-update:hover:not(:disabled)[b-rluz2iu2ze] {
    background: var(--success-700, #047857);
    color: white;
    border-color: var(--success-700, #047857);
}

.spinner-border-sm[b-rluz2iu2ze] {
    width: 1rem;
    height: 1rem;
    border-width: 0.2em;
}

.fees-content[b-rluz2iu2ze] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Fee Form Section */
.fee-form-section[b-rluz2iu2ze] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    max-width: 600px;
}

.fee-row[b-rluz2iu2ze] {
    display: flex;
    align-items: center;
    gap: 16px;
    position: relative;
}

.fee-label[b-rluz2iu2ze] {
    font-size: 14px;
    font-weight: 600;
    color: #1F2937;
    min-width: 220px;
}

.fee-input-wrapper[b-rluz2iu2ze] {
    display: flex;
    align-items: center;
    position: relative;
}

.currency-symbol[b-rluz2iu2ze] {
    position: absolute;
    left: 14px;
    font-size: 16px;
    font-weight: 700;
    color: #1F2937;
    pointer-events: none;
}

.fee-input[b-rluz2iu2ze] {
    width: 180px;
    padding: 10px 14px 10px 32px;
    border: 2px solid #3B82F6;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 700;
    color: #1F2937;
    text-align: left;
    background: white;
    transition: all 0.2s ease;
}

.fee-input:focus[b-rluz2iu2ze] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.fee-input:hover[b-rluz2iu2ze] {
    border-color: var(--brand-500);
}

.fee-input:disabled[b-rluz2iu2ze] {
    opacity: 0.5;
    cursor: not-allowed;
}

.change-indicator[b-rluz2iu2ze] {
    margin-left: 12px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    font-weight: 600;
    color: #F59E0B;
    padding: 4px 8px;
    background: #FEF3C7;
    border-radius: 4px;
}

.change-indicator i[b-rluz2iu2ze] {
    font-size: 10px;
}

/* Fees Info Section */
.fees-info[b-rluz2iu2ze] {
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 16px 20px;
    max-width: 600px;
}

.fees-info p[b-rluz2iu2ze] {
    margin: 0 0 8px 0;
    font-size: 13px;
    color: #475569;
}

.fees-info p:last-child[b-rluz2iu2ze] {
    margin-bottom: 0;
}

.fees-info strong[b-rluz2iu2ze] {
    color: #1F2937;
    font-weight: 700;
}

/* Update Details in Modal */
.update-details[b-rluz2iu2ze] {
    padding: 12px;
    background: #F8FAFC;
    border-radius: 8px;
    margin-top: 12px;
}

.update-details p[b-rluz2iu2ze] {
    margin: 8px 0;
    font-size: 14px;
    color: #1F2937;
}

.update-details p:first-child[b-rluz2iu2ze] {
    margin-top: 0;
}

.update-details p:last-child[b-rluz2iu2ze] {
    margin-bottom: 0;
}

/* Alert Styles */
.alert[b-rluz2iu2ze] {
    padding: 14px 16px;
    border-radius: 8px;
    font-size: 14px;
    display: flex;
    align-items: center;
    animation: slideDown-b-rluz2iu2ze 0.3s ease-out;
    margin-bottom: 16px;
}

@keyframes slideDown-b-rluz2iu2ze {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.alert-success[b-rluz2iu2ze] {
    background-color: #D1FAE5;
    border: 1px solid #6EE7B7;
    color: #065F46;
}

.alert-danger[b-rluz2iu2ze] {
    background-color: #FEE2E2;
    border: 1px solid #FCA5A5;
    color: #991B1B;
}

.alert i[b-rluz2iu2ze] {
    font-size: 16px;
}
/* Loading State */
.text-center[b-rluz2iu2ze] {
    text-align: center;
}

.py-5[b-rluz2iu2ze] {
    padding-top: 3rem;
    padding-bottom: 3rem;
}

.spinner-border[b-rluz2iu2ze] {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    vertical-align: text-bottom;
    border: 0.25em solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: spinner-border-b-rluz2iu2ze 0.75s linear infinite;
}

@keyframes spinner-border-b-rluz2iu2ze {
    to { transform: rotate(360deg); }
}

.text-primary[b-rluz2iu2ze] {
    color: #3B82F6;
}

.visually-hidden[b-rluz2iu2ze] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

.mt-2[b-rluz2iu2ze] {
    margin-top: 0.5rem;
}

.me-2[b-rluz2iu2ze] {
    margin-right: 0.5rem;
}

.text-muted[b-rluz2iu2ze] {
    color: #6c757d;
}

/* Responsive */
@media (max-width: 768px) {
    .fees-tab[b-rluz2iu2ze] {
        gap: 16px;
    }

    .tab-header-section[b-rluz2iu2ze] {
        flex-direction: column;
        gap: 12px;
    }

    .tab-title[b-rluz2iu2ze] {
        font-size: 20px;
    }

    .btn-action[b-rluz2iu2ze] {
        width: 100%;
        justify-content: center;
    }

    .fee-row[b-rluz2iu2ze] {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .fee-label[b-rluz2iu2ze] {
        min-width: auto;
    }

    .change-indicator[b-rluz2iu2ze] {
        margin-left: 0;
        margin-top: 4px;
    }
}

@media (max-width: 576px) {
    .tab-header-section[b-rluz2iu2ze] {
        padding-bottom: 16px;
    }

    .tab-title[b-rluz2iu2ze] {
        font-size: 18px;
    }

    .alert[b-rluz2iu2ze] {
        padding: 12px 14px;
        font-size: 13px;
    }
}

/* /Components/Pages/Admin/RatingModelTabs/LoanTypeFactorsTab.razor.rz.scp.css */
/* ========================================
   Loan Type Factors Tab Styles
   Matching LtvTab design
   ======================================== */

.loan-type-factors-container[b-2jnjzau43m] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Tab Header Section */
.tab-header-section[b-2jnjzau43m] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding-bottom: 20px;
    border-bottom: 2px solid #E2E8F0;
}

.tab-header-left[b-2jnjzau43m] {
    flex: 1;
}

.tab-title[b-2jnjzau43m] {
    font-size: 24px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 8px 0;
}

.tab-description[b-2jnjzau43m] {
    font-size: 14px;
    color: #64748B;
    margin: 0;
}

/* Header Actions */
.tab-header-right[b-2jnjzau43m] {
    display: flex;
    gap: 8px;
}

.btn-action[b-2jnjzau43m] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    background: transparent;
    color: #64748B;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-action:hover:not(:disabled)[b-2jnjzau43m] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-action:disabled[b-2jnjzau43m] {
    opacity: 0.4;
    cursor: not-allowed;
}

.btn-action i[b-2jnjzau43m] {
    font-size: 16px;
}

/* Alert Styles - Matching LtvTab */
.alert[b-2jnjzau43m] {
    padding: 14px 16px;
    border-radius: 8px;
    font-size: 14px;
    display: flex;
    align-items: center;
    animation: slideDown-b-2jnjzau43m 0.3s ease-out;
    margin-bottom: 16px;
}

@keyframes slideDown-b-2jnjzau43m {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.alert-success[b-2jnjzau43m] {
    background-color: #D1FAE5;
    border: 1px solid #6EE7B7;
    color: #065F46;
}

.alert-danger[b-2jnjzau43m] {
    background-color: #FEE2E2;
    border: 1px solid #FCA5A5;
    color: #991B1B;
}

.alert i[b-2jnjzau43m] {
    font-size: 16px;
}

.btn-close[b-2jnjzau43m] {
    margin-left: auto;
    padding: 0;
    background: transparent;
    border: none;
    font-size: 16px;
    opacity: 0.5;
    cursor: pointer;
}

.btn-close:hover[b-2jnjzau43m] {
    opacity: 1;
}

/* Loading State */
.text-center[b-2jnjzau43m] {
    text-align: center;
}

.py-5[b-2jnjzau43m] {
    padding-top: 3rem;
    padding-bottom: 3rem;
}

.spinner-border[b-2jnjzau43m] {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    vertical-align: text-bottom;
    border: 0.25em solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: spinner-border-b-2jnjzau43m 0.75s linear infinite;
}

@keyframes spinner-border-b-2jnjzau43m {
    to { transform: rotate(360deg); }
}

.text-primary[b-2jnjzau43m] {
    color: #3B82F6;
}

.visually-hidden[b-2jnjzau43m] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

.mt-2[b-2jnjzau43m] {
    margin-top: 0.5rem;
}

.text-muted[b-2jnjzau43m] {
    color: #6c757d;
}

/* Empty State */
.alert-info[b-2jnjzau43m] {
    background-color: #DBEAFE;
    border: 1px solid #93C5FD;
    color: #1E40AF;
}

/* Table Container */
.factors-grid[b-2jnjzau43m] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    overflow: hidden;
}

/* Table Styles */
.table[b-2jnjzau43m] {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
}

.table thead[b-2jnjzau43m] {
    background: linear-gradient(180deg, #F8FAFC 0%, #F1F5F9 100%);
}

.table thead th[b-2jnjzau43m] {
    padding: 16px 20px;
    font-size: 13px;
    font-weight: 700;
    color: #1F2937;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 2px solid #E2E8F0;
    text-align: left;
}

.table thead th.text-center[b-2jnjzau43m] {
    text-align: center;
}

.table tbody tr[b-2jnjzau43m] {
    background: white;
    transition: all 0.2s;
    border-bottom: 1px solid #E2E8F0;
}

.table tbody tr:hover:not(.editing-row)[b-2jnjzau43m] {
    background: #F8FAFC;
}

.table tbody tr.editing-row[b-2jnjzau43m] {
    background: #EFF6FF !important;
    border-left: 3px solid #3B82F6;
}

.table tbody td[b-2jnjzau43m] {
    padding: 12px 20px;
    font-size: 14px;
    color: #1F2937;
    vertical-align: middle;
}

.table tbody td strong[b-2jnjzau43m] {
    font-weight: 600;
    color: #1F2937;
}

/* Form Controls */
.form-control[b-2jnjzau43m],
.form-control-sm[b-2jnjzau43m] {
    width: 100%;
    padding: 8px 12px;
    background: white;
    border: 1px solid #CBD5E1;
    border-radius: 6px;
    font-size: 14px;
    color: #1F2937;
    transition: all 0.2s;
}

.form-control-sm[b-2jnjzau43m] {
    padding: 6px 10px;
    font-size: 13px;
}

.form-control:focus[b-2jnjzau43m],
.form-control-sm:focus[b-2jnjzau43m] {
    outline: none;
    border-color: #3B82F6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

/* Preview Cell */
.preview-cell[b-2jnjzau43m] {
    text-align: center;
    vertical-align: middle;
}

/* Badges - Matching LtvTab */
.badge-credit[b-2jnjzau43m],
.badge-debit[b-2jnjzau43m],
.badge-neutral[b-2jnjzau43m] {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
}

.badge-credit[b-2jnjzau43m] {
    background: #D1FAE5;
    color: #059669;
}

.badge-debit[b-2jnjzau43m] {
    background: #FEF3C7;
    color: #D97706;
}

.badge-neutral[b-2jnjzau43m] {
    background: #F1F5F9;
    color: #64748B;
}

/* Action Buttons - Matching LtvTab */
.actions-column[b-2jnjzau43m] {
    width: 120px;
}

.action-buttons[b-2jnjzau43m] {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
}

.btn-icon[b-2jnjzau43m] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    border: none;
    border-radius: 6px;
    background: transparent;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-icon i[b-2jnjzau43m] {
    font-size: 16px;
}

.btn-edit[b-2jnjzau43m] {
    color: #3B82F6;
}

.btn-edit:hover:not(:disabled)[b-2jnjzau43m] {
    background: #DBEAFE;
    color: #1E40AF;
}

.btn-delete[b-2jnjzau43m] {
    color: var(--error-600);
}

.btn-delete:hover:not(:disabled)[b-2jnjzau43m] {
    background: #FEE2E2;
    color: #991B1B;
}

.btn-save[b-2jnjzau43m] {
    color: #10B981;
}

.btn-save:hover:not(:disabled)[b-2jnjzau43m] {
    background: #D1FAE5;
    color: #047857;
}

.btn-cancel[b-2jnjzau43m] {
    color: #6B7280;
}

.btn-cancel:hover:not(:disabled)[b-2jnjzau43m] {
    background: #F3F4F6;
    color: #374151;
}

.btn-icon:disabled[b-2jnjzau43m] {
    opacity: 0.3;
    cursor: not-allowed;
}

/* Responsive Design */
@media (max-width: 768px) {
    .loan-type-factors-container[b-2jnjzau43m] {
        gap: 16px;
    }

    .tab-header-section[b-2jnjzau43m] {
        flex-direction: column;
        gap: 12px;
    }

    .tab-title[b-2jnjzau43m] {
        font-size: 20px;
    }

    .tab-description[b-2jnjzau43m] {
        font-size: 13px;
    }

    .factors-grid[b-2jnjzau43m] {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .table[b-2jnjzau43m] {
        min-width: 700px;
    }

    .table thead th[b-2jnjzau43m],
    .table tbody td[b-2jnjzau43m] {
        padding: 10px 12px;
        font-size: 13px;
    }

    .action-buttons[b-2jnjzau43m] {
        flex-direction: column;
        gap: 4px;
    }

    .btn-icon[b-2jnjzau43m] {
        width: 28px;
        height: 28px;
    }

    .btn-icon i[b-2jnjzau43m] {
        font-size: 14px;
    }
}

@media (max-width: 576px) {
    .tab-header-section[b-2jnjzau43m] {
        padding-bottom: 16px;
    }

    .tab-title[b-2jnjzau43m] {
        font-size: 18px;
    }

    .btn-action[b-2jnjzau43m] {
        width: 100%;
        justify-content: center;
    }

    .alert[b-2jnjzau43m] {
        padding: 12px 14px;
        font-size: 13px;
    }
}

/* /Components/Pages/Admin/RatingModelTabs/LtvFactorsTab.razor.rz.scp.css */
/* ========================================
   LTV Tab Styles
   ======================================== */

.ltv-tab[b-05u7rqyt19] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Tab Header Section */
.tab-header-section[b-05u7rqyt19] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding-bottom: 20px;
    border-bottom: 2px solid #E2E8F0;
}

.tab-header-left[b-05u7rqyt19] {
    flex: 1;
}

.tab-title[b-05u7rqyt19] {
    font-size: 24px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 8px 0;
}

.tab-description[b-05u7rqyt19] {
    font-size: 14px;
    color: #64748B;
    margin: 0;
}

/* LTV Content */
.ltv-content[b-05u7rqyt19] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Decline Threshold Section */
.decline-threshold-section[b-05u7rqyt19] {
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 20px;
}

.threshold-label[b-05u7rqyt19] {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #1F2937;
}

.threshold-input-wrapper[b-05u7rqyt19] {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 12px;
}

.threshold-input[b-05u7rqyt19] {
    width: 120px;
    padding: 10px 14px;
    background: white;
    border: 2px solid #3B82F6;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 700;
    color: #1F2937;
    text-align: center;
}

.threshold-input:focus[b-05u7rqyt19] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.threshold-hint[b-05u7rqyt19] {
    font-size: 13px;
    color: #64748B;
}

.current-threshold[b-05u7rqyt19] {
    font-size: 13px;
    color: #1F2937;
    margin: 0;
    padding: 8px 12px;
    background: white;
    border-radius: 6px;
    border: 1px solid #E2E8F0;
}

/* Bulk Fill Section */
.bulk-fill-section[b-05u7rqyt19] {
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 16px 20px;
}

.bulk-fill-title[b-05u7rqyt19] {
    font-size: 16px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 12px 0;
}

.bulk-fill-controls[b-05u7rqyt19] {
    display: flex;
    gap: 12px;
}

.btn-bulk-fill[b-05u7rqyt19] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-bulk-fill:hover[b-05u7rqyt19] {
    background: var(--brand-700, #003760);
}

.btn-bulk-fill i[b-05u7rqyt19] {
    font-size: 16px;
}

/* LTV Table Container */
.ltv-table-container[b-05u7rqyt19] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    overflow: hidden;
    max-height: 600px;
    overflow-y: auto;
}

.ltv-table-container[b-05u7rqyt19]::-webkit-scrollbar {
    width: 8px;
}

.ltv-table-container[b-05u7rqyt19]::-webkit-scrollbar-track {
    background: #F1F5F9;
}

.ltv-table-container[b-05u7rqyt19]::-webkit-scrollbar-thumb {
    background: #CBD5E1;
    border-radius: 4px;
}

/* LTV Table */
.ltv-table[b-05u7rqyt19] {
    width: 100%;
    border-collapse: collapse;
}

.ltv-table thead[b-05u7rqyt19] {
    position: sticky;
    top: 0;
    background: #F8FAFC;
    z-index: 10;
}

.ltv-table th[b-05u7rqyt19] {
    padding: 14px 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 700;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 2px solid #E2E8F0;
}

.ltv-table tbody tr[b-05u7rqyt19] {
    transition: background-color 0.2s;
}

.ltv-table tbody tr:hover[b-05u7rqyt19] {
    background: #F8FAFC;
}

.ltv-table tbody tr.decline-row[b-05u7rqyt19] {
    background: #FEE2E2;
}

.ltv-table tbody tr.decline-row:hover[b-05u7rqyt19] {
    background: #FECACA;
}

.ltv-table td[b-05u7rqyt19] {
    padding: 12px 20px;
    font-size: 14px;
    color: #1F2937;
    border-bottom: 1px solid #E2E8F0;
}

.ltv-percent[b-05u7rqyt19] {
    font-weight: 600;
    color: #1F2937;
}

.factor-input-small[b-05u7rqyt19] {
    width: 120px;
    padding: 6px 10px;
    background: white;
    border: 1px solid #CBD5E1;
    border-radius: 6px;
    font-size: 14px;
    color: #1F2937;
    text-align: right;
}

.factor-input-small:focus[b-05u7rqyt19] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 2px rgba(15, 23, 42, 0.08);
}

.na-text[b-05u7rqyt19] {
    color: #94A3B8;
    font-style: italic;
}

.decline-cell[b-05u7rqyt19] {
    text-align: center;
    vertical-align: middle;
}

.decline-checkbox[b-05u7rqyt19] {
    width: 20px;
    height: 20px;
    cursor: pointer;
    margin: 0 auto;
    display: inline-block;
}

.preview-cell[b-05u7rqyt19] {
    text-align: center;
    vertical-align: middle;
}

/* Badges */
.badge-decline[b-05u7rqyt19],
.badge-credit[b-05u7rqyt19],
.badge-debit[b-05u7rqyt19],
.badge-neutral[b-05u7rqyt19] {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
}

.badge-decline[b-05u7rqyt19] {
    background: #FEE2E2;
    color: var(--error-600);
}

.badge-credit[b-05u7rqyt19] {
    background: #D1FAE5;
    color: #059669;
}

.badge-debit[b-05u7rqyt19] {
    background: #FEF3C7;
    color: #D97706;
}

.badge-neutral[b-05u7rqyt19] {
    background: #F1F5F9;
    color: #64748B;
}

/* Legend */
.ltv-legend[b-05u7rqyt19] {
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 16px 20px;
}

.ltv-legend p[b-05u7rqyt19] {
    margin: 0 0 8px 0;
    font-size: 13px;
    color: #475569;
}

.ltv-legend p:last-child[b-05u7rqyt19] {
    margin-bottom: 0;
}

.ltv-legend strong[b-05u7rqyt19] {
    color: #1F2937;
    font-weight: 700;
}

/* Editing Row Styles */
.ltv-table tbody tr.editing[b-05u7rqyt19] {
    background: #EFF6FF !important;
    border-left: 3px solid var(--brand-500);
}

.ltv-table tbody tr.editing td[b-05u7rqyt19] {
    padding: 10px 20px;
}

/* Action Buttons */
.action-buttons[b-05u7rqyt19] {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
}

.btn-icon[b-05u7rqyt19] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    border: none;
    border-radius: 6px;
    background: transparent;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-icon i[b-05u7rqyt19] {
    font-size: 16px;
}

.btn-edit[b-05u7rqyt19] {
    color: #3B82F6;
}

.btn-edit:hover:not(:disabled)[b-05u7rqyt19] {
    background: #DBEAFE;
    color: #1E40AF;
}

.btn-delete[b-05u7rqyt19] {
    color: var(--error-600);
}

.btn-delete:hover:not(:disabled)[b-05u7rqyt19] {
    background: #FEE2E2;
    color: #991B1B;
}

.btn-save[b-05u7rqyt19] {
    color: #10B981;
}

.btn-save:hover:not(:disabled)[b-05u7rqyt19] {
    background: #D1FAE5;
    color: #047857;
}

.btn-cancel[b-05u7rqyt19] {
    color: #6B7280;
}

.btn-cancel:hover:not(:disabled)[b-05u7rqyt19] {
    background: #F3F4F6;
    color: #374151;
}

.btn-icon:disabled[b-05u7rqyt19] {
    opacity: 0.3;
    cursor: not-allowed;
}

/* Header Actions */
.tab-header-right[b-05u7rqyt19] {
    display: flex;
    gap: 8px;
}

.btn-action[b-05u7rqyt19] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    background: transparent;
    color: #64748B;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-action:hover:not(:disabled)[b-05u7rqyt19] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-action:disabled[b-05u7rqyt19] {
    opacity: 0.4;
    cursor: not-allowed;
}

/* Alert Styles */
.alert[b-05u7rqyt19] {
    padding: 14px 16px;
    border-radius: 8px;
    font-size: 14px;
    display: flex;
    align-items: center;
    animation: slideDown-b-05u7rqyt19 0.3s ease-out;
}

@keyframes slideDown-b-05u7rqyt19 {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.alert-success[b-05u7rqyt19] {
    background-color: var(--success-50);
    border: 1px solid var(--success-200);
    color: var(--success-700);
}

.alert-danger[b-05u7rqyt19] {
    background-color: var(--error-50);
    border: 1px solid #FCA5A5;
    color: var(--error-700);
}

/* Responsive */
@media (max-width: 768px) {
    .tab-header-section[b-05u7rqyt19] {
        flex-direction: column;
        gap: 16px;
    }

    .tab-header-right[b-05u7rqyt19] {
        width: 100%;
    }

    .tab-header-right .btn[b-05u7rqyt19] {
        flex: 1;
    }

    .threshold-input-wrapper[b-05u7rqyt19] {
        flex-direction: column;
        align-items: flex-start;
    }

    .threshold-input[b-05u7rqyt19] {
        width: 100%;
    }

    .ltv-table th[b-05u7rqyt19],
    .ltv-table td[b-05u7rqyt19] {
        padding: 10px 12px;
        font-size: 13px;
    }

    .factor-input-small[b-05u7rqyt19] {
        width: 100px;
    }
}

/* /Components/Pages/Admin/RatingModelTabs/PremiumLadderTab.razor.rz.scp.css */
/* Premium Ladder Tab Styles */

.premium-ladder-tab[b-7lxtfrupbf] {
    padding: 24px;
}

.tab-header-section[b-7lxtfrupbf] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 2px solid #E2E8F0;
}

.tab-header-left[b-7lxtfrupbf] {
    flex: 1;
}

.tab-title[b-7lxtfrupbf] {
    font-size: 20px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 8px 0;
}

.tab-description[b-7lxtfrupbf] {
    font-size: 14px;
    color: #6B7280;
    margin: 0;
}

.tab-header-right[b-7lxtfrupbf] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.selection-info[b-7lxtfrupbf] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.info-label[b-7lxtfrupbf] {
    font-size: 13px;
    font-weight: 600;
    color: #6B7280;
}

.info-value[b-7lxtfrupbf] {
    padding: 4px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 700;
    background: #F3F4F6;
    color: #374151;
}

.info-value.ceiling[b-7lxtfrupbf] {
    background: #DBEAFE;
    color: #1E40AF;
}

.btn-action[b-7lxtfrupbf] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    background: transparent;
    color: #64748B;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-action:hover:not(:disabled)[b-7lxtfrupbf] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-action:disabled[b-7lxtfrupbf] {
    opacity: 0.4;
    cursor: not-allowed;
}

.premium-ladder-content[b-7lxtfrupbf] {
    background: white;
    border-radius: 12px;
    border: 1px solid #E2E8F0;
    overflow: hidden;
}

.rate-table-section[b-7lxtfrupbf] {
    width: 100%;
}

.table-header[b-7lxtfrupbf] {
    padding: 16px;
    background: #F8FAFC;
    border-bottom: 1px solid #E2E8F0;
}

.search-input[b-7lxtfrupbf] {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid #CBD5E1;
    border-radius: 8px;
    font-size: 14px;
    transition: all 0.2s;
}

.search-input:focus[b-7lxtfrupbf] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.table-container[b-7lxtfrupbf] {
    max-height: 600px;
    overflow-y: auto;
}

.premium-table[b-7lxtfrupbf] {
    width: 100%;
    border-collapse: collapse;
}

.premium-table thead[b-7lxtfrupbf] {
    position: sticky;
    top: 0;
    background: #F1F5F9;
    z-index: 10;
}

.premium-table th[b-7lxtfrupbf] {
    padding: 12px 16px;
    text-align: left;
    font-size: 13px;
    font-weight: 700;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 2px solid #CBD5E1;
}

.premium-table td[b-7lxtfrupbf] {
    padding: 12px 16px;
    font-size: 14px;
    color: #1F2937;
    border-bottom: 1px solid #E2E8F0;
}

.premium-table tbody tr[b-7lxtfrupbf] {
    transition: all 0.2s;
}

.premium-table tbody tr:hover:not(.editing)[b-7lxtfrupbf] {
    background: #F8FAFC;
}

.premium-table tbody tr.highlighted[b-7lxtfrupbf] {
    background: #FEF3C7;
    border-left: 4px solid #F59E0B;
}

.premium-table tbody tr.editing[b-7lxtfrupbf] {
    background: #EFF6FF;
    border-left: 4px solid #3B82F6;
}

.premium-table tbody tr.new-row[b-7lxtfrupbf] {
    background: #F0FDF4;
    border-left: 4px solid #10B981;
}

.action-buttons[b-7lxtfrupbf] {
    display: flex;
    gap: 8px;
    align-items: center;
}

.btn-icon[b-7lxtfrupbf] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    border: none;
    border-radius: 6px;
    background: transparent;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-icon i[b-7lxtfrupbf] {
    font-size: 16px;
}

.btn-edit[b-7lxtfrupbf] {
    color: #3B82F6;
}

.btn-edit:hover:not(:disabled)[b-7lxtfrupbf] {
    background: #DBEAFE;
    color: #1E40AF;
}

.btn-delete[b-7lxtfrupbf] {
    color: var(--error-600);
}

.btn-delete:hover:not(:disabled)[b-7lxtfrupbf] {
    background: #FEE2E2;
    color: #991B1B;
}

.btn-save[b-7lxtfrupbf] {
    color: #10B981;
}

.btn-save:hover:not(:disabled)[b-7lxtfrupbf] {
    background: #D1FAE5;
    color: #047857;
}

.btn-cancel[b-7lxtfrupbf] {
    color: #6B7280;
}

.btn-cancel:hover:not(:disabled)[b-7lxtfrupbf] {
    background: #F3F4F6;
    color: #374151;
}

.btn-icon:disabled[b-7lxtfrupbf] {
    opacity: 0.3;
    cursor: not-allowed;
}

.empty-state[b-7lxtfrupbf] {
    text-align: center;
    padding: 48px 24px !important;
    color: #9CA3AF;
}

.empty-state i[b-7lxtfrupbf] {
    font-size: 48px;
    margin-bottom: 16px;
    display: block;
}

.empty-state p[b-7lxtfrupbf] {
    font-size: 14px;
    margin-bottom: 16px;
}

.btn-add-first[b-7lxtfrupbf] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    border: 2px dashed #D1D5DB;
    border-radius: 8px;
    background: white;
    color: #6B7280;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-add-first:hover[b-7lxtfrupbf] {
    border-color: var(--brand-500);
    color: var(--brand-500);
    background: #F0F9FF;
}

.table-footer[b-7lxtfrupbf] {
    padding: 12px 16px;
    background: #F8FAFC;
    border-top: 1px solid #E2E8F0;
}

.table-summary[b-7lxtfrupbf] {
    margin: 0;
    font-size: 13px;
    color: #6B7280;
}

.table-summary strong[b-7lxtfrupbf] {
    color: #1F2937;
    font-weight: 600;
}

/* Form Controls in Table */
.premium-table .form-control[b-7lxtfrupbf] {
    width: 100%;
    padding: 6px 10px;
    border: 1px solid #CBD5E1;
    border-radius: 6px;
    font-size: 14px;
}

.premium-table .form-control:focus[b-7lxtfrupbf] {
    outline: none;
    border-color: #3B82F6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.alert[b-7lxtfrupbf] {
    padding: 14px 16px;
    border-radius: 8px;
    font-size: 14px;
    display: flex;
    align-items: center;
    animation: slideDown-b-7lxtfrupbf 0.3s ease-out;
}

@keyframes slideDown-b-7lxtfrupbf {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.alert-success[b-7lxtfrupbf] {
    background-color: var(--success-50);
    border: 1px solid var(--success-200);
    color: var(--success-700);
}

.alert-danger[b-7lxtfrupbf] {
    background-color: var(--error-50);
    border: 1px solid #FCA5A5;
    color: var(--error-700);
}

/* Responsive */
@media (max-width: 768px) {
    .tab-header-section[b-7lxtfrupbf] {
        flex-direction: column;
        gap: 16px;
    }

    .tab-header-right[b-7lxtfrupbf] {
        flex-wrap: wrap;
        width: 100%;
    }

    .table-container[b-7lxtfrupbf] {
        max-height: 400px;
    }

    .premium-table th[b-7lxtfrupbf],
    .premium-table td[b-7lxtfrupbf] {
        padding: 8px 12px;
        font-size: 13px;
    }
}

/* /Components/Pages/Admin/RatingModelTabs/PropertyTypeFactorsTab.razor.rz.scp.css */
/* ========================================
   Property Type Factors Tab Styles
   Matching LtvTab design
   ======================================== */

.property-tab[b-9446r0bgr9] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Tab Header Section */
.tab-header-section[b-9446r0bgr9] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding-bottom: 20px;
    border-bottom: 2px solid #E2E8F0;
}

.tab-header-left[b-9446r0bgr9] {
    flex: 1;
}

.tab-title[b-9446r0bgr9] {
    font-size: 24px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 8px 0;
}

.tab-description[b-9446r0bgr9] {
    font-size: 14px;
    color: #64748B;
    margin: 0;
}

/* Property Content */
.property-content[b-9446r0bgr9] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Property Table Container */
.property-table-container[b-9446r0bgr9] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    overflow: hidden;
    max-height: 600px;
    overflow-y: auto;
}

.property-table-container[b-9446r0bgr9]::-webkit-scrollbar {
    width: 8px;
}

.property-table-container[b-9446r0bgr9]::-webkit-scrollbar-track {
    background: #F1F5F9;
}

.property-table-container[b-9446r0bgr9]::-webkit-scrollbar-thumb {
    background: #CBD5E1;
    border-radius: 4px;
}

/* Property Table */
.property-table[b-9446r0bgr9] {
    width: 100%;
    border-collapse: collapse;
}

.property-table thead[b-9446r0bgr9] {
    position: sticky;
    top: 0;
    background: linear-gradient(180deg, #F8FAFC 0%, #F1F5F9 100%);
    z-index: 10;
}

.property-table thead th[b-9446r0bgr9] {
    padding: 16px 20px;
    font-size: 13px;
    font-weight: 700;
    color: #1F2937;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 2px solid #E2E8F0;
    text-align: left;
}

.property-table thead th.text-center[b-9446r0bgr9] {
    text-align: center;
}

.property-table tbody tr[b-9446r0bgr9] {
    background: white;
    transition: all 0.2s;
    border-bottom: 1px solid #E2E8F0;
}

.property-table tbody tr:hover:not(.editing)[b-9446r0bgr9] {
    background: #F8FAFC;
}

.property-table tbody tr.decline-row[b-9446r0bgr9] {
    background: #FEF2F2;
}

.property-table tbody tr.decline-row:hover[b-9446r0bgr9] {
    background: #FECACA;
}

.property-table tbody tr.editing[b-9446r0bgr9] {
    background: #EFF6FF !important;
    border-left: 3px solid #3B82F6;
}

.property-table tbody td[b-9446r0bgr9] {
    padding: 12px 20px;
    font-size: 14px;
    color: #1F2937;
    vertical-align: middle;
}

.property-type-name[b-9446r0bgr9] {
    font-weight: 600;
    color: #1F2937;
}

.factor-input-small[b-9446r0bgr9] {
    width: 120px;
    padding: 6px 10px;
    background: white;
    border: 1px solid #CBD5E1;
    border-radius: 6px;
    font-size: 14px;
    color: #1F2937;
    text-align: right;
}

.factor-input-small:focus[b-9446r0bgr9] {
    outline: none;
    border-color: #3B82F6;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1);
}

.na-text[b-9446r0bgr9] {
    color: #94A3B8;
    font-style: italic;
}

.decline-cell[b-9446r0bgr9] {
    text-align: center;
    vertical-align: middle;
}

.decline-checkbox[b-9446r0bgr9] {
    width: 20px;
    height: 20px;
    cursor: pointer;
    margin: 0 auto;
    display: inline-block;
}

.preview-cell[b-9446r0bgr9] {
    text-align: center;
    vertical-align: middle;
}

/* Badges - Matching LtvTab */
.badge-decline[b-9446r0bgr9],
.badge-credit[b-9446r0bgr9],
.badge-debit[b-9446r0bgr9],
.badge-neutral[b-9446r0bgr9] {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
}

.badge-decline[b-9446r0bgr9] {
    background: #FEE2E2;
    color: var(--error-600);
}

.badge-credit[b-9446r0bgr9] {
    background: #D1FAE5;
    color: #059669;
}

.badge-debit[b-9446r0bgr9] {
    background: #FEF3C7;
    color: #D97706;
}

.badge-neutral[b-9446r0bgr9] {
    background: #F1F5F9;
    color: #64748B;
}

/* Legend */
.property-legend[b-9446r0bgr9] {
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 16px 20px;
}

.property-legend p[b-9446r0bgr9] {
    margin: 0 0 8px 0;
    font-size: 13px;
    color: #475569;
}

.property-legend p:last-child[b-9446r0bgr9] {
    margin-bottom: 0;
}

.property-legend strong[b-9446r0bgr9] {
    color: #1F2937;
    font-weight: 700;
}

/* Action Buttons - Matching LtvTab */
.action-buttons[b-9446r0bgr9] {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
}

.btn-icon[b-9446r0bgr9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    border: none;
    border-radius: 6px;
    background: transparent;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-icon i[b-9446r0bgr9] {
    font-size: 16px;
}

.btn-edit[b-9446r0bgr9] {
    color: #3B82F6;
}

.btn-edit:hover:not(:disabled)[b-9446r0bgr9] {
    background: #DBEAFE;
    color: #1E40AF;
}

.btn-delete[b-9446r0bgr9] {
    color: var(--error-600);
}

.btn-delete:hover:not(:disabled)[b-9446r0bgr9] {
    background: #FEE2E2;
    color: #991B1B;
}

.btn-save[b-9446r0bgr9] {
    color: #10B981;
}

.btn-save:hover:not(:disabled)[b-9446r0bgr9] {
    background: #D1FAE5;
    color: #047857;
}

.btn-cancel[b-9446r0bgr9] {
    color: #6B7280;
}

.btn-cancel:hover:not(:disabled)[b-9446r0bgr9] {
    background: #F3F4F6;
    color: #374151;
}

.btn-icon:disabled[b-9446r0bgr9] {
    opacity: 0.3;
    cursor: not-allowed;
}

/* Header Actions */
.tab-header-right[b-9446r0bgr9] {
    display: flex;
    gap: 8px;
}

.btn-action[b-9446r0bgr9] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    background: transparent;
    color: #64748B;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-action:hover:not(:disabled)[b-9446r0bgr9] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-action:disabled[b-9446r0bgr9] {
    opacity: 0.4;
    cursor: not-allowed;
}

.btn-action i[b-9446r0bgr9] {
    font-size: 16px;
}

/* Alert Styles */
.alert[b-9446r0bgr9] {
    padding: 14px 16px;
    border-radius: 8px;
    font-size: 14px;
    display: flex;
    align-items: center;
    animation: slideDown-b-9446r0bgr9 0.3s ease-out;
}

@keyframes slideDown-b-9446r0bgr9 {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.alert-success[b-9446r0bgr9] {
    background-color: var(--success-50);
    border: 1px solid var(--success-200);
    color: var(--success-700);
}

.alert-danger[b-9446r0bgr9] {
    background-color: var(--error-50);
    border: 1px solid #FCA5A5;
    color: var(--error-700);
}

.alert i[b-9446r0bgr9] {
    font-size: 16px;
}

/* Form Controls */
.form-control[b-9446r0bgr9],
.form-control-sm[b-9446r0bgr9] {
    width: 100%;
    padding: 8px 12px;
    background: white;
    border: 1px solid #CBD5E1;
    border-radius: 6px;
    font-size: 14px;
    color: #1F2937;
    transition: all 0.2s;
}

.form-control-sm[b-9446r0bgr9] {
    padding: 6px 10px;
    font-size: 13px;
}

.form-control:focus[b-9446r0bgr9],
.form-control-sm:focus[b-9446r0bgr9] {
    outline: none;
    border-color: #3B82F6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

/* Loading State */
.text-center[b-9446r0bgr9] {
    text-align: center;
}

.py-5[b-9446r0bgr9] {
    padding-top: 3rem;
    padding-bottom: 3rem;
}

.spinner-border[b-9446r0bgr9] {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    vertical-align: text-bottom;
    border: 0.25em solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: spinner-border-b-9446r0bgr9 0.75s linear infinite;
}

@keyframes spinner-border-b-9446r0bgr9 {
    to { transform: rotate(360deg); }
}

.text-primary[b-9446r0bgr9] {
    color: #3B82F6;
}

.visually-hidden[b-9446r0bgr9] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

.mt-2[b-9446r0bgr9] {
    margin-top: 0.5rem;
}

.text-muted[b-9446r0bgr9] {
    color: #6c757d;
}

/* Responsive Design */
@media (max-width: 768px) {
    .property-tab[b-9446r0bgr9] {
        gap: 16px;
    }

    .tab-header-section[b-9446r0bgr9] {
        flex-direction: column;
        gap: 12px;
    }

    .tab-title[b-9446r0bgr9] {
        font-size: 20px;
    }

    .tab-description[b-9446r0bgr9] {
        font-size: 13px;
    }

    .property-table-container[b-9446r0bgr9] {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .property-table[b-9446r0bgr9] {
        min-width: 700px;
    }

    .property-table thead th[b-9446r0bgr9],
    .property-table tbody td[b-9446r0bgr9] {
        padding: 10px 12px;
        font-size: 13px;
    }

    .action-buttons[b-9446r0bgr9] {
        flex-direction: column;
        gap: 4px;
    }

    .btn-icon[b-9446r0bgr9] {
        width: 28px;
        height: 28px;
    }

    .btn-icon i[b-9446r0bgr9] {
        font-size: 14px;
    }
}

@media (max-width: 576px) {
    .tab-header-section[b-9446r0bgr9] {
        padding-bottom: 16px;
    }

    .tab-title[b-9446r0bgr9] {
        font-size: 18px;
    }

    .btn-action[b-9446r0bgr9] {
        width: 100%;
        justify-content: center;
    }

    .alert[b-9446r0bgr9] {
        padding: 12px 14px;
        font-size: 13px;
    }
}

/* ========================================
   Property Tab Styles
   ======================================== */

.property-tab[b-9446r0bgr9] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.property-content[b-9446r0bgr9] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Table Container - Matching LTV Tab Design Exactly */
.property-table-container[b-9446r0bgr9] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    overflow: hidden;
    max-height: 600px;
    overflow-y: auto;
}

.property-table-container[b-9446r0bgr9]::-webkit-scrollbar {
    width: 8px;
}

.property-table-container[b-9446r0bgr9]::-webkit-scrollbar-track {
    background: #F1F5F9;
}

.property-table-container[b-9446r0bgr9]::-webkit-scrollbar-thumb {
    background: #CBD5E1;
    border-radius: 4px;
}

.property-table[b-9446r0bgr9] {
    width: 100%;
    border-collapse: collapse;
}

.property-table thead[b-9446r0bgr9] {
    position: sticky;
    top: 0;
    background: #F8FAFC;
    z-index: 10;
}

.property-table thead th[b-9446r0bgr9] {
    padding: 14px 20px;
    text-align: left;
    font-size: 13px;
    font-weight: 700;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 2px solid #E2E8F0;
}

.property-table thead th.text-center[b-9446r0bgr9] {
    text-align: center;
}

.property-table tbody tr[b-9446r0bgr9] {
    transition: background-color 0.2s;
}

.property-table tbody tr:hover[b-9446r0bgr9] {
    background: #F8FAFC;
}

.property-table tbody td[b-9446r0bgr9] {
    padding: 12px 20px;
    font-size: 14px;
    color: #1F2937;
    border-bottom: 1px solid #E2E8F0;
}

.property-type-name[b-9446r0bgr9] {
    font-weight: 600;
    color: #1F2937;
}

.factor-input-small[b-9446r0bgr9] {
    width: 120px;
    padding: 6px 10px;
    background: white;
    border: 1px solid #CBD5E1;
    border-radius: 6px;
    font-size: 14px;
    color: #1F2937;
    text-align: right;
}

.factor-input-small:focus[b-9446r0bgr9] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 2px rgba(15, 23, 42, 0.08);
}

.factor-input-small:disabled[b-9446r0bgr9] {
    background-color: #F1F5F9;
    color: #94A3B8;
    cursor: not-allowed;
}

.na-text[b-9446r0bgr9] {
    color: #94A3B8;
    font-style: italic;
}

.decline-cell[b-9446r0bgr9] {
    text-align: center;
    vertical-align: middle;
}

.decline-checkbox[b-9446r0bgr9] {
    width: 20px;
    height: 20px;
    cursor: pointer;
    margin: 0 auto;
    display: inline-block;
}

.preview-cell[b-9446r0bgr9] {
    text-align: center;
    vertical-align: middle;
}

.delete-cell[b-9446r0bgr9] {
    text-align: center;
    vertical-align: middle;
}

/* Badge Styles - Matching LTV Tab Exactly */
.badge-decline[b-9446r0bgr9],
.badge-credit[b-9446r0bgr9],
.badge-debit[b-9446r0bgr9],
.badge-neutral[b-9446r0bgr9] {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
}

.badge-decline[b-9446r0bgr9] {
    background: #FEE2E2;
    color: var(--error-600);
}

.badge-credit[b-9446r0bgr9] {
    background: #D1FAE5;
    color: #059669;
}

.badge-debit[b-9446r0bgr9] {
    background: #FEF3C7;
    color: #D97706;
}

.badge-neutral[b-9446r0bgr9] {
    background: #F1F5F9;
    color: #64748B;
}


/* Add Property Section */
.add-property-section[b-9446r0bgr9] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 16px 20px;
}

.btn-add-property[b-9446r0bgr9] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-add-property:hover[b-9446r0bgr9] {
    background: var(--brand-700, #003760);
}

.btn-add-property i[b-9446r0bgr9] {
    font-size: 16px;
}

/* Property Legend - Matching LTV Tab Exactly */
.property-legend[b-9446r0bgr9] {
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 16px 20px;
}

.property-legend p[b-9446r0bgr9] {
    margin: 0 0 8px 0;
    font-size: 13px;
    color: #475569;
}

.property-legend p:last-child[b-9446r0bgr9] {
    margin-bottom: 0;
}

.property-legend p strong[b-9446r0bgr9] {
    color: #1F2937;
    font-weight: 600;
}

.form-label[b-9446r0bgr9] {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #475569;
    margin-bottom: 8px;
}

.form-input[b-9446r0bgr9] {
    width: 100%;
    padding: 10px 14px;
    border: 2px solid #E2E8F0;
    border-radius: 8px;
    font-size: 14px;
    color: #1F2937;
    transition: all 0.2s ease;
}

.form-input:focus[b-9446r0bgr9] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.btn-cancel[b-9446r0bgr9],
.btn-save[b-9446r0bgr9] {
    padding: 10px 18px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}
/* Search Bar */
.property-search-bar[b-9446r0bgr9] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: -8px;
}

.search-input-wrapper[b-9446r0bgr9] {
    position: relative;
    flex: 1;
    max-width: 360px;
}

.search-icon[b-9446r0bgr9] {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #9CA3AF;
    font-size: 13px;
    pointer-events: none;
}

.search-input[b-9446r0bgr9] {
    padding-left: 32px !important;
    padding-right: 32px !important;
    font-size: 13px !important;
    border-radius: 8px !important;
    border: 1px solid #E5E7EB !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.search-input:focus[b-9446r0bgr9] {
    border-color: #93C5FD !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1) !important;
}

.search-clear-btn[b-9446r0bgr9] {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    color: #9CA3AF;
    cursor: pointer;
    padding: 2px 4px;
    font-size: 12px;
    line-height: 1;
    border-radius: 4px;
    transition: color 0.15s ease, background 0.15s ease;
}

.search-clear-btn:hover[b-9446r0bgr9] {
    color: #374151;
    background: #F3F4F6;
}

.search-result-count[b-9446r0bgr9] {
    font-size: 12px;
    color: #9CA3AF;
    white-space: nowrap;
}

/* Tier & Active Columns */
.tier-cell[b-9446r0bgr9] {
    text-align: center;
}

.active-cell[b-9446r0bgr9] {
    text-align: center;
}

.tier-select[b-9446r0bgr9] {
    width: auto;
    min-width: 120px;
    font-size: 13px;
}

.tier-badge[b-9446r0bgr9] {
    display: inline-block;
    padding: 2px 10px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.tier-badge-1[b-9446r0bgr9] {
    background: #D1FAE5;
    color: #065F46;
}

.tier-badge-2[b-9446r0bgr9] {
    background: #FEF3C7;
    color: #92400E;
}

.tier-badge-3[b-9446r0bgr9] {
    background: #FEE2E2;
    color: #991B1B;
}

/* Keywords Button */
.btn-keywords[b-9446r0bgr9] {
    position: relative;
}

.btn-keywords.active[b-9446r0bgr9] {
    color: #2563EB;
    background: #EFF6FF;
}

.keyword-count-badge[b-9446r0bgr9] {
    position: absolute;
    top: -4px;
    right: -4px;
    background: #6B7280;
    color: white;
    font-size: 10px;
    font-weight: 600;
    min-width: 16px;
    height: 16px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    padding: 0 4px;
}

.btn-keywords.active .keyword-count-badge[b-9446r0bgr9] {
    background: #2563EB;
}

/* Expanded row highlight */
.expanded-row[b-9446r0bgr9] {
    background: #F8FAFC !important;
}

/* Keyword Expansion Row */
.keyword-expansion-row td[b-9446r0bgr9] {
    padding: 0 !important;
    border-top: none !important;
    background: #F8FAFC;
}

.keyword-panel[b-9446r0bgr9] {
    padding: 16px 20px;
    border-top: 1px dashed #E5E7EB;
    border-bottom: 1px solid #E5E7EB;
}

.keyword-panel-header[b-9446r0bgr9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.keyword-panel-title[b-9446r0bgr9] {
    font-size: 13px;
    color: #6B7280;
}

.btn-generate-embeddings[b-9446r0bgr9] {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    padding: 4px 10px;
    font-size: 12px;
    font-weight: 500;
    color: #7C3AED;
    background: #F5F3FF;
    border: 1px solid #DDD6FE;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-generate-embeddings:hover:not(:disabled)[b-9446r0bgr9] {
    background: #EDE9FE;
    border-color: #C4B5FD;
}

.btn-generate-embeddings:disabled[b-9446r0bgr9] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Keyword Chips */
.keyword-chips[b-9446r0bgr9] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
    min-height: 32px;
    align-items: center;
}

.keyword-empty[b-9446r0bgr9] {
    font-size: 13px;
    color: #9CA3AF;
    font-style: italic;
}

.keyword-chip[b-9446r0bgr9] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px 4px 10px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 16px;
    font-size: 13px;
    color: #374151;
    transition: all 0.15s ease;
    cursor: default;
}

.keyword-chip:hover[b-9446r0bgr9] {
    border-color: #D1D5DB;
    background: #F9FAFB;
}

.keyword-chip.matched[b-9446r0bgr9] {
    border-color: #FCD34D;
    background: #FFFBEB;
}

.keyword-chip.matched:hover[b-9446r0bgr9] {
    border-color: #FBBF24;
    background: #FEF3C7;
}

[b-9446r0bgr9] .keyword-highlight {
    background: #FDE68A;
    color: #92400E;
    border-radius: 2px;
    padding: 0 1px;
}

.keyword-match-count[b-9446r0bgr9] {
    font-size: 11px;
    color: #D97706;
    font-weight: 600;
    padding: 2px 8px;
    background: #FEF3C7;
    border-radius: 10px;
    white-space: nowrap;
    align-self: center;
}

.keyword-chip.editing[b-9446r0bgr9] {
    padding: 2px 4px;
    border-color: #93C5FD;
    background: #EFF6FF;
    gap: 2px;
}

.keyword-edit-input[b-9446r0bgr9] {
    border: none;
    background: transparent;
    outline: none;
    font-size: 13px;
    color: #1F2937;
    width: 120px;
    padding: 2px 4px;
}

.keyword-chip-action[b-9446r0bgr9] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border: none;
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
    font-size: 14px;
    padding: 0;
    transition: all 0.15s ease;
}

.keyword-chip-action.save[b-9446r0bgr9] {
    color: #059669;
}

.keyword-chip-action.save:hover[b-9446r0bgr9] {
    background: #D1FAE5;
}

.keyword-chip-action.cancel[b-9446r0bgr9] {
    color: #DC2626;
}

.keyword-chip-action.cancel:hover[b-9446r0bgr9] {
    background: #FEE2E2;
}

.keyword-text[b-9446r0bgr9] {
    user-select: none;
}

.keyword-chip-delete[b-9446r0bgr9] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border: none;
    border-radius: 50%;
    background: transparent;
    color: #9CA3AF;
    cursor: pointer;
    font-size: 14px;
    padding: 0;
    transition: all 0.15s ease;
}

.keyword-chip-delete:hover:not(:disabled)[b-9446r0bgr9] {
    background: #FEE2E2;
    color: #DC2626;
}

.keyword-chip-delete:disabled[b-9446r0bgr9] {
    opacity: 0.4;
    cursor: not-allowed;
}

/* Embedding Indicator */
.embedding-indicator[b-9446r0bgr9] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex-shrink: 0;
}

.embedding-indicator.has-embedding[b-9446r0bgr9] {
    background: #10B981;
}

.embedding-indicator.no-embedding[b-9446r0bgr9] {
    background: #D1D5DB;
}

/* Add Keyword Row */
.keyword-add-row[b-9446r0bgr9] {
    display: flex;
    gap: 8px;
    align-items: center;
}

.keyword-add-input[b-9446r0bgr9] {
    max-width: 300px;
    font-size: 13px !important;
}

.btn-add-keyword[b-9446r0bgr9] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 12px;
    font-size: 13px;
    font-weight: 500;
    color: #2563EB;
    background: #EFF6FF;
    border: 1px solid #BFDBFE;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.btn-add-keyword:hover:not(:disabled)[b-9446r0bgr9] {
    background: #DBEAFE;
    border-color: #93C5FD;
}

.btn-add-keyword:disabled[b-9446r0bgr9] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Bulk Paste */
.btn-bulk-paste[b-9446r0bgr9] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 12px;
    font-size: 13px;
    font-weight: 500;
    color: #6B7280;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.btn-bulk-paste:hover[b-9446r0bgr9] {
    background: #F3F4F6;
    border-color: #D1D5DB;
}

.btn-bulk-paste.active[b-9446r0bgr9] {
    color: #2563EB;
    background: #EFF6FF;
    border-color: #BFDBFE;
}

.bulk-paste-section[b-9446r0bgr9] {
    margin-top: 12px;
    padding: 12px;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
}

.bulk-paste-textarea[b-9446r0bgr9] {
    font-size: 13px !important;
    font-family: 'SF Mono', 'Fira Code', 'Fira Mono', monospace;
    line-height: 1.5;
    resize: vertical;
    min-height: 80px;
    max-height: 240px;
}

.bulk-paste-actions[b-9446r0bgr9] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 8px;
    justify-content: flex-end;
}

.bulk-paste-hint[b-9446r0bgr9] {
    font-size: 12px;
    color: #9CA3AF;
}

.bulk-result-msg[b-9446r0bgr9] {
    font-size: 12px;
    color: #059669;
    font-weight: 500;
}

/* Empty State */
.empty-state[b-9446r0bgr9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    text-align: center;
}

.empty-state-icon[b-9446r0bgr9] {
    font-size: 36px;
    color: #D1D5DB;
    margin-bottom: 12px;
}

.empty-state-title[b-9446r0bgr9] {
    font-size: 15px;
    font-weight: 600;
    color: #374151;
    margin: 0 0 4px;
}

.empty-state-subtitle[b-9446r0bgr9] {
    font-size: 13px;
    color: #9CA3AF;
    margin: 0;
}

.btn-link-inline[b-9446r0bgr9] {
    background: none;
    border: none;
    color: #2563EB;
    cursor: pointer;
    font-size: inherit;
    padding: 0;
    text-decoration: underline;
}

.btn-link-inline:hover[b-9446r0bgr9] {
    color: #1D4ED8;
}

/* Responsive */
@media (max-width: 768px) {
    .property-table-container[b-9446r0bgr9] {
        overflow-x: auto;
    }

    .factor-input-small[b-9446r0bgr9] {
        width: 100px;
    }

    .keyword-panel-header[b-9446r0bgr9] {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .keyword-add-input[b-9446r0bgr9] {
        max-width: 100%;
    }

    .bulk-paste-actions[b-9446r0bgr9] {
        flex-direction: column;
        align-items: flex-end;
    }
}

/* /Components/Pages/Admin/RatingModelTabs/TermFactorsTab.razor.rz.scp.css */
/* ========================================
   Term Tab Styles
   ======================================== */

.term-tab[b-a95jn4pe4z] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Alert Styles */
.alert[b-a95jn4pe4z] {
    padding: 14px 16px;
    border-radius: 8px;
    font-size: 14px;
    display: flex;
    align-items: center;
    animation: slideDown-b-a95jn4pe4z 0.3s ease-out;
}

.alert-success[b-a95jn4pe4z] {
    background-color: var(--success-50);
    border: 1px solid var(--success-200);
    color: var(--success-700);
}

.alert-danger[b-a95jn4pe4z] {
    background-color: var(--error-50);
    border: 1px solid #FCA5A5;
    color: var(--error-700);
}

.alert .btn-close[b-a95jn4pe4z] {
    margin-left: auto;
    padding: 0.5rem;
}

@keyframes slideDown-b-a95jn4pe4z {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Tab Header Section */
.tab-header-section[b-a95jn4pe4z] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding-bottom: 20px;
    border-bottom: 2px solid #E2E8F0;
}

.tab-header-left[b-a95jn4pe4z] {
    flex: 1;
}

.tab-header-right[b-a95jn4pe4z] {
    display: flex;
    gap: 12px;
    align-items: center;
}

.tab-header-right .btn[b-a95jn4pe4z] {
    font-size: 14px;
    font-weight: 500;
    padding: 10px 20px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.tab-header-right .btn-primary[b-a95jn4pe4z] {
    background: var(--brand-600, #004980);
    border: none;
}

.tab-header-right .btn-primary:hover:not(:disabled)[b-a95jn4pe4z] {
    background: var(--brand-700, #003760);
}

.tab-header-right .btn-primary:disabled[b-a95jn4pe4z] {
    opacity: 0.6;
    cursor: not-allowed;
}

.tab-title[b-a95jn4pe4z] {
    font-size: 24px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 8px 0;
}

.tab-description[b-a95jn4pe4z] {
    font-size: 14px;
    color: #64748B;
    margin: 0;
}

/* Term Factors Container */
.term-factors-container[b-a95jn4pe4z] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 24px;
}

.term-factors-grid[b-a95jn4pe4z] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}

/* Term Factor Row */
.term-factor-row[b-a95jn4pe4z] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    transition: all 0.2s;
}

.term-factor-row:hover[b-a95jn4pe4z] {
    background: #F1F5F9;
    border-color: #CBD5E1;
}

/* Input Groups */
.term-label-group[b-a95jn4pe4z] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
}

.term-year-label[b-a95jn4pe4z] {
    font-size: 14px;
    color: #1F2937;
    font-weight: 600;
}

.term-text[b-a95jn4pe4z] {
    font-size: 14px;
    color: #64748B;
    font-weight: 500;
    white-space: nowrap;
}

.factor-input-group[b-a95jn4pe4z] {
    flex: 1;
}

.factor-input[b-a95jn4pe4z] {
    width: 100%;
    padding: 8px 12px;
    background: white;
    border: 1px solid #CBD5E1;
    border-radius: 6px;
    font-size: 14px;
    color: #1F2937;
    transition: all 0.2s;
}

.factor-input:focus[b-a95jn4pe4z] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}


/* Remove Button */
.btn-remove[b-a95jn4pe4z] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 6px;
    color: #EF4444;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-remove:hover[b-a95jn4pe4z] {
    background: #FEE2E2;
    border-color: #EF4444;
}

.btn-remove i[b-a95jn4pe4z] {
    font-size: 16px;
}

/* Add Term Button */
.btn-add-term[b-a95jn4pe4z] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-add-term:hover[b-a95jn4pe4z] {
    background: var(--brand-700, #003760);
}

.btn-add-term i[b-a95jn4pe4z] {
    font-size: 16px;
}

/* Responsive */
@media (max-width: 1024px) {
    .term-factors-grid[b-a95jn4pe4z] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .term-factor-row[b-a95jn4pe4z] {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
    }

    .term-label-group[b-a95jn4pe4z],
    .factor-input-group[b-a95jn4pe4z] {
        width: 100%;
    }


    .btn-remove[b-a95jn4pe4z] {
        width: 100%;
    }
}
/* /Components/Pages/Admin/StatePolicyTemplatesPage.razor.rz.scp.css */
/* State Policy Templates — Two-Panel Layout */
.spt-page[b-hq2dwjyqbw] { padding: 0; }

.spt-header[b-hq2dwjyqbw] {
    display: flex; justify-content: space-between; align-items: flex-start;
    margin-bottom: 20px; flex-wrap: wrap; gap: 12px;
}
.spt-title[b-hq2dwjyqbw] { font-size: 1.5rem; font-weight: 700; color: #1F2937; margin: 0; }
.spt-subtitle[b-hq2dwjyqbw] { font-size: 13px; color: #64748B; margin: 4px 0 0; }
.spt-header-stats[b-hq2dwjyqbw] { display: flex; gap: 16px; }
.spt-stat[b-hq2dwjyqbw] { text-align: center; }
.spt-stat-value[b-hq2dwjyqbw] { display: block; font-size: 20px; font-weight: 700; color: var(--brand-500); }
.spt-stat-label[b-hq2dwjyqbw] { font-size: 11px; color: #94A3B8; text-transform: uppercase; font-weight: 600; }

/* Shared Documents Panel */
.spt-shared-panel[b-hq2dwjyqbw] {
    background: white; border: 1px solid #E2E8F0; border-radius: 12px;
    margin-bottom: 20px; overflow: hidden;
}
.spt-shared-header[b-hq2dwjyqbw] {
    padding: 14px 20px; background: #F8FAFC; border-bottom: 1px solid #F1F5F9;
    font-size: 14px; color: #1F2937;
}

.spt-section-header[b-hq2dwjyqbw] {
    padding: 12px 20px; background: #F8FAFC; border-top: 1px solid #F1F5F9;
    border-bottom: 1px solid #F1F5F9; font-size: 14px; color: #1F2937;
    display: flex; align-items: center;
}

/* Copy-config modal grid */
.spt-copy-grid[b-hq2dwjyqbw] {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 6px;
}
.spt-copy-item[b-hq2dwjyqbw] {
    display: flex; align-items: center; gap: 8px;
    padding: 8px 10px; border: 1.5px solid #E2E8F0; border-radius: 8px;
    background: white; cursor: pointer; font-size: 13px; transition: all 0.15s;
}
.spt-copy-item:hover[b-hq2dwjyqbw] { border-color: var(--brand-400); background: #F8FAFC; }
.spt-copy-item.selected[b-hq2dwjyqbw] { border-color: var(--brand-500); background: #EFF6FF; }
.spt-copy-item input[type="checkbox"][b-hq2dwjyqbw] { margin: 0; }
.spt-copy-abbr[b-hq2dwjyqbw] { font-weight: 700; font-size: 12px; color: var(--brand-500); min-width: 24px; }
.spt-copy-name[b-hq2dwjyqbw] { font-size: 12px; color: #1F2937; }
.spt-shared-grid[b-hq2dwjyqbw] {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 0;
}
.spt-shared-card[b-hq2dwjyqbw] {
    padding: 14px 20px; border-right: 1px solid #F1F5F9;
    display: flex; flex-direction: column; gap: 8px;
}
.spt-shared-card:last-child[b-hq2dwjyqbw] { border-right: none; }
.spt-shared-card-header[b-hq2dwjyqbw] {
    display: flex; justify-content: space-between; align-items: center;
}
.spt-shared-status[b-hq2dwjyqbw] {
    font-size: 11px; font-weight: 600; display: inline-flex;
    align-items: center; gap: 4px; padding: 2px 8px; border-radius: 6px;
}
.spt-shared-status.uploaded[b-hq2dwjyqbw] { color: #059669; background: #ECFDF5; }
.spt-shared-status.missing[b-hq2dwjyqbw] { color: #D97706; background: #FEF3C7; }
.spt-shared-card-file[b-hq2dwjyqbw] { font-size: 12.5px; }
.spt-shared-filename[b-hq2dwjyqbw] {
    display: flex; align-items: center; gap: 6px;
    font-size: 13px; font-weight: 500; color: #1F2937;
}
.spt-shared-filename i[b-hq2dwjyqbw] { font-size: 16px; }
.spt-shared-meta[b-hq2dwjyqbw] {
    display: flex; gap: 12px; margin-top: 6px; flex-wrap: wrap;
}
.spt-shared-meta span[b-hq2dwjyqbw] {
    display: inline-flex; align-items: center; gap: 4px;
    font-size: 11px; color: #94A3B8;
}
.spt-shared-meta i[b-hq2dwjyqbw] { font-size: 11px; }
.spt-shared-empty[b-hq2dwjyqbw] {
    display: flex; align-items: center; gap: 6px;
    color: #CBD5E1; font-size: 12px; padding: 8px 0;
}
.spt-shared-empty i[b-hq2dwjyqbw] { font-size: 20px; }
.spt-shared-card-actions[b-hq2dwjyqbw] { display: flex; gap: 6px; margin-top: auto; }

@media (max-width: 768px) {
    .spt-shared-grid[b-hq2dwjyqbw] { grid-template-columns: 1fr; }
    .spt-shared-card[b-hq2dwjyqbw] { border-right: none; border-bottom: 1px solid #F1F5F9; }
}

/* Layout */
.spt-layout[b-hq2dwjyqbw] {
    display: grid; grid-template-columns: 280px 1fr; gap: 20px;
    min-height: 600px;
}

/* Sidebar */
.spt-sidebar[b-hq2dwjyqbw] {
    background: white; border: 1px solid #E2E8F0; border-radius: 12px;
    display: flex; flex-direction: column; overflow: hidden;
}
.spt-search[b-hq2dwjyqbw] {
    position: relative; padding: 12px;
    border-bottom: 1px solid #F1F5F9;
}
.spt-search i[b-hq2dwjyqbw] {
    position: absolute; left: 22px; top: 50%; transform: translateY(-50%);
    color: #94A3B8; font-size: 13px; pointer-events: none;
}
.spt-search input[b-hq2dwjyqbw] {
    width: 100%; padding: 7px 10px 7px 32px; border: 1px solid #E2E8F0;
    border-radius: 8px; font-size: 13px; color: #1F2937;
}
.spt-search input:focus[b-hq2dwjyqbw] { outline: none; border-color: var(--brand-400); }
.spt-state-list[b-hq2dwjyqbw] { overflow-y: auto; flex: 1; }

.spt-state-item[b-hq2dwjyqbw] {
    display: flex; justify-content: space-between; align-items: center;
    width: 100%; padding: 10px 14px; border: none; border-bottom: 1px solid #F8FAFC;
    background: white; cursor: pointer; transition: all 0.15s; text-align: left;
}
.spt-state-item:hover[b-hq2dwjyqbw] { background: #F8FAFC; }
.spt-state-item.selected[b-hq2dwjyqbw] { background: #EFF6FF; border-left: 3px solid var(--brand-500); }
.spt-state-item.inactive[b-hq2dwjyqbw] { opacity: 0.5; }
.spt-state-info[b-hq2dwjyqbw] { display: flex; align-items: center; gap: 8px; }
.spt-state-abbr[b-hq2dwjyqbw] { font-size: 12px; font-weight: 700; color: var(--brand-500); min-width: 24px; }
.spt-state-name[b-hq2dwjyqbw] { font-size: 13px; color: #1F2937; font-weight: 500; }
.spt-state-badges[b-hq2dwjyqbw] { display: flex; align-items: center; gap: 6px; }
.spt-doc-count[b-hq2dwjyqbw] {
    font-size: 11px; font-weight: 700; color: #64748B;
    background: #F1F5F9; padding: 2px 7px; border-radius: 4px;
}
.spt-version-badge[b-hq2dwjyqbw] {
    font-size: 10px; font-weight: 700; color: var(--brand-500);
    background: #EFF6FF; padding: 2px 6px; border-radius: 4px;
}

/* Detail Panel */
.spt-detail[b-hq2dwjyqbw] {
    background: white; border: 1px solid #E2E8F0; border-radius: 12px;
    display: flex; flex-direction: column; overflow: hidden;
}
.spt-detail-header[b-hq2dwjyqbw] {
    padding: 20px 24px; border-bottom: 1px solid #F1F5F9;
    display: flex; justify-content: space-between; align-items: flex-start; gap: 12px;
}
.spt-detail-title[b-hq2dwjyqbw] { font-size: 18px; font-weight: 700; color: #1F2937; margin: 0; }
.spt-detail-abbr[b-hq2dwjyqbw] {
    font-size: 12px; color: #0D9488; background: #F0FDFA;
    padding: 2px 8px; border-radius: 4px; font-weight: 600;
}

.spt-doc-table[b-hq2dwjyqbw] {
    flex: 1; overflow-y: auto; padding: 0 8px;
}
.spt-doc-table table[b-hq2dwjyqbw] { font-size: 13px; }
.spt-doc-table thead th[b-hq2dwjyqbw] {
    font-size: 11px; text-transform: uppercase; color: #94A3B8; font-weight: 600;
    padding: 10px 8px; border-bottom: 1px solid #E2E8F0; background: #FAFBFC;
    position: sticky; top: 0; z-index: 1;
}
.spt-doc-table tbody td[b-hq2dwjyqbw] { padding: 8px; vertical-align: middle; }

/* Shared-document rows blend into the state-specific table but read as "managed elsewhere":
   tinted background, slightly muted text so they don't pull focus from editable rows. */
.spt-doc-table tbody tr.spt-row-shared[b-hq2dwjyqbw] { background: #FAF7FF; }
.spt-doc-table tbody tr.spt-row-shared td[b-hq2dwjyqbw] { color: #6B21A8; }
.spt-doc-table tbody tr.spt-row-shared .spt-filename[b-hq2dwjyqbw] { color: #6B21A8; }
.spt-doc-table tbody tr.spt-row-shared:hover[b-hq2dwjyqbw] { background: #F3EAFF; }

.spt-filename[b-hq2dwjyqbw] { font-size: 12.5px; color: #475569; }

.spt-slot-badge[b-hq2dwjyqbw] {
    display: inline-block; padding: 3px 8px; border-radius: 5px;
    font-size: 11px; font-weight: 600; white-space: nowrap;
}
.slot-cert[b-hq2dwjyqbw] { background: #FEF3C7; color: #92400E; }
.slot-dec[b-hq2dwjyqbw] { background: #DBEAFE; color: #1E40AF; }
.slot-sched[b-hq2dwjyqbw] { background: #E0E7FF; color: #4338CA; }
.slot-policy[b-hq2dwjyqbw] { background: #ECFDF5; color: #065F46; }
.slot-endorse[b-hq2dwjyqbw] { background: #F3E8FF; color: #6B21A8; }
.slot-sl[b-hq2dwjyqbw] { background: #FFF1F2; color: #9F1239; }
.slot-de[b-hq2dwjyqbw] { background: #F1F5F9; color: #475569; }
.slot-fill[b-hq2dwjyqbw] { background: #CCFBF1; color: #0D9488; }
.slot-docusign[b-hq2dwjyqbw] { background: #EDE9FE; color: #7C3AED; }
.slot-signed[b-hq2dwjyqbw] { background: #D1FAE5; color: #059669; }

.spt-legend[b-hq2dwjyqbw] {
    display: flex; gap: 16px; padding: 10px 24px;
    background: #F8FAFC; border-bottom: 1px solid #F1F5F9;
    font-size: 11px; color: #94A3B8; flex-wrap: wrap;
}
.spt-legend span[b-hq2dwjyqbw] { display: flex; align-items: center; gap: 4px; }

/* Theme buttons */
.spt-btn-preview[b-hq2dwjyqbw] {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 16px; border: none; border-radius: 8px;
    background: var(--brand-600, #004980);
    color: white; font-size: 13px; font-weight: 600; cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease; white-space: nowrap;
}
.spt-btn-preview:hover[b-hq2dwjyqbw] { background: var(--brand-700, #003760); }
.spt-btn-preview:disabled[b-hq2dwjyqbw] { opacity: 0.6; cursor: not-allowed; }

.spt-btn-upload[b-hq2dwjyqbw] {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 5px 12px; border: 1.5px solid #E2E8F0; border-radius: 7px;
    background: white; color: var(--brand-500); font-size: 11px; font-weight: 600;
    cursor: pointer; transition: all 0.15s;
}
.spt-btn-upload:hover[b-hq2dwjyqbw] { border-color: var(--brand-400); background: #F8FAFC; }
.spt-btn-upload.disabled[b-hq2dwjyqbw] { opacity: 0.6; cursor: wait; pointer-events: none; }

.spt-btn-upload-sm[b-hq2dwjyqbw] {
    display: inline-flex; align-items: center; justify-content: center;
    width: 28px; height: 24px; border: 1.5px solid #E2E8F0; border-radius: 6px;
    background: white; color: var(--brand-500); font-size: 12px;
    cursor: pointer; transition: all 0.15s;
}
.spt-btn-upload-sm:hover[b-hq2dwjyqbw] { border-color: var(--brand-400); background: #F8FAFC; }
.spt-btn-upload-sm.disabled[b-hq2dwjyqbw] { opacity: 0.6; cursor: wait; pointer-events: none; }
.spt-btn-delete[b-hq2dwjyqbw] { color: #EF4444; }
.spt-btn-delete:hover[b-hq2dwjyqbw] { border-color: #EF4444; background: #FEF2F2; color: #DC2626; }

/* Add Document Modal — enhanced layout */
.spt-add-section[b-hq2dwjyqbw] {
    border-bottom: 1px solid #F1F5F9;
}
.spt-add-section-header[b-hq2dwjyqbw] {
    display: flex; align-items: center; gap: 10px;
    padding: 14px 24px 10px; font-size: 13.5px; color: #1F2937;
}
.spt-add-step-num[b-hq2dwjyqbw] {
    display: inline-flex; align-items: center; justify-content: center;
    width: 22px; height: 22px; border-radius: 50%;
    background: var(--brand-500); color: white;
    font-size: 11px; font-weight: 700; flex-shrink: 0;
}

/* Slot picker — visual card grid */
.spt-slot-picker[b-hq2dwjyqbw] {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 8px; padding: 0 24px 16px;
}
.spt-slot-pick-card[b-hq2dwjyqbw] {
    display: flex; align-items: center; justify-content: space-between; gap: 6px;
    padding: 10px 12px; border: 2px solid #E2E8F0; border-radius: 10px;
    background: white; cursor: pointer; transition: all 0.15s;
}
.spt-slot-pick-card:hover:not(.used):not(.selected)[b-hq2dwjyqbw] {
    border-color: var(--brand-300, #93C5FD); background: #F8FAFC;
}
.spt-slot-pick-card.selected[b-hq2dwjyqbw] {
    border-color: var(--brand-500); background: #EFF6FF;
    box-shadow: 0 0 0 1px var(--brand-500);
}
.spt-slot-pick-card.used[b-hq2dwjyqbw] {
    opacity: 0.45; cursor: not-allowed; background: #F8FAFC;
}
.spt-slot-pick-card .spt-slot-badge[b-hq2dwjyqbw] { font-size: 10.5px; }

/* Option rows — toggle + label + icon */
.spt-add-options[b-hq2dwjyqbw] {
    padding: 0 24px 16px; display: flex; flex-direction: column; gap: 8px;
}
.spt-add-option-row[b-hq2dwjyqbw] {
    display: flex; align-items: center; gap: 12px;
    padding: 12px 14px; border: 1.5px solid #E2E8F0; border-radius: 10px;
    background: white; cursor: pointer; transition: all 0.15s;
}
.spt-add-option-row:hover[b-hq2dwjyqbw] { border-color: var(--brand-300, #93C5FD); background: #F8FAFC; }
.spt-add-option-row.active[b-hq2dwjyqbw] { border-color: var(--brand-400); background: #EFF6FF; }
.spt-add-option-text[b-hq2dwjyqbw] { flex: 1; display: flex; flex-direction: column; gap: 2px; }
.spt-add-option-icon[b-hq2dwjyqbw] { font-size: 20px; flex-shrink: 0; }

/* Upload zone — drag-drop styled area */
.spt-upload-zone[b-hq2dwjyqbw] {
    display: flex; align-items: center; justify-content: center;
    border: 2px dashed #CBD5E1; border-radius: 12px;
    padding: 28px 20px; cursor: pointer; transition: all 0.2s;
    background: #F8FAFC;
}
.spt-upload-zone:hover[b-hq2dwjyqbw] { border-color: var(--brand-400); background: #EFF6FF; }
.spt-upload-zone.uploaded[b-hq2dwjyqbw] {
    border-style: solid; border-color: #D1FAE5; background: #ECFDF5; padding: 16px 20px;
}
.spt-upload-zone-content[b-hq2dwjyqbw] {
    display: flex; align-items: center; gap: 14px; flex-wrap: wrap;
}
.spt-upload-text[b-hq2dwjyqbw] { display: flex; flex-direction: column; gap: 2px; text-align: center; }
.spt-upload-file-info[b-hq2dwjyqbw] { display: flex; flex-direction: column; gap: 2px; flex: 1; }

/* Edit Document Modal — file info card */
.spt-edit-file-card[b-hq2dwjyqbw] {
    display: flex; align-items: center; gap: 14px;
    padding: 16px 24px; margin: 16px 24px 0;
    border: 1px solid #E2E8F0; border-radius: 12px; background: #F8FAFC;
}
.spt-edit-file-info[b-hq2dwjyqbw] { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.spt-edit-file-info .text-truncate[b-hq2dwjyqbw] { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%; }

/* Order controls */
.spt-order-controls[b-hq2dwjyqbw] {
    display: flex; flex-direction: column; align-items: center; gap: 0;
}
.spt-order-num[b-hq2dwjyqbw] {
    font-size: 11px; font-weight: 700; color: #94A3B8; line-height: 1;
}
.spt-order-btn[b-hq2dwjyqbw] {
    display: flex; align-items: center; justify-content: center;
    width: 20px; height: 14px; border: none; background: none;
    color: #CBD5E1; cursor: pointer; padding: 0; font-size: 11px;
    transition: all 0.15s; border-radius: 3px;
}
.spt-order-btn:hover[b-hq2dwjyqbw] { color: var(--brand-500); background: #F1F5F9; }
.spt-order-btn:disabled[b-hq2dwjyqbw] { opacity: 0.3; cursor: default; }
.spt-order-btn:disabled:hover[b-hq2dwjyqbw] { color: #CBD5E1; background: none; }
/* Invisible spacer so shared rows keep the same vertical footprint as rows with up/down chevrons */
.spt-order-btn-placeholder[b-hq2dwjyqbw] { display: block; width: 20px; height: 14px; }

.spt-empty-detail[b-hq2dwjyqbw] {
    display: flex; flex-direction: column; align-items: center;
    justify-content: center; flex: 1; color: #CBD5E1;
}
.spt-empty-detail i[b-hq2dwjyqbw] { font-size: 48px; margin-bottom: 12px; }
.spt-empty-detail p[b-hq2dwjyqbw] { font-size: 14px; color: #94A3B8; }

@media (max-width: 768px) {
    .spt-layout[b-hq2dwjyqbw] { grid-template-columns: 1fr; }
    .spt-sidebar[b-hq2dwjyqbw] { max-height: 300px; }
}
/* /Components/Pages/Admin/StateTaxManagementPage.razor.rz.scp.css */
.stm-page[b-y8x8tmlj3o] { padding: 0; }
.stm-header[b-y8x8tmlj3o] { margin-bottom: 20px; display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; }
.stm-title[b-y8x8tmlj3o] { font-size: 1.5rem; font-weight: 700; color: #1F2937; margin: 0; }
.stm-subtitle[b-y8x8tmlj3o] { font-size: 13px; color: #64748B; margin: 4px 0 0; }
.stm-header-actions[b-y8x8tmlj3o] { display: flex; align-items: center; gap: 8px; flex-shrink: 0; padding-top: 4px; }

.stm-layout[b-y8x8tmlj3o] { display: grid; grid-template-columns: 280px 1fr; gap: 20px; min-height: 500px; }

/* Sidebar */
.stm-sidebar[b-y8x8tmlj3o] { background: white; border: 1px solid #E2E8F0; border-radius: 12px; display: flex; flex-direction: column; overflow: hidden; }
.stm-search[b-y8x8tmlj3o] { position: relative; padding: 12px; border-bottom: 1px solid #F1F5F9; }
.stm-search i[b-y8x8tmlj3o] { position: absolute; left: 22px; top: 50%; transform: translateY(-50%); color: #94A3B8; font-size: 13px; pointer-events: none; }
.stm-search input[b-y8x8tmlj3o] { width: 100%; padding: 7px 10px 7px 32px; border: 1px solid #E2E8F0; border-radius: 8px; font-size: 13px; }
.stm-search input:focus[b-y8x8tmlj3o] { outline: none; border-color: var(--brand-400); }
.stm-state-list[b-y8x8tmlj3o] { overflow-y: auto; flex: 1; }

.stm-state-item[b-y8x8tmlj3o] { display: flex; justify-content: space-between; align-items: center; width: 100%; padding: 10px 14px; border: none; border-bottom: 1px solid #F8FAFC; background: white; cursor: pointer; transition: all 0.15s; text-align: left; }
.stm-state-item:hover[b-y8x8tmlj3o] { background: #F8FAFC; }
.stm-state-item.selected[b-y8x8tmlj3o] { background: #EFF6FF; border-left: 3px solid var(--brand-500); }
.stm-state-info[b-y8x8tmlj3o] { display: flex; align-items: center; gap: 8px; }
.stm-state-abbr[b-y8x8tmlj3o] { font-size: 12px; font-weight: 700; color: var(--brand-500); min-width: 24px; }
.stm-state-name[b-y8x8tmlj3o] { font-size: 13px; color: #1F2937; font-weight: 500; }
.stm-state-badges[b-y8x8tmlj3o] { display: flex; align-items: center; gap: 6px; }
.stm-fee-count[b-y8x8tmlj3o] { font-size: 11px; font-weight: 700; color: #64748B; background: #F1F5F9; padding: 2px 7px; border-radius: 4px; }

/* Detail */
.stm-detail[b-y8x8tmlj3o] { background: white; border: 1px solid #E2E8F0; border-radius: 12px; display: flex; flex-direction: column; overflow: hidden; }
.stm-detail-header[b-y8x8tmlj3o] { display: flex; justify-content: space-between; align-items: center; padding: 20px 24px; border-bottom: 1px solid #F1F5F9; }
.stm-detail-title[b-y8x8tmlj3o] { font-size: 18px; font-weight: 700; color: #1F2937; margin: 0; display: inline; }
.stm-detail-abbr[b-y8x8tmlj3o] { font-size: 12px; color: #0D9488; background: #F0FDFA; padding: 2px 8px; border-radius: 4px; font-weight: 600; margin-left: 8px; }

.stm-btn-add[b-y8x8tmlj3o] { display: inline-flex; align-items: center; gap: 6px; padding: 8px 16px; background: var(--brand-600, #004980); color: white; border: none; border-radius: 8px; font-size: 13px; font-weight: 600; cursor: pointer; transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease; }
.stm-btn-add:hover[b-y8x8tmlj3o] { background: var(--brand-700, #003760); }

.stm-btn-new-state[b-y8x8tmlj3o] { display: flex; align-items: center; justify-content: center; gap: 6px; margin: 12px; padding: 8px 12px; background: var(--brand-600, #004980); color: white; border: none; border-radius: 8px; font-size: 13px; font-weight: 600; cursor: pointer; transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease; }
.stm-btn-new-state:hover[b-y8x8tmlj3o] { background: var(--brand-700, #003760); }

.stm-state-actions[b-y8x8tmlj3o] { display: inline-flex; gap: 6px; margin-left: 12px; vertical-align: middle; }

.stm-fee-table[b-y8x8tmlj3o] { flex: 1; overflow-y: auto; padding: 0 8px; }
.stm-fee-table table[b-y8x8tmlj3o] { font-size: 13px; }
.stm-fee-table thead th[b-y8x8tmlj3o] { font-size: 11px; text-transform: uppercase; color: #94A3B8; font-weight: 600; padding: 10px 8px; border-bottom: 1px solid #E2E8F0; background: #FAFBFC; position: sticky; top: 0; z-index: 1; }
.stm-fee-table tbody td[b-y8x8tmlj3o] { padding: 10px 8px; vertical-align: middle; }

.stm-type-badge[b-y8x8tmlj3o] { display: inline-block; padding: 3px 8px; border-radius: 5px; font-size: 11px; font-weight: 600; }
.type-sl[b-y8x8tmlj3o] { background: #FEF3C7; color: #92400E; }
.type-stamp[b-y8x8tmlj3o] { background: #DBEAFE; color: #1E40AF; }
.type-custom[b-y8x8tmlj3o] { background: #F3E8FF; color: #6B21A8; }

.stm-acct-code[b-y8x8tmlj3o] { font-size: 11px; font-weight: 600; color: #475569; background: #F1F5F9; padding: 2px 6px; border-radius: 4px; }

.stm-empty[b-y8x8tmlj3o] { display: flex; flex-direction: column; align-items: center; justify-content: center; flex: 1; gap: 8px; color: #CBD5E1; padding: 40px; }
.stm-empty i[b-y8x8tmlj3o] { font-size: 40px; }
.stm-empty p[b-y8x8tmlj3o] { font-size: 14px; color: #94A3B8; margin: 0; }

/* Action buttons */
.stm-action-btn[b-y8x8tmlj3o] {
    display: inline-flex; align-items: center; justify-content: center;
    width: 28px; height: 28px; border-radius: 7px; border: 1.5px solid #E2E8F0;
    background: white; cursor: pointer; font-size: 12px; transition: all 0.15s;
}
.stm-action-edit[b-y8x8tmlj3o] { color: var(--brand-500); }
.stm-action-edit:hover[b-y8x8tmlj3o] { border-color: var(--brand-400); background: #EFF6FF; }
.stm-action-delete[b-y8x8tmlj3o] { color: #94A3B8; }
.stm-action-delete:hover[b-y8x8tmlj3o] { border-color: #FECACA; background: #FEF2F2; color: #DC2626; }

@media (max-width: 768px) { .stm-layout[b-y8x8tmlj3o] { grid-template-columns: 1fr; } .stm-sidebar[b-y8x8tmlj3o] { max-height: 250px; } }
/* /Components/Pages/Admin/SurplusLinesDeliveriesPage.razor.rz.scp.css */
.surpluslines-deliveries-page[b-q232mh86ci] {
    padding: 1.5rem 2rem;
    max-width: 1200px;
    margin: 0 auto;
}

/* ── Action buttons (match NetSuiteSyncPage / VERAcheckAdminPage / ReferralsPage) ── */
.surpluslines-deliveries-page .btn-action[b-q232mh86ci] {
    border: 1px solid var(--border, #dee2e6);
    background: var(--bg-surface, #fff);
    color: inherit;
    padding: 0.45rem 0.9rem;
    height: 36px;
    border-radius: 6px;
    font-size: 0.825rem;
    font-weight: 500;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    white-space: nowrap;
    text-decoration: none;
}

.surpluslines-deliveries-page .btn-action:hover:not(:disabled)[b-q232mh86ci] {
    background: var(--bg-hover, #f1f3f5);
}

.surpluslines-deliveries-page .btn-action:disabled[b-q232mh86ci] {
    opacity: 0.55;
    cursor: not-allowed;
}

.surpluslines-deliveries-page .btn-action-primary[b-q232mh86ci] {
    background: var(--brand-500, #2563eb);
    color: #fff;
    border-color: var(--brand-500, #2563eb);
}

.surpluslines-deliveries-page .btn-action-primary:hover:not(:disabled)[b-q232mh86ci] {
    background: var(--brand-600, #1d4ed8);
    border-color: var(--brand-600, #1d4ed8);
}

/* ── Header ───────────────────────────────────────────────────────────── */
.surpluslines-deliveries-page .page-header[b-q232mh86ci] {
    margin-bottom: 1.25rem;
}

.surpluslines-deliveries-page .back-link[b-q232mh86ci] {
    color: #6c757d;
    text-decoration: none;
    font-size: 0.875rem;
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    margin-bottom: 0.5rem;
}

.surpluslines-deliveries-page .back-link:hover[b-q232mh86ci] { color: #0d6efd; }

.surpluslines-deliveries-page .title-row[b-q232mh86ci] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 0.25rem 0 0.5rem;
    flex-wrap: wrap;
}

.surpluslines-deliveries-page .title-left[b-q232mh86ci] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.surpluslines-deliveries-page .title-right[b-q232mh86ci] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-left: auto;
}

.surpluslines-deliveries-page .last-loaded[b-q232mh86ci] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    color: #6c757d;
    font-size: 0.78rem;
    font-variant-numeric: tabular-nums;
}

.surpluslines-deliveries-page .last-loaded i[b-q232mh86ci] {
    color: #94a3b8;
    font-size: 0.85rem;
}

.surpluslines-deliveries-page .page-subtitle[b-q232mh86ci] {
    margin: 0.25rem 0 0;
    color: #495057;
    font-size: 0.9rem;
    line-height: 1.5;
}

.surpluslines-deliveries-page .subtitle-tip[b-q232mh86ci] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    margin-left: 0.5rem;
    padding: 0.1rem 0.55rem;
    background: #eff6ff;
    color: #1d4ed8;
    border-radius: 999px;
    font-size: 0.78rem;
}

.surpluslines-deliveries-page .subtitle-tip i[b-q232mh86ci] {
    font-size: 0.85rem;
}

.surpluslines-deliveries-page h1[b-q232mh86ci] {
    font-size: 1.5rem;
    font-weight: 600;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.surpluslines-deliveries-page .title-icon[b-q232mh86ci] { color: #0d6efd; }

/* ── Health pill ─────────────────────────────────────────────────────── */
.surpluslines-deliveries-page .health-pill[b-q232mh86ci] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.25rem 0.75rem;
    border-radius: 999px;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.surpluslines-deliveries-page .health-good[b-q232mh86ci] { background: #d4edda; color: #155724; }
.surpluslines-deliveries-page .health-warn[b-q232mh86ci] { background: #fff3cd; color: #856404; }
.surpluslines-deliveries-page .health-bad[b-q232mh86ci]  { background: #f8d7da; color: #721c24; }

/* ── Auto-refresh toggle (Bootstrap form-switch, matches IntegrationSettingsPage) ── */
.surpluslines-deliveries-page .auto-refresh-group[b-q232mh86ci] {
    display: flex;
    align-items: center;
    gap: 8px;
    /* Right-alignment now handled by the .title-right wrapper. */
}

.surpluslines-deliveries-page .toggle-label[b-q232mh86ci] {
    font-size: 0.75rem;
    font-weight: 500;
    color: #64748B;
    margin: 0;
    user-select: none;
}

.surpluslines-deliveries-page .auto-refresh-hint[b-q232mh86ci] {
    color: #94a3b8;
    margin-left: 0.15rem;
}

/* Match IntegrationSettingsPage's green ON state for the form-switch. */
.surpluslines-deliveries-page .form-check-input:checked[b-q232mh86ci] {
    background-color: #10B981;
    border-color: #10B981;
}

.surpluslines-deliveries-page .form-check-input:focus[b-q232mh86ci] {
    box-shadow: 0 0 0 0.2rem rgba(16, 185, 129, 0.25);
    border-color: #10B981;
}

/* ── Stat cards ──────────────────────────────────────────────────────── */
.surpluslines-deliveries-page .stat-grid[b-q232mh86ci] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.surpluslines-deliveries-page .stat-card[b-q232mh86ci] {
    background: #ffffff;
    border: 1px solid #dee2e6;
    border-left: 4px solid #adb5bd;
    border-radius: 0.5rem;
    padding: 0.85rem 1rem;
    text-align: left;
    cursor: pointer;
    transition: transform 0.1s ease, box-shadow 0.1s ease, border-color 0.1s ease;
}

.surpluslines-deliveries-page .stat-card:hover[b-q232mh86ci] {
    transform: translateY(-1px);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
}

.surpluslines-deliveries-page .stat-card.stat-active[b-q232mh86ci] {
    border-color: #0d6efd;
    box-shadow: 0 0 0 2px rgba(13, 110, 253, 0.18);
}

.surpluslines-deliveries-page .stat-pending[b-q232mh86ci]          { border-left-color: #ffc107; }
.surpluslines-deliveries-page .stat-succeeded[b-q232mh86ci]        { border-left-color: #198754; }
.surpluslines-deliveries-page .stat-failed[b-q232mh86ci]           { border-left-color: #dc3545; }
.surpluslines-deliveries-page .stat-failednoinvoice[b-q232mh86ci]  { border-left-color: #fd7e14; }

.surpluslines-deliveries-page .stat-label[b-q232mh86ci] {
    font-size: 0.75rem;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.surpluslines-deliveries-page .stat-value[b-q232mh86ci] {
    font-size: 1.75rem;
    font-weight: 700;
    color: #212529;
    line-height: 1.1;
    margin: 0.15rem 0;
}

.surpluslines-deliveries-page .stat-hint[b-q232mh86ci] {
    font-size: 0.75rem;
    color: #6c757d;
}

/* ── Toolbar (filters + backfill toggle) ─────────────────────────────── */
.surpluslines-deliveries-page .toolbar[b-q232mh86ci] {
    display: flex;
    align-items: flex-end;
    gap: 1rem;
    background: #f8f9fa;
    border-radius: 0.5rem;
    padding: 0.85rem 1rem;
    margin-bottom: 0.75rem;
}

.surpluslines-deliveries-page .filters[b-q232mh86ci] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 0.75rem;
    flex: 1;
}

.surpluslines-deliveries-page .filter-group[b-q232mh86ci] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 9rem;
}

.surpluslines-deliveries-page .filter-group label[b-q232mh86ci] {
    font-size: 0.78rem;
    color: #495057;
    font-weight: 500;
    /* Softer than uppercase + letter-spacing — reads as a label, not a heading. */
}

.surpluslines-deliveries-page .label-suffix[b-q232mh86ci] {
    color: #94a3b8;
    font-weight: 400;
    font-size: 0.7rem;
    margin-left: 0.2rem;
}

/* Input-with-icon — pseudo input-group without Bootstrap markup overhead */
.surpluslines-deliveries-page .input-with-icon[b-q232mh86ci] {
    position: relative;
    display: flex;
    align-items: center;
}

.surpluslines-deliveries-page .input-with-icon .input-icon[b-q232mh86ci],
.surpluslines-deliveries-page .input-with-icon .input-prefix[b-q232mh86ci] {
    position: absolute;
    left: 0.55rem;
    pointer-events: none;
    color: #94a3b8;
    font-size: 0.85rem;
    z-index: 1;
}

.surpluslines-deliveries-page .input-with-icon .input-prefix[b-q232mh86ci] {
    font-weight: 600;
}

.surpluslines-deliveries-page .input-with-icon input[b-q232mh86ci] {
    padding-left: 1.85rem;
}

.surpluslines-deliveries-page .input-with-icon input:focus[b-q232mh86ci] {
    border-color: #0d6efd;
    box-shadow: 0 0 0 0.15rem rgba(13, 110, 253, 0.18);
    outline: none;
}

/* Quick-range preset chips */
.surpluslines-deliveries-page .filter-presets[b-q232mh86ci] {
    min-width: 12rem;
}

.surpluslines-deliveries-page .preset-row[b-q232mh86ci] {
    display: flex;
    gap: 0.3rem;
    align-items: center;
    height: 31px; /* match form-control-sm height */
}

.surpluslines-deliveries-page .preset-chip[b-q232mh86ci] {
    background: #ffffff;
    border: 1px solid #dee2e6;
    border-radius: 999px;
    padding: 0.2rem 0.7rem;
    font-size: 0.78rem;
    color: #495057;
    cursor: pointer;
    transition: all 0.1s ease;
}

.surpluslines-deliveries-page .preset-chip:hover[b-q232mh86ci] {
    background: #e9ecef;
    border-color: #adb5bd;
}

/* Toolbar action group on the right side */
.surpluslines-deliveries-page .toolbar-actions[b-q232mh86ci] {
    display: flex;
    align-items: flex-end;
    gap: 0.5rem;
}

.surpluslines-deliveries-page .toolbar-divider[b-q232mh86ci] {
    width: 1px;
    height: 22px;
    background: #dee2e6;
    margin: 0 0.2rem;
    align-self: center;
}

/* Icon-only buttons share the btn-action visual weight */
.surpluslines-deliveries-page .btn-icon[b-q232mh86ci] {
    border: 1px solid var(--border, #dee2e6);
    background: var(--bg-surface, #fff);
    color: #495057;
    width: 36px;
    height: 36px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.1s;
}

.surpluslines-deliveries-page .btn-icon:hover:not(:disabled)[b-q232mh86ci] {
    background: var(--bg-hover, #f1f3f5);
}

.surpluslines-deliveries-page .btn-icon:disabled[b-q232mh86ci] {
    opacity: 0.55;
    cursor: not-allowed;
}

/* Backfill toggle: open-state visual + chevron rotation */
.surpluslines-deliveries-page .backfill-toggle.is-open[b-q232mh86ci] {
    background: #cfe2ff;
    border-color: #9ec5fe;
    color: #084298;
}

.surpluslines-deliveries-page .backfill-toggle .chevron[b-q232mh86ci] {
    margin-left: 0.2rem;
    transition: transform 0.15s ease;
    font-size: 0.75rem;
    opacity: 0.7;
}

.surpluslines-deliveries-page .backfill-toggle .chevron.rot[b-q232mh86ci] {
    transform: rotate(180deg);
}

/* Active filters row — promotes filter chips to their own line below the inputs */
.surpluslines-deliveries-page .active-filters-row[b-q232mh86ci] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin: 0 0 0.75rem 0;
    padding: 0.5rem 0.75rem;
    background: #f8f9fa;
    border-left: 3px solid #0d6efd;
    border-radius: 0 0.4rem 0.4rem 0;
    font-size: 0.85rem;
}

.surpluslines-deliveries-page .active-filters-label[b-q232mh86ci] {
    color: #6c757d;
    font-size: 0.78rem;
    font-weight: 500;
}

.surpluslines-deliveries-page .active-filter-chip[b-q232mh86ci] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.2rem 0.6rem;
    background: #cfe2ff;
    color: #084298;
    border-radius: 999px;
    font-size: 0.78rem;
}

.surpluslines-deliveries-page .chip-clear[b-q232mh86ci] {
    background: transparent;
    border: none;
    color: #084298;
    padding: 0 0 0 0.15rem;
    margin: 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    line-height: 1;
    font-size: 0.9rem;
}

.surpluslines-deliveries-page .chip-clear:hover[b-q232mh86ci] { color: #052c65; }

.surpluslines-deliveries-page .chip-clear-all[b-q232mh86ci] {
    background: transparent;
    border: none;
    color: #6c757d;
    padding: 0 0.25rem;
    cursor: pointer;
    font-size: 0.78rem;
    text-decoration: underline;
    margin-left: auto;
}

.surpluslines-deliveries-page .chip-clear-all:hover[b-q232mh86ci] { color: #212529; }

.surpluslines-deliveries-page .backfill-toggle[b-q232mh86ci] { white-space: nowrap; }

/* ── Backfill panel ──────────────────────────────────────────────────── */
.surpluslines-deliveries-page .backfill-panel[b-q232mh86ci] {
    background: #ffffff;
    border: 1px solid #dee2e6;
    border-radius: 0.5rem;
    padding: 0.85rem 1rem;
    margin-bottom: 1rem;
}

.surpluslines-deliveries-page .backfill-controls[b-q232mh86ci] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
}

.surpluslines-deliveries-page .cap-input[b-q232mh86ci] { width: 7rem; }

.surpluslines-deliveries-page .backfill-summary[b-q232mh86ci] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.75rem;
}

.surpluslines-deliveries-page .summary-badge[b-q232mh86ci] {
    padding: 0.25rem 0.6rem;
    border-radius: 0.4rem;
    font-size: 0.8rem;
    background: #f1f3f5;
    color: #495057;
}

.surpluslines-deliveries-page .summary-badge.queued[b-q232mh86ci]  { background: #cfe2ff; color: #084298; }
.surpluslines-deliveries-page .summary-badge.errored[b-q232mh86ci] { background: #f8d7da; color: #721c24; }

/* ── Loading & empty states ──────────────────────────────────────────── */
.surpluslines-deliveries-page .loading-state[b-q232mh86ci],
.surpluslines-deliveries-page .empty-state[b-q232mh86ci] {
    padding: 3rem 1rem;
    text-align: center;
    color: #6c757d;
    background: #ffffff;
    border: 1px dashed #dee2e6;
    border-radius: 0.5rem;
}

.surpluslines-deliveries-page .empty-icon[b-q232mh86ci] {
    font-size: 2.5rem;
    display: block;
    margin-bottom: 0.5rem;
    opacity: 0.5;
}

.surpluslines-deliveries-page .loading-state[b-q232mh86ci] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
}

.surpluslines-deliveries-page .empty-state .btn[b-q232mh86ci] { margin-top: 0.5rem; }

/* ── Grid ────────────────────────────────────────────────────────────── */
.surpluslines-deliveries-page .grid-wrap[b-q232mh86ci] {
    overflow-x: auto;
    max-height: 70vh;
    overflow-y: auto;
    background: #ffffff;
    border-radius: 0.5rem;
    border: 1px solid #dee2e6;
}

.surpluslines-deliveries-page .deliveries-grid[b-q232mh86ci] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.surpluslines-deliveries-page .deliveries-grid th[b-q232mh86ci] {
    text-align: left;
    padding: 0.6rem 0.75rem;
    background: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
    font-weight: 600;
    white-space: nowrap;
    position: sticky;
    top: 0;
    z-index: 2;
}

.surpluslines-deliveries-page .deliveries-grid td[b-q232mh86ci] {
    padding: 0.6rem 0.75rem;
    border-bottom: 1px solid #f1f3f5;
    vertical-align: middle;
}

.surpluslines-deliveries-page .deliveries-grid tbody tr:hover[b-q232mh86ci] { background: #f8f9fa; }
.surpluslines-deliveries-page .deliveries-grid tbody tr.row-expanded[b-q232mh86ci] { background: #f1f5ff; }

.surpluslines-deliveries-page .ts[b-q232mh86ci] {
    color: #6c757d;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.surpluslines-deliveries-page .last-error[b-q232mh86ci] {
    max-width: 22rem;
    color: #6c757d;
}

.surpluslines-deliveries-page .error-summary[b-q232mh86ci] {
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: bottom;
    font-variant-numeric: tabular-nums;
}

/* ── HTTP status pill ────────────────────────────────────────────────── */
.surpluslines-deliveries-page .http-pill[b-q232mh86ci] {
    display: inline-block;
    min-width: 2.4rem;
    text-align: center;
    padding: 0.1rem 0.45rem;
    border-radius: 0.35rem;
    font-size: 0.75rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    border: 1px solid transparent;
}

.surpluslines-deliveries-page .http-2xx[b-q232mh86ci]   { background: #d4edda; color: #155724; border-color: #b7dfc1; }
.surpluslines-deliveries-page .http-4xx[b-q232mh86ci]   { background: #fff3cd; color: #856404; border-color: #ffe69c; }
.surpluslines-deliveries-page .http-5xx[b-q232mh86ci]   { background: #f8d7da; color: #721c24; border-color: #f1aeb5; }
.surpluslines-deliveries-page .http-other[b-q232mh86ci] { background: #e9ecef; color: #495057; border-color: #dee2e6; }

/* ── Pinned action column (stays visible when the grid scrolls sideways) ── */
.surpluslines-deliveries-page .action-col[b-q232mh86ci] {
    text-align: right;
    white-space: nowrap;
    position: sticky;
    right: 0;
}

/* Header corner sits above both the sticky header row and the sticky column. */
.surpluslines-deliveries-page .deliveries-grid th.action-col[b-q232mh86ci] {
    z-index: 3;
    box-shadow: -6px 0 6px -6px rgba(0, 0, 0, 0.12);
}

.surpluslines-deliveries-page .deliveries-grid td.action-col[b-q232mh86ci] {
    z-index: 1;
    background: #ffffff;
    box-shadow: -6px 0 6px -6px rgba(0, 0, 0, 0.12);
}

/* Keep the pinned cell's background in sync with row hover / expand states. */
.surpluslines-deliveries-page .deliveries-grid tbody tr:hover td.action-col[b-q232mh86ci] { background: #f8f9fa; }
.surpluslines-deliveries-page .deliveries-grid tbody tr.row-expanded td.action-col[b-q232mh86ci] { background: #f1f5ff; }

.surpluslines-deliveries-page .row-actions[b-q232mh86ci] {
    display: inline-flex;
    gap: 0.4rem;
    align-items: center;
}

.surpluslines-deliveries-page .btn-icon-danger[b-q232mh86ci] {
    color: #b91c1c;
    border-color: #fecaca;
}

.surpluslines-deliveries-page .btn-icon-danger:hover:not(:disabled)[b-q232mh86ci] {
    background: #fef2f2;
    color: #7f1d1d;
    border-color: #f87171;
}

.surpluslines-deliveries-page .expand-col[b-q232mh86ci] {
    width: 2.25rem;
    padding: 0 !important;
    text-align: center;
}

.surpluslines-deliveries-page .row-expand-btn[b-q232mh86ci] {
    background: transparent;
    border: none;
    color: #495057;
    padding: 0.25rem 0.5rem;
    cursor: pointer;
    transition: color 0.1s;
}

.surpluslines-deliveries-page .row-expand-btn:hover[b-q232mh86ci] { color: #0d6efd; }

/* ── Status pills ────────────────────────────────────────────────────── */
.surpluslines-deliveries-page .status-pill[b-q232mh86ci] {
    display: inline-flex;
    align-items: center;
    padding: 0.15rem 0.55rem;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.surpluslines-deliveries-page .status-pending[b-q232mh86ci]          { background: #fff3cd; color: #856404; }
.surpluslines-deliveries-page .status-succeeded[b-q232mh86ci]        { background: #d4edda; color: #155724; }
.surpluslines-deliveries-page .status-failed[b-q232mh86ci]           { background: #f8d7da; color: #721c24; }
.surpluslines-deliveries-page .status-failednoinvoice[b-q232mh86ci]  { background: #fde2cf; color: #884c19; }

/* ── Detail row ──────────────────────────────────────────────────────── */
.surpluslines-deliveries-page .detail-row > td[b-q232mh86ci] {
    background: #fafbfd;
    border-bottom: 1px solid #e9ecef;
    padding: 1rem;
}

.surpluslines-deliveries-page .detail-loading[b-q232mh86ci] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #6c757d;
    font-size: 0.875rem;
}

.surpluslines-deliveries-page .detail-grid[b-q232mh86ci] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.surpluslines-deliveries-page .detail-block[b-q232mh86ci] { min-width: 0; }
.surpluslines-deliveries-page .detail-block.full-width[b-q232mh86ci] { grid-column: 1 / -1; }

.surpluslines-deliveries-page .detail-label[b-q232mh86ci] {
    font-size: 0.7rem;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-weight: 600;
    margin-bottom: 0.35rem;
}

.surpluslines-deliveries-page .detail-label-row[b-q232mh86ci] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 0.35rem;
}

.surpluslines-deliveries-page .detail-label-row .detail-label[b-q232mh86ci] {
    margin-bottom: 0;
}

.surpluslines-deliveries-page .copy-btn[b-q232mh86ci] {
    background: transparent;
    border: 1px solid #dee2e6;
    color: #495057;
    padding: 0.15rem 0.55rem;
    border-radius: 0.3rem;
    font-size: 0.75rem;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    transition: background 0.1s;
}

.surpluslines-deliveries-page .copy-btn:hover[b-q232mh86ci] {
    background: #f1f3f5;
    color: #0d6efd;
    border-color: #0d6efd;
}

.surpluslines-deliveries-page .detail-value[b-q232mh86ci] { font-size: 0.85rem; }

.surpluslines-deliveries-page .detail-pre[b-q232mh86ci] {
    background: #ffffff;
    border: 1px solid #dee2e6;
    border-radius: 0.35rem;
    padding: 0.6rem 0.75rem;
    font-size: 0.78rem;
    line-height: 1.4;
    max-height: 18rem;
    overflow: auto;
    white-space: pre-wrap;
    word-break: break-word;
    margin: 0;
}

.surpluslines-deliveries-page .detail-error[b-q232mh86ci] {
    background: #fff5f5;
    border-color: #f5c2c7;
    color: #721c24;
}

/* ── Pager ───────────────────────────────────────────────────────────── */
.surpluslines-deliveries-page .pager[b-q232mh86ci] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 0.75rem 0;
}

.surpluslines-deliveries-page .pager-info[b-q232mh86ci] {
    color: #6c757d;
    font-size: 0.875rem;
    margin-right: 0.5rem;
}

/* ── Responsive: stack stats on narrow screens ───────────────────────── */
@media (max-width: 900px) {
    .surpluslines-deliveries-page .stat-grid[b-q232mh86ci] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .surpluslines-deliveries-page .detail-grid[b-q232mh86ci] {
        grid-template-columns: 1fr;
    }
}

/* ── Skeleton loader ─────────────────────────────────────────────────── */
@keyframes admin-sl-deliveries-skel-pulse-b-q232mh86ci {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.tbl-row-skeleton td[b-q232mh86ci] {
    padding: 0.875rem 0.75rem;
}

.tbl-skel[b-q232mh86ci] {
    height: 1.0625rem;
    width: 80px;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: admin-sl-deliveries-skel-pulse-b-q232mh86ci 1.5s ease-in-out infinite;
}

.tbl-skel-badge[b-q232mh86ci] {
    height: 1.25rem;
    width: 90px;
    border-radius: 9999px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: admin-sl-deliveries-skel-pulse-b-q232mh86ci 1.5s ease-in-out infinite;
}
/* /Components/Pages/Admin/Tabs/SubTabs/EmailTemplatesSubTab.razor.rz.scp.css */
/* Email Templates Sub-Tab Styles */

.email-templates-tab[b-uslmci7y9i] {
    padding: 0;
}

/* Stats Cards */
.stats-row[b-uslmci7y9i] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 20px;
    margin-bottom: 30px;
}

.stat-card[b-uslmci7y9i] {
    background: white;
    border-radius: 12px;
    padding: 24px;
    display: flex;
    align-items: center;
    gap: 16px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    border: 1px solid #e5e7eb;
    transition: all 0.2s ease;
}

.stat-card:hover[b-uslmci7y9i] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
}

.stat-icon[b-uslmci7y9i] {
    width: 56px;
    height: 56px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    background: var(--brand-50);
    color: var(--brand-600);
}

.stat-card.stat-success .stat-icon[b-uslmci7y9i] {
    background: var(--success-50);
    color: var(--success-600);
}

.stat-card.stat-info .stat-icon[b-uslmci7y9i] {
    background: var(--brand-50);
    color: var(--brand-500);
}

.stat-card.stat-warning .stat-icon[b-uslmci7y9i] {
    background: var(--accent-50);
    color: var(--accent-600);
}

.stat-content[b-uslmci7y9i] {
    flex: 1;
}

.stat-value[b-uslmci7y9i] {
    font-size: 32px;
    font-weight: 700;
    color: #1f2937;
    line-height: 1;
    margin-bottom: 4px;
}

.stat-label[b-uslmci7y9i] {
    font-size: 14px;
    color: #6b7280;
    font-weight: 500;
}

/* Content Section */
.email-templates-content[b-uslmci7y9i] {
    background: white;
    border-radius: 12px;
    padding: 24px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.content-header[b-uslmci7y9i] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
    padding-bottom: 20px;
    border-bottom: 2px solid #f3f4f6;
}

.content-header h2[b-uslmci7y9i] {
    font-size: 24px;
    font-weight: 700;
    color: #1f2937;
    margin: 0;
}

.header-actions[b-uslmci7y9i] {
    display: flex;
    gap: 12px;
    align-items: center;
}

.search-box[b-uslmci7y9i] {
    position: relative;
    display: flex;
    align-items: center;
}

.search-box i[b-uslmci7y9i] {
    position: absolute;
    left: 12px;
    color: #9ca3af;
    font-size: 16px;
}

.search-box input[b-uslmci7y9i] {
    padding: 10px 16px 10px 40px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: 14px;
    width: 300px;
    transition: all 0.2s;
}

.search-box input:focus[b-uslmci7y9i] {
    outline: none;
    border-color: #667eea;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

/* Table */
.table-container[b-uslmci7y9i] {
    overflow-x: auto;
}

.table-container table[b-uslmci7y9i] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.table-container th[b-uslmci7y9i] {
    background: #f9fafb;
    padding: 12px 16px;
    text-align: left;
    font-size: 13px;
    font-weight: 600;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 2px solid #e5e7eb;
}

.table-container td[b-uslmci7y9i] {
    padding: 16px;
    border-bottom: 1px solid #f3f4f6;
    font-size: 14px;
    color: #374151;
}

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

.table-container tbody tr[b-uslmci7y9i] {
    transition: background-color 0.15s;
}

.table-container tbody tr:hover[b-uslmci7y9i] {
    background-color: #f9fafb;
}

/* Template Name */
.template-name[b-uslmci7y9i] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    color: #1f2937;
}

.system-badge[b-uslmci7y9i] {
    display: inline-flex;
    align-items: center;
    padding: 2px 6px;
    background: #e0e7ff;
    color: #4f46e5;
    border-radius: 4px;
    font-size: 12px;
}

.system-badge i[b-uslmci7y9i] {
    font-size: 12px;
}

/* Category Badge */
.category-badge[b-uslmci7y9i] {
    display: inline-block;
    padding: 4px 10px;
    background: #f3f4f6;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 600;
    color: #4b5563;
}

/* Variables List */
.variables-list[b-uslmci7y9i] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.variable-badge[b-uslmci7y9i] {
    display: inline-block;
    padding: 4px 8px;
    background: #fef3c7;
    border: 1px solid #fde68a;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    color: #92400e;
    font-family: 'Courier New', monospace;
}

/* Status Badges */
.status-badge[b-uslmci7y9i] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 600;
}

.status-badge.status-active[b-uslmci7y9i] {
    background: #d1fae5;
    color: #065f46;
}

.status-badge.status-inactive[b-uslmci7y9i] {
    background: #fee2e2;
    color: #991b1b;
}

/* Action Buttons */
.action-buttons[b-uslmci7y9i] {
    display: flex;
    gap: 8px;
}

.btn-icon[b-uslmci7y9i] {
    width: 32px;
    height: 32px;
    border: none;
    border-radius: 6px;
    background: #f3f4f6;
    color: #4b5563;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-icon:hover[b-uslmci7y9i] {
    background: #e5e7eb;
}

.btn-icon.btn-danger[b-uslmci7y9i] {
    background: #fee2e2;
    color: var(--error-600);
}

.btn-icon.btn-danger:hover[b-uslmci7y9i] {
    background: #fecaca;
}

.btn-icon.btn-success[b-uslmci7y9i] {
    background: #d1fae5;
    color: #059669;
}

.btn-icon.btn-success:hover[b-uslmci7y9i] {
    background: #a7f3d0;
}

/* Primary Button */
.btn-primary[b-uslmci7y9i] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-primary:hover[b-uslmci7y9i] {
    background: var(--brand-700, #003760);
}

/* Loading State */
.loading-container[b-uslmci7y9i] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    color: #6b7280;
}

.spinner[b-uslmci7y9i] {
    width: 48px;
    height: 48px;
    border: 4px solid #f3f4f6;
    border-top-color: #667eea;
    border-radius: 50%;
    animation: spin-b-uslmci7y9i 1s linear infinite;
    margin-bottom: 16px;
}

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

/* Empty State */
.empty-state[b-uslmci7y9i] {
    text-align: center;
    padding: 60px 20px;
    color: #9ca3af;
}

.empty-state i[b-uslmci7y9i] {
    font-size: 64px;
    margin-bottom: 16px;
    opacity: 0.5;
}

.empty-state h3[b-uslmci7y9i] {
    font-size: 18px;
    font-weight: 600;
    color: #6b7280;
    margin: 0 0 8px 0;
}

.empty-state p[b-uslmci7y9i] {
    font-size: 14px;
    margin: 0;
}

/* Responsive Design */
@media (max-width: 768px) {
    .stats-row[b-uslmci7y9i] {
        grid-template-columns: 1fr;
    }

    .content-header[b-uslmci7y9i] {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .header-actions[b-uslmci7y9i] {
        width: 100%;
        flex-direction: column;
    }

    .search-box input[b-uslmci7y9i] {
        width: 100%;
    }

    .btn-primary[b-uslmci7y9i] {
        width: 100%;
        justify-content: center;
    }

    .table-container[b-uslmci7y9i] {
        overflow-x: auto;
    }

    .table-container table[b-uslmci7y9i] {
        min-width: 900px;
    }
}

/* /Components/Pages/Admin/Tabs/SubTabs/FeatureFlagsSubTab.razor.rz.scp.css */
/* Feature Flags Sub-Tab Styles */

.feature-flags-content[b-h0x5fzthu3] {
    max-width: 100%;
}

/* Flags Section */
.flags-section[b-h0x5fzthu3] {
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(240, 247, 252, 0.6) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 28px;
}

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

.section-title[b-h0x5fzthu3] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 20px;
    font-weight: 700;
    color: #1F2937;
}

.section-title i[b-h0x5fzthu3] {
    font-size: 24px;
    color: var(--brand-500);
}

.section-subtitle[b-h0x5fzthu3] {
    font-size: 14px;
    color: #6B7280;
    margin-bottom: 28px;
}

/* Add Flag Button */
.btn-add-flag[b-h0x5fzthu3] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-add-flag:hover[b-h0x5fzthu3] {
    background: var(--brand-700, #003760);
}

.btn-add-flag i[b-h0x5fzthu3] {
    font-size: 16px;
}

/* Toolbar */
.flags-toolbar[b-h0x5fzthu3] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 10px;
    padding: 16px;
}

.search-container[b-h0x5fzthu3] {
    flex: 1;
    max-width: 400px;
    position: relative;
    display: flex;
    align-items: center;
}

.search-container > i[b-h0x5fzthu3] {
    position: absolute;
    left: 14px;
    font-size: 16px;
    color: #6B7280;
    pointer-events: none;
}

.search-input[b-h0x5fzthu3] {
    width: 100%;
    padding: 10px 40px 10px 40px;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 8px;
    font-size: 14px;
    color: #1F2937;
    background: white;
    transition: all 0.2s;
}

.search-input:focus[b-h0x5fzthu3] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.clear-search[b-h0x5fzthu3] {
    position: absolute;
    right: 8px;
    background: none;
    border: none;
    padding: 4px;
    cursor: pointer;
    color: #6B7280;
    transition: color 0.2s;
}

.clear-search:hover[b-h0x5fzthu3] {
    color: var(--brand-500);
}

.clear-search i[b-h0x5fzthu3] {
    font-size: 18px;
}

.filter-group[b-h0x5fzthu3] {
    display: flex;
    gap: 12px;
}

.filter-select[b-h0x5fzthu3] {
    padding: 10px 14px;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 8px;
    font-size: 14px;
    color: #1F2937;
    background: white;
    cursor: pointer;
    transition: all 0.2s;
}

.filter-select:focus[b-h0x5fzthu3] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

/* Feature Flags Table */
.flags-table-container[b-h0x5fzthu3] {
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 24px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.flags-table[b-h0x5fzthu3] {
    width: 100%;
    border-collapse: collapse;
}

.flags-table thead[b-h0x5fzthu3] {
    background: #E3F1FB;
    border-bottom: 2px solid #B8DAF0;
}

.flags-table th[b-h0x5fzthu3] {
    padding: 14px 16px;
    text-align: left;
    font-size: 13px;
    font-weight: 700;
    color: #1F2937;
    text-transform: capitalize;
    letter-spacing: 0.3px;
}

.flags-table th.status-column[b-h0x5fzthu3] {
    width: 120px;
    text-align: center;
}

.flags-table th.actions-column[b-h0x5fzthu3] {
    text-align: right;
    width: 150px;
    padding-right: 20px;
}

.flags-table tbody tr[b-h0x5fzthu3] {
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    transition: background-color 0.2s;
}

.flags-table tbody tr:hover[b-h0x5fzthu3] {
    background-color: rgba(15, 23, 42, 0.04);
}

.flags-table tbody tr:last-child[b-h0x5fzthu3] {
    border-bottom: none;
}

.flags-table td[b-h0x5fzthu3] {
    padding: 14px 16px;
    font-size: 14px;
    color: #374151;
}

/* Name Cell */
.name-cell[b-h0x5fzthu3] {
    width: 250px;
}

.flag-name-wrapper[b-h0x5fzthu3] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.flag-key[b-h0x5fzthu3] {
    font-size: 11px;
    font-weight: 700;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-family: 'Courier New', monospace;
}

.flag-name[b-h0x5fzthu3] {
    font-size: 14px;
    font-weight: 600;
    color: var(--brand-500);
}

/* Description Cell */
.description-cell[b-h0x5fzthu3] {
    color: #1F2937;
    font-weight: 500;
    max-width: 400px;
}

/* Category Cell */
.category-cell[b-h0x5fzthu3] {
    width: 150px;
}

.category-badge[b-h0x5fzthu3] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.category-badge i[b-h0x5fzthu3] {
    font-size: 12px;
}

.category-ui[b-h0x5fzthu3] {
    background: #DBEAFE;
    color: #1E40AF;
}

.category-api[b-h0x5fzthu3] {
    background: #FEF3C7;
    color: #D97706;
}

.category-security[b-h0x5fzthu3] {
    background: #FEE2E2;
    color: var(--error-600);
}

.category-experimental[b-h0x5fzthu3] {
    background: #F3E8FF;
    color: #7C3AED;
}

/* Status Cell */
.status-cell[b-h0x5fzthu3] {
    text-align: center;
}

.status-indicator[b-h0x5fzthu3] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.status-indicator i[b-h0x5fzthu3] {
    font-size: 14px;
}

.status-indicator.enabled[b-h0x5fzthu3] {
    background: #ECFDF5;
    color: #047857;
    border: 1px solid #A7F3D0;
}

.status-indicator.disabled[b-h0x5fzthu3] {
    background: #FEF2F2;
    color: var(--error-600);
    border: 1px solid #FECACA;
}

/* Actions Cell */
.actions-cell[b-h0x5fzthu3] {
    text-align: right;
    padding-right: 20px !important;
}

/* Bootstrap Button Group Customization */
.actions-cell .btn-action[b-h0x5fzthu3] {
    padding: 6px 10px;
    font-size: 14px;
}

.actions-cell .btn-action i[b-h0x5fzthu3] {
    font-size: 14px;
}

/* Empty State */
.empty-state[b-h0x5fzthu3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 80px 20px;
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 10px;
}

.empty-state i[b-h0x5fzthu3] {
    font-size: 64px;
    color: #D1D5DB;
    margin-bottom: 16px;
}

.empty-state p[b-h0x5fzthu3] {
    font-size: 16px;
    font-weight: 600;
    color: #6B7280;
    margin: 0 0 8px 0;
}

.empty-hint[b-h0x5fzthu3] {
    font-size: 14px;
    color: #9CA3AF;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .flags-toolbar[b-h0x5fzthu3] {
        flex-wrap: wrap;
    }

    .search-container[b-h0x5fzthu3] {
        max-width: 100%;
        flex: 1 1 100%;
    }
}

@media (max-width: 768px) {
    .flags-section[b-h0x5fzthu3] {
        padding: 20px;
    }

    .section-header[b-h0x5fzthu3] {
        flex-direction: column;
        gap: 12px;
        align-items: flex-start;
    }

    .btn-add-flag[b-h0x5fzthu3] {
        width: 100%;
        justify-content: center;
    }

    .flags-toolbar[b-h0x5fzthu3] {
        flex-direction: column;
        align-items: stretch;
    }

    .filter-group[b-h0x5fzthu3] {
        flex-direction: column;
    }

    .filter-select[b-h0x5fzthu3] {
        width: 100%;
    }

    .flags-table-container[b-h0x5fzthu3] {
        overflow-x: auto;
    }

    .flags-table[b-h0x5fzthu3] {
        min-width: 800px;
    }
}

@media (max-width: 480px) {
    .section-title[b-h0x5fzthu3] {
        font-size: 18px;
    }

    .section-title i[b-h0x5fzthu3] {
        font-size: 20px;
    }
}


/* /Components/Pages/Admin/Tabs/SubTabs/RaterSettingsSubTab.razor.rz.scp.css */
/* Rater Settings Sub-Tab Styles */

.rater-settings-content[b-srz6rxxfc1] {
    max-width: 100%;
}

/* Rater Section */
.rater-section[b-srz6rxxfc1] {
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(240, 247, 252, 0.6) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 28px;
}

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

.section-title[b-srz6rxxfc1] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 20px;
    font-weight: 700;
    color: #1F2937;
}

.section-title i[b-srz6rxxfc1] {
    font-size: 24px;
    color: var(--brand-500);
}

.section-subtitle[b-srz6rxxfc1] {
    font-size: 14px;
    color: #6B7280;
    margin-bottom: 32px;
}

/* Subsection */
.subsection[b-srz6rxxfc1] {
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 10px;
    padding: 24px;
    margin-bottom: 24px;
}

.subsection-title[b-srz6rxxfc1] {
    font-size: 16px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 20px 0;
    padding-bottom: 12px;
    border-bottom: 2px solid rgba(15, 23, 42, 0.08);
}

/* Base Rates Grid */
.rates-grid[b-srz6rxxfc1] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
}

.rate-item[b-srz6rxxfc1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 8px;
    transition: all 0.2s;
}

.rate-item:hover[b-srz6rxxfc1] {
    border-color: rgba(15, 23, 42, 0.2);
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.08);
}

.rate-label[b-srz6rxxfc1] {
    font-size: 14px;
    font-weight: 500;
    color: #374151;
    flex: 1;
}

.rate-input[b-srz6rxxfc1] {
    width: 80px;
    padding: 8px 12px;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    color: var(--brand-500);
    text-align: right;
    background: white;
    transition: all 0.2s;
}

.rate-input:focus[b-srz6rxxfc1] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

/* Term Factors Grid */
.term-factors-grid[b-srz6rxxfc1] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
}

.term-factor-item[b-srz6rxxfc1] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 8px;
    transition: all 0.2s;
}

.term-factor-item:hover[b-srz6rxxfc1] {
    border-color: rgba(15, 23, 42, 0.2);
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.08);
}

.term-label[b-srz6rxxfc1] {
    font-size: 13px;
    font-weight: 600;
    color: #6B7280;
    text-align: center;
}

.term-input[b-srz6rxxfc1] {
    width: 100%;
    padding: 8px 12px;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    color: var(--brand-500);
    text-align: center;
    background: white;
    transition: all 0.2s;
}

.term-input:focus[b-srz6rxxfc1] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

/* LTV Surcharges Grid */
.ltv-grid[b-srz6rxxfc1] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 16px;
}

.ltv-item[b-srz6rxxfc1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 8px;
    transition: all 0.2s;
}

.ltv-item:hover[b-srz6rxxfc1] {
    border-color: rgba(15, 23, 42, 0.2);
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.08);
}

.ltv-label[b-srz6rxxfc1] {
    font-size: 14px;
    font-weight: 600;
    color: #374151;
}

.ltv-input-group[b-srz6rxxfc1] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.ltv-input[b-srz6rxxfc1] {
    width: 80px;
    padding: 8px 12px;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    color: var(--brand-500);
    text-align: right;
    background: white;
    transition: all 0.2s;
}

.ltv-input:focus[b-srz6rxxfc1] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.ltv-unit[b-srz6rxxfc1] {
    font-size: 13px;
    color: #6B7280;
    font-weight: 500;
}

/* Taxes & Fees Grid */
.taxes-grid[b-srz6rxxfc1] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 16px;
}

.tax-item[b-srz6rxxfc1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 8px;
    transition: all 0.2s;
}

.tax-item:hover[b-srz6rxxfc1] {
    border-color: rgba(15, 23, 42, 0.2);
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.08);
}

.tax-label[b-srz6rxxfc1] {
    font-size: 14px;
    font-weight: 500;
    color: #374151;
}

.tax-input[b-srz6rxxfc1] {
    width: 100px;
    padding: 8px 12px;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    color: var(--brand-500);
    text-align: right;
    background: white;
    transition: all 0.2s;
}

.tax-input:focus[b-srz6rxxfc1] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

/* Review Fees Grid */
.fees-grid[b-srz6rxxfc1] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 16px;
}

.fee-item[b-srz6rxxfc1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 16px;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 8px;
    transition: all 0.2s;
}

.fee-item:hover[b-srz6rxxfc1] {
    border-color: rgba(15, 23, 42, 0.2);
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.08);
}

.fee-label[b-srz6rxxfc1] {
    font-size: 14px;
    font-weight: 500;
    color: #374151;
}

.fee-input[b-srz6rxxfc1] {
    width: 100px;
    padding: 8px 12px;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    color: var(--brand-500);
    text-align: right;
    background: white;
    transition: all 0.2s;
}

.fee-input:focus[b-srz6rxxfc1] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

/* Save Section */
.save-section[b-srz6rxxfc1] {
    margin-top: 32px;
    padding-top: 24px;
    border-top: 2px solid rgba(15, 23, 42, 0.08);
}

.btn-save-coefficients[b-srz6rxxfc1] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 14px 24px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-save-coefficients:hover[b-srz6rxxfc1] {
    background: var(--brand-700, #003760);
}

.btn-save-coefficients i[b-srz6rxxfc1] {
    font-size: 18px;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .term-factors-grid[b-srz6rxxfc1] {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .rater-section[b-srz6rxxfc1] {
        padding: 20px;
    }
    
    .subsection[b-srz6rxxfc1] {
        padding: 16px;
    }
    
    .rates-grid[b-srz6rxxfc1] {
        grid-template-columns: 1fr;
    }
    
    .term-factors-grid[b-srz6rxxfc1] {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .ltv-grid[b-srz6rxxfc1],
    .taxes-grid[b-srz6rxxfc1],
    .fees-grid[b-srz6rxxfc1] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .term-factors-grid[b-srz6rxxfc1] {
        grid-template-columns: 1fr;
    }
}

/* /Components/Pages/Admin/Tabs/SubTabs/ReferenceDataSubTab.razor.rz.scp.css */
/* ========================================
   States Management - Enhanced UI Styles
   ======================================== */

/* === Category Selector === */
.category-selector-section[b-ia4ql9x0x5] {
    margin-bottom: 1.5rem;
}

.category-cards[b-ia4ql9x0x5] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1rem;
}

.category-card[b-ia4ql9x0x5] {
    background: var(--bg-surface);
    border: 1px solid var(--border-light);
    border-radius: 8px;
    padding: 0.75rem 1.25rem;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    box-shadow: none;
    position: relative;
}

.category-card:hover[b-ia4ql9x0x5] {
    background: var(--bg-hover);
    border-color: var(--brand-300);
    transform: translateY(-1px);
}

.category-card.active[b-ia4ql9x0x5] {
    background: var(--brand-500);
    border-color: var(--brand-500);
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.15);
}

.category-card.active .category-icon[b-ia4ql9x0x5] {
    background: rgba(255, 255, 255, 0.2);
}

.category-card.active .category-name[b-ia4ql9x0x5],
.category-card.active .category-count[b-ia4ql9x0x5] {
    color: white;
}

.category-icon[b-ia4ql9x0x5] {
    width: 32px;
    height: 32px;
    min-width: 32px;
    border-radius: 6px;
    background: var(--neutral-100);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.category-icon i[b-ia4ql9x0x5] {
    font-size: 1rem;  /* Reduced from 1.1rem */
    color: var(--brand-500);
    transition: all 0.2s ease;
}

.category-card:hover .category-icon[b-ia4ql9x0x5] {
    background: var(--brand-100);
}

.category-card.active .category-icon i[b-ia4ql9x0x5] {
    color: white;
}

.category-info[b-ia4ql9x0x5] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.category-name[b-ia4ql9x0x5] {
    font-size: 0.875rem;  /* Standardized */
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    transition: color 0.2s ease;
    white-space: nowrap;
    line-height: 1.4;
}

.category-count[b-ia4ql9x0x5] {
    font-size: 0.75rem;
    color: var(--text-muted);
    transition: color 0.2s ease;
    line-height: 1.3;
}

.category-card:not(.active):hover .category-name[b-ia4ql9x0x5] {
    color: var(--brand-600);
}

.category-card:not(.active):hover .category-count[b-ia4ql9x0x5] {
    color: var(--text-secondary);
}

/* === Section Header === */
.reference-section[b-ia4ql9x0x5] {
    padding: 0;
}

.section-header[b-ia4ql9x0x5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
}

.section-title[b-ia4ql9x0x5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 1.25rem;  /* Reduced from 1.5rem for better proportion */
    font-weight: 700;
    color: var(--text-primary);
}

.section-title i[b-ia4ql9x0x5] {
    color: var(--brand-500);
    font-size: 1.35rem;  /* Reduced from 1.75rem to match title */
}

.section-subtitle[b-ia4ql9x0x5] {
    color: var(--text-secondary);
    font-size: 0.875rem;  /* Standardized from 0.95rem */
    margin-bottom: 1.5rem;
    line-height: 1.5;
}

.btn-add-category[b-ia4ql9x0x5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;  /* Slightly adjusted padding */
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 0.875rem;  /* Added explicit font size */
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-add-category:hover[b-ia4ql9x0x5] {
    background: var(--brand-700, #003760);
}

.btn-add-category i[b-ia4ql9x0x5] {
    font-size: 1.1rem;
}

/* === Regular Data Management Section (Property Types, Loan Types, etc.) === */
.data-management-section[b-ia4ql9x0x5] {
    margin-top: 1.5rem;
}

.data-management-section .data-toolbar[b-ia4ql9x0x5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding: 1rem;
    background: var(--bg-surface);
    border-radius: 8px;
    border: 1px solid var(--border-light);
}

.data-management-section .search-container[b-ia4ql9x0x5] {
    position: relative;
    flex: 1;
    max-width: 400px;
}

.data-management-section .search-container i[b-ia4ql9x0x5] {
    position: absolute;
    left: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted);
}

.data-management-section .search-input[b-ia4ql9x0x5] {
    width: 100%;
    padding: 0.6rem 2.5rem 0.6rem 2.25rem;
    border: 1px solid var(--border-light);
    border-radius: 6px;
    font-size: 0.9rem;
    transition: all 0.2s ease;
}

.data-management-section .search-input:focus[b-ia4ql9x0x5] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.data-management-section .clear-search[b-ia4ql9x0x5] {
    position: absolute;
    right: 0.5rem;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    color: var(--text-muted);
    cursor: pointer;
    padding: 0.25rem;
    display: flex;
    align-items: center;
    transition: color 0.2s ease;
}

.data-management-section .clear-search:hover[b-ia4ql9x0x5] {
    color: var(--error-500);
}

.data-management-section .btn-add-item[b-ia4ql9x0x5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1.25rem;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.9rem;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}

.data-management-section .btn-add-item:hover[b-ia4ql9x0x5] {
    background: var(--brand-700, #003760);
}

.data-management-section .btn-add-item i[b-ia4ql9x0x5] {
    font-size: 1rem;
}

.data-table-container[b-ia4ql9x0x5] {
    background: var(--bg-surface);
    border-radius: 8px;
    border: 1px solid var(--border-light);
    overflow: hidden;
}

.data-table[b-ia4ql9x0x5] {
    width: 100%;
    border-collapse: collapse;
}

.data-table thead[b-ia4ql9x0x5] {
    background: var(--neutral-100);
}

.data-table thead tr[b-ia4ql9x0x5] {
    border-bottom: 2px solid var(--border-medium);
}

.data-table th[b-ia4ql9x0x5] {
    padding: 0.875rem 1rem;
    text-align: left;
    font-weight: 600;
    font-size: 0.8125rem;  /* 13px - standardized */
    color: var(--text-primary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1.3;
}

.data-table .actions-column[b-ia4ql9x0x5] {
    text-align: center;
    width: 140px;
}

.data-table tbody tr[b-ia4ql9x0x5] {
    border-bottom: 1px solid var(--border-light);
    transition: background-color 0.2s ease;
}

.data-table tbody tr:hover[b-ia4ql9x0x5] {
    background: var(--bg-hover);
}

.data-table tbody tr:last-child[b-ia4ql9x0x5] {
    border-bottom: none;
}

.data-table td[b-ia4ql9x0x5] {
    padding: 0.875rem 1rem;
    font-size: 0.875rem;  /* Standardized */
    color: var(--text-primary);
    line-height: 1.5;
}

.code-cell[b-ia4ql9x0x5] {
    font-weight: 600;
}

.code-badge[b-ia4ql9x0x5] {
    display: inline-block;
    padding: 0.25rem 0.55rem;  /* Slightly adjusted */
    background: var(--brand-100);
    color: var(--brand-700);
    border-radius: 4px;
    font-size: 0.8125rem;  /* Standardized */
    font-weight: 600;
    font-family: 'Courier New', monospace;
    line-height: 1.2;
}

.domain-text[b-ia4ql9x0x5] {
    font-family: 'Courier New', monospace;
    color: var(--brand-600);
    font-weight: 600;
    font-size: 0.875rem;  /* Added explicit size */
}

.description-cell[b-ia4ql9x0x5] {
    color: var(--text-secondary);
    font-size: 0.875rem;  /* Added explicit size */
    line-height: 1.5;
}

.order-cell[b-ia4ql9x0x5] {
    text-align: center;
    color: var(--text-muted);
    font-weight: 500;
    font-size: 0.875rem;  /* Added explicit size */
}

.status-cell[b-ia4ql9x0x5] {
    text-align: center;
}

.status-indicator[b-ia4ql9x0x5] {
    display: inline-block;
    padding: 0.3rem 0.65rem;  /* Slightly adjusted */
    border-radius: 6px;
    font-size: 0.75rem;  /* Reduced from 0.8rem */
    font-weight: 600;
    line-height: 1.2;
}

.status-indicator.active[b-ia4ql9x0x5] {
    background: var(--success-100);
    color: var(--success-700);
}

.status-indicator.inactive[b-ia4ql9x0x5] {
    background: var(--neutral-200);
    color: var(--neutral-600);
}

.actions-cell[b-ia4ql9x0x5] {
    text-align: center;
}

.btn-action[b-ia4ql9x0x5] {
    padding: 0.35rem 0.6rem;
    font-size: 0.85rem;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.empty-state[b-ia4ql9x0x5] {
    text-align: center;
    padding: 3rem 2rem;
    color: var(--text-secondary);
}

.empty-state i[b-ia4ql9x0x5] {
    font-size: 3rem;
    color: var(--neutral-300);
    margin-bottom: 1rem;
    display: block;
}

.empty-state p[b-ia4ql9x0x5] {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.empty-state .empty-hint[b-ia4ql9x0x5] {
    color: var(--text-muted);
    font-size: 0.9rem;
}

.save-section[b-ia4ql9x0x5] {
    display: flex;
    gap: 1rem;
    padding: 1.5rem;
    background: var(--neutral-50);
    border-top: 1px solid var(--border-light);
    margin-top: 1.5rem;
    border-radius: 0 0 8px 8px;
}

.btn-save-changes[b-ia4ql9x0x5],
.btn-discard-changes[b-ia4ql9x0x5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.65rem 1.25rem;  /* Slightly adjusted */
    border-radius: 10px;
    font-weight: 600;
    font-size: 0.875rem;  /* Standardized */
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    border: none;
    line-height: 1.4;
}

.btn-save-changes[b-ia4ql9x0x5] {
    background: var(--success-600, #059669);
    color: white;
}

.btn-save-changes:hover[b-ia4ql9x0x5] {
    background: var(--success-700, #047857);
}

.btn-discard-changes[b-ia4ql9x0x5] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.btn-discard-changes:hover[b-ia4ql9x0x5] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-save-changes i[b-ia4ql9x0x5],
.btn-discard-changes i[b-ia4ql9x0x5] {
    font-size: 1rem;
}

/* === Toolbar === */
.states-toolbar[b-ia4ql9x0x5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1.5rem;
    padding: 1rem;
    background: var(--bg-surface);
    border-radius: 8px;
    margin-bottom: 1.5rem;
    border: 1px solid var(--border-light);
}

.states-search[b-ia4ql9x0x5] {
    position: relative;
    flex: 1;
    max-width: 500px;
}

.states-search .search-icon[b-ia4ql9x0x5] {
    position: absolute;
    left: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted);
    pointer-events: none;
    transition: color 0.3s ease;
}

.states-search-input[b-ia4ql9x0x5] {
    width: 100%;
    padding: 0.6rem 2.5rem 0.6rem 2.25rem;
    border: 1px solid var(--border-light);
    border-radius: 6px;
    font-size: 0.9rem;  /* Standardized from 0.95rem */
    background: white;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    line-height: 1.5;
}

.states-search-input:focus[b-ia4ql9x0x5] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 4px rgba(15, 23, 42, 0.08);
}

.states-search-input:focus + .search-icon[b-ia4ql9x0x5] {
    color: var(--brand-500);
}

.states-search .clear-search[b-ia4ql9x0x5] {
    position: absolute;
    right: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    color: var(--neutral-400);
    cursor: pointer;
    padding: 0.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    border-radius: 6px;
}

.states-search .clear-search:hover[b-ia4ql9x0x5] {
    color: var(--error-500);
    background: var(--error-50);
}

.states-search .clear-search i[b-ia4ql9x0x5] {
    font-size: 1.1rem;
}

/* === Summary Badges === */
.states-summary[b-ia4ql9x0x5] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
}

.badge-states-active[b-ia4ql9x0x5],
.badge-states-total[b-ia4ql9x0x5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;  /* Slightly adjusted */
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.8125rem;  /* 13px - professional standard */
    box-shadow: var(--shadow-xs);
    transition: all 0.3s ease;
    animation: badge-slide-in-b-ia4ql9x0x5 0.5s ease;
    line-height: 1.4;
}

.badge-states-active[b-ia4ql9x0x5] {
    background: linear-gradient(135deg, var(--success-500) 0%, var(--success-600) 100%);
    color: white;
}

.badge-states-total[b-ia4ql9x0x5] {
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-600) 100%);
    color: white;
}

.badge-states-active:hover[b-ia4ql9x0x5],
.badge-states-total:hover[b-ia4ql9x0x5] {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

@keyframes badge-slide-in-b-ia4ql9x0x5 {
    from {
        opacity: 0;
        transform: translateX(20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* === Loading States === */
.states-loading[b-ia4ql9x0x5] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem 2rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-light);
}

.spinner-wrapper[b-ia4ql9x0x5] {
    margin-bottom: 1rem;
    animation: pulse-b-ia4ql9x0x5 2s ease-in-out infinite;
}

.loading-text[b-ia4ql9x0x5] {
    color: var(--text-secondary);
    font-size: 1rem;
    margin: 0;
    animation: fade-in-out-b-ia4ql9x0x5 1.5s ease-in-out infinite;
}

@keyframes pulse-b-ia4ql9x0x5 {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}

@keyframes fade-in-out-b-ia4ql9x0x5 {
    0%, 100% { opacity: 0.5; }
    50% { opacity: 1; }
}

/* === Accordion === */
.states-accordion[b-ia4ql9x0x5] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.state-accordion-item[b-ia4ql9x0x5] {
    border: 1px solid var(--border-light);
    border-radius: 12px;
    background: white;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    animation: accordion-slide-in-b-ia4ql9x0x5 0.4s ease;
    box-shadow: var(--shadow-xs);
}

.state-accordion-item:hover[b-ia4ql9x0x5] {
    box-shadow: var(--shadow-md);
    border-color: var(--brand-200);
}

.state-accordion-item.expanded[b-ia4ql9x0x5] {
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.1);
    border-color: var(--brand-300);
}

@keyframes accordion-slide-in-b-ia4ql9x0x5 {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* === Accordion Header === */
.state-accordion-button[b-ia4ql9x0x5] {
    width: 100%;
    padding: 1.25rem 3.5rem 1.25rem 1.5rem;  /* Added right padding for chevron */
    background: linear-gradient(135deg, #ffffff 0%, var(--brand-50) 100%);
    border: none;
    text-align: left;
    display: flex;
    align-items: center;
    gap: 1rem;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
}

.state-accordion-button:not(.collapsed)[b-ia4ql9x0x5] {
    background: linear-gradient(135deg, var(--brand-50) 0%, var(--brand-100) 100%);
    border-bottom: 2px solid var(--brand-200);
}

.state-accordion-button[b-ia4ql9x0x5]::after {
    content: '\F282';  /* Bootstrap icon chevron-down */
    font-family: 'bootstrap-icons';
    position: absolute;
    right: 1.5rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.25rem;
    color: var(--brand-500);
    transition: transform 0.3s ease;
    pointer-events: none;
    z-index: 1;  /* Ensure it's above other content */
    font-weight: bold;
}

.state-accordion-button:not(.collapsed)[b-ia4ql9x0x5]::after {
    transform: translateY(-50%) rotate(180deg);
}

.state-header-content[b-ia4ql9x0x5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 2rem;
    padding-right: 0;  /* Remove extra padding since button has it */
    position: relative;
    z-index: 0;  /* Keep content below chevron */
}

.state-info-section[b-ia4ql9x0x5] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex: 1;
}

.state-name-wrapper[b-ia4ql9x0x5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.state-icon[b-ia4ql9x0x5] {
    color: var(--brand-500);
    font-size: 1.3rem;
    animation: icon-bounce-b-ia4ql9x0x5 2s ease-in-out infinite;
}

@keyframes icon-bounce-b-ia4ql9x0x5 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-3px); }
}

.state-name[b-ia4ql9x0x5] {
    font-size: 1rem;  /* Kept at 1rem - good size */
    font-weight: 600;
    color: var(--text-primary);
    line-height: 1.4;
}

.state-abbr-badge[b-ia4ql9x0x5] {
    padding: 0.25rem 0.65rem;  /* Slightly adjusted */
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-600) 100%);
    color: white;
    border-radius: 6px;
    font-size: 0.75rem;  /* Reduced from 0.85rem */
    font-weight: 700;
    letter-spacing: 0.5px;
    box-shadow: var(--shadow-xs);
    line-height: 1.2;
}

.state-count-text[b-ia4ql9x0x5] {
    color: var(--text-secondary);
    font-size: 0.8125rem;  /* Standardized from 0.9rem */
    padding-left: 2rem;
    line-height: 1.4;
}

/* === Progress Section === */
.state-stats-section[b-ia4ql9x0x5] {
    display: flex;
    align-items: center;
    gap: 2rem;
}

.progress-wrapper[b-ia4ql9x0x5] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

/* Status Indicator Styles */
.state-status-wrapper[b-ia4ql9x0x5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.state-status-counts[b-ia4ql9x0x5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: var(--neutral-50);
    border-radius: 8px;
    border: 1px solid var(--neutral-200);
}

.status-count-item[b-ia4ql9x0x5] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
}

.status-count-item i[b-ia4ql9x0x5] {
    font-size: 1rem;
}

.status-count-item.active i[b-ia4ql9x0x5] {
    color: var(--success-600);
}

.status-count-item.inactive i[b-ia4ql9x0x5] {
    color: var(--neutral-400);
}

.status-count-item .count-value[b-ia4ql9x0x5] {
    font-weight: 700;
    color: var(--text-primary);
}

.status-count-item .count-label[b-ia4ql9x0x5] {
    font-weight: 500;
    color: var(--text-secondary);
    font-size: 0.8125rem;
}

.status-count-divider[b-ia4ql9x0x5] {
    width: 1px;
    height: 20px;
    background: var(--neutral-300);
    margin: 0 0.25rem;
}

.state-status-badge[b-ia4ql9x0x5] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.625rem;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 600;
    white-space: nowrap;
    border: 1px solid;
    transition: all 0.2s ease;
}

.state-status-badge.status-good[b-ia4ql9x0x5] {
    background: var(--success-50);
    color: var(--success-700);
    border-color: var(--success-200);
}

.state-status-badge.status-partial[b-ia4ql9x0x5] {
    background: var(--warning-50);
    color: var(--warning-700);
    border-color: var(--warning-200);
}

.state-status-badge.status-none[b-ia4ql9x0x5] {
    background: var(--neutral-50);
    color: var(--neutral-600);
    border-color: var(--neutral-200);
}

.state-status-badge .status-percentage[b-ia4ql9x0x5] {
    font-weight: 700;
    font-size: 0.875rem;
}

.state-status-badge .status-text[b-ia4ql9x0x5] {
    font-weight: 500;
}

/* === Toggle Switch === */
.state-toggle-wrapper[b-ia4ql9x0x5] {
    display: flex;
    align-items: center;
}

.state-switch[b-ia4ql9x0x5] {
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
}

.state-switch-input[b-ia4ql9x0x5] {
    width: 3rem;
    height: 1.5rem;
    cursor: pointer;
    background-color: var(--neutral-300);
    border: none;
    transition: all 0.3s ease;
    margin: 0;
}

.state-switch-input:checked[b-ia4ql9x0x5] {
    background-color: var(--success-500);
    box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.2);
}

.state-switch-input:focus[b-ia4ql9x0x5] {
    box-shadow: 0 0 0 4px rgba(15, 23, 42, 0.15);
}

.state-switch-input:hover[b-ia4ql9x0x5] {
    opacity: 0.85;
}

/* Remove label styling since we removed the label */
.state-switch-label[b-ia4ql9x0x5] {
    display: none;
}

/* === Accordion Body === */
.state-collapse[b-ia4ql9x0x5] {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.state-body[b-ia4ql9x0x5] {
    padding: 0;
    background: var(--neutral-50);
}

/* === Data Table === */
.states-management-section .state-table-wrapper[b-ia4ql9x0x5] {
    padding: 1.5rem;
    animation: table-fade-in-b-ia4ql9x0x5 0.5s ease;
}

@keyframes table-fade-in-b-ia4ql9x0x5 {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.states-management-section .state-data-table[b-ia4ql9x0x5] {
    margin: 0;
    background: white;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

.states-management-section .state-table-header[b-ia4ql9x0x5] {
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-600) 100%);
    color: white;
}

.states-management-section .state-table-header th[b-ia4ql9x0x5] {
    padding: 1rem 1.25rem;
    font-weight: 600;
    font-size: 0.8125rem;  /* 13px - reduced from 0.9rem */
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: none;
    line-height: 1.3;
}

.states-management-section .state-table-header i[b-ia4ql9x0x5] {
    opacity: 0.9;
}

.states-management-section .state-data-row[b-ia4ql9x0x5] {
    transition: all 0.2s ease;
    border-bottom: 1px solid var(--border-light);
}

.states-management-section .state-data-row:hover[b-ia4ql9x0x5] {
    background: var(--brand-50);
    transform: scale(1.01);
}

.states-management-section .state-data-row.active-row[b-ia4ql9x0x5] {
    border-left: 3px solid var(--success-500);
}

.states-management-section .state-data-row.inactive-row[b-ia4ql9x0x5] {
    border-left: 3px solid var(--neutral-300);
    opacity: 0.7;
}

.states-management-section .state-data-row td[b-ia4ql9x0x5] {
    padding: 0.5rem 0.85rem;
    vertical-align: middle;
}

.states-management-section .city-cell[b-ia4ql9x0x5] {
    font-weight: 600;
    color: var(--text-primary);
    font-size: 0.875rem;  /* Added explicit size */
    line-height: 1.5;
}

.states-management-section .cell-icon[b-ia4ql9x0x5] {
    color: var(--brand-500);
    margin-right: 0.5rem;
    font-size: 0.875rem;  /* Reduced from 0.9rem */
}

.states-management-section .county-cell[b-ia4ql9x0x5] {
    color: var(--text-secondary);
    font-size: 0.875rem;  /* Added explicit size */
    line-height: 1.5;
}

.states-management-section .zipcode-badge[b-ia4ql9x0x5] {
    display: inline-block;
    padding: 0.3rem 0.65rem;  /* Slightly adjusted */
    background: var(--accent-100);
    color: var(--accent-800);
    border-radius: 6px;
    font-weight: 600;
    font-size: 0.8125rem;  /* Standardized */
    font-family: 'Courier New', monospace;
    line-height: 1.2;
}

.states-management-section .fips-code[b-ia4ql9x0x5] {
    background: var(--neutral-100);
    color: var(--neutral-700);
    padding: 0.3rem 0.55rem;  /* Slightly adjusted */
    border-radius: 4px;
    font-size: 0.8125rem;  /* Standardized */
    font-weight: 600;
    line-height: 1.2;
}

.states-management-section .status-badge[b-ia4ql9x0x5] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;  /* Slightly reduced */
    padding: 0.35rem 0.75rem;  /* Slightly adjusted */
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.75rem;  /* Reduced from 0.85rem */
    animation: badge-pop-in-b-ia4ql9x0x5 0.3s ease;
    line-height: 1.3;
}

@keyframes badge-pop-in-b-ia4ql9x0x5 {
    0% {
        transform: scale(0.8);
        opacity: 0;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

.states-management-section .status-badge.status-active[b-ia4ql9x0x5] {
    background: linear-gradient(135deg, var(--success-50) 0%, var(--success-100) 100%);
    color: var(--success-700);
    border: 1px solid var(--success-200);
}

.states-management-section .status-badge.status-inactive[b-ia4ql9x0x5] {
    background: var(--neutral-100);
    color: var(--neutral-600);
    border: 1px solid var(--neutral-300);
}

/* === Pagination === */
.state-pagination-wrapper[b-ia4ql9x0x5] {
    padding: 1.5rem;
    background: white;
    border-top: 1px solid var(--border-light);
}

.state-pagination[b-ia4ql9x0x5] {
    margin: 0;
    gap: 0.5rem;
}

.state-pagination .page-item[b-ia4ql9x0x5] {
    animation: page-fade-in-b-ia4ql9x0x5 0.4s ease;
}

@keyframes page-fade-in-b-ia4ql9x0x5 {
    from {
        opacity: 0;
        transform: translateY(5px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.page-link-states[b-ia4ql9x0x5] {
    padding: 0.5rem 1rem;  /* Slightly adjusted */
    border-radius: 8px;
    border: 1px solid var(--brand-200);
    color: var(--brand-600);
    font-weight: 600;
    font-size: 0.8125rem;  /* Standardized from implicit size */
    display: flex;
    align-items: center;
    gap: 0.4rem;
    transition: all 0.3s ease;
    line-height: 1.4;
}

.page-link-states:hover:not(:disabled)[b-ia4ql9x0x5] {
    background: var(--brand-500);
    color: white;
    border-color: var(--brand-500);
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

.page-link-states:disabled[b-ia4ql9x0x5] {
    opacity: 0.5;
    cursor: not-allowed;
}

.page-info[b-ia4ql9x0x5] {
    padding: 0.5rem 1rem;  /* Adjusted to match */
    border-radius: 8px;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-600) 100%);
    color: white;
    border: none;
    font-weight: 600;
    font-size: 0.8125rem;  /* Standardized */
    line-height: 1.4;
}

.page-info strong[b-ia4ql9x0x5] {
    font-weight: 700;
    font-size: 0.875rem;  /* Slightly larger */
}

/* === Empty States === */
.empty-search-state[b-ia4ql9x0x5],
.states-empty[b-ia4ql9x0x5] {
    text-align: center;
    padding: 3rem 2rem;
    color: var(--text-secondary);
    animation: empty-fade-in-b-ia4ql9x0x5 0.5s ease;
}

@keyframes empty-fade-in-b-ia4ql9x0x5 {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.empty-search-state i[b-ia4ql9x0x5],
.states-empty i[b-ia4ql9x0x5] {
    font-size: 3rem;
    color: var(--neutral-300);
    margin-bottom: 1rem;
    display: block;
}

.empty-search-state p[b-ia4ql9x0x5],
.states-empty p[b-ia4ql9x0x5] {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.empty-search-state span[b-ia4ql9x0x5],
.empty-hint[b-ia4ql9x0x5] {
    color: var(--text-muted);
    font-size: 0.95rem;
}

.loading-state-data[b-ia4ql9x0x5] {
    padding: 2rem;
    color: var(--text-secondary);
}

/* === Modal Styles === */
.state-modal-backdrop[b-ia4ql9x0x5] {
    background-color: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    animation: modal-backdrop-fade-in-b-ia4ql9x0x5 0.3s ease;
}

@keyframes modal-backdrop-fade-in-b-ia4ql9x0x5 {
    from { opacity: 0; }
    to { opacity: 1; }
}

.action-text[b-ia4ql9x0x5] {
    font-weight: 700;
}

.activate-text[b-ia4ql9x0x5] {
    color: var(--success-600);
}

.deactivate-text[b-ia4ql9x0x5] {
    color: var(--error-600);
}

.state-name-text[b-ia4ql9x0x5] {
    color: var(--brand-600);
}

/* === Responsive Design === */
@media (max-width: 1200px) {
    .category-cards[b-ia4ql9x0x5] {
        gap: 0.5rem;
    }
    
    .state-header-content[b-ia4ql9x0x5] {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    
    .state-stats-section[b-ia4ql9x0x5] {
        width: 100%;
        justify-content: space-between;
    }
    
    .state-status-counts[b-ia4ql9x0x5] {
        padding: 0.375rem 0.625rem;
        gap: 0.375rem;
    }
    
    .status-count-item[b-ia4ql9x0x5] {
        font-size: 0.8125rem;
    }
}

@media (max-width: 768px) {
    .category-cards[b-ia4ql9x0x5] {
        gap: 0.5rem;
    }
    
    .category-card[b-ia4ql9x0x5] {
        padding: 0.65rem 1rem;
    }
    
    .category-icon[b-ia4ql9x0x5] {
        width: 28px;
        height: 28px;
        min-width: 28px;
    }
    
    .category-icon i[b-ia4ql9x0x5] {
        font-size: 1rem;
    }
    
    .category-name[b-ia4ql9x0x5] {
        font-size: 0.85rem;
    }
    
    .category-count[b-ia4ql9x0x5] {
        font-size: 0.7rem;
    }
    
    .data-management-section .data-toolbar[b-ia4ql9x0x5] {
        flex-direction: column;
        align-items: stretch;
    }
    
    .data-management-section .search-container[b-ia4ql9x0x5] {
        max-width: 100%;
    }
    
    .data-management-section .btn-add-item[b-ia4ql9x0x5] {
        width: 100%;
        justify-content: center;
    }
    
    .data-table[b-ia4ql9x0x5] {
        font-size: 0.85rem;
    }
    
    .data-table th[b-ia4ql9x0x5],
    .data-table td[b-ia4ql9x0x5] {
        padding: 0.65rem 0.75rem;
    }
    
    .save-section[b-ia4ql9x0x5] {
        flex-direction: column;
    }
    
    .btn-save-changes[b-ia4ql9x0x5],
    .btn-discard-changes[b-ia4ql9x0x5] {
        width: 100%;
        justify-content: center;
    }
    
    .states-management-section .states-toolbar[b-ia4ql9x0x5] {
        flex-direction: column;
        gap: 1rem;
    }
    
    .states-management-section .states-search[b-ia4ql9x0x5] {
        max-width: 100%;
    }
    
    .states-management-section .states-summary[b-ia4ql9x0x5] {
        width: 100%;
        justify-content: center;
    }
    
    .state-stats-section[b-ia4ql9x0x5] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.75rem;
        width: 100%;
    }
    
    .state-status-wrapper[b-ia4ql9x0x5] {
        width: 100%;
        flex-direction: column;
        align-items: flex-start;
        gap: 0.625rem;
    }
    
    .state-status-counts[b-ia4ql9x0x5] {
        width: 100%;
    }
    
    .state-status-badge[b-ia4ql9x0x5] {
        align-self: stretch;
        justify-content: center;
    }
    
    .state-accordion-button[b-ia4ql9x0x5]::after {
        right: 1rem;
    }
    
    .states-management-section .state-data-table[b-ia4ql9x0x5] {
        font-size: 0.85rem;
    }
    
    .states-management-section .state-table-header th[b-ia4ql9x0x5],
    .states-management-section .state-data-row td[b-ia4ql9x0x5] {
        padding: 0.75rem 0.5rem;
    }
}

@media (max-width: 576px) {
    .category-cards[b-ia4ql9x0x5] {
        flex-direction: column;
        gap: 0.5rem;
    }
    
    .category-card[b-ia4ql9x0x5] {
        padding: 0.6rem 1rem;
    }
    
    .section-header[b-ia4ql9x0x5] {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    
    .btn-add-category[b-ia4ql9x0x5] {
        width: 100%;
        justify-content: center;
    }
    
    .badge-states-active[b-ia4ql9x0x5],
    .badge-states-total[b-ia4ql9x0x5] {
        font-size: 0.8rem;
        padding: 0.5rem 0.75rem;
    }
    
    .state-name[b-ia4ql9x0x5] {
        font-size: 1rem;
    }
    
    .state-accordion-button[b-ia4ql9x0x5] {
        padding: 1rem;
    }
    
    .states-management-section .state-table-wrapper[b-ia4ql9x0x5] {
        padding: 1rem;
    }
    
    .state-pagination-wrapper[b-ia4ql9x0x5] {
        padding: 1rem;
    }
    
    .page-link-states[b-ia4ql9x0x5] {
        padding: 0.5rem 0.75rem;
        font-size: 0.85rem;
    }
}

/* /Components/Pages/Admin/TestDataPurgeConfirmDialog.razor.rz.scp.css */
.modal-backdrop-custom[b-q58w1zzqcl] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    z-index: 1050;
}

.modal-shell[b-q58w1zzqcl] {
    position: fixed;
    inset: 0;
    display: grid;
    place-items: center;
    z-index: 1060;
    pointer-events: none;
}

.modal-card[b-q58w1zzqcl] {
    background: white;
    border-radius: 16px;
    border: none;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    width: min(560px, calc(100vw - 2rem));
    pointer-events: auto;
    overflow: hidden;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
}

.modal-header-custom[b-q58w1zzqcl] {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 1px solid #EEF2F6;
    background: #fff;
    color: #0F172A;
    font-size: 1.05rem;
}

.modal-body-custom[b-q58w1zzqcl] {
    padding: 1.15rem 1.5rem;
    overflow-y: auto;
}

.modal-footer-custom[b-q58w1zzqcl] {
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    background: #FAFBFC;
}

.btn-action[b-q58w1zzqcl] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.55rem 1.15rem;
    background: transparent;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    color: #64748B;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
}

.btn-action:hover:not(:disabled):not(.btn-action-danger)[b-q58w1zzqcl] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-action:disabled[b-q58w1zzqcl] { opacity: 0.5; cursor: not-allowed; }

.btn-action-danger[b-q58w1zzqcl] {
    background: var(--error-600, #DC2626);
    border-color: var(--error-600, #DC2626);
    color: white;
}

.btn-action-danger:hover:not(:disabled)[b-q58w1zzqcl] {
    background: #b91c1c;
    border-color: #b91c1c;
}
/* /Components/Pages/Admin/TestDataPurgePage.razor.rz.scp.css */
/* ========================================
   Test Data Purge — admin remediation page
   Styled to match the API Playground / admin tooling visual language.
   ======================================== */

.purge-page[b-6af1ohmtt0] {
    padding: 20px 24px;
    max-width: 1500px;
    margin: 0 auto;
    color: #111827;
}

/* ── Toolbar header ─────────────────────────────────────────────── */

.page-toolbar[b-6af1ohmtt0] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 12px 16px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    margin-bottom: 20px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
    flex-wrap: wrap;
}

.toolbar-left[b-6af1ohmtt0] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.app-icon[b-6af1ohmtt0] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: linear-gradient(135deg, #dc2626, #b91c1c);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    box-shadow: 0 4px 10px rgba(220, 38, 38, 0.25);
}

.toolbar-title[b-6af1ohmtt0] {
    font-size: 17px;
    font-weight: 700;
    letter-spacing: -0.3px;
    line-height: 1.2;
}

.toolbar-subtitle[b-6af1ohmtt0] {
    font-size: 12.5px;
    color: #6b7280;
    line-height: 1.3;
    margin-top: 2px;
    max-width: 720px;
}

.toolbar-subtitle code[b-6af1ohmtt0] {
    background: #f3f4f6;
    padding: 1px 5px;
    border-radius: 3px;
    font-size: 11.5px;
    color: #111827;
}

.toolbar-right[b-6af1ohmtt0] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

/* ── Hero (state-driven) ──────────────────────────────────────────── */

.hero[b-6af1ohmtt0] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.25rem 1.5rem;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    margin-bottom: 16px;
}

.hero-warn[b-6af1ohmtt0] {
    background: linear-gradient(135deg, #fffbeb, #fef3c7);
    border-color: #fcd34d;
}

.hero-warn .hero-icon[b-6af1ohmtt0] {
    background: #fef3c7;
    color: #d97706;
}

.hero-danger[b-6af1ohmtt0] {
    background: linear-gradient(135deg, #fef2f2, #fee2e2);
    border-color: #fecaca;
}

.hero-danger .hero-icon[b-6af1ohmtt0] {
    background: #fee2e2;
    color: #dc2626;
}

.hero-icon[b-6af1ohmtt0] {
    width: 3rem;
    height: 3rem;
    border-radius: 12px;
    display: grid;
    place-items: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.hero-body[b-6af1ohmtt0] { flex: 1; min-width: 0; }

.hero-headline[b-6af1ohmtt0] {
    font-size: 1.05rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 0.25rem;
}

.hero-subline[b-6af1ohmtt0] {
    color: #475569;
    font-size: 0.875rem;
    line-height: 1.45;
}

/* ── Card sections ────────────────────────────────────────────────── */

.card-section[b-6af1ohmtt0] {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 1.25rem 1.5rem;
    margin-bottom: 16px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}

.card-section h2[b-6af1ohmtt0] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #2c5aa0;
    font-weight: 700;
    margin: 0 0 0.85rem 0;
}

.card-section h2 .small[b-6af1ohmtt0],
.card-section h2 .muted[b-6af1ohmtt0] {
    font-weight: 500;
    color: #94a3b8;
    margin-left: 0.4rem;
    text-transform: none;
    letter-spacing: 0;
    font-size: 0.7rem;
}

.card-section table[b-6af1ohmtt0] { margin-bottom: 0; }

.card-section thead th[b-6af1ohmtt0] {
    background: #f8fafc;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #475569;
    font-weight: 600;
}

.card-section tbody td[b-6af1ohmtt0] {
    vertical-align: middle;
    font-size: 0.875rem;
}

.mono[b-6af1ohmtt0] { font-variant-numeric: tabular-nums; }
.muted[b-6af1ohmtt0] { color: #6b7280; }

.link-muted[b-6af1ohmtt0] {
    color: #475569;
    text-decoration: none;
    font-weight: 500;
}
.link-muted:hover[b-6af1ohmtt0] { color: #2c5aa0; text-decoration: underline; }

/* ── Buttons ──────────────────────────────────────────────────────── */

.btn-action[b-6af1ohmtt0] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.4rem 0.85rem;
    background: white;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    color: #374151;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: border-color 120ms, color 120ms, background-color 120ms;
}

.btn-action:hover:not(:disabled)[b-6af1ohmtt0] {
    border-color: #2c5aa0;
    color: #2c5aa0;
}

.btn-action:disabled[b-6af1ohmtt0] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-action-primary[b-6af1ohmtt0] {
    background: #2c5aa0;
    border-color: #2c5aa0;
    color: white;
}

.btn-action-primary:hover:not(:disabled)[b-6af1ohmtt0] {
    background: #244b87;
    border-color: #244b87;
    color: white;
}

.btn-action-danger[b-6af1ohmtt0] {
    background: #dc2626;
    border-color: #dc2626;
    color: white;
}

.btn-action-danger:hover:not(:disabled)[b-6af1ohmtt0] {
    background: #b91c1c;
    border-color: #b91c1c;
    color: white;
}

.btn-action i[b-6af1ohmtt0] { font-size: 0.95rem; }

/* ── Filters ─────────────────────────────────────────────────────── */

.filters-grid[b-6af1ohmtt0] {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 0.85rem 1rem;
}

.filter-field--sm[b-6af1ohmtt0] { grid-column: span 2; }
.filter-field--md[b-6af1ohmtt0] { grid-column: span 3; }
.filter-field--lg[b-6af1ohmtt0] { grid-column: span 3; }

.filter-field[b-6af1ohmtt0] { min-width: 0; }
.filter-field > .form-control[b-6af1ohmtt0],
.filter-field > .form-select[b-6af1ohmtt0] {
    width: 100%;
    box-sizing: border-box;
    min-height: 31px;
    height: 31px;
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
    line-height: 1.5;
    font-size: 0.875rem;
}

@media (max-width: 1100px) {
    .filter-field--sm[b-6af1ohmtt0] { grid-column: span 4; }
    .filter-field--md[b-6af1ohmtt0] { grid-column: span 6; }
    .filter-field--lg[b-6af1ohmtt0] { grid-column: span 12; }
}

@media (max-width: 640px) {
    .filter-field--sm[b-6af1ohmtt0],
    .filter-field--md[b-6af1ohmtt0],
    .filter-field--lg[b-6af1ohmtt0] { grid-column: span 12; }
}

.form-label.small[b-6af1ohmtt0] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #475569;
    font-weight: 600;
    margin-bottom: 0.3rem;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.filter-actions[b-6af1ohmtt0] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    justify-content: space-between;
    margin-top: 1rem;
    padding-top: 0.85rem;
    border-top: 1px solid #f1f5f9;
    flex-wrap: wrap;
}

.filter-check[b-6af1ohmtt0] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin: 0;
    padding-left: 1.5rem;
}

.filter-check .form-check-label[b-6af1ohmtt0] {
    font-size: 0.825rem;
    color: #475569;
    user-select: none;
    cursor: pointer;
}

.filter-actions-right[b-6af1ohmtt0] {
    display: flex;
    gap: 0.5rem;
    margin-left: auto;
    align-items: center;
}

.filter-hint[b-6af1ohmtt0] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.78rem;
    color: #94a3b8;
    margin-right: 0.5rem;
}

.filter-hint i[b-6af1ohmtt0] { font-size: 0.85rem; }

.action-bar[b-6af1ohmtt0] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

.action-bar .spacer[b-6af1ohmtt0] { flex: 1; }

.truncation-banner[b-6af1ohmtt0],
.cap-banner[b-6af1ohmtt0] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.6rem 0.85rem;
    border-radius: 8px;
    font-size: 0.825rem;
    margin-bottom: 0.75rem;
}

.truncation-banner[b-6af1ohmtt0] {
    background: #fffbeb;
    border: 1px solid #fde68a;
    color: #92400e;
}

.cap-banner[b-6af1ohmtt0] {
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    color: #1e3a8a;
}

.truncation-banner i[b-6af1ohmtt0],
.cap-banner i[b-6af1ohmtt0] { font-size: 0.95rem; }

/* Active filter chips */
.filter-chips[b-6af1ohmtt0] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-bottom: 0.85rem;
    padding-bottom: 0.85rem;
    border-bottom: 1px dashed #e5e7eb;
}

.filter-chips-label[b-6af1ohmtt0] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #94a3b8;
    font-weight: 600;
    margin-right: 0.25rem;
}

.chip[b-6af1ohmtt0] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    padding: 0.18rem 0.4rem 0.18rem 0.6rem;
    font-size: 0.78rem;
    color: #1e40af;
    cursor: pointer;
    transition: background 120ms, border-color 120ms;
}

.chip:hover[b-6af1ohmtt0] {
    background: #dbeafe;
    border-color: #93c5fd;
}

.chip-key[b-6af1ohmtt0] {
    color: #64748b;
    font-weight: 600;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.chip-value[b-6af1ohmtt0] {
    color: #1e3a8a;
    font-weight: 500;
}

.chip i[b-6af1ohmtt0] {
    font-size: 0.85rem;
    color: #94a3b8;
    margin-left: 0.15rem;
}

.chip:hover i[b-6af1ohmtt0] { color: #1e40af; }

/* ── Result table ─────────────────────────────────────────────────── */

.results-wrap[b-6af1ohmtt0] {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    overflow: hidden;
}

.results-table[b-6af1ohmtt0] {
    margin: 0;
}

.results-table thead th[b-6af1ohmtt0] {
    border-top: 0;
    border-bottom: 1px solid #e5e7eb;
    padding: 0.6rem 0.75rem;
    background: #f8fafc;
}

.results-table tbody td[b-6af1ohmtt0] {
    padding: 0.55rem 0.75rem;
    border-top: 1px solid #f1f5f9;
}

.results-table tbody tr[b-6af1ohmtt0] {
    transition: background-color 120ms;
    cursor: pointer;
}

.results-table tbody tr.is-selected[b-6af1ohmtt0] {
    background: #fef2f2;
}

.results-table tbody tr:hover[b-6af1ohmtt0] {
    background: #f8fafc;
}

.results-table tbody tr.is-selected:hover[b-6af1ohmtt0] {
    background: #fee2e2;
}

.results-table tbody tr.is-selected td[b-6af1ohmtt0] {
    border-top-color: #fecaca;
}

/* Column sizing */
.col-check[b-6af1ohmtt0] { width: 36px; text-align: center; }
.col-app[b-6af1ohmtt0] { width: 200px; white-space: nowrap; }
.col-bank[b-6af1ohmtt0] { white-space: nowrap; }
.col-status[b-6af1ohmtt0] { width: 160px; }
.col-borrower[b-6af1ohmtt0] { color: #1f2937; }
.col-date[b-6af1ohmtt0] { width: 110px; color: #6b7280; font-variant-numeric: tabular-nums; font-size: 0.825rem; }
.col-num[b-6af1ohmtt0] { width: 60px; text-align: center; }

/* Application link */
.app-link[b-6af1ohmtt0] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    color: #2c5aa0;
    text-decoration: none;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}
.app-link:hover[b-6af1ohmtt0] { color: #1e3f73; text-decoration: underline; }
.app-link i[b-6af1ohmtt0] { font-size: 0.7rem; opacity: 0.6; }
.app-number[b-6af1ohmtt0] { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 0.825rem; }

.bank-name[b-6af1ohmtt0] { font-weight: 500; color: #374151; }
.bank-id[b-6af1ohmtt0] { color: #94a3b8; font-size: 0.75rem; margin-left: 0.35rem; font-variant-numeric: tabular-nums; }

.empty-cell[b-6af1ohmtt0] { color: #cbd5e1; }

/* API badge */
.api-badge[b-6af1ohmtt0] {
    display: inline-flex;
    align-items: center;
    background: #eef2ff;
    color: #4338ca;
    border: 1px solid #c7d2fe;
    border-radius: 4px;
    font-size: 0.6rem;
    font-weight: 700;
    padding: 0.1rem 0.35rem;
    margin-left: 0.5rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    line-height: 1.2;
}

/* Count pills */
.count-pill[b-6af1ohmtt0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 22px;
    padding: 0 0.45rem;
    border-radius: 11px;
    background: #eef2ff;
    color: #4338ca;
    font-size: 0.75rem;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}
.count-pill.is-zero[b-6af1ohmtt0] {
    background: transparent;
    color: #cbd5e1;
}

/* Status pills — match repo-wide status-{name} convention */
.status-pill[b-6af1ohmtt0] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.18rem 0.55rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 600;
    border: 1px solid transparent;
    line-height: 1.3;
    white-space: nowrap;
}
.status-pill i[b-6af1ohmtt0] { font-size: 0.7rem; }

.status-pill.status-draft[b-6af1ohmtt0]         { background: #f1f5f9; color: #475569; border-color: #e2e8f0; }
.status-pill.status-submitted[b-6af1ohmtt0]     { background: #eff6ff; color: #1d4ed8; border-color: #bfdbfe; }
.status-pill.status-in-review[b-6af1ohmtt0]     { background: #ecfeff; color: #0e7490; border-color: #a5f3fc; }
.status-pill.status-awaiting-info[b-6af1ohmtt0] { background: #fffbeb; color: #b45309; border-color: #fde68a; }
.status-pill.status-approved[b-6af1ohmtt0]      { background: #ecfdf5; color: #047857; border-color: #a7f3d0; }
.status-pill.status-declined[b-6af1ohmtt0]      { background: #fef2f2; color: #b91c1c; border-color: #fecaca; }
.status-pill.status-bound[b-6af1ohmtt0]         { background: #eef2ff; color: #4338ca; border-color: #c7d2fe; }
.status-pill.status-cancelled[b-6af1ohmtt0]     { background: #f3f4f6; color: #6b7280; border-color: #d1d5db; }
.status-pill.status-referral[b-6af1ohmtt0]      { background: #fff7ed; color: #c2410c; border-color: #fed7aa; }
.status-pill.status-referred[b-6af1ohmtt0]      { background: #fdf4ff; color: #a21caf; border-color: #f5d0fe; }
.status-pill.status-approved-for-binding[b-6af1ohmtt0] { background: #f0fdf4; color: #15803d; border-color: #bbf7d0; }
.status-pill.status-ordered[b-6af1ohmtt0]       { background: #ecfeff; color: #155e75; border-color: #a5f3fc; }
.status-pill.status-pending-payment[b-6af1ohmtt0] { background: #fef3c7; color: #92400e; border-color: #fcd34d; }
.status-pill.status-archived[b-6af1ohmtt0]      { background: #f9fafb; color: #9ca3af; border-color: #e5e7eb; }
.status-pill.status-awaiting-borrower[b-6af1ohmtt0] { background: #f0fdfa; color: #115e59; border-color: #99f6e4; } /* feature 072 */
.status-pill.status-unknown[b-6af1ohmtt0]       { background: #f3f4f6; color: #6b7280; border-color: #d1d5db; }

/* ── How-it-works disclosure ─────────────────────────────────────── */

.info-section[b-6af1ohmtt0] {
    background: #f8fafc;
    border-color: #e2e8f0;
    box-shadow: none;
}

.info-toggle[b-6af1ohmtt0] {
    background: none;
    border: none;
    padding: 0;
    font-size: 0.875rem;
    color: #475569;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    font-weight: 600;
}

.info-toggle:hover[b-6af1ohmtt0] { color: #2c5aa0; }

.info-content[b-6af1ohmtt0] {
    margin-top: 0.85rem;
    color: #475569;
    font-size: 0.875rem;
}

.info-content ul[b-6af1ohmtt0] {
    margin: 0;
    padding-left: 1.25rem;
}

.info-content li[b-6af1ohmtt0] { margin-bottom: 0.5rem; line-height: 1.5; }

.info-content code[b-6af1ohmtt0] {
    background: #e5e7eb;
    color: #374151;
    padding: 0.05rem 0.3rem;
    border-radius: 3px;
    font-size: 0.82rem;
}

.info-content strong[b-6af1ohmtt0] { color: #111827; }

/* ── Post-run report ──────────────────────────────────────────────── */

.report-hero[b-6af1ohmtt0] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.25rem 1.5rem;
    border-radius: 12px;
    margin-bottom: 16px;
}

.report-hero-success[b-6af1ohmtt0] {
    background: linear-gradient(135deg, #f0fdf4, #ecfdf5);
    border: 1px solid #86efac;
}

.report-hero-success .report-icon[b-6af1ohmtt0] {
    background: #dcfce7;
    color: #16a34a;
}

.report-hero-warn[b-6af1ohmtt0] {
    background: linear-gradient(135deg, #fef2f2, #fee2e2);
    border: 1px solid #fecaca;
}

.report-hero-warn .report-icon[b-6af1ohmtt0] {
    background: #fee2e2;
    color: #dc2626;
}

.report-icon[b-6af1ohmtt0] {
    width: 3rem;
    height: 3rem;
    border-radius: 12px;
    display: grid;
    place-items: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.report-summary[b-6af1ohmtt0] { flex: 1; min-width: 0; }

.report-headline[b-6af1ohmtt0] {
    font-size: 1.05rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 0.2rem;
}

.report-subline[b-6af1ohmtt0] {
    color: #475569;
    font-size: 0.875rem;
    font-variant-numeric: tabular-nums;
}

.report-subline strong[b-6af1ohmtt0] {
    color: #111827;
    font-weight: 700;
}

.report-actions[b-6af1ohmtt0] {
    display: flex;
    gap: 0.5rem;
    flex-shrink: 0;
    flex-wrap: wrap;
}

.error-log[b-6af1ohmtt0] {
    background: #1f2937;
    color: #fca5a5;
    padding: 1rem;
    border-radius: 6px;
    font-size: 0.8rem;
    max-height: 320px;
    overflow-y: auto;
    margin: 0;
}

/* ── Responsive ──────────────────────────────────────────────────── */

@media (max-width: 768px) {
    .purge-page[b-6af1ohmtt0] { padding: 12px 16px; }
    .page-toolbar[b-6af1ohmtt0] { padding: 10px 12px; }
    .filter-actions[b-6af1ohmtt0] { justify-content: stretch; flex-direction: column; }
    .filter-actions .btn-action[b-6af1ohmtt0] { justify-content: center; }
}
/* /Components/Pages/Admin/ThemeManagementPage.razor.rz.scp.css */
.theme-mgmt-page[b-e5dbkjnpgb] {
    padding: 0;
}

/* Header */
.theme-mgmt-header[b-e5dbkjnpgb] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
    flex-wrap: wrap;
    gap: 16px;
}

.theme-mgmt-title[b-e5dbkjnpgb] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
}

.theme-mgmt-subtitle[b-e5dbkjnpgb] {
    font-size: 13px;
    color: #64748B;
    margin: 4px 0 0;
    max-width: 640px;
}

.theme-mgmt-stat-row[b-e5dbkjnpgb] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 14px;
}

.stat-chip[b-e5dbkjnpgb] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-size: 13px;
}

.stat-chip i[b-e5dbkjnpgb] { color: var(--brand-500); font-size: 14px; }
.stat-chip-info i[b-e5dbkjnpgb] { color: #2563EB; }
.stat-chip-success i[b-e5dbkjnpgb] { color: #059669; }
.stat-chip-value[b-e5dbkjnpgb] { font-weight: 700; color: #1F2937; }
.stat-chip-label[b-e5dbkjnpgb] { color: #64748B; font-weight: 500; }

.btn-add-theme[b-e5dbkjnpgb] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 10px 20px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
    height: fit-content;
}

.btn-add-theme:hover[b-e5dbkjnpgb] { background: var(--brand-700, #003760); }

/* Sections */
.theme-mgmt-section[b-e5dbkjnpgb] {
    margin-bottom: 32px;
}

.theme-mgmt-section-header[b-e5dbkjnpgb] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
}

.theme-mgmt-section-header i[b-e5dbkjnpgb] { color: var(--brand-500); font-size: 16px; }
.theme-mgmt-section-header h2[b-e5dbkjnpgb] { font-size: 16px; font-weight: 700; color: #1F2937; margin: 0; }

.count-pill[b-e5dbkjnpgb] {
    background: #F1F5F9;
    color: #64748B;
    border-radius: 999px;
    padding: 2px 10px;
    font-size: 11.5px;
    font-weight: 600;
}

.theme-grid[b-e5dbkjnpgb] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 16px;
}

/* Loading & empty */
.theme-mgmt-loading[b-e5dbkjnpgb] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 60px 0;
    color: #64748B;
}

.theme-mgmt-empty[b-e5dbkjnpgb] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 48px 0;
    text-align: center;
    background: #F8FAFC;
    border: 1.5px dashed #E2E8F0;
    border-radius: 12px;
}

.theme-mgmt-empty i[b-e5dbkjnpgb] { font-size: 40px; color: #CBD5E1; }
.theme-mgmt-empty h3[b-e5dbkjnpgb] { font-size: 15px; color: #475569; margin: 0; }
.theme-mgmt-empty p[b-e5dbkjnpgb] { font-size: 13px; color: #94A3B8; margin: 0; max-width: 420px; }

/* Live preview mockup — duplicated from ThemeMgmtCard.razor.css because Blazor CSS isolation
   scopes styles per-component and the create/edit modal's preview lives on this page instead. */
.theme-card-preview[b-e5dbkjnpgb] {
    position: relative;
    height: 72px;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 7px;
    border-radius: 10px;
}

.mock-line[b-e5dbkjnpgb] { height: 7px; width: 75%; border-radius: 4px; }
.mock-line-active[b-e5dbkjnpgb] { width: 90%; }
.mock-dot[b-e5dbkjnpgb] {
    position: absolute;
    top: 10px;
    right: 12px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.25);
}

.theme-modal-preview[b-e5dbkjnpgb] { margin-top: 4px; }

.theme-live-preview-hint[b-e5dbkjnpgb] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: var(--brand-500, #005b9f);
    margin: -6px 0 0;
}

/* Create/Edit modal */
.modal-overlay[b-e5dbkjnpgb] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1.5rem;
}

.theme-modal[b-e5dbkjnpgb] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    width: 100%;
    max-width: 460px;
    max-height: 90vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    animation: theme-modal-pop-in-b-e5dbkjnpgb 0.2s ease;
}

@keyframes theme-modal-pop-in-b-e5dbkjnpgb {
    from { opacity: 0; transform: scale(0.96); }
    to { opacity: 1; transform: scale(1); }
}

.theme-modal-header[b-e5dbkjnpgb] {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    background: #fff;
    border-bottom: 1px solid #EEF2F6;
}

.theme-modal-header h3[b-e5dbkjnpgb] { flex: 1; margin: 0; font-size: 1.05rem; font-weight: 700; color: #0F172A; }

.modal-close[b-e5dbkjnpgb] {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    border-radius: 8px;
    font-size: 1.5rem;
    line-height: 1;
    cursor: pointer;
    color: #94A3B8;
    transition: all 0.15s;
}

.modal-close:hover[b-e5dbkjnpgb] { background: #F1F5F9; color: #0F172A; }

.theme-modal-body[b-e5dbkjnpgb] {
    padding: 1.15rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 16px;
    overflow-y: auto;
}

.theme-modal-footer[b-e5dbkjnpgb] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

.theme-custom-field[b-e5dbkjnpgb] { display: flex; flex-direction: column; gap: 5px; }
.theme-custom-field label[b-e5dbkjnpgb] { font-size: 12px; font-weight: 600; color: #64748B; }
.theme-custom-field input[type="text"][b-e5dbkjnpgb] {
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    padding: 8px 12px;
    font-size: 13px;
}

.theme-custom-field input[type="text"]:focus[b-e5dbkjnpgb] {
    outline: none;
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px rgba(0, 91, 159, 0.1);
}

.theme-custom-field input[type="color"][b-e5dbkjnpgb] {
    width: 44px;
    height: 32px;
    border: 1.5px solid #E2E8F0;
    border-radius: 8px;
    padding: 2px;
    cursor: pointer;
}

.theme-custom-colors[b-e5dbkjnpgb] { display: grid; grid-template-columns: repeat(4, auto); gap: 14px; }
.theme-custom-error[b-e5dbkjnpgb] { color: #DC2626; font-size: 13px; background: #FEF2F2; border-radius: 8px; padding: 8px 12px; }

/* Delete confirmation uses the global swal-style confirm-modal classes (modal-theme.css). */
.theme-mgmt-affected-list[b-e5dbkjnpgb] {
    text-align: left;
    font-size: 13px;
    color: #475569;
    background: #F8FAFC;
    border-radius: 8px;
    padding: 12px 12px 12px 28px;
    margin: 0 0 20px;
}

/* btn-confirm-* below are still used by the create/edit modal footer. */
.btn-confirm-cancel[b-e5dbkjnpgb] {
    padding: 0.55rem 1.15rem;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-confirm-cancel:hover[b-e5dbkjnpgb] { background: #F1F5F9; color: #0F172A; }

.btn-confirm-action[b-e5dbkjnpgb] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0.55rem 1.15rem;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    color: white;
    cursor: pointer;
    transition: all 0.15s;
    background: var(--brand-600, #004980);
}

.btn-confirm-action:hover[b-e5dbkjnpgb] { background: var(--brand-700, #003760); }
.btn-confirm-action:disabled[b-e5dbkjnpgb],
.btn-confirm-cancel:disabled[b-e5dbkjnpgb] { opacity: 0.6; cursor: not-allowed; }

.btn-confirm-danger[b-e5dbkjnpgb] { background: var(--error-600, #DC2626); }
.btn-confirm-danger:hover[b-e5dbkjnpgb] { background: var(--error-700, #B91C1C); }

/* Responsive */
@media (max-width: 768px) {
    .theme-mgmt-header[b-e5dbkjnpgb] { flex-direction: column; align-items: stretch; }
    .theme-grid[b-e5dbkjnpgb] { grid-template-columns: 1fr; }
}
/* /Components/Pages/Admin/ThemeMgmtCard.razor.rz.scp.css */
.theme-card[b-ddjl8jw9td] {
    background: white;
    border: 1.5px solid #E2E8F0;
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all 0.2s;
}

.theme-card:hover[b-ddjl8jw9td] {
    border-color: var(--brand-400);
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.08);
    transform: translateY(-2px);
}

/* Mini sidebar preview mockup */
.theme-card-preview[b-ddjl8jw9td] {
    position: relative;
    height: 72px;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 7px;
}

.mock-line[b-ddjl8jw9td] {
    height: 7px;
    width: 75%;
    border-radius: 4px;
}

.mock-line-active[b-ddjl8jw9td] {
    width: 90%;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.15);
}

.mock-dot[b-ddjl8jw9td] {
    position: absolute;
    top: 10px;
    right: 12px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.25);
}

.theme-card-body[b-ddjl8jw9td] {
    padding: 14px;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.theme-card-title-row[b-ddjl8jw9td] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.theme-card-title-row h3[b-ddjl8jw9td] {
    font-size: 15px;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.theme-status[b-ddjl8jw9td] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 9px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
}

.theme-status-active[b-ddjl8jw9td] { background: #ECFDF5; color: #059669; }
.theme-status-retired[b-ddjl8jw9td] { background: #F1F5F9; color: #64748B; }

.theme-card-owner[b-ddjl8jw9td] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12.5px;
    color: #64748B;
    background: #F8FAFC;
    border-radius: 8px;
    padding: 6px 10px;
    width: fit-content;
}

.theme-card-owner i[b-ddjl8jw9td] { color: #94A3B8; }

.theme-card-stats[b-ddjl8jw9td] {
    display: flex;
    gap: 16px;
    padding: 8px 12px;
    background: #F8FAFC;
    border-radius: 8px;
}

.org-stat[b-ddjl8jw9td] {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12.5px;
}

.org-stat i[b-ddjl8jw9td] { color: #94A3B8; font-size: 13px; }
.org-stat-value[b-ddjl8jw9td] { font-weight: 700; color: #1F2937; }
.org-stat-label[b-ddjl8jw9td] { color: #94A3B8; }

.theme-card-usage-names[b-ddjl8jw9td] {
    font-size: 11.5px;
    color: #94A3B8;
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.theme-card-actions[b-ddjl8jw9td] {
    display: flex;
    gap: 8px;
    padding: 10px 14px;
    border-top: 1px solid #F1F5F9;
}

.btn-card-action[b-ddjl8jw9td] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid #E2E8F0;
    border-radius: 7px;
    background: white;
    color: #64748B;
    cursor: pointer;
    font-size: 14px;
    transition: all 0.2s;
}

.btn-card-action:hover[b-ddjl8jw9td] { background: #F1F5F9; color: #1F2937; border-color: #CBD5E1; }
.btn-card-danger:hover[b-ddjl8jw9td] { background: #FEF2F2; color: #DC2626; border-color: #FECACA; }
/* /Components/Pages/Admin/UserDetailPage.razor.rz.scp.css */
/* ========================================
   User Detail Page Styles
   ======================================== */

/* ========================================
   Animations
   ======================================== */
@keyframes fadeIn-b-m8ea8sj4ud {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes fadeInUp-b-m8ea8sj4ud {
    from { 
        opacity: 0; 
        transform: translateY(15px); 
    }
    to { 
        opacity: 1; 
        transform: translateY(0); 
    }
}

@keyframes fadeInDown-b-m8ea8sj4ud {
    from { 
        opacity: 0; 
        transform: translateY(-10px); 
    }
    to { 
        opacity: 1; 
        transform: translateY(0); 
    }
}

@keyframes scaleIn-b-m8ea8sj4ud {
    from { 
        opacity: 0; 
        transform: scale(0.95); 
    }
    to { 
        opacity: 1; 
        transform: scale(1); 
    }
}

@keyframes slideInLeft-b-m8ea8sj4ud {
    from { 
        opacity: 0; 
        transform: translateX(-20px); 
    }
    to { 
        opacity: 1; 
        transform: translateX(0); 
    }
}

@keyframes pulse-b-m8ea8sj4ud {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}

/* Loading & Error States */
.loading-container[b-m8ea8sj4ud],
.error-container[b-m8ea8sj4ud] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 1rem;
    padding: 2rem;
    text-align: center;
    animation: fadeIn-b-m8ea8sj4ud 0.3s ease-out;
}

.loading-container p[b-m8ea8sj4ud] {
    color: #64748b;
    font-size: 0.9375rem;
    animation: pulse-b-m8ea8sj4ud 1.5s ease-in-out infinite;
}

.error-container .error-icon[b-m8ea8sj4ud] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: #fef2f2;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.5rem;
}

.error-container .error-icon i[b-m8ea8sj4ud] {
    font-size: 2.5rem;
    color: #ef4444;
}

.error-container h2[b-m8ea8sj4ud] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #0f172a;
    margin: 0;
}

.error-container p[b-m8ea8sj4ud] {
    color: #64748b;
    margin: 0 0 1.5rem 0;
}

/* Skeleton loading state */
@keyframes admin-user-skel-pulse-b-m8ea8sj4ud {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.skel-block[b-m8ea8sj4ud] {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: admin-user-skel-pulse-b-m8ea8sj4ud 1.5s ease-in-out infinite;
    border-radius: 4px;
}

.user-skeleton[b-m8ea8sj4ud] {
    padding: 1rem;
}

.skel-user-header[b-m8ea8sj4ud] {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    border: 1px solid rgba(15, 23, 42, 0.1);
}

.skel-back-row[b-m8ea8sj4ud] {
    margin-bottom: 1.25rem;
}

.skel-header-content[b-m8ea8sj4ud] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.skel-header-left[b-m8ea8sj4ud] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}

.skel-avatar[b-m8ea8sj4ud] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    flex-shrink: 0;
}

.skel-title-section[b-m8ea8sj4ud] {
    flex: 1;
}

.skel-action-btn[b-m8ea8sj4ud] {
    width: 100px;
    height: 36px;
    border-radius: 8px;
}

.skel-stats-row[b-m8ea8sj4ud] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.skel-stat-card[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    border: 1px solid #e9ecef;
    border-radius: 8px;
}

.skel-stat-icon[b-m8ea8sj4ud] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    flex-shrink: 0;
}

.skel-stat-content[b-m8ea8sj4ud] {
    display: flex;
    flex-direction: column;
}

.skel-tabs-row[b-m8ea8sj4ud] {
    display: flex;
    gap: 0.5rem;
    border-bottom: 1px solid #e9ecef;
    padding-bottom: 0.75rem;
    margin-bottom: 1.5rem;
}

.skel-overview-grid[b-m8ea8sj4ud] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}

.skel-detail-card[b-m8ea8sj4ud] {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 1.5rem;
    border: 1px solid rgba(15, 23, 42, 0.1);
}

@media (max-width: 767.98px) {
    .skel-stats-row[b-m8ea8sj4ud] {
        grid-template-columns: 1fr;
    }

    .skel-overview-grid[b-m8ea8sj4ud] {
        grid-template-columns: 1fr;
    }

    .skel-header-content[b-m8ea8sj4ud] {
        flex-direction: column;
    }
}

/* Header */
.user-detail-header[b-m8ea8sj4ud] {
    background: white;
    border-radius: 12px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    border: 1px solid rgba(15, 23, 42, 0.1);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    animation: fadeInDown-b-m8ea8sj4ud 0.4s ease-out;
}

.header-nav[b-m8ea8sj4ud] {
    margin-bottom: 1rem;
}

.back-link[b-m8ea8sj4ud] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: #64748b;
    text-decoration: none;
    transition: all 0.2s ease;
}

.back-link:hover[b-m8ea8sj4ud] {
    color: var(--brand-500);
    transform: translateX(-3px);
}

.back-link i[b-m8ea8sj4ud] {
    font-size: 1rem;
}

.header-content[b-m8ea8sj4ud] {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 1.5rem;
}

.header-left[b-m8ea8sj4ud] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 1rem;
    flex: 1;
    min-width: 0;
}

.user-avatar-lg[b-m8ea8sj4ud] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, #10B981, #059669);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
    animation: scaleIn-b-m8ea8sj4ud 0.4s ease-out;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.user-avatar-lg:hover[b-m8ea8sj4ud] {
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
}

.user-avatar-lg img[b-m8ea8sj4ud] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.user-avatar-lg span[b-m8ea8sj4ud] {
    font-size: 1.125rem;
    font-weight: 600;
    color: white;
}

.user-title-section[b-m8ea8sj4ud] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
    min-width: 0;
    flex: 1;
}

.user-name-row[b-m8ea8sj4ud] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.user-name-row h1[b-m8ea8sj4ud] {
    font-size: 1.25rem;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
    white-space: nowrap;
}

.user-meta[b-m8ea8sj4ud] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.meta-item[b-m8ea8sj4ud] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: #64748b;
}

.meta-item i[b-m8ea8sj4ud] {
    font-size: 0.8125rem;
    color: #94a3b8;
}

/* Header Actions */
.header-actions[b-m8ea8sj4ud] {
    display: flex;
    gap: 0.75rem;
    flex-shrink: 0;
}

.btn-secondary[b-m8ea8sj4ud] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    color: #374151;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-secondary:hover:not(:disabled)[b-m8ea8sj4ud] {
    background: #F9FAFB;
    border-color: #D1D5DB;
}

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

.btn-primary[b-m8ea8sj4ud] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: var(--brand-500);
    border: 1px solid var(--brand-500);
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    color: white;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-primary:hover[b-m8ea8sj4ud] {
    background: #004a82;
    border-color: #004a82;
}

/* Custom Actions Menu */
.actions-menu-container[b-m8ea8sj4ud] {
    position: relative;
}

.actions-menu-backdrop[b-m8ea8sj4ud] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
}

.actions-menu[b-m8ea8sj4ud] {
    position: absolute;
    top: calc(100% + 4px);
    right: 0;
    min-width: 260px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12), 0 4px 12px rgba(0, 0, 0, 0.08);
    z-index: 1000;
    padding: 0.5rem 0;
    animation: menuSlideIn-b-m8ea8sj4ud 0.15s ease-out;
}

@keyframes menuSlideIn-b-m8ea8sj4ud {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.actions-menu-item[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    width: 100%;
    padding: 0.625rem 1rem;
    background: transparent;
    border: none;
    font-size: 0.875rem;
    font-weight: 500;
    color: #374151;
    cursor: pointer;
    transition: all 0.15s ease;
    text-align: left;
    white-space: nowrap;
}

.actions-menu-item:hover:not(:disabled)[b-m8ea8sj4ud] {
    background: rgba(15, 23, 42, 0.05);
    color: var(--brand-500);
}

.actions-menu-item:hover:not(:disabled) i[b-m8ea8sj4ud] {
    color: var(--brand-500);
}

.actions-menu-item:disabled[b-m8ea8sj4ud] {
    opacity: 0.5;
    cursor: not-allowed;
}

.actions-menu-item i[b-m8ea8sj4ud] {
    font-size: 1rem;
    color: #6b7280;
    width: 1.25rem;
    text-align: center;
}

.actions-menu-item.text-danger[b-m8ea8sj4ud] {
    color: var(--error-600);
}

.actions-menu-item.text-danger:hover:not(:disabled)[b-m8ea8sj4ud] {
    background: rgba(220, 38, 38, 0.06);
    color: var(--error-600);
}

.actions-menu-item.text-danger i[b-m8ea8sj4ud],
.actions-menu-item.text-danger:hover:not(:disabled) i[b-m8ea8sj4ud] {
    color: var(--error-600);
}

.actions-menu-item.text-success[b-m8ea8sj4ud] {
    color: var(--success-600);
}

.actions-menu-item.text-success:hover:not(:disabled)[b-m8ea8sj4ud] {
    background: rgba(22, 163, 74, 0.06);
    color: var(--success-600);
}

.actions-menu-item.text-success i[b-m8ea8sj4ud],
.actions-menu-item.text-success:hover:not(:disabled) i[b-m8ea8sj4ud] {
    color: var(--success-600);
}

.actions-menu-item.text-warning[b-m8ea8sj4ud] {
    color: #d97706;
}

.actions-menu-item.text-warning:hover:not(:disabled)[b-m8ea8sj4ud] {
    background: rgba(217, 119, 6, 0.06);
    color: #d97706;
}

.actions-menu-item.text-warning i[b-m8ea8sj4ud],
.actions-menu-item.text-warning:hover:not(:disabled) i[b-m8ea8sj4ud] {
    color: #d97706;
}

.actions-menu-divider[b-m8ea8sj4ud] {
    height: 1px;
    background: #e5e7eb;
    margin: 0.375rem 0;
}

/* Legacy Actions Dropdown (keeping for compatibility) */
.actions-dropdown[b-m8ea8sj4ud] {
    min-width: 220px;
    padding: 0.5rem 0;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1), 0 4px 10px rgba(0, 0, 0, 0.05);
    background: white;
    animation: dropdownFadeIn-b-m8ea8sj4ud 0.15s ease-out;
}

@keyframes dropdownFadeIn-b-m8ea8sj4ud {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.actions-dropdown .dropdown-item[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    padding: 0.625rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: #374151;
    border: none;
    background: transparent;
    width: 100%;
    text-align: left;
    cursor: pointer;
    transition: all 0.15s ease;
}

.actions-dropdown .dropdown-item:hover:not(:disabled)[b-m8ea8sj4ud] {
    background: rgba(15, 23, 42, 0.05);
    color: var(--brand-500);
}

.actions-dropdown .dropdown-item:hover:not(:disabled) i[b-m8ea8sj4ud] {
    color: var(--brand-500);
}

.actions-dropdown .dropdown-item i[b-m8ea8sj4ud] {
    font-size: 1rem;
    color: #6B7280;
    transition: color 0.15s ease;
}

.actions-dropdown .dropdown-item.text-danger[b-m8ea8sj4ud] {
    color: var(--error-600);
}

.actions-dropdown .dropdown-item.text-danger:hover:not(:disabled)[b-m8ea8sj4ud] {
    background: rgba(220, 38, 38, 0.06);
    color: var(--error-600);
}

.actions-dropdown .dropdown-item.text-danger i[b-m8ea8sj4ud],
.actions-dropdown .dropdown-item.text-danger:hover i[b-m8ea8sj4ud] {
    color: var(--error-600);
}

.actions-dropdown .dropdown-item.text-success[b-m8ea8sj4ud] {
    color: var(--success-600);
}

.actions-dropdown .dropdown-item.text-success:hover:not(:disabled)[b-m8ea8sj4ud] {
    background: rgba(22, 163, 74, 0.06);
    color: var(--success-600);
}

.actions-dropdown .dropdown-item.text-success i[b-m8ea8sj4ud],
.actions-dropdown .dropdown-item.text-success:hover i[b-m8ea8sj4ud] {
    color: var(--success-600);
}

.actions-dropdown .dropdown-item.text-warning[b-m8ea8sj4ud] {
    color: #d97706;
}

.actions-dropdown .dropdown-item.text-warning:hover:not(:disabled)[b-m8ea8sj4ud] {
    background: rgba(217, 119, 6, 0.06);
    color: #d97706;
}

.actions-dropdown .dropdown-item.text-warning i[b-m8ea8sj4ud],
.actions-dropdown .dropdown-item.text-warning:hover i[b-m8ea8sj4ud] {
    color: #d97706;
}

.actions-dropdown .dropdown-item:disabled[b-m8ea8sj4ud] {
    opacity: 0.5;
    cursor: not-allowed;
}

.actions-dropdown .dropdown-divider[b-m8ea8sj4ud] {
    margin: 0.5rem 0;
    border-top: 1px solid #E5E7EB;
}

/* Role Selector */
.role-selector[b-m8ea8sj4ud] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.role-option[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.role-option:hover[b-m8ea8sj4ud] {
    background: #F3F4F6;
    border-color: #D1D5DB;
}

.role-option.selected[b-m8ea8sj4ud] {
    background: rgba(15, 23, 42, 0.05);
    border-color: var(--brand-500);
}

.role-option .role-icon[b-m8ea8sj4ud] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: rgba(15, 23, 42, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.role-option .role-icon i[b-m8ea8sj4ud] {
    font-size: 1rem;
    color: var(--brand-500);
}

.role-option .role-details[b-m8ea8sj4ud] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.role-option .role-name[b-m8ea8sj4ud] {
    font-size: 0.875rem;
    font-weight: 600;
    color: #1F2937;
}

.role-option .role-description[b-m8ea8sj4ud] {
    font-size: 0.75rem;
    color: #6B7280;
}

.role-option .role-check[b-m8ea8sj4ud] {
    width: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.current-role-display[b-m8ea8sj4ud] {
    padding: 0.5rem;
    background: #F9FAFB;
    border-radius: 6px;
}

/* Stats Row */
.stats-row[b-m8ea8sj4ud] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.stat-card[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 0.75rem 1rem;
    min-width: 140px;
}

.stat-card .stat-icon[b-m8ea8sj4ud] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: rgba(15, 23, 42, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
}

.stat-card .stat-icon i[b-m8ea8sj4ud] {
    font-size: 1.125rem;
    color: var(--brand-500);
}

.stat-card .stat-content[b-m8ea8sj4ud] {
    display: flex;
    flex-direction: column;
}

.stat-card .stat-value[b-m8ea8sj4ud] {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1F2937;
    line-height: 1.2;
}

.stat-card .stat-label[b-m8ea8sj4ud] {
    font-size: 0.75rem;
    color: #6B7280;
}

/* Tabs */
.user-tabs[b-m8ea8sj4ud] {
    display: flex;
    gap: 0;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    padding: 4px;
    margin-bottom: 1.5rem;
}

.user-tab[b-m8ea8sj4ud] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 500;
    color: #6B7280;
    cursor: pointer;
    transition: all 0.15s;
}

.user-tab:hover[b-m8ea8sj4ud] {
    color: #374151;
    background: #F9FAFB;
}

.user-tab.active[b-m8ea8sj4ud] {
    color: var(--brand-500);
    background: rgba(15, 23, 42, 0.08);
}

.tab-badge[b-m8ea8sj4ud] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    background: #E5E7EB;
    border-radius: 10px;
    font-size: 0.7rem;
    font-weight: 600;
    color: #6B7280;
}

.user-tab.active .tab-badge[b-m8ea8sj4ud] {
    background: var(--brand-500);
    color: white;
}

/* Content Area */
.user-content[b-m8ea8sj4ud] {
    margin-top: 1.5rem;
}

/* Overview Grid */
.overview-grid[b-m8ea8sj4ud] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}

/* Detail Card */
.detail-card[b-m8ea8sj4ud] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    overflow: hidden;
}

.detail-card.full-width[b-m8ea8sj4ud] {
    grid-column: 1 / -1;
}

.detail-card .card-header[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 1.25rem;
    background: #F9FAFB;
    border-bottom: 1px solid #E5E7EB;
}

.detail-card .card-header i[b-m8ea8sj4ud] {
    font-size: 1rem;
    color: var(--brand-500);
}

.detail-card .card-header h3[b-m8ea8sj4ud] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: #1F2937;
    margin: 0;
    flex: 1;
}

.detail-card .card-body[b-m8ea8sj4ud] {
    padding: 1.25rem;
}

.btn-edit[b-m8ea8sj4ud] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    color: #6B7280;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-edit:hover[b-m8ea8sj4ud] {
    background: white;
    border-color: var(--brand-500);
    color: var(--brand-500);
}

/* Detail Grid */
.detail-grid[b-m8ea8sj4ud] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.detail-item[b-m8ea8sj4ud] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.detail-item.full-width[b-m8ea8sj4ud] {
    grid-column: 1 / -1;
}

.detail-label[b-m8ea8sj4ud] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.detail-value[b-m8ea8sj4ud] {
    font-size: 0.9375rem;
    color: #1F2937;
}

.detail-value code[b-m8ea8sj4ud] {
    font-size: 0.8rem;
    padding: 2px 6px;
    background: #F3F4F6;
    border-radius: 4px;
    color: #6B7280;
}

.notes-text[b-m8ea8sj4ud] {
    margin: 0;
    white-space: pre-wrap;
    color: #374151;
}

/* Status Badges */
.status-badge[b-m8ea8sj4ud] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.status-badge i[b-m8ea8sj4ud] {
    font-size: 0.7rem;
}

.status-active[b-m8ea8sj4ud] {
    background: rgba(16, 185, 129, 0.1);
    color: #059669;
}

.status-inactive[b-m8ea8sj4ud] {
    background: rgba(107, 114, 128, 0.1);
    color: #6B7280;
}

/* Role Badges */
.role-badge[b-m8ea8sj4ud] {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.role-admin[b-m8ea8sj4ud] {
    background: rgba(139, 92, 246, 0.1);
    color: #7C3AED;
}

.role-banksuperuser[b-m8ea8sj4ud] {
    background: rgba(59, 130, 246, 0.1);
    color: #2563EB;
}

.role-bankuser[b-m8ea8sj4ud] {
    background: rgba(20, 184, 166, 0.1);
    color: #0D9488;
}

.role-agent[b-m8ea8sj4ud] {
    background: rgba(249, 115, 22, 0.1);
    color: #EA580C;
}

.role-underwriter[b-m8ea8sj4ud] {
    background: rgba(99, 102, 241, 0.1);
    color: #4F46E5;
}

.role-other[b-m8ea8sj4ud], .role-none[b-m8ea8sj4ud] {
    background: rgba(107, 114, 128, 0.1);
    color: #6B7280;
}

/* Security Content */
.security-content[b-m8ea8sj4ud] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.empty-sessions[b-m8ea8sj4ud],
.empty-activity[b-m8ea8sj4ud] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    text-align: center;
}

.empty-sessions i[b-m8ea8sj4ud],
.empty-activity i[b-m8ea8sj4ud] {
    font-size: 2.5rem;
    color: #D1D5DB;
    margin-bottom: 0.5rem;
}

.empty-sessions p[b-m8ea8sj4ud],
.empty-activity p[b-m8ea8sj4ud] {
    color: #6B7280;
    margin: 0;
}

.current-session-badge[b-m8ea8sj4ud] {
    display: inline-flex;
    align-items: center;
    margin-left: 0.5rem;
    padding: 2px 8px;
    background: rgba(16, 185, 129, 0.1);
    border-radius: 10px;
    font-size: 0.7rem;
    font-weight: 600;
    color: #059669;
}

/* Activity Timeline */
.activity-timeline[b-m8ea8sj4ud] {
    padding: 1rem 1.25rem;
}

.timeline-item[b-m8ea8sj4ud] {
    display: flex;
    gap: 1rem;
    padding: 1rem 0;
    border-bottom: 1px solid #F1F5F9;
}

.timeline-item:last-child[b-m8ea8sj4ud] {
    border-bottom: none;
}

.timeline-marker[b-m8ea8sj4ud] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.timeline-marker.activity-success[b-m8ea8sj4ud] {
    background: rgba(16, 185, 129, 0.1);
    color: #059669;
}

.timeline-marker.activity-warning[b-m8ea8sj4ud] {
    background: rgba(245, 158, 11, 0.1);
    color: #D97706;
}

.timeline-marker.activity-error[b-m8ea8sj4ud] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-600);
}

.timeline-marker.activity-info[b-m8ea8sj4ud] {
    background: rgba(59, 130, 246, 0.1);
    color: #2563EB;
}

.timeline-content[b-m8ea8sj4ud] {
    flex: 1;
    min-width: 0;
}

.timeline-header[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.25rem;
}

.timeline-time[b-m8ea8sj4ud] {
    font-size: 0.8rem;
    color: #6B7280;
}

.timeline-description[b-m8ea8sj4ud] {
    margin: 0;
    font-size: 0.9375rem;
    color: #374151;
}

/* Activity Badges */
.activity-badge[b-m8ea8sj4ud] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 50px;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.05em;
}

.activity-success[b-m8ea8sj4ud] {
    background: rgba(16, 185, 129, 0.1);
    color: #059669;
}

.activity-warning[b-m8ea8sj4ud] {
    background: rgba(245, 158, 11, 0.1);
    color: #D97706;
}

.activity-error[b-m8ea8sj4ud] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-600);
}

.activity-info[b-m8ea8sj4ud] {
    background: rgba(59, 130, 246, 0.1);
    color: #2563EB;
}

.activity-default[b-m8ea8sj4ud] {
    background: rgba(107, 114, 128, 0.1);
    color: #6B7280;
}

/* Activity Details */
.activity-details[b-m8ea8sj4ud] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.5rem;
    margin-top: 0.5rem;
    padding: 0.75rem;
    background: #F8FAFC;
    border-radius: 6px;
    border-left: 3px solid #E2E8F0;
}

.activity-details .detail-item[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: #4B5563;
}

.activity-details .detail-item i[b-m8ea8sj4ud] {
    font-size: 0.875rem;
}

.activity-details .detail-item code[b-m8ea8sj4ud] {
    font-size: 0.75rem;
    padding: 0.125rem 0.375rem;
    background: #E2E8F0;
    border-radius: 3px;
    color: #334155;
}

.activity-details .detail-item strong[b-m8ea8sj4ud] {
    font-weight: 600;
    color: #1F2937;
}

/* Timeline Error State */
.timeline-item.timeline-error[b-m8ea8sj4ud] {
    background: rgba(239, 68, 68, 0.03);
    border-left: 3px solid #EF4444;
    margin-left: -1.25rem;
    padding-left: 1.25rem;
}

.timeline-item.timeline-error .timeline-description[b-m8ea8sj4ud] {
    color: #991B1B;
}

/* ========================================
   Activity Log Filters
   ======================================== */
.activity-filters[b-m8ea8sj4ud] {
    padding: 0.75rem 1.25rem;
    border-bottom: 1px solid #F1F5F9;
    background: #F8FAFC;
}

.filter-row[b-m8ea8sj4ud] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 0.75rem;
}

.filter-field[b-m8ea8sj4ud] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
}

.filter-field.filter-action[b-m8ea8sj4ud] { flex: 1 1 200px; }
.filter-field.filter-date[b-m8ea8sj4ud] { flex: 1 1 160px; }
.filter-field.filter-custom-start[b-m8ea8sj4ud] { flex: 1 1 150px; }
.filter-field.filter-custom-end[b-m8ea8sj4ud] { flex: 1 1 150px; }
.filter-field.filter-actions[b-m8ea8sj4ud] { flex: 0 0 auto; }

.filter-label[b-m8ea8sj4ud] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #64748B;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

/* ========================================
   Compact Collapsible Log List
   ======================================== */
.activity-list[b-m8ea8sj4ud] {
    padding: 0.25rem 0;
}

.log-row[b-m8ea8sj4ud] {
    border-bottom: 1px solid #F1F5F9;
}

.log-row:last-child[b-m8ea8sj4ud] {
    border-bottom: none;
}

.log-row.log-row-error[b-m8ea8sj4ud] {
    background: rgba(239, 68, 68, 0.03);
}

.log-summary[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    cursor: default;
    transition: background 0.15s ease;
}

.log-summary-clickable[b-m8ea8sj4ud] {
    cursor: pointer;
}

.log-summary-clickable:hover[b-m8ea8sj4ud] {
    background: #F8FAFC;
}

.log-marker[b-m8ea8sj4ud] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 0.875rem;
}

.log-marker.activity-success[b-m8ea8sj4ud] {
    background: rgba(16, 185, 129, 0.1);
    color: #059669;
}

.log-marker.activity-warning[b-m8ea8sj4ud] {
    background: rgba(245, 158, 11, 0.1);
    color: #D97706;
}

.log-marker.activity-error[b-m8ea8sj4ud] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-600);
}

.log-marker.activity-info[b-m8ea8sj4ud] {
    background: rgba(59, 130, 246, 0.1);
    color: #2563EB;
}

.log-summary-main[b-m8ea8sj4ud] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.log-summary-top[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.log-action-name[b-m8ea8sj4ud] {
    font-size: 0.875rem;
    font-weight: 600;
    color: #1F2937;
}

.log-failed-tag[b-m8ea8sj4ud] {
    display: inline-flex;
    align-items: center;
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--error-600);
}

.log-summary-desc[b-m8ea8sj4ud] {
    font-size: 0.8125rem;
    color: #4B5563;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.log-summary-meta[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-shrink: 0;
    margin-left: auto;
}

.log-time[b-m8ea8sj4ud] {
    font-size: 0.75rem;
    color: #6B7280;
    white-space: nowrap;
}

.log-actor[b-m8ea8sj4ud] {
    font-size: 0.75rem;
    color: #6B7280;
    max-width: 180px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.log-expand-cue[b-m8ea8sj4ud] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 4px;
    color: #94A3B8;
    flex-shrink: 0;
}

.log-summary-clickable:hover .log-expand-cue[b-m8ea8sj4ud] {
    color: var(--brand-500);
}

/* Expanded detail panel */
.log-details[b-m8ea8sj4ud] {
    padding: 0 1.25rem 0.75rem 3.5rem;
    animation: fadeIn-b-m8ea8sj4ud 0.2s ease-out;
}

.log-details .activity-details[b-m8ea8sj4ud] {
    margin-top: 0;
}

/* Responsive */
@media (max-width: 768px) {
    .filter-row[b-m8ea8sj4ud] {
        flex-direction: column;
        align-items: stretch;
    }

    .filter-field.filter-action[b-m8ea8sj4ud],
    .filter-field.filter-date[b-m8ea8sj4ud],
    .filter-field.filter-custom-start[b-m8ea8sj4ud],
    .filter-field.filter-custom-end[b-m8ea8sj4ud] {
        flex: 1 1 100%;
    }

    .log-summary[b-m8ea8sj4ud] {
        flex-wrap: wrap;
        padding: 0.625rem 0.875rem;
    }

    .log-summary-meta[b-m8ea8sj4ud] {
        width: 100%;
        margin-left: 2.75rem;
        justify-content: flex-start;
    }

    .log-details[b-m8ea8sj4ud] {
        padding: 0 0.875rem 0.75rem 2.75rem;
    }
}

/* Responsive */
@media (max-width: 992px) {
    .overview-grid[b-m8ea8sj4ud] {
        grid-template-columns: 1fr;
    }
    
    .header-actions[b-m8ea8sj4ud] {
        flex-shrink: 0;
    }
}

@media (max-width: 768px) {
    .header-content[b-m8ea8sj4ud] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .header-left[b-m8ea8sj4ud] {
        width: 100%;
    }
    
    .header-actions[b-m8ea8sj4ud] {
        width: 100%;
        justify-content: flex-start;
    }
    
    .user-name-row[b-m8ea8sj4ud] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .stats-row[b-m8ea8sj4ud] {
        flex-direction: column;
    }
    
    .stat-card[b-m8ea8sj4ud] {
        width: 100%;
    }
    
    .detail-grid[b-m8ea8sj4ud] {
        grid-template-columns: 1fr;
    }
    
    .user-tabs[b-m8ea8sj4ud] {
        flex-wrap: wrap;
    }
}

/* ========================================
   Modal footer buttons — ghost cancel +
   brand confirm per the canonical modal
   theme (wwwroot/css/modal-theme.css).
   ======================================== */

.modal-footer .btn-secondary[b-m8ea8sj4ud] {
    background: transparent;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    color: #64748B;
    font-weight: 600;
    padding: 0.55rem 1.15rem;
}

.modal-footer .btn-secondary:hover:not(:disabled)[b-m8ea8sj4ud] {
    background: #F1F5F9;
    border-color: #E2E8F0;
    color: #0F172A;
}

.modal-footer .btn-primary[b-m8ea8sj4ud] {
    background: var(--brand-600, #004980);
    border-color: var(--brand-600, #004980);
    border-radius: 10px;
    font-weight: 600;
    padding: 0.55rem 1.15rem;
}

.modal-footer .btn-primary:hover[b-m8ea8sj4ud] {
    background: var(--brand-700, #003760);
    border-color: var(--brand-700, #003760);
}

/* User Info Banner */
.user-info-banner[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: linear-gradient(135deg, rgba(15, 23, 42, 0.08) 0%, rgba(15, 23, 42, 0.04) 100%);
    border-radius: 8px;
    border: 1px solid rgba(15, 23, 42, 0.1);
}

.user-avatar-sm[b-m8ea8sj4ud] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(15, 23, 42, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
}

.user-avatar-sm img[b-m8ea8sj4ud] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.user-avatar-sm span[b-m8ea8sj4ud] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--brand-500);
}

.user-info-text[b-m8ea8sj4ud] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.user-info-text .user-name[b-m8ea8sj4ud] {
    font-weight: 600;
    color: #1f2937;
    font-size: 0.9375rem;
}

.user-info-text .user-email[b-m8ea8sj4ud] {
    font-size: 0.8125rem;
    color: #6b7280;
}

/* Password Input Section */
.password-section[b-m8ea8sj4ud] {
    margin-bottom: 1rem;
}

.password-input-wrapper .input-group .form-control[b-m8ea8sj4ud] {
    border-right: none;
}

.password-input-wrapper .input-group .btn[b-m8ea8sj4ud] {
    border-color: #d1d5db;
}

.password-input-wrapper .input-group .btn:hover[b-m8ea8sj4ud] {
    background-color: #f9fafb;
}

.password-input-wrapper .input-group .btn-outline-primary:hover[b-m8ea8sj4ud] {
    background-color: rgba(15, 23, 42, 0.08);
    color: var(--brand-500);
    border-color: var(--brand-500);
}

/* Password Strength Bar */
.password-strength-container[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.password-strength-bar[b-m8ea8sj4ud] {
    flex: 1;
    height: 4px;
    background: #e5e7eb;
    border-radius: 2px;
    overflow: hidden;
}

.password-strength-fill[b-m8ea8sj4ud] {
    height: 100%;
    border-radius: 2px;
    transition: width 0.3s ease, background-color 0.3s ease;
}

.password-strength-text[b-m8ea8sj4ud] {
    font-size: 0.75rem;
    font-weight: 600;
    min-width: 70px;
    text-align: right;
}

/* Password Requirements */
.password-requirements[b-m8ea8sj4ud] {
    background: #f9fafb;
    border-radius: 8px;
    padding: 0.875rem 1rem;
    border: 1px solid #e5e7eb;
}

.requirements-title[b-m8ea8sj4ud] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: #374151;
    margin-bottom: 0.625rem;
}

.requirements-grid[b-m8ea8sj4ud] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.5rem;
}

.requirement-item[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: #9ca3af;
    transition: color 0.2s ease;
}

.requirement-item i[b-m8ea8sj4ud] {
    font-size: 0.875rem;
    transition: color 0.2s ease;
}

.requirement-item.met[b-m8ea8sj4ud] {
    color: #059669;
}

.requirement-item.met i[b-m8ea8sj4ud] {
    color: #059669;
}

/* Email Option Card */
.email-option-card[b-m8ea8sj4ud] {
    background: #fefefe;
    border-radius: 8px;
    padding: 0.75rem 1rem;
    border: 1px solid #e5e7eb;
}

.email-option-card .form-check-label[b-m8ea8sj4ud] {
    font-weight: 500;
    color: #374151;
}

/* Security Notice */
.security-notice[b-m8ea8sj4ud] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 0.875rem;
    background: rgba(245, 158, 11, 0.08);
    border-radius: 6px;
    border: 1px solid rgba(245, 158, 11, 0.2);
    font-size: 0.8125rem;
    color: #92400e;
}

.security-notice i[b-m8ea8sj4ud] {
    color: #d97706;
    font-size: 1rem;
}

/* Modal Responsive */
@media (max-width: 576px) {
    .requirements-grid[b-m8ea8sj4ud] {
        grid-template-columns: 1fr;
    }
    
    .password-strength-container[b-m8ea8sj4ud] {
        flex-direction: column;
        align-items: stretch;
        gap: 0.375rem;
    }
    
    .password-strength-text[b-m8ea8sj4ud] {
        text-align: left;
    }
}

/* /Components/Pages/Admin/UserManagementPage.razor.rz.scp.css */
/* ========================================
   User Management Page Styles - Admin
   Based on WorkspacePage patterns
   ======================================== */

/* ========================================
   Animations
   ======================================== */
@keyframes fadeInDown-b-pa1dam7370 {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeInUp-b-pa1dam7370 {
    from { opacity: 0; transform: translateY(15px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeIn-b-pa1dam7370 {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes spin-b-pa1dam7370 {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.bi-arrow-clockwise.spinning[b-pa1dam7370] {
    animation: spin-b-pa1dam7370 1s linear infinite;
}

/* ========================================
   Header
   ======================================== */
.content-header[b-pa1dam7370] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    animation: fadeInDown-b-pa1dam7370 0.4s ease-out;
}

.content-title[b-pa1dam7370] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
    line-height: 1.2;
}

.content-subtitle[b-pa1dam7370] {
    font-size: 0.875rem;
    color: #6B7280;
    margin: 4px 0 0 0;
}

/* Header Stats Pills */
.header-stats[b-pa1dam7370] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.stat-pill[b-pa1dam7370] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 8px 14px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

.stat-pill i[b-pa1dam7370] {
    font-size: 1rem;
    color: var(--brand-500);
}

.stat-pill.stat-success i[b-pa1dam7370] {
    color: #10B981;
}

.stat-pill.stat-warning i[b-pa1dam7370] {
    color: #F59E0B;
}

.stat-pill .stat-value[b-pa1dam7370] {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1F2937;
}

.stat-pill .stat-label[b-pa1dam7370] {
    font-size: 0.65rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

/* ========================================
   Card & Tab Panel
   ======================================== */
.card.card-with-tabs[b-pa1dam7370] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
    animation: fadeInUp-b-pa1dam7370 0.4s ease-out;
    position: relative;
}

.dashboard-tab-panel.is-hidden[b-pa1dam7370] {
    position: absolute;
    left: -10000px;
    top: 0;
    width: 1px;
    height: 1px;
    overflow: hidden;
    visibility: hidden;
}

.dashboard-tab-panel.is-active[b-pa1dam7370] {
    position: relative;
    left: auto;
    width: auto;
    height: auto;
    visibility: visible;
    animation: fadeIn-b-pa1dam7370 0.25s ease-out;
}

/* Tab Content */
.tab-content[b-pa1dam7370] {
    padding: 0;
}

.tab-header[b-pa1dam7370] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 1px solid #F1F5F9;
    gap: 16px;
    flex-wrap: wrap;
    position: relative;
    z-index: 10;
}

.tab-title[b-pa1dam7370] {
    font-size: 1rem;
    font-weight: 600;
    color: #1F2937;
    margin: 0;
}

.tab-subtitle[b-pa1dam7370] {
    font-size: 0.8rem;
    color: #6B7280;
    margin: 2px 0 0 0;
}

.tab-actions[b-pa1dam7370] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* ========================================
   Section Titles
   ======================================== */
.section-title[b-pa1dam7370] {
    font-size: 0.9rem;
    font-weight: 600;
    color: #374151;
    display: flex;
    align-items: center;
}

.section-title i[b-pa1dam7370] {
    color: #6B7280;
}

.section-subtitle[b-pa1dam7370] {
    font-size: 0.8rem;
    color: #6B7280;
}

/* ========================================
   Pending Users Card Grid
   ======================================== */
.pending-user-card[b-pa1dam7370] {
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    padding: 20px 20px 0;
    text-align: center;
    transition: all 0.2s ease;
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.pending-user-card:hover[b-pa1dam7370] {
    border-color: var(--brand-500);
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
}

/* Tenant Request Card variant */
.pending-user-card.tenant-request-card[b-pa1dam7370] {
    border-color: #BFDBFE;
    background: linear-gradient(to bottom, #F0F9FF 0%, white 100%);
}

.pending-user-card.tenant-request-card:hover[b-pa1dam7370] {
    border-color: #3B82F6;
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.15);
}

.card-header-section[b-pa1dam7370] {
    position: relative;
    display: flex;
    justify-content: center;
    margin-bottom: 16px;
}

.user-avatar-lg[b-pa1dam7370] {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    font-weight: 600;
    color: white;
}

/* Avatar color variants for large avatars */
.user-avatar-lg.avatar-blue[b-pa1dam7370] {
    background: linear-gradient(135deg, #3B82F6, #1D4ED8);
}

.user-avatar-lg.avatar-green[b-pa1dam7370] {
    background: linear-gradient(135deg, #10B981, #047857);
}

.user-avatar-lg.avatar-orange[b-pa1dam7370] {
    background: linear-gradient(135deg, #F59E0B, #D97706);
}

.user-avatar-lg.avatar-purple[b-pa1dam7370] {
    background: linear-gradient(135deg, #8B5CF6, #6D28D9);
}

.user-avatar-lg.avatar-teal[b-pa1dam7370] {
    background: linear-gradient(135deg, #14B8A6, #0D9488);
}

.user-avatar-lg.avatar-default[b-pa1dam7370] {
    background: linear-gradient(135deg, #6B7280, #4B5563);
}

.status-indicator[b-pa1dam7370] {
    position: absolute;
    bottom: 0;
    right: calc(50% - 40px);
    width: 14px;
    height: 14px;
    border-radius: 50%;
    border: 2px solid white;
}

.status-indicator.status-verified[b-pa1dam7370] {
    background: #10B981;
}

.status-indicator.status-pending[b-pa1dam7370] {
    background: #F59E0B;
}

.status-indicator.status-info[b-pa1dam7370] {
    background: #3B82F6;
}

.card-body-section[b-pa1dam7370] {
    margin-bottom: 20px;
}

.user-card-name[b-pa1dam7370] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1F2937;
    margin: 0 0 4px 0;
}

.user-card-title[b-pa1dam7370] {
    font-size: 0.85rem;
    color: #6B7280;
    margin: 0 0 8px 0;
}

.user-card-email[b-pa1dam7370] {
    font-size: 0.8rem;
    color: #9CA3AF;
    margin: 0;
}

.card-stats-section[b-pa1dam7370] {
    border-top: 1px solid #F1F5F9;
    padding: 12px 0 0;
    margin-top: auto;
}

.stat-item[b-pa1dam7370] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 0 8px;
    border-right: 1px solid #F1F5F9;
}

.stat-item.border-end-0[b-pa1dam7370] {
    border-right: none;
}

.stat-value-sm[b-pa1dam7370] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #374151;
}

.stat-label-sm[b-pa1dam7370] {
    font-size: 0.65rem;
    color: #9CA3AF;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.badge-sm[b-pa1dam7370] {
    padding: 3px 8px;
    border-radius: 12px;
    font-size: 0.7rem;
    font-weight: 600;
}

.badge-verified[b-pa1dam7370] {
    background: #D1FAE5;
    color: #047857;
}

.badge-pending[b-pa1dam7370] {
    background: #FEF3C7;
    color: #D97706;
}

.badge-info[b-pa1dam7370] {
    background: #DBEAFE;
    color: #1D4ED8;
}

.request-reason[b-pa1dam7370] {
    padding: 10px 12px;
    background: #F9FAFB;
    border-radius: 8px;
    margin-bottom: 16px;
    text-align: left;
}

.request-reason small[b-pa1dam7370] {
    font-size: 0.8rem;
    line-height: 1.4;
    display: block;
}

.card-actions-section[b-pa1dam7370] {
    display: flex;
    gap: 8px;
    padding: 12px 20px 16px;
    margin: 12px -20px 0;
    border-top: 1px solid #F1F5F9;
    background: #FAFBFC;
}

.btn-card-approve[b-pa1dam7370] {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 7px 12px;
    font-size: 0.78rem;
    font-weight: 600;
    font-family: inherit;
    background: #ECFDF5;
    border: 1px solid #A7F3D0;
    border-radius: 6px;
    color: #047857;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-card-approve:hover[b-pa1dam7370] {
    background: #10B981;
    border-color: #10B981;
    color: white;
}

.btn-card-reject[b-pa1dam7370] {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 7px 12px;
    font-size: 0.78rem;
    font-weight: 600;
    font-family: inherit;
    background: #FEF2F2;
    border: 1px solid #FECACA;
    border-radius: 6px;
    color: var(--error-600);
    cursor: pointer;
    transition: all 0.15s;
}

.btn-card-reject:hover[b-pa1dam7370] {
    background: #EF4444;
    border-color: #EF4444;
    color: white;
}

/* Empty State Container */
.empty-state-container[b-pa1dam7370] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    text-align: center;
}

.empty-state-container i[b-pa1dam7370] {
    font-size: 48px;
    color: #D1D5DB;
    margin-bottom: 16px;
}

.empty-state-container h3[b-pa1dam7370] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #6B7280;
    margin: 0 0 8px 0;
}

.empty-state-container p[b-pa1dam7370] {
    font-size: 0.9rem;
    color: #9CA3AF;
    margin: 0;
}

/* ========================================
   Active Filters Display
   ======================================== */
.active-filters[b-pa1dam7370] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: #F9FAFB;
    border-bottom: 1px solid #F1F5F9;
    flex-wrap: wrap;
}

.active-filters-label[b-pa1dam7370] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.filter-tag[b-pa1dam7370] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    background: #E0F2FE;
    border: 1px solid #BAE6FD;
    border-radius: 16px;
    font-size: 0.75rem;
    font-weight: 500;
    color: #0369A1;
}

.filter-tag i[b-pa1dam7370] {
    font-size: 0.7rem;
}

.filter-tag-remove[b-pa1dam7370] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 50%;
    color: #0369A1;
    cursor: pointer;
    transition: all 0.15s;
}

.filter-tag-remove:hover[b-pa1dam7370] {
    background: #0369A1;
    color: white;
}

.btn-clear-all[b-pa1dam7370] {
    padding: 4px 10px;
    font-size: 0.75rem;
    font-weight: 500;
    color: #6B7280;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-clear-all:hover[b-pa1dam7370] {
    background: #F9FAFB;
    color: #374151;
}

/* ========================================
   Filter Toggle Button Group
   ======================================== */
.btn-filter-toggle[b-pa1dam7370] {
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    color: #6B7280;
    background: white;
    border: 1px solid #E5E7EB;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-filter-toggle:first-child[b-pa1dam7370] {
    border-radius: 6px 0 0 6px;
}

.btn-filter-toggle:last-child[b-pa1dam7370] {
    border-radius: 0 6px 6px 0;
}

.btn-filter-toggle:not(:last-child)[b-pa1dam7370] {
    border-right: none;
}

.btn-filter-toggle:hover:not(.active)[b-pa1dam7370] {
    background: #F9FAFB;
    color: #374151;
}

.btn-filter-toggle.active[b-pa1dam7370] {
    background: var(--brand-500);
    border-color: var(--brand-500);
    color: white;
}

/* ========================================
   Table Styles
   ======================================== */
.table-responsive[b-pa1dam7370] {
    overflow-x: auto;
    overflow-y: visible;
    margin: 0;
    max-width: 100%;
}

.dashboard-table[b-pa1dam7370] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.875rem;
}

.dashboard-table thead[b-pa1dam7370] {
    background-color: #F8FAFC;
    position: sticky;
    top: 0;
    z-index: 1;
}

.dashboard-table thead th[b-pa1dam7370] {
    padding: 10px 16px;
    text-align: left;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748B;
    border-bottom: 1px solid #E2E8F0;
    white-space: nowrap;
    user-select: none;
}

.dashboard-table thead th:hover[b-pa1dam7370] {
    color: var(--brand-500);
    background-color: #F1F5F9;
}

.dashboard-table tbody tr[b-pa1dam7370] {
    transition: all 0.12s ease;
    border-left: 3px solid transparent;
    background: white;
    animation: fadeIn-b-pa1dam7370 0.3s ease-out forwards;
    opacity: 0;
}

/* Staggered row animations */
.dashboard-table tbody tr:nth-child(1)[b-pa1dam7370] { animation-delay: 50ms; }
.dashboard-table tbody tr:nth-child(2)[b-pa1dam7370] { animation-delay: 80ms; }
.dashboard-table tbody tr:nth-child(3)[b-pa1dam7370] { animation-delay: 110ms; }
.dashboard-table tbody tr:nth-child(4)[b-pa1dam7370] { animation-delay: 140ms; }
.dashboard-table tbody tr:nth-child(5)[b-pa1dam7370] { animation-delay: 170ms; }
.dashboard-table tbody tr:nth-child(6)[b-pa1dam7370] { animation-delay: 200ms; }
.dashboard-table tbody tr:nth-child(7)[b-pa1dam7370] { animation-delay: 230ms; }
.dashboard-table tbody tr:nth-child(8)[b-pa1dam7370] { animation-delay: 260ms; }
.dashboard-table tbody tr:nth-child(9)[b-pa1dam7370] { animation-delay: 290ms; }
.dashboard-table tbody tr:nth-child(10)[b-pa1dam7370] { animation-delay: 320ms; }
.dashboard-table tbody tr:nth-child(n+11)[b-pa1dam7370] { animation-delay: 350ms; }

.dashboard-table tbody tr:nth-child(even)[b-pa1dam7370] {
    background-color: #FAFBFC;
}

.dashboard-table tbody tr:hover[b-pa1dam7370] {
    background-color: #EFF6FF;
    border-left: 3px solid var(--brand-500);
}

.dashboard-table tbody td[b-pa1dam7370] {
    padding: 10px 16px;
    border-bottom: 1px solid #F1F5F9;
    vertical-align: middle;
    color: #374151;
}

/* Empty State */
.empty-state[b-pa1dam7370] {
    text-align: center;
    padding: 48px 32px !important;
    color: #6B7280;
}

.empty-state i[b-pa1dam7370] {
    font-size: 40px;
    display: block;
    margin-bottom: 12px;
    color: #D1D5DB;
}

.empty-state span[b-pa1dam7370] {
    font-size: 0.9rem;
    color: #9CA3AF;
}

/* ========================================
   Date Cell
   ======================================== */
.date-cell[b-pa1dam7370] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.date-relative[b-pa1dam7370] {
    font-size: 0.875rem;
    color: #374151;
    font-weight: 500;
}

.date-actual[b-pa1dam7370] {
    font-size: 0.75rem;
    color: #9CA3AF;
}

/* ========================================
   User Cell
   ======================================== */
.user-cell[b-pa1dam7370] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.user-avatar[b-pa1dam7370] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.user-avatar span[b-pa1dam7370] {
    font-size: 0.8rem;
    font-weight: 600;
    color: white;
}

/* Avatar color variants */
.user-avatar.avatar-blue[b-pa1dam7370] {
    background: linear-gradient(135deg, #3B82F6, #1D4ED8);
}

.user-avatar.avatar-green[b-pa1dam7370] {
    background: linear-gradient(135deg, #10B981, #047857);
}

.user-avatar.avatar-orange[b-pa1dam7370] {
    background: linear-gradient(135deg, #F59E0B, #D97706);
}

.user-avatar.avatar-purple[b-pa1dam7370] {
    background: linear-gradient(135deg, #8B5CF6, #6D28D9);
}

.user-avatar.avatar-teal[b-pa1dam7370] {
    background: linear-gradient(135deg, #14B8A6, #0D9488);
}

.user-avatar.avatar-default[b-pa1dam7370] {
    background: linear-gradient(135deg, #6B7280, #4B5563);
}

.user-info[b-pa1dam7370] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.user-name[b-pa1dam7370] {
    font-weight: 600;
    color: #1F2937;
    font-size: 0.875rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.user-title[b-pa1dam7370] {
    font-size: 0.75rem;
    color: #6B7280;
}

/* IP Address */
.ip-address[b-pa1dam7370] {
    font-family: 'Fira Code', 'Consolas', monospace;
    font-size: 0.75rem;
    padding: 2px 6px;
    background: #F3F4F6;
    border-radius: 4px;
    color: #4B5563;
}

/* ========================================
   Status Badges
   ======================================== */
.dashboard-table .badge[b-pa1dam7370] {
    padding: 5px 10px;
    font-size: 0.75rem;
    font-weight: 600;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.dashboard-table .badge i[b-pa1dam7370] {
    font-size: 10px;
}

.badge.bg-danger[b-pa1dam7370] {
    background-color: #FEE2E2 !important;
    color: var(--error-600) !important;
}

.badge.bg-warning[b-pa1dam7370] {
    background-color: #FEF3C7 !important;
    color: #D97706 !important;
}

.badge.bg-secondary[b-pa1dam7370] {
    background-color: #F3F4F6 !important;
    color: #4B5563 !important;
}

.badge.bg-info[b-pa1dam7370] {
    background-color: #E0F2FE !important;
    color: #0369A1 !important;
}

.badge.bg-success[b-pa1dam7370] {
    background-color: #D1FAE5 !important;
    color: #047857 !important;
}

.badge.bg-primary[b-pa1dam7370] {
    background-color: #DBEAFE !important;
    color: #1D4ED8 !important;
}

/* Role Badges */
.badge.role-admin[b-pa1dam7370] {
    background-color: #EDE9FE !important;
    color: #6D28D9 !important;
}

.badge.role-banksuperuser[b-pa1dam7370] {
    background-color: #DBEAFE !important;
    color: #1D4ED8 !important;
}

.badge.role-bankuser[b-pa1dam7370] {
    background-color: #CCFBF1 !important;
    color: #0D9488 !important;
}

.badge.role-agent[b-pa1dam7370] {
    background-color: #FFEDD5 !important;
    color: #EA580C !important;
}

.badge.role-underwriter[b-pa1dam7370] {
    background-color: #E0E7FF !important;
    color: #4338CA !important;
}

.badge.role-none[b-pa1dam7370],
.badge.role-other[b-pa1dam7370] {
    background-color: #F3F4F6 !important;
    color: #6B7280 !important;
}

/* Activity Badges */
.badge.activity-success[b-pa1dam7370] {
    background-color: #D1FAE5 !important;
    color: #047857 !important;
}

.badge.activity-warning[b-pa1dam7370] {
    background-color: #FEF3C7 !important;
    color: #D97706 !important;
}

.badge.activity-error[b-pa1dam7370] {
    background-color: #FEE2E2 !important;
    color: var(--error-600) !important;
}

.badge.activity-info[b-pa1dam7370] {
    background-color: #DBEAFE !important;
    color: #1D4ED8 !important;
}

.badge.activity-default[b-pa1dam7370] {
    background-color: #F3F4F6 !important;
    color: #6B7280 !important;
}

/* ========================================
   Action Buttons
   ======================================== */
.actions-cell[b-pa1dam7370] {
    text-align: right;
}

.btn-header-action[b-pa1dam7370] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    font-size: 16px;
    color: #475569;
    background: #ffffff;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-header-action:hover:not(:disabled)[b-pa1dam7370] {
    color: var(--brand-600);
    background: #E6F2F8;
    border-color: #99CBE3;
}

.btn-header-action:disabled[b-pa1dam7370] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-action-primary[b-pa1dam7370] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    font-size: 0.8rem;
    font-weight: 500;
    color: white;
    background-color: var(--brand-500);
    border: 1px solid var(--brand-500);
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-action-primary:hover[b-pa1dam7370] {
    background-color: #004880;
    border-color: #004880;
}

.btn-action-primary i[b-pa1dam7370] {
    font-size: 0.85rem;
}

.btn-action-subtle[b-pa1dam7370] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--brand-500);
    background-color: white;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-action-subtle:hover[b-pa1dam7370] {
    background-color: #EFF6FF;
    color: #004880;
    border-color: #BFDBFE;
}

.btn-action-subtle i[b-pa1dam7370] {
    font-size: 0.85rem;
}

/* Approve/Reject Buttons (icon only) */
.btn-approve[b-pa1dam7370] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    background: #D1FAE5;
    border: 1px solid #A7F3D0;
    border-radius: 6px;
    color: #047857;
    cursor: pointer;
    transition: all 0.15s;
    margin-right: 6px;
}

.btn-approve:hover[b-pa1dam7370] {
    background: #10B981;
    border-color: #10B981;
    color: white;
}

.btn-reject[b-pa1dam7370] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    background: #FEE2E2;
    border: 1px solid #FECACA;
    border-radius: 6px;
    color: var(--error-600);
    cursor: pointer;
    transition: all 0.15s;
}

.btn-reject:hover[b-pa1dam7370] {
    background: #EF4444;
    border-color: #EF4444;
    color: white;
}

/* Approve/Reject Buttons with labels */
.btn-approve-label[b-pa1dam7370] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    background: #D1FAE5;
    border: 1px solid #A7F3D0;
    border-radius: 6px;
    color: #047857;
    cursor: pointer;
    transition: all 0.15s;
    margin-right: 8px;
}

.btn-approve-label:hover[b-pa1dam7370] {
    background: #10B981;
    border-color: #10B981;
    color: white;
}

.btn-approve-label i[b-pa1dam7370] {
    font-size: 0.9rem;
}

.btn-reject-label[b-pa1dam7370] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    background: #FEE2E2;
    border: 1px solid #FECACA;
    border-radius: 6px;
    color: var(--error-600);
    cursor: pointer;
    transition: all 0.15s;
}

.btn-reject-label:hover[b-pa1dam7370] {
    background: #EF4444;
    border-color: #EF4444;
    color: white;
}

.btn-reject-label i[b-pa1dam7370] {
    font-size: 0.9rem;
}

/* Filter Button */
.btn-filter[b-pa1dam7370] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    font-size: 0.8rem;
    font-weight: 500;
    color: #374151;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-filter:hover[b-pa1dam7370] {
    background: #F9FAFB;
    border-color: #D1D5DB;
}

.btn-filter i[b-pa1dam7370] {
    font-size: 0.85rem;
    color: #6B7280;
}

/* ========================================
   Modal Styles — look comes from the global
   wwwroot/css/modal-theme.css; only layout
   helpers live here.
   ======================================== */
.modal-backdrop[b-pa1dam7370] {
    z-index: 1040;
}

.modal[b-pa1dam7370] {
    z-index: 1050;
}

.user-preview[b-pa1dam7370] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    background: #F9FAFB;
    border-radius: 8px;
}

.user-preview .user-avatar[b-pa1dam7370] {
    width: 44px;
    height: 44px;
}

.user-preview .user-avatar span[b-pa1dam7370] {
    font-size: 0.9rem;
}

/* ========================================
   Tab Badge Styles
   ======================================== */
[b-pa1dam7370] .tab-badge-warning {
    background: #FEF3C7 !important;
    color: #D97706 !important;
}


/* ========================================
   Responsive
   ======================================== */
@media (max-width: 768px) {
    .content-header[b-pa1dam7370] {
        flex-direction: column;
        gap: 16px;
        align-items: flex-start;
    }
    
    .header-stats[b-pa1dam7370] {
        width: 100%;
        justify-content: flex-start;
        overflow-x: auto;
        padding-bottom: 4px;
    }
    
    .tab-header[b-pa1dam7370] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .tab-actions[b-pa1dam7370] {
        width: 100%;
    }
    
    .active-filters[b-pa1dam7370] {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
}

/* ========================================
   Modal dialog widths
   ======================================== */
.modal-dialog[b-pa1dam7370] {
    max-width: 540px;
}

.modal-dialog.modal-lg[b-pa1dam7370] {
    max-width: 800px;
}

/* Approval User Card */
.approval-user-card[b-pa1dam7370] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px;
    background: linear-gradient(135deg, #F0FDF4 0%, #DCFCE7 100%);
    border: 1px solid #BBF7D0;
    border-radius: 12px;
    margin-bottom: 16px;
}

.approval-user-card.rejection-card[b-pa1dam7370] {
    background: linear-gradient(135deg, #FEF2F2 0%, #FEE2E2 100%);
    border-color: #FECACA;
}

.approval-user-card.tenant-access-card[b-pa1dam7370] {
    background: linear-gradient(135deg, #EFF6FF 0%, #DBEAFE 100%);
    border-color: #93C5FD;
}

.request-reason-box[b-pa1dam7370] {
    font-style: italic;
    color: #4B5563;
    background: #F8FAFC;
}

.approval-avatar[b-pa1dam7370] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    font-weight: 600;
    color: white;
    flex-shrink: 0;
}

/* Avatar color variants for approval modal */
.approval-avatar.avatar-blue[b-pa1dam7370] {
    background: linear-gradient(135deg, #3B82F6, #1D4ED8);
}

.approval-avatar.avatar-green[b-pa1dam7370] {
    background: linear-gradient(135deg, #10B981, #047857);
}

.approval-avatar.avatar-orange[b-pa1dam7370] {
    background: linear-gradient(135deg, #F59E0B, #D97706);
}

.approval-avatar.avatar-purple[b-pa1dam7370] {
    background: linear-gradient(135deg, #8B5CF6, #6D28D9);
}

.approval-avatar.avatar-teal[b-pa1dam7370] {
    background: linear-gradient(135deg, #14B8A6, #0D9488);
}

.approval-avatar.avatar-default[b-pa1dam7370] {
    background: linear-gradient(135deg, #6B7280, #4B5563);
}

.approval-user-info[b-pa1dam7370] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.approval-user-name[b-pa1dam7370] {
    font-size: 1rem;
    font-weight: 600;
    color: #1F2937;
    margin: 0;
}

.approval-user-email[b-pa1dam7370] {
    font-size: 0.85rem;
    color: #6B7280;
}

.approval-user-title[b-pa1dam7370] {
    font-size: 0.8rem;
    color: #9CA3AF;
}

/* Modal Form Layout */
.modal-body .row[b-pa1dam7370] {
    margin: 0 -10px;
}

.modal-body .row > [class*="col-"][b-pa1dam7370] {
    padding: 0 10px;
}

/* Approval Sections */
.approval-section[b-pa1dam7370] {
    margin-bottom: 16px;
}

.approval-label[b-pa1dam7370] {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin-bottom: 6px;
}

.approval-value[b-pa1dam7370] {
    font-size: 0.95rem;
    font-weight: 500;
    color: #1F2937;
    padding: 10px 14px;
    background: #F9FAFB;
    border-radius: 8px;
    border: 1px solid #E5E7EB;
}

/* Role Selector */
.role-selector[b-pa1dam7370] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
}

/* 5-role variant for admin - 2 columns, compact */
.role-selector.role-selector-5[b-pa1dam7370] {
    grid-template-columns: repeat(2, 1fr);
}

/* Compact variant for add user modal - single column */
.role-selector.role-selector-compact[b-pa1dam7370] {
    grid-template-columns: 1fr;
    gap: 6px;
}

.role-selector.role-selector-compact .role-option[b-pa1dam7370] {
    padding: 8px 10px;
}

.role-selector.role-selector-compact .role-icon[b-pa1dam7370] {
    width: 28px;
    height: 28px;
    font-size: 0.8rem;
}

.role-selector.role-selector-compact .role-name[b-pa1dam7370] {
    font-size: 0.75rem;
}

.role-selector.role-selector-compact .role-description[b-pa1dam7370] {
    font-size: 0.6rem;
}

.role-option[b-pa1dam7370] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px;
    background: white;
    border: 2px solid #E5E7EB;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.role-option:hover[b-pa1dam7370] {
    border-color: var(--brand-500);
    background: #F8FAFC;
}

.role-option.selected[b-pa1dam7370] {
    border-color: #10B981;
    background: linear-gradient(135deg, #F0FDF4 0%, #ECFDF5 100%);
}

.role-icon[b-pa1dam7370] {
    width: 32px;
    height: 32px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #F1F5F9;
    color: #6B7280;
    font-size: 0.9rem;
    flex-shrink: 0;
}

.role-option.selected .role-icon[b-pa1dam7370] {
    background: #D1FAE5;
    color: #059669;
}

.role-details[b-pa1dam7370] {
    display: flex;
    flex-direction: column;
    gap: 0;
    flex: 1;
    min-width: 0;
}

.role-name[b-pa1dam7370] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #1F2937;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.role-description[b-pa1dam7370] {
    font-size: 0.65rem;
    color: #9CA3AF;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.role-check[b-pa1dam7370] {
    width: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
    flex-shrink: 0;
}

/* Custom Textarea */
.custom-textarea[b-pa1dam7370] {
    border: 2px solid #E5E7EB;
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 0.95rem;
    transition: all 0.2s ease;
    resize: vertical;
}

.custom-textarea:focus[b-pa1dam7370] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
    outline: none;
}

/* Enhanced Bank Dropdown */
.bank-dropdown[b-pa1dam7370] {
    width: 100%;
}

.bank-dropdown-toggle[b-pa1dam7370] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    background: white;
    border: 2px solid #E5E7EB;
    border-radius: 10px;
    font-size: 0.95rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.bank-dropdown-toggle:hover[b-pa1dam7370] {
    border-color: var(--brand-500);
    background: #F8FAFC;
}

.bank-dropdown-toggle:focus[b-pa1dam7370] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
    outline: none;
}

.bank-dropdown-toggle.is-invalid[b-pa1dam7370] {
    border-color: var(--error-600);
}

.bank-dropdown-toggle.has-selection[b-pa1dam7370] {
    border-color: #10B981;
    background: linear-gradient(135deg, #F0FDF4 0%, #ECFDF5 100%);
}

.bank-selected-item[b-pa1dam7370] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.bank-placeholder[b-pa1dam7370] {
    color: #9CA3AF;
}

.bank-icon[b-pa1dam7370] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #EFF6FF;
    color: #3B82F6;
    font-size: 0.85rem;
    flex-shrink: 0;
}

.bank-dropdown-toggle.has-selection .bank-icon[b-pa1dam7370] {
    background: #D1FAE5;
    color: #059669;
}

.bank-name[b-pa1dam7370] {
    font-weight: 500;
    color: #1F2937;
}

.dropdown-arrow[b-pa1dam7370] {
    color: #6B7280;
    transition: transform 0.2s ease;
}

.bank-dropdown-toggle[aria-expanded="true"] .dropdown-arrow[b-pa1dam7370] {
    transform: rotate(180deg);
}

.bank-dropdown-menu[b-pa1dam7370] {
    width: 100%;
    padding: 8px;
    border: 1px solid #E5E7EB;
    border-radius: 10px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    max-height: 250px;
    overflow-y: auto;
}

.bank-dropdown-item[b-pa1dam7370] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 8px;
    transition: all 0.15s ease;
}

.bank-dropdown-item:hover[b-pa1dam7370] {
    background: #F1F5F9;
}

.bank-dropdown-item.active[b-pa1dam7370] {
    background: linear-gradient(135deg, #F0FDF4 0%, #ECFDF5 100%);
}

.bank-dropdown-item.active .bank-icon[b-pa1dam7370] {
    background: #D1FAE5;
    color: #059669;
}

.bank-check[b-pa1dam7370] {
    margin-left: auto;
    color: #10B981;
    font-size: 1rem;
}

/* Custom Select */
.custom-select[b-pa1dam7370] {
    border: 2px solid #E5E7EB;
    border-radius: 10px;
    padding: 10px 14px;
    font-size: 0.95rem;
    transition: all 0.2s ease;
}

.custom-select:focus[b-pa1dam7370] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

/* Role Info Cards */
.role-info-cards[b-pa1dam7370] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}

.role-info-card[b-pa1dam7370] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    background: #F3F4F6;
    border: 2px solid transparent;
    border-radius: 8px;
    font-size: 0.85rem;
    color: #6B7280;
    cursor: pointer;
    transition: all 0.15s ease;
}

.role-info-card:hover[b-pa1dam7370] {
    background: #E5E7EB;
    color: #374151;
}

.role-info-card.active[b-pa1dam7370] {
    background: linear-gradient(135deg, #ECFDF5 0%, #D1FAE5 100%);
    border-color: #10B981;
    color: #059669;
}

.role-info-card i[b-pa1dam7370] {
    font-size: 1rem;
}

/* Custom Textarea */
.custom-textarea[b-pa1dam7370] {
    border: 2px solid #E5E7EB;
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 0.95rem;
    transition: all 0.2s ease;
    resize: vertical;
}

.custom-textarea:focus[b-pa1dam7370] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
    outline: none;
}

/* Modal Buttons */
.btn-modal-cancel[b-pa1dam7370] {
    padding: 0.55rem 1.15rem;
    font-size: 0.85rem;
    font-weight: 600;
    background: transparent;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    color: #64748B;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-modal-cancel:hover[b-pa1dam7370] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-modal-approve[b-pa1dam7370] {
    padding: 0.55rem 1.15rem;
    font-size: 0.85rem;
    font-weight: 600;
    background: var(--success-600, #059669);
    border: none;
    border-radius: 10px;
    color: white;
    cursor: pointer;
    transition: all 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.btn-modal-approve:hover:not(:disabled)[b-pa1dam7370] {
    background: var(--success-700, #047857);
}

.btn-modal-approve:disabled[b-pa1dam7370] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-modal-reject[b-pa1dam7370] {
    padding: 0.55rem 1.15rem;
    font-size: 0.85rem;
    font-weight: 600;
    background: var(--error-600, #DC2626);
    border: none;
    border-radius: 10px;
    color: white;
    cursor: pointer;
    transition: all 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.btn-modal-reject:hover:not(:disabled)[b-pa1dam7370] {
    background: var(--error-700, #B91C1C);
}

.btn-modal-reject:disabled[b-pa1dam7370] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* ========================================
   Filter Dropdowns - Themed Styles
   ======================================== */
.filter-dropdown[b-pa1dam7370] {
    position: relative;
}

.filter-dropdown .btn-filter[b-pa1dam7370] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 8px 14px;
    font-size: 0.8rem;
    color: #374151;
    font-weight: 500;
    transition: all 0.2s;
    white-space: nowrap;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.filter-dropdown .btn-filter:hover[b-pa1dam7370] {
    background: #F9FAFB;
    border-color: #D1D5DB;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
}

.filter-dropdown .btn-filter:focus[b-pa1dam7370] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.1);
}

.filter-dropdown .btn-filter i:first-child[b-pa1dam7370] {
    color: #6B7280;
    font-size: 0.85rem;
}

.filter-dropdown .dropdown-menu[b-pa1dam7370] {
    min-width: 220px;
    max-width: 280px;
    padding: 8px 0;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 
                0 10px 15px -3px rgba(0, 0, 0, 0.08),
                0 20px 25px -5px rgba(0, 0, 0, 0.05);
    background: white;
    margin-top: 4px;
    z-index: 1050;
    overflow: hidden;
}

.filter-dropdown .dropdown-header[b-pa1dam7370] {
    font-size: 0.7rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 8px 16px 6px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.filter-dropdown .dropdown-item[b-pa1dam7370] {
    display: flex;
    align-items: center;
    padding: 10px 16px;
    font-size: 0.8rem;
    color: #374151;
    border: none;
    background: none;
    width: 100%;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.filter-dropdown .dropdown-item:hover[b-pa1dam7370] {
    background: rgba(15, 23, 42, 0.05);
}

.filter-dropdown .dropdown-item.active[b-pa1dam7370] {
    background: rgba(15, 23, 42, 0.08);
    color: var(--brand-500);
    font-weight: 600;
}

.filter-dropdown .dropdown-item i[b-pa1dam7370] {
    font-size: 0.85rem;
}

.filter-dropdown .dropdown-divider[b-pa1dam7370] {
    margin: 6px 12px;
    border-color: #F3F4F6;
    opacity: 1;
}

/* Thin scrollbar for bank filter dropdown */
.bank-filter-dropdown[b-pa1dam7370] {
    scrollbar-width: thin;
    scrollbar-color: #CBD5E1 transparent;
}

.bank-filter-dropdown[b-pa1dam7370]::-webkit-scrollbar {
    width: 6px;
}

.bank-filter-dropdown[b-pa1dam7370]::-webkit-scrollbar-track {
    background: transparent;
}

.bank-filter-dropdown[b-pa1dam7370]::-webkit-scrollbar-thumb {
    background-color: #CBD5E1;
    border-radius: 3px;
}

.bank-filter-dropdown[b-pa1dam7370]::-webkit-scrollbar-thumb:hover {
    background-color: #94A3B8;
}

/* /Components/Pages/Admin/VERAcheckBackfillPage.razor.rz.scp.css */
/* Mirrors InvoiceBackfillPage.razor.css — scoped per-component, so the duplicate
   class names don't collide. Keep these two in sync if either is restyled. */

.backfill-page[b-03czyx7o72] {
    padding: 1.5rem;
    max-width: 1100px;
    margin: 0 auto;
}

.page-header[b-03czyx7o72] {
    margin-bottom: 1.25rem;
}

.back-link[b-03czyx7o72] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.6rem;
    text-decoration: none;
    color: #475569;
    font-size: 0.875rem;
}

.back-link:hover[b-03czyx7o72] { color: #2c5aa0; }

.page-header h1[b-03czyx7o72] {
    margin: 0 0 0.25rem 0;
    font-size: 1.6rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.page-header h1 i[b-03czyx7o72] { color: #2c5aa0; }

.state-block[b-03czyx7o72] {
    padding: 2.5rem 1rem;
    text-align: center;
    color: #6b7280;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
}

/* ── Hero ─────────────────────────────────────────────────────────── */

.hero[b-03czyx7o72] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.5rem 1.75rem;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    margin-bottom: 0.85rem;
}

.hero-success[b-03czyx7o72] {
    background: linear-gradient(135deg, #f0fdf4, #ecfdf5);
    border-color: #86efac;
}

.hero-success .hero-icon[b-03czyx7o72] { background: #dcfce7; color: #16a34a; }

.hero-warn[b-03czyx7o72] {
    background: linear-gradient(135deg, #fffbeb, #fef3c7);
    border-color: #fcd34d;
}

.hero-warn .hero-icon[b-03czyx7o72] { background: #fef3c7; color: #d97706; }

.hero-icon[b-03czyx7o72] {
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 12px;
    display: grid;
    place-items: center;
    font-size: 1.6rem;
    flex-shrink: 0;
}

.hero-body[b-03czyx7o72] { flex: 1; min-width: 0; }

.hero-headline[b-03czyx7o72] {
    font-size: 1.15rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 0.25rem;
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.hero-count[b-03czyx7o72] {
    font-size: 2rem;
    color: #d97706;
    font-variant-numeric: tabular-nums;
    line-height: 1;
}

.hero-success .hero-headline[b-03czyx7o72] { color: #14532d; }

.hero-subline[b-03czyx7o72] {
    color: #475569;
    font-size: 0.9rem;
}

.hero-actions[b-03czyx7o72] {
    display: flex;
    gap: 0.5rem;
    flex-shrink: 0;
    flex-wrap: wrap;
}

/* ── Run-confirm panel ────────────────────────────────────────────── */

.run-panel[b-03czyx7o72] {
    background: white;
    border: 1px solid #fcd34d;
    border-radius: 10px;
    margin-bottom: 0.85rem;
    overflow: hidden;
    animation: slideDown-b-03czyx7o72 150ms ease-out;
}

@keyframes slideDown-b-03czyx7o72 {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
}

.run-panel-title[b-03czyx7o72] {
    background: #fef3c7;
    color: #6b4f0f;
    padding: 0.6rem 1rem;
    font-weight: 600;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border-bottom: 1px solid #fcd34d;
}

.run-panel-body[b-03czyx7o72] { padding: 0.85rem 1rem; }

.run-controls[b-03czyx7o72] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

/* ── Buttons ──────────────────────────────────────────────────────── */

.btn-action[b-03czyx7o72] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.4rem 0.85rem;
    background: white;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    color: #374151;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: border-color 120ms, color 120ms, background-color 120ms;
}

.btn-action:hover:not(:disabled)[b-03czyx7o72] {
    border-color: #2c5aa0;
    color: #2c5aa0;
}

.btn-action:disabled[b-03czyx7o72] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-action-primary[b-03czyx7o72] {
    background: #2c5aa0;
    border-color: #2c5aa0;
    color: white;
}

.btn-action-primary:hover:not(:disabled)[b-03czyx7o72] {
    background: #244b87;
    border-color: #244b87;
    color: white;
}

.btn-action i[b-03czyx7o72] { font-size: 0.95rem; }

/* ── Detail grid ──────────────────────────────────────────────────── */

.detail-grid[b-03czyx7o72] {
    display: grid;
    grid-template-columns: 1fr 1.3fr;
    gap: 0.85rem;
    margin-bottom: 0.85rem;
}

@media (max-width: 800px) {
    .detail-grid[b-03czyx7o72] { grid-template-columns: 1fr; }
}

.card-section[b-03czyx7o72] {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 1rem 1.25rem;
    margin-bottom: 0.85rem;
}

.card-section h2[b-03czyx7o72] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #2c5aa0;
    font-weight: 700;
    margin: 0 0 0.6rem 0;
}

.card-section h2 .small[b-03czyx7o72],
.card-section h2 .muted[b-03czyx7o72] {
    font-weight: 500;
    color: #94a3b8;
    margin-left: 0.4rem;
    text-transform: none;
    letter-spacing: 0;
    font-size: 0.7rem;
}

.card-section table[b-03czyx7o72] { margin-bottom: 0; }

.card-section thead th[b-03czyx7o72] {
    background: #f8fafc;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #475569;
    font-weight: 600;
}

.card-section ul[b-03czyx7o72] {
    margin: 0;
    padding-left: 1.25rem;
}

.card-section ul li[b-03czyx7o72] {
    margin-bottom: 0.3rem;
}

.mono[b-03czyx7o72] { font-variant-numeric: tabular-nums; }
.muted[b-03czyx7o72] { color: #6b7280; }

.link-muted[b-03czyx7o72] {
    color: #475569;
    text-decoration: none;
    font-weight: 500;
}
.link-muted:hover[b-03czyx7o72] { color: #2c5aa0; text-decoration: underline; }

/* ── Status badge (used in samples table) ─────────────────────────── */

.status-badge[b-03czyx7o72] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
}

.status-completed[b-03czyx7o72] { background: #dcfce7; color: #166534; }
.status-pending[b-03czyx7o72] { background: #f3f4f6; color: #6b7280; }

/* ── Post-run report ──────────────────────────────────────────────── */

.report-hero[b-03czyx7o72] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.5rem 1.75rem;
    border-radius: 10px;
    margin-bottom: 0.85rem;
}

.report-hero-success[b-03czyx7o72] {
    background: linear-gradient(135deg, #f0fdf4, #ecfdf5);
    border: 1px solid #86efac;
}

.report-hero-success .report-icon[b-03czyx7o72] { background: #dcfce7; color: #16a34a; }

.report-hero-warn[b-03czyx7o72] {
    background: linear-gradient(135deg, #fef2f2, #fee2e2);
    border: 1px solid #fecaca;
}

.report-hero-warn .report-icon[b-03czyx7o72] { background: #fee2e2; color: #dc2626; }

.report-icon[b-03czyx7o72] {
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 12px;
    display: grid;
    place-items: center;
    font-size: 1.6rem;
    flex-shrink: 0;
}

.report-summary[b-03czyx7o72] { flex: 1; min-width: 0; }

.report-headline[b-03czyx7o72] {
    font-size: 1.15rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 0.2rem;
}

.report-subline[b-03czyx7o72] {
    color: #475569;
    font-size: 0.9rem;
    font-variant-numeric: tabular-nums;
}

.report-subline strong[b-03czyx7o72] {
    color: #111827;
    font-weight: 700;
}

.report-actions[b-03czyx7o72] {
    display: flex;
    gap: 0.5rem;
    flex-shrink: 0;
    flex-wrap: wrap;
}

.error-log[b-03czyx7o72] {
    background: #1f2937;
    color: #fca5a5;
    padding: 1rem;
    border-radius: 6px;
    font-size: 0.8rem;
    max-height: 320px;
    overflow-y: auto;
    margin: 0;
}
/* /Components/Pages/Admin/WebhookDeliveriesPage.razor.rz.scp.css */
/* ========================================
   Webhook Deliveries — admin viewer
   ======================================== */
.logs-page[b-qwatj1605q] { padding: 20px 24px; max-width: 1600px; margin: 0 auto; color: var(--text-primary, #111827); }

/* ─── Toolbar ─── */
.logs-toolbar[b-qwatj1605q] {
    display: flex; justify-content: space-between; align-items: center; gap: 16px;
    padding: 12px 16px; background: var(--surface, #fff);
    border: 1px solid var(--neutral-200, #e5e7eb); border-radius: 12px;
    margin-bottom: 16px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03); flex-wrap: wrap;
}
.tb-left[b-qwatj1605q] { display: flex; align-items: center; gap: 12px; }
.tb-icon[b-qwatj1605q] {
    width: 40px; height: 40px; border-radius: 10px;
    background: linear-gradient(135deg, #0ea5e9, #6366f1);
    color: #fff; display: flex; align-items: center; justify-content: center;
    font-size: 19px; box-shadow: 0 4px 10px rgba(14, 165, 233, 0.3);
}
.tb-title[b-qwatj1605q] { font-size: 17px; font-weight: 700; letter-spacing: -0.3px; line-height: 1.2; }
.tb-subtitle[b-qwatj1605q] { font-size: 12.5px; color: var(--text-muted, #6b7280); margin-top: 2px; }

.scope-pill[b-qwatj1605q] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: 8px;
    padding: 2px 8px;
    border-radius: 999px;
    background: var(--brand-50, #eef2ff);
    border: 1px solid var(--brand-100, #e0e7ff);
    color: var(--brand-700, #4338ca);
    font-size: 11.5px;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.15s, border-color 0.15s;
    vertical-align: middle;
}

.scope-pill:hover[b-qwatj1605q] {
    background: var(--brand-100, #e0e7ff);
    border-color: var(--brand-300, #a5b4fc);
    color: var(--brand-800, #3730a3);
}

.scope-pill .bi-x-lg[b-qwatj1605q] { font-size: 9px; opacity: 0.7; }
.tb-right[b-qwatj1605q] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.btn.spin i[b-qwatj1605q] { animation: spin-b-qwatj1605q 0.8s linear infinite; }
@keyframes spin-b-qwatj1605q { to { transform: rotate(360deg); } }

/* ─── Stat cards ─── */
.stat-grid[b-qwatj1605q] { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 16px; }
.stat-card[b-qwatj1605q] {
    display: flex; align-items: center; gap: 12px; background: var(--surface, #fff);
    border: 1px solid var(--neutral-200, #e5e7eb); border-radius: 12px; padding: 14px 16px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}
.stat-card.is-error[b-qwatj1605q] { border-color: #fecaca; background: #fef2f2; }
.stat-card.is-warn[b-qwatj1605q] { border-color: #fde68a; background: #fffbeb; }
.stat-ico[b-qwatj1605q] { width: 38px; height: 38px; border-radius: 9px; flex: 0 0 auto; display: flex; align-items: center; justify-content: center; font-size: 18px; }
.ico-blue[b-qwatj1605q] { background: #eef2ff; color: #4f46e5; }
.ico-green[b-qwatj1605q] { background: #dcfce7; color: #16a34a; }
.ico-red[b-qwatj1605q] { background: #fee2e2; color: #dc2626; }
.ico-amber[b-qwatj1605q] { background: #fef3c7; color: #d97706; }
.stat-val[b-qwatj1605q] { font-size: 22px; font-weight: 700; letter-spacing: -0.5px; line-height: 1.1; }
.stat-lbl[b-qwatj1605q] { font-size: 11.5px; color: var(--text-muted, #6b7280); margin-top: 1px; }

/* ─── Filter bar ─── */
.filter-bar[b-qwatj1605q] {
    display: flex; gap: 12px; align-items: flex-end; flex-wrap: wrap; background: var(--surface, #fff);
    border: 1px solid var(--neutral-200, #e5e7eb); border-radius: 12px; padding: 14px 16px; margin-bottom: 16px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}
.f-field[b-qwatj1605q] { display: flex; flex-direction: column; gap: 4px; flex: 1 1 180px; min-width: 130px; }
.f-field.f-sm[b-qwatj1605q] { flex: 0 0 130px; }
.f-field label[b-qwatj1605q] { font-size: 11px; font-weight: 600; color: var(--text-muted, #6b7280); text-transform: uppercase; letter-spacing: 0.4px; }
.f-actions[b-qwatj1605q] { display: flex; align-items: center; gap: 4px; }

/* ─── Layout + table ─── */
.logs-layout[b-qwatj1605q] { display: grid; grid-template-columns: 1fr; gap: 16px; }
.logs-layout.with-detail[b-qwatj1605q] { grid-template-columns: minmax(0, 1.4fr) minmax(360px, 1fr); }
@media (max-width: 1100px) { .logs-layout.with-detail[b-qwatj1605q] { grid-template-columns: 1fr; } }
.logs-main[b-qwatj1605q] { background: var(--surface, #fff); border: 1px solid var(--neutral-200, #e5e7eb); border-radius: 12px; overflow: hidden; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03); }
.logs-table-wrap[b-qwatj1605q] { overflow-x: auto; }
.logs-table[b-qwatj1605q] { width: 100%; border-collapse: collapse; font-size: 13px; }
.logs-table thead th[b-qwatj1605q] {
    text-align: left; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.4px;
    color: var(--text-muted, #6b7280); padding: 10px 14px; border-bottom: 1px solid var(--neutral-200, #e5e7eb);
    background: var(--neutral-50, #f9fafb);
}
.logs-table tbody td[b-qwatj1605q] { padding: 9px 14px; border-bottom: 1px solid var(--neutral-100, #f3f4f6); vertical-align: middle; }
.logs-table tbody tr[b-qwatj1605q] { cursor: pointer; transition: background 0.1s; }
.logs-table tbody tr:hover[b-qwatj1605q] { background: var(--neutral-50, #f9fafb); }
.logs-table tbody tr.active[b-qwatj1605q] { background: #eef2ff; box-shadow: inset 3px 0 0 var(--brand-600, #4f46e5); }
.mono[b-qwatj1605q] { font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; }
.dim[b-qwatj1605q] { color: var(--text-muted, #6b7280); }
.nowrap[b-qwatj1605q] { white-space: nowrap; }
.ta-r[b-qwatj1605q] { text-align: right; }
.path[b-qwatj1605q] { max-width: 220px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.empty[b-qwatj1605q] { text-align: center; color: var(--text-muted, #9ca3af); padding: 40px 0 !important; }
.empty i[b-qwatj1605q] { font-size: 26px; display: block; margin-bottom: 6px; opacity: 0.5; }

/* ─── Pills ─── */
.s-pill[b-qwatj1605q] { display: inline-block; font-size: 10.5px; font-weight: 700; letter-spacing: 0.3px; padding: 2px 7px; border-radius: 5px; font-family: ui-monospace, Menlo, Consolas, monospace; }
.s-pill.s-ok[b-qwatj1605q] { background: #dcfce7; color: #15803d; }
.s-pill.s-warn[b-qwatj1605q] { background: #fef3c7; color: #b45309; }
.s-pill.s-danger[b-qwatj1605q] { background: #fee2e2; color: #b91c1c; }
.s-pill.s-muted[b-qwatj1605q] { background: #e5e7eb; color: #374151; }

/* ─── Detail drawer ─── */
.detail[b-qwatj1605q] {
    background: var(--surface, #fff); border: 1px solid var(--neutral-200, #e5e7eb); border-radius: 12px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03); align-self: start; position: sticky; top: 16px;
    max-height: calc(100vh - 32px); display: flex; flex-direction: column; overflow: hidden;
}
.detail-head[b-qwatj1605q] { display: flex; justify-content: space-between; align-items: center; padding: 12px 14px; border-bottom: 1px solid var(--neutral-200, #e5e7eb); background: var(--neutral-50, #f9fafb); }
.detail-head .x[b-qwatj1605q] { border: 0; background: none; color: var(--text-muted, #6b7280); cursor: pointer; padding: 4px; border-radius: 6px; }
.detail-head .x:hover[b-qwatj1605q] { background: var(--neutral-200, #e5e7eb); }
.detail-body[b-qwatj1605q] { padding: 14px; overflow-y: auto; font-size: 13px; }
.kv[b-qwatj1605q] { display: grid; grid-template-columns: 96px 1fr; gap: 8px; padding: 4px 0; }
.kv > span:first-child[b-qwatj1605q] { color: var(--text-muted, #6b7280); font-size: 12px; }
.kv code[b-qwatj1605q] { background: var(--neutral-100, #f3f4f6); padding: 1px 5px; border-radius: 4px; font-size: 12px; word-break: break-all; }
.brk[b-qwatj1605q] { word-break: break-all; }
.body-head[b-qwatj1605q] { display: flex; justify-content: space-between; align-items: center; margin: 12px 0 4px; font-weight: 600; font-size: 12.5px; }
.body-head .copy[b-qwatj1605q] { border: 0; background: none; color: var(--text-muted, #6b7280); cursor: pointer; padding: 2px 6px; border-radius: 6px; }
.body-head .copy:hover[b-qwatj1605q] { background: var(--neutral-100, #f3f4f6); color: var(--brand-600, #4f46e5); }
.code[b-qwatj1605q] { background: #0f172a; color: #e2e8f0; border-radius: 8px; padding: 10px 12px; margin: 0; font-size: 12px; line-height: 1.5; max-height: 220px; overflow: auto; font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; white-space: pre-wrap; word-break: break-word; }
.code.sm[b-qwatj1605q] { max-height: 120px; margin-top: 6px; }

/* ─── Attempt timeline ─── */
.timeline[b-qwatj1605q] { list-style: none; margin: 6px 0 0; padding: 0; }
.timeline li[b-qwatj1605q] { position: relative; padding: 8px 0 8px 18px; border-left: 2px solid var(--neutral-200, #e5e7eb); }
.timeline li[b-qwatj1605q]::before { content: ""; position: absolute; left: -6px; top: 12px; width: 10px; height: 10px; border-radius: 50%; background: #94a3b8; border: 2px solid #fff; }
.timeline li.ok[b-qwatj1605q]::before { background: #16a34a; }
.timeline li.bad[b-qwatj1605q]::before { background: #dc2626; }
.timeline li:last-child[b-qwatj1605q] { border-left-color: transparent; }
.t-row[b-qwatj1605q] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.t-num[b-qwatj1605q] { font-weight: 700; font-size: 12.5px; }
.t-when[b-qwatj1605q], .t-ms[b-qwatj1605q] { font-size: 11.5px; }
.t-err[b-qwatj1605q] { margin-top: 4px; color: #b91c1c; font-size: 12px; word-break: break-word; }
.resend-note[b-qwatj1605q] { margin: 0 0 10px; padding: 8px 10px; border-radius: 6px; background: #ecfdf5; color: #065f46; font-size: 12.5px; border: 1px solid #a7f3d0; }
.bi.spin[b-qwatj1605q] { animation: spin-b-qwatj1605q 0.8s linear infinite; }
@keyframes spin-b-qwatj1605q { to { transform: rotate(360deg); } }
/* /Components/Pages/Agent/AgentCustomReportsPage.razor.rz.scp.css */
/* Agent Custom Report Generator Page - Scoped Styles */

.custom-report-page[b-y8tqa6k7uj] {
    padding: 24px;
    max-width: 1200px;
    margin: 0 auto;
}

/* Page Header */
.page-header[b-y8tqa6k7uj] {
    margin-bottom: 32px;
}

.breadcrumb-nav[b-y8tqa6k7uj] {
    margin-bottom: 16px;
}

.breadcrumb-link[b-y8tqa6k7uj] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--brand-600);
    text-decoration: none;
    font-size: 0.875rem;
    font-weight: 500;
    transition: color 0.2s ease;
}

.breadcrumb-link:hover[b-y8tqa6k7uj] {
    color: var(--brand-700);
}

.header-content[b-y8tqa6k7uj] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
}

.page-title[b-y8tqa6k7uj] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary, #0F172A);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 12px;
}

.page-title i[b-y8tqa6k7uj] {
    color: var(--brand-600);
}

.page-subtitle[b-y8tqa6k7uj] {
    font-size: 0.9375rem;
    color: var(--text-muted, #64748B);
    margin: 4px 0 0 0;
}

/* Report Builder */
.report-builder[b-y8tqa6k7uj] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.builder-section[b-y8tqa6k7uj] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 16px;
    overflow: visible !important;
    position: relative;
    contain: none !important;
}

.section-header[b-y8tqa6k7uj] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 20px 24px;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-light);
    border-radius: 16px 16px 0 0;
}

.section-number[b-y8tqa6k7uj] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--brand-600);
    color: white;
    font-size: 0.875rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.section-title-group[b-y8tqa6k7uj] {
    flex: 1;
}

.section-title[b-y8tqa6k7uj] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary, #0F172A);
    margin: 0;
}

.section-subtitle[b-y8tqa6k7uj] {
    font-size: 0.8125rem;
    color: var(--text-muted, #64748B);
    margin: 2px 0 0 0;
}

.section-content[b-y8tqa6k7uj] {
    padding: 24px;
    overflow: visible !important;
    position: relative;
    contain: none !important;
}

/* Report Type Selection */
.report-type-grid[b-y8tqa6k7uj] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

@media (max-width: 992px) {
    .report-type-grid[b-y8tqa6k7uj] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .report-type-grid[b-y8tqa6k7uj] {
        grid-template-columns: 1fr;
    }
}

.report-type-card[b-y8tqa6k7uj] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px;
    background: var(--neutral-50);
    border: 2px solid transparent;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
}

.report-type-card:hover[b-y8tqa6k7uj] {
    background: white;
    border-color: var(--brand-200);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.report-type-card.selected[b-y8tqa6k7uj] {
    background: var(--brand-50);
    border-color: var(--brand-500);
}

.type-icon[b-y8tqa6k7uj] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    color: var(--brand-600);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    flex-shrink: 0;
}

.report-type-card.selected .type-icon[b-y8tqa6k7uj] {
    background: var(--brand-600);
    color: white;
}

.type-info[b-y8tqa6k7uj] {
    flex: 1;
}

.type-info h4[b-y8tqa6k7uj] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary, #0F172A);
    margin: 0 0 4px 0;
}

.type-info p[b-y8tqa6k7uj] {
    font-size: 0.8125rem;
    color: var(--text-muted, #64748B);
    margin: 0;
}

.type-check[b-y8tqa6k7uj] {
    position: absolute;
    top: 12px;
    right: 12px;
    color: var(--brand-600);
    font-size: 1.25rem;
}

/* Date Range */
.date-range-options[b-y8tqa6k7uj] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.preset-buttons[b-y8tqa6k7uj] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.preset-btn[b-y8tqa6k7uj] {
    padding: 8px 16px;
    background: var(--neutral-50);
    border: 1px solid var(--border-medium);
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary, #475569);
    cursor: pointer;
    transition: all 0.2s ease;
}

.preset-btn:hover[b-y8tqa6k7uj] {
    background: white;
    border-color: var(--brand-300);
}

.preset-btn.active[b-y8tqa6k7uj] {
    background: var(--brand-600);
    border-color: var(--brand-600);
    color: white;
}

.custom-date-inputs[b-y8tqa6k7uj] {
    display: none;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    align-items: end;
}

.custom-date-inputs.show[b-y8tqa6k7uj] {
    display: grid;
}

.date-input-group[b-y8tqa6k7uj] {
    flex: 1;
    min-width: 0;
}

.date-input-group label[b-y8tqa6k7uj] {
    display: block;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-muted, #64748B);
    margin-bottom: 4px;
}

.date-input-group .form-control[b-y8tqa6k7uj] {
    width: 100%;
}

.range-separator[b-y8tqa6k7uj] {
    padding-bottom: 8px;
    color: var(--text-muted, #64748B);
    font-size: 0.875rem;
}

.date-summary[b-y8tqa6k7uj] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    background: var(--brand-50);
    border-radius: 8px;
    font-size: 0.875rem;
    color: var(--text-secondary, #475569);
}

.date-summary i[b-y8tqa6k7uj] {
    color: var(--brand-600);
}

.date-range-days[b-y8tqa6k7uj] {
    color: var(--text-muted, #64748B);
    font-size: 0.8125rem;
}

/* Filters */
.filters-grid[b-y8tqa6k7uj] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    overflow: visible !important;
    position: relative;
}

@media (max-width: 768px) {
    .filters-grid[b-y8tqa6k7uj] {
        grid-template-columns: 1fr;
    }
}

.filter-group[b-y8tqa6k7uj] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    overflow: visible !important;
    position: relative;
}

/* Individual z-index for each filter to stack properly */
.filter-group:nth-child(1)[b-y8tqa6k7uj] { z-index: 40; }
.filter-group:nth-child(2)[b-y8tqa6k7uj] { z-index: 30; }
.filter-group:nth-child(3)[b-y8tqa6k7uj] { z-index: 20; }
.filter-group:nth-child(4)[b-y8tqa6k7uj] { z-index: 10; }

.filter-label[b-y8tqa6k7uj] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary, #475569);
    display: flex;
    align-items: center;
    gap: 6px;
}

.filter-label i[b-y8tqa6k7uj] {
    color: var(--brand-600);
    font-size: 0.875rem;
}

.form-select[b-y8tqa6k7uj], .form-control[b-y8tqa6k7uj] {
    padding: 10px 14px;
    border: 1px solid var(--border-medium);
    border-radius: 8px;
    font-size: 0.875rem;
    background: white;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.form-select:focus[b-y8tqa6k7uj], .form-control:focus[b-y8tqa6k7uj] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(0, 125, 184, 0.1);
}

.premium-range-inputs[b-y8tqa6k7uj] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.premium-range-inputs .form-control[b-y8tqa6k7uj] {
    flex: 1;
}

/* Output Options */
.output-options[b-y8tqa6k7uj] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.format-buttons[b-y8tqa6k7uj] {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.format-btn[b-y8tqa6k7uj] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    background: var(--neutral-50);
    border: 2px solid transparent;
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary, #475569);
    cursor: pointer;
    transition: all 0.2s ease;
}

.format-btn i[b-y8tqa6k7uj] {
    font-size: 1.125rem;
}

.format-btn:hover[b-y8tqa6k7uj] {
    background: white;
    border-color: var(--brand-200);
}

.format-btn.active[b-y8tqa6k7uj] {
    background: var(--brand-50);
    border-color: var(--brand-500);
    color: var(--brand-700);
}

.columns-selection[b-y8tqa6k7uj] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.columns-checkboxes[b-y8tqa6k7uj] {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.checkbox-item[b-y8tqa6k7uj] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.875rem;
    color: var(--text-secondary, #475569);
    cursor: pointer;
}

.checkbox-item input[type="checkbox"][b-y8tqa6k7uj] {
    width: 18px;
    height: 18px;
    accent-color: var(--brand-600);
    cursor: pointer;
}

.grouping-option[b-y8tqa6k7uj] {
    max-width: 300px;
}

/* Custom Dropdown Styling */
.custom-dropdown[b-y8tqa6k7uj] {
    position: relative;
    overflow: visible !important;
}

.custom-dropdown.show[b-y8tqa6k7uj] {
    z-index: 1050 !important;
}

.custom-dropdown .dropdown-toggle[b-y8tqa6k7uj] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    background: white;
    border: 1px solid var(--border-medium);
    border-radius: 8px;
    font-size: 0.875rem;
    color: var(--text-secondary, #475569);
    cursor: pointer;
    transition: all 0.2s ease;
}

.custom-dropdown .dropdown-toggle:hover[b-y8tqa6k7uj] {
    border-color: var(--brand-300);
}

.custom-dropdown .dropdown-toggle:focus[b-y8tqa6k7uj] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(0, 125, 184, 0.1);
}

.custom-dropdown .dropdown-toggle[b-y8tqa6k7uj]::after {
    display: none; /* Hide default Bootstrap caret */
}

.custom-dropdown .dropdown-text[b-y8tqa6k7uj] {
    flex: 1;
    text-align: left;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.custom-dropdown .dropdown-arrow[b-y8tqa6k7uj] {
    font-size: 0.75rem;
    color: var(--text-muted, #64748B);
    transition: transform 0.2s ease;
    margin-left: 8px;
}

.custom-dropdown.show .dropdown-arrow[b-y8tqa6k7uj] {
    transform: rotate(180deg);
}

.custom-dropdown .dropdown-menu[b-y8tqa6k7uj] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    z-index: 9999 !important;
    min-width: 100%;
    max-height: 280px;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 6px 0;
    margin: 0 !important;
    background: white;
    border: 1px solid var(--border-medium);
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
    display: none;
}

.custom-dropdown .dropdown-menu.show[b-y8tqa6k7uj],
.custom-dropdown.show .dropdown-menu[b-y8tqa6k7uj] {
    display: block !important;
}

.custom-dropdown .dropdown-menu li[b-y8tqa6k7uj] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.custom-dropdown .dropdown-item[b-y8tqa6k7uj] {
    display: block;
    padding: 10px 14px;
    font-size: 0.875rem;
    color: var(--text-secondary, #475569);
    cursor: pointer;
    transition: all 0.15s ease;
    border: none;
    background: transparent;
    width: 100%;
    text-align: left;
}

.custom-dropdown .dropdown-item:hover[b-y8tqa6k7uj] {
    background: var(--neutral-50);
    color: var(--text-primary, #0F172A);
}

.custom-dropdown .dropdown-item.active[b-y8tqa6k7uj] {
    background: var(--brand-50);
    color: var(--brand-700);
    font-weight: 500;
}

.custom-dropdown .dropdown-item:focus[b-y8tqa6k7uj] {
    outline: none;
    background: var(--brand-50);
}

/* Preview & Generate */
.preview-section[b-y8tqa6k7uj] {
    background: linear-gradient(135deg, var(--brand-50) 0%, white 100%);
}

.config-summary[b-y8tqa6k7uj] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 12px;
    padding: 20px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}

@media (max-width: 768px) {
    .config-summary[b-y8tqa6k7uj] {
        grid-template-columns: 1fr;
    }
}

.summary-item[b-y8tqa6k7uj] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.summary-label[b-y8tqa6k7uj] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-muted, #64748B);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.summary-value[b-y8tqa6k7uj] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary, #0F172A);
}

.generate-actions[b-y8tqa6k7uj] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
}

.btn-generate[b-y8tqa6k7uj] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: var(--brand-600);
    border: none;
    border-radius: 10px;
    font-size: 0.9375rem;
    font-weight: 600;
    color: white;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-generate:hover:not(:disabled)[b-y8tqa6k7uj] {
    background: var(--brand-700);
}

.btn-generate:disabled[b-y8tqa6k7uj] {
    opacity: 0.7;
    cursor: not-allowed;
}

.btn-outline-secondary[b-y8tqa6k7uj] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    background: white;
    border: 1px solid var(--border-medium);
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary, #475569);
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-outline-secondary:hover[b-y8tqa6k7uj] {
    background: var(--neutral-50);
    border-color: var(--border-dark);
}

/* /Components/Pages/Agent/AgentDashboardPage.razor.rz.scp.css */
/* ========================================
   Agent Dashboard Page - Modern Design
   ======================================== */

.agent-dashboard[b-pojoq6yfsn] {
    padding: 0;
    max-width: 100%;
    margin: 0;
}

/* Loading State */
.loading-container[b-pojoq6yfsn] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
}

.loading-text[b-pojoq6yfsn] {
    color: var(--text-muted);
    font-size: 0.875rem;
    margin: 0;
}

/* ========================================
   Dashboard Header
   ======================================== */

.dashboard-header[b-pojoq6yfsn] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
    gap: 24px;
    flex-wrap: wrap;
    background: white;
    padding: 24px;
    border-radius: 16px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-light);
}

.header-content[b-pojoq6yfsn] {
    flex: 1;
}

.dashboard-title[b-pojoq6yfsn] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 4px 0;
    letter-spacing: -0.02em;
}

.dashboard-subtitle[b-pojoq6yfsn] {
    font-size: 0.9375rem;
    color: var(--text-muted);
    margin: 0;
}

.header-actions[b-pojoq6yfsn] {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

/* Time Period Selector */
.time-period-selector .btn-group[b-pojoq6yfsn] {
    display: flex;
    background: var(--neutral-100);
    border-radius: 10px;
    padding: 4px;
    gap: 2px;
}

.btn-period[b-pojoq6yfsn] {
    background: transparent;
    border: none;
    color: var(--text-secondary);
    padding: 8px 16px;
    font-size: 0.8125rem;
    font-weight: 600;
    border-radius: 8px;
    transition: all 0.2s ease;
}

.btn-period:hover[b-pojoq6yfsn] {
    color: var(--text-primary);
    background: rgba(255, 255, 255, 0.5);
}

.btn-period.active[b-pojoq6yfsn] {
    background: white;
    color: var(--brand-600);
    box-shadow: var(--shadow-sm);
}

/* Primary Action Button */
.btn-primary-action[b-pojoq6yfsn] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--brand-600);
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-primary-action:hover[b-pojoq6yfsn] {
    background: var(--brand-700);
}

.btn-primary-action i[b-pojoq6yfsn] {
    font-size: 1rem;
}

/* Year Selector */
.year-selector[b-pojoq6yfsn] {
    display: flex;
    align-items: center;
    gap: 0;
    background: white;
    border: 1px solid var(--border-medium);
    border-radius: 8px;
    overflow: hidden;
}

.year-label[b-pojoq6yfsn] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 10px;
    background: var(--neutral-50);
    color: var(--text-muted, #64748B);
    border-right: 1px solid var(--border-light);
    font-size: 0.875rem;
}

.year-selector .form-select[b-pojoq6yfsn] {
    padding: 8px 32px 8px 12px;
    font-size: 0.875rem;
    font-weight: 600;
    border-radius: 0;
    border: none;
    background-color: white;
    color: var(--text-primary);
    cursor: pointer;
    min-width: 90px;
}

.year-selector .form-select:focus[b-pojoq6yfsn] {
    outline: none;
    box-shadow: none;
}

.year-selector:focus-within[b-pojoq6yfsn] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

/* ========================================
   Dashboard Tabs
   ======================================== */

.dashboard-tabs[b-pojoq6yfsn] {
    display: flex;
    gap: 4px;
    margin-bottom: 24px;
    background: white;
    padding: 6px;
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-light);
    overflow-x: auto;
}

.tab-btn[b-pojoq6yfsn] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    background: transparent;
    border: none;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.tab-btn:hover[b-pojoq6yfsn] {
    background: var(--neutral-100);
    color: var(--text-primary);
}

.tab-btn.active[b-pojoq6yfsn] {
    background: var(--brand-600);
    color: white;
}

.tab-btn i[b-pojoq6yfsn] {
    font-size: 1rem;
}

/* ========================================
   Tab Content
   ======================================== */

.tab-content[b-pojoq6yfsn] {
    /* ...existing code... */
}

/* Keep all tab panels mounted; only the active one is visible.
   Scope animations to the active panel to avoid a full-content fade on every render. */
.tab-panel[b-pojoq6yfsn] {
    width: 100%;
}

.tab-panel.active[b-pojoq6yfsn] {
    animation: fadeIn-b-pojoq6yfsn 0.2s ease;
}

@keyframes fadeIn-b-pojoq6yfsn {
    from { opacity: 0; transform: translateY(4px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Keep all tab panels mounted; hide inactive panels without triggering layout thrash */
.tab-panel.is-hidden[b-pojoq6yfsn] {
    position: absolute;
    left: -10000px;
    top: 0;
    width: 1px;
    height: 1px;
    overflow: hidden;
    visibility: hidden;
}

.tab-panel.is-active[b-pojoq6yfsn] {
    position: relative;
    left: auto;
    width: auto;
    height: auto;
    overflow: visible;
    visibility: visible;
}

/* ========================================
   Stats Row
   ======================================== */

.stats-row[b-pojoq6yfsn] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 24px;
}

.stats-row-3[b-pojoq6yfsn] {
    grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 1200px) {
    .stats-row[b-pojoq6yfsn] {
        grid-template-columns: repeat(2, 1fr);
    }
    .stats-row-3[b-pojoq6yfsn] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .stats-row[b-pojoq6yfsn],
    .stats-row-3[b-pojoq6yfsn] {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   Stat Cards (Metric Cards)
   ======================================== */

.stat-card[b-pojoq6yfsn] {
    background: white;
    border-radius: 16px;
    padding: 20px 24px;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-light);
    transition: all 0.2s ease;
}

.stat-card:hover[b-pojoq6yfsn] {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.stat-card-primary[b-pojoq6yfsn] {
    background: linear-gradient(135deg, #34D399 0%, #10B981 100%);
    background: linear-gradient(135deg, var(--success-400) 0%, var(--success-500) 100%);
    border: none;
}

.stat-card-primary .stat-card-title[b-pojoq6yfsn],
.stat-card-primary .stat-card-description[b-pojoq6yfsn] {
    color: rgba(255, 255, 255, 0.9);
}

.stat-card-primary .stat-card-value[b-pojoq6yfsn] {
    color: white;
}

.stat-card-primary .stat-card-icon[b-pojoq6yfsn] {
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.stat-card-content[b-pojoq6yfsn] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.stat-card-header[b-pojoq6yfsn] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.stat-card-title[b-pojoq6yfsn] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.stat-card-value[b-pojoq6yfsn] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
}

.stat-card-description[b-pojoq6yfsn] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.stat-card-icon[b-pojoq6yfsn] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--neutral-100);
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.stat-icon-success[b-pojoq6yfsn] {
    background: rgba(34, 197, 94, 0.1);
    color: var(--success-600);
}

.stat-icon-warning[b-pojoq6yfsn] {
    background: rgba(245, 158, 11, 0.1);
    color: #d97706;
}

.stat-icon-error[b-pojoq6yfsn] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-600);
}

.stat-trend[b-pojoq6yfsn] {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 4px;
}

.stat-trend.trend-up[b-pojoq6yfsn] {
    background: rgba(34, 197, 94, 0.1);
    color: var(--success-600);
}

.stat-trend.trend-down[b-pojoq6yfsn] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-600);
}

.stat-card-progress[b-pojoq6yfsn] {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: rgba(255, 255, 255, 0.2);
}

.stat-card-progress .progress-bar[b-pojoq6yfsn] {
    height: 100%;
    background: rgba(255, 255, 255, 0.6);
    border-radius: 0 4px 4px 0;
}

/* ========================================
   Content Grid
   ======================================== */

.content-grid[b-pojoq6yfsn] {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 24px;
}

@media (max-width: 1024px) {
    .content-grid[b-pojoq6yfsn] {
        grid-template-columns: 1fr;
    }
}

.content-left[b-pojoq6yfsn],
.content-right[b-pojoq6yfsn] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* ========================================
   Dashboard Cards
   ======================================== */

.dashboard-card[b-pojoq6yfsn] {
    background: white;
    border-radius: 16px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-light);
    overflow: hidden;
}

.card-header[b-pojoq6yfsn] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 24px;
    border-bottom: 1px solid var(--border-light);
    gap: 16px;
}

.card-header-left[b-pojoq6yfsn] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.card-title[b-pojoq6yfsn] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.card-subtitle[b-pojoq6yfsn] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.btn-icon[b-pojoq6yfsn] {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    border: 1px solid var(--border-medium);
    background: white;
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-icon:hover[b-pojoq6yfsn] {
    background: var(--brand-50);
    border-color: var(--brand-300);
    color: var(--brand-600);
}

.card-body[b-pojoq6yfsn] {
    padding: 20px 24px;
}

/* ========================================
   Banks List
   ======================================== */

.banks-list[b-pojoq6yfsn] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.bank-item[b-pojoq6yfsn] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: var(--neutral-50);
    border-radius: 12px;
    transition: all 0.2s ease;
}

.bank-item:hover[b-pojoq6yfsn] {
    background: var(--neutral-100);
}

.bank-avatar[b-pojoq6yfsn] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-600) 100%);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    font-weight: 700;
    flex-shrink: 0;
}

.bank-details[b-pojoq6yfsn] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.bank-name[b-pojoq6yfsn] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.bank-code[b-pojoq6yfsn] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.bank-stats[b-pojoq6yfsn] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
}

.bank-user-count[b-pojoq6yfsn] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--brand-600);
}

.bank-user-label[b-pojoq6yfsn] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* Banks Summary */
.banks-summary[b-pojoq6yfsn] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 32px;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid var(--border-light);
}

.summary-item[b-pojoq6yfsn] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}

.summary-value[b-pojoq6yfsn] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
}

.summary-label[b-pojoq6yfsn] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.summary-divider[b-pojoq6yfsn] {
    width: 1px;
    height: 40px;
    background: var(--border-medium);
}

/* Empty State */
.empty-state[b-pojoq6yfsn] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    text-align: center;
}

.empty-icon[b-pojoq6yfsn] {
    width: 64px;
    height: 64px;
    border-radius: 16px;
    background: var(--neutral-100);
    color: var(--text-muted);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
    margin-bottom: 16px;
}

.empty-text[b-pojoq6yfsn] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 4px 0;
}

.empty-subtext[b-pojoq6yfsn] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

/* ========================================
   Button Overrides
   ======================================== */

.btn.btn-sm[b-pojoq6yfsn] {
    padding: 6px 12px;
    font-size: 0.8125rem;
    font-weight: 600;
    border-radius: 6px;
}

.btn.btn-outline-secondary[b-pojoq6yfsn] {
    background: transparent;
    border: 1px solid #E2E8F0;
    color: #64748B;
}

.btn.btn-outline-secondary:hover[b-pojoq6yfsn] {
    background: #F1F5F9;
    border-color: #E2E8F0;
    color: #0F172A;
}

.btn.btn-outline-primary[b-pojoq6yfsn] {
    background: white;
    border: 1px solid var(--brand-500);
    color: var(--brand-600);
}

.btn.btn-outline-primary:hover[b-pojoq6yfsn] {
    background: var(--brand-50);
    border-color: var(--brand-600);
    color: var(--brand-700);
}

.btn.btn-primary[b-pojoq6yfsn] {
    background: var(--brand-600);
    border: 1px solid var(--brand-600);
    color: white;
}

.btn.btn-primary:hover[b-pojoq6yfsn] {
    background: var(--brand-700);
    border-color: var(--brand-700);
    color: white;
}

/* Form Controls */
.form-select.form-select-sm[b-pojoq6yfsn] {
    padding: 6px 28px 6px 10px;
    font-size: 0.8125rem;
    font-weight: 500;
    border-radius: 6px;
    border: 1px solid var(--border-medium);
    background-color: white;
}

.form-select.form-select-sm:focus[b-pojoq6yfsn] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

/* ========================================
   Quick Actions Card
   ======================================== */

.quick-actions-card .card-body[b-pojoq6yfsn] {
    padding: 16px;
}

.quick-actions-grid[b-pojoq6yfsn] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}

.quick-action-btn[b-pojoq6yfsn] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 20px 16px;
    background: var(--neutral-50);
    border: 1px solid transparent;
    border-radius: 12px;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.quick-action-btn:hover[b-pojoq6yfsn] {
    background: white;
    border-color: var(--border-medium);
}

.action-icon[b-pojoq6yfsn] {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
}

.action-icon-blue[b-pojoq6yfsn] {
    background: rgba(59, 130, 246, 0.1);
    color: #3b82f6;
}

.action-icon-purple[b-pojoq6yfsn] {
    background: rgba(139, 92, 246, 0.1);
    color: #8b5cf6;
}

.action-icon-green[b-pojoq6yfsn] {
    background: rgba(34, 197, 94, 0.1);
    color: var(--success-500);
}

.action-icon-orange[b-pojoq6yfsn] {
    background: rgba(249, 115, 22, 0.1);
    color: #f97316;
}

.action-label[b-pojoq6yfsn] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

/* Quick Actions List Style */
.quick-actions-list[b-pojoq6yfsn] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.quick-action-item[b-pojoq6yfsn] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 16px;
    background: var(--neutral-50);
    border: 1px solid transparent;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    width: 100%;
    text-align: left;
}

.quick-action-item:hover[b-pojoq6yfsn] {
    background: white;
    border-color: var(--border-medium);
    box-shadow: var(--shadow-sm);
}

.quick-action-item .action-text[b-pojoq6yfsn] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.quick-action-item .action-title[b-pojoq6yfsn] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary, #0F172A);
}

.quick-action-item .action-desc[b-pojoq6yfsn] {
    font-size: 0.8125rem;
    color: var(--text-muted, #64748B);
}

.quick-action-item > i:last-child[b-pojoq6yfsn] {
    color: var(--text-muted, #64748B);
    font-size: 0.875rem;
}

/* ========================================
   Tips Card
   ======================================== */

.tips-card[b-pojoq6yfsn] {
    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
    border: none;
}

.tips-content[b-pojoq6yfsn] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 24px;
}

.tips-icon[b-pojoq6yfsn] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(245, 158, 11, 0.2);
    color: #b45309;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.tips-text[b-pojoq6yfsn] {
    flex: 1;
}

.tips-text h4[b-pojoq6yfsn] {
    font-size: 1rem;
    font-weight: 700;
    color: #92400e;
    margin: 0 0 4px 0;
}

.tips-text p[b-pojoq6yfsn] {
    font-size: 0.875rem;
    color: #a16207;
    margin: 0;
    line-height: 1.5;
}

.btn-tips[b-pojoq6yfsn] {
    background: white;
    color: #b45309;
    border: none;
    padding: 8px 16px;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
    align-self: center;
}

.btn-tips:hover[b-pojoq6yfsn] {
    background: #fffbeb;
}

/* ========================================
   Commission Chart
   ======================================== */

.commission-chart[b-pojoq6yfsn],
.commission-chart-large[b-pojoq6yfsn] {
    padding: 20px 0;
}

.chart-bars[b-pojoq6yfsn],
.chart-bars-large[b-pojoq6yfsn] {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    height: 200px;
    gap: 8px;
}

.chart-bars-large[b-pojoq6yfsn] {
    height: 280px;
}

.chart-bar-container[b-pojoq6yfsn] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.chart-bar-wrapper[b-pojoq6yfsn] {
    width: 100%;
    height: calc(100% - 24px); /* subtract label height */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
}

.chart-bar[b-pojoq6yfsn] {
    width: 100%;
    max-width: 40px;
    background: linear-gradient(180deg, var(--brand-300) 0%, var(--brand-400) 100%);
    background: linear-gradient(180deg, var(--brand-300) 0%, var(--brand-400) 100%);
    border-radius: 4px 4px 0 0;
    transition: height 0.5s ease;
    min-height: 8px;
}

.chart-label[b-pojoq6yfsn] {
    font-size: 0.75rem;
    color: var(--text-muted, #64748B);
    font-weight: 500;
    height: 20px;
    margin-top: 4px;
}

.chart-bar-animated[b-pojoq6yfsn] {
    animation: growBar-b-pojoq6yfsn 0.8s ease-out;
}

@keyframes growBar-b-pojoq6yfsn {
    from { height: 0; }
}

.chart-bar-value[b-pojoq6yfsn] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary, #475569);
    margin-bottom: 4px;
}

.chart-empty[b-pojoq6yfsn] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 200px;
    color: var(--text-muted, #64748B);
    gap: 8px;
}

.chart-empty i[b-pojoq6yfsn] {
    font-size: 2rem;
}

.commission-totals[b-pojoq6yfsn] {
    display: flex;
    justify-content: center;
    gap: 48px;
    padding-top: 20px;
    border-top: 1px solid var(--border-light);
    margin-top: 20px;
}

.commission-total-item[b-pojoq6yfsn] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}

.total-label[b-pojoq6yfsn] {
    font-size: 0.8125rem;
    color: var(--text-muted, #64748B);
}

.total-value[b-pojoq6yfsn] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary, #0F172A);
}

.total-highlight[b-pojoq6yfsn] {
    color: var(--success-600);
}

/* ========================================
   Data Tables
   ======================================== */

.data-table[b-pojoq6yfsn] {
    width: 100%;
    border-collapse: collapse;
}

.data-table thead[b-pojoq6yfsn] {
    background: var(--neutral-50);
}

.data-table th[b-pojoq6yfsn] {
    padding: 12px 16px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-muted, #64748B);
    text-align: left;
    border-bottom: 1px solid var(--border-light);
}

.data-table td[b-pojoq6yfsn] {
    padding: 14px 16px;
    font-size: 0.875rem;
    color: var(--text-primary, #0F172A);
    border-bottom: 1px solid var(--border-light);
}

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

.data-table tr:hover td[b-pojoq6yfsn] {
    background: var(--neutral-50);
}

.font-mono[b-pojoq6yfsn] {
    font-family: 'SF Mono', 'Monaco', 'Inconsolata', monospace;
    font-size: 0.8125rem;
}

.btn-icon-sm[b-pojoq6yfsn] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: 1px solid var(--border-light);
    background: white;
    color: var(--text-secondary, #475569);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-icon-sm:hover[b-pojoq6yfsn] {
    background: var(--brand-50);
    border-color: var(--brand-300);
    color: var(--brand-600);
}

/* ========================================
   Status Badges
   ======================================== */

.status-badge[b-pojoq6yfsn] {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: capitalize;
}

.status-badge.status-paid[b-pojoq6yfsn],
.status-badge.status-approved[b-pojoq6yfsn],
.status-badge.status-bound[b-pojoq6yfsn] {
    background: var(--success-50);
    color: var(--success-700);
}

.status-badge.status-pending[b-pojoq6yfsn],
.status-badge.status-inreview[b-pojoq6yfsn] {
    background: var(--warning-50);
    color: var(--warning-700);
}

.status-badge.status-submitted[b-pojoq6yfsn] {
    background: var(--brand-50);
    color: var(--brand-700);
}

.status-badge.status-denied[b-pojoq6yfsn],
.status-badge.status-rejected[b-pojoq6yfsn] {
    background: var(--error-50);
    color: var(--error-700);
}

/* ========================================
   Banks Grid (for Banks Tab)
   ======================================== */

.banks-grid[b-pojoq6yfsn] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px;
}

.bank-card[b-pojoq6yfsn] {
    background: var(--neutral-50);
    border: 1px solid var(--border-light);
    border-radius: 12px;
    padding: 20px;
    transition: all 0.2s ease;
}

.bank-card:hover[b-pojoq6yfsn] {
    background: white;
    box-shadow: var(--shadow-md);
}

.bank-card-header[b-pojoq6yfsn] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

.bank-avatar-lg[b-pojoq6yfsn] {
    width: 48px;
    height: 48px;
}

.bank-info h4[b-pojoq6yfsn] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary, #0F172A);
    margin: 0 0 2px 0;
}

.bank-card-stats[b-pojoq6yfsn] {
    display: flex;
    justify-content: space-between;
    padding: 12px 0;
    border-top: 1px solid var(--border-light);
    border-bottom: 1px solid var(--border-light);
    margin-bottom: 16px;
}

.bank-stat[b-pojoq6yfsn] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.stat-number[b-pojoq6yfsn] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary, #0F172A);
}

.stat-label[b-pojoq6yfsn] {
    font-size: 0.75rem;
    color: var(--text-muted, #64748B);
}

.bank-card-footer[b-pojoq6yfsn] {
    display: flex;
    justify-content: center;
}

/* ========================================
   Card Header Stats & Actions
   ======================================== */

.card-header-stats[b-pojoq6yfsn] {
    display: flex;
    gap: 16px;
}

.header-stat[b-pojoq6yfsn] {
    font-size: 0.875rem;
    color: var(--text-secondary, #475569);
}

.card-header-actions[b-pojoq6yfsn] {
    display: flex;
    gap: 12px;
    align-items: center;
    flex-shrink: 0;
}

.search-box[b-pojoq6yfsn] {
    position: relative;
    display: flex;
    align-items: center;
}

.search-box i[b-pojoq6yfsn] {
    position: absolute;
    left: 12px;
    color: var(--text-muted, #64748B);
    font-size: 0.875rem;
    pointer-events: none;
}

.search-box input[b-pojoq6yfsn] {
    padding: 8px 12px 8px 36px;
    border: 1px solid var(--border-medium);
    border-radius: 8px;
    font-size: 0.875rem;
    width: 220px;
    height: 36px;
    transition: all 0.2s ease;
    background-color: white;
}

.search-box input:focus[b-pojoq6yfsn] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.search-box input[b-pojoq6yfsn]::placeholder {
    color: var(--text-muted, #94A3B8);
}

/* Form Select in card header */
.card-header-actions .form-select[b-pojoq6yfsn] {
    padding: 8px 32px 8px 12px;
    font-size: 0.875rem;
    font-weight: 500;
    border-radius: 8px;
    border: 1px solid var(--border-medium);
    background-color: white;
    height: 36px;
    min-width: 140px;
    cursor: pointer;
}

.card-header-actions .form-select:focus[b-pojoq6yfsn] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
    outline: none;
}

/* ========================================
   Reports Grid
   ======================================== */

.reports-grid[b-pojoq6yfsn] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

@media (max-width: 768px) {
    .reports-grid[b-pojoq6yfsn] {
        grid-template-columns: 1fr;
    }
}

.report-card[b-pojoq6yfsn] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px;
    background: var(--neutral-50);
    border: 1px solid var(--border-light);
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.report-card:hover[b-pojoq6yfsn] {
    background: white;
    box-shadow: var(--shadow-md);
}

.report-icon[b-pojoq6yfsn] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.report-icon-green[b-pojoq6yfsn] {
    background: rgba(34, 197, 94, 0.1);
    color: var(--success-600);
}

.report-icon-blue[b-pojoq6yfsn] {
    background: rgba(59, 130, 246, 0.1);
    color: #2563eb;
}

.report-icon-purple[b-pojoq6yfsn] {
    background: rgba(139, 92, 246, 0.1);
    color: #7c3aed;
}

.report-icon-orange[b-pojoq6yfsn] {
    background: rgba(249, 115, 22, 0.1);
    color: #ea580c;
}

.report-icon-teal[b-pojoq6yfsn] {
    background: rgba(20, 184, 166, 0.1);
    color: #0d9488;
}

.report-card-custom[b-pojoq6yfsn] {
    text-decoration: none;
    background: linear-gradient(135deg, var(--brand-50) 0%, #f0f9ff 100%);
    border: 1px solid var(--brand-200);
}

.report-card-custom:hover[b-pojoq6yfsn] {
    background: linear-gradient(135deg, var(--brand-100) 0%, #e0f2fe 100%);
    border-color: var(--brand-300);
    box-shadow: var(--shadow-md);
}

.btn-custom-report[b-pojoq6yfsn] {
    padding: 8px 16px;
    background: var(--accent-color);
    border: none;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 600;
    color: white;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 6px;
}

.btn-custom-report:hover[b-pojoq6yfsn] {
    filter: brightness(0.85);
}

.report-info[b-pojoq6yfsn] {
    flex: 1;
}

.report-info h4[b-pojoq6yfsn] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary, #0F172A);
    margin: 0 0 4px 0;
}

.report-info p[b-pojoq6yfsn] {
    font-size: 0.8125rem;
    color: var(--text-muted, #64748B);
    margin: 0;
}

.btn-export[b-pojoq6yfsn] {
    padding: 8px 16px;
    background: transparent;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 600;
    color: #64748B;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    display: flex;
    align-items: center;
    gap: 6px;
}

.btn-export:hover[b-pojoq6yfsn] {
    background: #F1F5F9;
    border-color: #E2E8F0;
    color: #0F172A;
}

/* ========================================
   Responsive Adjustments
   ======================================== */

@media (max-width: 768px) {
    .dashboard-header[b-pojoq6yfsn] {
        flex-direction: column;
        align-items: stretch;
    }
    
    .header-actions[b-pojoq6yfsn] {
        flex-direction: column;
        align-items: stretch;
    }
    
    .time-period-selector .btn-group[b-pojoq6yfsn] {
        width: 100%;
        justify-content: space-between;
    }
    
    .btn-primary-action[b-pojoq6yfsn] {
        width: 100%;
        justify-content: center;
    }
    
    .tips-content[b-pojoq6yfsn] {
        flex-direction: column;
        text-align: center;
        align-items: center;
    }
    
    .btn-tips[b-pojoq6yfsn] {
        width: 100%;
    }
    
    .card-header[b-pojoq6yfsn] {
        flex-wrap: wrap;
    }
    
    .card-header-actions[b-pojoq6yfsn] {
        width: 100%;
        flex-wrap: wrap;
    }
    
    .search-box[b-pojoq6yfsn] {
        flex: 1;
        min-width: 150px;
    }
    
    .search-box input[b-pojoq6yfsn] {
        width: 100%;
    }
    
    .card-header-actions .form-select[b-pojoq6yfsn] {
        flex: 1;
        min-width: 120px;
    }
}

/* ========================================
   Skeleton Loading State
   ======================================== */

@keyframes agent-dash-skel-pulse-b-pojoq6yfsn {
    0% { opacity: 1; }
    50% { opacity: 0.5; }
    100% { opacity: 1; }
}

.skel-block[b-pojoq6yfsn] {
    background: linear-gradient(90deg, #e5e7eb 25%, #f3f4f6 50%, #e5e7eb 75%);
    background-size: 200% 100%;
    animation: agent-dash-skel-pulse-b-pojoq6yfsn 1.5s ease-in-out infinite;
    border-radius: 6px;
}

.skel-header[b-pojoq6yfsn] {
    background: white;
    padding: 24px;
    border-radius: 16px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-light);
    margin-bottom: 24px;
}

.skel-tabs[b-pojoq6yfsn] {
    display: flex;
    gap: 4px;
    background: white;
    padding: 6px;
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-light);
    margin-bottom: 24px;
}

.skel-tab[b-pojoq6yfsn] {
    border-radius: 8px;
}

.skel-stats-row[b-pojoq6yfsn] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 24px;
}

.skel-stat-card[b-pojoq6yfsn] {
    background: white;
    border-radius: 16px;
    padding: 20px 24px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-light);
    display: flex;
    flex-direction: column;
}

.skel-content-grid[b-pojoq6yfsn] {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 24px;
}

.skel-card[b-pojoq6yfsn] {
    background: white;
    border-radius: 16px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-light);
    overflow: hidden;
}

.skel-card-header[b-pojoq6yfsn] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 24px;
    border-bottom: 1px solid var(--border-light);
}

.skel-card-body[b-pojoq6yfsn] {
    padding: 24px;
}

@media (max-width: 1024px) {
    .skel-content-grid[b-pojoq6yfsn] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1200px) {
    .skel-stats-row[b-pojoq6yfsn] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .skel-stats-row[b-pojoq6yfsn] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Agent/BankDetailsPage.razor.rz.scp.css */
/* ========================================
   Bank Details Page - Styles
   Extends Agent Dashboard base styles
   ======================================== */

.bank-details-page[b-38woct9lgs] {
    padding: 0;
    max-width: 100%;
    margin: 0;
}

/* Loading State */
.loading-container[b-38woct9lgs] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
}

.loading-text[b-38woct9lgs] {
    color: var(--text-muted);
    font-size: 0.875rem;
    margin: 0;
}

/* ========================================
   Page Header
   ======================================== */

.page-header[b-38woct9lgs] {
    background: white;
    padding: 20px 24px 24px;
    border-radius: 16px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-light);
    margin-bottom: 24px;
}

.header-nav[b-38woct9lgs] {
    margin-bottom: 16px;
}

.btn-back[b-38woct9lgs] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 0;
    color: var(--text-secondary);
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
}

.btn-back:hover[b-38woct9lgs] {
    color: var(--brand-600);
    text-decoration: none;
}

.header-content[b-38woct9lgs] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap;
}

.bank-header-info[b-38woct9lgs] {
    display: flex;
    align-items: center;
    gap: 20px;
}

.bank-avatar-xl[b-38woct9lgs] {
    width: 64px;
    height: 64px;
    font-size: 1.25rem;
}

.bank-avatar[b-38woct9lgs] {
    border-radius: 14px;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-600) 100%);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    flex-shrink: 0;
}

.bank-title-section[b-38woct9lgs] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.page-title[b-38woct9lgs] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
    letter-spacing: -0.02em;
}

.bank-code[b-38woct9lgs] {
    font-size: 0.875rem;
    color: var(--text-muted);
    font-weight: 500;
}

.header-actions[b-38woct9lgs] {
    display: flex;
    align-items: center;
    gap: 12px;
}

/* ========================================
   Stats Row (Reused from Dashboard)
   ======================================== */

.stats-row[b-38woct9lgs] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 24px;
}

@media (max-width: 1200px) {
    .stats-row[b-38woct9lgs] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .stats-row[b-38woct9lgs] {
        grid-template-columns: 1fr;
    }
}

/* Stat Cards */
.stat-card[b-38woct9lgs] {
    background: white;
    border-radius: 16px;
    padding: 20px 24px;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-light);
    transition: all 0.2s ease;
}

.stat-card:hover[b-38woct9lgs] {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.stat-card-primary[b-38woct9lgs] {
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-700) 100%);
    border: none;
}

.stat-card-primary .stat-card-title[b-38woct9lgs],
.stat-card-primary .stat-card-description[b-38woct9lgs] {
    color: rgba(255, 255, 255, 0.9);
}

.stat-card-primary .stat-card-value[b-38woct9lgs] {
    color: white;
}

.stat-card-primary .stat-card-icon[b-38woct9lgs] {
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.stat-card-content[b-38woct9lgs] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.stat-card-title[b-38woct9lgs] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.stat-card-value[b-38woct9lgs] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
}

.stat-card-description[b-38woct9lgs] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.stat-card-icon[b-38woct9lgs] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--neutral-100);
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.stat-icon-success[b-38woct9lgs] {
    background: rgba(34, 197, 94, 0.1);
    color: var(--success-600);
}

.stat-icon-warning[b-38woct9lgs] {
    background: rgba(245, 158, 11, 0.1);
    color: #d97706;
}

/* ========================================
   Dashboard Tabs
   ======================================== */

.dashboard-tabs[b-38woct9lgs] {
    display: flex;
    gap: 4px;
    margin-bottom: 24px;
    background: white;
    padding: 6px;
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-light);
    overflow-x: auto;
}

.tab-btn[b-38woct9lgs] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    background: transparent;
    border: none;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.tab-btn:hover[b-38woct9lgs] {
    background: var(--neutral-100);
    color: var(--text-primary);
}

.tab-btn.active[b-38woct9lgs] {
    background: var(--brand-600);
    color: white;
}

.tab-btn i[b-38woct9lgs] {
    font-size: 1rem;
}

.tab-badge[b-38woct9lgs] {
    background: rgba(255, 255, 255, 0.25);
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 0.75rem;
    font-weight: 600;
}

.tab-btn:not(.active) .tab-badge[b-38woct9lgs] {
    background: var(--neutral-200);
    color: var(--text-secondary);
}

/* ========================================
   Tab Content
   ======================================== */

.tab-content[b-38woct9lgs] {
    animation: fadeIn-b-38woct9lgs 0.2s ease;
}

@keyframes fadeIn-b-38woct9lgs {
    from { opacity: 0; transform: translateY(4px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ========================================
   Dashboard Cards
   ======================================== */

.dashboard-card[b-38woct9lgs] {
    background: white;
    border-radius: 16px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-light);
    overflow: hidden;
}

.card-header[b-38woct9lgs] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 24px;
    border-bottom: 1px solid var(--border-light);
    gap: 16px;
    flex-wrap: wrap;
}

.card-header-left[b-38woct9lgs] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.card-title[b-38woct9lgs] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.card-subtitle[b-38woct9lgs] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.card-header-actions[b-38woct9lgs] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.card-body[b-38woct9lgs] {
    padding: 20px 24px;
}

/* ========================================
   Users Grid
   ======================================== */

.users-grid[b-38woct9lgs] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 20px;
}

.user-card[b-38woct9lgs] {
    background: var(--neutral-50);
    border: 1px solid var(--border-light);
    border-radius: 14px;
    overflow: hidden;
    transition: all 0.2s ease;
}

.user-card:hover[b-38woct9lgs] {
    border-color: var(--brand-200);
    box-shadow: var(--shadow-sm);
}

.user-card-header[b-38woct9lgs] {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 18px 18px 14px;
}

.user-avatar[b-38woct9lgs] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
    font-weight: 700;
    flex-shrink: 0;
}

.user-info[b-38woct9lgs] {
    flex: 1;
    min-width: 0;
}

.user-name[b-38woct9lgs] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 2px 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.user-email[b-38woct9lgs] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.user-role-badge[b-38woct9lgs] {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    background: var(--brand-50);
    color: var(--brand-600);
    font-size: 0.75rem;
    font-weight: 600;
    border-radius: 6px;
    white-space: nowrap;
}

.user-card-stats[b-38woct9lgs] {
    display: flex;
    justify-content: space-around;
    padding: 12px 18px;
    background: white;
    border-top: 1px solid var(--border-light);
    border-bottom: 1px solid var(--border-light);
}

.user-stat[b-38woct9lgs] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.user-stat .stat-value[b-38woct9lgs] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
}

.user-stat .stat-label[b-38woct9lgs] {
    font-size: 0.6875rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.user-card-footer[b-38woct9lgs] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 18px;
    background: white;
}

.user-joined[b-38woct9lgs] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.user-joined i[b-38woct9lgs] {
    font-size: 0.875rem;
}

/* ========================================
   Search Box
   ======================================== */

.search-box[b-38woct9lgs] {
    position: relative;
    display: flex;
    align-items: center;
}

.search-box i[b-38woct9lgs] {
    position: absolute;
    left: 12px;
    color: var(--text-muted);
    font-size: 0.875rem;
}

.search-box input[b-38woct9lgs] {
    padding: 8px 12px 8px 36px;
    font-size: 0.8125rem;
    border: 1px solid var(--border-medium);
    border-radius: 8px;
    background: white;
    min-width: 200px;
    transition: all 0.2s ease;
}

.search-box input:focus[b-38woct9lgs] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.search-box input[b-38woct9lgs]::placeholder {
    color: var(--text-muted);
}

/* ========================================
   Data Table
   ======================================== */

.data-table[b-38woct9lgs] {
    width: 100%;
    border-collapse: collapse;
}

.data-table thead th[b-38woct9lgs] {
    padding: 12px 16px;
    text-align: left;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-light);
}

.data-table tbody td[b-38woct9lgs] {
    padding: 14px 16px;
    font-size: 0.875rem;
    color: var(--text-primary);
    border-bottom: 1px solid var(--border-light);
    vertical-align: middle;
}

.data-table tbody tr:last-child td[b-38woct9lgs] {
    border-bottom: none;
}

.data-table tbody tr:hover[b-38woct9lgs] {
    background: var(--neutral-50);
}

.font-mono[b-38woct9lgs] {
    font-family: var(--font-mono, 'SF Mono', 'Consolas', monospace);
    font-size: 0.8125rem;
}

/* Status Badges */
.status-badge[b-38woct9lgs] {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: capitalize;
}

.status-draft[b-38woct9lgs] {
    background: var(--neutral-100);
    color: var(--text-secondary);
}

.status-submitted[b-38woct9lgs] {
    background: rgba(59, 130, 246, 0.1);
    color: #2563eb;
}

.status-inreview[b-38woct9lgs],
.status-in.review[b-38woct9lgs] {
    background: rgba(245, 158, 11, 0.1);
    color: #d97706;
}

.status-approved[b-38woct9lgs] {
    background: rgba(16, 185, 129, 0.1);
    color: #059669;
}

.status-bound[b-38woct9lgs],
.status-active[b-38woct9lgs] {
    background: rgba(34, 197, 94, 0.1);
    color: var(--success-600);
}

.status-declined[b-38woct9lgs] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-600);
}

.status-pending[b-38woct9lgs] {
    background: rgba(245, 158, 11, 0.1);
    color: #d97706;
}

.status-paid[b-38woct9lgs] {
    background: rgba(34, 197, 94, 0.1);
    color: var(--success-600);
}

/* Icon Button */
.btn-icon-sm[b-38woct9lgs] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: 1px solid var(--border-medium);
    background: white;
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    padding: 0;
}

.btn-icon-sm:hover[b-38woct9lgs] {
    background: var(--brand-50);
    border-color: var(--brand-300);
    color: var(--brand-600);
}

/* Empty State */
.empty-state[b-38woct9lgs] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    text-align: center;
}

.empty-icon[b-38woct9lgs] {
    width: 72px;
    height: 72px;
    border-radius: 18px;
    background: var(--neutral-100);
    color: var(--text-muted);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    margin-bottom: 20px;
}

.empty-text[b-38woct9lgs] {
    font-size: 1.0625rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 6px 0;
}

.empty-subtext[b-38woct9lgs] {
    font-size: 0.875rem;
    color: var(--text-muted);
    max-width: 300px;
}

/* ========================================
   Form Controls
   ======================================== */

.form-select.form-select-sm[b-38woct9lgs] {
    padding: 8px 32px 8px 12px;
    font-size: 0.8125rem;
    font-weight: 500;
    border-radius: 8px;
    border: 1px solid var(--border-medium);
    background-color: white;
    min-width: 140px;
}

.form-select.form-select-sm:focus[b-38woct9lgs] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
    outline: none;
}

/* Button Styles */
.btn.btn-sm[b-38woct9lgs] {
    padding: 6px 12px;
    font-size: 0.8125rem;
    font-weight: 600;
    border-radius: 6px;
}

.btn.btn-outline-primary[b-38woct9lgs] {
    background: white;
    border: 1px solid var(--brand-500);
    color: var(--brand-600);
}

.btn.btn-outline-primary:hover[b-38woct9lgs] {
    background: var(--brand-50);
    border-color: var(--brand-600);
    color: var(--brand-700);
}

/* ========================================
   Responsive Adjustments
   ======================================== */

@media (max-width: 768px) {
    .page-header[b-38woct9lgs] {
        padding: 16px 20px 20px;
    }
    
    .bank-header-info[b-38woct9lgs] {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
    
    .header-content[b-38woct9lgs] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .card-header[b-38woct9lgs] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .card-header-actions[b-38woct9lgs] {
        width: 100%;
    }
    
    .search-box input[b-38woct9lgs] {
        width: 100%;
        min-width: auto;
    }
    
    .users-grid[b-38woct9lgs] {
        grid-template-columns: 1fr;
    }
}

/* /Components/Pages/Applications/ApplicationInvoicePreviewPage.razor.rz.scp.css */
/* ============================================================================
   Application Invoice Preview — scoped document styles (feature 062)

   POSITION, stated so its absence of theme tokens is not read as an oversight:
   the document body is component-scoped CSS and promotes NOTHING into
   wwwroot/leca-theme.css. A printable document is a single-use artefact with
   print-specific colour requirements (print-color-adjust: exact on every filled
   band) and no second consumer; promoting its rules would mint a global family
   for one page. Both existing printable documents in this app already made the
   same call — PremiumEstimatePreviewPage.razor.css (651 lines) and
   InvoicePreviewPage.razor.css (200) contain zero var(--…) references between
   them. The CHROME (the print button, the bi-* icons) uses the theme canon.

   Where the theme has an equivalent token, its VALUE is used literally and the
   token is named in a comment, so the two cannot drift silently. A var(--…) is
   deliberately NOT used inside a printed filled band: a token that fails to
   resolve in a print context yields no colour at all.

   Rules here were COPIED from PremiumEstimatePreviewPage.razor.css, not shared.
   Blazor stamps each component's rules with its own b-* scope attribute, so that
   page's class names are unreachable from this component — an attempt to share
   them produces a page whose rules match nothing, with a completely clean build.

   TRAP: no bare canonical selector (.btn / .card / .badge / .form-control) may
   appear in this file. CSS isolation compiles such a rule to .btn[b-xxxxxxxx],
   which OUTRANKS the theme's canonical .btn for every button in the component,
   silently. Hence the .appinv-* prefix on everything.
   ============================================================================ */

/* ── Skeleton (never flash an empty or $0.00 document) ───────────────────── */

@keyframes appinv-skel-pulse-b-yotd4m6rck {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.appinv-skel-block[b-yotd4m6rck] {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: appinv-skel-pulse-b-yotd4m6rck 1.5s ease-in-out infinite;
    border-radius: 4px;
}

.appinv-skeleton[b-yotd4m6rck] {
    min-height: 60vh;
}

.appinv-skel-action-bar[b-yotd4m6rck] {
    display: flex;
    justify-content: flex-end;
    padding: 12px 32px;
    background: white;
    border-bottom: 1px solid #e2e8f0;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.appinv-skel-document[b-yotd4m6rck] {
    max-width: 800px;
    margin: 32px auto;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.04);
    padding: 48px;
}

.appinv-skel-header[b-yotd4m6rck] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
}

.appinv-skel-meta[b-yotd4m6rck] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px 24px;
}

.appinv-skel-table[b-yotd4m6rck] {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    overflow: hidden;
}

.appinv-skel-table-header[b-yotd4m6rck],
.appinv-skel-row[b-yotd4m6rck],
.appinv-skel-total[b-yotd4m6rck] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 20px;
    border-bottom: 1px solid #f1f5f9;
}

.appinv-skel-table-header[b-yotd4m6rck] {
    background: #f8fafc;
}

.appinv-skel-total[b-yotd4m6rck] {
    border-bottom: none;
    background: #f1f5f9;
}

/* ── Notices (missing invoice / generic not-found) ───────────────────────── */

.appinv-notice-wrap[b-yotd4m6rck] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
    padding: 24px;
}

/* Deliberately NOT `alert alert-*`: this page carries its own chrome on the
   chromeless PrintableLayout, and a bare canonical selector in a scoped sheet
   would shadow the theme. */
.appinv-notice[b-yotd4m6rck] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    max-width: 520px;
    padding: 16px 20px;
    border-radius: 10px;
    font-size: 14px;
    line-height: 1.6;
    background: white;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.04);
}

.appinv-notice i[b-yotd4m6rck] {
    font-size: 16px;
    line-height: 1.5;
    flex-shrink: 0;
}

.appinv-notice-pending[b-yotd4m6rck] {
    border-left: 4px solid #f59e0b;
    color: #78350f;
}

.appinv-notice-error[b-yotd4m6rck] {
    border-left: 4px solid #dc2626;
    color: #7f1d1d;
}

/* ── Action bar (chrome — hidden on print) ──────────────────────────────── */

.appinv-action-bar[b-yotd4m6rck] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 12px 32px;
    background: white;
    border-bottom: 1px solid #e2e8f0;
    position: sticky;
    top: 0;
    z-index: 100;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.appinv-print-group[b-yotd4m6rck] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
}

.appinv-btn-print[b-yotd4m6rck] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    /* theme token --brand-700 (#003760) */
    background: #003760;
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
}

.appinv-btn-print:hover[b-yotd4m6rck] {
    /* theme token --brand-800 (#002540) */
    background: #002540;
}

.appinv-print-hint[b-yotd4m6rck] {
    font-size: 11px;
    color: #94a3b8;
    font-style: italic;
}

/* ── Document shell ─────────────────────────────────────────────────────── */

.appinv-document[b-yotd4m6rck] {
    max-width: 800px;
    margin: 32px auto;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.04);
    padding: 48px;
}

/* ── Header ─────────────────────────────────────────────────────────────── */

.appinv-header[b-yotd4m6rck] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 24px;
    margin-bottom: 20px;
}

.appinv-header-left[b-yotd4m6rck] {
    flex: 1 1 auto;
    min-width: 0;
}

/* lp3_wlogo.jpg is 500x115 (≈4.35:1). This feature is its first consumer in the
   repo, so there is no existing sizing precedent to copy — the height is chosen
   to sit level with the Lloyd's mark opposite it. */
.appinv-brand-logo[b-yotd4m6rck] {
    height: 46px;
    width: auto;
    max-width: 100%;
    display: block;
}

.appinv-header-right[b-yotd4m6rck] {
    flex: 0 0 auto;
    text-align: right;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

/* Lloyds.png is 878x200 (≈4.39:1) — the same mark and height the estimate page
   already uses. */
.appinv-lloyds-logo[b-yotd4m6rck] {
    height: 40px;
    width: auto;
    max-width: 100%;
    margin-bottom: 4px;
}

.appinv-header-rating[b-yotd4m6rck] {
    font-size: 12px;
    color: #64748b;
    margin: 0;
}

/* ── Metadata strip: two rows of three cells, hairline-separated ─────────── */

.appinv-meta[b-yotd4m6rck] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    border-top: 1px solid #e2e8f0;
}

.appinv-meta-cell[b-yotd4m6rck] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 10px 16px 10px 0;
    border-bottom: 1px solid #f1f5f9;
    min-width: 0;
}

.appinv-meta-cell:nth-child(3n)[b-yotd4m6rck] {
    padding-right: 0;
}

.appinv-meta-label[b-yotd4m6rck] {
    font-size: 11px;
    font-weight: 600;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* A long borrower name or property address WRAPS rather than truncating or
   forcing horizontal scroll — no content may be hidden at any width. */
.appinv-meta-value[b-yotd4m6rck] {
    font-size: 14px;
    color: #1e293b;
    font-weight: 500;
    overflow-wrap: break-word;
    word-break: break-word;
}

.appinv-meta-cell-empty[b-yotd4m6rck] {
    border-bottom: 1px solid #f1f5f9;
}

/* The heavier closing rule. Filled, so it needs print-color-adjust below. */
.appinv-teal-divider[b-yotd4m6rck] {
    border: none;
    height: 3px;
    /* theme tokens --brand-700 (#003760) → --brand-400 (#3397C7) */
    background: linear-gradient(90deg, #003760, #3397c7);
    margin: 0 0 26px 0;
    opacity: 1;
}

/* ── Title and subtitle ─────────────────────────────────────────────────── */

.appinv-title[b-yotd4m6rck] {
    font-size: 26px;
    font-weight: 700;
    /* theme token --brand-700 (#003760) */
    color: #003760;
    margin: 0 0 8px 0;
    letter-spacing: -0.01em;
}

.appinv-subtitle[b-yotd4m6rck] {
    font-size: 13.5px;
    line-height: 1.65;
    color: #64748b;
    margin: 0 0 22px 0;
}

/* ── Cost table ─────────────────────────────────────────────────────────── */

.appinv-cost-table[b-yotd4m6rck] {
    border: 1px solid #e2e8f0;
    border-radius: 8px 8px 0 0;
    border-bottom: none;
}

.appinv-cost-header[b-yotd4m6rck] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 11px 20px;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
    border-radius: 8px 8px 0 0;
    font-size: 12px;
    font-weight: 700;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.appinv-cost-header-amount[b-yotd4m6rck] {
    text-align: right;
}

.appinv-cost-row[b-yotd4m6rck] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 13px 20px;
    border-bottom: 1px solid #f1f5f9;
}

.appinv-cost-row:last-of-type[b-yotd4m6rck] {
    border-bottom: none;
}

.appinv-cost-info[b-yotd4m6rck] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.appinv-cost-name[b-yotd4m6rck] {
    font-size: 14.5px;
    font-weight: 600;
    color: #1e293b;
    overflow-wrap: break-word;
}

.appinv-cost-description[b-yotd4m6rck] {
    font-size: 12.5px;
    color: #94a3b8;
    overflow-wrap: break-word;
}

.appinv-cost-amount[b-yotd4m6rck] {
    font-size: 15px;
    font-weight: 700;
    color: #1e293b;
    white-space: nowrap;
    text-align: right;
}

/* A commission deduction is stored NEGATIVE and must visibly reduce the total. */
.appinv-cost-amount-credit[b-yotd4m6rck] {
    color: #047857; /* theme token --success-700 */
}

/* ── Total band (filled — print-color-adjust is load-bearing) ────────────── */

.appinv-total-band[b-yotd4m6rck] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 16px 20px;
    /* theme token --brand-700 (#003760); literal value, not var(), because a
       token that fails to resolve in a print context yields no colour at all. */
    background: #003760;
    border-radius: 0 0 8px 8px;
    margin-bottom: 24px;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

.appinv-total-band-draft[b-yotd4m6rck] {
    /* theme token --brand-800 (#002540) — muted so a Draft's band reads as
       provisional, without changing the layout. This is now the ONLY visual
       difference between a Draft and an issued bill: the amber draft banner
       that used to accompany it was removed on 2026-08-13 at Dennis's request. */
    background: #002540;
}

.appinv-total-label[b-yotd4m6rck] {
    font-size: 15px;
    font-weight: 700;
    color: white;
}

.appinv-total-amount[b-yotd4m6rck] {
    font-size: 24px;
    font-weight: 700;
    color: white;
    white-space: nowrap;
}

/* ── Billing panel ──────────────────────────────────────────────────────── */

.appinv-billing-panel[b-yotd4m6rck] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 16px 20px;
    margin-bottom: 22px;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

.appinv-billing-heading[b-yotd4m6rck] {
    font-size: 15px;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 6px 0;
}

.appinv-billing-intro[b-yotd4m6rck] {
    font-size: 13px;
    color: #475569;
    margin: 0 0 10px 0;
    line-height: 1.6;
}

.appinv-billing-contacts[b-yotd4m6rck] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 28px;
}

.appinv-billing-contact[b-yotd4m6rck] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 600;
    /* theme token --brand-700 (#003760) */
    color: #003760;
    overflow-wrap: anywhere;
}

.appinv-billing-note[b-yotd4m6rck] {
    font-size: 11.5px;
    color: #94a3b8;
    margin: 10px 0 0 0;
    line-height: 1.6;
}

/* ── Payment terms ──────────────────────────────────────────────────────── */

.appinv-terms[b-yotd4m6rck] {
    margin-bottom: 24px;
}

.appinv-terms-title[b-yotd4m6rck] {
    font-size: 15px;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 8px 0;
    padding-bottom: 8px;
    border-bottom: 1px solid #e2e8f0;
}

.appinv-terms-list[b-yotd4m6rck] {
    list-style: disc;
    padding-left: 20px;
    margin: 0;
}

.appinv-terms-list li[b-yotd4m6rck] {
    font-size: 12.5px;
    line-height: 1.7;
    color: #64748b;
    margin-bottom: 5px;
    overflow-wrap: break-word;
}

/* ── Footer ─────────────────────────────────────────────────────────────── */

.appinv-footer[b-yotd4m6rck] {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding-top: 18px;
    border-top: 1px solid #e2e8f0;
}

.appinv-footer-left[b-yotd4m6rck],
.appinv-footer-right[b-yotd4m6rck] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.appinv-footer-right[b-yotd4m6rck] {
    text-align: right;
}

.appinv-footer-company[b-yotd4m6rck] {
    font-size: 12px;
    font-weight: 600;
    /* theme token --brand-700 (#003760) */
    color: #003760;
}

.appinv-footer-ref[b-yotd4m6rck] {
    font-size: 12px;
    font-weight: 500;
    color: #475569;
}

.appinv-footer-detail[b-yotd4m6rck] {
    font-size: 11px;
    color: #94a3b8;
}

/* ============================================================================
   Print — one page at the browser's default (100%) scale, Letter and A4
   ============================================================================ */

@page {
    margin: 8mm 10mm 8mm 10mm;
    size: auto;
}

@media print {
    .no-print[b-yotd4m6rck] {
        display: none !important;
    }

    .appinv-document[b-yotd4m6rck] {
        margin: 0;
        padding: 10px 28px;
        box-shadow: none;
        border-radius: 0;
        max-width: 100%;
    }

    /* EVERY filled band must force its fill, or the navy total bar, the grey
       cost header, the grey billing panel and the gradient rule all print white. */
    .appinv-total-band[b-yotd4m6rck],
    .appinv-cost-header[b-yotd4m6rck],
    .appinv-billing-panel[b-yotd4m6rck],
    .appinv-teal-divider[b-yotd4m6rck] {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .appinv-cost-table[b-yotd4m6rck],
    .appinv-cost-row[b-yotd4m6rck],
    .appinv-total-band[b-yotd4m6rck],
    .appinv-billing-panel[b-yotd4m6rck],
    .appinv-terms[b-yotd4m6rck],
    .appinv-footer[b-yotd4m6rck],
    .appinv-header[b-yotd4m6rck],
    .appinv-meta[b-yotd4m6rck] {
        page-break-inside: avoid;
        break-inside: avoid;
    }

    /* Tighten the vertical rhythm until the document fits one page at 100%. */
    .appinv-header[b-yotd4m6rck] {
        margin-bottom: 12px;
    }

    .appinv-brand-logo[b-yotd4m6rck] {
        height: 38px;
    }

    .appinv-lloyds-logo[b-yotd4m6rck] {
        height: 32px;
    }

    .appinv-header-rating[b-yotd4m6rck] {
        font-size: 11px;
    }

    .appinv-meta-cell[b-yotd4m6rck] {
        padding: 6px 16px 6px 0;
    }

    .appinv-teal-divider[b-yotd4m6rck] {
        margin-bottom: 14px;
    }

    .appinv-title[b-yotd4m6rck] {
        font-size: 22px;
        margin-bottom: 6px;
    }

    .appinv-subtitle[b-yotd4m6rck] {
        font-size: 12.5px;
        line-height: 1.5;
        margin-bottom: 14px;
    }

    .appinv-cost-header[b-yotd4m6rck] {
        padding: 7px 16px;
    }

    .appinv-cost-row[b-yotd4m6rck] {
        padding: 8px 16px;
    }

    .appinv-cost-name[b-yotd4m6rck] {
        font-size: 13.5px;
    }

    .appinv-cost-description[b-yotd4m6rck] {
        font-size: 11.5px;
    }

    .appinv-cost-amount[b-yotd4m6rck] {
        font-size: 14px;
    }

    .appinv-total-band[b-yotd4m6rck] {
        padding: 11px 16px;
        margin-bottom: 14px;
    }

    .appinv-total-label[b-yotd4m6rck] {
        font-size: 14px;
    }

    .appinv-total-amount[b-yotd4m6rck] {
        font-size: 20px;
    }

    .appinv-billing-panel[b-yotd4m6rck] {
        padding: 10px 16px;
        margin-bottom: 12px;
    }

    .appinv-billing-heading[b-yotd4m6rck] {
        font-size: 13.5px;
    }

    .appinv-billing-intro[b-yotd4m6rck] {
        font-size: 12px;
        margin-bottom: 6px;
    }

    .appinv-billing-contact[b-yotd4m6rck] {
        font-size: 12px;
    }

    .appinv-billing-note[b-yotd4m6rck] {
        font-size: 11px;
        margin-top: 6px;
    }

    .appinv-terms[b-yotd4m6rck] {
        margin-bottom: 12px;
    }

    .appinv-terms-title[b-yotd4m6rck] {
        font-size: 13.5px;
        margin-bottom: 6px;
        padding-bottom: 6px;
    }

    .appinv-terms-list li[b-yotd4m6rck] {
        font-size: 11.5px;
        line-height: 1.5;
        margin-bottom: 3px;
    }

    .appinv-footer[b-yotd4m6rck] {
        padding-top: 10px;
    }
}

/* ============================================================================
   Responsive — NEW work, not inherited.

   The reference page (PremiumEstimatePreviewPage.razor.css) contains exactly one
   media query and it is @media print: its document is a fixed 800px box with
   48px padding, which at a 375px viewport spends a quarter of the width on
   padding. Copying it would fail the responsive requirement, so these two
   breakpoints are written for this page. Nothing is hidden at any width, and
   there is deliberately no overflow: hidden on the document.
   ============================================================================ */

@media (max-width: 768px) {
    .appinv-action-bar[b-yotd4m6rck] {
        padding: 10px 16px;
    }

    .appinv-document[b-yotd4m6rck],
    .appinv-skel-document[b-yotd4m6rck] {
        margin: 16px 12px;
        padding: 24px;
    }

    /* Stack the two marks, both left-aligned, rather than squeezing them. */
    .appinv-header[b-yotd4m6rck] {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
    }

    .appinv-header-right[b-yotd4m6rck] {
        text-align: left;
        align-items: flex-start;
    }

    .appinv-meta[b-yotd4m6rck],
    .appinv-skel-meta[b-yotd4m6rck] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .appinv-meta-cell:nth-child(3n)[b-yotd4m6rck] {
        padding-right: 16px;
    }

    .appinv-meta-cell:nth-child(2n)[b-yotd4m6rck] {
        padding-right: 0;
    }

    /* An empty third cell in a two-column grid is just a blank row — drop it. */
    .appinv-meta-cell-empty[b-yotd4m6rck] {
        display: none;
    }

    .appinv-title[b-yotd4m6rck] {
        font-size: 22px;
    }
}

@media (max-width: 480px) {
    .appinv-document[b-yotd4m6rck],
    .appinv-skel-document[b-yotd4m6rck] {
        margin: 12px 8px;
        padding: 18px 16px;
    }

    .appinv-meta[b-yotd4m6rck],
    .appinv-skel-meta[b-yotd4m6rck] {
        grid-template-columns: minmax(0, 1fr);
    }

    .appinv-meta-cell[b-yotd4m6rck],
    .appinv-meta-cell:nth-child(2n)[b-yotd4m6rck],
    .appinv-meta-cell:nth-child(3n)[b-yotd4m6rck] {
        padding-right: 0;
    }

    /* Label above amount, both left-aligned, so a long label never squeezes the
       figure into a wrap or off the edge. */
    .appinv-cost-row[b-yotd4m6rck],
    .appinv-total-band[b-yotd4m6rck] {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
    }

    .appinv-cost-amount[b-yotd4m6rck],
    .appinv-total-amount[b-yotd4m6rck] {
        text-align: left;
    }

    .appinv-cost-header-amount[b-yotd4m6rck] {
        text-align: right;
    }

    .appinv-billing-contacts[b-yotd4m6rck] {
        flex-direction: column;
        gap: 6px;
    }

    .appinv-footer[b-yotd4m6rck] {
        flex-direction: column;
        gap: 12px;
    }

    .appinv-footer-right[b-yotd4m6rck] {
        text-align: left;
    }

    .appinv-title[b-yotd4m6rck] {
        font-size: 20px;
    }

    .appinv-total-amount[b-yotd4m6rck] {
        font-size: 21px;
    }
}
/* /Components/Pages/Applications/BorrowerQuestionnaireFlowPage.razor.rz.scp.css */
/* Feature 072 — the bank user's borrower-questionnaire page. Scoped, so nothing here can reach the
   two existing intake pages (FR-001/FR-074). Colours and radii come from the theme tokens in
   wwwroot/leca-theme.css; no new palette is introduced. */

.questionnaire-flow-page[b-3o4y0u8j6e] {
    max-width: 1080px;
    margin: 0 auto;
    padding: 1.5rem 1rem 3rem;
}

/* ------------------------------------------------------------------------------------- header */

/* .page-head, .page-title and .page-subtitle used to be re-declared here. They are not any more:
   .page-title and .page-subtitle are global (wwwroot/css/ipd-dashboard.css:23 and :32) and this page's
   copies drifted from them — the title lost the canon's letter-spacing and took a different grey, and
   the subtitle was 15px against the 14px every other page uses, capped at a 60ch measure nothing else
   in the app uses, which is what made a full-width header band wrap mid-sentence. Deleting them is the
   fix; the markup now uses the global pair plus mb-4/mb-2/me-2 utilities for spacing.

   The brand-coloured title icon stays: it is the shared convention, matching VERAcheckAdminPage and
   EmailQueueDetailsPage token for token. */
.page-title .bi[b-3o4y0u8j6e] {
    color: var(--brand-500);
}

.loading-block[b-3o4y0u8j6e] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 3rem 0;
    color: var(--text-secondary);
}

/* --------------------------------------------------------------------------------- link panel */

.link-panel[b-3o4y0u8j6e] {
    border: 1px solid var(--border-medium);
    border-left-width: 4px;
    border-radius: 10px;
    background: #fff;
    margin-bottom: 1.5rem;
    overflow: hidden;
}

/* One accent per state, so which of the four states a reader is in is legible before they read a
   word of it. Matches the four-state payment-card convention on the application detail page. */
.link-panel-live[b-3o4y0u8j6e] { border-left-color: var(--brand-500); }
.link-panel-expiringsoon[b-3o4y0u8j6e] { border-left-color: var(--warning-500); }
.link-panel-expired[b-3o4y0u8j6e] { border-left-color: var(--error-500); }
.link-panel-submitted[b-3o4y0u8j6e] { border-left-color: var(--success-500); }

.link-panel-head[b-3o4y0u8j6e] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-light, var(--neutral-200));
    background: var(--neutral-50);
}

.link-panel-status[b-3o4y0u8j6e] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
}

.link-panel-icon[b-3o4y0u8j6e] {
    display: grid;
    place-items: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 8px;
    background: #fff;
    border: 1px solid var(--neutral-200);
    font-size: 1.125rem;
    color: var(--neutral-600);
}

.link-panel-live .link-panel-icon[b-3o4y0u8j6e] { color: var(--brand-600); border-color: var(--brand-100); }
.link-panel-expiringsoon .link-panel-icon[b-3o4y0u8j6e] { color: var(--warning-700); border-color: var(--warning-200); }
.link-panel-expired .link-panel-icon[b-3o4y0u8j6e] { color: var(--error-600); border-color: var(--error-200); }
.link-panel-submitted .link-panel-icon[b-3o4y0u8j6e] { color: var(--success-600); border-color: var(--success-100); }

.link-panel-title[b-3o4y0u8j6e] {
    display: block;
    font-weight: 700;
    color: var(--text-primary);
}

.link-panel-subtitle[b-3o4y0u8j6e] {
    display: block;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.link-panel-meta[b-3o4y0u8j6e] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.link-panel-body[b-3o4y0u8j6e] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1.125rem 1.25rem;
}

.link-actions[b-3o4y0u8j6e] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

/* The revealed URL. A <code> block, never an anchor — a live link invites the bank user to click
   through and consume the borrower's own questionnaire. */
.link-revealed[b-3o4y0u8j6e] {
    display: block;
    width: 100%;
    padding: 0.625rem 0.75rem;
    border: 1px dashed var(--neutral-300);
    border-radius: 6px;
    background: var(--neutral-50);
    color: var(--neutral-800);
    font-size: 0.8125rem;
    word-break: break-all;
}

.link-hint[b-3o4y0u8j6e] {
    margin: 0;
    max-width: 72ch;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* ----------------------------------------------------------------------------- waiting banner */

.waiting-banner[b-3o4y0u8j6e] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    margin-bottom: 1.5rem;
    border: 1px solid var(--warning-200);
    border-radius: 10px;
    background: var(--warning-50);
    /* Body copy in a neutral, and only the title in the warning ramp: this state is "wait", not
       "error", and the theme's warning-900 is red enough to read as a failure. */
    color: var(--neutral-700);
}

.waiting-banner .bi[b-3o4y0u8j6e] {
    font-size: 1.125rem;
    margin-top: 0.125rem;
    color: var(--warning-700);
}

.waiting-banner-title[b-3o4y0u8j6e] {
    font-weight: 700;
    color: var(--warning-800);
}

.waiting-banner-text[b-3o4y0u8j6e] {
    font-size: 0.875rem;
    max-width: 78ch;
}

/* ----------------------------------------------------------------------------------- form cards */

.form-card[b-3o4y0u8j6e] {
    padding: 1.25rem 1.25rem 1.5rem;
    margin-bottom: 1.25rem;
    border: 1px solid var(--border-medium);
    border-radius: 10px;
    background: #fff;
}

.form-card-head[b-3o4y0u8j6e] {
    margin-bottom: 1.25rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid var(--neutral-200);
}

.form-card-title[b-3o4y0u8j6e] {
    margin: 0;
    font-size: 1.0625rem;
    font-weight: 700;
    color: var(--text-primary);
}

.form-card-subtitle[b-3o4y0u8j6e] {
    margin: 0.25rem 0 0;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.assumed-note[b-3o4y0u8j6e] {
    margin: 0;
    padding: 0.5rem 0.75rem;
    border-radius: 6px;
    background: var(--info-50);
    color: var(--info-900);
    font-size: 0.8125rem;
}

/* --------------------------------------------------------------------------------- page actions */

.page-actions[b-3o4y0u8j6e] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    padding-top: 0.5rem;
}

.page-actions-note[b-3o4y0u8j6e] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-actions-buttons[b-3o4y0u8j6e] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}
/* /Components/Pages/Applications/Components/ApplicationStatusHeader.razor.rz.scp.css */
/* Application Status Header - Compact & Noticeable Design */
.application-status-header[b-2o26za44gy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 12px;
    margin-bottom: 12px;
    border-bottom: 2px solid #E5E7EB;
}

.status-badge[b-2o26za44gy] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.status-badge i[b-2o26za44gy] {
    font-size: 13px;
}

.app-number-display[b-2o26za44gy] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.app-number-text[b-2o26za44gy] {
    font-size: 12px;
    font-weight: 700;
    color: #374151;
    font-family: 'Courier New', monospace;
    letter-spacing: -0.3px;
    background-color: #F9FAFB;
    padding: 4px 10px;
    border-radius: 6px;
    border: 1px solid #E5E7EB;
}

/* Status Badge Color Variants */
.status-draft[b-2o26za44gy] {
    background-color: #6B7280;
    color: #FFFFFF;
}

.status-submitted[b-2o26za44gy] {
    background-color: #3B82F6;
    color: #FFFFFF;
}

.status-in-review[b-2o26za44gy] {
    background-color: #F59E0B;
    color: #FFFFFF;
}

.status-awaiting-info[b-2o26za44gy] {
    background-color: #F97316;
    color: #FFFFFF;
}

.status-approved[b-2o26za44gy] {
    background-color: #10B981;
    color: #FFFFFF;
}

.status-declined[b-2o26za44gy] {
    background-color: #EF4444;
    color: #FFFFFF;
}

.status-bound[b-2o26za44gy] {
    background-color: #8B5CF6;
    color: #FFFFFF;
}

.status-cancelled[b-2o26za44gy] {
    background-color: #9CA3AF;
    color: #FFFFFF;
}

.status-referral[b-2o26za44gy]{
    background-color: #6366F1;
    color: #FFFFFF;
}

/* Feature 072 — AwaitingBorrower ("Waiting for Borrower"). */
.status-awaiting-borrower[b-2o26za44gy] {
    background-color: #0D9488;
    color: #FFFFFF;
}

.status-unknown[b-2o26za44gy] {
    background-color: #F59E0B;
    color: #FFFFFF;
}

@media (max-width: 576px) {
    .application-status-header[b-2o26za44gy] {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
        padding-bottom: 10px;
        margin-bottom: 10px;
    }

    .app-number-text[b-2o26za44gy] {
        font-size: 11px;
        padding: 3px 8px;
    }
}
/* /Components/Pages/Applications/Components/CoverageEligibilityReview.razor.rz.scp.css */
.eligibility-conditions-card[b-lwmaaisam5] {
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    background: #fff;
    overflow: hidden;
}

.eligibility-conditions-header[b-lwmaaisam5] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding: 16px 20px;
    background: #f8fafc;
    border-bottom: 1px solid #e5e7eb;
}

.eligibility-conditions-icon i[b-lwmaaisam5] {
    color: #e11d48;
    font-size: 22px;
}

.eligibility-conditions-title[b-lwmaaisam5] {
    color: #be123c;
    font-weight: 700;
    font-size: 1rem;
    margin: 0 0 2px;
}

.eligibility-conditions-subtitle[b-lwmaaisam5] {
    color: #6b7280;
    font-size: 0.8125rem;
    margin: 0;
}

.eligibility-condition-item + .eligibility-condition-item[b-lwmaaisam5] {
    border-top: 1px solid #f1f5f9;
}

.eligibility-condition-toggle[b-lwmaaisam5] {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 14px 20px;
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
}

.eligibility-condition-toggle:hover[b-lwmaaisam5] {
    background: #f8fafc;
}

.condition-icon[b-lwmaaisam5] {
    font-size: 16px;
    color: #334155;
}

.condition-title[b-lwmaaisam5] {
    flex: 1;
    font-weight: 600;
    font-size: 0.9rem;
    color: #111827;
}

.condition-view-details[b-lwmaaisam5] {
    color: #2563eb;
    font-size: 0.8125rem;
    font-weight: 500;
    white-space: nowrap;
}

.eligibility-condition-details[b-lwmaaisam5] {
    padding: 0 20px 16px 48px;
    color: #475569;
    font-size: 0.875rem;
    line-height: 1.6;
}

.condition-description[b-lwmaaisam5] {
    margin: 0;
}

/* Structured callout box below a condition's description */
.condition-callout[b-lwmaaisam5] {
    margin-top: 12px;
    border-radius: 8px;
    padding: 12px 16px;
    border: 1px solid #e5e7eb;
    background: #fff;
}

.callout-title[b-lwmaaisam5] {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #475569;
    margin-bottom: 6px;
}

.callout-items[b-lwmaaisam5] {
    margin: 0;
    padding-left: 18px;
}

.callout-items li[b-lwmaaisam5] {
    margin-bottom: 4px;
}

.callout-items li:last-child[b-lwmaaisam5] {
    margin-bottom: 0;
}

.callout-text[b-lwmaaisam5] {
    margin: 0;
}

.callout-footer[b-lwmaaisam5] {
    margin: 10px 0 0;
    font-weight: 600;
}

/* Warning (amber) — e.g. storage-tank exception criteria */
.condition-callout.callout-warning[b-lwmaaisam5] {
    background: #fffbeb;
    border-color: #fde68a;
}

.condition-callout.callout-warning .callout-title[b-lwmaaisam5] {
    color: #92400e;
}

.condition-callout.callout-warning .callout-footer[b-lwmaaisam5] {
    color: #b45309;
}

/* Info (blue) — e.g. regulatory definition */
.condition-callout.callout-info[b-lwmaaisam5] {
    background: #eff6ff;
    border-color: #bfdbfe;
}

.condition-callout.callout-info .callout-title[b-lwmaaisam5] {
    color: #1d4ed8;
}

.eligibility-agreement-card[b-lwmaaisam5] {
    margin-top: 16px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    background: #fff;
    padding: 18px 20px;
}

.eligibility-agreement-text h5[b-lwmaaisam5] {
    font-weight: 700;
    font-size: 0.95rem;
    margin-bottom: 4px;
}

.eligibility-agreement-text p[b-lwmaaisam5] {
    color: #1e3a5f;
    font-size: 0.875rem;
    margin-bottom: 14px;
}

.eligibility-agreement-options[b-lwmaaisam5] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.eligibility-option[b-lwmaaisam5] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 12px 14px;
    cursor: pointer;
    transition: border-color 0.15s ease, background-color 0.15s ease;
    margin: 0;
}

.eligibility-option:hover[b-lwmaaisam5] {
    border-color: #94a3b8;
}

.eligibility-option.selected-yes[b-lwmaaisam5] {
    border-color: #16a34a;
    background: #f0fdf4;
}

.eligibility-option.selected-no[b-lwmaaisam5] {
    border-color: #d97706;
    background: #fffbeb;
}

.eligibility-option input[type="radio"][b-lwmaaisam5] {
    margin-top: 3px;
}

.eligibility-option-content[b-lwmaaisam5] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.eligibility-option-label[b-lwmaaisam5] {
    font-weight: 600;
    font-size: 0.9rem;
    color: #111827;
}

.eligibility-option.selected-yes .eligibility-option-label[b-lwmaaisam5] {
    color: #15803d;
}

.eligibility-option.selected-no .eligibility-option-label[b-lwmaaisam5] {
    color: #b45309;
}

.eligibility-option-desc[b-lwmaaisam5] {
    color: #6b7280;
    font-size: 0.8125rem;
}
/* /Components/Pages/Applications/Components/DocumentUploadArea.razor.rz.scp.css */
/* Upload Section */
.upload-section[b-5x85yx5aor] {
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 16px;
    margin-top: 16px;
    transition: all 0.3s ease;
}

/* Required upload section styling */
.upload-section.required-upload[b-5x85yx5aor] {
    background: #FFFBEB;
    border: 2px solid #FCD34D;
    border-left: 4px solid #F59E0B;
}

.upload-required-notice[b-5x85yx5aor] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    margin-bottom: 12px;
    background: #FEF3C7;
    border: 1px solid #FCD34D;
    border-radius: 6px;
    color: #92400E;
    font-size: 13px;
    font-weight: 500;
}

.upload-required-notice i[b-5x85yx5aor] {
    font-size: 16px;
    color: #F59E0B;
    flex-shrink: 0;
}

.required-upload .upload-area[b-5x85yx5aor] {
    border-color: #FCD34D;
    background: #FFFBEB;
}

.required-upload .upload-area:hover[b-5x85yx5aor] {
    border-color: #F59E0B;
    background: #FEF3C7;
}

.upload-header[b-5x85yx5aor] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    color: var(--brand-500);
}

.required-upload .upload-header[b-5x85yx5aor] {
    color: #92400E;
}

.upload-header i[b-5x85yx5aor] {
    font-size: 20px;
}

.upload-title[b-5x85yx5aor] {
    font-size: 14px;
    font-weight: 600;
}

.upload-area[b-5x85yx5aor] {
    position: relative;
    border: 2px dashed #D1D5DB;
    border-radius: 8px;
    padding: 32px 24px;
    text-align: center;
    background: white;
    cursor: pointer;
    transition: all 0.2s ease;
}

.upload-area:hover[b-5x85yx5aor] {
    border-color: var(--brand-500);
    background: #F0F9FF;
}

.upload-prompt[b-5x85yx5aor] {
    display: block;
    cursor: pointer;
}

.upload-icon[b-5x85yx5aor] {
    font-size: 48px;
    color: #60A5FA;
    margin-bottom: 8px;
}

.upload-text[b-5x85yx5aor] {
    font-size: 14px;
    font-weight: 500;
    color: #374151;
    margin: 0 0 4px 0;
}

.upload-hint[b-5x85yx5aor] {
    font-size: 12px;
    color: #6B7280;
    margin: 0;
}

.uploaded-files[b-5x85yx5aor] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.uploaded-file-item[b-5x85yx5aor] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
}

.uploaded-file-item i[b-5x85yx5aor] {
    font-size: 18px;
}

.file-name[b-5x85yx5aor] {
    flex: 1;
    font-size: 13px;
    color: #374151;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.btn-remove-file[b-5x85yx5aor] {
    background: none;
    border: none;
    color: #EF4444;
    cursor: pointer;
    padding: 4px;
    display: flex;
    align-items: center;
    transition: color 0.2s ease;
}

.btn-remove-file:hover[b-5x85yx5aor] {
    color: var(--error-600);
}

.btn-remove-file i[b-5x85yx5aor] {
    font-size: 16px;
}

.btn-remove-file:disabled[b-5x85yx5aor] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Required indicator */
.required[b-5x85yx5aor] {
    color: var(--error-600);
    font-weight: 600;
}
/* /Components/Pages/Applications/Components/PremiumBreakdownCard.razor.rz.scp.css */
/* Premium Card — Modern Clean Design */
.premium-card[b-4j9i4q89e0] {
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 16px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.04);
}

/* Header */
.premium-card-header[b-4j9i4q89e0] {
    margin-bottom: 16px;
}

.premium-card-header h3[b-4j9i4q89e0] {
    font-size: 20px;
    font-weight: 700;
    color: #111827;
    margin: 0 0 4px 0;
}

.premium-card-date[b-4j9i4q89e0] {
    font-size: 12px;
    color: #9CA3AF;
}

/* Line Items */
.premium-line-items[b-4j9i4q89e0] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 12px;
}

.line-item[b-4j9i4q89e0] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 8px 10px;
    border-radius: 6px;
    background: #F9FAFB;
}

.line-item-left[b-4j9i4q89e0] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.line-item-label[b-4j9i4q89e0] {
    font-size: 14px;
    font-weight: 500;
    color: #374151;
}

.line-item-sub[b-4j9i4q89e0] {
    font-size: 11px;
    color: #9CA3AF;
}

.line-item-value[b-4j9i4q89e0] {
    font-size: 14px;
    font-weight: 600;
    color: #111827;
    white-space: nowrap;
}

/* Borrower Pays Highlight */
.line-item.borrower-pays[b-4j9i4q89e0] {
    background: #FFF7ED;
    border: 1px dashed #FBBF24;
}

.line-item.borrower-pays .line-item-value[b-4j9i4q89e0] {
    color: #9CA3AF;
    text-decoration: line-through;
}

.badge-borrower-pays[b-4j9i4q89e0] {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    color: #B45309;
    background: #FDE68A;
    padding: 1px 6px;
    border-radius: 3px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-top: 2px;
    width: fit-content;
}

/* VERAcheck Study Badge */
.badge-veracheck[b-4j9i4q89e0] {
    display: inline-block;
    font-size: 10px;
    font-weight: 600;
    color: #92400E;
    background: #FEF3C7;
    border: 1px solid #FCD34D;
    padding: 2px 8px;
    border-radius: 4px;
    margin-top: 3px;
    width: fit-content;
    letter-spacing: 0.2px;
}

/* Detail Toggle */
.detail-toggle[b-4j9i4q89e0] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    padding: 8px;
    margin-bottom: 8px;
    background: #F3F4F6;
    border: none;
    border-radius: 6px;
    color: #6B7280;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
}

.detail-toggle:hover[b-4j9i4q89e0] {
    background: #E5E7EB;
    color: #374151;
}

.detail-toggle i[b-4j9i4q89e0] {
    font-size: 12px;
    transition: transform 0.2s;
}

/* Detail Panel (Collapsible) */
.detail-panel[b-4j9i4q89e0] {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.detail-panel.expanded[b-4j9i4q89e0] {
    max-height: 600px;
}

.detail-items[b-4j9i4q89e0] {
    padding: 14px;
    background: #F9FAFB;
    border-radius: 8px;
    margin-bottom: 12px;
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.detail-section-title[b-4j9i4q89e0] {
    font-size: 10px;
    font-weight: 700;
    color: #9CA3AF;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    margin-top: 2px;
}

.detail-row[b-4j9i4q89e0] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.detail-label[b-4j9i4q89e0] {
    font-size: 13px;
    color: #6B7280;
}

.detail-sub[b-4j9i4q89e0] {
    font-size: 11px;
    color: #9CA3AF;
    margin-left: 4px;
}

.detail-value[b-4j9i4q89e0] {
    font-size: 13px;
    font-weight: 600;
    color: #374151;
    font-variant-numeric: tabular-nums;
}

.detail-value-bold[b-4j9i4q89e0] {
    font-weight: 700;
    color: #111827;
}

.detail-value-factor[b-4j9i4q89e0] {
    color: #0D6785;
    font-family: 'Outfit', monospace;
}

.detail-divider[b-4j9i4q89e0] {
    height: 1px;
    background: #E5E7EB;
    margin: 4px 0;
}

.detail-subtotal .detail-label[b-4j9i4q89e0] {
    font-weight: 600;
    color: #374151;
}

.detail-subtotal .detail-value[b-4j9i4q89e0] {
    font-weight: 700;
    color: #111827;
}

.detail-highlight[b-4j9i4q89e0] {
    background: #EFF6FF;
    margin: 0 -8px;
    padding: 6px 8px;
    border-radius: 6px;
}

.detail-formula[b-4j9i4q89e0] {
    background: #ECFDF5;
    margin: 0 -8px;
    padding: 8px 8px;
    border-radius: 6px;
}

.detail-formula .detail-value[b-4j9i4q89e0] {
    font-size: 14px;
    font-weight: 700;
    color: #059669;
}

.detail-formula-note[b-4j9i4q89e0] {
    font-size: 11px;
    color: #9CA3AF;
    text-align: right;
    font-family: 'Outfit', monospace;
    font-variant-numeric: tabular-nums;
}

.formula-strike[b-4j9i4q89e0] {
    text-decoration: line-through;
    color: #D1D5DB;
}

.formula-min-tag[b-4j9i4q89e0] {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    margin-left: 4px;
    padding: 1px 6px;
    background: #FEF3C7;
    color: #92400E;
    border-radius: 4px;
    font-size: 9px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    cursor: help;
}

.formula-min-tag i[b-4j9i4q89e0] {
    font-size: 9px;
}

.detail-min-label[b-4j9i4q89e0] {
    text-align: right;
    font-size: 0.65rem;
    color: #92400E;
    font-style: italic;
    margin-top: 2px;
}

.line-item-min-notice[b-4j9i4q89e0] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    margin: -4px 0 4px;
    font-size: 0.68rem;
    color: #92400E;
    font-style: italic;
}

.line-item-min-notice i[b-4j9i4q89e0] {
    font-size: 0.72rem;
    color: #D97706;
    flex-shrink: 0;
}

/* Disclaimer */
.premium-disclaimer[b-4j9i4q89e0] {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    padding: 10px 12px;
    background: #FFFBEB;
    border: 1px solid #FDE68A;
    border-radius: 8px;
    margin-bottom: 12px;
}

.premium-disclaimer i[b-4j9i4q89e0] {
    color: #D97706;
    font-size: 14px;
    flex-shrink: 0;
    margin-top: 1px;
}

.premium-disclaimer p[b-4j9i4q89e0] {
    margin: 0;
    font-size: 12px;
    line-height: 1.5;
    color: #92400E;
}

/* Total Separator */
.premium-total-separator[b-4j9i4q89e0] {
    height: 1px;
    background: #E5E7EB;
    margin: 4px 0 12px 0;
}

/* Total Row */
.premium-total-row[b-4j9i4q89e0] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 16px;
    padding: 0 2px;
}

.premium-total-label[b-4j9i4q89e0] {
    font-size: 15px;
    font-weight: 600;
    color: #374151;
}

.premium-total-amount[b-4j9i4q89e0] {
    font-size: 24px;
    font-weight: 700;
    color: rgb(13, 103, 133);
    font-family: Outfit, sans-serif;
}

/* Download Button */
.btn-download-summary[b-4j9i4q89e0] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    padding: 10px 16px;
    background: rgb(13, 103, 133);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    font-family: Inter, sans-serif;
    cursor: pointer;
    transition: all 0.2s;
    margin-bottom: 12px;
}

.btn-download-summary:hover[b-4j9i4q89e0] {
    background: rgb(10, 82, 106);
    box-shadow: 0 2px 8px rgba(13, 103, 133, 0.3);
}

.btn-download-summary:disabled[b-4j9i4q89e0] {
    background: #9CA3AF;
    cursor: not-allowed;
    box-shadow: none;
}

.btn-download-summary i[b-4j9i4q89e0] {
    font-size: 14px;
}

/* Footer Note */
.premium-footer-note[b-4j9i4q89e0] {
    font-size: 11px;
    color: #9CA3AF;
    text-align: center;
    line-height: 1.5;
    margin: 0 0 14px 0;
}

/* Branding */
.premium-branding[b-4j9i4q89e0] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    padding-top: 12px;
    border-top: 1px solid #F3F4F6;
    margin-bottom: 8px;
}

.branding-logo[b-4j9i4q89e0] {
    height: 36px;
    width: auto;
    object-fit: contain;
}

.branding-detail[b-4j9i4q89e0] {
    font-size: 11px;
    color: #9CA3AF;
}
/* /Components/Pages/Applications/Components/ProgressCard.razor.rz.scp.css */
/* Progress Card - Compact */
.progress-section-card[b-y6s64pibzr] {
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-700) 100%);
    border-radius: 8px;
    padding: 10px 14px;
    margin-bottom: 12px;
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.15);
}

.progress-compact[b-y6s64pibzr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
}

.progress-left[b-y6s64pibzr] {
    display: flex;
    align-items: center;
    gap: 6px;
    color: white;
}

.progress-left i[b-y6s64pibzr] {
    font-size: 14px;
    color: #FCD34D;
}

.progress-title[b-y6s64pibzr] {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.progress-percentage[b-y6s64pibzr] {
    font-size: 14px;
    font-weight: 700;
    color: white;
}

.progress-bar-container[b-y6s64pibzr] {
    margin-bottom: 2px;
}

.progress-bar-track[b-y6s64pibzr] {
    height: 3px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    overflow: hidden;
}

.progress-bar-fill[b-y6s64pibzr] {
    height: 100%;
    background: linear-gradient(90deg, #10B981 0%, #059669 100%);
    border-radius: 20px;
    transition: width 0.5s ease;
}
/* /Components/Pages/Applications/Components/ReferralQuestionnaireForm.razor.rz.scp.css */
/* Scoped styles for the referral questionnaire, copied from
   NewApplicationStraightFormPage.razor.css when the markup was extracted into this
   component (Blazor CSS isolation does not cross component boundaries). Keep visual
   changes in sync with the parent form styles where they overlap. */

@keyframes fadeIn-b-mw129tnaae {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ========================================
   Form Animations
   ======================================== */

/* Step/Section Fade-in Animation */
@keyframes fadeInUp-b-mw129tnaae {
    from {
        opacity: 0;
        transform: translateY(12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Staggered slide in from left */
@keyframes slideInLeft-b-mw129tnaae {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Icon bounce */
@keyframes iconBounce-b-mw129tnaae {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-3px);
    }
}

/* Form Sections */
.form-section[b-mw129tnaae] {
    padding: 20px 24px;
    margin-bottom: 16px;
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.3) 0%, rgba(255, 255, 255, 0.98) 100%);
    border: 1px solid var(--border-light);
    border-radius: 8px;
    scroll-margin-top: 20px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
    animation: fadeInUp-b-mw129tnaae 0.4s ease-out backwards;
}

/* Staggered animation for form sections */
.form-section:nth-child(1)[b-mw129tnaae] { animation-delay: 0s; }

.form-section:nth-child(2)[b-mw129tnaae] { animation-delay: 0.08s; }

.form-section:nth-child(3)[b-mw129tnaae] { animation-delay: 0.16s; }

.form-section:nth-child(4)[b-mw129tnaae] { animation-delay: 0.24s; }

.form-section:nth-child(5)[b-mw129tnaae] { animation-delay: 0.32s; }

.form-section:nth-child(6)[b-mw129tnaae] { animation-delay: 0.40s; }

.form-section:hover[b-mw129tnaae] {
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
    transform: translateY(-1px);
}

.section-header[b-mw129tnaae] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
}

.section-header-icon[b-mw129tnaae] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--brand-50);
    border-radius: 6px;
    flex-shrink: 0;
    transition: transform 0.2s ease, background-color 0.2s ease;
}

.form-section:hover .section-header-icon[b-mw129tnaae] {
    background: var(--brand-100);
    animation: iconBounce-b-mw129tnaae 0.4s ease;
}

.section-header-icon i[b-mw129tnaae] {
    font-size: 18px;
    color: var(--brand-600);
    opacity: 0.7;
    transition: opacity 0.2s ease;
}

.form-section:hover .section-header-icon i[b-mw129tnaae] {
    opacity: 1;
}

.section-header-content[b-mw129tnaae] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.section-title[b-mw129tnaae] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    line-height: 1.3;
}

.section-description[b-mw129tnaae] {
    font-size: 12px;
    color: var(--text-secondary);
    margin: 0;
    font-weight: 400;
    line-height: 1.4;
}

/* Subsection Headers for Referral Questionnaires */
.subsection-header[b-mw129tnaae] {
    margin-top: 32px;
    margin-bottom: 20px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--brand-200);
}

.subsection-header:first-of-type[b-mw129tnaae] {
    margin-top: 0;
}

.subsection-title[b-mw129tnaae] {
    font-size: 15px;
    font-weight: 700;
    color: var(--brand-700);
    margin: 0;
    letter-spacing: -0.01em;
}

.subsection-subtitle[b-mw129tnaae] {
    font-size: 14px;
    font-weight: 600;
    color: var(--brand-600);
    margin: 0;
}

/* Read-only Field Styling */
.read-only-field[b-mw129tnaae] {
    background: #f8f9fa !important;
    border: 1px dashed #dee2e6 !important;
    cursor: not-allowed !important;
    color: var(--text-secondary) !important;
}

.read-only-field:focus[b-mw129tnaae] {
    border-color: #dee2e6 !important;
    box-shadow: none !important;
}

/* Form Layout */
.form-group[b-mw129tnaae] {
    margin-bottom:5px !important;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.form-group.enhanced[b-mw129tnaae] {
    margin-bottom: 24px;
}

.form-label[b-mw129tnaae] {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary);
    display: flex;
    align-items: center;
    gap: 4px;
    line-height: 1.4;
}

.form-label .required[b-mw129tnaae] {
    color: var(--error-600);
    font-weight: 600;
}

/* Input Styling */
.form-input[b-mw129tnaae],
.form-select[b-mw129tnaae],
[b-mw129tnaae] input.form-input,
[b-mw129tnaae] select.form-select,
[b-mw129tnaae] textarea.form-input,
[b-mw129tnaae] input[type="text"].form-input,
[b-mw129tnaae] input[type="number"].form-input,
[b-mw129tnaae] input[type="email"].form-input,
[b-mw129tnaae] input[type="tel"].form-input,
input.form-input[b-mw129tnaae],
select.form-select[b-mw129tnaae],
textarea.form-input[b-mw129tnaae],
input[type="text"].form-input[b-mw129tnaae],
input[type="number"].form-input[b-mw129tnaae],
input[type="email"].form-input[b-mw129tnaae],
input[type="tel"].form-input[b-mw129tnaae] {
    padding: 8px 12px;
    background: white;
    font-size: 14px;
    border: 1px solid var(--border-medium);
    border-radius: 6px;
    color: var(--text-primary);
    font-family: inherit;
    transition: all 0.2s ease;
    width: 100%;
    box-sizing: border-box;
}

/* Textarea specific styling */
textarea.form-input[b-mw129tnaae],
[b-mw129tnaae] textarea.form-input {
    resize: vertical;
    min-height: 80px;
    line-height: 1.5;
}

.form-input:focus[b-mw129tnaae],
.form-select:focus[b-mw129tnaae],
[b-mw129tnaae] input.form-input:focus,
[b-mw129tnaae] select.form-select:focus,
[b-mw129tnaae] textarea.form-input:focus,
input.form-input:focus[b-mw129tnaae],
select.form-select:focus[b-mw129tnaae],
textarea.form-input:focus[b-mw129tnaae] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px var(--brand-100);
}

.form-input[b-mw129tnaae]::placeholder,
[b-mw129tnaae] input.form-input::placeholder,
[b-mw129tnaae] textarea.form-input::placeholder,
input.form-input[b-mw129tnaae]::placeholder,
textarea.form-input[b-mw129tnaae]::placeholder {
    color: var(--text-muted);
}

/* Select dropdown styling */
.form-select[b-mw129tnaae],
[b-mw129tnaae] select.form-select,
select.form-select[b-mw129tnaae] {
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2364748B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 40px;
}

/* Readonly inputs (auto-filled) */
.form-input[readonly][b-mw129tnaae],
[b-mw129tnaae] input.form-input[readonly],
input.form-input[readonly][b-mw129tnaae] {
    background-color: var(--neutral-50);
    color: var(--text-secondary);
    cursor: not-allowed;
    border-color: var(--border-light);
}

.form-input[readonly]:focus[b-mw129tnaae],
[b-mw129tnaae] input.form-input[readonly]:focus,
input.form-input[readonly]:focus[b-mw129tnaae] {
    border-color: var(--border-light);
    box-shadow: none;
}

.form-input.with-prefix[b-mw129tnaae] {
    padding-left: 32px;
}

/* Enhanced Select Dropdown */
.form-select[b-mw129tnaae] {
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2364748B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 40px;
}

/* Validation States */
.form-input.is-invalid[b-mw129tnaae],
.form-input.invalid[b-mw129tnaae],
.form-select.invalid[b-mw129tnaae],
[b-mw129tnaae] input.form-input.is-invalid,
[b-mw129tnaae] input.form-input.invalid,
input.form-input.is-invalid[b-mw129tnaae],
input.form-input.invalid[b-mw129tnaae],
select.form-select.invalid[b-mw129tnaae],
input[type="text"].form-input.is-invalid[b-mw129tnaae],
input[type="text"].form-input.invalid[b-mw129tnaae],
input[type="number"].form-input.is-invalid[b-mw129tnaae],
input[type="number"].form-input.invalid[b-mw129tnaae],
input[type="email"].form-input.is-invalid[b-mw129tnaae],
input[type="email"].form-input.invalid[b-mw129tnaae],
input[type="tel"].form-input.is-invalid[b-mw129tnaae],
input[type="tel"].form-input.invalid[b-mw129tnaae] {
    border-color: var(--error-600) !important;
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.form-input.is-invalid:focus[b-mw129tnaae],
.form-input.invalid:focus[b-mw129tnaae],
.form-select.invalid:focus[b-mw129tnaae],
[b-mw129tnaae] input.form-input.is-invalid:focus,
[b-mw129tnaae] input.form-input.invalid:focus,
input.form-input.is-invalid:focus[b-mw129tnaae],
input.form-input.invalid:focus[b-mw129tnaae],
select.form-select.invalid:focus[b-mw129tnaae] {
    border-color: var(--error-600) !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1) !important;
}

.form-input.valid.modified[b-mw129tnaae],
.form-select.valid.modified[b-mw129tnaae],
input.form-input.valid.modified[b-mw129tnaae],
select.form-select.valid.modified[b-mw129tnaae] {
    border-color: var(--success-600);
}

.form-input.warning[b-mw129tnaae],
.form-select.warning[b-mw129tnaae] {
    border-color: var(--warning-600);
}

.form-input.warning:focus[b-mw129tnaae],
.form-select.warning:focus[b-mw129tnaae] {
    border-color: var(--warning-600);
    box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.1);
}

.form-input.auto-filled[b-mw129tnaae],
input.form-input.auto-filled[b-mw129tnaae] {
    background: #F0FDF4;
    border-color: #86EFAC;
}

.borrower-email-field .form-label[b-mw129tnaae] {
    font-size: 13px;
    font-weight: 600;
    color: #374151;
    margin-bottom: 6px;
}

.radio-group-inline[b-mw129tnaae] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.radio-label[b-mw129tnaae] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    cursor: pointer;
    padding: 8px 10px;
    border-radius: 6px;
    transition: background-color 0.2s ease;
    border: 1px solid var(--border-medium);
    background: white;
}

.radio-label:hover[b-mw129tnaae] {
    background: var(--neutral-50);
    border-color: var(--brand-400);
}

.radio-label input[type="radio"][b-mw129tnaae] {
    margin-top: 2px;
    width: 16px;
    height: 16px;
    cursor: pointer;
    accent-color: var(--brand-600);
    flex-shrink: 0;
}

.radio-label span[b-mw129tnaae] {
    font-size: 13px;
    color: var(--text-secondary);
    line-height: 1.5;
    user-select: none;
}

.radio-label:has(input[type="radio"]:checked)[b-mw129tnaae] {
    background: var(--brand-50);
    border-color: var(--brand-100);
}

.radio-label:has(input[type="radio"]:checked) span[b-mw129tnaae] {
    color: var(--text-primary);
    font-weight: 500;
}

.env-section-title[b-mw129tnaae] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 12px 0;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border-light);
    line-height: 1.4;
}

/* Child Question Section - First Level Nesting */
.child-question-section[b-mw129tnaae] {
    margin-top: 12px;
    margin-left: 20px;
    padding-left: 16px;
    border-left: 2px solid var(--brand-200);
    animation: slideInLeft-b-mw129tnaae 0.35s ease-out;
    background: linear-gradient(to right, rgba(59, 130, 246, 0.02) 0%, transparent 100%);
    border-radius: 0 6px 6px 0;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-right: 12px;
}

/* Child Question */
.child-question[b-mw129tnaae] {
    margin-bottom: 14px;
}

.child-question:last-child[b-mw129tnaae] {
    margin-bottom: 0;
}

/* Child Label with Indicator */
.child-label[b-mw129tnaae] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.child-indicator[b-mw129tnaae] {
    color: var(--brand-500);
    font-size: 14px;
    flex-shrink: 0;
}

/* Grandchild Question Section - Second Level Nesting */
.grandchild-question-section[b-mw129tnaae] {
    margin-top: 16px;
    margin-left: 20px;
    padding-left: 20px;
    border-left: 3px solid var(--brand-300);
    animation: slideInLeft-b-mw129tnaae 0.35s ease-out 0.1s backwards;
    background: linear-gradient(to right, rgba(59, 130, 246, 0.04) 0%, transparent 100%);
    border-radius: 0 8px 8px 0;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-right: 12px;
}

/* Grandchild Question */
.grandchild-question[b-mw129tnaae] {
    margin-bottom: 0;
}

/* Grandchild Label with Indicator */
.grandchild-label[b-mw129tnaae] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.grandchild-indicator[b-mw129tnaae] {
    color: var(--brand-600);
    font-size: 13px;
    flex-shrink: 0;
    margin-left: 4px;
}

/* Great-Grandchild Question Section - Third Level Nesting */
.great-grandchild-question-section[b-mw129tnaae] {
    margin-top: 16px;
    margin-left: 32px;
    padding-left: 24px;
    border-left: 3px solid var(--brand-200);
    animation: slideInLeft-b-mw129tnaae 0.35s ease-out 0.15s backwards;
    background: linear-gradient(to right, rgba(59, 130, 246, 0.02) 0%, transparent 100%);
    border-radius: 0 8px 8px 0;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-right: 12px;
}

/* Great-Grandchild Question */
.great-grandchild-question[b-mw129tnaae] {
    margin-bottom: 16px;
}

.great-grandchild-question:last-child[b-mw129tnaae] {
    margin-bottom: 0;
}

/* Great-Grandchild Label with Indicator */
.great-grandchild-label[b-mw129tnaae] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.great-grandchild-indicator[b-mw129tnaae] {
    color: var(--brand-500);
    font-size: 12px;
    flex-shrink: 0;
    margin-left: 4px;
}

.question-label[b-mw129tnaae] {
    display: block;
    font-size: 13px;
    font-weight: 500;
    color: var(--text-primary);
    margin-bottom: 10px;
    line-height: 1.5;
}

.question-label .required[b-mw129tnaae] {
    color: var(--error-600);
    margin-left: 4px;
}

@media (max-width: 768px) {
    /* Legacy support - Bootstrap grid handles responsive automatically */
    .form-row-2col[b-mw129tnaae],
    .form-row-3col[b-mw129tnaae] {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .form-section[b-mw129tnaae] {
        padding: 20px 16px;
    }

    .loan-basics-section[b-mw129tnaae] {
        padding: 20px 16px;
    }

    .section-header[b-mw129tnaae] {
        gap: 12px;
        margin-bottom: 20px;
    }

    .section-header-icon[b-mw129tnaae] {
        width: 40px;
        height: 40px;
    }

    .section-header-icon i[b-mw129tnaae] {
        font-size: 20px;
    }

    .section-title[b-mw129tnaae] {
        font-size: 18px;
    }

    .section-description[b-mw129tnaae] {
        font-size: 13px;
    }

    .form-group.enhanced[b-mw129tnaae] {
        margin-bottom: 20px;
    }

    .form-actions[b-mw129tnaae] {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .action-buttons-right[b-mw129tnaae] {
        flex-direction: column;
        width: 100%;
    }

    .btn-save-draft[b-mw129tnaae],
    .btn-submit[b-mw129tnaae],
    .btn-cancel[b-mw129tnaae] {
        width: 100%;
        justify-content: center;
    }

    .page-container[b-mw129tnaae] {
        padding: 0 12px;
    }
}

@media (max-width: 480px) {
    .application-title[b-mw129tnaae] {
        font-size: 18px;
    }

    .application-subtitle[b-mw129tnaae] {
        font-size: 12px;
    }

    .section-title[b-mw129tnaae] {
        font-size: 15px;
    }

    .section-header-icon[b-mw129tnaae] {
        width: 32px;
        height: 32px;
    }

    .section-header-icon i[b-mw129tnaae] {
        font-size: 16px;
    }

    .form-label[b-mw129tnaae] {
        font-size: 12px;
    }

    .form-input[b-mw129tnaae] {
        font-size: 14px; /* Prevents zoom on iOS */
        padding: 8px 12px;
    }
    
    .form-section[b-mw129tnaae] {
        padding: 16px 20px;
        margin-bottom: 14px;
    }
}

.review-subsection-title[b-mw129tnaae] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.review-subsection-title[b-mw129tnaae]::before {
    content: '';
    width: 4px;
    height: 16px;
    background: var(--primary-teal);
    border-radius: 2px;
}

.policy-term-child .child-label-bar[b-mw129tnaae] {
    border-left: 3px solid var(--brand-500, #0d6efd);
    padding-left: 12px;
}



/* The wrapping fieldset exists only to disable inputs in ReadOnly mode — no visual chrome. */
.referral-questionnaire[b-mw129tnaae] {
    border: 0;
    margin: 0;
    padding: 0;
    min-width: 0;
}
/* /Components/Pages/Applications/Components/SearchableSelect.razor.rz.scp.css */
/* Searchable Select Component Styles */

.searchable-select-wrapper[b-6r83d2wwf8] {
    position: relative;
    width: 100%;
}

.searchable-select-button[b-6r83d2wwf8] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: left;
    cursor: pointer;
    background: white;
    border: 1px solid var(--border-medium);
    border-radius: 6px;
    padding: 8px 14px;
    font-size: 14px;
    color: var(--text-primary, #1F2937);
    transition: all 0.2s ease;
    min-height: 42px;
    position: relative;
    box-sizing: border-box;
}

.searchable-select-button:hover[b-6r83d2wwf8] {
    border-color: var(--brand-500);
    background: var(--brand-50);
}

.searchable-select-button:focus[b-6r83d2wwf8] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.searchable-select-button.open[b-6r83d2wwf8] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.searchable-select-button.is-invalid[b-6r83d2wwf8] {
    border-color: var(--danger-500);
    background-image: none;
    padding-right: 14px;
}

.searchable-select-button.is-invalid:focus[b-6r83d2wwf8] {
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1);
}

.searchable-select-button .selected-text[b-6r83d2wwf8] {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
}

.searchable-select-button i.bi-chevron-down[b-6r83d2wwf8] {
    margin-left: 8px;
    font-size: 12px;
    transition: transform 0.2s ease;
    color: var(--text-secondary, #6B7280);
    flex-shrink: 0;
    line-height: 1;
}


.searchable-select-button.open i.bi-chevron-down[b-6r83d2wwf8] {
    transform: rotate(180deg);
}

.searchable-select-dropdown[b-6r83d2wwf8] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: white;
    border: 1px solid var(--border-default, #D1D5DB);
    border-radius: 8px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    z-index: 1000;
    max-height: 320px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    animation: searchableSelectSlide-b-6r83d2wwf8 0.2s ease-out;
}

@keyframes searchableSelectSlide-b-6r83d2wwf8 {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.searchable-select-search[b-6r83d2wwf8] {
    width: 100%;
    padding: 10px 14px;
    border: none;
    border-bottom: 1px solid var(--border-light);
    font-size: 14px;
    outline: none;
    flex-shrink: 0;
    box-sizing: border-box;
}

.searchable-select-search:focus[b-6r83d2wwf8] {
    background: var(--brand-50);
    border-bottom-color: var(--brand-500);
}

.searchable-select-search[b-6r83d2wwf8]::placeholder {
    color: var(--text-muted, #9CA3AF);
}

.searchable-select-options[b-6r83d2wwf8] {
    overflow-y: auto;
    max-height: 250px;
    padding: 4px 0;
}

.searchable-select-option[b-6r83d2wwf8] {
    padding: 10px 14px;
    cursor: pointer;
    transition: all 0.15s ease;
    font-size: 14px;
    color: var(--text-primary, #1F2937);
}

.searchable-select-option:hover[b-6r83d2wwf8] {
    background: var(--brand-50);
}

.searchable-select-option.highlighted[b-6r83d2wwf8] {
    background: var(--brand-100);
}

.searchable-select-option.selected[b-6r83d2wwf8] {
    background: var(--brand-500);
    color: white;
    font-weight: 500;
}

.searchable-select-option.selected:hover[b-6r83d2wwf8] {
    background: var(--brand-600);
}

.searchable-select-option.selected.highlighted[b-6r83d2wwf8] {
    background: var(--brand-600);
}

.searchable-select-no-results[b-6r83d2wwf8] {
    padding: 16px 14px;
    text-align: center;
    color: var(--text-muted, #9CA3AF);
    font-size: 14px;
    font-style: italic;
}

/* Validation error state for the form group */
[b-6r83d2wwf8] .validation-error .searchable-select-button {
    border-color: var(--danger-500);
}

/* /Components/Pages/Applications/Components/SectionNavigationCard.razor.rz.scp.css */
/* Section Navigation Card */
.section-navigation[b-khinaispyc] {
    padding-top: 10px;
    margin: 20px 0 0 0;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    background: linear-gradient(180deg, #FFFFFF 0%, #F9FAFB 100%);
}

.section-nav[b-khinaispyc] {
    list-style: none;
}

.section-nav-item[b-khinaispyc] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 13px;
    transition: all 0.2s ease;
    border: 1px solid transparent;
    user-select: none;
}

.section-nav-item:hover[b-khinaispyc] {
    background: #F3F4F6;
    border-color: #E5E7EB;
    transform: translateX(2px);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.section-nav-item:active[b-khinaispyc] {
    transform: translateX(4px);
    background: #E5E7EB;
}

.status-icon[b-khinaispyc] {
    font-size: 16px;
    flex-shrink: 0;
}

.status-icon.valid[b-khinaispyc] {
    color: #10B981;
}

.status-icon.warning[b-khinaispyc] {
    color: #F59E0B;
}

.status-icon.error[b-khinaispyc] {
    color: var(--error-600);
}

.status-icon.incomplete[b-khinaispyc] {
    color: #F59E0B;
}

.section-nav-label[b-khinaispyc] {
    color: #374151;
    flex: 1;
}
/* /Components/Pages/Applications/Components/SemanticPropertyTypeSearch.razor.rz.scp.css */
/* Semantic Property Type Search Component */

.semantic-search-wrapper[b-upexlu6mc2] {
    position: relative;
    width: 100%;
}

/* Search Input */
.semantic-search-input-wrapper[b-upexlu6mc2] {
    position: relative;
}

/* Parent page (NewApplicationStraightFormPage.razor.css) has `::deep
   input[type="text"].form-input { padding: 8px 12px }` which beats a single-
   class selector on specificity and also pierces scoped CSS. We match that
   selector shape here (tag + attr + 2 classes) so our left-inset wins. */
input[type="text"].semantic-search-input.form-input[b-upexlu6mc2],
.semantic-search-input[b-upexlu6mc2] {
    width: 100%;
    /* 38px left padding reserves space for the magnifying-glass icon (or spinner),
       14px right padding is the normal text inset; the parent page's .is-invalid
       rule bumps right padding to make room for the error indicator. */
    padding: 8px 14px 8px 38px;
    border: 1px solid var(--border-medium);
    border-radius: 6px;
    font-size: 14px;
    color: var(--text-primary, #1F2937);
    background: white;
    transition: all 0.2s ease;
    min-height: 42px;
    box-sizing: border-box;
}

.semantic-search-input:hover[b-upexlu6mc2] {
    border-color: var(--brand-500);
    background: var(--brand-50);
}

.semantic-search-input:focus[b-upexlu6mc2] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.semantic-search-input.open[b-upexlu6mc2] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.semantic-search-input.is-invalid[b-upexlu6mc2] {
    border-color: var(--danger-500);
}

.semantic-search-input.is-invalid:focus[b-upexlu6mc2] {
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1);
}

.semantic-search-input[b-upexlu6mc2]::placeholder {
    color: var(--text-muted, #9CA3AF);
}

/* Left-aligned search affordance. The parent page owns the right-aligned
   error indicator (red exclamation) via .form-input.is-invalid, which we
   intentionally leave alone now — the two icons no longer collide. */
.search-icon[b-upexlu6mc2] {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted, #9CA3AF);
    font-size: 16px;
    line-height: 1;
    pointer-events: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.search-spinner[b-upexlu6mc2] {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
}

.search-spinner .spinner-border-sm[b-upexlu6mc2] {
    width: 16px;
    height: 16px;
    border-width: 2px;
    color: var(--brand-500);
}

/* Selected State */
.semantic-search-selected[b-upexlu6mc2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 14px;
    border: 1px solid var(--border-medium);
    border-radius: 6px;
    background: white;
    min-height: 42px;
    box-sizing: border-box;
    transition: all 0.2s ease;
}

.semantic-search-selected:hover[b-upexlu6mc2] {
    border-color: var(--brand-500);
    background: var(--brand-50);
}

.semantic-search-selected.is-invalid[b-upexlu6mc2] {
    border-color: var(--danger-500);
}

.selected-content[b-upexlu6mc2] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    min-width: 0;
}

.selected-tier-name[b-upexlu6mc2] {
    font-size: 14px;
    color: var(--text-primary, #1F2937);
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.btn-clear[b-upexlu6mc2] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--text-muted, #9CA3AF);
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.15s ease;
    flex-shrink: 0;
}

.btn-clear:hover[b-upexlu6mc2] {
    background: var(--danger-50, #FEF2F2);
    color: var(--danger-500, #EF4444);
}

/* Dropdown */
.semantic-search-dropdown[b-upexlu6mc2] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid var(--border-default, #D1D5DB);
    border-top: none;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    /* Stay below the sticky .topbar (z-index: 100 in leca-theme.css) so the
       header covers the dropdown on scroll instead of being pierced by it.
       Still above default form content (which has z-index: auto/0). */
    z-index: 50;
    max-height: 360px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    animation: semanticSearchSlide-b-upexlu6mc2 0.15s ease-out;
}

@keyframes semanticSearchSlide-b-upexlu6mc2 {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.semantic-search-options[b-upexlu6mc2] {
    overflow-y: auto;
    max-height: 280px;
    padding: 4px 0;
    scrollbar-width: thin;
}

.semantic-search-options[b-upexlu6mc2]::-webkit-scrollbar {
    width: 6px;
}

.semantic-search-options[b-upexlu6mc2]::-webkit-scrollbar-track {
    background: transparent;
}

.semantic-search-options[b-upexlu6mc2]::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.15);
    border-radius: 3px;
}

.semantic-search-options[b-upexlu6mc2]::-webkit-scrollbar-thumb:hover {
    background-color: rgba(0, 0, 0, 0.25);
}

/* Tier Group Header */
.tier-group-header[b-upexlu6mc2] {
    padding: 6px 14px 2px;
    display: flex;
    align-items: center;
}

.tier-group-header[b-upexlu6mc2]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--border-light, #E5E7EB);
    margin-left: 8px;
}

/* Options */
.semantic-search-option[b-upexlu6mc2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 14px;
    cursor: pointer;
    transition: all 0.15s ease;
    font-size: 14px;
    color: var(--text-primary, #1F2937);
    gap: 8px;
}

.semantic-search-option:hover[b-upexlu6mc2] {
    background: var(--brand-50);
}

.semantic-search-option.highlighted[b-upexlu6mc2] {
    background: var(--brand-100);
}

.option-content[b-upexlu6mc2] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
    min-width: 0;
}

.option-name[b-upexlu6mc2] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.option-matched-keyword[b-upexlu6mc2] {
    font-size: 12px;
    color: var(--text-muted, #9CA3AF);
    font-style: italic;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Tier Badges */
.tier-badge[b-upexlu6mc2] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 12px;
    white-space: nowrap;
    flex-shrink: 0;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.tier-badge-1[b-upexlu6mc2] {
    background: var(--success-50, #F0FDF4);
    color: var(--success-700, #15803D);
    border: 1px solid var(--success-200, #BBF7D0);
}

.tier-badge-2[b-upexlu6mc2] {
    background: var(--warning-50, #FFFBEB);
    color: var(--warning-700, #A16207);
    border: 1px solid var(--warning-200, #FDE68A);
}

.tier-badge-3[b-upexlu6mc2] {
    background: var(--danger-50, #FEF2F2);
    color: var(--danger-700, #B91C1C);
    border: 1px solid var(--danger-200, #FECACA);
}

.tier-badge-review[b-upexlu6mc2],
.tier-badge-0[b-upexlu6mc2] {
    background: #FFF7ED;
    color: #C2410C;
    border: 1px solid #FED7AA;
}

/* "Other" Divider & Option */
.semantic-search-other-divider[b-upexlu6mc2] {
    height: 1px;
    background: var(--border-light, #E5E7EB);
    margin: 2px 0;
}

.semantic-search-other[b-upexlu6mc2] {
    background: var(--gray-50, #F9FAFB);
    border-top: 1px solid var(--border-light, #E5E7EB);
}

/* Sits inline to the left of the option text. It lives outside .option-content
   (which is flex-column) so the row layout of .semantic-search-option keeps it
   vertically centred beside the label instead of stacking above it. */
.other-option-icon[b-upexlu6mc2] {
    flex-shrink: 0;
    color: var(--text-muted, #9CA3AF);
    font-size: 14px;
    line-height: 1;
}

.semantic-search-other:hover[b-upexlu6mc2] {
    background: #FFF7ED;
}

.semantic-search-other.highlighted[b-upexlu6mc2] {
    background: #FFEDD5;
}

/* Loading & No Results */
.semantic-search-loading[b-upexlu6mc2] {
    padding: 16px 14px;
    text-align: center;
    color: var(--text-muted, #9CA3AF);
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.semantic-search-no-results[b-upexlu6mc2] {
    padding: 16px 14px;
    text-align: center;
    color: var(--text-muted, #9CA3AF);
    font-size: 14px;
    font-style: italic;
}

/* Validation error state */
[b-upexlu6mc2] .validation-error .semantic-search-input {
    border-color: var(--danger-500);
}

[b-upexlu6mc2] .validation-error .semantic-search-selected {
    border-color: var(--danger-500);
}

/* "Other" Text Input */
.other-text-wrapper .form-label[b-upexlu6mc2] {
    font-size: 13px;
    font-weight: 500;
    color: var(--text-secondary, #6B7280);
    margin-bottom: 4px;
}

.other-text-input-wrapper[b-upexlu6mc2] {
    position: relative;
}

.other-text-input[b-upexlu6mc2] {
    width: 100%;
    padding: 8px 36px 8px 14px;
    border: 1px solid var(--border-medium);
    border-radius: 6px;
    font-size: 14px;
    color: var(--text-primary, #1F2937);
    background: #FFFBEB;
    transition: all 0.2s ease;
    min-height: 42px;
    box-sizing: border-box;
}

.other-text-input:hover[b-upexlu6mc2] {
    border-color: var(--warning-400, #FBBF24);
}

.other-text-input:focus[b-upexlu6mc2] {
    outline: none;
    border-color: var(--warning-500, #F59E0B);
    box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.1);
    background: white;
}

.other-text-input.is-invalid[b-upexlu6mc2] {
    border-color: var(--danger-500);
}

.other-text-input.is-invalid:focus[b-upexlu6mc2] {
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1);
}

.other-text-input[b-upexlu6mc2]::placeholder {
    color: var(--text-muted, #9CA3AF);
}

.other-text-icon[b-upexlu6mc2] {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--warning-500, #F59E0B);
    font-size: 14px;
    pointer-events: none;
}

/* /Components/Pages/Applications/Components/StepIndicator.razor.rz.scp.css */
/* Step Indicator */
.step-indicator[b-2c8cwsh33q] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 0;
    position: relative;
}

.step-item[b-2c8cwsh33q] {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    position: relative;
}

.step-node[b-2c8cwsh33q] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 6px;
    transition: all 0.3s ease;
    z-index: 2;
    position: relative;
}

.step-node.future[b-2c8cwsh33q] {
    background: #E5E7EB;
    color: #9CA3AF;
    border: 3px solid #E5E7EB;
}

.step-node.current[b-2c8cwsh33q] {
    background: var(--brand-500);
    color: white;
    border: 3px solid var(--brand-500);
    box-shadow: 0 0 0 4px rgba(15, 23, 42, 0.08);
    animation: pulse-b-2c8cwsh33q 2s infinite;
}

.step-node.completed[b-2c8cwsh33q] {
    background: #10B981;
    color: white;
    border: 3px solid #10B981;
}

.step-node.clickable[b-2c8cwsh33q] {
    cursor: pointer;
}

.step-node.clickable:hover[b-2c8cwsh33q] {
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

@keyframes pulse-b-2c8cwsh33q {
    0%, 100% {
        box-shadow: 0 0 0 4px rgba(15, 23, 42, 0.08);
    }
    50% {
        box-shadow: 0 0 0 8px rgba(15, 23, 42, 0.15);
    }
}

.step-label[b-2c8cwsh33q] {
    text-align: center;
    max-width: 120px;
}

.step-title[b-2c8cwsh33q] {
    font-size: 11px;
    font-weight: 600;
    color: #374151;
    margin-bottom: 2px;
    line-height: 1.2;
}

.step-connector[b-2c8cwsh33q] {
    position: absolute;
    height: 2px;
    background: #E5E7EB;
    top: 18px;
    left: 50%;
    right: -50%;
    z-index: 1;
}

.step-item:last-child .step-connector[b-2c8cwsh33q] {
    display: none;
}

.step-node.completed ~ .step-connector[b-2c8cwsh33q],
.step-item:has(.step-node.completed) + .step-item .step-connector[b-2c8cwsh33q] {
    background: #10B981;
}

.current-step-description[b-2c8cwsh33q] {
    text-align: center;
    padding: 8px 16px;
    background: #F0F9FF;
    border-radius: 6px;
    margin-top: 8px;
}

.current-step-description p[b-2c8cwsh33q] {
    margin: 0;
    font-size: 11px;
    color: var(--brand-500);
    font-weight: 500;
    line-height: 1.3;
}
/* /Components/Pages/Applications/Components/StorageTankGrid.razor.rz.scp.css */
.storage-tank-grid-container[b-sxy2uk7jtf] {
    margin-top: 1.5rem;
}

.tank-grid-header[b-sxy2uk7jtf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
}

.tank-grid-header h4[b-sxy2uk7jtf] {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--color-text-primary);
}

.tank-grid-wrapper[b-sxy2uk7jtf] {
    width: 100%;
    overflow-x: auto;
}

.tank-grid[b-sxy2uk7jtf] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    gap: 1.5rem;
    margin-bottom: 1rem;
}

.tank-card[b-sxy2uk7jtf] {
    background: #fafbfc;
    border: 1px solid #e8eaed;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

.tank-card-header[b-sxy2uk7jtf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    background: #f5f7f9;
    border-bottom: 1px solid #e8eaed;
}

.tank-number[b-sxy2uk7jtf] {
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--color-text-primary);
}

.tank-card-body[b-sxy2uk7jtf] {
    padding: 1rem;
}

.tank-card-body .form-group[b-sxy2uk7jtf] {
    margin-bottom: 1rem;
}

.tank-card-body .form-group:last-child[b-sxy2uk7jtf] {
    margin-bottom: 0;
}

.tank-card-body .form-label[b-sxy2uk7jtf] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--color-text-secondary);
    margin-bottom: 0.375rem;
}

.tank-card-body .form-input[b-sxy2uk7jtf] {
    font-size: 0.875rem;
    padding: 0.5rem 0.75rem;
}

.validation-message[b-sxy2uk7jtf] {
    margin-top: 0.5rem;
    font-size: 0.875rem;
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.read-only-field[b-sxy2uk7jtf] {
    border-radius: 6px !important;
    padding: 8px 12px !important;
    background: #f8f9fa !important;
    border: 1px dashed #dee2e6 !important;
    cursor: not-allowed !important;
    color: var(--text-secondary) !important;
}

.read-only-field:focus[b-sxy2uk7jtf] {
    border-color: #dee2e6 !important;
    box-shadow: none !important;
}

/* Responsive design for mobile */
@media (max-width: 768px) {
    .tank-grid[b-sxy2uk7jtf] {
        grid-template-columns: 1fr;
    }

    .tank-card-body[b-sxy2uk7jtf] {
        padding: 0.75rem;
    }
}

/* Toast styling */
.toast-container[b-sxy2uk7jtf] {
    z-index: 1050;
}

.toast[b-sxy2uk7jtf] {
    min-width: 300px;
}

.toast-header[b-sxy2uk7jtf] {
    background-color: var(--color-surface-secondary);
    border-bottom: 1px solid var(--color-border);
}

.toast-body[b-sxy2uk7jtf] {
    padding: 1rem;
}

/* /Components/Pages/Applications/Components/VERAcheckRecoveryBanner.razor.rz.scp.css */
.veracheck-recovery-banner[b-dcl1if5erl] {
    display: flex;
    gap: 16px;
    padding: 16px 20px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: 12px;
    align-items: center;
    margin: 12px 0;
}

.banner-icon[b-dcl1if5erl] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #fed7aa;
    color: #9a3412;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.banner-body[b-dcl1if5erl] {
    flex: 1;
    min-width: 0;
}

.banner-title[b-dcl1if5erl] {
    font-weight: 600;
    color: #9a3412;
    margin-bottom: 2px;
}

.banner-text[b-dcl1if5erl] {
    font-size: 0.9rem;
    color: #7c2d12;
}

.banner-message[b-dcl1if5erl] {
    margin-top: 8px;
    font-size: 0.85rem;
    padding: 6px 10px;
    border-radius: 6px;
}

.banner-error[b-dcl1if5erl] { background: #fee2e2; color: #991b1b; }
.banner-success[b-dcl1if5erl] { background: #dcfce7; color: #166534; }

.banner-actions[b-dcl1if5erl] {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
}

.banner-btn[b-dcl1if5erl] {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    border-radius: 8px;
    border: 1px solid #ea580c;
    background: #ea580c;
    color: white;
    font-size: 0.9rem;
    cursor: pointer;
    transition: all 0.15s;
}

.banner-btn:hover:not(:disabled)[b-dcl1if5erl] {
    background: #c2410c;
    border-color: #c2410c;
}

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

.banner-btn-secondary[b-dcl1if5erl] {
    background: white;
    color: #9a3412;
    border-color: #fed7aa;
}

.banner-btn-secondary:hover:not(:disabled)[b-dcl1if5erl] {
    background: #ffedd5;
    color: #7c2d12;
    border-color: #fdba74;
}

.veracheck-offline-form[b-dcl1if5erl] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    padding: 16px 20px;
    background: white;
    border: 1px solid #fed7aa;
    border-radius: 12px;
    margin: 0 0 12px 0;
}

/* ::deep — the fields come from the shared OfflineVeracheckFields component, so they do not carry
   this component's scope attribute. The grid supplies the spacing, so the shared margin is dropped. */
.veracheck-offline-form[b-dcl1if5erl]  .offline-field {
    margin-bottom: 0;
}

.veracheck-offline-form .form-actions[b-dcl1if5erl] {
    grid-column: span 2;
    display: flex;
    justify-content: flex-end;
}
/* /Components/Pages/Applications/NewApplicationSimplifiedFormPage.razor.rz.scp.css */
/* Straight Form Application Page Styles */

.main-content[b-azye0xfo32] {
    padding-bottom: 100px;
}

/* Loading Overlay */
.loading-overlay[b-azye0xfo32] {
    position: fixed;
    inset: 0;
    background: rgba(255, 255, 255, 0.9);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2000;
}

.spinner[b-azye0xfo32] {
    width: 50px;
    height: 50px;
    border: 4px solid #E5E7EB;
    border-top-color: var(--brand-500);
    border-radius: 50%;
    animation: spin-b-azye0xfo32 1s linear infinite;
}

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

/* ========================================
   Form Animations
   ======================================== */

/* Step/Section Fade-in Animation */
@keyframes fadeInUp-b-azye0xfo32 {
    from {
        opacity: 0;
        transform: translateY(12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Staggered slide in from left */
@keyframes slideInLeft-b-azye0xfo32 {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Subtle scale in */
@keyframes scaleIn-b-azye0xfo32 {
    from {
        opacity: 0;
        transform: scale(0.97);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Icon bounce */
@keyframes iconBounce-b-azye0xfo32 {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-3px);
    }
}

/* Form Sections */
.form-section[b-azye0xfo32] {
    padding: 20px 24px;
    margin-bottom: 16px;
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.3) 0%, rgba(255, 255, 255, 0.98) 100%);
    border: 1px solid var(--border-light);
    border-radius: 8px;
    scroll-margin-top: 20px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
    animation: fadeInUp-b-azye0xfo32 0.4s ease-out backwards;
}

/* Staggered animation for form sections */
.form-section:nth-child(1)[b-azye0xfo32] { animation-delay: 0s; }
.form-section:nth-child(2)[b-azye0xfo32] { animation-delay: 0.08s; }
.form-section:nth-child(3)[b-azye0xfo32] { animation-delay: 0.16s; }
.form-section:nth-child(4)[b-azye0xfo32] { animation-delay: 0.24s; }
.form-section:nth-child(5)[b-azye0xfo32] { animation-delay: 0.32s; }
.form-section:nth-child(6)[b-azye0xfo32] { animation-delay: 0.40s; }

.form-section:hover[b-azye0xfo32] {
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
    transform: translateY(-1px);
}

/* Each .form-section's transform (animation + hover lift) makes it its own
   stacking context, so an absolutely-positioned overlay inside one section
   (e.g. the Property Type search dropdown) cannot paint above a *later*
   sibling section — the later section's content (its header icon) bleeds
   through the open dropdown. While a field inside the section is focused
   (i.e. its dropdown is open), promote that section above its siblings.
   z-index stays well under the sticky .topbar (z-index: 100) so the header
   still covers the dropdown on scroll. */
.form-section:focus-within[b-azye0xfo32] {
    position: relative;
    z-index: 10;
}

.section-header[b-azye0xfo32] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
}

.section-header-icon[b-azye0xfo32] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--brand-50);
    border-radius: 6px;
    flex-shrink: 0;
    transition: transform 0.2s ease, background-color 0.2s ease;
}

.form-section:hover .section-header-icon[b-azye0xfo32] {
    background: var(--brand-100);
    animation: iconBounce-b-azye0xfo32 0.4s ease;
}

.section-header-icon i[b-azye0xfo32] {
    font-size: 18px;
    color: var(--brand-600);
    opacity: 0.7;
    transition: opacity 0.2s ease;
}

.form-section:hover .section-header-icon i[b-azye0xfo32] {
    opacity: 1;
}

.section-header-content[b-azye0xfo32] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.section-title[b-azye0xfo32] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    line-height: 1.3;
}

.section-description[b-azye0xfo32] {
    font-size: 12px;
    color: var(--text-secondary);
    margin: 0;
    font-weight: 400;
    line-height: 1.4;
}

/* Subsection Headers for Referral Questionnaires */
.subsection-header[b-azye0xfo32] {
    margin-top: 32px;
    margin-bottom: 20px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--brand-200);
}

.subsection-header:first-of-type[b-azye0xfo32] {
    margin-top: 0;
}

.subsection-title[b-azye0xfo32] {
    font-size: 15px;
    font-weight: 700;
    color: var(--brand-700);
    margin: 0;
    letter-spacing: -0.01em;
}

.subsection-subtitle[b-azye0xfo32] {
    font-size: 14px;
    font-weight: 600;
    color: var(--brand-600);
    margin: 0;
}

/* Read-only Field Styling */
.read-only-field[b-azye0xfo32] {
    background: #f8f9fa !important;
    border: 1px dashed #dee2e6 !important;
    cursor: not-allowed !important;
    color: var(--text-secondary) !important;
}

.read-only-field:focus[b-azye0xfo32] {
    border-color: #dee2e6 !important;
    box-shadow: none !important;
}

/* Form Layout */
.form-group[b-azye0xfo32] {
    margin-bottom:5px !important;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.form-group.enhanced[b-azye0xfo32] {
    margin-bottom: 24px;
}

.form-label[b-azye0xfo32] {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary);
    display: flex;
    align-items: center;
    gap: 4px;
    line-height: 1.4;
}

.form-help[b-azye0xfo32] {
    font-size: 12px;
    color: var(--text-muted);
    line-height: 1.4;
}

.form-label .required[b-azye0xfo32] {
    color: var(--error-600);
    font-weight: 600;
}

/* Input Styling */
.form-input[b-azye0xfo32],
.form-select[b-azye0xfo32],
[b-azye0xfo32] input.form-input,
[b-azye0xfo32] select.form-select,
[b-azye0xfo32] textarea.form-input,
[b-azye0xfo32] input[type="text"].form-input,
[b-azye0xfo32] input[type="number"].form-input,
[b-azye0xfo32] input[type="email"].form-input,
[b-azye0xfo32] input[type="tel"].form-input,
input.form-input[b-azye0xfo32],
select.form-select[b-azye0xfo32],
textarea.form-input[b-azye0xfo32],
input[type="text"].form-input[b-azye0xfo32],
input[type="number"].form-input[b-azye0xfo32],
input[type="email"].form-input[b-azye0xfo32],
input[type="tel"].form-input[b-azye0xfo32] {
    padding: 8px 12px;
    background: white;
    font-size: 14px;
    border: 1px solid var(--border-medium);
    border-radius: 6px;
    color: var(--text-primary);
    font-family: inherit;
    transition: all 0.2s ease;
    width: 100%;
    box-sizing: border-box;
}

/* Textarea specific styling */
textarea.form-input[b-azye0xfo32],
[b-azye0xfo32] textarea.form-input {
    resize: vertical;
    min-height: 80px;
    line-height: 1.5;
}

.form-input:focus[b-azye0xfo32],
.form-select:focus[b-azye0xfo32],
[b-azye0xfo32] input.form-input:focus,
[b-azye0xfo32] select.form-select:focus,
[b-azye0xfo32] textarea.form-input:focus,
input.form-input:focus[b-azye0xfo32],
select.form-select:focus[b-azye0xfo32],
textarea.form-input:focus[b-azye0xfo32] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px var(--brand-100);
}

.form-input[b-azye0xfo32]::placeholder,
[b-azye0xfo32] input.form-input::placeholder,
[b-azye0xfo32] textarea.form-input::placeholder,
input.form-input[b-azye0xfo32]::placeholder,
textarea.form-input[b-azye0xfo32]::placeholder {
    color: var(--text-muted);
}

/* Select dropdown styling */
.form-select[b-azye0xfo32],
[b-azye0xfo32] select.form-select,
select.form-select[b-azye0xfo32] {
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2364748B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 40px;
}

/* Readonly inputs (auto-filled) */
.form-input[readonly][b-azye0xfo32],
[b-azye0xfo32] input.form-input[readonly],
input.form-input[readonly][b-azye0xfo32] {
    background-color: var(--neutral-50);
    color: var(--text-secondary);
    cursor: not-allowed;
    border-color: var(--border-light);
}

.form-input[readonly]:focus[b-azye0xfo32],
[b-azye0xfo32] input.form-input[readonly]:focus,
input.form-input[readonly]:focus[b-azye0xfo32] {
    border-color: var(--border-light);
    box-shadow: none;
}

/* Input with Prefix (Currency) */
.input-wrapper[b-azye0xfo32] {
    position: relative;
    display: flex;
    align-items: center;
}

.input-prefix[b-azye0xfo32] {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 15px;
    font-weight: 600;
    color: #6B7280;
    pointer-events: none;
    z-index: 1;
}

.form-input.with-prefix[b-azye0xfo32] {
    padding-left: 32px;
}

/* Enhanced Select Dropdown */
.form-select[b-azye0xfo32] {
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2364748B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 40px;
}

/* Validation States */
.form-input.is-invalid[b-azye0xfo32],
.form-input.invalid[b-azye0xfo32],
.form-select.invalid[b-azye0xfo32],
[b-azye0xfo32] input.form-input.is-invalid,
[b-azye0xfo32] input.form-input.invalid,
input.form-input.is-invalid[b-azye0xfo32],
input.form-input.invalid[b-azye0xfo32],
select.form-select.invalid[b-azye0xfo32],
input[type="text"].form-input.is-invalid[b-azye0xfo32],
input[type="text"].form-input.invalid[b-azye0xfo32],
input[type="number"].form-input.is-invalid[b-azye0xfo32],
input[type="number"].form-input.invalid[b-azye0xfo32],
input[type="email"].form-input.is-invalid[b-azye0xfo32],
input[type="email"].form-input.invalid[b-azye0xfo32],
input[type="tel"].form-input.is-invalid[b-azye0xfo32],
input[type="tel"].form-input.invalid[b-azye0xfo32] {
    border-color: var(--error-600) !important;
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.form-input.is-invalid:focus[b-azye0xfo32],
.form-input.invalid:focus[b-azye0xfo32],
.form-select.invalid:focus[b-azye0xfo32],
[b-azye0xfo32] input.form-input.is-invalid:focus,
[b-azye0xfo32] input.form-input.invalid:focus,
input.form-input.is-invalid:focus[b-azye0xfo32],
input.form-input.invalid:focus[b-azye0xfo32],
select.form-select.invalid:focus[b-azye0xfo32] {
    border-color: var(--error-600) !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1) !important;
}

.form-input.valid.modified[b-azye0xfo32],
.form-select.valid.modified[b-azye0xfo32],
input.form-input.valid.modified[b-azye0xfo32],
select.form-select.valid.modified[b-azye0xfo32] {
    border-color: var(--success-600);
}

/* ValidationMessage Styling */
.validation-message[b-azye0xfo32] {
    color: var(--error-600);
    font-size: 13px;
    margin-top: 4px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.validation-message[b-azye0xfo32]::before {
    content: "?";
    font-size: 14px;
}

/* Validation Summary */
.validation-summary[b-azye0xfo32] {
    margin-bottom: 20px;
    padding: 16px;
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-left: 4px solid var(--error-600);
    border-radius: 6px;
    animation: slideDown-b-azye0xfo32 0.3s ease-out;
}

.validation-summary .alert-heading[b-azye0xfo32] {
    color: #991b1b;
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 8px;
}

.validation-summary ul[b-azye0xfo32] {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}

.validation-summary ul li[b-azye0xfo32] {
    color: #7f1d1d;
    font-size: 14px;
    padding: 4px 0;
    position: relative;
    padding-left: 20px;
}

.validation-summary ul li[b-azye0xfo32]::before {
    content: "�";
    position: absolute;
    left: 6px;
    color: var(--error-600);
    font-weight: bold;
}

.validation-summary i[b-azye0xfo32] {
    color: var(--error-600);
}

@keyframes slideDown-b-azye0xfo32 {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.form-input.warning[b-azye0xfo32],
.form-select.warning[b-azye0xfo32] {
    border-color: var(--warning-600);
}

.form-input.warning:focus[b-azye0xfo32],
.form-select.warning:focus[b-azye0xfo32] {
    border-color: var(--warning-600);
    box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.1);
}

.field-error[b-azye0xfo32] {
    color: var(--error-600);
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.field-error i[b-azye0xfo32] {
    font-size: 14px;
}

.field-warning[b-azye0xfo32] {
    color: var(--warning-600);
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.field-warning i[b-azye0xfo32] {
    font-size: 14px;
}

/* Referral-trigger notice — shown directly under a field whose value will
   route the application outside the LP3 program (loan amount > $10M, LTV
   over 80%, property type that requires manual review, construction loan).
   Visually distinct from .field-error (which is for blocking validation
   errors) and from .field-warning (orange, used for non-routing warnings):
   this is a consequential heads-up that doesn't block the user but tells
   them exactly what will happen on Get Quote. */
.field-referral-notice[b-azye0xfo32] {
    margin-top: 8px;
    padding: 10px 12px;
    background: #fef2f2;            /* soft red-50 wash */
    border: 1px solid #fecaca;      /* red-200 hairline */
    border-left: 3px solid var(--error-600);
    border-radius: 6px;
    color: var(--error-700, #b91c1c);
    font-size: 13px;
    line-height: 1.45;
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.field-referral-notice i[b-azye0xfo32] {
    font-size: 16px;
    flex-shrink: 0;
    margin-top: 1px;
    color: var(--error-600);
}

.field-referral-notice strong[b-azye0xfo32] {
    color: var(--error-700, #b91c1c);
    font-weight: 600;
}

/* Bootstrap 5 Grid Integration
   ======================================
   Using Bootstrap's grid system:
   - .row for containers
   - .col-12 for full width
   - .col-md-6 for 2 columns on medium+ screens
   - .col-lg-4 for 3 columns on large+ screens
   - .g-3, .g-4 for gutters (gaps)
   Bootstrap breakpoints:
   - sm: 576px
   - md: 768px
   - lg: 992px
   - xl: 1200px
   - xxl: 1400px
   ====================================== */

/* Legacy support - deprecated, use Bootstrap classes instead */
.form-row-2col[b-azye0xfo32] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin-bottom: 0;
}

.form-row-3col[b-azye0xfo32] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-bottom: 0;
}

.form-input.auto-filled[b-azye0xfo32],
input.form-input.auto-filled[b-azye0xfo32] {
    background: #F0FDF4;
    border-color: #86EFAC;
}

/* Conditional Sections */
.conditional-section[b-azye0xfo32] {
    animation: fadeIn-b-azye0xfo32 0.3s ease-in;
    padding-left: 20px;
    border-left: 3px solid #E5E7EB;
    margin-left: 10px;
    margin-top: 12px;
}

@keyframes fadeIn-b-azye0xfo32 {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Acknowledgement Section */
.acknowledgement-section[b-azye0xfo32] {
    padding: 20px;
    margin-top: 16px;
    margin-bottom: 20px;
    background: linear-gradient(135deg, #EFF6FF 0%, #DBEAFE 100%);
    border: 1px solid #BFDBFE;
    border-left: 4px solid #3B82F6;
    border-radius: 8px;
    animation: fadeIn-b-azye0xfo32 0.3s ease-in;
}

.acknowledgement-content[b-azye0xfo32] {
    width: 100%;
}

.acknowledgement-text[b-azye0xfo32] {
    font-size: 14px;
    color: #1E3A8A;
    line-height: 1.6;
    margin: 0 0 16px 0;
    font-weight: 500;
}

.acknowledgement-checkbox[b-azye0xfo32] {
    margin-top: 12px;
}

.checkbox-label[b-azye0xfo32] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    cursor: pointer;
    padding: 12px;
    border: 1px solid #BFDBFE;
    border-radius: 6px;
    background: white;
    transition: all 0.2s ease;
}

.checkbox-label:hover[b-azye0xfo32] {
    background: #F0F9FF;
    border-color: #3B82F6;
}

[b-azye0xfo32] .checkbox-input,
.checkbox-input[b-azye0xfo32] {
    margin-top: 2px;
    width: 20px;
    height: 20px;
    cursor: pointer;
    accent-color: #3B82F6;
    flex-shrink: 0;
}

.checkbox-text[b-azye0xfo32] {
    font-size: 14px;
    color: #1E3A8A;
    line-height: 1.5;
    user-select: none;
    font-weight: 500;
}

.checkbox-text .required[b-azye0xfo32] {
    color: var(--error-600);
    margin-left: 2px;
}

.acknowledgement-checkbox .validation-message[b-azye0xfo32] {
    display: block;
    margin-top: 8px;
    margin-left: 44px;
    font-size: 13px;
    color: var(--error-600);
}

/* Warning Acknowledgement Section (for payment agreement) */
.warning-acknowledgement[b-azye0xfo32] {
    background: linear-gradient(135deg, #FEF3C7 0%, #FDE68A 100%);
    border: 1px solid #FCD34D;
    border-left: 4px solid #F59E0B;
}

.warning-acknowledgement .acknowledgement-text[b-azye0xfo32] {
    color: #92400E;
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.warning-acknowledgement .acknowledgement-text i[b-azye0xfo32] {
    font-size: 18px;
    color: #F59E0B;
    flex-shrink: 0;
    margin-top: 2px;
}

.warning-acknowledgement .checkbox-label[b-azye0xfo32] {
    border-color: #FCD34D;
    background: #FFFBEB;
}

.warning-acknowledgement .checkbox-label:hover[b-azye0xfo32] {
    background: #FEF3C7;
    border-color: #F59E0B;
}

.warning-acknowledgement .checkbox-text[b-azye0xfo32] {
    color: #92400E;
}

.warning-acknowledgement[b-azye0xfo32]  .checkbox-input,
.warning-acknowledgement .checkbox-input[b-azye0xfo32] {
    accent-color: #F59E0B;
}

/* Fee Payment Options */
.fee-payment-options[b-azye0xfo32] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 12px;
}

.fee-option[b-azye0xfo32] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 14px;
    border: 1px solid #FCD34D;
    border-radius: 8px;
    background: white;
    cursor: pointer;
    transition: all 0.2s;
}

.fee-option:hover[b-azye0xfo32] {
    background: #FFFBEB;
}

.fee-option.selected[b-azye0xfo32] {
    border-color: #D97706;
    background: #FEF3C7;
}

.fee-option input[type="radio"][b-azye0xfo32] {
    margin-top: 3px;
    accent-color: #D97706;
    flex-shrink: 0;
}

.fee-option-content[b-azye0xfo32] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.fee-option-label[b-azye0xfo32] {
    font-size: 14px;
    font-weight: 600;
    color: #92400E;
}

.fee-option-desc[b-azye0xfo32] {
    font-size: 12px;
    color: #B45309;
}

.borrower-email-field[b-azye0xfo32] {
    margin-top: 12px;
    padding: 12px 14px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
}

.borrower-email-field .form-label[b-azye0xfo32] {
    font-size: 13px;
    font-weight: 600;
    color: #374151;
    margin-bottom: 6px;
}

.borrower-email-field .form-control[b-azye0xfo32] {
    font-size: 14px;
}

/* Fee notice when document is provided */
.fee-notice-section[b-azye0xfo32] {
    margin-top: 16px;
}

.fee-notice-info[b-azye0xfo32] {
    display: flex;
    gap: 10px;
    padding: 12px 16px;
    background: #EFF6FF;
    border: 1px solid #BFDBFE;
    border-radius: 8px;
    font-size: 13px;
    color: #1E40AF;
    line-height: 1.5;
}

.fee-notice-info > i[b-azye0xfo32] {
    flex-shrink: 0;
    font-size: 16px;
    margin-top: 1px;
}

.fee-disclaimer-text[b-azye0xfo32] {
    font-size: 12px;
    color: #3B82F6;
    font-style: italic;
}

/* Radio Buttons */
.radio-group[b-azye0xfo32] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.radio-group-inline[b-azye0xfo32] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.radio-label[b-azye0xfo32] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    cursor: pointer;
    padding: 8px 10px;
    border-radius: 6px;
    transition: background-color 0.2s ease;
    border: 1px solid var(--border-medium);
    background: white;
}

.radio-label:hover[b-azye0xfo32] {
    background: var(--neutral-50);
    border-color: var(--brand-400);
}

.radio-label input[type="radio"][b-azye0xfo32] {
    margin-top: 2px;
    width: 16px;
    height: 16px;
    cursor: pointer;
    accent-color: var(--brand-600);
    flex-shrink: 0;
}

.radio-label span[b-azye0xfo32] {
    font-size: 13px;
    color: var(--text-secondary);
    line-height: 1.5;
    user-select: none;
}

.radio-label:has(input[type="radio"]:checked)[b-azye0xfo32] {
    background: var(--brand-50);
    border-color: var(--brand-100);
}

.radio-label:has(input[type="radio"]:checked) span[b-azye0xfo32] {
    color: var(--text-primary);
    font-weight: 500;
}

/* Form Actions */
.form-actions[b-azye0xfo32] {
    position: sticky;
    bottom: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    background: white;
    border-top: 2px solid #E5E7EB;
    margin-top: 32px;
    z-index: 100;
    box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.08);
}

.action-buttons-right[b-azye0xfo32] {
    display: flex;
    gap: 12px;
}


.close-btn[b-azye0xfo32] {
    padding: 10px 20px;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-weight: 600;
    font-size: 13px;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    line-height: 1.4;
}

.close-btn:hover[b-azye0xfo32] {
    background: #F1F5F9;
    border-color: #E2E8F0;
    color: #0F172A;
}

/* Destructive secondary — quiet danger tint, fills solid red on hover */
.btn-cancel[b-azye0xfo32] {
    padding: 10px 20px;
    background: var(--error-50, #FEF2F2);
    border: 1px solid #FECACA;
    border-radius: 10px;
    color: var(--error-600, #DC2626);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-cancel:hover[b-azye0xfo32] {
    background: var(--error-600, #DC2626);
    border-color: var(--error-600, #DC2626);
    color: #fff;
}

/* Affirmative secondary — brand outline */
.btn-save-draft[b-azye0xfo32] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: #fff;
    border: 1px solid var(--brand-300, #80B7D9);
    border-radius: 10px;
    color: var(--brand-600, #004980);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-save-draft:hover[b-azye0xfo32] {
    background: var(--brand-50, #E6F2F8);
    border-color: var(--brand-600, #004980);
    color: var(--brand-700, #003760);
}

.btn-submit[b-azye0xfo32] {
    padding: 10px 24px;
    background: var(--brand-600, #004980);
    border: none;
    border-radius: 10px;
    color: white;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-submit:hover[b-azye0xfo32] {
    background: var(--brand-700, #003760);
}

.btn-submit:disabled[b-azye0xfo32] {
    background: #9CA3AF;
    color: #E5E7EB;
    cursor: not-allowed;
    box-shadow: none;
    transform: none;
    opacity: 0.6;
}

.btn-submit:disabled:hover[b-azye0xfo32] {
    background: #9CA3AF;
    box-shadow: none;
    transform: none;
}

/* Sidebar */
.sidebar-container[b-azye0xfo32] {
    flex-shrink: 0;
    padding: 0 10px 80px 10px;
    position: sticky;
    top: 80px;
    max-height: calc(100vh - 90px);
    overflow-y: auto;
    overscroll-behavior: contain;
    align-self: flex-start;
    z-index: auto;
}

/* Floating Last Saved Indicator */
.floating-save-indicator[b-azye0xfo32] {
    position: fixed;
    /* Clears the banner + topbar stack. The topbar is sticky at top: 0 with z-index 100
       (leca-theme.css:318-321), but the in-flow EnvironmentBanner sits ABOVE it on every
       non-production deployment (EnvironmentBanner.razor.css), so at scroll-top the
       topbar's bottom edge is ~94px rather than 64px. The old top: 80px therefore landed
       inside the topbar, which painted over the pill (100 > this element's 90) and clipped
       it. 104px = the old 80px plus one --space-lg step, leaving ~10px of clearance below
       the banner + topbar; the banner's height is not exposed as a token, so this is a
       literal on the app's spacing scale. */
    top: 104px;
    right: 20px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 20px;
    padding: 6px 12px 6px 10px;
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    color: #6B7280;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    z-index: 90;
    cursor: help;
    transition: all 0.2s ease;
}

.floating-save-indicator:hover[b-azye0xfo32] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    transform: translateY(-1px);
}

.floating-save-indicator i[b-azye0xfo32] {
    font-size: 14px;
    color: #10B981;
}

.floating-save-indicator i.bi-clock[b-azye0xfo32] {
    color: #9CA3AF;
}

.floating-save-indicator .save-time[b-azye0xfo32] {
    font-weight: 500;
    white-space: nowrap;
}

.floating-save-indicator .draft-id[b-azye0xfo32] {
    font-weight: 600;
    color: #374151;
    white-space: nowrap;
}

.floating-save-indicator .save-toast[b-azye0xfo32] {
    position: absolute;
    top: 2px;
    right: 0;
    background: #10B981;
    color: white;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 4px;
    opacity: 0;
    transform: translateY(5px);
    pointer-events: none;
    transition: opacity 0.3s ease, transform 0.3s ease;
    white-space: nowrap;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.3);
}

.floating-save-indicator .save-toast.show[b-azye0xfo32] {
    opacity: 1;
    transform: translateY(0);
}

.floating-save-indicator .save-toast i[b-azye0xfo32] {
    font-size: 12px;
    color: white;
}

/* Progress Section */
.progress-section[b-azye0xfo32] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 16px 0;
    padding: 12px 16px;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    background: linear-gradient(180deg, #F9FAFB 0%, #FFFFFF 100%);
}

.progress-circle[b-azye0xfo32] {
    margin: 0 auto 12px;
    width: 100px;
    height: 100px;
}

.progress-percentage[b-azye0xfo32] {
    font-size: 24px;
    font-weight: 700;
    fill: var(--brand-500);
}

.progress-label[b-azye0xfo32] {
    font-size: 13px;
    color: #6B7280;
    font-weight: 500;
}

.section-navigation[b-azye0xfo32] {
    padding-top: 10px;
    margin: 20px 0 0 0;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    background: linear-gradient(180deg, #FFFFFF 0%, #F9FAFB 100%);
}

/* New Prominent Progress Card - Compact Version */
.progress-section-card[b-azye0xfo32] {
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-700) 100%);
    border-radius: 8px;
    padding: 10px 14px;
    margin-bottom: 14px;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.2),
                0 2px 6px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
}

.progress-section-card[b-azye0xfo32]::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: linear-gradient(
        45deg,
        transparent 30%,
        rgba(255, 255, 255, 0.1) 50%,
        transparent 70%
    );
    animation: shine-b-azye0xfo32 3s infinite;
}

@keyframes shine-b-azye0xfo32 {
    0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); }
    100% { transform: translateX(100%) translateY(100%) rotate(45deg); }
}

.progress-card-header[b-azye0xfo32] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 8px;
    color: white;
}

.progress-card-header i[b-azye0xfo32] {
    font-size: 16px;
    color: #FCD34D;
    animation: lightning-pulse-b-azye0xfo32 1.5s ease-in-out infinite;
}

@keyframes lightning-pulse-b-azye0xfo32 {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}

.progress-title[b-azye0xfo32] {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.progress-stats[b-azye0xfo32] {
    display: flex;
    align-items: baseline;
    gap: 5px;
    margin-bottom: 8px;
}

.progress-percentage-large[b-azye0xfo32] {
    font-size: 24px;
    font-weight: 800;
    color: white;
    line-height: 1;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.progress-status-text[b-azye0xfo32] {
    font-size: 12px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.9);
}

.progress-bar-container[b-azye0xfo32] {
    margin-bottom: 8px;
}

.progress-bar-track[b-azye0xfo32] {
    height: 5px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.2);
}

.progress-bar-fill[b-azye0xfo32] {
    height: 100%;
    background: linear-gradient(90deg, #10B981 0%, #059669 100%);
    border-radius: 20px;
    transition: width 0.5s ease;
    position: relative;
    box-shadow: 0 1px 4px rgba(16, 185, 129, 0.5);
}

.progress-bar-shine[b-azye0xfo32] {
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(255, 255, 255, 0.4) 50%,
        transparent 100%
    );
    animation: bar-shine-b-azye0xfo32 2s infinite;
}

@keyframes bar-shine-b-azye0xfo32 {
    0% { left: -100%; }
    100% { left: 200%; }
}

.progress-milestones[b-azye0xfo32] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 4px;
}

.milestone[b-azye0xfo32] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    font-size: 9px;
    color: rgba(255, 255, 255, 0.7);
    transition: all 0.3s ease;
}

.milestone i[b-azye0xfo32] {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.4);
    transition: all 0.3s ease;
}

.milestone.completed[b-azye0xfo32] {
    color: white;
}

.milestone.completed i[b-azye0xfo32] {
    color: #10B981;
    filter: drop-shadow(0 0 4px rgba(16, 185, 129, 0.6));
}

.milestone span[b-azye0xfo32] {
    text-align: center;
    line-height: 1.2;
    font-weight: 600;
}

/* Old circle progress - keeping for backwards compatibility */
.progress-circle-compact[b-azye0xfo32] {
    flex-shrink: 0;
}

.progress-percentage-compact[b-azye0xfo32] {
    font-size: 16px;
    font-weight: 700;
    fill: var(--brand-500);
}

.progress-label-compact[b-azye0xfo32] {
    font-size: 12px;
    color: #6B7280;
    font-weight: 600;
}

/* Section Navigation */
.section-nav[b-azye0xfo32] {
    list-style: none;
  
}

.section-nav-item[b-azye0xfo32] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 13px;
    transition: all 0.2s ease;
    border: 1px solid transparent;
    user-select: none;
}

.section-nav-item:hover[b-azye0xfo32] {
    background: #F3F4F6;
    border-color: #E5E7EB;
    transform: translateX(2px);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.section-nav-item:active[b-azye0xfo32] {
    transform: translateX(4px);
    background: #E5E7EB;
}

.status-icon[b-azye0xfo32] {
    font-size: 16px;
    flex-shrink: 0;
}

.status-icon.valid[b-azye0xfo32] {
    color: #10B981;
}

.status-icon.warning[b-azye0xfo32] {
    color:var(--warning-500)
}

.status-icon.error[b-azye0xfo32] {
    color: var(--error-600);
}

.status-icon.incomplete[b-azye0xfo32] {
    /* default color to danger */
    color:var(--warning-500)
}

.section-nav-label[b-azye0xfo32] {
    color: #374151;
    flex: 1;
}

/* Mobile Bottom Bar */
.mobile-bottom-bar[b-azye0xfo32] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 60px;
    background: white;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
    display: none;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
    z-index: 100;
}

.mobile-info[b-azye0xfo32] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.premium-brief[b-azye0xfo32] {
    font-size: 16px;
    font-weight: 700;
    color: var(--brand-500);
}

.progress-brief[b-azye0xfo32] {
    font-size: 12px;
    color: #6B7280;
}

.btn-expand[b-azye0xfo32] {
    background: var(--brand-500);
    border: none;
    border-radius: 6px;
    color: white;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.2s;
}

.btn-expand:hover[b-azye0xfo32] {
    background: #004A7F;
}

.btn-expand i[b-azye0xfo32] {
    font-size: 20px;
}

/* Floating TOC Button */
.floating-toc-btn[b-azye0xfo32] {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--brand-500);
    border: none;
    color: white;
    font-size: 24px;
    display: none;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.3);
    cursor: pointer;
    z-index: 90;
    transition: all 0.2s;
}

.floating-toc-btn:hover[b-azye0xfo32] {
    background: #004A7F;
    transform: scale(1.05);
}

/* Mobile Drawer */
.drawer-overlay[b-azye0xfo32] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    z-index: 999;
}

.drawer-overlay.show[b-azye0xfo32] {
    opacity: 1;
    pointer-events: auto;
}

.mobile-toc-drawer[b-azye0xfo32] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 70vh;
    background: white;
    border-radius: 16px 16px 0 0;
    transform: translateY(100%);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1000;
    overflow-y: auto;
    padding: 20px;
}

.mobile-toc-drawer.show[b-azye0xfo32] {
    transform: translateY(0);
}

.drawer-handle[b-azye0xfo32] {
    width: 40px;
    height: 4px;
    background: #D1D5DB;
    border-radius: 2px;
    margin: 0 auto 20px;
    cursor: grab;
}

.drawer-content h3[b-azye0xfo32] {
    font-size: 16px;
    font-weight: 600;
    color: #374151;
    margin: 0 0 12px 0;
}

.drawer-premium[b-azye0xfo32] {
    font-size: 28px;
    font-weight: 700;
    color: var(--brand-500);
    margin-bottom: 8px;
}

.drawer-progress[b-azye0xfo32] {
    font-size: 14px;
    color: #6B7280;
    margin-bottom: 24px;
}

.drawer-nav[b-azye0xfo32] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.drawer-nav li[b-azye0xfo32] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    border-bottom: 1px solid #E5E7EB;
    cursor: pointer;
    transition: background 0.2s;
}

.drawer-nav li:hover[b-azye0xfo32] {
    background: #F3F4F6;
}

.drawer-nav li i[b-azye0xfo32] {
    font-size: 18px;
}

/* Bootstrap Modal Customizations — chrome (radius, header, footer, backdrop)
   comes from the global wwwroot/css/modal-theme.css. */
.confirmation-text[b-azye0xfo32] {
    font-size: 16px;
    font-weight: 500;
    color: #374151;
    margin-bottom: 20px;
}

.confirmation-details[b-azye0xfo32] {
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 16px;
    margin-bottom: 16px;
}

.detail-item[b-azye0xfo32] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 0;
    color: #6B7280;
    font-size: 14px;
}

.detail-item:not(:last-child)[b-azye0xfo32] {
    border-bottom: 1px solid #E5E7EB;
}

.detail-item i[b-azye0xfo32] {
    font-size: 18px;
    color: #3B82F6;
    width: 20px;
    text-align: center;
}

.detail-item strong[b-azye0xfo32] {
    color: #111827;
    font-weight: 600;
}

.confirmation-notice[b-azye0xfo32] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 12px;
    background: #EFF6FF;
    border: 1px solid #BFDBFE;
    border-radius: 6px;
    font-size: 13px;
    color: #1E40AF;
    line-height: 1.5;
}

.confirmation-notice i[b-azye0xfo32] {
    font-size: 16px;
    color: #3B82F6;
    flex-shrink: 0;
    margin-top: 2px;
}

/* Modal Button Styles */
.btn-cancel[b-azye0xfo32],
.btn-confirm[b-azye0xfo32] {
    padding: 10px 20px;
    border-radius: 10px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.btn-confirm[b-azye0xfo32] {
    background: var(--brand-600, #004980);
    border: none;
    color: white;
}

.btn-confirm:hover[b-azye0xfo32] {
    background: var(--brand-700, #003760);
}

/* Submission Result Modal */
#submissionResultModal .result-modal[b-azye0xfo32] {
    max-width: 650px;
}

.success-message[b-azye0xfo32] {
    font-size: 16px;
    color: #6B7280;
    text-align: center;
    margin-bottom: 24px;
    line-height: 1.6;
}

.success-details[b-azye0xfo32] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 24px;
}

.detail-card[b-azye0xfo32] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: #F0FDF4;
    border: 1px solid #BBF7D0;
    border-radius: 8px;
}

.detail-card i[b-azye0xfo32] {
    font-size: 24px;
    color: #10B981;
}

.detail-card > div[b-azye0xfo32] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.detail-label[b-azye0xfo32] {
    font-size: 12px;
    color: #6B7280;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.detail-value[b-azye0xfo32] {
    font-size: 14px;
    color: #111827;
    font-weight: 600;
}

.next-steps[b-azye0xfo32] {
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 20px;
}

.next-steps h4[b-azye0xfo32] {
    margin: 0 0 12px 0;
    font-size: 15px;
    font-weight: 600;
    color: #374151;
    display: flex;
    align-items: center;
    gap: 8px;
}

.next-steps h4 i[b-azye0xfo32] {
    color: #10B981;
}

.next-steps ul[b-azye0xfo32] {
    margin: 0;
    padding-left: 20px;
    color: #6B7280;
    font-size: 14px;
    line-height: 1.8;
}

.next-steps li[b-azye0xfo32] {
    margin-bottom: 6px;
}

/* Submission-result footer buttons — canonical: ghost secondary, brand primary. */
#submissionResultModal .modal-footer .btn-primary[b-azye0xfo32],
#submissionResultModal .modal-footer .btn-secondary[b-azye0xfo32] {
    border: none;
    border-radius: 10px;
    font-size: 0.85rem;
    font-weight: 600;
    padding: 0.55rem 1.15rem;
    cursor: pointer;
    transition: all 0.15s;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

#submissionResultModal .modal-footer .btn-primary[b-azye0xfo32] {
    background: var(--brand-600, #004980);
    color: white;
}

#submissionResultModal .modal-footer .btn-primary:hover[b-azye0xfo32] {
    background: var(--brand-700, #003760);
}

#submissionResultModal .modal-footer .btn-secondary[b-azye0xfo32] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

#submissionResultModal .modal-footer .btn-secondary:hover[b-azye0xfo32] {
    background: #F1F5F9;
    color: #0F172A;
}

.error-message[b-azye0xfo32] {
    font-size: 16px;
    color: #6B7280;
    text-align: center;
    margin-bottom: 24px;
    line-height: 1.6;
}

.error-card[b-azye0xfo32] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    background: #FEF2F2;
    border: 1px solid #FECACA;
    border-radius: 8px;
    margin-bottom: 24px;
}

.error-card i[b-azye0xfo32] {
    font-size: 24px;
    color: #EF4444;
    flex-shrink: 0;
}

.error-card > div[b-azye0xfo32] {
    flex: 1;
}

.error-label[b-azye0xfo32] {
    display: block;
    font-size: 12px;
    color: #991B1B;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}

.error-text[b-azye0xfo32] {
    display: block;
    font-size: 14px;
    color: var(--error-600);
    line-height: 1.5;
}

.error-actions[b-azye0xfo32] {
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 20px;
}

.error-actions h4[b-azye0xfo32] {
    margin: 0 0 12px 0;
    font-size: 15px;
    font-weight: 600;
    color: #374151;
    display: flex;
    align-items: center;
    gap: 8px;
}

.error-actions h4 i[b-azye0xfo32] {
    color: #F59E0B;
}

.error-actions ul[b-azye0xfo32] {
    margin: 0;
    padding-left: 20px;
    color: #6B7280;
    font-size: 14px;
    line-height: 1.8;
}

.error-actions li[b-azye0xfo32] {
    margin-bottom: 6px;
}

/* Responsive Modal Styles */
@media (max-width: 768px) {
    .confirmation-modal[b-azye0xfo32],
    .result-modal[b-azye0xfo32] {
        max-width: 95% !important;
    }

    .success-details[b-azye0xfo32] {
        grid-template-columns: 1fr;
    }

    #submissionResultModal .modal-footer[b-azye0xfo32] {
        flex-direction: column;
    }

    #submissionResultModal .modal-footer .btn-primary[b-azye0xfo32],
    #submissionResultModal .modal-footer .btn-secondary[b-azye0xfo32] {
        width: 100%;
        justify-content: center;
    }
}

/* Smooth Scroll */
html[b-azye0xfo32] {
    scroll-behavior: smooth;
}

/* Environmental Declarations Section */
.env-section[b-azye0xfo32] {
    background: rgba(255, 255, 255, 0.6);
    border: 1px solid var(--border-light);
    border-radius: 6px;
    padding: 16px 20px;
    margin-bottom: 16px;
    animation: fadeInUp-b-azye0xfo32 0.35s ease-out backwards;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.env-section:nth-child(1)[b-azye0xfo32] { animation-delay: 0.05s; }
.env-section:nth-child(2)[b-azye0xfo32] { animation-delay: 0.1s; }
.env-section:nth-child(3)[b-azye0xfo32] { animation-delay: 0.15s; }
.env-section:nth-child(4)[b-azye0xfo32] { animation-delay: 0.2s; }

.env-section:hover[b-azye0xfo32] {
    border-color: var(--brand-200);
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
}

.env-section:last-child[b-azye0xfo32] {
    margin-bottom: 0;
}

.env-section-title[b-azye0xfo32] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 12px 0;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border-light);
    line-height: 1.4;
}

.question-group[b-azye0xfo32] {
    margin-bottom: 16px;
}

.question-group:last-child[b-azye0xfo32] {
    margin-bottom: 0;
}

/* Parent Question Styling */
.parent-question[b-azye0xfo32] {
    position: relative;
}

/* Child Question Section - First Level Nesting */
.child-question-section[b-azye0xfo32] {
    margin-top: 12px;
    margin-left: 20px;
    padding-left: 16px;
    border-left: 2px solid var(--brand-200);
    animation: slideInLeft-b-azye0xfo32 0.35s ease-out;
    background: linear-gradient(to right, rgba(59, 130, 246, 0.02) 0%, transparent 100%);
    border-radius: 0 6px 6px 0;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-right: 12px;
}

/* Child Question */
.child-question[b-azye0xfo32] {
    margin-bottom: 14px;
}

.child-question:last-child[b-azye0xfo32] {
    margin-bottom: 0;
}

/* Child Label with Indicator */
.child-label[b-azye0xfo32] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.child-indicator[b-azye0xfo32] {
    color: var(--brand-500);
    font-size: 14px;
    flex-shrink: 0;
}

/* Grandchild Question Section - Second Level Nesting */
.grandchild-question-section[b-azye0xfo32] {
    margin-top: 16px;
    margin-left: 20px;
    padding-left: 20px;
    border-left: 3px solid var(--brand-300);
    animation: slideInLeft-b-azye0xfo32 0.35s ease-out 0.1s backwards;
    background: linear-gradient(to right, rgba(59, 130, 246, 0.04) 0%, transparent 100%);
    border-radius: 0 8px 8px 0;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-right: 12px;
}

/* Grandchild Question */
.grandchild-question[b-azye0xfo32] {
    margin-bottom: 0;
}

/* Grandchild Label with Indicator */
.grandchild-label[b-azye0xfo32] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.grandchild-indicator[b-azye0xfo32] {
    color: var(--brand-600);
    font-size: 13px;
    flex-shrink: 0;
    margin-left: 4px;
}

/* Great-Grandchild Question Section - Third Level Nesting */
.great-grandchild-question-section[b-azye0xfo32] {
    margin-top: 16px;
    margin-left: 32px;
    padding-left: 24px;
    border-left: 3px solid var(--brand-200);
    animation: slideInLeft-b-azye0xfo32 0.35s ease-out 0.15s backwards;
    background: linear-gradient(to right, rgba(59, 130, 246, 0.02) 0%, transparent 100%);
    border-radius: 0 8px 8px 0;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-right: 12px;
}

/* Great-Grandchild Question */
.great-grandchild-question[b-azye0xfo32] {
    margin-bottom: 16px;
}

.great-grandchild-question:last-child[b-azye0xfo32] {
    margin-bottom: 0;
}

/* Great-Grandchild Label with Indicator */
.great-grandchild-label[b-azye0xfo32] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.great-grandchild-indicator[b-azye0xfo32] {
    color: var(--brand-500);
    font-size: 12px;
    flex-shrink: 0;
    margin-left: 4px;
}

.question-label[b-azye0xfo32] {
    display: block;
    font-size: 13px;
    font-weight: 500;
    color: var(--text-primary);
    margin-bottom: 10px;
    line-height: 1.5;
}

.question-label .required[b-azye0xfo32] {
    color: var(--error-600);
    margin-left: 4px;
}

.help-link[b-azye0xfo32] {
    display: inline-block;
    font-size: 12px;
    color: var(--brand-600);
    margin-bottom: 10px;
    text-decoration: none;
}

.help-link:hover[b-azye0xfo32] {
    text-decoration: underline;
    color: var(--brand-700);
}

/* File Upload Area */
.file-upload-area[b-azye0xfo32] {
    border: 2px dashed var(--border-medium);
    border-radius: 6px;
    padding: 24px;
    text-align: center;
    background: white;
    cursor: pointer;
    transition: all 0.2s ease;
}

.file-upload-area:hover[b-azye0xfo32] {
    border-color: var(--brand-500);
    background: var(--brand-50);
}

.file-upload-area i[b-azye0xfo32] {
    font-size: 40px;
    color: var(--brand-500);
    margin-bottom: 12px;
}

.file-upload-text[b-azye0xfo32] {
    font-size: 15px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 4px;
}

.file-upload-hint[b-azye0xfo32] {
    font-size: 14px;
    color: var(--text-muted);
    margin-bottom: 12px;
}

.file-upload-limit[b-azye0xfo32] {
    display: block;
    font-size: 13px;
    color: var(--text-muted);
}

/* Warranty Section */
.warranty-section[b-azye0xfo32] {
    background: linear-gradient(135deg, #FFF7ED 0%, #FFFBEB 100%);
    border-color: #FED7AA;
}

.warranty-text[b-azye0xfo32] {
    font-size: 14px;
    color: var(--text-secondary);
    line-height: 1.6;
    margin-bottom: 20px;
}

.warranty-text p[b-azye0xfo32] {
    margin-bottom: 12px;
    font-weight: 500;
}

.warranty-text ul[b-azye0xfo32] {
    margin: 0;
    padding-left: 24px;
}

.warranty-text li[b-azye0xfo32] {
    margin-bottom: 8px;
}

.warranty-text li:last-child[b-azye0xfo32] {
    margin-bottom: 0;
}

/* Responsive Breakpoints */
@media (max-width: 1024px) {
    .sidebar-container[b-azye0xfo32] {
        display: none;
    }

    .mobile-bottom-bar[b-azye0xfo32] {
        display: flex;
    }

    .floating-toc-btn[b-azye0xfo32] {
        display: flex;
    }

    .main-content[b-azye0xfo32] {
        width: 100%;
        padding-bottom: 80px;
    }
    
    .floating-save-indicator[b-azye0xfo32] {
        /* No `top` override here: the banner and the topbar are the same height at every
           breakpoint (--topbar-height is never redefined), so the 104px above is the one
           offset that clears them and the old tighter 70px would still be clipped. */
        right: 16px;
        padding: 5px 10px 5px 8px;
        font-size: 10px;
    }
    
    .floating-save-indicator i[b-azye0xfo32] {
        font-size: 12px;
    }
    
    .floating-save-indicator .save-time[b-azye0xfo32] {
        display: none; /* Hide text on mobile, show only icon */
    }
}

@media (max-width: 768px) {
    /* Legacy support - Bootstrap grid handles responsive automatically */
    .form-row-2col[b-azye0xfo32],
    .form-row-3col[b-azye0xfo32] {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .form-section[b-azye0xfo32] {
        padding: 20px 16px;
    }

    .loan-basics-section[b-azye0xfo32] {
        padding: 20px 16px;
    }

    .section-header[b-azye0xfo32] {
        gap: 12px;
        margin-bottom: 20px;
    }

    .section-header-icon[b-azye0xfo32] {
        width: 40px;
        height: 40px;
    }

    .section-header-icon i[b-azye0xfo32] {
        font-size: 20px;
    }

    .section-title[b-azye0xfo32] {
        font-size: 18px;
    }

    .section-description[b-azye0xfo32] {
        font-size: 13px;
    }

    .form-group.enhanced[b-azye0xfo32] {
        margin-bottom: 20px;
    }

    .form-actions[b-azye0xfo32] {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .action-buttons-right[b-azye0xfo32] {
        flex-direction: column;
        width: 100%;
    }

    .btn-save-draft[b-azye0xfo32],
    .btn-submit[b-azye0xfo32],
    .btn-cancel[b-azye0xfo32] {
        width: 100%;
        justify-content: center;
    }

    .page-container[b-azye0xfo32] {
        padding: 0 12px;
    }
}

@media (max-width: 480px) {
    .application-title[b-azye0xfo32] {
        font-size: 18px;
    }

    .application-subtitle[b-azye0xfo32] {
        font-size: 12px;
    }

    .section-title[b-azye0xfo32] {
        font-size: 15px;
    }

    .section-header-icon[b-azye0xfo32] {
        width: 32px;
        height: 32px;
    }

    .section-header-icon i[b-azye0xfo32] {
        font-size: 16px;
    }

    .form-label[b-azye0xfo32] {
        font-size: 12px;
    }

    .form-input[b-azye0xfo32] {
        font-size: 14px; /* Prevents zoom on iOS */
        padding: 8px 12px;
    }
    
    .form-section[b-azye0xfo32] {
        padding: 16px 20px;
        margin-bottom: 14px;
    }
}

/* Multi-Step Wizard Styles */

/* Step Indicator */
.step-indicator-wrapper[b-azye0xfo32] {
    position: sticky;
    top: 0;
    margin-bottom: 16px;
    margin-top: -32px;
    margin-left: -32px;
    margin-right: -32px;
    padding: 12px 32px;
    background: white;
    border-radius: 0;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
    z-index: 99;
}

.step-indicator[b-azye0xfo32] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 0;
    position: relative;
}

.step-item[b-azye0xfo32] {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    position: relative;
}

.step-node[b-azye0xfo32] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 6px;
    transition: all 0.3s ease;
    z-index: 2;
    position: relative;
}

.step-node.future[b-azye0xfo32] {
    background: #E5E7EB;
    color: #9CA3AF;
    border: 3px solid #E5E7EB;
}

.step-node.current[b-azye0xfo32] {
    background: var(--brand-500);
    color: white;
    border: 3px solid var(--brand-500);
    box-shadow: 0 0 0 4px rgba(15, 23, 42, 0.08);
    animation: pulse-b-azye0xfo32 2s infinite;
}

.step-node.completed[b-azye0xfo32] {
    background: #10B981;
    color: white;
    border: 3px solid #10B981;
}

.step-node.clickable[b-azye0xfo32] {
    cursor: pointer;
}

.step-node.clickable:hover[b-azye0xfo32] {
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

@keyframes pulse-b-azye0xfo32 {
    0%, 100% {
        box-shadow: 0 0 0 4px rgba(15, 23, 42, 0.08);
    }
    50% {
        box-shadow: 0 0 0 8px rgba(15, 23, 42, 0.15);
    }
}

.step-label[b-azye0xfo32] {
    text-align: center;
    max-width: 120px;
}

.step-title[b-azye0xfo32] {
    font-size: 11px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 2px;
    line-height: 1.2;
}

.step-subtitle[b-azye0xfo32] {
    font-size: 10px;
    color: var(--text-secondary);
}

.step-connector[b-azye0xfo32] {
    position: absolute;
    height: 2px;
    background: #E5E7EB;
    top: 18px;
    left: 50%;
    right: -50%;
    z-index: 1;
}

.step-item:last-child .step-connector[b-azye0xfo32] {
    display: none;
}

.step-node.completed ~ .step-connector[b-azye0xfo32],
.step-item:has(.step-node.completed) + .step-item .step-connector[b-azye0xfo32] {
    background: #10B981;
}

.current-step-description[b-azye0xfo32] {
    text-align: center;
    padding: 8px 16px;
    background: #F0F9FF;
    border-radius: 6px;
    margin-top: 8px;
}

.current-step-description p[b-azye0xfo32] {
    margin: 0;
    font-size: 11px;
    color: var(--brand-500);
    font-weight: 500;
    line-height: 1.3;
}

/* Wizard Action Buttons */
.form-actions-wizard[b-azye0xfo32] {
    position: fixed;
    bottom: 0;
    left: 260px; /* Account for expanded sidebar - matches --sidebar-width-expanded */
    right: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding: 14px 24px;
    background: white;
    border-top: 1px solid #E5E7EB;
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.06);
    z-index: 100;
    transition: left 0.3s ease; /* Smooth transition when sidebar collapses */
}

/* When sidebar is collapsed */
.sidebar-collapsed .form-actions-wizard[b-azye0xfo32],
body:has(.sidebar.collapsed) .form-actions-wizard[b-azye0xfo32] {
    left: 72px; /* Account for collapsed sidebar - matches --sidebar-width-collapsed */
}

.wizard-actions-left[b-azye0xfo32],
.wizard-actions-right[b-azye0xfo32] {
    display: flex;
    gap: 10px;
    align-items: center;
}

.btn-back[b-azye0xfo32],
.btn-next[b-azye0xfo32],
.btn-submit[b-azye0xfo32] {
    padding: 10px 20px;
    border-radius: 10px;
    font-weight: 600;
    font-size: 13px;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: none;
    line-height: 1.4;
}

.btn-back[b-azye0xfo32] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.btn-back:hover[b-azye0xfo32] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-next[b-azye0xfo32] {
    background: var(--brand-600, #004980);
    color: white;
}

.btn-next:hover[b-azye0xfo32] {
    background: var(--brand-700, #003760);
}

.btn-submit[b-azye0xfo32] {
    background: var(--success-600, #059669);
    color: white;
}

.btn-submit:hover[b-azye0xfo32] {
    background: var(--success-700, #047857);
}

.btn-save-draft[b-azye0xfo32] {
    padding: 10px 18px;
    background: #fff;
    color: var(--brand-600, #004980);
    border: 1px solid var(--brand-300, #80B7D9);
    border-radius: 10px;
    font-weight: 600;
    font-size: 13px;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    line-height: 1.4;
}

.btn-save-draft:hover[b-azye0xfo32] {
    background: var(--brand-50, #E6F2F8);
    border-color: var(--brand-600, #004980);
    color: var(--brand-700, #003760);
}

/* Review Cards */
.review-summary[b-azye0xfo32] {
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 100%;
}

.review-card[b-azye0xfo32] {
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.2s;
    width: 100%;
}

.review-card:hover[b-azye0xfo32] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.review-card-header[b-azye0xfo32] {
    background: #F9FAFB;
    padding: 16px 20px;
    border-bottom: 1px solid #E5E7EB;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.review-card-header h3[b-azye0xfo32] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.review-card-header h3 i[b-azye0xfo32] {
    color: var(--brand-500);
}

.btn-edit-link[b-azye0xfo32] {
    background: transparent;
    border: none;
    color: var(--brand-500);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 6px;
    transition: all 0.2s;
}

.btn-edit-link:hover[b-azye0xfo32] {
    background: #F0F9FF;
}

.review-card-body[b-azye0xfo32] {
    padding: 20px;
}

.review-item[b-azye0xfo32] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 12px 0;
    border-bottom: 1px solid #F3F4F6;
}

.review-item:last-child[b-azye0xfo32] {
    border-bottom: none;
}

.review-item.has-error[b-azye0xfo32] {
    background: #FEF2F2;
    padding-left: 12px;
    padding-right: 12px;
    margin: 0 -12px;
    border-radius: 6px;
}

.review-label[b-azye0xfo32] {
    font-size: 13px;
    color: #6B7280;
    font-weight: 500;
    flex: 0 0 45%;
}

.review-value[b-azye0xfo32] {
    font-size: 14px;
    color: var(--text-primary);
    font-weight: 600;
    text-align: right;
    flex: 1;
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Review Value Badges */
.review-value-badge[b-azye0xfo32] {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
}

.badge-success[b-azye0xfo32] {
    background: #D1FAE5;
    color: #065F46;
}

.badge-danger[b-azye0xfo32] {
    background: #FEE2E2;
    color: #991B1B;
}

.badge-secondary[b-azye0xfo32] {
    background: #F3F4F6;
    color: #6B7280;
}

/* Environmental Warning Note */
.environmental-warning-note[b-azye0xfo32] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 16px;
    background: #FEF3C7;
    border: 1px solid #FCD34D;
    border-radius: 6px;
    color: #92400E;
    font-size: 13px;
    line-height: 1.5;
}

.environmental-warning-note i[b-azye0xfo32] {
    font-size: 18px;
    color: #F59E0B;
    flex-shrink: 0;
    margin-top: 2px;
}

.environmental-warning-note span[b-azye0xfo32] {
    flex: 1;
}

.environmental-warning-note strong[b-azye0xfo32] {
    font-weight: 600;
}

/* Hierarchical Review Items (Child/Grandchild) */
.review-item-child[b-azye0xfo32] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 6px;
    padding: 10px 0 10px 20px;
    border-bottom: 1px solid #F3F4F6;
    background: #FAFAFA;
    margin: 0 -20px;
    padding-left: 40px;
    padding-right: 20px;
    min-width: 0;
}

.review-item-child:last-child[b-azye0xfo32] {
    border-bottom: none;
}

.review-item-grandchild[b-azye0xfo32] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 6px;
    padding: 10px 0 10px 40px;
    border-bottom: 1px solid #F3F4F6;
    background: #F5F5F5;
    margin: 0 -20px;
    padding-left: 60px;
    padding-right: 20px;
    min-width: 0;
}

.review-item-grandchild:last-child[b-azye0xfo32] {
    border-bottom: none;
}

.review-item-child .review-label[b-azye0xfo32],
.review-item-grandchild .review-label[b-azye0xfo32] {
    font-size: 12px;
    color: #6B7280;
    font-weight: 500;
    flex: 0 0 auto;
    white-space: nowrap;
}

.review-item-child .review-value[b-azye0xfo32],
.review-item-grandchild .review-value[b-azye0xfo32] {
    font-size: 13px;
    color: var(--text-primary);
    font-weight: 600;
    text-align: left;
    flex: 1 1 0;
    min-width: 0;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Review Subsections */
.review-subsection[b-azye0xfo32] {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #E5E7EB;
}

.review-subsection:first-child[b-azye0xfo32] {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.review-subsection-title[b-azye0xfo32] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.review-subsection-title[b-azye0xfo32]::before {
    content: '';
    width: 4px;
    height: 16px;
    background: var(--primary-teal);
    border-radius: 2px;
}

/* Simple Badge-like Yes/No/Not Answered Indicators */
.review-answer[b-azye0xfo32] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    padding: 0.25rem 0.625rem;
    border-radius: 4px;
    white-space: nowrap;
    flex-shrink: 0;
    background: var(--neutral-100);
    color: var(--text-secondary, #6B7280);
}

.review-answer i[b-azye0xfo32] {
    font-size: 0.875rem;
    color: var(--text-muted, #9CA3AF);
}

.review-answer-yes[b-azye0xfo32] {
    background: var(--brand-50);
    color: var(--brand-700);
}

.review-answer-yes i[b-azye0xfo32] {
    color: var(--brand-600);
}

.review-answer-no[b-azye0xfo32] {
    background: var(--neutral-100);
    color: var(--text-secondary, #6B7280);
}

.review-answer-no i[b-azye0xfo32] {
    color: var(--text-muted, #9CA3AF);
}

.review-answer-muted[b-azye0xfo32] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 500;
    padding: 0.25rem 0.625rem;
    border-radius: 4px;
    background: var(--neutral-50);
    color: var(--text-muted, #9CA3AF);
    font-style: italic;
}

/* Environmental Risk Badges */
.environmental-badges[b-azye0xfo32] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

.env-badge[b-azye0xfo32] {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    border: 1px solid;
}

.env-badge-heavy[b-azye0xfo32] {
    background: #FEF3C7;
    border-color: #F59E0B;
    color: #92400E;
}

.env-badge-rcra[b-azye0xfo32] {
    background: #FEE2E2;
    border-color: #F87171;
    color: #991B1B;
}

.validation-error-notice[b-azye0xfo32] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    background: #FEE2E2;
    border: 1px solid #FCA5A5;
    border-left: 3px solid var(--error-600);
    border-radius: 6px;
    color: #991B1B;
    font-size: 13px;
    font-weight: 500;
}

.validation-error-notice i[b-azye0xfo32] {
    font-size: 16px;
    color: var(--error-600);
    flex-shrink: 0;
}

.premium-summary-card[b-azye0xfo32] {
    border: 2px solid #10B981;
    background: linear-gradient(135deg, #F0FDF4 0%, #DCFCE7 100%);
}

.premium-summary-card .review-card-header[b-azye0xfo32] {
    background: #10B981;
    color: white;
}

.premium-summary-card .review-card-header h3[b-azye0xfo32] {
    color: white;
}

.premium-summary-card .review-card-header h3 i[b-azye0xfo32] {
    color: white;
}

.premium-item[b-azye0xfo32] {
    padding: 16px 0;
    border-bottom: 2px solid #10B981;
}

.premium-value[b-azye0xfo32] {
    font-size: 24px;
    color: #10B981;
    font-weight: 700;
}

.custom-checkbox[b-azye0xfo32] {
    padding-left: 2.5rem !important; /* Add space for the larger checkbox */
    display: flex;
    align-items: center;
}

.custom-checkbox .form-check-input[b-azye0xfo32] {
    width: 1.3em;
    height: 1.3em;
    margin-left: -2rem; /* Pull back into the padding area */
    margin-top: 0;
    border: 2px solid #adb5bd; /* slightly thicker, visible border */
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}

.custom-checkbox .form-check-label[b-azye0xfo32] {
    padding-left: 0.5rem;
    cursor: pointer;
    font-weight: 500;
    font-size: 14px;
    color: #495057;
    user-select: none; /* Prevent text selection on double click */
}

.custom-checkbox .form-check-input:checked[b-azye0xfo32] {
    background-color: #0d6efd; /* Bootstrap primary color */
    border-color: #0d6efd;
    transform: scale(1.05); /* Subtle pop effect when checked */
}

.custom-checkbox .form-check-input:focus[b-azye0xfo32] {
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); /* Soft focus ring */
}

/* Mobile Responsive for Wizard */
@media (max-width: 768px) {
    .main-content[b-azye0xfo32] {
        padding-top: 20px;
        padding-bottom: 160px; /* More space for mobile stacked buttons */
    }

    .step-indicator-wrapper[b-azye0xfo32] {
        margin-top: -20px;
        margin-left: -20px;
        margin-right: -20px;
        padding: 10px 20px;
    }

    .step-indicator[b-azye0xfo32] {
        flex-direction: column;
        gap: 12px;
    }

    .step-item[b-azye0xfo32] {
        flex-direction: row;
        width: 100%;
        align-items: center;
        justify-content: flex-start;
    }

    .step-node[b-azye0xfo32] {
        margin-bottom: 0;
        margin-right: 10px;
        width: 32px;
        height: 32px;
        font-size: 13px;
    }

    .step-label[b-azye0xfo32] {
        text-align: left;
        flex: 1;
        max-width: none;
    }

    .step-title[b-azye0xfo32] {
        font-size: 12px;
    }

    .step-subtitle[b-azye0xfo32] {
        font-size: 10px;
    }

    .current-step-description[b-azye0xfo32] {
        padding: 6px 12px;
        font-size: 10px;
    }

    .step-connector[b-azye0xfo32] {
        display: none;
    }


    .form-actions-wizard[b-azye0xfo32] {
        left: 0; /* Full width on mobile - no sidebar */
        flex-direction: column;
        gap: 10px;
        padding: 12px 16px;
    }

    .wizard-actions-left[b-azye0xfo32],
    .wizard-actions-right[b-azye0xfo32] {
        width: 100%;
        justify-content: center;
    }

    .wizard-actions-right[b-azye0xfo32] {
        flex-direction: column;
        gap: 12px;
    }

    .btn-back[b-azye0xfo32],
    .btn-next[b-azye0xfo32],
    .btn-submit[b-azye0xfo32],
    .btn-cancel[b-azye0xfo32],
    .btn-save-draft[b-azye0xfo32] {
        width: 100%;
        justify-content: center;
    }

    .review-item[b-azye0xfo32] {
        flex-direction: column;
        gap: 6px;
    }

    .review-label[b-azye0xfo32],
    .review-value[b-azye0xfo32] {
        text-align: left;
    }
}

/* Application Progress Card - Compact with Simplified Dots */
.progress-section-card[b-azye0xfo32] {
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-700) 100%);
    border-radius: 10px;
    padding: 14px 16px;
    margin-bottom: 14px;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.2), 0 2px 6px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
}

.progress-section-card[b-azye0xfo32]::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: linear-gradient(45deg, transparent 30%, rgba(255, 255, 255, 0.1) 50%, transparent 70%);
    animation: shine-b-azye0xfo32 3s infinite;
}

@keyframes shine-b-azye0xfo32 {
    0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); }
    100% { transform: translateX(100%) translateY(100%) rotate(45deg); }
}

.progress-card-header[b-azye0xfo32] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    color: white;
}

.progress-card-header i[b-azye0xfo32] {
    font-size: 18px;
    color: #FCD34D;
    animation: lightning-pulse-b-azye0xfo32 1.5s ease-in-out infinite;
}

@keyframes lightning-pulse-b-azye0xfo32 {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.7; }
}

.progress-title[b-azye0xfo32] {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.progress-stats[b-azye0xfo32] {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin-bottom: 10px;
}

.progress-percentage-large[b-azye0xfo32] {
    font-size: 28px;
    font-weight: 800;
    color: white;
    line-height: 1;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.progress-status-text[b-azye0xfo32] {
    font-size: 12px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.95);
}

.progress-bar-container[b-azye0xfo32] {
    margin-bottom: 10px;
}

.progress-bar-track[b-azye0xfo32] {
    height: 6px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.2);
}

.progress-bar-fill[b-azye0xfo32] {
    height: 100%;
    background: linear-gradient(90deg, #10B981 0%, #059669 100%);
    border-radius: 20px;
    transition: width 0.5s ease;
    position: relative;
    box-shadow: 0 1px 4px rgba(16, 185, 129, 0.5);
}

.progress-bar-shine[b-azye0xfo32] {
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.4) 50%, transparent 100%);
    animation: bar-shine-b-azye0xfo32 2s infinite;
}

@keyframes bar-shine-b-azye0xfo32 {
    0% { left: -100%; }
    100% { left: 200%; }
}
/* ===========================================================================
   Simplified-flow additions (not present in the traditional form)
   =========================================================================== */

/* Info banner explaining Simplified Application Mode */
.simplified-mode-banner[b-azye0xfo32] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-radius: 10px;
    padding: 16px 20px;
    margin-bottom: 20px;
}

.simplified-mode-banner i[b-azye0xfo32] {
    color: #2563eb;
    font-size: 18px;
    margin-top: 1px;
}

.simplified-mode-banner .banner-title[b-azye0xfo32] {
    color: #1d4ed8;
    font-weight: 700;
    margin-bottom: 4px;
}

.simplified-mode-banner .banner-text[b-azye0xfo32] {
    color: #1e3a5f;
    font-size: var(--font-size-sm, 0.875rem);
    margin: 0;
}

/* Policy Term + balloon child question group — borderless; the two fields
   read as one stack, with the balloon question as a soft contextual panel. */
.policy-term-group[b-azye0xfo32] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.policy-term-group .term-echo[b-azye0xfo32] {
    color: var(--gray-500, #6b7280);
    font-size: var(--font-size-sm, 0.875rem);
    white-space: nowrap;
}

.policy-term-child[b-azye0xfo32] {
    background: #f8fafc;
    border: 1px solid var(--gray-200, #e5e7eb);
    border-radius: 10px;
    padding: 14px 16px;
}

.policy-term-child .child-label-bar[b-azye0xfo32] {
    border-left: 3px solid var(--brand-500, #0d6efd);
    padding-left: 12px;
}

/* Coverage Eligibility Review */
.eligibility-review-intro[b-azye0xfo32] {
    margin-bottom: 12px;
}

.eligibility-review-intro h3[b-azye0xfo32] {
    font-size: var(--font-size-lg, 1.125rem);
    font-weight: 700;
    margin-bottom: 4px;
}

.eligibility-review-intro p[b-azye0xfo32] {
    color: var(--gray-500, #6b7280);
    font-size: var(--font-size-sm, 0.875rem);
    margin: 0;
}

/* Switch link inside the Simplified Mode banner */
.simplified-mode-banner .banner-switch[b-azye0xfo32] {
    display: block;
    margin-top: 6px;
}

.simplified-mode-banner .banner-switch a[b-azye0xfo32] {
    color: #1d4ed8;
    font-weight: 600;
}

/* Loan Basics: each column stacks its fields independently so the
   variable-height policy-term card never opens gaps in the other column. */
.loan-basics-col[b-azye0xfo32] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.loan-basics-col > div .form-group:last-child[b-azye0xfo32],
.loan-basics-col > div:last-child .form-group[b-azye0xfo32] {
    margin-bottom: 0;
}
/* /Components/Pages/Applications/NewApplicationStraightFormPage.razor.rz.scp.css */
/* Straight Form Application Page Styles */

.main-content[b-82men5aelw] {
    padding-bottom: 100px;
}

/* Loading Overlay */
.loading-overlay[b-82men5aelw] {
    position: fixed;
    inset: 0;
    background: rgba(255, 255, 255, 0.9);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2000;
}

.spinner[b-82men5aelw] {
    width: 50px;
    height: 50px;
    border: 4px solid #E5E7EB;
    border-top-color: var(--brand-500);
    border-radius: 50%;
    animation: spin-b-82men5aelw 1s linear infinite;
}

@keyframes spin-b-82men5aelw {
    to { transform: rotate(360deg); }
}

/* ========================================
   Form Animations
   ======================================== */

/* Step/Section Fade-in Animation */
@keyframes fadeInUp-b-82men5aelw {
    from {
        opacity: 0;
        transform: translateY(12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Staggered slide in from left */
@keyframes slideInLeft-b-82men5aelw {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Subtle scale in */
@keyframes scaleIn-b-82men5aelw {
    from {
        opacity: 0;
        transform: scale(0.97);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Icon bounce */
@keyframes iconBounce-b-82men5aelw {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-3px);
    }
}

/* Form Sections */
.form-section[b-82men5aelw] {
    padding: 20px 24px;
    margin-bottom: 16px;
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.3) 0%, rgba(255, 255, 255, 0.98) 100%);
    border: 1px solid var(--border-light);
    border-radius: 8px;
    scroll-margin-top: 20px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
    animation: fadeInUp-b-82men5aelw 0.4s ease-out backwards;
}

/* Staggered animation for form sections */
.form-section:nth-child(1)[b-82men5aelw] { animation-delay: 0s; }
.form-section:nth-child(2)[b-82men5aelw] { animation-delay: 0.08s; }
.form-section:nth-child(3)[b-82men5aelw] { animation-delay: 0.16s; }
.form-section:nth-child(4)[b-82men5aelw] { animation-delay: 0.24s; }
.form-section:nth-child(5)[b-82men5aelw] { animation-delay: 0.32s; }
.form-section:nth-child(6)[b-82men5aelw] { animation-delay: 0.40s; }

.form-section:hover[b-82men5aelw] {
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
    transform: translateY(-1px);
}

.section-header[b-82men5aelw] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
}

.section-header-icon[b-82men5aelw] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--brand-50);
    border-radius: 6px;
    flex-shrink: 0;
    transition: transform 0.2s ease, background-color 0.2s ease;
}

.form-section:hover .section-header-icon[b-82men5aelw] {
    background: var(--brand-100);
    animation: iconBounce-b-82men5aelw 0.4s ease;
}

.section-header-icon i[b-82men5aelw] {
    font-size: 18px;
    color: var(--brand-600);
    opacity: 0.7;
    transition: opacity 0.2s ease;
}

.form-section:hover .section-header-icon i[b-82men5aelw] {
    opacity: 1;
}

.section-header-content[b-82men5aelw] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.section-title[b-82men5aelw] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    line-height: 1.3;
}

.section-description[b-82men5aelw] {
    font-size: 12px;
    color: var(--text-secondary);
    margin: 0;
    font-weight: 400;
    line-height: 1.4;
}

/* Subsection Headers for Referral Questionnaires */
.subsection-header[b-82men5aelw] {
    margin-top: 32px;
    margin-bottom: 20px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--brand-200);
}

.subsection-header:first-of-type[b-82men5aelw] {
    margin-top: 0;
}

.subsection-title[b-82men5aelw] {
    font-size: 15px;
    font-weight: 700;
    color: var(--brand-700);
    margin: 0;
    letter-spacing: -0.01em;
}

.subsection-subtitle[b-82men5aelw] {
    font-size: 14px;
    font-weight: 600;
    color: var(--brand-600);
    margin: 0;
}

/* Read-only Field Styling */
.read-only-field[b-82men5aelw] {
    background: #f8f9fa !important;
    border: 1px dashed #dee2e6 !important;
    cursor: not-allowed !important;
    color: var(--text-secondary) !important;
}

.read-only-field:focus[b-82men5aelw] {
    border-color: #dee2e6 !important;
    box-shadow: none !important;
}

/* Form Layout */
.form-group[b-82men5aelw] {
    margin-bottom:5px !important;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.form-group.enhanced[b-82men5aelw] {
    margin-bottom: 24px;
}

.form-label[b-82men5aelw] {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary);
    display: flex;
    align-items: center;
    gap: 4px;
    line-height: 1.4;
}

.form-help[b-82men5aelw] {
    font-size: 12px;
    color: var(--text-muted);
    line-height: 1.4;
}

.form-label .required[b-82men5aelw] {
    color: var(--error-600);
    font-weight: 600;
}

/* Input Styling */
.form-input[b-82men5aelw],
.form-select[b-82men5aelw],
[b-82men5aelw] input.form-input,
[b-82men5aelw] select.form-select,
[b-82men5aelw] textarea.form-input,
[b-82men5aelw] input[type="text"].form-input,
[b-82men5aelw] input[type="number"].form-input,
[b-82men5aelw] input[type="email"].form-input,
[b-82men5aelw] input[type="tel"].form-input,
input.form-input[b-82men5aelw],
select.form-select[b-82men5aelw],
textarea.form-input[b-82men5aelw],
input[type="text"].form-input[b-82men5aelw],
input[type="number"].form-input[b-82men5aelw],
input[type="email"].form-input[b-82men5aelw],
input[type="tel"].form-input[b-82men5aelw] {
    padding: 8px 12px;
    background: white;
    font-size: 14px;
    border: 1px solid var(--border-medium);
    border-radius: 6px;
    color: var(--text-primary);
    font-family: inherit;
    transition: all 0.2s ease;
    width: 100%;
    box-sizing: border-box;
}

/* Textarea specific styling */
textarea.form-input[b-82men5aelw],
[b-82men5aelw] textarea.form-input {
    resize: vertical;
    min-height: 80px;
    line-height: 1.5;
}

.form-input:focus[b-82men5aelw],
.form-select:focus[b-82men5aelw],
[b-82men5aelw] input.form-input:focus,
[b-82men5aelw] select.form-select:focus,
[b-82men5aelw] textarea.form-input:focus,
input.form-input:focus[b-82men5aelw],
select.form-select:focus[b-82men5aelw],
textarea.form-input:focus[b-82men5aelw] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px var(--brand-100);
}

.form-input[b-82men5aelw]::placeholder,
[b-82men5aelw] input.form-input::placeholder,
[b-82men5aelw] textarea.form-input::placeholder,
input.form-input[b-82men5aelw]::placeholder,
textarea.form-input[b-82men5aelw]::placeholder {
    color: var(--text-muted);
}

/* Select dropdown styling */
.form-select[b-82men5aelw],
[b-82men5aelw] select.form-select,
select.form-select[b-82men5aelw] {
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2364748B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 40px;
}

/* Readonly inputs (auto-filled) */
.form-input[readonly][b-82men5aelw],
[b-82men5aelw] input.form-input[readonly],
input.form-input[readonly][b-82men5aelw] {
    background-color: var(--neutral-50);
    color: var(--text-secondary);
    cursor: not-allowed;
    border-color: var(--border-light);
}

.form-input[readonly]:focus[b-82men5aelw],
[b-82men5aelw] input.form-input[readonly]:focus,
input.form-input[readonly]:focus[b-82men5aelw] {
    border-color: var(--border-light);
    box-shadow: none;
}

/* Input with Prefix (Currency) */
.input-wrapper[b-82men5aelw] {
    position: relative;
    display: flex;
    align-items: center;
}

.input-prefix[b-82men5aelw] {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 15px;
    font-weight: 600;
    color: #6B7280;
    pointer-events: none;
    z-index: 1;
}

.form-input.with-prefix[b-82men5aelw] {
    padding-left: 32px;
}

/* Enhanced Select Dropdown */
.form-select[b-82men5aelw] {
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2364748B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 40px;
}

/* Validation States */
.form-input.is-invalid[b-82men5aelw],
.form-input.invalid[b-82men5aelw],
.form-select.invalid[b-82men5aelw],
[b-82men5aelw] input.form-input.is-invalid,
[b-82men5aelw] input.form-input.invalid,
input.form-input.is-invalid[b-82men5aelw],
input.form-input.invalid[b-82men5aelw],
select.form-select.invalid[b-82men5aelw],
input[type="text"].form-input.is-invalid[b-82men5aelw],
input[type="text"].form-input.invalid[b-82men5aelw],
input[type="number"].form-input.is-invalid[b-82men5aelw],
input[type="number"].form-input.invalid[b-82men5aelw],
input[type="email"].form-input.is-invalid[b-82men5aelw],
input[type="email"].form-input.invalid[b-82men5aelw],
input[type="tel"].form-input.is-invalid[b-82men5aelw],
input[type="tel"].form-input.invalid[b-82men5aelw] {
    border-color: var(--error-600) !important;
    padding-right: calc(1.5em + 0.75rem);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right calc(0.375em + 0.1875rem) center;
    background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.form-input.is-invalid:focus[b-82men5aelw],
.form-input.invalid:focus[b-82men5aelw],
.form-select.invalid:focus[b-82men5aelw],
[b-82men5aelw] input.form-input.is-invalid:focus,
[b-82men5aelw] input.form-input.invalid:focus,
input.form-input.is-invalid:focus[b-82men5aelw],
input.form-input.invalid:focus[b-82men5aelw],
select.form-select.invalid:focus[b-82men5aelw] {
    border-color: var(--error-600) !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1) !important;
}

.form-input.valid.modified[b-82men5aelw],
.form-select.valid.modified[b-82men5aelw],
input.form-input.valid.modified[b-82men5aelw],
select.form-select.valid.modified[b-82men5aelw] {
    border-color: var(--success-600);
}

/* ValidationMessage Styling */
.validation-message[b-82men5aelw] {
    color: var(--error-600);
    font-size: 13px;
    margin-top: 4px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.validation-message[b-82men5aelw]::before {
    content: "?";
    font-size: 14px;
}

/* Validation Summary */
.validation-summary[b-82men5aelw] {
    margin-bottom: 20px;
    padding: 16px;
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-left: 4px solid var(--error-600);
    border-radius: 6px;
    animation: slideDown-b-82men5aelw 0.3s ease-out;
}

.validation-summary .alert-heading[b-82men5aelw] {
    color: #991b1b;
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 8px;
}

.validation-summary ul[b-82men5aelw] {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}

.validation-summary ul li[b-82men5aelw] {
    color: #7f1d1d;
    font-size: 14px;
    padding: 4px 0;
    position: relative;
    padding-left: 20px;
}

.validation-summary ul li[b-82men5aelw]::before {
    content: "�";
    position: absolute;
    left: 6px;
    color: var(--error-600);
    font-weight: bold;
}

.validation-summary i[b-82men5aelw] {
    color: var(--error-600);
}

@keyframes slideDown-b-82men5aelw {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.form-input.warning[b-82men5aelw],
.form-select.warning[b-82men5aelw] {
    border-color: var(--warning-600);
}

.form-input.warning:focus[b-82men5aelw],
.form-select.warning:focus[b-82men5aelw] {
    border-color: var(--warning-600);
    box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.1);
}

.field-error[b-82men5aelw] {
    color: var(--error-600);
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.field-error i[b-82men5aelw] {
    font-size: 14px;
}

.field-warning[b-82men5aelw] {
    color: var(--warning-600);
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.field-warning i[b-82men5aelw] {
    font-size: 14px;
}

/* Referral-trigger notice — shown directly under a field whose value will
   route the application outside the LP3 program (loan amount > $10M, LTV
   over 80%, property type that requires manual review, construction loan).
   Visually distinct from .field-error (which is for blocking validation
   errors) and from .field-warning (orange, used for non-routing warnings):
   this is a consequential heads-up that doesn't block the user but tells
   them exactly what will happen on Get Quote. */
.field-referral-notice[b-82men5aelw] {
    margin-top: 8px;
    padding: 10px 12px;
    background: #fef2f2;            /* soft red-50 wash */
    border: 1px solid #fecaca;      /* red-200 hairline */
    border-left: 3px solid var(--error-600);
    border-radius: 6px;
    color: var(--error-700, #b91c1c);
    font-size: 13px;
    line-height: 1.45;
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.field-referral-notice i[b-82men5aelw] {
    font-size: 16px;
    flex-shrink: 0;
    margin-top: 1px;
    color: var(--error-600);
}

.field-referral-notice strong[b-82men5aelw] {
    color: var(--error-700, #b91c1c);
    font-weight: 600;
}

/* Bootstrap 5 Grid Integration
   ======================================
   Using Bootstrap's grid system:
   - .row for containers
   - .col-12 for full width
   - .col-md-6 for 2 columns on medium+ screens
   - .col-lg-4 for 3 columns on large+ screens
   - .g-3, .g-4 for gutters (gaps)
   Bootstrap breakpoints:
   - sm: 576px
   - md: 768px
   - lg: 992px
   - xl: 1200px
   - xxl: 1400px
   ====================================== */

/* Legacy support - deprecated, use Bootstrap classes instead */
.form-row-2col[b-82men5aelw] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin-bottom: 0;
}

.form-row-3col[b-82men5aelw] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-bottom: 0;
}

.form-input.auto-filled[b-82men5aelw],
input.form-input.auto-filled[b-82men5aelw] {
    background: #F0FDF4;
    border-color: #86EFAC;
}

/* Conditional Sections */
.conditional-section[b-82men5aelw] {
    animation: fadeIn-b-82men5aelw 0.3s ease-in;
    padding-left: 20px;
    border-left: 3px solid #E5E7EB;
    margin-left: 10px;
    margin-top: 12px;
}

@keyframes fadeIn-b-82men5aelw {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Acknowledgement Section */
.acknowledgement-section[b-82men5aelw] {
    padding: 20px;
    margin-top: 16px;
    margin-bottom: 20px;
    background: linear-gradient(135deg, #EFF6FF 0%, #DBEAFE 100%);
    border: 1px solid #BFDBFE;
    border-left: 4px solid #3B82F6;
    border-radius: 8px;
    animation: fadeIn-b-82men5aelw 0.3s ease-in;
}

.acknowledgement-content[b-82men5aelw] {
    width: 100%;
}

.acknowledgement-text[b-82men5aelw] {
    font-size: 14px;
    color: #1E3A8A;
    line-height: 1.6;
    margin: 0 0 16px 0;
    font-weight: 500;
}

.acknowledgement-checkbox[b-82men5aelw] {
    margin-top: 12px;
}

.checkbox-label[b-82men5aelw] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    cursor: pointer;
    padding: 12px;
    border: 1px solid #BFDBFE;
    border-radius: 6px;
    background: white;
    transition: all 0.2s ease;
}

.checkbox-label:hover[b-82men5aelw] {
    background: #F0F9FF;
    border-color: #3B82F6;
}

[b-82men5aelw] .checkbox-input,
.checkbox-input[b-82men5aelw] {
    margin-top: 2px;
    width: 20px;
    height: 20px;
    cursor: pointer;
    accent-color: #3B82F6;
    flex-shrink: 0;
}

.checkbox-text[b-82men5aelw] {
    font-size: 14px;
    color: #1E3A8A;
    line-height: 1.5;
    user-select: none;
    font-weight: 500;
}

.checkbox-text .required[b-82men5aelw] {
    color: var(--error-600);
    margin-left: 2px;
}

.acknowledgement-checkbox .validation-message[b-82men5aelw] {
    display: block;
    margin-top: 8px;
    margin-left: 44px;
    font-size: 13px;
    color: var(--error-600);
}

/* Warning Acknowledgement Section (for payment agreement) */
.warning-acknowledgement[b-82men5aelw] {
    background: linear-gradient(135deg, #FEF3C7 0%, #FDE68A 100%);
    border: 1px solid #FCD34D;
    border-left: 4px solid #F59E0B;
}

.warning-acknowledgement .acknowledgement-text[b-82men5aelw] {
    color: #92400E;
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.warning-acknowledgement .acknowledgement-text i[b-82men5aelw] {
    font-size: 18px;
    color: #F59E0B;
    flex-shrink: 0;
    margin-top: 2px;
}

.warning-acknowledgement .checkbox-label[b-82men5aelw] {
    border-color: #FCD34D;
    background: #FFFBEB;
}

.warning-acknowledgement .checkbox-label:hover[b-82men5aelw] {
    background: #FEF3C7;
    border-color: #F59E0B;
}

.warning-acknowledgement .checkbox-text[b-82men5aelw] {
    color: #92400E;
}

.warning-acknowledgement[b-82men5aelw]  .checkbox-input,
.warning-acknowledgement .checkbox-input[b-82men5aelw] {
    accent-color: #F59E0B;
}

/* Fee Payment Options */
.fee-payment-options[b-82men5aelw] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 12px;
}

.fee-option[b-82men5aelw] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 14px;
    border: 1px solid #FCD34D;
    border-radius: 8px;
    background: white;
    cursor: pointer;
    transition: all 0.2s;
}

.fee-option:hover[b-82men5aelw] {
    background: #FFFBEB;
}

.fee-option.selected[b-82men5aelw] {
    border-color: #D97706;
    background: #FEF3C7;
}

.fee-option input[type="radio"][b-82men5aelw] {
    margin-top: 3px;
    accent-color: #D97706;
    flex-shrink: 0;
}

.fee-option-content[b-82men5aelw] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.fee-option-label[b-82men5aelw] {
    font-size: 14px;
    font-weight: 600;
    color: #92400E;
}

.fee-option-desc[b-82men5aelw] {
    font-size: 12px;
    color: #B45309;
}

.borrower-email-field[b-82men5aelw] {
    margin-top: 12px;
    padding: 12px 14px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
}

.borrower-email-field .form-label[b-82men5aelw] {
    font-size: 13px;
    font-weight: 600;
    color: #374151;
    margin-bottom: 6px;
}

.borrower-email-field .form-control[b-82men5aelw] {
    font-size: 14px;
}

/* Fee notice when document is provided */
.fee-notice-section[b-82men5aelw] {
    margin-top: 16px;
}

.fee-notice-info[b-82men5aelw] {
    display: flex;
    gap: 10px;
    padding: 12px 16px;
    background: #EFF6FF;
    border: 1px solid #BFDBFE;
    border-radius: 8px;
    font-size: 13px;
    color: #1E40AF;
    line-height: 1.5;
}

.fee-notice-info > i[b-82men5aelw] {
    flex-shrink: 0;
    font-size: 16px;
    margin-top: 1px;
}

.fee-disclaimer-text[b-82men5aelw] {
    font-size: 12px;
    color: #3B82F6;
    font-style: italic;
}

/* Radio Buttons */
.radio-group[b-82men5aelw] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.radio-group-inline[b-82men5aelw] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.radio-label[b-82men5aelw] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    cursor: pointer;
    padding: 8px 10px;
    border-radius: 6px;
    transition: background-color 0.2s ease;
    border: 1px solid var(--border-medium);
    background: white;
}

.radio-label:hover[b-82men5aelw] {
    background: var(--neutral-50);
    border-color: var(--brand-400);
}

.radio-label input[type="radio"][b-82men5aelw] {
    margin-top: 2px;
    width: 16px;
    height: 16px;
    cursor: pointer;
    accent-color: var(--brand-600);
    flex-shrink: 0;
}

.radio-label span[b-82men5aelw] {
    font-size: 13px;
    color: var(--text-secondary);
    line-height: 1.5;
    user-select: none;
}

.radio-label:has(input[type="radio"]:checked)[b-82men5aelw] {
    background: var(--brand-50);
    border-color: var(--brand-100);
}

.radio-label:has(input[type="radio"]:checked) span[b-82men5aelw] {
    color: var(--text-primary);
    font-weight: 500;
}

/* Form Actions */
.form-actions[b-82men5aelw] {
    position: sticky;
    bottom: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    background: white;
    border-top: 2px solid #E5E7EB;
    margin-top: 32px;
    z-index: 100;
    box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.08);
}

.action-buttons-right[b-82men5aelw] {
    display: flex;
    gap: 12px;
}


.close-btn[b-82men5aelw] {
    padding: 10px 20px;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-weight: 600;
    font-size: 13px;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    line-height: 1.4;
}

.close-btn:hover[b-82men5aelw] {
    background: #F1F5F9;
    border-color: #E2E8F0;
    color: #0F172A;
}

/* Destructive secondary — quiet danger tint, fills solid red on hover */
.btn-cancel[b-82men5aelw] {
    padding: 10px 20px;
    background: var(--error-50, #FEF2F2);
    border: 1px solid #FECACA;
    border-radius: 10px;
    color: var(--error-600, #DC2626);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-cancel:hover[b-82men5aelw] {
    background: var(--error-600, #DC2626);
    border-color: var(--error-600, #DC2626);
    color: #fff;
}

/* Affirmative secondary — brand outline */
.btn-save-draft[b-82men5aelw] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: #fff;
    border: 1px solid var(--brand-300, #80B7D9);
    border-radius: 10px;
    color: var(--brand-600, #004980);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-save-draft:hover[b-82men5aelw] {
    background: var(--brand-50, #E6F2F8);
    border-color: var(--brand-600, #004980);
    color: var(--brand-700, #003760);
}

.btn-submit[b-82men5aelw] {
    padding: 10px 24px;
    background: var(--brand-600, #004980);
    border: none;
    border-radius: 10px;
    color: white;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-submit:hover[b-82men5aelw] {
    background: var(--brand-700, #003760);
}

.btn-submit:disabled[b-82men5aelw] {
    background: #9CA3AF;
    color: #E5E7EB;
    cursor: not-allowed;
    box-shadow: none;
    transform: none;
    opacity: 0.6;
}

.btn-submit:disabled:hover[b-82men5aelw] {
    background: #9CA3AF;
    box-shadow: none;
    transform: none;
}

/* Sidebar */
.sidebar-container[b-82men5aelw] {
    flex-shrink: 0;
    padding: 0 10px 80px 10px;
    position: sticky;
    top: 80px;
    max-height: calc(100vh - 90px);
    overflow-y: auto;
    overscroll-behavior: contain;
    align-self: flex-start;
    z-index: auto;
}

/* Floating Last Saved Indicator */
.floating-save-indicator[b-82men5aelw] {
    position: fixed;
    /* Clears the banner + topbar stack. The topbar is sticky at top: 0 with z-index 100
       (leca-theme.css:318-321), but the in-flow EnvironmentBanner sits ABOVE it on every
       non-production deployment (EnvironmentBanner.razor.css), so at scroll-top the
       topbar's bottom edge is ~94px rather than 64px. The old top: 80px therefore landed
       inside the topbar, which painted over the pill (100 > this element's 90) and clipped
       it. 104px = the old 80px plus one --space-lg step, leaving ~10px of clearance below
       the banner + topbar; the banner's height is not exposed as a token, so this is a
       literal on the app's spacing scale. */
    top: 104px;
    right: 20px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 20px;
    padding: 6px 12px 6px 10px;
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    color: #6B7280;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    z-index: 90;
    cursor: help;
    transition: all 0.2s ease;
}

.floating-save-indicator:hover[b-82men5aelw] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    transform: translateY(-1px);
}

.floating-save-indicator i[b-82men5aelw] {
    font-size: 14px;
    color: #10B981;
}

.floating-save-indicator i.bi-clock[b-82men5aelw] {
    color: #9CA3AF;
}

.floating-save-indicator .save-time[b-82men5aelw] {
    font-weight: 500;
    white-space: nowrap;
}

.floating-save-indicator .draft-id[b-82men5aelw] {
    font-weight: 600;
    color: #374151;
    white-space: nowrap;
}

.floating-save-indicator .save-toast[b-82men5aelw] {
    position: absolute;
    top: 2px;
    right: 0;
    background: #10B981;
    color: white;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 4px;
    opacity: 0;
    transform: translateY(5px);
    pointer-events: none;
    transition: opacity 0.3s ease, transform 0.3s ease;
    white-space: nowrap;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.3);
}

.floating-save-indicator .save-toast.show[b-82men5aelw] {
    opacity: 1;
    transform: translateY(0);
}

.floating-save-indicator .save-toast i[b-82men5aelw] {
    font-size: 12px;
    color: white;
}

/* Progress Section */
.progress-section[b-82men5aelw] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 16px 0;
    padding: 12px 16px;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    background: linear-gradient(180deg, #F9FAFB 0%, #FFFFFF 100%);
}

.progress-circle[b-82men5aelw] {
    margin: 0 auto 12px;
    width: 100px;
    height: 100px;
}

.progress-percentage[b-82men5aelw] {
    font-size: 24px;
    font-weight: 700;
    fill: var(--brand-500);
}

.progress-label[b-82men5aelw] {
    font-size: 13px;
    color: #6B7280;
    font-weight: 500;
}

.section-navigation[b-82men5aelw] {
    padding-top: 10px;
    margin: 20px 0 0 0;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    background: linear-gradient(180deg, #FFFFFF 0%, #F9FAFB 100%);
}

/* New Prominent Progress Card - Compact Version */
.progress-section-card[b-82men5aelw] {
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-700) 100%);
    border-radius: 8px;
    padding: 10px 14px;
    margin-bottom: 14px;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.2),
                0 2px 6px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
}

.progress-section-card[b-82men5aelw]::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: linear-gradient(
        45deg,
        transparent 30%,
        rgba(255, 255, 255, 0.1) 50%,
        transparent 70%
    );
    animation: shine-b-82men5aelw 3s infinite;
}

@keyframes shine-b-82men5aelw {
    0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); }
    100% { transform: translateX(100%) translateY(100%) rotate(45deg); }
}

.progress-card-header[b-82men5aelw] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 8px;
    color: white;
}

.progress-card-header i[b-82men5aelw] {
    font-size: 16px;
    color: #FCD34D;
    animation: lightning-pulse-b-82men5aelw 1.5s ease-in-out infinite;
}

@keyframes lightning-pulse-b-82men5aelw {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}

.progress-title[b-82men5aelw] {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.progress-stats[b-82men5aelw] {
    display: flex;
    align-items: baseline;
    gap: 5px;
    margin-bottom: 8px;
}

.progress-percentage-large[b-82men5aelw] {
    font-size: 24px;
    font-weight: 800;
    color: white;
    line-height: 1;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.progress-status-text[b-82men5aelw] {
    font-size: 12px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.9);
}

.progress-bar-container[b-82men5aelw] {
    margin-bottom: 8px;
}

.progress-bar-track[b-82men5aelw] {
    height: 5px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.2);
}

.progress-bar-fill[b-82men5aelw] {
    height: 100%;
    background: linear-gradient(90deg, #10B981 0%, #059669 100%);
    border-radius: 20px;
    transition: width 0.5s ease;
    position: relative;
    box-shadow: 0 1px 4px rgba(16, 185, 129, 0.5);
}

.progress-bar-shine[b-82men5aelw] {
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(255, 255, 255, 0.4) 50%,
        transparent 100%
    );
    animation: bar-shine-b-82men5aelw 2s infinite;
}

@keyframes bar-shine-b-82men5aelw {
    0% { left: -100%; }
    100% { left: 200%; }
}

.progress-milestones[b-82men5aelw] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 4px;
}

.milestone[b-82men5aelw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    font-size: 9px;
    color: rgba(255, 255, 255, 0.7);
    transition: all 0.3s ease;
}

.milestone i[b-82men5aelw] {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.4);
    transition: all 0.3s ease;
}

.milestone.completed[b-82men5aelw] {
    color: white;
}

.milestone.completed i[b-82men5aelw] {
    color: #10B981;
    filter: drop-shadow(0 0 4px rgba(16, 185, 129, 0.6));
}

.milestone span[b-82men5aelw] {
    text-align: center;
    line-height: 1.2;
    font-weight: 600;
}

/* Old circle progress - keeping for backwards compatibility */
.progress-circle-compact[b-82men5aelw] {
    flex-shrink: 0;
}

.progress-percentage-compact[b-82men5aelw] {
    font-size: 16px;
    font-weight: 700;
    fill: var(--brand-500);
}

.progress-label-compact[b-82men5aelw] {
    font-size: 12px;
    color: #6B7280;
    font-weight: 600;
}

/* Section Navigation */
.section-nav[b-82men5aelw] {
    list-style: none;
  
}

.section-nav-item[b-82men5aelw] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 13px;
    transition: all 0.2s ease;
    border: 1px solid transparent;
    user-select: none;
}

.section-nav-item:hover[b-82men5aelw] {
    background: #F3F4F6;
    border-color: #E5E7EB;
    transform: translateX(2px);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.section-nav-item:active[b-82men5aelw] {
    transform: translateX(4px);
    background: #E5E7EB;
}

.status-icon[b-82men5aelw] {
    font-size: 16px;
    flex-shrink: 0;
}

.status-icon.valid[b-82men5aelw] {
    color: #10B981;
}

.status-icon.warning[b-82men5aelw] {
    color:var(--warning-500)
}

.status-icon.error[b-82men5aelw] {
    color: var(--error-600);
}

.status-icon.incomplete[b-82men5aelw] {
    /* default color to danger */
    color:var(--warning-500)
}

.section-nav-label[b-82men5aelw] {
    color: #374151;
    flex: 1;
}

/* Mobile Bottom Bar */
.mobile-bottom-bar[b-82men5aelw] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 60px;
    background: white;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
    display: none;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
    z-index: 100;
}

.mobile-info[b-82men5aelw] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.premium-brief[b-82men5aelw] {
    font-size: 16px;
    font-weight: 700;
    color: var(--brand-500);
}

.progress-brief[b-82men5aelw] {
    font-size: 12px;
    color: #6B7280;
}

.btn-expand[b-82men5aelw] {
    background: var(--brand-500);
    border: none;
    border-radius: 6px;
    color: white;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.2s;
}

.btn-expand:hover[b-82men5aelw] {
    background: #004A7F;
}

.btn-expand i[b-82men5aelw] {
    font-size: 20px;
}

/* Floating TOC Button */
.floating-toc-btn[b-82men5aelw] {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--brand-500);
    border: none;
    color: white;
    font-size: 24px;
    display: none;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.3);
    cursor: pointer;
    z-index: 90;
    transition: all 0.2s;
}

.floating-toc-btn:hover[b-82men5aelw] {
    background: #004A7F;
    transform: scale(1.05);
}

/* Mobile Drawer */
.drawer-overlay[b-82men5aelw] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    z-index: 999;
}

.drawer-overlay.show[b-82men5aelw] {
    opacity: 1;
    pointer-events: auto;
}

.mobile-toc-drawer[b-82men5aelw] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 70vh;
    background: white;
    border-radius: 16px 16px 0 0;
    transform: translateY(100%);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1000;
    overflow-y: auto;
    padding: 20px;
}

.mobile-toc-drawer.show[b-82men5aelw] {
    transform: translateY(0);
}

.drawer-handle[b-82men5aelw] {
    width: 40px;
    height: 4px;
    background: #D1D5DB;
    border-radius: 2px;
    margin: 0 auto 20px;
    cursor: grab;
}

.drawer-content h3[b-82men5aelw] {
    font-size: 16px;
    font-weight: 600;
    color: #374151;
    margin: 0 0 12px 0;
}

.drawer-premium[b-82men5aelw] {
    font-size: 28px;
    font-weight: 700;
    color: var(--brand-500);
    margin-bottom: 8px;
}

.drawer-progress[b-82men5aelw] {
    font-size: 14px;
    color: #6B7280;
    margin-bottom: 24px;
}

.drawer-nav[b-82men5aelw] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.drawer-nav li[b-82men5aelw] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    border-bottom: 1px solid #E5E7EB;
    cursor: pointer;
    transition: background 0.2s;
}

.drawer-nav li:hover[b-82men5aelw] {
    background: #F3F4F6;
}

.drawer-nav li i[b-82men5aelw] {
    font-size: 18px;
}

/* Bootstrap Modal Customizations — chrome (radius, header, footer, backdrop)
   comes from the global wwwroot/css/modal-theme.css. */
.confirmation-text[b-82men5aelw] {
    font-size: 16px;
    font-weight: 500;
    color: #374151;
    margin-bottom: 20px;
}

.confirmation-details[b-82men5aelw] {
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 16px;
    margin-bottom: 16px;
}

.detail-item[b-82men5aelw] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 0;
    color: #6B7280;
    font-size: 14px;
}

.detail-item:not(:last-child)[b-82men5aelw] {
    border-bottom: 1px solid #E5E7EB;
}

.detail-item i[b-82men5aelw] {
    font-size: 18px;
    color: #3B82F6;
    width: 20px;
    text-align: center;
}

.detail-item strong[b-82men5aelw] {
    color: #111827;
    font-weight: 600;
}

.confirmation-notice[b-82men5aelw] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 12px;
    background: #EFF6FF;
    border: 1px solid #BFDBFE;
    border-radius: 6px;
    font-size: 13px;
    color: #1E40AF;
    line-height: 1.5;
}

.confirmation-notice i[b-82men5aelw] {
    font-size: 16px;
    color: #3B82F6;
    flex-shrink: 0;
    margin-top: 2px;
}

/* Modal Button Styles */
.btn-cancel[b-82men5aelw],
.btn-confirm[b-82men5aelw] {
    padding: 10px 20px;
    border-radius: 10px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.btn-confirm[b-82men5aelw] {
    background: var(--brand-600, #004980);
    border: none;
    color: white;
}

.btn-confirm:hover[b-82men5aelw] {
    background: var(--brand-700, #003760);
}

/* Submission Result Modal */
#submissionResultModal .result-modal[b-82men5aelw] {
    max-width: 650px;
}

.success-message[b-82men5aelw] {
    font-size: 16px;
    color: #6B7280;
    text-align: center;
    margin-bottom: 24px;
    line-height: 1.6;
}

.success-details[b-82men5aelw] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 24px;
}

.detail-card[b-82men5aelw] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: #F0FDF4;
    border: 1px solid #BBF7D0;
    border-radius: 8px;
}

.detail-card i[b-82men5aelw] {
    font-size: 24px;
    color: #10B981;
}

.detail-card > div[b-82men5aelw] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.detail-label[b-82men5aelw] {
    font-size: 12px;
    color: #6B7280;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.detail-value[b-82men5aelw] {
    font-size: 14px;
    color: #111827;
    font-weight: 600;
}

.next-steps[b-82men5aelw] {
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 20px;
}

.next-steps h4[b-82men5aelw] {
    margin: 0 0 12px 0;
    font-size: 15px;
    font-weight: 600;
    color: #374151;
    display: flex;
    align-items: center;
    gap: 8px;
}

.next-steps h4 i[b-82men5aelw] {
    color: #10B981;
}

.next-steps ul[b-82men5aelw] {
    margin: 0;
    padding-left: 20px;
    color: #6B7280;
    font-size: 14px;
    line-height: 1.8;
}

.next-steps li[b-82men5aelw] {
    margin-bottom: 6px;
}

/* Submission-result footer buttons — canonical: ghost secondary, brand primary. */
#submissionResultModal .modal-footer .btn-primary[b-82men5aelw],
#submissionResultModal .modal-footer .btn-secondary[b-82men5aelw] {
    border: none;
    border-radius: 10px;
    font-size: 0.85rem;
    font-weight: 600;
    padding: 0.55rem 1.15rem;
    cursor: pointer;
    transition: all 0.15s;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

#submissionResultModal .modal-footer .btn-primary[b-82men5aelw] {
    background: var(--brand-600, #004980);
    color: white;
}

#submissionResultModal .modal-footer .btn-primary:hover[b-82men5aelw] {
    background: var(--brand-700, #003760);
}

#submissionResultModal .modal-footer .btn-secondary[b-82men5aelw] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

#submissionResultModal .modal-footer .btn-secondary:hover[b-82men5aelw] {
    background: #F1F5F9;
    color: #0F172A;
}

.error-message[b-82men5aelw] {
    font-size: 16px;
    color: #6B7280;
    text-align: center;
    margin-bottom: 24px;
    line-height: 1.6;
}

.error-card[b-82men5aelw] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    background: #FEF2F2;
    border: 1px solid #FECACA;
    border-radius: 8px;
    margin-bottom: 24px;
}

.error-card i[b-82men5aelw] {
    font-size: 24px;
    color: #EF4444;
    flex-shrink: 0;
}

.error-card > div[b-82men5aelw] {
    flex: 1;
}

.error-label[b-82men5aelw] {
    display: block;
    font-size: 12px;
    color: #991B1B;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}

.error-text[b-82men5aelw] {
    display: block;
    font-size: 14px;
    color: var(--error-600);
    line-height: 1.5;
}

.error-actions[b-82men5aelw] {
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 20px;
}

.error-actions h4[b-82men5aelw] {
    margin: 0 0 12px 0;
    font-size: 15px;
    font-weight: 600;
    color: #374151;
    display: flex;
    align-items: center;
    gap: 8px;
}

.error-actions h4 i[b-82men5aelw] {
    color: #F59E0B;
}

.error-actions ul[b-82men5aelw] {
    margin: 0;
    padding-left: 20px;
    color: #6B7280;
    font-size: 14px;
    line-height: 1.8;
}

.error-actions li[b-82men5aelw] {
    margin-bottom: 6px;
}

/* Responsive Modal Styles */
@media (max-width: 768px) {
    .confirmation-modal[b-82men5aelw],
    .result-modal[b-82men5aelw] {
        max-width: 95% !important;
    }

    .success-details[b-82men5aelw] {
        grid-template-columns: 1fr;
    }

    #submissionResultModal .modal-footer[b-82men5aelw] {
        flex-direction: column;
    }

    #submissionResultModal .modal-footer .btn-primary[b-82men5aelw],
    #submissionResultModal .modal-footer .btn-secondary[b-82men5aelw] {
        width: 100%;
        justify-content: center;
    }
}

/* Smooth Scroll */
html[b-82men5aelw] {
    scroll-behavior: smooth;
}

/* Environmental Declarations Section */
.env-section[b-82men5aelw] {
    background: rgba(255, 255, 255, 0.6);
    border: 1px solid var(--border-light);
    border-radius: 6px;
    padding: 16px 20px;
    margin-bottom: 16px;
    animation: fadeInUp-b-82men5aelw 0.35s ease-out backwards;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.env-section:nth-child(1)[b-82men5aelw] { animation-delay: 0.05s; }
.env-section:nth-child(2)[b-82men5aelw] { animation-delay: 0.1s; }
.env-section:nth-child(3)[b-82men5aelw] { animation-delay: 0.15s; }
.env-section:nth-child(4)[b-82men5aelw] { animation-delay: 0.2s; }

.env-section:hover[b-82men5aelw] {
    border-color: var(--brand-200);
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
}

.env-section:last-child[b-82men5aelw] {
    margin-bottom: 0;
}

.env-section-title[b-82men5aelw] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 12px 0;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border-light);
    line-height: 1.4;
}

.question-group[b-82men5aelw] {
    margin-bottom: 16px;
}

.question-group:last-child[b-82men5aelw] {
    margin-bottom: 0;
}

/* Parent Question Styling */
.parent-question[b-82men5aelw] {
    position: relative;
}

/* Child Question Section - First Level Nesting */
.child-question-section[b-82men5aelw] {
    margin-top: 12px;
    margin-left: 20px;
    padding-left: 16px;
    border-left: 2px solid var(--brand-200);
    animation: slideInLeft-b-82men5aelw 0.35s ease-out;
    background: linear-gradient(to right, rgba(59, 130, 246, 0.02) 0%, transparent 100%);
    border-radius: 0 6px 6px 0;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-right: 12px;
}

/* Child Question */
.child-question[b-82men5aelw] {
    margin-bottom: 14px;
}

.child-question:last-child[b-82men5aelw] {
    margin-bottom: 0;
}

/* Child Label with Indicator */
.child-label[b-82men5aelw] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.child-indicator[b-82men5aelw] {
    color: var(--brand-500);
    font-size: 14px;
    flex-shrink: 0;
}

/* Grandchild Question Section - Second Level Nesting */
.grandchild-question-section[b-82men5aelw] {
    margin-top: 16px;
    margin-left: 20px;
    padding-left: 20px;
    border-left: 3px solid var(--brand-300);
    animation: slideInLeft-b-82men5aelw 0.35s ease-out 0.1s backwards;
    background: linear-gradient(to right, rgba(59, 130, 246, 0.04) 0%, transparent 100%);
    border-radius: 0 8px 8px 0;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-right: 12px;
}

/* Grandchild Question */
.grandchild-question[b-82men5aelw] {
    margin-bottom: 0;
}

/* Grandchild Label with Indicator */
.grandchild-label[b-82men5aelw] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.grandchild-indicator[b-82men5aelw] {
    color: var(--brand-600);
    font-size: 13px;
    flex-shrink: 0;
    margin-left: 4px;
}

/* Great-Grandchild Question Section - Third Level Nesting */
.great-grandchild-question-section[b-82men5aelw] {
    margin-top: 16px;
    margin-left: 32px;
    padding-left: 24px;
    border-left: 3px solid var(--brand-200);
    animation: slideInLeft-b-82men5aelw 0.35s ease-out 0.15s backwards;
    background: linear-gradient(to right, rgba(59, 130, 246, 0.02) 0%, transparent 100%);
    border-radius: 0 8px 8px 0;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-right: 12px;
}

/* Great-Grandchild Question */
.great-grandchild-question[b-82men5aelw] {
    margin-bottom: 16px;
}

.great-grandchild-question:last-child[b-82men5aelw] {
    margin-bottom: 0;
}

/* Great-Grandchild Label with Indicator */
.great-grandchild-label[b-82men5aelw] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.great-grandchild-indicator[b-82men5aelw] {
    color: var(--brand-500);
    font-size: 12px;
    flex-shrink: 0;
    margin-left: 4px;
}

.question-label[b-82men5aelw] {
    display: block;
    font-size: 13px;
    font-weight: 500;
    color: var(--text-primary);
    margin-bottom: 10px;
    line-height: 1.5;
}

.question-label .required[b-82men5aelw] {
    color: var(--error-600);
    margin-left: 4px;
}

.help-link[b-82men5aelw] {
    display: inline-block;
    font-size: 12px;
    color: var(--brand-600);
    margin-bottom: 10px;
    text-decoration: none;
}

.help-link:hover[b-82men5aelw] {
    text-decoration: underline;
    color: var(--brand-700);
}

/* File Upload Area */
.file-upload-area[b-82men5aelw] {
    border: 2px dashed var(--border-medium);
    border-radius: 6px;
    padding: 24px;
    text-align: center;
    background: white;
    cursor: pointer;
    transition: all 0.2s ease;
}

.file-upload-area:hover[b-82men5aelw] {
    border-color: var(--brand-500);
    background: var(--brand-50);
}

.file-upload-area i[b-82men5aelw] {
    font-size: 40px;
    color: var(--brand-500);
    margin-bottom: 12px;
}

.file-upload-text[b-82men5aelw] {
    font-size: 15px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 4px;
}

.file-upload-hint[b-82men5aelw] {
    font-size: 14px;
    color: var(--text-muted);
    margin-bottom: 12px;
}

.file-upload-limit[b-82men5aelw] {
    display: block;
    font-size: 13px;
    color: var(--text-muted);
}

/* Warranty Section */
.warranty-section[b-82men5aelw] {
    background: linear-gradient(135deg, #FFF7ED 0%, #FFFBEB 100%);
    border-color: #FED7AA;
}

.warranty-text[b-82men5aelw] {
    font-size: 14px;
    color: var(--text-secondary);
    line-height: 1.6;
    margin-bottom: 20px;
}

.warranty-text p[b-82men5aelw] {
    margin-bottom: 12px;
    font-weight: 500;
}

.warranty-text ul[b-82men5aelw] {
    margin: 0;
    padding-left: 24px;
}

.warranty-text li[b-82men5aelw] {
    margin-bottom: 8px;
}

.warranty-text li:last-child[b-82men5aelw] {
    margin-bottom: 0;
}

/* Responsive Breakpoints */
@media (max-width: 1024px) {
    .sidebar-container[b-82men5aelw] {
        display: none;
    }

    .mobile-bottom-bar[b-82men5aelw] {
        display: flex;
    }

    .floating-toc-btn[b-82men5aelw] {
        display: flex;
    }

    .main-content[b-82men5aelw] {
        width: 100%;
        padding-bottom: 80px;
    }
    
    .floating-save-indicator[b-82men5aelw] {
        /* No `top` override here: the banner and the topbar are the same height at every
           breakpoint (--topbar-height is never redefined), so the 104px above is the one
           offset that clears them and the old tighter 70px would still be clipped. */
        right: 16px;
        padding: 5px 10px 5px 8px;
        font-size: 10px;
    }
    
    .floating-save-indicator i[b-82men5aelw] {
        font-size: 12px;
    }
    
    .floating-save-indicator .save-time[b-82men5aelw] {
        display: none; /* Hide text on mobile, show only icon */
    }
}

@media (max-width: 768px) {
    /* Legacy support - Bootstrap grid handles responsive automatically */
    .form-row-2col[b-82men5aelw],
    .form-row-3col[b-82men5aelw] {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .form-section[b-82men5aelw] {
        padding: 20px 16px;
    }

    .loan-basics-section[b-82men5aelw] {
        padding: 20px 16px;
    }

    .section-header[b-82men5aelw] {
        gap: 12px;
        margin-bottom: 20px;
    }

    .section-header-icon[b-82men5aelw] {
        width: 40px;
        height: 40px;
    }

    .section-header-icon i[b-82men5aelw] {
        font-size: 20px;
    }

    .section-title[b-82men5aelw] {
        font-size: 18px;
    }

    .section-description[b-82men5aelw] {
        font-size: 13px;
    }

    .form-group.enhanced[b-82men5aelw] {
        margin-bottom: 20px;
    }

    .form-actions[b-82men5aelw] {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .action-buttons-right[b-82men5aelw] {
        flex-direction: column;
        width: 100%;
    }

    .btn-save-draft[b-82men5aelw],
    .btn-submit[b-82men5aelw],
    .btn-cancel[b-82men5aelw] {
        width: 100%;
        justify-content: center;
    }

    .page-container[b-82men5aelw] {
        padding: 0 12px;
    }
}

@media (max-width: 480px) {
    .application-title[b-82men5aelw] {
        font-size: 18px;
    }

    .application-subtitle[b-82men5aelw] {
        font-size: 12px;
    }

    .section-title[b-82men5aelw] {
        font-size: 15px;
    }

    .section-header-icon[b-82men5aelw] {
        width: 32px;
        height: 32px;
    }

    .section-header-icon i[b-82men5aelw] {
        font-size: 16px;
    }

    .form-label[b-82men5aelw] {
        font-size: 12px;
    }

    .form-input[b-82men5aelw] {
        font-size: 14px; /* Prevents zoom on iOS */
        padding: 8px 12px;
    }
    
    .form-section[b-82men5aelw] {
        padding: 16px 20px;
        margin-bottom: 14px;
    }
}

/* Multi-Step Wizard Styles */

/* Step Indicator */
.step-indicator-wrapper[b-82men5aelw] {
    position: sticky;
    top: 0;
    margin-bottom: 16px;
    margin-top: -32px;
    margin-left: -32px;
    margin-right: -32px;
    padding: 12px 32px;
    background: white;
    border-radius: 0;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
    z-index: 99;
}

.step-indicator[b-82men5aelw] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 0;
    position: relative;
}

.step-item[b-82men5aelw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    position: relative;
}

.step-node[b-82men5aelw] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 6px;
    transition: all 0.3s ease;
    z-index: 2;
    position: relative;
}

.step-node.future[b-82men5aelw] {
    background: #E5E7EB;
    color: #9CA3AF;
    border: 3px solid #E5E7EB;
}

.step-node.current[b-82men5aelw] {
    background: var(--brand-500);
    color: white;
    border: 3px solid var(--brand-500);
    box-shadow: 0 0 0 4px rgba(15, 23, 42, 0.08);
    animation: pulse-b-82men5aelw 2s infinite;
}

.step-node.completed[b-82men5aelw] {
    background: #10B981;
    color: white;
    border: 3px solid #10B981;
}

.step-node.clickable[b-82men5aelw] {
    cursor: pointer;
}

.step-node.clickable:hover[b-82men5aelw] {
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

@keyframes pulse-b-82men5aelw {
    0%, 100% {
        box-shadow: 0 0 0 4px rgba(15, 23, 42, 0.08);
    }
    50% {
        box-shadow: 0 0 0 8px rgba(15, 23, 42, 0.15);
    }
}

.step-label[b-82men5aelw] {
    text-align: center;
    max-width: 120px;
}

.step-title[b-82men5aelw] {
    font-size: 11px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 2px;
    line-height: 1.2;
}

.step-subtitle[b-82men5aelw] {
    font-size: 10px;
    color: var(--text-secondary);
}

.step-connector[b-82men5aelw] {
    position: absolute;
    height: 2px;
    background: #E5E7EB;
    top: 18px;
    left: 50%;
    right: -50%;
    z-index: 1;
}

.step-item:last-child .step-connector[b-82men5aelw] {
    display: none;
}

.step-node.completed ~ .step-connector[b-82men5aelw],
.step-item:has(.step-node.completed) + .step-item .step-connector[b-82men5aelw] {
    background: #10B981;
}

.current-step-description[b-82men5aelw] {
    text-align: center;
    padding: 8px 16px;
    background: #F0F9FF;
    border-radius: 6px;
    margin-top: 8px;
}

.current-step-description p[b-82men5aelw] {
    margin: 0;
    font-size: 11px;
    color: var(--brand-500);
    font-weight: 500;
    line-height: 1.3;
}

/* Wizard Action Buttons */
.form-actions-wizard[b-82men5aelw] {
    position: fixed;
    bottom: 0;
    left: 260px; /* Account for expanded sidebar - matches --sidebar-width-expanded */
    right: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding: 14px 24px;
    background: white;
    border-top: 1px solid #E5E7EB;
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.06);
    z-index: 100;
    transition: left 0.3s ease; /* Smooth transition when sidebar collapses */
}

/* When sidebar is collapsed */
.sidebar-collapsed .form-actions-wizard[b-82men5aelw],
body:has(.sidebar.collapsed) .form-actions-wizard[b-82men5aelw] {
    left: 72px; /* Account for collapsed sidebar - matches --sidebar-width-collapsed */
}

.wizard-actions-left[b-82men5aelw],
.wizard-actions-right[b-82men5aelw] {
    display: flex;
    gap: 10px;
    align-items: center;
}

.btn-back[b-82men5aelw],
.btn-next[b-82men5aelw],
.btn-submit[b-82men5aelw] {
    padding: 10px 20px;
    border-radius: 10px;
    font-weight: 600;
    font-size: 13px;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: none;
    line-height: 1.4;
}

.btn-back[b-82men5aelw] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.btn-back:hover[b-82men5aelw] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-next[b-82men5aelw] {
    background: var(--brand-600, #004980);
    color: white;
}

.btn-next:hover[b-82men5aelw] {
    background: var(--brand-700, #003760);
}

.btn-submit[b-82men5aelw] {
    background: var(--success-600, #059669);
    color: white;
}

.btn-submit:hover[b-82men5aelw] {
    background: var(--success-700, #047857);
}

.btn-save-draft[b-82men5aelw] {
    padding: 10px 18px;
    background: #fff;
    color: var(--brand-600, #004980);
    border: 1px solid var(--brand-300, #80B7D9);
    border-radius: 10px;
    font-weight: 600;
    font-size: 13px;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    line-height: 1.4;
}

.btn-save-draft:hover[b-82men5aelw] {
    background: var(--brand-50, #E6F2F8);
    border-color: var(--brand-600, #004980);
    color: var(--brand-700, #003760);
}

/* Review Cards */
.review-summary[b-82men5aelw] {
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 100%;
}

.review-card[b-82men5aelw] {
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.2s;
    width: 100%;
}

.review-card:hover[b-82men5aelw] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.review-card-header[b-82men5aelw] {
    background: #F9FAFB;
    padding: 16px 20px;
    border-bottom: 1px solid #E5E7EB;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.review-card-header h3[b-82men5aelw] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.review-card-header h3 i[b-82men5aelw] {
    color: var(--brand-500);
}

.btn-edit-link[b-82men5aelw] {
    background: transparent;
    border: none;
    color: var(--brand-500);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 6px;
    transition: all 0.2s;
}

.btn-edit-link:hover[b-82men5aelw] {
    background: #F0F9FF;
}

.review-card-body[b-82men5aelw] {
    padding: 20px;
}

.review-item[b-82men5aelw] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 12px 0;
    border-bottom: 1px solid #F3F4F6;
}

.review-item:last-child[b-82men5aelw] {
    border-bottom: none;
}

.review-item.has-error[b-82men5aelw] {
    background: #FEF2F2;
    padding-left: 12px;
    padding-right: 12px;
    margin: 0 -12px;
    border-radius: 6px;
}

.review-label[b-82men5aelw] {
    font-size: 13px;
    color: #6B7280;
    font-weight: 500;
    flex: 0 0 45%;
}

.review-value[b-82men5aelw] {
    font-size: 14px;
    color: var(--text-primary);
    font-weight: 600;
    text-align: right;
    flex: 1;
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Review Value Badges */
.review-value-badge[b-82men5aelw] {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
}

.badge-success[b-82men5aelw] {
    background: #D1FAE5;
    color: #065F46;
}

.badge-danger[b-82men5aelw] {
    background: #FEE2E2;
    color: #991B1B;
}

.badge-secondary[b-82men5aelw] {
    background: #F3F4F6;
    color: #6B7280;
}

/* Environmental Warning Note */
.environmental-warning-note[b-82men5aelw] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 16px;
    background: #FEF3C7;
    border: 1px solid #FCD34D;
    border-radius: 6px;
    color: #92400E;
    font-size: 13px;
    line-height: 1.5;
}

.environmental-warning-note i[b-82men5aelw] {
    font-size: 18px;
    color: #F59E0B;
    flex-shrink: 0;
    margin-top: 2px;
}

.environmental-warning-note span[b-82men5aelw] {
    flex: 1;
}

.environmental-warning-note strong[b-82men5aelw] {
    font-weight: 600;
}

/* Hierarchical Review Items (Child/Grandchild) */
.review-item-child[b-82men5aelw] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 6px;
    padding: 10px 0 10px 20px;
    border-bottom: 1px solid #F3F4F6;
    background: #FAFAFA;
    margin: 0 -20px;
    padding-left: 40px;
    padding-right: 20px;
    min-width: 0;
}

.review-item-child:last-child[b-82men5aelw] {
    border-bottom: none;
}

.review-item-grandchild[b-82men5aelw] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 6px;
    padding: 10px 0 10px 40px;
    border-bottom: 1px solid #F3F4F6;
    background: #F5F5F5;
    margin: 0 -20px;
    padding-left: 60px;
    padding-right: 20px;
    min-width: 0;
}

.review-item-grandchild:last-child[b-82men5aelw] {
    border-bottom: none;
}

.review-item-child .review-label[b-82men5aelw],
.review-item-grandchild .review-label[b-82men5aelw] {
    font-size: 12px;
    color: #6B7280;
    font-weight: 500;
    flex: 0 0 auto;
    white-space: nowrap;
}

.review-item-child .review-value[b-82men5aelw],
.review-item-grandchild .review-value[b-82men5aelw] {
    font-size: 13px;
    color: var(--text-primary);
    font-weight: 600;
    text-align: left;
    flex: 1 1 0;
    min-width: 0;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Review Subsections */
.review-subsection[b-82men5aelw] {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #E5E7EB;
}

.review-subsection:first-child[b-82men5aelw] {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.review-subsection-title[b-82men5aelw] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.review-subsection-title[b-82men5aelw]::before {
    content: '';
    width: 4px;
    height: 16px;
    background: var(--primary-teal);
    border-radius: 2px;
}

/* Simple Badge-like Yes/No/Not Answered Indicators */
.review-answer[b-82men5aelw] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    padding: 0.25rem 0.625rem;
    border-radius: 4px;
    white-space: nowrap;
    flex-shrink: 0;
    background: var(--neutral-100);
    color: var(--text-secondary, #6B7280);
}

.review-answer i[b-82men5aelw] {
    font-size: 0.875rem;
    color: var(--text-muted, #9CA3AF);
}

.review-answer-yes[b-82men5aelw] {
    background: var(--brand-50);
    color: var(--brand-700);
}

.review-answer-yes i[b-82men5aelw] {
    color: var(--brand-600);
}

.review-answer-no[b-82men5aelw] {
    background: var(--neutral-100);
    color: var(--text-secondary, #6B7280);
}

.review-answer-no i[b-82men5aelw] {
    color: var(--text-muted, #9CA3AF);
}

.review-answer-muted[b-82men5aelw] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 500;
    padding: 0.25rem 0.625rem;
    border-radius: 4px;
    background: var(--neutral-50);
    color: var(--text-muted, #9CA3AF);
    font-style: italic;
}

/* Environmental Risk Badges */
.environmental-badges[b-82men5aelw] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

.env-badge[b-82men5aelw] {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    border: 1px solid;
}

.env-badge-heavy[b-82men5aelw] {
    background: #FEF3C7;
    border-color: #F59E0B;
    color: #92400E;
}

.env-badge-rcra[b-82men5aelw] {
    background: #FEE2E2;
    border-color: #F87171;
    color: #991B1B;
}

.validation-error-notice[b-82men5aelw] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    background: #FEE2E2;
    border: 1px solid #FCA5A5;
    border-left: 3px solid var(--error-600);
    border-radius: 6px;
    color: #991B1B;
    font-size: 13px;
    font-weight: 500;
}

.validation-error-notice i[b-82men5aelw] {
    font-size: 16px;
    color: var(--error-600);
    flex-shrink: 0;
}

.premium-summary-card[b-82men5aelw] {
    border: 2px solid #10B981;
    background: linear-gradient(135deg, #F0FDF4 0%, #DCFCE7 100%);
}

.premium-summary-card .review-card-header[b-82men5aelw] {
    background: #10B981;
    color: white;
}

.premium-summary-card .review-card-header h3[b-82men5aelw] {
    color: white;
}

.premium-summary-card .review-card-header h3 i[b-82men5aelw] {
    color: white;
}

.premium-item[b-82men5aelw] {
    padding: 16px 0;
    border-bottom: 2px solid #10B981;
}

.premium-value[b-82men5aelw] {
    font-size: 24px;
    color: #10B981;
    font-weight: 700;
}

.custom-checkbox[b-82men5aelw] {
    padding-left: 2.5rem !important; /* Add space for the larger checkbox */
    display: flex;
    align-items: center;
}

.custom-checkbox .form-check-input[b-82men5aelw] {
    width: 1.3em;
    height: 1.3em;
    margin-left: -2rem; /* Pull back into the padding area */
    margin-top: 0;
    border: 2px solid #adb5bd; /* slightly thicker, visible border */
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}

.custom-checkbox .form-check-label[b-82men5aelw] {
    padding-left: 0.5rem;
    cursor: pointer;
    font-weight: 500;
    font-size: 14px;
    color: #495057;
    user-select: none; /* Prevent text selection on double click */
}

.custom-checkbox .form-check-input:checked[b-82men5aelw] {
    background-color: #0d6efd; /* Bootstrap primary color */
    border-color: #0d6efd;
    transform: scale(1.05); /* Subtle pop effect when checked */
}

.custom-checkbox .form-check-input:focus[b-82men5aelw] {
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); /* Soft focus ring */
}

/* Mobile Responsive for Wizard */
@media (max-width: 768px) {
    .main-content[b-82men5aelw] {
        padding-top: 20px;
        padding-bottom: 160px; /* More space for mobile stacked buttons */
    }

    .step-indicator-wrapper[b-82men5aelw] {
        margin-top: -20px;
        margin-left: -20px;
        margin-right: -20px;
        padding: 10px 20px;
    }

    .step-indicator[b-82men5aelw] {
        flex-direction: column;
        gap: 12px;
    }

    .step-item[b-82men5aelw] {
        flex-direction: row;
        width: 100%;
        align-items: center;
        justify-content: flex-start;
    }

    .step-node[b-82men5aelw] {
        margin-bottom: 0;
        margin-right: 10px;
        width: 32px;
        height: 32px;
        font-size: 13px;
    }

    .step-label[b-82men5aelw] {
        text-align: left;
        flex: 1;
        max-width: none;
    }

    .step-title[b-82men5aelw] {
        font-size: 12px;
    }

    .step-subtitle[b-82men5aelw] {
        font-size: 10px;
    }

    .current-step-description[b-82men5aelw] {
        padding: 6px 12px;
        font-size: 10px;
    }

    .step-connector[b-82men5aelw] {
        display: none;
    }


    .form-actions-wizard[b-82men5aelw] {
        left: 0; /* Full width on mobile - no sidebar */
        flex-direction: column;
        gap: 10px;
        padding: 12px 16px;
    }

    .wizard-actions-left[b-82men5aelw],
    .wizard-actions-right[b-82men5aelw] {
        width: 100%;
        justify-content: center;
    }

    .wizard-actions-right[b-82men5aelw] {
        flex-direction: column;
        gap: 12px;
    }

    .btn-back[b-82men5aelw],
    .btn-next[b-82men5aelw],
    .btn-submit[b-82men5aelw],
    .btn-cancel[b-82men5aelw],
    .btn-save-draft[b-82men5aelw] {
        width: 100%;
        justify-content: center;
    }

    .review-item[b-82men5aelw] {
        flex-direction: column;
        gap: 6px;
    }

    .review-label[b-82men5aelw],
    .review-value[b-82men5aelw] {
        text-align: left;
    }
}

/* Application Progress Card - Compact with Simplified Dots */
.progress-section-card[b-82men5aelw] {
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-700) 100%);
    border-radius: 10px;
    padding: 14px 16px;
    margin-bottom: 14px;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.2), 0 2px 6px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
}

.progress-section-card[b-82men5aelw]::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: linear-gradient(45deg, transparent 30%, rgba(255, 255, 255, 0.1) 50%, transparent 70%);
    animation: shine-b-82men5aelw 3s infinite;
}

@keyframes shine-b-82men5aelw {
    0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); }
    100% { transform: translateX(100%) translateY(100%) rotate(45deg); }
}

.progress-card-header[b-82men5aelw] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    color: white;
}

.progress-card-header i[b-82men5aelw] {
    font-size: 18px;
    color: #FCD34D;
    animation: lightning-pulse-b-82men5aelw 1.5s ease-in-out infinite;
}

@keyframes lightning-pulse-b-82men5aelw {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.7; }
}

.progress-title[b-82men5aelw] {
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.progress-stats[b-82men5aelw] {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin-bottom: 10px;
}

.progress-percentage-large[b-82men5aelw] {
    font-size: 28px;
    font-weight: 800;
    color: white;
    line-height: 1;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.progress-status-text[b-82men5aelw] {
    font-size: 12px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.95);
}

.progress-bar-container[b-82men5aelw] {
    margin-bottom: 10px;
}

.progress-bar-track[b-82men5aelw] {
    height: 6px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.2);
}

.progress-bar-fill[b-82men5aelw] {
    height: 100%;
    background: linear-gradient(90deg, #10B981 0%, #059669 100%);
    border-radius: 20px;
    transition: width 0.5s ease;
    position: relative;
    box-shadow: 0 1px 4px rgba(16, 185, 129, 0.5);
}

.progress-bar-shine[b-82men5aelw] {
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.4) 50%, transparent 100%);
    animation: bar-shine-b-82men5aelw 2s infinite;
}

@keyframes bar-shine-b-82men5aelw {
    0% { left: -100%; }
    100% { left: 200%; }
}
/* ─── Flow switcher (both forms available; bank setting is only the default) ─── */
.flow-switch-banner[b-82men5aelw] {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    background: #f0fdfa;
    border: 1px solid #99f6e4;
    border-radius: 10px;
    padding: 12px 16px;
    margin-bottom: 16px;
    font-size: var(--font-size-sm, 0.875rem);
    color: #134e4a;
}

.flow-switch-banner i[b-82men5aelw] {
    color: #0f766e;
    font-size: 16px;
    margin-top: 1px;
}

.flow-switch-banner a[b-82men5aelw] {
    color: #0f766e;
    font-weight: 600;
}

/* Loan Basics: each column stacks its fields independently so the variable-height
   policy-term card never opens gaps in the other column. */
.loan-basics-col[b-82men5aelw] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Policy Term + balloon child question group — borderless; the term input and the
   balloon question read as one stack, with the balloon as a soft contextual panel. */
.policy-term-group[b-82men5aelw] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.policy-term-group .term-echo[b-82men5aelw] {
    color: var(--gray-500, #6b7280);
    font-size: var(--font-size-sm, 0.875rem);
    white-space: nowrap;
}

.policy-term-child[b-82men5aelw] {
    background: #f8fafc;
    border: 1px solid var(--gray-200, #e5e7eb);
    border-radius: 10px;
    padding: 14px 16px;
}

.policy-term-child .child-label-bar[b-82men5aelw] {
    border-left: 3px solid var(--brand-500, #0d6efd);
    padding-left: 12px;
}
/* /Components/Pages/Applications/PremiumEstimatePreviewPage.razor.rz.scp.css */
/* ============================================
   Premium Estimate Preview Page
   ============================================ */

/* Loading & Error States */
.loading-container[b-51piqzvmkf],
.error-container[b-51piqzvmkf] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
    gap: 16px;
    color: #64748b;
}

/* Skeleton loading state */
@keyframes prem-est-skel-pulse-b-51piqzvmkf {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.skel-block[b-51piqzvmkf] {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: prem-est-skel-pulse-b-51piqzvmkf 1.5s ease-in-out infinite;
    border-radius: 4px;
}

.prem-est-skeleton[b-51piqzvmkf] {
    min-height: 60vh;
}

.skel-action-bar[b-51piqzvmkf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 32px;
    background: white;
    border-bottom: 1px solid #e2e8f0;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.skel-document[b-51piqzvmkf] {
    max-width: 800px;
    margin: 32px auto;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.04);
    padding: 48px;
}

.skel-doc-header[b-51piqzvmkf] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
}

.skel-doc-header-left[b-51piqzvmkf] {
    flex: 1;
}

.skel-doc-header-right[b-51piqzvmkf] {
    text-align: right;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.skel-doc-meta[b-51piqzvmkf] {
    display: flex;
    justify-content: space-between;
    padding: 12px 0;
    margin-bottom: 4px;
}

.skel-doc-meta > div[b-51piqzvmkf] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.skel-cost-table[b-51piqzvmkf] {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 24px;
}

.skel-cost-header[b-51piqzvmkf] {
    padding: 12px 20px;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
}

.skel-cost-row[b-51piqzvmkf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 1px solid #f1f5f9;
}

.skel-cost-row:last-of-type[b-51piqzvmkf] {
    border-bottom: none;
}

.skel-cost-info[b-51piqzvmkf] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.skel-cost-total[b-51piqzvmkf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    background: #f0fdfa;
    border-top: 3px solid #0f6d8e;
}

/* Action Bar */
.action-bar[b-51piqzvmkf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 32px;
    background: white;
    border-bottom: 1px solid #e2e8f0;
    position: sticky;
    top: 0;
    z-index: 100;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.btn-back[b-51piqzvmkf] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: none;
    border: none;
    color: #0f6d8e;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    padding: 8px 12px;
    border-radius: 6px;
    transition: background 0.15s;
}

.btn-back:hover[b-51piqzvmkf] {
    background: #f0f9ff;
}

.btn-print[b-51piqzvmkf] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #0f6d8e;
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
}

.btn-print:hover[b-51piqzvmkf] {
    background: #0b5a75;
}

.print-group[b-51piqzvmkf] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
}

.print-hint[b-51piqzvmkf] {
    font-size: 11px;
    color: #94a3b8;
    font-style: italic;
}

/* Document Container */
.estimate-document[b-51piqzvmkf] {
    max-width: 800px;
    margin: 32px auto;
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.04);
    padding: 48px;
}

/* Document Header */
.document-header[b-51piqzvmkf] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
}

.header-left[b-51piqzvmkf] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
}

.brand-logo[b-51piqzvmkf] {
    height: 46px;
    width: auto;
    max-width: 100%;
    display: block;
    margin-bottom: 6px;
}

/* Text wordmark stand-in for the brand logo. Sized to occupy the same
   ~34px-tall box as .brand-logo so the header height (and one-page print
   fit) is preserved. */
.brand-name[b-51piqzvmkf] {
    display: block;
    height: 34px;
    line-height: 34px;
    margin-bottom: 6px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 24px;
    font-weight: 700;
    color: #0f6d8e;
    white-space: nowrap;
}

.brand-subtitle[b-51piqzvmkf] {
    font-size: 14px;
    color: #64748b;
    margin: 0;
}

.header-right[b-51piqzvmkf] {
    text-align: right;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.header-logo[b-51piqzvmkf] {
    height: 40px;
    width: auto;
    margin-bottom: 4px;
}

.header-rating[b-51piqzvmkf] {
    font-size: 12px;
    color: #64748b;
    margin: 0;
}

/* Document Meta */
.document-meta[b-51piqzvmkf] {
    display: flex;
    justify-content: space-between;
    padding: 12px 0;
    margin-bottom: 4px;
}

.document-meta > div[b-51piqzvmkf] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.meta-label[b-51piqzvmkf] {
    font-size: 12px;
    font-weight: 600;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.meta-value[b-51piqzvmkf] {
    font-size: 14px;
    color: #1e293b;
    font-weight: 500;
}

/* Teal Divider */
.teal-divider[b-51piqzvmkf] {
    border: none;
    height: 3px;
    background: linear-gradient(90deg, #0f6d8e, #14919b);
    margin: 0 0 32px 0;
}

/* Summary Section */
.summary-section[b-51piqzvmkf] {
    margin-bottom: 32px;
}

.section-title[b-51piqzvmkf] {
    font-size: 20px;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 12px 0;
}

.section-description[b-51piqzvmkf] {
    font-size: 14px;
    line-height: 1.7;
    color: #475569;
    margin: 0 0 24px 0;
}

/* Cost Table */
.cost-table[b-51piqzvmkf] {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 24px;
}

.cost-header[b-51piqzvmkf] {
    padding: 12px 20px;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
    font-size: 13px;
    font-weight: 600;
    color: #64748b;
}

.cost-row[b-51piqzvmkf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 1px solid #f1f5f9;
}

.cost-row:last-of-type[b-51piqzvmkf] {
    border-bottom: none;
}

.cost-info[b-51piqzvmkf] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.cost-name[b-51piqzvmkf] {
    font-size: 15px;
    font-weight: 600;
    color: #1e293b;
}

.cost-description[b-51piqzvmkf] {
    font-size: 13px;
    color: #94a3b8;
}

.cost-amount[b-51piqzvmkf] {
    font-size: 16px;
    font-weight: 700;
    color: #1e293b;
    white-space: nowrap;
}

.borrower-pays-row[b-51piqzvmkf] {
    background: #fffbeb;
}

.borrower-pays-row .cost-name[b-51piqzvmkf]::after {
    content: " (Borrower Pays)";
    font-size: 12px;
    font-weight: 500;
    color: #b45309;
}

.borrower-pays-row .cost-amount[b-51piqzvmkf] {
    color: #9CA3AF;
    text-decoration: line-through;
}

/* Cost Total */
.cost-total[b-51piqzvmkf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    background: #f0fdfa;
    border-top: 3px solid #0f6d8e;
}

.total-label[b-51piqzvmkf] {
    font-size: 15px;
    font-weight: 700;
    color: #1e293b;
}

.total-amount[b-51piqzvmkf] {
    font-size: 22px;
    font-weight: 700;
    color: #0f6d8e;
}

/* Environmental Review Notice */
.review-notice[b-51piqzvmkf] {
    background: #fffbeb;
    border-left: 4px solid #f59e0b;
    border-radius: 4px;
    padding: 16px 20px;
    margin-bottom: 32px;
}

.notice-title[b-51piqzvmkf] {
    font-size: 13px;
    font-weight: 700;
    color: #b45309;
    margin-bottom: 6px;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.notice-text[b-51piqzvmkf] {
    font-size: 13px;
    line-height: 1.6;
    color: #78716c;
    margin: 0;
}

/* Terms & Conditions */
.terms-section[b-51piqzvmkf] {
    margin-bottom: 32px;
}

.terms-title[b-51piqzvmkf] {
    font-size: 16px;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 12px 0;
}

.terms-list[b-51piqzvmkf] {
    list-style: disc;
    padding-left: 20px;
    margin: 0;
}

.terms-list li[b-51piqzvmkf] {
    font-size: 13px;
    line-height: 1.7;
    color: #64748b;
    margin-bottom: 6px;
}

/* Document Footer */
.document-footer[b-51piqzvmkf] {
    display: flex;
    justify-content: space-between;
    padding-top: 20px;
    border-top: 1px solid #e2e8f0;
}

.footer-left[b-51piqzvmkf],
.footer-right[b-51piqzvmkf] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.footer-right[b-51piqzvmkf] {
    text-align: right;
}

.footer-company[b-51piqzvmkf] {
    font-size: 12px;
    font-weight: 600;
    color: #0f6d8e;
}

.footer-ref[b-51piqzvmkf] {
    font-size: 12px;
    font-weight: 500;
    color: #475569;
}

.footer-detail[b-51piqzvmkf] {
    font-size: 11px;
    color: #94a3b8;
}

/* ============================================
   Print Styles
   ============================================ */
@page {
    margin: 8mm 10mm 8mm 10mm;
    size: auto;
}

@media print {
    .no-print[b-51piqzvmkf] {
        display: none !important;
    }

    .estimate-document[b-51piqzvmkf] {
        margin: 0;
        padding: 12px 32px;
        box-shadow: none;
        border-radius: 0;
        max-width: 100%;
    }

    .cost-total[b-51piqzvmkf],
    .review-notice[b-51piqzvmkf] {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .teal-divider[b-51piqzvmkf] {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .cost-table[b-51piqzvmkf] {
        page-break-inside: avoid;
        break-inside: avoid;
    }

    .terms-section[b-51piqzvmkf] {
        page-break-inside: avoid;
        break-inside: avoid;
    }

    .review-notice[b-51piqzvmkf],
    .cost-row[b-51piqzvmkf],
    .cost-total[b-51piqzvmkf],
    .document-footer[b-51piqzvmkf] {
        break-inside: avoid;
    }

    /* Tighten vertical rhythm so the document fits a single page
       at the browser's default (100%) print scale. */
    .document-header[b-51piqzvmkf] {
        margin-bottom: 8px;
    }

    .brand-logo[b-51piqzvmkf] {
        /* keep the logo's native 4.35:1 aspect ratio (500x115), slightly smaller for print */
        width: auto !important;
        height: 28px !important;
    }

    .brand-name[b-51piqzvmkf] {
        /* shrink to match the print logo box so the header keeps its height */
        height: 28px;
        line-height: 28px;
        font-size: 20px;
        margin-bottom: 4px;
    }

    .brand-subtitle[b-51piqzvmkf] {
        font-size: 12px;
    }

    .header-logo[b-51piqzvmkf] {
        height: 32px;
    }

    .document-meta[b-51piqzvmkf] {
        padding: 4px 0;
        margin-bottom: 2px;
    }

    .teal-divider[b-51piqzvmkf] {
        margin-bottom: 12px;
    }

    .summary-section[b-51piqzvmkf] {
        margin-bottom: 14px;
    }

    .section-title[b-51piqzvmkf] {
        font-size: 18px;
        margin-bottom: 6px;
    }

    .section-description[b-51piqzvmkf] {
        font-size: 13px;
        line-height: 1.5;
        margin-bottom: 12px;
    }

    .cost-table[b-51piqzvmkf] {
        margin-bottom: 0;
    }

    .cost-header[b-51piqzvmkf] {
        padding: 7px 16px;
    }

    .cost-row[b-51piqzvmkf] {
        padding: 7px 16px;
    }

    .cost-name[b-51piqzvmkf] {
        font-size: 14px;
    }

    .cost-description[b-51piqzvmkf] {
        font-size: 12px;
    }

    .cost-amount[b-51piqzvmkf] {
        font-size: 14px;
    }

    .cost-total[b-51piqzvmkf] {
        padding: 10px 16px;
    }

    .total-amount[b-51piqzvmkf] {
        font-size: 18px;
    }

    .review-notice[b-51piqzvmkf] {
        padding: 8px 16px;
        margin-bottom: 10px;
    }

    .notice-text[b-51piqzvmkf] {
        font-size: 12px;
        line-height: 1.5;
    }

    .terms-section[b-51piqzvmkf] {
        margin-bottom: 10px;
    }

    .terms-title[b-51piqzvmkf] {
        font-size: 15px;
        margin-bottom: 6px;
    }

    .terms-list li[b-51piqzvmkf] {
        font-size: 12px;
        line-height: 1.5;
        margin-bottom: 4px;
    }

    .document-footer[b-51piqzvmkf] {
        padding-top: 10px;
    }
}
/* /Components/Pages/Applications/ReferralModal.razor.rz.scp.css */
/* Footer buttons per the canonical modal design (EnvironmentalReviewModal):
   ghost cancel, semantic-color confirm. Chrome (header/footer/radius) comes
   from the global wwwroot/css/modal-theme.css. */

.modal-footer .btn[b-okcoryu2py] {
    border-radius: 10px;
    font-weight: 600;
    padding: 0.55rem 1.15rem;
}

.modal-footer .btn-secondary[b-okcoryu2py] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.modal-footer .btn-secondary:hover[b-okcoryu2py] {
    background: #F1F5F9;
    color: #0F172A;
}
/* /Components/Pages/BankPortal/ApplicationsPage.razor.rz.scp.css */
/* BankPortal Applications Page Styles */

/* ========================================
   Page Header
   ======================================== */
.page-header[b-fta9f4dtns] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    gap: 24px;
    flex-wrap: wrap;
}

.header-left[b-fta9f4dtns] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.page-title[b-fta9f4dtns] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.page-subtitle[b-fta9f4dtns] {
    font-size: 0.875rem;
    color: #6B7280;
    margin: 0;
    font-weight: 400;
}

/* ========================================
   Inline Stats
   ======================================== */
.inline-stats[b-fta9f4dtns] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.mini-stat[b-fta9f4dtns] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 8px;
    padding: 8px 14px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
}

.mini-stat > i[b-fta9f4dtns] {
    font-size: 1rem;
    color: var(--brand-500);
}

.stat-content[b-fta9f4dtns] {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.mini-stat-value[b-fta9f4dtns] {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1F2937;
}

.mini-stat-label[b-fta9f4dtns] {
    font-size: 0.7rem;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.btn-icon-refresh[b-fta9f4dtns] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 8px;
    color: var(--brand-500);
    cursor: pointer;
    transition: all 0.2s;
}

.btn-icon-refresh:hover:not(:disabled)[b-fta9f4dtns] {
    background: rgba(15, 23, 42, 0.08);
    border-color: var(--brand-500);
}

.btn-icon-refresh:disabled[b-fta9f4dtns] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-icon-refresh.refreshing i[b-fta9f4dtns] {
    animation: spin-b-fta9f4dtns 1s linear infinite;
}

@keyframes spin-b-fta9f4dtns {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.bi-arrow-clockwise.spinning[b-fta9f4dtns] {
    animation: spin-b-fta9f4dtns 1s linear infinite;
}

/* New Application Button */
.btn-new-app[b-fta9f4dtns] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    font-size: 0.875rem;
    font-weight: 600;
    border-radius: 8px;
}

/* ========================================
   Filters Card
   ======================================== */
.filters-card[b-fta9f4dtns] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    padding: 16px;
    margin-bottom: 16px;
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.05);
}

.filters-bar[b-fta9f4dtns] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.filters-left[b-fta9f4dtns] {
    flex: 1;
    min-width: 280px;
    max-width: 400px;
}

.filters-right[b-fta9f4dtns] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* Filter Dropdowns */
.filter-dropdown .btn-filter[b-fta9f4dtns] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 8px 14px;
    font-size: 0.875rem;
    color: #374151;
    font-weight: 500;
    transition: all 0.2s;
    white-space: nowrap;
}

.filter-dropdown .btn-filter:hover[b-fta9f4dtns] {
    background: #F9FAFB;
    border-color: #D1D5DB;
}

.filter-dropdown .btn-filter i:first-child[b-fta9f4dtns] {
    color: #6B7280;
    font-size: 0.875rem;
}

.filter-dropdown .dropdown-menu[b-fta9f4dtns] {
    min-width: 220px;
    padding: 8px 0;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
}

.filter-dropdown .dropdown-header[b-fta9f4dtns] {
    font-size: 0.7rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 8px 16px;
}

.filter-dropdown .dropdown-item[b-fta9f4dtns] {
    display: flex;
    align-items: center;
    padding: 10px 16px;
    font-size: 0.875rem;
    color: #374151;
    border: none;
    background: none;
    width: 100%;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s;
}

.filter-dropdown .dropdown-item:hover[b-fta9f4dtns] {
    background: rgba(15, 23, 42, 0.05);
}

.filter-dropdown .dropdown-item.active[b-fta9f4dtns] {
    background: rgba(15, 23, 42, 0.08);
    color: var(--brand-500);
    font-weight: 600;
}

/* Custom Date Range Styles */
.date-dropdown-menu[b-fta9f4dtns] {
    min-width: 220px;
}

.date-dropdown-menu.show[b-fta9f4dtns] {
    display: block;
}

.custom-date-range-container[b-fta9f4dtns] {
    padding: 12px 16px;
    background: #F9FAFB;
    border-top: 1px solid #E5E7EB;
}

.custom-date-inputs[b-fta9f4dtns] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.date-input-group[b-fta9f4dtns] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.date-input-group label[b-fta9f4dtns] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.date-input-group input[type="date"][b-fta9f4dtns] {
    padding: 6px 10px;
    font-size: 0.875rem;
    border: 1px solid #D1D5DB;
    border-radius: 6px;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.date-input-group input[type="date"]:focus[b-fta9f4dtns] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.btn-apply-date[b-fta9f4dtns] {
    margin-top: 4px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    background: var(--accent-color);
    border: none;
    border-radius: 6px;
    color: white;
    cursor: pointer;
    transition: background 0.15s, filter 0.15s;
}

.btn-apply-date:hover[b-fta9f4dtns] {
    filter: brightness(0.85);
}

/* Small status badge in dropdown */
.status-badge-sm[b-fta9f4dtns] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    margin-right: 8px;
    font-size: 0.65rem;
}

.status-badge-sm i[b-fta9f4dtns] {
    font-size: 10px;
}

/* ========================================
   Active Filters
   ======================================== */
.active-filters[b-fta9f4dtns] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    padding-top: 14px;
    margin-top: 14px;
    border-top: 1px solid #F1F5F9;
}

.active-filters-label[b-fta9f4dtns] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.filter-tag[b-fta9f4dtns] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #F3F4F6;
    border: 1px solid #E5E7EB;
    border-radius: 20px;
    padding: 4px 10px 4px 12px;
    font-size: 0.8rem;
    color: #374151;
}

.filter-tag i[b-fta9f4dtns] {
    color: #6B7280;
    font-size: 0.7rem;
}

.filter-tag-remove[b-fta9f4dtns] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    background: transparent;
    border: none;
    border-radius: 50%;
    color: #9CA3AF;
    cursor: pointer;
    padding: 0;
    transition: all 0.15s;
}

.filter-tag-remove:hover[b-fta9f4dtns] {
    background: rgba(220, 38, 38, 0.1);
    color: var(--error-600);
}

.btn-clear-all[b-fta9f4dtns] {
    background: none;
    border: none;
    color: var(--brand-500);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    transition: background 0.15s;
}

.btn-clear-all:hover[b-fta9f4dtns] {
    background: rgba(15, 23, 42, 0.08);
}

/* ========================================
   Card & Table
   ======================================== */
.card[b-fta9f4dtns] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.05);
    overflow: hidden;
}

.table-responsive[b-fta9f4dtns] {
    overflow-x: auto;
    margin: 0;
}

.applications-table[b-fta9f4dtns] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.875rem;
}

.applications-table thead[b-fta9f4dtns] {
    background-color: #F8FAFC;
    position: sticky;
    top: 0;
    z-index: 1;
}

.applications-table thead th[b-fta9f4dtns] {
    padding: 12px 16px;
    text-align: left;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748B;
    border-bottom: 1px solid #E2E8F0;
    white-space: nowrap;
    user-select: none;
}

.applications-table thead th.sortable-header[b-fta9f4dtns] {
    cursor: pointer;
}

.applications-table thead th.sortable-header:hover[b-fta9f4dtns],
.applications-table thead th:hover[b-fta9f4dtns] {
    color: var(--brand-500);
    background-color: #F1F5F9;
}

.applications-table thead th i[b-fta9f4dtns] {
    margin-left: 4px;
    font-size: 0.65rem;
}

@keyframes fadeIn-b-fta9f4dtns {
    from { opacity: 0; }
    to { opacity: 1; }
}

.applications-table tbody tr[b-fta9f4dtns] {
    transition: all 0.12s ease;
    border-left: 3px solid transparent;
    background: white;
    animation: fadeIn-b-fta9f4dtns 0.3s ease-out forwards;
    opacity: 0;
}

/* Staggered row animations */
.applications-table tbody tr:nth-child(1)[b-fta9f4dtns] { animation-delay: 50ms; }
.applications-table tbody tr:nth-child(2)[b-fta9f4dtns] { animation-delay: 80ms; }
.applications-table tbody tr:nth-child(3)[b-fta9f4dtns] { animation-delay: 110ms; }
.applications-table tbody tr:nth-child(4)[b-fta9f4dtns] { animation-delay: 140ms; }
.applications-table tbody tr:nth-child(5)[b-fta9f4dtns] { animation-delay: 170ms; }
.applications-table tbody tr:nth-child(6)[b-fta9f4dtns] { animation-delay: 200ms; }
.applications-table tbody tr:nth-child(7)[b-fta9f4dtns] { animation-delay: 230ms; }
.applications-table tbody tr:nth-child(8)[b-fta9f4dtns] { animation-delay: 260ms; }
.applications-table tbody tr:nth-child(9)[b-fta9f4dtns] { animation-delay: 290ms; }
.applications-table tbody tr:nth-child(10)[b-fta9f4dtns] { animation-delay: 320ms; }

.applications-table tbody tr:nth-child(even)[b-fta9f4dtns] {
    background-color: #FAFBFC;
}

.applications-table tbody tr.clickable-row[b-fta9f4dtns] {
    cursor: pointer;
}

.applications-table tbody tr:hover[b-fta9f4dtns] {
    background-color: #EFF6FF;
    border-left: 3px solid var(--brand-500);
}

.applications-table tbody td[b-fta9f4dtns] {
    padding: 5px 8px;
    border-bottom: 1px solid #F1F5F9;
    vertical-align: middle;
    color: #374151;
}

/* Cell Styles */
.loan-number[b-fta9f4dtns] {
    color: var(--brand-500);
    font-weight: 600;
    text-decoration: none;
    transition: all 0.15s;
    font-size: 0.875rem;
}

.loan-number:hover[b-fta9f4dtns] {
    color: #004880;
    text-decoration: underline;
}

.property-info[b-fta9f4dtns] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.property-location[b-fta9f4dtns] {
    font-weight: 500;
    color: #1F2937;
    font-size: 0.875rem;
}

.amount-cell[b-fta9f4dtns] {
    font-weight: 600;
    color: #1F2937;
    font-size: 0.875rem;
    font-variant-numeric: tabular-nums;
}

.date-cell[b-fta9f4dtns] {
    color: #6B7280;
    font-size: 0.8rem;
}

.actions-cell[b-fta9f4dtns] {
    text-align: right;
}

/* ========================================
   Status Badges
   ======================================== */
.applications-table .badge[b-fta9f4dtns] {
    padding: 5px 10px;
    font-size: 0.8rem;
    font-weight: 600;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.badge i[b-fta9f4dtns] {
    font-size: 12px;
}

.badge.bg-danger[b-fta9f4dtns] {
    background-color: #FEE2E2 !important;
    color: var(--error-600) !important;
}

.badge.bg-warning[b-fta9f4dtns] {
    background-color: #FEF3C7 !important;
    color: #D97706 !important;
}

.badge.bg-secondary[b-fta9f4dtns] {
    background-color: #F3F4F6 !important;
    color: #4B5563 !important;
}

.badge.bg-info[b-fta9f4dtns] {
    background-color: #E0F2FE !important;
    color: #0369A1 !important;
}

.badge.bg-success[b-fta9f4dtns] {
    background-color: #D1FAE5 !important;
    color: #047857 !important;
}

.badge.bg-primary[b-fta9f4dtns] {
    background-color: #DBEAFE !important;
    color: #1D4ED8 !important;
}

/* ========================================
   Action Buttons
   ======================================== */
.action-buttons[b-fta9f4dtns] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.btn-action[b-fta9f4dtns] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 12px;
    font-size: 0.78rem;
    font-weight: 500;
    color: var(--brand-500, #0D6785);
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
    font-family: inherit;
}

.btn-action:hover[b-fta9f4dtns] {
    background: #EFF6FF;
    border-color: #BFDBFE;
}

.btn-action-success[b-fta9f4dtns] {
    color: #059669;
    border-color: #A7F3D0;
}

.btn-action-success:hover[b-fta9f4dtns] {
    background: #ECFDF5;
    border-color: #059669;
}

.btn-action-secondary[b-fta9f4dtns] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 10px;
    font-size: 0.72rem;
    font-weight: 500;
    color: #6B7280;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
    font-family: inherit;
}

.btn-action-secondary:hover[b-fta9f4dtns] {
    background: #F9FAFB;
    border-color: #D1D5DB;
}

.btn-action-danger[b-fta9f4dtns] {
    color: #DC2626;
    border-color: #FECACA;
}

.btn-action-danger:hover[b-fta9f4dtns] {
    background: #FEF2F2;
    border-color: #DC2626;
    color: #B91C1C;
}

/* Sweet Alert Style Modal */
.swal-backdrop[b-fta9f4dtns] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(4px);
    z-index: 1060;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    animation: swalFadeIn-b-fta9f4dtns 0.15s ease;
}

.swal-modal[b-fta9f4dtns] {
    background: white;
    border-radius: 16px;
    padding: 32px 28px 24px;
    max-width: 380px;
    width: 100%;
    text-align: center;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    animation: swalPopIn-b-fta9f4dtns 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.swal-icon[b-fta9f4dtns] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    font-size: 1.8rem;
}

.swal-icon-warning[b-fta9f4dtns] {
    background: #FEF3C7;
    color: #D97706;
    border: 3px solid #FDE68A;
}

.swal-title[b-fta9f4dtns] {
    font-size: 1.2rem;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 8px;
}

.swal-text[b-fta9f4dtns] {
    font-size: 0.85rem;
    color: #6B7280;
    line-height: 1.5;
    margin: 0 0 24px;
}

.swal-text strong[b-fta9f4dtns] {
    color: #374151;
}

.swal-actions[b-fta9f4dtns] {
    display: flex;
    gap: 10px;
    justify-content: center;
}

.swal-btn[b-fta9f4dtns] {
    padding: 9px 20px;
    border-radius: 8px;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
    border: none;
    font-family: inherit;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.swal-btn-cancel[b-fta9f4dtns] {
    background: #F3F4F6;
    color: #6B7280;
}

.swal-btn-cancel:hover[b-fta9f4dtns] {
    background: #E5E7EB;
    color: #374151;
}

.swal-btn-confirm[b-fta9f4dtns] {
    background: #DC2626;
    color: white;
}

.swal-btn-confirm:hover[b-fta9f4dtns] {
    background: #B91C1C;
}

@keyframes swalFadeIn-b-fta9f4dtns {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes swalPopIn-b-fta9f4dtns {
    from { opacity: 0; transform: scale(0.85); }
    to { opacity: 1; transform: scale(1); }
}

.status-archived[b-fta9f4dtns] {
    background: #F1F5F9;
    color: #64748B;
}

.btn-action-subtle[b-fta9f4dtns] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 10px;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--brand-500);
    background-color: white;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
    margin-left: 4px;
}

.btn-action-subtle:first-child[b-fta9f4dtns] {
    margin-left: 0;
}

.btn-action-subtle:hover[b-fta9f4dtns] {
    background-color: #EFF6FF;
    color: #004880;
    border-color: #BFDBFE;
}

.btn-action-subtle i[b-fta9f4dtns] {
    font-size: 0.85rem;
    color: var(--brand-500);
}

.btn-action-subtle:hover i[b-fta9f4dtns] {
    color: #004880;
}

.btn-action-subtle:disabled[b-fta9f4dtns] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* ========================================
   Loading & Empty States
   ======================================== */
.loading-state[b-fta9f4dtns] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 40px 20px;
    color: #6B7280;
}

.loading-state .spinner-border[b-fta9f4dtns] {
    width: 2rem;
    height: 2rem;
}

/* Skeleton table rows */
@keyframes app-skel-pulse-b-fta9f4dtns {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.table-row-skeleton td[b-fta9f4dtns] {
    padding: 0.875rem 0.75rem;
}

.row-skel[b-fta9f4dtns] {
    height: 1.0625rem;
    width: 80px;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: app-skel-pulse-b-fta9f4dtns 1.5s ease-in-out infinite;
}

.row-skel-badge[b-fta9f4dtns] {
    height: 1.25rem;
    width: 90px;
    border-radius: 9999px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: app-skel-pulse-b-fta9f4dtns 1.5s ease-in-out infinite;
}

.empty-state[b-fta9f4dtns] {
    text-align: center;
    padding: 48px 32px !important;
    color: #6B7280;
}

.empty-state i[b-fta9f4dtns] {
    font-size: 40px;
    display: block;
    margin-bottom: 12px;
    color: #D1D5DB;
}

.empty-state span[b-fta9f4dtns] {
    font-size: 0.9rem;
    color: #9CA3AF;
    display: block;
}

.empty-state-hint[b-fta9f4dtns] {
    font-size: 0.8rem;
    color: #9CA3AF;
    margin: 8px 0 0 0;
}


/* Custom purple badge classes for ReferredToUnderwriter status */
.bg-purple-subtle[b-fta9f4dtns] {
    background-color: #E9D5FF !important;
}

.border-purple-subtle[b-fta9f4dtns] {
    border-color: #C4B5FD !important;
}

.text-purple-emphasis[b-fta9f4dtns] {
    color: #6B21A8 !important;
}

/* Custom orange badge classes for Referral status */
.bg-orange-subtle[b-fta9f4dtns] {
    background-color: #FED7AA !important;
}

.border-orange-subtle[b-fta9f4dtns] {
    border-color: #FDBA74 !important;
}

.text-orange-emphasis[b-fta9f4dtns] {
    color: #9A3412 !important;
}

/* Feature 072 — custom teal badge classes for the AwaitingBorrower ("Waiting for Borrower")
   status. Needed because Bootstrap 5.3 ships no teal *-subtle utility, and because the
   ToSubtleBadgeClass fallback is grey, which is indistinguishable from Cancelled/Archived. */
.bg-teal-subtle[b-fta9f4dtns] {
    background-color: #CCFBF1 !important;
}

.border-teal-subtle[b-fta9f4dtns] {
    border-color: #5EEAD4 !important;
}

.text-teal-emphasis[b-fta9f4dtns] {
    color: #115E59 !important;
}

/* ========================================
   Loan Officer Filter Dropdown
   ======================================== */
.loan-officer-dropdown-menu[b-fta9f4dtns] {
    min-width: 280px;
    max-height: 400px;
    overflow: hidden;
}

.loan-officer-dropdown-menu.show[b-fta9f4dtns] {
    display: flex;
    flex-direction: column;
}

.dropdown-search-container[b-fta9f4dtns] {
    padding: 8px 12px;
    position: sticky;
    top: 0;
    background: white;
    z-index: 1;
}

.dropdown-search[b-fta9f4dtns] {
    position: relative;
    display: flex;
    align-items: center;
}

.dropdown-search i.bi-search[b-fta9f4dtns] {
    position: absolute;
    left: 10px;
    color: #9CA3AF;
    font-size: 0.8rem;
    pointer-events: none;
}

.dropdown-search input[b-fta9f4dtns] {
    width: 100%;
    padding: 8px 32px 8px 32px;
    font-size: 0.875rem;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.dropdown-search input:focus[b-fta9f4dtns] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.dropdown-search input[b-fta9f4dtns]::placeholder {
    color: #9CA3AF;
}

.btn-clear-search[b-fta9f4dtns] {
    position: absolute;
    right: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    background: transparent;
    border: none;
    color: #9CA3AF;
    cursor: pointer;
    padding: 0;
    border-radius: 50%;
    transition: all 0.15s;
}

.btn-clear-search:hover[b-fta9f4dtns] {
    background: #F3F4F6;
    color: #6B7280;
}

.loan-officer-list-container[b-fta9f4dtns] {
    max-height: 250px;
    overflow-y: auto;
    padding: 0;
    margin: 0;
    list-style: none;
}

.loan-officer-list-container .dropdown-item[b-fta9f4dtns] {
    padding: 10px 16px;
}

.dropdown-item-empty[b-fta9f4dtns] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 20px 16px;
    color: #9CA3AF;
    font-size: 0.8rem;
}

.dropdown-item-empty i[b-fta9f4dtns] {
    font-size: 1.5rem;
    color: #D1D5DB;
}

/* Loan Officer Table Cell */
.loan-officer-cell[b-fta9f4dtns] {
    display: flex;
    align-items: center;
    font-size: 0.85rem;
    color: #4B5563;
    white-space: nowrap;
}

/* ========================================
   Responsive
   ======================================== */
@media (max-width: 992px) {
    .filters-bar[b-fta9f4dtns] {
        flex-direction: column;
        align-items: stretch;
    }
    
    .filters-left[b-fta9f4dtns] {
        max-width: none;
    }
    
    .filters-right[b-fta9f4dtns] {
        justify-content: flex-start;
    }
}

@media (max-width: 768px) {
    .page-header[b-fta9f4dtns] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .inline-stats[b-fta9f4dtns] {
        width: 100%;
        justify-content: flex-start;
    }
}
/* /Components/Pages/BankPortal/BankUserDashboardPage.razor.rz.scp.css */
/* Dashboard Header */
.dashboard-header[b-iqeh9mbf5e] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.5rem;
    gap: 1rem;
    flex-wrap: wrap;
}

.header-left[b-iqeh9mbf5e] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.page-title[b-iqeh9mbf5e] {
    font-weight: 600;
    color: var(--bs-emphasis-color);
}

.header-right[b-iqeh9mbf5e] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

/* Standalone filter toggle (Loan # TBD) — mirrors .btn-filter outside a dropdown */
.btn-filter-toggle[b-iqeh9mbf5e] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 0.5rem;
    padding: 0.5rem 0.875rem;
    font-size: 0.875rem;
    color: var(--bs-body-color);
    font-weight: 500;
    transition: all 0.2s;
    white-space: nowrap;
}

.btn-filter-toggle:hover[b-iqeh9mbf5e] {
    background: var(--bs-tertiary-bg);
    border-color: var(--bs-border-color);
}

.btn-filter-toggle i:first-child[b-iqeh9mbf5e] {
    color: var(--bs-secondary-color);
    font-size: 0.875rem;
}

.btn-filter-toggle.active[b-iqeh9mbf5e] {
    background: var(--accent-color);
    border-color: var(--accent-color);
    color: white;
}

.btn-filter-toggle.active i:first-child[b-iqeh9mbf5e] {
    color: rgba(255, 255, 255, 0.9);
}

/* Filter Dropdowns */
.filter-dropdown .btn-filter[b-iqeh9mbf5e] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 0.5rem;
    padding: 0.5rem 0.875rem;
    font-size: 0.875rem;
    color: var(--bs-body-color);
    font-weight: 500;
    transition: all 0.2s;
    white-space: nowrap;
}

.filter-dropdown .btn-filter:hover[b-iqeh9mbf5e] {
    background: var(--bs-tertiary-bg);
    border-color: var(--bs-border-color);
}

.filter-dropdown .btn-filter i:first-child[b-iqeh9mbf5e] {
    color: var(--bs-secondary-color);
    font-size: 0.875rem;
}

.filter-dropdown .dropdown-menu[b-iqeh9mbf5e] {
    min-width: 220px;
    padding: 0.5rem 0;
    border: 1px solid var(--bs-border-color);
    border-radius: 0.625rem;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
}

.filter-dropdown .dropdown-header[b-iqeh9mbf5e] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--bs-secondary-color);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 0.5rem 1rem;
}

.filter-dropdown .dropdown-item[b-iqeh9mbf5e] {
    display: flex;
    align-items: center;
    padding: 0.625rem 1rem;
    font-size: 0.875rem;
    color: var(--bs-body-color);
    border: none;
    background: none;
    width: 100%;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s;
}

.filter-dropdown .dropdown-item:hover[b-iqeh9mbf5e] {
    background: var(--bs-tertiary-bg);
}

.filter-dropdown .dropdown-item.active[b-iqeh9mbf5e] {
    background: rgba(var(--bs-primary-rgb), 0.08);
    color: var(--bs-primary);
    font-weight: 600;
}

/* Custom Date Range Styles */
.date-dropdown-menu[b-iqeh9mbf5e] {
    min-width: 220px;
}

.custom-date-range-container[b-iqeh9mbf5e] {
    padding: 0.75rem 1rem;
    background: var(--bs-tertiary-bg);
    border-top: 1px solid var(--bs-border-color);
}

.custom-date-inputs[b-iqeh9mbf5e] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.date-input-group[b-iqeh9mbf5e] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.date-input-group label[b-iqeh9mbf5e] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--bs-secondary-color);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.date-input-group input[type="date"][b-iqeh9mbf5e] {
    padding: 0.375rem 0.625rem;
    font-size: 0.875rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 0.375rem;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.date-input-group input[type="date"]:focus[b-iqeh9mbf5e] {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 3px rgba(var(--bs-primary-rgb), 0.1);
}

.btn-apply-date[b-iqeh9mbf5e] {
    margin-top: 0.25rem;
    padding: 0.375rem 0.75rem;
    font-size: 0.8rem;
    font-weight: 500;
}

/* Small status badge in dropdown */
.status-badge-sm[b-iqeh9mbf5e] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    margin-right: 0.5rem;
    font-size: 0.65rem;
}

.status-badge-sm i[b-iqeh9mbf5e] {
    font-size: 10px;
}

/* Active Filters */
.active-filters[b-iqeh9mbf5e] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    flex-wrap: wrap;
    padding: 0.75rem 1.25rem;
    border-bottom: 1px solid var(--bs-border-color);
    background: var(--bs-tertiary-bg);
}

.active-filters-label[b-iqeh9mbf5e] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--bs-secondary-color);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.filter-tag[b-iqeh9mbf5e] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    background: var(--brand-500, #0D6785);
    border: 1px solid var(--brand-500, #0D6785);
    border-radius: 1.25rem;
    padding: 0.25rem 0.625rem 0.25rem 0.75rem;
    font-size: 0.8rem;
    color: white;
    font-weight: 500;
}

.filter-tag i[b-iqeh9mbf5e] {
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.7rem;
}

.filter-tag-remove[b-iqeh9mbf5e] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    background: rgba(255, 255, 255, 0.2);
    border: none;
    border-radius: 50%;
    color: white;
    cursor: pointer;
    padding: 0;
    transition: all 0.15s;
}

.filter-tag-remove:hover[b-iqeh9mbf5e] {
    background: rgba(255, 255, 255, 0.4);
    color: white;
}

.btn-clear-all[b-iqeh9mbf5e] {
    background: none;
    border: none;
    color: var(--bs-primary);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    padding: 0.25rem 0.5rem;
    border-radius: 0.25rem;
    transition: background 0.15s;
}

.btn-clear-all:hover[b-iqeh9mbf5e] {
    background: rgba(var(--bs-primary-rgb), 0.08);
}

/* Stat Cards */
.stat-cards-row[b-iqeh9mbf5e] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.stat-card[b-iqeh9mbf5e] {
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 0.75rem;
    padding: 1.25rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    transition: box-shadow 0.15s ease;
}

.stat-card:hover[b-iqeh9mbf5e] {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.stat-icon-wrapper[b-iqeh9mbf5e] {
    width: 48px;
    height: 48px;
    border-radius: 0.625rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.stat-icon-active[b-iqeh9mbf5e] {
    background: rgba(var(--bs-primary-rgb), 0.1);
    color: var(--bs-primary);
}

.stat-icon-pending[b-iqeh9mbf5e] {
    background: rgba(var(--bs-warning-rgb), 0.1);
    color: var(--bs-warning);
}

.stat-icon-bound[b-iqeh9mbf5e] {
    background: rgba(var(--bs-success-rgb), 0.1);
    color: var(--bs-success);
}

.stat-content[b-iqeh9mbf5e] {
    display: flex;
    flex-direction: column;
}

.stat-value[b-iqeh9mbf5e] {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.2;
    color: var(--bs-emphasis-color);
}

.stat-label[b-iqeh9mbf5e] {
    font-size: 0.8125rem;
    color: var(--bs-secondary-color);
    margin-top: 0.125rem;
}

/* Table Card */
.table-card[b-iqeh9mbf5e] {
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 0.75rem;
    overflow: visible;
}

.table-card-header[b-iqeh9mbf5e] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--bs-border-color);
    flex-wrap: wrap;
}

.table-header-filters[b-iqeh9mbf5e] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    flex-wrap: wrap;
}

.table-title[b-iqeh9mbf5e] {
    font-weight: 600;
    color: var(--bs-emphasis-color);
}

/* Table */
[b-iqeh9mbf5e] .table {
    margin-bottom: 0;
}

[b-iqeh9mbf5e] .table thead th {
    background: var(--bs-tertiary-bg);
    border-bottom: 1px solid var(--bs-border-color);
    font-size: 0.8125rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    color: var(--bs-secondary-color);
    padding: 0.75rem 1rem;
    white-space: nowrap;
}

[b-iqeh9mbf5e] .table tbody td {
    padding: 0.75rem 1rem;
    font-size: 0.875rem;
    border-bottom: 1px solid var(--bs-border-color-translucent);
    vertical-align: middle;
}

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

[b-iqeh9mbf5e] .table tbody tr:hover {
    background: var(--bs-tertiary-bg);
}

.sortable-header[b-iqeh9mbf5e] {
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
}

.sortable-header:hover[b-iqeh9mbf5e] {
    color: var(--bs-primary);
}

.sort-icon[b-iqeh9mbf5e] {
    font-size: 0.7rem;
    opacity: 0.5;
    margin-left: 0.25rem;
}

.sortable-header:hover .sort-icon[b-iqeh9mbf5e] {
    opacity: 1;
}

/* Table Footer */
.table-footer[b-iqeh9mbf5e] {
    padding: 0.75rem 1.25rem;
    border-top: 1px solid var(--bs-border-color);
}

/* Action Buttons */
.actions-cell[b-iqeh9mbf5e] {
    text-align: right;
}

.btn-action-subtle[b-iqeh9mbf5e] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 10px;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--brand-500, var(--bs-primary));
    background-color: var(--bs-body-bg);
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-action-subtle:hover[b-iqeh9mbf5e] {
    background-color: #EFF6FF;
    color: #004880;
    border-color: #BFDBFE;
}

.btn-action-subtle i[b-iqeh9mbf5e] {
    font-size: 0.85rem;
}

.btn-action-subtle:disabled[b-iqeh9mbf5e],
.btn-action-subtle.disabled[b-iqeh9mbf5e] {
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: none;
}

/* Loading & Empty States */
.table-loading[b-iqeh9mbf5e] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3rem 1rem;
}

/* Skeleton loader animation */
@keyframes bank-dash-skeleton-pulse-b-iqeh9mbf5e {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

/* Stat card skeletons */
.stat-skeleton-icon[b-iqeh9mbf5e] {
    width: 48px;
    height: 48px;
    border-radius: 0.625rem;
    flex-shrink: 0;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: bank-dash-skeleton-pulse-b-iqeh9mbf5e 1.5s ease-in-out infinite;
}

.stat-skeleton-value[b-iqeh9mbf5e] {
    height: 1.5rem;
    width: 60px;
    border-radius: 4px;
    margin-bottom: 0.375rem;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: bank-dash-skeleton-pulse-b-iqeh9mbf5e 1.5s ease-in-out infinite;
}

.stat-skeleton-label[b-iqeh9mbf5e] {
    height: 0.8125rem;
    width: 100px;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: bank-dash-skeleton-pulse-b-iqeh9mbf5e 1.5s ease-in-out infinite;
}

/* Table row skeletons */
.table-row-skeleton td[b-iqeh9mbf5e] {
    padding: 0.875rem 0.75rem;
}

.row-skeleton-cell[b-iqeh9mbf5e] {
    height: 1.0625rem;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: bank-dash-skeleton-pulse-b-iqeh9mbf5e 1.5s ease-in-out infinite;
}

.row-skeleton-badge[b-iqeh9mbf5e] {
    height: 1.25rem;
    width: 90px;
    border-radius: 9999px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: bank-dash-skeleton-pulse-b-iqeh9mbf5e 1.5s ease-in-out infinite;
}

.empty-state[b-iqeh9mbf5e] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 1rem;
    text-align: center;
}

.empty-icon[b-iqeh9mbf5e] {
    font-size: 2.5rem;
    color: var(--bs-secondary-color);
    opacity: 0.5;
    margin-bottom: 0.75rem;
}

.empty-text[b-iqeh9mbf5e] {
    color: var(--bs-secondary-color);
    font-size: 0.9rem;
    margin-bottom: 0;
}

.empty-state-btn[b-iqeh9mbf5e] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.8125rem;
    padding: 0.35rem 0.75rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 0.375rem;
    color: var(--bs-secondary-color);
    text-decoration: none;
    transition: all 0.15s ease;
}

.empty-state-btn:hover[b-iqeh9mbf5e] {
    background: var(--bs-tertiary-bg);
    color: var(--bs-emphasis-color);
    text-decoration: none;
}

/* Brand Button (theme green) */
.btn-brand[b-iqeh9mbf5e] {
    background-color: var(--accent-color);
    border-color: var(--accent-color);
    color: #fff;
}

.btn-brand:hover[b-iqeh9mbf5e],
.btn-brand:focus[b-iqeh9mbf5e] {
    filter: brightness(0.9);
    color: #fff;
}

.btn-brand:active[b-iqeh9mbf5e] {
    filter: brightness(0.8);
    color: #fff;
}

/* Responsive */
@media (max-width: 768px) {
    .stat-cards-row[b-iqeh9mbf5e] {
        grid-template-columns: 1fr;
    }

    .dashboard-header[b-iqeh9mbf5e] {
        flex-direction: column;
        align-items: flex-start;
    }

    .header-right[b-iqeh9mbf5e] {
        width: 100%;
    }

    .table-card-header[b-iqeh9mbf5e] {
        flex-direction: column;
        align-items: flex-start;
    }

    .table-header-filters[b-iqeh9mbf5e] {
        width: 100%;
        justify-content: flex-start;
    }

    /* The search box is a direct flex child of .table-header-filters (no wrapper), so its
       own container carries the full-width behaviour that .search-wrapper used to provide
       back when the box lived in .header-right. !important is what beats the component's
       inline Width="320px". */
    [b-iqeh9mbf5e] .search-textbox-container {
        width: 100% !important;
    }
}

@media (max-width: 992px) and (min-width: 769px) {
    .stat-cards-row[b-iqeh9mbf5e] {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Custom purple badge classes for ReferredToUnderwriter status */
.bg-purple-subtle[b-iqeh9mbf5e] {
    background-color: #E9D5FF !important;
}

.border-purple-subtle[b-iqeh9mbf5e] {
    border-color: #C4B5FD !important;
}

.text-purple-emphasis[b-iqeh9mbf5e] {
    color: #6B21A8 !important;
}

/* Custom orange badge classes for Referral status */
.bg-orange-subtle[b-iqeh9mbf5e] {
    background-color: #FED7AA !important;
}

.border-orange-subtle[b-iqeh9mbf5e] {
    border-color: #FDBA74 !important;
}

.text-orange-emphasis[b-iqeh9mbf5e] {
    color: #9A3412 !important;
}

/* Feature 072 — custom teal badge classes for the AwaitingBorrower ("Waiting for Borrower")
   status. Needed because Bootstrap 5.3 ships no teal *-subtle utility, and because the
   ToSubtleBadgeClass fallback is grey, which is indistinguishable from Cancelled/Archived. */
.bg-teal-subtle[b-iqeh9mbf5e] {
    background-color: #CCFBF1 !important;
}

.border-teal-subtle[b-iqeh9mbf5e] {
    border-color: #5EEAD4 !important;
}

.text-teal-emphasis[b-iqeh9mbf5e] {
    color: #115E59 !important;
}

/* Action Buttons */
.action-buttons[b-iqeh9mbf5e] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.btn-action[b-iqeh9mbf5e] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 12px;
    font-size: 0.78rem;
    font-weight: 500;
    color: var(--brand-500, #0D6785);
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
    font-family: inherit;
}

.btn-action:hover[b-iqeh9mbf5e] {
    background: #EFF6FF;
    border-color: #BFDBFE;
}

.btn-action-success[b-iqeh9mbf5e] {
    color: #059669;
    border-color: #A7F3D0;
}

.btn-action-success:hover[b-iqeh9mbf5e] {
    background: #ECFDF5;
    border-color: #059669;
}

.btn-action-warning[b-iqeh9mbf5e] {
    color: #B45309;
    border-color: #FDE68A;
}

.btn-action-warning:hover[b-iqeh9mbf5e] {
    background: #FFFBEB;
    border-color: #B45309;
    color: #92400E;
}

.btn-action-secondary[b-iqeh9mbf5e] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 10px;
    font-size: 0.72rem;
    font-weight: 500;
    color: #6B7280;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
    font-family: inherit;
}

.btn-action-secondary:hover[b-iqeh9mbf5e] {
    background: #F9FAFB;
    border-color: #D1D5DB;
}

.btn-action-danger[b-iqeh9mbf5e] {
    color: #DC2626;
    border-color: #FECACA;
}

.btn-action-danger:hover[b-iqeh9mbf5e] {
    background: #FEF2F2;
    border-color: #DC2626;
    color: #B91C1C;
}

/* Sweet Alert Style Modal */
.swal-backdrop[b-iqeh9mbf5e] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(4px);
    z-index: 1060;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    animation: swalFadeIn-b-iqeh9mbf5e 0.15s ease;
}

.swal-modal[b-iqeh9mbf5e] {
    background: white;
    border-radius: 16px;
    padding: 32px 28px 24px;
    max-width: 380px;
    width: 100%;
    text-align: center;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    animation: swalPopIn-b-iqeh9mbf5e 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.swal-icon[b-iqeh9mbf5e] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    font-size: 1.8rem;
}

.swal-icon-warning[b-iqeh9mbf5e] {
    background: #FEF3C7;
    color: #D97706;
    border: 3px solid #FDE68A;
}

.swal-title[b-iqeh9mbf5e] {
    font-size: 1.2rem;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 8px;
}

.swal-text[b-iqeh9mbf5e] {
    font-size: 0.85rem;
    color: #6B7280;
    line-height: 1.5;
    margin: 0 0 24px;
}

.swal-text strong[b-iqeh9mbf5e] {
    color: #374151;
}

.swal-actions[b-iqeh9mbf5e] {
    display: flex;
    gap: 10px;
    justify-content: center;
}

.swal-btn[b-iqeh9mbf5e] {
    padding: 9px 20px;
    border-radius: 8px;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
    border: none;
    font-family: inherit;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.swal-btn-cancel[b-iqeh9mbf5e] {
    background: #F3F4F6;
    color: #6B7280;
}

.swal-btn-cancel:hover[b-iqeh9mbf5e] {
    background: #E5E7EB;
    color: #374151;
}

.swal-btn-confirm[b-iqeh9mbf5e] {
    background: #DC2626;
    color: white;
}

.swal-btn-confirm:hover[b-iqeh9mbf5e] {
    background: #B91C1C;
}

@keyframes swalFadeIn-b-iqeh9mbf5e {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes swalPopIn-b-iqeh9mbf5e {
    from { opacity: 0; transform: scale(0.85); }
    to { opacity: 1; transform: scale(1); }
}

/* Legacy - keep for backward compat */
.action-btn-group[b-iqeh9mbf5e] {
    display: inline-flex;
    align-items: stretch;
    border-radius: 6px;
    overflow: hidden;
}

.action-btn-group .btn-action-subtle[b-iqeh9mbf5e],
.action-btn-group .btn-action-primary[b-iqeh9mbf5e],
.action-btn-group .btn-action-success[b-iqeh9mbf5e] {
    border-radius: 0;
}

.action-btn-group > :first-child[b-iqeh9mbf5e] {
    border-top-left-radius: 6px;
    border-bottom-left-radius: 6px;
}

.action-btn-group > :last-child[b-iqeh9mbf5e] {
    border-top-right-radius: 6px;
    border-bottom-right-radius: 6px;
}

.action-chevron[b-iqeh9mbf5e] {
    padding: 4px 6px !important;
    border-left: 1px solid rgba(255, 255, 255, 0.2) !important;
    min-width: unset;
}

.action-chevron[b-iqeh9mbf5e]::after {
    vertical-align: middle;
}

/* Primary action button (brand/accent) */
.btn-action-primary[b-iqeh9mbf5e] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 10px;
    font-size: 0.8rem;
    font-weight: 600;
    color: white;
    background: var(--accent-color);
    border: 1px solid var(--accent-color);
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.btn-action-primary:hover[b-iqeh9mbf5e] {
    filter: brightness(0.85);
}

/* Success action button (green) */
.btn-action-success[b-iqeh9mbf5e] {
    color: white !important;
    background: #059669 !important;
    border-color: #059669 !important;
}

.btn-action-success:hover[b-iqeh9mbf5e] {
    background: #047857 !important;
    border-color: #047857 !important;
}

.btn-action-success:hover[b-iqeh9mbf5e] {
    background-color: var(--success-600, #059669);
    border-color: var(--success-600, #059669);
    color: #fff;
}

/* Archived status badge */
.status-archived[b-iqeh9mbf5e] {
    background-color: #F3F4F6;
    border-color: #E5E7EB;
    color: #6B7280;
}

/* /Components/Pages/BankPortal/BoundPoliciesPage.razor.rz.scp.css */
/* ========================================
   Bank Portal - Bound Policies Page
   (Matches Underwriting PoliciesPage styles)
   ======================================== */

.page-header[b-wpm33vt0a9] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    gap: 24px;
    flex-wrap: wrap;
}

.header-left[b-wpm33vt0a9] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.page-title[b-wpm33vt0a9] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary, #1F2937);
    margin: 0;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.page-subtitle[b-wpm33vt0a9] {
    font-size: 0.875rem;
    color: var(--text-muted, #6B7280);
    margin: 0;
    font-weight: 400;
}

/* Inline Stats */
.inline-stats[b-wpm33vt0a9] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.mini-stat[b-wpm33vt0a9] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid var(--border-light, rgba(15, 23, 42, 0.1));
    border-radius: 8px;
    padding: 8px 14px;
    box-shadow: var(--shadow-xs, 0 1px 3px rgba(15, 23, 42, 0.05));
}

.mini-stat > i[b-wpm33vt0a9] {
    font-size: 1rem;
    color: var(--brand-500);
}

.mini-stat.premium-stat > i[b-wpm33vt0a9] {
    color: var(--success-600, #059669);
}

.stat-content[b-wpm33vt0a9] {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.mini-stat-value[b-wpm33vt0a9] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--text-primary, #1F2937);
}

.mini-stat-label[b-wpm33vt0a9] {
    font-size: 0.7rem;
    color: var(--text-muted, #6B7280);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.btn-icon-refresh[b-wpm33vt0a9] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid var(--border-light, rgba(15, 23, 42, 0.15));
    border-radius: 8px;
    color: var(--brand-500);
    cursor: pointer;
    transition: all 0.2s;
}

.btn-icon-refresh:hover:not(:disabled)[b-wpm33vt0a9] {
    background: var(--bg-hover, rgba(15, 23, 42, 0.08));
    border-color: var(--brand-500);
}

.btn-icon-refresh:disabled[b-wpm33vt0a9] {
    opacity: 0.6;
    cursor: not-allowed;
}

@keyframes spin-b-wpm33vt0a9 {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.bi-arrow-clockwise.spinning[b-wpm33vt0a9] {
    animation: spin-b-wpm33vt0a9 1s linear infinite;
}

/* Export CSV Button */
.btn-export-csv[b-wpm33vt0a9] {
    display: flex;
    align-items: center;
    gap: 6px;
    height: 40px;
    padding: 0 16px;
    font-size: 0.8rem;
    font-weight: 600;
    color: white;
    background: var(--accent-color);
    border: 1px solid var(--accent-color);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s;
    white-space: nowrap;
}

.btn-export-csv:hover:not(:disabled)[b-wpm33vt0a9] {
    filter: brightness(0.85);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.btn-export-csv:disabled[b-wpm33vt0a9] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-export-csv i[b-wpm33vt0a9] {
    font-size: 0.875rem;
}

/* Filters Card */
.filters-card[b-wpm33vt0a9] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    padding: 16px;
    margin-bottom: 16px;
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.05);
}

.filters-bar[b-wpm33vt0a9] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.filters-left[b-wpm33vt0a9] {
    flex: 1;
    min-width: 280px;
    max-width: 400px;
}

.filters-right[b-wpm33vt0a9] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* Filter Dropdowns */
.filter-dropdown .btn-filter[b-wpm33vt0a9] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 8px 14px;
    font-size: 0.875rem;
    color: #374151;
    font-weight: 500;
    transition: all 0.2s;
    white-space: nowrap;
}

.filter-dropdown .btn-filter:hover[b-wpm33vt0a9] {
    background: #F9FAFB;
    border-color: #D1D5DB;
}

.filter-dropdown .btn-filter i:first-child[b-wpm33vt0a9] {
    color: #6B7280;
    font-size: 0.875rem;
}

.filter-dropdown .dropdown-menu[b-wpm33vt0a9] {
    min-width: 220px;
    padding: 8px 0;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
}

.filter-dropdown .dropdown-header[b-wpm33vt0a9] {
    font-size: 0.7rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 8px 16px;
}

.filter-dropdown .dropdown-item[b-wpm33vt0a9] {
    display: flex;
    align-items: center;
    padding: 10px 16px;
    font-size: 0.875rem;
    color: #374151;
    border: none;
    background: none;
    width: 100%;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s;
}

.filter-dropdown .dropdown-item:hover[b-wpm33vt0a9] {
    background: rgba(15, 23, 42, 0.05);
}

.filter-dropdown .dropdown-item.active[b-wpm33vt0a9] {
    background: rgba(15, 23, 42, 0.08);
    color: var(--brand-500);
    font-weight: 600;
}

/* Custom Date Range */
.date-dropdown-menu[b-wpm33vt0a9] {
    min-width: 220px;
}

.custom-date-range-container[b-wpm33vt0a9] {
    padding: 12px 16px;
    background: #F9FAFB;
    border-top: 1px solid #E5E7EB;
}

.custom-date-inputs[b-wpm33vt0a9] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.date-input-group[b-wpm33vt0a9] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.date-input-group label[b-wpm33vt0a9] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.date-input-group input[type="date"][b-wpm33vt0a9] {
    padding: 6px 10px;
    font-size: 0.875rem;
    border: 1px solid #D1D5DB;
    border-radius: 6px;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.date-input-group input[type="date"]:focus[b-wpm33vt0a9] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.btn-apply-date[b-wpm33vt0a9] {
    margin-top: 4px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    background: var(--accent-color);
    border: none;
    border-radius: 6px;
    color: white;
    cursor: pointer;
    transition: background 0.15s, filter 0.15s;
}

.btn-apply-date:hover[b-wpm33vt0a9] {
    filter: brightness(0.85);
}

/* Active Filters */
.active-filters[b-wpm33vt0a9] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    padding-top: 14px;
    margin-top: 14px;
    border-top: 1px solid #F1F5F9;
}

.active-filters-label[b-wpm33vt0a9] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.filter-tag[b-wpm33vt0a9] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #F3F4F6;
    border: 1px solid #E5E7EB;
    border-radius: 20px;
    padding: 4px 10px 4px 12px;
    font-size: 0.8rem;
    color: #374151;
}

.filter-tag i[b-wpm33vt0a9] {
    color: #6B7280;
    font-size: 0.7rem;
}

.filter-tag-remove[b-wpm33vt0a9] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    background: transparent;
    border: none;
    border-radius: 50%;
    color: #9CA3AF;
    cursor: pointer;
    padding: 0;
    transition: all 0.15s;
}

.filter-tag-remove:hover[b-wpm33vt0a9] {
    background: rgba(220, 38, 38, 0.1);
    color: var(--error-600);
}

.btn-clear-all[b-wpm33vt0a9] {
    background: none;
    border: none;
    color: var(--brand-500);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    transition: background 0.15s;
}

.btn-clear-all:hover[b-wpm33vt0a9] {
    background: rgba(15, 23, 42, 0.08);
}

/* Card & Table */
.card[b-wpm33vt0a9] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.05);
    overflow: hidden;
}

.table-responsive[b-wpm33vt0a9] {
    overflow-x: auto;
    margin: 0;
}

.policies-table[b-wpm33vt0a9] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.875rem;
}

.policies-table thead[b-wpm33vt0a9] {
    background-color: #F8FAFC;
    position: sticky;
    top: 0;
    z-index: 1;
}

.policies-table thead th[b-wpm33vt0a9] {
    padding: 12px 16px;
    text-align: left;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748B;
    border-bottom: 1px solid #E2E8F0;
    white-space: nowrap;
    user-select: none;
}

.policies-table thead th.sortable-header[b-wpm33vt0a9] {
    cursor: pointer;
}

.policies-table thead th.sortable-header:hover[b-wpm33vt0a9] {
    color: var(--brand-500);
    background-color: #F1F5F9;
}

.policies-table thead th i[b-wpm33vt0a9] {
    margin-left: 4px;
    font-size: 0.65rem;
}

@keyframes fadeIn-b-wpm33vt0a9 {
    from { opacity: 0; }
    to { opacity: 1; }
}

.policies-table tbody tr[b-wpm33vt0a9] {
    transition: all 0.12s ease;
    border-left: 3px solid transparent;
    background: white;
    animation: fadeIn-b-wpm33vt0a9 0.3s ease-out forwards;
    opacity: 0;
}

.policies-table tbody tr:nth-child(1)[b-wpm33vt0a9] { animation-delay: 50ms; }
.policies-table tbody tr:nth-child(2)[b-wpm33vt0a9] { animation-delay: 80ms; }
.policies-table tbody tr:nth-child(3)[b-wpm33vt0a9] { animation-delay: 110ms; }
.policies-table tbody tr:nth-child(4)[b-wpm33vt0a9] { animation-delay: 140ms; }
.policies-table tbody tr:nth-child(5)[b-wpm33vt0a9] { animation-delay: 170ms; }

.policies-table tbody tr:nth-child(even)[b-wpm33vt0a9] {
    background-color: #FAFBFC;
}

.policies-table tbody tr:hover[b-wpm33vt0a9] {
    background-color: #EFF6FF;
    border-left: 3px solid var(--brand-500);
}

.policies-table tbody td[b-wpm33vt0a9] {
    padding: 10px 16px;
    border-bottom: 1px solid #F1F5F9;
    vertical-align: middle;
    color: #374151;
}

/* Cell Styles */
.policy-number[b-wpm33vt0a9] {
    color: #DC2626;
    font-weight: 600;
    font-size: 0.875rem;
    cursor: pointer;
}

.policy-number:hover[b-wpm33vt0a9] {
    text-decoration: underline;
}

.policy-number-link[b-wpm33vt0a9] {
    text-decoration: none;
    color: #DC2626;
}

.policy-number-link:hover[b-wpm33vt0a9],
.policy-number-link:focus[b-wpm33vt0a9] {
    text-decoration: underline;
    color: #B91C1C;
}

.loan-number-text[b-wpm33vt0a9] {
    font-weight: 500;
    color: #6B7280;
    font-size: 0.875rem;
}

.application-number-text[b-wpm33vt0a9] {
    font-weight: 500;
    color: #6B7280;
    font-size: 0.875rem;
}

.borrower-name[b-wpm33vt0a9] {
    font-weight: 500;
    color: #1F2937;
}

.date-cell[b-wpm33vt0a9] {
    color: #374151;
    font-size: 0.875rem;
    font-variant-numeric: tabular-nums;
}

.actions-cell[b-wpm33vt0a9] {
    text-align: right;
}

/* Status Badges */
.status-badge[b-wpm33vt0a9] {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    font-size: 0.75rem;
    font-weight: 600;
    border-radius: 20px;
    white-space: nowrap;
}

.status-active[b-wpm33vt0a9] {
    background: #ECFDF5;
    color: #059669;
}

.status-pending[b-wpm33vt0a9] {
    background: #FEF3C7;
    color: #D97706;
}

.status-expired[b-wpm33vt0a9] {
    background: #F3F4F6;
    color: #6B7280;
}

.status-cancelled[b-wpm33vt0a9] {
    background: #FEE2E2;
    color: #DC2626;
}

.status-inactive[b-wpm33vt0a9] {
    background: #F3F4F6;
    color: #9CA3AF;
}

.status-unknown[b-wpm33vt0a9] {
    background: #F3F4F6;
    color: #9CA3AF;
}

/* File Claim Button */
.btn-file-claim[b-wpm33vt0a9] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 14px;
    font-size: 0.8rem;
    font-weight: 600;
    color: #DC2626;
    background-color: white;
    border: 1px solid #FCA5A5;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.btn-file-claim:hover[b-wpm33vt0a9] {
    background-color: #FEF2F2;
    color: #B91C1C;
    border-color: #DC2626;
}

.btn-view-claim[b-wpm33vt0a9] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    font-size: 0.72rem;
    font-weight: 600;
    color: #059669;
    background: #ECFDF5;
    border: 1px solid #A7F3D0;
    border-radius: 20px;
    white-space: nowrap;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-view-claim:hover[b-wpm33vt0a9] {
    background: #D1FAE5;
    color: #047857;
    border-color: #6EE7B7;
}

.btn-view-claim i[b-wpm33vt0a9] {
    font-size: 0.7rem;
}

/* Loading & Empty States */
.loading-state[b-wpm33vt0a9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 40px 20px;
    color: #6B7280;
}

.loading-state .spinner-border[b-wpm33vt0a9] {
    width: 2rem;
    height: 2rem;
}

/* Skeleton table rows */
@keyframes policy-skel-pulse-b-wpm33vt0a9 {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.table-row-skeleton td[b-wpm33vt0a9] {
    padding: 0.875rem 0.75rem;
}

.row-skel[b-wpm33vt0a9] {
    height: 1.0625rem;
    width: 80px;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: policy-skel-pulse-b-wpm33vt0a9 1.5s ease-in-out infinite;
}

.row-skel-badge[b-wpm33vt0a9] {
    height: 1.25rem;
    width: 90px;
    border-radius: 9999px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: policy-skel-pulse-b-wpm33vt0a9 1.5s ease-in-out infinite;
}

.empty-state[b-wpm33vt0a9] {
    text-align: center;
    padding: 48px 32px !important;
    color: #6B7280;
}

.empty-state i[b-wpm33vt0a9] {
    font-size: 40px;
    display: block;
    margin-bottom: 12px;
    color: #D1D5DB;
}

.empty-state span[b-wpm33vt0a9] {
    font-size: 0.9rem;
    color: #9CA3AF;
    display: block;
}

.empty-state-hint[b-wpm33vt0a9] {
    font-size: 0.8rem;
    color: #9CA3AF;
    margin: 8px 0 0 0;
}

/* Responsive */
@media (max-width: 992px) {
    .filters-bar[b-wpm33vt0a9] {
        flex-direction: column;
        align-items: stretch;
    }

    .filters-left[b-wpm33vt0a9] {
        max-width: none;
    }

    .inline-stats[b-wpm33vt0a9] {
        flex-wrap: wrap;
    }
}

@media (max-width: 768px) {
    .page-header[b-wpm33vt0a9] {
        flex-direction: column;
        align-items: flex-start;
    }

    .inline-stats[b-wpm33vt0a9] {
        width: 100%;
        justify-content: flex-start;
    }
}

/* Export Confirmation Modal Content */
.export-confirm-content[b-wpm33vt0a9] {
    text-align: center;
    padding: 4px 0;
}

.export-confirm-icon[b-wpm33vt0a9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--brand-500), var(--brand-400));
    margin-bottom: 18px;
    box-shadow: 0 4px 12px rgba(0, 91, 159, 0.2);
}

.export-confirm-icon i[b-wpm33vt0a9] {
    font-size: 26px;
    color: white;
}

.export-confirm-message[b-wpm33vt0a9] {
    font-size: 0.95rem;
    color: var(--text-primary, #1F2937);
    margin: 0 0 6px 0;
    line-height: 1.5;
}

.export-confirm-message strong[b-wpm33vt0a9] {
    color: var(--brand-600);
    font-weight: 700;
}

.export-confirm-subtext[b-wpm33vt0a9] {
    font-size: 0.875rem;
    color: var(--text-muted, #6B7280);
    margin: 0;
}

.export-confirm-warning[b-wpm33vt0a9] {
    margin-top: 12px;
    padding: 10px 16px;
    background: var(--accent-50, #FFFBEB);
    border: 1px solid var(--accent-300, #FCD34D);
    border-radius: 8px;
    font-size: 0.8rem;
    color: var(--accent-800, #92400E);
    display: flex;
    align-items: center;
    gap: 6px;
    justify-content: center;
}

.export-confirm-warning i[b-wpm33vt0a9] {
    font-size: 0.9rem;
    color: var(--accent-600, #D97706);
}

/* /Components/Pages/BankPortal/ClaimDetailPage.razor.rz.scp.css */
.claim-detail-page[b-gudo210egc] {
    padding: 16px 8px 80px;
    max-width: 1280px;
    margin: 0 auto;
}

.page-loading[b-gudo210egc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 80px 20px;
    color: #6B7280;
}

/* Skeleton loading state */
@keyframes claim-skel-pulse-b-gudo210egc {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.skel-block[b-gudo210egc] {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: claim-skel-pulse-b-gudo210egc 1.5s ease-in-out infinite;
    border-radius: 4px;
}

.claim-skeleton[b-gudo210egc] {
    padding: 16px 8px 80px;
    max-width: 1280px;
    margin: 0 auto;
}

.skel-back-link[b-gudo210egc] {
    margin-bottom: 1rem;
}

.skel-claim-hero[b-gudo210egc] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 1.5rem;
    margin-bottom: 1.5rem;
}

.skel-hero-icon[b-gudo210egc] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    flex-shrink: 0;
}

.skel-hero-body[b-gudo210egc] {
    flex: 1;
}

.skel-hero-meta[b-gudo210egc] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
}

.skel-claim-grid[b-gudo210egc] {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 1.5rem;
}

.skel-claim-main[b-gudo210egc] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.skel-claim-aside[b-gudo210egc] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.skel-detail-card[b-gudo210egc] {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 1.5rem;
}

@media (max-width: 991.98px) {
    .skel-claim-grid[b-gudo210egc] {
        grid-template-columns: 1fr;
    }
}

/* Not-found card — matches the visual language of the hero card */
.not-found-card[b-gudo210egc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 12px;
    padding: 56px 32px;
    background: linear-gradient(135deg, #ffffff 0%, #F8FAFC 100%);
    border: 1px solid #E2E8F0;
    border-radius: 16px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
    max-width: 520px;
    margin: 24px auto 0;
}

.not-found-icon[b-gudo210egc] {
    width: 72px;
    height: 72px;
    border-radius: 18px;
    background: linear-gradient(135deg, #FEF3C7, #FDE68A);
    color: #B45309;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    margin-bottom: 4px;
}

.not-found-title[b-gudo210egc] {
    font-size: 1.3rem;
    font-weight: 700;
    color: #0F172A;
    margin: 0;
}

.not-found-body[b-gudo210egc] {
    font-size: 0.9rem;
    color: #64748B;
    margin: 0;
    line-height: 1.55;
    max-width: 420px;
}

.not-found-code[b-gudo210egc] {
    font-family: 'Inter', monospace;
    background: #F1F5F9;
    color: #0F172A;
    padding: 1px 6px;
    border-radius: 4px;
    font-size: 0.85em;
}

.not-found-actions[b-gudo210egc] {
    display: flex;
    gap: 8px;
    margin-top: 8px;
    flex-wrap: wrap;
    justify-content: center;
}

/* Back link */
.back-link[b-gudo210egc] {
    margin-bottom: 12px;
}

.back-link a[b-gudo210egc] {
    font-size: 0.78rem;
    color: #64748B;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.back-link a:hover[b-gudo210egc] {
    color: #1E293B;
}

/* Hero card */
.claim-hero[b-gudo210egc] {
    display: flex;
    align-items: stretch;
    gap: 18px;
    padding: 22px 26px;
    background: linear-gradient(135deg, #ffffff 0%, #F8FAFC 100%);
    border: 1px solid #E2E8F0;
    border-radius: 16px;
    margin-bottom: 18px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.claim-hero-icon[b-gudo210egc] {
    width: 64px;
    height: 64px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    flex-shrink: 0;
}

.hero-accent-warn[b-gudo210egc] {
    background: linear-gradient(135deg, #FEF3C7, #FDE68A);
    color: #B45309;
}

.hero-accent-info[b-gudo210egc] {
    background: linear-gradient(135deg, #DBEAFE, #BFDBFE);
    color: #1D4ED8;
}

.hero-accent-success[b-gudo210egc] {
    background: linear-gradient(135deg, #D1FAE5, #A7F3D0);
    color: #047857;
}

.hero-accent-danger[b-gudo210egc] {
    background: linear-gradient(135deg, #FEE2E2, #FECACA);
    color: #B91C1C;
}

.claim-hero-body[b-gudo210egc] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.claim-hero-eyebrow[b-gudo210egc] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 4px;
}

.claim-hero-tag[b-gudo210egc] {
    font-size: 0.65rem;
    letter-spacing: 1px;
    color: #94A3B8;
    font-weight: 700;
}

.claim-number[b-gudo210egc] {
    font-size: 0.85rem;
    color: #1E293B;
    font-weight: 600;
    font-family: 'Inter', monospace;
}

.claim-hero-title[b-gudo210egc] {
    font-size: 1.45rem;
    font-weight: 700;
    color: #0F172A;
    margin: 0 0 8px;
    line-height: 1.2;
}

.claim-hero-meta[b-gudo210egc] {
    display: flex;
    flex-wrap: wrap;
    gap: 14px 18px;
    color: #64748B;
    font-size: 0.82rem;
}

.claim-hero-meta-item[b-gudo210egc] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.claim-hero-meta-item i[b-gudo210egc] {
    color: #94A3B8;
    font-size: 0.85rem;
}

.claim-hero-link[b-gudo210egc] {
    color: #2563EB;
    text-decoration: none;
    font-weight: 500;
}

.claim-hero-link:hover[b-gudo210egc] {
    text-decoration: underline;
}

/* Status badge */
.status-badge[b-gudo210egc] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-badge i[b-gudo210egc] {
    font-size: 0.7rem;
}

.badge-draft[b-gudo210egc] { background: #F3F4F6; color: #6B7280; }
.badge-submitted[b-gudo210egc] { background: #FEF3C7; color: #92400E; }
.badge-review[b-gudo210egc] { background: #DBEAFE; color: #1E40AF; }
.badge-info-req[b-gudo210egc] { background: #FDE8E8; color: #9B1C1C; }
.badge-approved[b-gudo210egc] { background: #DCFCE7; color: #166534; }
.badge-denied[b-gudo210egc] { background: #FEE2E2; color: #991B1B; }
.badge-closed[b-gudo210egc] { background: #E5E7EB; color: #374151; }

/* Status action strip — Underwriter/Admin/Developer */
.status-actions[b-gudo210egc] {
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    padding: 14px 18px;
    margin-bottom: 14px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}

.status-actions-header[b-gudo210egc] {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.status-actions-label[b-gudo210egc] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.82rem;
    font-weight: 600;
    color: #475569;
}

.status-actions-label i[b-gudo210egc] {
    color: #94A3B8;
}

.status-actions-buttons[b-gudo210egc] {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    flex: 1;
}

.status-action-btn[b-gudo210egc] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    border-radius: 8px;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    border: 1px solid transparent;
    background: white;
    transition: all 0.15s ease;
}

.status-action-btn i[b-gudo210egc] {
    font-size: 0.85rem;
}

.status-action-btn:disabled[b-gudo210egc] {
    opacity: 0.5;
    cursor: not-allowed;
}

.status-action-btn.active[b-gudo210egc] {
    box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.2);
}

.status-action-btn-info[b-gudo210egc] { color: #1D4ED8; border-color: #BFDBFE; background: #EFF6FF; }
.status-action-btn-info:hover:not(:disabled)[b-gudo210egc] { background: #DBEAFE; border-color: #2563EB; }

.status-action-btn-warn[b-gudo210egc] { color: #B45309; border-color: #FDE68A; background: #FFFBEB; }
.status-action-btn-warn:hover:not(:disabled)[b-gudo210egc] { background: #FEF3C7; border-color: #D97706; }

.status-action-btn-success[b-gudo210egc] { color: #047857; border-color: #A7F3D0; background: #ECFDF5; }
.status-action-btn-success:hover:not(:disabled)[b-gudo210egc] { background: #D1FAE5; border-color: #059669; }

.status-action-btn-danger[b-gudo210egc] { color: #991B1B; border-color: #FECACA; background: #FEF2F2; }
.status-action-btn-danger:hover:not(:disabled)[b-gudo210egc] { background: #FEE2E2; border-color: #DC2626; }

.status-action-btn-neutral[b-gudo210egc] { color: #374151; border-color: #D1D5DB; background: #F9FAFB; }
.status-action-btn-neutral:hover:not(:disabled)[b-gudo210egc] { background: #F3F4F6; border-color: #6B7280; }

.status-actions-form[b-gudo210egc] {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid #F1F5F9;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.status-actions-form-title[b-gudo210egc] {
    font-size: 0.82rem;
    color: #475569;
}

.status-actions-form-title strong[b-gudo210egc] {
    color: #0F172A;
}

/* Two-column grid */
.claim-grid[b-gudo210egc] {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
    gap: 18px;
    align-items: start;
}

.claim-main[b-gudo210egc],
.claim-aside[b-gudo210egc] {
    display: flex;
    flex-direction: column;
    gap: 14px;
    min-width: 0;
}

.claim-aside[b-gudo210egc] {
    position: sticky;
    top: 16px;
}

@media (max-width: 980px) {
    .claim-grid[b-gudo210egc] { grid-template-columns: 1fr; }
    .claim-aside[b-gudo210egc] { position: static; }
}

/* Cards */
.detail-card[b-gudo210egc] {
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    padding: 18px 20px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}

.detail-card-header[b-gudo210egc] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid #F1F5F9;
}

.detail-card-header-tight[b-gudo210egc] {
    margin-bottom: 12px;
    padding-bottom: 8px;
}

.detail-card-header h3[b-gudo210egc] {
    font-size: 0.92rem;
    font-weight: 600;
    color: #0F172A;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.detail-card-header h3 i[b-gudo210egc] {
    color: #64748B;
    font-size: 0.95rem;
}

.card-count[b-gudo210egc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    padding: 0 6px;
    height: 22px;
    border-radius: 11px;
    background: #F1F5F9;
    color: #475569;
    font-size: 0.7rem;
    font-weight: 700;
}

.btn-card-action[b-gudo210egc] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 12px;
    font-size: 0.78rem;
    font-weight: 500;
    color: #2563EB;
    background: white;
    border: 1px solid #BFDBFE;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-card-action:hover[b-gudo210egc] {
    background: #EFF6FF;
    border-color: #2563EB;
}

/* Empty states */
.card-empty-soft[b-gudo210egc] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 24px 8px;
    color: #94A3B8;
    font-size: 0.82rem;
}

.card-empty-soft i[b-gudo210egc] {
    font-size: 1.4rem;
    color: #CBD5E1;
}

/* Detail grid */
.detail-grid[b-gudo210egc] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 24px;
}

.detail-item-full[b-gudo210egc] {
    grid-column: 1 / -1;
}

.detail-item[b-gudo210egc] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.detail-label[b-gudo210egc] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #94A3B8;
    font-weight: 600;
}

.detail-value[b-gudo210egc] {
    font-size: 0.88rem;
    color: #1E293B;
    word-wrap: break-word;
}

.detail-multiline[b-gudo210egc] {
    white-space: pre-wrap;
}

.detail-locked-hint[b-gudo210egc] {
    margin-top: 14px;
    padding: 10px 14px;
    background: #F8FAFC;
    border: 1px dashed #CBD5E1;
    border-radius: 8px;
    color: #64748B;
    font-size: 0.78rem;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

/* Forms (edit / add note / upload) */
.edit-form[b-gudo210egc],
.add-note[b-gudo210egc],
.upload-form[b-gudo210egc] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.upload-form[b-gudo210egc],
.add-note[b-gudo210egc] {
    margin-bottom: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid #F1F5F9;
}

.form-row[b-gudo210egc] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.form-group[b-gudo210egc] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.form-group-grow[b-gudo210egc] {
    flex: 1;
}

.form-group label[b-gudo210egc] {
    font-size: 0.74rem;
    font-weight: 600;
    color: #475569;
}

/* Normalize input heights — Bootstrap's form-select-sm reserves space for the chevron
   which makes it appear taller next to a sibling form-control-sm input. Force a
   consistent height + line-height so the two align in the same row. */
.upload-form .form-control[b-gudo210egc],
.upload-form .form-select[b-gudo210egc],
.edit-form .form-control[b-gudo210egc],
.edit-form .form-select[b-gudo210egc] {
    min-height: 32px;
    line-height: 1.4;
    padding-top: 4px;
    padding-bottom: 4px;
}

.upload-form textarea.form-control[b-gudo210egc],
.edit-form textarea.form-control[b-gudo210egc] {
    min-height: auto;
}

.form-error[b-gudo210egc] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 8px 10px;
    background: #FEF2F2;
    color: #B91C1C;
    border-radius: 6px;
    font-size: 0.78rem;
    border: 1px solid #FECACA;
}

.form-actions[b-gudo210egc] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

.upload-status[b-gudo210egc] {
    color: #475569;
    font-size: 0.82rem;
    display: inline-flex;
    align-items: center;
}

/* Notes */
.notes-list[b-gudo210egc] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.note-item[b-gudo210egc] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.note-avatar[b-gudo210egc] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: linear-gradient(135deg, #DBEAFE, #BFDBFE);
    color: #1D4ED8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.74rem;
    font-weight: 700;
    flex-shrink: 0;
}

.note-body[b-gudo210egc] {
    flex: 1;
    min-width: 0;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    padding: 10px 12px;
}

.note-header[b-gudo210egc] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 4px;
    font-size: 0.74rem;
    gap: 8px;
}

.note-author[b-gudo210egc] {
    font-weight: 600;
    color: #1E293B;
}

.note-date[b-gudo210egc] {
    color: #94A3B8;
    flex-shrink: 0;
}

.note-content[b-gudo210egc] {
    font-size: 0.85rem;
    color: #334155;
    white-space: pre-wrap;
    line-height: 1.5;
}

/* Documents — card-style rows instead of a table */
.docs-list[b-gudo210egc] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.doc-item[b-gudo210egc] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    transition: all 0.15s;
}

.doc-item:hover[b-gudo210egc] {
    border-color: #CBD5E1;
    background: #F1F5F9;
}

.doc-icon[b-gudo210egc] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: white;
    border: 1px solid #E2E8F0;
    color: #475569;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.05rem;
    flex-shrink: 0;
}

.doc-body[b-gudo210egc] {
    flex: 1;
    min-width: 0;
}

.doc-name[b-gudo210egc] {
    font-size: 0.85rem;
    font-weight: 600;
    color: #1E293B;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.doc-meta[b-gudo210egc] {
    margin-top: 2px;
    font-size: 0.72rem;
    color: #94A3B8;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    align-items: center;
}

.doc-type[b-gudo210egc] {
    font-weight: 600;
    color: #64748B;
}

.doc-sep[b-gudo210egc] {
    color: #CBD5E1;
}

.doc-description[b-gudo210egc] {
    margin-top: 4px;
    font-size: 0.78rem;
    color: #475569;
}

.doc-action[b-gudo210egc] {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    border: 1px solid #E2E8F0;
    background: white;
    color: #475569;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s;
    flex-shrink: 0;
}

.doc-action:hover[b-gudo210egc] {
    background: #2563EB;
    color: white;
    border-color: #2563EB;
}

/* Sidebar — Key facts */
.key-facts[b-gudo210egc] {
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
}

.key-fact[b-gudo210egc] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 12px;
    padding: 8px 0;
    border-bottom: 1px solid #F1F5F9;
}

.key-fact:last-child[b-gudo210egc] {
    border-bottom: none;
}

.key-fact dt[b-gudo210egc] {
    font-size: 0.72rem;
    color: #94A3B8;
    font-weight: 500;
    margin: 0;
    flex-shrink: 0;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.key-fact dd[b-gudo210egc] {
    margin: 0;
    font-size: 0.84rem;
    color: #1E293B;
    text-align: right;
    font-weight: 500;
    word-break: break-word;
}

.key-fact-emph[b-gudo210egc] {
    color: #047857 !important;
    font-weight: 700 !important;
    font-size: 0.92rem !important;
}

/* Sidebar — Timeline */
.timeline[b-gudo210egc] {
    list-style: none;
    margin: 0;
    padding: 0 0 0 4px;
    border-left: 2px solid #E2E8F0;
}

.timeline-item[b-gudo210egc] {
    position: relative;
    padding: 4px 0 14px 18px;
}

.timeline-item:last-child[b-gudo210egc] {
    padding-bottom: 0;
}

.timeline-dot[b-gudo210egc] {
    position: absolute;
    left: -7px;
    top: 7px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #94A3B8;
    border: 2px solid white;
    box-shadow: 0 0 0 1px #E2E8F0;
}

/* Color the dot per-status */
.timeline-dot.badge-draft[b-gudo210egc] { background: #9CA3AF; }
.timeline-dot.badge-submitted[b-gudo210egc] { background: #D97706; }
.timeline-dot.badge-review[b-gudo210egc] { background: #2563EB; }
.timeline-dot.badge-info-req[b-gudo210egc] { background: #DC2626; }
.timeline-dot.badge-approved[b-gudo210egc] { background: #059669; }
.timeline-dot.badge-denied[b-gudo210egc] { background: #B91C1C; }
.timeline-dot.badge-closed[b-gudo210egc] { background: #4B5563; }

.timeline-headline[b-gudo210egc] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.timeline-date[b-gudo210egc] {
    margin-top: 4px;
    font-size: 0.72rem;
    color: #64748B;
}

.timeline-notes[b-gudo210egc] {
    margin-top: 4px;
    font-size: 0.8rem;
    color: #475569;
    background: #F8FAFC;
    border: 1px solid #F1F5F9;
    border-radius: 6px;
    padding: 6px 8px;
}

.timeline-author[b-gudo210egc] {
    font-size: 0.7rem;
    color: #94A3B8;
    margin-top: 4px;
    font-style: italic;
}
/* /Components/Pages/BankPortal/ClaimsPage.razor.rz.scp.css */
/* Header — matches admin pattern */
.content-header[b-p435z5tcg5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

.content-title[b-p435z5tcg5] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a1a2e;
    margin: 0;
}

.content-subtitle[b-p435z5tcg5] {
    font-size: 0.8rem;
    color: #94A3B8;
    margin: 2px 0 0;
}

.header-stats[b-p435z5tcg5] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.stat-pill[b-p435z5tcg5] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 20px;
    font-size: 0.75rem;
    color: #64748B;
}

.stat-pill i[b-p435z5tcg5] { font-size: 0.8rem; }
.stat-pill .stat-value[b-p435z5tcg5] { font-weight: 700; color: #1E293B; }
.stat-pill .stat-label[b-p435z5tcg5] { font-size: 0.6rem; letter-spacing: 0.5px; color: #94A3B8; }
.stat-pill.stat-primary[b-p435z5tcg5] { border-color: #BFDBFE; background: #EFF6FF; }
.stat-pill.stat-primary i[b-p435z5tcg5] { color: #3B82F6; }
.stat-pill.stat-warning[b-p435z5tcg5] { border-color: #FDE68A; background: #FFFBEB; }
.stat-pill.stat-warning i[b-p435z5tcg5] { color: #F59E0B; }
.stat-pill.stat-success[b-p435z5tcg5] { border-color: #A7F3D0; background: #ECFDF5; }
.stat-pill.stat-success i[b-p435z5tcg5] { color: #10B981; }
.stat-pill.stat-info[b-p435z5tcg5] { border-color: #BAE6FD; background: #F0F9FF; }
.stat-pill.stat-info i[b-p435z5tcg5] { color: #0284C7; }

.btn-header-action[b-p435z5tcg5] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #E2E8F0;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #64748B;
    transition: all 0.2s;
}

.btn-header-action:hover[b-p435z5tcg5] { background: #F1F5F9; color: #334155; }

/* Card with tabs */
.card-with-tabs[b-p435z5tcg5] {
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    background: white;
    overflow: hidden;
}

/* Toolbar */
.card-toolbar[b-p435z5tcg5] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    border-bottom: 1px solid #F1F5F9;
    background: #FAFBFC;
}

.toolbar-search[b-p435z5tcg5] {
    position: relative;
    flex: 1;
    max-width: 300px;
}

.toolbar-search i[b-p435z5tcg5] {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.75rem;
    color: #94A3B8;
    pointer-events: none;
}

.toolbar-search .form-control[b-p435z5tcg5] {
    padding-left: 30px;
    font-size: 0.8rem;
    border-color: #E2E8F0;
    height: 34px;
}

.toolbar-search .form-control:focus[b-p435z5tcg5] {
    border-color: #93C5FD;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.toolbar-filters[b-p435z5tcg5] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: auto;
}

.toolbar-btn[b-p435z5tcg5] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.78rem;
    white-space: nowrap;
    height: 34px;
    border-radius: 6px;
    padding: 0 12px;
    cursor: pointer;
    border: none;
    font-weight: 500;
    transition: all 0.15s;
}

.btn-brand[b-p435z5tcg5] { background: var(--accent-color); color: white; }
.btn-brand:hover[b-p435z5tcg5] { filter: brightness(0.85); color: white; }
.btn-ghost[b-p435z5tcg5] { background: transparent; border: 1px solid #E2E8F0; color: #64748B; }
.btn-ghost:hover[b-p435z5tcg5] { background: #F1F5F9; color: #374151; }

/* Table */
.table-card[b-p435z5tcg5] { overflow: hidden; }

.table thead th[b-p435z5tcg5] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #94A3B8;
    font-weight: 600;
    border-bottom: 1px solid #F1F5F9;
    padding: 12px 16px;
    white-space: nowrap;
    background: white;
}

.table tbody td[b-p435z5tcg5] {
    padding: 11px 16px;
    vertical-align: middle;
    border-bottom: 1px solid #F9FAFB;
    font-size: 0.82rem;
}

.claim-row[b-p435z5tcg5] { cursor: pointer; transition: background 0.1s; }
.claim-row:hover[b-p435z5tcg5] { background: #F8FAFC !important; }

.claim-number[b-p435z5tcg5] { font-weight: 600; color: #0d6785; font-size: 0.8rem; }
.cell-text[b-p435z5tcg5] { color: #374151; font-weight: 500; }
.cell-date[b-p435z5tcg5] { color: #64748B; white-space: nowrap; font-size: 0.78rem; }
.cell-amount[b-p435z5tcg5] { color: #374151; font-weight: 600; white-space: nowrap; }

/* Status badges */
.status-badge[b-p435z5tcg5] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

.badge-draft[b-p435z5tcg5] { background: #F3F4F6; color: #6B7280; }
.badge-submitted[b-p435z5tcg5] { background: #FEF3C7; color: #92400E; }
.badge-review[b-p435z5tcg5] { background: #DBEAFE; color: #1E40AF; }
.badge-info-req[b-p435z5tcg5] { background: #FDE8E8; color: #9B1C1C; }
.badge-approved[b-p435z5tcg5] { background: #DCFCE7; color: #166534; }
.badge-denied[b-p435z5tcg5] { background: #FEE2E2; color: #991B1B; }
.badge-closed[b-p435z5tcg5] { background: #E5E7EB; color: #374151; }

/* Empty / Loading */
.table-empty[b-p435z5tcg5] {
    padding: 60px 20px;
    text-align: center;
    color: #94A3B8;
}

.table-empty i[b-p435z5tcg5] { font-size: 2rem; margin-bottom: 8px; display: block; }
.table-empty p[b-p435z5tcg5] { margin: 0 0 8px; }
.table-empty-hint[b-p435z5tcg5] { font-size: 0.75rem; color: #CBD5E1; }

.table-loading[b-p435z5tcg5] {
    padding: 40px 20px;
    text-align: center;
    color: #94A3B8;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 0.85rem;
}

/* Skeleton table rows */
@keyframes claims-skel-pulse-b-p435z5tcg5 {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.table-row-skeleton td[b-p435z5tcg5] {
    padding: 0.875rem 0.75rem;
}

.row-skel[b-p435z5tcg5] {
    height: 1.0625rem;
    width: 80px;
    border-radius: 4px;
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: claims-skel-pulse-b-p435z5tcg5 1.5s ease-in-out infinite;
}

.row-skel-badge[b-p435z5tcg5] {
    height: 1.25rem;
    width: 90px;
    border-radius: 9999px;
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: claims-skel-pulse-b-p435z5tcg5 1.5s ease-in-out infinite;
}

/* Animations */
@keyframes spin-b-p435z5tcg5 {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.spinning[b-p435z5tcg5] { animation: spin-b-p435z5tcg5 1s linear infinite; }

/* Responsive */
@media (max-width: 768px) {
    .content-header[b-p435z5tcg5] {
        flex-direction: column;
        gap: 12px;
        align-items: flex-start;
    }

    .header-stats[b-p435z5tcg5] {
        width: 100%;
        overflow-x: auto;
    }

    .card-toolbar[b-p435z5tcg5] { flex-wrap: wrap; }
    .toolbar-search[b-p435z5tcg5] { max-width: 100%; }
    .toolbar-filters[b-p435z5tcg5] { margin-left: 0; }
}
/* /Components/Pages/BankPortal/DashboardPage.razor.rz.scp.css */
/* ========================================
   Bank Dashboard - Professional Financial UI
   Inspired by Modern FinTech Design Systems
   ======================================== */

/* Header fade-in animation */
@keyframes headerFadeIn-b-e5r1ui6r9h {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Dashboard Header */
.dashboard-header[b-e5r1ui6r9h] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1.75rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid var(--border-light);
    animation: headerFadeIn-b-e5r1ui6r9h 0.4s ease-out;
}

.dashboard-header h1[b-e5r1ui6r9h] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary, #0F172A);
    margin-bottom: 0.25rem;
    letter-spacing: -0.025em;
}

.dashboard-header .subtitle[b-e5r1ui6r9h] {
    color: var(--text-muted, #64748B);
    font-size: 0.9375rem;
    font-weight: 500;
}

.dashboard-header .btn[b-e5r1ui6r9h] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 500;
    padding: 0.5rem 1rem;
    border-radius: var(--radius-md, 8px);
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

/* Dashboard cards base */
.dashboard-card[b-e5r1ui6r9h] {
    background: var(--bg-surface, #FFFFFF);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg, 12px);
    box-shadow: var(--shadow-xs, 0 1px 2px 0 rgba(15, 23, 42, 0.05));
    transition: all var(--transition-base, 200ms ease);
}

.dashboard-card:hover[b-e5r1ui6r9h] {
    box-shadow: var(--shadow-md, 0 4px 6px -1px rgba(15, 23, 42, 0.12));
    border-color: var(--border-medium);
}

/* Skeleton loading animation */
.skeleton-block[b-e5r1ui6r9h] {
    background: linear-gradient(90deg, 
        var(--neutral-100) 25%, 
        var(--neutral-200) 50%, 
        var(--neutral-100) 75%);
    background-size: 200% 100%;
    animation: skeleton-pulse-b-e5r1ui6r9h 1.5s ease-in-out infinite;
    border-radius: var(--radius-sm, 4px);
}

@keyframes skeleton-pulse-b-e5r1ui6r9h {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}


/* Policy & Claims stats */
.policy-stats .policy-stat-item[b-e5r1ui6r9h],
.claims-stats .claims-stat-item[b-e5r1ui6r9h] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.policy-stats .stat-value[b-e5r1ui6r9h],
.claims-stats .stat-value[b-e5r1ui6r9h] {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.025em;
}

.policy-stats .stat-label[b-e5r1ui6r9h],
.claims-stats .stat-label[b-e5r1ui6r9h] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-muted, #64748B);
}

/* Action items */
.action-items-list[b-e5r1ui6r9h] {
    max-height: 340px;
    overflow-y: auto;
    padding-right: 0.25rem;
}

.action-items-list[b-e5r1ui6r9h]::-webkit-scrollbar {
    width: 4px;
}

.action-items-list[b-e5r1ui6r9h]::-webkit-scrollbar-track {
    background: var(--neutral-100);
    border-radius: 2px;
}

.action-items-list[b-e5r1ui6r9h]::-webkit-scrollbar-thumb {
    background: var(--neutral-300);
    border-radius: 2px;
}

.action-item[b-e5r1ui6r9h] {
    padding: 1rem;
    border-radius: var(--radius-md, 8px);
    background: var(--neutral-50);
    border: 1px solid transparent;
    margin-bottom: 0.75rem;
    transition: all var(--transition-fast, 160ms ease);
}

.action-item:hover[b-e5r1ui6r9h] {
    background: var(--bg-surface, #FFFFFF);
    border-color: var(--brand-200);
    box-shadow: var(--shadow-sm);
}

.action-item:last-child[b-e5r1ui6r9h] {
    margin-bottom: 0;
}

.action-item-header[b-e5r1ui6r9h] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.375rem;
}

.action-item-header .application-number[b-e5r1ui6r9h] {
    font-weight: 600;
    font-size: 0.9375rem;
    color: var(--brand-700);
}

.action-item-borrower[b-e5r1ui6r9h] {
    font-size: 0.875rem;
    color: var(--text-secondary, #475569);
    margin-bottom: 0.625rem;
    font-weight: 500;
}

.action-item-footer[b-e5r1ui6r9h] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.action-item-footer .btn[b-e5r1ui6r9h] {
    font-size: 0.8125rem;
    padding: 0.375rem 0.75rem;
    font-weight: 600;
}

/* Activity feed */
.activity-feed[b-e5r1ui6r9h] {
    max-height: 320px;
    overflow-y: auto;
    padding-right: 0.25rem;
}

.activity-feed[b-e5r1ui6r9h]::-webkit-scrollbar {
    width: 4px;
}

.activity-feed[b-e5r1ui6r9h]::-webkit-scrollbar-track {
    background: var(--neutral-100);
    border-radius: 2px;
}

.activity-feed[b-e5r1ui6r9h]::-webkit-scrollbar-thumb {
    background: var(--neutral-300);
    border-radius: 2px;
}

.activity-item[b-e5r1ui6r9h] {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
    padding: 0.875rem 0;
    border-bottom: 1px solid var(--neutral-100);
}

.activity-item:last-child[b-e5r1ui6r9h] {
    border-bottom: none;
}

.activity-avatar[b-e5r1ui6r9h] {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-700) 100%);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8125rem;
    font-weight: 700;
    flex-shrink: 0;
    letter-spacing: 0.025em;
}

.activity-content[b-e5r1ui6r9h] {
    flex: 1;
    min-width: 0;
}

.activity-user[b-e5r1ui6r9h] {
    font-weight: 600;
    font-size: 0.9375rem;
    color: var(--text-primary, #0F172A);
    margin-bottom: 0.125rem;
}

.activity-action[b-e5r1ui6r9h] {
    font-size: 0.875rem;
    color: var(--text-secondary, #475569);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.activity-time[b-e5r1ui6r9h] {
    font-size: 0.75rem;
    color: var(--text-muted, #64748B);
    font-weight: 500;
    margin-top: 0.25rem;
}

/* Empty states */
.empty-state[b-e5r1ui6r9h] {
    padding: 2.5rem 1.5rem;
    text-align: center;
}

.empty-state i[b-e5r1ui6r9h] {
    font-size: 3rem;
    opacity: 0.4;
    margin-bottom: 0.75rem;
}

.empty-state p[b-e5r1ui6r9h] {
    font-weight: 600;
    color: var(--text-secondary);
    margin-bottom: 0.25rem;
}

.empty-state small[b-e5r1ui6r9h] {
    color: var(--text-muted);
}

/* Quick actions */
.quick-actions-card[b-e5r1ui6r9h] {
    background: var(--bg-surface, #FFFFFF);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg, 12px);
    box-shadow: var(--shadow-xs);
    padding: 1.25rem;
    height: 100%;
    animation: fadeUp-b-e5r1ui6r9h 0.5s ease-out forwards;
    animation-delay: 200ms;
    opacity: 0;
}

@keyframes fadeUp-b-e5r1ui6r9h {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes popIn-b-e5r1ui6r9h {
    from {
        opacity: 0;
        transform: scale(0.8);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.quick-actions-card h5[b-e5r1ui6r9h] {
    font-weight: 700;
    color: var(--text-primary);
    font-size: 1rem;
    letter-spacing: -0.01em;
}

.quick-actions-row[b-e5r1ui6r9h] {
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--border-light);
}

.quick-actions-row h5[b-e5r1ui6r9h] {
    font-weight: 700;
    color: var(--text-primary);
    font-size: 1.125rem;
    letter-spacing: -0.01em;
}

.quick-action-card[b-e5r1ui6r9h] {
    text-align: center;
    padding: 1.25rem 1rem;
    border-radius: var(--radius-lg, 12px);
    background: var(--bg-surface, #FFFFFF);
    border: 1px solid var(--border-light);
    box-shadow: var(--shadow-xs);
    transition: all var(--transition-fast, 160ms ease);
    cursor: pointer;
    text-decoration: none;
    color: inherit;
    display: block;
    animation: popIn-b-e5r1ui6r9h 0.4s ease-out forwards;
    opacity: 0;
}

/* Staggered animation delays for quick action cards */
.quick-actions-card .row > div:nth-child(1) .quick-action-card[b-e5r1ui6r9h] { animation-delay: 300ms; }
.quick-actions-card .row > div:nth-child(2) .quick-action-card[b-e5r1ui6r9h] { animation-delay: 400ms; }
.quick-actions-card .row > div:nth-child(3) .quick-action-card[b-e5r1ui6r9h] { animation-delay: 500ms; }
.quick-actions-card .row > div:nth-child(4) .quick-action-card[b-e5r1ui6r9h] { animation-delay: 600ms; }

.quick-action-card:hover[b-e5r1ui6r9h] {
    transform: translateY(-3px);
    box-shadow: var(--shadow-lg);
    border-color: var(--brand-300);
    color: inherit;
    text-decoration: none;
}

.quick-action-icon[b-e5r1ui6r9h] {
    width: 48px;
    height: 48px;
    border-radius: var(--radius-md, 8px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    margin: 0 auto 0.75rem;
    transition: transform var(--transition-fast);
}

.quick-action-card:hover .quick-action-icon[b-e5r1ui6r9h] {
    transform: scale(1.05);
}

.quick-action-title[b-e5r1ui6r9h] {
    font-weight: 700;
    font-size: 0.875rem;
    margin-bottom: 0.25rem;
    color: var(--text-primary);
}

.quick-action-desc[b-e5r1ui6r9h] {
    font-size: 0.75rem;
    color: var(--text-muted, #64748B);
    font-weight: 500;
}

/* Chart container */
.chart-container[b-e5r1ui6r9h] {
    position: relative;
    width: 100%;
}

/* Spin animation */
.spin[b-e5r1ui6r9h] {
    animation: spin-b-e5r1ui6r9h 1s linear infinite;
}

@keyframes spin-b-e5r1ui6r9h {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Card section headers */
.card-subtitle[b-e5r1ui6r9h] {
    font-weight: 700 !important;
    font-size: 0.9375rem !important;
    color: var(--text-primary) !important;
    display: flex;
    align-items: center;
}

.card-subtitle i[b-e5r1ui6r9h] {
    color: var(--brand-500);
    font-size: 1.125rem;
}

/* Status badges */
.badge[b-e5r1ui6r9h] {
    font-weight: 600;
    font-size: 0.6875rem;
    padding: 0.25rem 0.625rem;
    border-radius: var(--radius-pill, 9999px);
    letter-spacing: 0.02em;
}

/* Responsive adjustments */
@media (max-width: 991.98px) {
    .dashboard-header[b-e5r1ui6r9h] {
        flex-direction: column;
        gap: 1rem;
    }
    
    .dashboard-header .btn[b-e5r1ui6r9h] {
        align-self: flex-start;
    }
}

@media (max-width: 767.98px) {
    .metric-card[b-e5r1ui6r9h] {
        padding: 1rem;
    }
    
    .metric-icon[b-e5r1ui6r9h] {
        width: 44px;
        height: 44px;
        font-size: 1.125rem;
    }
    
    .metric-value[b-e5r1ui6r9h] {
        font-size: 1.5rem;
    }
    
    .action-items-list[b-e5r1ui6r9h],
    .activity-feed[b-e5r1ui6r9h] {
        max-height: 280px;
    }
    
    .quick-action-card[b-e5r1ui6r9h] {
        padding: 1.25rem 1rem;
    }
    
    .quick-action-icon[b-e5r1ui6r9h] {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
    }
}

/* /Components/Pages/BankPortal/NewClaimPage.razor.rz.scp.css */
/* Header */
.content-header[b-tzjc8aa2pd] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.content-title[b-tzjc8aa2pd] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a1a2e;
    margin: 0;
}

.content-subtitle[b-tzjc8aa2pd] {
    font-size: 0.8rem;
    color: #94A3B8;
    margin: 2px 0 0;
}

.btn-back[b-tzjc8aa2pd] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.82rem;
    font-weight: 500;
    color: #64748B;
    text-decoration: none;
    padding: 8px 14px;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    transition: all 0.15s;
}

.btn-back:hover[b-tzjc8aa2pd] {
    background: #F1F5F9;
    color: #334155;
    border-color: #CBD5E1;
}

/* Form Card */
.form-card[b-tzjc8aa2pd] {
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    overflow: hidden;
    max-width: 720px;
}

/* Application info bar */
.app-info-bar[b-tzjc8aa2pd] {
    display: flex;
    gap: 24px;
    padding: 14px 24px;
    background: #F8FAFC;
    border-bottom: 1px solid #F1F5F9;
}

.app-info-item[b-tzjc8aa2pd] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.app-info-label[b-tzjc8aa2pd] {
    font-size: 0.6rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #94A3B8;
}

.app-info-value[b-tzjc8aa2pd] {
    font-size: 0.82rem;
    font-weight: 600;
    color: #1E293B;
}

/* Form body */
.form-body[b-tzjc8aa2pd] {
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.form-group[b-tzjc8aa2pd] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.form-label[b-tzjc8aa2pd] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #334155;
}

.form-label .required[b-tzjc8aa2pd] {
    color: #EF4444;
}

.form-row-2[b-tzjc8aa2pd] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.form-control[b-tzjc8aa2pd] {
    font-size: 0.85rem;
    border-color: #E2E8F0;
}

.form-control:focus[b-tzjc8aa2pd] {
    border-color: #93C5FD;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

/* Form footer */
.form-footer[b-tzjc8aa2pd] {
    padding: 16px 24px;
    border-top: 1px solid #F1F5F9;
    background: #FAFBFC;
}

.form-actions[b-tzjc8aa2pd] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 10px;
}

.btn-cancel[b-tzjc8aa2pd] {
    font-size: 0.82rem;
    font-weight: 500;
    color: #64748B;
    text-decoration: none;
    padding: 8px 16px;
    border-radius: 8px;
    transition: all 0.15s;
}

.btn-cancel:hover[b-tzjc8aa2pd] {
    background: #F1F5F9;
    color: #334155;
}

.btn-submit[b-tzjc8aa2pd] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 20px;
    background: var(--accent-color);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-submit:hover:not(:disabled)[b-tzjc8aa2pd] {
    filter: brightness(1.1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.btn-submit:disabled[b-tzjc8aa2pd] {
    opacity: 0.5;
    cursor: not-allowed;
}

.form-error[b-tzjc8aa2pd] {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #DC2626;
    font-size: 0.8rem;
    margin-bottom: 12px;
}

/* States */
.loading-state[b-tzjc8aa2pd],
.error-state[b-tzjc8aa2pd] {
    padding: 60px 20px;
    text-align: center;
    color: #94A3B8;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

/* Skeleton loading state */
@keyframes newclaim-skel-pulse-b-tzjc8aa2pd {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.skel-block[b-tzjc8aa2pd] {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: newclaim-skel-pulse-b-tzjc8aa2pd 1.5s ease-in-out infinite;
    border-radius: 4px;
}

.skel-info-bar[b-tzjc8aa2pd] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: #f8fafc;
    border-radius: 8px;
    margin-bottom: 1.5rem;
}

.skel-info-item[b-tzjc8aa2pd] {
    display: flex;
    flex-direction: column;
}

.skel-form-body[b-tzjc8aa2pd] {
    padding: 0 1.25rem;
}

.skel-form-row[b-tzjc8aa2pd] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-bottom: 20px;
}

.skel-form-group[b-tzjc8aa2pd] {
    display: flex;
    flex-direction: column;
}

.skel-form-footer[b-tzjc8aa2pd] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid #e9ecef;
    margin-top: 1.5rem;
}

@media (max-width: 575.98px) {
    .skel-info-bar[b-tzjc8aa2pd] {
        grid-template-columns: repeat(2, 1fr);
    }

    .skel-form-row[b-tzjc8aa2pd] {
        grid-template-columns: 1fr;
    }
}

.error-state i[b-tzjc8aa2pd] {
    font-size: 2rem;
    color: #F59E0B;
}

.success-card[b-tzjc8aa2pd] {
    max-width: 480px;
}

.success-state[b-tzjc8aa2pd] {
    padding: 48px 24px;
    text-align: center;
}

.success-state i[b-tzjc8aa2pd] {
    font-size: 3rem;
    color: #10B981;
    display: block;
    margin-bottom: 12px;
}

.success-state h3[b-tzjc8aa2pd] {
    font-size: 1.1rem;
    font-weight: 700;
    color: #1E293B;
    margin: 0 0 4px;
}

.success-state p[b-tzjc8aa2pd] {
    color: #64748B;
    font-size: 0.85rem;
    margin: 0 0 20px;
}

.success-actions[b-tzjc8aa2pd] {
    display: flex;
    gap: 10px;
    justify-content: center;
}

/* Responsive */
@media (max-width: 640px) {
    .app-info-bar[b-tzjc8aa2pd] {
        flex-wrap: wrap;
        gap: 12px;
    }

    .form-row-2[b-tzjc8aa2pd] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/BankPortal/ReferralResponsePage.razor.rz.scp.css */
.referral-response-page[b-keverbepb1] {
    max-width: 980px;
    padding-bottom: 4rem;
}

.referral-response-header[b-keverbepb1] {
    padding: 1.5rem 0 1rem;
}

.referral-response-back[b-keverbepb1] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.35rem 0.9rem 0.35rem 0.4rem;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    background: #fff;
    color: #475569;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05);
    margin-bottom: 0.35rem;
}

.referral-response-back-icon[b-keverbepb1] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #f1f5f9;
    color: #475569;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    transition: all 0.15s;
}

.referral-response-back:hover[b-keverbepb1] {
    border-color: #cbd5e1;
    color: #0f172a;
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.08);
}

.referral-response-back:hover .referral-response-back-icon[b-keverbepb1] {
    background: #0f172a;
    color: #fff;
    transform: translateX(-2px);
}

.referral-response-back:focus-visible[b-keverbepb1] {
    outline: none;
    box-shadow: 0 0 0 3px rgba(13, 103, 133, 0.2);
}

.referral-response-title[b-keverbepb1] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #111827;
    margin: 0.5rem 0 0.15rem;
}

.referral-response-subtitle[b-keverbepb1] {
    color: #6b7280;
    margin: 0;
}

/* ---- Why-this-was-referred banner ---- */

.referral-response-banner[b-keverbepb1] {
    background: #fffbeb;
    border: 1px solid #f59e0b;
    border-radius: 12px;
    padding: 1rem 1.25rem;
    margin-bottom: 1.25rem;
}

.referral-response-banner-head[b-keverbepb1] {
    display: flex;
    gap: 0.6rem;
    align-items: flex-start;
    color: #78350f;
}

.referral-response-banner-head i[b-keverbepb1] {
    font-size: 1.1rem;
    color: #d97706;
    margin-top: 0.1rem;
}

.referral-response-banner-meta[b-keverbepb1] {
    font-size: 0.8rem;
    color: #92400e;
}

.referral-response-reasons[b-keverbepb1] {
    margin: 0.75rem 0 0;
    padding-left: 2.1rem;
    color: #78350f;
    font-size: 0.9rem;
}

.referral-response-message[b-keverbepb1] {
    margin-top: 0.75rem;
    background: #fef3c7;
    border-radius: 8px;
    padding: 0.6rem 0.9rem;
    font-style: italic;
    color: #78350f;
    font-size: 0.9rem;
}

.referral-response-instructions[b-keverbepb1] {
    margin: 0.75rem 0 0;
    color: #92400e;
    font-size: 0.85rem;
}

/* ---- Section cards ---- */

.referral-response-card[b-keverbepb1] {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
    margin-bottom: 1.25rem;
    overflow: hidden;
}

.referral-response-card-head[b-keverbepb1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.85rem 1.25rem;
    border-bottom: 1px solid #eef2f6;
    background: #fafbfc;
}

.referral-response-card-head-text[b-keverbepb1] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    font-size: 0.9rem;
    font-weight: 700;
    color: #0f172a;
}

.referral-response-card-head-text i[b-keverbepb1] {
    color: #64748b;
}

/* The card-head label doubles as the collapse toggle on the summary panel. Reset the button
   chrome only — .referral-response-card-head-text still supplies the layout and typography, and
   its `i { color }` rule already covers the chevron. */
.referral-response-summary-toggle[b-keverbepb1] {
    background: none;
    border: none;
    padding: 0;
    font-family: inherit;
    text-align: left;
    cursor: pointer;
}

.referral-response-summary-toggle:hover i[b-keverbepb1] {
    color: var(--brand-500, #0d6785);
}

.referral-response-summary-toggle:focus-visible[b-keverbepb1] {
    outline: none;
    box-shadow: 0 0 0 3px rgba(13, 103, 133, 0.2);
    border-radius: 6px;
}

/* Keeps the pill and Download PDF together on the right of the always-visible header row. */
.referral-response-card-head-actions[b-keverbepb1] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.referral-response-readonly-pill[b-keverbepb1],
.referral-response-required-pill[b-keverbepb1] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.72rem;
    font-weight: 600;
    padding: 0.2rem 0.6rem;
    border-radius: 20px;
}

.referral-response-readonly-pill[b-keverbepb1] {
    background: #f1f5f9;
    color: #64748b;
}

.referral-response-required-pill[b-keverbepb1] {
    background: #fef3c7;
    color: #b45309;
}

/* ---- Embedded read-only summary ----
   The summary tab is the underwriter component reused as reference material; trim it for
   this context: no duplicate tagged-referral panel (the page banner owns that story) and
   no VERAcheck/side-panel column (underwriting workflow, meaningless while responding). */

.referral-response-summary-body[b-keverbepb1] {
    padding: 0.5rem 1.25rem 1rem;
}

.referral-response-summary-body[b-keverbepb1]  .col-4 {
    display: none;
}

.referral-response-summary-body[b-keverbepb1]  .col-8 {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
}

.referral-response-summary-body[b-keverbepb1]  .referral-alert {
    display: none;
}

/* The tab's own "Download PDF" now lives on this panel's header row (always visible, including
   while collapsed), so hide the in-body duplicate. The "Application Summary" heading stays. */
.referral-response-summary-body[b-keverbepb1]  .document-header .action-link {
    display: none;
}

.referral-response-summary-body[b-keverbepb1]  .summary-document {
    border: none;
    box-shadow: none;
    padding-left: 0;
    padding-right: 0;
}

/* ---- Questionnaire ---- */

.referral-response-questionnaire-body[b-keverbepb1] {
    padding: 1rem 1.25rem 1.25rem;
}

/* ---- Validation summary ---- */

.referral-response-errors[b-keverbepb1] {
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 12px;
    padding: 0.9rem 1.15rem;
    margin-bottom: 1.25rem;
    color: #b91c1c;
    font-size: 0.875rem;
}

.referral-response-errors-head[b-keverbepb1] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.4rem;
}

.referral-response-errors ul[b-keverbepb1] {
    margin: 0;
    padding-left: 1.6rem;
}

/* ---- Action bar ---- */

.referral-response-actions[b-keverbepb1] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
    padding: 1rem 1.25rem;
}

.referral-response-actions-hint[b-keverbepb1] {
    flex: 1;
    font-size: 0.8rem;
    color: #94a3b8;
}

.rr-btn[b-keverbepb1] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1.3rem;
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: all 0.15s;
    font-family: inherit;
}

.rr-btn:disabled[b-keverbepb1] {
    opacity: 0.55;
    cursor: not-allowed;
}

.rr-btn-ghost[b-keverbepb1] {
    background: transparent;
    color: #64748b;
    border: 1px solid #e2e8f0;
}

.rr-btn-ghost:hover:not(:disabled)[b-keverbepb1] {
    background: #f1f5f9;
    color: #0f172a;
}

.rr-btn-primary[b-keverbepb1] {
    background: var(--brand-500, #0d6785);
    color: #fff;
}

.rr-btn-primary:hover:not(:disabled)[b-keverbepb1] {
    background: #0a526a;
}

@media (max-width: 640px) {
    .referral-response-actions[b-keverbepb1] {
        flex-wrap: wrap;
    }
    .referral-response-actions-hint[b-keverbepb1] {
        flex-basis: 100%;
        order: 3;
        text-align: center;
    }
    .rr-btn[b-keverbepb1] {
        flex: 1;
        justify-content: center;
    }
}
/* /Components/Pages/BankPortal/UserDetailPage.razor.rz.scp.css */
/* ========================================
   User Detail Page Styles
   ======================================== */

/* ========================================
   Animations
   ======================================== */
@keyframes fadeIn-b-1njnsji0pt {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes fadeInUp-b-1njnsji0pt {
    from { 
        opacity: 0; 
        transform: translateY(15px); 
    }
    to { 
        opacity: 1; 
        transform: translateY(0); 
    }
}

@keyframes fadeInDown-b-1njnsji0pt {
    from { 
        opacity: 0; 
        transform: translateY(-10px); 
    }
    to { 
        opacity: 1; 
        transform: translateY(0); 
    }
}

@keyframes scaleIn-b-1njnsji0pt {
    from { 
        opacity: 0; 
        transform: scale(0.95); 
    }
    to { 
        opacity: 1; 
        transform: scale(1); 
    }
}

@keyframes slideInLeft-b-1njnsji0pt {
    from { 
        opacity: 0; 
        transform: translateX(-20px); 
    }
    to { 
        opacity: 1; 
        transform: translateX(0); 
    }
}

@keyframes pulse-b-1njnsji0pt {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}

/* Loading & Error States */
.loading-container[b-1njnsji0pt],
.error-container[b-1njnsji0pt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 1rem;
    padding: 2rem;
    text-align: center;
    animation: fadeIn-b-1njnsji0pt 0.3s ease-out;
}

.loading-container p[b-1njnsji0pt] {
    color: #64748b;
    font-size: 0.9375rem;
    animation: pulse-b-1njnsji0pt 1.5s ease-in-out infinite;
}

/* Skeleton loading state */
@keyframes user-skel-pulse-b-1njnsji0pt {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.skel-block[b-1njnsji0pt] {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: user-skel-pulse-b-1njnsji0pt 1.5s ease-in-out infinite;
    border-radius: 4px;
}

.user-skeleton[b-1njnsji0pt] {
    padding: 1rem;
}

.skel-user-header[b-1njnsji0pt] {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 1.5rem;
    margin-bottom: 1.5rem;
}

.skel-back-row[b-1njnsji0pt] {
    margin-bottom: 1.25rem;
}

.skel-header-content[b-1njnsji0pt] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.skel-header-left[b-1njnsji0pt] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}

.skel-avatar[b-1njnsji0pt] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    flex-shrink: 0;
}

.skel-title-section[b-1njnsji0pt] {
    flex: 1;
}

.skel-action-btn[b-1njnsji0pt] {
    width: 100px;
    height: 36px;
    border-radius: 8px;
}

.skel-stats-row[b-1njnsji0pt] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.skel-stat-card[b-1njnsji0pt] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    border: 1px solid #e9ecef;
    border-radius: 8px;
}

.skel-stat-icon[b-1njnsji0pt] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    flex-shrink: 0;
}

.skel-stat-content[b-1njnsji0pt] {
    display: flex;
    flex-direction: column;
}

.skel-tabs-row[b-1njnsji0pt] {
    display: flex;
    gap: 0.5rem;
    border-bottom: 1px solid #e9ecef;
    padding-bottom: 0.75rem;
}

.skel-overview-grid[b-1njnsji0pt] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}

.skel-detail-card[b-1njnsji0pt] {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 1.5rem;
}

@media (max-width: 767.98px) {
    .skel-stats-row[b-1njnsji0pt] {
        grid-template-columns: 1fr;
    }

    .skel-overview-grid[b-1njnsji0pt] {
        grid-template-columns: 1fr;
    }

    .skel-header-content[b-1njnsji0pt] {
        flex-direction: column;
    }
}

.error-container .error-icon[b-1njnsji0pt] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: #fef2f2;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.5rem;
}

.error-container .error-icon i[b-1njnsji0pt] {
    font-size: 2.5rem;
    color: #ef4444;
}

.error-container h2[b-1njnsji0pt] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #0f172a;
    margin: 0;
}

.error-container p[b-1njnsji0pt] {
    color: #64748b;
    margin: 0 0 1.5rem 0;
}

/* Header */
.user-detail-header[b-1njnsji0pt] {
    background: white;
    border-radius: 12px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    border: 1px solid rgba(15, 23, 42, 0.1);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    animation: fadeInDown-b-1njnsji0pt 0.4s ease-out;
}

.header-nav[b-1njnsji0pt] {
    margin-bottom: 1rem;
}

.back-link[b-1njnsji0pt] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: #64748b;
    text-decoration: none;
    transition: all 0.2s ease;
}

.back-link:hover[b-1njnsji0pt] {
    color: var(--brand-500);
    transform: translateX(-3px);
}

.back-link i[b-1njnsji0pt] {
    font-size: 1rem;
}

.header-content[b-1njnsji0pt] {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 1.5rem;
}

.header-left[b-1njnsji0pt] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 1rem;
    flex: 1;
    min-width: 0;
}

.user-avatar-lg[b-1njnsji0pt] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, #10B981, #059669);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
    animation: scaleIn-b-1njnsji0pt 0.4s ease-out;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.user-avatar-lg:hover[b-1njnsji0pt] {
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
}

.user-avatar-lg img[b-1njnsji0pt] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.user-avatar-lg span[b-1njnsji0pt] {
    font-size: 1.125rem;
    font-weight: 600;
    color: white;
}

.user-title-section[b-1njnsji0pt] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
    min-width: 0;
    flex: 1;
}

.user-name-row[b-1njnsji0pt] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.user-name-row h1[b-1njnsji0pt] {
    font-size: 1.25rem;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
    white-space: nowrap;
}

.user-meta[b-1njnsji0pt] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.meta-item[b-1njnsji0pt] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: #64748b;
}

.meta-item i[b-1njnsji0pt] {
    font-size: 0.8125rem;
    color: #94a3b8;
}

/* Header Actions */
.header-actions[b-1njnsji0pt] {
    display: flex;
    gap: 0.75rem;
    flex-shrink: 0;
}

.btn-secondary[b-1njnsji0pt] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: transparent;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    color: #64748B;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-secondary:hover:not(:disabled)[b-1njnsji0pt] {
    background: #F1F5F9;
    border-color: #E2E8F0;
    color: #0F172A;
}

.btn-secondary:disabled[b-1njnsji0pt] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-primary[b-1njnsji0pt] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: var(--accent-color);
    border: 1px solid var(--accent-color);
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    color: white;
    cursor: pointer;
    transition: filter 0.15s ease, background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-primary:hover[b-1njnsji0pt] {
    filter: brightness(0.85);
}

/* Custom Actions Menu */
.actions-menu-container[b-1njnsji0pt] {
    position: relative;
}

.actions-menu-backdrop[b-1njnsji0pt] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
}

.actions-menu[b-1njnsji0pt] {
    position: absolute;
    top: calc(100% + 4px);
    right: 0;
    min-width: 260px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12), 0 4px 12px rgba(0, 0, 0, 0.08);
    z-index: 1000;
    padding: 0.5rem 0;
    animation: menuSlideIn-b-1njnsji0pt 0.15s ease-out;
}

@keyframes menuSlideIn-b-1njnsji0pt {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.actions-menu-item[b-1njnsji0pt] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    width: 100%;
    padding: 0.625rem 1rem;
    background: transparent;
    border: none;
    font-size: 0.875rem;
    font-weight: 500;
    color: #374151;
    cursor: pointer;
    transition: all 0.15s ease;
    text-align: left;
    white-space: nowrap;
}

.actions-menu-item:hover:not(:disabled)[b-1njnsji0pt] {
    background: rgba(15, 23, 42, 0.05);
    color: var(--brand-500);
}

.actions-menu-item:hover:not(:disabled) i[b-1njnsji0pt] {
    color: var(--brand-500);
}

.actions-menu-item:disabled[b-1njnsji0pt] {
    opacity: 0.5;
    cursor: not-allowed;
}

.actions-menu-item i[b-1njnsji0pt] {
    font-size: 1rem;
    color: #6b7280;
    width: 1.25rem;
    text-align: center;
}

.actions-menu-item.text-danger[b-1njnsji0pt] {
    color: var(--error-600);
}

.actions-menu-item.text-danger:hover:not(:disabled)[b-1njnsji0pt] {
    background: rgba(220, 38, 38, 0.06);
    color: var(--error-600);
}

.actions-menu-item.text-danger i[b-1njnsji0pt],
.actions-menu-item.text-danger:hover:not(:disabled) i[b-1njnsji0pt] {
    color: var(--error-600);
}

.actions-menu-item.text-success[b-1njnsji0pt] {
    color: var(--success-600);
}

.actions-menu-item.text-success:hover:not(:disabled)[b-1njnsji0pt] {
    background: rgba(22, 163, 74, 0.06);
    color: var(--success-600);
}

.actions-menu-item.text-success i[b-1njnsji0pt],
.actions-menu-item.text-success:hover:not(:disabled) i[b-1njnsji0pt] {
    color: var(--success-600);
}

.actions-menu-item.text-warning[b-1njnsji0pt] {
    color: #d97706;
}

.actions-menu-item.text-warning:hover:not(:disabled)[b-1njnsji0pt] {
    background: rgba(217, 119, 6, 0.06);
    color: #d97706;
}

.actions-menu-item.text-warning i[b-1njnsji0pt],
.actions-menu-item.text-warning:hover:not(:disabled) i[b-1njnsji0pt] {
    color: #d97706;
}

.actions-menu-divider[b-1njnsji0pt] {
    height: 1px;
    background: #e5e7eb;
    margin: 0.375rem 0;
}

/* Legacy Actions Dropdown (keeping for compatibility) */
.actions-dropdown[b-1njnsji0pt] {
    min-width: 220px;
    padding: 0.5rem 0;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1), 0 4px 10px rgba(0, 0, 0, 0.05);
    background: white;
    animation: dropdownFadeIn-b-1njnsji0pt 0.15s ease-out;
}

@keyframes dropdownFadeIn-b-1njnsji0pt {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.actions-dropdown .dropdown-item[b-1njnsji0pt] {
    display: flex;
    align-items: center;
    padding: 0.625rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: #374151;
    border: none;
    background: transparent;
    width: 100%;
    text-align: left;
    cursor: pointer;
    transition: all 0.15s ease;
}

.actions-dropdown .dropdown-item:hover:not(:disabled)[b-1njnsji0pt] {
    background: rgba(15, 23, 42, 0.05);
    color: var(--brand-500);
}

.actions-dropdown .dropdown-item:hover:not(:disabled) i[b-1njnsji0pt] {
    color: var(--brand-500);
}

.actions-dropdown .dropdown-item i[b-1njnsji0pt] {
    font-size: 1rem;
    color: #6B7280;
    transition: color 0.15s ease;
}

.actions-dropdown .dropdown-item.text-danger[b-1njnsji0pt] {
    color: var(--error-600);
}

.actions-dropdown .dropdown-item.text-danger:hover:not(:disabled)[b-1njnsji0pt] {
    background: rgba(220, 38, 38, 0.06);
    color: var(--error-600);
}

.actions-dropdown .dropdown-item.text-danger i[b-1njnsji0pt],
.actions-dropdown .dropdown-item.text-danger:hover i[b-1njnsji0pt] {
    color: var(--error-600);
}

.actions-dropdown .dropdown-item.text-success[b-1njnsji0pt] {
    color: var(--success-600);
}

.actions-dropdown .dropdown-item.text-success:hover:not(:disabled)[b-1njnsji0pt] {
    background: rgba(22, 163, 74, 0.06);
    color: var(--success-600);
}

.actions-dropdown .dropdown-item.text-success i[b-1njnsji0pt],
.actions-dropdown .dropdown-item.text-success:hover i[b-1njnsji0pt] {
    color: var(--success-600);
}

.actions-dropdown .dropdown-item.text-warning[b-1njnsji0pt] {
    color: #d97706;
}

.actions-dropdown .dropdown-item.text-warning:hover:not(:disabled)[b-1njnsji0pt] {
    background: rgba(217, 119, 6, 0.06);
    color: #d97706;
}

.actions-dropdown .dropdown-item.text-warning i[b-1njnsji0pt],
.actions-dropdown .dropdown-item.text-warning:hover i[b-1njnsji0pt] {
    color: #d97706;
}

.actions-dropdown .dropdown-item:disabled[b-1njnsji0pt] {
    opacity: 0.5;
    cursor: not-allowed;
}

.actions-dropdown .dropdown-divider[b-1njnsji0pt] {
    margin: 0.5rem 0;
    border-top: 1px solid #E5E7EB;
}

/* Role Selector */
.role-selector[b-1njnsji0pt] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.role-option[b-1njnsji0pt] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.role-option:hover[b-1njnsji0pt] {
    background: #F3F4F6;
    border-color: #D1D5DB;
}

.role-option.selected[b-1njnsji0pt] {
    background: rgba(15, 23, 42, 0.05);
    border-color: var(--brand-500);
}

.role-option .role-icon[b-1njnsji0pt] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: rgba(15, 23, 42, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.role-option .role-icon i[b-1njnsji0pt] {
    font-size: 1rem;
    color: var(--brand-500);
}

.role-option .role-details[b-1njnsji0pt] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.role-option .role-name[b-1njnsji0pt] {
    font-size: 0.875rem;
    font-weight: 600;
    color: #1F2937;
}

.role-option .role-description[b-1njnsji0pt] {
    font-size: 0.75rem;
    color: #6B7280;
}

.role-option .role-check[b-1njnsji0pt] {
    width: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.current-role-display[b-1njnsji0pt] {
    padding: 0.5rem;
    background: #F9FAFB;
    border-radius: 6px;
}

/* Stats Row */
.stats-row[b-1njnsji0pt] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    animation: fadeInUp-b-1njnsji0pt 0.5s ease-out;
}

.stat-card[b-1njnsji0pt] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 0.75rem 1rem;
    min-width: 140px;
    transition: all 0.2s ease;
}

.stat-card:hover[b-1njnsji0pt] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    border-color: rgba(15, 23, 42, 0.15);
}

.stat-card:nth-child(1)[b-1njnsji0pt] { animation: fadeInUp-b-1njnsji0pt 0.4s ease-out 0.1s both; }
.stat-card:nth-child(2)[b-1njnsji0pt] { animation: fadeInUp-b-1njnsji0pt 0.4s ease-out 0.2s both; }
.stat-card:nth-child(3)[b-1njnsji0pt] { animation: fadeInUp-b-1njnsji0pt 0.4s ease-out 0.3s both; }
.stat-card:nth-child(4)[b-1njnsji0pt] { animation: fadeInUp-b-1njnsji0pt 0.4s ease-out 0.4s both; }

.stat-card .stat-icon[b-1njnsji0pt] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: rgba(15, 23, 42, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.2s ease;
}

.stat-card:hover .stat-icon[b-1njnsji0pt] {
    transform: scale(1.1);
}

.stat-card .stat-icon i[b-1njnsji0pt] {
    font-size: 1.125rem;
    color: var(--brand-500);
}

.stat-card .stat-content[b-1njnsji0pt] {
    display: flex;
    flex-direction: column;
}

.stat-card .stat-value[b-1njnsji0pt] {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1F2937;
    line-height: 1.2;
}

.stat-card .stat-label[b-1njnsji0pt] {
    font-size: 0.75rem;
    color: #6B7280;
}

/* Tabs */
.user-tabs[b-1njnsji0pt] {
    display: flex;
    gap: 0;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    padding: 4px;
    margin-bottom: 1.5rem;
    animation: fadeInUp-b-1njnsji0pt 0.5s ease-out 0.2s both;
}

.user-tab[b-1njnsji0pt] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 500;
    color: #6B7280;
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
}

.user-tab:hover[b-1njnsji0pt] {
    color: #374151;
    background: #F9FAFB;
    transform: translateY(-1px);
}

.user-tab.active[b-1njnsji0pt] {
    color: var(--brand-500);
    background: rgba(15, 23, 42, 0.08);
}

.tab-badge[b-1njnsji0pt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    background: #E5E7EB;
    border-radius: 10px;
    font-size: 0.7rem;
    font-weight: 600;
    color: #6B7280;
    transition: all 0.2s ease;
}

.user-tab.active .tab-badge[b-1njnsji0pt] {
    background: var(--brand-500);
    color: white;
}

/* Content Area */
.user-content[b-1njnsji0pt] {
    margin-top: 1.5rem;
    animation: fadeIn-b-1njnsji0pt 0.3s ease-out;
}

/* Overview Grid */
.overview-grid[b-1njnsji0pt] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}

/* Detail Card */
.detail-card[b-1njnsji0pt] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    overflow: hidden;
    animation: fadeInUp-b-1njnsji0pt 0.4s ease-out both;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.detail-card:hover[b-1njnsji0pt] {
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.08);
}

.overview-grid .detail-card:nth-child(1)[b-1njnsji0pt] { animation-delay: 0.1s; }
.overview-grid .detail-card:nth-child(2)[b-1njnsji0pt] { animation-delay: 0.2s; }
.overview-grid .detail-card:nth-child(3)[b-1njnsji0pt] { animation-delay: 0.3s; }
.overview-grid .detail-card:nth-child(4)[b-1njnsji0pt] { animation-delay: 0.4s; }

.detail-card.full-width[b-1njnsji0pt] {
    grid-column: 1 / -1;
}

.detail-card .card-header[b-1njnsji0pt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 1.25rem;
    background: #F9FAFB;
    border-bottom: 1px solid #E5E7EB;
}

.detail-card .card-header i[b-1njnsji0pt] {
    font-size: 1rem;
    color: var(--brand-500);
}

.detail-card .card-header h3[b-1njnsji0pt] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: #1F2937;
    margin: 0;
    flex: 1;
}

.detail-card .card-body[b-1njnsji0pt] {
    padding: 1.25rem;
}

.btn-edit[b-1njnsji0pt] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    color: #6B7280;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-edit:hover[b-1njnsji0pt] {
    background: white;
    border-color: var(--brand-500);
    color: var(--brand-500);
}

/* Detail Grid */
.detail-grid[b-1njnsji0pt] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.detail-item[b-1njnsji0pt] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.detail-item.full-width[b-1njnsji0pt] {
    grid-column: 1 / -1;
}

.detail-label[b-1njnsji0pt] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.detail-value[b-1njnsji0pt] {
    font-size: 0.9375rem;
    color: #1F2937;
}

.detail-value code[b-1njnsji0pt] {
    font-size: 0.8rem;
    padding: 2px 6px;
    background: #F3F4F6;
    border-radius: 4px;
    color: #6B7280;
}

.notes-text[b-1njnsji0pt] {
    margin: 0;
    white-space: pre-wrap;
    color: #374151;
}

/* Status Badges */
.status-badge[b-1njnsji0pt] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.status-badge i[b-1njnsji0pt] {
    font-size: 0.7rem;
}

.status-active[b-1njnsji0pt] {
    background: rgba(16, 185, 129, 0.1);
    color: #059669;
}

.status-inactive[b-1njnsji0pt] {
    background: rgba(107, 114, 128, 0.1);
    color: #6B7280;
}

/* Role Badges */
.role-badge[b-1njnsji0pt] {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.role-admin[b-1njnsji0pt] {
    background: rgba(139, 92, 246, 0.1);
    color: #7C3AED;
}

.role-banksuperuser[b-1njnsji0pt] {
    background: rgba(59, 130, 246, 0.1);
    color: #2563EB;
}

.role-bankuser[b-1njnsji0pt] {
    background: rgba(20, 184, 166, 0.1);
    color: #0D9488;
}

.role-agent[b-1njnsji0pt] {
    background: rgba(249, 115, 22, 0.1);
    color: #EA580C;
}

.role-underwriter[b-1njnsji0pt] {
    background: rgba(99, 102, 241, 0.1);
    color: #4F46E5;
}

.role-other[b-1njnsji0pt], .role-none[b-1njnsji0pt] {
    background: rgba(107, 114, 128, 0.1);
    color: #6B7280;
}

/* Security Content */
.security-content[b-1njnsji0pt] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.empty-sessions[b-1njnsji0pt],
.empty-activity[b-1njnsji0pt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    text-align: center;
}

.empty-sessions i[b-1njnsji0pt],
.empty-activity i[b-1njnsji0pt] {
    font-size: 2.5rem;
    color: #D1D5DB;
    margin-bottom: 0.5rem;
}

.empty-sessions p[b-1njnsji0pt],
.empty-activity p[b-1njnsji0pt] {
    color: #6B7280;
    margin: 0;
}

.current-session-badge[b-1njnsji0pt] {
    display: inline-flex;
    align-items: center;
    margin-left: 0.5rem;
    padding: 2px 8px;
    background: rgba(16, 185, 129, 0.1);
    border-radius: 10px;
    font-size: 0.7rem;
    font-weight: 600;
    color: #059669;
}

/* Activity Timeline */
.activity-timeline[b-1njnsji0pt] {
    padding: 1rem 1.25rem;
}

.timeline-item[b-1njnsji0pt] {
    display: flex;
    gap: 1rem;
    padding: 1rem 0;
    border-bottom: 1px solid #F1F5F9;
    animation: slideInLeft-b-1njnsji0pt 0.4s ease-out both;
    transition: background 0.2s ease;
}

.timeline-item:nth-child(1)[b-1njnsji0pt] { animation-delay: 0.05s; }
.timeline-item:nth-child(2)[b-1njnsji0pt] { animation-delay: 0.1s; }
.timeline-item:nth-child(3)[b-1njnsji0pt] { animation-delay: 0.15s; }
.timeline-item:nth-child(4)[b-1njnsji0pt] { animation-delay: 0.2s; }
.timeline-item:nth-child(5)[b-1njnsji0pt] { animation-delay: 0.25s; }
.timeline-item:nth-child(n+6)[b-1njnsji0pt] { animation-delay: 0.3s; }

.timeline-item:hover[b-1njnsji0pt] {
    background: rgba(15, 23, 42, 0.02);
}

.timeline-item:last-child[b-1njnsji0pt] {
    border-bottom: none;
}

.timeline-marker[b-1njnsji0pt] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: transform 0.2s ease;
}

.timeline-item:hover .timeline-marker[b-1njnsji0pt] {
    transform: scale(1.1);
}

.timeline-marker.activity-success[b-1njnsji0pt] {
    background: rgba(16, 185, 129, 0.1);
    color: #059669;
}

.timeline-marker.activity-warning[b-1njnsji0pt] {
    background: rgba(245, 158, 11, 0.1);
    color: #D97706;
}

.timeline-marker.activity-error[b-1njnsji0pt] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-600);
}

.timeline-marker.activity-info[b-1njnsji0pt] {
    background: rgba(59, 130, 246, 0.1);
    color: #2563EB;
}

.timeline-content[b-1njnsji0pt] {
    flex: 1;
    min-width: 0;
}

.timeline-header[b-1njnsji0pt] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.25rem;
}

.timeline-time[b-1njnsji0pt] {
    font-size: 0.8rem;
    color: #6B7280;
}

.timeline-description[b-1njnsji0pt] {
    margin: 0;
    font-size: 0.9375rem;
    color: #374151;
}

/* Activity Badges */
.activity-badge[b-1njnsji0pt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 50px;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.05em;
}

.activity-success[b-1njnsji0pt] {
    background: rgba(16, 185, 129, 0.1);
    color: #059669;
}

.activity-warning[b-1njnsji0pt] {
    background: rgba(245, 158, 11, 0.1);
    color: #D97706;
}

.activity-error[b-1njnsji0pt] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-600);
}

.activity-info[b-1njnsji0pt] {
    background: rgba(59, 130, 246, 0.1);
    color: #2563EB;
}

.activity-default[b-1njnsji0pt] {
    background: rgba(107, 114, 128, 0.1);
    color: #6B7280;
}

/* Activity Details */
.activity-details[b-1njnsji0pt] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.5rem;
    margin-top: 0.5rem;
    padding: 0.75rem;
    background: #F8FAFC;
    border-radius: 6px;
    border-left: 3px solid #E2E8F0;
}

.activity-details .detail-item[b-1njnsji0pt] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: #4B5563;
}

.activity-details .detail-item i[b-1njnsji0pt] {
    font-size: 0.875rem;
}

.activity-details .detail-item code[b-1njnsji0pt] {
    font-size: 0.75rem;
    padding: 0.125rem 0.375rem;
    background: #E2E8F0;
    border-radius: 3px;
    color: #334155;
}

.activity-details .detail-item strong[b-1njnsji0pt] {
    font-weight: 600;
    color: #1F2937;
}

/* Timeline Error State */
.timeline-item.timeline-error[b-1njnsji0pt] {
    background: rgba(239, 68, 68, 0.03);
    border-left: 3px solid #EF4444;
    margin-left: -1.25rem;
    padding-left: 1.25rem;
}

.timeline-item.timeline-error .timeline-description[b-1njnsji0pt] {
    color: #991B1B;
}

/* Responsive */
@media (max-width: 992px) {
    .overview-grid[b-1njnsji0pt] {
        grid-template-columns: 1fr;
    }
    
    .header-actions[b-1njnsji0pt] {
        flex-shrink: 0;
    }
}

@media (max-width: 768px) {
    .header-content[b-1njnsji0pt] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .header-left[b-1njnsji0pt] {
        width: 100%;
    }
    
    .header-actions[b-1njnsji0pt] {
        width: 100%;
        justify-content: flex-start;
    }
    
    .user-name-row[b-1njnsji0pt] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .stats-row[b-1njnsji0pt] {
        flex-direction: column;
    }
    
    .stat-card[b-1njnsji0pt] {
        width: 100%;
    }
    
    .detail-grid[b-1njnsji0pt] {
        grid-template-columns: 1fr;
    }
    
    .user-tabs[b-1njnsji0pt] {
        flex-wrap: wrap;
    }
}

/* ========================================
   Modal Styles
   (header/body/footer come from the global modal theme — wwwroot/css/modal-theme.css)
   ======================================== */

/* Footer buttons: ghost cancel, brand-blue confirm (canonical modal design) */
.modal-footer .btn-secondary[b-1njnsji0pt] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-weight: 600;
    padding: 0.55rem 1.15rem;
}

.modal-footer .btn-secondary:hover[b-1njnsji0pt] {
    background: #F1F5F9;
    color: #0F172A;
}

.modal-footer .btn-primary[b-1njnsji0pt] {
    background: var(--brand-600, #004980);
    border: none;
    color: #fff;
    border-radius: 10px;
    font-weight: 600;
    padding: 0.55rem 1.15rem;
}

.modal-footer .btn-primary:hover:not(:disabled)[b-1njnsji0pt] {
    background: var(--brand-700, #003760);
}

/* User Info Banner */
.user-info-banner[b-1njnsji0pt] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: linear-gradient(135deg, rgba(15, 23, 42, 0.08) 0%, rgba(15, 23, 42, 0.04) 100%);
    border-radius: 8px;
    border: 1px solid rgba(15, 23, 42, 0.1);
}

.user-avatar-sm[b-1njnsji0pt] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(15, 23, 42, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
}

.user-avatar-sm img[b-1njnsji0pt] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.user-avatar-sm span[b-1njnsji0pt] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--brand-500);
}

.user-info-text[b-1njnsji0pt] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.user-info-text .user-name[b-1njnsji0pt] {
    font-weight: 600;
    color: #1f2937;
    font-size: 0.9375rem;
}

.user-info-text .user-email[b-1njnsji0pt] {
    font-size: 0.8125rem;
    color: #6b7280;
}

/* Password Input Section */
.password-section[b-1njnsji0pt] {
    margin-bottom: 1rem;
}

.password-input-wrapper .input-group .form-control[b-1njnsji0pt] {
    border-right: none;
}

.password-input-wrapper .input-group .btn[b-1njnsji0pt] {
    border-color: #d1d5db;
}

.password-input-wrapper .input-group .btn:hover[b-1njnsji0pt] {
    background-color: #f9fafb;
}

.password-input-wrapper .input-group .btn-outline-primary:hover[b-1njnsji0pt] {
    background-color: rgba(15, 23, 42, 0.08);
    color: var(--brand-500);
    border-color: var(--brand-500);
}

/* Password Strength Bar */
.password-strength-container[b-1njnsji0pt] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.password-strength-bar[b-1njnsji0pt] {
    flex: 1;
    height: 4px;
    background: #e5e7eb;
    border-radius: 2px;
    overflow: hidden;
}

.password-strength-fill[b-1njnsji0pt] {
    height: 100%;
    border-radius: 2px;
    transition: width 0.3s ease, background-color 0.3s ease;
}

.password-strength-text[b-1njnsji0pt] {
    font-size: 0.75rem;
    font-weight: 600;
    min-width: 70px;
    text-align: right;
}

/* Password Requirements */
.password-requirements[b-1njnsji0pt] {
    background: #f9fafb;
    border-radius: 8px;
    padding: 0.875rem 1rem;
    border: 1px solid #e5e7eb;
}

.requirements-title[b-1njnsji0pt] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: #374151;
    margin-bottom: 0.625rem;
}

.requirements-grid[b-1njnsji0pt] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.5rem;
}

.requirement-item[b-1njnsji0pt] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: #9ca3af;
    transition: color 0.2s ease;
}

.requirement-item i[b-1njnsji0pt] {
    font-size: 0.875rem;
    transition: color 0.2s ease;
}

.requirement-item.met[b-1njnsji0pt] {
    color: #059669;
}

.requirement-item.met i[b-1njnsji0pt] {
    color: #059669;
}

/* Email Option Card */
.email-option-card[b-1njnsji0pt] {
    background: #fefefe;
    border-radius: 8px;
    padding: 0.75rem 1rem;
    border: 1px solid #e5e7eb;
}

.email-option-card .form-check-label[b-1njnsji0pt] {
    font-weight: 500;
    color: #374151;
}

/* Security Notice */
.security-notice[b-1njnsji0pt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 0.875rem;
    background: rgba(245, 158, 11, 0.08);
    border-radius: 6px;
    border: 1px solid rgba(245, 158, 11, 0.2);
    font-size: 0.8125rem;
    color: #92400e;
}

.security-notice i[b-1njnsji0pt] {
    color: #d97706;
    font-size: 1rem;
}

/* Modal Responsive */
@media (max-width: 576px) {
    .requirements-grid[b-1njnsji0pt] {
        grid-template-columns: 1fr;
    }
    
    .password-strength-container[b-1njnsji0pt] {
        flex-direction: column;
        align-items: stretch;
        gap: 0.375rem;
    }
    
    .password-strength-text[b-1njnsji0pt] {
        text-align: left;
    }
}
/* /Components/Pages/BankPortal/UserManagementPage.razor.rz.scp.css */
/* ========================================
   User Management Page Styles
   Based on WorkspacePage patterns
   ======================================== */

/* ========================================
   Animations
   ======================================== */
@keyframes fadeInDown-b-srkbznhlts {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeInUp-b-srkbznhlts {
    from { opacity: 0; transform: translateY(15px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeIn-b-srkbznhlts {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes spin-b-srkbznhlts {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.bi-arrow-clockwise.spinning[b-srkbznhlts] {
    animation: spin-b-srkbznhlts 1s linear infinite;
}

/* ========================================
   Header
   ======================================== */
.content-header[b-srkbznhlts] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    animation: fadeInDown-b-srkbznhlts 0.4s ease-out;
}

.content-title[b-srkbznhlts] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
    line-height: 1.2;
}

.content-subtitle[b-srkbznhlts] {
    font-size: 0.875rem;
    color: #6B7280;
    margin: 4px 0 0 0;
}

.content-subtitle strong[b-srkbznhlts] {
    color: var(--brand-500);
}

/* Header Stats Pills */
.header-stats[b-srkbznhlts] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.stat-pill[b-srkbznhlts] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 8px 14px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

.stat-pill i[b-srkbznhlts] {
    font-size: 1rem;
    color: var(--brand-500);
}

.stat-pill.stat-success i[b-srkbznhlts] {
    color: #10B981;
}

.stat-pill.stat-warning i[b-srkbznhlts] {
    color: #F59E0B;
}

.stat-pill .stat-value[b-srkbznhlts] {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1F2937;
}

.stat-pill .stat-label[b-srkbznhlts] {
    font-size: 0.65rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

/* ========================================
   Card & Tab Panel
   ======================================== */
.card.card-with-tabs[b-srkbznhlts] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
    animation: fadeInUp-b-srkbznhlts 0.4s ease-out;
    position: relative;
}

.dashboard-tab-panel.is-hidden[b-srkbznhlts] {
    position: absolute;
    left: -10000px;
    top: 0;
    width: 1px;
    height: 1px;
    overflow: hidden;
    visibility: hidden;
}

.dashboard-tab-panel.is-active[b-srkbznhlts] {
    position: relative;
    left: auto;
    width: auto;
    height: auto;
    visibility: visible;
    animation: fadeIn-b-srkbznhlts 0.25s ease-out;
}

/* Tab Content */
.tab-content[b-srkbznhlts] {
    padding: 0;
}

.tab-header[b-srkbznhlts] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 1px solid #F1F5F9;
    gap: 16px;
    position: relative;
    z-index: 10;
}

.tab-title[b-srkbznhlts] {
    font-size: 1rem;
    font-weight: 600;
    color: #1F2937;
    margin: 0;
}

.tab-subtitle[b-srkbznhlts] {
    font-size: 0.8rem;
    color: #6B7280;
    margin: 2px 0 0 0;
}

.tab-actions[b-srkbznhlts] {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* ========================================
   Section Titles
   ======================================== */
.section-title[b-srkbznhlts] {
    font-size: 0.9rem;
    font-weight: 600;
    color: #374151;
    display: flex;
    align-items: center;
}

.section-title i[b-srkbznhlts] {
    color: #6B7280;
}

.section-subtitle[b-srkbznhlts] {
    font-size: 0.8rem;
    color: #6B7280;
}

/* ========================================
   Pending Users Card Grid
   ======================================== */
.pending-user-card[b-srkbznhlts] {
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    padding: 24px;
    text-align: center;
    transition: all 0.2s ease;
    position: relative;
    height: 100%;
}

.pending-user-card:hover[b-srkbznhlts] {
    border-color: var(--brand-500);
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
}

/* Tenant Request Card variant */
.pending-user-card.tenant-request-card[b-srkbznhlts] {
    border-color: #BFDBFE;
    background: linear-gradient(to bottom, #F0F9FF 0%, white 100%);
}

.pending-user-card.tenant-request-card:hover[b-srkbznhlts] {
    border-color: #3B82F6;
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.15);
}

.card-header-section[b-srkbznhlts] {
    position: relative;
    display: flex;
    justify-content: center;
    margin-bottom: 16px;
}

.user-avatar-lg[b-srkbznhlts] {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    font-weight: 600;
    color: white;
}

/* Avatar color variants for large avatars */
.user-avatar-lg.avatar-blue[b-srkbznhlts] {
    background: linear-gradient(135deg, #3B82F6, #1D4ED8);
}

.user-avatar-lg.avatar-green[b-srkbznhlts] {
    background: linear-gradient(135deg, #10B981, #047857);
}

.user-avatar-lg.avatar-orange[b-srkbznhlts] {
    background: linear-gradient(135deg, #F59E0B, #D97706);
}

.user-avatar-lg.avatar-purple[b-srkbznhlts] {
    background: linear-gradient(135deg, #8B5CF6, #6D28D9);
}

.user-avatar-lg.avatar-teal[b-srkbznhlts] {
    background: linear-gradient(135deg, #14B8A6, #0D9488);
}

.user-avatar-lg.avatar-default[b-srkbznhlts] {
    background: linear-gradient(135deg, #6B7280, #4B5563);
}

.status-indicator[b-srkbznhlts] {
    position: absolute;
    bottom: 0;
    right: calc(50% - 40px);
    width: 14px;
    height: 14px;
    border-radius: 50%;
    border: 2px solid white;
}

.status-indicator.status-verified[b-srkbznhlts] {
    background: #10B981;
}

.status-indicator.status-pending[b-srkbznhlts] {
    background: #F59E0B;
}

.status-indicator.status-info[b-srkbznhlts] {
    background: #3B82F6;
}

.card-body-section[b-srkbznhlts] {
    margin-bottom: 20px;
}

.user-card-name[b-srkbznhlts] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1F2937;
    margin: 0 0 4px 0;
}

.user-card-title[b-srkbznhlts] {
    font-size: 0.85rem;
    color: #6B7280;
    margin: 0 0 8px 0;
}

.user-card-email[b-srkbznhlts] {
    font-size: 0.8rem;
    color: #9CA3AF;
    margin: 0;
}

.card-stats-section[b-srkbznhlts] {
    border-top: 1px solid #F1F5F9;
    border-bottom: 1px solid #F1F5F9;
    padding: 16px 0;
    margin-bottom: 16px;
}

.stat-item[b-srkbznhlts] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 0 8px;
    border-right: 1px solid #F1F5F9;
}

.stat-item.border-end-0[b-srkbznhlts] {
    border-right: none;
}

.stat-value-sm[b-srkbznhlts] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #374151;
}

.stat-label-sm[b-srkbznhlts] {
    font-size: 0.65rem;
    color: #9CA3AF;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.badge-sm[b-srkbznhlts] {
    padding: 3px 8px;
    border-radius: 12px;
    font-size: 0.7rem;
    font-weight: 600;
}

.badge-verified[b-srkbznhlts] {
    background: #D1FAE5;
    color: #047857;
}

.badge-pending[b-srkbznhlts] {
    background: #FEF3C7;
    color: #D97706;
}

.badge-info[b-srkbznhlts] {
    background: #DBEAFE;
    color: #1D4ED8;
}

.request-reason[b-srkbznhlts] {
    padding: 10px 12px;
    background: #F9FAFB;
    border-radius: 8px;
    margin-bottom: 16px;
    text-align: left;
}

.request-reason small[b-srkbznhlts] {
    font-size: 0.8rem;
    line-height: 1.4;
    display: block;
}

.card-actions-section[b-srkbznhlts] {
    margin-top: auto;
}

.btn-card-approve[b-srkbznhlts] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 16px;
    font-size: 0.85rem;
    font-weight: 500;
    background: #D1FAE5;
    border: 1px solid #A7F3D0;
    border-radius: 8px;
    color: #047857;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-card-approve:hover[b-srkbznhlts] {
    background: #10B981;
    border-color: #10B981;
    color: white;
}

.btn-card-reject[b-srkbznhlts] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 16px;
    font-size: 0.85rem;
    font-weight: 500;
    background: #FEE2E2;
    border: 1px solid #FECACA;
    border-radius: 8px;
    color: var(--error-600);
    cursor: pointer;
    transition: all 0.15s;
}

.btn-card-reject:hover[b-srkbznhlts] {
    background: #EF4444;
    border-color: #EF4444;
    color: white;
}

/* Empty State Container */
.empty-state-container[b-srkbznhlts] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    text-align: center;
}

.empty-state-container i[b-srkbznhlts] {
    font-size: 48px;
    color: #D1D5DB;
    margin-bottom: 16px;
}

.empty-state-container h3[b-srkbznhlts] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #6B7280;
    margin: 0 0 8px 0;
}

.empty-state-container p[b-srkbznhlts] {
    font-size: 0.9rem;
    color: #9CA3AF;
    margin: 0;
}

/* ========================================
   Table Styles
   ======================================== */
.table-responsive[b-srkbznhlts] {
    overflow-x: auto;
    overflow-y: visible;
    margin: 0;
    max-width: 100%;
}

.dashboard-table[b-srkbznhlts] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.875rem;
}

.dashboard-table thead[b-srkbznhlts] {
    background-color: #F8FAFC;
    position: sticky;
    top: 0;
    z-index: 1;
}

.dashboard-table thead th[b-srkbznhlts] {
    padding: 10px 16px;
    text-align: left;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748B;
    border-bottom: 1px solid #E2E8F0;
    white-space: nowrap;
    user-select: none;
}

.dashboard-table thead th:hover[b-srkbznhlts] {
    color: var(--brand-500);
    background-color: #F1F5F9;
}

.dashboard-table tbody tr[b-srkbznhlts] {
    transition: all 0.12s ease;
    border-left: 3px solid transparent;
    background: white;
    animation: fadeIn-b-srkbznhlts 0.3s ease-out forwards;
    opacity: 0;
}

/* Staggered row animations */
.dashboard-table tbody tr:nth-child(1)[b-srkbznhlts] { animation-delay: 50ms; }
.dashboard-table tbody tr:nth-child(2)[b-srkbznhlts] { animation-delay: 80ms; }
.dashboard-table tbody tr:nth-child(3)[b-srkbznhlts] { animation-delay: 110ms; }
.dashboard-table tbody tr:nth-child(4)[b-srkbznhlts] { animation-delay: 140ms; }
.dashboard-table tbody tr:nth-child(5)[b-srkbznhlts] { animation-delay: 170ms; }
.dashboard-table tbody tr:nth-child(6)[b-srkbznhlts] { animation-delay: 200ms; }
.dashboard-table tbody tr:nth-child(7)[b-srkbznhlts] { animation-delay: 230ms; }
.dashboard-table tbody tr:nth-child(8)[b-srkbznhlts] { animation-delay: 260ms; }
.dashboard-table tbody tr:nth-child(9)[b-srkbznhlts] { animation-delay: 290ms; }
.dashboard-table tbody tr:nth-child(10)[b-srkbznhlts] { animation-delay: 320ms; }
.dashboard-table tbody tr:nth-child(n+11)[b-srkbznhlts] { animation-delay: 350ms; }

.dashboard-table tbody tr:nth-child(even)[b-srkbznhlts] {
    background-color: #FAFBFC;
}

.dashboard-table tbody tr:hover[b-srkbznhlts] {
    background-color: #EFF6FF;
    border-left: 3px solid var(--brand-500);
}

.dashboard-table tbody td[b-srkbznhlts] {
    padding: 10px 16px;
    border-bottom: 1px solid #F1F5F9;
    vertical-align: middle;
    color: #374151;
}

/* Empty State */
.empty-state[b-srkbznhlts] {
    text-align: center;
    padding: 48px 32px !important;
    color: #6B7280;
}

.empty-state i[b-srkbznhlts] {
    font-size: 40px;
    display: block;
    margin-bottom: 12px;
    color: #D1D5DB;
}

.empty-state span[b-srkbznhlts] {
    font-size: 0.9rem;
    color: #9CA3AF;
}

/* ========================================
   Date Cell
   ======================================== */
.date-cell[b-srkbznhlts] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.date-relative[b-srkbznhlts] {
    font-size: 0.875rem;
    color: #374151;
    font-weight: 500;
}

.date-actual[b-srkbznhlts] {
    font-size: 0.75rem;
    color: #9CA3AF;
}

/* ========================================
   User Cell
   ======================================== */
.user-cell[b-srkbznhlts] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.user-avatar[b-srkbznhlts] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.user-avatar span[b-srkbznhlts] {
    font-size: 0.8rem;
    font-weight: 600;
    color: white;
}

/* Avatar color variants */
.user-avatar.avatar-blue[b-srkbznhlts] {
    background: linear-gradient(135deg, #3B82F6, #1D4ED8);
}

.user-avatar.avatar-green[b-srkbznhlts] {
    background: linear-gradient(135deg, #10B981, #047857);
}

.user-avatar.avatar-orange[b-srkbznhlts] {
    background: linear-gradient(135deg, #F59E0B, #D97706);
}

.user-avatar.avatar-purple[b-srkbznhlts] {
    background: linear-gradient(135deg, #8B5CF6, #6D28D9);
}

.user-avatar.avatar-teal[b-srkbznhlts] {
    background: linear-gradient(135deg, #14B8A6, #0D9488);
}

.user-avatar.avatar-default[b-srkbznhlts] {
    background: linear-gradient(135deg, #6B7280, #4B5563);
}

.user-info[b-srkbznhlts] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.user-name[b-srkbznhlts] {
    font-weight: 600;
    color: #1F2937;
    font-size: 0.875rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.user-title[b-srkbznhlts] {
    font-size: 0.75rem;
    color: #6B7280;
}

/* ========================================
   Status Badges
   ======================================== */
.dashboard-table .badge[b-srkbznhlts] {
    padding: 5px 10px;
    font-size: 0.75rem;
    font-weight: 600;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.dashboard-table .badge i[b-srkbznhlts] {
    font-size: 10px;
}

.badge.bg-danger[b-srkbznhlts] {
    background-color: #FEE2E2 !important;
    color: var(--error-600) !important;
}

.badge.bg-warning[b-srkbznhlts] {
    background-color: #FEF3C7 !important;
    color: #D97706 !important;
}

.badge.bg-secondary[b-srkbznhlts] {
    background-color: #F3F4F6 !important;
    color: #4B5563 !important;
}

.badge.bg-info[b-srkbznhlts] {
    background-color: #E0F2FE !important;
    color: #0369A1 !important;
}

.badge.bg-success[b-srkbznhlts] {
    background-color: #D1FAE5 !important;
    color: #047857 !important;
}

.badge.bg-primary[b-srkbznhlts] {
    background-color: #DBEAFE !important;
    color: #1D4ED8 !important;
}

/* Role Badges */
.badge.role-admin[b-srkbznhlts] {
    background-color: #EDE9FE !important;
    color: #6D28D9 !important;
}

.badge.role-banksuperuser[b-srkbznhlts] {
    background-color: #DBEAFE !important;
    color: #1D4ED8 !important;
}

.badge.role-bankuser[b-srkbznhlts] {
    background-color: #CCFBF1 !important;
    color: #0D9488 !important;
}

.badge.role-agent[b-srkbznhlts] {
    background-color: #FFEDD5 !important;
    color: #EA580C !important;
}

.badge.role-underwriter[b-srkbznhlts] {
    background-color: #E0E7FF !important;
    color: #4338CA !important;
}

.badge.role-none[b-srkbznhlts],
.badge.role-other[b-srkbznhlts] {
    background-color: #F3F4F6 !important;
    color: #6B7280 !important;
}

/* Activity Badges */
.badge.activity-success[b-srkbznhlts] {
    background-color: #D1FAE5 !important;
    color: #047857 !important;
}

.badge.activity-warning[b-srkbznhlts] {
    background-color: #FEF3C7 !important;
    color: #D97706 !important;
}

.badge.activity-error[b-srkbznhlts] {
    background-color: #FEE2E2 !important;
    color: var(--error-600) !important;
}

.badge.activity-info[b-srkbznhlts] {
    background-color: #DBEAFE !important;
    color: #1D4ED8 !important;
}

.badge.activity-default[b-srkbznhlts] {
    background-color: #F3F4F6 !important;
    color: #6B7280 !important;
}

/* ========================================
   Action Buttons
   ======================================== */
.actions-cell[b-srkbznhlts] {
    text-align: right;
}

.btn-header-action[b-srkbznhlts] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    font-size: 16px;
    color: #475569;
    background: #ffffff;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-header-action:hover:not(:disabled)[b-srkbznhlts] {
    color: var(--brand-600);
    background: #E6F2F8;
    border-color: #99CBE3;
}

.btn-header-action:disabled[b-srkbznhlts] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-action-primary[b-srkbznhlts] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    font-size: 0.8rem;
    font-weight: 500;
    color: white;
    background-color: var(--accent-color);
    border: 1px solid var(--accent-color);
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-action-primary:hover[b-srkbznhlts] {
    filter: brightness(0.85);
}

.btn-action-primary i[b-srkbznhlts] {
    font-size: 0.85rem;
}

.btn-action-subtle[b-srkbznhlts] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--brand-500);
    background-color: white;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-action-subtle:hover[b-srkbznhlts] {
    background-color: #EFF6FF;
    color: #004880;
    border-color: #BFDBFE;
}

.btn-action-subtle i[b-srkbznhlts] {
    font-size: 0.85rem;
}

/* Approve/Reject Buttons (icon only) */
.btn-approve[b-srkbznhlts] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    background: #D1FAE5;
    border: 1px solid #A7F3D0;
    border-radius: 6px;
    color: #047857;
    cursor: pointer;
    transition: all 0.15s;
    margin-right: 6px;
}

.btn-approve:hover[b-srkbznhlts] {
    background: #10B981;
    border-color: #10B981;
    color: white;
}

.btn-reject[b-srkbznhlts] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    background: #FEE2E2;
    border: 1px solid #FECACA;
    border-radius: 6px;
    color: var(--error-600);
    cursor: pointer;
    transition: all 0.15s;
}

.btn-reject:hover[b-srkbznhlts] {
    background: #EF4444;
    border-color: #EF4444;
    color: white;
}

/* Approve/Reject Buttons with labels */
.btn-approve-label[b-srkbznhlts] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    background: #D1FAE5;
    border: 1px solid #A7F3D0;
    border-radius: 6px;
    color: #047857;
    cursor: pointer;
    transition: all 0.15s;
    margin-right: 8px;
}

.btn-approve-label:hover[b-srkbznhlts] {
    background: #10B981;
    border-color: #10B981;
    color: white;
}

.btn-approve-label i[b-srkbznhlts] {
    font-size: 0.9rem;
}

.btn-reject-label[b-srkbznhlts] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    background: #FEE2E2;
    border: 1px solid #FECACA;
    border-radius: 6px;
    color: var(--error-600);
    cursor: pointer;
    transition: all 0.15s;
}

.btn-reject-label:hover[b-srkbznhlts] {
    background: #EF4444;
    border-color: #EF4444;
    color: white;
}

.btn-reject-label i[b-srkbznhlts] {
    font-size: 0.9rem;
}

/* Filter Button */
.btn-filter[b-srkbznhlts] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    font-size: 0.8rem;
    font-weight: 500;
    color: #374151;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-filter:hover[b-srkbznhlts] {
    background: #F9FAFB;
    border-color: #D1D5DB;
}

.btn-filter i[b-srkbznhlts] {
    font-size: 0.85rem;
    color: #6B7280;
}

/* ========================================
   Modal Styles
   (visual styling comes from the global modal theme — wwwroot/css/modal-theme.css)
   ======================================== */
.modal-backdrop[b-srkbznhlts] {
    z-index: 1040;
}

.modal[b-srkbznhlts] {
    z-index: 1050;
}

.user-preview[b-srkbznhlts] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    background: #F9FAFB;
    border-radius: 8px;
}

.user-preview .user-avatar[b-srkbznhlts] {
    width: 44px;
    height: 44px;
}

.user-preview .user-avatar span[b-srkbznhlts] {
    font-size: 0.9rem;
}

/* ========================================
   Tab Badge Styles
   ======================================== */
[b-srkbznhlts] .tab-badge-warning {
    background: #FEF3C7 !important;
    color: #D97706 !important;
}

/* ========================================
   Enhanced Modal Styles
   ======================================== */
.modal-dialog[b-srkbznhlts] {
    max-width: 480px;
}

/* Approval User Card */
.approval-user-card[b-srkbznhlts] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px;
    background: linear-gradient(135deg, #F0FDF4 0%, #DCFCE7 100%);
    border: 1px solid #BBF7D0;
    border-radius: 12px;
    margin-bottom: 16px;
}

.approval-user-card.rejection-card[b-srkbznhlts] {
    background: linear-gradient(135deg, #FEF2F2 0%, #FEE2E2 100%);
    border-color: #FECACA;
}

.approval-user-card.tenant-access-card[b-srkbznhlts] {
    background: linear-gradient(135deg, #EFF6FF 0%, #DBEAFE 100%);
    border-color: #93C5FD;
}

.request-reason-box[b-srkbznhlts] {
    font-style: italic;
    color: #4B5563;
    background: #F8FAFC;
}

.approval-avatar[b-srkbznhlts] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    font-weight: 600;
    color: white;
    flex-shrink: 0;
}

/* Avatar color variants for approval modal */
.approval-avatar.avatar-blue[b-srkbznhlts] {
    background: linear-gradient(135deg, #3B82F6, #1D4ED8);
}

.approval-avatar.avatar-green[b-srkbznhlts] {
    background: linear-gradient(135deg, #10B981, #047857);
}

.approval-avatar.avatar-orange[b-srkbznhlts] {
    background: linear-gradient(135deg, #F59E0B, #D97706);
}

.approval-avatar.avatar-purple[b-srkbznhlts] {
    background: linear-gradient(135deg, #8B5CF6, #6D28D9);
}

.approval-avatar.avatar-teal[b-srkbznhlts] {
    background: linear-gradient(135deg, #14B8A6, #0D9488);
}

.approval-avatar.avatar-default[b-srkbznhlts] {
    background: linear-gradient(135deg, #6B7280, #4B5563);
}

.approval-user-info[b-srkbznhlts] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.approval-user-name[b-srkbznhlts] {
    font-size: 1rem;
    font-weight: 600;
    color: #1F2937;
    margin: 0;
}

.approval-user-email[b-srkbznhlts] {
    font-size: 0.85rem;
    color: #6B7280;
}

.approval-user-title[b-srkbznhlts] {
    font-size: 0.8rem;
    color: #9CA3AF;
}

/* Approval Sections */
.approval-section[b-srkbznhlts] {
    margin-bottom: 16px;
}

.approval-label[b-srkbznhlts] {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin-bottom: 6px;
}

.approval-value[b-srkbznhlts] {
    font-size: 0.95rem;
    font-weight: 500;
    color: #1F2937;
    padding: 10px 14px;
    background: #F9FAFB;
    border-radius: 8px;
    border: 1px solid #E5E7EB;
}

/* Role Selector */
.role-selector[b-srkbznhlts] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}

.role-option[b-srkbznhlts] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px;
    background: white;
    border: 2px solid #E5E7EB;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.role-option:hover[b-srkbznhlts] {
    border-color: var(--brand-500);
    background: #F8FAFC;
}

.role-option.selected[b-srkbznhlts] {
    border-color: #10B981;
    background: linear-gradient(135deg, #F0FDF4 0%, #ECFDF5 100%);
}

.role-icon[b-srkbznhlts] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #F1F5F9;
    color: #6B7280;
    font-size: 1rem;
    flex-shrink: 0;
}

.role-option.selected .role-icon[b-srkbznhlts] {
    background: #D1FAE5;
    color: #059669;
}

.role-details[b-srkbznhlts] {
    display: flex;
    flex-direction: column;
    gap: 1px;
    flex: 1;
    min-width: 0;
}

.role-name[b-srkbznhlts] {
    font-size: 0.875rem;
    font-weight: 600;
    color: #1F2937;
}

.role-description[b-srkbznhlts] {
    font-size: 0.7rem;
    color: #9CA3AF;
}

.role-check[b-srkbznhlts] {
    width: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}

/* Custom Textarea */
.custom-textarea[b-srkbznhlts] {
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 0.95rem;
    transition: all 0.2s ease;
    resize: vertical;
}

.custom-textarea:focus[b-srkbznhlts] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
    outline: none;
}

/* Modal Buttons (canonical: ghost cancel, solid semantic confirm) */
.btn-modal-cancel[b-srkbznhlts] {
    padding: 0.55rem 1.15rem;
    font-size: 0.9rem;
    font-weight: 600;
    background: transparent;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    color: #64748B;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-modal-cancel:hover[b-srkbznhlts] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-modal-approve[b-srkbznhlts] {
    padding: 0.55rem 1.15rem;
    font-size: 0.9rem;
    font-weight: 600;
    background: var(--success-600, #059669);
    border: none;
    border-radius: 10px;
    color: white;
    cursor: pointer;
    transition: all 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.btn-modal-approve:hover:not(:disabled)[b-srkbznhlts] {
    background: var(--success-700, #047857);
}

.btn-modal-approve:disabled[b-srkbznhlts] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-modal-reject[b-srkbznhlts] {
    padding: 0.55rem 1.15rem;
    font-size: 0.9rem;
    font-weight: 600;
    background: var(--error-600, #DC2626);
    border: none;
    border-radius: 10px;
    color: white;
    cursor: pointer;
    transition: all 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.btn-modal-reject:hover:not(:disabled)[b-srkbznhlts] {
    background: var(--error-700, #B91C1C);
}

.btn-modal-reject:disabled[b-srkbznhlts] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* ========================================
   Responsive
   ======================================== */
@media (max-width: 768px) {
    .content-header[b-srkbznhlts] {
        flex-direction: column;
        gap: 16px;
        align-items: flex-start;
    }
    
    .header-stats[b-srkbznhlts] {
        width: 100%;
        justify-content: flex-start;
        overflow-x: auto;
        padding-bottom: 4px;
    }
    
    .tab-header[b-srkbznhlts] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .tab-actions[b-srkbznhlts] {
        width: 100%;
        flex-wrap: wrap;
    }
}

/* ========================================
   Filter Dropdowns - Themed Styles
   ======================================== */
.filter-dropdown[b-srkbznhlts] {
    position: relative;
}

.filter-dropdown .btn-filter[b-srkbznhlts] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 8px 14px;
    font-size: 0.8rem;
    color: #374151;
    font-weight: 500;
    transition: all 0.2s;
    white-space: nowrap;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.filter-dropdown .btn-filter:hover[b-srkbznhlts] {
    background: #F9FAFB;
    border-color: #D1D5DB;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
}

.filter-dropdown .btn-filter:focus[b-srkbznhlts] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.1);
}

.filter-dropdown .btn-filter i:first-child[b-srkbznhlts] {
    color: #6B7280;
    font-size: 0.85rem;
}

.filter-dropdown .dropdown-menu[b-srkbznhlts] {
    min-width: 220px;
    max-width: 280px;
    padding: 8px 0;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 
                0 10px 15px -3px rgba(0, 0, 0, 0.08),
                0 20px 25px -5px rgba(0, 0, 0, 0.05);
    background: white;
    margin-top: 4px;
    z-index: 1050;
    overflow: hidden;
}

.filter-dropdown .dropdown-header[b-srkbznhlts] {
    font-size: 0.7rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 8px 16px 6px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.filter-dropdown .dropdown-item[b-srkbznhlts] {
    display: flex;
    align-items: center;
    padding: 10px 16px;
    font-size: 0.8rem;
    color: #374151;
    border: none;
    background: none;
    width: 100%;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.filter-dropdown .dropdown-item:hover[b-srkbznhlts] {
    background: rgba(15, 23, 42, 0.05);
}

.filter-dropdown .dropdown-item.active[b-srkbznhlts] {
    background: rgba(15, 23, 42, 0.08);
    color: var(--brand-500);
    font-weight: 600;
}

.filter-dropdown .dropdown-item i[b-srkbznhlts] {
    font-size: 0.85rem;
}

.filter-dropdown .dropdown-divider[b-srkbznhlts] {
    margin: 6px 12px;
    border-color: #F3F4F6;
    opacity: 1;
}
/* /Components/Pages/BankPortal/WorkspacePage.razor.rz.scp.css */
/* ========================================
   Page Animations
   ======================================== */
@keyframes fadeInDown-b-ldh198rlgp {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInUp-b-ldh198rlgp {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn-b-ldh198rlgp {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes slideInRight-b-ldh198rlgp {
    from {
        opacity: 0;
        transform: translateX(20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* ========================================
   Header & Content Animations
   ======================================== */
.content-header[b-ldh198rlgp] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--space-lg);
    animation: fadeInDown-b-ldh198rlgp 0.4s ease-out;
}

@media (max-width: 768px) {
    .content-header[b-ldh198rlgp] {
        flex-direction: column;
        gap: 16px;
    }
}

.content-header .topbar-cta-btn[b-ldh198rlgp] {
    color: var(--text-inverse);
}

.content-header .topbar-cta-btn:hover[b-ldh198rlgp] {
    /* was a hardcoded navy background — overrode the accent color entirely and never reflected
       an Agency's theme; filter-darken instead, matching the global .topbar-cta-btn:hover rule */
    filter: brightness(0.9);
    color: var(--text-inverse);
}

.content-header .topbar-cta-btn .icon[b-ldh198rlgp] {
    color: var(--text-inverse);
}

/* Refresh button spinning animation */
@keyframes spin-b-ldh198rlgp {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.bi-arrow-clockwise.spinning[b-ldh198rlgp] {
    animation: spin-b-ldh198rlgp 1s linear infinite;
}

.card-grid[b-ldh198rlgp] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 14px;
    margin-bottom: var(--space-md);
}

.card-grid .card[b-ldh198rlgp] {
    padding: 16px;
    border-radius: 16px;
    border: 1px solid var(--brand-100);
    box-shadow: 0 5px 12px rgba(15, 23, 42, 0.08);
    min-height: 120px;
    animation: fadeInUp-b-ldh198rlgp 0.4s ease-out forwards;
    opacity: 0;
}

/* Staggered card animations */
.card-grid .card:nth-child(1)[b-ldh198rlgp] { animation-delay: 50ms; }
.card-grid .card:nth-child(2)[b-ldh198rlgp] { animation-delay: 100ms; }
.card-grid .card:nth-child(3)[b-ldh198rlgp] { animation-delay: 150ms; }
.card-grid .card:nth-child(4)[b-ldh198rlgp] { animation-delay: 200ms; }
.card-grid .card:nth-child(5)[b-ldh198rlgp] { animation-delay: 250ms; }
.card-grid .card:nth-child(6)[b-ldh198rlgp] { animation-delay: 300ms; }

.clickable-card[b-ldh198rlgp] {
    cursor: pointer;
}

.card-stat-header[b-ldh198rlgp] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 12px;
    gap: 12px;
}

.card-stat-body[b-ldh198rlgp] {
    flex: 1;
}

.card-stat-label[b-ldh198rlgp] {
    font-size: 12px;
    color: var(--text-secondary);
    margin-bottom: 4px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.card-stat-value[b-ldh198rlgp] {
    font-size: 30px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 2px;
    line-height: 1;
}

.card-stat-context[b-ldh198rlgp] {
    font-size: 12px;
    color: var(--text-muted);
    display: flex;
    align-items: center;
    gap: 6px;
}

.card-stat-context i[b-ldh198rlgp] {
    font-size: 11px;
}

.card-grid .card-icon[b-ldh198rlgp] {
    border-radius: 14px;
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.card-grid .card-icon i[b-ldh198rlgp] {
    font-size: 20px;
}

.card-icon.card-icon-neutral[b-ldh198rlgp] {
    background: linear-gradient(135deg, var(--neutral-100), var(--neutral-50));
    color: var(--neutral-600);
}

.card-icon.card-icon-accent[b-ldh198rlgp] {
    background: linear-gradient(135deg, var(--accent-100), var(--accent-50));
    color: var(--accent-700);
}

.card-icon.card-icon-error[b-ldh198rlgp] {
    background: linear-gradient(135deg, var(--error-100), var(--error-50));
    color: var(--error-700);
}

.card-icon.card-icon-success[b-ldh198rlgp] {
    background: linear-gradient(135deg, var(--success-100), var(--success-50));
    color: var(--success-700);
}


/* ========================================
   Table Styles (Matching InboxPage)
   ======================================== */
.table-responsive[b-ldh198rlgp] {
    overflow-x: auto;
    margin: 0;
}

.dashboard-table[b-ldh198rlgp] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.875rem;
}

.dashboard-table thead[b-ldh198rlgp] {
    background-color: #F8FAFC;
    position: sticky;
    top: 0;
    z-index: 1;
}

.dashboard-table thead th[b-ldh198rlgp] {
    padding: 10px 12px;
    text-align: left;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748B;
    border-bottom: 1px solid #E2E8F0;
    white-space: nowrap;
    user-select: none;
}

.dashboard-table thead th:hover[b-ldh198rlgp] {
    color: var(--brand-500);
    background-color: #F1F5F9;
}

.dashboard-table tbody tr[b-ldh198rlgp] {
    transition: all 0.12s ease;
    border-left: 3px solid transparent;
    background: white;
    animation: fadeIn-b-ldh198rlgp 0.3s ease-out forwards;
    opacity: 0;
}

/* Staggered row animations */
.dashboard-table tbody tr:nth-child(1)[b-ldh198rlgp] { animation-delay: 50ms; }
.dashboard-table tbody tr:nth-child(2)[b-ldh198rlgp] { animation-delay: 80ms; }
.dashboard-table tbody tr:nth-child(3)[b-ldh198rlgp] { animation-delay: 110ms; }
.dashboard-table tbody tr:nth-child(4)[b-ldh198rlgp] { animation-delay: 140ms; }
.dashboard-table tbody tr:nth-child(5)[b-ldh198rlgp] { animation-delay: 170ms; }
.dashboard-table tbody tr:nth-child(6)[b-ldh198rlgp] { animation-delay: 200ms; }
.dashboard-table tbody tr:nth-child(7)[b-ldh198rlgp] { animation-delay: 230ms; }
.dashboard-table tbody tr:nth-child(8)[b-ldh198rlgp] { animation-delay: 260ms; }
.dashboard-table tbody tr:nth-child(9)[b-ldh198rlgp] { animation-delay: 290ms; }
.dashboard-table tbody tr:nth-child(10)[b-ldh198rlgp] { animation-delay: 320ms; }
.dashboard-table tbody tr:nth-child(n+11)[b-ldh198rlgp] { animation-delay: 350ms; }

.dashboard-table tbody tr:nth-child(even)[b-ldh198rlgp] {
    background-color: #FAFBFC;
}

.dashboard-table tbody tr:hover[b-ldh198rlgp] {
    background-color: #EFF6FF;
    border-left: 3px solid var(--brand-500);
}

.dashboard-table tbody td[b-ldh198rlgp] {
    padding: 5px 8px;
    border-bottom: 1px solid #F1F5F9;
    vertical-align: middle;
    color: #374151;
}

/* Empty State */
.empty-state[b-ldh198rlgp] {
    text-align: center;
    padding: 48px 32px !important;
    color: #6B7280;
}

.empty-state i[b-ldh198rlgp] {
    font-size: 40px;
    display: block;
    margin-bottom: 12px;
    color: #D1D5DB;
}

.empty-state span[b-ldh198rlgp] {
    font-size: 0.9rem;
    color: #9CA3AF;
}

/* ========================================
   Loan Number & Amount
   ======================================== */
.loan-number[b-ldh198rlgp] {
    color: var(--brand-500);
    font-weight: 600;
    text-decoration: none;
    transition: all 0.15s;
    font-size: 0.875rem;
}

.loan-number:hover[b-ldh198rlgp] {
    color: #004880;
    text-decoration: underline;
}

.amount-cell[b-ldh198rlgp] {
    font-weight: 600;
    color: #1F2937;
    font-size: 0.875rem;
    font-variant-numeric: tabular-nums;
}

/* ========================================
   Status Badges
   ======================================== */
.dashboard-table .badge[b-ldh198rlgp] {
    padding: 5px 10px;
    font-size: 0.8rem;
    font-weight: 600;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.dashboard-table .badge i[b-ldh198rlgp] {
    font-size: 12px;
}

.badge.bg-danger[b-ldh198rlgp] {
    background-color: #FEE2E2 !important;
    color: var(--error-600) !important;
}

.badge.bg-warning[b-ldh198rlgp] {
    background-color: #FEF3C7 !important;
    color: #D97706 !important;
}

.badge.bg-secondary[b-ldh198rlgp] {
    background-color: #F3F4F6 !important;
    color: #4B5563 !important;
}

.badge.bg-info[b-ldh198rlgp] {
    background-color: #E0F2FE !important;
    color: #0369A1 !important;
}

.badge.bg-success[b-ldh198rlgp] {
    background-color: #D1FAE5 !important;
    color: #047857 !important;
}

.badge.bg-primary[b-ldh198rlgp] {
    background-color: #DBEAFE !important;
    color: #1D4ED8 !important;
}

/* ========================================
   Action Buttons
   ======================================== */
.btn-action[b-ldh198rlgp] {
    color: var(--brand-500);
    background-color: transparent;
    border: 1px solid #E5E7EB;
    padding: 6px 14px;
    font-size: 0.8rem;
    font-weight: 500;
    border-radius: 6px;
    transition: all 0.15s;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.btn-action:hover[b-ldh198rlgp] {
    background-color: var(--accent-color);
    color: white;
    border-color: var(--accent-color);
}

.btn-action i[b-ldh198rlgp] {
    font-size: 0.85rem;
}

/* Subtle Action Button (outlined style - visible but not prominent) */
.btn-action-subtle[b-ldh198rlgp] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--brand-500);
    background-color: white;
    border: 1px solid #E5E7EB;
    border-radius: 5px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-action-subtle:hover[b-ldh198rlgp] {
    background-color: #EFF6FF;
    color: #004880;
    border-color: #BFDBFE;
}

.btn-action-subtle i[b-ldh198rlgp] {
    font-size: 0.8rem;
    color: var(--brand-500);
}

.btn-action-subtle:hover i[b-ldh198rlgp] {
    color: #004880;
}

/* Actions column right align */
.actions-cell[b-ldh198rlgp] {
    text-align: right;
}

/* Policy Number */
.policy-number[b-ldh198rlgp] {
    color: var(--brand-500);
    font-weight: 600;
    text-decoration: none;
    transition: all 0.15s;
    font-size: 0.875rem;
}

.policy-number:hover[b-ldh198rlgp] {
    color: #004880;
    text-decoration: underline;
}

/* Tab panels: keep mounted; hide inactive without display:none to avoid reflow flicker */
.dashboard-tab-panel.is-hidden[b-ldh198rlgp] {
    position: absolute;
    left: -10000px;
    top: 0;
    width: 1px;
    height: 1px;
    overflow: hidden;
    visibility: hidden;
}

.dashboard-tab-panel.is-active[b-ldh198rlgp] {
    position: relative;
    left: auto;
    width: auto;
    height: auto;
    overflow: visible;
    visibility: visible;
    animation: fadeIn-b-ldh198rlgp 0.25s ease-out;
}

/* Bulk Actions Styling */
.bulk-actions-container[b-ldh198rlgp] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 12px;
    background: var(--brand-50);
    border: 1px solid var(--brand-200);
    border-radius: 8px;
}

.selected-count-badge[b-ldh198rlgp] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 500;
    color: var(--brand-700);
}

.selected-count-badge i[b-ldh198rlgp] {
    font-size: 14px;
    color: var(--brand-600);
}

.btn-delete-bulk[b-ldh198rlgp] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    font-size: 13px;
    font-weight: 500;
    color: var(--error-600);
    background: var(--error-50);
    border: 1px solid var(--error-200);
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-delete-bulk:hover:not(:disabled)[b-ldh198rlgp] {
    background: var(--error-100);
    border-color: var(--error-300);
    color: var(--error-700);
}

.btn-delete-bulk:disabled[b-ldh198rlgp] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-delete-bulk i[b-ldh198rlgp] {
    font-size: 14px;
}

/* Header Action Buttons (icon-only buttons like select, refresh) */
.btn-header-action[b-ldh198rlgp] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    font-size: 16px;
    color: var(--text-secondary, #475569);
    background: #ffffff;
    border: 1px solid var(--border-medium);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-header-action:hover:not(:disabled)[b-ldh198rlgp] {
    color: var(--brand-600);
    background: var(--brand-50);
    border-color: var(--brand-200);
}

.btn-header-action.active[b-ldh198rlgp] {
    color: var(--brand-600);
    background: var(--brand-50);
    border-color: var(--brand-300);
}

.btn-header-action:disabled[b-ldh198rlgp] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-header-action i[b-ldh198rlgp] {
    font-size: 16px;
}

/* Selected row highlighting */
.dashboard-table tr.table-active[b-ldh198rlgp] {
    background-color: var(--brand-50);
    transition: background-color 0.15s ease;
}

.dashboard-table tr.table-active td[b-ldh198rlgp] {
    background-color: var(--brand-50);
    border-bottom-color: var(--brand-100);
}

.dashboard-table tr.table-active:hover td[b-ldh198rlgp] {
    background-color: var(--brand-100);
}

/* Completion Progress Indicator */
.completion-indicator[b-ldh198rlgp] {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 100px;
}

.completion-bar[b-ldh198rlgp] {
    flex: 1;
    height: 6px;
    background-color: var(--neutral-200);
    border-radius: 3px;
    overflow: hidden;
}

.completion-fill[b-ldh198rlgp] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.3s ease;
}

.completion-fill.completion-complete[b-ldh198rlgp] {
    background-color: var(--success-500);
}

.completion-fill.completion-high[b-ldh198rlgp] {
    background-color: var(--brand-500);
}

.completion-fill.completion-medium[b-ldh198rlgp] {
    background-color: var(--accent-500);
}

.completion-fill.completion-low[b-ldh198rlgp] {
    background-color: var(--warning-500);
}

.completion-fill.completion-minimal[b-ldh198rlgp] {
    background-color: var(--neutral-400);
}

.completion-text[b-ldh198rlgp] {
    font-size: 12px;
    font-weight: 500;
    color: var(--text-secondary, #475569);
    min-width: 32px;
    text-align: right;
}

/* Custom purple badge classes for ReferredToUnderwriter status */
.bg-purple-subtle[b-ldh198rlgp] {
    background-color: #E9D5FF !important;
}

.border-purple-subtle[b-ldh198rlgp] {
    border-color: #C4B5FD !important;
}

.text-purple-emphasis[b-ldh198rlgp] {
    color: #6B21A8 !important;
}

/* Custom orange badge classes for Referral status */
.bg-orange-subtle[b-ldh198rlgp] {
    background-color: #FED7AA !important;
}

.border-orange-subtle[b-ldh198rlgp] {
    border-color: #FDBA74 !important;
}

.text-orange-emphasis[b-ldh198rlgp] {
    color: #9A3412 !important;
}

/* Feature 072 — custom teal badge classes for the AwaitingBorrower ("Waiting for Borrower")
   status. Needed because Bootstrap 5.3 ships no teal *-subtle utility, and because the
   ToSubtleBadgeClass fallback is grey, which is indistinguishable from Cancelled/Archived. */
.bg-teal-subtle[b-ldh198rlgp] {
    background-color: #CCFBF1 !important;
}

.border-teal-subtle[b-ldh198rlgp] {
    border-color: #5EEAD4 !important;
}

.text-teal-emphasis[b-ldh198rlgp] {
    color: #115E59 !important;
}

/* Card with tabs animation */
.card.card-with-tabs[b-ldh198rlgp] {
    animation: fadeInUp-b-ldh198rlgp 0.4s ease-out;
}

/* Action items list animation */
.action-items-list .action-item[b-ldh198rlgp] {
    animation: slideInRight-b-ldh198rlgp 0.3s ease-out forwards;
    opacity: 0;
}

.action-items-list .action-item:nth-child(1)[b-ldh198rlgp] { animation-delay: 100ms; }
.action-items-list .action-item:nth-child(2)[b-ldh198rlgp] { animation-delay: 200ms; }
.action-items-list .action-item:nth-child(3)[b-ldh198rlgp] { animation-delay: 300ms; }
.action-items-list .action-item:nth-child(4)[b-ldh198rlgp] { animation-delay: 400ms; }
.action-items-list .action-item:nth-child(5)[b-ldh198rlgp] { animation-delay: 500ms; }
.action-items-list .action-item:nth-child(n+6)[b-ldh198rlgp] { animation-delay: 600ms; }

/* /Components/Pages/BorrowerPaymentPage.razor.rz.scp.css */
.borrower-payment-page[b-wta5r0200l] {
    max-width: 800px;
    margin: 0 auto;
    padding: 24px 16px;
    font-family: 'Inter', system-ui, sans-serif;
    color: #374151;
}

/* Loading / Error / Success */
.loading-container[b-wta5r0200l], .error-container[b-wta5r0200l], .success-container[b-wta5r0200l] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 50vh;
    text-align: center;
    gap: 16px;
}

.error-card[b-wta5r0200l], .success-card[b-wta5r0200l] {
    padding: 40px;
    border-radius: 12px;
    max-width: 500px;
}

.error-icon[b-wta5r0200l] {
    font-size: 48px;
    color: #DC2626;
}

.success-icon[b-wta5r0200l] {
    font-size: 48px;
    color: #059669;
}

.success-card h2[b-wta5r0200l] {
    color: #059669;
    margin: 16px 0 8px;
}

.error-card h2[b-wta5r0200l] {
    color: #DC2626;
    margin: 16px 0 8px;
}

/* Header */
.payment-header[b-wta5r0200l] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 16px;
    margin: -24px -16px 32px;
    border-bottom: 3px solid #0D6785;
    background: white;
}

.header-brand[b-wta5r0200l] {
    display: flex;
    align-items: center;
}

/* Same class name and treatment as the brand logo on the premium estimate
   document (Components/Pages/Applications/PremiumEstimatePreviewPage.razor.css).
   lendiligence.png is 443x61, a much wider wordmark than the 399x138 mark it
   replaced, so the box is shorter to keep the header row the same height. */
.brand-logo[b-wta5r0200l] {
    height: 40px;
    width: auto;
}

.header-auth[b-wta5r0200l] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding: 10px 16px;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    font-size: 13px;
    gap: 2px;
}

.auth-label[b-wta5r0200l] {
    font-size: 12px;
    font-weight: 700;
    color: #374151;
}

.auth-bank[b-wta5r0200l] {
    color: #0D6785;
    font-weight: 600;
}

.auth-contact[b-wta5r0200l] {
    font-size: 12px;
    color: #6B7280;
    display: flex;
    align-items: center;
    gap: 4px;
}

.auth-divider[b-wta5r0200l] {
    color: #D1D5DB;
}

/* Title */
.payment-title-section[b-wta5r0200l] {
    text-align: center;
    margin-bottom: 32px;
}

.payment-title-section h1[b-wta5r0200l] {
    font-size: 28px;
    font-weight: 700;
    color: #0D6785;
    margin: 0 0 8px;
}

.payment-title-section p[b-wta5r0200l] {
    font-size: 16px;
    color: #6B7280;
    margin: 0;
}

/* Cards */
.info-card[b-wta5r0200l] {
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    padding: 24px;
    margin-bottom: 20px;
}

.info-card h3[b-wta5r0200l] {
    font-size: 18px;
    font-weight: 700;
    color: #111827;
    margin: 0 0 12px;
}

.info-card p[b-wta5r0200l] {
    font-size: 14px;
    line-height: 1.6;
    color: #4B5563;
    margin: 0 0 12px;
}

.veracheck-info[b-wta5r0200l] {
    background: #F0FDFA;
    border-radius: 8px;
    padding: 16px;
    margin-top: 12px;
}

.veracheck-info h4[b-wta5r0200l] {
    font-size: 16px;
    font-weight: 600;
    color: #0D6785;
    margin: 0 0 8px;
}

.veracheck-info p[b-wta5r0200l] {
    color: #374151;
    margin: 0;
}

/* Verify Fields */
.verify-field[b-wta5r0200l] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 16px;
    background: #F9FAFB;
    border-radius: 8px;
    margin-bottom: 10px;
}

.verify-field i[b-wta5r0200l] {
    color: #0D6785;
    font-size: 16px;
    margin-top: 2px;
}

.verify-field label[b-wta5r0200l] {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #0D6785;
    margin-bottom: 2px;
}

.verify-field span[b-wta5r0200l] {
    font-size: 14px;
    color: #111827;
}

.verify-note[b-wta5r0200l] {
    font-size: 12px !important;
    color: #9CA3AF !important;
    font-style: italic;
    margin-top: 8px;
}

/* Payment Card */
.payment-card[b-wta5r0200l] {
    background: white;
    border: 2px solid #0D6785;
    border-radius: 12px;
    padding: 32px 24px;
    margin-bottom: 20px;
    text-align: center;
}

.payment-card h3[b-wta5r0200l] {
    font-size: 22px;
    font-weight: 700;
    color: #111827;
    margin: 0 0 8px;
}

.secure-badge[b-wta5r0200l] {
    font-size: 13px;
    color: #6B7280;
    margin: 0 0 20px;
}

.secure-badge i[b-wta5r0200l] {
    color: #0D6785;
}

.payment-amount-box[b-wta5r0200l] {
    background: #F9FAFB;
    border-radius: 8px;
    padding: 16px;
    margin-bottom: 20px;
    text-align: left;
}

.payment-amount-box p[b-wta5r0200l] {
    font-size: 14px;
    line-height: 1.6;
    color: #374151;
    margin: 0;
}

.payment-amount-box strong[b-wta5r0200l] {
    color: #0D6785;
    font-size: 18px;
}

.btn-pay[b-wta5r0200l] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 16px 32px;
    background: #0D6785;
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s;
    margin-bottom: 16px;
}

.btn-pay:hover:not(:disabled)[b-wta5r0200l] {
    background: #0A526A;
    box-shadow: 0 4px 12px rgba(13, 103, 133, 0.3);
}

.btn-pay:disabled[b-wta5r0200l] {
    background: #9CA3AF;
    cursor: not-allowed;
}

.payment-methods[b-wta5r0200l] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 13px;
    color: #9CA3AF;
}

.card-badge[b-wta5r0200l] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    color: #374151;
    background: white;
}

.card-icon[b-wta5r0200l] {
    width: 28px;
    height: 18px;
    flex-shrink: 0;
}

/* Timeline */
.timeline[b-wta5r0200l] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    padding: 20px 0;
}

.timeline-step[b-wta5r0200l] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: #9CA3AF;
}

.timeline-step.active[b-wta5r0200l] {
    color: #0D6785;
}

.timeline-icon[b-wta5r0200l] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #F3F4F6;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    color: #9CA3AF;
}

.timeline-step.active .timeline-icon[b-wta5r0200l] {
    background: #0D6785;
    color: white;
}

.timeline-line[b-wta5r0200l] {
    width: 60px;
    height: 2px;
    background: #E5E7EB;
    margin-bottom: 24px;
}

/* Next Steps */
.next-steps[b-wta5r0200l] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.next-step[b-wta5r0200l] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    font-size: 14px;
    line-height: 1.6;
}

.step-number[b-wta5r0200l] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #0D6785;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 700;
    flex-shrink: 0;
}

/* Footer */
.payment-footer[b-wta5r0200l] {
    text-align: center;
    padding: 24px 0;
    margin-top: 20px;
    border-top: 1px solid #E5E7EB;
    background: #F9FAFB;
    border-radius: 0 0 12px 12px;
    margin: 20px -16px 0;
    padding: 24px 16px;
}

.footer-brand[b-wta5r0200l] {
    font-size: 16px;
    font-weight: 700;
    color: #374151;
    font-style: italic;
    margin-bottom: 8px;
}

.footer-links[b-wta5r0200l] {
    display: flex;
    justify-content: center;
    gap: 20px;
    font-size: 13px;
    color: #6B7280;
    margin-bottom: 12px;
    flex-wrap: wrap;
}

.footer-links i[b-wta5r0200l] {
    margin-right: 4px;
    color: #9CA3AF;
}

.footer-copyright[b-wta5r0200l] {
    font-size: 12px;
    color: #9CA3AF;
    margin: 0;
}

/* Responsive */
@media (max-width: 640px) {
    .payment-header[b-wta5r0200l] {
        flex-direction: column;
        gap: 12px;
        align-items: flex-start;
    }

    .header-auth[b-wta5r0200l] {
        align-items: flex-start;
    }

    .payment-title-section h1[b-wta5r0200l] {
        font-size: 22px;
    }

    .timeline[b-wta5r0200l] {
        gap: 0;
    }

    .timeline-line[b-wta5r0200l] {
        width: 30px;
    }

    .footer-links[b-wta5r0200l] {
        flex-direction: column;
        gap: 8px;
    }
}
/* /Components/Pages/BorrowerQuestionnairePage.razor.rz.scp.css */
/* Feature 072 — borrower questionnaire page.

   Written in the same self-contained, plain-CSS idiom as BorrowerPaymentPage.razor.css rather than
   over the portal's leca-theme utilities: this is the one page in the application shown to someone who
   is not a user, on an unknown device, with no navigation around it. The layout classes it does borrow
   (.form-group, .form-label, .radio-group-inline, .radio-label, .child-question-section,
   .question-label, .grandchild-*) come from wwwroot/css/input-components.css, which is loaded globally
   and therefore reaches the shared YesNoRadioGroup / PercentageInput markup that this page's scoped CSS
   cannot. Everything defined here is prefixed .bq- so it cannot collide with the portal. */

.borrower-questionnaire-page[b-q3plblkbdt] {
    max-width: 820px;
    margin: 0 auto;
    padding: 24px 16px;
    font-family: 'Inter', system-ui, sans-serif;
    color: #374151;
}

/* ---------- Loading / dead link / confirmation ---------- */

.bq-centered[b-q3plblkbdt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
    text-align: center;
    gap: 16px;
}

.bq-notice[b-q3plblkbdt] {
    padding: 40px;
    border-radius: 12px;
    max-width: 520px;
    border: 1px solid #E5E7EB;
    background: #fff;
}

.bq-notice h2[b-q3plblkbdt] {
    margin: 16px 0 12px;
    font-size: 22px;
}

.bq-notice p[b-q3plblkbdt] {
    margin: 0 0 8px;
    font-size: 15px;
    line-height: 1.55;
}

.bq-notice-icon[b-q3plblkbdt] {
    font-size: 44px;
}

/* Deliberately neutral, not alarming: the commonest reason a borrower lands here is that they already
   finished, and the second commonest is that the link simply aged out. Neither is an error they did. */
.bq-notice-dead .bq-notice-icon[b-q3plblkbdt] {
    color: #6B7280;
}

.bq-notice-dead h2[b-q3plblkbdt] {
    color: #374151;
}

.bq-notice-done .bq-notice-icon[b-q3plblkbdt] {
    color: #059669;
}

.bq-notice-done h2[b-q3plblkbdt] {
    color: #059669;
}

.bq-muted[b-q3plblkbdt] {
    color: #6B7280;
    font-size: 14px;
}

/* ---------- Header ---------- */

.bq-header[b-q3plblkbdt] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    padding: 20px 16px;
    margin: -24px -16px 28px;
    border-bottom: 3px solid #0D6785;
    background: #fff;
}

/* 46px, not the 40px the old wordmark used, because the asset changed shape rather than just changing
   pictures: lendiligence.png was 443x61 (7.3:1, one line of type), lp3_wlogo.jpg is 500x115 (4.3:1, a
   mark plus two stacked lines). Held at 40px the taller file scales the "LENDER" line down by about a
   quarter and sets "ENVIRONMENTAL DILIGENCE" too small to read. 46px is the height
   PremiumEstimatePreviewPage.razor.css:216 already displays this same file at, so it is not a new value.
   The header band does not grow: .bq-authorized is the taller flex item either way.
   display: block is what puts .page-subtitle directly under the mark with no inline descender gap. */
.bq-logo[b-q3plblkbdt] {
    height: 46px;
    width: auto;
    max-width: 100%;
    display: block;
}

.bq-authorized[b-q3plblkbdt] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding: 10px 16px;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    font-size: 13px;
    gap: 2px;
}

.bq-authorized-label[b-q3plblkbdt] {
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 11px;
}

.bq-authorized-bank[b-q3plblkbdt] {
    font-weight: 600;
    color: #111827;
}

.bq-authorized-contact[b-q3plblkbdt] {
    color: #6B7280;
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.bq-divider[b-q3plblkbdt] {
    color: #D1D5DB;
}

/* ---------- Title ---------- */

.bq-title[b-q3plblkbdt] {
    text-align: center;
    margin-bottom: 28px;
}

.bq-title h1[b-q3plblkbdt] {
    font-size: 26px;
    font-weight: 700;
    color: #111827;
    margin: 0 0 8px;
}

.bq-title p[b-q3plblkbdt] {
    margin: 0;
    color: #6B7280;
    font-size: 15px;
}

/* ---------- Cards ---------- */

.bq-card[b-q3plblkbdt] {
    background: #fff;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    padding: 24px;
    margin-bottom: 20px;
}

.bq-card h3[b-q3plblkbdt] {
    font-size: 17px;
    font-weight: 600;
    color: #111827;
    margin: 0 0 18px;
    padding-bottom: 12px;
    border-bottom: 1px solid #F3F4F6;
}

.bq-note[b-q3plblkbdt] {
    margin: 14px 0 0;
    font-size: 13px;
    color: #6B7280;
    line-height: 1.5;
}

.bq-counter[b-q3plblkbdt] {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    color: #9CA3AF;
}

/* ---------- "What we already have" rows ---------- */

.bq-field[b-q3plblkbdt] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid #F9FAFB;
}

.bq-field:last-of-type[b-q3plblkbdt] {
    border-bottom: none;
}

.bq-field i[b-q3plblkbdt] {
    color: #0D6785;
    font-size: 18px;
    margin-top: 2px;
}

.bq-field label[b-q3plblkbdt] {
    display: block;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #6B7280;
    margin-bottom: 2px;
}

.bq-field span[b-q3plblkbdt] {
    font-size: 15px;
    color: #111827;
}

/* ---------- Save state ---------- */

.bq-progress-card[b-q3plblkbdt] {
    padding: 16px 24px;
    background: #F0F9FF;
    border-color: #BAE6FD;
}

.bq-progress-line[b-q3plblkbdt] {
    display: flex;
    align-items: baseline;
    gap: 10px;
    font-size: 14px;
    color: #0369A1;
}

.bq-progress-line + .bq-progress-line[b-q3plblkbdt] {
    margin-top: 6px;
}

.bq-progress-card .bq-muted[b-q3plblkbdt] {
    color: #64748B;
}

/* ---------- Errors ---------- */

.bq-errors[b-q3plblkbdt] {
    border-color: #FCA5A5;
    background: #FEF2F2;
}

.bq-errors h3[b-q3plblkbdt] {
    color: #B91C1C;
    border-bottom-color: #FECACA;
}

.bq-errors ul[b-q3plblkbdt] {
    margin: 0;
    padding-left: 20px;
    color: #B91C1C;
    font-size: 14px;
}

.bq-errors li + li[b-q3plblkbdt] {
    margin-top: 4px;
}

.bq-action-error[b-q3plblkbdt] {
    margin: 0;
    color: #B91C1C;
    font-size: 14px;
}

/* ---------- Actions ---------- */

.bq-actions[b-q3plblkbdt] {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    margin: 8px 0 32px;
}

/* The bq-btn set that used to live here is gone: the two action buttons now carry the wizard CTA
   canon (wizard-cta btn-save-draft / btn-submit, wwwroot/css/wizard-cta.css) and nothing else in this
   page ever used these classes, so every rule below was dead. Its mobile width:100% rule went with
   it — the canon carries the same rule at its own 768px breakpoint. */

/* ---------- Footer ---------- */

.bq-footer[b-q3plblkbdt] {
    text-align: center;
    padding: 24px 0 8px;
    border-top: 1px solid #E5E7EB;
    color: #6B7280;
    font-size: 13px;
}

.bq-footer-brand[b-q3plblkbdt] {
    font-weight: 600;
    color: #0D6785;
    margin-bottom: 8px;
}

.bq-footer-links[b-q3plblkbdt] {
    display: flex;
    justify-content: center;
    gap: 18px;
    flex-wrap: wrap;
    margin-bottom: 10px;
}

.bq-footer-links a[b-q3plblkbdt] {
    color: #0D6785;
    text-decoration: none;
}

.bq-footer-links a:hover[b-q3plblkbdt] {
    text-decoration: underline;
}

.bq-footer-copyright[b-q3plblkbdt] {
    margin: 0;
    font-size: 12px;
    color: #9CA3AF;
}

/* ---------- Inputs the shared components do not style ---------- */

/* .form-input is defined in the two intake pages' scoped CSS, which by definition does not reach this
   page. The plain inputs here are styled locally rather than by hoisting that rule into a global
   stylesheet, which would restyle both intake forms as a side effect. ::deep is needed because these
   elements are rendered by InputText / InputSelect / InputTextArea / InputNumber, not by this page's
   own markup. */
[b-q3plblkbdt] .form-input {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #D1D5DB;
    border-radius: 8px;
    font-size: 15px;
    color: #111827;
    background: #fff;
}

[b-q3plblkbdt] .form-input:focus {
    outline: none;
    border-color: #0D6785;
    box-shadow: 0 0 0 3px rgba(13, 103, 133, 0.12);
}

[b-q3plblkbdt] .form-input.is-invalid,
[b-q3plblkbdt] .validation-error .form-input {
    border-color: #DC2626;
}

[b-q3plblkbdt] .required {
    color: #DC2626;
}

[b-q3plblkbdt] .validation-message {
    display: block;
    margin-top: 4px;
    font-size: 13px;
    color: #DC2626;
}

@media (max-width: 640px) {
    .bq-header[b-q3plblkbdt] {
        flex-direction: column;
        align-items: flex-start;
    }

    .bq-authorized[b-q3plblkbdt] {
        align-items: flex-start;
    }

    .bq-actions[b-q3plblkbdt] {
        flex-direction: column-reverse;
    }
}
/* /Components/Pages/ContactPage.razor.rz.scp.css */
/* ========================================
   Contact Page Styles - LECA Design
   ======================================== */

.contact-page[b-k2j2jceecd] {
    max-width: 800px;
    margin: 0 auto;
    padding: 3rem 2rem;
}

/* Header Section */
.contact-header[b-k2j2jceecd] {
    text-align: center;
    margin-bottom: 3rem;
}

.contact-title[b-k2j2jceecd] {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 1rem 0;
    letter-spacing: -0.025em;
}

.contact-subtitle[b-k2j2jceecd] {
    font-size: 1.125rem;
    color: var(--text-secondary);
    margin: 0;
    line-height: 1.6;
}

/* Contact Info Box */
.contact-info-box[b-k2j2jceecd] {
    background: #D6EAF8;
    border-radius: 12px;
    padding: 2.5rem 2rem;
    margin-bottom: 2rem;
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.contact-info-item[b-k2j2jceecd] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}

.contact-icon[b-k2j2jceecd] {
    width: 24px;
    height: 24px;
    color: var(--brand-600);
    flex-shrink: 0;
    margin-top: 2px;
}

.contact-info-content[b-k2j2jceecd] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.contact-label[b-k2j2jceecd] {
    font-weight: 600;
    color: var(--text-primary);
    font-size: 1rem;
}

.contact-value[b-k2j2jceecd] {
    color: var(--brand-600);
    font-size: 1rem;
    text-decoration: none;
    line-height: 1.5;
}

.contact-value:hover[b-k2j2jceecd] {
    text-decoration: underline;
}

/* Office Hours */
.office-hours[b-k2j2jceecd] {
    text-align: center;
    color: var(--text-secondary);
    font-size: 0.9375rem;
    font-style: italic;
}

/* Responsive Design */
@media (max-width: 768px) {
    .contact-page[b-k2j2jceecd] {
        padding: 2rem 1.5rem;
    }
    
    .contact-title[b-k2j2jceecd] {
        font-size: 2rem;
    }
    
    .contact-subtitle[b-k2j2jceecd] {
        font-size: 1rem;
    }
    
    .contact-info-box[b-k2j2jceecd] {
        padding: 2rem 1.5rem;
    }
}

@media (max-width: 480px) {
    .contact-page[b-k2j2jceecd] {
        padding: 1.5rem 1rem;
    }
    
    .contact-title[b-k2j2jceecd] {
        font-size: 1.75rem;
    }
    
    .contact-info-box[b-k2j2jceecd] {
        padding: 1.5rem 1rem;
        gap: 1.5rem;
    }
}

/* /Components/Pages/Docs/Shared/DocsMenu.razor.rz.scp.css */
.docs-menu[b-af40l68stf] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.menu-section-label[b-af40l68stf] {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: #6b7280;
    padding: 0 12px;
    margin-bottom: 8px;
}

.menu-item[b-af40l68stf] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 12px;
    border-radius: 8px;
    color: #374151;
    text-decoration: none;
    font-size: 13.5px;
    font-weight: 500;
    transition: all 0.12s ease;
}

.menu-item i[b-af40l68stf] {
    font-size: 15px;
    color: #9ca3af;
    width: 18px;
    text-align: center;
    flex-shrink: 0;
}

.menu-item:hover[b-af40l68stf] {
    background: #f3f4f6;
    color: #111827;
}

.menu-item:hover i[b-af40l68stf] { color: var(--brand-600); }

.menu-item.active[b-af40l68stf] {
    background: var(--brand-50);
    color: var(--brand-700);
    font-weight: 600;
}

.menu-item.active i[b-af40l68stf] { color: var(--brand-600); }
/* /Components/Pages/Docs/Shared/DocsSearch.razor.rz.scp.css */
.docs-search[b-90kampf9k5] { position: relative; width: 100%; }

.search-input-wrap[b-90kampf9k5] {
    position: relative;
    display: flex;
    align-items: center;
}

.search-input-wrap > i[b-90kampf9k5] {
    position: absolute;
    left: 12px;
    color: #9ca3af;
    font-size: 14px;
    pointer-events: none;
}

.search-input[b-90kampf9k5] {
    width: 100%;
    border: 1px solid #e5e7eb;
    background: #f9fafb;
    border-radius: 9px;
    padding: 9px 56px 9px 36px;
    font-size: 13.5px;
    color: #111827;
    outline: none;
    transition: all 0.15s ease;
}

.search-input:focus[b-90kampf9k5] {
    background: white;
    border-color: var(--brand-300);
    box-shadow: 0 0 0 3px rgba(0, 91, 159, 0.15);
}

.search-input[b-90kampf9k5]::placeholder { color: #9ca3af; }

.search-kbd[b-90kampf9k5] {
    position: absolute;
    right: 10px;
    background: white;
    border: 1px solid #e5e7eb;
    border-bottom-width: 2px;
    border-radius: 5px;
    padding: 1px 6px;
    font-size: 10px;
    color: #6b7280;
    font-family: inherit;
    pointer-events: none;
}

.search-results[b-90kampf9k5] {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
    padding: 6px;
    z-index: 100;
    max-height: 400px;
    overflow-y: auto;
}

.search-result[b-90kampf9k5] {
    display: block;
    padding: 10px 12px;
    border-radius: 7px;
    text-decoration: none;
    color: #111827;
    transition: background 0.12s ease;
}

.search-result:hover[b-90kampf9k5] { background: var(--brand-50); }

.result-section[b-90kampf9k5] {
    font-size: 10.5px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #6b7280;
    font-weight: 600;
    margin-bottom: 2px;
}

.result-title[b-90kampf9k5] {
    font-size: 14px;
    font-weight: 600;
    color: #111827;
}

.result-hint[b-90kampf9k5] {
    font-size: 12.5px;
    color: #6b7280;
    margin-top: 2px;
}

.search-empty[b-90kampf9k5] {
    text-align: center;
    padding: 24px 16px;
    color: #6b7280;
    font-size: 13px;
}

.search-empty i[b-90kampf9k5] { font-size: 22px; display: block; margin-bottom: 6px; opacity: 0.5; }

.search-backdrop[b-90kampf9k5] {
    position: fixed;
    inset: 0;
    z-index: 40;
}
/* /Components/Pages/Help/HelpCoveragePage.razor.rz.scp.css */
/* Help documentation coverage report (feature 032). Internal admin page: leca-theme tokens,
   flat surfaces, radius 10, brand blue accent. */

.help-coverage-page[b-v7i44bn2xf] {
    padding: 1.5rem;
    max-width: 1100px;
    margin: 0 auto;
}

.page-header[b-v7i44bn2xf] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.page-header h1[b-v7i44bn2xf] {
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: var(--text-primary);
    margin: 0;
}

.header-subtitle[b-v7i44bn2xf] {
    color: var(--text-secondary);
    font-size: 0.9rem;
    margin: 0.35rem 0 0;
    max-width: 65ch;
}

.btn-refresh[b-v7i44bn2xf] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.5rem 0.9rem;
    border: 1px solid var(--border-medium);
    border-radius: 10px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
}

.btn-refresh:hover[b-v7i44bn2xf] {
    background: var(--bg-hover);
    color: var(--text-primary);
}

.loading-container[b-v7i44bn2xf] {
    text-align: center;
    padding: 3rem 1rem;
    color: var(--text-muted);
}

.coverage-error[b-v7i44bn2xf] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1rem;
    background: var(--bg-danger);
    border: 1px solid var(--error-200);
    border-radius: 10px;
    color: var(--error-700);
}

.coverage-summary[b-v7i44bn2xf] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0.75rem;
    margin-bottom: 2rem;
}

.summary-card[b-v7i44bn2xf] {
    background: var(--bg-surface);
    border: 1px solid var(--border-light);
    border-radius: 10px;
    padding: 1rem;
    text-align: center;
}

.summary-value[b-v7i44bn2xf] {
    display: block;
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.1;
}

.summary-label[b-v7i44bn2xf] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.25rem;
}

.summary-card.ok .summary-value[b-v7i44bn2xf] { color: var(--success-600); }
.summary-card.partial .summary-value[b-v7i44bn2xf] { color: var(--warning-600); }
.summary-card.missing .summary-value[b-v7i44bn2xf] { color: var(--error-600); }

.coverage-section[b-v7i44bn2xf] {
    margin-bottom: 2rem;
}

.coverage-section h2[b-v7i44bn2xf] {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.section-hint[b-v7i44bn2xf] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    margin: -0.5rem 0 0.75rem;
}

.count-pill[b-v7i44bn2xf] {
    font-size: 0.75rem;
    font-weight: 600;
    background: var(--bg-subtle);
    color: var(--brand-700);
    border-radius: 999px;
    padding: 0.1rem 0.55rem;
}

.module-list[b-v7i44bn2xf] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.module-row[b-v7i44bn2xf] {
    display: grid;
    grid-template-columns: 200px 1fr 70px;
    align-items: center;
    gap: 0.75rem;
}

.module-name[b-v7i44bn2xf] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.module-bar[b-v7i44bn2xf] {
    height: 8px;
    background: var(--bg-secondary);
    border-radius: 999px;
    overflow: hidden;
}

.module-bar-fill[b-v7i44bn2xf] {
    height: 100%;
    background: var(--brand-500);
    border-radius: 999px;
}

.module-count[b-v7i44bn2xf] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.table-scroll[b-v7i44bn2xf] {
    overflow-x: auto;
    border: 1px solid var(--border-light);
    border-radius: 10px;
}

.coverage-table[b-v7i44bn2xf] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
}

.coverage-table th[b-v7i44bn2xf] {
    text-align: left;
    padding: 0.55rem 0.75rem;
    background: var(--bg-subtle);
    color: var(--text-secondary);
    font-weight: 600;
    border-bottom: 1px solid var(--border-light);
}

.coverage-table td[b-v7i44bn2xf] {
    padding: 0.5rem 0.75rem;
    border-bottom: 1px solid var(--border-light);
    color: var(--text-secondary);
}

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

.coverage-table td.muted[b-v7i44bn2xf] {
    color: var(--text-muted);
}

.coverage-columns[b-v7i44bn2xf] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}

.id-list[b-v7i44bn2xf] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.id-list code[b-v7i44bn2xf],
.coverage-table code[b-v7i44bn2xf] {
    background: var(--bg-subtle);
    padding: 0.1rem 0.4rem;
    border-radius: 6px;
    font-size: 0.8rem;
    color: var(--text-primary);
}

.empty-note[b-v7i44bn2xf] {
    font-size: 0.85rem;
    color: var(--text-muted);
    font-style: italic;
}

.generated-at[b-v7i44bn2xf] {
    font-size: 0.75rem;
    color: var(--text-disabled);
    text-align: right;
}

@media (max-width: 767px) {
    .coverage-summary[b-v7i44bn2xf] { grid-template-columns: repeat(2, 1fr); }
    .coverage-columns[b-v7i44bn2xf] { grid-template-columns: 1fr; }
    .module-row[b-v7i44bn2xf] { grid-template-columns: 120px 1fr 60px; }
}
/* /Components/Pages/Help/HelpMediaPlayer.razor.rz.scp.css */
/* Help Media Player Styles */

.help-media-player[b-ymfjbtwfeu] {
    margin: 1.5rem 0;
    border-radius: 12px;
    overflow: hidden;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
}

.media-container[b-ymfjbtwfeu] {
    position: relative;
    width: 100%;
    background: #1e293b;
}

/* Video */
.media-video[b-ymfjbtwfeu] {
    width: 100%;
    display: block;
    max-height: 500px;
}

/* GIF */
.media-gif-wrapper[b-ymfjbtwfeu] {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 200px;
}

.media-thumbnail[b-ymfjbtwfeu],
.media-gif[b-ymfjbtwfeu] {
    width: 100%;
    max-height: 500px;
    object-fit: contain;
    display: block;
}

.play-overlay[b-ymfjbtwfeu] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    color: white;
    border: none;
    cursor: pointer;
    transition: background 0.2s;
}

.play-overlay:hover[b-ymfjbtwfeu] {
    background: rgba(0, 0, 0, 0.6);
}

.play-overlay i[b-ymfjbtwfeu] {
    font-size: 4rem;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
}

.play-overlay span[b-ymfjbtwfeu] {
    font-size: 0.875rem;
    font-weight: 500;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}

.stop-overlay[b-ymfjbtwfeu] {
    position: absolute;
    bottom: 1rem;
    right: 1rem;
    background: rgba(0, 0, 0, 0.7);
    color: white;
    border: none;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    opacity: 0;
    transition: opacity 0.2s;
}

.media-gif-wrapper:hover .stop-overlay[b-ymfjbtwfeu] {
    opacity: 1;
}

.stop-overlay:hover[b-ymfjbtwfeu] {
    background: rgba(0, 0, 0, 0.9);
}

.stop-overlay i[b-ymfjbtwfeu] {
    font-size: 1.25rem;
}

/* Image */
.media-image[b-ymfjbtwfeu] {
    width: 100%;
    max-height: 500px;
    object-fit: contain;
    display: block;
    cursor: pointer;
}

.expand-btn[b-ymfjbtwfeu] {
    position: absolute;
    bottom: 1rem;
    right: 1rem;
    background: rgba(0, 0, 0, 0.7);
    color: white;
    border: none;
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    opacity: 0;
    transition: opacity 0.2s;
}

.media-container:hover .expand-btn[b-ymfjbtwfeu] {
    opacity: 1;
}

.expand-btn:hover[b-ymfjbtwfeu] {
    background: rgba(0, 0, 0, 0.9);
}

/* Caption */
.media-caption[b-ymfjbtwfeu] {
    padding: 0.75rem 1rem;
    font-size: 0.875rem;
    color: #475569;
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    line-height: 1.5;
}

.media-caption i[b-ymfjbtwfeu] {
    color: #3b82f6;
    flex-shrink: 0;
    margin-top: 2px;
}

/* Lightbox */
.media-lightbox[b-ymfjbtwfeu] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.9);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    cursor: pointer;
}

.lightbox-content[b-ymfjbtwfeu] {
    position: relative;
    max-width: 90vw;
    max-height: 90vh;
    cursor: default;
}

.lightbox-close[b-ymfjbtwfeu] {
    position: absolute;
    top: -3rem;
    right: 0;
    background: none;
    border: none;
    color: white;
    font-size: 1.5rem;
    cursor: pointer;
    padding: 0.5rem;
    opacity: 0.8;
    transition: opacity 0.2s;
}

.lightbox-close:hover[b-ymfjbtwfeu] {
    opacity: 1;
}

.lightbox-image[b-ymfjbtwfeu] {
    max-width: 100%;
    max-height: 80vh;
    object-fit: contain;
    border-radius: 8px;
}

.lightbox-caption[b-ymfjbtwfeu] {
    color: white;
    text-align: center;
    padding: 1rem;
    font-size: 0.875rem;
    opacity: 0.9;
}

/* Responsive */
@media (max-width: 768px) {
    .play-overlay i[b-ymfjbtwfeu] {
        font-size: 3rem;
    }

    .media-lightbox[b-ymfjbtwfeu] {
        padding: 1rem;
    }

    .lightbox-close[b-ymfjbtwfeu] {
        top: -2.5rem;
    }
}

/* /Components/Pages/Help/HelpPage.razor.rz.scp.css */
/* Help Page Styles */

.help-page[b-crjj02zmej] {
    min-height: 100vh;
    background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
}

/* Header */
.help-header[b-crjj02zmej] {
    background: linear-gradient(135deg, #1e40af 0%, #3b82f6 100%);
    color: white;
    padding: 3rem 2rem;
    text-align: center;
}

.help-header-content[b-crjj02zmej] {
    max-width: 800px;
    margin: 0 auto;
}

.help-title[b-crjj02zmej] {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
}

.help-title i[b-crjj02zmej] {
    font-size: 2rem;
}

.help-subtitle[b-crjj02zmej] {
    font-size: 1.1rem;
    opacity: 0.9;
    margin: 0;
}

/* Search Section */
.help-search-section[b-crjj02zmej] {
    padding: 0 2rem;
    margin-top: -1.5rem;
    position: relative;
    z-index: 10;
}

.search-container[b-crjj02zmej] {
    max-width: 700px;
    margin: 0 auto;
}

.search-input-wrapper[b-crjj02zmej] {
    position: relative;
    display: flex;
    align-items: center;
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

.search-icon[b-crjj02zmej] {
    position: absolute;
    left: 1.25rem;
    color: #64748b;
    font-size: 1.25rem;
}

.search-input[b-crjj02zmej] {
    width: 100%;
    padding: 1.25rem 3rem 1.25rem 3.5rem;
    border: none;
    font-size: 1.1rem;
    outline: none;
}

.search-input[b-crjj02zmej]::placeholder {
    color: #94a3b8;
}

.search-spinner[b-crjj02zmej],
.search-clear-btn[b-crjj02zmej] {
    position: absolute;
    right: 1rem;
}

.search-clear-btn[b-crjj02zmej] {
    background: none;
    border: none;
    color: #64748b;
    cursor: pointer;
    padding: 0.5rem;
    border-radius: 50%;
    transition: all 0.2s;
}

.search-clear-btn:hover[b-crjj02zmej] {
    background: #f1f5f9;
    color: #1e293b;
}

/* Main Content */
.help-content[b-crjj02zmej] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 2rem;
}

.loading-container[b-crjj02zmej] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem;
    gap: 1rem;
    color: #64748b;
}

/* Section Titles */
.section-title[b-crjj02zmej] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 1.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.section-title i[b-crjj02zmej] {
    color: #3b82f6;
}

/* Categories Grid */
.categories-section[b-crjj02zmej] {
    margin-bottom: 3rem;
}

.categories-grid[b-crjj02zmej] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1.25rem;
}

.category-card[b-crjj02zmej] {
    background: white;
    border-radius: 12px;
    padding: 1.5rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    cursor: pointer;
    transition: all 0.2s;
    border: 2px solid transparent;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.category-card:hover[b-crjj02zmej] {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
}

.category-icon[b-crjj02zmej] {
    width: 56px;
    height: 56px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: white;
    flex-shrink: 0;
}

.category-info h3[b-crjj02zmej] {
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0 0 0.25rem 0;
    color: #1e293b;
}

.topic-count[b-crjj02zmej] {
    font-size: 0.875rem;
    color: #64748b;
}

/* Category Color Classes */
.category-getting-started .category-icon[b-crjj02zmej],
.category-getting-started.category-card:hover[b-crjj02zmej] { border-color: #10b981; }
.category-getting-started .category-icon[b-crjj02zmej] { background: linear-gradient(135deg, #10b981, #059669); }

.category-documents .category-icon[b-crjj02zmej],
.category-documents.category-card:hover[b-crjj02zmej] { border-color: #6366f1; }
.category-documents .category-icon[b-crjj02zmej] { background: linear-gradient(135deg, #6366f1, #4f46e5); }

.category-esignature .category-icon[b-crjj02zmej],
.category-esignature.category-card:hover[b-crjj02zmej] { border-color: #f59e0b; }
.category-esignature .category-icon[b-crjj02zmej] { background: linear-gradient(135deg, #f59e0b, #d97706); }

.category-applications .category-icon[b-crjj02zmej],
.category-applications.category-card:hover[b-crjj02zmej] { border-color: #3b82f6; }
.category-applications .category-icon[b-crjj02zmej] { background: linear-gradient(135deg, #3b82f6, #2563eb); }

.category-claims .category-icon[b-crjj02zmej],
.category-claims.category-card:hover[b-crjj02zmej] { border-color: #8b5cf6; }
.category-claims .category-icon[b-crjj02zmej] { background: linear-gradient(135deg, #8b5cf6, #7c3aed); }

.category-admin .category-icon[b-crjj02zmej],
.category-admin.category-card:hover[b-crjj02zmej] { border-color: #64748b; }
.category-admin .category-icon[b-crjj02zmej] { background: linear-gradient(135deg, #64748b, #475569); }

/* Topics Grid */
.topics-grid[b-crjj02zmej] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.25rem;
}

.topic-card[b-crjj02zmej] {
    background: white;
    border-radius: 12px;
    padding: 1.5rem;
    cursor: pointer;
    transition: all 0.2s;
    border: 1px solid #e2e8f0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.topic-card:hover[b-crjj02zmej] {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
    border-color: #3b82f6;
}

.topic-icon[b-crjj02zmej] {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    color: white;
}

.topic-content[b-crjj02zmej] {
    flex: 1;
}

.topic-title[b-crjj02zmej] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1e293b;
    margin: 0 0 0.5rem 0;
}

.topic-summary[b-crjj02zmej] {
    font-size: 0.875rem;
    color: #64748b;
    margin: 0;
    line-height: 1.5;
}

.topic-meta[b-crjj02zmej] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 0.75rem;
    font-size: 0.75rem;
}

.topic-category[b-crjj02zmej] {
    background: #f1f5f9;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    color: #475569;
    font-weight: 500;
}

.topic-updated[b-crjj02zmej] {
    color: #94a3b8;
}

/* Topics List */
.topics-list[b-crjj02zmej] {
    background: white;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #e2e8f0;
}

.topic-list-item[b-crjj02zmej] {
    display: flex;
    align-items: center;
    padding: 1rem 1.25rem;
    gap: 1rem;
    cursor: pointer;
    transition: background 0.2s;
    border-bottom: 1px solid #f1f5f9;
}

.topic-list-item:last-child[b-crjj02zmej] {
    border-bottom: none;
}

.topic-list-item:hover[b-crjj02zmej] {
    background: #f8fafc;
}

.topic-list-icon[b-crjj02zmej] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    flex-shrink: 0;
}

.topic-list-content[b-crjj02zmej] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.topic-list-title[b-crjj02zmej] {
    font-weight: 600;
    color: #1e293b;
}

.topic-list-category[b-crjj02zmej] {
    font-size: 0.75rem;
    color: #64748b;
}

.topic-list-date[b-crjj02zmej] {
    font-size: 0.75rem;
    color: #94a3b8;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.version-badge[b-crjj02zmej] {
    background: #e0f2fe;
    color: #0369a1;
    padding: 0.125rem 0.5rem;
    border-radius: 4px;
    font-weight: 500;
}

.topic-list-arrow[b-crjj02zmej] {
    color: #94a3b8;
}

/* Search Results */
.search-results-section[b-crjj02zmej] {
    margin-bottom: 2rem;
}

.search-results-header[b-crjj02zmej] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.5rem;
}

.search-results-header h2[b-crjj02zmej] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #1e293b;
    margin: 0;
}

.results-count[b-crjj02zmej] {
    color: #64748b;
    font-size: 0.875rem;
}

.search-results-list[b-crjj02zmej] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.search-result-card[b-crjj02zmej] {
    background: white;
    border-radius: 12px;
    padding: 1.25rem;
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    cursor: pointer;
    transition: all 0.2s;
    border: 1px solid #e2e8f0;
}

.search-result-card:hover[b-crjj02zmej] {
    transform: translateX(4px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
    border-color: #3b82f6;
}

.result-icon[b-crjj02zmej] {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    color: white;
    flex-shrink: 0;
}

.result-content[b-crjj02zmej] {
    flex: 1;
}

.result-header[b-crjj02zmej] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.5rem;
}

.result-title[b-crjj02zmej] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1e293b;
    margin: 0;
}

.result-category[b-crjj02zmej] {
    background: #f1f5f9;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    color: #475569;
    font-weight: 500;
}

.result-summary[b-crjj02zmej] {
    font-size: 0.875rem;
    color: #64748b;
    margin: 0 0 0.75rem 0;
    line-height: 1.5;
}

.result-keywords[b-crjj02zmej] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.keyword-badge[b-crjj02zmej] {
    background: #dbeafe;
    color: #1d4ed8;
    padding: 0.125rem 0.5rem;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 500;
}

.result-arrow[b-crjj02zmej] {
    color: #94a3b8;
    align-self: center;
}

/* No Results */
.no-results[b-crjj02zmej] {
    text-align: center;
    padding: 4rem 2rem;
    background: white;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
}

.no-results i[b-crjj02zmej] {
    font-size: 3rem;
    color: #cbd5e1;
    margin-bottom: 1rem;
}

.no-results h3[b-crjj02zmej] {
    font-size: 1.25rem;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 0.5rem;
}

.no-results p[b-crjj02zmej] {
    color: #64748b;
    margin-bottom: 1.5rem;
}

/* Filtered Section */
.filtered-section[b-crjj02zmej] {
    margin-bottom: 2rem;
}

.filtered-header[b-crjj02zmej] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.filtered-header h2[b-crjj02zmej] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #1e293b;
    margin: 0;
}

.btn-back[b-crjj02zmej] {
    background: white;
    border: 1px solid #e2e8f0;
    padding: 0.5rem 0.75rem;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-back:hover[b-crjj02zmej] {
    background: #f1f5f9;
}

/* Help Footer */
.help-footer[b-crjj02zmej] {
    padding: 2rem;
    max-width: 1200px;
    margin: 0 auto;
}

.quick-help-card[b-crjj02zmej] {
    background: linear-gradient(135deg, #1e40af 0%, #3b82f6 100%);
    color: white;
    border-radius: 16px;
    padding: 2rem;
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.quick-help-card > i[b-crjj02zmej] {
    font-size: 2.5rem;
    opacity: 0.9;
}

.quick-help-content[b-crjj02zmej] {
    flex: 1;
    min-width: 200px;
}

.quick-help-content h4[b-crjj02zmej] {
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0 0 0.25rem 0;
}

.quick-help-content p[b-crjj02zmej] {
    margin: 0;
    opacity: 0.9;
}

.quick-help-card .btn[b-crjj02zmej] {
    background: white;
    color: #1e40af;
    border: none;
    font-weight: 600;
}

.quick-help-card .btn:hover[b-crjj02zmej] {
    background: #f1f5f9;
}

/* Sections Spacing */
.popular-section[b-crjj02zmej],
.recent-section[b-crjj02zmej],
.all-topics-section[b-crjj02zmej] {
    margin-bottom: 3rem;
}

/* Responsive */
@media (max-width: 768px) {
    .help-header[b-crjj02zmej] {
        padding: 2rem 1rem;
    }

    .help-title[b-crjj02zmej] {
        font-size: 1.75rem;
    }

    .help-subtitle[b-crjj02zmej] {
        font-size: 1rem;
    }

    .help-search-section[b-crjj02zmej] {
        padding: 0 1rem;
    }

    .search-input[b-crjj02zmej] {
        padding: 1rem 2.5rem 1rem 3rem;
        font-size: 1rem;
    }

    .help-content[b-crjj02zmej] {
        padding: 1.5rem 1rem;
    }

    .categories-grid[b-crjj02zmej] {
        grid-template-columns: 1fr;
    }

    .topics-grid[b-crjj02zmej] {
        grid-template-columns: 1fr;
    }

    .quick-help-card[b-crjj02zmej] {
        flex-direction: column;
        text-align: center;
    }

    .quick-help-card .btn[b-crjj02zmej] {
        width: 100%;
    }

    .search-result-card[b-crjj02zmej] {
        flex-direction: column;
    }

    .result-header[b-crjj02zmej] {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* /Components/Pages/Help/HelpTopicPage.razor.rz.scp.css */
/* Help Topic Page Styles */

.help-topic-page[b-tlbubm065p] {
    min-height: 100vh;
    background: #f8fafc;
    padding: 1.5rem;
}

.loading-container[b-tlbubm065p] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem;
    gap: 1rem;
    color: #64748b;
}

/* Not Found */
.not-found[b-tlbubm065p] {
    text-align: center;
    padding: 4rem 2rem;
    background: white;
    border-radius: 12px;
    max-width: 500px;
    margin: 4rem auto;
    border: 1px solid #e2e8f0;
}

.not-found i[b-tlbubm065p] {
    font-size: 4rem;
    color: #cbd5e1;
    margin-bottom: 1rem;
}

.not-found h2[b-tlbubm065p] {
    font-size: 1.5rem;
    color: #1e293b;
    margin-bottom: 0.5rem;
}

.not-found p[b-tlbubm065p] {
    color: #64748b;
    margin-bottom: 1.5rem;
}

/* Breadcrumb */
.topic-breadcrumb[b-tlbubm065p] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
    font-size: 0.875rem;
    flex-wrap: wrap;
}

.breadcrumb-link[b-tlbubm065p] {
    color: #3b82f6;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.breadcrumb-link:hover[b-tlbubm065p] {
    text-decoration: underline;
}

.breadcrumb-separator[b-tlbubm065p] {
    color: #94a3b8;
    font-size: 0.75rem;
}

.breadcrumb-category[b-tlbubm065p] {
    color: #64748b;
}

.breadcrumb-current[b-tlbubm065p] {
    color: #1e293b;
    font-weight: 500;
}

/* Topic Header */
.topic-header[b-tlbubm065p] {
    background: white;
    border-radius: 16px;
    padding: 2rem;
    display: flex;
    gap: 1.5rem;
    margin-bottom: 1.5rem;
    border: 1px solid #e2e8f0;
}

.topic-header-icon[b-tlbubm065p] {
    width: 72px;
    height: 72px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    color: white;
    flex-shrink: 0;
}

.topic-header-content[b-tlbubm065p] {
    flex: 1;
}

.topic-header-title[b-tlbubm065p] {
    font-size: 1.75rem;
    font-weight: 700;
    color: #1e293b;
    margin: 0 0 0.5rem 0;
}

.topic-header-summary[b-tlbubm065p] {
    font-size: 1rem;
    color: #64748b;
    margin: 0 0 1rem 0;
    line-height: 1.6;
}

.topic-header-meta[b-tlbubm065p] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.meta-item[b-tlbubm065p] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
    color: #64748b;
}

.meta-item i[b-tlbubm065p] {
    color: #94a3b8;
}

.meta-item.version[b-tlbubm065p] {
    background: #e0f2fe;
    color: #0369a1;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-weight: 500;
}

/* Category Color Classes */
.category-getting-started[b-tlbubm065p] { background: linear-gradient(135deg, #10b981, #059669); }
.category-documents[b-tlbubm065p] { background: linear-gradient(135deg, #6366f1, #4f46e5); }
.category-esignature[b-tlbubm065p] { background: linear-gradient(135deg, #f59e0b, #d97706); }
.category-applications[b-tlbubm065p] { background: linear-gradient(135deg, #3b82f6, #2563eb); }
.category-claims[b-tlbubm065p] { background: linear-gradient(135deg, #8b5cf6, #7c3aed); }
.category-admin[b-tlbubm065p] { background: linear-gradient(135deg, #64748b, #475569); }

/* Content Wrapper */
.topic-content-wrapper[b-tlbubm065p] {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 1.5rem;
    max-width: 1400px;
    margin: 0 auto;
}

/* Main Content */
.topic-main-content[b-tlbubm065p] {
    background: white;
    border-radius: 16px;
    padding: 2rem;
    border: 1px solid #e2e8f0;
}

.topic-placeholder[b-tlbubm065p] {
    text-align: center;
    padding: 4rem 2rem;
    color: #64748b;
}

.topic-placeholder i[b-tlbubm065p] {
    font-size: 3rem;
    color: #cbd5e1;
    margin-bottom: 1rem;
}

.topic-placeholder h3[b-tlbubm065p] {
    font-size: 1.25rem;
    color: #1e293b;
    margin-bottom: 0.5rem;
}

/* Feedback Section */
.feedback-section[b-tlbubm065p] {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid #e2e8f0;
}

.feedback-card[b-tlbubm065p] {
    background: #f8fafc;
    border-radius: 12px;
    padding: 1.5rem;
    text-align: center;
}

.feedback-card h4[b-tlbubm065p] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1e293b;
    margin: 0 0 1rem 0;
}

.feedback-buttons[b-tlbubm065p] {
    display: flex;
    justify-content: center;
    gap: 1rem;
}

.feedback-btn[b-tlbubm065p] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    border-radius: 8px;
    border: 2px solid #e2e8f0;
    background: white;
    cursor: pointer;
    transition: all 0.2s;
    font-weight: 500;
}

.feedback-btn:hover[b-tlbubm065p] {
    border-color: #3b82f6;
}

.feedback-btn.yes:hover[b-tlbubm065p],
.feedback-btn.yes.selected[b-tlbubm065p] {
    border-color: #10b981;
    background: #ecfdf5;
    color: #059669;
}

.feedback-btn.no:hover[b-tlbubm065p],
.feedback-btn.no.selected[b-tlbubm065p] {
    border-color: #ef4444;
    background: #fef2f2;
    color: var(--error-600);
}

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

.feedback-comment[b-tlbubm065p] {
    margin-top: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.feedback-comment textarea[b-tlbubm065p] {
    resize: none;
}

.feedback-thank-you[b-tlbubm065p] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    color: #059669;
    font-weight: 500;
}

.feedback-thank-you i[b-tlbubm065p] {
    font-size: 1.25rem;
}

/* Sidebar */
.topic-sidebar[b-tlbubm065p] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.sidebar-section[b-tlbubm065p] {
    background: white;
    border-radius: 12px;
    padding: 1.25rem;
    border: 1px solid #e2e8f0;
}

.sidebar-title[b-tlbubm065p] {
    font-size: 1rem;
    font-weight: 600;
    color: #1e293b;
    margin: 0 0 1rem 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.sidebar-title i[b-tlbubm065p] {
    color: #3b82f6;
}

/* Related Topics */
.related-topics-list[b-tlbubm065p] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.related-topic-link[b-tlbubm065p] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    border-radius: 8px;
    text-decoration: none;
    transition: background 0.2s;
    border: 1px solid #f1f5f9;
}

.related-topic-link:hover[b-tlbubm065p] {
    background: #f8fafc;
    border-color: #e2e8f0;
}

.related-topic-icon[b-tlbubm065p] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 0.875rem;
    flex-shrink: 0;
}

.related-topic-content[b-tlbubm065p] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.related-topic-title[b-tlbubm065p] {
    font-weight: 500;
    color: #1e293b;
    font-size: 0.875rem;
}

.related-topic-category[b-tlbubm065p] {
    font-size: 0.75rem;
    color: #64748b;
}

/* Quick Links */
.quick-links[b-tlbubm065p] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.quick-link[b-tlbubm065p] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    color: #3b82f6;
    text-decoration: none;
    border-radius: 6px;
    font-size: 0.875rem;
    transition: background 0.2s;
}

.quick-link:hover[b-tlbubm065p] {
    background: #eff6ff;
}

.quick-link i[b-tlbubm065p] {
    font-size: 1rem;
}

/* Help Card */
.sidebar-section.help-card[b-tlbubm065p] {
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border-color: #bfdbfe;
    text-align: center;
}

.help-card > i[b-tlbubm065p] {
    font-size: 2rem;
    color: #3b82f6;
    margin-bottom: 0.75rem;
}

.help-card h4[b-tlbubm065p] {
    font-size: 1rem;
    font-weight: 600;
    color: #1e293b;
    margin: 0 0 0.25rem 0;
}

.help-card p[b-tlbubm065p] {
    font-size: 0.875rem;
    color: #64748b;
    margin: 0 0 1rem 0;
}

/* Navigation Footer */
.topic-navigation[b-tlbubm065p] {
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid #e2e8f0;
}

.btn-nav[b-tlbubm065p] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    color: #1e293b;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-nav:hover[b-tlbubm065p] {
    background: #f8fafc;
    border-color: #cbd5e1;
}

/* Responsive */
@media (max-width: 1024px) {
    .topic-content-wrapper[b-tlbubm065p] {
        grid-template-columns: 1fr;
    }

    .topic-sidebar[b-tlbubm065p] {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .sidebar-section[b-tlbubm065p] {
        flex: 1;
        min-width: 250px;
    }
}

@media (max-width: 768px) {
    .help-topic-page[b-tlbubm065p] {
        padding: 1rem;
    }

    .topic-header[b-tlbubm065p] {
        flex-direction: column;
        text-align: center;
    }

    .topic-header-icon[b-tlbubm065p] {
        margin: 0 auto;
    }

    .topic-header-meta[b-tlbubm065p] {
        justify-content: center;
    }

    .topic-main-content[b-tlbubm065p] {
        padding: 1.25rem;
    }

    .topic-sidebar[b-tlbubm065p] {
        flex-direction: column;
    }

    .sidebar-section[b-tlbubm065p] {
        min-width: auto;
    }

    .feedback-buttons[b-tlbubm065p] {
        flex-direction: column;
    }

    .feedback-btn[b-tlbubm065p] {
        width: 100%;
        justify-content: center;
    }
}


/* Wiki-style Markdown body + table of contents (feature 032) */
.topic-toc[b-tlbubm065p] {
    background: var(--bg-subtle);
    border: 1px solid var(--border-light);
    border-radius: 10px;
    padding: 0.85rem 1rem;
    margin-bottom: 1.5rem;
}

.topic-toc-label[b-tlbubm065p] {
    display: block;
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted);
    margin-bottom: 0.5rem;
}

.topic-toc ul[b-tlbubm065p] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.topic-toc li[b-tlbubm065p] {
    margin: 0.2rem 0;
}

.topic-toc a[b-tlbubm065p] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    text-decoration: none;
}

.topic-toc a:hover[b-tlbubm065p] {
    color: var(--brand-600);
    text-decoration: underline;
}

.topic-toc-l3[b-tlbubm065p] { padding-left: 0.9rem; }
.topic-toc-l4[b-tlbubm065p] { padding-left: 1.8rem; }

.topic-article-body[b-tlbubm065p] {
    font-size: 1rem;
    line-height: 1.7;
    color: var(--text-primary);
}

.topic-article-body[b-tlbubm065p]  h1,
.topic-article-body[b-tlbubm065p]  h2,
.topic-article-body[b-tlbubm065p]  h3 {
    letter-spacing: -0.01em;
    color: var(--text-primary);
    scroll-margin-top: 1rem;
    margin: 1.75rem 0 0.75rem;
}

.topic-article-body[b-tlbubm065p]  h1 { font-size: 1.5rem; }
.topic-article-body[b-tlbubm065p]  h2 { font-size: 1.25rem; }
.topic-article-body[b-tlbubm065p]  h3 { font-size: 1.05rem; }

.topic-article-body[b-tlbubm065p]  p,
.topic-article-body[b-tlbubm065p]  li {
    color: var(--text-secondary);
}

.topic-article-body[b-tlbubm065p]  a {
    color: var(--brand-600);
}

.topic-article-body[b-tlbubm065p]  code {
    background: var(--bg-subtle);
    padding: 0.1rem 0.4rem;
    border-radius: 6px;
    font-size: 0.9em;
}

.topic-article-body[b-tlbubm065p]  pre {
    background: var(--bg-secondary);
    padding: 1rem;
    border-radius: 10px;
    overflow-x: auto;
}

.topic-article-body[b-tlbubm065p]  img {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
    border: 1px solid var(--border-light);
}

.topic-article-body[b-tlbubm065p]  table {
    width: 100%;
    border-collapse: collapse;
    margin: 1rem 0;
    font-size: 0.9rem;
}

.topic-article-body[b-tlbubm065p]  th,
.topic-article-body[b-tlbubm065p]  td {
    border: 1px solid var(--border-light);
    padding: 0.5rem 0.65rem;
    text-align: left;
}

.topic-article-body[b-tlbubm065p]  th {
    background: var(--bg-subtle);
}

.topic-article-body[b-tlbubm065p]  details.help-details {
    border: 1px solid var(--border-light);
    border-radius: 10px;
    padding: 0.65rem 0.9rem;
    margin: 1rem 0;
    background: var(--bg-subtle);
}

.topic-article-body[b-tlbubm065p]  details.help-details summary {
    cursor: pointer;
    font-weight: 600;
    color: var(--text-primary);
}
/* /Components/Pages/Invoices/Components/ApplicationInvoiceRail.razor.rz.scp.css */
/* Application billing context rail (feature 030, design revision 2). A left
   sidebar card on the invoice detail page — same card language as the page's
   other cards (.card-section: white, 1px #e5e7eb border, 12px radius, soft
   shadow) — with a header block (caps label, position badge, combined billed)
   above a vertical stack of invoice items. Sticks below the app topbar while
   the main column scrolls. */

.app-invoice-rail[b-i38n33rang] {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 1rem 1rem 1.1rem;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
    /* Stick just below the app topbar (64px sticky, leca-theme) while the
       invoice document scrolls; a long list scrolls inside the rail instead
       of pushing the page wider. */
    position: sticky;
    top: calc(var(--topbar-height, 64px) + 1rem);
    max-height: calc(100vh - var(--topbar-height, 64px) - 2rem);
    overflow-y: auto;
}

/* ── Header block: caps label + position badge, combined billed beneath ── */

.rail-head[b-i38n33rang] {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    padding: 0 0.25rem;
    margin-bottom: 0.85rem;
}

/* Same voice as .card-section h2 on the detail page — small caps, accent,
   muted icon — so the rail reads as a native sibling of Bill To / Dates. */
.rail-title[b-i38n33rang] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #2c5aa0;
    font-weight: 700;
    margin: 0;
}

.rail-title > i[b-i38n33rang] {
    font-size: 0.85rem;
    color: #94a3b8;
}

/* "2 of 3" position badge — the pay-ledger count pill's visual family. */
.rail-count[b-i38n33rang] {
    margin-left: auto;
    font-size: 0.7rem;
    font-weight: 600;
    color: #475569;
    background: #f1f5f9;
    border-radius: 999px;
    padding: 0.05rem 0.5rem;
    text-transform: none;
    letter-spacing: 0;
    white-space: nowrap;
}

/* Combined billed — prominent, dark, tabular; the honesty caveat sits under
   it in small muted amber (same tone as round 1's inline caveat). */
.rail-billed[b-i38n33rang] {
    display: flex;
    flex-direction: column;
}

.billed-label[b-i38n33rang] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #6b7280;
    font-weight: 600;
}

.billed-value[b-i38n33rang] {
    font-size: 1.35rem;
    font-weight: 700;
    color: #111827;
    line-height: 1.2;
    font-variant-numeric: tabular-nums;
}

.billed-caveat[b-i38n33rang] {
    font-size: 0.72rem;
    color: #92600a;
    margin-top: 0.1rem;
}

/* ── Item stack: one card per sibling invoice, vertical, never scrolls
      sideways ── */

.rail-list[b-i38n33rang] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* One card per sibling invoice: pills row on top, invoice number as the
   title line, the amount as the dominant element. */
.rail-item[b-i38n33rang] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    padding: 0.6rem 0.75rem 0.55rem;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    background: #fff;
    text-decoration: none;
    color: #475569;
    transition: border-color 120ms ease, box-shadow 120ms ease, transform 120ms ease;
}

.item-pills[b-i38n33rang] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.item-number[b-i38n33rang] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #475569;
    letter-spacing: 0.01em;
    line-height: 1.2;
    white-space: nowrap;
}

.item-number-draft[b-i38n33rang] {
    color: #6b7280;
    font-weight: 500;
}

/* The amount is what an underwriter scans for — largest, darkest, tabular. */
.item-total[b-i38n33rang] {
    font-size: 1.05rem;
    font-weight: 700;
    color: #111827;
    line-height: 1.1;
    font-variant-numeric: tabular-nums;
}

/* Navigable sibling — border shift + slight elevation on hover, visible
   focus ring for keyboard users. */
a.rail-item[b-i38n33rang] {
    cursor: pointer;
}

a.rail-item:hover[b-i38n33rang] {
    border-color: #94b3d8;
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.08);
    transform: translateY(-1px);
}

a.rail-item:hover .item-number[b-i38n33rang] { color: #2c5aa0; }

a.rail-item:focus-visible[b-i38n33rang] {
    outline: 2px solid #2c5aa0;
    outline-offset: 2px;
}

/* The invoice being viewed — brand wash + accent border + accent LEFT edge
   (inset shadow, so the highlighted card stays the exact same size as its
   navigable neighbors). Inert (no anchor), clearly distinct from hover. */
.rail-item-current[b-i38n33rang] {
    border-color: #2c5aa0;
    background: #f0f5fc;
    box-shadow: inset 3px 0 0 0 #2c5aa0;
}

.rail-item-current .item-number[b-i38n33rang] { color: #1e3a5f; }

/* Voided sibling — kept for audit context, visibly excluded from the combined
   figure (struck number and amount, same affordance as reversed payments in
   the pay ledger). */
.rail-item-void[b-i38n33rang] {
    opacity: 0.6;
    background: #fafafa;
}

.rail-item-void .item-number[b-i38n33rang] {
    text-decoration: line-through;
}

.rail-item-void .item-total[b-i38n33rang] {
    text-decoration: line-through;
    color: #9ca3af;
    font-weight: 600;
}

/* Below the page's rail breakpoint the rail is stacked as a full-width block
   above the invoice card (the page collapses its grid) — stop sticking, let
   it size naturally, and put the combined figure back on the header row. */
@media (max-width: 991px) {
    .app-invoice-rail[b-i38n33rang] {
        position: static;
        max-height: none;
        overflow-y: visible;
    }

    .rail-head[b-i38n33rang] {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
        gap: 0.5rem 1.5rem;
    }

    .rail-billed[b-i38n33rang] {
        align-items: flex-end;
        text-align: right;
    }

    .rail-title[b-i38n33rang] { padding-top: 0.2rem; }

    .rail-count[b-i38n33rang] { margin-left: 0; }
}
/* /Components/Pages/Invoices/Components/BoundInvoiceRecoveryBanner.razor.rz.scp.css */
.invoice-recovery-banner[b-5rsbwaqnrz] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin: 1rem 1.5rem;
    padding: 0.875rem 1rem;
    background: linear-gradient(90deg, #fff8e6, #fffdf5);
    border: 1px solid #f0c95c;
    border-left: 4px solid #d4a017;
    border-radius: 6px;
}

.banner-icon[b-5rsbwaqnrz] {
    font-size: 1.25rem;
    color: #d4a017;
    flex-shrink: 0;
    line-height: 1;
    padding-top: 0.15rem;
}

.banner-body[b-5rsbwaqnrz] {
    flex: 1;
    min-width: 0;
}

.banner-title[b-5rsbwaqnrz] {
    font-weight: 600;
    color: #6b4f0f;
    margin-bottom: 0.15rem;
}

.banner-text[b-5rsbwaqnrz] {
    font-size: 0.875rem;
    color: #735a1f;
}

.banner-message[b-5rsbwaqnrz] {
    margin-top: 0.5rem;
    padding: 0.4rem 0.6rem;
    font-size: 0.85rem;
    border-radius: 4px;
}

.banner-success[b-5rsbwaqnrz] {
    background: #dcfce7;
    color: #166534;
}

.banner-error[b-5rsbwaqnrz] {
    background: #fee2e2;
    color: #991b1b;
}

.banner-actions[b-5rsbwaqnrz] {
    flex-shrink: 0;
    align-self: center;
}

/* Subtle button — outline style with banner-tone colors. Stays quiet inside
   an already-amber warning banner; hover fills in for affordance. */
.banner-btn[b-5rsbwaqnrz] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.35rem 0.85rem;
    background: transparent;
    border: 1px solid #c89512;
    border-radius: 6px;
    color: #6b4f0f;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 120ms, color 120ms;
}

.banner-btn:hover:not(:disabled)[b-5rsbwaqnrz] {
    background: #d4a017;
    color: white;
}

.banner-btn:disabled[b-5rsbwaqnrz] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Icon follows button text color — never the banner's gold cascade. */
.banner-btn i[b-5rsbwaqnrz] {
    color: inherit;
}
/* /Components/Pages/Invoices/Components/InvoiceKindPill.razor.rz.scp.css */
.kind-pill[b-djytx7le7b] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.15rem 0.6rem 0.15rem 0.5rem;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    line-height: 1.4;
    border: 1px solid transparent;
    white-space: nowrap;
}

.kind-pill-text[b-djytx7le7b] {
    line-height: 1;
}

.kind-pill i[b-djytx7le7b] {
    font-size: 0.75rem;
    line-height: 1;
    color: currentColor;
}

/* Diligence — amber tone, distinct from any of the status pills so the two
   axes never visually conflict on the same row. */
.kind-pill-diligence[b-djytx7le7b] {
    background: #fffbeb;
    color: #b45309;
    border-color: #fde68a;
}

/* Policy — slate/neutral so the eye reads the status pill as the primary
   signal next to it. */
.kind-pill-policy[b-djytx7le7b] {
    background: #f1f5f9;
    color: #475569;
    border-color: #e2e8f0;
}

/* Manual — indigo tone, distinct from the two auto kinds so an ad-hoc invoice
   is recognizable at a glance. */
.kind-pill-manual[b-djytx7le7b] {
    background: #eef2ff;
    color: #4338ca;
    border-color: #c7d2fe;
}
/* /Components/Pages/Invoices/Components/InvoiceStatusPill.razor.rz.scp.css */
.status-pill[b-kyk8oysife] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.15rem 0.6rem 0.15rem 0.5rem;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    line-height: 1.4;
    border: 1px solid transparent;
    white-space: nowrap;
}

.status-pill-text[b-kyk8oysife] {
    /* Wrap text in its own span so the icon stays vertically centered */
    line-height: 1;
}

/* Status-specific icon. Sized small so the pill stays compact; inherits the
   pill text color so it always matches the variant tone (no per-variant icon
   color needed). */
.status-pill i[b-kyk8oysife] {
    font-size: 0.75rem;
    line-height: 1;
    color: currentColor;
}

/* ── Variants — tinted background, darker matching text ───────────── */

.status-pill-draft[b-kyk8oysife] {
    background: #f1f5f9;
    color: #475569;
    border-color: #e2e8f0;
}

.status-pill-issued[b-kyk8oysife] {
    background: #eff6ff;
    color: #1d4ed8;
    border-color: #bfdbfe;
}

.status-pill-partial[b-kyk8oysife] {
    background: #fefce8;
    color: #a16207;
    border-color: #fef08a;
}

.status-pill-paid[b-kyk8oysife] {
    background: #f0fdf4;
    color: #15803d;
    border-color: #bbf7d0;
}

.status-pill-void[b-kyk8oysife] {
    background: #fef2f2;
    color: #b91c1c;
    border-color: #fecaca;
}

.status-pill-overdue[b-kyk8oysife] {
    background: #fff7ed;
    color: #c2410c;
    border-color: #fed7aa;
}
/* /Components/Pages/Invoices/Components/InvoiceStatusTimeline.razor.rz.scp.css */
.status-timeline[b-dnmdnaegrl] { padding: 0.25rem 0; }

.timeline-empty[b-dnmdnaegrl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #94a3b8;
    font-size: 0.875rem;
    padding: 0.75rem 0;
}

.timeline[b-dnmdnaegrl] {
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
}

.timeline-item[b-dnmdnaegrl] {
    position: relative;
    display: grid;
    grid-template-columns: 1.75rem 1fr;
    gap: 0.85rem;
    padding-bottom: 1.1rem;
}

.timeline-item:last-child[b-dnmdnaegrl] { padding-bottom: 0; }

/* Connector rail — drawn from each node down to the next, behind the nodes. */
.timeline-item:not(:last-child)[b-dnmdnaegrl]::before {
    content: "";
    position: absolute;
    left: 0.8rem;
    top: 1.75rem;
    bottom: -0.2rem;
    width: 2px;
    background: #e5e7eb;
}

/* ── Node (icon disc) ─────────────────────────────────────────────── */

.timeline-node[b-dnmdnaegrl] {
    position: relative;
    z-index: 1;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: #fff;
    background: #94a3b8;
    box-shadow: 0 0 0 4px #fff, 0 1px 2px rgba(15, 23, 42, 0.12);
}

.timeline-node i[b-dnmdnaegrl] { font-size: 0.8rem; line-height: 1; }

.node-draft[b-dnmdnaegrl] { background: #94a3b8; }
.node-issued[b-dnmdnaegrl] { background: #2c5aa0; }
.node-partial[b-dnmdnaegrl] { background: #ca8a04; }
.node-paid[b-dnmdnaegrl] { background: #16a34a; }
.node-void[b-dnmdnaegrl] { background: #dc2626; }

/* ── Content card ─────────────────────────────────────────────────── */

.timeline-card[b-dnmdnaegrl] {
    background: #fff;
    border: 1px solid #eef2f6;
    border-radius: 10px;
    padding: 0.6rem 0.8rem;
    transition: border-color 120ms, box-shadow 120ms;
}

.timeline-card:hover[b-dnmdnaegrl] {
    border-color: #e2e8f0;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
}

.timeline-head[b-dnmdnaegrl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.timeline-transition[b-dnmdnaegrl] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    flex-wrap: wrap;
}

.t-from[b-dnmdnaegrl] {
    font-size: 0.85rem;
    font-weight: 500;
    color: #94a3b8;
}

.t-arrow[b-dnmdnaegrl] {
    font-size: 0.75rem;
    color: #cbd5e1;
}

.timeline-time[b-dnmdnaegrl] {
    font-size: 0.75rem;
    color: #94a3b8;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.timeline-actor[b-dnmdnaegrl] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    margin-top: 0.3rem;
    font-size: 0.78rem;
    color: #64748b;
}

.timeline-actor i[b-dnmdnaegrl] { font-size: 0.85rem; color: #94a3b8; }

.timeline-reason[b-dnmdnaegrl] {
    margin-top: 0.5rem;
    padding: 0.4rem 0.65rem;
    background: #f8fafc;
    border-left: 2px solid #cbd5e1;
    border-radius: 0 6px 6px 0;
    font-size: 0.85rem;
    color: #475569;
    line-height: 1.45;
}
/* /Components/Pages/Invoices/Components/NetSuiteCsvPreviewModal.razor.rz.scp.css */
.ns-csv-preview-heading[b-jsgzbqvhrh] {
    min-width: 0;
}

/* Mirrors the subtitle treatment of other header-with-icon modals
   (e.g. FileClaimModal's .claim-modal-subtitle). */
.ns-csv-preview-subtitle[b-jsgzbqvhrh] {
    font-size: 0.8rem;
    color: var(--text-muted, #64748b);
    line-height: 1.45;
    margin: 2px 0 0;
}

.ns-csv-preview-scroll[b-jsgzbqvhrh] {
    max-height: 55vh;
    overflow: auto;
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 6px;
}

.ns-csv-preview-table[b-jsgzbqvhrh] {
    border-collapse: collapse;
    font-size: 0.72rem;
    font-family: ui-monospace, "SF Mono", monospace;
    white-space: nowrap;
}

.ns-csv-preview-table th[b-jsgzbqvhrh],
.ns-csv-preview-table td[b-jsgzbqvhrh] {
    padding: 0.3rem 0.6rem;
    border-bottom: 1px solid var(--border, #e5e7eb);
    border-right: 1px solid var(--border, #e5e7eb);
    text-align: left;
    /* Single long fields (payment URLs, logo links) shouldn't blow the column out —
       ellipsize; the full value is on the cell's title tooltip. */
    max-width: 20rem;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ns-csv-preview-table th:last-child[b-jsgzbqvhrh],
.ns-csv-preview-table td:last-child[b-jsgzbqvhrh] {
    border-right: none;
}

.ns-csv-preview-table th[b-jsgzbqvhrh] {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--bg-muted, #f9fafb);
    font-family: inherit;
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--text-muted, #6b7280);
}

.ns-csv-preview-table tbody tr:nth-child(even)[b-jsgzbqvhrh] {
    background: var(--bg-muted, #f9fafb);
}

.ns-csv-preview-table tbody tr.ns-csv-row-tax[b-jsgzbqvhrh] {
    background: #FFFBEB;
}

.ns-csv-preview-table tbody tr.ns-csv-row-tax:nth-child(even)[b-jsgzbqvhrh] {
    background: #FEF3C7;
}

.ns-csv-preview-table tbody tr:last-child td[b-jsgzbqvhrh] {
    border-bottom: none;
}
/* /Components/Pages/Invoices/Components/NetSuiteSyncPill.razor.rz.scp.css */
/* Same shape language as InvoiceStatusPill so the two pills read as siblings
   when shown side-by-side in the table. Smaller min-width to keep the NS column
   tight, and a subtler palette so it doesn't out-compete the primary status. */

.ns-pill[b-hkv33d5r0z] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.12rem 0.5rem;
    border-radius: 999px;
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    line-height: 1.4;
    border: 1px solid transparent;
    white-space: nowrap;
}

.ns-pill-text[b-hkv33d5r0z] {
    line-height: 1;
}

.ns-pill i[b-hkv33d5r0z] {
    font-size: 0.72rem;
    line-height: 1;
    color: currentColor;
}

/* Attempt counter on Failed pills — tiny inline badge so accounting can see at
   a glance "this has retried N times" without hovering. */
.ns-pill-count[b-hkv33d5r0z] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.1rem;
    height: 1.1rem;
    padding: 0 0.3rem;
    margin-left: 0.15rem;
    background: rgba(255, 255, 255, 0.6);
    border-radius: 999px;
    font-size: 0.6rem;
    color: inherit;
}

/* ── Variants ────────────────────────────────────────────────────────── */

.ns-pill-pending[b-hkv33d5r0z] {
    background: #fefce8;
    color: #854d0e;
    border-color: #fde68a;
}

.ns-pill-synced[b-hkv33d5r0z] {
    background: #ecfeff;
    color: #0e7490;
    border-color: #a5f3fc;
}

.ns-pill-failed[b-hkv33d5r0z] {
    background: #fef2f2;
    color: #b91c1c;
    border-color: #fecaca;
}
/* /Components/Pages/Invoices/InvoiceDetailPage.razor.rz.scp.css */
.invoice-detail[b-5b2q4h4pf8] {
    padding: 1.5rem;
    max-width: 1100px;
    margin: 0 auto;
}

/* ── Application invoice rail shell (feature 030 rev 2) ───────────────
   .with-rail is applied only when the left rail actually renders (two or
   more viewer-visible invoices on the application). Without it the shell
   is a plain block and the page is byte-identical to the pre-030 layout. */

.invoice-detail.with-rail[b-5b2q4h4pf8] {
    max-width: 1400px;
}

.detail-shell[b-5b2q4h4pf8] {
    min-width: 0;
}

.with-rail .detail-shell[b-5b2q4h4pf8] {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 1.25rem;
    align-items: start;
}

.detail-content[b-5b2q4h4pf8] {
    min-width: 0;
}

/* With the main column narrowed by the rail, the inner document/payments
   two-column body collapses earlier than the no-rail 900px breakpoint. */
@media (max-width: 1280px) {
    .with-rail .detail-columns[b-5b2q4h4pf8] {
        grid-template-columns: 1fr;
    }
}

/* Below the desktop breakpoint the rail becomes a full-width block stacked
   ABOVE the invoice card — single column, rail first in DOM order; it never
   turns into a horizontal scroller. */
@media (max-width: 991px) {
    .with-rail .detail-shell[b-5b2q4h4pf8] {
        grid-template-columns: 1fr;
    }
}

.back-link[b-5b2q4h4pf8] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.85rem;
    text-decoration: none;
    color: #475569;
    font-size: 0.875rem;
}

.back-link:hover[b-5b2q4h4pf8] { color: #2c5aa0; }

.state-block[b-5b2q4h4pf8] {
    padding: 2.5rem 1rem;
    text-align: center;
    color: #6b7280;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
}

/* Skeleton loading state */
@keyframes inv-detail-skel-pulse-b-5b2q4h4pf8 {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.skel-block[b-5b2q4h4pf8] {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: inv-detail-skel-pulse-b-5b2q4h4pf8 1.5s ease-in-out infinite;
    border-radius: 4px;
}

.inv-skeleton[b-5b2q4h4pf8] {
    padding: 0;
}

.skel-hero[b-5b2q4h4pf8] {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 2rem;
    padding: 1.25rem 1.5rem;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    margin-bottom: 0.85rem;
}

.skel-hero-left[b-5b2q4h4pf8] {
    flex: 1;
}

.skel-hero-right[b-5b2q4h4pf8] {
    text-align: right;
}

.skel-action-bar[b-5b2q4h4pf8] {
    display: flex;
    gap: 0.4rem;
    margin-bottom: 1.25rem;
    padding: 0 0.25rem;
    flex-wrap: wrap;
}

.skel-meta-grid[b-5b2q4h4pf8] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.85rem;
    margin-bottom: 0.85rem;
}

.skel-card-section[b-5b2q4h4pf8] {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 1.25rem 1.5rem;
    margin-bottom: 0.85rem;
}

.skel-line-row[b-5b2q4h4pf8] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.6rem 0;
    border-bottom: 1px solid #f1f5f9;
}

.skel-line-row:last-child[b-5b2q4h4pf8] {
    border-bottom: none;
}

@media (max-width: 720px) {
    .skel-meta-grid[b-5b2q4h4pf8] {
        grid-template-columns: 1fr;
    }
}

/* ── Hero header ──────────────────────────────────────────────────── */

.hero[b-5b2q4h4pf8] {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 2rem;
    padding: 1.4rem 1.5rem;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    margin-bottom: 0.85rem;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.hero-title-row[b-5b2q4h4pf8] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    flex-wrap: wrap;
    margin-bottom: 0.3rem;
}

.hero-title[b-5b2q4h4pf8] {
    margin: 0;
    font-size: 1.65rem;
    font-weight: 700;
    color: #111827;
    letter-spacing: -0.01em;
}

.hero-subtitle[b-5b2q4h4pf8] {
    color: #6b7280;
    font-size: 0.9rem;
}

.hero-subtitle .dot[b-5b2q4h4pf8] { margin: 0 0.45rem; color: #cbd5e1; }

.link-muted[b-5b2q4h4pf8] {
    color: #475569;
    text-decoration: none;
    font-weight: 500;
}
.link-muted:hover[b-5b2q4h4pf8] { color: #2c5aa0; text-decoration: underline; }

.total-display[b-5b2q4h4pf8] {
    text-align: right;
}

.total-label[b-5b2q4h4pf8] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #6b7280;
    font-weight: 600;
}

.total-value[b-5b2q4h4pf8] {
    font-size: 2rem;
    font-weight: 700;
    color: #2c5aa0;
    line-height: 1.1;
    font-variant-numeric: tabular-nums;
    margin-top: 0.15rem;
}

/* ── Hero payment progress ────────────────────────────────────────── */

.pay-progress[b-5b2q4h4pf8] {
    margin-top: 0.6rem;
    width: 220px;
    max-width: 100%;
    margin-left: auto;
}

.pay-progress-track[b-5b2q4h4pf8] {
    height: 6px;
    background: #e2e8f0;
    border-radius: 999px;
    overflow: hidden;
}

.pay-progress-fill[b-5b2q4h4pf8] {
    height: 100%;
    background: #16a34a;
    border-radius: 999px;
    transition: width 0.3s ease;
}

.pay-progress-meta[b-5b2q4h4pf8] {
    display: flex;
    justify-content: space-between;
    margin-top: 0.3rem;
    font-size: 0.72rem;
    font-variant-numeric: tabular-nums;
}

.pay-progress-meta .pp-paid[b-5b2q4h4pf8] { color: #15803d; font-weight: 600; }
.pay-progress-meta .pp-bal[b-5b2q4h4pf8] { color: #6b7280; }

.pay-paid-badge[b-5b2q4h4pf8] {
    margin-top: 0.5rem;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: #15803d;
}

/* ── Action bar ───────────────────────────────────────────────────── */

/* Buttons are the canonical Bootstrap .btn family (themed in leca-theme.css) —
   same convention as /admin/netsuite-sync and the Invoices list. */
.action-bar[b-5b2q4h4pf8] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem 1rem;
    margin-bottom: 1.25rem;
    padding: 0 0.25rem;
    flex-wrap: wrap;
}

.action-group[b-5b2q4h4pf8] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex-wrap: wrap;
}

/* Passive status pills that sit inline with the .inv-btn action buttons
   (Auto-issues on NetSuite sync / Number assigned on Issue). Not clickable —
   they only mirror the buttons' box metrics (padding, border, radius, font,
   line-height) so the row reads as one aligned set instead of a tall button
   next to a short badge. Bootstrap's bg-*-subtle / text-*-emphasis colours are
   kept untouched — this class only normalises the height/shape. */
.action-status-badge[b-5b2q4h4pf8] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.4rem 0.85rem;
    border: 1px solid transparent;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.2;
}

/* Keeps the state-transition cluster hugging the right edge even when the bar
   wraps to two rows on narrow screens — without this, the wrapped second row
   left-aligns under the file actions and the bar reads as broken. */
.action-group-primary[b-5b2q4h4pf8] {
    margin-left: auto;
}

/* Confirmation-modal body helpers. The child content passed to the shared
   ConfirmationModal is authored here, so it carries this page's isolation scope
   and these rules reach it. */
.modal-lead[b-5b2q4h4pf8] {
    font-size: 0.9rem;
    color: #475569;
    margin: 0 0 1rem;
    line-height: 1.5;
}

.modal-field[b-5b2q4h4pf8] { margin-bottom: 0.85rem; }
.modal-field:last-child[b-5b2q4h4pf8] { margin-bottom: 0; }

.modal-label[b-5b2q4h4pf8] {
    display: block;
    font-size: 0.8rem;
    font-weight: 600;
    color: #374151;
    margin-bottom: 0.3rem;
}

.modal-error[b-5b2q4h4pf8],
.modal-hint[b-5b2q4h4pf8] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    margin-top: 0.35rem;
    font-size: 0.78rem;
}

.modal-error[b-5b2q4h4pf8] { color: #b91c1c; }
.modal-hint[b-5b2q4h4pf8] { color: #15803d; }

/* ── Subtle, dismissable action alert ─────────────────────────────── */

.inv-alert[b-5b2q4h4pf8] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 0.85rem;
    margin-bottom: 0.85rem;
    border: 1px solid transparent;
    border-radius: 8px;
    font-size: 0.875rem;
    animation: inv-alert-in-b-5b2q4h4pf8 0.15s ease-out;
}

@keyframes inv-alert-in-b-5b2q4h4pf8 {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
}

.inv-alert-icon[b-5b2q4h4pf8] { font-size: 0.95rem; }
.inv-alert-text[b-5b2q4h4pf8] { flex: 1; }

.inv-alert-success[b-5b2q4h4pf8] {
    background: #f0fdf4;
    border-color: #bbf7d0;
    color: #15803d;
}

.inv-alert-error[b-5b2q4h4pf8] {
    background: #fef2f2;
    border-color: #fecaca;
    color: #b91c1c;
}

.inv-alert-close[b-5b2q4h4pf8] {
    background: none;
    border: none;
    padding: 0.15rem;
    line-height: 1;
    color: currentColor;
    opacity: 0.55;
    cursor: pointer;
    border-radius: 4px;
    transition: opacity 120ms, background-color 120ms;
}

.inv-alert-close:hover[b-5b2q4h4pf8] {
    opacity: 1;
    background: rgba(0, 0, 0, 0.06);
}

.inv-alert-close i[b-5b2q4h4pf8] { font-size: 0.8rem; }

/* ── Section cards ────────────────────────────────────────────────── */

.card-section[b-5b2q4h4pf8] {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 1.25rem 1.5rem;
    margin-bottom: 0.85rem;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.card-section h2[b-5b2q4h4pf8] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #2c5aa0;
    font-weight: 700;
    margin: 0 0 0.85rem 0;
}

.card-section h2 > i[b-5b2q4h4pf8] {
    font-size: 0.85rem;
    color: #94a3b8;
}

.card-section h2 .small[b-5b2q4h4pf8] {
    font-size: 0.7rem;
    color: #94a3b8;
    font-weight: 500;
    margin-left: 0.4rem;
    text-transform: none;
    letter-spacing: 0;
}

.meta-grid[b-5b2q4h4pf8] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.85rem;
    margin-bottom: 0.85rem;
}

.meta-grid .card-section[b-5b2q4h4pf8] { margin-bottom: 0; }

@media (max-width: 720px) {
    .meta-grid[b-5b2q4h4pf8] { grid-template-columns: 1fr; }
}

/* ── Two-column body: document (main) + payments rail ─────────────── */

.detail-columns[b-5b2q4h4pf8] {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr);
    gap: 0.85rem;
    align-items: start;
}

.detail-main[b-5b2q4h4pf8], .detail-rail[b-5b2q4h4pf8] {
    min-width: 0;
}

/* Cards inside the rail sit flush; the rail itself owns the vertical rhythm. */
.detail-rail .card-section[b-5b2q4h4pf8] { margin-bottom: 0.85rem; }
.detail-rail .card-section:last-child[b-5b2q4h4pf8] { margin-bottom: 0; }

/* Collapse to a single column on narrower viewports. */
@media (max-width: 900px) {
    .detail-columns[b-5b2q4h4pf8] { grid-template-columns: 1fr; }
}

/* ── Payment summary (rail) ───────────────────────────────────────── */

.pay-summary[b-5b2q4h4pf8] {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    overflow: hidden;
}

.pay-summary-row[b-5b2q4h4pf8] {
    display: flex;
    justify-content: space-between;
    padding: 0.5rem 0.75rem;
    font-size: 0.9rem;
    color: #475569;
    border-bottom: 1px solid #f1f5f9;
}

.pay-summary-row:last-child[b-5b2q4h4pf8] { border-bottom: none; }

.pay-summary-balance[b-5b2q4h4pf8] {
    background: #f0f6ff;
    font-weight: 700;
    color: #2c5aa0;
    font-size: 1rem;
}

/* ── Payment ledger (rail, compact list) ──────────────────────────── */

.pay-ledger-wrap[b-5b2q4h4pf8] {
    margin-top: 0.85rem;
    padding-top: 0.85rem;
    border-top: 1px solid #f1f5f9;
}

.pay-ledger-head[b-5b2q4h4pf8] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #64748b;
    margin-bottom: 0.5rem;
}

.pay-ledger-head i[b-5b2q4h4pf8] { font-size: 0.8rem; color: #94a3b8; }

.pay-ledger-count[b-5b2q4h4pf8] {
    margin-left: auto;
    font-size: 0.7rem;
    font-weight: 600;
    color: #475569;
    background: #f1f5f9;
    border-radius: 999px;
    padding: 0.05rem 0.45rem;
    text-transform: none;
    letter-spacing: 0;
}

.pay-ledger[b-5b2q4h4pf8] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.pay-ledger-item[b-5b2q4h4pf8] {
    padding: 0.55rem 0;
    border-bottom: 1px solid #f1f5f9;
}

.pay-ledger-item:last-child[b-5b2q4h4pf8] { border-bottom: none; }

.pli-top[b-5b2q4h4pf8] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.pli-amount[b-5b2q4h4pf8] {
    font-weight: 600;
    color: #111827;
}

.pli-meta[b-5b2q4h4pf8] {
    font-size: 0.78rem;
    color: #6b7280;
    margin-top: 0.15rem;
}

.pay-ledger-item.is-reversed .pli-amount[b-5b2q4h4pf8] {
    text-decoration: line-through;
    color: #9ca3af;
}

.pli-reversed[b-5b2q4h4pf8] {
    font-size: 0.72rem;
    color: #b91c1c;
    margin-top: 0.2rem;
}

.pli-reverse[b-5b2q4h4pf8] {
    font-size: 0.78rem;
    margin-top: 0.2rem;
}

/* ── Bill-to ──────────────────────────────────────────────────────── */

.entity-name[b-5b2q4h4pf8] {
    font-size: 1rem;
    font-weight: 600;
    color: #111827;
    margin: 0 0 0.2rem;
}

.address-line[b-5b2q4h4pf8] {
    margin: 0.05rem 0;
    color: #1f2937;
    font-size: 0.9rem;
}

.contact-line[b-5b2q4h4pf8] {
    margin-top: 0.6rem;
    color: #1f2937;
    font-size: 0.875rem;
}

.contact-line i[b-5b2q4h4pf8] { color: #6b7280; margin-right: 0.25rem; }

.muted[b-5b2q4h4pf8] { color: #6b7280; }

.muted i[b-5b2q4h4pf8] {
    margin-right: 0.25rem;
}

/* ── Dates list ───────────────────────────────────────────────────── */

.date-list[b-5b2q4h4pf8] {
    display: grid;
    grid-template-columns: 90px 1fr;
    gap: 0.3rem 0.85rem;
    margin: 0;
    font-size: 0.875rem;
}

.date-list dt[b-5b2q4h4pf8] {
    color: #6b7280;
    font-weight: 500;
}

.date-list dd[b-5b2q4h4pf8] {
    margin: 0;
    color: #111827;
    font-variant-numeric: tabular-nums;
}

.ref-callout[b-5b2q4h4pf8] {
    margin-top: 0.85rem;
    padding: 0.55rem 0.75rem;
    background: #f8fafc;
    border-left: 3px solid #2c5aa0;
    border-radius: 4px;
}

.ref-callout-danger[b-5b2q4h4pf8] {
    background: #fef2f2;
    border-left-color: #dc2626;
}

.ref-label[b-5b2q4h4pf8] {
    display: block;
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #6b7280;
    font-weight: 600;
    margin-bottom: 0.15rem;
}

.ref-value[b-5b2q4h4pf8] {
    font-size: 0.9rem;
    color: #111827;
}

.ref-callout-danger .ref-label[b-5b2q4h4pf8] { color: #991b1b; }
.ref-callout-danger .ref-value[b-5b2q4h4pf8] { color: #7f1d1d; }

/* ── Line items table + totals ────────────────────────────────────── */

.line-table[b-5b2q4h4pf8] {
    margin-bottom: 0;
}

.line-table thead th[b-5b2q4h4pf8] {
    background: #f8fafc;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #475569;
    font-weight: 600;
    border-bottom: 1px solid #e5e7eb;
}

.line-table td[b-5b2q4h4pf8] { vertical-align: middle; }

.line-kind[b-5b2q4h4pf8] {
    font-size: 0.75rem;
    color: #6b7280;
    background: #f1f5f9;
    padding: 0.15rem 0.5rem;
    border-radius: 4px;
}

/* NetSuite accounting code — mirrors stm-acct-code (StateTaxManagementPage)
   and PremiumBreakdownCard's monospace sub-label. */
.line-acct-code[b-5b2q4h4pf8] {
    font-size: 11px;
    font-weight: 600;
    color: #475569;
    background: #f1f5f9;
    padding: 2px 6px;
    border-radius: 4px;
}

.mono[b-5b2q4h4pf8] { font-variant-numeric: tabular-nums; }

.totals-block[b-5b2q4h4pf8] {
    margin-top: 0.85rem;
    margin-left: auto;
    width: 360px;
    max-width: 100%;
}

.totals-row[b-5b2q4h4pf8] {
    display: flex;
    justify-content: space-between;
    padding: 0.4rem 0.85rem;
    font-size: 0.9rem;
    color: #475569;
    border-bottom: 1px solid #f1f5f9;
}

.totals-row-final[b-5b2q4h4pf8] {
    background: #f0f6ff;
    border: 1px solid #bfdbfe;
    border-radius: 6px;
    margin-top: 0.4rem;
    padding: 0.7rem 0.85rem;
    font-size: 1.05rem;
    font-weight: 700;
    color: #2c5aa0;
}

/* ── Notes ────────────────────────────────────────────────────────── */

.notes-text[b-5b2q4h4pf8] {
    margin: 0;
    color: #1f2937;
    background: #f8fafc;
    padding: 0.75rem 1rem;
    border-left: 3px solid #2c5aa0;
    border-radius: 4px;
    font-size: 0.9rem;
    line-height: 1.5;
}

/* ── Audit table ─────────────────────────────────────────────────── */

.audit-table thead th[b-5b2q4h4pf8] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #475569;
}

.audit-table code[b-5b2q4h4pf8] {
    background: #f8fafc;
    padding: 0.1rem 0.35rem;
    border-radius: 3px;
    border: 1px solid #e5e7eb;
    color: #475569;
}

.audit-table .small[b-5b2q4h4pf8] { font-size: 0.78rem; }

/* ── Webhook delivery panel ─────────────────────────────────────── */

.webhook-table thead th[b-5b2q4h4pf8] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #475569;
}

.webhook-table code[b-5b2q4h4pf8] {
    background: #f8fafc;
    padding: 0.1rem 0.35rem;
    border-radius: 3px;
    border: 1px solid #e5e7eb;
    color: #374151;
    font-size: 0.78rem;
}

/* Tiny status pills — same family as InvoiceStatusPill but scoped to delivery state. */
.webhook-status[b-5b2q4h4pf8] {
    display: inline-block;
    padding: 0.1rem 0.5rem;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border: 1px solid transparent;
}

.webhook-status-pending[b-5b2q4h4pf8] {
    background: #fefce8;
    color: #a16207;
    border-color: #fde68a;
}

.webhook-status-succeeded[b-5b2q4h4pf8] {
    background: #f0fdf4;
    color: #15803d;
    border-color: #bbf7d0;
}

.webhook-status-failed[b-5b2q4h4pf8] {
    background: #fff7ed;
    color: #c2410c;
    border-color: #fed7aa;
}

.webhook-status-abandoned[b-5b2q4h4pf8] {
    background: #fef2f2;
    color: #b91c1c;
    border-color: #fecaca;
}

.text-success[b-5b2q4h4pf8] { color: #15803d; }
.text-danger[b-5b2q4h4pf8] { color: #b91c1c; }
/* /Components/Pages/Invoices/InvoiceEditPage.razor.rz.scp.css */
.invoice-edit[b-fnjgqt1pbx] {
    padding: 1.5rem;
    max-width: 1100px;
    margin: 0 auto;
}

.back-link[b-fnjgqt1pbx] {
    display: inline-block;
    margin-bottom: 0.75rem;
    text-decoration: none;
    color: #2c5aa0;
}

/* Page heading + context subtitle */
.invoice-edit h1[b-fnjgqt1pbx] {
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0 0 0.15rem;
}

/* Each form group reads as a card, consistent with the detail page's sections. */
.form-section[b-fnjgqt1pbx] {
    margin: 1rem 0;
    padding: 1rem 1.25rem;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
}

.form-section h2[b-fnjgqt1pbx] {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #2c5aa0;
    margin-bottom: 0.6rem;
}

.form-section .form-label[b-fnjgqt1pbx] {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #475569;
    font-weight: 600;
    margin-bottom: 0.35rem;
}

.actions[b-fnjgqt1pbx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 1.5rem;
}

/* NetSuite accounting code sub-label — mirrors the detail page's line-acct-code. */
.line-acct-code[b-fnjgqt1pbx] {
    display: inline-block;
    margin-top: 0.25rem;
    font-size: 11px;
    font-weight: 600;
    color: #475569;
    background: #f1f5f9;
    padding: 2px 6px;
    border-radius: 4px;
}
/* /Components/Pages/Invoices/InvoicePreviewPage.razor.rz.scp.css */
.action-bar[b-4ikmdbxacr] {
    display: flex;
    align-items: center;
    padding: 0.75rem 1.5rem;
    background: #f1f5f9;
    border-bottom: 1px solid #e5e7eb;
}

.btn-back[b-4ikmdbxacr], .btn-print[b-4ikmdbxacr] {
    background: white;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    padding: 0.4rem 0.85rem;
    font-size: 0.875rem;
    cursor: pointer;
}

.btn-print[b-4ikmdbxacr] {
    background: #2c5aa0;
    color: white;
    border-color: #2c5aa0;
}

.print-hint[b-4ikmdbxacr] {
    margin-left: 0.75rem;
    font-size: 0.75rem;
    color: #6b7280;
}

.invoice-document[b-4ikmdbxacr] {
    max-width: 8.5in;
    margin: 1.5rem auto;
    padding: 0.75in;
    background: white;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    font-family: Helvetica, Arial, sans-serif;
    color: #1a1a1a;
}

.document-header[b-4ikmdbxacr] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.brand-title[b-4ikmdbxacr] {
    margin: 0;
    font-size: 1.6rem;
    color: #2c5aa0;
}

.brand-subtitle[b-4ikmdbxacr] {
    color: #666;
    font-size: 0.875rem;
    margin: 0;
}

.invoice-label[b-4ikmdbxacr] {
    font-size: 0.75rem;
    letter-spacing: 0.1em;
    color: #6b7280;
}

.invoice-number[b-4ikmdbxacr] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a1a1a;
}

.invoice-status[b-4ikmdbxacr] {
    display: inline-block;
    margin-top: 0.25rem;
    padding: 0.15rem 0.6rem;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.05em;
}

.status-draft[b-4ikmdbxacr] { background: #e5e7eb; color: #4b5563; }
.status-issued[b-4ikmdbxacr] { background: #dbeafe; color: #1e40af; }
.status-paid[b-4ikmdbxacr] { background: #dcfce7; color: #166534; }
.status-void[b-4ikmdbxacr] { background: #fee2e2; color: #991b1b; }

.divider[b-4ikmdbxacr] {
    border: 0;
    border-top: 2px solid #2c5aa0;
    margin: 1rem 0;
}

.meta-row[b-4ikmdbxacr] {
    display: flex;
    gap: 2.5rem;
    margin-bottom: 1.5rem;
    font-size: 0.85rem;
}

.meta-label[b-4ikmdbxacr] {
    display: block;
    color: #6b7280;
    text-transform: uppercase;
    font-size: 0.7rem;
    letter-spacing: 0.05em;
}

.meta-value[b-4ikmdbxacr] {
    font-weight: 600;
}

.section-title[b-4ikmdbxacr] {
    font-size: 0.85rem;
    color: #2c5aa0;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-top: 1.5rem;
    margin-bottom: 0.5rem;
    border-bottom: 1px solid #e5e7eb;
    padding-bottom: 0.25rem;
}

.bill-to-row .block h3[b-4ikmdbxacr] {
    font-size: 0.8rem;
    color: #2c5aa0;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.3rem;
}

.bill-to-row p[b-4ikmdbxacr] {
    margin: 0.1rem 0;
}

.muted[b-4ikmdbxacr] { color: #6b7280; }

.line-table[b-4ikmdbxacr] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
}

.line-table th[b-4ikmdbxacr], .line-table td[b-4ikmdbxacr] {
    padding: 0.5rem 0.75rem;
    border-bottom: 1px solid #e5e7eb;
}

.line-table thead th[b-4ikmdbxacr] {
    background: #f1f5f9;
    font-weight: 600;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.text-end[b-4ikmdbxacr] { text-align: right; }

.totals[b-4ikmdbxacr] {
    margin-top: 1.5rem;
    margin-left: auto;
    width: 320px;
    font-size: 0.875rem;
}

.totals .row[b-4ikmdbxacr] {
    display: flex;
    justify-content: space-between;
    padding: 0.35rem 0;
    border-bottom: 1px solid #e5e7eb;
}

.totals .row.total[b-4ikmdbxacr] {
    background: #f1f5f9;
    padding: 0.6rem 0.75rem;
    margin-top: 0.4rem;
    color: #2c5aa0;
    font-weight: 700;
    font-size: 1.05rem;
    border-bottom: none;
}

.notes[b-4ikmdbxacr] {
    background: #f8fafc;
    padding: 0.75rem;
    border-left: 3px solid #2c5aa0;
    border-radius: 2px;
}

.document-footer[b-4ikmdbxacr] {
    margin-top: 2rem;
    border-top: 1px solid #e5e7eb;
    padding-top: 0.75rem;
    color: #6b7280;
    font-size: 0.8rem;
}

.no-print[b-4ikmdbxacr] { /* honored by PrintableLayout's @media print */ }

@media print {
    .no-print[b-4ikmdbxacr] { display: none !important; }
    .invoice-document[b-4ikmdbxacr] { box-shadow: none; margin: 0; padding: 0.5in; }
}
/* /Components/Pages/Invoices/InvoicesPage.razor.rz.scp.css */
.invoices-page[b-v2ri8l0pd9] {
    padding: 1.5rem;
    max-width: 1400px;
    margin: 0 auto;
}

/* ── Header (matches /admin/netsuite-sync's toolbar card) ─────────────── */

.logs-toolbar[b-v2ri8l0pd9] {
    display: flex; justify-content: space-between; align-items: center; gap: 16px;
    padding: 12px 16px; background: var(--bg-surface, #fff);
    border: 1px solid var(--border, #e5e7eb); border-radius: 12px;
    margin-bottom: 16px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03); flex-wrap: wrap;
}

.tb-left[b-v2ri8l0pd9] { display: flex; align-items: center; gap: 12px; min-width: 0; }

.tb-icon[b-v2ri8l0pd9] {
    width: 40px; height: 40px; border-radius: 10px;
    background: linear-gradient(135deg, var(--brand-500, #2563eb), var(--brand-700, #1e40af));
    color: #fff; display: flex; align-items: center; justify-content: center;
    font-size: 19px; flex-shrink: 0;
    box-shadow: 0 4px 10px rgba(37, 99, 235, 0.3);
}

.tb-title[b-v2ri8l0pd9] {
    font-size: 17px; font-weight: 700; letter-spacing: -0.3px; line-height: 1.2;
}

.tb-subtitle[b-v2ri8l0pd9] {
    font-size: 12.5px; color: var(--text-muted, #6b7280); margin-top: 2px;
}

.tb-right[b-v2ri8l0pd9] { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; }

/* ── Stats grid ─────────────────────────────────────────────────────── */

.stats-grid[b-v2ri8l0pd9] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.stat-card[b-v2ri8l0pd9] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    background: var(--bg-surface, #fff);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 12px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
    text-align: left;
    cursor: pointer;
    transition: border-color 120ms, transform 120ms, box-shadow 120ms;
    font: inherit;
    color: inherit;
}

.stat-card:hover[b-v2ri8l0pd9] {
    border-color: var(--brand-500, #2563eb);
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(37, 99, 235, 0.1);
}

.stat-card.stat-active[b-v2ri8l0pd9] {
    border-color: var(--brand-500, #2563eb);
    box-shadow: 0 0 0 2px rgba(0, 91, 159, 0.15);
    background: var(--brand-50, #eff6ff);
}

.stat-card.stat-card-alert[b-v2ri8l0pd9] {
    border-color: var(--error-500, #ef4444);
}
.stat-card.stat-card-alert .stat-icon-overdue[b-v2ri8l0pd9] {
    background: var(--error-100, #fee2e2);
    color: var(--error-600, #dc2626);
}

.stat-icon[b-v2ri8l0pd9] {
    width: 38px;
    height: 38px;
    border-radius: 9px;
    display: grid;
    place-items: center;
    font-size: 18px;
    flex-shrink: 0;
}

.stat-icon-draft[b-v2ri8l0pd9] { background: var(--bg-muted, #f1f5f9); color: var(--text-muted, #475569); }
.stat-icon-issued[b-v2ri8l0pd9] { background: #eef2ff; color: #4f46e5; }
.stat-icon-partial[b-v2ri8l0pd9] { background: var(--accent-100, #fef9c3); color: var(--accent-700, #a16207); }
.stat-icon-overdue[b-v2ri8l0pd9] { background: var(--accent-100, #fef3c7); color: var(--accent-700, #b45309); }
.stat-icon-paid[b-v2ri8l0pd9] { background: var(--success-100, #dcfce7); color: var(--success-700, #166534); }

.stat-body[b-v2ri8l0pd9] { min-width: 0; }

.stat-label[b-v2ri8l0pd9] {
    font-size: 11.5px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted, #6b7280);
    font-weight: 600;
}

.stat-value[b-v2ri8l0pd9] {
    font-size: 22px;
    font-weight: 700;
    color: var(--text-primary, #111827);
    line-height: 1.1;
    margin-top: 0.1rem;
    letter-spacing: -0.5px;
}

.stat-hint[b-v2ri8l0pd9] {
    font-size: 0.75rem;
    color: var(--text-muted, #6b7280);
    margin-top: 0.15rem;
}

/* ── Missing-invoice banner ─────────────────────────────────────────── */

.alert-banner[b-v2ri8l0pd9] {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    padding: 0.75rem 1rem;
    border-radius: 8px;
    margin-bottom: 1rem;
}

.alert-banner-warn[b-v2ri8l0pd9] {
    background: rgba(245, 158, 11, 0.08);
    border: 1px solid rgba(245, 158, 11, 0.3);
    border-left: 4px solid var(--accent-500, #f59e0b);
    color: var(--accent-800, #6b4f0f);
}

/* Direct-child only — avoids cascading the gold color into icons inside the
   action button, where it'd render gold-on-gold and look "missing". */
.alert-banner > i[b-v2ri8l0pd9] {
    color: var(--accent-600, #d97706);
    font-size: 1.1rem;
    flex-shrink: 0;
}

.alert-body[b-v2ri8l0pd9] {
    flex: 1;
    font-size: 0.9rem;
}

/* Subtle outline button — sits inside an already-loud warning banner, so the
   button itself doesn't need to shout. Matches the muted style of the page's
   other secondary actions (header Refresh, bulk-export buttons). */
.alert-banner .btn-warning[b-v2ri8l0pd9] {
    background: transparent;
    border: 1px solid var(--accent-600, #c89512);
    color: var(--accent-800, #6b4f0f);
    font-weight: 500;
    padding: 0.3rem 0.75rem;
}

.alert-banner .btn-warning:hover[b-v2ri8l0pd9] {
    background: var(--accent-600, #d97706);
    border-color: var(--accent-600, #d97706);
    color: white;
}

.alert-banner .btn-warning i[b-v2ri8l0pd9] {
    color: inherit; /* follow the button text color, not the banner's gold */
}

/* ── Unified data card (filters + table + pagination) — matches netsuite-sync's card-section ── */

.data-card[b-v2ri8l0pd9] {
    background: var(--bg-surface, #fff);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 12px;
    overflow: hidden; /* keeps the internal hairlines flush against the rounded corners */
}

.data-card-toolbar[b-v2ri8l0pd9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.75rem 1rem;
    background: var(--bg-muted, #f9fafb);
    border-bottom: 1px solid var(--border, #e5e7eb);
    flex-wrap: wrap;
}

/* In-card states: loading, empty. Padded so they don't crowd the toolbar above. */
.data-card-state[b-v2ri8l0pd9] {
    padding: 2.5rem 1.5rem;
    text-align: center;
    color: var(--text-muted, #6b7280);
}

.data-card-footer[b-v2ri8l0pd9] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.65rem 1rem;
    border-top: 1px solid var(--border, #e5e7eb);
    background: var(--bg-muted, #f9fafb);
}

/* ── Filter chips + search (now lives inside .data-card-toolbar) ──── */

.filter-chips[b-v2ri8l0pd9] {
    display: flex;
    gap: 0.4rem;
    flex-wrap: wrap;
}

.chip[b-v2ri8l0pd9] {
    padding: 0.3rem 0.8rem;
    border: 1px solid var(--border, #e5e7eb);
    background: var(--bg-surface, #fff);
    border-radius: 999px;
    font-size: 0.8rem;
    color: var(--text-muted, #475569);
    cursor: pointer;
    transition: all 120ms;
}

.chip:hover[b-v2ri8l0pd9] { border-color: var(--brand-500, #2563eb); color: var(--brand-600, #1d4ed8); }

.chip.chip-active[b-v2ri8l0pd9] {
    background: var(--brand-600, #1d4ed8);
    border-color: var(--brand-600, #1d4ed8);
    color: white;
}

/* Hairline divider between filter-selector chips and the trailing view-option
   toggle. Same height as a chip's text so it visually anchors to the row. */
.chip-divider[b-v2ri8l0pd9] {
    width: 1px;
    height: 1.1rem;
    background: var(--border-medium, #cbd5e1);
    margin: 0 0.15rem;
    align-self: center;
}

/* Inline view-option toggle that sits at the end of the chip row. Reads as a
   chip with a checkbox affordance: same pill geometry, same font, but with a
   compact custom checkbox + icon so the on/off state is unambiguous at a glance.
   Active state mirrors how a chip looks when filled — but tinted instead of
   solid blue so the eye is drawn first to the actual filter chips. */
.chip-toggle[b-v2ri8l0pd9] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.3rem 0.7rem 0.3rem 0.55rem;
    border: 1px solid var(--border, #e5e7eb);
    background: var(--bg-surface, #fff);
    border-radius: 999px;
    font-size: 0.8rem;
    color: var(--text-muted, #475569);
    cursor: pointer;
    user-select: none;
    transition: border-color 120ms, color 120ms, background-color 120ms;
    margin: 0;
    line-height: 1.2;
}

.chip-toggle:hover[b-v2ri8l0pd9] {
    border-color: var(--border-medium, #94a3b8);
    color: var(--text-primary, #1e293b);
}

.chip-toggle.chip-toggle-on[b-v2ri8l0pd9] {
    background: var(--brand-50, #eff6ff);
    border-color: var(--brand-100, #bfdbfe);
    color: var(--brand-700, #1d4ed8);
}

.chip-toggle.chip-toggle-on > i[b-v2ri8l0pd9] { color: var(--brand-600, #2c5aa0); }

/* Native checkbox is the source of truth for state + accessibility, but visually
   hidden so we can render a clearer custom box next to it. Stays in the focus
   order via the wrapping <label>. */
.chip-toggle-input[b-v2ri8l0pd9] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Styled checkbox surrogate — sized for legibility (1rem square) with the
   bi-check2 icon centered inside. Hidden by default, revealed when the input
   is checked via :has() on the parent label. */
.chip-toggle-box[b-v2ri8l0pd9] {
    display: inline-grid;
    place-items: center;
    width: 1rem;
    height: 1rem;
    border: 1.5px solid var(--border-medium, #cbd5e1);
    border-radius: 4px;
    background: var(--bg-surface, #fff);
    color: transparent;
    font-size: 0.85rem;
    line-height: 1;
    transition: background-color 120ms, border-color 120ms, color 120ms;
    flex-shrink: 0;
}

.chip-toggle-box i[b-v2ri8l0pd9] { line-height: 1; }

/* Checked state — driven off the actual input so a programmatic toggle (or a
   keyboard space-press) flips the visual immediately. */
.chip-toggle:has(.chip-toggle-input:checked) .chip-toggle-box[b-v2ri8l0pd9] {
    background: var(--brand-600, #2c5aa0);
    border-color: var(--brand-600, #2c5aa0);
    color: white;
}

/* Keyboard focus ring — landing on the visually-hidden input applies the ring
   to its sibling box so keyboard users can see what's focused. */
.chip-toggle-input:focus-visible + .chip-toggle-box[b-v2ri8l0pd9] {
    outline: 2px solid var(--brand-300, #93c5fd);
    outline-offset: 2px;
}

/* Trailing eye/eye-slash icon — sits between the checkbox and the label. */
.chip-toggle > i[b-v2ri8l0pd9] {
    color: var(--text-muted, #64748b);
    font-size: 0.9rem;
    line-height: 1;
}

.filter-search[b-v2ri8l0pd9] {
    position: relative;
    flex: 0 1 280px;
}

.filter-search i[b-v2ri8l0pd9] {
    position: absolute;
    left: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted, #9ca3af);
    font-size: 0.85rem;
}

.filter-search input[b-v2ri8l0pd9] {
    padding-left: 2rem;
    background: var(--bg-surface, #fff);
}

/* ── Bulk-action toolbar — buttons inside are plain Bootstrap .btn (themed via
   leca-theme.css), matching /admin/netsuite-sync's convention. ─────────── */

.bulk-toolbar[b-v2ri8l0pd9] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.55rem 0.85rem;
    margin-bottom: 0.85rem;
    background: var(--brand-50, #eff6ff);
    border: 1px solid var(--brand-100, #bfdbfe);
    border-radius: 8px;
    color: var(--brand-700, #1e40af);
    animation: slideDown-b-v2ri8l0pd9 150ms ease-out;
}

/* .btn-outline-secondary is a transparent "ghost" style (leca-theme.css) — meant
   for a plain white surface. Against this toolbar's brand-tinted background its
   light gray border nearly disappears, so give it a solid backing here. */
.bulk-toolbar .btn-outline-secondary[b-v2ri8l0pd9] {
    background: var(--bg-surface, #fff);
}

.bulk-toolbar .btn-outline-secondary:hover:not(:disabled)[b-v2ri8l0pd9] {
    background: var(--bg-hover, #f1f5f9);
}

@keyframes slideDown-b-v2ri8l0pd9 {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Selection chip on the left — count + clear pill. */
.bulk-selection[b-v2ri8l0pd9] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem 0.6rem 0.25rem 0.5rem;
    background: var(--bg-surface, #fff);
    border: 1px solid var(--brand-100, #bfdbfe);
    border-radius: 999px;
    font-size: 0.825rem;
    color: var(--brand-700, #1e40af);
}

.bulk-selection > i[b-v2ri8l0pd9] {
    font-size: 1rem;
    color: var(--brand-600, #2c5aa0);
}

.bulk-count strong[b-v2ri8l0pd9] {
    font-variant-numeric: tabular-nums;
    color: var(--text-primary, #0f172a);
}

.bulk-clear[b-v2ri8l0pd9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.25rem;
    height: 1.25rem;
    padding: 0;
    border: none;
    border-radius: 999px;
    background: transparent;
    color: var(--text-muted, #64748b);
    cursor: pointer;
    transition: background-color 120ms, color 120ms;
}

.bulk-clear:hover[b-v2ri8l0pd9] {
    background: var(--error-100, #fee2e2);
    color: var(--error-700, #b91c1c);
}

.bulk-clear i[b-v2ri8l0pd9] { font-size: 0.7rem; line-height: 1; }

.bulk-actions[b-v2ri8l0pd9] {
    margin-left: auto;
    display: flex;
    gap: 0.5rem;
    align-items: center;
    flex-wrap: wrap;
}

/* Visual grouping — adjacent groups separated by a hairline rather than a
   literal "|" character so spacing is predictable across wrap points. */
.bulk-group[b-v2ri8l0pd9] {
    display: flex;
    gap: 0.35rem;
    align-items: center;
}

.bulk-group + .bulk-group[b-v2ri8l0pd9] {
    padding-left: 0.6rem;
    border-left: 1px solid var(--border-medium, #cbd5e1);
}

@media (max-width: 640px) {
    /* On narrow screens the hairline divider becomes noisy when groups wrap. */
    .bulk-group + .bulk-group[b-v2ri8l0pd9] {
        border-left: none;
        padding-left: 0;
    }
}

/* Bulk-action confirmation modals reuse the shared ConfirmationModal; these style
   the form fields rendered as its child content (page-scoped, so they reach it). */
.modal-field[b-v2ri8l0pd9] { margin-bottom: 0.6rem; }
.modal-field:last-child[b-v2ri8l0pd9] { margin-bottom: 0; }

.modal-label[b-v2ri8l0pd9] {
    display: block;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--text-primary, #374151);
    margin-bottom: 0.3rem;
}

/* Subtle, dismissable bulk-result alert (replaces the loud Bootstrap alert). */
.bulk-alert[b-v2ri8l0pd9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.6rem;
    padding: 0.55rem 0.85rem;
    border: 1px solid transparent;
    border-radius: 8px;
    font-size: 0.85rem;
    animation: slideDown-b-v2ri8l0pd9 150ms ease-out;
}

.bulk-alert .bulk-alert-text[b-v2ri8l0pd9] { flex: 1; }

.bulk-alert-ok[b-v2ri8l0pd9] {
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.3);
    color: var(--success-700, #15803d);
}

.bulk-alert-warn[b-v2ri8l0pd9] {
    background: rgba(245, 158, 11, 0.1);
    border-color: rgba(245, 158, 11, 0.3);
    color: var(--accent-700, #b45309);
}

.bulk-alert-close[b-v2ri8l0pd9] {
    background: none;
    border: none;
    padding: 0.15rem;
    line-height: 1;
    color: currentColor;
    opacity: 0.55;
    cursor: pointer;
    border-radius: 4px;
    transition: opacity 120ms, background-color 120ms;
}

.bulk-alert-close:hover[b-v2ri8l0pd9] { opacity: 1; background: rgba(0, 0, 0, 0.06); }
.bulk-alert-close i[b-v2ri8l0pd9] { font-size: 0.8rem; }

/* ── Table — lives flush inside .data-card, no own border ─────────── */

.invoices-table[b-v2ri8l0pd9] {
    margin-bottom: 0;
}

.invoices-table thead th[b-v2ri8l0pd9] {
    background: var(--bg-muted, #f9fafb);
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted, #6b7280);
    font-weight: 600;
    border-bottom: 1px solid var(--border, #e5e7eb);
    padding: 0.55rem 0.75rem;
}

.invoices-table tbody td[b-v2ri8l0pd9] {
    padding: 0.5rem 0.75rem;
    font-size: 0.85rem;
    border-top: 1px solid var(--border, #e5e7eb);
    vertical-align: middle;
}

.invoices-table tbody tr:first-child td[b-v2ri8l0pd9] {
    border-top: none;
}

/* Invoice number — legible but in scale with the row (was full table font +
   bold, which made rows tall). */
.invoices-table tbody td strong[b-v2ri8l0pd9] {
    font-size: 0.85rem;
    font-weight: 600;
}

/* First and last columns get extra side padding so content doesn't kiss the
   card edge. Bootstrap's .table sets padding 0.5rem and we overrode that
   above; this nudge restores breathing room. */
.invoices-table th:first-child[b-v2ri8l0pd9],
.invoices-table td:first-child[b-v2ri8l0pd9] {
    padding-left: 1rem;
}

.invoices-table th:last-child[b-v2ri8l0pd9],
.invoices-table td:last-child[b-v2ri8l0pd9] {
    padding-right: 1rem;
}

.row-overdue[b-v2ri8l0pd9] {
    background: linear-gradient(90deg, var(--error-50, #fef2f2) 0%, transparent 50%) !important;
}

.row-overdue td:first-child[b-v2ri8l0pd9] {
    border-left: 3px solid var(--error-500, #ef4444);
}

.link-muted[b-v2ri8l0pd9] {
    color: var(--text-muted, #475569);
    text-decoration: none;
}
.link-muted:hover[b-v2ri8l0pd9] { color: var(--brand-600, #2c5aa0); text-decoration: underline; }

.mono[b-v2ri8l0pd9] {
    font-variant-numeric: tabular-nums;
}

/* ── Empty state (rendered inside .data-card-state) ────────────────── */

.empty-state[b-v2ri8l0pd9] {
    padding: 3rem 1.5rem;
}

.empty-icon[b-v2ri8l0pd9] {
    font-size: 2.75rem;
    color: var(--border-medium, #cbd5e1);
    display: block;
    margin-bottom: 0.6rem;
}

.empty-state h3[b-v2ri8l0pd9] {
    font-size: 1.1rem;
    color: var(--text-primary, #1f2937);
    margin-bottom: 0.4rem;
}

.empty-state p[b-v2ri8l0pd9] {
    color: var(--text-muted, #6b7280);
    max-width: 480px;
    margin: 0 auto 1rem;
    font-size: 0.9rem;
}

/* ── Pagination controls (inside .data-card-footer) ───────────────── */

.page-controls[b-v2ri8l0pd9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.page-indicator[b-v2ri8l0pd9] {
    font-size: 0.825rem;
    color: var(--text-muted, #475569);
    min-width: 100px;
    text-align: center;
}

/* ── Secondary filter row (Kind / Bank / date range + group toggle) ─── */

/* Single source of truth for the height of every control in the filter row, so
   selects, date inputs, the clear button, and the group toggle all line up. */
.filter-row[b-v2ri8l0pd9] {
    --filter-control-h: 2.25rem;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.7rem 1rem;
    background: var(--bg-muted, #f9fafb);
    border-bottom: 1px solid var(--border, #e5e7eb);
    flex-wrap: wrap;
}

.filter-controls[b-v2ri8l0pd9] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    flex-wrap: wrap;
}

/* Each labelled control: tiny caption stacked above a compact input. */
.filter-field[b-v2ri8l0pd9] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    margin: 0;
}

.filter-field-label[b-v2ri8l0pd9] {
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted, #6b7280);
    font-weight: 600;
}

/* Uniform geometry across <select> and <input type=date> — Bootstrap's -sm
   variants and the native date control otherwise render at slightly different
   heights. Fixing height + line-height + box-sizing makes the row crisp. */
.filter-field .form-select[b-v2ri8l0pd9],
.filter-field .form-control[b-v2ri8l0pd9] {
    height: var(--filter-control-h);
    min-width: 9rem;
    padding: 0 0.6rem;
    font-size: 0.825rem;
    line-height: calc(var(--filter-control-h) - 2px);
    background-color: var(--bg-surface, #fff);
    box-sizing: border-box;
}

/* Date inputs are intrinsically narrower than the selects. */
.filter-field input[type="date"][b-v2ri8l0pd9] {
    min-width: 8.5rem;
}

/* Quiet text-button to reset every filter — sits at the end of the controls,
   matched to the control height so it aligns with the inputs. */
.clear-filters[b-v2ri8l0pd9] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    height: var(--filter-control-h);
    padding: 0 0.6rem;
    border: none;
    background: transparent;
    color: var(--text-muted, #64748b);
    font-size: 0.8rem;
    cursor: pointer;
    border-radius: 6px;
    transition: background-color 120ms, color 120ms;
}

.clear-filters:hover[b-v2ri8l0pd9] {
    background: var(--error-100, #fee2e2);
    color: var(--error-700, #b91c1c);
}

/* The group-by-application toggle shares the row's control height so it lines up
   with the selects/date inputs rather than floating at a different size. */
.filter-row .chip-toggle[b-v2ri8l0pd9] {
    height: var(--filter-control-h);
    padding-top: 0;
    padding-bottom: 0;
}

/* ── Sortable column headers ────────────────────────────────────────── */

.th-sort[b-v2ri8l0pd9] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0;
    border: none;
    background: transparent;
    font: inherit;
    color: inherit;
    text-transform: inherit;
    letter-spacing: inherit;
    cursor: pointer;
    transition: color 120ms;
}

.th-sort:hover[b-v2ri8l0pd9] { color: var(--brand-600, #2c5aa0); }

/* Right-align the Total header's button content with its numeric column. */
.th-sort-end[b-v2ri8l0pd9] {
    margin-left: auto;
}

.th-sort i[b-v2ri8l0pd9] {
    font-size: 0.7rem;
    color: var(--border-medium, #94a3b8);
}

.th-sort:hover i[b-v2ri8l0pd9] { color: var(--brand-600, #2c5aa0); }

/* ── Grouped-by-application view ────────────────────────────────────── */

.group-header-row[b-v2ri8l0pd9] {
    cursor: pointer;
    background: var(--bg-muted, #f9fafb);
}

.group-header-row:hover[b-v2ri8l0pd9] {
    background: var(--bg-hover, #eef2f7);
}

.group-header-row > td[b-v2ri8l0pd9] {
    padding: 0.5rem 0.75rem 0.5rem 1rem !important;
    border-top: 1px solid var(--border, #e5e7eb);
}

.group-header[b-v2ri8l0pd9] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.group-chevron[b-v2ri8l0pd9] {
    color: var(--text-muted, #64748b);
    font-size: 0.85rem;
    width: 0.9rem;
    flex-shrink: 0;
}

.group-app a[b-v2ri8l0pd9],
.group-app span[b-v2ri8l0pd9] {
    font-weight: 700;
    color: var(--text-primary, #1f2937);
    text-decoration: none;
}

.group-app a:hover[b-v2ri8l0pd9] { color: var(--brand-600, #2c5aa0); text-decoration: underline; }

.group-sub[b-v2ri8l0pd9] {
    color: var(--text-muted, #6b7280);
    font-size: 0.85rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 22rem;
}

/* Push the count + subtotal to the right edge of the header bar. */
.group-count[b-v2ri8l0pd9] {
    margin-left: auto;
    font-size: 0.75rem;
    color: var(--text-muted, #6b7280);
    background: var(--bg-muted, #e2e8f0);
    border-radius: 999px;
    padding: 0.1rem 0.55rem;
}

.group-subtotal[b-v2ri8l0pd9] {
    font-weight: 700;
    color: var(--text-primary, #0f172a);
    min-width: 7rem;
    text-align: right;
}

/* Indent the first data cell of a grouped invoice row so children sit under
   their group header. */
.grouped-row > td:first-child[b-v2ri8l0pd9] {
    padding-left: 2rem;
}

/* ── Skeleton loader ─────────────────────────────────────────────────── */
@keyframes invoices-skel-pulse-b-v2ri8l0pd9 {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.tbl-row-skeleton td[b-v2ri8l0pd9] {
    padding: 0.875rem 0.75rem;
}

.tbl-skel[b-v2ri8l0pd9] {
    height: 1.0625rem;
    width: 80px;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: invoices-skel-pulse-b-v2ri8l0pd9 1.5s ease-in-out infinite;
}

.tbl-skel-badge[b-v2ri8l0pd9] {
    height: 1.25rem;
    width: 90px;
    border-radius: 9999px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: invoices-skel-pulse-b-v2ri8l0pd9 1.5s ease-in-out infinite;
}
/* /Components/Pages/IPD/CustomReportGeneratorPage.razor.rz.scp.css */
/* Custom Report Generator Page - Scoped Styles */

.custom-report-page[b-pf75l8jn46] {
    padding: 24px;
    max-width: 1200px;
    margin: 0 auto;
}

/* Page Header */
.page-header[b-pf75l8jn46] {
    margin-bottom: 32px;
}

.breadcrumb-nav[b-pf75l8jn46] {
    margin-bottom: 16px;
}

.breadcrumb-link[b-pf75l8jn46] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--brand-600);
    text-decoration: none;
    font-size: 0.875rem;
    font-weight: 500;
    transition: color 0.2s ease;
}

.breadcrumb-link:hover[b-pf75l8jn46] {
    color: var(--brand-700);
}

.header-content[b-pf75l8jn46] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
}

.page-title[b-pf75l8jn46] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary, #0F172A);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 12px;
}

.page-title i[b-pf75l8jn46] {
    color: var(--brand-600);
}

.page-subtitle[b-pf75l8jn46] {
    font-size: 0.9375rem;
    color: var(--text-muted, #64748B);
    margin: 4px 0 0 0;
}

/* Report Builder */
.report-builder[b-pf75l8jn46] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.builder-section[b-pf75l8jn46] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 16px;
    overflow: visible !important;
    position: relative;
    contain: none !important;
}

.section-header[b-pf75l8jn46] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 20px 24px;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-light);
    border-radius: 16px 16px 0 0;
}

.section-number[b-pf75l8jn46] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--brand-600);
    color: white;
    font-size: 0.875rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.section-title-group[b-pf75l8jn46] {
    flex: 1;
}

.section-title[b-pf75l8jn46] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary, #0F172A);
    margin: 0;
}

.section-subtitle[b-pf75l8jn46] {
    font-size: 0.8125rem;
    color: var(--text-muted, #64748B);
    margin: 2px 0 0 0;
}

.section-content[b-pf75l8jn46] {
    padding: 24px;
    overflow: visible !important;
    position: relative;
    contain: none !important;
}

/* Report Type Selection */
.report-type-grid[b-pf75l8jn46] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

@media (max-width: 768px) {
    .report-type-grid[b-pf75l8jn46] {
        grid-template-columns: 1fr;
    }
}

.report-type-card[b-pf75l8jn46] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px;
    background: var(--neutral-50);
    border: 2px solid transparent;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
}

.report-type-card:hover[b-pf75l8jn46] {
    background: white;
    border-color: var(--brand-200);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.report-type-card.selected[b-pf75l8jn46] {
    background: var(--brand-50);
    border-color: var(--brand-500);
}

.type-icon[b-pf75l8jn46] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    color: var(--brand-600);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    flex-shrink: 0;
}

.report-type-card.selected .type-icon[b-pf75l8jn46] {
    background: var(--brand-600);
    color: white;
}

.type-info[b-pf75l8jn46] {
    flex: 1;
}

.type-info h4[b-pf75l8jn46] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary, #0F172A);
    margin: 0 0 4px 0;
}

.type-info p[b-pf75l8jn46] {
    font-size: 0.8125rem;
    color: var(--text-muted, #64748B);
    margin: 0;
}

.type-check[b-pf75l8jn46] {
    position: absolute;
    top: 12px;
    right: 12px;
    color: var(--brand-600);
    font-size: 1.25rem;
}

/* Date Range */
.date-range-options[b-pf75l8jn46] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.preset-buttons[b-pf75l8jn46] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.preset-btn[b-pf75l8jn46] {
    padding: 8px 16px;
    background: var(--neutral-50);
    border: 1px solid var(--border-medium);
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary, #475569);
    cursor: pointer;
    transition: all 0.2s ease;
}

.preset-btn:hover[b-pf75l8jn46] {
    background: white;
    border-color: var(--brand-300);
}

.preset-btn.active[b-pf75l8jn46] {
    background: var(--brand-600);
    border-color: var(--brand-600);
    color: white;
}

.custom-date-inputs[b-pf75l8jn46] {
    display: none;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    align-items: end;
}

.custom-date-inputs.show[b-pf75l8jn46] {
    display: grid;
}

.date-input-group[b-pf75l8jn46] {
    flex: 1;
    min-width: 0;
}

.date-input-group label[b-pf75l8jn46] {
    display: block;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-muted, #64748B);
    margin-bottom: 4px;
}

.date-input-group .form-control[b-pf75l8jn46] {
    width: 100%;
}

.range-separator[b-pf75l8jn46] {
    padding-bottom: 8px;
    color: var(--text-muted, #64748B);
    font-size: 0.875rem;
}

.date-summary[b-pf75l8jn46] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    background: var(--brand-50);
    border-radius: 8px;
    font-size: 0.875rem;
    color: var(--text-secondary, #475569);
}

.date-summary i[b-pf75l8jn46] {
    color: var(--brand-600);
}

.date-range-days[b-pf75l8jn46] {
    color: var(--text-muted, #64748B);
    font-size: 0.8125rem;
}

/* Filters */
.filters-grid[b-pf75l8jn46] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    overflow: visible !important;
    position: relative;
}

@media (max-width: 768px) {
    .filters-grid[b-pf75l8jn46] {
        grid-template-columns: 1fr;
    }
}

.filter-group[b-pf75l8jn46] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    position: relative;
    overflow: visible !important;
}

/* Individual z-index for each filter to stack properly */
.filter-group:nth-child(1)[b-pf75l8jn46] { z-index: 40; }
.filter-group:nth-child(2)[b-pf75l8jn46] { z-index: 30; }
.filter-group:nth-child(3)[b-pf75l8jn46] { z-index: 20; }
.filter-group:nth-child(4)[b-pf75l8jn46] { z-index: 10; }

.filter-label[b-pf75l8jn46] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary, #475569);
    display: flex;
    align-items: center;
    gap: 6px;
}

.filter-label i[b-pf75l8jn46] {
    color: var(--brand-600);
    font-size: 0.875rem;
}

.form-select[b-pf75l8jn46], .form-control[b-pf75l8jn46] {
    padding: 10px 14px;
    border: 1px solid var(--border-medium);
    border-radius: 8px;
    font-size: 0.875rem;
    background: white;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.form-select:focus[b-pf75l8jn46], .form-control:focus[b-pf75l8jn46] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(0, 125, 184, 0.1);
}

.premium-range-inputs[b-pf75l8jn46] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.premium-range-inputs .form-control[b-pf75l8jn46] {
    flex: 1;
}

/* Output Options */
.output-options[b-pf75l8jn46] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.format-buttons[b-pf75l8jn46] {
    display: flex;
    gap: 12px;
}

.format-btn[b-pf75l8jn46] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    background: var(--neutral-50);
    border: 2px solid transparent;
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary, #475569);
    cursor: pointer;
    transition: all 0.2s ease;
}

.format-btn i[b-pf75l8jn46] {
    font-size: 1.125rem;
}

.format-btn:hover[b-pf75l8jn46] {
    background: white;
    border-color: var(--brand-200);
}

.format-btn.active[b-pf75l8jn46] {
    background: var(--brand-50);
    border-color: var(--brand-500);
    color: var(--brand-700);
}

.columns-selection[b-pf75l8jn46] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.columns-checkboxes[b-pf75l8jn46] {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.checkbox-item[b-pf75l8jn46] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.875rem;
    color: var(--text-secondary, #475569);
    cursor: pointer;
}

.checkbox-item input[type="checkbox"][b-pf75l8jn46] {
    width: 18px;
    height: 18px;
    accent-color: var(--brand-600);
    cursor: pointer;
}

.grouping-option[b-pf75l8jn46] {
    max-width: 300px;
}

/* Custom Dropdown Styling */
.custom-dropdown[b-pf75l8jn46] {
    position: relative;
    overflow: visible !important;
}

.custom-dropdown.show[b-pf75l8jn46] {
    z-index: 1050 !important;
}

.custom-dropdown .dropdown-toggle[b-pf75l8jn46] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    background: white;
    border: 1px solid var(--border-medium);
    border-radius: 8px;
    font-size: 0.875rem;
    color: var(--text-secondary, #475569);
    cursor: pointer;
    transition: all 0.2s ease;
}

.custom-dropdown .dropdown-toggle:hover[b-pf75l8jn46] {
    border-color: var(--brand-300);
}

.custom-dropdown .dropdown-toggle:focus[b-pf75l8jn46] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(0, 125, 184, 0.1);
}

.custom-dropdown .dropdown-toggle[b-pf75l8jn46]::after {
    display: none; /* Hide default Bootstrap caret */
}

.custom-dropdown .dropdown-text[b-pf75l8jn46] {
    flex: 1;
    text-align: left;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.custom-dropdown .dropdown-arrow[b-pf75l8jn46] {
    font-size: 0.75rem;
    color: var(--text-muted, #64748B);
    transition: transform 0.2s ease;
    margin-left: 8px;
}

.custom-dropdown.show .dropdown-arrow[b-pf75l8jn46] {
    transform: rotate(180deg);
}

.custom-dropdown .dropdown-menu[b-pf75l8jn46] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    z-index: 9999 !important;
    min-width: 100%;
    max-height: 280px;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 6px 0;
    margin: 0 !important;
    background: white;
    border: 1px solid var(--border-medium);
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
    display: none;
}

.custom-dropdown .dropdown-menu.show[b-pf75l8jn46],
.custom-dropdown.show .dropdown-menu[b-pf75l8jn46] {
    display: block !important;
}

.custom-dropdown .dropdown-menu li[b-pf75l8jn46] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.custom-dropdown .dropdown-item[b-pf75l8jn46] {
    display: block;
    padding: 10px 14px;
    font-size: 0.875rem;
    color: var(--text-secondary, #475569);
    cursor: pointer;
    transition: all 0.15s ease;
    border: none;
    background: transparent;
    width: 100%;
    text-align: left;
}

.custom-dropdown .dropdown-item:hover[b-pf75l8jn46] {
    background: var(--neutral-50);
    color: var(--text-primary, #0F172A);
}

.custom-dropdown .dropdown-item.active[b-pf75l8jn46] {
    background: var(--brand-50);
    color: var(--brand-700);
    font-weight: 500;
}

.custom-dropdown .dropdown-item:focus[b-pf75l8jn46] {
    outline: none;
    background: var(--brand-50);
}

/* Preview & Generate */
.preview-section[b-pf75l8jn46] {
    background: linear-gradient(135deg, var(--brand-50) 0%, white 100%);
}

.config-summary[b-pf75l8jn46] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 12px;
    padding: 20px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}

@media (max-width: 768px) {
    .config-summary[b-pf75l8jn46] {
        grid-template-columns: 1fr;
    }
}

.summary-item[b-pf75l8jn46] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.summary-label[b-pf75l8jn46] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-muted, #64748B);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.summary-value[b-pf75l8jn46] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary, #0F172A);
}

.generate-actions[b-pf75l8jn46] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
}

.btn-generate[b-pf75l8jn46] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: var(--brand-600);
    border: none;
    border-radius: 10px;
    font-size: 0.9375rem;
    font-weight: 600;
    color: white;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-generate:hover:not(:disabled)[b-pf75l8jn46] {
    background: var(--brand-700);
}

.btn-generate:disabled[b-pf75l8jn46] {
    opacity: 0.7;
    cursor: not-allowed;
}

.btn-outline-secondary[b-pf75l8jn46] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    background: white;
    border: 1px solid var(--border-medium);
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary, #475569);
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-outline-secondary:hover[b-pf75l8jn46] {
    background: var(--neutral-50);
    border-color: var(--border-dark);
}

/* /Components/Pages/IPD/IpdDashboardPage.razor.rz.scp.css */
/* IPD Dashboard Page - Scoped Styles */
/* Note: Most styling comes from wwwroot/css/ipd-dashboard.css (loaded globally) */

/* Page-specific overrides if needed */

/* Policy Number styling */
.policy-number[b-y8xrpbwblk] {
    font-weight: 500;
    color: #3b82f6;
}

/* ========================================
   Skeleton Loading State
   ======================================== */

@keyframes ipd-dash-skel-pulse-b-y8xrpbwblk {
    0% { opacity: 1; }
    50% { opacity: 0.5; }
    100% { opacity: 1; }
}

.skel-block[b-y8xrpbwblk] {
    background: linear-gradient(90deg, #e5e7eb 25%, #f3f4f6 50%, #e5e7eb 75%);
    background-size: 200% 100%;
    animation: ipd-dash-skel-pulse-b-y8xrpbwblk 1.5s ease-in-out infinite;
    border-radius: 6px;
}

.skel-ipd-card[b-y8xrpbwblk] {
    padding: 20px;
    margin-bottom: 16px;
}

.skel-ipd-stats-row[b-y8xrpbwblk] {
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
}

.skel-ipd-mini-stat[b-y8xrpbwblk] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.skel-ipd-mini-content[b-y8xrpbwblk] {
    display: flex;
    flex-direction: column;
}

.skel-ipd-tab-bar[b-y8xrpbwblk] {
    display: flex;
    gap: 4px;
    margin-bottom: 16px;
}

.skel-ipd-tab[b-y8xrpbwblk] {
    border-radius: 8px;
}

.skel-ipd-table-card[b-y8xrpbwblk] {
    padding: 0;
    overflow: hidden;
}

.skel-ipd-table-header[b-y8xrpbwblk] {
    padding: 16px 20px;
    border-bottom: 1px solid #e5e7eb;
}

.skel-ipd-table-head-row[b-y8xrpbwblk] {
    display: grid;
    grid-template-columns: 1fr 1fr 1.5fr 1fr 1fr 0.8fr;
    gap: 12px;
    padding: 12px 20px;
    border-bottom: 1px solid #e5e7eb;
    background: #f9fafb;
}

.skel-ipd-table-row[b-y8xrpbwblk] {
    display: grid;
    grid-template-columns: 1fr 1fr 1.5fr 1fr 1fr 0.8fr;
    gap: 12px;
    padding: 14px 20px;
    border-bottom: 1px solid #f3f4f6;
}

/* /Components/Pages/NewApplicationPage.razor.rz.scp.css */
/* New Application Page Styles */

.application-header[b-exth23msxy] {
    margin-bottom: 24px;
}

.application-title[b-exth23msxy] {
    font-size: 24px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 4px;
}

.application-subtitle[b-exth23msxy] {
    font-size: 14px;
    color: var(--text-secondary);
    line-height: 1.5;
}

/* Progress Steps */
.progress-steps[b-exth23msxy] {
    display: flex;
    gap: 0;
    margin-bottom: 32px;
    background: white;
    border-radius: 12px;
    padding: 24px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
    border: 1px solid var(--border-light);
    overflow-x: auto;
}

.step[b-exth23msxy] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    flex: 1;
    position: relative;
    min-width: 180px;
}

.step[b-exth23msxy]::after {
    content: '';
    position: absolute;
    top: 20px;
    left: calc(100% - 6px);
    width: calc(100% - 44px);
    height: 2px;
    background: var(--neutral-200);
    z-index: 0;
}

.step:last-child[b-exth23msxy]::after {
    display: none;
}

.step.completed[b-exth23msxy]::after {
    background: var(--brand-500);
}

.step-indicator[b-exth23msxy] {
    position: relative;
    z-index: 1;
    flex-shrink: 0;
}

.step-number[b-exth23msxy] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 600;
    background: white;
    border: 2px solid var(--neutral-300);
    color: var(--text-muted);
    transition: all 0.3s ease;
}

.step.active .step-number[b-exth23msxy] {
    background: var(--brand-600);
    border-color: var(--brand-600);
    color: white;
    box-shadow: 0 0 0 4px var(--brand-100);
}

.step.completed .step-number[b-exth23msxy] {
    background: var(--brand-600);
    border-color: var(--brand-600);
    color: white;
}

.step-content[b-exth23msxy] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding-top: 4px;
}

.step-title[b-exth23msxy] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    line-height: 1.3;
}

.step.active .step-title[b-exth23msxy] {
    color: var(--brand-700);
}

.step-description[b-exth23msxy] {
    font-size: 12px;
    color: var(--text-muted);
    line-height: 1.3;
}

/* Form Container */
.form-container[b-exth23msxy] {
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.4) 0%, rgba(255, 255, 255, 0.95) 100%);
    border: 1px solid var(--border-light);
    border-radius: 12px;
    padding: 32px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

.form-section[b-exth23msxy] {
    margin-bottom: 32px;
}

.section-header[b-exth23msxy] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.section-header i[b-exth23msxy] {
    font-size: 24px;
    color: var(--brand-600);
}

.section-title[b-exth23msxy] {
    font-size: 20px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.section-description[b-exth23msxy] {
    font-size: 14px;
    color: var(--text-secondary);
    margin-bottom: 28px;
    line-height: 1.5;
}

/* Form Subsections */
.form-subsection[b-exth23msxy] {
    background: rgba(255, 255, 255, 0.6);
    border: 1px solid var(--border-light);
    border-radius: 8px;
    padding: 24px;
    margin-bottom: 24px;
}

.subsection-title[b-exth23msxy] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 20px 0;
}

/* Form Layout */
.form-row[b-exth23msxy] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
    margin-bottom: 20px;
}

.form-row:last-child[b-exth23msxy] {
    margin-bottom: 0;
}

.form-row-two-col[b-exth23msxy] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 20px;
}

.form-row-three-col[b-exth23msxy] {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    margin-bottom: 20px;
}

.form-group[b-exth23msxy] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.form-label[b-exth23msxy] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    display: flex;
    align-items: center;
    gap: 4px;
}

.form-label .required[b-exth23msxy] {
    color: var(--error-600);
    font-weight: 600;
}

.form-input[b-exth23msxy],
.form-select[b-exth23msxy] {
    padding: 10px 14px;
    background: white;
    border: 1px solid var(--border-medium);
    border-radius: 6px;
    color: var(--text-primary);
    font-size: 14px;
    font-family: inherit;
    transition: all 0.2s ease;
    width: 100%;
}

.form-input:focus[b-exth23msxy],
.form-select:focus[b-exth23msxy] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px var(--brand-100);
}

.form-input[b-exth23msxy]::placeholder {
    color: var(--text-muted);
}

.form-select[b-exth23msxy] {
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%2364748B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 40px;
}

.form-help[b-exth23msxy] {
    font-size: 13px;
    color: var(--text-muted);
    line-height: 1.4;
}

.form-help.auto-label[b-exth23msxy] {
    color: var(--brand-600);
    font-weight: 500;
}

.form-error[b-exth23msxy] {
    font-size: 13px;
    color: var(--error-600);
    display: flex;
    align-items: center;
    gap: 4px;
}

.form-error i[b-exth23msxy] {
    font-size: 14px;
}

/* Checkbox Inline Label */
.checkbox-label-inline[b-exth23msxy] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
    cursor: pointer;
    font-size: 14px;
    color: var(--text-secondary);
}

.checkbox-label-inline input[type="checkbox"][b-exth23msxy] {
    width: 18px;
    height: 18px;
    cursor: pointer;
    accent-color: var(--brand-600);
}

.checkbox-label-inline span[b-exth23msxy] {
    user-select: none;
}

/* Auto-filled inputs */
.form-input.auto-filled[b-exth23msxy] {
    background-color: var(--neutral-50);
    border-color: var(--neutral-300);
    color: var(--text-secondary);
    cursor: not-allowed;
}

/* Borrower & Collateral Section */
.borrower-collateral-section[b-exth23msxy] {
    background: rgba(255, 255, 255, 0.6);
    border: 1px solid var(--border-light);
    border-radius: 8px;
    padding: 24px;
}

/* Environmental Declarations Section */
.env-section[b-exth23msxy] {
    background: rgba(255, 255, 255, 0.6);
    border: 1px solid var(--border-light);
    border-radius: 8px;
   /* padding: 24px;*/
    margin-bottom: 24px;
}

.env-section:last-child[b-exth23msxy] {
    margin-bottom: 0;
}

.env-section-title[b-exth23msxy] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 20px 0;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--border-light);
}

.question-group[b-exth23msxy] {
    margin-bottom: 24px;
}

.question-group:last-child[b-exth23msxy] {
    margin-bottom: 0;
}

.question-label[b-exth23msxy] {
    display: block;
    font-size: 14px;
    font-weight: 500;
    color: var(--text-primary);
    margin-bottom: 12px;
    line-height: 1.5;
}
.required[b-exth23msxy] {
    color: var(--error-600);
    font-weight: 600;
}

.help-link[b-exth23msxy] {
    display: inline-block;
    font-size: 13px;
    color: var(--brand-600);
    margin-bottom: 12px;
    text-decoration: none;
}

.help-link:hover[b-exth23msxy] {
    text-decoration: underline;
    color: var(--brand-700);
}

/* Radio Buttons */
.radio-group[b-exth23msxy] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.radio-group-inline[b-exth23msxy] {
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
}

.radio-label[b-exth23msxy] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
    padding: 12px;
    border-radius: 6px;
    transition: background-color 0.2s ease;
}

.radio-group .radio-label[b-exth23msxy] {
    border: 1px solid var(--border-medium);
    background: white;
}

.radio-group .radio-label:hover[b-exth23msxy] {
    background: var(--neutral-50);
    border-color: var(--brand-400);
}

.radio-label input[type="radio"][b-exth23msxy] {
    margin-top: 2px;
    width: 18px;
    height: 18px;
    cursor: pointer;
    accent-color: var(--brand-600);
    flex-shrink: 0;
}

.radio-label span[b-exth23msxy] {
    font-size: 14px;
    color: var(--text-secondary);
    line-height: 1.5;
    user-select: none;
}

.radio-label:has(input[type="radio"]:checked)[b-exth23msxy] {
    background: var(--brand-50);
    border-color: var(--brand-600);
}

.radio-label:has(input[type="radio"]:checked) span[b-exth23msxy] {
    color: var(--text-primary);
    font-weight: 500;
}

/* File Upload Area */
.file-upload-area[b-exth23msxy] {
    border: 2px dashed var(--border-medium);
    border-radius: 8px;
    padding: 32px;
    text-align: center;
    background: white;
    cursor: pointer;
    transition: all 0.2s ease;
}

.file-upload-area:hover[b-exth23msxy] {
    border-color: var(--brand-500);
    background: var(--brand-50);
}

.file-upload-area i[b-exth23msxy] {
    font-size: 40px;
    color: var(--brand-500);
    margin-bottom: 12px;
}

.file-upload-text[b-exth23msxy] {
    font-size: 15px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 4px;
}

.file-upload-hint[b-exth23msxy] {
    font-size: 14px;
    color: var(--text-muted);
    margin-bottom: 12px;
}

.file-upload-limit[b-exth23msxy] {
    display: block;
    font-size: 13px;
    color: var(--text-muted);
}

/* Warranty Section */
.warranty-section[b-exth23msxy] {
    background: linear-gradient(135deg, #FFF7ED 0%, #FFFBEB 100%);
    border-color: #FED7AA;
}

.warranty-text[b-exth23msxy] {
    font-size: 14px;
    color: var(--text-secondary);
    line-height: 1.6;
    margin-bottom: 20px;
}

.warranty-text p[b-exth23msxy] {
    margin-bottom: 12px;
    font-weight: 500;
}

.warranty-text ul[b-exth23msxy] {
    margin: 0;
    padding-left: 24px;
}

.warranty-text li[b-exth23msxy] {
    margin-bottom: 8px;
}

.warranty-text li:last-child[b-exth23msxy] {
    margin-bottom: 0;
}

/* Form Actions */
.form-actions[b-exth23msxy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 32px;
    border-top: 1px solid var(--border-light);
    margin-top: 32px;
}

.action-buttons-right[b-exth23msxy] {
    display: flex;
    gap: 12px;
}

.btn-cancel[b-exth23msxy] {
    padding: 12px 24px;
    background: transparent;
    border: none;
    border-radius: 6px;
    color: var(--error-600);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-cancel:hover[b-exth23msxy] {
    background: var(--error-50);
    color: var(--error-700);
}

.btn-back[b-exth23msxy] {
    padding: 12px 24px;
    background: transparent;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    color: #64748B;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-back:hover[b-exth23msxy] {
    background: #F1F5F9;
    border-color: #E2E8F0;
    color: #0F172A;
}

.btn-save-draft[b-exth23msxy] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 24px;
    background: transparent;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    color: #64748B;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-save-draft:hover[b-exth23msxy] {
    background: #F1F5F9;
    border-color: #E2E8F0;
    color: #0F172A;
}

.btn-save-draft i[b-exth23msxy] {
    font-size: 16px;
}

.btn-continue[b-exth23msxy] {
    padding: 12px 32px;
    background: var(--brand-600);
    border: none;
    border-radius: 10px;
    color: white;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-continue:hover[b-exth23msxy] {
    background: var(--brand-700);
}

/* Premium Estimate Section */
.premium-estimate-container[b-exth23msxy] {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 24px;
    margin-bottom: 32px;
}

.premium-main-card[b-exth23msxy] {
    background: linear-gradient(135deg, #e3f1fb 0%, #ffffff 100%);
    border: 1px solid var(--brand-200);
    border-radius: 12px;
    padding: 32px;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.1);
}

.premium-header[b-exth23msxy] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-secondary);
    margin-bottom: 16px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.premium-amount[b-exth23msxy] {
    font-size: 48px;
    font-weight: 700;
    color: var(--brand-700);
    margin-bottom: 24px;
    line-height: 1;
}

.premium-breakdown[b-exth23msxy] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-top: 24px;
    border-top: 2px solid var(--brand-200);
}

.breakdown-row[b-exth23msxy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 15px;
}

.breakdown-label[b-exth23msxy] {
    color: var(--text-secondary);
    font-weight: 500;
}

.breakdown-value[b-exth23msxy] {
    color: var(--text-primary);
    font-weight: 600;
    font-size: 16px;
}

.premium-side-card[b-exth23msxy] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 12px;
    padding: 24px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.side-card-header[b-exth23msxy] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 20px;
}

.side-card-header i[b-exth23msxy] {
    font-size: 16px;
    color: var(--brand-500);
}

.side-card-title[b-exth23msxy] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-secondary);
    margin-bottom: 12px;
}

.side-card-amount[b-exth23msxy] {
    font-size: 36px;
    font-weight: 700;
    color: var(--brand-600);
    margin-bottom: 20px;
    line-height: 1;
}

.side-card-disclaimer[b-exth23msxy] {
    font-size: 12px;
    color: var(--text-muted);
    line-height: 1.5;
    font-style: italic;
}

.disclaimer-box[b-exth23msxy] {
    background: linear-gradient(135deg, #FFF7ED 0%, #FFFBEB 100%);
    border: 1px solid #FED7AA;
    border-radius: 8px;
    padding: 20px 24px;
    margin-bottom: 24px;
}

.disclaimer-title[b-exth23msxy] {
    font-size: 14px;
    font-weight: 600;
    color: #92400E;
    margin-bottom: 8px;
}

.disclaimer-text[b-exth23msxy] {
    font-size: 13px;
    color: #92400E;
    line-height: 1.6;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .form-row[b-exth23msxy] {
        grid-template-columns: 1fr;
    }

    .form-row-two-col[b-exth23msxy] {
        grid-template-columns: 1fr;
    }

    .form-row-three-col[b-exth23msxy] {
        grid-template-columns: 1fr;
    }

    .premium-estimate-container[b-exth23msxy] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .progress-steps[b-exth23msxy] {
        padding: 16px;
        flex-direction: column;
    }

    .step[b-exth23msxy]::after {
        top: 50px;
        left: 20px;
        width: 2px;
        height: calc(100% - 40px);
    }

    .step:last-child[b-exth23msxy]::after {
        display: none;
    }

    .form-container[b-exth23msxy] {
        padding: 20px;
    }

    .form-subsection[b-exth23msxy] {
        padding: 16px;
    }

    .borrower-collateral-section[b-exth23msxy] {
        padding: 16px;
    }

    .env-section[b-exth23msxy] {
        padding: 16px;
    }

    .premium-main-card[b-exth23msxy],
    .premium-side-card[b-exth23msxy] {
        padding: 20px;
    }

    .premium-amount[b-exth23msxy] {
        font-size: 36px;
    }

    .side-card-amount[b-exth23msxy] {
        font-size: 28px;
    }

    .radio-group-inline[b-exth23msxy] {
        flex-direction: column;
        gap: 12px;
    }

    .file-upload-area[b-exth23msxy] {
        padding: 24px 16px;
    }

    .form-actions[b-exth23msxy] {
        flex-direction: column;
        gap: 16px;
        align-items: stretch;
    }

    .action-buttons-right[b-exth23msxy] {
        flex-direction: column;
        width: 100%;
    }

    .btn-save-draft[b-exth23msxy],
    .btn-continue[b-exth23msxy],
    .btn-cancel[b-exth23msxy],
    .btn-back[b-exth23msxy] {
        width: 100%;
        justify-content: center;
    }
}

/* Input validation states */
.form-input.error[b-exth23msxy],
.form-select.error[b-exth23msxy] {
    border-color: var(--error-500);
}

.form-input.error:focus[b-exth23msxy],
.form-select.error:focus[b-exth23msxy] {
    border-color: var(--error-500);
    box-shadow: 0 0 0 3px var(--error-50);
}

.form-input.success[b-exth23msxy],
.form-select.success[b-exth23msxy] {
    border-color: var(--success-500);
}

.form-input.success:focus[b-exth23msxy],
.form-select.success:focus[b-exth23msxy] {
    border-color: var(--success-500);
    box-shadow: 0 0 0 3px var(--success-100);
}

/* Review & Submit Step Styles */
.review-section[b-exth23msxy] {
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid var(--border-light);
    border-radius: 8px;
    padding: 24px;
    margin-bottom: 24px;
}

.review-section:last-child[b-exth23msxy] {
    margin-bottom: 0;
}

.review-section-title[b-exth23msxy] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 20px 0;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--border-light);
}

.review-description[b-exth23msxy] {
    font-size: 14px;
    color: var(--text-secondary);
    margin-bottom: 20px;
    line-height: 1.6;
}

.review-grid[b-exth23msxy] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-bottom: 24px;
}

.review-info-group[b-exth23msxy] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.review-info-item[b-exth23msxy] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--border-light);
}

.review-info-item:last-child[b-exth23msxy] {
    border-bottom: none;
    padding-bottom: 0;
}

.review-info-label[b-exth23msxy] {
    font-size: 14px;
    font-weight: 500;
    color: var(--text-secondary);
    flex-shrink: 0;
}

.review-info-value[b-exth23msxy] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    text-align: right;
}

.pricing-table[b-exth23msxy] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 16px;
}

.pricing-row[b-exth23msxy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid var(--border-light);
}

.pricing-row:last-child[b-exth23msxy] {
    border-bottom: none;
}

.pricing-row.pricing-total[b-exth23msxy] {
    padding-top: 16px;
    margin-top: 8px;
    border-top: 2px solid var(--border-medium);
    border-bottom: none;
}

.pricing-label[b-exth23msxy] {
    font-size: 14px;
    font-weight: 500;
    color: var(--text-secondary);
}

.pricing-total .pricing-label[b-exth23msxy] {
    font-size: 16px;
    font-weight: 700;
    color: var(--text-primary);
}

.pricing-value[b-exth23msxy] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
}

.pricing-total .pricing-value[b-exth23msxy] {
    font-size: 20px;
    font-weight: 700;
    color: var(--brand-700);
}

.pricing-disclaimer[b-exth23msxy] {
    font-size: 12px;
    color: var(--text-muted);
    font-style: italic;
    line-height: 1.5;
}

.env-tags[b-exth23msxy] {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.env-tag[b-exth23msxy] {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.env-tag.tag-warning[b-exth23msxy] {
    background: #FEF3C7;
    color: #92400E;
    border: 1px solid #FCD34D;
}

.env-tag.tag-danger[b-exth23msxy] {
    background: #FEE2E2;
    color: #991B1B;
    border: 1px solid #FCA5A5;
}


@media (max-width: 1200px) {
    .review-grid[b-exth23msxy] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/NotFoundPage.razor.rz.scp.css */
.error-container[b-zfoawj4pgv] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 70vh;
    padding: 2rem;
}

.error-card[b-zfoawj4pgv] {
    background: #ffffff;
    border-radius: 16px;
    padding: 3rem 3.5rem;
    max-width: 520px;
    width: 100%;
    text-align: center;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08), 0 1px 4px rgba(0, 0, 0, 0.04);
    border: 1px solid #e5e7eb;
}

.error-code[b-zfoawj4pgv] {
    font-size: 7rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -4px;
    color: #e5e7eb;
    margin-bottom: 0.5rem;
    user-select: none;
}

.error-icon[b-zfoawj4pgv] {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
    font-size: 2rem;
}

.error-icon-notfound[b-zfoawj4pgv] {
    background-color: #fef3c7;
    color: #d97706;
}

.error-card h1[b-zfoawj4pgv] {
    color: #111827;
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
}

.error-message[b-zfoawj4pgv] {
    color: #6b7280;
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 2rem;
}

.error-actions[b-zfoawj4pgv] {
    display: flex;
    flex-direction: row;
    gap: 0.75rem;
    justify-content: center;
}

.error-actions .btn[b-zfoawj4pgv] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.625rem 1.25rem;
    border-radius: 8px;
    font-weight: 500;
    font-size: 0.9rem;
    text-decoration: none;
    transition: all 0.2s ease;
    cursor: pointer;
}

.error-actions .btn-primary[b-zfoawj4pgv] {
    background-color: var(--brand-500);
    color: #ffffff;
    border: none;
}

.error-actions .btn-primary:hover[b-zfoawj4pgv] {
    filter: brightness(0.9);
}

.error-actions .btn-outline-secondary[b-zfoawj4pgv] {
    background-color: transparent;
    color: #374151;
    border: 1px solid #d1d5db;
}

.error-actions .btn-outline-secondary:hover[b-zfoawj4pgv] {
    background-color: #f9fafb;
    border-color: #9ca3af;
}

@media (max-width: 576px) {
    .error-card[b-zfoawj4pgv] {
        padding: 2rem 1.5rem;
    }

    .error-code[b-zfoawj4pgv] {
        font-size: 5rem;
    }

    .error-icon[b-zfoawj4pgv] {
        width: 56px;
        height: 56px;
        font-size: 1.5rem;
    }

    .error-card h1[b-zfoawj4pgv] {
        font-size: 1.5rem;
    }

    .error-actions[b-zfoawj4pgv] {
        flex-direction: column;
    }

    .error-actions .btn[b-zfoawj4pgv] {
        width: 100%;
    }
}
/* /Components/Pages/NotificationsPage.razor.rz.scp.css */
/* ========================================
   Notifications Page - Clean & Subtle Design
   ======================================== */

.notifications-page[b-5n4bx165y7] {
    max-width: 900px;
    margin: 0 auto;
    padding: var(--space-lg);
}

/* ========================================
   Page Header
   ======================================== */
.notifications-page .page-header[b-5n4bx165y7] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: var(--space-lg);
    gap: var(--space-md);
}

.notifications-page .page-header-content[b-5n4bx165y7] {
    display: flex;
    align-items: center;
    gap: var(--space-xl);
    flex-wrap: wrap;
}

.notifications-page .page-title-section[b-5n4bx165y7] {
    flex: 1;
    min-width: 200px;
}

.notifications-page .page-title[b-5n4bx165y7] {
    font-size: 24px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 4px 0;
    display: flex;
    align-items: center;
}

.notifications-page .page-title i[b-5n4bx165y7] {
    color: var(--brand-500);
    font-size: 22px;
}

.notifications-page .page-subtitle[b-5n4bx165y7] {
    font-size: 14px;
    color: var(--text-muted);
    margin: 0;
}

.notifications-page .page-header-stats[b-5n4bx165y7] {
    display: flex;
    gap: var(--space-sm);
}

.notifications-page .stat-badge[b-5n4bx165y7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 8px 14px;
    background: var(--neutral-50);
    border: 1px solid var(--neutral-200);
    border-radius: var(--radius-md);
    min-width: 60px;
}

.notifications-page .stat-badge.unread[b-5n4bx165y7] {
    background: var(--brand-50);
    border-color: var(--brand-200);
}

.notifications-page .stat-value[b-5n4bx165y7] {
    font-size: 18px;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1;
}

.notifications-page .stat-badge.unread .stat-value[b-5n4bx165y7] {
    color: var(--brand-600);
}

.notifications-page .stat-label[b-5n4bx165y7] {
    font-size: 11px;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-top: 2px;
}

.notifications-page .page-header-actions[b-5n4bx165y7] {
    display: flex;
    gap: var(--space-sm);
    align-items: center;
}

.notifications-page .page-header-actions .btn[b-5n4bx165y7] {
    border-radius: var(--radius-md);
    font-size: 13px;
    font-weight: 500;
    padding: 8px 16px;
    transition: all 0.15s ease;
}

.notifications-page .page-header-actions .btn-primary[b-5n4bx165y7] {
    background: var(--brand-500);
    border-color: var(--brand-500);
    color: white;
}

.notifications-page .page-header-actions .btn-primary:hover[b-5n4bx165y7] {
    background: var(--brand-600);
    border-color: var(--brand-600);
}

.notifications-page .page-header-actions .btn-primary:disabled[b-5n4bx165y7] {
    background: var(--brand-300);
    border-color: var(--brand-300);
    opacity: 0.7;
}

.notifications-page .page-header-actions .btn-outline-secondary[b-5n4bx165y7] {
    background: transparent;
    border: 1px solid var(--neutral-300);
    color: var(--text-secondary);
    padding: 8px 12px;
}

.notifications-page .page-header-actions .btn-outline-secondary:hover[b-5n4bx165y7] {
    background: var(--neutral-100);
    border-color: var(--neutral-400);
    color: var(--text-primary);
}

/* Spinning animation for refresh button */
@keyframes spin-b-5n4bx165y7 {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.notifications-page .spinning[b-5n4bx165y7] {
    animation: spin-b-5n4bx165y7 1s linear infinite;
}

/* ========================================
   Filter Tabs
   ======================================== */
.notifications-page .filter-card[b-5n4bx165y7] {
    background: var(--bg-surface);
    border: 1px solid var(--neutral-200);
    border-radius: var(--radius-lg);
    padding: 4px;
    margin-bottom: var(--space-lg);
}

.notifications-page .filter-tabs[b-5n4bx165y7] {
    display: flex;
    gap: 2px;
    overflow-x: auto;
}

.notifications-page .filter-tab[b-5n4bx165y7] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    background: transparent;
    border: none;
    border-radius: var(--radius-md);
    color: var(--text-secondary);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.notifications-page .filter-tab:hover[b-5n4bx165y7] {
    background: var(--neutral-100);
    color: var(--text-primary);
}

.notifications-page .filter-tab.active[b-5n4bx165y7] {
    background: var(--brand-500);
    color: white;
}

.notifications-page .filter-tab i[b-5n4bx165y7] {
    font-size: 14px;
}

.notifications-page .tab-badge[b-5n4bx165y7] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    font-size: 11px;
    font-weight: 600;
    color: var(--text-muted);
    background: var(--neutral-100);
    border-radius: 10px;
}

.notifications-page .filter-tab.active .tab-badge[b-5n4bx165y7] {
    background: rgba(255, 255, 255, 0.25);
    color: white;
}

.notifications-page .tab-badge.highlight[b-5n4bx165y7] {
    background: var(--brand-100);
    color: var(--brand-700);
}

.notifications-page .filter-tab.active .tab-badge.highlight[b-5n4bx165y7] {
    background: rgba(255, 255, 255, 0.25);
    color: white;
}

/* ========================================
   Notifications Container
   ======================================== */
.notifications-page .notifications-container[b-5n4bx165y7] {
    background: var(--bg-surface);
    border: 1px solid var(--neutral-200);
    border-radius: var(--radius-lg);
    overflow: hidden;
}

/* ========================================
   Loading State
   ======================================== */
.notifications-page .notifications-loading[b-5n4bx165y7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px;
    gap: 12px;
}

.notifications-page .loading-text[b-5n4bx165y7] {
    color: var(--text-muted);
    font-size: 14px;
    margin: 0;
}

/* ========================================
   Empty State
   ======================================== */
.notifications-page .notifications-empty[b-5n4bx165y7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 48px 24px;
    text-align: center;
}

.notifications-page .empty-icon-wrapper[b-5n4bx165y7] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--neutral-100);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
}

.notifications-page .empty-icon-wrapper i[b-5n4bx165y7] {
    font-size: 28px;
    color: var(--neutral-400);
}

.notifications-page .notifications-empty h3[b-5n4bx165y7] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 8px 0;
}

.notifications-page .notifications-empty p[b-5n4bx165y7] {
    font-size: 14px;
    color: var(--text-muted);
    margin: 0;
    max-width: 280px;
}

/* ========================================
   Notifications List
   ======================================== */
.notifications-page .notifications-list[b-5n4bx165y7] {
    display: flex;
    flex-direction: column;
}

/* ========================================
   Notification Item - RESET all global styles
   ======================================== */
.notifications-page .notifications-list .notification-item[b-5n4bx165y7] {
    display: flex !important;
    align-items: flex-start !important;
    padding: 16px !important;
    cursor: pointer;
    transition: background 0.15s ease;
    border-bottom: 1px solid var(--neutral-100) !important;
    background: var(--bg-surface) !important;
    position: relative;
    opacity: 1 !important;
    gap: 0 !important;
}

/* CRITICAL: Remove ALL pseudo-elements from global theme */
.notifications-page .notifications-list .notification-item[b-5n4bx165y7]::before {
    display: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    background: transparent !important;
    position: static !important;
}

.notifications-page .notifications-list .notification-item[b-5n4bx165y7]::after {
    display: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    background: transparent !important;
    position: static !important;
}

.notifications-page .notifications-list .notification-item.unread[b-5n4bx165y7]::before {
    display: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    background: transparent !important;
}

.notifications-page .notifications-list .notification-item.unread[b-5n4bx165y7]::after {
    display: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    background: transparent !important;
}

.notifications-page .notifications-list .notification-item:last-child[b-5n4bx165y7] {
    border-bottom: none !important;
}

.notifications-page .notifications-list .notification-item:hover[b-5n4bx165y7] {
    background: var(--neutral-50) !important;
}

/* Unread items */
.notifications-page .notifications-list .notification-item.unread[b-5n4bx165y7] {
    background: var(--bg-surface) !important;
    opacity: 1 !important;
}

.notifications-page .notifications-list .notification-item.unread:hover[b-5n4bx165y7] {
    background: var(--neutral-50) !important;
}

/* Read items */
.notifications-page .notifications-list .notification-item.read[b-5n4bx165y7] {
    background: var(--bg-surface) !important;
    opacity: 1 !important;
}

.notifications-page .notifications-list .notification-item.read:hover[b-5n4bx165y7] {
    background: var(--neutral-50) !important;
    opacity: 1 !important;
}

.notifications-page .notifications-list .notification-item.read .notification-title[b-5n4bx165y7] {
    color: var(--text-secondary);
    font-weight: 500;
}

.notifications-page .notifications-list .notification-item.read .notification-message[b-5n4bx165y7] {
    color: var(--text-muted);
}

.notifications-page .notifications-list .notification-item.read .notification-icon[b-5n4bx165y7] {
    opacity: 0.5;
}

/* Notification Icon */
.notifications-page .notifications-list .notification-icon[b-5n4bx165y7] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: var(--radius-md);
    flex-shrink: 0;
    margin-right: 12px;
    background: var(--neutral-100);
}

.notifications-page .notifications-list .notification-item.severity-info .notification-icon[b-5n4bx165y7] {
    background: var(--brand-50);
    color: var(--brand-600);
}

.notifications-page .notifications-list .notification-item.severity-success .notification-icon[b-5n4bx165y7] {
    background: var(--success-50);
    color: var(--success-600);
}

.notifications-page .notifications-list .notification-item.severity-warning .notification-icon[b-5n4bx165y7] {
    background: var(--warning-50);
    color: var(--warning-600);
}

.notifications-page .notifications-list .notification-item.severity-error .notification-icon[b-5n4bx165y7] {
    background: var(--error-50);
    color: var(--error-600);
}

.notifications-page .notifications-list .notification-icon i[b-5n4bx165y7] {
    font-size: 18px;
}

/* Notification Content */
.notifications-page .notifications-list .notification-content[b-5n4bx165y7] {
    flex: 1;
    min-width: 0;
}

.notifications-page .notifications-list .notification-header[b-5n4bx165y7] {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 4px !important;
    flex-wrap: wrap;
    background: transparent !important;
    padding: 0 !important;
}

.notifications-page .notifications-list .notification-badge[b-5n4bx165y7] {
    padding: 2px 6px;
    font-size: 10px;
    font-weight: 600;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.notifications-page .notifications-list .notification-badge.severity-info[b-5n4bx165y7] {
    background: var(--brand-100);
    color: var(--brand-700);
}

.notifications-page .notifications-list .notification-badge.severity-success[b-5n4bx165y7] {
    background: var(--success-100);
    color: var(--success-700);
}

.notifications-page .notifications-list .notification-badge.severity-warning[b-5n4bx165y7] {
    background: var(--warning-200);
    color: var(--warning-700);
}

.notifications-page .notifications-list .notification-badge.severity-error[b-5n4bx165y7] {
    background: var(--error-50);
    color: var(--error-700);
}

.notifications-page .notifications-list .notification-type[b-5n4bx165y7] {
    font-size: 11px;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.notifications-page .notifications-list .notification-time[b-5n4bx165y7] {
    margin-left: auto;
    font-size: 12px;
    color: var(--text-muted);
    display: flex;
    align-items: center;
    white-space: nowrap;
}

.notifications-page .notifications-list .notification-time i[b-5n4bx165y7] {
    font-size: 11px;
}

.notifications-page .notifications-list .notification-title[b-5n4bx165y7] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 2px 0;
    line-height: 1.4;
}

.notifications-page .notifications-list .notification-message[b-5n4bx165y7] {
    font-size: 13px;
    color: var(--text-secondary);
    margin: 0;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.notifications-page .notifications-list .notification-link[b-5n4bx165y7] {
    display: inline-flex;
    align-items: center;
    margin-top: 6px;
    font-size: 12px;
    font-weight: 500;
    color: var(--brand-600);
}

.notifications-page .notifications-list .notification-link:hover[b-5n4bx165y7] {
    color: var(--brand-700);
}

/* Unread Indicator Dot */
.notifications-page .notifications-list .unread-indicator[b-5n4bx165y7] {
    display: block;
    width: 8px;
    height: 8px;
    background: var(--brand-500);
    border-radius: 50%;
    flex-shrink: 0;
    margin: 0 8px;
    align-self: center;
}

/* Notification Actions */
.notifications-page .notifications-list .notification-actions[b-5n4bx165y7] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding-left: 8px;
    opacity: 0;
    transition: opacity 0.15s ease;
}

.notifications-page .notifications-list .notification-item:hover .notification-actions[b-5n4bx165y7] {
    opacity: 1;
}

.notifications-page .notifications-list .action-btn[b-5n4bx165y7] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    padding: 0;
    background: transparent;
    border: 1px solid transparent;
    border-radius: var(--radius-sm);
    color: var(--text-muted);
    cursor: pointer;
    transition: all 0.15s ease;
}

.notifications-page .notifications-list .action-btn:hover[b-5n4bx165y7] {
    background: var(--neutral-100);
    border-color: var(--neutral-200);
    color: var(--text-secondary);
}

.notifications-page .notifications-list .action-btn.mark-read:hover[b-5n4bx165y7] {
    background: var(--success-50);
    border-color: var(--success-200);
    color: var(--success-600);
}

.notifications-page .notifications-list .action-btn.delete:hover[b-5n4bx165y7] {
    background: var(--error-50);
    border-color: var(--error-200);
    color: var(--error-600);
}

.notifications-page .notifications-list .action-btn i[b-5n4bx165y7] {
    font-size: 13px;
}

/* ========================================
   Load More Section
   ======================================== */
.notifications-page .load-more-section[b-5n4bx165y7] {
    display: flex;
    justify-content: center;
    padding: 16px;
    border-top: 1px solid var(--neutral-100);
    background: var(--neutral-50);
}

.notifications-page .load-more-btn[b-5n4bx165y7] {
    font-size: 13px;
    font-weight: 500;
    padding: 8px 20px;
    border-radius: var(--radius-md);
    background: transparent;
    border: 1px solid var(--neutral-300);
    color: var(--text-secondary);
    transition: all 0.15s ease;
}

.notifications-page .load-more-btn:hover[b-5n4bx165y7] {
    background: var(--bg-surface);
    border-color: var(--brand-400);
    color: var(--brand-600);
}

.notifications-page .load-more-btn:disabled[b-5n4bx165y7] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* ========================================
   Responsive Design
   ======================================== */
@media (max-width: 768px) {
    .notifications-page[b-5n4bx165y7] {
        padding: 16px;
    }

    .notifications-page .page-header[b-5n4bx165y7] {
        flex-direction: column;
        gap: 12px;
    }

    .notifications-page .page-header-content[b-5n4bx165y7] {
        flex-direction: column;
        width: 100%;
        gap: 12px;
        align-items: flex-start;
    }

    .notifications-page .page-header-actions[b-5n4bx165y7] {
        width: 100%;
        justify-content: flex-end;
    }

    .notifications-page .filter-tab[b-5n4bx165y7] {
        padding: 6px 10px;
        font-size: 12px;
    }

    .notifications-page .filter-tab i[b-5n4bx165y7] {
        display: none;
    }

    .notifications-page .notification-item[b-5n4bx165y7] {
        padding: 12px;
    }

    .notifications-page .notification-icon[b-5n4bx165y7] {
        width: 36px;
        height: 36px;
    }

    .notifications-page .notification-header[b-5n4bx165y7] {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }

    .notifications-page .notification-time[b-5n4bx165y7] {
        margin-left: 0;
    }

    .notifications-page .notification-actions[b-5n4bx165y7] {
        opacity: 1;
    }
}

/* /Components/Pages/Onboarding/EsignOnboardingPage.razor.rz.scp.css */
.esign-page[b-k49vfo8o4z] {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    min-height: 100vh;
    padding: 2.5rem 1rem;
    background: linear-gradient(180deg, #f7f8fa 0%, #eef1f6 100%);
}

.esign-card[b-k49vfo8o4z] {
    width: 100%;
    max-width: 760px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    box-shadow: 0 10px 40px rgba(17, 24, 39, 0.08);
    padding: 2rem 2.25rem 1.75rem;
}

.esign-header[b-k49vfo8o4z] {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    margin-bottom: 1.25rem;
}

.esign-header-icon[b-k49vfo8o4z] {
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: linear-gradient(135deg, #2563eb, #4f86f7);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
}

.esign-header h2[b-k49vfo8o4z] {
    font-size: 1.4rem;
    margin: 0;
    color: #111827;
}

.esign-sub[b-k49vfo8o4z] {
    margin: 0.3rem 0 0;
    color: #6b7280;
    font-size: 0.92rem;
    line-height: 1.45;
}

.esign-why[b-k49vfo8o4z] {
    display: flex;
    gap: 0.6rem;
    align-items: flex-start;
    background: #eff6ff;
    border: 1px solid #dbeafe;
    color: #1e40af;
    border-radius: 10px;
    padding: 0.75rem 1rem;
    font-size: 0.86rem;
    line-height: 1.45;
    margin-bottom: 1.5rem;
}

.esign-why i[b-k49vfo8o4z] { margin-top: 2px; }

.esign-step[b-k49vfo8o4z] { margin-bottom: 1.5rem; }

.esign-step-head[b-k49vfo8o4z] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.esign-step-num[b-k49vfo8o4z] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #2563eb;
    color: #fff;
    font-size: 0.8rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.esign-step-head h4[b-k49vfo8o4z] { margin: 0; font-size: 1.02rem; color: #111827; }

.esign-disclosure[b-k49vfo8o4z] {
    background: #f9fafb;
    border: 1px solid #eef0f3;
    border-radius: 10px;
    padding: 1rem 1.25rem;
    font-size: 0.88rem;
    line-height: 1.5;
}

.esign-disclosure h5[b-k49vfo8o4z] { font-size: 0.95rem; margin: 0 0 0.5rem; color: #111827; }
.esign-disclosure p[b-k49vfo8o4z] { color: #374151; margin-bottom: 0.6rem; }
.esign-disclosure strong[b-k49vfo8o4z] { color: #1f2937; }
.esign-disclosure-list[b-k49vfo8o4z] {
    margin: 0.25rem 0 0.5rem;
    padding-left: 1.15rem;
    color: #374151;
}
.esign-disclosure-list li[b-k49vfo8o4z] { margin-bottom: 0.35rem; }

.esign-version[b-k49vfo8o4z] { font-size: 0.74rem; margin: 0.5rem 0 0; color: #9ca3af; }

/* Consent checkbox — a clickable card that turns blue when checked */
.esign-consent-check[b-k49vfo8o4z] {
    display: flex;
    gap: 0.7rem;
    align-items: flex-start;
    margin-top: 0.85rem;
    padding: 0.85rem 1rem;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    background: #fff;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s, box-shadow 0.15s;
}

.esign-consent-check:hover[b-k49vfo8o4z] { border-color: #cbd5e1; }

.esign-consent-check.checked[b-k49vfo8o4z] {
    border-color: #2563eb;
    background: #eff6ff;
    box-shadow: inset 0 0 0 1px #2563eb;
}

/* Hide the native box; we render a custom one */
.esign-consent-check input[b-k49vfo8o4z] { position: absolute; opacity: 0; width: 0; height: 0; }

.esign-consent-box[b-k49vfo8o4z] {
    flex: 0 0 auto;
    width: 22px;
    height: 22px;
    border: 2px solid #cbd5e1;
    border-radius: 6px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 0.9rem;
    line-height: 1;
    transition: all 0.15s;
}

.esign-consent-box .bi[b-k49vfo8o4z] { opacity: 0; transform: scale(0.6); transition: all 0.15s; }

.esign-consent-check.checked .esign-consent-box[b-k49vfo8o4z] {
    background: #2563eb;
    border-color: #2563eb;
}

.esign-consent-check.checked .esign-consent-box .bi[b-k49vfo8o4z] { opacity: 1; transform: scale(1); }

.esign-consent-text[b-k49vfo8o4z] {
    font-size: 0.88rem;
    line-height: 1.45;
    color: #374151;
}

/* Segmented control for capture mode */
.esign-tabs[b-k49vfo8o4z] {
    display: flex;
    gap: 4px;
    margin-bottom: 0.6rem;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 4px;
}

.esign-tab[b-k49vfo8o4z] {
    flex: 1;
    border: none;
    background: transparent;
    padding: 0.5rem 0.75rem;
    border-radius: 7px;
    font-size: 0.85rem;
    color: #475569;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s;
}

.esign-tab:hover[b-k49vfo8o4z] { color: #1e293b; }

.esign-tab.active[b-k49vfo8o4z] {
    background: #fff;
    color: #1d4ed8;
    font-weight: 600;
    box-shadow: 0 1px 2px rgba(17, 24, 39, 0.08);
}

.esign-canvas-wrap[b-k49vfo8o4z] {
    position: relative;
    border: 2px dashed #cbd5e1;
    border-radius: 10px;
    background: repeating-linear-gradient(0deg, #fff, #fff 27px, #f1f5f9 28px);
    height: 180px;
    overflow: hidden;
}

.esign-canvas[b-k49vfo8o4z] {
    width: 100%;
    height: 100%;
    touch-action: none;
    cursor: crosshair;
    position: relative;
    z-index: 1;
}

.esign-canvas-hint[b-k49vfo8o4z] {
    position: absolute;
    bottom: 8px;
    left: 0;
    right: 0;
    text-align: center;
    font-size: 0.74rem;
    color: #94a3b8;
    pointer-events: none;
    z-index: 0;
}

.esign-controls[b-k49vfo8o4z] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    margin-top: 0.6rem;
    flex-wrap: wrap;
}

.esign-controls .form-control[b-k49vfo8o4z] { flex: 1; min-width: 200px; }

/* Clear button — subtle outline */
.esign-btn-clear[b-k49vfo8o4z] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    border: 1px solid #E2E8F0;
    background: transparent;
    color: #64748B;
    border-radius: 8px;
    padding: 0.4rem 0.8rem;
    font-size: 0.82rem;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.esign-btn-clear:hover[b-k49vfo8o4z] { background: #F1F5F9; border-color: #E2E8F0; color: #0F172A; }

.esign-actions[b-k49vfo8o4z] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 1.5rem;
    padding-top: 1rem;
    border-top: 1px solid #eef0f3;
}

.esign-actions-left[b-k49vfo8o4z] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

/* Skip / Cancel — clear ghost button (not plain text) */
.esign-btn-ghost[b-k49vfo8o4z] {
    border: 1px solid #E2E8F0;
    background: transparent;
    color: #64748B;
    border-radius: 10px;
    padding: 0.55rem 1.1rem;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.esign-btn-ghost:hover:not(:disabled)[b-k49vfo8o4z] { background: #F1F5F9; border-color: #E2E8F0; color: #0F172A; }
.esign-btn-ghost:disabled[b-k49vfo8o4z] { opacity: 0.5; cursor: default; }

/* Primary — Consent & save */
.esign-btn-primary[b-k49vfo8o4z] {
    display: inline-flex;
    align-items: center;
    border: none;
    background: var(--brand-600, #004980);
    color: #fff;
    border-radius: 10px;
    padding: 0.6rem 1.4rem;
    font-size: 0.92rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.esign-btn-primary:hover:not(:disabled)[b-k49vfo8o4z] { background: var(--brand-700, #003760); }
.esign-btn-primary:disabled[b-k49vfo8o4z] { opacity: 0.5; cursor: default; }

.esign-skip-note[b-k49vfo8o4z] { font-size: 0.76rem; color: #94a3b8; }

.esign-validation-hint[b-k49vfo8o4z] {
    margin: 0.9rem 0 0;
    font-size: 0.82rem;
    color: #64748b;
    display: flex;
    align-items: center;
}
/* /Components/Pages/Profile/ProfilePage.razor.rz.scp.css */
/* ========================================
   Profile Page Styles
   (Mirrors BankPortal/UserDetailPage styles)
   ======================================== */

/* Animations */
@keyframes fadeIn-b-osdx5d9cgx {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes fadeInUp-b-osdx5d9cgx {
    from { opacity: 0; transform: translateY(15px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeInDown-b-osdx5d9cgx {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes scaleIn-b-osdx5d9cgx {
    from { opacity: 0; transform: scale(0.95); }
    to { opacity: 1; transform: scale(1); }
}

@keyframes slideInLeft-b-osdx5d9cgx {
    from { opacity: 0; transform: translateX(-20px); }
    to { opacity: 1; transform: translateX(0); }
}

@keyframes pulse-b-osdx5d9cgx {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}

/* Loading & Error States */
.loading-container[b-osdx5d9cgx],
.error-container[b-osdx5d9cgx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 1rem;
    padding: 2rem;
    text-align: center;
    animation: fadeIn-b-osdx5d9cgx 0.3s ease-out;
}

.loading-container p[b-osdx5d9cgx] {
    color: #64748b;
    font-size: 0.9375rem;
    animation: pulse-b-osdx5d9cgx 1.5s ease-in-out infinite;
}

/* Skeleton loading state */
@keyframes profile-skel-pulse-b-osdx5d9cgx {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.skel-block[b-osdx5d9cgx] {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: profile-skel-pulse-b-osdx5d9cgx 1.5s ease-in-out infinite;
    border-radius: 4px;
}

.profile-skeleton[b-osdx5d9cgx] {
    padding: 1rem;
}

.skel-profile-header[b-osdx5d9cgx] {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 1.5rem;
    margin-bottom: 1.5rem;
}

.skel-header-content[b-osdx5d9cgx] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.skel-header-left[b-osdx5d9cgx] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}

.skel-avatar[b-osdx5d9cgx] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    flex-shrink: 0;
}

.skel-title-section[b-osdx5d9cgx] {
    flex: 1;
}

.skel-action-btn[b-osdx5d9cgx] {
    width: 100px;
    height: 36px;
    border-radius: 8px;
}

.skel-stats-row[b-osdx5d9cgx] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.skel-stat-card[b-osdx5d9cgx] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    border: 1px solid #e9ecef;
    border-radius: 8px;
}

.skel-stat-icon[b-osdx5d9cgx] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    flex-shrink: 0;
}

.skel-stat-content[b-osdx5d9cgx] {
    display: flex;
    flex-direction: column;
}

.skel-tabs-row[b-osdx5d9cgx] {
    display: flex;
    gap: 0.5rem;
    border-bottom: 1px solid #e9ecef;
    padding-bottom: 0.75rem;
}

.skel-overview-grid[b-osdx5d9cgx] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}

.skel-detail-card[b-osdx5d9cgx] {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 1.5rem;
}

@media (max-width: 767.98px) {
    .skel-stats-row[b-osdx5d9cgx] {
        grid-template-columns: 1fr;
    }

    .skel-overview-grid[b-osdx5d9cgx] {
        grid-template-columns: 1fr;
    }

    .skel-header-content[b-osdx5d9cgx] {
        flex-direction: column;
    }
}

.error-container .error-icon[b-osdx5d9cgx] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: #fef2f2;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.5rem;
}

.error-container .error-icon i[b-osdx5d9cgx] {
    font-size: 2.5rem;
    color: #ef4444;
}

.error-container h2[b-osdx5d9cgx] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #0f172a;
    margin: 0;
}

.error-container p[b-osdx5d9cgx] {
    color: #64748b;
    margin: 0 0 1.5rem 0;
}

/* Header */
.user-detail-header[b-osdx5d9cgx] {
    background: white;
    border-radius: 12px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    border: 1px solid rgba(15, 23, 42, 0.1);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    animation: fadeInDown-b-osdx5d9cgx 0.4s ease-out;
}

.header-content[b-osdx5d9cgx] {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 1.5rem;
}

.header-left[b-osdx5d9cgx] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 1rem;
    flex: 1;
    min-width: 0;
}

.user-avatar-lg[b-osdx5d9cgx] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, #10B981, #059669);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
    animation: scaleIn-b-osdx5d9cgx 0.4s ease-out;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.user-avatar-lg:hover[b-osdx5d9cgx] {
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
}

.user-avatar-lg img[b-osdx5d9cgx] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.user-avatar-lg span[b-osdx5d9cgx] {
    font-size: 1.125rem;
    font-weight: 600;
    color: white;
}

/* Avatar editing affordance */
.avatar-column[b-osdx5d9cgx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.375rem;
    flex-shrink: 0;
}

.avatar-editable[b-osdx5d9cgx] {
    position: relative;
    cursor: pointer;
}

.avatar-edit-btn[b-osdx5d9cgx] {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 40%;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.45);
    color: white;
    font-size: 0.75rem;
    opacity: 0;
    transition: opacity 0.15s ease;
    cursor: pointer;
}

.avatar-editable:hover .avatar-edit-btn[b-osdx5d9cgx],
.avatar-edit-btn:focus-within[b-osdx5d9cgx] {
    opacity: 1;
}

/* Hide the actual file input; the label is the visible trigger */
.avatar-edit-btn[b-osdx5d9cgx]  input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}

.avatar-uploading[b-osdx5d9cgx] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.5);
    color: white;
}

.avatar-remove-link[b-osdx5d9cgx] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    background: none;
    border: none;
    padding: 0.125rem 0.25rem;
    font-size: 0.6875rem;
    font-weight: 500;
    line-height: 1;
    color: #6B7280;
    cursor: pointer;
    border-radius: 0.25rem;
    transition: color 0.15s ease, background-color 0.15s ease;
}

.avatar-remove-link i[b-osdx5d9cgx] {
    font-size: 0.75rem;
}

.avatar-remove-link:hover:not(:disabled)[b-osdx5d9cgx] {
    color: #DC2626;
    background-color: rgba(220, 38, 38, 0.08);
}

.avatar-remove-link:disabled[b-osdx5d9cgx] {
    opacity: 0.5;
    cursor: default;
}

.user-title-section[b-osdx5d9cgx] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
    min-width: 0;
    flex: 1;
}

.user-name-row[b-osdx5d9cgx] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.user-name-row h1[b-osdx5d9cgx] {
    font-size: 1.25rem;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
    white-space: nowrap;
}

.user-meta[b-osdx5d9cgx] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.meta-item[b-osdx5d9cgx] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: #64748b;
}

.meta-item i[b-osdx5d9cgx] {
    font-size: 0.8125rem;
    color: #94a3b8;
}

/* Header Actions */
.header-actions[b-osdx5d9cgx] {
    display: flex;
    gap: 0.75rem;
    flex-shrink: 0;
}

.btn-secondary[b-osdx5d9cgx] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: transparent;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    color: #64748B;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-secondary:hover:not(:disabled)[b-osdx5d9cgx] {
    background: #F1F5F9;
    border-color: #E2E8F0;
    color: #0F172A;
}

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

.btn-primary[b-osdx5d9cgx] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: var(--brand-600, #004980);
    border: 1px solid var(--brand-600, #004980);
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    color: white;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-primary:hover[b-osdx5d9cgx] {
    background: var(--brand-700, #003760);
    border-color: var(--brand-700, #003760);
}

/* Actions Menu */
.actions-menu-container[b-osdx5d9cgx] {
    position: relative;
}

.actions-menu-backdrop[b-osdx5d9cgx] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
}

.actions-menu[b-osdx5d9cgx] {
    position: absolute;
    top: calc(100% + 4px);
    right: 0;
    min-width: 260px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12), 0 4px 12px rgba(0, 0, 0, 0.08);
    z-index: 1000;
    padding: 0.5rem 0;
    animation: menuSlideIn-b-osdx5d9cgx 0.15s ease-out;
}

@keyframes menuSlideIn-b-osdx5d9cgx {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
}

.actions-menu-item[b-osdx5d9cgx] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    width: 100%;
    padding: 0.625rem 1rem;
    background: transparent;
    border: none;
    font-size: 0.875rem;
    font-weight: 500;
    color: #374151;
    cursor: pointer;
    transition: all 0.15s ease;
    text-align: left;
    white-space: nowrap;
    text-decoration: none;
}

.actions-menu-item:hover:not(:disabled)[b-osdx5d9cgx] {
    background: rgba(15, 23, 42, 0.05);
    color: var(--brand-500);
}

.actions-menu-item:hover:not(:disabled) i[b-osdx5d9cgx] {
    color: var(--brand-500);
}

.actions-menu-item:disabled[b-osdx5d9cgx] {
    opacity: 0.5;
    cursor: not-allowed;
}

.actions-menu-item i[b-osdx5d9cgx] {
    font-size: 1rem;
    color: #6b7280;
    width: 1.25rem;
    text-align: center;
}

.actions-menu-item.text-danger[b-osdx5d9cgx] {
    color: var(--error-600);
}

.actions-menu-item.text-danger:hover:not(:disabled)[b-osdx5d9cgx] {
    background: rgba(220, 38, 38, 0.06);
    color: var(--error-600);
}

.actions-menu-item.text-danger i[b-osdx5d9cgx],
.actions-menu-item.text-danger:hover:not(:disabled) i[b-osdx5d9cgx] {
    color: var(--error-600);
}

.actions-menu-item.text-warning[b-osdx5d9cgx] {
    color: #d97706;
}

.actions-menu-item.text-warning:hover:not(:disabled)[b-osdx5d9cgx] {
    background: rgba(217, 119, 6, 0.06);
    color: #d97706;
}

.actions-menu-item.text-warning i[b-osdx5d9cgx],
.actions-menu-item.text-warning:hover:not(:disabled) i[b-osdx5d9cgx] {
    color: #d97706;
}

.actions-menu-divider[b-osdx5d9cgx] {
    height: 1px;
    background: #e5e7eb;
    margin: 0.375rem 0;
}

/* Stats Row */
.stats-row[b-osdx5d9cgx] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    animation: fadeInUp-b-osdx5d9cgx 0.5s ease-out;
}

.stat-card[b-osdx5d9cgx] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 0.75rem 1rem;
    min-width: 140px;
    transition: all 0.2s ease;
}

.stat-card:hover[b-osdx5d9cgx] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    border-color: rgba(15, 23, 42, 0.15);
}

.stat-card:nth-child(1)[b-osdx5d9cgx] { animation: fadeInUp-b-osdx5d9cgx 0.4s ease-out 0.1s both; }
.stat-card:nth-child(2)[b-osdx5d9cgx] { animation: fadeInUp-b-osdx5d9cgx 0.4s ease-out 0.2s both; }
.stat-card:nth-child(3)[b-osdx5d9cgx] { animation: fadeInUp-b-osdx5d9cgx 0.4s ease-out 0.3s both; }

.stat-card .stat-icon[b-osdx5d9cgx] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: rgba(15, 23, 42, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.2s ease;
}

.stat-card:hover .stat-icon[b-osdx5d9cgx] {
    transform: scale(1.1);
}

.stat-card .stat-icon i[b-osdx5d9cgx] {
    font-size: 1.125rem;
    color: var(--brand-500);
}

.stat-card .stat-content[b-osdx5d9cgx] {
    display: flex;
    flex-direction: column;
}

.stat-card .stat-value[b-osdx5d9cgx] {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1F2937;
    line-height: 1.2;
}

.stat-card .stat-label[b-osdx5d9cgx] {
    font-size: 0.75rem;
    color: #6B7280;
}

/* Tabs */
.user-tabs[b-osdx5d9cgx] {
    display: flex;
    gap: 0;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    padding: 4px;
    margin-bottom: 1.5rem;
    animation: fadeInUp-b-osdx5d9cgx 0.5s ease-out 0.2s both;
}

.user-tab[b-osdx5d9cgx] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 500;
    color: #6B7280;
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
}

.user-tab:hover[b-osdx5d9cgx] {
    color: #374151;
    background: #F9FAFB;
    transform: translateY(-1px);
}

.user-tab.active[b-osdx5d9cgx] {
    color: var(--brand-500);
    background: rgba(15, 23, 42, 0.08);
}

.tab-badge[b-osdx5d9cgx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    background: #E5E7EB;
    border-radius: 10px;
    font-size: 0.7rem;
    font-weight: 600;
    color: #6B7280;
    transition: all 0.2s ease;
}

.user-tab.active .tab-badge[b-osdx5d9cgx] {
    background: var(--brand-500);
    color: white;
}

/* Content Area */
.user-content[b-osdx5d9cgx] {
    margin-top: 1.5rem;
    animation: fadeIn-b-osdx5d9cgx 0.3s ease-out;
}

/* Overview Grid */
.overview-grid[b-osdx5d9cgx] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}

/* Detail Card */
.detail-card[b-osdx5d9cgx] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    overflow: hidden;
    animation: fadeInUp-b-osdx5d9cgx 0.4s ease-out both;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.detail-card:hover[b-osdx5d9cgx] {
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.08);
}

.overview-grid .detail-card:nth-child(1)[b-osdx5d9cgx] { animation-delay: 0.1s; }
.overview-grid .detail-card:nth-child(2)[b-osdx5d9cgx] { animation-delay: 0.2s; }
.overview-grid .detail-card:nth-child(3)[b-osdx5d9cgx] { animation-delay: 0.3s; }

.detail-card.full-width[b-osdx5d9cgx] {
    grid-column: 1 / -1;
}

.detail-card .card-header[b-osdx5d9cgx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 1.25rem;
    background: #F9FAFB;
    border-bottom: 1px solid #E5E7EB;
}

.detail-card .card-header i[b-osdx5d9cgx] {
    font-size: 1rem;
    color: var(--brand-500);
}

.detail-card .card-header h3[b-osdx5d9cgx] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: #1F2937;
    margin: 0;
    flex: 1;
}

.detail-card .card-body[b-osdx5d9cgx] {
    padding: 1.25rem;
}

/* Detail Grid */
.detail-grid[b-osdx5d9cgx] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.detail-item[b-osdx5d9cgx] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.detail-label[b-osdx5d9cgx] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.detail-value[b-osdx5d9cgx] {
    font-size: 0.9375rem;
    color: #1F2937;
}

.detail-value code[b-osdx5d9cgx] {
    font-size: 0.8rem;
    padding: 2px 6px;
    background: #F3F4F6;
    border-radius: 4px;
    color: #6B7280;
}

/* Status Badges */
.status-badge[b-osdx5d9cgx] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.status-badge i[b-osdx5d9cgx] {
    font-size: 0.7rem;
}

.status-active[b-osdx5d9cgx] {
    background: rgba(16, 185, 129, 0.1);
    color: #059669;
}

.status-inactive[b-osdx5d9cgx] {
    background: rgba(107, 114, 128, 0.1);
    color: #6B7280;
}

/* Role Badges */
.role-badge[b-osdx5d9cgx] {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.role-admin[b-osdx5d9cgx] { background: rgba(139, 92, 246, 0.1); color: #7C3AED; }
.role-banksuperuser[b-osdx5d9cgx] { background: rgba(59, 130, 246, 0.1); color: #2563EB; }
.role-bankuser[b-osdx5d9cgx] { background: rgba(20, 184, 166, 0.1); color: #0D9488; }
.role-agent[b-osdx5d9cgx] { background: rgba(249, 115, 22, 0.1); color: #EA580C; }
.role-underwriter[b-osdx5d9cgx] { background: rgba(99, 102, 241, 0.1); color: #4F46E5; }
.role-other[b-osdx5d9cgx], .role-none[b-osdx5d9cgx] { background: rgba(107, 114, 128, 0.1); color: #6B7280; }

/* Empty & Activity States */
.empty-activity[b-osdx5d9cgx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    text-align: center;
}

.empty-activity i[b-osdx5d9cgx] {
    font-size: 2.5rem;
    color: #D1D5DB;
    margin-bottom: 0.5rem;
}

.empty-activity p[b-osdx5d9cgx] {
    color: #6B7280;
    margin: 0;
}

/* Activity Timeline */
.activity-timeline[b-osdx5d9cgx] {
    padding: 1rem 1.25rem;
}

.timeline-item[b-osdx5d9cgx] {
    display: flex;
    gap: 1rem;
    padding: 1rem 0;
    border-bottom: 1px solid #F1F5F9;
    animation: slideInLeft-b-osdx5d9cgx 0.4s ease-out both;
    transition: background 0.2s ease;
}

.timeline-item:nth-child(1)[b-osdx5d9cgx] { animation-delay: 0.05s; }
.timeline-item:nth-child(2)[b-osdx5d9cgx] { animation-delay: 0.1s; }
.timeline-item:nth-child(3)[b-osdx5d9cgx] { animation-delay: 0.15s; }
.timeline-item:nth-child(4)[b-osdx5d9cgx] { animation-delay: 0.2s; }
.timeline-item:nth-child(5)[b-osdx5d9cgx] { animation-delay: 0.25s; }
.timeline-item:nth-child(n+6)[b-osdx5d9cgx] { animation-delay: 0.3s; }

.timeline-item:hover[b-osdx5d9cgx] {
    background: rgba(15, 23, 42, 0.02);
}

.timeline-item:last-child[b-osdx5d9cgx] {
    border-bottom: none;
}

.timeline-marker[b-osdx5d9cgx] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: transform 0.2s ease;
}

.timeline-item:hover .timeline-marker[b-osdx5d9cgx] {
    transform: scale(1.1);
}

.timeline-marker.activity-success[b-osdx5d9cgx] { background: rgba(16, 185, 129, 0.1); color: #059669; }
.timeline-marker.activity-warning[b-osdx5d9cgx] { background: rgba(245, 158, 11, 0.1); color: #D97706; }
.timeline-marker.activity-error[b-osdx5d9cgx] { background: rgba(239, 68, 68, 0.1); color: var(--error-600); }
.timeline-marker.activity-info[b-osdx5d9cgx] { background: rgba(59, 130, 246, 0.1); color: #2563EB; }

.timeline-content[b-osdx5d9cgx] {
    flex: 1;
    min-width: 0;
}

.timeline-header[b-osdx5d9cgx] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.25rem;
}

.timeline-time[b-osdx5d9cgx] {
    font-size: 0.8rem;
    color: #6B7280;
}

.timeline-description[b-osdx5d9cgx] {
    margin: 0;
    font-size: 0.9375rem;
    color: #374151;
}

/* Activity Badges */
.activity-badge[b-osdx5d9cgx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 50px;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.05em;
}

.activity-success[b-osdx5d9cgx] { background: rgba(16, 185, 129, 0.1); color: #059669; }
.activity-warning[b-osdx5d9cgx] { background: rgba(245, 158, 11, 0.1); color: #D97706; }
.activity-error[b-osdx5d9cgx] { background: rgba(239, 68, 68, 0.1); color: var(--error-600); }
.activity-info[b-osdx5d9cgx] { background: rgba(59, 130, 246, 0.1); color: #2563EB; }
.activity-default[b-osdx5d9cgx] { background: rgba(107, 114, 128, 0.1); color: #6B7280; }

/* Activity Details */
.activity-details[b-osdx5d9cgx] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.5rem;
    margin-top: 0.5rem;
    padding: 0.75rem;
    background: #F8FAFC;
    border-radius: 6px;
    border-left: 3px solid #E2E8F0;
}

.activity-details .detail-item[b-osdx5d9cgx] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: #4B5563;
}

.activity-details .detail-item i[b-osdx5d9cgx] {
    font-size: 0.875rem;
}

.activity-details .detail-item code[b-osdx5d9cgx] {
    font-size: 0.75rem;
    padding: 0.125rem 0.375rem;
    background: #E2E8F0;
    border-radius: 3px;
    color: #334155;
}

.activity-details .detail-item strong[b-osdx5d9cgx] {
    font-weight: 600;
    color: #1F2937;
}

/* Timeline Error State */
.timeline-item.timeline-error[b-osdx5d9cgx] {
    background: rgba(239, 68, 68, 0.03);
    border-left: 3px solid #EF4444;
    margin-left: -1.25rem;
    padding-left: 1.25rem;
}

.timeline-item.timeline-error .timeline-description[b-osdx5d9cgx] {
    color: #991B1B;
}

/* ========================================
   Electronic Signature card (feature 003)
   ======================================== */

/* Reminder — highlighted, spans the full overview grid */
.esign-reminder[b-osdx5d9cgx] {
    grid-column: 1 / -1;
    border: 1px solid #fcd9a8;
    border-left: 4px solid #f59e0b;
    background: linear-gradient(135deg, #fffaf2 0%, #fff7ea 100%);
}

.esign-reminder-inner[b-osdx5d9cgx] {
    display: flex;
    align-items: center;
    gap: 1.1rem;
    padding: 1.25rem 1.5rem;
    flex-wrap: wrap;
}

.esign-reminder-icon[b-osdx5d9cgx] {
    flex: 0 0 auto;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: linear-gradient(135deg, #f59e0b, #fbbf24);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    box-shadow: 0 4px 10px rgba(245, 158, 11, 0.3);
}

.esign-reminder-text[b-osdx5d9cgx] {
    flex: 1 1 280px;
    min-width: 240px;
}

.esign-reminder-eyebrow[b-osdx5d9cgx] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #b45309;
    margin-bottom: 0.3rem;
}

.esign-reminder-text h3[b-osdx5d9cgx] {
    font-size: 1.05rem;
    margin: 0 0 0.35rem;
    color: #7c2d12;
}

.esign-reminder-text p[b-osdx5d9cgx] {
    margin: 0;
    font-size: 0.85rem;
    line-height: 1.5;
    color: #92400e;
}

.esign-reminder-btn[b-osdx5d9cgx] {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    background: var(--brand-600, #004980);
    color: #fff;
    border: none;
    border-radius: 10px;
    padding: 0.65rem 1.3rem;
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.esign-reminder-btn:hover[b-osdx5d9cgx] {
    color: #fff;
    background: var(--brand-700, #003760);
}

/* On file — positive state */
.esign-onfile-badge[b-osdx5d9cgx] {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: #047857;
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    border-radius: 999px;
    padding: 0.15rem 0.65rem;
}

.esign-onfile-body[b-osdx5d9cgx] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}

/* Framed signature preview (feature 003 enhancement). The frame always renders so the
   slot reads as a preview; the empty-state label sits behind the image and shows through
   when there's no image or the image fails to load. */
.esign-sig-preview[b-osdx5d9cgx] {
    margin: 0;
}

.esign-sig-preview-caption[b-osdx5d9cgx] {
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #6b7280;
    margin-bottom: 0.4rem;
}

.esign-sig-preview-frame[b-osdx5d9cgx] {
    position: relative;
    width: 240px;
    height: 84px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
}

.esign-sig-preview-empty[b-osdx5d9cgx] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    color: #9ca3af;
    font-size: 0.8rem;
}

.esign-sig-preview-img[b-osdx5d9cgx] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 6px 10px;
    background: #fff;
}

.esign-onfile-meta[b-osdx5d9cgx] {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

/* Responsive */
@media (max-width: 992px) {
    .overview-grid[b-osdx5d9cgx] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .header-content[b-osdx5d9cgx] {
        flex-direction: column;
        align-items: flex-start;
    }

    .header-left[b-osdx5d9cgx] {
        width: 100%;
    }

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

    .user-name-row[b-osdx5d9cgx] {
        flex-direction: column;
        align-items: flex-start;
    }

    .stats-row[b-osdx5d9cgx] {
        flex-direction: column;
    }

    .stat-card[b-osdx5d9cgx] {
        width: 100%;
    }

    .detail-grid[b-osdx5d9cgx] {
        grid-template-columns: 1fr;
    }

    .user-tabs[b-osdx5d9cgx] {
        flex-wrap: wrap;
    }
}
/* /Components/Pages/ReleaseNotesPage.razor.rz.scp.css */
.release-notes-page[b-s0anjtrzak] {
    max-width: 1080px;
    margin: 0 auto;
    padding: var(--space-lg) var(--space-lg) var(--space-2xl);
}

/* ---------- Hero ---------- */
.rn-hero[b-s0anjtrzak] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: var(--space-lg);
    padding: var(--space-xl);
    border-radius: var(--radius-lg);
    background: linear-gradient(135deg, var(--brand-600), var(--brand-500) 55%, var(--brand-400));
    color: #fff;
    box-shadow: var(--shadow-md);
}

.rn-title[b-s0anjtrzak] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-sm);
    font-size: 2rem;
    font-weight: var(--font-weight-bold);
    margin: 0 0 var(--space-xs);
    color: #fff;
}

.rn-title i[b-s0anjtrzak] {
    color: var(--accent-300);
}

.rn-subtitle[b-s0anjtrzak] {
    margin: 0;
    font-size: var(--font-size-base);
    color: rgba(255, 255, 255, 0.82);
}

.rn-hero-meta[b-s0anjtrzak] {
    display: flex;
    gap: var(--space-sm);
    flex-wrap: wrap;
}

.rn-meta-chip[b-s0anjtrzak] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: var(--space-sm) var(--space-md);
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: var(--radius-md);
    backdrop-filter: blur(4px);
}

.rn-meta-label[b-s0anjtrzak] {
    font-size: var(--font-size-xs);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: rgba(255, 255, 255, 0.72);
}

.rn-meta-value[b-s0anjtrzak] {
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-semibold);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

/* ---------- Toolbar ---------- */
.rn-toolbar[b-s0anjtrzak] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-md);
    margin: var(--space-lg) 0;
}

.rn-search[b-s0anjtrzak] {
    position: relative;
    display: flex;
    align-items: center;
    flex: 1 1 260px;
    max-width: 360px;
}

.rn-search > i[b-s0anjtrzak] {
    position: absolute;
    left: 12px;
    color: var(--neutral-400);
    pointer-events: none;
}

.rn-search input[b-s0anjtrzak] {
    width: 100%;
    padding: 9px 32px 9px 34px;
    border: 1px solid var(--neutral-300);
    border-radius: var(--radius-pill);
    font-size: var(--font-size-sm);
    background: #fff;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.rn-search input:focus[b-s0anjtrzak] {
    outline: none;
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px var(--brand-100);
}

.rn-search-clear[b-s0anjtrzak] {
    position: absolute;
    right: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border: none;
    border-radius: 50%;
    background: var(--neutral-200);
    color: var(--neutral-600);
    font-size: 0.6rem;
    cursor: pointer;
}

.rn-search-clear:hover[b-s0anjtrzak] {
    background: var(--neutral-300);
}

.rn-filters[b-s0anjtrzak] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-xs);
}

.rn-pill[b-s0anjtrzak] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border: 1px solid var(--neutral-200);
    border-radius: var(--radius-pill);
    background: #fff;
    color: var(--neutral-700);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-medium);
    cursor: pointer;
    transition: all 0.15s;
}

.rn-pill:hover[b-s0anjtrzak] {
    border-color: var(--neutral-300);
    background: var(--neutral-50);
}

.rn-pill.active[b-s0anjtrzak] {
    border-color: var(--brand-500);
    background: var(--brand-500);
    color: #fff;
}

.rn-pill-count[b-s0anjtrzak] {
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-semibold);
    padding: 1px 7px;
    border-radius: var(--radius-pill);
    background: var(--neutral-100);
    color: var(--neutral-600);
}

.rn-pill.active .rn-pill-count[b-s0anjtrzak] {
    background: rgba(255, 255, 255, 0.25);
    color: #fff;
}

/* ---------- Layout ---------- */
.rn-layout[b-s0anjtrzak] {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: var(--space-xl);
    align-items: start;
}

/* ---------- Version rail ---------- */
.rn-rail[b-s0anjtrzak] {
    position: sticky;
    top: var(--space-lg);
    display: flex;
    flex-direction: column;
    gap: 2px;
    max-height: calc(100vh - 48px);
    overflow-y: auto;
    padding-right: var(--space-xs);
    scrollbar-width: thin;
    scrollbar-color: var(--neutral-300) transparent;
}

.rn-rail[b-s0anjtrzak]::-webkit-scrollbar {
    width: 6px;
}

.rn-rail[b-s0anjtrzak]::-webkit-scrollbar-track {
    background: transparent;
}

.rn-rail[b-s0anjtrzak]::-webkit-scrollbar-thumb {
    background: var(--neutral-300);
    border-radius: var(--radius-pill);
}

.rn-rail[b-s0anjtrzak]::-webkit-scrollbar-thumb:hover {
    background: var(--neutral-400);
}

.rn-rail-item[b-s0anjtrzak] {
    display: flex;
    align-items: center;
    gap: var(--space-sm);
    padding: 6px 10px;
    border-radius: var(--radius-md);
    color: var(--neutral-600);
    font-size: var(--font-size-sm);
    text-decoration: none;
    transition: background 0.12s, color 0.12s;
}

.rn-rail-item:hover[b-s0anjtrzak] {
    background: var(--neutral-100);
    color: var(--neutral-900);
}

.rn-rail-item.current[b-s0anjtrzak] {
    background: var(--brand-50);
    color: var(--brand-700);
    font-weight: var(--font-weight-semibold);
}

.rn-rail-dot[b-s0anjtrzak] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--neutral-300);
    flex-shrink: 0;
}

.rn-rail-item.current .rn-rail-dot[b-s0anjtrzak] {
    background: var(--brand-500);
}

.rn-rail-dot.breaking[b-s0anjtrzak] {
    background: var(--error-500);
}

.rn-rail-ver[b-s0anjtrzak] {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.rn-rail-here[b-s0anjtrzak] {
    margin-left: auto;
    font-size: 0.62rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--brand-500);
}

/* ---------- Release cards ---------- */
.rn-stream[b-s0anjtrzak] {
    display: flex;
    flex-direction: column;
    gap: var(--space-lg);
    min-width: 0;
}

.rn-release[b-s0anjtrzak] {
    scroll-margin-top: var(--space-lg);
    padding: var(--space-lg);
    background: #fff;
    border: 1px solid var(--neutral-200);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-xs);
}

.rn-release.current[b-s0anjtrzak] {
    border-color: var(--brand-300);
    box-shadow: 0 0 0 3px var(--brand-50);
}

.rn-release-head[b-s0anjtrzak] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-sm);
    padding-bottom: var(--space-md);
    margin-bottom: var(--space-md);
    border-bottom: 1px solid var(--neutral-100);
}

.rn-release-version[b-s0anjtrzak] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-sm);
}

.rn-version-tag[b-s0anjtrzak] {
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-bold);
    color: var(--neutral-900);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.rn-badge-current[b-s0anjtrzak],
.rn-badge-breaking[b-s0anjtrzak] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-semibold);
    padding: 3px 9px;
    border-radius: var(--radius-pill);
}

.rn-badge-current[b-s0anjtrzak] {
    background: var(--success-100);
    color: var(--success-700);
}

.rn-badge-breaking[b-s0anjtrzak] {
    background: var(--error-100);
    color: var(--error-700);
}

.rn-release-aside[b-s0anjtrzak] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-md);
}

.rn-release-date[b-s0anjtrzak] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: var(--font-size-sm);
    color: var(--neutral-500);
}

.rn-compare[b-s0anjtrzak] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: var(--font-size-sm);
    color: var(--neutral-600);
    text-decoration: none;
    padding: 4px 10px;
    border: 1px solid var(--neutral-200);
    border-radius: var(--radius-md);
    transition: all 0.15s;
}

.rn-compare:hover[b-s0anjtrzak] {
    border-color: var(--neutral-300);
    background: var(--neutral-50);
    color: var(--neutral-900);
}

/* ---------- Categories ---------- */
.rn-category[b-s0anjtrzak] {
    margin-top: var(--space-md);
}

.rn-category:first-of-type[b-s0anjtrzak] {
    margin-top: 0;
}

.rn-category-label[b-s0anjtrzak] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-semibold);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin-bottom: var(--space-sm);
}

.rn-category-count[b-s0anjtrzak] {
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-medium);
    padding: 0 7px;
    border-radius: var(--radius-pill);
    background: var(--neutral-100);
    color: var(--neutral-500);
    text-transform: none;
}

.kind-added .rn-category-label[b-s0anjtrzak] { color: var(--success-700); }
.kind-fixed .rn-category-label[b-s0anjtrzak] { color: var(--info-700); }
.kind-changed .rn-category-label[b-s0anjtrzak] { color: var(--accent-700); }
.kind-breaking .rn-category-label[b-s0anjtrzak] { color: var(--error-700); }
.kind-other .rn-category-label[b-s0anjtrzak] { color: var(--neutral-600); }

.rn-entries[b-s0anjtrzak] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.rn-entry[b-s0anjtrzak] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: var(--space-sm);
    padding: 7px 10px 7px 14px;
    border-radius: var(--radius-md);
    line-height: 1.5;
    position: relative;
}

.rn-entry[b-s0anjtrzak]::before {
    content: "";
    position: absolute;
    left: 4px;
    top: 14px;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--neutral-300);
}

.kind-added .rn-entry[b-s0anjtrzak]::before { background: var(--success-400); }
.kind-fixed .rn-entry[b-s0anjtrzak]::before { background: var(--info-400, var(--info-500)); }
.kind-changed .rn-entry[b-s0anjtrzak]::before { background: var(--accent-400); }
.kind-breaking .rn-entry[b-s0anjtrzak]::before { background: var(--error-400); }

.rn-entry:hover[b-s0anjtrzak] {
    background: var(--neutral-50);
}

.rn-scope[b-s0anjtrzak] {
    flex-shrink: 0;
    font-size: var(--font-size-xs);
    font-weight: var(--font-weight-semibold);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    padding: 1px 8px;
    border-radius: var(--radius-sm);
    background: var(--neutral-100);
    color: var(--neutral-600);
}

.rn-entry-text[b-s0anjtrzak] {
    flex: 1 1 auto;
    color: var(--neutral-800);
    font-size: var(--font-size-sm);
    min-width: 0;
}

.rn-issue[b-s0anjtrzak],
.rn-commit[b-s0anjtrzak] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    flex-shrink: 0;
    font-size: var(--font-size-xs);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    text-decoration: none;
    padding: 1px 7px;
    border-radius: var(--radius-sm);
    transition: background 0.15s;
}

.rn-issue[b-s0anjtrzak] {
    color: var(--brand-600);
    background: var(--brand-50);
}

.rn-commit[b-s0anjtrzak] {
    color: var(--neutral-500);
    background: var(--neutral-50);
    border: 1px solid var(--neutral-200);
}

.rn-issue:hover[b-s0anjtrzak] { background: var(--brand-100); }
.rn-commit:hover[b-s0anjtrzak] { background: var(--neutral-100); color: var(--neutral-700); }

/* ---------- Show more / empty ---------- */
.rn-show-more[b-s0anjtrzak] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-sm);
    align-self: center;
    padding: 10px 20px;
    margin-top: var(--space-xs);
    border: 1px dashed var(--neutral-300);
    border-radius: var(--radius-pill);
    background: #fff;
    color: var(--neutral-600);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-medium);
    cursor: pointer;
    transition: all 0.15s;
}

.rn-show-more:hover[b-s0anjtrzak] {
    border-color: var(--brand-300);
    color: var(--brand-700);
    background: var(--brand-50);
}

.rn-empty[b-s0anjtrzak] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-md);
    padding: var(--space-2xl);
    color: var(--neutral-500);
    text-align: center;
}

.rn-empty i[b-s0anjtrzak] {
    font-size: 2rem;
    color: var(--neutral-300);
}

.rn-empty p[b-s0anjtrzak] {
    margin: 0;
}

/* ---------- Responsive ---------- */
@media (max-width: 820px) {
    .rn-layout[b-s0anjtrzak] {
        grid-template-columns: 1fr;
    }

    .rn-rail[b-s0anjtrzak] {
        position: static;
        flex-direction: row;
        flex-wrap: wrap;
        max-height: none;
        gap: var(--space-xs);
    }

    .rn-rail-here[b-s0anjtrzak] {
        display: none;
    }
}
/* /Components/Pages/ReportProblemPage.razor.rz.scp.css */
.report-problem-page[b-idyrpwenbp] {
    max-width: 800px;
    margin: 0 auto;
    padding: 3rem 2rem;
}

.report-header[b-idyrpwenbp] {
    text-align: center;
    margin-bottom: 2.5rem;
}

.report-title[b-idyrpwenbp] {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 1rem 0;
    letter-spacing: -0.025em;
}

.report-subtitle[b-idyrpwenbp] {
    font-size: 1.125rem;
    color: var(--text-secondary);
    margin: 0;
    line-height: 1.6;
}

.report-form-card[b-idyrpwenbp] {
    background: var(--surface, #fff);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.report-actions[b-idyrpwenbp] {
    display: flex;
    justify-content: flex-end;
    margin-top: 1.5rem;
}

.report-actions .btn[b-idyrpwenbp] {
    min-width: 140px;
}

/* ----- Attachment uploader ----- */

.attachment-section[b-idyrpwenbp] {
    margin-top: 1.5rem;
}

.attachment-label[b-idyrpwenbp] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.5rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.25rem;
}

.attachment-hint[b-idyrpwenbp] {
    font-weight: 400;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.attachment-privacy[b-idyrpwenbp] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-bottom: 0.5rem;
}

.attachment-dropzone[b-idyrpwenbp] {
    position: relative;
    border: 2px dashed var(--border, #d1d5db);
    border-radius: 10px;
    padding: 1.25rem 1rem;
    text-align: center;
    cursor: pointer;
    background: rgba(0, 0, 0, 0.015);
    transition: border-color 120ms ease, background-color 120ms ease;
}

.attachment-dropzone:hover[b-idyrpwenbp],
.attachment-dropzone.active[b-idyrpwenbp] {
    border-color: var(--primary, #0d9488);
    background: rgba(13, 148, 136, 0.06);
}

.attachment-dropzone-inner[b-idyrpwenbp] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
    color: var(--text-secondary);
    pointer-events: none;
}

.attachment-dropzone-icon[b-idyrpwenbp] {
    font-size: 1.75rem;
    color: var(--primary, #0d9488);
}

.attachment-dropzone-text strong[b-idyrpwenbp] {
    display: block;
    color: var(--text-primary);
    font-size: 0.9375rem;
}

.attachment-dropzone-text span[b-idyrpwenbp] {
    font-size: 0.8125rem;
}

/* Hide the native file input completely — the dropzone's @onclick handler
   triggers it programmatically via JS, and drag/drop uses a separate JS path.
   The input sits OUTSIDE the dropzone (sibling) so its programmatic click
   doesn't bubble back into the dropzone's @onclick and loop the file dialog.
   pointer-events:none ensures the invisible input never swallows clicks meant
   for sibling elements (like the description textarea above).
   ::deep is required because <InputFile> is a child component — Blazor's
   scoped-CSS attribute doesn't propagate to its rendered <input>. */
.attachment-section[b-idyrpwenbp]  .attachment-file-input,
.attachment-section[b-idyrpwenbp]  input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
    opacity: 0;
    pointer-events: none;
}

.attachment-error[b-idyrpwenbp] {
    margin-top: 0.5rem;
    color: #b91c1c;
    font-size: 0.8125rem;
}

.attachment-grid[b-idyrpwenbp] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 0.75rem;
    margin-top: 0.75rem;
}

.attachment-tile[b-idyrpwenbp] {
    position: relative;
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.attachment-tile img[b-idyrpwenbp] {
    width: 100%;
    height: 110px;
    object-fit: cover;
    display: block;
    background: #f3f4f6;
}

.attachment-meta[b-idyrpwenbp] {
    padding: 0.4rem 0.5rem;
    display: flex;
    justify-content: space-between;
    gap: 0.5rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.attachment-name[b-idyrpwenbp] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.attachment-size[b-idyrpwenbp] {
    flex-shrink: 0;
    color: var(--text-tertiary, #9ca3af);
}

.attachment-remove[b-idyrpwenbp] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 24px;
    height: 24px;
    border: none;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.65);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 120ms ease;
}

.attachment-remove:hover[b-idyrpwenbp] {
    background: rgba(185, 28, 28, 0.9);
}

.attachment-remove:disabled[b-idyrpwenbp] {
    cursor: not-allowed;
    opacity: 0.5;
}

@media (max-width: 640px) {
    .report-problem-page[b-idyrpwenbp] {
        padding: 1.5rem 1rem;
    }

    .report-title[b-idyrpwenbp] {
        font-size: 1.875rem;
    }

    .report-form-card[b-idyrpwenbp] {
        padding: 1.25rem;
    }

    .report-actions[b-idyrpwenbp] {
        justify-content: stretch;
    }

    .report-actions .btn[b-idyrpwenbp] {
        width: 100%;
    }
}
/* /Components/Pages/Reports/ReportPreviewPage.razor.rz.scp.css */
/* ========================================
   Report Preview Page — themed
   Bootstrap handles layout. Visual treatments only here.
   ======================================== */

.report-preview[b-32tnwnlw39] {
    padding: 24px;
    max-width: 1400px;
}

/* ---------- Breadcrumb ---------- */
.report-breadcrumb[b-32tnwnlw39] {
    display: flex;
    align-items: center;
    font-size: 0.78rem;
    color: var(--text-muted);
}

.report-breadcrumb a[b-32tnwnlw39] {
    display: inline-flex;
    align-items: center;
    color: var(--text-secondary);
    text-decoration: none;
    font-weight: 500;
    transition: color .15s ease;
}

.report-breadcrumb a:hover[b-32tnwnlw39] {
    color: var(--brand-600);
}

.report-breadcrumb .separator[b-32tnwnlw39] {
    font-size: 0.65rem;
    color: var(--text-disabled);
}

.report-breadcrumb .current[b-32tnwnlw39] {
    color: var(--text-primary);
    font-weight: 600;
}

/* ---------- Header (audience badge inline with title, single line) ---------- */
.content-header[b-32tnwnlw39] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 16px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--border-light);
    gap: 16px;
}

.header-text[b-32tnwnlw39] {
    flex: 1;
    min-width: 0;
}

.title-row[b-32tnwnlw39] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 4px;
}

.content-title[b-32tnwnlw39] {
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
    letter-spacing: -0.3px;
}

.content-subtitle[b-32tnwnlw39] {
    font-size: 0.825rem;
    color: var(--text-muted);
    margin: 0;
    font-weight: 500;
    max-width: 720px;
    line-height: 1.5;
}

.header-actions[b-32tnwnlw39] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

/* ---------- Export buttons (subtle ghost — format color appears on hover) ---------- */
.export-btn[b-32tnwnlw39] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-width: 76px;
    height: 30px;
    padding: 0 12px;
    background: transparent;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-sm);
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--text-secondary);
    cursor: pointer;
    transition: color .15s ease, background .15s ease, border-color .15s ease;
}

.export-btn i[b-32tnwnlw39] {
    font-size: 0.9rem;
    opacity: 0.7;
    transition: opacity .15s ease, color .15s ease;
}

.export-btn:hover:not(:disabled)[b-32tnwnlw39] {
    background: var(--bg-hover);
    border-color: var(--border-medium);
    color: var(--text-primary);
}

.export-btn:hover:not(:disabled) i[b-32tnwnlw39] {
    opacity: 1;
}

.export-btn:disabled[b-32tnwnlw39] {
    opacity: 0.45;
    cursor: not-allowed;
}

.export-btn-pdf:hover:not(:disabled)  i[b-32tnwnlw39] { color: #B91C1C; }
.export-btn-xlsx:hover:not(:disabled) i[b-32tnwnlw39] { color: var(--success-700); }
.export-btn-csv:hover:not(:disabled)  i[b-32tnwnlw39] { color: var(--info-700); }

/* ---------- Audience badge ---------- */
.audience-badge[b-32tnwnlw39] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px;
    border-radius: var(--radius-pill);
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    line-height: 1.2;
}

.audience-badge i[b-32tnwnlw39] {
    font-size: 0.75rem;
}

.audience-brand[b-32tnwnlw39]   { background: var(--brand-50);   color: var(--brand-700);   border: 1px solid var(--brand-200); }
.audience-accent[b-32tnwnlw39]  { background: var(--accent-50);  color: var(--accent-700);  border: 1px solid var(--accent-200); }
.audience-info[b-32tnwnlw39]    { background: var(--info-50);    color: var(--info-800);    border: 1px solid var(--info-200); }
.audience-success[b-32tnwnlw39] { background: var(--success-50); color: var(--success-700); border: 1px solid var(--success-200); }

/* ---------- KPI ribbon (compact, inline pills — never the orphaned-card problem) ---------- */
.kpi-ribbon[b-32tnwnlw39] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.kpi-pill[b-32tnwnlw39] {
    display: inline-flex;
    align-items: baseline;
    gap: 8px;
    padding: 8px 14px;
    background: var(--bg-surface);
    border: 1px solid var(--border-light);
    border-left: 3px solid var(--brand-500);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-xs);
}

.kpi-label[b-32tnwnlw39] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted);
}

.kpi-value[b-32tnwnlw39] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
    font-feature-settings: 'tnum';
    line-height: 1;
}

.kpi-hint[b-32tnwnlw39] {
    font-size: 0.7rem;
    color: var(--text-muted);
    font-weight: 500;
}

/* ---------- Filter toolbar (two stacked rows: lead+presets+trailing on top, filter-fields below) ---------- */
.filter-toolbar[b-32tnwnlw39] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 12px 14px;
    background: var(--bg-surface);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-md);
}

.toolbar-row[b-32tnwnlw39] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
}

.toolbar-row--top[b-32tnwnlw39] {
    align-items: center;
}

.toolbar-row--top .filter-trailing[b-32tnwnlw39] {
    margin-left: auto;
}

.toolbar-lead[b-32tnwnlw39] {
    display: flex;
    align-items: center;
    gap: 6px;
    align-self: center;
    padding-right: 4px;
    border-right: 1px solid var(--border-light);
    margin-right: 2px;
}

.toolbar-icon[b-32tnwnlw39] {
    color: var(--brand-600);
    font-size: 14px;
}

.toolbar-label[b-32tnwnlw39] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-secondary);
}

.toolbar-count[b-32tnwnlw39] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 18px;
    padding: 0 6px;
    background: var(--brand-500);
    color: #fff;
    border-radius: var(--radius-pill);
    font-size: 0.65rem;
    font-weight: 700;
    margin-left: 2px;
}

.filter-fields[b-32tnwnlw39] {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    gap: 12px;
    width: 100%;
    min-width: 0;
    padding-top: 4px;
    border-top: 1px solid var(--border-light);
}

.filter-field[b-32tnwnlw39] {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 140px;
}

.filter-label[b-32tnwnlw39] {
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted);
    margin: 0;
}

.filter-input[b-32tnwnlw39] {
    height: 30px;
    font-size: 0.825rem;
    color: var(--text-primary);
    background-color: var(--bg-surface);
    border-color: var(--border-medium);
}

.filter-input:focus[b-32tnwnlw39] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(0, 91, 159, 0.12);
    color: var(--text-primary);
}

.filter-input[b-32tnwnlw39]::placeholder {
    color: var(--text-disabled);
    opacity: 1;
}

/* Search-icon input (borrower / loan #) */
.filter-input-search[b-32tnwnlw39] {
    position: relative;
}

.filter-search-icon[b-32tnwnlw39] {
    position: absolute;
    left: 9px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.78rem;
    color: var(--text-disabled);
    pointer-events: none;
}

.filter-input-with-icon[b-32tnwnlw39] {
    padding-left: 28px;
}

.filter-trailing[b-32tnwnlw39] {
    display: flex;
    gap: 6px;
    align-self: center;
    margin-left: auto;
}

.filter-action-btn[b-32tnwnlw39] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 30px;
    padding: 0 12px;
    background: transparent;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-sm);
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--text-secondary);
    cursor: pointer;
    transition: color .15s ease, background .15s ease, border-color .15s ease, transform .12s ease;
}

.filter-action-btn i[b-32tnwnlw39] {
    font-size: 0.9rem;
    opacity: 0.75;
    transition: opacity .15s ease, color .15s ease, transform .15s ease;
}

.filter-action-btn:hover:not(:disabled)[b-32tnwnlw39] {
    background: var(--bg-hover);
    border-color: var(--border-medium);
    color: var(--text-primary);
}

.filter-action-btn:hover:not(:disabled) i[b-32tnwnlw39] {
    opacity: 1;
}

.filter-action-btn-primary[b-32tnwnlw39] {
    background: var(--brand-50);
    border-color: var(--brand-200);
    color: var(--brand-700);
}

.filter-action-btn-primary i[b-32tnwnlw39] {
    color: var(--brand-600);
    opacity: 1;
}

.filter-action-btn-primary:hover:not(:disabled)[b-32tnwnlw39] {
    background: var(--brand-100);
    border-color: var(--brand-300);
    color: var(--brand-800);
}

.filter-action-btn-primary:hover:not(:disabled) i[b-32tnwnlw39] {
    transform: rotate(60deg);
}

.filter-action-btn:disabled[b-32tnwnlw39] {
    opacity: 0.45;
    cursor: not-allowed;
}

/* ---------- Date-range preset strip ---------- */
.preset-strip[b-32tnwnlw39] {
    display: inline-flex;
    gap: 4px;
    align-items: center;
    align-self: center;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-sm);
    padding: 2px;
    background: var(--bg-surface);
}

.preset-btn[b-32tnwnlw39] {
    height: 24px;
    padding: 0 10px;
    background: transparent;
    border: 0;
    border-radius: calc(var(--radius-sm) - 1px);
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all .12s ease;
}

.preset-btn:hover[b-32tnwnlw39] {
    background: var(--bg-hover);
    color: var(--text-primary);
}

.preset-btn.active[b-32tnwnlw39] {
    background: var(--brand-500);
    color: #fff;
}

/* (.refresh-btn removed — superseded by .filter-action-btn-primary) */

/* ---------- Range pair (Min/Max numeric inputs) ---------- */
.filter-field--range .range-inputs[b-32tnwnlw39] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.filter-field--range .range-input[b-32tnwnlw39] {
    width: 90px;
}

.filter-field--range .range-sep[b-32tnwnlw39] {
    color: var(--text-muted);
    font-size: 0.78rem;
}

/* ---------- Multi-select status dropdown ---------- */
.filter-field--multi[b-32tnwnlw39] {
    position: relative;
}

.multi-dropdown[b-32tnwnlw39] {
    position: relative;
}

.multi-toggle[b-32tnwnlw39] {
    text-align: left;
    cursor: pointer;
    min-width: 140px;
}

.multi-menu[b-32tnwnlw39] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    z-index: 50;
    min-width: 200px;
    max-height: 280px;
    overflow-y: auto;
    background: var(--bg-surface);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-sm);
    box-shadow: var(--shadow-md);
    padding: 6px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.multi-item[b-32tnwnlw39] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 6px;
    border-radius: var(--radius-xs);
    font-size: 0.78rem;
    color: var(--text-primary);
    cursor: pointer;
    user-select: none;
}

.multi-item:hover[b-32tnwnlw39] {
    background: var(--bg-hover);
}

.multi-item input[type="checkbox"][b-32tnwnlw39] {
    margin: 0;
    cursor: pointer;
}

.multi-clear[b-32tnwnlw39] {
    margin-top: 4px;
    padding: 4px 6px;
    background: transparent;
    border: 0;
    border-top: 1px solid var(--border-light);
    color: var(--text-muted);
    font-size: 0.72rem;
    font-weight: 600;
    text-align: left;
    cursor: pointer;
    border-radius: 0;
}

.multi-clear:hover[b-32tnwnlw39] {
    color: var(--brand-600);
}

/* ---------- Date-field toggle ---------- */
.filter-field--date-toggle .filter-input[b-32tnwnlw39] {
    min-width: 110px;
}

/* ---------- Preview cards (override global .card heaviness) ---------- */
.preview-card[b-32tnwnlw39] {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-light) !important;
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-xs);
    padding: 0 !important;
    overflow: hidden;
}

.preview-card[b-32tnwnlw39]::before,
.preview-card[b-32tnwnlw39]::after {
    display: none !important;
    content: none !important;
}

.preview-card-header[b-32tnwnlw39] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: var(--bg-hover);
    border-bottom: 1px solid var(--border-light);
    color: var(--text-primary);
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.preview-card-header i[b-32tnwnlw39] {
    color: var(--brand-600);
    font-size: 0.95rem;
}

.row-count-badge[b-32tnwnlw39] {
    margin-left: auto;
    padding: 2px 10px;
    background: var(--bg-surface);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-pill);
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: none;
    letter-spacing: normal;
}

.chart-host[b-32tnwnlw39] {
    padding: 12px 8px 4px 8px !important;
}

/* ---------- Data table (modern editorial — hairline rows, no vertical lines) ---------- */
.data-table[b-32tnwnlw39] {
    --bs-table-bg: transparent;
    --bs-table-color: var(--text-primary);
    --bs-table-striped-bg: transparent;
    --bs-table-hover-bg: transparent;
    --bs-table-accent-bg: transparent;
    font-size: 0.825rem;
    margin-bottom: 0;
    border-collapse: separate;
    border-spacing: 0;
    background-color: transparent;
}

/* Kill Bootstrap's per-cell inset box-shadow that paints over our row backgrounds */
.data-table > :not(caption) > * > *[b-32tnwnlw39] {
    background-color: transparent;
    box-shadow: none !important;
}

.data-table thead th[b-32tnwnlw39] {
    position: sticky;
    top: 0;
    z-index: 1;
    padding: 10px 16px;
    background-color: var(--bg-surface) !important;
    border-top: 0 !important;
    border-bottom: 1px solid var(--border-medium) !important;
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--text-muted);
    white-space: nowrap;
}

.data-table tbody td[b-32tnwnlw39] {
    padding: 11px 16px;
    border-top: 0 !important;
    border-bottom: 1px solid var(--border-light) !important;
    color: var(--text-primary);
    white-space: nowrap;
    font-weight: 500;
    line-height: 1.4;
}

/* Drop the bottom border on the last row so we don't double up with the card border */
.data-table tbody tr:last-child td[b-32tnwnlw39] {
    border-bottom: 0 !important;
}

/* Zebra applied at row-level (not cell-level) so all columns share the same background.
   Uses the row tr instead of fighting Bootstrap's per-cell --bs-table-bg cascade. */
.data-table tbody tr:nth-child(even)[b-32tnwnlw39] {
    background-color: rgba(15, 23, 42, 0.018);
}

.data-table tbody tr:hover[b-32tnwnlw39] {
    background-color: var(--bg-active);
}

/* Numeric columns: tabular figures, line up cleanly across rows */
.data-table .mono[b-32tnwnlw39] {
    font-variant-numeric: tabular-nums;
    font-feature-settings: 'tnum';
    font-weight: 500;
}

.cell-link[b-32tnwnlw39] {
    color: var(--brand-700);
    text-decoration: none;
    font-weight: 600;
    transition: color .15s ease;
}

.cell-link:hover[b-32tnwnlw39] {
    color: var(--brand-500);
    text-decoration: underline;
}

/* ---------- Pagination bar ---------- */
.pagination-bar[b-32tnwnlw39] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 14px;
    border-top: 1px solid var(--border-light);
    background: var(--bg-hover);
}

.pagination-info[b-32tnwnlw39] {
    font-size: 0.78rem;
    font-weight: 500;
    color: var(--text-secondary);
}

.pagination-actions[b-32tnwnlw39] {
    display: flex;
    gap: 6px;
}

.pager-btn[b-32tnwnlw39] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 12px;
    background: var(--bg-surface);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-sm);
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all .15s ease;
}

.pager-btn:hover:not(:disabled)[b-32tnwnlw39] {
    border-color: var(--brand-300);
    color: var(--brand-700);
    background: var(--brand-50);
}

.pager-btn:disabled[b-32tnwnlw39] {
    opacity: 0.4;
    cursor: not-allowed;
}

.pager-btn i[b-32tnwnlw39] {
    font-size: 0.75rem;
}

/* ---------- Loading & empty states ---------- */
.report-loading[b-32tnwnlw39] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 48px;
    color: var(--text-muted);
    font-size: 0.875rem;
}

.report-loading i.spinning[b-32tnwnlw39] {
    animation: report-page-spin-b-32tnwnlw39 1s linear infinite;
}

@keyframes report-page-spin-b-32tnwnlw39 {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

.empty-state[b-32tnwnlw39] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px 24px;
    text-align: center;
    background: var(--bg-surface);
    border: 1px dashed var(--border-medium);
    border-radius: var(--radius-md);
    color: var(--text-muted);
}

.empty-state i[b-32tnwnlw39] {
    font-size: 2rem;
    color: var(--text-disabled);
    margin-bottom: 10px;
}

/* ---------- Responsive: stack header + toolbar on mobile ---------- */
@media (max-width: 575.98px) {
    .content-header[b-32tnwnlw39] {
        flex-direction: column;
        align-items: stretch;
    }

    .header-actions[b-32tnwnlw39] {
        flex-wrap: wrap;
    }

    .filter-toolbar[b-32tnwnlw39] {
        flex-direction: column;
        align-items: stretch;
    }

    .toolbar-lead[b-32tnwnlw39] {
        border-right: 0;
        padding-right: 0;
    }

    .filter-field[b-32tnwnlw39] {
        min-width: 0;
    }

    .filter-trailing[b-32tnwnlw39] {
        margin-left: 0;
        align-self: flex-end;
    }
}
/* /Components/Pages/Reports/ReportSchedulesPage.razor.rz.scp.css */
/* ========================================
   Report Schedules — aligned with the Reports theme
   (matches ReportsHub + ReportPreviewPage conventions)
   ======================================== */

.schedules-page[b-4yztjymdkt] {
    padding: 24px;
    max-width: 1400px;
}

/* ---------- Breadcrumb (mirrors ReportPreviewPage) ---------- */
.report-breadcrumb[b-4yztjymdkt] {
    display: flex;
    align-items: center;
    font-size: 0.78rem;
    color: var(--text-muted);
}

.report-breadcrumb a[b-4yztjymdkt] {
    display: inline-flex;
    align-items: center;
    color: var(--text-secondary);
    text-decoration: none;
    font-weight: 500;
    transition: color .15s ease;
}

.report-breadcrumb a:hover[b-4yztjymdkt] {
    color: var(--brand-600);
}

.report-breadcrumb .separator[b-4yztjymdkt] {
    font-size: 0.65rem;
    color: var(--text-disabled);
}

.report-breadcrumb .current[b-4yztjymdkt] {
    color: var(--text-primary);
    font-weight: 600;
}

/* ---------- Header (matches preview page) ---------- */
.content-header[b-4yztjymdkt] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 16px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--border-light);
    gap: 16px;
}

.header-text[b-4yztjymdkt] {
    flex: 1;
    min-width: 0;
}

.content-title[b-4yztjymdkt] {
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 4px 0;
    letter-spacing: -0.3px;
}

.content-subtitle[b-4yztjymdkt] {
    font-size: 0.825rem;
    color: var(--text-muted);
    margin: 0;
    font-weight: 500;
    max-width: 720px;
    line-height: 1.5;
}

.header-actions[b-4yztjymdkt] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

/* ---------- Filter toolbar (same structure as ReportPreviewPage) ---------- */
.filter-toolbar[b-4yztjymdkt] {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    gap: 14px;
    padding: 12px 14px;
    background: var(--bg-surface);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-md);
}

.toolbar-lead[b-4yztjymdkt] {
    display: flex;
    align-items: center;
    gap: 6px;
    align-self: center;
    padding-right: 4px;
    border-right: 1px solid var(--border-light);
}

.toolbar-icon[b-4yztjymdkt] { color: var(--brand-600); font-size: 14px; }

.toolbar-label[b-4yztjymdkt] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-secondary);
}

.filter-fields[b-4yztjymdkt] {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    gap: 12px;
    flex: 1;
    min-width: 0;
}

.filter-field[b-4yztjymdkt] {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 180px;
}

.filter-label[b-4yztjymdkt] {
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted);
    margin: 0;
}

.filter-input[b-4yztjymdkt] {
    height: 30px;
    font-size: 0.825rem;
    color: var(--text-primary);
    background-color: var(--bg-surface);
    border-color: var(--border-medium);
}

.filter-input:focus[b-4yztjymdkt] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(0, 91, 159, 0.12);
    color: var(--text-primary);
}

.filter-input[b-4yztjymdkt]::placeholder { color: var(--text-disabled); opacity: 1; }

.filter-input-search[b-4yztjymdkt] { position: relative; }

.filter-search-icon[b-4yztjymdkt] {
    position: absolute;
    left: 9px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.78rem;
    color: var(--text-disabled);
    pointer-events: none;
}

.filter-input-with-icon[b-4yztjymdkt] { padding-left: 28px; }

.filter-trailing[b-4yztjymdkt] {
    display: flex;
    gap: 6px;
    align-items: center;
    align-self: center;
    margin-left: auto;
}

.filter-result-count[b-4yztjymdkt] {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--text-muted);
    padding: 0 6px;
}

.filter-action-btn[b-4yztjymdkt] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 30px;
    padding: 0 12px;
    background: transparent;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-sm);
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all .15s ease;
}

.filter-action-btn i[b-4yztjymdkt] { font-size: 0.9rem; opacity: 0.75; }

.filter-action-btn:hover:not(:disabled)[b-4yztjymdkt] {
    background: var(--bg-hover);
    border-color: var(--border-medium);
    color: var(--text-primary);
}

.filter-action-btn:hover:not(:disabled) i[b-4yztjymdkt] { opacity: 1; }

/* ---------- Action buttons (ghost style matching export-btn pattern) ---------- */
.action-btn[b-4yztjymdkt] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 30px;
    padding: 0 12px;
    background: transparent;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-sm);
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--text-secondary);
    cursor: pointer;
    transition: color .15s ease, background .15s ease, border-color .15s ease;
}

.action-btn i[b-4yztjymdkt] { font-size: 0.9rem; opacity: 0.75; transition: opacity .15s ease, color .15s ease; }

.action-btn:hover:not(:disabled)[b-4yztjymdkt] {
    background: var(--bg-hover);
    border-color: var(--border-medium);
    color: var(--text-primary);
}

.action-btn:hover:not(:disabled) i[b-4yztjymdkt] { opacity: 1; }

.action-btn-primary[b-4yztjymdkt] {
    background: var(--brand-50);
    border-color: var(--brand-200);
    color: var(--brand-700);
}

.action-btn-primary:hover:not(:disabled)[b-4yztjymdkt] {
    background: var(--brand-100);
    border-color: var(--brand-300);
    color: var(--brand-800);
}

.action-btn-primary i[b-4yztjymdkt] { color: var(--brand-600); opacity: 1; }

.action-btn:disabled[b-4yztjymdkt] { opacity: 0.45; cursor: not-allowed; }

/* ---------- Bulk action bar (shown when ≥1 schedule selected) ---------- */
.bulk-action-bar[b-4yztjymdkt] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    margin-bottom: 12px;
    background: var(--brand-50);
    border: 1px solid var(--brand-200);
    border-radius: var(--radius-md);
    color: var(--brand-700);
}

.bulk-action-count[b-4yztjymdkt] {
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--brand-700);
    margin-right: 8px;
}

.action-btn-danger[b-4yztjymdkt] {
    color: #B91C1C;
    border-color: #FCA5A5;
}

.action-btn-danger:hover:not(:disabled)[b-4yztjymdkt] {
    background: #FEF2F2;
    border-color: #DC2626;
    color: #B91C1C;
}

.bulk-check-col[b-4yztjymdkt] {
    width: 32px;
}

.row-selected td[b-4yztjymdkt] {
    background: var(--brand-50) !important;
}

/* ---------- Schedules card / table (matches data-table pattern) ---------- */
.schedules-card[b-4yztjymdkt] {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-light) !important;
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-xs);
    padding: 0 !important;
    overflow: hidden;
}

.schedules-card[b-4yztjymdkt]::before,
.schedules-card[b-4yztjymdkt]::after {
    display: none !important;
    content: none !important;
}

.schedules-table[b-4yztjymdkt] {
    --bs-table-bg: transparent;
    --bs-table-color: var(--text-primary);
    --bs-table-striped-bg: transparent;
    --bs-table-hover-bg: transparent;
    --bs-table-accent-bg: transparent;
    font-size: 0.825rem;
    margin-bottom: 0;
    border-collapse: separate;
    border-spacing: 0;
    background-color: transparent;
}

.schedules-table > :not(caption) > * > *[b-4yztjymdkt] {
    background-color: transparent;
    box-shadow: none !important;
}

.schedules-table thead th[b-4yztjymdkt] {
    padding: 10px 14px;
    background-color: var(--bg-surface) !important;
    border-top: 0 !important;
    border-bottom: 1px solid var(--border-medium) !important;
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--text-muted);
    white-space: nowrap;
}

.schedules-table tbody td[b-4yztjymdkt] {
    padding: 11px 14px;
    border-top: 0 !important;
    border-bottom: 1px solid var(--border-light) !important;
    color: var(--text-primary);
    white-space: nowrap;
    font-weight: 500;
    line-height: 1.4;
    vertical-align: middle;
}

.schedules-table tbody tr:last-child td[b-4yztjymdkt] {
    border-bottom: 0 !important;
}

.schedules-table tbody tr:nth-child(even)[b-4yztjymdkt] {
    background-color: rgba(15, 23, 42, 0.018);
}

.schedules-table tbody tr:hover[b-4yztjymdkt] {
    background-color: var(--bg-active);
}

.schedules-table .mono[b-4yztjymdkt] {
    font-variant-numeric: tabular-nums;
    font-feature-settings: 'tnum';
}

/* ---------- Cell renderers ---------- */
.report-cell[b-4yztjymdkt] {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
    min-width: 0;
}

.report-cell-name[b-4yztjymdkt] {
    font-weight: 600;
    color: var(--text-primary);
}

.report-cell-id[b-4yztjymdkt] {
    font-size: 0.65rem;
    color: var(--text-disabled);
    margin-top: 1px;
}

.cadence-pill[b-4yztjymdkt] {
    display: inline-flex;
    align-items: center;
    padding: 3px 10px;
    border-radius: var(--radius-pill);
    background: var(--bg-hover);
    border: 1px solid var(--border-light);
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.format-pill[b-4yztjymdkt] {
    display: inline-flex;
    align-items: center;
    padding: 3px 10px;
    border-radius: var(--radius-pill);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    border: 1px solid transparent;
}

.format-pdf[b-4yztjymdkt]  { background: #FEE2E2; color: #B91C1C; border-color: #FECACA; }
.format-xlsx[b-4yztjymdkt] { background: var(--success-50); color: var(--success-700); border-color: var(--success-200); }
.format-csv[b-4yztjymdkt]  { background: var(--info-50); color: var(--info-700); border-color: var(--info-200); }

.recipients-cell[b-4yztjymdkt] {
    display: inline-block;
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: help;
}

.when-cell[b-4yztjymdkt] {
    color: var(--text-secondary);
    font-weight: 500;
    border-bottom: 1px dotted var(--border-medium);
    cursor: help;
}

.status-pill[b-4yztjymdkt] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px;
    border-radius: var(--radius-pill);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    border: 1px solid transparent;
}

.status-pill i[b-4yztjymdkt] { font-size: 0.75rem; }

.status-active[b-4yztjymdkt] { background: var(--success-50); color: var(--success-700); border-color: var(--success-200); }
.status-paused[b-4yztjymdkt] { background: var(--bg-hover); color: var(--text-secondary); border-color: var(--border-medium); }
.status-error[b-4yztjymdkt]  { background: #FEF2F2; color: #B91C1C; border-color: #FECACA; cursor: help; }

/* ---------- Row actions ---------- */
.row-actions[b-4yztjymdkt] {
    display: inline-flex;
    gap: 4px;
}

.row-action-btn[b-4yztjymdkt] {
    width: 28px;
    height: 28px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-sm);
    color: var(--text-muted);
    cursor: pointer;
    transition: all .15s ease;
}

.row-action-btn i[b-4yztjymdkt] { font-size: 0.85rem; }

.row-action-btn:hover:not(:disabled)[b-4yztjymdkt] {
    background: var(--brand-50);
    border-color: var(--brand-200);
    color: var(--brand-700);
}

.row-action-btn.row-action-danger:hover:not(:disabled)[b-4yztjymdkt] {
    background: #FEF2F2;
    border-color: #FCA5A5;
    color: #B91C1C;
}

.row-action-btn:disabled[b-4yztjymdkt] {
    opacity: 0.4;
    cursor: not-allowed;
}

/* ---------- Loading & empty (matches ReportPreviewPage) ---------- */
.schedules-loading[b-4yztjymdkt] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 48px;
    color: var(--text-muted);
    font-size: 0.875rem;
}

.schedules-loading i.spinning[b-4yztjymdkt] {
    animation: schedules-spin-b-4yztjymdkt 1s linear infinite;
}

@keyframes schedules-spin-b-4yztjymdkt {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.spinning[b-4yztjymdkt] {
    display: inline-block;
    animation: schedules-spin-b-4yztjymdkt 1s linear infinite;
}

.empty-state[b-4yztjymdkt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px 24px;
    text-align: center;
    background: var(--bg-surface);
    border: 1px dashed var(--border-medium);
    border-radius: var(--radius-md);
    color: var(--text-muted);
}

.empty-state i[b-4yztjymdkt] {
    font-size: 2rem;
    color: var(--text-disabled);
    margin-bottom: 10px;
}

/* ---------- Modal (subtle, themed) ---------- */
.modal-backdrop-custom[b-4yztjymdkt] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    z-index: 1050;
    backdrop-filter: blur(4px);
}

.modal-shell[b-4yztjymdkt] {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1051;
    pointer-events: none;
    padding: 16px;
}

/* Delete confirm uses the global .confirm-modal (wwwroot/css/modal-theme.css) */
.modal-shell .confirm-modal[b-4yztjymdkt] {
    pointer-events: auto;
}

.modal-card[b-4yztjymdkt] {
    pointer-events: auto;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    overflow: hidden;
    width: 100%;
    max-width: 720px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
}

.modal-header[b-4yztjymdkt] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 1px solid #EEF2F6;
}

.modal-title[b-4yztjymdkt] {
    flex: 1;
    min-width: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
    margin: 0;
    align-self: center;
}

.modal-close[b-4yztjymdkt] {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 8px;
    color: #94A3B8;
    cursor: pointer;
    transition: all .15s ease;
}

.modal-close:hover[b-4yztjymdkt] {
    background: #F1F5F9;
    color: #0F172A;
}

.modal-body[b-4yztjymdkt] {
    padding: 1.15rem 1.5rem;
    overflow-y: auto;
    flex: 1;
}

.modal-body .form-label[b-4yztjymdkt] {
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted);
    margin-bottom: 4px;
}

.modal-body .form-control[b-4yztjymdkt],
.modal-body .form-select[b-4yztjymdkt] {
    font-size: 0.825rem;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
}

.modal-body .form-control:focus[b-4yztjymdkt],
.modal-body .form-select:focus[b-4yztjymdkt] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(0, 91, 159, 0.12);
}

.modal-body .form-text[b-4yztjymdkt] {
    font-size: 0.7rem;
    color: var(--text-muted);
    margin-top: 4px;
}

.modal-body .mono[b-4yztjymdkt] {
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 0.78rem;
}

.modal-footer[b-4yztjymdkt] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

.btn-modal-secondary[b-4yztjymdkt],
.btn-modal-primary[b-4yztjymdkt],
.btn-modal-test[b-4yztjymdkt] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 0.55rem 1.15rem;
    border-radius: 10px;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: all .15s ease;
    border: 1px solid transparent;
}

.btn-modal-test[b-4yztjymdkt] {
    background: var(--bg-surface);
    color: var(--brand-700);
    border-color: var(--brand-200);
    margin-right: auto; /* push test button left, save/cancel stay on right */
}

.btn-modal-test:hover:not(:disabled)[b-4yztjymdkt] {
    background: var(--brand-50);
    border-color: var(--brand-300);
    color: var(--brand-800);
}

.btn-modal-test:disabled[b-4yztjymdkt] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-modal-secondary[b-4yztjymdkt] {
    background: transparent;
    color: #64748B;
    border-color: #E2E8F0;
}

.btn-modal-secondary:hover:not(:disabled)[b-4yztjymdkt] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-modal-primary[b-4yztjymdkt] {
    background: var(--brand-600, #004980);
    color: #fff;
}

.btn-modal-primary:hover:not(:disabled)[b-4yztjymdkt] {
    background: var(--brand-700, #003760);
}

.btn-modal-secondary:disabled[b-4yztjymdkt],
.btn-modal-primary:disabled[b-4yztjymdkt] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* ---------- Responsive ---------- */
@media (max-width: 575.98px) {
    .content-header[b-4yztjymdkt] {
        flex-direction: column;
        align-items: stretch;
    }
    .header-actions[b-4yztjymdkt] {
        flex-wrap: wrap;
    }
}
/* /Components/Pages/Signing/InternalSigningPage.razor.rz.scp.css */
.sig-loading[b-h54japhfid], .sig-error[b-h54japhfid], .sig-success[b-h54japhfid] {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    min-height: 60vh; text-align: center; gap: 14px;
}
.sig-error i[b-h54japhfid], .sig-success i[b-h54japhfid] { font-size: 48px; }
.sig-error h3[b-h54japhfid], .sig-success h3[b-h54japhfid] { margin: 0; }

.sig-page[b-h54japhfid] {
    max-width: 1200px; margin: 0 auto; padding: 20px;
}

.sig-header[b-h54japhfid] {
    padding-bottom: 14px; margin-bottom: 16px; border-bottom: 1px solid #e5e7eb;
}
.sig-header h2[b-h54japhfid] { margin: 0 0 4px; font-size: 1.5rem; }
.sig-meta[b-h54japhfid] {
    display: flex; flex-wrap: wrap; gap: 14px; font-size: 13px; color: #64748b;
}
.sig-meta .sig-doc-name[b-h54japhfid] { color: #1f2937; font-weight: 500; }
.sig-meta .sig-routing[b-h54japhfid] {
    background: #eff6ff; color: #1e40af; padding: 2px 8px; border-radius: 6px;
    font-weight: 600;
}

.sig-body[b-h54japhfid] {
    display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(320px, 1fr); gap: 20px;
    min-height: 70vh;
}

.sig-preview-wrap[b-h54japhfid] {
    background: #f3f4f6; border: 1px solid #e5e7eb; border-radius: 10px;
    padding: 12px; overflow: auto; max-height: 80vh; min-height: 600px;
    display: flex; flex-direction: column;
}
.sig-preview-canvases[b-h54japhfid] { position: relative; display: flex; flex-direction: column; align-items: center; }

/* Field toolbar — tiny row of "add …" buttons above the PDF. Sticky to the top of
   the scrolling preview wrap so the signer can add fields to page 2+ without losing
   the toolbar off-screen. z-index sits above page canvases but below any modal.
   Strong shadow + solid fill + backdrop-filter for robust separation from scrolling
   PDF content behind it — prevents the "looks transparent" perception even when a
   busy page is right underneath. */
.sig-field-toolbar[b-h54japhfid] {
    display: flex; gap: 6px; align-items: center; flex-wrap: wrap;
    padding: 10px 12px;
    background: #ffffff;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    box-shadow:
        0 4px 12px rgba(15, 23, 42, 0.10),
        0 1px 3px rgba(15, 23, 42, 0.08);
    backdrop-filter: saturate(180%);
    position: sticky; top: -1px; z-index: 20;
    /* A thin line of breathing room below the toolbar so scrolling PDF content
       doesn't touch the bottom edge as it passes under. */
    margin-bottom: 12px;
}
/* Pseudo-spacer above the toolbar covers the 12px scroll-wrap padding as it scrolls
   past, so PDF content never peeks through the gap at the very top of the viewport. */
.sig-field-toolbar[b-h54japhfid]::before {
    content: "";
    position: absolute;
    left: -12px; right: -12px; top: -12px; height: 12px;
    background: #f3f4f6;
    pointer-events: none;
}
.sig-field-toolbar-label[b-h54japhfid] {
    font-size: 11px; font-weight: 600; color: #64748b; margin-right: 4px;
    text-transform: uppercase; letter-spacing: 0.04em;
}
.sig-field-btn[b-h54japhfid] {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 5px 10px; border: 1px solid #e2e8f0; border-radius: 6px;
    background: white; font-size: 12px; font-weight: 500; cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease; color: #475569;
}
.sig-field-btn-sig[b-h54japhfid]  { color: #1e40af; border-color: #bfdbfe; } .sig-field-btn-sig:hover[b-h54japhfid]  { background: #eff6ff; }
.sig-field-btn-name[b-h54japhfid] { color: #115e59; border-color: #99f6e4; } .sig-field-btn-name:hover[b-h54japhfid] { background: #f0fdfa; }
.sig-field-btn-date[b-h54japhfid] { color: #854d0e; border-color: #fde68a; } .sig-field-btn-date:hover[b-h54japhfid] { background: #fffbeb; }
.sig-field-btn-text[b-h54japhfid] { color: #334155; border-color: #cbd5e1; } .sig-field-btn-text:hover[b-h54japhfid] { background: #f8fafc; }

.sig-hint[b-h54japhfid] {
    display: flex; align-items: center; gap: 6px;
    font-size: 12px; color: #64748b;
    background: #eff6ff; border: 1px solid #bfdbfe; border-radius: 6px;
    padding: 6px 10px; margin-top: 8px;
}
.sig-hint i[b-h54japhfid] { color: #2563eb; }

.sig-panel[b-h54japhfid] {
    background: white; border: 1px solid #e5e7eb; border-radius: 10px;
    padding: 16px; display: flex; flex-direction: column;
}
.sig-panel h4[b-h54japhfid] { font-size: 14px; margin: 0 0 10px; color: #1f2937; text-transform: uppercase; letter-spacing: 0.03em; }

.sig-saved-strip[b-h54japhfid] {
    margin-bottom: 12px; padding: 8px 10px; background: #f8fafc;
    border: 1px solid #e5e7eb; border-radius: 8px;
}
.sig-saved-label[b-h54japhfid] {
    font-size: 10px; font-weight: 600; color: #64748b;
    text-transform: uppercase; letter-spacing: 0.05em; margin-bottom: 6px;
}
.sig-saved-list[b-h54japhfid] { display: flex; gap: 8px; flex-wrap: wrap; }
.sig-saved-thumb[b-h54japhfid] {
    position: relative; width: 80px; height: 40px;
    background: white; border: 1px solid #e2e8f0; border-radius: 6px;
    overflow: hidden; cursor: pointer; transition: border-color 0.15s ease;
}
.sig-saved-thumb:hover[b-h54japhfid] { border-color: var(--brand-400, #60a5fa); }
.sig-saved-thumb img[b-h54japhfid] { width: 100%; height: 100%; object-fit: contain; padding: 4px; box-sizing: border-box; }
.sig-saved-delete[b-h54japhfid] {
    position: absolute; top: 1px; right: 1px;
    width: 16px; height: 16px; padding: 0;
    background: rgba(255,255,255,0.9); border: 1px solid #e2e8f0;
    border-radius: 50%; cursor: pointer; opacity: 0;
    display: flex; align-items: center; justify-content: center;
    color: #dc2626; font-size: 11px; line-height: 1;
    transition: opacity 0.15s;
}
.sig-saved-thumb:hover .sig-saved-delete[b-h54japhfid] { opacity: 1; }
.sig-saved-delete:hover[b-h54japhfid] { background: #fef2f2; }

.sig-tabs[b-h54japhfid] { display: flex; gap: 0; border-bottom: 1px solid #e5e7eb; margin-bottom: 10px; }
.sig-tab[b-h54japhfid] {
    flex: 1; padding: 8px 0; background: none; border: none; border-bottom: 2px solid transparent;
    font-size: 13px; color: #64748b; cursor: pointer; transition: all 0.15s;
}
.sig-tab:hover[b-h54japhfid] { color: #1f2937; background: #f8fafc; }
.sig-tab.active[b-h54japhfid] { color: var(--brand-500, #2563eb); border-bottom-color: var(--brand-500, #2563eb); font-weight: 600; }

.sig-canvas-wrap[b-h54japhfid] {
    border: 2px dashed #cbd5e1; border-radius: 8px; background: #f9fafb;
    overflow: hidden;
}
.sig-canvas[b-h54japhfid] {
    display: block; width: 100%; height: 160px; cursor: crosshair; touch-action: none;
    background: white;
}

.sig-controls[b-h54japhfid] {
    display: flex; gap: 8px; align-items: center; margin-top: 8px;
    flex-wrap: wrap;
}
.sig-controls .form-control[b-h54japhfid] { flex: 1; min-width: 160px; }

.sig-form[b-h54japhfid] { margin-top: 8px; }

/* Capture controls (Clear / Preview on PDF) */
.sig-ctrl-btn[b-h54japhfid] {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 7px 12px; border-radius: 7px;
    border: 1px solid #E2E8F0; background: transparent; color: #64748B;
    font-size: 12.5px; font-weight: 500; cursor: pointer; transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.sig-ctrl-btn:hover:not(:disabled)[b-h54japhfid] { background: #F1F5F9; border-color: #E2E8F0; }
.sig-ctrl-btn:disabled[b-h54japhfid] { opacity: 0.6; cursor: not-allowed; }
.sig-ctrl-btn-primary[b-h54japhfid] { color: #1d4ed8; border-color: #bfdbfe; }
.sig-ctrl-btn-primary:hover:not(:disabled)[b-h54japhfid] { background: #eff6ff; border-color: #93c5fd; }

/* Consent / save-for-reuse — clickable cards instead of bare checkboxes.
   margin-bottom keeps a gap before the sticky action bar so the consent card
   never sits flush against (or tucked under) the Sign / Decline row. */
.sig-checks[b-h54japhfid] { display: flex; flex-direction: column; gap: 10px; margin-top: 14px; margin-bottom: 18px; }
.sig-check[b-h54japhfid] {
    display: flex; gap: 11px; align-items: flex-start;
    padding: 11px 13px; border: 1px solid #e2e8f0; border-radius: 9px;
    background: #fff; cursor: pointer; transition: all 0.15s;
}
.sig-check:hover[b-h54japhfid] { border-color: #cbd5e1; background: #f8fafc; }
.sig-check.is-checked[b-h54japhfid] { border-color: var(--brand-400, #60a5fa); background: #f5f9ff; }
.sig-check-input[b-h54japhfid] {
    width: 18px; height: 18px; margin: 1px 0 0; flex-shrink: 0;
    cursor: pointer; accent-color: var(--brand-500, #2563eb);
}
.sig-check-body[b-h54japhfid] { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.sig-check-title[b-h54japhfid] {
    font-size: 13px; font-weight: 600; color: #1f2937;
    display: inline-flex; align-items: center; gap: 6px; flex-wrap: wrap;
}
.sig-check-sub[b-h54japhfid] { font-size: 11.5px; color: #64748b; line-height: 1.45; }
.sig-check-badge[b-h54japhfid] {
    font-size: 9.5px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase;
    color: #92400e; background: #fef3c7; border: 1px solid #fde68a;
    padding: 1px 6px; border-radius: 999px;
}
/* The consent card is required: amber until ticked, green once satisfied. */
.sig-check-required[b-h54japhfid] { border-color: #fde68a; background: #fffdf5; }
.sig-check-required:hover[b-h54japhfid] { border-color: #fcd34d; background: #fffbeb; }
.sig-check-required.is-checked[b-h54japhfid] { border-color: #86efac; background: #f0fdf4; }

/* Pinned to the bottom of the panel so Sign / Decline stay visible no matter how tall
   the form gets — previously the action row scrolled off the bottom of the ceremony
   iframe and got clipped behind the binding modal's footer. Sticky keeps it in view;
   the full-bleed backdrop (negative margins offset the panel's 16px padding) gives it
   a solid base as content scrolls underneath. */
.sig-actions[b-h54japhfid] {
    display: flex; align-items: center; gap: 10px; margin-top: auto;
    position: sticky; bottom: 0; z-index: 5;
    margin-left: -16px; margin-right: -16px; padding: 12px 16px;
    background: #fff;
    border-top: 1px solid #e2e8f0;
    box-shadow: 0 -4px 12px rgba(15, 23, 42, 0.06);
}
/* Primary action (Sign) dominates; Decline stays compact and quiet. */
.sig-btn[b-h54japhfid] {
    display: inline-flex; align-items: center; justify-content: center; gap: 7px;
    padding: 11px 20px; border-radius: 9px; border: 1px solid transparent;
    font-size: 14px; font-weight: 600; cursor: pointer; transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.sig-btn:disabled[b-h54japhfid] { opacity: 0.6; cursor: not-allowed; }
.sig-btn-primary[b-h54japhfid] {
    flex: 1 1 auto;
    background: var(--brand-600, #004980);
    color: #fff;
}
.sig-btn-primary:not(:disabled):hover[b-h54japhfid] {
    background: var(--brand-700, #003760);
}
.sig-btn-decline[b-h54japhfid] {
    flex: 0 0 auto;
    background: #fff; color: #b91c1c; border-color: #fecaca;
}
.sig-btn-decline:not(:disabled):hover[b-h54japhfid] { background: #fef2f2; border-color: #fca5a5; }

@media (max-width: 900px) {
    .sig-body[b-h54japhfid] { grid-template-columns: 1fr; }
    .sig-preview iframe[b-h54japhfid] { min-height: 400px; }
}
/* /Components/Pages/SignupPage.razor.rz.scp.css */
/* Signup Page Styles */

.signup-page[b-lv90lo5dab] {
    width: 100%;
    min-height: 100vh;
    background: var(--bg-surface);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 48px 24px;
}

/* Content Section */
.signup-content[b-lv90lo5dab] {
    width: 100%;
    max-width: 560px;
}

/* Request Access Section */
.request-access-section[b-lv90lo5dab] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 12px;
    padding: 40px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

.section-title[b-lv90lo5dab] {
    font-size: 28px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 8px;
}

.section-description[b-lv90lo5dab] {
    font-size: 15px;
    color: var(--text-secondary);
    line-height: 1.6;
    margin-bottom: 24px;
}

.info-box[b-lv90lo5dab] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    background: var(--brand-50);
    border: 1px solid var(--brand-200);
    border-radius: 8px;
    margin-bottom: 24px;
}

.info-box i[b-lv90lo5dab] {
    font-size: 20px;
    color: var(--brand-600);
    flex-shrink: 0;
    margin-top: 2px;
}

.info-box p[b-lv90lo5dab] {
    font-size: 14px;
    color: var(--text-primary);
    line-height: 1.6;
    margin: 0;
}

/* Form Styles */
.request-form[b-lv90lo5dab] {
    border-top: 1px solid var(--border-light);
    padding-top: 24px;
}

.form-group[b-lv90lo5dab] {
    margin-bottom: 24px;
}

.form-label[b-lv90lo5dab] {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 8px;
}

.required[b-lv90lo5dab] {
    color: var(--error-500);
    margin-left: 2px;
}

.form-input[b-lv90lo5dab] {
    width: 100%;
    padding: 12px 16px;
    font-size: 15px;
    color: var(--text-primary);
    background: white;
    border: 1px solid var(--neutral-300);
    border-radius: 8px;
    transition: all 0.2s ease;
}

.form-input:focus[b-lv90lo5dab] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px var(--brand-100);
}

.form-input[b-lv90lo5dab]::placeholder {
    color: var(--text-muted);
}

.form-help[b-lv90lo5dab] {
    display: block;
    font-size: 13px;
    color: var(--text-muted);
    margin-top: 6px;
}

.form-row[b-lv90lo5dab] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.checkbox-group[b-lv90lo5dab] {
    margin-bottom: 16px;
}

.checkbox-label[b-lv90lo5dab] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    cursor: pointer;
}

.checkbox-label input[type="checkbox"][b-lv90lo5dab] {
    margin-top: 4px;
    width: 18px;
    height: 18px;
    cursor: pointer;
    accent-color: var(--brand-600);
}

.checkbox-text[b-lv90lo5dab] {
    font-size: 14px;
    color: var(--text-secondary);
    line-height: 1.6;
}

.checkbox-text a[b-lv90lo5dab] {
    color: var(--brand-600);
    text-decoration: none;
    font-weight: 500;
}

.checkbox-text a:hover[b-lv90lo5dab] {
    text-decoration: underline;
}

.form-actions[b-lv90lo5dab] {
    margin-top: 32px;
    padding-top: 24px;
    border-top: 1px solid var(--border-light);
}

.btn[b-lv90lo5dab] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 24px;
    font-size: 15px;
    font-weight: 600;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-primary[b-lv90lo5dab] {
    background: var(--brand-600);
    color: white;
}

.btn-primary:hover:not(:disabled)[b-lv90lo5dab] {
    background: var(--brand-700);
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.15);
}

.btn-primary:disabled[b-lv90lo5dab] {
    background: var(--neutral-300);
    color: var(--text-disabled);
    cursor: not-allowed;
}

.btn-lg[b-lv90lo5dab] {
    padding: 14px 32px;
    font-size: 16px;
    width: 100%;
}

.next-steps[b-lv90lo5dab] {
    margin-top: 24px;
    padding: 20px;
    background: var(--neutral-50);
    border-radius: 8px;
}

.next-steps h3[b-lv90lo5dab] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 8px;
}

.next-steps p[b-lv90lo5dab] {
    font-size: 14px;
    color: var(--text-secondary);
    line-height: 1.6;
    margin: 0;
}

/* Responsive */
@media (max-width: 768px) {
    .signup-page[b-lv90lo5dab] {
        padding: 24px 16px;
    }

    .request-access-section[b-lv90lo5dab] {
        padding: 24px;
    }

    .form-row[b-lv90lo5dab] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Underwriting/ApplicationDetailPage.razor.rz.scp.css */
/* ========================================
   Application Detail Page - Modern Finance UI
   ======================================== */

/* ========================================
   Page Animations
   ======================================== */
@keyframes fadeInDown-b-zjhroe90nb {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInUp-b-zjhroe90nb {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn-b-zjhroe90nb {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes slideInRight-b-zjhroe90nb {
    from {
        opacity: 0;
        transform: translateX(20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes scaleIn-b-zjhroe90nb {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes slideInLeft-b-zjhroe90nb {
    from {
        opacity: 0;
        transform: translateX(-15px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.application-detail-page[b-zjhroe90nb] {
    padding: 0;
    max-width: 100%;
    margin: 0;
    background: var(--bg-base-solid);
    min-height: 100vh;
}

/* Skeleton Loading State */
@keyframes detail-skel-pulse-b-zjhroe90nb {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

.skel-block[b-zjhroe90nb] {
    background: linear-gradient(90deg, var(--neutral-100, #f0f0f0) 25%, var(--neutral-200, #e0e0e0) 50%, var(--neutral-100, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: detail-skel-pulse-b-zjhroe90nb 1.5s ease-in-out infinite;
    border-radius: 4px;
}

.detail-skeleton[b-zjhroe90nb] {
    padding: 1.5rem;
}

/* Header card skeleton */
.skel-header-card[b-zjhroe90nb] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 1.25rem 1.5rem;
    margin-bottom: 1.5rem;
}

.skel-breadcrumb-row[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.25rem;
}

.skel-back-btn[b-zjhroe90nb] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    flex-shrink: 0;
}

.skel-header-main[b-zjhroe90nb] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.skel-header-left[b-zjhroe90nb] {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
}

.skel-app-icon[b-zjhroe90nb] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    flex-shrink: 0;
}

.skel-header-title-block[b-zjhroe90nb] {
    flex: 1;
}

.skel-meta-row[b-zjhroe90nb] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
}

.skel-header-right[b-zjhroe90nb] {
    display: flex;
    align-items: center;
}

.skel-status-dropdown[b-zjhroe90nb] {
    width: 140px;
    height: 36px;
    border-radius: 8px;
}

.skel-metrics-row[b-zjhroe90nb] {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    margin-bottom: 1.25rem;
}

.skel-metric-card[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.skel-metric-icon[b-zjhroe90nb] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    flex-shrink: 0;
}

.skel-metric-content[b-zjhroe90nb] {
    display: flex;
    flex-direction: column;
}

.skel-tabs-row[b-zjhroe90nb] {
    display: flex;
    gap: 0.5rem;
    border-bottom: 1px solid var(--neutral-100, #f0f0f0);
    padding-bottom: 0.75rem;
}

.skel-tab-item[b-zjhroe90nb] {
    border-radius: 6px;
}

/* Tab content skeleton */
.skel-tab-content[b-zjhroe90nb] {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 1.5rem;
}

.skel-content-card[b-zjhroe90nb] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    padding: 1.5rem;
}

@media (max-width: 991.98px) {
    .skel-tab-content[b-zjhroe90nb] {
        grid-template-columns: 1fr;
    }

    .skel-header-main[b-zjhroe90nb] {
        flex-direction: column;
    }

    .skel-metrics-row[b-zjhroe90nb] {
        gap: 1rem;
    }
}

/* ========================================
   Modern Application Detail Header
   ======================================== */

.app-detail-header[b-zjhroe90nb] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    margin: 1.5rem 2rem 0;
    padding: 0;
    position: relative;
    animation: fadeInDown-b-zjhroe90nb 0.4s ease-out;
    overflow: hidden;
}

/* Bound Header State - Dark green accent border to match stamp */
.app-detail-header.header-bound[b-zjhroe90nb] {
    border-left: 4px solid #1a4d2e;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(26, 77, 46, 0.08);
}

/* Bound Stamp — kept upright per design feedback (was rotated -12deg). */
@keyframes stampIn-b-zjhroe90nb {
    0% {
        opacity: 0;
        transform: scale(1.6);
    }
    50% {
        opacity: 1;
        transform: scale(0.98);
    }
    70% {
        transform: scale(1.01);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}

.bound-stamp[b-zjhroe90nb] {
    position: absolute;
    top: 40px;
    right: 20px;
    z-index: 10;
    /* The wrapper itself stays pointer-transparent so it doesn't block clicks
       on header content underneath, but the inner stamp + duration pill
       re-enable pointer events so their tooltips can be triggered on hover. */
    pointer-events: none;
}

.bound-stamp-inner[b-zjhroe90nb],
.bound-stamp .stamp-duration[b-zjhroe90nb] {
    pointer-events: auto;
    cursor: help;
}

.bound-stamp-inner[b-zjhroe90nb] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 0.875rem 1.5rem;
    border: 3px solid #1a4d2e;
    border-radius: 3px;
    background: transparent;
    color: #1a4d2e;
    text-transform: uppercase;
    position: relative;
    animation: stampIn-b-zjhroe90nb 0.35s ease-out 0.2s backwards;
    /* Authentic worn stamp effect */
    opacity: 0.88;
    filter: contrast(1.1);
}

/* Inner border for double-line stamp effect */
.bound-stamp-inner[b-zjhroe90nb]::before {
    content: '';
    position: absolute;
    inset: 4px;
    border: 2px solid #1a4d2e;
    border-radius: 2px;
    opacity: 0.6;
}

/* Grainy texture overlay for ink effect */
.bound-stamp-inner[b-zjhroe90nb]::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise' x='0' y='0'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.4'/%3E%3C/svg%3E");
    mix-blend-mode: overlay;
    opacity: 0.5;
    border-radius: 3px;
    pointer-events: none;
}

.bound-stamp-inner i[b-zjhroe90nb] {
    font-size: 1.5rem;
    color: #1a4d2e;
    margin-bottom: 0;
    opacity: 0.92;
}

.bound-stamp-text[b-zjhroe90nb] {
    font-size: 1.625rem;
    font-weight: 900;
    letter-spacing: 0.18em;
    color: #1a4d2e;
    background: none;
    -webkit-background-clip: unset;
    -webkit-text-fill-color: unset;
    background-clip: unset;
    font-family: 'Impact', 'Arial Black', sans-serif;
    line-height: 1;
}

.bound-stamp-date[b-zjhroe90nb] {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: #1a4d2e;
    border-top: 2px solid #1a4d2e;
    padding-top: 0.375rem;
    margin-top: 0.25rem;
    font-family: 'Arial', sans-serif;
    opacity: 0.9;
}

/* Stamp Duration Badge - shows processing time below the stamp */
.stamp-duration[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    margin-top: 0.75rem;
    padding: 0.375rem 0.875rem;
    background: #f0fdf4;
    color: #166534;
    border: 1px solid #bbf7d0;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 600;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.stamp-duration i[b-zjhroe90nb] {
    font-size: 0.8125rem;
}

/* Declined stamp duration variant */
.declined-stamp .stamp-duration[b-zjhroe90nb] {
    background: #fef2f2;
    color: #991b1b;
    border-color: #fecaca;
}

/* Declined Header State - Red accent border */
.app-detail-header.header-declined[b-zjhroe90nb] {
    border-left: 4px solid #991b1b;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(153, 27, 27, 0.08);
}

/* Declined Stamp Variant */
.declined-stamp .bound-stamp-inner[b-zjhroe90nb] {
    border-color: #991b1b;
    color: #991b1b;
}

.declined-stamp .bound-stamp-inner[b-zjhroe90nb]::before {
    border-color: #991b1b;
}

.declined-stamp .bound-stamp-inner i[b-zjhroe90nb] {
    color: #991b1b;
}

.declined-stamp .bound-stamp-text[b-zjhroe90nb] {
    color: #991b1b;
}

.declined-stamp .bound-stamp-date[b-zjhroe90nb] {
    color: #991b1b;
    border-top-color: #991b1b;
}

/* Referral Header State - purple accent border. Mirrors the declined treatment because a
   referral reads as a finished outcome internally (it is parked waiting on the bank), and
   reuses the existing .status-indicator-referral token (#a855f7) rather than adding a colour.
   Kept when the corner stamp was dropped for referrals: the border is a useful signal and,
   unlike the stamp, it cannot overlap the Start Review button. The referral marker itself is
   the inline .btn-status-referral pill in the header action row. */
.app-detail-header.header-referral[b-zjhroe90nb] {
    border-left: 4px solid #a855f7;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(168, 85, 247, 0.08);
}

/* Withdrawn (Cancelled) stamp duration variant */
.withdrawn-stamp .stamp-duration[b-zjhroe90nb] {
    background: #f8fafc;
    color: #475569;
    border-color: #e2e8f0;
}

/* Withdrawn Header State - Neutral slate accent border */
.app-detail-header.header-withdrawn[b-zjhroe90nb] {
    border-left: 4px solid #64748b;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(100, 116, 139, 0.08);
}

/* Withdrawn Stamp Variant */
.withdrawn-stamp .bound-stamp-inner[b-zjhroe90nb] {
    border-color: #64748b;
    color: #64748b;
}

.withdrawn-stamp .bound-stamp-inner[b-zjhroe90nb]::before {
    border-color: #64748b;
}

.withdrawn-stamp .bound-stamp-inner i[b-zjhroe90nb] {
    color: #64748b;
}

.withdrawn-stamp .bound-stamp-text[b-zjhroe90nb] {
    color: #64748b;
}

.withdrawn-stamp .bound-stamp-date[b-zjhroe90nb] {
    color: #64748b;
    border-top-color: #64748b;
}

/* Breadcrumb Row */
.header-breadcrumb[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1.5rem;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-light);
}

.breadcrumb-spacer[b-zjhroe90nb] {
    flex: 1;
}

.breadcrumb-back[b-zjhroe90nb] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: 1px solid var(--border-medium);
    background: white;
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    animation: slideInLeft-b-zjhroe90nb 0.3s ease-out;
}

.breadcrumb-back:hover[b-zjhroe90nb] {
    background: var(--brand-50);
    border-color: var(--brand-300);
    color: var(--brand-600);
}

.breadcrumb-back i[b-zjhroe90nb] {
    font-size: 1rem;
}

.header-breadcrumb .breadcrumb[b-zjhroe90nb] {
    font-size: 0.8125rem;
}

.header-breadcrumb .breadcrumb-item a[b-zjhroe90nb] {
    color: var(--text-muted);
    text-decoration: none;
    transition: color 0.2s;
}

.header-breadcrumb .breadcrumb-item a:hover[b-zjhroe90nb] {
    color: var(--brand-600);
}

.header-breadcrumb .breadcrumb-item.active[b-zjhroe90nb] {
    color: var(--text-primary);
    font-weight: 600;
}

/* Main Header Content */
.header-main[b-zjhroe90nb] {
    display: flex;
    align-items: flex-start;
    padding: 1.5rem;
    gap: 1.25rem;
}

.header-left[b-zjhroe90nb] {
    display: flex;
    align-items: flex-start;
    gap: 1.25rem;
    flex: 1;
}

.header-title-row[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.app-icon[b-zjhroe90nb] {
    width: 56px;
    height: 56px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-600) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    animation: scaleIn-b-zjhroe90nb 0.35s ease-out 0.1s backwards;
}

.app-icon i[b-zjhroe90nb] {
    font-size: 1.5rem;
    color: white;
}

/* Status-specific icon styles */
.app-icon.app-icon-draft[b-zjhroe90nb] {
    background: linear-gradient(135deg, #6b7280 0%, #4b5563 100%);
}

.app-icon.app-icon-submitted[b-zjhroe90nb] {
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-600) 100%);
}

.app-icon.app-icon-inreview[b-zjhroe90nb] {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

.app-icon.app-icon-awaitinginfo[b-zjhroe90nb] {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

.app-icon.app-icon-approved[b-zjhroe90nb] {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.app-icon.app-icon-declined[b-zjhroe90nb] {
    background: linear-gradient(135deg, var(--error-500) 0%, var(--error-600) 100%);
}

.app-icon.app-icon-bound[b-zjhroe90nb] {
    background: linear-gradient(135deg, #10b981 0%, #047857 100%);
}

.app-icon.app-icon-cancelled[b-zjhroe90nb] {
    background: linear-gradient(135deg, #6b7280 0%, #4b5563 100%);
}

.app-icon.app-icon-referral[b-zjhroe90nb] {
    background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
}

.app-icon.app-icon-referredtounderwriter[b-zjhroe90nb] {
    background: linear-gradient(135deg, #f59e0b 0%, #b45309 100%);
}

.app-icon.app-icon-approvedforbinding[b-zjhroe90nb] {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.app-icon.app-icon-ordered[b-zjhroe90nb] {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

.header-title-content[b-zjhroe90nb] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.app-number-row[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.app-number[b-zjhroe90nb] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
    letter-spacing: -0.02em;
    line-height: 1.2;
}

.app-id-badge[b-zjhroe90nb] {
    font-size: 0.7rem;
    font-weight: 500;
    color: var(--text-muted);
    background: var(--neutral-100);
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
    font-family: 'SF Mono', 'Consolas', monospace;
}

.app-db-ref[b-zjhroe90nb] {
    font-size: 0.7rem;
    color: var(--text-muted);
    font-family: 'SF Mono', 'Consolas', monospace;
    opacity: 0.75;
}

.app-meta[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.meta-item[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.meta-item i[b-zjhroe90nb] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.meta-item.agent[b-zjhroe90nb] {
    color: #6366f1;
    font-weight: 500;
}

.meta-item.agent i[b-zjhroe90nb] {
    color: #6366f1;
}

.meta-item.meta-source-api[b-zjhroe90nb] {
    color: #4338ca;
    font-weight: 600;
    background: #eef2ff;
    padding: 2px 9px;
    border-radius: 999px;
    border: 1px solid #c7d2fe;
    text-decoration: none;
    font-size: 0.8rem;
    transition: all 0.15s ease;
}

a.meta-item.meta-source-api:hover[b-zjhroe90nb] {
    background: #4338ca;
    color: #ffffff;
    border-color: #4338ca;
}

a.meta-item.meta-source-api:hover i[b-zjhroe90nb] {
    color: #ffffff;
}

.meta-item.meta-source-api i[b-zjhroe90nb] {
    color: #4338ca;
    font-size: 0.85rem;
}

/* Simplified-flow origin chip — teal sibling of .meta-source-api */
.meta-item.meta-source-simplified[b-zjhroe90nb] {
    color: #0f766e;
    font-weight: 600;
    background: #f0fdfa;
    padding: 2px 9px;
    border-radius: 999px;
    border: 1px solid #99f6e4;
    font-size: 0.8rem;
}

.meta-item.meta-source-simplified i[b-zjhroe90nb] {
    color: #0f766e;
    font-size: 0.85rem;
}

.meta-divider[b-zjhroe90nb] {
    color: var(--border-medium);
    font-size: 0.75rem;
}

/* Header Right Section */
.header-right[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-left: auto;
    /* Allow this cluster to shrink so .header-actions can wrap into right-aligned
       rows — flex-shrink: 0 forced its full one-line width and squeezed the title,
       wrapping long application numbers mid-word. */
    min-width: 0;
}

.header-actions[b-zjhroe90nb] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    gap: 0.5rem 0.75rem;
    animation: slideInRight-b-zjhroe90nb 0.4s ease-out 0.15s backwards;
}

.status-dropdown[b-zjhroe90nb] {
    display: flex;
    align-items: center;
}

/* Bootstrap Dropdown Button */
.btn-status-dropdown[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 180px;
    height: 38px;
    padding: 0 0.875rem;
    background: white;
    border: 1px solid var(--border-medium);
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.15s ease;
}

/* Read-only Status Badge - shown when the review actions/Start Review cover the
   available transitions. Flat soft tint, no border, no hover — reads as a passive
   badge (buttons in this header are white with a border and squared corners). */
.btn-status-readonly[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    height: 32px;
    padding: 0 0.875rem;
    background: var(--neutral-100);
    border: none;
    border-radius: 9999px;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    cursor: default;
    white-space: nowrap;
}

/* Referral variant of that read-only pill — the inline referral marker. Same geometry, so it
   drops into the slot the status pill occupies beside Start Review; purple-tinted with the
   pair already used by .status-badge-referral in this file (no new colour). Replaces the
   absolutely-positioned corner stamp for referrals, which collided with Start Review. */
.btn-status-readonly.btn-status-referral[b-zjhroe90nb] {
    background: #f3e8ff;
    color: #7c3aed;
}

.btn-status-readonly.btn-status-referral i[b-zjhroe90nb] {
    font-size: 0.875rem;
}

.btn-status-dropdown:hover[b-zjhroe90nb] {
    border-color: var(--brand-400);
    background-color: var(--neutral-50);
}

.btn-status-dropdown:focus[b-zjhroe90nb] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
    outline: none;
}

.btn-status-dropdown[b-zjhroe90nb]::after {
    margin-left: auto;
}

/* Status Indicator Dot */
.status-indicator[b-zjhroe90nb] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}

.status-indicator-draft[b-zjhroe90nb] { background: var(--neutral-400); }
.status-indicator-submitted[b-zjhroe90nb] { background: var(--brand-500); }
.status-indicator-inreview[b-zjhroe90nb] { background: #f59e0b; }
.status-indicator-awaitinginfo[b-zjhroe90nb] { background: #f97316; }
.status-indicator-approved[b-zjhroe90nb] { background: var(--success-500); }
.status-indicator-declined[b-zjhroe90nb] { background: #ef4444; }
.status-indicator-bound[b-zjhroe90nb] { background: #10b981; }
.status-indicator-cancelled[b-zjhroe90nb] { background: var(--neutral-400); }
.status-indicator-referral[b-zjhroe90nb] { background: #a855f7; }
.status-indicator-referredtounderwriter[b-zjhroe90nb] { background: #6366f1; }
.status-indicator-approvedforbinding[b-zjhroe90nb] { background: var(--success-500); }
.status-indicator-ordered[b-zjhroe90nb] { background: #3b82f6; }

/* Dropdown Menu */
.dropdown-menu-status[b-zjhroe90nb] {
    min-width: 220px;
    padding: 0.5rem;
    border: 1px solid var(--border-light);
    border-radius: 10px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    background: white;
    z-index: 1050;
}

.dropdown-menu-status .dropdown-item[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.5rem 0.75rem;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    transition: all 0.15s ease;
}

.dropdown-menu-status .dropdown-item:hover[b-zjhroe90nb] {
    background: var(--neutral-100);
    color: var(--text-primary);
}

.dropdown-menu-status .dropdown-item.active[b-zjhroe90nb] {
    background: var(--brand-50);
    color: var(--brand-700);
}

.dropdown-menu-status .dropdown-item.active .status-indicator[b-zjhroe90nb] {
    box-shadow: 0 0 0 2px white, 0 0 0 3px currentColor;
}

.btn-assign[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    height: 38px;
    padding: 0 1rem;
    background: var(--brand-600);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}

.btn-assign:hover[b-zjhroe90nb] {
    background: var(--brand-700);
}

.btn-assign i[b-zjhroe90nb] {
    font-size: 1rem;
}

.btn-assign-agent[b-zjhroe90nb] {
    background: transparent;
    border: 1px solid #E2E8F0;
    color: #64748B;
}

.btn-assign-agent:hover[b-zjhroe90nb] {
    background: #F1F5F9;
    border-color: #E2E8F0;
    color: #0F172A;
}

/* Withdraw Button - action for bank users when approved for binding */
/* Separates the status-info cluster (badges + status pill) from the CTA cluster
   (review actions) so the two read as distinct groups instead of one run-on row. */
.header-actions-divider[b-zjhroe90nb] {
    width: 1px;
    height: 24px;
    background: var(--border-medium);
    flex-shrink: 0;
}

/* Header Review Actions — Approve/Request Info/Resume Review/Tag as Referral/Decline, relocated
   from the Summary tab's banner so they're reachable from every tab. Styled as outlined buttons
   (white fill, colored border/text, squared corners, subtle shadow) so they read as
   clickable actions — flat tinted pills are reserved for passive status badges. */
.header-review-actions[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.btn-header-action[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    height: 36px;
    padding: 0 0.875rem;
    border-radius: 8px;
    border: 1px solid transparent;
    background: white;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
    font-size: 0.8125rem;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
    transition: background-color 0.15s ease, border-color 0.15s ease;
}

.btn-header-action.approve[b-zjhroe90nb] {
    color: var(--success-700);
    border-color: var(--success-300);
}

.btn-header-action.approve:hover[b-zjhroe90nb] {
    background: var(--success-50);
    border-color: var(--success-400);
}

.btn-header-action.request-info[b-zjhroe90nb] {
    color: var(--warning-700);
    border-color: var(--warning-300);
}

.btn-header-action.request-info:hover[b-zjhroe90nb] {
    background: var(--warning-50);
    border-color: var(--warning-500);
}

/* Resume Review is neither an approval nor a rejection, so it takes the brand blue rather than a
   semantic scale — same 1px/8px/36px shape as its siblings, only the hue differs. */
.btn-header-action.resume-review[b-zjhroe90nb] {
    color: var(--brand-700);
    border-color: var(--brand-300);
}

.btn-header-action.resume-review:hover[b-zjhroe90nb] {
    background: var(--brand-50);
    border-color: var(--brand-400);
}

.btn-header-action.tag-referral[b-zjhroe90nb] {
    color: #6D28D9;
    border-color: #C4B5FD;
}

.btn-header-action.tag-referral:hover[b-zjhroe90nb] {
    background: #F5F3FF;
    border-color: #A78BFA;
}

.btn-header-action.decline[b-zjhroe90nb] {
    color: var(--error-700);
    border-color: var(--error-300);
}

.btn-header-action.decline:hover[b-zjhroe90nb] {
    background: var(--error-50);
    border-color: var(--error-400);
}

.btn-withdraw[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    height: 40px;
    padding: 0 1.25rem;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}

.btn-withdraw:hover:not(:disabled)[b-zjhroe90nb] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-withdraw:disabled[b-zjhroe90nb] {
    opacity: 0.7;
    cursor: not-allowed;
}

.btn-withdraw i[b-zjhroe90nb] {
    font-size: 1.1rem;
}

/* Re-submit Button */
.btn-resubmit[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    height: 40px;
    padding: 0 1.25rem;
    background: var(--brand-600);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}

.btn-resubmit:hover:not(:disabled)[b-zjhroe90nb] {
    background: var(--brand-700);
}

.btn-resubmit:disabled[b-zjhroe90nb] {
    opacity: 0.7;
    cursor: not-allowed;
}

.btn-resubmit i[b-zjhroe90nb] {
    font-size: 1.1rem;
}

/* Start Review Button */
.btn-start-review[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    height: 40px;
    padding: 0 1.25rem;
    background: var(--brand-600);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}

.btn-start-review:hover:not(:disabled)[b-zjhroe90nb] {
    background: var(--brand-700);
}

.btn-start-review:disabled[b-zjhroe90nb] {
    opacity: 0.7;
    cursor: not-allowed;
}

.btn-start-review i[b-zjhroe90nb] {
    font-size: 1.1rem;
}

/* Reviewer Badge */
.reviewer-badge[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    height: 32px;
    padding: 0 0.875rem;
    background: #dbeafe;
    color: #1e40af;
    border-radius: 9999px;
    font-size: 0.8rem;
    font-weight: 500;
    white-space: nowrap;
}

.reviewer-badge i[b-zjhroe90nb] {
    font-size: 0.9rem;
}

.reviewer-badge-completed[b-zjhroe90nb] {
    background: #f3f4f6;
    color: #4b5563;
}

.reviewer-badge-success[b-zjhroe90nb] {
    background: #dcfce7;
    color: #166534;
}

/* Duration Badge */
.duration-badge[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.125rem 0.5rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 600;
    margin-left: 0.25rem;
}

.duration-badge i[b-zjhroe90nb] {
    font-size: 0.7rem;
}

/* Duration color variants based on elapsed time */
.duration-green[b-zjhroe90nb] {
    background: #dcfce7;
    color: #166534;
}

.duration-yellow[b-zjhroe90nb] {
    background: #fef3c7;
    color: #92400e;
}

.duration-red[b-zjhroe90nb] {
    background: #fee2e2;
    color: #991b1b;
}

.duration-badge-success[b-zjhroe90nb] {
    background: #bbf7d0;
    color: #166534;
}


/* Key Metrics Row */
/* Wraps rather than squeezes. The Property Type chip is wider than the others (it carries the
   re-rate button), and on a narrow viewport a nowrap row spent that width by shrinking the other
   chips until their values broke onto a second line and their labels fell out of alignment
   — measured at a 1180px viewport: Loan Term 61px tall → 98px. Wrapping moves a whole chip down
   instead, which also fixes the same squeeze the row had without the button at smaller widths. */
.header-metrics[b-zjhroe90nb] {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    row-gap: 0.75rem;
    padding: 0 1.5rem 1.5rem;
    background: white;
}

.metric-card[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.75rem 1.25rem;
    border-left: 1px solid var(--border-light);
    animation: fadeInUp-b-zjhroe90nb 0.4s ease-out forwards;
    opacity: 0;
}

/* Staggered metric card animations */
.metric-card:nth-child(1)[b-zjhroe90nb] { animation-delay: 100ms; }
.metric-card:nth-child(2)[b-zjhroe90nb] { animation-delay: 150ms; }
.metric-card:nth-child(3)[b-zjhroe90nb] { animation-delay: 200ms; }
.metric-card:nth-child(4)[b-zjhroe90nb] { animation-delay: 250ms; }

.metric-card:first-child[b-zjhroe90nb] {
    border-left: none;
    padding-left: 0;
}

.metric-icon[b-zjhroe90nb] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.metric-icon i[b-zjhroe90nb] {
    font-size: 1rem;
}

.metric-icon.loan[b-zjhroe90nb] {
    background: #dcfce7;
    color: var(--success-600);
}

.metric-icon.property[b-zjhroe90nb] {
    background: var(--brand-100);
    color: var(--brand-600);
}

.metric-icon.term[b-zjhroe90nb] {
    background: #fef3c7;
    color: var(--warning-600);
}

.metric-icon.premium[b-zjhroe90nb] {
    background: #f3e8ff;
    color: #9333ea;
}

.metric-content[b-zjhroe90nb] {
    display: flex;
    flex-direction: column;
}

.metric-value[b-zjhroe90nb] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
}

.metric-label[b-zjhroe90nb] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* Chips never squeeze — the row wraps a whole chip down instead (see .header-metrics). */
.metric-card[b-zjhroe90nb] {
    align-self: flex-start;
    flex-shrink: 0;
}

/* ===== Change Property Type & Re-rate — inline icon button =====
   Sits inside the Property Type chip, right of its value/label stack. Geometry and colour are
   the ones the wide card's own icon tile already used — 2rem square, 0.5rem radius, --bs-warning
   fill on #664d03 — which is also the .metric-icon square's size and shape, so the button lines
   up with the chip's icon and adds no height to the strip. The card's border and focus ring are
   kept so it still reads as an affordance rather than a second metric icon; its two lines of copy
   now live in the title/aria-label. Nothing was promoted to leca-theme.css, so no other button in
   the app is affected. */
.rerate-cta[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    flex-shrink: 0;
    padding: 0;
    border: 1px solid rgba(255, 193, 7, 0.55);
    border-radius: 0.5rem;
    background: var(--bs-warning, #ffc107);
    color: #664d03;
    font-size: 1rem;
    cursor: pointer;
    /* Resting depth so the control sits above the metric strip instead of flat in it. The
       shadow/lift/press values below are the theme's existing raised-control canon (see
       .topbar-cta-btn and .action-link in wwwroot/leca-theme.css): --shadow-sm at rest,
       --shadow-md plus a 1px lift on hover, back to flat on press. Not the .btn canon —
       that one is deliberately "flat color-shift hover (no lift/shadow)" and would leave
       this control reading as passive, which is the thing being fixed. */
    box-shadow: var(--shadow-sm);
    transition: border-color 0.15s ease, box-shadow 0.15s ease, color 0.15s ease,
                transform 0.15s ease;
}

/* The wide card signalled hover by deepening its amber tint behind the tile; a solid tile has no
   tint to deepen, so the same rgba amber becomes a halo around it. No new colour is introduced —
   0.26 is the alpha the card's hover already used, 0.5 the one its focus ring uses below. */
.rerate-cta:hover[b-zjhroe90nb] {
    border-color: var(--bs-warning, #ffc107);
    transform: translateY(-1px);
    box-shadow: 0 0 0 3px rgba(255, 193, 7, 0.26), var(--shadow-md);
}

/* Pressed: drop the lift and the depth so the click is acknowledged. Ordered after :hover so it
   wins while the pointer is down, and before :focus-visible so the focus ring below still wins. */
.rerate-cta:active[b-zjhroe90nb] {
    transform: translateY(0);
    box-shadow: 0 0 0 3px rgba(255, 193, 7, 0.26), var(--shadow-sm);
}

/* The amber ring stays first in the list so the drop shadow layers behind it rather than
   washing it out — the focus treatment is unchanged in colour, alpha and spread. */
.rerate-cta:focus-visible[b-zjhroe90nb] {
    outline: none;
    box-shadow: 0 0 0 3px rgba(255, 193, 7, 0.5), var(--shadow-sm);
}

/* Header Tabs (inside card) */
.header-tabs[b-zjhroe90nb] {
    display: flex;
    gap: 0;
    list-style: none;
    margin: 0;
    padding: 0 1.5rem;
    border-top: 1px solid var(--border-light);
    animation: fadeIn-b-zjhroe90nb 0.4s ease-out 0.2s backwards;
}

.tab-item[b-zjhroe90nb] {
    margin: 0;
    animation: fadeInUp-b-zjhroe90nb 0.3s ease-out forwards;
    opacity: 0;
}

/* Staggered tab item animations */
.tab-item:nth-child(1)[b-zjhroe90nb] { animation-delay: 150ms; }
.tab-item:nth-child(2)[b-zjhroe90nb] { animation-delay: 180ms; }
.tab-item:nth-child(3)[b-zjhroe90nb] { animation-delay: 210ms; }
.tab-item:nth-child(4)[b-zjhroe90nb] { animation-delay: 240ms; }
.tab-item:nth-child(5)[b-zjhroe90nb] { animation-delay: 270ms; }
.tab-item:nth-child(6)[b-zjhroe90nb] { animation-delay: 300ms; }
.tab-item:nth-child(7)[b-zjhroe90nb] { animation-delay: 330ms; }

.tab-link[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.875rem 1rem;
    color: var(--text-secondary);
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    transition: all 0.2s ease;
}

.tab-link:hover[b-zjhroe90nb] {
    color: var(--brand-600);
}

.tab-link.active[b-zjhroe90nb] {
    color: var(--brand-600);
    font-weight: 600;
    border-bottom-color: var(--brand-600);
}

.tab-badge[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 0.375rem;
    background: var(--brand-100);
    color: var(--brand-700);
    font-size: 0.6875rem;
    font-weight: 700;
    border-radius: 9px;
}

.tab-link.active .tab-badge[b-zjhroe90nb] {
    background: var(--brand-600);
    color: white;
}

/* Bound Policy tab — distinct from the rest of the app tabs. Green pill with an
   "IN FORCE" chip so the tab itself advertises that coverage is live. Uses its
   own palette (emerald) so it reads as a status tab, not just another page. */
.tab-link.tab-link-bound[b-zjhroe90nb] {
    background: linear-gradient(135deg, #ECFDF5 0%, #D1FAE5 100%);
    color: #047857;
    font-weight: 700;
    border-radius: 8px 8px 0 0;
    border-bottom-color: transparent;
    padding-right: 0.75rem;
    box-shadow: inset 0 -2px 0 #10B981;
}
.tab-link.tab-link-bound:hover[b-zjhroe90nb] {
    background: linear-gradient(135deg, #D1FAE5 0%, #A7F3D0 100%);
    color: #065F46;
}
.tab-link.tab-link-bound i[b-zjhroe90nb] { color: #059669; }
.tab-link.tab-link-bound.active[b-zjhroe90nb] {
    background: linear-gradient(135deg, #D1FAE5 0%, #A7F3D0 100%);
    color: #065F46;
    box-shadow: inset 0 -3px 0 #059669;
}

/* "IN FORCE" chip rendered inside the bound tab. */
.tab-bound-chip[b-zjhroe90nb] {
    display: inline-flex; align-items: center;
    margin-left: 0.375rem;
    padding: 1px 7px;
    background: #059669;
    color: white;
    font-size: 0.625rem; font-weight: 800;
    letter-spacing: 0.06em;
    border-radius: 999px;
    text-transform: uppercase;
    box-shadow: 0 1px 2px rgba(5, 150, 105, 0.25);
}
.tab-link.tab-link-bound:not(.active) .tab-bound-chip[b-zjhroe90nb] { background: #10B981; }

/* Disabled Tabs - For Submitted applications before review */
.header-tabs.tabs-disabled .tab-link.disabled[b-zjhroe90nb] {
    color: var(--text-muted);
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: none;
}

.header-tabs.tabs-disabled .tab-link.disabled:hover[b-zjhroe90nb] {
    color: var(--text-muted);
    border-bottom-color: transparent;
}

.header-tabs.tabs-disabled .tab-link.disabled .tab-badge[b-zjhroe90nb] {
    background: var(--neutral-200);
    color: var(--neutral-500);
}

/* Locked Content Overlay */
.tab-content.content-locked[b-zjhroe90nb] {
    position: relative;
    min-height: 300px;
}

.locked-content-overlay[b-zjhroe90nb] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.95);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    border-radius: 12px;
}

.locked-message[b-zjhroe90nb] {
    text-align: center;
    padding: 2rem;
    max-width: 400px;
}

.locked-message i[b-zjhroe90nb] {
    font-size: 3rem;
    color: var(--text-muted);
    margin-bottom: 1rem;
    display: block;
}

.locked-message h4[b-zjhroe90nb] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.locked-message p[b-zjhroe90nb] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0;
}

/* Status Badge - Modern Pill Style */
.status-badge[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    padding: 0.375rem 0.875rem;
    border-radius: 100px;
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
}

.status-badge-draft[b-zjhroe90nb] { 
    background: var(--neutral-100);
    color: var(--neutral-600); 
}
.status-badge-submitted[b-zjhroe90nb] { 
    background: var(--brand-100);
    color: var(--brand-700); 
}
.status-badge-inreview[b-zjhroe90nb] { 
    background: #fef3c7;
    color: #92400e; 
}
.status-badge-awaitinginfo[b-zjhroe90nb] { 
    background: #ffedd5;
    color: #c2410c; 
}
.status-badge-approved[b-zjhroe90nb] { 
    background: #dcfce7;
    color: #15803d; 
}
.status-badge-declined[b-zjhroe90nb] { 
    background: #fee2e2;
    color: var(--error-600); 
}
.status-badge-bound[b-zjhroe90nb] { 
    background: #d1fae5;
    color: #047857; 
}
.status-badge-cancelled[b-zjhroe90nb] { 
    background: var(--neutral-100);
    color: var(--neutral-500); 
}
.status-badge-referral[b-zjhroe90nb] { 
    background: #f3e8ff;
    color: #7c3aed; 
}
.status-badge-referredtounderwriter[b-zjhroe90nb] { 
    background: #ede9fe;
    color: #6366f1; 
}

.actions[b-zjhroe90nb] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
}

.actions .form-select[b-zjhroe90nb] {
    width: auto;
    min-width: 180px;
    border: 1px solid var(--border-medium);
    border-radius: 8px;
    padding: 0.625rem 1rem;
    font-weight: 600;
    color: var(--text-primary);
    background: white;
    font-size: 0.9375rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    transition: all 0.2s ease;
}

.actions .form-select:hover[b-zjhroe90nb] {
    border-color: var(--brand-400);
    box-shadow: 0 4px 8px rgba(15, 23, 42, 0.12);
}

.actions .form-select:focus[b-zjhroe90nb] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
    outline: none;
}

.actions .btn-primary[b-zjhroe90nb] {
    background: var(--brand-600);
    border: none;
    padding: 0.625rem 1.5rem;
    font-weight: 700;
    border-radius: 10px;
    font-size: 0.9375rem;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.actions .btn-primary:hover[b-zjhroe90nb] {
    background: var(--brand-700);
}


/* Tabs Navigation */
.nav-tabs[b-zjhroe90nb] {
    border-bottom: 2px solid var(--border-light);
    margin-bottom: 0;
    background: white;
    padding: 0 2rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.03);
    display: flex;
    gap: 0.5rem;
}

.nav-tabs .nav-item[b-zjhroe90nb] {
    margin-bottom: 0;
}

.nav-tabs .nav-link[b-zjhroe90nb] {
    color: var(--text-secondary);
    border: none;
    border-bottom: 3px solid transparent;
    padding: 1rem 1.5rem;
    margin-bottom: -2px;
    font-weight: 600;
    font-size: 0.9375rem;
    transition: all 0.3s ease;
    position: relative;
    background: transparent;
    border-radius: 0;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.nav-tabs .nav-link i[b-zjhroe90nb] {
    font-size: 1rem;
    transition: transform 0.3s ease;
}

.nav-tabs .nav-link:hover i[b-zjhroe90nb] {
    transform: scale(1.1);
}

.nav-tabs .nav-link.active i[b-zjhroe90nb] {
    color: var(--brand-600);
}

.nav-tabs .nav-link:hover[b-zjhroe90nb] {
    color: var(--brand-600);
    background: var(--brand-50);
    border-bottom-color: var(--brand-300);
}

.nav-tabs .nav-link.active[b-zjhroe90nb] {
    color: var(--brand-700);
    border-bottom-color: var(--brand-600);
    background: transparent;
    font-weight: 700;
}

.nav-tabs .nav-link.active[b-zjhroe90nb]::before {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--brand-500) 0%, var(--brand-600) 100%);
    border-radius: 3px 3px 0 0;
}

.nav-tabs .nav-link .badge[b-zjhroe90nb] {
    margin-left: 0.5rem;
    background: var(--brand-500);
    color: white;
    font-size: 0.6875rem;
    padding: 0.25rem 0.5rem;
    border-radius: 10px;
    font-weight: 700;
    vertical-align: middle;
}

.nav-tabs .nav-link.active .badge[b-zjhroe90nb] {
    background: var(--brand-600);
}

/* Tab Content */
.tab-content[b-zjhroe90nb] {
    padding: 2rem;
    /* Use the app's theme base (cool neutral) instead of the legacy warm cream
       gradient, which clashed with the blue brand palette. */
    background: var(--bg-base);
    min-height: calc(100vh - 220px);
    animation: fadeInUp-b-zjhroe90nb 0.4s ease-out 0.3s backwards;
}



/* Summary Grid */
.summary-grid[b-zjhroe90nb] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
    gap: 1.5rem;
}

.summary-card[b-zjhroe90nb] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 12px;
    padding: 1.75rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    animation: fadeInUp-b-zjhroe90nb 0.4s ease-out forwards;
    opacity: 0;
}

/* Staggered summary card animations */
.summary-card:nth-child(1)[b-zjhroe90nb] { animation-delay: 100ms; }
.summary-card:nth-child(2)[b-zjhroe90nb] { animation-delay: 150ms; }
.summary-card:nth-child(3)[b-zjhroe90nb] { animation-delay: 200ms; }
.summary-card:nth-child(4)[b-zjhroe90nb] { animation-delay: 250ms; }
.summary-card:nth-child(5)[b-zjhroe90nb] { animation-delay: 300ms; }
.summary-card:nth-child(6)[b-zjhroe90nb] { animation-delay: 350ms; }

.summary-card[b-zjhroe90nb]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--brand-500) 0%, var(--brand-400) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.summary-card:hover[b-zjhroe90nb] {
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.1);
    border-color: var(--brand-200);
    transform: translateY(-2px);
}

.summary-card:hover[b-zjhroe90nb]::before {
    opacity: 1;
}

.summary-card .card-title[b-zjhroe90nb] {
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid var(--border-light);
    color: var(--text-primary);
    letter-spacing: -0.01em;
}

.summary-list[b-zjhroe90nb] {
    margin: 0;
    display: grid;
    grid-template-columns: minmax(140px, auto) 1fr;
    gap: 1rem 1.25rem;
    align-items: baseline;
}

.summary-list dt[b-zjhroe90nb] {
    font-weight: 600;
    color: var(--text-muted);
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.summary-list dd[b-zjhroe90nb] {
    margin: 0;
    color: var(--text-primary);
    font-size: 0.9375rem;
    font-weight: 500;
}

.summary-list dd .badge[b-zjhroe90nb] {
    font-size: 0.75rem;
    padding: 0.375rem 0.75rem;
    border-radius: 6px;
    font-weight: 700;
}

.summary-list dd .text-muted[b-zjhroe90nb] {
    color: var(--text-disabled) !important;
    font-style: italic;
}

/* Alert boxes in summary cards */
.summary-card .alert[b-zjhroe90nb] {
    margin-top: 1.5rem;
    border-radius: 8px;
    border: none;
    padding: 1rem 1.25rem;
    font-size: 0.875rem;
}

.summary-card .alert-info[b-zjhroe90nb] {
    background: linear-gradient(135deg, var(--brand-50) 0%, var(--brand-100) 100%);
    color: var(--brand-800);
    border-left: 4px solid var(--brand-500);
}

.summary-card .alert-warning[b-zjhroe90nb] {
    background: linear-gradient(135deg, var(--warning-50) 0%, #FED7AA 100%);
    color: var(--warning-700);
    border-left: 4px solid var(--warning-500);
}

.summary-card .alert-danger[b-zjhroe90nb] {
    background: linear-gradient(135deg, var(--error-50) 0%, #fee2e2 100%);
    color: var(--error-700);
    border-left: 4px solid var(--error-500);
}

.summary-card .alert strong[b-zjhroe90nb] {
    font-weight: 700;
    display: block;
    margin-bottom: 0.5rem;
}



/* Mobile Responsive */
@media (max-width: 992px) {
    .page-header[b-zjhroe90nb] {
        grid-template-columns: 1fr;
        gap: 1rem;
        padding: 1.25rem 1.5rem;
    }
    
    .application-info[b-zjhroe90nb] {
        width: 100%;
    }
    
    .actions[b-zjhroe90nb] {
        width: 100%;
        justify-content: stretch;
    }
    
    .actions .form-select[b-zjhroe90nb],
    .actions .btn[b-zjhroe90nb] {
        flex: 1;
    }
}

@media (max-width: 768px) {
    .application-detail-page[b-zjhroe90nb] {
        padding: 0;
    }
    
    .page-header[b-zjhroe90nb] {
        padding: 1rem;
    }
    
    .application-info h2[b-zjhroe90nb] {
        font-size: 1.375rem;
    }
    
    .company-name[b-zjhroe90nb] {
        font-size: 1rem;
        padding-left: 0.75rem;
    }
    
    .nav-tabs[b-zjhroe90nb] {
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
        flex-wrap: nowrap;
        scrollbar-width: thin;
        padding: 0 1rem;
        gap: 0.25rem;
    }
    
    .nav-tabs .nav-item[b-zjhroe90nb] {
        flex-shrink: 0;
    }
    
    .nav-tabs .nav-link[b-zjhroe90nb] {
        padding: 0.875rem 1rem;
        font-size: 0.875rem;
    }
    
    .tab-content[b-zjhroe90nb] {
        padding: 1.25rem 1rem;
    }
    
    .summary-grid[b-zjhroe90nb] {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .summary-card[b-zjhroe90nb] {
        padding: 1.25rem;
    }
    
    .summary-card .card-title[b-zjhroe90nb] {
        font-size: 1rem;
    }
    
    .summary-list[b-zjhroe90nb] {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }
    
    .summary-list dt[b-zjhroe90nb] {
        margin-bottom: 0.25rem;
    }
}

@media (max-width: 576px) {
    .application-info[b-zjhroe90nb] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.75rem;
    }
    
    .company-name[b-zjhroe90nb] {
        border-left: none;
        padding-left: 0;
    }
    
    .actions[b-zjhroe90nb] {
        flex-direction: column;
    }
    
    .actions .form-select[b-zjhroe90nb],
    .actions .btn-primary[b-zjhroe90nb] {
        width: 100%;
    }
}

/* Scrollbar Styling for Tabs */
.nav-tabs[b-zjhroe90nb]::-webkit-scrollbar {
    height: 4px;
}

.nav-tabs[b-zjhroe90nb]::-webkit-scrollbar-track {
    background: var(--neutral-100);
}

.nav-tabs[b-zjhroe90nb]::-webkit-scrollbar-thumb {
    background: var(--brand-300);
    border-radius: 2px;
}

.nav-tabs[b-zjhroe90nb]::-webkit-scrollbar-thumb:hover {
    background: var(--brand-400);
}

/* Alert Styles */
[b-zjhroe90nb] .alert {
    border: none;
    border-radius: 10px;
    padding: 1rem 1.25rem;
    margin-bottom: 1rem;
    font-size: 0.9375rem;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}

[b-zjhroe90nb] .alert-danger {
    background: linear-gradient(135deg, var(--error-50) 0%, #fee2e2 100%);
    color: var(--error-700);
    border-left: 4px solid var(--error-500);
}

[b-zjhroe90nb] .alert i {
    margin-right: 0.5rem;
    font-size: 1.125rem;
    vertical-align: middle;
}

/* Badge Styles */
[b-zjhroe90nb] .badge {
    padding: 0.375rem 0.75rem;
    border-radius: 6px;
    font-weight: 700;
    font-size: 0.75rem;
    letter-spacing: 0.3px;
}

[b-zjhroe90nb] .bg-secondary {
    background: linear-gradient(135deg, var(--neutral-500) 0%, var(--neutral-600) 100%) !important;
}

[b-zjhroe90nb] .bg-primary {
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-600) 100%) !important;
}

[b-zjhroe90nb] .bg-success {
    background: linear-gradient(135deg, var(--success-500) 0%, var(--success-600) 100%) !important;
}

[b-zjhroe90nb] .bg-warning {
    background: linear-gradient(135deg, #FBBF24 0%, var(--warning-500) 100%) !important;
}

[b-zjhroe90nb] .bg-danger {
    background: linear-gradient(135deg, var(--error-500) 0%, var(--error-600) 100%) !important;
}

[b-zjhroe90nb] .bg-info {
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%) !important;
}

[b-zjhroe90nb] .text-dark {
    color: var(--neutral-900) !important;
}

/* Tablet Responsive */
@media (min-width: 769px) and (max-width: 1024px) {
    .summary-grid[b-zjhroe90nb] {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Connection Status Indicator (for future SSE implementation) */
.connection-status[b-zjhroe90nb] {
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    padding: 0.5rem 1rem;
    border-radius: 4px;
    font-size: 0.875rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}

.connection-status.connected[b-zjhroe90nb] {
    background-color: #d1e7dd;
    color: #0f5132;
}

.connection-status.disconnected[b-zjhroe90nb] {
    background-color: #f8d7da;
    color: #842029;
}

.connection-status.reconnecting[b-zjhroe90nb] {
    background-color: #fff3cd;
    color: #664d03;
}

.connection-status-dot[b-zjhroe90nb] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: currentColor;
}

/* ========================================
   Approve for Binding Modal - Themed UI
   ======================================== */
.binding-modal[b-zjhroe90nb] {
    border: none;
    border-radius: 16px;
    overflow: visible;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    animation: scaleIn-b-zjhroe90nb 0.2s ease-out;
    max-width: 540px;
}

.binding-modal-header[b-zjhroe90nb] {
    display: flex;
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    background: #fff;
    border-bottom: 1px solid #EEF2F6;
}

.binding-modal-title[b-zjhroe90nb] {
    flex: 1;
}

.binding-modal-title h5[b-zjhroe90nb] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
}

.binding-modal-subtitle[b-zjhroe90nb] {
    display: block;
    font-size: 0.8rem;
    color: #64748B;
    line-height: 1.45;
    margin-top: 0.125rem;
}

.binding-close-btn[b-zjhroe90nb] {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: none;
    background: transparent;
    color: #94A3B8;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.15s;
}

.binding-close-btn:hover[b-zjhroe90nb] {
    background: #F1F5F9;
    color: #0F172A;
}

.binding-modal-body[b-zjhroe90nb] {
    padding: 1.15rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    overflow: visible;
    max-height: calc(100vh - 280px);
    overflow-y: auto;
}

/* Simple confirm copy — replaced the former Policy Number + Custom Requirements sections.
   Policy-number assignment now happens at Bind Coverage, so the approval modal just
   explains what's about to happen. */
.binding-confirm-copy[b-zjhroe90nb] {
    margin: 0;
    padding: 0.75rem 0;
    font-size: 14px;
    line-height: 1.55;
    color: var(--text-secondary, #475569);
}

/* Section styling */
.binding-section[b-zjhroe90nb] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.binding-section-label[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Radio Button Group - Horizontal layout */
.binding-radio-group[b-zjhroe90nb] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.625rem;
}

.binding-radio-option[b-zjhroe90nb] {
    display: block;
    cursor: pointer;
    border: 2px solid var(--neutral-200);
    border-radius: 10px;
    padding: 0.75rem;
    transition: all 0.2s ease;
    background: white;
}

.binding-radio-option:hover[b-zjhroe90nb] {
    border-color: var(--neutral-300);
    background: var(--neutral-50);
}

.binding-radio-option.selected[b-zjhroe90nb] {
    border-color: var(--success-500);
    background: rgba(34, 197, 94, 0.05);
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.1);
}

.binding-radio-option input[type="radio"][b-zjhroe90nb] {
    display: none;
}

.binding-radio-content[b-zjhroe90nb] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    text-align: center;
}

.binding-radio-icon[b-zjhroe90nb] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: all 0.2s ease;
}

.binding-radio-icon.existing[b-zjhroe90nb] {
    background: var(--brand-100);
    color: var(--brand-600);
}

.binding-radio-option.selected .binding-radio-icon.existing[b-zjhroe90nb] {
    background: var(--brand-500);
    color: white;
}

.binding-radio-icon.new[b-zjhroe90nb] {
    background: var(--success-100);
    color: var(--success-600);
}

.binding-radio-option.selected .binding-radio-icon.new[b-zjhroe90nb] {
    background: var(--success-500);
    color: white;
}

.binding-radio-icon i[b-zjhroe90nb] {
    font-size: 1.125rem;
}

.binding-radio-text[b-zjhroe90nb] {
    flex: 1;
}

.binding-radio-title[b-zjhroe90nb] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.binding-radio-desc[b-zjhroe90nb] {
    display: none;
}

/* Select dropdown */
.binding-select[b-zjhroe90nb] {
    width: 100%;
    padding: 0.875rem 1rem;
    font-size: 0.9375rem;
    border: 1px solid var(--neutral-300);
    border-radius: 10px;
    background: white;
    color: var(--text-primary);
    cursor: pointer;
    transition: border-color 0.2s, box-shadow 0.2s;
    appearance: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 16px 12px;
}

.binding-select:focus[b-zjhroe90nb] {
    outline: none;
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

/* Info card (no policies available) */
.binding-info-card[b-zjhroe90nb] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem;
    background: var(--warning-50);
    border: 1px solid var(--warning-200);
    border-radius: 8px;
}

.binding-info-icon[b-zjhroe90nb] {
    width: 32px;
    height: 32px;
    border-radius: 6px;
    background: var(--warning-100);
    color: var(--warning-600);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.binding-info-icon i[b-zjhroe90nb] {
    font-size: 1rem;
}

.binding-info-text[b-zjhroe90nb] {
    flex: 1;
}

.binding-info-title[b-zjhroe90nb] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--warning-800);
}

.binding-info-desc[b-zjhroe90nb] {
    display: block;
    font-size: 0.75rem;
    color: var(--warning-700);
    margin-top: 0.125rem;
}

/* Input group for policy number */
.binding-input-group[b-zjhroe90nb] {
    display: flex;
    gap: 0.375rem;
}

.binding-input[b-zjhroe90nb] {
    flex: 1;
    padding: 0.625rem 0.875rem;
    font-size: 0.8125rem;
    border: 1px solid var(--neutral-300);
    border-radius: 8px;
    background: white;
    color: var(--text-primary);
    transition: border-color 0.2s, box-shadow 0.2s;
}

.binding-input:focus[b-zjhroe90nb] {
    outline: none;
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.binding-input[b-zjhroe90nb]::placeholder {
    color: var(--text-muted);
}

.binding-generate-btn[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.625rem 0.875rem;
    font-size: 0.8125rem;
    font-weight: 600;
    border: 1px solid var(--brand-300);
    border-radius: 8px;
    background: var(--brand-50);
    color: var(--brand-700);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.binding-generate-btn:hover:not(:disabled)[b-zjhroe90nb] {
    background: var(--brand-100);
    border-color: var(--brand-400);
}

.binding-generate-btn:disabled[b-zjhroe90nb] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Modal Footer */
.binding-modal-footer[b-zjhroe90nb] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    background: #FAFBFC;
    border-top: 1px solid #EEF2F6;
    border-bottom-left-radius: 16px;
    border-bottom-right-radius: 16px;
}

/* Themed Buttons */
.binding-btn[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.55rem 1.15rem;
    font-size: 0.85rem;
    font-weight: 600;
    border-radius: 10px;
    border: none;
    cursor: pointer;
    transition: all 0.15s;
}

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

.binding-btn-cancel[b-zjhroe90nb] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.binding-btn-cancel:hover:not(:disabled)[b-zjhroe90nb] {
    background: #F1F5F9;
    color: #0F172A;
}

.binding-btn-confirm[b-zjhroe90nb] {
    background: var(--success-600, #059669);
    color: white;
}

.binding-btn-confirm:hover:not(:disabled)[b-zjhroe90nb] {
    background: var(--success-700, #047857);
}

/* ========================================
   Searchable Policy Dropdown
   ======================================== */
.binding-dropdown-container[b-zjhroe90nb] {
    position: relative;
}

.binding-dropdown[b-zjhroe90nb] {
    position: relative;
    cursor: pointer;
}

.binding-dropdown-selected[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.625rem 0.875rem;
    background: white;
    border: 1px solid var(--neutral-300);
    border-radius: 8px;
    transition: all 0.2s ease;
}

.binding-dropdown:hover .binding-dropdown-selected[b-zjhroe90nb] {
    border-color: var(--neutral-400);
}

.binding-dropdown.open .binding-dropdown-selected[b-zjhroe90nb] {
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.binding-dropdown-value[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex: 1;
    min-width: 0;
}

.binding-dropdown-value i[b-zjhroe90nb] {
    color: var(--brand-500);
    font-size: 0.875rem;
}

.binding-dropdown-value span[b-zjhroe90nb] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
}

.binding-dropdown-bank[b-zjhroe90nb] {
    font-size: 0.6875rem !important;
    font-weight: 400 !important;
    color: var(--text-muted) !important;
    background: var(--neutral-100);
    padding: 0.125rem 0.375rem;
    border-radius: 3px;
}

.binding-dropdown-placeholder[b-zjhroe90nb] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.binding-dropdown-arrow[b-zjhroe90nb] {
    font-size: 0.75rem;
    color: var(--text-muted);
    transition: transform 0.2s ease;
}

.binding-dropdown.open .binding-dropdown-arrow[b-zjhroe90nb] {
    transform: rotate(180deg);
}

/* Dropdown Menu */
.binding-dropdown-menu[b-zjhroe90nb] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 1px solid var(--brand-400);
    border-top: none;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    z-index: 1000;
    overflow: hidden;
    animation: dropdownSlideIn-b-zjhroe90nb 0.15s ease-out;
}

@keyframes dropdownSlideIn-b-zjhroe90nb {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Search Input */
.binding-dropdown-search[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--neutral-200);
}

.binding-dropdown-search i[b-zjhroe90nb] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.binding-dropdown-search input[b-zjhroe90nb] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
}

.binding-dropdown-search input[b-zjhroe90nb]::placeholder {
    color: var(--text-muted);
}

.binding-dropdown-clear[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border: none;
    background: var(--neutral-200);
    border-radius: 50%;
    cursor: pointer;
    transition: background 0.2s;
}

.binding-dropdown-clear:hover[b-zjhroe90nb] {
    background: var(--neutral-300);
}

.binding-dropdown-clear i[b-zjhroe90nb] {
    font-size: 0.6875rem;
    color: var(--text-secondary);
}

/* Dropdown Items List */
.binding-dropdown-items[b-zjhroe90nb] {
    max-height: 180px;
    overflow-y: auto;
}

.binding-dropdown-item[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    cursor: pointer;
    transition: background 0.15s ease;
}

.binding-dropdown-item:hover[b-zjhroe90nb] {
    background: var(--neutral-50);
}

.binding-dropdown-item.selected[b-zjhroe90nb] {
    background: var(--brand-50);
}

.binding-dropdown-item-icon[b-zjhroe90nb] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: var(--neutral-100);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.binding-dropdown-item.selected .binding-dropdown-item-icon[b-zjhroe90nb] {
    background: var(--brand-100);
}

.binding-dropdown-item-icon i[b-zjhroe90nb] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.binding-dropdown-item.selected .binding-dropdown-item-icon i[b-zjhroe90nb] {
    color: var(--brand-600);
}

.binding-dropdown-item-content[b-zjhroe90nb] {
    flex: 1;
    min-width: 0;
}

.binding-dropdown-item-title[b-zjhroe90nb] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.binding-dropdown-item-subtitle[b-zjhroe90nb] {
    display: block;
    font-size: 0.6875rem;
    color: var(--text-muted);
    margin-top: 0.0625rem;
}

.binding-dropdown-item-check[b-zjhroe90nb] {
    font-size: 0.875rem;
    color: var(--brand-600);
}

/* Empty State */
.binding-dropdown-empty[b-zjhroe90nb] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 1rem 0.75rem;
    color: var(--text-muted);
}

.binding-dropdown-empty i[b-zjhroe90nb] {
    font-size: 1.25rem;
    opacity: 0.5;
}

.binding-dropdown-empty span[b-zjhroe90nb] {
    font-size: 0.75rem;
}

/* Document count badge */
.binding-dropdown-docs[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 0.125rem;
    font-size: 0.625rem !important;
    font-weight: 500 !important;
    color: var(--success-600) !important;
    background: var(--success-50);
    padding: 0.0625rem 0.375rem;
    border-radius: 3px;
    margin-left: 0.125rem;
}

.binding-dropdown-docs.no-docs[b-zjhroe90nb] {
    color: var(--warning-700) !important;
    background: var(--warning-50);
}

.binding-dropdown-docs i[b-zjhroe90nb] {
    font-size: 0.5rem;
}

/* Warning styling for items without documents */
.binding-dropdown-item.no-docs[b-zjhroe90nb] {
    background: var(--warning-50);
}

.binding-dropdown-item.no-docs:hover[b-zjhroe90nb] {
    background: var(--warning-100);
}

.binding-dropdown-item-icon.warning[b-zjhroe90nb] {
    background: var(--warning-100) !important;
    color: var(--warning-600) !important;
}

.text-warning[b-zjhroe90nb] {
    color: var(--warning-600) !important;
    font-weight: 500;
}

/* Warning card for no documents */
.binding-warning-card[b-zjhroe90nb] {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    padding: 0.625rem 0.75rem;
    background: var(--warning-50);
    border: 1px solid var(--warning-200);
    border-radius: 6px;
    margin-top: 0.5rem;
    animation: fadeIn-b-zjhroe90nb 0.2s ease-out;
}

.binding-warning-icon[b-zjhroe90nb] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: var(--warning-100);
    color: var(--warning-600);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.binding-warning-icon i[b-zjhroe90nb] {
    font-size: 0.875rem;
}

.binding-warning-text[b-zjhroe90nb] {
    flex: 1;
}

.binding-warning-title[b-zjhroe90nb] {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--warning-800);
}

.binding-warning-desc[b-zjhroe90nb] {
    display: block;
    font-size: 0.6875rem;
    color: var(--warning-700);
    margin-top: 0.0625rem;
    line-height: 1.3;
}

/* ========================================
   Subjectivities Section in Binding Modal
   ======================================== */
.binding-section-header[b-zjhroe90nb] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.5rem;
}

.binding-section-header .binding-section-label[b-zjhroe90nb] {
    margin-bottom: 0;
}

.binding-add-btn[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--brand-600);
    background: var(--brand-50);
    border: 1px solid var(--brand-200);
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s;
}

.binding-add-btn:hover[b-zjhroe90nb] {
    background: var(--brand-100);
    border-color: var(--brand-300);
}

.binding-subjectivities-list[b-zjhroe90nb] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.binding-subjectivities-list.readonly[b-zjhroe90nb] {
    max-height: 120px;
    overflow-y: auto;
    padding-right: 0.25rem;
}

.binding-subjectivity-item[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.625rem;
    background: var(--neutral-50);
    border: 1px solid var(--neutral-200);
    border-radius: 6px;
}

.binding-subjectivity-item.editable[b-zjhroe90nb] {
    background: white;
    align-items: flex-start;
}

.binding-subjectivity-icon[b-zjhroe90nb] {
    width: 26px;
    height: 26px;
    border-radius: 5px;
    background: var(--neutral-100);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.binding-subjectivity-icon i[b-zjhroe90nb] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.binding-subjectivity-content[b-zjhroe90nb] {
    flex: 1;
    min-width: 0;
}

.binding-subjectivity-title[b-zjhroe90nb] {
    display: block;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-primary);
}

.binding-subjectivity-desc[b-zjhroe90nb] {
    display: none;
}

.binding-subjectivity-badges[b-zjhroe90nb] {
    display: flex;
    gap: 0.25rem;
    flex-shrink: 0;
}

.binding-badge[b-zjhroe90nb] {
    padding: 0.125rem 0.375rem;
    font-size: 0.625rem;
    font-weight: 500;
    border-radius: 3px;
}

.binding-badge.required[b-zjhroe90nb] {
    background: var(--danger-50);
    color: var(--danger-600);
}

.binding-badge.type[b-zjhroe90nb] {
    background: var(--neutral-100);
    color: var(--text-secondary);
}

/* Editable subjectivity form */
.binding-subjectivity-form[b-zjhroe90nb] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.binding-subjectivity-row[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.binding-input-sm[b-zjhroe90nb] {
    flex: 1;
    padding: 0.5rem 0.75rem;
    font-size: 0.8125rem;
    border: 1px solid var(--neutral-300);
    border-radius: 6px;
    background: white;
}

.binding-input-sm:focus[b-zjhroe90nb] {
    outline: none;
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px var(--brand-100);
}

.binding-input-sm.desc[b-zjhroe90nb] {
    flex: 2;
}

.binding-select-sm[b-zjhroe90nb] {
    padding: 0.5rem 0.75rem;
    font-size: 0.8125rem;
    border: 1px solid var(--neutral-300);
    border-radius: 6px;
    background: white;
    cursor: pointer;
    min-width: 140px;
}

.binding-select-sm:focus[b-zjhroe90nb] {
    outline: none;
    border-color: var(--brand-400);
}

.binding-checkbox-label[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: pointer;
    white-space: nowrap;
}

.binding-checkbox-label input[b-zjhroe90nb] {
    width: 1rem;
    height: 1rem;
    cursor: pointer;
}

.binding-remove-btn[b-zjhroe90nb] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--danger-500);
    background: transparent;
    border: 1px solid var(--danger-200);
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
}

.binding-remove-btn:hover[b-zjhroe90nb] {
    background: var(--danger-50);
    border-color: var(--danger-300);
}

.binding-empty-subjectivities[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--neutral-50);
    border: 1px dashed var(--neutral-300);
    border-radius: 6px;
    color: var(--text-muted);
}

.binding-empty-subjectivities i[b-zjhroe90nb] {
    font-size: 1rem;
    opacity: 0.5;
}

.binding-empty-subjectivities span[b-zjhroe90nb] {
    font-size: 0.75rem;
}

/* Payment Card */
.payment-card[b-zjhroe90nb] {
    margin: 0 1.5rem 12px;
    padding: 16px 20px;
    border-radius: 10px;
    background: white;
    border: 1px solid #e5e7eb;
    border-left: 4px solid #d1d5db;
}

.payment-card-completed[b-zjhroe90nb] { border-left-color: #22c55e; background: #fafff9; }
.payment-card-pending[b-zjhroe90nb] { border-left-color: #f59e0b; background: #fffdf5; }
.payment-card-bounced[b-zjhroe90nb] { border-left-color: #ef4444; background: #fff5f5; }
.payment-card-expired[b-zjhroe90nb] { border-left-color: #ef4444; background: #fff5f5; }

.payment-card-header[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.payment-card-status[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.payment-status-icon[b-zjhroe90nb] {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.payment-status-icon.status-completed[b-zjhroe90nb] { background: #dcfce7; color: #16a34a; }
.payment-status-icon.status-pending[b-zjhroe90nb] { background: #fef3c7; color: #d97706; }
.payment-status-icon.status-bounced[b-zjhroe90nb] { background: #fee2e2; color: #dc2626; }
.payment-status-icon.status-expired[b-zjhroe90nb] { background: #fee2e2; color: #dc2626; }

.payment-status-text[b-zjhroe90nb] {
    display: flex;
    flex-direction: column;
}

.payment-status-title[b-zjhroe90nb] {
    font-size: 0.9rem;
    font-weight: 700;
    color: #1f2937;
}

.payment-status-subtitle[b-zjhroe90nb] {
    font-size: 0.75rem;
    color: #6b7280;
}

.payment-badge-success[b-zjhroe90nb] {
    background: #dcfce7 !important;
    color: #16a34a !important;
    font-weight: 600;
    font-size: 0.8rem;
    padding: 6px 12px;
}

.payment-badge-warning[b-zjhroe90nb] {
    background: #fef3c7 !important;
    color: #92400e !important;
    font-weight: 600;
    font-size: 0.8rem;
    padding: 6px 12px;
}

.payment-badge-danger[b-zjhroe90nb] {
    background: #fee2e2 !important;
    color: #dc2626 !important;
    font-weight: 600;
    font-size: 0.8rem;
    padding: 6px 12px;
}

.payment-card-details[b-zjhroe90nb] {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    border-top: 1px solid #f3f4f6;
    padding-top: 12px;
}

.payment-detail-item[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 16px 4px 0;
    min-width: 180px;
    flex: 0 0 auto;
}

.payment-detail-icon[b-zjhroe90nb] {
    width: 26px;
    height: 26px;
    border-radius: 6px;
    background: #f3f4f6;
    color: #6b7280;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    flex-shrink: 0;
}

.payment-detail-content[b-zjhroe90nb] {
    display: flex;
    flex-direction: column;
}

.payment-detail-label[b-zjhroe90nb] {
    font-size: 0.65rem;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
}

.payment-detail-value[b-zjhroe90nb] {
    font-size: 0.82rem;
    font-weight: 600;
    color: #374151;
}

.payment-txn-id[b-zjhroe90nb] {
    font-family: 'SF Mono', 'Fira Code', monospace;
    font-size: 0.75rem;
    font-weight: 500;
}

.payment-card-actions[b-zjhroe90nb] {
    padding-top: 4px;
}

/* Resend link button — subtle text style */
.resend-link-btn[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: none;
    border: none;
    padding: 0;
    font-size: 0.75rem;
    font-weight: 500;
    color: #0d6785;
    cursor: pointer;
    font-family: inherit;
    transition: color 0.15s;
}

.resend-link-btn:hover[b-zjhroe90nb] {
    color: #0a526a;
    text-decoration: underline;
}

.resend-link-btn i[b-zjhroe90nb] {
    font-size: 0.7rem;
}

/* Resend form — inline compact */
.payment-resend-form[b-zjhroe90nb] {
    max-width: 520px;
}

.resend-label[b-zjhroe90nb] {
    display: block;
    font-size: 0.7rem;
    color: #9ca3af;
    margin-bottom: 6px;
}

.resend-input-row[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.resend-input-wrap[b-zjhroe90nb] {
    position: relative;
    flex: 1;
}

.resend-input-wrap i[b-zjhroe90nb] {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.75rem;
    color: #9ca3af;
}

.resend-input-wrap .form-control[b-zjhroe90nb] {
    padding-left: 30px;
    font-size: 0.8rem;
}

.resend-send-btn[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
    font-size: 0.75rem;
    font-weight: 600;
    font-family: inherit;
    padding: 6px 14px;
    background: #0d6785;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.15s;
}

.resend-send-btn:hover:not(:disabled)[b-zjhroe90nb] {
    background: #0a526a;
}

.resend-send-btn:disabled[b-zjhroe90nb] {
    opacity: 0.5;
    cursor: not-allowed;
}

.resend-cancel-btn[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    border: 1px solid #e5e7eb;
    background: white;
    color: #9ca3af;
    font-size: 0.7rem;
    cursor: pointer;
    padding: 0;
    font-family: inherit;
    transition: all 0.15s;
}

.resend-cancel-btn:hover[b-zjhroe90nb] {
    background: #f9fafb;
    color: #6b7280;
    border-color: #d1d5db;
}

.resend-feedback[b-zjhroe90nb] {
    font-size: 0.72rem;
    margin-top: 4px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.resend-error[b-zjhroe90nb] {
    color: #dc2626;
}

.resend-success[b-zjhroe90nb] {
    color: #16a34a;
}

/* ========================================
   Status Change Confirmation Modal (SweetAlert-style)
   ======================================== */
.swal-backdrop[b-zjhroe90nb] { position: fixed; inset: 0; background: rgba(15,23,42,0.45); backdrop-filter: blur(4px); z-index: 1060; display: flex; align-items: center; justify-content: center; padding: 1.5rem; animation: swalFadeIn-b-zjhroe90nb 0.15s ease; }
.swal-modal[b-zjhroe90nb] { background: white; border-radius: 16px; padding: 32px 28px 24px; max-width: 400px; width: 100%; max-height: 90vh; overflow-y: auto; text-align: center; box-shadow: 0 24px 64px rgba(15,23,42,0.25); animation: swalPopIn-b-zjhroe90nb 0.25s cubic-bezier(0.34,1.56,0.64,1); }
.swal-icon[b-zjhroe90nb] { width: 64px; height: 64px; border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 16px; font-size: 1.8rem; }
.swal-icon-info[b-zjhroe90nb] { background: var(--brand-50, #E6F2F8); color: var(--brand-600, #004980); }
.swal-title[b-zjhroe90nb] { font-size: 1.05rem; font-weight: 700; color: #0F172A; margin: 0 0 12px; }
.swal-text[b-zjhroe90nb] { font-size: 0.85rem; color: #64748B; line-height: 1.5; margin: 0 0 24px; }
.request-info-field[b-zjhroe90nb] { margin-bottom: 24px; }
.swal-actions[b-zjhroe90nb] { display: flex; gap: 0.6rem; justify-content: center; }
.swal-btn[b-zjhroe90nb] { padding: 0.55rem 1.15rem; border-radius: 10px; font-size: 0.85rem; font-weight: 600; cursor: pointer; transition: all 0.15s; border: none; font-family: inherit; display: inline-flex; align-items: center; gap: 6px; }
.swal-btn-cancel[b-zjhroe90nb] { background: transparent; color: #64748B; border: 1px solid #E2E8F0; }
.swal-btn-cancel:hover[b-zjhroe90nb] { background: #F1F5F9; color: #0F172A; }
.swal-btn-confirm-blue[b-zjhroe90nb] { background: var(--brand-600, #004980); color: white; }
.swal-btn-confirm-blue:hover[b-zjhroe90nb] { background: var(--brand-700, #003760); }
.status-change-preview[b-zjhroe90nb] { display: flex; align-items: center; justify-content: center; gap: 12px; margin-bottom: 16px; }
.status-preview-badge[b-zjhroe90nb] { display: inline-flex; align-items: center; gap: 6px; padding: 4px 12px; background: #F3F4F6; border-radius: 20px; font-size: 0.8rem; font-weight: 600; color: #374151; }
@keyframes swalFadeIn-b-zjhroe90nb { from { opacity: 0; } to { opacity: 1; } }
@keyframes swalPopIn-b-zjhroe90nb { from { opacity: 0; transform: scale(0.85); } to { opacity: 1; transform: scale(1); } }

/* ========================================
   Awaiting Info Note
   ======================================== */
/* Sits as the last flex item inside .header-metrics, filling the empty right side of the
   metrics row alongside the Loan Amount / Property Type / Loan Term / Est. Premium cards.
   margin-left: auto absorbs the free space so the chip is pushed to the right end of the row;
   the row's own 1.5rem right padding (.header-metrics padding: 0 1.5rem 1.5rem) supplies the
   right inset, so the chip must NOT re-add it. .header-metrics has no explicit align-items
   (defaults to stretch), so align-self: center vertically centers this compact chip against the
   metric cards instead of stretching it to full row height. width: fit-content keeps it compact. */
.awaiting-info-note[b-zjhroe90nb] { display: flex; align-items: center; align-self: center; gap: 6px; padding: 6px 12px; margin: 0 0 0 auto; width: fit-content; background: #FEF3C7; border: 1px solid #FDE68A; border-radius: 6px; font-size: 0.75rem; color: #92400E; }
.awaiting-info-note i[b-zjhroe90nb] { color: #D97706; }

/* ========================================
   Audit Trail — Header Button + Modal
   ======================================== */

/* Breadcrumb-row action cluster — groups Reassign/History/Audit Trail into one
   toolbar with a tighter internal gap, spaced away from the passive status badges. */
.breadcrumb-actions[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    margin-left: 0.25rem;
    flex-shrink: 0;
}

/* Header button — secondary action button in the breadcrumb row, right-aligned.
   Squared corners + border + shadow distinguish it from the pill-shaped badges. */
.btn-audit-trail[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    height: 30px;
    padding: 0 0.75rem;
    background: white;
    border: 1px solid var(--border-medium, #e2e8f0);
    border-radius: 8px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
    color: var(--text-secondary, #64748b);
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s ease;
    flex-shrink: 0;
    white-space: nowrap;
}

.btn-audit-trail i[b-zjhroe90nb] {
    font-size: 0.8rem;
}

.btn-audit-trail:hover[b-zjhroe90nb] {
    background: var(--neutral-100, #f1f5f9);
    border-color: var(--border-dark, #cbd5e1);
    color: var(--text-primary, #1e293b);
}

/* Modal dialog — slightly wider for the data grid */
.audit-trail-dialog[b-zjhroe90nb] {
    max-width: 560px;
}

.audit-trail-modal[b-zjhroe90nb] {
    border: none;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    animation: auditModalIn-b-zjhroe90nb 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes auditModalIn-b-zjhroe90nb {
    from { opacity: 0; transform: scale(0.92); }
    to   { opacity: 1; transform: scale(1); }
}

/* Modal header */
.audit-trail-modal-header[b-zjhroe90nb] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    background: #fff;
    border-bottom: 1px solid #EEF2F6;
    position: relative;
}

.audit-trail-modal-title h5[b-zjhroe90nb] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
}

.audit-trail-modal-subtitle[b-zjhroe90nb] {
    font-size: 0.8rem;
    color: #64748B;
    line-height: 1.45;
    font-weight: 400;
}

.audit-trail-close-btn[b-zjhroe90nb] {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    border-radius: 8px;
    color: #94a3b8;
    cursor: pointer;
    transition: all 0.15s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.audit-trail-close-btn:hover[b-zjhroe90nb] {
    background: #F1F5F9;
    color: #0F172A;
}

/* Modal body */
.audit-trail-modal-body[b-zjhroe90nb] {
    padding: 1.15rem 1.5rem;
    max-height: 60vh;
    overflow-y: auto;
}

.audit-trail-loading[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 2rem 0;
    justify-content: center;
    color: #64748b;
    font-size: 0.875rem;
}

/* Section groups within the modal */
.audit-trail-section-group[b-zjhroe90nb] {
    margin-bottom: 1.5rem;
}

.audit-trail-section-group:last-child[b-zjhroe90nb] {
    margin-bottom: 0;
}

.audit-trail-section-title[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: #64748b;
    margin-bottom: 0.75rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #e2e8f0;
}

.audit-trail-section-title i[b-zjhroe90nb] {
    font-size: 0.875rem;
    color: #6366f1;
}

/* Consent group — tinted background */
.audit-trail-consent-group[b-zjhroe90nb] {
    padding: 1rem 1.25rem;
    background: #f8fafc;
    border-radius: 10px;
    border: 1px solid #e2e8f0;
    margin-bottom: 0;
}

/* Data grid — monospace-friendly label/value rows */
.audit-trail-data-grid[b-zjhroe90nb] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.audit-trail-data-row[b-zjhroe90nb] {
    display: flex;
    align-items: baseline;
    gap: 1rem;
    padding: 0.5rem 0;
    border-bottom: 1px solid #f1f5f9;
}

.audit-trail-data-row:last-child[b-zjhroe90nb] {
    border-bottom: none;
}

.audit-trail-data-label[b-zjhroe90nb] {
    flex-shrink: 0;
    width: 140px;
    font-size: 0.75rem;
    font-weight: 600;
    color: #64748b;
    font-variant: small-caps;
    letter-spacing: 0.3px;
}

.audit-trail-data-value[b-zjhroe90nb] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: #1e293b;
    font-family: 'JetBrains Mono', 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    line-height: 1.5;
    display: flex;
    align-items: center;
    gap: 0.375rem;
    flex-wrap: wrap;
}

.audit-trail-data-value i[b-zjhroe90nb] {
    color: #94a3b8;
    font-size: 0.75rem;
}

.audit-trail-data-detail[b-zjhroe90nb] {
    font-size: 0.6875rem;
    color: #94a3b8;
    font-family: inherit;
    font-style: italic;
}

/* Origin tags */
.audit-tag[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 0.15rem 0.45rem;
    border-radius: 4px;
    white-space: nowrap;
}

.audit-tag-api[b-zjhroe90nb] {
    background: rgba(13, 110, 253, 0.12);
    color: #0d6efd;
}

.audit-tag-simplified[b-zjhroe90nb] {
    background: rgba(255, 193, 7, 0.15);
    color: #997404;
}

.audit-tag-traditional[b-zjhroe90nb] {
    background: rgba(108, 117, 125, 0.12);
    color: #495057;
}

/* Consent badges */
.audit-consent-badge[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 600;
    padding: 0.2rem 0.5rem;
    border-radius: 999px;
    white-space: nowrap;
}

.audit-consent-active[b-zjhroe90nb] {
    background: rgba(25, 135, 84, 0.12);
    color: #146c43;
    border: 1px solid rgba(25, 135, 84, 0.3);
}

.audit-consent-none[b-zjhroe90nb] {
    background: rgba(220, 53, 69, 0.1);
    color: #b02a37;
    border: 1px solid rgba(220, 53, 69, 0.25);
}

.audit-consent-na[b-zjhroe90nb] {
    background: rgba(108, 117, 125, 0.12);
    color: #495057;
    border: 1px solid rgba(108, 117, 125, 0.25);
}

.audit-consent-api[b-zjhroe90nb] {
    background: rgba(13, 110, 253, 0.12);
    color: #0d6efd;
    border: 1px solid rgba(13, 110, 253, 0.25);
}

.audit-consent-auto[b-zjhroe90nb] {
    background: rgba(25, 135, 84, 0.1);
    color: #146c43;
    border: 1px solid rgba(25, 135, 84, 0.2);
}

.audit-consent-ceremony[b-zjhroe90nb] {
    background: rgba(255, 193, 7, 0.15);
    color: #997404;
    border: 1px solid rgba(255, 193, 7, 0.35);
}

/* Modal footer */
.audit-trail-modal-footer[b-zjhroe90nb] {
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
}

@media (max-width: 576px) {
    .audit-trail-dialog[b-zjhroe90nb] {
        max-width: 95vw;
    }

    .audit-trail-data-label[b-zjhroe90nb] {
        width: 110px;
    }

    .audit-trail-data-value[b-zjhroe90nb] {
        font-size: 0.75rem;
    }
}


/* ========================================
   Underwriter Assignment History
   ======================================== */
.assignment-history-list[b-zjhroe90nb] {
    list-style: none;
    margin: 0.5rem 0 0;
    padding: 0;
    text-align: left;
    max-height: 50vh;
    overflow-y: auto;
}

.assignment-history-item[b-zjhroe90nb] {
    padding: 0.625rem 0.25rem;
    border-bottom: 1px solid var(--border-color, #e9ecef);
}

.assignment-history-item:last-child[b-zjhroe90nb] {
    border-bottom: none;
}

.assignment-history-main[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.9rem;
}

.assignment-history-meta[b-zjhroe90nb] {
    font-size: 0.75rem;
    margin-top: 0.15rem;
}

.assignment-history-note[b-zjhroe90nb] {
    font-size: 0.8rem;
    font-style: italic;
    margin-top: 0.25rem;
}

/* ========================================
   Reassign Review Modal
   ======================================== */
.reassign-modal[b-zjhroe90nb] {
    max-width: 440px;
}

/* Current → new reviewer preview */
.reassign-flow[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    background: #F9FAFB;
    border: 1px solid #EEF0F3;
    border-radius: 12px;
    padding: 0.75rem 0.875rem;
    margin-bottom: 1.25rem;
}

.reassign-party[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
    flex: 1;
    text-align: left;
}

.reassign-party-empty[b-zjhroe90nb] {
    opacity: 0.6;
}

.reassign-avatar[b-zjhroe90nb] {
    flex-shrink: 0;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 700;
    color: #fff;
}

.reassign-avatar-from[b-zjhroe90nb] {
    background: #9CA3AF;
}

.reassign-avatar-to[b-zjhroe90nb] {
    background: var(--brand-500, #0D6785);
}

.reassign-party-empty .reassign-avatar-to[b-zjhroe90nb] {
    background: #D1D5DB;
    color: #6B7280;
}

.reassign-party-meta[b-zjhroe90nb] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.reassign-party-label[b-zjhroe90nb] {
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #9CA3AF;
}

.reassign-party-name[b-zjhroe90nb] {
    font-size: 0.82rem;
    font-weight: 600;
    color: #1F2937;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.reassign-arrow[b-zjhroe90nb] {
    flex-shrink: 0;
    color: #9CA3AF;
    font-size: 1rem;
}

/* Form fields — left aligned within the centered modal */
.reassign-field[b-zjhroe90nb] {
    text-align: left;
    margin-bottom: 1rem;
}

.reassign-label[b-zjhroe90nb] {
    display: block;
    font-size: 0.78rem;
    font-weight: 600;
    color: #374151;
    margin-bottom: 0.35rem;
}

.reassign-optional[b-zjhroe90nb] {
    font-weight: 400;
    color: #9CA3AF;
}

/* ---- "Assign to" picker (shared SearchableSelect) — blend into the modal ---- */
.reassign-picker[b-zjhroe90nb]  .form-group {
    margin: 0;
}

/* The modal body scrolls (.swal-modal overflow-y), so keep the dropdown short enough that
   opening it doesn't push the Reason field and buttons out of reach. */
.reassign-picker[b-zjhroe90nb]  .searchable-select-dropdown {
    z-index: 1080; /* above the modal */
}

.reassign-picker[b-zjhroe90nb]  .searchable-select-options {
    max-height: 200px;
}

.reassign-picker[b-zjhroe90nb]  .searchable-select-option {
    padding: 8px 12px;
}

/* SearchableSelect has no Disabled parameter; inert the field while the handoff is in flight
   so the selection can't move under the confirm call. */
.reassign-picker-busy[b-zjhroe90nb] {
    pointer-events: none;
    opacity: 0.6;
}

/* One candidate row: same avatar treatment as the Current / New reviewer slots above. */
.reassign-option[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    min-width: 0;
}

.reassign-avatar-option[b-zjhroe90nb] {
    width: 28px;
    height: 28px;
    font-size: 0.66rem;
    background: var(--brand-500, #0D6785);
}

.reassign-option-meta[b-zjhroe90nb] {
    display: flex;
    flex-direction: column;
    min-width: 0;
    line-height: 1.25;
}

.reassign-option-name[b-zjhroe90nb] {
    font-size: 0.82rem;
    font-weight: 600;
    color: #1F2937;
    overflow: hidden;
    text-overflow: ellipsis;
}

.reassign-option-email[b-zjhroe90nb] {
    font-size: 0.72rem;
    color: #6B7280;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Selected row inverts to the brand fill — keep the secondary line readable on it. */
.reassign-picker[b-zjhroe90nb]  .searchable-select-option.selected .reassign-option-name,
.reassign-picker[b-zjhroe90nb]  .searchable-select-option.selected .reassign-option-email {
    color: #fff;
}

.reassign-picker[b-zjhroe90nb]  .searchable-select-option.selected .reassign-avatar-option {
    background: rgba(255, 255, 255, 0.28);
}

.reassign-loading[b-zjhroe90nb],
.reassign-empty[b-zjhroe90nb] {
    display: flex;
    align-items: center;
    font-size: 0.82rem;
    color: #6B7280;
    background: #F9FAFB;
    border: 1px solid #EEF0F3;
    border-radius: 8px;
    padding: 0.625rem 0.75rem;
}

/* Failed load, as opposed to a genuinely empty underwriter list. */
.reassign-load-error[b-zjhroe90nb] {
    color: #B42318;
    background: #FEF3F2;
    border-color: #FEE4E2;
}

.reassign-charcount[b-zjhroe90nb] {
    text-align: right;
    font-size: 0.7rem;
    color: #9CA3AF;
    margin-top: 0.25rem;
}

/* "Assigned to you" quick indicator — flat tint, borderless, like the other
   passive status badges (borders/shadows are reserved for clickable buttons). */
.assigned-to-you-badge[b-zjhroe90nb] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    height: 32px;
    padding: 0 0.7rem;
    border-radius: 9999px;
    font-size: 0.78rem;
    font-weight: 600;
    color: #166534;
    background: #DCFCE7;
    white-space: nowrap;
}

.assigned-to-you-badge i[b-zjhroe90nb] {
    font-size: 0.85rem;
}

/* ========================================
   Underwriter-tagged referral banner (feature 009)
   ======================================== */
.referral-tagged-banner[b-zjhroe90nb] {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
    background: #FFFBEB;
    border: 1px solid #FCD34D;
    border-radius: 12px;
    padding: 0.85rem 1.1rem;
    /* .app-detail-header has no padding of its own - children carry the 1.5rem inset (matches .header-metrics). */
    margin: 0.35rem 1.5rem 1.1rem;
}

.referral-tagged-banner-icon[b-zjhroe90nb] {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: #FEF3C7;
    color: #B45309;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.05rem;
}

.referral-tagged-banner-body[b-zjhroe90nb] {
    flex: 1;
    min-width: 0;
}

.referral-tagged-banner-title[b-zjhroe90nb] {
    font-size: 0.85rem;
    font-weight: 600;
    color: #78350F;
}

.referral-tagged-banner-date[b-zjhroe90nb] {
    font-weight: 500;
    color: #B45309;
    font-size: 0.78rem;
}

.referral-tagged-banner-message[b-zjhroe90nb] {
    margin: 0.2rem 0 0;
    font-size: 0.83rem;
    font-style: italic;
    color: #92400E;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.referral-tagged-banner-cta[b-zjhroe90nb] {
    flex-shrink: 0;
    align-self: center;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.5rem 1rem;
    border: none;
    border-radius: 10px;
    background: #B45309;
    color: #fff;
    font-size: 0.82rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
}

.referral-tagged-banner-cta:hover[b-zjhroe90nb] {
    background: #92400E;
}

@media (max-width: 640px) {
    .referral-tagged-banner[b-zjhroe90nb] {
        flex-wrap: wrap;
    }
    .referral-tagged-banner-cta[b-zjhroe90nb] {
        width: 100%;
        justify-content: center;
    }
}
/* /Components/Pages/Underwriting/ApplicationsPage.razor.rz.scp.css */
/* All Applications Page Styles */

/* ========================================
   Page Header
   ======================================== */
.page-header[b-oywjulh23x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    gap: 24px;
    flex-wrap: wrap;
}

.header-left[b-oywjulh23x] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.page-title[b-oywjulh23x] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.page-subtitle[b-oywjulh23x] {
    font-size: 0.875rem;
    color: #6B7280;
    margin: 0;
    font-weight: 400;
}

/* ========================================
   Inline Stats
   ======================================== */
.inline-stats[b-oywjulh23x] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.mini-stat[b-oywjulh23x] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 8px;
    padding: 8px 14px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
}

.mini-stat > i[b-oywjulh23x] {
    font-size: 1rem;
    color: var(--brand-500);
}

.stat-content[b-oywjulh23x] {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.mini-stat-value[b-oywjulh23x] {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1F2937;
}

.mini-stat-label[b-oywjulh23x] {
    font-size: 0.7rem;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.btn-icon-refresh[b-oywjulh23x] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 8px;
    color: var(--brand-500);
    cursor: pointer;
    transition: all 0.2s;
}

.btn-icon-refresh:hover:not(:disabled)[b-oywjulh23x] {
    background: rgba(15, 23, 42, 0.08);
    border-color: var(--brand-500);
}

.btn-icon-refresh:disabled[b-oywjulh23x] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-icon-refresh.refreshing i[b-oywjulh23x] {
    animation: spin-b-oywjulh23x 1s linear infinite;
}

@keyframes spin-b-oywjulh23x {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.bi-arrow-clockwise.spinning[b-oywjulh23x] {
    animation: spin-b-oywjulh23x 1s linear infinite;
}

/* ========================================
   Filters Card
   ======================================== */
.filters-card[b-oywjulh23x] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    padding: 16px;
    margin-bottom: 16px;
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.05);
}

.filters-bar[b-oywjulh23x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.filters-left[b-oywjulh23x] {
    flex: 1;
    min-width: 280px;
    max-width: 400px;
}

.filters-right[b-oywjulh23x] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* Filter Dropdowns */
.filter-dropdown .btn-filter[b-oywjulh23x] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 8px 14px;
    font-size: 0.875rem;
    color: #374151;
    font-weight: 500;
    transition: all 0.2s;
    white-space: nowrap;
}

.filter-dropdown .btn-filter:hover[b-oywjulh23x] {
    background: #F9FAFB;
    border-color: #D1D5DB;
}

.filter-dropdown .btn-filter i:first-child[b-oywjulh23x] {
    color: #6B7280;
    font-size: 0.875rem;
}

.filter-dropdown .dropdown-menu[b-oywjulh23x] {
    min-width: 220px;
    padding: 8px 0;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
}

.filter-dropdown .dropdown-header[b-oywjulh23x] {
    font-size: 0.7rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 8px 16px;
}

.filter-dropdown .dropdown-item[b-oywjulh23x] {
    display: flex;
    align-items: center;
    padding: 10px 16px;
    font-size: 0.875rem;
    color: #374151;
    border: none;
    background: none;
    width: 100%;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s;
}

.filter-dropdown .dropdown-item:hover[b-oywjulh23x] {
    background: rgba(15, 23, 42, 0.05);
}

.filter-dropdown .dropdown-item.active[b-oywjulh23x] {
    background: rgba(15, 23, 42, 0.08);
    color: var(--brand-500);
    font-weight: 600;
}

/* Searchable Bank Dropdown */
.bank-dropdown-menu[b-oywjulh23x] {
    min-width: 280px;
    max-height: 400px;
    overflow: hidden;
}

.bank-dropdown-menu.show[b-oywjulh23x] {
    display: flex;
    flex-direction: column;
}

.dropdown-search-container[b-oywjulh23x] {
    padding: 8px 12px;
    position: sticky;
    top: 0;
    background: white;
    z-index: 1;
}

.dropdown-search[b-oywjulh23x] {
    position: relative;
    display: flex;
    align-items: center;
}

.dropdown-search i.bi-search[b-oywjulh23x] {
    position: absolute;
    left: 10px;
    color: #9CA3AF;
    font-size: 0.8rem;
    pointer-events: none;
}

.dropdown-search input[b-oywjulh23x] {
    width: 100%;
    padding: 8px 32px 8px 32px;
    font-size: 0.875rem;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.dropdown-search input:focus[b-oywjulh23x] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.dropdown-search input[b-oywjulh23x]::placeholder {
    color: #9CA3AF;
}

.btn-clear-search[b-oywjulh23x] {
    position: absolute;
    right: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    background: transparent;
    border: none;
    color: #9CA3AF;
    cursor: pointer;
    padding: 0;
    border-radius: 50%;
    transition: all 0.15s;
}

.btn-clear-search:hover[b-oywjulh23x] {
    background: #F3F4F6;
    color: #6B7280;
}

.bank-list-container[b-oywjulh23x] {
    max-height: 250px;
    overflow-y: auto;
    padding: 0;
    margin: 0;
    list-style: none;
}

.bank-list-container .dropdown-item[b-oywjulh23x] {
    padding: 10px 16px;
}

.dropdown-item-empty[b-oywjulh23x] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 20px 16px;
    color: #9CA3AF;
    font-size: 0.8rem;
}

.dropdown-item-empty i[b-oywjulh23x] {
    font-size: 1.5rem;
    color: #D1D5DB;
}

/* Custom Date Range Styles */
.date-dropdown-menu[b-oywjulh23x] {
    min-width: 220px;
}

.date-dropdown-menu.show[b-oywjulh23x] {
    display: block;
}

.custom-date-range-container[b-oywjulh23x] {
    padding: 12px 16px;
    background: #F9FAFB;
    border-top: 1px solid #E5E7EB;
}

.custom-date-inputs[b-oywjulh23x] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.date-input-group[b-oywjulh23x] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.date-input-group label[b-oywjulh23x] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.date-input-group input[type="date"][b-oywjulh23x] {
    padding: 6px 10px;
    font-size: 0.875rem;
    border: 1px solid #D1D5DB;
    border-radius: 6px;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.date-input-group input[type="date"]:focus[b-oywjulh23x] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.btn-apply-date[b-oywjulh23x] {
    margin-top: 4px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    background: var(--brand-500);
    border: none;
    border-radius: 6px;
    color: white;
    cursor: pointer;
    transition: background 0.15s;
}

.btn-apply-date:hover[b-oywjulh23x] {
    background: #004880;
}

/* Small status badge in dropdown */
.status-badge-sm[b-oywjulh23x] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    margin-right: 8px;
    font-size: 0.65rem;
}

.status-badge-sm i[b-oywjulh23x] {
    font-size: 10px;
}

/* Export Button */
.btn-export[b-oywjulh23x] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    font-size: 0.8rem;
    font-weight: 500;
    border-radius: 8px;
    border: 1px solid #E5E7EB;
    color: #4B5563;
    background: white;
}

.btn-export:hover[b-oywjulh23x] {
    background: #F9FAFB;
    border-color: #D1D5DB;
    color: #374151;
}

.btn-export i.spinning[b-oywjulh23x] {
    animation: spin-b-oywjulh23x 1s linear infinite;
}

/* ========================================
   Active Filters
   ======================================== */
.active-filters[b-oywjulh23x] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    padding-top: 14px;
    margin-top: 14px;
    border-top: 1px solid #F1F5F9;
}

.active-filters-label[b-oywjulh23x] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.filter-tag[b-oywjulh23x] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #F3F4F6;
    border: 1px solid #E5E7EB;
    border-radius: 20px;
    padding: 4px 10px 4px 12px;
    font-size: 0.8rem;
    color: #374151;
}

.filter-tag i[b-oywjulh23x] {
    color: #6B7280;
    font-size: 0.7rem;
}

.filter-tag-remove[b-oywjulh23x] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    background: transparent;
    border: none;
    border-radius: 50%;
    color: #9CA3AF;
    cursor: pointer;
    padding: 0;
    transition: all 0.15s;
}

.filter-tag-remove:hover[b-oywjulh23x] {
    background: rgba(220, 38, 38, 0.1);
    color: var(--error-600);
}

.btn-clear-all[b-oywjulh23x] {
    background: none;
    border: none;
    color: var(--brand-500);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    transition: background 0.15s;
}

.btn-clear-all:hover[b-oywjulh23x] {
    background: rgba(15, 23, 42, 0.08);
}

/* ========================================
   Card & Table (Matching InboxPage)
   ======================================== */
.card[b-oywjulh23x] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.05);
    overflow: hidden;
}

.table-responsive[b-oywjulh23x] {
    overflow-x: auto;
    margin: 0;
}

.applications-table[b-oywjulh23x] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.875rem;
}

.applications-table thead[b-oywjulh23x] {
    background-color: #F8FAFC;
    position: sticky;
    top: 0;
    z-index: 1;
}

.applications-table thead th[b-oywjulh23x] {
    padding: 12px 16px;
    text-align: left;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748B;
    border-bottom: 1px solid #E2E8F0;
    white-space: nowrap;
    user-select: none;
}

.applications-table thead th.sortable-header[b-oywjulh23x] {
    cursor: pointer;
}

.applications-table thead th.sortable-header:hover[b-oywjulh23x],
.applications-table thead th:hover[b-oywjulh23x] {
    color: var(--brand-500);
    background-color: #F1F5F9;
}

.applications-table thead th i[b-oywjulh23x] {
    margin-left: 4px;
    font-size: 0.65rem;
}

@keyframes fadeIn-b-oywjulh23x {
    from { opacity: 0; }
    to { opacity: 1; }
}

.applications-table tbody tr[b-oywjulh23x] {
    transition: all 0.12s ease;
    border-left: 3px solid transparent;
    background: white;
    animation: fadeIn-b-oywjulh23x 0.3s ease-out forwards;
    opacity: 0;
}

/* Staggered row animations */
.applications-table tbody tr:nth-child(1)[b-oywjulh23x] { animation-delay: 50ms; }
.applications-table tbody tr:nth-child(2)[b-oywjulh23x] { animation-delay: 80ms; }
.applications-table tbody tr:nth-child(3)[b-oywjulh23x] { animation-delay: 110ms; }
.applications-table tbody tr:nth-child(4)[b-oywjulh23x] { animation-delay: 140ms; }
.applications-table tbody tr:nth-child(5)[b-oywjulh23x] { animation-delay: 170ms; }
.applications-table tbody tr:nth-child(6)[b-oywjulh23x] { animation-delay: 200ms; }
.applications-table tbody tr:nth-child(7)[b-oywjulh23x] { animation-delay: 230ms; }
.applications-table tbody tr:nth-child(8)[b-oywjulh23x] { animation-delay: 260ms; }
.applications-table tbody tr:nth-child(9)[b-oywjulh23x] { animation-delay: 290ms; }
.applications-table tbody tr:nth-child(10)[b-oywjulh23x] { animation-delay: 320ms; }

.applications-table tbody tr:nth-child(even)[b-oywjulh23x] {
    background-color: #FAFBFC;
}

.applications-table tbody tr.clickable-row[b-oywjulh23x] {
    cursor: pointer;
}

.applications-table tbody tr:hover[b-oywjulh23x] {
    background-color: #EFF6FF;
    border-left: 3px solid var(--brand-500);
}

.applications-table tbody td[b-oywjulh23x] {
    padding: 10px 16px;
    border-bottom: 1px solid #F1F5F9;
    vertical-align: middle;
    color: #374151;
}

/* Cell Styles */
.loan-number[b-oywjulh23x] {
    color: var(--brand-500);
    font-weight: 600;
    text-decoration: none;
    transition: all 0.15s;
    font-size: 0.875rem;
}

.loan-number:hover[b-oywjulh23x] {
    color: #004880;
    text-decoration: underline;
}

.borrower-name[b-oywjulh23x] {
    font-weight: 500;
    color: #1F2937;
}

.bank-cell[b-oywjulh23x] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #374151;
}

.bank-cell i[b-oywjulh23x] {
    color: #6b7280;
    font-size: 0.875rem;
}

.property-info[b-oywjulh23x] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.property-location[b-oywjulh23x] {
    font-weight: 500;
    color: #1F2937;
    font-size: 0.875rem;
}

.property-type[b-oywjulh23x] {
    font-size: 0.75rem;
    color: #6B7280;
}

.amount-cell[b-oywjulh23x] {
    font-weight: 600;
    color: #1F2937;
    font-size: 0.875rem;
    font-variant-numeric: tabular-nums;
}

.date-cell[b-oywjulh23x] {
    color: #6B7280;
    font-size: 0.8rem;
}

.actions-cell[b-oywjulh23x] {
    text-align: right;
}

/* ========================================
   Status Badges (Matching InboxPage exactly)
   ======================================== */
.applications-table .badge[b-oywjulh23x] {
    padding: 5px 10px;
    font-size: 0.8rem;
    font-weight: 600;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.badge i[b-oywjulh23x] {
    font-size: 12px;
}

.badge.bg-danger[b-oywjulh23x] {
    background-color: #FEE2E2 !important;
    color: var(--error-600) !important;
}

.badge.bg-warning[b-oywjulh23x] {
    background-color: #FEF3C7 !important;
    color: #D97706 !important;
}

.badge.bg-secondary[b-oywjulh23x] {
    background-color: #F3F4F6 !important;
    color: #4B5563 !important;
}

.badge.bg-info[b-oywjulh23x] {
    background-color: #E0F2FE !important;
    color: #0369A1 !important;
}

.badge.bg-success[b-oywjulh23x] {
    background-color: #D1FAE5 !important;
    color: #047857 !important;
}

.badge.bg-primary[b-oywjulh23x] {
    background-color: #DBEAFE !important;
    color: #1D4ED8 !important;
}

/* ========================================
   Action Button (Matching InboxPage exactly)
   ======================================== */
.actions-cell[b-oywjulh23x] {
    text-align: right;
}

.btn-action-subtle[b-oywjulh23x] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--brand-500);
    background-color: white;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-action-subtle:hover[b-oywjulh23x] {
    background-color: #EFF6FF;
    color: #004880;
    border-color: #BFDBFE;
}

.btn-action-subtle i[b-oywjulh23x] {
    font-size: 0.85rem;
    color: var(--brand-500);
}

.btn-action-subtle:hover i[b-oywjulh23x] {
    color: #004880;
}

/* ========================================
   Loading & Empty States
   ======================================== */
.loading-state[b-oywjulh23x] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 40px 20px;
    color: #6B7280;
}

.loading-state .spinner-border[b-oywjulh23x] {
    width: 2rem;
    height: 2rem;
}

.empty-state[b-oywjulh23x] {
    text-align: center;
    padding: 48px 32px !important;
    color: #6B7280;
}

.empty-state i[b-oywjulh23x] {
    font-size: 40px;
    display: block;
    margin-bottom: 12px;
    color: #D1D5DB;
}

.empty-state span[b-oywjulh23x] {
    font-size: 0.9rem;
    color: #9CA3AF;
    display: block;
}

.empty-state-hint[b-oywjulh23x] {
    font-size: 0.8rem;
    color: #9CA3AF;
    margin: 8px 0 0 0;
}

/* ========================================
   Pagination
   ======================================== */
.pagination-container[b-oywjulh23x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-top: 1px solid #F1F5F9;
    background: #FAFBFC;
}

.pagination-info[b-oywjulh23x] {
    font-size: 0.8rem;
    color: #6B7280;
}

.pagination-info strong[b-oywjulh23x] {
    color: #374151;
    font-weight: 600;
}

.pagination-nav[b-oywjulh23x] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.pagination .page-link[b-oywjulh23x] {
    border: 1px solid #E5E7EB;
    color: #374151;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    transition: all 0.15s;
}

.pagination .page-link:hover[b-oywjulh23x] {
    background: rgba(15, 23, 42, 0.05);
    border-color: var(--brand-500);
    color: var(--brand-500);
}

.pagination .page-item.active .page-link[b-oywjulh23x] {
    background: var(--brand-500);
    border-color: var(--brand-500);
    color: white;
}

.pagination .page-item.disabled .page-link[b-oywjulh23x] {
    background: #F9FAFB;
    color: #D1D5DB;
}

/* ========================================
   Responsive
   ======================================== */
@media (max-width: 992px) {
    .filters-bar[b-oywjulh23x] {
        flex-direction: column;
        align-items: stretch;
    }
    
    .filters-left[b-oywjulh23x] {
        max-width: none;
    }
    
    .filters-right[b-oywjulh23x] {
        justify-content: flex-start;
    }
}

@media (max-width: 768px) {
    .page-header[b-oywjulh23x] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .inline-stats[b-oywjulh23x] {
        width: 100%;
        justify-content: flex-start;
    }
    
    .pagination-container[b-oywjulh23x] {
        flex-direction: column;
        gap: 12px;
    }
}

/* ── Skeleton loader ─────────────────────────────────────────────────── */
@keyframes uw-app-skel-pulse-b-oywjulh23x {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.tbl-row-skeleton td[b-oywjulh23x] {
    padding: 0.875rem 0.75rem;
}

.tbl-skel[b-oywjulh23x] {
    height: 1.0625rem;
    width: 80px;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: uw-app-skel-pulse-b-oywjulh23x 1.5s ease-in-out infinite;
}

.tbl-skel-badge[b-oywjulh23x] {
    height: 1.25rem;
    width: 90px;
    border-radius: 9999px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: uw-app-skel-pulse-b-oywjulh23x 1.5s ease-in-out infinite;
}
/* /Components/Pages/Underwriting/ApprovalsPage.razor.rz.scp.css */
/* ========================================
   Approvals Page Styles
   ======================================== */

/* Welcome Header */
.welcome-header[b-zy6ph9olby] {
    margin-bottom: 24px;
}

.welcome-message[b-zy6ph9olby] {
    font-size: 20px;
    font-weight: 400;
    color: #1F2937;
    margin: 0;
}

/* Content Header */
.content-header[b-zy6ph9olby] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 32px;
}

.content-title[b-zy6ph9olby] {
    font-size: 28px;
    font-weight: 600;
    color: #1F2937;
    margin-bottom: 4px;
}

.content-subtitle[b-zy6ph9olby] {
    font-size: 14px;
    color: #6B7280;
    margin: 0;
}

/* Card */
.card[b-zy6ph9olby] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 24px;
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.05);
}

/* Stats Grid */
.stats-grid[b-zy6ph9olby] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
    margin-bottom: 32px;
}

.stats-grid-4[b-zy6ph9olby] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 32px;
}

/* Queue Header */
.queue-header[b-zy6ph9olby] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
    gap: 24px;
    flex-wrap: wrap;
}

.queue-title[b-zy6ph9olby] {
    font-size: 18px;
    font-weight: 600;
    color: #1F2937;
    margin: 0 0 4px 0;
}

.queue-subtitle[b-zy6ph9olby] {
    font-size: 14px;
    color: #6B7280;
    margin: 0;
}

.queue-actions[b-zy6ph9olby] {
    display: flex;
    gap: 12px;
    align-items: center;
}

/* Search Box */
.search-box[b-zy6ph9olby] {
    position: relative;
    width: 300px;
}

.search-box i[b-zy6ph9olby] {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #9CA3AF;
    font-size: 14px;
}

.search-box .form-control[b-zy6ph9olby] {
    padding-left: 36px;
    border: 1px solid rgba(209, 213, 219, 0.5);
}

/* Filter Select */
.filter-select[b-zy6ph9olby] {
    min-width: 200px;
}

/* Table Responsive */
.table-responsive[b-zy6ph9olby] {
    overflow-x: auto;
    margin: 0 -24px -24px -24px;
    padding: 0 24px 24px 24px;
}

/* Approvals Table */
.approvals-table[b-zy6ph9olby] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.approvals-table thead[b-zy6ph9olby] {
    background-color: #F9FAFB;
}

.approvals-table thead th[b-zy6ph9olby] {
    padding: 14px 16px;
    text-align: left;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #6B7280;
    border-bottom: 2px solid #E5E7EB;
    background-color: #F9FAFB;
}

.approvals-table tbody tr[b-zy6ph9olby] {
    transition: all 0.15s ease;
    border-left: 3px solid transparent;
    background-color: white;
}

.approvals-table tbody tr:hover[b-zy6ph9olby] {
    background-color: rgba(227, 241, 251, 0.3);
    border-left-color: var(--brand-500);
}

.approvals-table tbody td[b-zy6ph9olby] {
    padding: 16px;
    border-bottom: 1px solid #E5E7EB;
    vertical-align: middle;
    background-color: inherit;
}

.approvals-table tbody td:first-child[b-zy6ph9olby] {
    border-left: inherit;
}

/* Bank Cell */
.bank-cell[b-zy6ph9olby] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #374151;
}

.bank-cell i[b-zy6ph9olby] {
    color: #6b7280;
    font-size: 1rem;
}

/* Date Cell */
.date-cell[b-zy6ph9olby] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #374151;
}

.date-cell i[b-zy6ph9olby] {
    color: #6b7280;
    font-size: 0.9rem;
}

/* User Cell */
.user-cell[b-zy6ph9olby] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #374151;
    font-weight: 500;
}

.user-cell i[b-zy6ph9olby] {
    color: #6b7280;
    font-size: 1rem;
}

/* Email Cell */
.email-cell[b-zy6ph9olby] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #374151;
}

.email-cell i[b-zy6ph9olby] {
    color: #6b7280;
    font-size: 0.9rem;
}

.email-cell span[b-zy6ph9olby] {
    color: var(--brand-500);
}

/* Loan Number Link */
.loan-number[b-zy6ph9olby] {
    color: var(--brand-500);
    font-weight: 600;
    text-decoration: none;
    transition: color 0.15s;
}

.loan-number:hover[b-zy6ph9olby] {
    color: #004880;
    text-decoration: underline;
}

/* Property Info */
.property-info[b-zy6ph9olby] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.property-location[b-zy6ph9olby] {
    font-weight: 600;
    color: #1F2937;
    font-size: 14px;
}

.property-type[b-zy6ph9olby] {
    font-size: 13px;
    color: #6B7280;
}

/* Amount Cell */
.amount-cell[b-zy6ph9olby] {
    font-weight: 600;
    color: #1F2937;
}

/* Days Pending */
.days-pending[b-zy6ph9olby] {
    font-weight: 600;
    font-size: 14px;
}

.days-high[b-zy6ph9olby] {
    color: var(--error-600);
}

.days-medium[b-zy6ph9olby] {
    color: #D97706;
}

.days-low[b-zy6ph9olby] {
    color: #6B7280;
}

/* Role Badges */
.role-badge[b-zy6ph9olby] {
    padding: 6px 12px;
    font-size: 12px;
    font-weight: 600;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.role-bank_user[b-zy6ph9olby] {
    background-color: #DBEAFE !important;
    color: #1E40AF !important;
    border: 1px solid #BFDBFE;
}

.role-admin[b-zy6ph9olby] {
    background-color: #F3F4F6 !important;
    color: #4B5563 !important;
    border: 1px solid #E5E7EB;
}

/* Action Buttons */
.action-buttons[b-zy6ph9olby] {
    display: flex;
    gap: 8px;
}

.btn-approve[b-zy6ph9olby] {
    background-color: #059669;
    border-color: #059669;
    color: white;
    padding: 8px 16px;
    font-size: 13px;
    font-weight: 600;
    border-radius: 6px;
    transition: all 0.15s;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.btn-approve:hover[b-zy6ph9olby] {
    background-color: #047857;
    border-color: #047857;
}

.btn-deny[b-zy6ph9olby] {
    background-color: #EF4444;
    border-color: #EF4444;
    color: white;
    padding: 8px 16px;
    font-size: 13px;
    font-weight: 600;
    border-radius: 6px;
    transition: all 0.15s;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.btn-deny:hover[b-zy6ph9olby] {
    background-color: var(--error-600);
    border-color: var(--error-600);
}

.btn-admin-required[b-zy6ph9olby] {
    background-color: transparent;
    border: 1px solid #F59E0B;
    color: #F59E0B;
    padding: 8px 16px;
    font-size: 13px;
    font-weight: 600;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    cursor: not-allowed;
}

.btn-success[b-zy6ph9olby] {
    background-color: #059669;
    border-color: #059669;
    color: white;
    padding: 6px 12px;
    font-size: 13px;
    font-weight: 600;
    border-radius: 6px;
    transition: all 0.15s;
}

.btn-success:hover[b-zy6ph9olby] {
    background-color: #047857;
    border-color: #047857;
}

.btn-danger[b-zy6ph9olby] {
    background-color: var(--error-600);
    border-color: var(--error-600);
    color: white;
    padding: 6px 12px;
    font-size: 13px;
    font-weight: 600;
    border-radius: 6px;
    transition: all 0.15s;
}

.btn-danger:hover[b-zy6ph9olby] {
    background-color: #B91C1C;
    border-color: #B91C1C;
}

.btn-outline-primary[b-zy6ph9olby] {
    color: var(--brand-500);
    background-color: white;
    border: 1px solid rgba(15, 23, 42, 0.15);
    padding: 6px 12px;
    font-size: 13px;
    font-weight: 600;
    border-radius: 6px;
    transition: all 0.15s;
}

.btn-outline-primary:hover[b-zy6ph9olby] {
    background-color: var(--brand-500);
    color: white;
    border-color: var(--brand-500);
}

/* Responsive */
@media (max-width: 1400px) {
    .stats-grid-4[b-zy6ph9olby] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .stats-grid[b-zy6ph9olby],
    .stats-grid-4[b-zy6ph9olby] {
        grid-template-columns: 1fr;
    }
    
    .queue-header[b-zy6ph9olby] {
        flex-direction: column;
    }

    .queue-actions[b-zy6ph9olby] {
        flex-direction: column;
        width: 100%;
    }

    .search-box[b-zy6ph9olby] {
        width: 100%;
    }
    
    .filter-select[b-zy6ph9olby] {
        width: 100%;
    }
}

/* Modal User Info Styles */
.modal-user-info[b-zy6ph9olby] {
    background-color: #F9FAFB;
    border-radius: 8px;
    padding: 16px;
    margin-bottom: 16px;
}

.modal-info-row[b-zy6ph9olby] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 0;
}

.modal-info-row:not(:last-child)[b-zy6ph9olby] {
    border-bottom: 1px solid #E5E7EB;
}

.modal-label[b-zy6ph9olby] {
    font-size: 13px;
    font-weight: 600;
    color: #6B7280;
    min-width: 80px;
}

.modal-value[b-zy6ph9olby] {
    font-size: 14px;
    color: #1F2937;
    font-weight: 500;
}

.modal-confirm-message[b-zy6ph9olby] {
    font-size: 14px;
    color: #6B7280;
    margin: 0;
    padding: 12px;
    background-color: #F0F9FF;
    border-left: 3px solid #3B82F6;
    border-radius: 4px;
}

.modal-warning[b-zy6ph9olby] {
    background-color: #FEF2F2;
    border-left-color: #EF4444;
    color: #991B1B;
}

/* /Components/Pages/Underwriting/AssignAgentModal.razor.rz.scp.css */
/* Radius/shadow/header/body/footer chrome comes from the global modal theme
   (wwwroot/css/modal-theme.css) — only page-specific tweaks live here. */
.assign-agent-modal[b-ptx31h48ma] {
    max-width: 480px;
}

.assign-agent-modal .modal-header[b-ptx31h48ma] {
    align-items: flex-start;
    gap: 0.9rem;
}

.assign-agent-modal .modal-header-content[b-ptx31h48ma] {
    flex: 1;
}

.assign-agent-modal .modal-title[b-ptx31h48ma] {
    margin-bottom: 0.125rem;
}

.assign-agent-modal .modal-subtitle[b-ptx31h48ma] {
    font-size: 0.8rem;
    color: #64748B;
    line-height: 1.45;
    margin: 0;
    font-weight: 400;
}

.assign-agent-modal .btn-close[b-ptx31h48ma] {
    opacity: 0.4;
    transition: opacity 0.15s;
}

.assign-agent-modal .btn-close:hover[b-ptx31h48ma] {
    opacity: 0.7;
}

/* Error Alert */
.assign-agent-modal .alert-danger[b-ptx31h48ma] {
    background-color: #fef2f2;
    border: 1px solid #fecaca;
    color: #991b1b;
    border-radius: 8px;
    font-size: 0.8125rem;
    padding: 0.75rem 1rem;
    margin-bottom: 1rem;
}

.assign-agent-modal .alert-danger .btn-close[b-ptx31h48ma] {
    padding: 0.875rem;
    filter: none;
    opacity: 0.5;
}

.assign-agent-modal .alert-danger .btn-close:hover[b-ptx31h48ma] {
    opacity: 0.8;
}

/* Search Input */
.search-input-container[b-ptx31h48ma] {
    margin-bottom: 1.25rem;
}

.search-input-wrapper[b-ptx31h48ma] {
    position: relative;
    display: flex;
    align-items: center;
}

.search-icon[b-ptx31h48ma],
.search-spinner[b-ptx31h48ma] {
    position: absolute;
    left: 0.875rem;
    color: #9ca3af;
    font-size: 0.875rem;
}

.search-spinner[b-ptx31h48ma] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.search-input[b-ptx31h48ma] {
    padding-left: 2.5rem;
    height: 42px;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-size: 0.875rem;
    color: #374151;
    background-color: #f9fafb;
    transition: all 0.15s ease;
}

.search-input:focus[b-ptx31h48ma] {
    border-color: #d1d5db;
    background-color: #fff;
    box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.08);
    outline: none;
}

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

/* Agent List */
.agent-list-container[b-ptx31h48ma] {
    min-height: 200px;
    max-height: 300px;
    overflow-y: auto;
}

.list-section-title[b-ptx31h48ma] {
    font-size: 0.75rem;
    font-weight: 500;
    color: #6b7280;
    margin-bottom: 0.625rem;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.agent-item[b-ptx31h48ma] {
    display: flex;
    align-items: center;
    padding: 0.625rem 0.75rem;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.1s ease;
    margin-bottom: 0.25rem;
    border: 1px solid transparent;
}

.agent-item:hover[b-ptx31h48ma] {
    background-color: #f9fafb;
}

.agent-item.selected[b-ptx31h48ma] {
    background-color: #f0f4ff;
    border-color: #6366f1;
}

.agent-avatar[b-ptx31h48ma] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    overflow: hidden;
    margin-right: 0.875rem;
    flex-shrink: 0;
    background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.agent-avatar img[b-ptx31h48ma] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.avatar-initials[b-ptx31h48ma] {
    color: white;
    font-weight: 500;
    font-size: 0.8125rem;
    letter-spacing: 0.02em;
}

.agent-info[b-ptx31h48ma] {
    flex: 1;
    min-width: 0;
}

.agent-name[b-ptx31h48ma] {
    display: block;
    font-weight: 500;
    color: #111827;
    font-size: 0.875rem;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.agent-title[b-ptx31h48ma] {
    display: block;
    font-size: 0.75rem;
    color: #9ca3af;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-top: 0.125rem;
}

.selected-icon[b-ptx31h48ma] {
    color: #6366f1;
    font-size: 1.125rem;
    margin-left: 0.5rem;
}

/* No Results */
.no-results[b-ptx31h48ma] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2.5rem 1rem;
    color: #9ca3af;
}

.no-results i[b-ptx31h48ma] {
    font-size: 2rem;
    margin-bottom: 0.75rem;
    opacity: 0.5;
}

.no-results p[b-ptx31h48ma] {
    margin: 0;
    text-align: center;
    font-size: 0.875rem;
}

/* Modal Footer */
.assign-agent-modal .btn-secondary[b-ptx31h48ma] {
    background-color: transparent;
    border: 1px solid #E2E8F0;
    color: #64748B;
    font-weight: 600;
    font-size: 0.875rem;
    padding: 0.55rem 1.15rem;
    border-radius: 10px;
    transition: all 0.15s ease;
}

.assign-agent-modal .btn-secondary:hover[b-ptx31h48ma] {
    background-color: #F1F5F9;
    color: #0F172A;
}

.assign-agent-modal .btn-primary[b-ptx31h48ma] {
    background-color: var(--brand-600, #004980);
    border: none;
    color: white;
    font-weight: 600;
    font-size: 0.875rem;
    padding: 0.55rem 1.15rem;
    border-radius: 10px;
    transition: all 0.15s ease;
}

.assign-agent-modal .btn-primary:hover:not(:disabled)[b-ptx31h48ma] {
    background-color: var(--brand-700, #003760);
}

.assign-agent-modal .btn-primary:disabled[b-ptx31h48ma] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Scrollbar styling */
.agent-list-container[b-ptx31h48ma]::-webkit-scrollbar {
    width: 4px;
}

.agent-list-container[b-ptx31h48ma]::-webkit-scrollbar-track {
    background: transparent;
}

.agent-list-container[b-ptx31h48ma]::-webkit-scrollbar-thumb {
    background: #e5e7eb;
    border-radius: 2px;
}

.agent-list-container[b-ptx31h48ma]::-webkit-scrollbar-thumb:hover {
    background: #d1d5db;
}

/* /Components/Pages/Underwriting/Components/EnvironmentalReviewModal.razor.rz.scp.css */
/* Environmental review modal — styled after TagAsReferralModal (the LP3 modal reference):
   white header with a mode-colored icon tile, 16px radius, uppercase field labels,
   ghost cancel + mode-colored submit. */

.modal-overlay[b-e1lt4goqbg] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1060;
    padding: 1.5rem;
    animation: overlay-in-b-e1lt4goqbg 0.15s ease;
}

@keyframes overlay-in-b-e1lt4goqbg {
    from { opacity: 0; }
    to { opacity: 1; }
}

.env-review-modal[b-e1lt4goqbg] {
    background: #fff;
    border-radius: 16px;
    max-width: 560px;
    width: 100%;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    overflow: hidden;
    animation: modal-in-b-e1lt4goqbg 0.22s cubic-bezier(0.34, 1.4, 0.64, 1);
}

@keyframes modal-in-b-e1lt4goqbg {
    from { opacity: 0; transform: scale(0.92) translateY(8px); }
    to { opacity: 1; transform: scale(1) translateY(0); }
}

/* ── Header ─────────────────────────────────────────────────────────── */

.modal-header[b-e1lt4goqbg] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 1px solid #EEF2F6;
}

.modal-header-icon[b-e1lt4goqbg] {
    flex-shrink: 0;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
}

.header-approve[b-e1lt4goqbg] { background: var(--success-50, #ECFDF5); color: var(--success-600, #059669); }
.header-reject[b-e1lt4goqbg] { background: var(--error-50, #FEF2F2); color: var(--error-600, #DC2626); }
.header-score[b-e1lt4goqbg] { background: var(--brand-50, #E6F2F8); color: var(--brand-600, #004980); }

.modal-header-text[b-e1lt4goqbg] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.modal-header h3[b-e1lt4goqbg] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
}

.modal-header-sub[b-e1lt4goqbg] {
    font-size: 0.8rem;
    color: #64748B;
    line-height: 1.45;
}

.btn-close-modal[b-e1lt4goqbg] {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    border: none;
    border-radius: 8px;
    background: transparent;
    color: #94A3B8;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-close-modal:hover:not(:disabled)[b-e1lt4goqbg] {
    background: #F1F5F9;
    color: #0F172A;
}

/* ── Body ───────────────────────────────────────────────────────────── */

.modal-body[b-e1lt4goqbg] {
    padding: 1.15rem 1.5rem;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
}

.env-review-context[b-e1lt4goqbg] {
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 0.75rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    font-size: 0.875rem;
}

.context-row[b-e1lt4goqbg] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.context-label[b-e1lt4goqbg] {
    color: #64748B;
    min-width: 130px;
    font-weight: 600;
    font-size: 0.8rem;
}

.context-value[b-e1lt4goqbg] {
    color: #0F172A;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.context-muted[b-e1lt4goqbg] { font-weight: 400; color: #94A3B8; font-size: 0.8rem; }

.context-link[b-e1lt4goqbg] {
    color: var(--brand-600, #004980);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-weight: 600;
}

.context-link:hover[b-e1lt4goqbg] { text-decoration: underline; }

/* Risk level chips (shared by context + live score indicator) */
.risk-chip[b-e1lt4goqbg] {
    display: inline-flex;
    align-items: center;
    font-size: 0.76rem;
    font-weight: 700;
    padding: 0.22rem 0.6rem;
    border-radius: 999px;
    white-space: nowrap;
}

.risk-chip.risk-low[b-e1lt4goqbg] { background: var(--success-100, #D1FAE5); color: var(--success-800, #065F46); }
.risk-chip.risk-medium[b-e1lt4goqbg] { background: var(--accent-100, #FEF3C7); color: var(--accent-800, #92400E); }
.risk-chip.risk-high[b-e1lt4goqbg] { background: var(--error-100, #FEE2E2); color: var(--error-800, #991B1B); }
.risk-chip.invalid[b-e1lt4goqbg] { background: var(--error-50, #FEF2F2); color: var(--error-700, #B91C1C); }

/* ── Form ───────────────────────────────────────────────────────────── */

.form-group[b-e1lt4goqbg] { display: flex; flex-direction: column; gap: 0.35rem; }

.form-label[b-e1lt4goqbg] {
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: #475569;
    margin: 0;
}

.score-input-row[b-e1lt4goqbg] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.score-input[b-e1lt4goqbg] { max-width: 130px; }

.form-control[b-e1lt4goqbg] {
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
    color: #0F172A;
}

.form-control:focus[b-e1lt4goqbg] {
    outline: none;
    border-color: var(--brand-400, #3397C7);
    box-shadow: 0 0 0 3px var(--brand-50, #E6F2F8);
}

.reject-warning[b-e1lt4goqbg] {
    display: flex;
    gap: 0.55rem;
    align-items: flex-start;
    background: var(--error-50, #FEF2F2);
    border: 1px solid var(--error-200, #FBC2C4);
    color: var(--error-800, #991B1B);
    border-radius: 12px;
    padding: 0.7rem 0.9rem;
    font-size: 0.82rem;
    line-height: 1.45;
}

/* ── Footer ─────────────────────────────────────────────────────────── */

.modal-footer[b-e1lt4goqbg] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

.btn[b-e1lt4goqbg] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    border: none;
    border-radius: 10px;
    padding: 0.55rem 1.15rem;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
    font-family: inherit;
}

.btn:disabled[b-e1lt4goqbg] { opacity: 0.5; cursor: not-allowed; }

.btn-cancel[b-e1lt4goqbg] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.btn-cancel:hover:not(:disabled)[b-e1lt4goqbg] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-approve-submit[b-e1lt4goqbg] { background: var(--success-600, #059669); color: #fff; }
.btn-approve-submit:hover:not(:disabled)[b-e1lt4goqbg] { background: var(--success-700, #047857); }

.btn-reject-submit[b-e1lt4goqbg] { background: var(--error-600, #DC2626); color: #fff; }
.btn-reject-submit:hover:not(:disabled)[b-e1lt4goqbg] { background: var(--error-700, #B91C1C); }

.btn-score-submit[b-e1lt4goqbg] { background: var(--brand-600, #004980); color: #fff; }
.btn-score-submit:hover:not(:disabled)[b-e1lt4goqbg] { background: var(--brand-700, #003760); }
/* /Components/Pages/Underwriting/Components/EnvironmentalReviewPanel.razor.rz.scp.css */
/* Flush section, not a card: the panel renders inside the summary sidebar
   (.env-documents-panel), which is already a rounded white card — its own
   border/radius would collide with the container's corners. A top divider
   separates it from the document-review content above. */
/* Its own card on the rail, no longer the bottom section of the VERAcheck card it used to be
   nested inside — its <h3> was reading as a sub-heading of "VERAcheck Document Review". */
.env-review-panel[b-u1wkxlyld6] {
    position: relative;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    padding: 1.1rem 1.25rem;
    margin-top: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
}

/* Reproduces the lock the panel inherited while it was nested (Submitted / ReferredToUnderwriter /
   Declined). Copied rather than shared: CSS isolation does not reach across components. */
.env-review-panel.panel-locked[b-u1wkxlyld6] {
    pointer-events: none;
}

.env-review-panel.panel-locked > *:not(.panel-locked-overlay)[b-u1wkxlyld6] {
    opacity: 0.4;
    filter: grayscale(30%);
}

.panel-locked-overlay[b-u1wkxlyld6] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    border-radius: 12px;
    backdrop-filter: blur(2px);
}

.panel-locked-overlay.declined[b-u1wkxlyld6] {
    background: rgba(254, 226, 226, 0.8);
}

.panel-locked-message[b-u1wkxlyld6] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1.5rem;
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.panel-locked-message i[b-u1wkxlyld6] {
    font-size: 2rem;
    color: var(--text-muted);
}

.panel-locked-message span[b-u1wkxlyld6] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.panel-locked-overlay.declined .panel-locked-message[b-u1wkxlyld6] {
    background: #fee2e2;
    border: 1px solid #fecaca;
}

.panel-locked-overlay.declined .panel-locked-message i[b-u1wkxlyld6] {
    color: var(--error-600);
}

/* The header band of the VERAcheck Document Review card directly above this one on the rail
   (.env-documents-header in ApplicationSummaryTab.razor.css), so the two sibling cards read as
   a matched pair. Copied rather than shared for the same reason as the locked overlay above —
   CSS isolation does not reach across components — but the colours are the shared --brand-600 /
   --brand-700 theme tokens, not literals, so the two bands cannot drift apart.

   The negative margin bleeds the band out past the panel's own 1.1rem/1.25rem padding to its
   edges; re-applying that same padding keeps the title aligned with the body content below it,
   and the top corners are rounded to sit flush inside the panel's 12px radius. */
.env-review-header[b-u1wkxlyld6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin: -1.1rem -1.25rem 0;
    padding: 1.1rem 1.25rem;
    background: linear-gradient(135deg, var(--brand-600) 0%, var(--brand-700) 100%);
    border-radius: 12px 12px 0 0;
    color: #fff;
}

.env-review-title[b-u1wkxlyld6] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    color: #fff;
    display: flex;
    align-items: center;
}

.env-review-badge[b-u1wkxlyld6] {
    font-size: 0.75rem;
    font-weight: 700;
    padding: 0.3rem 0.7rem;
    border-radius: 999px;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.env-review-badge.pending[b-u1wkxlyld6] { background: #fef3c7; color: #92400e; }
.env-review-badge.approved[b-u1wkxlyld6] { background: #dcfce7; color: #166534; }
.env-review-badge.rejected[b-u1wkxlyld6] { background: #fee2e2; color: #991b1b; }
.env-review-badge.legacy[b-u1wkxlyld6] { background: #f1f5f9; color: #64748b; text-transform: none; }

.env-review-rejection[b-u1wkxlyld6] {
    display: flex;
    gap: 0.6rem;
    align-items: flex-start;
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #991b1b;
    border-radius: 8px;
    padding: 0.75rem 0.9rem;
    font-size: 0.85rem;
}

.rejection-guidance[b-u1wkxlyld6] { color: #b91c1c; margin-top: 0.25rem; font-size: 0.8rem; }

.rejection-action[b-u1wkxlyld6] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-top: 0.5rem;
    font-size: 0.8rem;
    font-weight: 700;
    color: #991b1b;
    text-decoration: none;
    border: 1px solid #fecaca;
    background: #fff;
    border-radius: 6px;
    padding: 0.3rem 0.6rem;
}

.rejection-action:hover[b-u1wkxlyld6] { background: #fef2f2; text-decoration: none; }

/* No-evidence presentation. The card used to disappear entirely in this case, so this block
   replaces the body: it says why there is nothing to review and what would change that.
   Deliberately neutral — same muted greys as .env-review-fact below, no new colours, no alarm
   treatment; nothing is wrong here, the review simply has not started. */
.env-review-empty[b-u1wkxlyld6] {
    display: flex;
    gap: 0.6rem;
    align-items: flex-start;
    font-size: 0.85rem;
    line-height: 1.45;
    color: #475569;
}

.env-review-empty > i[b-u1wkxlyld6] { color: #94a3b8; font-size: 1rem; line-height: 1.45; }
.env-review-empty strong[b-u1wkxlyld6] { display: block; color: #0f172a; margin-bottom: 0.15rem; }
.env-review-empty ul[b-u1wkxlyld6] { margin: 0.4rem 0 0; padding-left: 1.15rem; color: #64748b; }
.env-review-empty li[b-u1wkxlyld6] { margin-bottom: 0.1rem; }
.env-review-empty span[b-u1wkxlyld6] { display: block; margin-top: 0.4rem; color: #64748b; }

.env-review-body[b-u1wkxlyld6] { display: flex; flex-direction: column; gap: 0.5rem; }

.env-review-fact[b-u1wkxlyld6] {
    display: flex;
    align-items: baseline;
    gap: 0.75rem;
    font-size: 0.875rem;
}

.fact-label[b-u1wkxlyld6] { color: #64748b; min-width: 130px; font-weight: 600; }
.fact-value[b-u1wkxlyld6] { color: #0f172a; display: inline-flex; align-items: baseline; gap: 0.4rem; }
.fact-muted[b-u1wkxlyld6] { color: #94a3b8; }

.risk-score[b-u1wkxlyld6] {
    font-weight: 700;
    padding: 0.1rem 0.55rem;
    border-radius: 6px;
}

/* .bank-risk-score moved with its badge to ApplicationSummaryTab.razor.css — scoped CSS does not
   follow markup between components, so the rule had to travel to keep the badge looking the same. */

.risk-score.risk-low[b-u1wkxlyld6] { background: #dcfce7; color: #166534; }
.risk-score.risk-medium[b-u1wkxlyld6] { background: #fef3c7; color: #92400e; }
.risk-score.risk-high[b-u1wkxlyld6] { background: #fee2e2; color: #991b1b; }

.link-button[b-u1wkxlyld6] {
    background: none;
    border: none;
    color: #2563eb;
    padding: 0;
    cursor: pointer;
    font-size: 0.875rem;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.link-button:hover[b-u1wkxlyld6] { text-decoration: underline; }

/* The buttons themselves carry no rules here on purpose. They used to: a local .btn block plus
   .btn-approve / .btn-reject / .btn-score, which shadowed the theme's canonical .btn (radius 8
   instead of 10, its own padding, no transition) and painted approve #16a34a — a green that
   matches no token in leca-theme.css, where the app's approve green is --success-600 (#059669).
   They are now the theme's own .btn-success / .btn-outline-danger / .btn-outline-primary, so the
   pair tracks the design system instead of drifting from it. Only the row layout stays local.
   flex-wrap is kept as a floor for a very narrow rail; with the short verb labels the pair fits
   on one row at the summary tab's col-4 width. */
.env-review-actions[b-u1wkxlyld6] { display: flex; gap: 0.5rem; flex-wrap: wrap; }

.env-review-actions-note[b-u1wkxlyld6] {
    margin: 0;
    font-size: 0.75rem;
    line-height: 1.45;
    color: #64748b;
}

.env-review-history[b-u1wkxlyld6] { border-top: 1px solid #f1f5f9; padding-top: 0.6rem; }

.history-toggle[b-u1wkxlyld6] {
    background: none;
    border: none;
    color: #475569;
    font-size: 0.83rem;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0;
}

.history-empty[b-u1wkxlyld6] { color: #94a3b8; font-size: 0.83rem; padding: 0.5rem 0 0 1.4rem; }

.history-timeline[b-u1wkxlyld6] {
    list-style: none;
    margin: 0.6rem 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.history-entry[b-u1wkxlyld6] { display: flex; gap: 0.6rem; }

.entry-icon[b-u1wkxlyld6] { font-size: 0.95rem; line-height: 1.2; }
.history-entry.approved .entry-icon[b-u1wkxlyld6] { color: #16a34a; }
.history-entry.rejected .entry-icon[b-u1wkxlyld6] { color: #dc2626; }
.history-entry.riskscoreupdated .entry-icon[b-u1wkxlyld6] { color: #2563eb; }
.history-entry.invalidated .entry-icon[b-u1wkxlyld6] { color: #94a3b8; }

.entry-content[b-u1wkxlyld6] { display: flex; flex-direction: column; gap: 0.15rem; }

.entry-headline[b-u1wkxlyld6] {
    font-size: 0.84rem;
    color: #0f172a;
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.entry-status[b-u1wkxlyld6] { color: #64748b; font-size: 0.78rem; }

.entry-score[b-u1wkxlyld6] {
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 0.75rem;
    font-weight: 700;
    padding: 0.05rem 0.45rem;
    border-radius: 6px;
}

.entry-meta[b-u1wkxlyld6] { color: #94a3b8; font-size: 0.75rem; }

.entry-notes[b-u1wkxlyld6] {
    color: #475569;
    font-size: 0.8rem;
    background: #f8fafc;
    border-radius: 6px;
    padding: 0.35rem 0.6rem;
    white-space: pre-wrap;
}
/* /Components/Pages/Underwriting/Components/PropertyTypeRerateModal.razor.rz.scp.css */
/* Change Property Type & Re-rate dialog.
   Moved verbatim from ApplicationSummaryTab.razor.css when the dialog was extracted into its own
   component (its opener now lives in the page header metrics strip). Blazor stamps each
   component's rules with that component's own scope attribute, so these rules had to travel
   with the markup — a rule left in the tab's sheet cannot reach this component's DOM. */

/* ===== Change Property Type & Re-rate modal ===== */
.rerate-preview[b-tpldkity2d] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    padding: 0.85rem 1rem;
    background: var(--bs-tertiary-bg, #f8f9fa);
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.5rem;
}

.rerate-preview-col[b-tpldkity2d] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.rerate-preview-label[b-tpldkity2d] {
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--bs-secondary-color, #6c757d);
}

.rerate-preview-old[b-tpldkity2d] {
    font-size: 1.05rem;
    color: var(--bs-secondary-color, #6c757d);
    text-decoration: line-through;
}

.rerate-preview-new[b-tpldkity2d] {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--bs-emphasis-color, #212529);
}

.rerate-preview-arrow[b-tpldkity2d] {
    color: var(--bs-secondary-color, #6c757d);
    font-size: 1.1rem;
}

.rerate-preview-delta[b-tpldkity2d] {
    margin-left: auto;
    font-weight: 600;
    font-size: 0.95rem;
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

.rerate-preview-delta.is-up[b-tpldkity2d] {
    color: var(--bs-danger, #dc3545);
}

.rerate-preview-delta.is-down[b-tpldkity2d] {
    color: var(--bs-success, #198754);
}

.rerate-preview-pct[b-tpldkity2d] {
    font-weight: 500;
    opacity: 0.85;
}

/* ===== Re-rate modal shell ===== */
.rerate-backdrop[b-tpldkity2d] {
    background-color: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
}

.rerate-modal[b-tpldkity2d] {
    border: none;
    border-radius: 16px;
    /* visible so the searchable-select dropdown isn't clipped by the modal box */
    overflow: visible;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
}

.rerate-modal-header[b-tpldkity2d] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    background: #fff;
    border-bottom: 1px solid #EEF2F6;
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
}

.rerate-modal-heading[b-tpldkity2d] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
    min-width: 0;
}

.rerate-modal-heading h5[b-tpldkity2d] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
}

.rerate-modal-subtitle[b-tpldkity2d] {
    font-size: 0.8rem;
    color: #64748B;
    line-height: 1.45;
}

.rerate-modal-close[b-tpldkity2d] {
    border: none;
    background: transparent;
    color: #94A3B8;
    font-size: 1rem;
    line-height: 1;
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    flex-shrink: 0;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
}

.rerate-modal-close:hover[b-tpldkity2d] {
    background: #F1F5F9;
    color: #0F172A;
}

.rerate-modal-body[b-tpldkity2d] {
    padding: 1.15rem 1.5rem;
}

.rerate-note[b-tpldkity2d] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    font-size: 0.8rem;
    color: var(--bs-secondary-color, #6c757d);
    background: var(--bs-tertiary-bg, #f8f9fa);
    border-radius: 0.5rem;
    padding: 0.6rem 0.75rem;
    margin-bottom: 1rem;
}

.rerate-note .bi[b-tpldkity2d] {
    color: var(--bs-info, #0dcaf0);
    margin-top: 0.1rem;
}

.rerate-field[b-tpldkity2d] {
    margin-bottom: 1rem;
}

.rerate-field-label[b-tpldkity2d] {
    display: block;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--bs-emphasis-color, #212529);
    margin-bottom: 0.35rem;
}

.rerate-field-labelrow[b-tpldkity2d] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
}

.rerate-current[b-tpldkity2d] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.45rem 0.7rem;
    border-radius: 0.5rem;
    background: var(--bs-tertiary-bg, #f1f3f5);
    border: 1px dashed var(--bs-border-color, #dee2e6);
    color: var(--bs-secondary-color, #6c757d);
    font-size: 0.88rem;
}

.rerate-current .bi[b-tpldkity2d] {
    color: var(--bs-secondary-color, #6c757d);
}

.rerate-reason-counter[b-tpldkity2d] {
    font-size: 0.72rem;
    color: var(--bs-secondary-color, #adb5bd);
}

.rerate-reason-counter.ok[b-tpldkity2d] {
    color: var(--bs-success, #198754);
}

.rerate-preview--loading[b-tpldkity2d] {
    justify-content: center;
    gap: 0.6rem;
    color: var(--bs-secondary-color, #6c757d);
    font-size: 0.88rem;
}

.rerate-modal-footer[b-tpldkity2d] {
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
    padding: 1rem 1.5rem;
    gap: 0.6rem;
    border-bottom-left-radius: 16px;
    border-bottom-right-radius: 16px;
}

.rerate-modal-footer .btn-outline-secondary[b-tpldkity2d] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    font-weight: 600;
}

.rerate-modal-footer .btn-outline-secondary:hover:not(:disabled)[b-tpldkity2d] {
    background: #F1F5F9;
    color: #0F172A;
    border-color: #E2E8F0;
}

.rerate-confirm-btn[b-tpldkity2d] {
    font-weight: 600;
    color: #5c4503;
}

/* ===== Property-type option + tier badge (re-rate picker) ===== */
.rerate-opt[b-tpldkity2d] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    width: 100%;
}

.rerate-opt-name[b-tpldkity2d] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rerate-tier-badge[b-tpldkity2d] {
    flex-shrink: 0;
    font-size: 0.68rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.01em;
    padding: 0.22rem 0.5rem;
    border-radius: 999px;
    border: 1px solid transparent;
    white-space: nowrap;
}

/* Tier 1 — Standard */
.rerate-tier-1[b-tpldkity2d] {
    background: rgba(25, 135, 84, 0.12);
    color: #146c43;
    border-color: rgba(25, 135, 84, 0.3);
}

/* Tier 2 — Moderate */
.rerate-tier-2[b-tpldkity2d] {
    background: rgba(255, 193, 7, 0.18);
    color: #997404;
    border-color: rgba(255, 193, 7, 0.45);
}

/* Tier 3 — Requires Review */
.rerate-tier-3[b-tpldkity2d] {
    background: rgba(220, 53, 69, 0.12);
    color: #b02a37;
    border-color: rgba(220, 53, 69, 0.3);
}

/* /Components/Pages/Underwriting/Components/TagAsReferralModal.razor.rz.scp.css */
/* Tag-as-Referral modal — self-contained (CSS isolation does not reach child components,
   so nothing here leans on the detail page's modal styles). */

.trm-backdrop[b-eo8azq1ehu] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    z-index: 1060;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    animation: trmFadeIn-b-eo8azq1ehu 0.15s ease;
}

.trm-modal[b-eo8azq1ehu] {
    background: #fff;
    border-radius: 16px;
    max-width: 640px;
    width: 100%;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    animation: trmPopIn-b-eo8azq1ehu 0.22s cubic-bezier(0.34, 1.4, 0.64, 1);
    overflow: hidden;
}

/* ---- Header ---- */

.trm-header[b-eo8azq1ehu] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 1px solid #EEF2F6;
}

.trm-header-icon[b-eo8azq1ehu] {
    flex-shrink: 0;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: #F5F3FF;
    color: #6D28D9;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
}

.trm-header-text[b-eo8azq1ehu] {
    flex: 1;
    min-width: 0;
}

.trm-title[b-eo8azq1ehu] {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
    margin: 0 0 2px;
}

.trm-subtitle[b-eo8azq1ehu] {
    font-size: 0.8rem;
    color: #64748B;
    line-height: 1.45;
    margin: 0;
}

.trm-close[b-eo8azq1ehu] {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    border: none;
    border-radius: 8px;
    background: transparent;
    color: #94A3B8;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.15s;
}

.trm-close:hover:not(:disabled)[b-eo8azq1ehu] {
    background: #F1F5F9;
    color: #0F172A;
}

/* ---- Body ---- */

.trm-body[b-eo8azq1ehu] {
    padding: 1.15rem 1.5rem;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
}

.trm-loading[b-eo8azq1ehu] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #64748B;
    font-size: 0.875rem;
    padding: 1.5rem 0;
    justify-content: center;
}

.trm-grid[b-eo8azq1ehu] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.9rem;
}

@media (max-width: 540px) {
    .trm-grid[b-eo8azq1ehu] { grid-template-columns: 1fr; }
}

/* Direct child only — must not leak onto nested control labels (chips, dropdown options). */
.trm-field > label[b-eo8azq1ehu] {
    display: block;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: #475569;
    margin-bottom: 0.3rem;
}

.trm-required[b-eo8azq1ehu] {
    color: #DC2626;
}

.trm-field[b-eo8azq1ehu]  .form-select,
.trm-field[b-eo8azq1ehu]  .form-control,
.trm-field .form-select[b-eo8azq1ehu],
.trm-field .form-control[b-eo8azq1ehu] {
    border-radius: 10px;
    border-color: #E2E8F0;
    font-size: 0.875rem;
    padding: 0.5rem 0.75rem;
}

.trm-field .form-select:focus[b-eo8azq1ehu],
.trm-field .form-control:focus[b-eo8azq1ehu] {
    border-color: #6D28D9;
    box-shadow: 0 0 0 3px rgba(109, 40, 217, 0.12);
}

.trm-amount[b-eo8azq1ehu] {
    position: relative;
}

.trm-amount-prefix[b-eo8azq1ehu] {
    position: absolute;
    left: 0.8rem;
    top: 50%;
    transform: translateY(-50%);
    color: #94A3B8;
    font-size: 0.875rem;
    pointer-events: none;
    z-index: 1;
}

/* Specificity must beat `.trm-field .form-control` above, or the $ prefix
   overlaps the first digit. Height matches the searchable-select button (42px). */
.trm-field .trm-amount input.form-control[b-eo8azq1ehu] {
    padding-left: 1.9rem;
    min-height: 42px;
    font-variant-numeric: tabular-nums;
}

/* ---- Risk-flag chips ---- */

.trm-chips[b-eo8azq1ehu] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding-top: 0.1rem;
}

.trm-chip[b-eo8azq1ehu] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.45rem 0.9rem;
    border-radius: 999px;
    border: 1px solid #E2E8F0;
    background: #fff;
    color: #475569;
    font-size: 0.82rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s;
    font-family: inherit;
}

.trm-chip i[b-eo8azq1ehu] {
    font-size: 0.9rem;
    color: #CBD5E1;
    transition: color 0.15s;
}

.trm-chip:hover:not(:disabled)[b-eo8azq1ehu] {
    border-color: #C4B5FD;
    background: #FAF5FF;
}

.trm-chip.active[b-eo8azq1ehu] {
    background: #F5F3FF;
    border-color: #A78BFA;
    color: #5B21B6;
    font-weight: 600;
}

.trm-chip.active i[b-eo8azq1ehu] {
    color: #7C3AED;
}

.trm-chip:disabled[b-eo8azq1ehu] {
    opacity: 0.55;
    cursor: not-allowed;
}

/* ---- Searchable selects (shared component) — blend into the modal ---- */

.trm-field[b-eo8azq1ehu]  .form-group {
    margin: 0;
}

.trm-field[b-eo8azq1ehu]  .searchable-select-button {
    border-radius: 10px;
    border-color: #E2E8F0;
}

.trm-field[b-eo8azq1ehu]  .searchable-select-button:hover,
.trm-field[b-eo8azq1ehu]  .searchable-select-button.open {
    border-color: #6D28D9;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(109, 40, 217, 0.12);
}

.trm-field[b-eo8azq1ehu]  .searchable-select-dropdown {
    z-index: 1080; /* above the modal body */
}

.trm-option[b-eo8azq1ehu] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.6rem;
    width: 100%;
    min-width: 0;
}

.trm-option-text[b-eo8azq1ehu] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.trm-option-chip[b-eo8azq1ehu] {
    flex-shrink: 0;
    font-size: 0.68rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    padding: 0.1rem 0.5rem;
    border-radius: 999px;
    background: #FEF3C7;
    color: #B45309;
}

/* ---- Rule preview ---- */

.trm-preview[b-eo8azq1ehu] {
    border-radius: 12px;
    padding: 0.8rem 1rem;
    font-size: 0.85rem;
}

.trm-preview-head[b-eo8azq1ehu] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
}

.trm-preview-loading[b-eo8azq1ehu] {
    background: #F8FAFC;
    color: #64748B;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.trm-preview-match[b-eo8azq1ehu] {
    background: #FFFBEB;
    border: 1px solid #FCD34D;
    color: #78350F;
}

.trm-preview-match .trm-preview-head i[b-eo8azq1ehu] {
    color: #D97706;
}

.trm-preview-match ul[b-eo8azq1ehu] {
    margin: 0.45rem 0 0;
    padding-left: 1.5rem;
}

.trm-preview-match li[b-eo8azq1ehu] {
    margin-bottom: 0.15rem;
}

.trm-preview-nomatch[b-eo8azq1ehu] {
    background: #F8FAFC;
    border: 1px dashed #CBD5E1;
    color: #475569;
}

.trm-preview-nomatch p[b-eo8azq1ehu] {
    margin: 0.35rem 0 0;
    font-size: 0.8rem;
    color: #64748B;
}

.trm-hint[b-eo8azq1ehu] {
    display: block;
    margin-top: 0.3rem;
    font-size: 0.72rem;
    color: #94A3B8;
}

.trm-hint-short[b-eo8azq1ehu] {
    color: #D97706;
}

.trm-error[b-eo8azq1ehu] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    background: #FEF2F2;
    border: 1px solid #FECACA;
    color: #B91C1C;
    border-radius: 10px;
    padding: 0.65rem 0.9rem;
    font-size: 0.82rem;
}

/* ---- Footer ---- */

.trm-footer[b-eo8azq1ehu] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

.trm-btn[b-eo8azq1ehu] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.55rem 1.15rem;
    border-radius: 10px;
    font-size: 0.85rem;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: all 0.15s;
    font-family: inherit;
}

.trm-btn:disabled[b-eo8azq1ehu] {
    opacity: 0.5;
    cursor: not-allowed;
}

.trm-btn-ghost[b-eo8azq1ehu] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.trm-btn-ghost:hover:not(:disabled)[b-eo8azq1ehu] {
    background: #F1F5F9;
    color: #0F172A;
}

.trm-btn-primary[b-eo8azq1ehu] {
    background: #6D28D9;
    color: #fff;
}

.trm-btn-primary:hover:not(:disabled)[b-eo8azq1ehu] {
    background: #5B21B6;
}

@keyframes trmFadeIn-b-eo8azq1ehu {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes trmPopIn-b-eo8azq1ehu {
    from { opacity: 0; transform: scale(0.92) translateY(8px); }
    to { opacity: 1; transform: scale(1) translateY(0); }
}
/* /Components/Pages/Underwriting/InboxPage.razor.rz.scp.css */
 /* ========================================
   Underwriting Inbox Styles
   ======================================== */

/* ========================================
   Page Animations
   ======================================== */
@keyframes fadeInDown-b-bhuds7wgkf {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInUp-b-bhuds7wgkf {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn-b-bhuds7wgkf {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes slideInRight-b-bhuds7wgkf {
    from {
        opacity: 0;
        transform: translateX(20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes scaleIn-b-bhuds7wgkf {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Active Filters */
.active-filters[b-bhuds7wgkf] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    flex-wrap: wrap;
    padding: 0.75rem 1.25rem;
    border-bottom: 1px solid var(--bs-border-color);
    background: var(--bs-tertiary-bg);
}

.active-filters-label[b-bhuds7wgkf] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--bs-secondary-color);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.filter-tag[b-bhuds7wgkf] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    background: var(--brand-500, #0D6785);
    border: 1px solid var(--brand-500, #0D6785);
    border-radius: 1.25rem;
    padding: 0.25rem 0.625rem 0.25rem 0.75rem;
    font-size: 0.8rem;
    color: white;
    font-weight: 500;
}

.filter-tag i[b-bhuds7wgkf] {
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.7rem;
}

.filter-tag-remove[b-bhuds7wgkf] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    background: rgba(255, 255, 255, 0.2);
    border: none;
    border-radius: 50%;
    color: white;
    cursor: pointer;
}

.filter-tag-remove:hover[b-bhuds7wgkf] {
    background: rgba(255, 255, 255, 0.4);
    color: white;
}

.btn-clear-all[b-bhuds7wgkf] {
    background: none;
    border: none;
    color: var(--bs-primary);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    padding: 0.25rem 0.5rem;
    border-radius: 0.25rem;
    transition: background 0.15s;
}

.btn-clear-all:hover[b-bhuds7wgkf] {
    background: rgba(var(--bs-primary-rgb), 0.08);
}

/* Compact Header */
.inbox-header[b-bhuds7wgkf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    gap: 24px;
    flex-wrap: wrap;
    animation: fadeInDown-b-bhuds7wgkf 0.4s ease-out;
}

.header-left[b-bhuds7wgkf] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.page-title[b-bhuds7wgkf] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.page-subtitle[b-bhuds7wgkf] {
    font-size: 0.875rem;
    color: #6B7280;
    margin: 0;
    font-weight: 400;
    margin-top: 2px;
}

/* ========================================
   Inline Stats (Compact)
   ======================================== */
.inline-stats[b-bhuds7wgkf] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.mini-stat[b-bhuds7wgkf] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 10px;
    cursor: help;
    transition: all 0.15s ease;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    animation: fadeInUp-b-bhuds7wgkf 0.4s ease-out forwards;
    opacity: 0;
}

/* Staggered mini-stat animations */
.mini-stat:nth-child(1)[b-bhuds7wgkf] { animation-delay: 50ms; }
.mini-stat:nth-child(2)[b-bhuds7wgkf] { animation-delay: 100ms; }
.mini-stat:nth-child(3)[b-bhuds7wgkf] { animation-delay: 150ms; }
.mini-stat:nth-child(4)[b-bhuds7wgkf] { animation-delay: 200ms; }
.mini-stat:nth-child(5)[b-bhuds7wgkf] { animation-delay: 250ms; }
.mini-stat:nth-child(6)[b-bhuds7wgkf] { animation-delay: 300ms; }

.mini-stat:hover[b-bhuds7wgkf] {
    background: white;
    border-color: #D1D5DB;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
    transform: translateY(-1px);
}

.mini-stat i[b-bhuds7wgkf] {
    font-size: 20px;
    color: #6B7280;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #F3F4F6;
}

.mini-stat:nth-child(1) i[b-bhuds7wgkf] { color: var(--brand-500); background: #EBF5FF; }
.mini-stat:nth-child(2) i[b-bhuds7wgkf] { color: #B45309; background: #FEF3C7; }
.mini-stat:nth-child(3) i[b-bhuds7wgkf] { color: #059669; background: #D1FAE5; }
.mini-stat:nth-child(4) i[b-bhuds7wgkf] { color: #4F46E5; background: #EDE9FE; }

.mini-stat-value[b-bhuds7wgkf] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1F2937;
    line-height: 1;
}

.mini-stat-label[b-bhuds7wgkf] {
    font-size: 0.75rem;
    color: #6B7280;
    font-weight: 500;
    text-transform: capitalize;
    letter-spacing: 0.01em;
}

.stat-content[b-bhuds7wgkf] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
}

.mini-stat-danger[b-bhuds7wgkf] {
    background: #FEF2F2;
    border-color: #FECACA;
}

.mini-stat-danger i[b-bhuds7wgkf] {
    color: var(--error-600) !important;
    background: #FEE2E2 !important;
}

.mini-stat-danger .mini-stat-value[b-bhuds7wgkf] {
    color: #991B1B;
}

.mini-stat-danger .mini-stat-label[b-bhuds7wgkf] {
    color: #B91C1C;
}

.btn-icon-refresh[b-bhuds7wgkf] {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid #E5E7EB;
    color: #6B7280;
    cursor: pointer;
    transition: all 0.15s ease;
    margin-left: 4px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

.btn-icon-refresh:hover:not(:disabled)[b-bhuds7wgkf] {
    background: white;
    border-color: var(--brand-500);
    color: var(--brand-500);
}

.btn-icon-refresh:disabled[b-bhuds7wgkf] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-icon-refresh.refreshing[b-bhuds7wgkf] {
    background: #EBF5FF;
    border-color: var(--brand-500);
    color: var(--brand-500);
}

.btn-icon-refresh i[b-bhuds7wgkf] {
    font-size: 16px;
}

/* ========================================
   Compact Inline Actions
   ======================================== */
.queue-actions[b-bhuds7wgkf] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.bulk-actions-inline[b-bhuds7wgkf] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 8px;
    background: #EBF5FF;
    border-radius: 6px;
    border: 1px solid rgba(15, 23, 42, 0.15);
}

.btn-icon-sm[b-bhuds7wgkf] {
    width: 34px;
    height: 34px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid #D1D5DB;
    color: #6B7280;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-icon-sm:hover:not(:disabled)[b-bhuds7wgkf] {
    background: #F3F4F6;
    border-color: #9CA3AF;
    color: #1F2937;
}

.btn-icon-sm:disabled[b-bhuds7wgkf] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-icon-sm.active[b-bhuds7wgkf] {
    background: var(--brand-500);
    border-color: var(--brand-500);
    color: white;
}

.btn-icon-sm i[b-bhuds7wgkf] {
    font-size: 14px;
}

.btn-icon-action[b-bhuds7wgkf] {
    width: 28px;
    height: 28px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.2);
    color: var(--brand-500);
    cursor: pointer;
    transition: all 0.12s ease;
}

.btn-icon-action:hover[b-bhuds7wgkf] {
    background: var(--brand-500);
    color: white;
}

.btn-icon-action.btn-icon-accent[b-bhuds7wgkf] {
    border-color: rgba(124, 58, 237, 0.3);
    color: #7C3AED;
}

.btn-icon-action.btn-icon-accent:hover[b-bhuds7wgkf] {
    background: #7C3AED;
    color: white;
}

.selection-badge[b-bhuds7wgkf] {
    font-size: 11px;
    font-weight: 600;
    color: var(--brand-500);
    white-space: nowrap;
}


/* ========================================
   Card & Tab Content
   ======================================== */
.card[b-bhuds7wgkf] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.05);
    animation: fadeInUp-b-bhuds7wgkf 0.4s ease-out 0.2s forwards;
    opacity: 0;
}

.card-with-tabs[b-bhuds7wgkf] {
    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;
}

.tab-content[b-bhuds7wgkf] {
    padding: 16px;
}

.tab-header[b-bhuds7wgkf] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
    gap: 24px;
    flex-wrap: wrap;
}

.tab-title[b-bhuds7wgkf] {
    font-size: 1.125rem;
    font-weight: 600;
    color: #1F2937;
    margin: 0 0 2px 0;
    line-height: 1.3;
}

.tab-subtitle[b-bhuds7wgkf] {
    font-size: 0.8125rem;
    color: #9CA3AF;
    margin: 0;
    font-weight: 400;
}

/* ========================================
   Queue Actions & Search
   ======================================== */
.queue-actions[b-bhuds7wgkf] {
    display: flex;
    gap: 12px;
    align-items: center;
}

.search-box[b-bhuds7wgkf] {
    position: relative;
    width: 300px;
}

.search-box i[b-bhuds7wgkf] {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #9CA3AF;
    font-size: 14px;
}

.search-box .form-control[b-bhuds7wgkf] {
    padding-left: 36px;
    border: 1px solid rgba(209, 213, 219, 0.5);
    border-radius: 8px;
}

.search-box .form-control:focus[b-bhuds7wgkf] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

/* Refresh button spinning animation */
@keyframes spin-b-bhuds7wgkf {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.bi-arrow-clockwise.spinning[b-bhuds7wgkf] {
    animation: spin-b-bhuds7wgkf 1s linear infinite;
}

/* ========================================
   Table Styles
   ======================================== */
.table-responsive[b-bhuds7wgkf] {
    overflow-x: auto;
    margin: 0;
}

.inbox-table[b-bhuds7wgkf] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.875rem;
}

.inbox-table thead[b-bhuds7wgkf] {
    background-color: #F8FAFC;
    position: sticky;
    top: 0;
    z-index: 1;
}

.inbox-table thead th[b-bhuds7wgkf] {
    padding: 12px 16px;
    text-align: left;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748B;
    border-bottom: 1px solid #E2E8F0;
    white-space: nowrap;
    user-select: none;
}

.inbox-table thead th:hover[b-bhuds7wgkf] {
    color: var(--brand-500);
    background-color: #F1F5F9;
}

.inbox-table tbody tr[b-bhuds7wgkf] {
    transition: all 0.12s ease;
    border-left: 3px solid transparent;
    background: white;
    animation: fadeIn-b-bhuds7wgkf 0.3s ease-out forwards;
    opacity: 0;
}

/* Staggered row animations */
.inbox-table tbody tr:nth-child(1)[b-bhuds7wgkf] { animation-delay: 50ms; }
.inbox-table tbody tr:nth-child(2)[b-bhuds7wgkf] { animation-delay: 80ms; }
.inbox-table tbody tr:nth-child(3)[b-bhuds7wgkf] { animation-delay: 110ms; }
.inbox-table tbody tr:nth-child(4)[b-bhuds7wgkf] { animation-delay: 140ms; }
.inbox-table tbody tr:nth-child(5)[b-bhuds7wgkf] { animation-delay: 170ms; }
.inbox-table tbody tr:nth-child(6)[b-bhuds7wgkf] { animation-delay: 200ms; }
.inbox-table tbody tr:nth-child(7)[b-bhuds7wgkf] { animation-delay: 230ms; }
.inbox-table tbody tr:nth-child(8)[b-bhuds7wgkf] { animation-delay: 260ms; }
.inbox-table tbody tr:nth-child(9)[b-bhuds7wgkf] { animation-delay: 290ms; }
.inbox-table tbody tr:nth-child(10)[b-bhuds7wgkf] { animation-delay: 320ms; }

.inbox-table tbody tr:nth-child(even)[b-bhuds7wgkf] {
    background-color: #FAFBFC;
}

.inbox-table tbody tr:hover[b-bhuds7wgkf] {
    background-color: #EFF6FF;
    border-left: 3px solid var(--brand-500);
}

.inbox-table tbody tr.row-selected[b-bhuds7wgkf] {
    background-color: rgba(15, 23, 42, 0.05);
    border-left: 3px solid var(--brand-500);
}

.inbox-table tbody tr.row-selected:hover[b-bhuds7wgkf] {
    background-color: rgba(15, 23, 42, 0.08);
}

/* Checkbox styling */
.inbox-table .form-check-input[b-bhuds7wgkf] {
    width: 16px;
    height: 16px;
    cursor: pointer;
    border: 1.5px solid #CBD5E1;
    border-radius: 4px;
    margin: 0;
}

.inbox-table .form-check-input:checked[b-bhuds7wgkf] {
    background-color: var(--brand-500);
    border-color: var(--brand-500);
}

.inbox-table .form-check-input:focus[b-bhuds7wgkf] {
    box-shadow: 0 0 0 2px rgba(15, 23, 42, 0.12);
}

.inbox-table tbody td[b-bhuds7wgkf] {
    padding: 5px 8px;
    border-bottom: 1px solid #F1F5F9;
    vertical-align: middle;
    color: #374151;
}

/* Empty State */
.empty-state[b-bhuds7wgkf] {
    text-align: center;
    padding: 48px 32px !important;
    color: #6B7280;
}

.empty-state i[b-bhuds7wgkf] {
    font-size: 40px;
    display: block;
    margin-bottom: 12px;
    color: #D1D5DB;
}

.empty-state span[b-bhuds7wgkf] {
    font-size: 0.9rem;
    color: #9CA3AF;
}

/* ========================================
   Age Badge
   ======================================== */
.age-badge[b-bhuds7wgkf] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    min-width: 60px;
}

.age-critical[b-bhuds7wgkf] {
    background-color: #FEE2E2;
    color: #B91C1C;
}

.age-warning[b-bhuds7wgkf] {
    background-color: #FEF3C7;
    color: #B45309;
}

.age-normal[b-bhuds7wgkf] {
    background-color: #D1FAE5;
    color: #047857;
}

/* ========================================
   Loan Number & Amount
   ======================================== */
.loan-number[b-bhuds7wgkf] {
    color: var(--brand-500);
    font-weight: 600;
    text-decoration: none;
    transition: all 0.15s;
    font-size: 0.875rem;
}

.loan-number:hover[b-bhuds7wgkf] {
    color: #004880;
    text-decoration: underline;
}

.amount-cell[b-bhuds7wgkf] {
    font-weight: 600;
    color: #1F2937;
    font-size: 0.875rem;
    font-variant-numeric: tabular-nums;
}

/* ========================================
   Risk Flags
   ======================================== */
.risk-flags[b-bhuds7wgkf] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.risk-flag-badge[b-bhuds7wgkf] {
    display: inline-flex;
    padding: 2px 6px;
    background-color: #FEF2F2;
    color: var(--error-600);
    font-size: 0.65rem;
    font-weight: 600;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    white-space: nowrap;
}

/* ========================================
   Status Badges
   ======================================== */
.inbox-table .badge[b-bhuds7wgkf] {
    padding: 5px 10px;
    font-size: 0.8rem;
    font-weight: 600;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.badge i[b-bhuds7wgkf] {
    font-size: 12px;
}

.badge.bg-danger[b-bhuds7wgkf] {
    background-color: #FEE2E2 !important;
    color: var(--error-600) !important;
}

.badge.bg-warning[b-bhuds7wgkf] {
    background-color: #FEF3C7 !important;
    color: #D97706 !important;
}

.badge.bg-secondary[b-bhuds7wgkf] {
    background-color: #F3F4F6 !important;
    color: #4B5563 !important;
}

.badge.bg-info[b-bhuds7wgkf] {
    background-color: #E0F2FE !important;
    color: #0369A1 !important;
}

.badge.bg-success[b-bhuds7wgkf] {
    background-color: #D1FAE5 !important;
    color: #047857 !important;
}

.badge.bg-primary[b-bhuds7wgkf] {
    background-color: #DBEAFE !important;
    color: #1D4ED8 !important;
}

/* ========================================
   Action Buttons
   ======================================== */
.btn-outline-primary[b-bhuds7wgkf] {
    color: var(--brand-500);
    background-color: transparent;
    border: 1px solid #E5E7EB;
    padding: 6px 14px;
    font-size: 0.8rem;
    font-weight: 500;
    border-radius: 6px;
    transition: all 0.15s;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.btn-outline-primary:hover[b-bhuds7wgkf] {
    background-color: var(--brand-500);
    color: white;
    border-color: var(--brand-500);
}

.btn-outline-primary i[b-bhuds7wgkf] {
    font-size: 0.85rem;
}

/* ========================================
   Subtle Action Button (Table) - Ghost style
   ======================================== */
.actions-cell[b-bhuds7wgkf] {
    text-align: right;
}

.btn-action-subtle[b-bhuds7wgkf] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--brand-500);
    background-color: white;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-action-subtle:hover[b-bhuds7wgkf] {
    background-color: #EFF6FF;
    color: #004880;
    border-color: #BFDBFE;
}

.btn-action-subtle i[b-bhuds7wgkf] {
    font-size: 0.85rem;
    color: var(--brand-500);
}

.btn-action-subtle:hover i[b-bhuds7wgkf] {
    color: #004880;
}

.btn-outline-secondary[b-bhuds7wgkf] {
    border: 1px solid #E5E7EB;
    color: #4B5563;
    background-color: white;
    transition: all 0.15s;
    font-size: 0.8rem;
    padding: 6px 14px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.btn-outline-secondary:hover[b-bhuds7wgkf] {
    border-color: #D1D5DB;
    background-color: #F9FAFB;
    color: #374151;
}


/* ========================================
   Responsive
   ======================================== */
@media (max-width: 1200px) {
    .search-box[b-bhuds7wgkf] {
        width: 200px;
    }
}

@media (max-width: 768px) {
    .content-header[b-bhuds7wgkf] {
        flex-direction: column;
        gap: 16px;
    }

    .tab-header[b-bhuds7wgkf] {
        flex-direction: column;
    }

    .queue-actions[b-bhuds7wgkf] {
        flex-direction: column;
        width: 100%;
    }

    .search-box[b-bhuds7wgkf] {
        width: 100%;
    }


    .quick-stats-container[b-bhuds7wgkf] {
        width: 100%;
        justify-content: center;
    }

    .stat-card[b-bhuds7wgkf] {
        flex: 1;
        min-width: 100px;
    }

    .quick-actions-panel[b-bhuds7wgkf] {
        flex-direction: column;
        align-items: stretch;
    }

    .quick-actions-left[b-bhuds7wgkf],
    .quick-actions-right[b-bhuds7wgkf] {
        justify-content: center;
    }
}

@media (max-width: 576px) {
    .stat-card[b-bhuds7wgkf] {
        flex-direction: column;
        text-align: center;
        min-width: 70px;
        padding: 10px;
    }

    .stat-icon[b-bhuds7wgkf] {
        width: 36px;
        height: 36px;
        font-size: 16px;
    }

    .stat-value[b-bhuds7wgkf] {
        font-size: 18px;
    }

    .stat-label[b-bhuds7wgkf] {
        font-size: 10px;
    }
}

/* ========================================
   Modal Styles — chrome comes from the global modal theme
   (wwwroot/css/modal-theme.css); only page-specific tweaks live here.
   ======================================== */
.modal[b-bhuds7wgkf] {
    z-index: 1050;
}

.modal-header[b-bhuds7wgkf] {
    gap: 0.9rem;
}

.modal-body .form-select[b-bhuds7wgkf] {
    border: 1px solid #E2E8F0;
    border-radius: 10px;
}

.modal-footer .btn-secondary[b-bhuds7wgkf] {
    background-color: transparent;
    border: 1px solid #E2E8F0;
    color: #64748B;
    font-weight: 600;
    border-radius: 10px;
}

.modal-footer .btn-secondary:hover[b-bhuds7wgkf] {
    background-color: #F1F5F9;
    color: #0F172A;
}

.modal-footer .btn-primary[b-bhuds7wgkf] {
    background-color: var(--brand-600, #004980);
    border-color: var(--brand-600, #004980);
    font-weight: 600;
    border-radius: 10px;
}

.modal-footer .btn-primary:hover[b-bhuds7wgkf] {
    background-color: var(--brand-700, #003760);
    border-color: var(--brand-700, #003760);
}

.modal-footer .btn-primary:disabled[b-bhuds7wgkf] {
    background-color: #9CA3AF;
    border-color: #9CA3AF;
}

/* ========================================
   Notification Section
   ======================================== */
.inbox-notifications[b-bhuds7wgkf] {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    flex-wrap: wrap;
}

.notif-group[b-bhuds7wgkf] {
    flex: 1;
    min-width: 300px;
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    overflow: hidden;
}

.notif-group-header[b-bhuds7wgkf] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    cursor: pointer;
    font-size: 13px;
    font-weight: 600;
    transition: background 0.15s;
}

.notif-group-header:hover[b-bhuds7wgkf] { filter: brightness(0.97); }

.notif-esa[b-bhuds7wgkf] {
    background: #EFF6FF;
    color: #1E40AF;
    border-bottom: 1px solid #BFDBFE;
}

.notif-vera[b-bhuds7wgkf] {
    background: #ECFDF5;
    color: #065F46;
    border-bottom: 1px solid #A7F3D0;
}

.notif-count[b-bhuds7wgkf] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    border-radius: 12px;
    background: rgba(255,255,255,0.7);
    font-size: 12px;
    font-weight: 700;
}

.notif-list[b-bhuds7wgkf] {
    max-height: 250px;
    overflow-y: auto;
}

.notif-item[b-bhuds7wgkf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding: 10px 16px;
    border-bottom: 1px solid #F1F5F9;
    cursor: pointer;
    transition: background 0.15s;
}

.notif-item:hover[b-bhuds7wgkf] { background: #F8FAFC; }
.notif-item:last-child[b-bhuds7wgkf] { border-bottom: none; }

.notif-text[b-bhuds7wgkf] {
    font-size: 12.5px;
    color: #475569;
    line-height: 1.4;
}

/* Loan / Application number chip rendered before the descriptive text. */
.notif-ref[b-bhuds7wgkf] {
    display: inline-block;
    padding: 1px 6px;
    margin-right: 6px;
    background: #EEF2FF;
    color: #3730A3;
    border: 1px solid #C7D2FE;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 600;
    font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);
    letter-spacing: 0.02em;
    vertical-align: 1px;
    white-space: nowrap;
}

.notif-review-btn[b-bhuds7wgkf] {
    flex-shrink: 0;
    padding: 4px 12px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.notif-review-btn:hover[b-bhuds7wgkf] {
    background: var(--brand-700, #003760);
}

.notif-more[b-bhuds7wgkf] {
    padding: 8px 16px;
    text-align: center;
    font-size: 12px;
    color: #94A3B8;
    background: #F8FAFC;
}

/* Clickable "+ N more" / "Show less" toggle. Used to be a static .notif-more
   div — promoting it to a button with hover affordance + cursor:pointer makes
   it discoverable and matches the rest of the inbox interactions. */
.notif-more-btn[b-bhuds7wgkf] {
    width: 100%;
    padding: 8px 16px;
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    color: var(--brand-600, #1d4ed8);
    background: #F8FAFC;
    border: none;
    border-top: 1px solid #E2E8F0;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
}

.notif-more-btn:hover[b-bhuds7wgkf] {
    background: #EEF2FF;
    color: var(--brand-700, #1e40af);
}

.notif-more-btn:focus-visible[b-bhuds7wgkf] {
    outline: 2px solid var(--brand-500);
    outline-offset: -2px;
}

/* ========================================
   ESA / VERAcheck Badges
   ======================================== */
.badge-stack[b-bhuds7wgkf] {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
}

.doc-badge[b-bhuds7wgkf] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 2px 7px;
    border-radius: 4px;
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    white-space: nowrap;
}

.doc-badge i[b-bhuds7wgkf] { font-size: 10px; }

.doc-badge-esa[b-bhuds7wgkf] {
    background: #DBEAFE;
    color: #1E40AF;
}

.doc-badge-vera[b-bhuds7wgkf] {
    background: #D1FAE5;
    color: #065F46;
}

.doc-badge-vera-failed[b-bhuds7wgkf] {
    background: #FEF3C7;
    color: #92400E;
}

.doc-badge-ris[b-bhuds7wgkf] {
    background: #EDE9FE;
    color: #5B21B6;
}

/* ========================================
   Days in Queue
   ======================================== */
.days-badge[b-bhuds7wgkf] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px 8px;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 700;
    min-width: 32px;
    text-align: center;
}

.days-normal[b-bhuds7wgkf] {
    background: #ECFDF5;
    color: #065F46;
}

.days-warning[b-bhuds7wgkf] {
    background: #FEF3C7;
    color: #92400E;
}

.days-critical[b-bhuds7wgkf] {
    background: #FEE2E2;
    color: #991B1B;
}

/* ========================================
   Risk Flag Color Variants
   ======================================== */
.risk-ust[b-bhuds7wgkf] { background: #FEF3C7; color: #92400E; }
.risk-contamination[b-bhuds7wgkf] { background: #FEE2E2; color: #991B1B; }
.risk-industrial[b-bhuds7wgkf] { background: #F3E8FF; color: #6B21A8; }
.risk-rcra[b-bhuds7wgkf] { background: #FFE4E6; color: #9F1239; }

/* ========================================
   Property Type & App ID
   ======================================== */
.property-type-cell[b-bhuds7wgkf] {
    font-size: 0.8rem;
    color: #475569;
    max-width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: inline-block;
}

.app-id-link[b-bhuds7wgkf] {
    font-family: 'Cascadia Code', Consolas, monospace;
    font-size: 0.8rem;
    color: var(--brand-500);
    font-weight: 600;
}

.date-cell[b-bhuds7wgkf] {
    font-size: 0.8rem;
    color: #64748B;
    white-space: nowrap;
}

.status-waiting-hint[b-bhuds7wgkf] {
    margin-top: 2px;
    font-size: 10px;
    color: #94A3B8;
    font-style: italic;
    line-height: 1.2;
}
/* /Components/Pages/Underwriting/PoliciesPage.razor.rz.scp.css */
/* ========================================
   Policies Page Styles (Matching InboxPage/ApplicationsPage)
   ======================================== */

/* ========================================
   Page Header
   ======================================== */
.page-header[b-31ho6qy8ew] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    gap: 24px;
    flex-wrap: wrap;
}

.header-left[b-31ho6qy8ew] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.page-title[b-31ho6qy8ew] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.page-subtitle[b-31ho6qy8ew] {
    font-size: 0.875rem;
    color: #6B7280;
    margin: 0;
    font-weight: 400;
}

/* ========================================
   Inline Stats
   ======================================== */
.inline-stats[b-31ho6qy8ew] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.mini-stat[b-31ho6qy8ew] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 8px;
    padding: 8px 14px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
}

.mini-stat > i[b-31ho6qy8ew] {
    font-size: 1rem;
    color: var(--brand-500);
}

.mini-stat.premium-stat > i[b-31ho6qy8ew] {
    color: #059669;
}

.stat-content[b-31ho6qy8ew] {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.mini-stat-value[b-31ho6qy8ew] {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1F2937;
}

.mini-stat-label[b-31ho6qy8ew] {
    font-size: 0.7rem;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.btn-icon-refresh[b-31ho6qy8ew] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 8px;
    color: var(--brand-500);
    cursor: pointer;
    transition: all 0.2s;
}

.btn-icon-refresh:hover:not(:disabled)[b-31ho6qy8ew] {
    background: rgba(15, 23, 42, 0.08);
    border-color: var(--brand-500);
}

.btn-icon-refresh:disabled[b-31ho6qy8ew] {
    opacity: 0.6;
    cursor: not-allowed;
}

@keyframes spin-b-31ho6qy8ew {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.bi-arrow-clockwise.spinning[b-31ho6qy8ew] {
    animation: spin-b-31ho6qy8ew 1s linear infinite;
}

/* ========================================
   Filters Card
   ======================================== */
.filters-card[b-31ho6qy8ew] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    padding: 16px;
    margin-bottom: 16px;
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.05);
}

.filters-bar[b-31ho6qy8ew] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.filters-left[b-31ho6qy8ew] {
    flex: 1;
    min-width: 280px;
    max-width: 400px;
}

.filters-right[b-31ho6qy8ew] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* Filter Dropdowns */
.filter-dropdown .btn-filter[b-31ho6qy8ew] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 8px 14px;
    font-size: 0.875rem;
    color: #374151;
    font-weight: 500;
    transition: all 0.2s;
    white-space: nowrap;
}

.filter-dropdown .btn-filter:hover[b-31ho6qy8ew] {
    background: #F9FAFB;
    border-color: #D1D5DB;
}

.filter-dropdown .btn-filter i:first-child[b-31ho6qy8ew] {
    color: #6B7280;
    font-size: 0.875rem;
}

.filter-dropdown .dropdown-menu[b-31ho6qy8ew] {
    min-width: 220px;
    padding: 8px 0;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
}

.filter-dropdown .dropdown-header[b-31ho6qy8ew] {
    font-size: 0.7rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 8px 16px;
}

.filter-dropdown .dropdown-item[b-31ho6qy8ew] {
    display: flex;
    align-items: center;
    padding: 10px 16px;
    font-size: 0.875rem;
    color: #374151;
    border: none;
    background: none;
    width: 100%;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s;
}

.filter-dropdown .dropdown-item:hover[b-31ho6qy8ew] {
    background: rgba(15, 23, 42, 0.05);
}

.filter-dropdown .dropdown-item.active[b-31ho6qy8ew] {
    background: rgba(15, 23, 42, 0.08);
    color: var(--brand-500);
    font-weight: 600;
}

/* Searchable Bank Dropdown */
.bank-dropdown-menu[b-31ho6qy8ew] {
    min-width: 280px;
    max-height: 400px;
    overflow: hidden;
}

.bank-dropdown-menu.show[b-31ho6qy8ew] {
    display: flex;
    flex-direction: column;
}

.dropdown-search-container[b-31ho6qy8ew] {
    padding: 8px 12px;
    position: sticky;
    top: 0;
    background: white;
    z-index: 1;
}

.dropdown-search[b-31ho6qy8ew] {
    position: relative;
    display: flex;
    align-items: center;
}

.dropdown-search i.bi-search[b-31ho6qy8ew] {
    position: absolute;
    left: 10px;
    color: #9CA3AF;
    font-size: 0.8rem;
    pointer-events: none;
}

.dropdown-search input[b-31ho6qy8ew] {
    width: 100%;
    padding: 8px 32px 8px 32px;
    font-size: 0.875rem;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.dropdown-search input:focus[b-31ho6qy8ew] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.dropdown-search input[b-31ho6qy8ew]::placeholder {
    color: #9CA3AF;
}

.btn-clear-search[b-31ho6qy8ew] {
    position: absolute;
    right: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    background: transparent;
    border: none;
    color: #9CA3AF;
    cursor: pointer;
    padding: 0;
    border-radius: 50%;
    transition: all 0.15s;
}

.btn-clear-search:hover[b-31ho6qy8ew] {
    background: #F3F4F6;
    color: #6B7280;
}

.bank-list-container[b-31ho6qy8ew] {
    max-height: 250px;
    overflow-y: auto;
    padding: 0;
    margin: 0;
    list-style: none;
}

.bank-list-container .dropdown-item[b-31ho6qy8ew] {
    padding: 10px 16px;
}

.dropdown-item-empty[b-31ho6qy8ew] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 20px 16px;
    color: #9CA3AF;
    font-size: 0.8rem;
}

.dropdown-item-empty i[b-31ho6qy8ew] {
    font-size: 1.5rem;
    color: #D1D5DB;
}

/* Custom Date Range Styles */
.date-dropdown-menu[b-31ho6qy8ew] {
    min-width: 220px;
}

.date-dropdown-menu.show[b-31ho6qy8ew] {
    display: block;
}

.custom-date-range-container[b-31ho6qy8ew] {
    padding: 12px 16px;
    background: #F9FAFB;
    border-top: 1px solid #E5E7EB;
}

.custom-date-inputs[b-31ho6qy8ew] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.date-input-group[b-31ho6qy8ew] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.date-input-group label[b-31ho6qy8ew] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.date-input-group input[type="date"][b-31ho6qy8ew] {
    padding: 6px 10px;
    font-size: 0.875rem;
    border: 1px solid #D1D5DB;
    border-radius: 6px;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.date-input-group input[type="date"]:focus[b-31ho6qy8ew] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.btn-apply-date[b-31ho6qy8ew] {
    margin-top: 4px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    background: var(--brand-500);
    border: none;
    border-radius: 6px;
    color: white;
    cursor: pointer;
    transition: background 0.15s;
}

.btn-apply-date:hover[b-31ho6qy8ew] {
    background: #004880;
}

/* Export Button */
.btn-export[b-31ho6qy8ew] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    font-size: 0.8rem;
    font-weight: 500;
    border-radius: 8px;
    border: 1px solid #E5E7EB;
    color: #4B5563;
    background: white;
}

.btn-export:hover[b-31ho6qy8ew] {
    background: #F9FAFB;
    border-color: #D1D5DB;
    color: #374151;
}

.btn-export i.spinning[b-31ho6qy8ew] {
    animation: spin-b-31ho6qy8ew 1s linear infinite;
}

/* ========================================
   Active Filters
   ======================================== */
.active-filters[b-31ho6qy8ew] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    padding-top: 14px;
    margin-top: 14px;
    border-top: 1px solid #F1F5F9;
}

.active-filters-label[b-31ho6qy8ew] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.filter-tag[b-31ho6qy8ew] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #F3F4F6;
    border: 1px solid #E5E7EB;
    border-radius: 20px;
    padding: 4px 10px 4px 12px;
    font-size: 0.8rem;
    color: #374151;
}

.filter-tag i[b-31ho6qy8ew] {
    color: #6B7280;
    font-size: 0.7rem;
}

.filter-tag-remove[b-31ho6qy8ew] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    background: transparent;
    border: none;
    border-radius: 50%;
    color: #9CA3AF;
    cursor: pointer;
    padding: 0;
    transition: all 0.15s;
}

.filter-tag-remove:hover[b-31ho6qy8ew] {
    background: rgba(220, 38, 38, 0.1);
    color: var(--error-600);
}

.btn-clear-all[b-31ho6qy8ew] {
    background: none;
    border: none;
    color: var(--brand-500);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    transition: background 0.15s;
}

.btn-clear-all:hover[b-31ho6qy8ew] {
    background: rgba(15, 23, 42, 0.08);
}

/* ========================================
   Card & Table
   ======================================== */
.card[b-31ho6qy8ew] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.05);
    overflow: hidden;
}

.table-responsive[b-31ho6qy8ew] {
    overflow-x: auto;
    margin: 0;
}

.policies-table[b-31ho6qy8ew] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.875rem;
}

.policies-table thead[b-31ho6qy8ew] {
    background-color: #F8FAFC;
    position: sticky;
    top: 0;
    z-index: 1;
}

.policies-table thead th[b-31ho6qy8ew] {
    padding: 12px 16px;
    text-align: left;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748B;
    border-bottom: 1px solid #E2E8F0;
    white-space: nowrap;
    user-select: none;
}

.policies-table thead th.sortable-header[b-31ho6qy8ew] {
    cursor: pointer;
}

.policies-table thead th.sortable-header:hover[b-31ho6qy8ew],
.policies-table thead th:hover[b-31ho6qy8ew] {
    color: var(--brand-500);
    background-color: #F1F5F9;
}

.policies-table thead th i[b-31ho6qy8ew] {
    margin-left: 4px;
    font-size: 0.65rem;
}

@keyframes fadeIn-b-31ho6qy8ew {
    from { opacity: 0; }
    to { opacity: 1; }
}

.policies-table tbody tr[b-31ho6qy8ew] {
    transition: all 0.12s ease;
    border-left: 3px solid transparent;
    background: white;
    animation: fadeIn-b-31ho6qy8ew 0.3s ease-out forwards;
    opacity: 0;
}

/* Staggered row animations */
.policies-table tbody tr:nth-child(1)[b-31ho6qy8ew] { animation-delay: 50ms; }
.policies-table tbody tr:nth-child(2)[b-31ho6qy8ew] { animation-delay: 80ms; }
.policies-table tbody tr:nth-child(3)[b-31ho6qy8ew] { animation-delay: 110ms; }
.policies-table tbody tr:nth-child(4)[b-31ho6qy8ew] { animation-delay: 140ms; }
.policies-table tbody tr:nth-child(5)[b-31ho6qy8ew] { animation-delay: 170ms; }
.policies-table tbody tr:nth-child(6)[b-31ho6qy8ew] { animation-delay: 200ms; }
.policies-table tbody tr:nth-child(7)[b-31ho6qy8ew] { animation-delay: 230ms; }
.policies-table tbody tr:nth-child(8)[b-31ho6qy8ew] { animation-delay: 260ms; }
.policies-table tbody tr:nth-child(9)[b-31ho6qy8ew] { animation-delay: 290ms; }
.policies-table tbody tr:nth-child(10)[b-31ho6qy8ew] { animation-delay: 320ms; }

.policies-table tbody tr:nth-child(even)[b-31ho6qy8ew] {
    background-color: #FAFBFC;
}

.policies-table tbody tr.clickable-row[b-31ho6qy8ew] {
    cursor: pointer;
}

.policies-table tbody tr:hover[b-31ho6qy8ew] {
    background-color: #EFF6FF;
    border-left: 3px solid var(--brand-500);
}

.policies-table tbody td[b-31ho6qy8ew] {
    padding: 10px 16px;
    border-bottom: 1px solid #F1F5F9;
    vertical-align: middle;
    color: #374151;
}

/* Cell Styles */
.loan-number[b-31ho6qy8ew] {
    color: var(--brand-500);
    font-weight: 600;
    text-decoration: none;
    transition: all 0.15s;
    font-size: 0.875rem;
}

.loan-number:hover[b-31ho6qy8ew] {
    color: #004880;
    text-decoration: underline;
}

.borrower-name[b-31ho6qy8ew] {
    font-weight: 500;
    color: #1F2937;
}

.bank-cell[b-31ho6qy8ew] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #374151;
}

.bank-cell i[b-31ho6qy8ew] {
    color: #6b7280;
    font-size: 0.875rem;
}

.property-info[b-31ho6qy8ew] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.property-location[b-31ho6qy8ew] {
    font-weight: 500;
    color: #1F2937;
    font-size: 0.875rem;
}

.property-type[b-31ho6qy8ew] {
    font-size: 0.75rem;
    color: #6B7280;
}

.amount-cell[b-31ho6qy8ew] {
    font-weight: 600;
    color: #1F2937;
    font-size: 0.875rem;
    font-variant-numeric: tabular-nums;
}

.premium-value[b-31ho6qy8ew] {
    color: #059669;
}

.commission-value[b-31ho6qy8ew] {
    color: #7C3AED;
}

.date-cell[b-31ho6qy8ew] {
    color: #6B7280;
    font-size: 0.8rem;
}

.actions-cell[b-31ho6qy8ew] {
    text-align: right;
}

/* Action Button */
.btn-action-subtle[b-31ho6qy8ew] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--brand-500);
    background-color: white;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-action-subtle:hover[b-31ho6qy8ew] {
    background-color: #EFF6FF;
    color: #004880;
    border-color: #BFDBFE;
}

.btn-action-subtle i[b-31ho6qy8ew] {
    font-size: 0.85rem;
    color: var(--brand-500);
}

.btn-action-subtle:hover i[b-31ho6qy8ew] {
    color: #004880;
}

/* ========================================
   Loading & Empty States
   ======================================== */
.loading-state[b-31ho6qy8ew] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 40px 20px;
    color: #6B7280;
}

.loading-state .spinner-border[b-31ho6qy8ew] {
    width: 2rem;
    height: 2rem;
}

.empty-state[b-31ho6qy8ew] {
    text-align: center;
    padding: 48px 32px !important;
    color: #6B7280;
}

.empty-state i[b-31ho6qy8ew] {
    font-size: 40px;
    display: block;
    margin-bottom: 12px;
    color: #D1D5DB;
}

.empty-state span[b-31ho6qy8ew] {
    font-size: 0.9rem;
    color: #9CA3AF;
    display: block;
}

.empty-state-hint[b-31ho6qy8ew] {
    font-size: 0.8rem;
    color: #9CA3AF;
    margin: 8px 0 0 0;
}

/* ========================================
   Pagination
   ======================================== */
.pagination-container[b-31ho6qy8ew] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-top: 1px solid #F1F5F9;
    background: #FAFBFC;
}

.pagination-info[b-31ho6qy8ew] {
    font-size: 0.8rem;
    color: #6B7280;
}

.pagination-info strong[b-31ho6qy8ew] {
    color: #374151;
    font-weight: 600;
}

.pagination-nav[b-31ho6qy8ew] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.pagination .page-link[b-31ho6qy8ew] {
    border: 1px solid #E5E7EB;
    color: #374151;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    transition: all 0.15s;
}

.pagination .page-link:hover[b-31ho6qy8ew] {
    background: rgba(15, 23, 42, 0.05);
    border-color: var(--brand-500);
    color: var(--brand-500);
}

.pagination .page-item.active .page-link[b-31ho6qy8ew] {
    background: var(--brand-500);
    border-color: var(--brand-500);
    color: white;
}

.pagination .page-item.disabled .page-link[b-31ho6qy8ew] {
    background: #F9FAFB;
    color: #D1D5DB;
}

/* ========================================
   Responsive
   ======================================== */
@media (max-width: 992px) {
    .filters-bar[b-31ho6qy8ew] {
        flex-direction: column;
        align-items: stretch;
    }
    
    .filters-left[b-31ho6qy8ew] {
        max-width: none;
    }
    
    .filters-right[b-31ho6qy8ew] {
        justify-content: flex-start;
    }
    
    .inline-stats[b-31ho6qy8ew] {
        flex-wrap: wrap;
    }
}

@media (max-width: 768px) {
    .page-header[b-31ho6qy8ew] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .inline-stats[b-31ho6qy8ew] {
        width: 100%;
        justify-content: flex-start;
    }
    
    .pagination-container[b-31ho6qy8ew] {
        flex-direction: column;
        gap: 12px;
    }
}

/* ── Skeleton loader ─────────────────────────────────────────────────── */
@keyframes uw-pol-skel-pulse-b-31ho6qy8ew {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.tbl-row-skeleton td[b-31ho6qy8ew] {
    padding: 0.875rem 0.75rem;
}

.tbl-skel[b-31ho6qy8ew] {
    height: 1.0625rem;
    width: 80px;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: uw-pol-skel-pulse-b-31ho6qy8ew 1.5s ease-in-out infinite;
}

.tbl-skel-badge[b-31ho6qy8ew] {
    height: 1.25rem;
    width: 90px;
    border-radius: 9999px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: uw-pol-skel-pulse-b-31ho6qy8ew 1.5s ease-in-out infinite;
}
/* /Components/Pages/Underwriting/ReferralsPage.razor.rz.scp.css */
/* All Applications Page Styles */

/* ========================================
   Page Header
   ======================================== */
.page-header[b-hmodggvnhr] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    gap: 24px;
    flex-wrap: wrap;
}

.header-left[b-hmodggvnhr] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.page-title[b-hmodggvnhr] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1F2937;
    margin: 0;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

.page-subtitle[b-hmodggvnhr] {
    font-size: 0.875rem;
    color: #6B7280;
    margin: 0;
    font-weight: 400;
}

/* ========================================
   Inline Stats
   ======================================== */
.inline-stats[b-hmodggvnhr] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.mini-stat[b-hmodggvnhr] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 8px;
    padding: 8px 14px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
}

.mini-stat > i[b-hmodggvnhr] {
    font-size: 1rem;
    color: var(--brand-500);
}

.stat-content[b-hmodggvnhr] {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.mini-stat-value[b-hmodggvnhr] {
    font-size: 1.125rem;
    font-weight: 700;
    color: #1F2937;
}

.mini-stat-label[b-hmodggvnhr] {
    font-size: 0.7rem;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.btn-icon-refresh[b-hmodggvnhr] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 8px;
    color: var(--brand-500);
    cursor: pointer;
    transition: all 0.2s;
}

.btn-icon-refresh:hover:not(:disabled)[b-hmodggvnhr] {
    background: rgba(15, 23, 42, 0.08);
    border-color: var(--brand-500);
}

.btn-icon-refresh:disabled[b-hmodggvnhr] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-icon-refresh.refreshing i[b-hmodggvnhr] {
    animation: spin-b-hmodggvnhr 1s linear infinite;
}

@keyframes spin-b-hmodggvnhr {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.bi-arrow-clockwise.spinning[b-hmodggvnhr] {
    animation: spin-b-hmodggvnhr 1s linear infinite;
}

/* ========================================
   Filters Card
   ======================================== */
.filters-card[b-hmodggvnhr] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    padding: 16px;
    margin-bottom: 16px;
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.05);
}

.filters-bar[b-hmodggvnhr] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.filters-left[b-hmodggvnhr] {
    flex: 1;
    min-width: 280px;
    max-width: 400px;
}

.filters-right[b-hmodggvnhr] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* Filter Dropdowns */
.filter-dropdown .btn-filter[b-hmodggvnhr] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 8px 14px;
    font-size: 0.875rem;
    color: #374151;
    font-weight: 500;
    transition: all 0.2s;
    white-space: nowrap;
}

.filter-dropdown .btn-filter:hover[b-hmodggvnhr] {
    background: #F9FAFB;
    border-color: #D1D5DB;
}

.filter-dropdown .btn-filter i:first-child[b-hmodggvnhr] {
    color: #6B7280;
    font-size: 0.875rem;
}

.filter-dropdown .dropdown-menu[b-hmodggvnhr] {
    min-width: 220px;
    padding: 8px 0;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
}

.filter-dropdown .dropdown-header[b-hmodggvnhr] {
    font-size: 0.7rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 8px 16px;
}

.filter-dropdown .dropdown-item[b-hmodggvnhr] {
    display: flex;
    align-items: center;
    padding: 10px 16px;
    font-size: 0.875rem;
    color: #374151;
    border: none;
    background: none;
    width: 100%;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s;
}

.filter-dropdown .dropdown-item:hover[b-hmodggvnhr] {
    background: rgba(15, 23, 42, 0.05);
}

.filter-dropdown .dropdown-item.active[b-hmodggvnhr] {
    background: rgba(15, 23, 42, 0.08);
    color: var(--brand-500);
    font-weight: 600;
}

/* Searchable Bank Dropdown */
.bank-dropdown-menu[b-hmodggvnhr] {
    min-width: 280px;
    max-height: 400px;
    overflow: hidden;
}

.bank-dropdown-menu.show[b-hmodggvnhr] {
    display: flex;
    flex-direction: column;
}

.dropdown-search-container[b-hmodggvnhr] {
    padding: 8px 12px;
    position: sticky;
    top: 0;
    background: white;
    z-index: 1;
}

.dropdown-search[b-hmodggvnhr] {
    position: relative;
    display: flex;
    align-items: center;
}

.dropdown-search i.bi-search[b-hmodggvnhr] {
    position: absolute;
    left: 10px;
    color: #9CA3AF;
    font-size: 0.8rem;
    pointer-events: none;
}

.dropdown-search input[b-hmodggvnhr] {
    width: 100%;
    padding: 8px 32px 8px 32px;
    font-size: 0.875rem;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.dropdown-search input:focus[b-hmodggvnhr] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.dropdown-search input[b-hmodggvnhr]::placeholder {
    color: #9CA3AF;
}

.btn-clear-search[b-hmodggvnhr] {
    position: absolute;
    right: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    background: transparent;
    border: none;
    color: #9CA3AF;
    cursor: pointer;
    padding: 0;
    border-radius: 50%;
    transition: all 0.15s;
}

.btn-clear-search:hover[b-hmodggvnhr] {
    background: #F3F4F6;
    color: #6B7280;
}

.bank-list-container[b-hmodggvnhr] {
    max-height: 250px;
    overflow-y: auto;
    padding: 0;
    margin: 0;
    list-style: none;
}

.bank-list-container .dropdown-item[b-hmodggvnhr] {
    padding: 10px 16px;
}

.dropdown-item-empty[b-hmodggvnhr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 20px 16px;
    color: #9CA3AF;
    font-size: 0.8rem;
}

.dropdown-item-empty i[b-hmodggvnhr] {
    font-size: 1.5rem;
    color: #D1D5DB;
}

/* Custom Date Range Styles */
.date-dropdown-menu[b-hmodggvnhr] {
    min-width: 220px;
}

.date-dropdown-menu.show[b-hmodggvnhr] {
    display: block;
}

.custom-date-range-container[b-hmodggvnhr] {
    padding: 12px 16px;
    background: #F9FAFB;
    border-top: 1px solid #E5E7EB;
}

.custom-date-inputs[b-hmodggvnhr] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.date-input-group[b-hmodggvnhr] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.date-input-group label[b-hmodggvnhr] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.date-input-group input[type="date"][b-hmodggvnhr] {
    padding: 6px 10px;
    font-size: 0.875rem;
    border: 1px solid #D1D5DB;
    border-radius: 6px;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.date-input-group input[type="date"]:focus[b-hmodggvnhr] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.btn-apply-date[b-hmodggvnhr] {
    margin-top: 4px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    background: var(--brand-500);
    border: none;
    border-radius: 6px;
    color: white;
    cursor: pointer;
    transition: background 0.15s;
}

.btn-apply-date:hover[b-hmodggvnhr] {
    background: #004880;
}

/* Small status badge in dropdown */
.status-badge-sm[b-hmodggvnhr] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    margin-right: 8px;
    font-size: 0.65rem;
}

.status-badge-sm i[b-hmodggvnhr] {
    font-size: 10px;
}

/* Export Button */
.btn-export[b-hmodggvnhr] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    font-size: 0.8rem;
    font-weight: 500;
    border-radius: 8px;
    border: 1px solid #E5E7EB;
    color: #4B5563;
    background: white;
}

.btn-export:hover[b-hmodggvnhr] {
    background: #F9FAFB;
    border-color: #D1D5DB;
    color: #374151;
}

.btn-export i.spinning[b-hmodggvnhr] {
    animation: spin-b-hmodggvnhr 1s linear infinite;
}

/* ========================================
   Active Filters
   ======================================== */
.active-filters[b-hmodggvnhr] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    padding-top: 14px;
    margin-top: 14px;
    border-top: 1px solid #F1F5F9;
}

.active-filters-label[b-hmodggvnhr] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.filter-tag[b-hmodggvnhr] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #F3F4F6;
    border: 1px solid #E5E7EB;
    border-radius: 20px;
    padding: 4px 10px 4px 12px;
    font-size: 0.8rem;
    color: #374151;
}

.filter-tag i[b-hmodggvnhr] {
    color: #6B7280;
    font-size: 0.7rem;
}

.filter-tag-remove[b-hmodggvnhr] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    background: transparent;
    border: none;
    border-radius: 50%;
    color: #9CA3AF;
    cursor: pointer;
    padding: 0;
    transition: all 0.15s;
}

.filter-tag-remove:hover[b-hmodggvnhr] {
    background: rgba(220, 38, 38, 0.1);
    color: var(--error-600);
}

.btn-clear-all[b-hmodggvnhr] {
    background: none;
    border: none;
    color: var(--brand-500);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    transition: background 0.15s;
}

.btn-clear-all:hover[b-hmodggvnhr] {
    background: rgba(15, 23, 42, 0.08);
}

/* ========================================
   Card & Table (Matching InboxPage)
   ======================================== */
.card[b-hmodggvnhr] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.05);
    overflow: hidden;
}

.table-responsive[b-hmodggvnhr] {
    overflow-x: auto;
    margin: 0;
}

.applications-table[b-hmodggvnhr] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.875rem;
}

.applications-table thead[b-hmodggvnhr] {
    background-color: #F8FAFC;
    position: sticky;
    top: 0;
    z-index: 1;
}

.applications-table thead th[b-hmodggvnhr] {
    padding: 12px 16px;
    text-align: left;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748B;
    border-bottom: 1px solid #E2E8F0;
    white-space: nowrap;
    user-select: none;
}

.applications-table thead th.sortable-header[b-hmodggvnhr] {
    cursor: pointer;
}

.applications-table thead th.sortable-header:hover[b-hmodggvnhr],
.applications-table thead th:hover[b-hmodggvnhr] {
    color: var(--brand-500);
    background-color: #F1F5F9;
}

.applications-table thead th i[b-hmodggvnhr] {
    margin-left: 4px;
    font-size: 0.65rem;
}

@keyframes fadeIn-b-hmodggvnhr {
    from { opacity: 0; }
    to { opacity: 1; }
}

.applications-table tbody tr[b-hmodggvnhr] {
    transition: all 0.12s ease;
    border-left: 3px solid transparent;
    background: white;
    animation: fadeIn-b-hmodggvnhr 0.3s ease-out forwards;
    opacity: 0;
}

/* Staggered row animations */
.applications-table tbody tr:nth-child(1)[b-hmodggvnhr] { animation-delay: 50ms; }
.applications-table tbody tr:nth-child(2)[b-hmodggvnhr] { animation-delay: 80ms; }
.applications-table tbody tr:nth-child(3)[b-hmodggvnhr] { animation-delay: 110ms; }
.applications-table tbody tr:nth-child(4)[b-hmodggvnhr] { animation-delay: 140ms; }
.applications-table tbody tr:nth-child(5)[b-hmodggvnhr] { animation-delay: 170ms; }
.applications-table tbody tr:nth-child(6)[b-hmodggvnhr] { animation-delay: 200ms; }
.applications-table tbody tr:nth-child(7)[b-hmodggvnhr] { animation-delay: 230ms; }
.applications-table tbody tr:nth-child(8)[b-hmodggvnhr] { animation-delay: 260ms; }
.applications-table tbody tr:nth-child(9)[b-hmodggvnhr] { animation-delay: 290ms; }
.applications-table tbody tr:nth-child(10)[b-hmodggvnhr] { animation-delay: 320ms; }

.applications-table tbody tr:nth-child(even)[b-hmodggvnhr] {
    background-color: #FAFBFC;
}

.applications-table tbody tr.clickable-row[b-hmodggvnhr] {
    cursor: pointer;
}

.applications-table tbody tr:hover[b-hmodggvnhr] {
    background-color: #EFF6FF;
    border-left: 3px solid var(--brand-500);
}

.applications-table tbody td[b-hmodggvnhr] {
    padding: 10px 16px;
    border-bottom: 1px solid #F1F5F9;
    vertical-align: middle;
    color: #374151;
}

/* Cell Styles */
.loan-number[b-hmodggvnhr] {
    color: var(--brand-500);
    font-weight: 600;
    text-decoration: none;
    transition: all 0.15s;
    font-size: 0.875rem;
}

.loan-number:hover[b-hmodggvnhr] {
    color: #004880;
    text-decoration: underline;
}

.borrower-name[b-hmodggvnhr] {
    font-weight: 500;
    color: #1F2937;
}

.bank-cell[b-hmodggvnhr] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #374151;
}

.bank-cell i[b-hmodggvnhr] {
    color: #6b7280;
    font-size: 0.875rem;
}

.property-info[b-hmodggvnhr] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.property-location[b-hmodggvnhr] {
    font-weight: 500;
    color: #1F2937;
    font-size: 0.875rem;
}

.property-type[b-hmodggvnhr] {
    font-size: 0.75rem;
    color: #6B7280;
}

.amount-cell[b-hmodggvnhr] {
    font-weight: 600;
    color: #1F2937;
    font-size: 0.875rem;
    font-variant-numeric: tabular-nums;
}

.date-cell[b-hmodggvnhr] {
    color: #6B7280;
    font-size: 0.8rem;
}

.actions-cell[b-hmodggvnhr] {
    text-align: right;
}

/* ========================================
   Status Badges (Matching InboxPage exactly)
   ======================================== */
.applications-table .badge[b-hmodggvnhr] {
    padding: 5px 10px;
    font-size: 0.8rem;
    font-weight: 600;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.badge i[b-hmodggvnhr] {
    font-size: 12px;
}

.badge.bg-danger[b-hmodggvnhr] {
    background-color: #FEE2E2 !important;
    color: var(--error-600) !important;
}

.badge.bg-warning[b-hmodggvnhr] {
    background-color: #FEF3C7 !important;
    color: #D97706 !important;
}

.badge.bg-secondary[b-hmodggvnhr] {
    background-color: #F3F4F6 !important;
    color: #4B5563 !important;
}

.badge.bg-info[b-hmodggvnhr] {
    background-color: #E0F2FE !important;
    color: #0369A1 !important;
}

.badge.bg-success[b-hmodggvnhr] {
    background-color: #D1FAE5 !important;
    color: #047857 !important;
}

.badge.bg-primary[b-hmodggvnhr] {
    background-color: #DBEAFE !important;
    color: #1D4ED8 !important;
}

/* Referral source badges (feature 009) */
.badge.status-referral[b-hmodggvnhr] {
    background-color: #EDE9FE;
    color: #5B21B6;
}

.badge.status-referred[b-hmodggvnhr] {
    background-color: #E0F2FE;
    color: #0369A1;
}

/* ========================================
   Action Button (Matching InboxPage exactly)
   ======================================== */
.actions-cell[b-hmodggvnhr] {
    text-align: right;
}

.btn-action-subtle[b-hmodggvnhr] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--brand-500);
    background-color: white;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-action-subtle:hover[b-hmodggvnhr] {
    background-color: #EFF6FF;
    color: #004880;
    border-color: #BFDBFE;
}

.btn-action-subtle i[b-hmodggvnhr] {
    font-size: 0.85rem;
    color: var(--brand-500);
}

.btn-action-subtle:hover i[b-hmodggvnhr] {
    color: #004880;
}

/* ========================================
   Loading & Empty States
   ======================================== */
.loading-state[b-hmodggvnhr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 40px 20px;
    color: #6B7280;
}

.loading-state .spinner-border[b-hmodggvnhr] {
    width: 2rem;
    height: 2rem;
}

.empty-state[b-hmodggvnhr] {
    text-align: center;
    padding: 48px 32px !important;
    color: #6B7280;
}

.empty-state i[b-hmodggvnhr] {
    font-size: 40px;
    display: block;
    margin-bottom: 12px;
    color: #D1D5DB;
}

.empty-state span[b-hmodggvnhr] {
    font-size: 0.9rem;
    color: #9CA3AF;
    display: block;
}

.empty-state-hint[b-hmodggvnhr] {
    font-size: 0.8rem;
    color: #9CA3AF;
    margin: 8px 0 0 0;
}

/* ========================================
   Pagination
   ======================================== */
.pagination-container[b-hmodggvnhr] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-top: 1px solid #F1F5F9;
    background: #FAFBFC;
}

.pagination-info[b-hmodggvnhr] {
    font-size: 0.8rem;
    color: #6B7280;
}

.pagination-info strong[b-hmodggvnhr] {
    color: #374151;
    font-weight: 600;
}

.pagination-nav[b-hmodggvnhr] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.pagination .page-link[b-hmodggvnhr] {
    border: 1px solid #E5E7EB;
    color: #374151;
    padding: 6px 12px;
    font-size: 0.8rem;
    font-weight: 500;
    transition: all 0.15s;
}

.pagination .page-link:hover[b-hmodggvnhr] {
    background: rgba(15, 23, 42, 0.05);
    border-color: var(--brand-500);
    color: var(--brand-500);
}

.pagination .page-item.active .page-link[b-hmodggvnhr] {
    background: var(--brand-500);
    border-color: var(--brand-500);
    color: white;
}

.pagination .page-item.disabled .page-link[b-hmodggvnhr] {
    background: #F9FAFB;
    color: #D1D5DB;
}

/* ========================================
   Responsive
   ======================================== */
@media (max-width: 992px) {
    .filters-bar[b-hmodggvnhr] {
        flex-direction: column;
        align-items: stretch;
    }
    
    .filters-left[b-hmodggvnhr] {
        max-width: none;
    }
    
    .filters-right[b-hmodggvnhr] {
        justify-content: flex-start;
    }
}

@media (max-width: 768px) {
    .page-header[b-hmodggvnhr] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .inline-stats[b-hmodggvnhr] {
        width: 100%;
        justify-content: flex-start;
    }
    
    .pagination-container[b-hmodggvnhr] {
        flex-direction: column;
        gap: 12px;
    }
}

/* Referral Reason */
.referral-reason[b-hmodggvnhr] {
    font-size: 0.8rem;
    color: #D97706;
    font-weight: 500;
    max-width: 180px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: inline-block;
}

/* ── Skeleton loader ─────────────────────────────────────────────────── */
@keyframes uw-ref-skel-pulse-b-hmodggvnhr {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.tbl-row-skeleton td[b-hmodggvnhr] {
    padding: 0.875rem 0.75rem;
}

.tbl-skel[b-hmodggvnhr] {
    height: 1.0625rem;
    width: 80px;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: uw-ref-skel-pulse-b-hmodggvnhr 1.5s ease-in-out infinite;
}

.tbl-skel-badge[b-hmodggvnhr] {
    height: 1.25rem;
    width: 90px;
    border-radius: 9999px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: uw-ref-skel-pulse-b-hmodggvnhr 1.5s ease-in-out infinite;
}
/* /Components/Pages/Underwriting/Tabs/ApplicationActivityTab.razor.rz.scp.css */
/* ========================================
   Application Activity Tab - Timeline Design
   Based on Reference Design
   ======================================== */

/* ========================================
   Tab Animations
   ======================================== */
@keyframes fadeInUp-b-5bnc72me7e {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn-b-5bnc72me7e {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideInLeft-b-5bnc72me7e {
    from {
        opacity: 0;
        transform: translateX(-10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.activity-tab[b-5bnc72me7e] {
    padding: 0;
    animation: fadeIn-b-5bnc72me7e 0.35s ease-out;
}

/* ========================================
   Activity Timeline Container
   ======================================== */

.activity-timeline[b-5bnc72me7e] {
    display: flex;
    flex-direction: column;
    gap: 0;
    position: relative;
}

/* ========================================
   Timeline Item
   ======================================== */

.timeline-item[b-5bnc72me7e] {
    display: flex;
    gap: 0;
    position: relative;
    animation: slideInLeft-b-5bnc72me7e 0.35s ease-out forwards;
    opacity: 0;
}

/* Staggered timeline item animations */
.timeline-item:nth-child(1)[b-5bnc72me7e] { animation-delay: 50ms; }
.timeline-item:nth-child(2)[b-5bnc72me7e] { animation-delay: 100ms; }
.timeline-item:nth-child(3)[b-5bnc72me7e] { animation-delay: 150ms; }
.timeline-item:nth-child(4)[b-5bnc72me7e] { animation-delay: 200ms; }
.timeline-item:nth-child(5)[b-5bnc72me7e] { animation-delay: 250ms; }
.timeline-item:nth-child(6)[b-5bnc72me7e] { animation-delay: 300ms; }
.timeline-item:nth-child(7)[b-5bnc72me7e] { animation-delay: 350ms; }
.timeline-item:nth-child(8)[b-5bnc72me7e] { animation-delay: 400ms; }
.timeline-item:nth-child(9)[b-5bnc72me7e] { animation-delay: 450ms; }
.timeline-item:nth-child(10)[b-5bnc72me7e] { animation-delay: 500ms; }

.timeline-item:not(:last-child) .timeline-icon-wrapper[b-5bnc72me7e]::after {
    content: '';
    position: absolute;
    left: 23px;
    top: 45px;
    bottom: -8px;
    width: 2px;
    background: transparent;
    border-left: 1px dashed #D1D5DB;
}

/* ========================================
   Timeline Icon Wrapper (Left Sidebar)
   ======================================== */

.timeline-icon-wrapper[b-5bnc72me7e] {
    flex-shrink: 0;
    width: 48px;
    padding: 0.5rem 0;
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 2;
}

.timeline-icon[b-5bnc72me7e] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    color: var(--neutral-600);
    flex-shrink: 0;
    border-left: 1px dashed #D1D5DB;
}

/* Icon Color Variants */
.timeline-icon.icon-primary[b-5bnc72me7e] {
    background: linear-gradient(135deg, #A5B4FC 0%, #C7D2FE 100%);
}

.timeline-icon.icon-success[b-5bnc72me7e] {
    background: linear-gradient(135deg, #86EFAC 0%, #A7F3D0 100%);
}

.timeline-icon.icon-warning[b-5bnc72me7e] {
    background: linear-gradient(135deg, #FCD34D 0%, #FDE68A 100%);
}

.timeline-icon.icon-danger[b-5bnc72me7e] {
    background: linear-gradient(135deg, #FCA5A5 0%, #FECACA 100%);
}

.timeline-icon.icon-info[b-5bnc72me7e] {
    background: linear-gradient(135deg, #67E8F9 0%, #A5F3FC 100%);
}

.timeline-icon.icon-secondary[b-5bnc72me7e] {
    background: linear-gradient(135deg, #CBD5E1 0%, #E2E8F0 100%);
}

.timeline-icon.icon-load-more[b-5bnc72me7e] {
    background: linear-gradient(135deg, #F3F4F6 0%, #E5E7EB 100%);
    color: #9CA3AF;
}

/* ========================================
   Timeline Content (Right Side)
   ======================================== */

.timeline-content[b-5bnc72me7e] {
    flex: 1;
    min-width: 0;
    padding: 0.375rem 0 0.375rem 0;
}

/* ========================================
   Activity Card
   ======================================== */

.activity-card[b-5bnc72me7e] {
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 0.75rem 1rem;
    transition: all 0.2s ease;
    margin-right: 1rem;
}

.activity-card:hover[b-5bnc72me7e] {
    border-color: #D1D5DB;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

/* ========================================
   Activity Header
   ======================================== */

.activity-header[b-5bnc72me7e] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 0.5rem;
}

.activity-title-section[b-5bnc72me7e] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 0.625rem;
    flex-wrap: wrap;
}

.activity-title[b-5bnc72me7e] {
    margin: 0;
    font-size: 0.875rem;
    font-weight: 600;
    color: #111827;
    line-height: 1.4;
}

/* ========================================
   Activity Badge
   ======================================== */

.activity-badge[b-5bnc72me7e] {
    display: inline-flex;
    align-items: center;
    padding: 0.1875rem 0.625rem;
    border-radius: 10px;
    font-size: 0.6875rem;
    font-weight: 600;
    white-space: nowrap;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.activity-badge.badge-primary[b-5bnc72me7e] {
    background: #EEF2FF;
    color: #6366F1;
}

.activity-badge.badge-success[b-5bnc72me7e] {
    background: #D1FAE5;
    color: #059669;
}

.activity-badge.badge-warning[b-5bnc72me7e] {
    background: #FEF3C7;
    color: #D97706;
}

.activity-badge.badge-danger[b-5bnc72me7e] {
    background: #FEE2E2;
    color: var(--error-600);
}

.activity-badge.badge-info[b-5bnc72me7e] {
    background: #CFFAFE;
    color: #0891B2;
}

.activity-badge.badge-secondary[b-5bnc72me7e] {
    background: #F1F5F9;
    color: #64748B;
}


/* ========================================
   Activity Meta
   ======================================== */

.activity-meta[b-5bnc72me7e] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    color: #6B7280;
    flex-wrap: wrap;
}

.activity-time[b-5bnc72me7e] {
    color: #9CA3AF;
}

.activity-user-link[b-5bnc72me7e] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    color: #374151;
    font-weight: 500;
}

.user-micro-avatar[b-5bnc72me7e] {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    object-fit: cover;
}

/* ========================================
   Activity Details
   ======================================== */

.activity-details[b-5bnc72me7e] {
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    border-top: 1px solid #F3F4F6;
}

.btn-expand[b-5bnc72me7e] {
    background: transparent;
    border: none;
    color: #6B7280;
    font-size: 0.75rem;
    font-weight: 500;
    padding: 0.25rem 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    transition: color 0.2s ease;
}

.btn-expand:hover[b-5bnc72me7e] {
    color: #111827;
}

.btn-expand i[b-5bnc72me7e] {
    font-size: 0.6875rem;
}

.details-content[b-5bnc72me7e] {
    margin-top: 0.75rem;
    padding: 0.75rem;
    background: #F9FAFB;
    border-radius: 6px;
}

.details-heading[b-5bnc72me7e] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #374151;
    margin-bottom: 0.5rem;
}

/* Changes Table */
.changes-table[b-5bnc72me7e] {
    margin-bottom: 0.75rem;
    font-size: 0.75rem;
    background: white;
}

.changes-table th[b-5bnc72me7e] {
    background: #F3F4F6;
    color: #374151;
    font-weight: 600;
    padding: 0.375rem 0.5rem;
    border-color: #E5E7EB;
    font-size: 0.6875rem;
}

.changes-table td[b-5bnc72me7e] {
    padding: 0.375rem 0.5rem;
    color: #6B7280;
    border-color: #E5E7EB;
}

.changes-table td strong[b-5bnc72me7e] {
    color: #111827;
}

/* Metadata */
.metadata-json[b-5bnc72me7e] {
    background: var(--neutral-900);
    color: #f8f9fa;
    padding: 1rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    overflow-x: auto;
    font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
}

.metadata-json[b-5bnc72me7e]::-webkit-scrollbar {
    height: 6px;
}

.metadata-json[b-5bnc72me7e]::-webkit-scrollbar-track {
    background: var(--neutral-800);
}

.metadata-json[b-5bnc72me7e]::-webkit-scrollbar-thumb {
    background: var(--brand-400);
    border-radius: 3px;
}
/* ========================================
   Load More Button
   ======================================== */

.load-more-item[b-5bnc72me7e] {
    margin-top: 0.5rem;
}

.btn-load-more[b-5bnc72me7e] {
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    padding: 0.625rem 1.5rem;
    color: #374151;
    font-weight: 600;
    font-size: 0.8125rem;
    cursor: pointer;
    transition: all 0.2s ease;
    width: 100%;
    max-width: 300px;
}

.btn-load-more:hover:not(:disabled)[b-5bnc72me7e] {
    background: #F9FAFB;
    border-color: #D1D5DB;
}

.btn-load-more:disabled[b-5bnc72me7e] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* ========================================
   Empty State
   ======================================== */

.empty-state[b-5bnc72me7e] {
    text-align: center;
    padding: 4rem 2rem;
    color: #9CA3AF;
}

.empty-state i[b-5bnc72me7e] {
    font-size: 3rem;
    margin-bottom: 1rem;
    color: #D1D5DB;
}

.empty-state p[b-5bnc72me7e] {
    font-size: 0.9375rem;
    margin: 0;
    color: #6B7280;
}

/* ========================================
   Responsive Design
   ======================================== */

@media (max-width: 768px) {
    .timeline-icon-wrapper[b-5bnc72me7e] {
        width: 40px;
    }

    .timeline-icon[b-5bnc72me7e] {
        width: 28px;
        height: 28px;
        font-size: 0.75rem;
    }

    .timeline-item:not(:last-child) .timeline-icon-wrapper[b-5bnc72me7e]::after {
        left: 14px;
    }

    .activity-card[b-5bnc72me7e] {
        margin-right: 0.5rem;
    }

    .activity-header[b-5bnc72me7e] {
        flex-direction: column;
        align-items: flex-start;
    }
}
/* /Components/Pages/Underwriting/Tabs/ApplicationDocumentsTab.razor.rz.scp.css */
/* ========================================
   Documents Tab - Email Client Style
   ======================================== */

/* ========================================
   Tab Animations
   ======================================== */
@keyframes fadeInUp-b-svcu2oi0i3 {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn-b-svcu2oi0i3 {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideInLeft-b-svcu2oi0i3 {
    from {
        opacity: 0;
        transform: translateX(-15px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideInRight-b-svcu2oi0i3 {
    from {
        opacity: 0;
        transform: translateX(15px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.documents-tab[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 500px;
    background: var(--bg-surface, #fff);
    border-radius: 12px;
    border: 1px solid var(--border-light);
    overflow: hidden;
    animation: fadeInUp-b-svcu2oi0i3 0.4s ease-out;
}

/* Toolbar */
.documents-toolbar[b-svcu2oi0i3] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-light);
    gap: 1rem;
    animation: fadeIn-b-svcu2oi0i3 0.35s ease-out;
}

.toolbar-left[b-svcu2oi0i3],
.toolbar-right[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.btn-toolbar[b-svcu2oi0i3] {
    width: 36px;
    height: 36px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    color: var(--text-secondary, #64748b);
    border-radius: 8px;
    transition: all 0.15s ease;
    cursor: pointer;
}

.btn-toolbar:hover[b-svcu2oi0i3] {
    background: var(--neutral-200);
    color: var(--text-primary, #0f172a);
}

.toolbar-divider[b-svcu2oi0i3] {
    width: 1px;
    height: 24px;
    background: var(--border-light);
    margin: 0 0.25rem;
}

.document-count[b-svcu2oi0i3] {
    font-size: 0.8125rem;
    color: var(--text-muted, #94a3b8);
}

.btn-upload[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    background: var(--brand-500);
    color: white;
    border: none;
    border-radius: 8px;
    transition: all 0.15s ease;
    cursor: pointer;
}

.btn-upload:hover[b-svcu2oi0i3] {
    background: var(--brand-600);
}

/* Copy from Policy button */
.btn-copy-policy[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    background: white;
    color: var(--brand-600);
    border: 1px solid var(--brand-300);
    border-radius: 8px;
    transition: all 0.15s ease;
    cursor: pointer;
}

.btn-copy-policy:hover[b-svcu2oi0i3] {
    background: var(--brand-50);
    border-color: var(--brand-400);
}

/* Loading */
.loading-container[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    padding: 3rem;
    gap: 1rem;
}

.loading-container p[b-svcu2oi0i3] {
    font-size: 0.875rem;
    color: var(--text-muted, #94a3b8);
    margin: 0;
}

/* Main Container */
.documents-container[b-svcu2oi0i3] {
    display: flex;
    flex: 1;
    overflow: hidden;
}

/* Left Sidebar */
.documents-sidebar[b-svcu2oi0i3] {
    width: 340px;
    min-width: 340px;
    border-right: 1px solid var(--border-light);
    display: flex;
    flex-direction: column;
    background: white;
    animation: slideInLeft-b-svcu2oi0i3 0.4s ease-out 0.1s backwards;
}

/* Type Tabs */
.type-tabs[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 0.75rem;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-light);
  /*  max-height: 200px;*/
    overflow-y: auto;
}

.type-tab[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    font-size: 0.8125rem;
    font-weight: 500;
    background: white;
    color: var(--text-secondary, #64748b);
    border: 1px solid var(--border-light);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
    text-align: left;
}

.type-tab:hover[b-svcu2oi0i3] {
    border-color: var(--brand-300);
    color: var(--brand-600);
}

.type-tab.active[b-svcu2oi0i3] {
    background: var(--brand-50);
    border-color: var(--brand-300);
    color: var(--brand-600);
}

.type-tab .tab-count[b-svcu2oi0i3] {
    margin-left: auto;
    padding: 0.125rem 0.5rem;
    font-size: 0.6875rem;
    font-weight: 600;
    background: var(--neutral-200);
    border-radius: 10px;
}

.type-tab.active .tab-count[b-svcu2oi0i3] {
    background: var(--brand-100);
}

/* Drag and Drop - Document Type Change */
.type-tab.drop-target[b-svcu2oi0i3] {
    border: 2px dashed var(--brand-400);
    background: rgba(59, 130, 246, 0.05);
    transition: all 0.2s ease;
}

.type-tab.drag-over[b-svcu2oi0i3] {
    background: rgba(59, 130, 246, 0.15);
    transform: scale(1.02);
    border-color: var(--brand-500);
    box-shadow: 0 0 8px rgba(59, 130, 246, 0.3);
}

.type-tab.drop-target .tab-count[b-svcu2oi0i3] {
    background: var(--brand-100);
}

/* Status Filter Pills */
.status-filters[b-svcu2oi0i3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
    padding: 0.75rem;
    border-bottom: 1px solid var(--border-light);
}

.status-pill[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.625rem;
    font-size: 0.6875rem;
    font-weight: 500;
    background: white;
    color: var(--text-secondary, #64748b);
    border: 1px solid var(--border-light);
    border-radius: 20px;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.15s ease;
}

.status-pill:hover[b-svcu2oi0i3] {
    background: var(--neutral-100);
}

.status-pill.active[b-svcu2oi0i3] {
    background: var(--neutral-800);
    color: white;
    border-color: var(--neutral-800);
}

.status-dot[b-svcu2oi0i3] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
}

.status-pill.pending .status-dot[b-svcu2oi0i3] { background: #f59e0b; }
.status-pill.approved .status-dot[b-svcu2oi0i3] { background: var(--success-500); }
.status-pill.rejected .status-dot[b-svcu2oi0i3] { background: #ef4444; }

.status-pill.awaiting-signature[b-svcu2oi0i3] {
    color: var(--text-secondary, #64748b);
}

.status-pill.awaiting-signature i[b-svcu2oi0i3] {
    color: #f59e0b;
}

.status-pill.awaiting-signature.active[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: white;
    border-color: #f59e0b;
}

.status-pill.awaiting-signature.active i[b-svcu2oi0i3] {
    color: white;
}

.status-pill.signed[b-svcu2oi0i3] {
    color: var(--text-secondary, #64748b);
}

.status-pill.signed i[b-svcu2oi0i3] {
    color: var(--success-500);
}

.status-pill.signed.active[b-svcu2oi0i3] {
    background: linear-gradient(135deg, var(--success-500) 0%, var(--success-600) 100%);
    color: white;
    border-color: var(--success-500);
}

.status-pill.signed.active i[b-svcu2oi0i3] {
    color: white;
}

/* ========================================
   VERA Check Status Filters
   ======================================== */
.vera-status-filters[b-svcu2oi0i3] {
    padding: 0.75rem;
    background: linear-gradient(135deg, rgba(22, 163, 74, 0.03) 0%, rgba(22, 163, 74, 0.06) 100%);
    border-bottom: 1px solid var(--border-light);
    border-top: 1px dashed rgba(22, 163, 74, 0.2);
}

.vera-filter-header[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--success-600);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.5rem;
}

.vera-filter-header i[b-svcu2oi0i3] {
    font-size: 0.75rem;
}

.vera-filter-pills[b-svcu2oi0i3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
}

.vera-pill[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.625rem;
    font-size: 0.6875rem;
    font-weight: 500;
    background: white;
    color: var(--text-secondary, #64748b);
    border: 1px solid var(--border-light);
    border-radius: 20px;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.15s ease;
}

.vera-pill:hover[b-svcu2oi0i3] {
    background: var(--neutral-100);
}

.vera-pill.active[b-svcu2oi0i3] {
    background: var(--neutral-800);
    color: white;
    border-color: var(--neutral-800);
}

.vera-pill-count[b-svcu2oi0i3] {
    padding: 0.0625rem 0.375rem;
    font-size: 0.5625rem;
    font-weight: 600;
    background: rgba(0, 0, 0, 0.1);
    border-radius: 10px;
}

.vera-pill.active .vera-pill-count[b-svcu2oi0i3] {
    background: rgba(255, 255, 255, 0.2);
}

/* Verified pill */
.vera-pill.verified i[b-svcu2oi0i3] {
    color: var(--success-600);
}

.vera-pill.verified.active[b-svcu2oi0i3] {
    background: linear-gradient(135deg, var(--success-500) 0%, var(--success-600) 100%);
    border-color: var(--success-600);
}

.vera-pill.verified.active i[b-svcu2oi0i3] {
    color: white;
}

/* Not Verified pill */
.vera-pill.not-verified i[b-svcu2oi0i3] {
    color: var(--error-600);
}

.vera-pill.not-verified.active[b-svcu2oi0i3] {
    background: linear-gradient(135deg, var(--error-500) 0%, var(--error-600) 100%);
    border-color: var(--error-600);
}

.vera-pill.not-verified.active i[b-svcu2oi0i3] {
    color: white;
}

/* Pending Review pill */
.vera-pill.pending-review i[b-svcu2oi0i3] {
    color: #d97706;
}

.vera-pill.pending-review.active[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    border-color: #d97706;
}

.vera-pill.pending-review.active i[b-svcu2oi0i3] {
    color: white;
}

/* Document List */
.document-list[b-svcu2oi0i3] {
    flex: 1;
    overflow-y: auto;
}

.document-list-item[b-svcu2oi0i3] {
    display: flex;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--neutral-100);
    cursor: pointer;
    transition: background 0.15s ease;
}

.document-list-item:hover[b-svcu2oi0i3] {
    background: var(--neutral-50);
}

.document-list-item.selected[b-svcu2oi0i3] {
    background: var(--brand-50);
    border-left: 3px solid var(--brand-500);
    padding-left: calc(1rem - 3px);
}

.document-list-item.pending[b-svcu2oi0i3] {
    background: linear-gradient(90deg, #fef3c7 0%, white 10%);
}

.document-list-item.pending.selected[b-svcu2oi0i3] {
    background: var(--brand-50);
}

/* VERA Check Status Highlighting */
.document-list-item.vera-verified[b-svcu2oi0i3] {
    background: linear-gradient(90deg, rgba(22, 163, 74, 0.08) 0%, white 15%);
    border-left: 3px solid var(--success-600);
    padding-left: calc(1rem - 3px);
}

.document-list-item.vera-verified:hover[b-svcu2oi0i3] {
    background: linear-gradient(90deg, rgba(22, 163, 74, 0.12) 0%, var(--neutral-50) 15%);
}

.document-list-item.vera-verified.selected[b-svcu2oi0i3] {
    background: var(--brand-50);
    border-left: 3px solid var(--brand-500);
}

.document-list-item.vera-not-verified[b-svcu2oi0i3] {
    background: linear-gradient(90deg, rgba(220, 38, 38, 0.06) 0%, white 15%);
    border-left: 3px solid var(--error-600);
    padding-left: calc(1rem - 3px);
}

.document-list-item.vera-not-verified:hover[b-svcu2oi0i3] {
    background: linear-gradient(90deg, rgba(220, 38, 38, 0.10) 0%, var(--neutral-50) 15%);
}

.document-list-item.vera-not-verified.selected[b-svcu2oi0i3] {
    background: var(--brand-50);
    border-left: 3px solid var(--brand-500);
}

.document-list-item.vera-pending[b-svcu2oi0i3] {
    background: linear-gradient(90deg, rgba(217, 119, 6, 0.06) 0%, white 15%);
    border-left: 3px solid #d97706;
    padding-left: calc(1rem - 3px);
}

.document-list-item.vera-pending:hover[b-svcu2oi0i3] {
    background: linear-gradient(90deg, rgba(217, 119, 6, 0.10) 0%, var(--neutral-50) 15%);
}

.document-list-item.vera-pending.selected[b-svcu2oi0i3] {
    background: var(--brand-50);
    border-left: 3px solid var(--brand-500);
}

/* Draggable Document Items */
.document-list-item.draggable[b-svcu2oi0i3] {
    cursor: grab;
}

.document-list-item.draggable:active[b-svcu2oi0i3] {
    cursor: grabbing;
}

.document-list-item.dragging[b-svcu2oi0i3] {
    opacity: 0.5;
    cursor: grabbing;
    border: 2px dashed var(--brand-400);
    background: rgba(59, 130, 246, 0.05);
}

/* VERA Indicator Badge in document footer */
.vera-indicator[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.6875rem;
    padding: 0.125rem;
    border-radius: 4px;
}

.vera-indicator-verified[b-svcu2oi0i3] {
    color: var(--success-600);
}

.vera-indicator-not-verified[b-svcu2oi0i3] {
    color: var(--error-600);
}

.vera-indicator-pending[b-svcu2oi0i3] {
    color: #d97706;
}

.document-list-item.shared[b-svcu2oi0i3] {
    position: relative;
}

.document-item-icon[b-svcu2oi0i3] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    font-size: 1.125rem;
    flex-shrink: 0;
}

/* Document Type Colors */
.type-financial[b-svcu2oi0i3] { background: #dbeafe; color: #2563eb; }
.type-legal[b-svcu2oi0i3] { background: #fce7f3; color: #db2777; }
.type-insurance[b-svcu2oi0i3] { background: #d1fae5; color: #059669; }
.type-property[b-svcu2oi0i3] { background: #e0f2fe; color: #0284c7; }
.type-environmental[b-svcu2oi0i3] { background: #dcfce7; color: var(--success-600); }
.type-identity[b-svcu2oi0i3] { background: #fef3c7; color: #d97706; }
.type-other[b-svcu2oi0i3] { background: #f1f5f9; color: #64748b; }

.document-item-content[b-svcu2oi0i3] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.document-item-header[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.document-item-name[b-svcu2oi0i3] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.shared-icon[b-svcu2oi0i3] {
    font-size: 0.75rem;
    color: var(--brand-500);
    margin-left: 0.25rem;
}

/* Shared document indicator in list */
.document-list-item.shared[b-svcu2oi0i3] {
    border-left: 3px solid var(--brand-500);
}

.document-list-item.shared .document-item-icon[b-svcu2oi0i3] {
    position: relative;
}

.document-list-item.shared .document-item-icon[b-svcu2oi0i3]::after {
    content: '';
    position: absolute;
    bottom: -2px;
    right: -2px;
    width: 10px;
    height: 10px;
    background: var(--brand-500);
    border-radius: 50%;
    border: 2px solid white;
}

.document-item-meta[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
    color: var(--text-muted, #94a3b8);
}

.document-item-type[b-svcu2oi0i3] {
    color: var(--text-secondary, #64748b);
}

.document-item-footer[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 0.125rem;
}

.document-item-date[b-svcu2oi0i3] {
    font-size: 0.6875rem;
    color: var(--text-muted, #94a3b8);
}

/* Status Badges */
.badge-status[b-svcu2oi0i3] {
    font-size: 0.625rem;
    font-weight: 600;
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.badge-pending[b-svcu2oi0i3] { background: #fef3c7; color: #b45309; }
.badge-approved[b-svcu2oi0i3] { background: #dcfce7; color: var(--success-600); }
.badge-rejected[b-svcu2oi0i3] { background: #fee2e2; color: var(--error-600); }
.badge-default[b-svcu2oi0i3] { background: #f1f5f9; color: #64748b; }

.badge-status-lg[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    padding: 0.25rem 0.625rem;
}

.badge-type[b-svcu2oi0i3] {
    font-size: 0.75rem;
    font-weight: 500;
    padding: 0.25rem 0.625rem;
    background: var(--neutral-100);
    color: var(--text-secondary, #64748b);
    border-radius: 6px;
}

.badge-shared[b-svcu2oi0i3] {
    font-size: 0.75rem;
    font-weight: 500;
    padding: 0.25rem 0.625rem;
    background: var(--brand-100);
    color: var(--brand-600);
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

/* Empty States */
.empty-list[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 1rem;
    color: var(--text-muted, #94a3b8);
    text-align: center;
    gap: 0.75rem;
}

.empty-list i[b-svcu2oi0i3] {
    font-size: 2rem;
    opacity: 0.5;
}

.btn-clear-filter[b-svcu2oi0i3] {
    padding: 0.375rem 0.75rem;
    font-size: 0.8125rem;
    background: transparent;
    color: var(--brand-600);
    border: 1px solid var(--brand-300);
    border-radius: 6px;
    cursor: pointer;
    margin-top: 0.5rem;
}

.btn-clear-filter:hover[b-svcu2oi0i3] {
    background: var(--brand-50);
}

/* Right Panel - Document Detail */
.document-detail[b-svcu2oi0i3] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: white;
}

.detail-header[b-svcu2oi0i3] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid var(--border-light);
    background: var(--neutral-50);
}

.btn-back-mobile[b-svcu2oi0i3] {
    display: none;
    width: 36px;
    height: 36px;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--text-secondary, #64748b);
    border-radius: 8px;
    cursor: pointer;
}

.detail-header-content[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex: 1;
    min-width: 0;
}

.detail-icon[b-svcu2oi0i3] {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.detail-info[b-svcu2oi0i3] {
    flex: 1;
    min-width: 0;
}

.detail-filename[b-svcu2oi0i3] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    margin: 0 0 0.5rem 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.detail-meta[b-svcu2oi0i3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.detail-actions[b-svcu2oi0i3] {
    display: flex;
    gap: 0.5rem;
    flex-shrink: 0;
}

.btn-action-primary[b-svcu2oi0i3],
.btn-action-secondary[b-svcu2oi0i3] {
    height: 36px;
    padding: 0 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
    font-size: 0.8125rem;
    font-weight: 500;
}

.btn-action-primary[b-svcu2oi0i3] {
    background: var(--brand-500);
    color: white;
}

.btn-action-primary:hover[b-svcu2oi0i3] {
    background: var(--brand-600);
}

.btn-action-secondary[b-svcu2oi0i3] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.btn-action-secondary:hover[b-svcu2oi0i3] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-action-danger[b-svcu2oi0i3] {
    height: 36px;
    padding: 0 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
    font-size: 0.8125rem;
    font-weight: 500;
    background: white;
    color: var(--danger-500);
    border: 1px solid var(--danger-200);
}

.btn-action-danger:hover[b-svcu2oi0i3] {
    background: var(--danger-50);
    color: var(--error-600);
    border-color: var(--danger-300);
}

/* Move to Dropdown */
.move-to-dropdown[b-svcu2oi0i3] {
    display: inline-block;
}

.move-to-dropdown .dropdown-toggle[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    height: 36px;
    padding: 0 12px;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
    font-size: 0.8125rem;
    font-weight: 500;
    background: white;
    color: var(--text-secondary, #64748b);
    border: 1px solid var(--border-light);
}

.move-to-dropdown .dropdown-toggle:hover[b-svcu2oi0i3] {
    background: var(--neutral-100);
    color: var(--text-primary, #0f172a);
}

.move-to-dropdown .dropdown-toggle:disabled[b-svcu2oi0i3] {
    opacity: 0.6;
    cursor: not-allowed;
}

.move-to-dropdown .dropdown-menu[b-svcu2oi0i3] {
    min-width: 220px;
    padding: 0.5rem 0;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    border: 1px solid var(--border-light);
}

.move-to-dropdown .dropdown-header[b-svcu2oi0i3] {
    font-size: 0.75rem;
    padding: 0.5rem 1rem;
    color: var(--warning-600);
}

.move-to-dropdown .dropdown-item[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
    transition: background 0.15s ease;
    border: none;
    background: transparent;
    width: 100%;
    text-align: left;
    cursor: pointer;
    color: var(--text-primary, #0f172a);
}

.move-to-dropdown .dropdown-item:hover[b-svcu2oi0i3] {
    background: var(--neutral-100);
}

.move-to-dropdown .dropdown-item i[b-svcu2oi0i3] {
    width: 1.25rem;
    text-align: center;
    color: var(--text-secondary, #64748b);
}

/* Detail Body */
.detail-body[b-svcu2oi0i3] {
    flex: 1;
    overflow-y: auto;
    padding: 1.5rem;
}

.info-section[b-svcu2oi0i3] {
    margin-bottom: 1.5rem;
}

.section-title[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    margin: 0 0 1rem 0;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--border-light);
}

.info-grid[b-svcu2oi0i3] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

/* Compact mode for PDF preview */
.detail-body.compact-mode[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    flex: 1;
    overflow: hidden;
}

.info-section.compact[b-svcu2oi0i3] {
    margin-bottom: 0.75rem;
    flex-shrink: 0;
}

.info-section.compact .section-title[b-svcu2oi0i3] {
    font-size: 0.75rem;
    margin-bottom: 0.5rem;
    padding-bottom: 0.25rem;
}

.info-grid-compact[b-svcu2oi0i3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.5rem;
}

.info-grid-compact .info-item[b-svcu2oi0i3] {
    flex-direction: row;
    gap: 0.5rem;
    align-items: center;
}

.info-grid-compact .info-label[b-svcu2oi0i3] {
    font-size: 0.6875rem;
    text-transform: uppercase;
}

.info-grid-compact .info-value[b-svcu2oi0i3] {
    font-size: 0.8125rem;
}

.compact-mode .info-section:last-of-type[b-svcu2oi0i3] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.compact-mode .document-preview-frame[b-svcu2oi0i3] {
    flex: 1;
    min-height: 300px;
}

.compact-mode .preview-iframe[b-svcu2oi0i3] {
    height: 100%;
    min-height: 500px;
    background: #ffffff;
}

.info-item[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.info-label[b-svcu2oi0i3] {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-muted, #94a3b8);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.info-value[b-svcu2oi0i3] {
    font-size: 0.875rem;
    color: var(--text-primary, #0f172a);
}

.review-notes-content[b-svcu2oi0i3] {
    padding: 1rem;
    background: var(--neutral-50);
    border-radius: 8px;
    font-size: 0.875rem;
    color: var(--text-secondary, #64748b);
    line-height: 1.6;
    font-family: 'Georgia', serif;
    white-space: pre-wrap;
}

/* ========================================
   VERAcheck Status Panel
   ======================================== */
.veracheck-status-section[b-svcu2oi0i3] {
    background: linear-gradient(135deg, rgba(22, 163, 74, 0.02) 0%, rgba(22, 163, 74, 0.05) 100%);
    border-radius: 8px;
    padding: 1rem;
    border: 1px solid rgba(22, 163, 74, 0.15);
}

.veracheck-status-section .section-title[b-svcu2oi0i3] {
    color: var(--success-600);
    border-bottom-color: rgba(22, 163, 74, 0.2);
}

.veracheck-status-panel[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.veracheck-status-row[b-svcu2oi0i3] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.veracheck-status-row:last-child[b-svcu2oi0i3] {
    border-bottom: none;
}

.veracheck-label[b-svcu2oi0i3] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary, #64748b);
}

.veracheck-value[b-svcu2oi0i3] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
}

.veracheck-error-row[b-svcu2oi0i3] {
    display: flex;
    align-items: flex-start;
    gap: 0.375rem;
    padding: 0.625rem;
    background: rgba(220, 38, 38, 0.05);
    border-radius: 6px;
    margin-top: 0.5rem;
}

.veracheck-error-row small[b-svcu2oi0i3] {
    line-height: 1.4;
}

.veracheck-override-notice[b-svcu2oi0i3] {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    padding: 8px 10px;
    background: #EFF6FF;
    border: 1px solid #BFDBFE;
    border-radius: 6px;
    margin-top: 8px;
    font-size: 0.72rem;
    color: #1E40AF;
    line-height: 1.4;
}

.veracheck-override-notice i[b-svcu2oi0i3] {
    font-size: 0.8rem;
    flex-shrink: 0;
    margin-top: 1px;
}

/* Document Preview */
.document-preview-frame[b-svcu2oi0i3] {
    border: 1px solid var(--border-light);
    border-radius: 8px;
    overflow: hidden;
    background: var(--neutral-100);
}

.preview-image[b-svcu2oi0i3] {
    width: 100%;
    max-height: 400px;
    object-fit: contain;
}

.preview-iframe[b-svcu2oi0i3] {
    width: 100%;
    height: 400px;
    border: none;
    background: #ffffff;
    display: block;
}

/* PDF Fallback */
.pdf-fallback[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 1.5rem;
    text-align: center;
    background: #ffffff;
    min-height: 300px;
}

.pdf-fallback i[b-svcu2oi0i3] {
    font-size: 3rem;
    color: var(--danger-500);
    margin-bottom: 1rem;
}

.pdf-fallback p[b-svcu2oi0i3] {
    font-size: 0.9375rem;
    color: var(--text-secondary, #64748b);
    margin: 0 0 1rem 0;
}

/* Review Actions */
.review-actions[b-svcu2oi0i3] {
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--border-light);
    background: var(--neutral-50);
}

.review-actions-header[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.75rem;
}

.review-actions-buttons[b-svcu2oi0i3] {
    display: flex;
    gap: 0.75rem;
}

.btn-approve[b-svcu2oi0i3],
.btn-reject[b-svcu2oi0i3] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-approve[b-svcu2oi0i3] {
    background: var(--success-500);
    color: white;
}

.btn-approve:hover[b-svcu2oi0i3] {
    background: var(--success-600);
}

.btn-reject[b-svcu2oi0i3] {
    background: var(--error-500);
    color: white;
}

.btn-reject:hover[b-svcu2oi0i3] {
    background: var(--error-600);
}

/* Detail Empty State */
.detail-empty[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    padding: 3rem;
    text-align: center;
    color: var(--text-muted, #94a3b8);
}

.detail-empty i[b-svcu2oi0i3] {
    font-size: 3rem;
    margin-bottom: 1rem;
    opacity: 0.5;
}

.detail-empty h4[b-svcu2oi0i3] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.5rem;
}

.detail-empty p[b-svcu2oi0i3] {
    font-size: 0.875rem;
    margin: 0;
}

/* Modal Styles */
.modal-overlay[b-svcu2oi0i3] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1.5rem;
}

.upload-modal[b-svcu2oi0i3],
.review-modal[b-svcu2oi0i3],
.share-modal[b-svcu2oi0i3] {
    width: 100%;
    max-width: 500px;
    max-height: 90vh;
    background: white;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    animation: modalSlideIn-b-svcu2oi0i3 0.3s ease-out;
}

@keyframes modalSlideIn-b-svcu2oi0i3 {
    from {
        opacity: 0;
        transform: translateY(-20px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Upload modal - larger size for signature options */
.upload-modal[b-svcu2oi0i3] {
    max-width: 560px;
    min-height: 400px;
    max-height: 90vh;
    overflow: visible;
}

.review-modal[b-svcu2oi0i3],
.share-modal[b-svcu2oi0i3] {
    overflow: hidden;
}

.modal-header[b-svcu2oi0i3] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 1px solid #EEF2F6;
    background: #fff;
    border-radius: 16px 16px 0 0;
}

.modal-header h3[b-svcu2oi0i3] {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    font-size: 1.05rem;
    font-weight: 700;
    margin: 0;
    align-self: center;
    color: #0F172A;
}

.btn-close-modal[b-svcu2oi0i3] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    color: var(--text-muted, #94a3b8);
    border-radius: 8px;
    cursor: pointer;
    flex-shrink: 0;
}

.btn-close-modal:hover[b-svcu2oi0i3] {
    background: #F1F5F9;
    color: #0F172A;
}

.modal-body[b-svcu2oi0i3] {
    flex: 1;
    overflow-y: auto;
    padding: 1.15rem 1.5rem;
}

/* Upload modal body - allow scrolling with proper overflow for dropdown */
.upload-modal .modal-body[b-svcu2oi0i3] {
    overflow-y: auto;
    overflow-x: visible;
    max-height: calc(95vh - 180px);
    padding: 1.5rem;
    scrollbar-width: thin;
    scrollbar-color: var(--neutral-300) transparent;
}

.upload-modal .modal-body[b-svcu2oi0i3]::-webkit-scrollbar {
    width: 6px;
}

.upload-modal .modal-body[b-svcu2oi0i3]::-webkit-scrollbar-track {
    background: transparent;
}

.upload-modal .modal-body[b-svcu2oi0i3]::-webkit-scrollbar-thumb {
    background: var(--neutral-300);
    border-radius: 3px;
}

.upload-modal .modal-body[b-svcu2oi0i3]::-webkit-scrollbar-thumb:hover {
    background: var(--neutral-400);
}

.modal-footer[b-svcu2oi0i3] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

/* Review Modal Specific */
.review-document-info[b-svcu2oi0i3],
.share-document-info[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: var(--neutral-50);
    border-radius: 10px;
    margin-bottom: 1.25rem;
}

.review-doc-icon[b-svcu2oi0i3],
.share-doc-icon[b-svcu2oi0i3] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border-radius: 10px;
    font-size: 1.25rem;
    color: var(--brand-500);
}

.review-doc-name[b-svcu2oi0i3],
.share-doc-name[b-svcu2oi0i3] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
}

.review-doc-meta[b-svcu2oi0i3],
.share-doc-meta[b-svcu2oi0i3] {
    font-size: 0.8125rem;
    color: var(--text-muted, #94a3b8);
}

.review-notes-input label[b-svcu2oi0i3] {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.5rem;
}

.review-notes-input textarea[b-svcu2oi0i3] {
    width: 100%;
    padding: 0.75rem;
    border: 1px solid var(--border-light);
    border-radius: 8px;
    font-size: 0.875rem;
    resize: vertical;
}

.review-notes-input textarea:focus[b-svcu2oi0i3] {
    outline: none;
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

/* Share Modal Specific */
.share-target-section[b-svcu2oi0i3] {
    margin-bottom: 1.25rem;
}

.section-label[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.75rem;
}

/* Share Group Options (Radio Buttons) */
.share-group-options[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.share-group-option[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: var(--neutral-50);
    border: 2px solid var(--border-light);
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.share-group-option:hover[b-svcu2oi0i3] {
    background: white;
    border-color: var(--brand-300);
}

.share-group-option.selected[b-svcu2oi0i3] {
    background: var(--brand-50);
    border-color: var(--brand-500);
}

.share-group-option input[type="checkbox"][b-svcu2oi0i3] {
    width: 18px;
    height: 18px;
    accent-color: var(--brand-500);
    cursor: pointer;
}

.share-group-option .option-content[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    flex: 1;
}

.share-group-option .option-content i[b-svcu2oi0i3] {
    display: none;
}

.share-group-option .option-label[b-svcu2oi0i3] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
}

.share-group-option .option-desc[b-svcu2oi0i3] {
    font-size: 0.75rem;
    color: var(--text-muted, #94a3b8);
}

.share-group-option.selected .option-label[b-svcu2oi0i3] {
    color: var(--brand-700);
}

/* Already shared state */
.share-group-option.already-shared[b-svcu2oi0i3] {
    background: var(--success-50);
    border-color: var(--success-300);
    cursor: default;
}

.share-group-option.already-shared .option-label[b-svcu2oi0i3] {
    color: var(--success-700);
}

.share-group-option.already-shared .option-desc[b-svcu2oi0i3] {
    color: var(--success-600);
}

.share-group-option.already-shared input[type="checkbox"][b-svcu2oi0i3] {
    accent-color: var(--success-500);
}

.shared-badge[b-svcu2oi0i3] {
    color: var(--success-500);
    font-size: 1.125rem;
}

.share-complete-notice[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem;
    background: var(--success-50);
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--success-700);
    margin-top: 0.5rem;
}

.share-complete-notice i[b-svcu2oi0i3] {
    font-size: 1rem;
}

/* Legacy share-role styles removed - not used */

/* Modal Buttons */
.btn-cancel[b-svcu2oi0i3] {
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    cursor: pointer;
}

.btn-cancel:hover[b-svcu2oi0i3] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-approve-submit[b-svcu2oi0i3],
.btn-reject-submit[b-svcu2oi0i3],
.btn-share-submit[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: white;
    border: none;
    border-radius: 10px;
    cursor: pointer;
}

.btn-approve-submit[b-svcu2oi0i3] {
    background: var(--success-600, #059669);
}

.btn-approve-submit:hover:not(:disabled)[b-svcu2oi0i3] {
    background: var(--success-700, #047857);
}

.btn-reject-submit[b-svcu2oi0i3] {
    background: var(--error-600, #DC2626);
}

.btn-reject-submit:hover:not(:disabled)[b-svcu2oi0i3] {
    background: var(--error-700, #B91C1C);
}

.btn-share-submit[b-svcu2oi0i3] {
    background: var(--brand-600, #004980);
}

.btn-share-submit:hover:not(:disabled)[b-svcu2oi0i3] {
    background: var(--brand-700, #003760);
}

.btn-approve-submit:disabled[b-svcu2oi0i3],
.btn-reject-submit:disabled[b-svcu2oi0i3],
.btn-share-submit:disabled[b-svcu2oi0i3] {
    background: var(--neutral-300);
    cursor: not-allowed;
}

/* Delete Confirmation Modal */
.delete-document-info[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: var(--neutral-50);
    border-radius: 10px;
    text-align: left;
    margin-bottom: 1.5rem;
}

.delete-doc-icon[b-svcu2oi0i3] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border-radius: 10px;
    font-size: 1.25rem;
    color: var(--danger-500);
}

.delete-doc-name[b-svcu2oi0i3] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
}

.delete-doc-meta[b-svcu2oi0i3] {
    font-size: 0.8125rem;
    color: var(--text-muted, #94a3b8);
}

/* Responsive */
@media (max-width: 768px) {
    .documents-toolbar[b-svcu2oi0i3] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .toolbar-left[b-svcu2oi0i3],
    .toolbar-right[b-svcu2oi0i3] {
        width: 100%;
        justify-content: space-between;
    }

    .documents-sidebar[b-svcu2oi0i3] {
        width: 100%;
        min-width: 100%;
        transition: transform 0.3s ease;
    }

    .documents-sidebar.has-selection[b-svcu2oi0i3] {
        transform: translateX(-100%);
        position: absolute;
    }

    .document-detail[b-svcu2oi0i3] {
        position: absolute;
        top: 0;
        left: 100%;
        width: 100%;
        height: 100%;
        transition: transform 0.3s ease;
    }

    .document-detail.visible[b-svcu2oi0i3] {
        transform: translateX(-100%);
    }

    .btn-back-mobile[b-svcu2oi0i3] {
        display: flex;
    }

    .type-tabs[b-svcu2oi0i3] {
        max-height: 150px;
    }

    .info-grid[b-svcu2oi0i3] {
        grid-template-columns: 1fr;
    }

    
    .detail-header-content[b-svcu2oi0i3] {
        flex-direction: column;
        align-items: flex-start;
    }

    .detail-actions[b-svcu2oi0i3] {
        margin-top: 0.75rem;
    }
}

/* ========================================
   Signature Status Styles
   ======================================== */

/* Signature Status Badges */
.badge-signature[b-svcu2oi0i3] {
    font-size: 0.7rem;
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

.badge-signature-lg[b-svcu2oi0i3] {
    font-size: 0.75rem;
    padding: 0.25rem 0.6rem;
}

.badge-signature-draft[b-svcu2oi0i3] {
    background: #e9ecef;
    color: #6c757d;
}

.badge-signature-pending[b-svcu2oi0i3] {
    background: #fff3cd;
    color: #856404;
}

.badge-signature-partial[b-svcu2oi0i3] {
    background: #cce5ff;
    color: #004085;
}

.badge-signature-completed[b-svcu2oi0i3] {
    background: #d4edda;
    color: #155724;
}

.badge-signature-declined[b-svcu2oi0i3] {
    background: #f8d7da;
    color: #721c24;
}

.badge-signature-expired[b-svcu2oi0i3] {
    background: #ffeeba;
    color: #856404;
}

.badge-signature-voided[b-svcu2oi0i3] {
    background: #e2e3e5;
    color: #383d41;
}

/* Legacy signature section styles removed - using .signature-section-enhanced instead */

/* ========================================
   Enhanced Signature Section Styles
   ======================================== */

.signature-section-enhanced[b-svcu2oi0i3] {
    background: linear-gradient(135deg, var(--neutral-50) 0%, #fff 100%);
    border: 1px solid var(--border-light);
    border-radius: 12px;
    overflow: hidden;
    animation: fadeInUp-b-svcu2oi0i3 0.3s ease-out;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.signature-section-header[b-svcu2oi0i3] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, var(--brand-50) 0%, #fff 100%);
    border-bottom: 1px solid var(--border-light);
    flex-wrap: wrap;
    gap: 0.75rem;
}

.signature-section-title[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-weight: 600;
    font-size: 0.9375rem;
    color: var(--text-primary, #0f172a);
}

.signature-section-title .help-link[b-svcu2oi0i3] {
    color: var(--text-tertiary, #94a3b8);
    text-decoration: none;
    font-size: 0.875rem;
    transition: color 0.2s;
    margin-left: auto;
}

.signature-section-title .help-link:hover[b-svcu2oi0i3] {
    color: var(--brand-500);
}

.signature-icon-wrapper[b-svcu2oi0i3] {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-600) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1rem;
    box-shadow: 0 2px 6px rgba(59, 130, 246, 0.3);
}

.signature-header-status[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.signature-status-badge[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.4rem 0.875rem;
    border-radius: 20px;
    font-size: 0.8125rem;
    font-weight: 600;
    transition: all 0.2s ease;
}

.signature-status-badge.badge-signature-pending[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
    color: #92400e;
    border: 1px solid #fcd34d;
}

.signature-status-badge.badge-signature-partial[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
    color: #1e40af;
    border: 1px solid #93c5fd;
}

.signature-status-badge.badge-signature-completed[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #dcfce7 0%, #bbf7d0 100%);
    color: #166534;
    border: 1px solid #86efac;
}

.signature-status-badge.badge-signature-declined[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #fee2e2 0%, #fecaca 100%);
    color: #991b1b;
    border: 1px solid #fca5a5;
}

.signature-status-badge.badge-signature-expired[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #f3f4f6 0%, #e5e7eb 100%);
    color: #4b5563;
    border: 1px solid #d1d5db;
}

.signature-status-badge.badge-signature-voided[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #f3f4f6 0%, #e5e7eb 100%);
    color: #6b7280;
    border: 1px solid #d1d5db;
}

.signature-expiry-badge[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.35rem 0.75rem;
    border-radius: 16px;
    font-size: 0.75rem;
    font-weight: 500;
    background: #fff7ed;
    color: #c2410c;
    border: 1px solid #fed7aa;
}

.signature-section-body[b-svcu2oi0i3] {
    padding: 1.25rem;
}

/* Signers Section */
.signers-section[b-svcu2oi0i3] {
    margin-bottom: 1.25rem;
}

.signers-header[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.signers-header i[b-svcu2oi0i3] {
    font-size: 0.9rem;
    color: var(--brand-500);
}

.signers-list-enhanced[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.signer-card[b-svcu2oi0i3] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.875rem 1rem;
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 10px;
    transition: all 0.2s ease;
}

.signer-card:hover[b-svcu2oi0i3] {
    border-color: var(--brand-200);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.signer-card.current-turn[b-svcu2oi0i3] {
    border-color: var(--success-400);
    background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
    box-shadow: 0 2px 8px rgba(34, 197, 94, 0.12);
}

.signer-card.signer-completed[b-svcu2oi0i3] {
    border-color: var(--success-300);
    background: linear-gradient(135deg, #f0fdf4 0%, #ffffff 100%);
}

.signer-card.signer-pending[b-svcu2oi0i3] {
    border-color: var(--warning-300);
    background: linear-gradient(135deg, #fffbeb 0%, #ffffff 100%);
}

.signer-card.signer-declined[b-svcu2oi0i3] {
    border-color: var(--danger-300);
    background: linear-gradient(135deg, #fef2f2 0%, #ffffff 100%);
}

.signer-card-left[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
}

.signer-avatar[b-svcu2oi0i3] {
    position: relative;
}

.signer-order-badge[b-svcu2oi0i3] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--brand-100) 0%, var(--brand-200) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--brand-700);
    border: 2px solid white;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.signer-card.signer-completed .signer-order-badge[b-svcu2oi0i3] {
    background: linear-gradient(135deg, var(--success-100) 0%, var(--success-200) 100%);
    color: var(--success-700);
}

.signer-info-enhanced[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.signer-name-enhanced[b-svcu2oi0i3] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--text-primary, #0f172a);
}

.signer-email[b-svcu2oi0i3] {
    font-size: 0.8rem;
    color: var(--text-muted, #64748b);
    font-weight: 400;
}

.signer-badges[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    flex-wrap: wrap;
}

.signer-role-badge[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    padding: 0.125rem 0.5rem;
    border-radius: 4px;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    background: var(--brand-100);
    color: var(--brand-700);
    width: fit-content;
}

/* Signing Method Badge */
.signer-method-badge[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.125rem 0.5rem;
    border-radius: 4px;
    font-size: 0.625rem;
    font-weight: 500;
    width: fit-content;
    cursor: help;
}

.signer-method-badge.method-embedded[b-svcu2oi0i3] {
    background: #dcfce7;
    color: #166534;
}

.signer-method-badge.method-remote[b-svcu2oi0i3] {
    background: #fef3c7;
    color: #92400e;
}

.signer-method-badge i[b-svcu2oi0i3] {
    font-size: 0.625rem;
}

/* Signed Via Indicator (shown after signing) */
.signer-signed-via[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 500;
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
}

.signer-signed-via.via-inapp[b-svcu2oi0i3] {
    color: #166534;
    background: #dcfce7;
}

.signer-signed-via.via-email[b-svcu2oi0i3] {
    color: #1e40af;
    background: #dbeafe;
}

.signer-signed-via i[b-svcu2oi0i3] {
    font-size: 0.625rem;
}

.signer-card-right[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
}

.signer-status-enhanced[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.25rem;
}

.signer-status-badge[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.3rem 0.625rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
}

.signer-status-badge.bg-success[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #dcfce7 0%, #bbf7d0 100%) !important;
    color: #166534 !important;
}

.signer-status-badge.bg-warning[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%) !important;
    color: #92400e !important;
}

.signer-status-badge.bg-danger[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #fee2e2 0%, #fecaca 100%) !important;
    color: #991b1b !important;
}

.signer-status-badge.bg-info[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%) !important;
    color: #1e40af !important;
}

.signer-date[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    color: var(--text-muted, #94a3b8);
}

.signer-date i[b-svcu2oi0i3] {
    font-size: 0.625rem;
}

/* Signature Validation Warnings */
.signature-validation-warning[b-svcu2oi0i3] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    line-height: 1.5;
    margin-bottom: 1rem;
    background: linear-gradient(135deg, #fef3c7 0%, #fef9c3 100%);
    border: 1px solid #fcd34d;
    color: #92400e;
}

.signature-validation-warning i[b-svcu2oi0i3] {
    font-size: 1rem;
    color: #d97706;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.signature-validation-warning span[b-svcu2oi0i3] {
    flex: 1;
}

.signature-validation-warning.approval-required[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
    border: 1px solid #fca5a5;
    color: #991b1b;
}

.signature-validation-warning.approval-required i[b-svcu2oi0i3] {
    color: var(--error-600);
}

/* Signature Actions Enhanced */
.signature-actions-enhanced[b-svcu2oi0i3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.625rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border-light);
}

.signature-action-btn[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.signature-action-btn:disabled[b-svcu2oi0i3] {
    opacity: 0.6;
    cursor: not-allowed;
}

.signature-action-btn.primary[b-svcu2oi0i3] {
    background: var(--brand-600);
    color: white;
}

.signature-action-btn.primary:hover:not(:disabled)[b-svcu2oi0i3] {
    background: var(--brand-700);
}

.signature-action-btn.success[b-svcu2oi0i3] {
    background: var(--success-600);
    color: white;
}

.signature-action-btn.success:hover:not(:disabled)[b-svcu2oi0i3] {
    background: var(--success-700);
}

.signature-action-btn.outline-primary[b-svcu2oi0i3] {
    background: white;
    color: var(--brand-600);
    border: 1px solid var(--brand-300);
}

.signature-action-btn.outline-primary:hover:not(:disabled)[b-svcu2oi0i3] {
    background: var(--brand-50);
    border-color: var(--brand-400);
}

.signature-action-btn.outline-danger[b-svcu2oi0i3] {
    background: white;
    color: var(--error-600);
    border: 1px solid #fca5a5;
}

.signature-action-btn.outline-danger:hover:not(:disabled)[b-svcu2oi0i3] {
    background: #fef2f2;
    border-color: #f87171;
}

.signature-action-btn.outline-success[b-svcu2oi0i3] {
    background: white;
    color: var(--success-600);
    border: 1px solid #86efac;
}

.signature-action-btn.outline-success:hover:not(:disabled)[b-svcu2oi0i3] {
    background: #f0fdf4;
    border-color: #4ade80;
}

.signature-action-btn.outline-secondary[b-svcu2oi0i3] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.signature-action-btn.outline-secondary:hover:not(:disabled)[b-svcu2oi0i3] {
    background: #F1F5F9;
    border-color: #E2E8F0;
    color: #0F172A;
}

.signature-action-btn.outline-info[b-svcu2oi0i3] {
    background: white;
    color: #0891b2;
    border: 1px solid #67e8f9;
}

.signature-action-btn.outline-info:hover:not(:disabled)[b-svcu2oi0i3] {
    background: #ecfeff;
    border-color: #22d3ee;
}

/* Pending Signature State */
.signature-pending[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 2rem 1.25rem;
    text-align: center;
}

.signature-pending-content[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.signature-pending-icon[b-svcu2oi0i3] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--brand-100) 0%, var(--brand-200) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: var(--brand-600);
    animation: pulse-b-svcu2oi0i3 2s infinite;
}

@keyframes pulse-b-svcu2oi0i3 {
    0%, 100% {
        transform: scale(1);
        opacity: 1;
    }
    50% {
        transform: scale(1.05);
        opacity: 0.9;
    }
}

.signature-pending-text[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.signature-pending-title[b-svcu2oi0i3] {
    font-weight: 600;
    font-size: 1rem;
    color: var(--text-primary, #0f172a);
}

.signature-pending-subtitle[b-svcu2oi0i3] {
    font-size: 0.875rem;
    color: var(--text-muted, #94a3b8);
}

/* ========================================
   Editable Signers List (E-Signature Status Panel)
   ======================================== */
.signers-list-editable[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.signer-card.editable[b-svcu2oi0i3] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1rem;
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    transition: all 0.2s ease;
}

.signer-card.editable:hover[b-svcu2oi0i3] {
    border-color: #93c5fd;
    box-shadow: 0 2px 8px rgba(59, 130, 246, 0.08);
}

.signer-card.editable.has-error[b-svcu2oi0i3] {
    border-color: #fca5a5;
    background: linear-gradient(135deg, #fef2f2 0%, #ffffff 100%);
}

.signer-card.editable.saving[b-svcu2oi0i3] {
    opacity: 0.7;
    pointer-events: none;
}

/* Reorder controls */
.signer-card-reorder[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    flex-shrink: 0;
}

.signer-move-btn[b-svcu2oi0i3] {
    width: 24px;
    height: 24px;
    padding: 0;
    border: 1px solid #e2e8f0;
    background: white;
    border-radius: 4px;
    color: #64748b;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease;
}

.signer-move-btn:hover:not(:disabled)[b-svcu2oi0i3] {
    background: #f1f5f9;
    border-color: #cbd5e1;
    color: #0f172a;
}

.signer-move-btn:disabled[b-svcu2oi0i3] {
    opacity: 0.3;
    cursor: not-allowed;
}

.signer-move-btn i[b-svcu2oi0i3] {
    font-size: 0.75rem;
}

/* Signer card content */
.signer-card-content[b-svcu2oi0i3] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.signer-type-row[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.signer-saving-indicator[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    color: #3b82f6;
}

.signer-saving-indicator .spinner-border[b-svcu2oi0i3] {
    width: 1rem;
    height: 1rem;
    border-width: 2px;
}

/* Inline input fields */
.signer-inline-fields[b-svcu2oi0i3] {
    display: flex;
    gap: 0.5rem;
}

.signer-inline-input[b-svcu2oi0i3] {
    flex: 1;
    min-width: 0;
    padding: 0.5rem 0.75rem !important;
    font-size: 0.875rem !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: white !important;
    color: #0f172a !important;
    height: 36px !important;
    box-sizing: border-box !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

.signer-inline-input:focus[b-svcu2oi0i3] {
    outline: none !important;
    border-color: #60a5fa !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.12) !important;
}

.signer-inline-input[b-svcu2oi0i3]::placeholder {
    color: #94a3b8 !important;
}

.signer-inline-input:disabled[b-svcu2oi0i3] {
    background: #f8fafc !important;
    cursor: not-allowed !important;
}

.signer-inline-input.input-invalid[b-svcu2oi0i3] {
    border-color: #ef4444 !important;
    background: #fef2f2 !important;
}

.signer-inline-input.input-invalid:focus[b-svcu2oi0i3] {
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.12) !important;
}

/* Inline error message */
.signer-inline-error[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    color: var(--error-600);
    padding-top: 0.125rem;
}

.signer-inline-error i[b-svcu2oi0i3] {
    font-size: 0.75rem;
    flex-shrink: 0;
}

/* Signer card actions */
.signer-card-actions[b-svcu2oi0i3] {
    flex-shrink: 0;
    display: flex;
    align-items: flex-start;
}

.signer-remove-btn[b-svcu2oi0i3] {
    width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid #fecaca;
    background: #fef2f2;
    border-radius: 6px;
    color: #ef4444;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease;
}

.signer-remove-btn:hover:not(:disabled)[b-svcu2oi0i3] {
    background: #fee2e2;
    border-color: #fca5a5;
    color: var(--error-600);
}

.signer-remove-btn:disabled[b-svcu2oi0i3] {
    opacity: 0.4;
    cursor: not-allowed;
}

.signer-remove-btn i[b-svcu2oi0i3] {
    font-size: 0.875rem;
}

/* Add signer buttons */
.add-signer-buttons[b-svcu2oi0i3] {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.btn-add-signer-inline[b-svcu2oi0i3],
.btn-add-myself-signer[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    font-size: 0.8125rem;
    font-weight: 500;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-add-signer-inline[b-svcu2oi0i3] {
    background: #eff6ff;
    color: #2563eb;
    border: 1px dashed #93c5fd;
}

.btn-add-signer-inline:hover:not(:disabled)[b-svcu2oi0i3] {
    background: #dbeafe;
    border-color: #60a5fa;
    border-style: solid;
}

.btn-add-myself-signer[b-svcu2oi0i3] {
    background: white;
    color: #475569;
    border: 1px solid #e2e8f0;
}

.btn-add-myself-signer:hover:not(:disabled)[b-svcu2oi0i3] {
    background: #f8fafc;
    border-color: #cbd5e1;
}

.btn-add-signer-inline:disabled[b-svcu2oi0i3],
.btn-add-myself-signer:disabled[b-svcu2oi0i3] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-add-signer-inline i[b-svcu2oi0i3],
.btn-add-myself-signer i[b-svcu2oi0i3] {
    font-size: 0.9375rem;
}

/* Inline signing mode selector */
.signing-mode-inline[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: #f8fafc;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
}

.signing-mode-inline.disabled[b-svcu2oi0i3] {
    opacity: 0.6;
    pointer-events: none;
}

.signing-mode-inline .signing-mode-label[b-svcu2oi0i3] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: #64748b;
    white-space: nowrap;
}

.signing-mode-chips[b-svcu2oi0i3] {
    display: flex;
    gap: 0.5rem;
}

.signing-mode-chip[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border: 1px solid var(--border-light);
    border-radius: 20px;
    cursor: pointer;
    transition: all 0.2s ease;
    background: white;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary, #64748b);
}

.signing-mode-chip:hover:not(.disabled)[b-svcu2oi0i3] {
    border-color: var(--brand-300);
    background: var(--brand-50);
    color: var(--brand-600);
}

.signing-mode-chip.selected[b-svcu2oi0i3] {
    border-color: var(--brand-500);
    background: var(--brand-500);
    color: white;
}

.signing-mode-chip input[type="radio"][b-svcu2oi0i3] {
    display: none;
}

.signing-mode-chip i[b-svcu2oi0i3] {
    font-size: 0.875rem;
}

.signing-mode-chip .chip-title[b-svcu2oi0i3] {
    font-weight: 500;
}

.signing-mode-chip .chip-subtitle[b-svcu2oi0i3] {
    font-size: 0.7rem;
    opacity: 0.8;
    font-weight: 400;
}

.signing-mode-chip.selected .chip-subtitle[b-svcu2oi0i3] {
    opacity: 0.9;
}

.signing-mode-chip.disabled[b-svcu2oi0i3] {
    opacity: 0.5;
    pointer-events: none;
    cursor: not-allowed;
}

/* Signature Modal Warning & Info Boxes */
.signature-warning-box[b-svcu2oi0i3],
.signature-info-box[b-svcu2oi0i3] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    border-radius: 10px;
    font-size: 0.8125rem;
    line-height: 1.5;
    margin-bottom: 1rem;
}

.signature-warning-box[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #fef3c7 0%, #fef9c3 100%);
    border: 1px solid #fcd34d;
    color: #92400e;
}

.signature-warning-box i[b-svcu2oi0i3] {
    font-size: 1rem;
    color: #d97706;
    margin-top: 0.125rem;
    flex-shrink: 0;
}

.signature-info-box[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border: 1px solid #93c5fd;
    color: #1e40af;
}

.signature-info-box i[b-svcu2oi0i3] {
    font-size: 1rem;
    color: #3b82f6;
    margin-top: 0.125rem;
    flex-shrink: 0;
}

/* Signature Modal Footer */
.signature-modal-footer[b-svcu2oi0i3] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
    border-bottom-left-radius: 16px;
    border-bottom-right-radius: 16px;
}

.signature-modal-footer .footer-actions[b-svcu2oi0i3] {
    display: flex;
    gap: 0.625rem;
}

/* Signature Modal Button Styles */
.signature-request-modal .btn[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
    border: none;
}

.signature-request-modal .btn:disabled[b-svcu2oi0i3] {
    opacity: 0.5;
    cursor: not-allowed;
}

.signature-request-modal .btn-cancel[b-svcu2oi0i3] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.signature-request-modal .btn-cancel:hover:not(:disabled)[b-svcu2oi0i3] {
    background: #F1F5F9;
    color: #0F172A;
}

.signature-request-modal .btn-outline-secondary[b-svcu2oi0i3],
.signature-request-modal .btn-save-draft[b-svcu2oi0i3] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.signature-request-modal .btn-outline-secondary:hover:not(:disabled)[b-svcu2oi0i3],
.signature-request-modal .btn-save-draft:hover:not(:disabled)[b-svcu2oi0i3] {
    background: #F1F5F9;
    color: #0F172A;
}

.signature-request-modal .btn-primary[b-svcu2oi0i3] {
    background: var(--brand-600, #004980);
    color: white;
}

.signature-request-modal .btn-primary:hover:not(:disabled)[b-svcu2oi0i3] {
    background: var(--brand-700, #003760);
}

.signature-request-modal .btn-primary:active:not(:disabled)[b-svcu2oi0i3] {
    transform: translateY(0);
}

/* Spinner in buttons */
.signature-request-modal .btn .spinner-border[b-svcu2oi0i3] {
    width: 1rem;
    height: 1rem;
    border-width: 2px;
}

/* Request Signature Modal */
.signature-request-modal[b-svcu2oi0i3] {
    width: 100%;
    max-width: 560px;
    background: white;
    border-radius: 16px;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    overflow: hidden;
    animation: modalSlideIn-b-svcu2oi0i3 0.3s ease-out;
}

/* Signature Request Modal Body */
.signature-request-modal .modal-body[b-svcu2oi0i3] {
    padding: 1.5rem;
    overflow-y: auto;
    max-height: calc(90vh - 180px);
    scrollbar-width: thin;
    scrollbar-color: var(--neutral-300) transparent;
}

.signature-request-modal .modal-body[b-svcu2oi0i3]::-webkit-scrollbar {
    width: 6px;
}

.signature-request-modal .modal-body[b-svcu2oi0i3]::-webkit-scrollbar-track {
    background: transparent;
}

.signature-request-modal .modal-body[b-svcu2oi0i3]::-webkit-scrollbar-thumb {
    background: var(--neutral-300);
    border-radius: 3px;
}

.signature-request-modal .modal-body[b-svcu2oi0i3]::-webkit-scrollbar-thumb:hover {
    background: var(--neutral-400);
}

.signature-document-info[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: var(--neutral-50);
    border-radius: 10px;
    margin-bottom: 1.5rem;
    border: 1px solid var(--border-light);
}

.signature-doc-icon[b-svcu2oi0i3] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border-radius: 10px;
    font-size: 1.25rem;
    color: var(--brand-500);
    border: 1px solid var(--border-light);
}

.signature-doc-details[b-svcu2oi0i3] {
    flex: 1;
    min-width: 0;
}

.signature-doc-name[b-svcu2oi0i3] {
    font-weight: 600;
    font-size: 0.9375rem;
    color: var(--text-primary, #0f172a);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.signature-doc-meta[b-svcu2oi0i3] {
    font-size: 0.8125rem;
    color: var(--text-muted, #94a3b8);
    margin-top: 0.125rem;
}

/* Signers Configuration */
.signers-configuration[b-svcu2oi0i3] {
    margin-bottom: 1.5rem;
}

.signers-configuration h5[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.75rem;
}

.signers-configuration h5[b-svcu2oi0i3]::before {
    content: '';
    display: inline-block;
    width: 3px;
    height: 14px;
    background: var(--brand-500);
    border-radius: 2px;
}

.signers-list-edit[b-svcu2oi0i3] {
    margin-bottom: 0.75rem;
}

.signer-edit-item[b-svcu2oi0i3] {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
    padding: 1rem;
    background: var(--neutral-50);
    border-radius: 10px;
    margin-bottom: 0.75rem;
    border: 1px solid var(--border-light);
    transition: all 0.2s ease;
}

.signer-edit-item:hover[b-svcu2oi0i3] {
    background: white;
    border-color: var(--brand-200);
    box-shadow: 0 2px 8px rgba(59, 130, 246, 0.08);
}

.signer-edit-item.disabled[b-svcu2oi0i3] {
    opacity: 0.6;
    pointer-events: none;
    background: var(--neutral-100);
}

.signer-edit-item.disabled:hover[b-svcu2oi0i3] {
    background: var(--neutral-100);
    border-color: var(--border-light);
    box-shadow: none;
}

.signer-edit-item.primary[b-svcu2oi0i3] {
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border: 1px solid #93c5fd;
}

.signer-order-badge[b-svcu2oi0i3] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--brand-500);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 600;
    flex-shrink: 0;
    margin-top: 0.25rem;
    box-shadow: 0 2px 4px rgba(59, 130, 246, 0.3);
}

.signer-card.signer-completed .signer-order-badge[b-svcu2oi0i3] {
    background: linear-gradient(135deg, var(--success-100) 0%, var(--success-200) 100%);
    color: var(--success-700);
}

.signer-fields[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    flex: 1;
    min-width: 0;
}

.signer-type-badge[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 0.875rem;
    background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
    color: #1d4ed8;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    border-radius: 8px;
    flex-shrink: 0;
    min-width: 90px;
    height: 38px;
    border: 1px solid #93c5fd;
    box-sizing: border-box;
}

.config-label[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.75rem;
}

.config-label i[b-svcu2oi0i3] {
    font-size: 0.9375rem;
    color: var(--brand-500);
}

.signer-type-name-row[b-svcu2oi0i3] {
    display: flex;
    gap: 0.625rem;
    align-items: center;
}

/* Form Controls in Signature Modal - Higher Specificity to Override Bootstrap */
.signature-request-modal .modal-body .form-control[b-svcu2oi0i3],
.signature-request-modal .modal-body .form-select[b-svcu2oi0i3],
.signers-configuration .form-control[b-svcu2oi0i3],
.signers-configuration .form-select[b-svcu2oi0i3],
.signer-edit-item .form-control[b-svcu2oi0i3],
.signer-edit-item .form-select[b-svcu2oi0i3],
.signer-fields .form-control[b-svcu2oi0i3],
.signer-fields .form-select[b-svcu2oi0i3] {
    font-size: 0.875rem !important;
    padding: 0.5rem 0.75rem !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
    background-color: #ffffff !important;
    color: #0f172a !important;
    box-sizing: border-box !important;
    height: 38px !important;
    line-height: 1.5 !important;
}

.signature-request-modal .modal-body .form-control:focus[b-svcu2oi0i3],
.signature-request-modal .modal-body .form-select:focus[b-svcu2oi0i3],
.signers-configuration .form-control:focus[b-svcu2oi0i3],
.signers-configuration .form-select:focus[b-svcu2oi0i3],
.signer-edit-item .form-control:focus[b-svcu2oi0i3],
.signer-edit-item .form-select:focus[b-svcu2oi0i3],
.signer-fields .form-control:focus[b-svcu2oi0i3],
.signer-fields .form-select:focus[b-svcu2oi0i3] {
    outline: none !important;
    border-color: #60a5fa !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15) !important;
}

.signature-request-modal .modal-body .form-control[b-svcu2oi0i3]::placeholder,
.signers-configuration .form-control[b-svcu2oi0i3]::placeholder,
.signer-edit-item .form-control[b-svcu2oi0i3]::placeholder,
.signer-fields .form-control[b-svcu2oi0i3]::placeholder {
    color: #94a3b8 !important;
    opacity: 1 !important;
}

.signature-request-modal .modal-body .form-control[readonly][b-svcu2oi0i3],
.signers-configuration .form-control[readonly][b-svcu2oi0i3],
.signer-edit-item .form-control[readonly][b-svcu2oi0i3],
.signer-fields .form-control[readonly][b-svcu2oi0i3] {
    background-color: #f1f5f9 !important;
    color: #64748b !important;
    cursor: default !important;
    border-color: #e2e8f0 !important;
}

/* Specific field widths */
.signer-type-select[b-svcu2oi0i3],
.signer-fields .signer-type-select[b-svcu2oi0i3],
.signer-edit-item .signer-type-select[b-svcu2oi0i3] {
    width: 140px !important;
    min-width: 140px !important;
    max-width: 140px !important;
    flex: 0 0 140px !important;
    cursor: pointer !important;
}

.signer-name-input[b-svcu2oi0i3],
.signer-fields .signer-name-input[b-svcu2oi0i3],
.signer-edit-item .signer-name-input[b-svcu2oi0i3] {
    flex: 1 1 auto !important;
    min-width: 100px !important;
    width: auto !important;
}

.signer-email-input[b-svcu2oi0i3],
.signer-fields .signer-email-input[b-svcu2oi0i3],
.signer-edit-item .signer-email-input[b-svcu2oi0i3] {
    width: 100% !important;
    flex: none !important;
}

/* Validation styles */
.input-invalid[b-svcu2oi0i3],
.form-control.input-invalid[b-svcu2oi0i3],
.signer-edit-item .input-invalid[b-svcu2oi0i3],
.signer-fields .input-invalid[b-svcu2oi0i3] {
    border-color: #ef4444 !important;
    background-color: #fef2f2 !important;
}

.input-invalid:focus[b-svcu2oi0i3],
.form-control.input-invalid:focus[b-svcu2oi0i3],
.signer-edit-item .input-invalid:focus[b-svcu2oi0i3],
.signer-fields .input-invalid:focus[b-svcu2oi0i3] {
    border-color: #ef4444 !important;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.15) !important;
}

.validation-error[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    color: var(--error-600);
    margin-top: 0.25rem;
    padding-left: 0.125rem;
}

.validation-error i[b-svcu2oi0i3] {
    font-size: 0.75rem;
    flex-shrink: 0;
}

.validation-errors[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin-top: 0.375rem;
}

.btn-remove-signer[b-svcu2oi0i3] {
    margin-top: 0;
    flex-shrink: 0;
    width: 38px;
    height: 38px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    border: 1px solid var(--error-200);
    background: var(--error-50);
    color: var(--error-500);
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-remove-signer:hover[b-svcu2oi0i3] {
    background: var(--error-100);
    border-color: var(--error-300);
    color: var(--error-600);
}

.btn-add-signer[b-svcu2oi0i3] {
    margin-top: 0.25rem;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    background: var(--brand-50);
    color: var(--brand-600);
    border: 1px dashed var(--brand-300);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-add-signer:hover[b-svcu2oi0i3] {
    background: var(--brand-100);
    border-color: var(--brand-400);
    border-style: solid;
}

.btn-add-signer:disabled[b-svcu2oi0i3] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-add-signer i[b-svcu2oi0i3] {
    font-size: 1rem;
}

/* Signing Mode Selection */
.signing-mode-selection[b-svcu2oi0i3] {
    margin-bottom: 1.5rem;
}

.signing-mode-selection.compact[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
    padding: 0.75rem 1rem;
    background: var(--neutral-50);
    border-radius: 8px;
    border: 1px solid var(--border-light);
}

.signing-mode-label[b-svcu2oi0i3] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary, #64748b);
    white-space: nowrap;
}

.signing-mode-chips[b-svcu2oi0i3] {
    display: flex;
    gap: 0.5rem;
}

/* Signing Mode Options Compact - alias for signing-mode-chips */
.signing-mode-options-compact[b-svcu2oi0i3] {
    display: flex;
    gap: 0.5rem;
}


/* ========================================
   Copy from Policy Modal
   ======================================== */
.copy-policy-modal[b-svcu2oi0i3] {
    background: white;
    border-radius: 16px;
    max-width: 480px;
    width: 90%;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    overflow: hidden;
    animation: scaleIn-b-svcu2oi0i3 0.2s ease-out;
}

@keyframes scaleIn-b-svcu2oi0i3 {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.copy-policy-modal .modal-body[b-svcu2oi0i3] {
    padding: 1.15rem 1.5rem;
}

.copy-policy-info[b-svcu2oi0i3] {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
}

.copy-policy-icon[b-svcu2oi0i3] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.copy-policy-icon.success[b-svcu2oi0i3] {
    background: var(--success-100);
    color: var(--success-600);
}

.copy-policy-icon.warning[b-svcu2oi0i3] {
    background: var(--warning-100);
    color: var(--warning-600);
}

.copy-policy-icon i[b-svcu2oi0i3] {
    font-size: 1.5rem;
}

.copy-policy-text[b-svcu2oi0i3] {
    flex: 1;
}

.copy-policy-count[b-svcu2oi0i3] {
    font-size: 1rem;
    margin: 0 0 0.5rem 0;
    color: var(--text-primary, #0f172a);
}

.copy-policy-count.warning[b-svcu2oi0i3] {
    color: var(--warning-700);
}

.copy-policy-desc[b-svcu2oi0i3] {
    font-size: 0.875rem;
    color: var(--text-secondary, #64748b);
    margin: 0;
    line-height: 1.5;
}

.copy-policy-modal .modal-footer[b-svcu2oi0i3] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    background: #FAFBFC;
    border-top: 1px solid #EEF2F6;
    border-bottom-left-radius: 16px;
    border-bottom-right-radius: 16px;
}

.copy-policy-modal .btn-secondary[b-svcu2oi0i3] {
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.copy-policy-modal .btn-secondary:hover:not(:disabled)[b-svcu2oi0i3] {
    background: #F1F5F9;
    color: #0F172A;
}

.copy-policy-modal .btn-primary[b-svcu2oi0i3] {
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.copy-policy-modal .btn-primary:hover:not(:disabled)[b-svcu2oi0i3] {
    background: var(--brand-700, #003760);
}

.copy-policy-modal .btn-primary:disabled[b-svcu2oi0i3],
.copy-policy-modal .btn-secondary:disabled[b-svcu2oi0i3] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* ========================================
   Cancel Signature Request Modal
   ======================================== */
.cancel-signature-modal[b-svcu2oi0i3] {
    background: white;
    border-radius: 16px;
    max-width: 480px;
    width: 90%;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    animation: modalSlideIn-b-svcu2oi0i3 0.3s ease-out;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.cancel-signature-modal .modal-body[b-svcu2oi0i3] {
    padding: 1.15rem 1.5rem;
}

.cancel-warning[b-svcu2oi0i3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1rem;
    background: var(--neutral-50);
    border-radius: 12px;
    margin-bottom: 1.25rem;
}

.cancel-warning i[b-svcu2oi0i3] {
    font-size: 2.5rem;
    color: #d97706;
    margin-bottom: 1rem;
}

.cancel-warning p[b-svcu2oi0i3] {
    margin: 0;
    font-size: 0.9375rem;
    color: var(--text-primary, #0f172a);
    line-height: 1.5;
}

.cancel-warning p.text-muted[b-svcu2oi0i3] {
    font-size: 0.8125rem;
    color: var(--text-secondary, #64748b);
    margin-top: 0.5rem;
}

.cancel-reason-input[b-svcu2oi0i3] {
    margin-top: 0.5rem;
}

.cancel-reason-input .form-label[b-svcu2oi0i3] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.5rem;
}

.cancel-reason-input .form-control[b-svcu2oi0i3] {
    width: 100%;
    padding: 0.75rem 1rem;
    font-size: 0.875rem;
    border: 1px solid var(--border-light);
    border-radius: 8px;
    resize: none;
    transition: all 0.15s ease;
}

.cancel-reason-input .form-control:focus[b-svcu2oi0i3] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.cancel-reason-input .form-control[b-svcu2oi0i3]::placeholder {
    color: var(--text-muted, #94a3b8);
}

.cancel-signature-modal .modal-footer[b-svcu2oi0i3] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    background: #FAFBFC;
    border-top: 1px solid #EEF2F6;
}

.cancel-signature-modal .btn-cancel[b-svcu2oi0i3] {
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.cancel-signature-modal .btn-cancel:hover[b-svcu2oi0i3] {
    background: #F1F5F9;
    color: #0F172A;
}

.cancel-signature-modal .btn-danger[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    background: var(--error-600, #DC2626);
    color: white;
    border: none;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.cancel-signature-modal .btn-danger:hover:not(:disabled)[b-svcu2oi0i3] {
    background: var(--error-700, #B91C1C);
}

.cancel-signature-modal .btn-danger:active:not(:disabled)[b-svcu2oi0i3] {
    transform: translateY(0);
}

.cancel-signature-modal .btn-danger:disabled[b-svcu2oi0i3] {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none;
}

.cancel-signature-modal .btn-danger .spinner-border[b-svcu2oi0i3] {
    width: 1rem;
    height: 1rem;
    border-width: 2px;
}

/* ========================================
   Embedded Signing Modal
   ======================================== */
.signing-modal-overlay[b-svcu2oi0i3] {
    background: rgba(15, 23, 42, 0.45);
}

.embedded-signing-modal[b-svcu2oi0i3] {
    background: white;
    border-radius: 16px;
    width: 95%;
    max-width: 1200px;
    height: 90vh;
    max-height: 900px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 25px 80px rgba(0, 0, 0, 0.35);
    animation: modalSlideIn-b-svcu2oi0i3 0.3s ease-out;
    overflow: hidden;
}

.embedded-signing-modal .modal-header[b-svcu2oi0i3] {
    padding: 1rem 1.5rem;
    flex-shrink: 0;
}

.signing-info-bar[b-svcu2oi0i3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1.5rem;
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border-bottom: 1px solid #93c5fd;
    font-size: 0.8125rem;
    color: #1e40af;
    flex-shrink: 0;
}

.signing-info-bar i[b-svcu2oi0i3] {
    font-size: 1rem;
    color: #3b82f6;
    flex-shrink: 0;
}

.signing-body[b-svcu2oi0i3] {
    flex: 1;
    padding: 0;
    overflow: hidden;
    min-height: 0;
}

.signing-iframe[b-svcu2oi0i3] {
    width: 100%;
    height: 100%;
    border: none;
    display: block;
}

.signing-footer[b-svcu2oi0i3] {
    display: flex;
    justify-content: center;
    padding: 0.875rem 1.5rem;
    background: #FAFBFC;
    border-top: 1px solid #EEF2F6;
    flex-shrink: 0;
}

.signing-footer .btn-outline-secondary[b-svcu2oi0i3] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.signing-footer .btn-outline-secondary:hover[b-svcu2oi0i3] {
    background: #F1F5F9;
    color: #0F172A;
}

/* Responsive adjustments for embedded signing */
@media (max-width: 768px) {
    .embedded-signing-modal[b-svcu2oi0i3] {
        width: 100%;
        height: 100%;
        max-height: 100%;
        border-radius: 0;
    }
    
    .signing-info-bar[b-svcu2oi0i3] {
        padding: 0.625rem 1rem;
        font-size: 0.75rem;
    }
}

/* ========================================
   Policy Documents (read-only preview)
   ======================================== */
.policy-docs-section[b-svcu2oi0i3] {
    margin: 12px 16px; background: #F8FAFC; border: 1px solid #E2E8F0; border-radius: 10px; overflow: hidden;
}
.policy-docs-header[b-svcu2oi0i3] {
    width: 100%; display: flex; justify-content: space-between; align-items: center;
    padding: 10px 14px; background: #F1F5F9; border: 0; cursor: pointer;
    color: #0F172A; font-weight: 700; font-size: 13px;
}
.policy-docs-header:hover[b-svcu2oi0i3] { background: #E2E8F0; }
.policy-docs-header-left[b-svcu2oi0i3] { display: flex; align-items: center; gap: 8px; }
.policy-docs-header i.bi-folder-check[b-svcu2oi0i3] { color: #0891B2; font-size: 15px; }
.policy-docs-count[b-svcu2oi0i3] {
    display: inline-flex; align-items: center; padding: 1px 8px; margin-left: 4px;
    background: #CFFAFE; color: #0E7490; border: 1px solid #A5F3FC; border-radius: 999px;
    font-size: 11px; font-weight: 700;
}
.policy-docs-list[b-svcu2oi0i3] { list-style: none; padding: 6px; margin: 0; display: flex; flex-direction: column; gap: 4px; }
.policy-doc-row[b-svcu2oi0i3] {
    display: flex; align-items: center; gap: 10px; padding: 8px 10px;
    background: white; border: 1px solid #E2E8F0; border-radius: 8px; cursor: pointer; transition: all 0.15s;
}
.policy-doc-row:hover[b-svcu2oi0i3] { border-color: var(--brand-400, #3397C7); background: #F0F9FF; }
.policy-doc-row.selected[b-svcu2oi0i3] { border-color: var(--brand-500, #005b9f); background: #E0F2FE; box-shadow: 0 0 0 2px rgba(0, 91, 159, 0.12); }
.policy-doc-icon[b-svcu2oi0i3] {
    width: 30px; height: 30px; border-radius: 7px; flex-shrink: 0;
    background: #EFF6FF; color: #2563EB;
    display: flex; align-items: center; justify-content: center; font-size: 14px;
}
.policy-doc-info[b-svcu2oi0i3] { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.policy-doc-name[b-svcu2oi0i3] {
    font-size: 12.5px; font-weight: 600; color: #0F172A;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.policy-doc-meta[b-svcu2oi0i3] {
    font-size: 11px; color: #64748B; display: flex; gap: 5px; align-items: center; flex-wrap: wrap;
}
.policy-doc-sig[b-svcu2oi0i3] {
    color: #9333EA; font-weight: 600; display: inline-flex; align-items: center; gap: 3px;
}
.policy-doc-template[b-svcu2oi0i3] {
    color: #0891B2; font-weight: 600; display: inline-flex; align-items: center; gap: 3px;
}
.policy-doc-open[b-svcu2oi0i3] { color: #94A3B8; font-size: 12px; flex-shrink: 0; }
.policy-doc-row:hover .policy-doc-open[b-svcu2oi0i3] { color: var(--brand-500, #005b9f); }
/* /Components/Pages/Underwriting/Tabs/ApplicationInvoicesTab.razor.rz.scp.css */
.invoices-tab[b-p3b22l9z5b] {
    padding: 1rem 1.25rem;
}

/* ── Header: title + count (left) · New invoice (right) ──────────────── */
.tab-header[b-p3b22l9z5b] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.85rem;
    flex-wrap: wrap;
}

.tab-header-left[b-p3b22l9z5b] {
    display: flex;
    align-items: baseline;
    gap: 0.6rem;
}

.tab-title[b-p3b22l9z5b] {
    font-size: 1.1rem;
    font-weight: 700;
    color: #111827;
    margin: 0;
}

.tab-count[b-p3b22l9z5b] {
    font-size: 0.8rem;
    color: #6b7280;
}

/* Subtle, comfortably-sized "New invoice" CTA — soft brand wash rather than a
   heavy solid fill, matching the invoice detail page's primary action. */
.tab-cta.inv-btn-primary[b-p3b22l9z5b] {
    padding: 0.5rem 1.05rem;
    font-size: 0.875rem;
    font-weight: 600;
    border-radius: 9px;
    min-height: 2.4rem;
    background: #eef4fb;
    border-color: #cdddf0;
    color: #1f4e8c;
}

.tab-cta.inv-btn-primary:hover:not(:disabled)[b-p3b22l9z5b] {
    background: #e0ecf9;
    border-color: #2c5aa0;
    color: #1d4ed8;
    box-shadow: 0 2px 8px rgba(44, 90, 160, 0.12);
}

/* ── Billing summary cards ───────────────────────────────────────────── */
/* Stat tiles that span the row (echoes the main /invoices stat cards), so the
   summary fills the width instead of crowding three figures on the left. */
.invoice-summary[b-p3b22l9z5b] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 0.75rem;
    margin-bottom: 0.85rem;
}

.sum-card[b-p3b22l9z5b] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.85rem 1rem;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.sum-icon[b-p3b22l9z5b] {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 8px;
    display: grid;
    place-items: center;
    font-size: 1rem;
    flex-shrink: 0;
}

.sum-icon-billed[b-p3b22l9z5b] { background: #eff6ff; color: #1e40af; }
.sum-icon-outstanding[b-p3b22l9z5b] { background: #f1f5f9; color: #475569; }
.sum-icon-paid[b-p3b22l9z5b] { background: #dcfce7; color: #166534; }

.sum-body[b-p3b22l9z5b] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

.sum-label[b-p3b22l9z5b] {
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #6b7280;
    font-weight: 600;
}

.sum-value[b-p3b22l9z5b] {
    font-size: 1.25rem;
    font-weight: 700;
    color: #111827;
    line-height: 1.1;
}

.sum-hint[b-p3b22l9z5b] {
    font-size: 0.7rem;
    color: #6b7280;
}

/* Outstanding turns amber when something is overdue. */
.sum-card-alert[b-p3b22l9z5b] { border-color: #fcd34d; }
.sum-card-alert .sum-icon-outstanding[b-p3b22l9z5b] { background: #fef3c7; color: #b45309; }
.sum-card-alert .sum-value[b-p3b22l9z5b] { color: #b45309; }
.sum-card-alert .sum-hint[b-p3b22l9z5b] { color: #b45309; }

/* ── Collection progress bar ─────────────────────────────────────────── */
.billing-progress[b-p3b22l9z5b] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin-bottom: 0.85rem;
}

.billing-progress-track[b-p3b22l9z5b] {
    flex: 1;
    height: 6px;
    background: #e2e8f0;
    border-radius: 999px;
    overflow: hidden;
}

.billing-progress-fill[b-p3b22l9z5b] {
    height: 100%;
    background: #16a34a;
    border-radius: 999px;
    transition: width 0.3s ease;
}

.billing-progress-label[b-p3b22l9z5b] {
    font-size: 0.75rem;
    color: #64748b;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

/* ── States ──────────────────────────────────────────────────────────── */
.state-block[b-p3b22l9z5b] {
    padding: 2rem 1rem;
    text-align: center;
    color: #6b7280;
}

.empty-state[b-p3b22l9z5b] {
    padding: 2.5rem 1.5rem;
    text-align: center;
}

.empty-icon[b-p3b22l9z5b] {
    font-size: 2.5rem;
    color: #cbd5e1;
    display: block;
    margin-bottom: 0.5rem;
}

.empty-state h3[b-p3b22l9z5b] {
    font-size: 1rem;
    color: #1f2937;
    margin-bottom: 0.4rem;
}

.empty-state p[b-p3b22l9z5b] {
    color: #6b7280;
    max-width: 480px;
    margin: 0 auto;
    font-size: 0.875rem;
}

/* ── Card-wrapped table (echoes the main /invoices page) ─────────────── */
.data-card[b-p3b22l9z5b] {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    overflow: hidden;
}

.invoices-tab-table[b-p3b22l9z5b] {
    margin-bottom: 0;
}

.invoices-tab-table thead th[b-p3b22l9z5b] {
    background: #f8fafc;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #475569;
    font-weight: 600;
    border-bottom: 1px solid #e5e7eb;
    padding: 0.55rem 0.75rem;
}

.invoices-tab-table tbody td[b-p3b22l9z5b] {
    padding: 0.45rem 0.75rem;
    font-size: 0.85rem;
    border-top: 1px solid #f1f5f9;
    vertical-align: middle;
}

/* Invoice number — keep it legible but in scale with the row (was full table
   font + bold, which made rows tall). */
.invoices-tab-table td:first-child strong[b-p3b22l9z5b] {
    font-size: 0.85rem;
    font-weight: 600;
}

/* Draft placeholder reads as quiet, normal-weight text rather than a bold label. */
.invoices-tab-table td:first-child strong.muted[b-p3b22l9z5b] {
    font-weight: 400;
}

.invoices-tab-table tbody tr:first-child td[b-p3b22l9z5b] {
    border-top: none;
}

/* First/last columns get a touch more side padding off the card edge. */
.invoices-tab-table th:first-child[b-p3b22l9z5b],
.invoices-tab-table td:first-child[b-p3b22l9z5b] { padding-left: 1rem; }
.invoices-tab-table th:last-child[b-p3b22l9z5b],
.invoices-tab-table td:last-child[b-p3b22l9z5b] { padding-right: 1rem; }

/* Whole row is a click target into the invoice detail. */
.invoice-row[b-p3b22l9z5b] { cursor: pointer; }

/* Per-row action buttons (delete + open chevron), right-aligned. */
.row-actions[b-p3b22l9z5b] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    justify-content: flex-end;
}

.row-overdue[b-p3b22l9z5b] {
    background: linear-gradient(90deg, #fef2f2 0%, transparent 50%) !important;
}
.row-overdue td:first-child[b-p3b22l9z5b] {
    border-left: 3px solid #ef4444;
}

.muted[b-p3b22l9z5b] { color: #9ca3af; }

.mono[b-p3b22l9z5b] {
    font-variant-numeric: tabular-nums;
}
/* /Components/Pages/Underwriting/Tabs/ApplicationNotesTab.razor.rz.scp.css */
/* ========================================
   Application Notes Tab - Modern Chat Interface
   ======================================== */

/* ========================================
   Tab Animations
   ======================================== */
@keyframes fadeInUp-b-7b2h4zfuzo {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn-b-7b2h4zfuzo {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideInUp-b-7b2h4zfuzo {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.notes-chat-container[b-7b2h4zfuzo] {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 350px);
    min-height: 500px;
    background: #F8F9FA;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    animation: fadeInUp-b-7b2h4zfuzo 0.4s ease-out;
}

/* ========================================
   Participants Header
   ======================================== */

.participants-header[b-7b2h4zfuzo] {
    background: white;
    border-bottom: 1px solid #E0E0E0;
    padding: 0.75rem 1.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.participants-avatars[b-7b2h4zfuzo] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.participant-avatar[b-7b2h4zfuzo] {
    position: relative;
    flex-shrink: 0;
}

.participant-avatar-img[b-7b2h4zfuzo] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: transform 0.2s ease;
}

.participant-avatar:hover .participant-avatar-img[b-7b2h4zfuzo] {
    transform: scale(1.1);
    z-index: 10;
}

.participant-avatar-initials[b-7b2h4zfuzo] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 700;
    font-size: 0.875rem;
    border: 2px solid white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: transform 0.2s ease;
}

.participant-avatar:hover .participant-avatar-initials[b-7b2h4zfuzo] {
    transform: scale(1.1);
    z-index: 10;
}

.participant-count[b-7b2h4zfuzo] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #E0E0E0;
    border: 2px solid white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 700;
    color: #666;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    cursor: default;
}

/* ========================================
   Chat Messages Area
   ======================================== */

.chat-messages[b-7b2h4zfuzo] {
    flex: 1;
    overflow-y: auto;
    padding: 1.5rem;
    background: white;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* Scrollbar Styling */
.chat-messages[b-7b2h4zfuzo]::-webkit-scrollbar {
    width: 6px;
}

.chat-messages[b-7b2h4zfuzo]::-webkit-scrollbar-track {
    background: transparent;
}

.chat-messages[b-7b2h4zfuzo]::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 3px;
}

.chat-messages[b-7b2h4zfuzo]::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 0, 0, 0.3);
}

/* ========================================
   Load More Button
   ======================================== */

.load-more-container[b-7b2h4zfuzo] {
    text-align: center;
    margin-bottom: 1rem;
}

.btn-load-more[b-7b2h4zfuzo] {
    background: white;
    border: 1px solid #E0E0E0;
    border-radius: 20px;
    padding: 0.5rem 1.25rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #666;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-load-more:hover[b-7b2h4zfuzo] {
    background: #F5F5F5;
    border-color: var(--brand-400);
    color: var(--brand-600);
}

.btn-load-more:disabled[b-7b2h4zfuzo] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* ========================================
   Message Groups
   ======================================== */

.message-group[b-7b2h4zfuzo] {
    display: flex;
    gap: 0.75rem;
    align-items: flex-end;
    max-width: 80%;
    animation: slideInUp-b-7b2h4zfuzo 0.3s ease-out;
}

.message-group.message-left[b-7b2h4zfuzo] {
    align-self: flex-start;
}

.message-group.message-right[b-7b2h4zfuzo] {
    align-self: flex-end;
    flex-direction: row-reverse;
}

/* ========================================
   Message Avatar
   ======================================== */

.message-avatar[b-7b2h4zfuzo] {
    flex-shrink: 0;
}

.avatar-img[b-7b2h4zfuzo] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.avatar-initials[b-7b2h4zfuzo] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 700;
    font-size: 0.875rem;
    border: 2px solid white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* ========================================
   Message Content
   ======================================== */

.message-content-wrapper[b-7b2h4zfuzo] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
    flex: 1;
}

.message-header[b-7b2h4zfuzo] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.5rem;
}

.message-group.message-right .message-header[b-7b2h4zfuzo] {
    flex-direction: row-reverse;
}

.message-sender[b-7b2h4zfuzo] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: #333;
}

.message-time[b-7b2h4zfuzo] {
    font-size: 0.75rem;
    color: #999;
}

/* ========================================
   Message Bubbles
   ======================================== */

.message-bubble[b-7b2h4zfuzo] {
    padding: 0.875rem 1rem;
    border-radius: 18px;
    word-wrap: break-word;
    line-height: 1.5;
    position: relative;
}

/* Other User Messages - Left Side */
.other-user-message[b-7b2h4zfuzo] {
    background: #F0F0F0;
    color: #333;
    border-bottom-left-radius: 4px;
}

/* Current User Messages - Right Side */
.current-user-message[b-7b2h4zfuzo] {
    background: linear-gradient(135deg, #00A884 0%, #00C896 100%);
    color: white;
    border-bottom-right-radius: 4px;
}

/* Internal Messages */
.internal-message[b-7b2h4zfuzo] {
    background: linear-gradient(135deg, #FFF3CD 0%, #FFF8E1 100%);
    color: #856404;
    border-left: 3px solid #FFC107;
}

.internal-message.current-user-message[b-7b2h4zfuzo] {
    background: linear-gradient(135deg, #FF9800 0%, #FFB74D 100%);
    color: white;
    border-left: none;
}

.internal-badge[b-7b2h4zfuzo] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 700;
    padding: 0.25rem 0.5rem;
    background: rgba(255, 193, 7, 0.2);
    border-radius: 8px;
    margin-bottom: 0.5rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.current-user-message .internal-badge[b-7b2h4zfuzo] {
    background: rgba(255, 255, 255, 0.25);
}

.message-text[b-7b2h4zfuzo] {
    font-size: 0.9375rem;
    white-space: pre-wrap;
}

/* ========================================
   Empty State
   ======================================== */

.empty-chat-state[b-7b2h4zfuzo] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    color: #999;
    text-align: center;
    padding: 3rem 1rem;
}

.empty-chat-state i[b-7b2h4zfuzo] {
    font-size: 4rem;
    margin-bottom: 1rem;
    opacity: 0.3;
}

.empty-chat-state p[b-7b2h4zfuzo] {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: #666;
}

.empty-chat-state small[b-7b2h4zfuzo] {
    font-size: 0.875rem;
    color: #999;
}

/* ========================================
   Chat Input Container
   ======================================== */

.chat-input-container[b-7b2h4zfuzo] {
    background: white;
    border-top: 1px solid #E0E0E0;
    padding: 1rem;
}

.input-wrapper[b-7b2h4zfuzo] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    background: #F8F9FA;
    border: 2px solid #E0E0E0;
    border-radius: 24px;
    padding: 0.5rem 0.75rem;
    transition: all 0.2s ease;
}

.input-wrapper:focus-within[b-7b2h4zfuzo] {
    border-color: #00A884;
    background: white;
}

/* Attach Button */
.btn-attach[b-7b2h4zfuzo] {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    border: none;
    background: transparent;
    color: #666;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 1.25rem;
}

.btn-attach:hover:not(:disabled)[b-7b2h4zfuzo] {
    background: #E0E0E0;
    color: #333;
}

.btn-attach:disabled[b-7b2h4zfuzo] {
    opacity: 0.4;
    cursor: not-allowed;
}

/* Chat Input */
.chat-input[b-7b2h4zfuzo] {
    flex: 1;
    border: none;
    background: transparent;
    resize: none;
    font-size: 0.9375rem;
    line-height: 1.5;
    padding: 0.5rem;
    max-height: 120px;
    overflow-y: auto;
}

.chat-input:focus[b-7b2h4zfuzo] {
    outline: none;
}

.chat-input[b-7b2h4zfuzo]::placeholder {
    color: #999;
}

/* Send Actions */
.send-actions[b-7b2h4zfuzo] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

/* Internal Toggle Button */
.btn-internal-toggle[b-7b2h4zfuzo] {
    width: 36px;
    height: 36px;
    border: none;
    background: transparent;
    color: #999;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 1.125rem;
}

.btn-internal-toggle:hover[b-7b2h4zfuzo] {
    background: #FFE082;
    color: #F57C00;
}

.btn-internal-toggle.active[b-7b2h4zfuzo] {
    background: #FFC107;
    color: white;
}

/* Send Button */
.btn-send[b-7b2h4zfuzo] {
    width: 40px;
    height: 40px;
    border: none;
    background: #00A884;
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    font-size: 1.125rem;
}

.btn-send:hover:not(:disabled)[b-7b2h4zfuzo] {
    background: #009874;
}

.btn-send:disabled[b-7b2h4zfuzo] {
    opacity: 0.5;
    cursor: not-allowed;
    transform: none;
}

/* Internal Mode Indicator */
.internal-mode-indicator[b-7b2h4zfuzo] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    margin-top: 0.5rem;
    background: linear-gradient(135deg, #FFF3CD 0%, #FFF8E1 100%);
    border-radius: 12px;
    font-size: 0.8125rem;
    font-weight: 600;
    color: #856404;
}

.internal-mode-indicator i[b-7b2h4zfuzo] {
    font-size: 0.875rem;
}

/* ========================================
   Hub Connection Status
   ======================================== */

.notes-hub-status[b-7b2h4zfuzo] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: #6B7280;
    user-select: none;
}

.hub-dot[b-7b2h4zfuzo] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #9CA3AF;
    box-shadow: 0 0 0 3px rgba(156, 163, 175, 0.15);
}

.hub-dot-online[b-7b2h4zfuzo] {
    background: #10B981;
    box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.18);
}

.hub-dot-offline[b-7b2h4zfuzo] {
    background: #EF4444;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.18);
}

/* Hub status detail */
.hub-status-text[b-7b2h4zfuzo] {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
}

.hub-detail[b-7b2h4zfuzo] {
    font-size: 0.75rem;
    color: #9CA3AF;
    margin-top: 0.125rem;
    max-width: 240px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ========================================
   Responsive Design
   ======================================== */

@media (max-width: 768px) {
    .notes-chat-container[b-7b2h4zfuzo] {
        height: calc(100vh - 250px);
        min-height: 400px;
    }

    .chat-messages[b-7b2h4zfuzo] {
        padding: 1rem;
        gap: 0.75rem;
    }

    .message-group[b-7b2h4zfuzo] {
        max-width: 90%;
    }

    .avatar-img[b-7b2h4zfuzo],
    .avatar-initials[b-7b2h4zfuzo] {
        width: 32px;
        height: 32px;
        font-size: 0.8125rem;
    }

    .message-bubble[b-7b2h4zfuzo] {
        padding: 0.75rem 0.875rem;
        font-size: 0.875rem;
    }

    .chat-input-container[b-7b2h4zfuzo] {
        padding: 0.75rem;
    }
}

@media (max-width: 576px) {
    .message-group[b-7b2h4zfuzo] {
        max-width: 95%;
    }

    .message-sender[b-7b2h4zfuzo] {
        font-size: 0.75rem;
    }

    .message-time[b-7b2h4zfuzo] {
        font-size: 0.6875rem;
    }
}

/* Load More Button */
[b-7b2h4zfuzo] .btn-outline-secondary {
    border: 1px solid var(--border-medium);
    color: var(--text-secondary);
    font-weight: 600;
    padding: 0.625rem 1.5rem;
    border-radius: 8px;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

[b-7b2h4zfuzo] .btn-outline-secondary:hover {
    background: var(--brand-50);
    border-color: var(--brand-400);
    color: var(--brand-700);
}

/* Alert Styling */
[b-7b2h4zfuzo] .alert-info {
    background: linear-gradient(135deg, var(--brand-50) 0%, var(--brand-100) 100%);
    color: var(--brand-700);
    border: none;
    border-left: 4px solid var(--brand-500);
    border-radius: 10px;
    padding: 1rem 1.25rem;
    font-size: 0.9375rem;
}

/* ========================================
   Typing Indicator
   ======================================== */

.typing-indicator[b-7b2h4zfuzo] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: #F3F4F6;
    border-radius: 20px;
    margin: 0.5rem 0;
    align-self: flex-start;
    max-width: 300px;
    animation: fadeInUp-b-7b2h4zfuzo 0.3s ease;
}

@keyframes fadeInUp-b-7b2h4zfuzo {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.typing-avatar-list[b-7b2h4zfuzo] {
    display: flex;
    gap: 0.25rem;
}

.typing-avatar-small[b-7b2h4zfuzo] {
    flex-shrink: 0;
}

.avatar-initials-small[b-7b2h4zfuzo] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 700;
    font-size: 0.625rem;
    border: 2px solid white;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.typing-text[b-7b2h4zfuzo] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: #6B7280;
}

.typing-text strong[b-7b2h4zfuzo] {
    color: #374151;
    font-weight: 600;
}

.typing-dots[b-7b2h4zfuzo] {
    display: flex;
    gap: 0.25rem;
    align-items: center;
}

.typing-dots span[b-7b2h4zfuzo] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #9CA3AF;
    animation: typingDot-b-7b2h4zfuzo 1.4s infinite;
}

.typing-dots span:nth-child(2)[b-7b2h4zfuzo] {
    animation-delay: 0.2s;
}

.typing-dots span:nth-child(3)[b-7b2h4zfuzo] {
    animation-delay: 0.4s;
}

@keyframes typingDot-b-7b2h4zfuzo {
    0%, 60%, 100% {
        transform: translateY(0);
        opacity: 0.7;
    }
    30% {
        transform: translateY(-8px);
        opacity: 1;
    }
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .notes-tab[b-7b2h4zfuzo] {
        max-height: none;
    }
    
    .notes-container[b-7b2h4zfuzo] {
        padding: 1rem;
    }
    
    .note-item[b-7b2h4zfuzo] {
        padding: 1rem;
    }
    
    .avatar-img[b-7b2h4zfuzo],
    .avatar-initials[b-7b2h4zfuzo] {
        width: 40px;
        height: 40px;
    }
    
    .note-actions[b-7b2h4zfuzo] {
        flex-direction: column;
    }
    
    .note-actions button[b-7b2h4zfuzo] {
        width: 100%;
    }
}

/* ========================================
   Readonly Notice
   ======================================== */

.readonly-notice[b-7b2h4zfuzo] {
    background: #f8f9fa;
    border-top: 1px solid #E0E0E0;
    padding: 1rem;
}

.readonly-message[b-7b2h4zfuzo] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: #fff3cd;
    border: 1px solid #ffc107;
    border-radius: 8px;
    color: #856404;
    font-size: 0.875rem;
}

.readonly-message i[b-7b2h4zfuzo] {
    font-size: 1rem;
}

/* Two-column layout for Notes vs Internal */
.notes-columns[b-7b2h4zfuzo] {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 1rem;
    padding: 1rem;
    background: #F8F9FA;
    flex: 1;
    min-height: 0; /* allow inner scroll regions */
}

.notes-column[b-7b2h4zfuzo] {
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.notes-column-header[b-7b2h4zfuzo] {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #E5E7EB;
    background: #FFFFFF;
}

.notes-column-title[b-7b2h4zfuzo] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 700;
    color: #111827;
}

.notes-column-subtitle[b-7b2h4zfuzo] {
    margin-top: 0.25rem;
    font-size: 0.75rem;
    color: #6B7280;
}

.notes-count[b-7b2h4zfuzo] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 18px;
    min-width: 18px;
    padding: 0 6px;
    border-radius: 999px;
    background: #EEF2FF;
    color: #4338CA;
    font-size: 0.75rem;
    font-weight: 700;
}

/* Make each column independently scrollable */
.notes-column .chat-messages[b-7b2h4zfuzo] {
    flex: 1;
    min-height: 0;
}

/* Internal column accents */
.notes-column-internal[b-7b2h4zfuzo] {
    border-color: #FCD34D;
}

.chat-messages-internal[b-7b2h4zfuzo] {
    background: #FFFBEB;
    padding: 1rem; /* slightly tighter than the chat column */
}

.empty-internal[b-7b2h4zfuzo] {
    background: transparent;
}

/* Responsive: stack columns */
@media (max-width: 992px) {
    .notes-columns[b-7b2h4zfuzo] {
        grid-template-columns: 1fr;
    }
}

/* Compact internal notes list */
.internal-notes-list[b-7b2h4zfuzo] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.internal-note-item[b-7b2h4zfuzo] {
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(245, 158, 11, 0.2);
    border-radius: 8px;
    padding: 0.625rem 0.75rem;
}

.internal-note-header[b-7b2h4zfuzo] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.375rem;
}

.internal-note-avatar[b-7b2h4zfuzo] {
    flex-shrink: 0;
}

.internal-avatar-img[b-7b2h4zfuzo] {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    object-fit: cover;
}

.internal-avatar-initials[b-7b2h4zfuzo] {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 700;
    font-size: 0.625rem;
}

.internal-note-author[b-7b2h4zfuzo] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: #92400E;
}

.internal-note-time[b-7b2h4zfuzo] {
    font-size: 0.7rem;
    color: #B45309;
    margin-left: auto;
}

.internal-note-content[b-7b2h4zfuzo] {
    font-size: 0.8125rem;
    color: #1F2937;
    line-height: 1.4;
    white-space: pre-wrap;
    padding-left: 1.875rem; /* align with text after avatar */
}

/* Online users indicator */
.online-users[b-7b2h4zfuzo] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.25rem 0.6rem;
    border: 1px solid #E6F4EA;
    background: #F2FBF5;
    color: #1B7F3A;
    border-radius: 999px;
    font-size: 0.85rem;
    white-space: nowrap;
}

.online-dot[b-7b2h4zfuzo] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #10B981;
    box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.15);
}

.online-text[b-7b2h4zfuzo] {
    font-weight: 600;
}
/* /Components/Pages/Underwriting/Tabs/ApplicationSubjectivitiesTab.razor.rz.scp.css */
/* ========================================
   Binding Requirements Tab Styles
   Aligned with Application Detail Page Theme
   ======================================== */

/* Tab Container */
.subjectivities-tab[b-mut10hrb80] {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: var(--neutral-50);
}

/* Header Section */
.subjectivities-header[b-mut10hrb80] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.25rem 1.5rem;
    background: linear-gradient(135deg, white 0%, var(--neutral-50) 100%);
    border-bottom: 1px solid var(--neutral-200);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02);
}

.header-content[b-mut10hrb80] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.header-title[b-mut10hrb80] {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--text-primary, #0f172a);
    display: flex;
    align-items: center;
    gap: 0.625rem;
    letter-spacing: -0.01em;
}

.header-title i[b-mut10hrb80] {
    color: var(--brand-500);
    font-size: 1.25rem;
}

.progress-info[b-mut10hrb80] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.progress-text[b-mut10hrb80] {
    font-size: 0.8125rem;
    color: var(--text-muted, #64748b);
    font-weight: 500;
}

.progress-bar-container[b-mut10hrb80] {
    width: 160px;
    height: 8px;
    background: var(--neutral-200);
    border-radius: 4px;
    overflow: hidden;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.05);
}

.progress-bar-fill[b-mut10hrb80] {
    height: 100%;
    background: linear-gradient(90deg, var(--success-500) 0%, var(--success-400) 100%);
    border-radius: 4px;
    transition: width 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 0 8px rgba(34, 197, 94, 0.3);
}

.header-actions[b-mut10hrb80] {
    display: flex;
    gap: 0.5rem;
}

.header-actions .btn[b-mut10hrb80] {
    height: 36px;
    padding: 0 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    border-radius: 8px;
    border: 1px solid var(--neutral-200);
    background: white;
    color: var(--text-secondary, #64748b);
    transition: all 0.15s ease;
    cursor: pointer;
}

.header-actions .btn:hover[b-mut10hrb80] {
    background: var(--neutral-100);
    color: var(--text-primary, #0f172a);
}

.header-actions .btn-outline-primary[b-mut10hrb80] {
    border-color: var(--brand-300);
    color: var(--brand-600);
}

.header-actions .btn-outline-primary:hover[b-mut10hrb80] {
    background: var(--brand-50);
    border-color: var(--brand-400);
}

.header-actions .btn i[b-mut10hrb80] {
    font-size: 0.875rem;
}

/* Loading & Empty States */
.loading-container[b-mut10hrb80],
.empty-state[b-mut10hrb80] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem 2rem;
    text-align: center;
    background: white;
    margin: 1rem 1.5rem;
    border-radius: 12px;
    border: 1px dashed var(--neutral-300);
}

.empty-state i[b-mut10hrb80] {
    font-size: 3rem;
    margin-bottom: 1rem;
    color: var(--neutral-300);
}

.empty-state h6[b-mut10hrb80] {
    margin: 0 0 0.5rem 0;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
}

.empty-state p[b-mut10hrb80] {
    margin: 0;
    font-size: 0.875rem;
    color: var(--text-muted, #64748b);
}

.empty-state .btn[b-mut10hrb80] {
    margin-top: 1.5rem;
    height: 40px;
    padding: 0 20px;
    font-size: 0.875rem;
    font-weight: 500;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: var(--brand-500);
    color: white;
    border: none;
    transition: all 0.15s ease;
    cursor: pointer;
}

.empty-state .btn:hover[b-mut10hrb80] {
    background: var(--brand-600);
}

.empty-state .btn i[b-mut10hrb80] {
    font-size: 1rem;
    color: white;
}

/* Subjectivities List */
.subjectivities-list[b-mut10hrb80] {
    flex: 1;
    overflow-y: auto;
    padding: 1.25rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    background: linear-gradient(180deg, var(--neutral-50) 0%, white 100%);
}

/* Subjectivity Item Card */
.subjectivity-item[b-mut10hrb80] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.25rem 1.5rem 1.25rem 1.75rem;
    background: white;
    border: 1px solid var(--neutral-200);
    border-radius: 14px;
    transition: all 0.25s ease;
    position: relative;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    overflow: hidden;
}

.subjectivity-item[b-mut10hrb80]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 5px;
    background: transparent;
    transition: background 0.25s ease;
}

.subjectivity-item:hover[b-mut10hrb80] {
    border-color: var(--brand-300);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
    transform: translateY(-2px);
}

.subjectivity-item.required[b-mut10hrb80]::before {
    background: linear-gradient(180deg, var(--brand-400) 0%, var(--brand-600) 100%);
}

.subjectivity-item.optional[b-mut10hrb80]::before {
    background: linear-gradient(180deg, var(--neutral-300) 0%, var(--neutral-400) 100%);
}

.subjectivity-item.status-completed[b-mut10hrb80] {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.03) 0%, rgba(34, 197, 94, 0.06) 100%);
    border-color: rgba(34, 197, 94, 0.2);
}

.subjectivity-item.status-completed[b-mut10hrb80]::before {
    background: linear-gradient(180deg, var(--success-400) 0%, var(--success-600) 100%);
}

.subjectivity-item.status-completed:hover[b-mut10hrb80] {
    border-color: rgba(34, 197, 94, 0.35);
    box-shadow: 0 8px 24px rgba(34, 197, 94, 0.1);
}

.subjectivity-item.status-in-progress[b-mut10hrb80] {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.03) 0%, rgba(245, 158, 11, 0.06) 100%);
    border-color: rgba(245, 158, 11, 0.2);
}

.subjectivity-item.status-in-progress[b-mut10hrb80]::before {
    background: linear-gradient(180deg, var(--warning-400) 0%, var(--warning-600) 100%);
}

.subjectivity-item.status-in-progress:hover[b-mut10hrb80] {
    border-color: rgba(245, 158, 11, 0.35);
    box-shadow: 0 8px 24px rgba(245, 158, 11, 0.1);
}

/* Checkbox / Status Icon */
.subjectivity-checkbox[b-mut10hrb80] {
    flex-shrink: 0;
    padding-top: 0.125rem;
}

.subjectivity-checkbox input[type="checkbox"][b-mut10hrb80] {
    width: 1.5rem;
    height: 1.5rem;
    cursor: pointer;
    accent-color: var(--brand-600);
    border-radius: 6px;
    transition: transform 0.15s ease;
}

.subjectivity-checkbox input[type="checkbox"]:hover[b-mut10hrb80] {
    transform: scale(1.1);
}

.status-icon[b-mut10hrb80] {
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--neutral-100);
    transition: all 0.2s ease;
}

.subjectivity-item.status-completed .status-icon[b-mut10hrb80] {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.15) 0%, rgba(34, 197, 94, 0.25) 100%);
}

.subjectivity-item.status-in-progress .status-icon[b-mut10hrb80] {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.15) 0%, rgba(245, 158, 11, 0.25) 100%);
}

.status-icon i[b-mut10hrb80] {
    font-size: 1.125rem;
}

.status-icon i.text-success[b-mut10hrb80] {
    color: var(--success-500) !important;
}

.status-icon i.text-warning[b-mut10hrb80] {
    color: var(--warning-500) !important;
}

.status-icon i.text-muted[b-mut10hrb80] {
    color: var(--neutral-300) !important;
}

/* Content Area */
.subjectivity-content[b-mut10hrb80] {
    flex: 1;
    min-width: 0;
}

.subjectivity-header[b-mut10hrb80] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 0.375rem;
}

.subjectivity-title[b-mut10hrb80] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    line-height: 1.4;
}

.subjectivity-title.completed[b-mut10hrb80] {
    text-decoration: line-through;
    color: var(--text-muted, #64748b);
}

/* Badges */
.subjectivity-badges[b-mut10hrb80] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    flex-shrink: 0;
}

.badge[b-mut10hrb80] {
    display: inline-flex;
    align-items: center;
    font-size: 0.6875rem;
    font-weight: 700;
    padding: 0.3125rem 0.75rem;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.badge-required[b-mut10hrb80] {
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.12) 0%, rgba(239, 68, 68, 0.18) 100%);
    color: var(--error-600);
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.badge-optional[b-mut10hrb80] {
    background: var(--neutral-100);
    color: var(--text-muted, #64748b);
    border: 1px solid var(--neutral-200);
}

.badge-custom[b-mut10hrb80] {
    background: linear-gradient(135deg, rgba(139, 92, 246, 0.12) 0%, rgba(139, 92, 246, 0.18) 100%);
    color: #7c3aed;
    border: 1px solid rgba(139, 92, 246, 0.2);
}

.badge-type[b-mut10hrb80] {
    background: linear-gradient(135deg, var(--neutral-50) 0%, var(--neutral-100) 100%);
    color: var(--text-secondary, #475569);
    border: 1px solid var(--neutral-200);
}

.badge-signature[b-mut10hrb80] {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.12) 0%, rgba(59, 130, 246, 0.18) 100%);
    color: var(--brand-600);
    border: 1px solid rgba(59, 130, 246, 0.2);
}

.badge-document[b-mut10hrb80] {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.12) 0%, rgba(34, 197, 94, 0.18) 100%);
    color: var(--success-600);
    border: 1px solid rgba(34, 197, 94, 0.2);
}

.badge-acknowledgment[b-mut10hrb80] {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.12) 0%, rgba(245, 158, 11, 0.18) 100%);
    color: var(--warning-600);
    border: 1px solid rgba(245, 158, 11, 0.2);
}

/* Expected Document Type */
.expected-document-type[b-mut10hrb80] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.5rem;
    padding: 0.5rem 0.875rem;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.06) 0%, rgba(99, 102, 241, 0.06) 100%);
    border: 1px dashed rgba(59, 130, 246, 0.35);
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--brand-700);
}

.expected-document-type i[b-mut10hrb80] {
    font-size: 1rem;
    color: var(--brand-500);
}

.expected-document-type strong[b-mut10hrb80] {
    font-weight: 600;
    color: var(--brand-700);
}

/* Description */
.subjectivity-description[b-mut10hrb80] {
    margin: 0.5rem 0 0 0;
    font-size: 0.8125rem;
    color: var(--text-muted, #64748b);
    line-height: 1.5;
}

/* Document Info Card */
.document-info[b-mut10hrb80] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-top: 0.75rem;
    padding: 0.75rem 1rem;
    background: linear-gradient(135deg, var(--neutral-50) 0%, white 100%);
    border: 1px solid var(--neutral-200);
    border-radius: 10px;
    font-size: 0.8125rem;
    transition: all 0.2s ease;
}

.document-info:hover[b-mut10hrb80] {
    border-color: var(--brand-200);
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
}

.document-info.document-completed[b-mut10hrb80] {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.04) 0%, rgba(34, 197, 94, 0.08) 100%);
    border-color: rgba(34, 197, 94, 0.2);
}

.document-info.document-completed:hover[b-mut10hrb80] {
    border-color: rgba(34, 197, 94, 0.35);
    box-shadow: 0 2px 8px rgba(34, 197, 94, 0.1);
}

.document-info.document-completed i[b-mut10hrb80] {
    color: var(--success-500);
}

.document-info i[b-mut10hrb80] {
    color: var(--brand-500);
    font-size: 1.125rem;
    flex-shrink: 0;
}

.document-name[b-mut10hrb80] {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
}

/* Document Type Badge */
.document-type-badge[b-mut10hrb80] {
    display: inline-flex;
    align-items: center;
    padding: 0.3125rem 0.625rem;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.1) 0%, rgba(59, 130, 246, 0.15) 100%);
    color: var(--brand-600);
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
    border: 1px solid rgba(59, 130, 246, 0.15);
}

.document-type-badge.completed[b-mut10hrb80] {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.1) 0%, rgba(34, 197, 94, 0.15) 100%);
    color: var(--success-600);
    border-color: rgba(34, 197, 94, 0.2);
}

/* Signature Status */
.signature-status[b-mut10hrb80] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
}

.signature-completed[b-mut10hrb80] {
    background: rgba(34, 197, 94, 0.1);
    color: var(--success-600);
}

.signature-pending[b-mut10hrb80] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--warning-600);
}

.signature-failed[b-mut10hrb80] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--error-600);
}

.signature-none[b-mut10hrb80] {
    background: var(--neutral-100);
    color: var(--text-muted, #64748b);
}

/* Completed Info */
.completed-info[b-mut10hrb80] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.75rem;
    padding: 0.5rem 0.875rem;
    font-size: 0.8125rem;
    color: var(--success-700);
    font-weight: 600;
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.08) 0%, rgba(34, 197, 94, 0.14) 100%);
    border: 1px solid rgba(34, 197, 94, 0.2);
    border-radius: 8px;
}

.completed-info i[b-mut10hrb80] {
    font-size: 1rem;
    color: var(--success-500);
}

.completed-info span[b-mut10hrb80] {
    color: var(--success-700);
}

/* Action Buttons - Aligned with Documents Tab */
.subjectivity-actions[b-mut10hrb80] {
    flex-shrink: 0;
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.subjectivity-actions .btn[b-mut10hrb80] {
    height: 36px;
    padding: 0 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    border-radius: 8px;
    white-space: nowrap;
    transition: all 0.15s ease;
    cursor: pointer;
}

.subjectivity-actions .btn-outline-primary[b-mut10hrb80] {
    background: white;
    border: 1px solid var(--brand-300);
    color: var(--brand-600);
}

.subjectivity-actions .btn-outline-primary:hover[b-mut10hrb80] {
    background: var(--brand-50);
    border-color: var(--brand-400);
}

.subjectivity-actions .btn-outline-secondary[b-mut10hrb80] {
    background: white;
    border: 1px solid var(--neutral-200);
    color: var(--text-secondary, #64748b);
}

.subjectivity-actions .btn-outline-secondary:hover[b-mut10hrb80] {
    background: var(--neutral-100);
    color: var(--text-primary, #0f172a);
}

.subjectivity-actions .btn-outline-danger[b-mut10hrb80] {
    background: white;
    border: 1px solid var(--error-200);
    color: var(--error-500);
}

.subjectivity-actions .btn-outline-danger:hover[b-mut10hrb80] {
    background: var(--error-50);
    color: var(--error-600);
    border-color: var(--error-300);
}

.subjectivity-actions .btn i[b-mut10hrb80] {
    font-size: 0.875rem;
}

/* Icon-only buttons */
.subjectivity-actions .btn-icon[b-mut10hrb80] {
    width: 36px;
    height: 36px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    transition: all 0.15s ease;
    cursor: pointer;
}

.subjectivity-actions .btn-icon i[b-mut10hrb80] {
    font-size: 1rem;
}

/* Binding Summary Banner */
.binding-summary[b-mut10hrb80] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 1rem 1.25rem;
    margin: 0 1.5rem 1rem;
    border-radius: 10px;
    font-weight: 500;
    font-size: 0.875rem;
}

.binding-summary.ready[b-mut10hrb80] {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.08) 0%, rgba(34, 197, 94, 0.12) 100%);
    color: var(--success-700);
    border: 1px solid rgba(34, 197, 94, 0.25);
}

.binding-summary.ready i[b-mut10hrb80] {
    color: var(--success-500);
}

.binding-summary.not-ready[b-mut10hrb80] {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.08) 0%, rgba(245, 158, 11, 0.12) 100%);
    color: var(--warning-700);
    border: 1px solid rgba(245, 158, 11, 0.25);
}

.binding-summary.not-ready i[b-mut10hrb80] {
    color: var(--warning-500);
}

.binding-summary i[b-mut10hrb80] {
    font-size: 1.25rem;
}

/* Spin Animation */
@keyframes spin-b-mut10hrb80 {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.spin[b-mut10hrb80] {
    animation: spin-b-mut10hrb80 1s linear infinite;
}

/* Responsive Design */
@media (max-width: 768px) {
    .subjectivities-header[b-mut10hrb80] {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch;
        padding: 1rem;
    }
    
    .header-actions[b-mut10hrb80] {
        justify-content: flex-end;
    }
    
    .subjectivities-list[b-mut10hrb80] {
        padding: 0.75rem 1rem;
    }
    
    .subjectivity-item[b-mut10hrb80] {
        flex-direction: column;
        gap: 0.875rem;
        padding: 1rem;
    }
    
    .subjectivity-header[b-mut10hrb80] {
        flex-direction: column;
        gap: 0.5rem;
    }
    
    .subjectivity-actions[b-mut10hrb80] {
        width: 100%;
        justify-content: flex-end;
    }
    
    .binding-summary[b-mut10hrb80] {
        margin: 0 1rem 0.75rem;
    }
}

/* ========================================
   Document Selector Modal
   ======================================== */

.modal-backdrop[b-mut10hrb80] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    z-index: 1040;
}

.document-selector-modal[b-mut10hrb80] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 16px;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    z-index: 1050;
    width: 90%;
    max-width: 500px;
    max-height: 80vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.document-selector-modal .modal-header[b-mut10hrb80] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 1px solid #EEF2F6;
    background: #fff;
}

.document-selector-modal .modal-header h5[b-mut10hrb80] {
    margin: 0;
    flex: 1;
    min-width: 0;
    align-self: center;
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
}

.document-selector-modal .btn-close[b-mut10hrb80] {
    background: none;
    border: none;
    font-size: 1.25rem;
    color: var(--text-muted, #94a3b8);
    cursor: pointer;
    padding: 0.25rem;
    line-height: 1;
    border-radius: 8px;
    flex-shrink: 0;
}

.document-selector-modal .btn-close:hover[b-mut10hrb80] {
    background: #F1F5F9;
    color: #0F172A;
}

.document-selector-modal .modal-body[b-mut10hrb80] {
    padding: 1.15rem 1.5rem;
    overflow-y: auto;
    flex: 1;
}

.document-type-filter-info[b-mut10hrb80] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 0.875rem;
    background: var(--brand-50);
    border: 1px solid var(--brand-200);
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--brand-700);
    margin-bottom: 1rem;
}

.document-type-filter-info i[b-mut10hrb80] {
    font-size: 0.875rem;
}

.document-type-filter-info strong[b-mut10hrb80] {
    font-weight: 600;
}

.loading-documents[b-mut10hrb80],
.no-documents[b-mut10hrb80] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    text-align: center;
    color: var(--text-muted, #64748b);
    gap: 0.75rem;
}

.no-documents i[b-mut10hrb80] {
    font-size: 2.5rem;
    color: var(--neutral-300);
}

.document-selector-list[b-mut10hrb80] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.document-option[b-mut10hrb80] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 0.875rem 1rem;
    background: var(--neutral-50);
    border: 1px solid var(--neutral-200);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.document-option:hover[b-mut10hrb80] {
    border-color: var(--brand-300);
    background: white;
}

.document-option.current[b-mut10hrb80] {
    border-color: var(--brand-400);
    background: rgba(59, 130, 246, 0.05);
}

.document-option.invalid[b-mut10hrb80] {
    opacity: 0.7;
    border-color: var(--warning-300);
    background: rgba(245, 158, 11, 0.05);
}

.document-option-icon[b-mut10hrb80] {
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--brand-100);
    border-radius: 8px;
    color: var(--brand-600);
    font-size: 1.25rem;
    flex-shrink: 0;
}

.document-option.invalid .document-option-icon[b-mut10hrb80] {
    background: var(--warning-100);
    color: var(--warning-600);
}

.document-option-content[b-mut10hrb80] {
    flex: 1;
    min-width: 0;
}

.document-option-name[b-mut10hrb80] {
    font-weight: 500;
    font-size: 0.875rem;
    color: var(--text-primary, #0f172a);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.current-badge[b-mut10hrb80] {
    font-size: 0.6875rem;
    font-weight: 600;
    padding: 0.125rem 0.375rem;
    background: var(--brand-500);
    color: white;
    border-radius: 4px;
    text-transform: uppercase;
}

.document-option-meta[b-mut10hrb80] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-top: 0.25rem;
    font-size: 0.75rem;
}

.document-option-date[b-mut10hrb80] {
    color: var(--text-muted, #64748b);
}

.document-option-status[b-mut10hrb80] {
    font-weight: 500;
}

.document-option-status.valid[b-mut10hrb80] {
    color: var(--success-600);
}

.document-option-status.invalid[b-mut10hrb80] {
    color: var(--warning-600);
}

.document-option-action[b-mut10hrb80] {
    flex-shrink: 0;
    font-size: 1.125rem;
    color: var(--success-500);
}

.modal-footer-hint[b-mut10hrb80] {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--neutral-200);
    text-align: center;
}

/* ========================================
   Document Warning & Invalid States
   ======================================== */

.document-info.document-invalid[b-mut10hrb80] {
    border-color: var(--warning-400);
    background: rgba(245, 158, 11, 0.08);
}

.document-warning[b-mut10hrb80] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.1) 0%, rgba(245, 158, 11, 0.15) 100%);
    border: 1px solid rgba(245, 158, 11, 0.4);
    border-radius: 6px;
    font-size: 0.75rem;
    color: var(--warning-700);
}

.document-warning i[b-mut10hrb80] {
    color: var(--warning-500);
}

.documents-count-badge[b-mut10hrb80] {
    display: inline-flex;
    align-items: center;
    padding: 0.125rem 0.5rem;
    background: var(--neutral-100);
    color: var(--text-muted, #64748b);
    border-radius: 10px;
    font-size: 0.6875rem;
    font-weight: 500;
    margin-left: 0.5rem;
}

/* Warning button state */
.btn-warning[b-mut10hrb80] {
    background: #D97706;
    border-color: #D97706;
    color: white;
}

.btn-warning:hover[b-mut10hrb80] {
    background: #B45309;
    border-color: #B45309;
    color: white;
}

/* ========================================
   Action Buttons & Divider
   ======================================== */

.action-divider[b-mut10hrb80] {
    width: 1px;
    height: 1.5rem;
    background: var(--neutral-200);
    margin: 0 0.25rem;
}

.btn-icon[b-mut10hrb80] {
    width: 2rem;
    height: 2rem;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
}

.btn-icon i[b-mut10hrb80] {
    font-size: 0.875rem;
}

.btn-outline-danger[b-mut10hrb80] {
    border-color: var(--error-300);
    color: var(--error-600);
}

.btn-outline-danger:hover[b-mut10hrb80] {
    background: var(--error-50);
    border-color: var(--error-400);
    color: var(--error-700);
}

/* ========================================
   Modal Base Styles
   ======================================== */

.modal-overlay[b-mut10hrb80] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1.5rem;
}

.edit-requirement-modal[b-mut10hrb80] {
    width: 100%;
    max-width: 500px;
    max-height: 90vh;
    background: white;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    animation: modalSlideIn-b-mut10hrb80 0.3s ease-out;
    /* Allow overflow for dropdowns in edit modal */
    overflow: visible;
}

@keyframes modalSlideIn-b-mut10hrb80 {
    from {
        opacity: 0;
        transform: translateY(-20px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.edit-requirement-modal .modal-header[b-mut10hrb80] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 1px solid #EEF2F6;
    background: #fff;
    border-radius: 16px 16px 0 0;
}

.edit-requirement-modal .modal-header h3[b-mut10hrb80] {
    flex: 1;
    min-width: 0;
    align-self: center;
    font-size: 1.05rem;
    font-weight: 700;
    margin: 0;
    color: #0F172A;
}

.btn-close-modal[b-mut10hrb80] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    color: var(--text-muted, #94a3b8);
    border-radius: 8px;
    cursor: pointer;
    flex-shrink: 0;
    transition: all 0.15s ease;
}

.btn-close-modal:hover[b-mut10hrb80] {
    background: #F1F5F9;
    color: #0F172A;
}

.edit-requirement-modal .modal-body[b-mut10hrb80] {
    flex: 1;
    padding: 1.15rem 1.5rem;
    /* Allow dropdowns to overflow modal body */
    overflow: visible;
}

.edit-requirement-modal .modal-footer[b-mut10hrb80] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
    border-radius: 0 0 16px 16px;
}

/* ========================================
   Form Styles
   ======================================== */

.form-group[b-mut10hrb80] {
    margin-bottom: 1.25rem;
}

.form-group:last-child[b-mut10hrb80] {
    margin-bottom: 0;
}

.form-label[b-mut10hrb80] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.5rem;
}

.form-label i[b-mut10hrb80] {
    font-size: 0.875rem;
    color: var(--brand-500);
}

.required-mark[b-mut10hrb80] {
    color: var(--error-500);
}

.form-input[b-mut10hrb80] {
    width: 100%;
    padding: 0.625rem 0.875rem;
    font-size: 0.875rem;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    background: white;
    color: var(--text-primary, #0f172a);
    transition: all 0.2s ease;
}

.form-input:hover[b-mut10hrb80] {
    border-color: var(--brand-300);
}

.form-input:focus[b-mut10hrb80] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.form-input[b-mut10hrb80]::placeholder {
    color: var(--text-muted, #94a3b8);
}

.form-textarea[b-mut10hrb80] {
    resize: vertical;
    min-height: 80px;
}

/* ========================================
   Custom Dropdown Styles
   ======================================== */

/* Dropdown groups need position relative for z-index to work */
.dropdown-group[b-mut10hrb80] {
    position: relative;
}

/* Requirement Type dropdown - higher z-index so it appears above Document Type */
.dropdown-group-type[b-mut10hrb80] {
    z-index: 102;
}

/* Document Type dropdown - lower z-index */
.dropdown-group-doctype[b-mut10hrb80] {
    z-index: 101;
}

.type-dropdown[b-mut10hrb80] {
    position: relative;
}

.dropdown-toggle-custom[b-mut10hrb80] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 8px;
    padding: 0.625rem 0.875rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.dropdown-toggle-custom:hover[b-mut10hrb80] {
    border-color: var(--brand-300);
    background: var(--bg-hover, #f8fafc);
}

.dropdown-toggle-custom:focus[b-mut10hrb80] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.selected-type[b-mut10hrb80] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
}

.selected-type i[b-mut10hrb80] {
    font-size: 1rem;
    color: var(--brand-500);
}

.selected-type .text-muted[b-mut10hrb80] {
    color: var(--text-muted, #94a3b8);
}

.chevron-icon[b-mut10hrb80] {
    font-size: 0.75rem;
    color: var(--text-muted, #94a3b8);
    transition: transform 0.2s ease;
}

.chevron-icon.rotated[b-mut10hrb80] {
    transform: rotate(180deg);
}

.dropdown-menu-custom[b-mut10hrb80] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 10px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    max-height: 280px;
    overflow-y: auto;
    z-index: 1000;
    padding: 0.5rem;
}

.dropdown-menu-custom[b-mut10hrb80]::-webkit-scrollbar {
    width: 6px;
}

.dropdown-menu-custom[b-mut10hrb80]::-webkit-scrollbar-track {
    background: transparent;
}

.dropdown-menu-custom[b-mut10hrb80]::-webkit-scrollbar-thumb {
    background: var(--border-light);
    border-radius: 3px;
}

.dropdown-item-custom[b-mut10hrb80] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 0.75rem;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.dropdown-item-custom:hover[b-mut10hrb80] {
    background: var(--bg-hover, #f1f5f9);
}

.dropdown-item-custom.active[b-mut10hrb80] {
    background: var(--brand-50);
}

.dropdown-item-custom .item-icon[b-mut10hrb80] {
    font-size: 1rem;
    color: var(--text-muted, #94a3b8);
    width: 1.25rem;
    text-align: center;
    flex-shrink: 0;
}

.dropdown-item-custom:hover .item-icon[b-mut10hrb80],
.dropdown-item-custom.active .item-icon[b-mut10hrb80] {
    color: var(--brand-500);
}

.dropdown-item-custom .item-content[b-mut10hrb80] {
    flex: 1;
    min-width: 0;
}

.dropdown-item-custom .item-name[b-mut10hrb80] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
    display: block;
}

.dropdown-item-custom .item-desc[b-mut10hrb80] {
    font-size: 0.6875rem;
    color: var(--text-muted, #94a3b8);
    display: block;
    margin-top: 1px;
}

.dropdown-item-custom .check-icon[b-mut10hrb80] {
    font-size: 0.875rem;
    color: var(--brand-500);
    flex-shrink: 0;
}

/* ========================================
   Toggle Switch Styles
   ======================================== */

.toggle-group[b-mut10hrb80] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: var(--bg-subtle, #f8fafc);
    border: 1px solid var(--border-light);
    border-radius: 10px;
}

.toggle-switch[b-mut10hrb80] {
    position: relative;
    display: inline-block;
    width: 44px;
    height: 24px;
    flex-shrink: 0;
}

.toggle-switch input[b-mut10hrb80] {
    opacity: 0;
    width: 0;
    height: 0;
}

.toggle-slider[b-mut10hrb80] {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--neutral-300);
    transition: 0.3s;
    border-radius: 24px;
}

.toggle-slider[b-mut10hrb80]:before {
    position: absolute;
    content: "";
    height: 18px;
    width: 18px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    transition: 0.3s;
    border-radius: 50%;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}

.toggle-switch input:checked + .toggle-slider[b-mut10hrb80] {
    background-color: var(--brand-500);
}

.toggle-switch input:checked + .toggle-slider[b-mut10hrb80]:before {
    transform: translateX(20px);
}

.toggle-switch input:focus + .toggle-slider[b-mut10hrb80] {
    box-shadow: 0 0 0 3px var(--brand-100);
}

.toggle-label-content[b-mut10hrb80] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.toggle-label-text[b-mut10hrb80] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary, #1e293b);
}

.toggle-label-desc[b-mut10hrb80] {
    font-size: 0.6875rem;
    color: var(--text-secondary, #64748b);
    line-height: 1.4;
}

/* ========================================
   Modal Buttons
   ======================================== */

.btn-cancel[b-mut10hrb80] {
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-cancel:hover[b-mut10hrb80] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-submit[b-mut10hrb80] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: white;
    background: var(--brand-600, #004980);
    border: none;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-submit:hover:not(:disabled)[b-mut10hrb80] {
    background: var(--brand-700, #003760);
}

.btn-submit:disabled[b-mut10hrb80] {
    background: var(--neutral-300);
    cursor: not-allowed;
}

.text-muted[b-mut10hrb80] {
    color: var(--text-muted, #94a3b8) !important;
}

/* ========================================
   Upload Modal Styles
   ======================================== */

.upload-modal[b-mut10hrb80] {
    width: 100%;
    max-width: 520px;
    max-height: 90vh;
    background: white;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    animation: modalSlideIn-b-mut10hrb80 0.3s ease-out;
    overflow: hidden;
}

.upload-modal .modal-header[b-mut10hrb80] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 1px solid #EEF2F6;
    background: #fff;
    border-radius: 16px 16px 0 0;
}

.upload-modal .modal-header h3[b-mut10hrb80] {
    flex: 1;
    min-width: 0;
    align-self: center;
    font-size: 1.05rem;
    font-weight: 700;
    margin: 0;
    color: #0F172A;
}

.upload-modal .modal-body[b-mut10hrb80] {
    padding: 1.15rem 1.5rem;
    overflow-y: auto;
    flex: 1;
}

/* Thin scrollbar for upload modal */
.upload-modal .modal-body[b-mut10hrb80]::-webkit-scrollbar {
    width: 6px;
}

.upload-modal .modal-body[b-mut10hrb80]::-webkit-scrollbar-track {
    background: transparent;
}

.upload-modal .modal-body[b-mut10hrb80]::-webkit-scrollbar-thumb {
    background: var(--neutral-300);
    border-radius: 3px;
}

.upload-modal .modal-body[b-mut10hrb80]::-webkit-scrollbar-thumb:hover {
    background: var(--neutral-400);
}

/* /Components/Pages/Underwriting/Tabs/ApplicationSummaryTab.razor.rz.scp.css */
/* ========================================
   Application Summary Tab - Document View
   ======================================== */

/* ========================================
   Tab Animations
   ======================================== */
@keyframes fadeInUp-b-awfxyf83tl {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn-b-awfxyf83tl {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes scaleIn-b-awfxyf83tl {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Summary Document Container */
.summary-document[b-awfxyf83tl] {
    background: white;
    padding: 2rem;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    animation: fadeInUp-b-awfxyf83tl 0.4s ease-out;
}

/* Document Header */
.document-header[b-awfxyf83tl] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 2rem;
    padding-bottom: 1.5rem;
    border-bottom: 2px solid var(--border-light);
    flex-wrap: wrap;
    gap: 1rem;
    animation: fadeIn-b-awfxyf83tl 0.35s ease-out;
}

.document-meta[b-awfxyf83tl] {
    flex: 1;
}

.document-title[b-awfxyf83tl] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--brand-700);
    margin-bottom: 0;
}


/* ========================================
   Referral Alert Section
   ======================================== */

.referral-alert[b-awfxyf83tl] {
    background: linear-gradient(135deg, var(--warning-50) 0%, #fff8e6 100%);
    border: 1px solid var(--warning-300);
    border-left: 4px solid var(--warning-500);
    border-radius: var(--radius-md);
    padding: 1.25rem;
    margin-bottom: 2rem;
    animation: fadeInUp-b-awfxyf83tl 0.4s ease-out 0.1s backwards;
}

.referral-alert-header[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 1rem;
    font-weight: 700;
    color: var(--warning-700);
    margin-bottom: 0.5rem;
}

.referral-alert-header i[b-awfxyf83tl] {
    font-size: 1.25rem;
    color: var(--warning-600);
}

.referral-alert-subtitle[b-awfxyf83tl] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0 0 1rem 0;
}

.referral-reasons-list[b-awfxyf83tl] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.referral-reason-item[b-awfxyf83tl] {
    background: white;
    border: 1px solid var(--warning-200);
    border-radius: var(--radius-sm);
    padding: 0.75rem 1rem;
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    animation: fadeInUp-b-awfxyf83tl 0.3s ease-out forwards;
    opacity: 0;
}

/* Staggered referral reason animations */
.referral-reason-item:nth-child(1)[b-awfxyf83tl] { animation-delay: 50ms; }
.referral-reason-item:nth-child(2)[b-awfxyf83tl] { animation-delay: 100ms; }
.referral-reason-item:nth-child(3)[b-awfxyf83tl] { animation-delay: 150ms; }
.referral-reason-item:nth-child(4)[b-awfxyf83tl] { animation-delay: 200ms; }
.referral-reason-item:nth-child(5)[b-awfxyf83tl] { animation-delay: 250ms; }

.referral-reason-icon[b-awfxyf83tl] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--warning-100);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.referral-reason-icon i[b-awfxyf83tl] {
    font-size: 0.875rem;
    color: var(--warning-600);
}

.referral-reason-content[b-awfxyf83tl] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.referral-reason-question[b-awfxyf83tl] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.referral-reason-response[b-awfxyf83tl] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--warning-700);
    font-weight: 600;
    background: var(--warning-100);
    padding: 0.25rem 0.625rem;
    border-radius: var(--radius-sm);
    width: fit-content;
}

.referral-reason-response i[b-awfxyf83tl] {
    font-size: 0.75rem;
}

/* Info Section */
.info-section[b-awfxyf83tl] {
    margin-bottom: 2rem;
    page-break-inside: avoid;
    animation: fadeInUp-b-awfxyf83tl 0.4s ease-out forwards;
    opacity: 0;
}

/* Staggered info section animations */
.info-section:nth-child(1)[b-awfxyf83tl] { animation-delay: 50ms; }
.info-section:nth-child(2)[b-awfxyf83tl] { animation-delay: 100ms; }
.info-section:nth-child(3)[b-awfxyf83tl] { animation-delay: 150ms; }
.info-section:nth-child(4)[b-awfxyf83tl] { animation-delay: 200ms; }
.info-section:nth-child(5)[b-awfxyf83tl] { animation-delay: 250ms; }
.info-section:nth-child(6)[b-awfxyf83tl] { animation-delay: 300ms; }

/* The rule line under a section title, and the gap to the section body. It belongs to
   whichever element IS the header block — the bare <h3> for most sections, the
   .section-head row for a section that also carries an action button — so every section
   header underlines the full width of the panel. */
.section-header[b-awfxyf83tl],
.section-head[b-awfxyf83tl] {
    border-bottom: 2px solid var(--brand-200);
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
}

.section-header[b-awfxyf83tl] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--brand-700);
}

/* Header row for a section that also carries an action (Premium Breakdown's Download
   Estimate). Replaces the Bootstrap d-flex/justify-content-between/align-items-center/mb-3
   that used to sit on that row, so the collapsed state below can zero the margin without
   fighting a utility class's !important — and so a future section with a header action
   lays out correctly from this one class. */
.section-head[b-awfxyf83tl] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
}

/* Inside that row the <h3> is a flex item, so it shrinks to fit its text and its own
   border-bottom would stop where the title ends. The row owns the rule line; the heading
   keeps only its typography. */
.section-head .section-header[b-awfxyf83tl] {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

/* The section heading doubles as the collapse toggle. Reset the button chrome only —
   .section-header still supplies the typography, and the header block the underline. */
.section-toggle[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    background: none;
    border: none;
    padding: 0;
    font: inherit;
    color: inherit;
    text-align: left;
    cursor: pointer;
}

.section-toggle i[b-awfxyf83tl] {
    font-size: 0.85em;
    color: var(--brand-500);
}

.section-toggle:hover i[b-awfxyf83tl] {
    color: var(--brand-700);
}

.section-toggle:focus-visible[b-awfxyf83tl] {
    outline: none;
    box-shadow: 0 0 0 3px rgba(13, 103, 133, 0.2);
    border-radius: 6px;
}

/* Collapsed sections are hidden with CSS, not removed with a Razor @if, because a
   @media print rule cannot re-add DOM that Razor never rendered and a collapsed
   section must still print in full. Scoping the collapse to `screen` is what makes
   print expand everything — keep this rule inside the media query. */
@media screen {
    .info-section-collapsed > *:not(.section-header):not(.section-head)[b-awfxyf83tl] {
        display: none;
    }

    /* Nothing follows the heading while collapsed, so drop the gap it was reserving. */
    .info-section-collapsed .section-header[b-awfxyf83tl],
    .info-section-collapsed .section-head[b-awfxyf83tl] {
        margin-bottom: 0;
    }
}

/* Environmental Question Group */
.env-question-group[b-awfxyf83tl] {
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--border-light);
}

.env-question-group:last-child[b-awfxyf83tl] {
    border-bottom: none;
}

/* Enhanced Environmental Question Row */
.env-question-row[b-awfxyf83tl] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1.5rem;
    padding: 0.5rem 0;
}

.env-question-text[b-awfxyf83tl] {
    flex: 1;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary);
    line-height: 1.5;
}

.env-answer-text[b-awfxyf83tl] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    text-align: right;
    max-width: 50%;
}

.env-answer[b-awfxyf83tl] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    padding: 0.25rem 0.625rem;
    border-radius: 4px;
    white-space: nowrap;
    flex-shrink: 0;
}

.env-answer i[b-awfxyf83tl] {
    font-size: 0.875rem;
}

.env-answer-yes[b-awfxyf83tl] {
    background: var(--brand-50);
    color: var(--brand-700);
}

.env-answer-yes i[b-awfxyf83tl] {
    color: var(--brand-600);
}

.env-answer-no[b-awfxyf83tl] {
    background: var(--neutral-100);
    color: var(--text-secondary);
}

.env-answer-no i[b-awfxyf83tl] {
    color: var(--text-muted);
}

/* Child Section Styling */
.env-child-section[b-awfxyf83tl] {
    margin-top: 0.5rem;
    margin-left: 1rem;
    padding-left: 1rem;
    border-left: 2px solid var(--brand-200);
}

.env-child-row .env-question-text[b-awfxyf83tl] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.env-indent-icon[b-awfxyf83tl] {
    color: var(--brand-300);
    margin-right: 0.375rem;
    font-size: 0.75rem;
}

/* Grandchild Section Styling */
.env-grandchild-section[b-awfxyf83tl] {
    margin-top: 0.375rem;
    margin-left: 1rem;
    padding-left: 1rem;
    border-left: 2px solid var(--brand-100);
}

.env-grandchild-row .env-question-text[b-awfxyf83tl] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

/* ========================================
   Enhanced Info Row Layout
   ======================================== */

.info-row-group[b-awfxyf83tl] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.info-row[b-awfxyf83tl] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--border-light);
    gap: 1.5rem;
}

.info-row:last-child[b-awfxyf83tl] {
    border-bottom: none;
}

.info-row-label[b-awfxyf83tl] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary);
    flex-shrink: 0;
    min-width: 160px;
}

.info-row-value[b-awfxyf83tl] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    text-align: right;
    flex: 1;
}

.info-value-highlight[b-awfxyf83tl] {
    font-weight: 600;
    color: var(--brand-700);
}

.info-code[b-awfxyf83tl] {
    font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;
    font-size: 0.8125rem;
    background: var(--neutral-100);
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    color: var(--brand-700);
}

.info-address[b-awfxyf83tl] {
    display: flex;
    align-items: flex-start;
    gap: 0.25rem;
}

.info-notes[b-awfxyf83tl] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    background: var(--neutral-50);
    padding: 0.5rem 0.75rem;
    border-radius: 4px;
    border-left: 3px solid var(--brand-200);
}

/* Info Badges */
.info-badge[b-awfxyf83tl] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 0.625rem;
    border-radius: 4px;
}

.info-badge-primary[b-awfxyf83tl] {
    background: var(--brand-50);
    color: var(--brand-700);
}

.info-badge-secondary[b-awfxyf83tl] {
    background: var(--neutral-100);
    color: var(--text-secondary);
}

.info-badge-success[b-awfxyf83tl] {
    background: var(--success-50);
    color: var(--success-700);
}

.info-badge-warning[b-awfxyf83tl] {
    background: var(--warning-50);
    color: var(--warning-700);
}

.info-badge-danger[b-awfxyf83tl] {
    background: var(--danger-50);
    color: var(--danger-700);
}

/* ========================================
   Warranty Statements Box
   ======================================== */

.warranty-statements-box[b-awfxyf83tl] {
    background: var(--neutral-50);
    border: 1px solid var(--border-light);
    border-radius: 8px;
    overflow: hidden;
}

.warranty-statements-header[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--brand-50);
    border-bottom: 1px solid var(--brand-100);
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--brand-700);
}

.warranty-statements-header i[b-awfxyf83tl] {
    font-size: 1rem;
    color: var(--brand-600);
}

.warranty-statements-content[b-awfxyf83tl] {
    padding: 1rem;
}

.warranty-list[b-awfxyf83tl] {
    margin: 0;
    padding-left: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.warranty-list li[b-awfxyf83tl] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

.warranty-list li[b-awfxyf83tl]::marker {
    color: var(--brand-400);
}

.warranty-acceptance-status[b-awfxyf83tl] {
    padding: 0.75rem 1rem;
    background: white;
    border-top: 1px solid var(--border-light);
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.warranty-acceptance-row[b-awfxyf83tl] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
}

.warranty-acceptance-label[b-awfxyf83tl] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    flex: 1;
}

/* Subsection Header */
.info-subsection[b-awfxyf83tl] {
    margin-top: 1.5rem;
    padding-top: 1rem;
    border-top: 1px dashed var(--border-light);
}

.info-subsection:first-child[b-awfxyf83tl] {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.info-subsection-header[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--brand-600);
    margin-bottom: 1rem;
}

.info-subsection-header i[b-awfxyf83tl] {
    font-size: 1rem;
    color: var(--brand-500);
}

/* Info Grid */
.info-grid[b-awfxyf83tl] {
    display: grid;
    grid-template-columns: minmax(180px, auto) 1fr;
    gap: 0.75rem 1.25rem;
    align-items: baseline;
}

.info-label[b-awfxyf83tl] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-muted);
    letter-spacing: 0.3px;
}

.info-value[b-awfxyf83tl] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary);
}

/* Child Question Section */
.child-question-section[b-awfxyf83tl] {
    margin-top: 12px;
    margin-left: 20px;
    padding-left: 16px;
    border-left: 2px solid var(--brand-200);
    background: linear-gradient(to right, rgba(15, 23, 42, 0.02) 0%, transparent 100%);
    border-radius: 0 6px 6px 0;
    padding-top: 8px;
    padding-bottom: 8px;
    padding-right: 8px;
}

/* Grandchild Question Section */
.grandchild-question-section[b-awfxyf83tl] {
    margin-top: 12px;
    margin-left: 20px;
    padding-left: 20px;
    border-left: 3px solid var(--brand-300);
    background: linear-gradient(to right, rgba(15, 23, 42, 0.04) 0%, transparent 100%);
    border-radius: 0 8px 8px 0;
    padding-top: 8px;
    padding-bottom: 8px;
    padding-right: 8px;
}

/* Tank Details Table */
.tank-details-table[b-awfxyf83tl] {
    width: 100%;
    border-collapse: collapse;
    margin-top: 0.5rem;
    font-size: 0.875rem;
}

.tank-details-table th[b-awfxyf83tl] {
    background: var(--neutral-100);
    padding: 0.5rem;
    border: 1px solid var(--border-light);
    text-align: left;
    font-weight: 600;
    color: var(--text-primary);
    font-size: 0.8125rem;
}

.tank-details-table td[b-awfxyf83tl] {
    padding: 0.5rem;
    border: 1px solid var(--border-light);
    color: var(--text-secondary);
}

.tank-details-table tbody tr:hover[b-awfxyf83tl] {
    background: var(--neutral-50);
}

/* Premium Breakdown */
.premium-breakdown[b-awfxyf83tl] {
    background: var(--brand-50);
    padding: 1.5rem;
    border-radius: 8px;
    margin-top: 0.5rem;
}

.premium-row[b-awfxyf83tl] {
    display: flex;
    justify-content: space-between;
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--border-light);
    font-size: 0.9375rem;
}

.premium-row:last-of-type[b-awfxyf83tl] {
    border-bottom: none;
}

.base-premium-row[b-awfxyf83tl] {
    font-weight: 600;
    font-size: 1rem;
    color: var(--text-primary);
    padding: 0.75rem 0;
    border-bottom: 2px solid var(--brand-300);
}

.premium-section-header[b-awfxyf83tl] {
    font-weight: 700;
    font-size: 0.875rem;
    text-transform: uppercase;
    color: var(--brand-700);
    margin-top: 1rem;
    margin-bottom: 0.5rem;
    letter-spacing: 0.5px;
}

.factor-row[b-awfxyf83tl] {
    padding-left: 1rem;
    color: var(--text-secondary);
    font-size: 0.875rem;
}

.factor-row span:last-child[b-awfxyf83tl] {
    font-family: 'Courier New', monospace;
    color: #0D6785;
}

.total-factor-row[b-awfxyf83tl] {
    font-weight: 600;
    padding-left: 1rem;
    margin-top: 0.5rem;
    padding-top: 0.75rem;
    border-top: 1px dashed var(--brand-300);
    color: var(--text-primary);
}

.total-factor-row span:last-child[b-awfxyf83tl] {
    font-family: 'Courier New', monospace;
    font-weight: 700;
}

.subtotal-row[b-awfxyf83tl] {
    font-weight: 600;
    background: var(--brand-100);
    margin: 0.5rem -1.5rem;
    padding: 0.75rem 1.5rem;
    border-bottom: 2px solid var(--brand-300);
    font-size: 1rem;
}

.premium-formula-note[b-awfxyf83tl] {
    text-align: right;
    font-size: 0.72rem;
    color: #9CA3AF;
    font-family: 'Courier New', monospace;
    padding: 0 1.5rem 0.25rem;
    margin-top: -0.25rem;
}

.formula-strike[b-awfxyf83tl] {
    text-decoration: line-through;
    color: #D1D5DB;
}

.formula-min-tag[b-awfxyf83tl] {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    margin-left: 4px;
    padding: 1px 6px;
    background: #FEF3C7;
    color: #92400E;
    border-radius: 4px;
    font-size: 9px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    cursor: help;
}

.formula-min-tag i[b-awfxyf83tl] {
    font-size: 9px;
}

.premium-min-label[b-awfxyf83tl] {
    text-align: right;
    font-size: 0.65rem;
    color: #92400E;
    font-style: italic;
    padding: 0 1.5rem 0.5rem;
}

.fee-row[b-awfxyf83tl] {
    padding-left: 1rem;
    color: var(--text-secondary);
    font-size: 0.875rem;
}

.fee-row.borrower-pays[b-awfxyf83tl],
.simplified-premium-row.borrower-pays[b-awfxyf83tl] {
    background: #FFF7ED;
    border: 1px dashed #F59E0B;
    border-radius: 4px;
    padding: 0.375rem 0.75rem;
}

.fee-row.borrower-pays span:last-child[b-awfxyf83tl],
.simplified-premium-row.borrower-pays span:last-child[b-awfxyf83tl] {
    color: #9CA3AF;
    text-decoration: line-through;
}

.total-row[b-awfxyf83tl] {
    display: flex;
    justify-content: space-between;
    padding: 1rem 0;
    margin-top: 0.5rem;
    border-top: 3px solid var(--brand-500);
    font-weight: 700;
    font-size: 1.25rem;
    color: var(--brand-700);
}

/* Simplified Premium View (for non-privileged roles) */
.simplified-premium-row[b-awfxyf83tl] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 0.75rem 0;
    border-bottom: none;
    font-size: 0.9375rem;
    color: var(--text-primary);
}

.simplified-premium-row span:last-child[b-awfxyf83tl] {
    font-weight: 600;
    font-size: 1rem;
}

.premium-label-group[b-awfxyf83tl] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.premium-label[b-awfxyf83tl] {
    font-weight: 600;
    color: var(--brand-600);
    font-size: 0.9375rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.premium-sublabel[b-awfxyf83tl] {
    font-size: 0.75rem;
    color: var(--text-muted);
    font-weight: 400;
}

.premium-separator-dashed[b-awfxyf83tl] {
    border-top: 2px dashed var(--border-light);
    margin: 1rem 0;
}

/* Badges */
.badge[b-awfxyf83tl] {
    font-size: 0.75rem;
    padding: 0.375rem 0.75rem;
    border-radius: 6px;
    font-weight: 700;
}

/* Status Badges */
.status-badge[b-awfxyf83tl] {
    display: inline-block;
    padding: 0.25rem 0.75rem;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
}

.status-badge-draft[b-awfxyf83tl] {
    background: var(--neutral-200);
    color: var(--neutral-700);
}

.status-badge-submitted[b-awfxyf83tl],
.status-badge-inreview[b-awfxyf83tl] {
    background: var(--brand-100);
    color: var(--brand-700);
}

.status-badge-approved[b-awfxyf83tl] {
    background: var(--success-100);
    color: var(--success-700);
}

.status-badge-declined[b-awfxyf83tl] {
    background: var(--error-100);
    color: var(--error-700);
}

.status-badge-referral[b-awfxyf83tl],
.status-badge-referredtounderwriter[b-awfxyf83tl] {
    background: var(--warning-200);
    color: var(--warning-700);
}

/* Print Styles */
@media print {
    .summary-document[b-awfxyf83tl] {
        box-shadow: none;
        margin: 0;
        padding: 0;
    }

    .document-header button[b-awfxyf83tl] {
        display: none;
    }

    /* Collapsed sections print expanded: the collapse rule lives in @media screen, so it
       simply does not apply here. Only the toggle's chevron needs suppressing, or every
       heading prints with a stray arrow. */
    .section-toggle i[b-awfxyf83tl] {
        display: none;
    }

    .info-section[b-awfxyf83tl] {
        page-break-inside: avoid;
    }

    .section-header[b-awfxyf83tl] {
        page-break-after: avoid;
    }
}

/* Responsive */
@media (max-width: 768px) {
    .summary-document[b-awfxyf83tl] {
        margin: 1rem;
        padding: 1.5rem;
    }

    .document-header[b-awfxyf83tl] {
        flex-direction: column;
        align-items: stretch;
    }

    .info-grid[b-awfxyf83tl] {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }

    .info-label[b-awfxyf83tl] {
        margin-bottom: 0.25rem;
    }

    .child-question-section[b-awfxyf83tl],
    .grandchild-question-section[b-awfxyf83tl] {
        margin-left: 10px;
        padding-left: 10px;
    }

    .tank-details-table[b-awfxyf83tl] {
        font-size: 0.75rem;
    }

    .tank-details-table th[b-awfxyf83tl],
    .tank-details-table td[b-awfxyf83tl] {
        padding: 0.25rem;
    }

    /* Environmental Question Responsive */
    .env-question-row[b-awfxyf83tl] {
        flex-direction: column;
        gap: 0.5rem;
        align-items: flex-start;
    }

    .env-answer-text[b-awfxyf83tl] {
        text-align: left;
        max-width: 100%;
    }

    .env-child-section[b-awfxyf83tl],
    .env-grandchild-section[b-awfxyf83tl] {
        margin-left: 0.5rem;
        padding-left: 0.75rem;
    }

    /* Info Row Responsive */
    .info-row[b-awfxyf83tl] {
        flex-direction: column;
        gap: 0.375rem;
        align-items: flex-start;
    }

    .info-row-label[b-awfxyf83tl] {
        min-width: auto;
    }

    .info-row-value[b-awfxyf83tl] {
        text-align: left;
    }

    .info-subsection-header[b-awfxyf83tl] {
        font-size: 0.8125rem;
    }

    /* Warranty Responsive */
    .warranty-acceptance-row[b-awfxyf83tl] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.375rem;
    }
}

/* ========================================
   Environmental Documents Panel
   ======================================== */

.env-documents-panel[b-awfxyf83tl] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    display: flex;
    flex-direction: column;
    /* Keeps .panel-locked-overlay (position: absolute, inset 0) bound to this card, and keeps
       the z-index below live. Both used to come from Bootstrap's .sticky-top on the markup;
       see the comment there for why the card is no longer sticky. */
    position: relative;
    z-index: 10; /* Lower than notification dropdown (z-index: 1000) */
}

/* Disabled Panel State */
.env-documents-panel.panel-disabled[b-awfxyf83tl] {
    pointer-events: none;
}

.env-documents-panel.panel-disabled > *:not(.panel-locked-overlay)[b-awfxyf83tl] {
    opacity: 0.4;
    filter: grayscale(30%);
}

.panel-locked-overlay[b-awfxyf83tl] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
    backdrop-filter: blur(2px);
}

.panel-locked-message[b-awfxyf83tl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1.5rem;
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.panel-locked-message i[b-awfxyf83tl] {
    font-size: 2rem;
    color: var(--text-muted);
}

.panel-locked-message span[b-awfxyf83tl] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

/* Declined State */
.panel-locked-overlay.declined[b-awfxyf83tl] {
    background: rgba(254, 226, 226, 0.8);
}

.panel-locked-overlay.declined .panel-locked-message[b-awfxyf83tl] {
    background: #fee2e2;
    border: 1px solid #fecaca;
}

.panel-locked-overlay.declined .panel-locked-message i[b-awfxyf83tl] {
    color: var(--error-600);
}

.panel-locked-overlay.declined .panel-locked-message span[b-awfxyf83tl] {
    color: #991b1b;
}

.env-documents-header[b-awfxyf83tl] {
    background: linear-gradient(135deg, var(--brand-600) 0%, var(--brand-700) 100%);
    color: white;
    padding: 1.25rem 1.5rem;
    border-radius: 12px 12px 0 0;
}

.env-documents-title[b-awfxyf83tl] {
    font-size: 1.125rem;
    font-weight: 700;
    margin: 0 0 0.25rem 0;
    color: white;
    display: flex;
    align-items: center;
}

.env-documents-title i[b-awfxyf83tl] {
    font-size: 1.25rem;
}

.env-documents-subtitle[b-awfxyf83tl] {
    font-size: 0.8125rem;
    opacity: 0.85;
    font-weight: 400;
}

/* Bank risk score badge at the top of the panel. Moved verbatim from
   EnvironmentalReviewPanel.razor.css with the badge it paints — scoped CSS stays with the component
   that declares it, so a badge that changes components loses its rule unless the rule moves too.
   Not promoted to leca-theme.css: it is one domain-specific badge with one call site, not an
   app-wide pattern, and the theme's .badge family is the app's shared badge vocabulary. The row
   around it needs no rule at all — Bootstrap utilities carry the layout. */
.bank-risk-score[b-awfxyf83tl] {
    font-weight: 700;
    padding: 0.1rem 0.55rem;
    border-radius: 6px;
    background: #e0e7ff;
    color: #3730a3;
}

.env-documents-body[b-awfxyf83tl] {
    padding: 1.5rem;
    flex: 1;
    display: flex;
    flex-direction: column;
    background: white;
    border-radius: 0 0 12px 12px;
}

/* Loading State */
.env-loading-state[b-awfxyf83tl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 1rem;
    color: var(--text-muted);
}

.env-loading-state p[b-awfxyf83tl] {
    margin: 1rem 0 0 0;
    font-size: 0.875rem;
}

/* Empty State */
.env-empty-state[b-awfxyf83tl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1rem 1rem;
    text-align: center;
}

.env-empty-icon[b-awfxyf83tl] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--neutral-100);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
}

.env-empty-icon i[b-awfxyf83tl] {
    font-size: 1.75rem;
    color: var(--neutral-400);
}

.env-empty-title[b-awfxyf83tl] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.5rem 0;
}

.env-empty-subtitle[b-awfxyf83tl] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    margin: 0;
    max-width: 200px;
    line-height: 1.4;
}

/* Auto-init explainer note — appears in the empty state of the VERAcheck
   document panel when the system kicked off a VERAcheck desktop study
   automatically on submission (bank chose not to upload a Phase I ESA). */
.env-auto-init-note[b-awfxyf83tl] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    margin-top: 1rem;
    padding: 0.625rem 0.75rem;
    background: #EFF6FF;          /* blue-50 */
    border: 1px solid #BFDBFE;    /* blue-200 */
    border-left: 3px solid #2563EB; /* blue-600 accent */
    border-radius: 6px;
    font-size: 0.75rem;
    line-height: 1.45;
    color: #1E3A8A;               /* blue-900 text */
    text-align: left;
    max-width: 320px;
}

.env-auto-init-note i[b-awfxyf83tl] {
    flex-shrink: 0;
    margin-top: 1px;
    color: #2563EB;
    font-size: 0.875rem;
}

.env-auto-init-note strong[b-awfxyf83tl] {
    color: #1E40AF;               /* blue-800 */
    font-weight: 600;
}

/* Request Button in Empty State */
.env-empty-state .action-link[b-awfxyf83tl] {
    margin-top: 1.25rem;
}

.env-empty-state .action-link:disabled[b-awfxyf83tl] {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none;
    box-shadow: var(--shadow-sm);
}

/* Success Message */
.env-request-success[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 1rem;
    padding: 0.625rem 1rem;
    background: linear-gradient(135deg, var(--success-50) 0%, var(--success-100) 100%);
    border: 1px solid var(--success-200);
    border-radius: var(--radius-md);
    color: var(--success-700);
    font-size: 0.8125rem;
    font-weight: 500;
}

.env-request-success i[b-awfxyf83tl] {
    font-size: 1rem;
    color: var(--success-600);
}

/* ========================================
   Sub-sections — Bank-Submitted Document, then VERAcheck Report
   ======================================== */

/* Both always render, so the divider between them is what makes two groups read as two
   groups rather than one long list. The first has no rule above it: the panel header
   already supplies that edge. */
.env-subsection + .env-subsection[b-awfxyf83tl] {
    margin-top: 1.25rem;
    padding-top: 1.25rem;
    border-top: 1px solid var(--neutral-200);
}

.env-subsection-header[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

/* Deliberately quieter than .env-documents-title above it and than
   EnvironmentalReviewPanel's sibling card title below: these are sub-headings of the
   panel, and 049 un-nested that card so its own <h3> would stop reading as one. */
.env-subsection-title[b-awfxyf83tl] {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text-secondary);
    margin: 0;
}

/* Tighter than the whole-panel empty state it replaces — a sub-section that is empty
   while the other holds documents should not push the panel to twice its height. */
.env-subsection-empty[b-awfxyf83tl] {
    padding: 1rem 0.75rem;
    background: var(--neutral-50);
    border: 1px dashed var(--neutral-200);
    border-radius: var(--radius-md);
}

.env-subsection-empty .env-empty-icon[b-awfxyf83tl] {
    width: 40px;
    height: 40px;
    margin-bottom: 0.625rem;
}

.env-subsection-empty .env-empty-icon i[b-awfxyf83tl] {
    font-size: 1.125rem;
}

.env-subsection-empty .env-empty-title[b-awfxyf83tl] {
    font-size: 0.875rem;
    margin-bottom: 0.25rem;
}

.env-subsection-empty .env-empty-subtitle[b-awfxyf83tl] {
    max-width: 260px;
}

/* Add ESA Document, in the sub-section header. Sized down so a header action does not out-weigh
   the panel's own CTAs below. */
.env-subsection-action[b-awfxyf83tl] {
    flex-shrink: 0;
    white-space: nowrap;
}

/* Request VERAcheck, at the foot of its sub-section. */
.env-subsection-cta[b-awfxyf83tl] {
    margin-top: 0.75rem;
}

/* Document List */
.env-document-list[b-awfxyf83tl] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    flex: 1;
}

/* ========================================
   Document Card - Paper Document Style
   ======================================== */
.env-document-card[b-awfxyf83tl] {
    position: relative;
    background: #fffffe;
    border-radius: 1px;
    border: 1px solid #d8d8d4;
    transition: all 0.2s ease;
    overflow: visible;
    /* Paper shadow - subtle lift */
    box-shadow: 
        1px 1px 1px rgba(0,0,0,0.03),
        2px 2px 4px rgba(0,0,0,0.05),
        4px 4px 8px rgba(0,0,0,0.03);
    /* Space for stamp overflow on the right */
    margin-right: 20px;
}

/* Paper texture overlay */
.env-document-card[b-awfxyf83tl]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: 
        repeating-linear-gradient(
            0deg,
            transparent,
            transparent 28px,
            rgba(0, 100, 180, 0.015) 28px,
            rgba(0, 100, 180, 0.015) 29px
        );
    pointer-events: none;
    z-index: 0;
}

/* Dog-ear corner fold effect */
.env-document-card[b-awfxyf83tl]::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 12px 12px 0;
    border-color: transparent #e8e8e4 transparent transparent;
    z-index: 1;
}

.env-document-card:hover[b-awfxyf83tl] {
    box-shadow: 
        2px 2px 4px rgba(0,0,0,0.06),
        4px 4px 12px rgba(0,0,0,0.08);
    transform: translateY(-1px);
}

/* Paper with VERA stamp - verified */
.env-document-card.vera-stamp-verified[b-awfxyf83tl] {
    background: #fffffe;
    border-color: #c8d8c8;
}

.env-document-card.vera-stamp-verified[b-awfxyf83tl]::after {
    border-color: transparent #d8e8d8 transparent transparent;
}

/* Paper with VERA stamp - not verified */
.env-document-card.vera-stamp-not-verified[b-awfxyf83tl] {
    background: #fffffe;
    border-color: #d8c8c8;
}

.env-document-card.vera-stamp-not-verified[b-awfxyf83tl]::after {
    border-color: transparent #e8d8d8 transparent transparent;
}

/* Card Main Content Row */
.env-card-main[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.75rem 0.875rem;
    padding-right: 70px;
    position: relative;
    z-index: 2;
}

.vera-stamp-verified .env-card-main[b-awfxyf83tl],
.vera-stamp-not-verified .env-card-main[b-awfxyf83tl] {
    padding-right: 75px;
}

/* Document Icon */
.env-document-icon[b-awfxyf83tl] {
    width: 32px;
    height: 32px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.env-document-icon i[b-awfxyf83tl] {
    font-size: 1rem;
}

.env-document-icon.status-approved[b-awfxyf83tl] {
    background: var(--success-100);
    color: var(--success-600);
}

.env-document-icon.status-pending[b-awfxyf83tl] {
    background: var(--neutral-200);
    color: var(--neutral-500);
}

.env-document-icon.status-review[b-awfxyf83tl] {
    background: var(--warning-100);
    color: var(--warning-600);
}

/* Document Details */
.env-document-details[b-awfxyf83tl] {
    flex: 1;
    min-width: 0;
}

/* Document Link */
.env-document-link[b-awfxyf83tl] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--brand-700);
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 0.125rem;
    line-height: 1.2;
    cursor: pointer;
    transition: color 0.15s ease;
}

.env-document-link:hover[b-awfxyf83tl] {
    color: var(--brand-500);
    text-decoration: underline;
}

.env-document-type-badge[b-awfxyf83tl] {
    display: inline-block;
    background: var(--brand-50);
    color: var(--brand-600);
    padding: 0.0625rem 0.3125rem;
    border-radius: 2px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.2px;
    font-size: 0.6rem;
}

/* When the document arrived. Sits beside the type badge as metadata, not as a second badge. */
.env-document-submitted[b-awfxyf83tl] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    margin-left: 0.375rem;
    color: var(--text-muted);
    font-size: 0.6875rem;
    white-space: nowrap;
}

/* Verification Info Footer */
.env-verification-info[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.375rem 0.875rem;
    background: rgba(0,0,0,0.015);
    border-top: 1px dashed #ddd;
    position: relative;
    z-index: 2;
}

.verification-detail[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.625rem;
    color: var(--text-muted);
    cursor: default;
}

.verification-detail i[b-awfxyf83tl] {
    font-size: 0.6875rem;
    color: var(--neutral-400);
}

.vera-stamp-verified .env-verification-info[b-awfxyf83tl] {
    background: rgba(22, 163, 74, 0.03);
    border-top-color: rgba(22, 163, 74, 0.15);
}

.vera-stamp-verified .verification-detail i[b-awfxyf83tl] {
    color: var(--success-500);
}

.vera-stamp-not-verified .env-verification-info[b-awfxyf83tl] {
    background: rgba(185, 28, 28, 0.03);
    border-top-color: rgba(185, 28, 28, 0.15);
}

.vera-stamp-not-verified .verification-detail i[b-awfxyf83tl] {
    color: var(--error-500);
}

/* ========================================
   STAMP - Rubber Stamp with Date (Overflows Card)
   ======================================== */
.vera-stamp-overlay[b-awfxyf83tl] {
    position: absolute;
    top: 50%;
    right: -15px;
    transform: translateY(-50%) rotate(-15deg);
    pointer-events: none;
    z-index: 10;
}

.vera-stamp-overlay .stamp-inner[b-awfxyf83tl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 85px;
    height: 85px;
    border: 3px solid;
    border-radius: 50%;
    background: rgba(255,255,255,0.7);
    position: relative;
    padding: 0.25rem;
    box-shadow: 
        0 2px 8px rgba(0,0,0,0.1),
        inset 0 0 0 1px rgba(255,255,255,0.5);
}

/* Double circle - classic stamp look */
.vera-stamp-overlay .stamp-inner[b-awfxyf83tl]::before {
    content: '';
    position: absolute;
    top: 4px;
    left: 4px;
    right: 4px;
    bottom: 4px;
    border: 2px solid;
    border-radius: 50%;
    border-color: inherit;
}

.vera-stamp-overlay .stamp-text-top[b-awfxyf83tl] {
    font-size: 0.625rem;
    font-weight: 900;
    letter-spacing: 2px;
    line-height: 1;
    text-transform: uppercase;
}

.vera-stamp-overlay .stamp-icon[b-awfxyf83tl] {
    font-size: 1.25rem;
    line-height: 1;
    margin: 0.125rem 0;
}

.vera-stamp-overlay .stamp-text-bottom[b-awfxyf83tl] {
    font-size: 0.5rem;
    font-weight: 800;
    letter-spacing: 1px;
    line-height: 1;
    text-transform: uppercase;
}

.vera-stamp-overlay .stamp-date[b-awfxyf83tl] {
    font-size: 0.375rem;
    font-weight: 700;
    letter-spacing: 0.5px;
    line-height: 1;
    margin-top: 0.1875rem;
    opacity: 0.85;
}

/* Verified - Green ink stamp */
.vera-stamp-overlay.verified .stamp-inner[b-awfxyf83tl] {
    border-color: rgba(22, 163, 74, 0.85);
    color: rgba(22, 163, 74, 0.9);
}

.vera-stamp-overlay.verified .stamp-inner[b-awfxyf83tl]::before {
    border-color: rgba(22, 163, 74, 0.65);
}

/* Not Verified - Red ink stamp */
.vera-stamp-overlay.not-verified .stamp-inner[b-awfxyf83tl] {
    border-color: rgba(185, 28, 28, 0.85);
    color: rgba(185, 28, 28, 0.9);
}

.vera-stamp-overlay.not-verified .stamp-inner[b-awfxyf83tl]::before {
    border-color: rgba(185, 28, 28, 0.65);
}

/* ========================================
   Buttons - Icon Only, Small
   ======================================== */
.env-verify-btn[b-awfxyf83tl] {
    width: 24px;
    height: 24px;
    border-radius: 4px;
    border: 1px solid var(--brand-200);
    background: white;
    color: var(--brand-500);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.15s ease;
    flex-shrink: 0;
    padding: 0;
}

.env-verify-btn:hover[b-awfxyf83tl] {
    background: var(--brand-50);
    border-color: var(--brand-400);
    color: var(--brand-600);
}

.env-verify-btn i[b-awfxyf83tl] {
    font-size: 0.75rem;
}

/* Update button - icon only in footer (positioned on left, away from stamp) */
.env-update-btn[b-awfxyf83tl] {
    width: 20px;
    height: 20px;
    padding: 0;
    border-radius: 3px;
    border: 1px solid var(--neutral-300);
    background: white;
    color: var(--neutral-500);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.15s ease;
    flex-shrink: 0;
}

.env-update-btn:hover[b-awfxyf83tl] {
    border-color: var(--brand-400);
    color: var(--brand-600);
    background: var(--brand-50);
}

.env-update-btn i[b-awfxyf83tl] {
    font-size: 0.625rem;
}

.env-update-btn span[b-awfxyf83tl] {
    display: none;
}

/* Vera Status Badge - Compact */
.env-vera-status[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 5px;
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    white-space: nowrap;
    flex-shrink: 0;
}

.env-vera-status i[b-awfxyf83tl] {
    font-size: 0.875rem;
}

.env-vera-status.vera-verified[b-awfxyf83tl] {
    background: linear-gradient(135deg, var(--success-100) 0%, #d4edda 100%);
    color: var(--success-700);
    border: 1px solid var(--success-200);
}

.env-vera-status.vera-verified i[b-awfxyf83tl] {
    color: var(--success-600);
}

.env-vera-status.vera-pending[b-awfxyf83tl] {
    background: linear-gradient(135deg, var(--warning-100) 0%, #fff3cd 100%);
    color: var(--warning-700);
    border: 1px solid var(--warning-200);
}

.env-vera-status.vera-pending i[b-awfxyf83tl] {
    color: var(--warning-600);
}

.env-vera-status.vera-failed[b-awfxyf83tl] {
    background: linear-gradient(135deg, var(--error-100) 0%, #f8d7da 100%);
    color: var(--error-700);
    border: 1px solid var(--error-200);
}

.env-vera-status.vera-failed i[b-awfxyf83tl] {
    color: var(--error-600);
}

.env-vera-status.vera-awaiting[b-awfxyf83tl] {
    background: linear-gradient(135deg, var(--neutral-100) 0%, var(--neutral-200) 100%);
    color: var(--neutral-600);
    border: 1px solid var(--neutral-300);
}

.env-vera-status.vera-awaiting i[b-awfxyf83tl] {
    color: var(--neutral-500);
}

/* Summary Footer - Horizontal with icons */
.env-summary-footer[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 0.75rem;
    padding: 0.625rem 1rem;
    background: var(--neutral-50);
    border-radius: 8px;
}

.env-footer-stat[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.env-footer-stat i[b-awfxyf83tl] {
    font-size: 0.875rem;
    color: var(--neutral-500);
}

.env-footer-stat .stat-value[b-awfxyf83tl] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1;
}

.env-footer-stat .stat-label[b-awfxyf83tl] {
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--text-muted);
}

.env-footer-stat.verified i[b-awfxyf83tl] {
    color: var(--success-500);
}

.env-footer-stat.verified .stat-value[b-awfxyf83tl] {
    color: var(--success-600);
}

.env-footer-stat.pending i[b-awfxyf83tl] {
    color: var(--warning-500);
}

.env-footer-stat.pending .stat-value[b-awfxyf83tl] {
    color: var(--warning-600);
}

.env-footer-divider[b-awfxyf83tl] {
    width: 1px;
    height: 24px;
    background: var(--neutral-300);
}

/* Responsive for Environmental Documents */
@media (max-width: 1200px) {
    .env-card-main[b-awfxyf83tl] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .env-document-icon[b-awfxyf83tl] {
        width: 32px;
        height: 32px;
    }

    .env-document-icon i[b-awfxyf83tl] {
        font-size: 1rem;
    }

    .vera-stamp-overlay[b-awfxyf83tl] {
        right: 8px;
        transform: translateY(-50%) rotate(-10deg) scale(0.85);
    }

    .env-verification-info[b-awfxyf83tl] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }
}

@media (max-width: 992px) {
    .env-documents-panel[b-awfxyf83tl] {
        margin-top: 1.5rem;
    }
}

/* ========================================
   VERAcheck Status Panel
   ======================================== */

.veracheck-status-panel[b-awfxyf83tl] {
    background: white;
    border: 1px solid var(--neutral-200);
    border-radius: 0;
    overflow: hidden;
}

.veracheck-status-header[b-awfxyf83tl] {
    background: var(--neutral-50);
    padding: 0.75rem 1rem;
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--text-primary);
    display: flex;
    align-items: center;
    border-bottom: 1px solid var(--neutral-200);
}

.veracheck-status-header i[b-awfxyf83tl] {
    color: var(--brand-500);
}

.veracheck-status-body[b-awfxyf83tl] {
    padding: 1rem;
}

/* Simple Details Grid */
/* 150px, not 180px. The status card this grid sits in moved inside .env-documents-body when the
   panel split into sub-sections, so it lost that container's 1.5rem of horizontal padding on each
   side — enough to drop the grid from two columns to one and roughly double the height of the
   VERAcheck sub-section. auto-fill still widens it back out wherever there is room. */
.veracheck-details-grid[b-awfxyf83tl] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 0.75rem;
}

.veracheck-detail-item[b-awfxyf83tl] {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    padding: 0.625rem;
    background: var(--neutral-50);
    border-radius: var(--radius-sm);
    border: 1px solid var(--neutral-100);
}

.veracheck-detail-item .detail-icon[b-awfxyf83tl] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: white;
    border: 1px solid var(--neutral-200);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.veracheck-detail-item .detail-icon i[b-awfxyf83tl] {
    font-size: 0.875rem;
    color: var(--brand-500);
}

.veracheck-detail-item .detail-icon.risk-icon i[b-awfxyf83tl] {
    color: var(--warning-500);
}

.veracheck-detail-item .detail-icon.completed-icon i[b-awfxyf83tl] {
    color: var(--success-500);
}

.veracheck-detail-item .detail-content[b-awfxyf83tl] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 0;
}

.veracheck-detail-item .detail-label[b-awfxyf83tl] {
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.veracheck-detail-item .detail-value[b-awfxyf83tl] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    line-height: 1.3;
}

.veracheck-detail-item .detail-value-mono[b-awfxyf83tl] {
    font-family: 'SF Mono', 'Monaco', 'Consolas', monospace;
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.veracheck-status-row[b-awfxyf83tl] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--neutral-100);
}

.veracheck-status-row:last-child[b-awfxyf83tl] {
    border-bottom: none;
}

.veracheck-label[b-awfxyf83tl] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
}

.veracheck-value[b-awfxyf83tl] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.veracheck-error-message[b-awfxyf83tl] {
    background: var(--warning-50);
    border-radius: var(--radius-sm);
    padding: 0.75rem 1rem;
    font-size: 0.8125rem;
    color: var(--warning-700);
    display: flex;
    align-items: center;
    gap: 0.625rem;
    border: 1px solid var(--warning-200);
}

.veracheck-error-message i[b-awfxyf83tl] {
    color: var(--warning-500);
    font-size: 1rem;
    flex-shrink: 0;
}

.veracheck-error-message span[b-awfxyf83tl] {
    color: var(--warning-700);
    line-height: 1.4;
}

.veracheck-override-notice[b-awfxyf83tl] {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    padding: 10px 12px;
    background: #EFF6FF;
    border: 1px solid #BFDBFE;
    border-radius: 8px;
    font-size: 0.75rem;
    color: #1E40AF;
    line-height: 1.4;
}

.veracheck-override-notice i[b-awfxyf83tl] {
    font-size: 0.85rem;
    flex-shrink: 0;
    margin-top: 1px;
}

/* The "why" appended to the manual-override notice. */
.veracheck-override-reason[b-awfxyf83tl] {
    font-style: italic;
    opacity: 0.9;
}

/* VERAcheck source channel badge (shown when the result came in offline / manually) */
.veracheck-source-badge[b-awfxyf83tl] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.75rem;
    font-weight: 500;
}

.veracheck-source-badge.channel-online[b-awfxyf83tl] { background: #e0f2fe; color: #075985; }
.veracheck-source-badge.channel-offline[b-awfxyf83tl] { background: #fef3c7; color: #92400e; }

/* VERAcheck status badge colors */
.veracheck-status-panel .badge[b-awfxyf83tl] {
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem;
}

/* Subtle failed/error badge */
.veracheck-status-panel .badge.bg-danger[b-awfxyf83tl] {
    background: var(--error-50) !important;
    color: var(--error-600);
    border: 1px solid var(--error-200);
}

/* VERAcheck Actions */
.veracheck-actions[b-awfxyf83tl] {
    background: var(--neutral-50);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
}

.veracheck-actions .btn[b-awfxyf83tl] {
    font-size: 0.8125rem;
}

/* VERAcheck Download Button */
.veracheck-download-btn[b-awfxyf83tl] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    flex: 1;
}

.veracheck-download-btn i[b-awfxyf83tl] {
    font-size: 0.875rem;
}

/* VERAcheck Retry Button - Subtle warning styling */
.veracheck-retry-btn[b-awfxyf83tl] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    background: var(--warning-50);
    color: var(--warning-700);
    border: 1px solid var(--warning-200);
    transition: all 0.2s ease;
}

.veracheck-retry-btn:hover:not(:disabled)[b-awfxyf83tl] {
    background: var(--warning-100);
    color: var(--warning-800);
    border-color: var(--warning-300);
}

.veracheck-retry-btn:disabled[b-awfxyf83tl] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* VERAcheck Submit Button — subtle brand tint, the one panel-local button colour left in
   this rail.

   Why it is not a leca-theme variant like the two CTAs beside it: the theme's Button System
   defines no disabled treatment, so a disabled .btn-secondary / .btn-outline-primary falls
   through to Bootstrap's own --bs-btn-disabled-* values (solid #6c757d grey, #0d6efd blue)
   — Bootstrap's .btn:disabled outranks leca-theme's .btn-* on specificity. This CTA is
   disabled in three of its four states, so it would spend most of its life wearing colours
   the theme deliberately overrode everywhere else. Closing that hole belongs in
   leca-theme.css as an app-wide change, not here. Geometry (radius, padding, size, icon
   gap) comes from .btn either way, so it lines up with its neighbours. */
.veracheck-submit-btn[b-awfxyf83tl] {
    background: var(--brand-50);
    color: var(--brand-700);
    border-color: var(--brand-200);
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.veracheck-submit-btn:hover:not(:disabled)[b-awfxyf83tl] {
    background: var(--brand-100);
    color: var(--brand-800);
    border-color: var(--brand-300);
}

.veracheck-submit-btn:disabled[b-awfxyf83tl] {
    opacity: 0.6;
    cursor: not-allowed;
}

.veracheck-disabled-notice[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: #FFFBEB;
    border: 1px solid #FDE68A;
    border-radius: 8px;
    color: #92400E;
    font-size: 0.8rem;
    text-align: left;
    line-height: 1.4;
}

.veracheck-disabled-notice i[b-awfxyf83tl] {
    font-size: 1rem;
    flex-shrink: 0;
    color: #D97706;
}

/* VERAcheck Polling Indicator */
.veracheck-polling-indicator[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
    color: var(--brand-600);
}

.polling-dot[b-awfxyf83tl] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--brand-500);
    animation: pulse-b-awfxyf83tl 1.5s ease-in-out infinite;
}

@keyframes pulse-b-awfxyf83tl {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
    }
    50% {
        opacity: 0.5;
        transform: scale(0.8);
    }
}

.polling-text[b-awfxyf83tl] {
    font-weight: 500;
}

/* VERAcheck Progress Steps */
.veracheck-progress-steps[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.5rem;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--neutral-200);
}

.veracheck-step[b-awfxyf83tl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.375rem;
    position: relative;
}

.step-circle[b-awfxyf83tl] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--neutral-200);
    border: 2px solid var(--neutral-300);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    transition: all 0.3s ease;
}

.step-number[b-awfxyf83tl] {
    font-size: 0.75rem;
}

.step-label[b-awfxyf83tl] {
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.step-connector[b-awfxyf83tl] {
    flex: 1;
    height: 2px;
    background: var(--neutral-200);
    margin: 0 0.25rem;
    margin-bottom: 1.25rem;
    transition: background 0.3s ease;
}

/* Completed Step */
.veracheck-step.completed .step-circle[b-awfxyf83tl] {
    background: var(--success-500);
    border-color: var(--success-500);
    color: white;
}

.veracheck-step.completed .step-label[b-awfxyf83tl] {
    color: var(--success-600);
}

.step-connector.completed[b-awfxyf83tl] {
    background: var(--success-500);
}

/* Active Step */
.veracheck-step.active .step-circle[b-awfxyf83tl] {
    background: var(--brand-500);
    border-color: var(--brand-500);
    color: white;
    box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.2);
    animation: activePulse-b-awfxyf83tl 2s ease-in-out infinite;
}

.veracheck-step.active .step-label[b-awfxyf83tl] {
    color: var(--brand-600);
    font-weight: 600;
}

@keyframes activePulse-b-awfxyf83tl {
    0%, 100% {
        box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.2);
    }
    50% {
        box-shadow: 0 0 0 8px rgba(59, 130, 246, 0.1);
    }
}

/* Failed Step - Subtle styling */
.veracheck-step.failed .step-circle[b-awfxyf83tl] {
    background: var(--error-50);
    border-color: var(--error-300);
    color: var(--error-500);
}

.veracheck-step.failed .step-label[b-awfxyf83tl] {
    color: var(--error-400);
}

.step-connector.failed[b-awfxyf83tl] {
    background: var(--error-200);
}

/* Spinner inside step circle */
.step-circle .spinner-border[b-awfxyf83tl] {
    width: 16px;
    height: 16px;
    border-width: 2px;
    color: white;
}

/* ========================================
   VERA Check Verification Modal
   ======================================== */
.vera-modal[b-awfxyf83tl] {
    border: none;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
}

.vera-modal-header[b-awfxyf83tl] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    background: #fff;
    border-bottom: 1px solid #EEF2F6;
}

.vera-modal-title[b-awfxyf83tl] {
    flex: 1;
    min-width: 0;
}

.vera-modal-title h5[b-awfxyf83tl] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
}

.vera-modal-subtitle[b-awfxyf83tl] {
    display: block;
    font-size: 0.8rem;
    color: #64748B;
    line-height: 1.45;
}

.vera-close-btn[b-awfxyf83tl] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: none;
    background: transparent;
    color: #94A3B8;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
    transition: all 0.15s;
}

.vera-close-btn:hover[b-awfxyf83tl] {
    background: #F1F5F9;
    color: #0F172A;
}

.vera-modal-body[b-awfxyf83tl] {
    padding: 1.15rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* Document Info Card */
.vera-doc-info[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem;
    background: var(--neutral-50);
    border-radius: 8px;
    border: 1px solid var(--neutral-200);
}

.vera-doc-icon[b-awfxyf83tl] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: var(--brand-100);
    color: var(--brand-600);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.vera-doc-icon i[b-awfxyf83tl] {
    font-size: 1.25rem;
}

.vera-doc-details[b-awfxyf83tl] {
    flex: 1;
    min-width: 0;
}

.vera-doc-name[b-awfxyf83tl] {
    display: block;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.vera-doc-type[b-awfxyf83tl] {
    display: block;
    font-size: 0.6875rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

/* Section Labels */
.vera-section-label[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin-bottom: 0.5rem;
}

.vera-note-hint[b-awfxyf83tl] {
    font-size: 0.6875rem;
    font-weight: 400;
    color: var(--text-muted);
    margin-left: 0.375rem;
}

/* Radio Button Group */
.vera-radio-group[b-awfxyf83tl] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.vera-radio-option[b-awfxyf83tl] {
    display: block;
    cursor: pointer;
    border: 2px solid var(--neutral-200);
    border-radius: 10px;
    padding: 0.875rem;
    transition: all 0.2s ease;
    background: white;
}

.vera-radio-option:hover[b-awfxyf83tl] {
    border-color: var(--neutral-300);
    background: var(--neutral-50);
}

.vera-radio-option.selected.verified[b-awfxyf83tl] {
    border-color: var(--success-500);
    background: rgba(34, 197, 94, 0.05);
}

.vera-radio-option.selected.not-verified[b-awfxyf83tl] {
    border-color: var(--error-500);
    background: rgba(239, 68, 68, 0.05);
}

.vera-radio-option input[type="radio"][b-awfxyf83tl] {
    display: none;
}

.vera-radio-content[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.vera-radio-icon[b-awfxyf83tl] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.vera-radio-icon.verified[b-awfxyf83tl] {
    background: var(--success-100);
    color: var(--success-600);
}

.vera-radio-icon.not-verified[b-awfxyf83tl] {
    background: var(--error-100);
    color: var(--error-600);
}

.vera-radio-icon i[b-awfxyf83tl] {
    font-size: 1.125rem;
}

.vera-radio-text[b-awfxyf83tl] {
    flex: 1;
}

.vera-radio-title[b-awfxyf83tl] {
    display: block;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.vera-radio-desc[b-awfxyf83tl] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* Existing Notes - Paper Style */
.vera-existing-notes[b-awfxyf83tl] {
    margin-top: 0.25rem;
}

.vera-notes-paper[b-awfxyf83tl] {
    background: linear-gradient(180deg, #fffef5 0%, #fefce8 100%);
    border: 1px solid #e5e1c8;
    border-radius: 4px;
    padding: 0.875rem;
    position: relative;
    box-shadow: 
        inset 0 1px 0 rgba(255, 255, 255, 0.8),
        0 1px 3px rgba(0, 0, 0, 0.05);
    max-height: 120px;
    overflow-y: auto;
}

/* Lined paper effect */
.vera-notes-paper[b-awfxyf83tl]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: repeating-linear-gradient(
        transparent,
        transparent 23px,
        rgba(100, 100, 200, 0.1) 23px,
        rgba(100, 100, 200, 0.1) 24px
    );
    pointer-events: none;
}

/* Red margin line */
.vera-notes-paper[b-awfxyf83tl]::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 28px;
    width: 1px;
    background: rgba(220, 100, 100, 0.3);
    pointer-events: none;
}

.vera-notes-content[b-awfxyf83tl] {
    position: relative;
    z-index: 1;
    font-family: 'Georgia', serif;
    font-size: 0.8125rem;
    line-height: 24px;
    color: #333;
    white-space: pre-wrap;
    padding-left: 20px;
}

/* New Note Input */
.vera-note-input[b-awfxyf83tl] {
    width: 100%;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    padding: 0.75rem;
    font-size: 0.875rem;
    resize: vertical;
    min-height: 80px;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.vera-note-input:focus[b-awfxyf83tl] {
    outline: none;
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.vera-note-input[b-awfxyf83tl]::placeholder {
    color: var(--text-muted);
}

/* Modal Footer */
.vera-modal-footer[b-awfxyf83tl] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    background: #FAFBFC;
    border-top: 1px solid #EEF2F6;
}

/* Themed Buttons */
.vera-btn[b-awfxyf83tl] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    border-radius: 10px;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
}

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

.vera-btn-cancel[b-awfxyf83tl] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.vera-btn-cancel:hover:not(:disabled)[b-awfxyf83tl] {
    background: #F1F5F9;
    color: #0F172A;
}

.vera-btn-confirm[b-awfxyf83tl] {
    color: white;
}

.vera-btn-confirm.verified[b-awfxyf83tl] {
    background: var(--success-600, #059669);
}

.vera-btn-confirm.verified:hover:not(:disabled)[b-awfxyf83tl] {
    background: var(--success-700, #047857);
}

.vera-btn-confirm.not-verified[b-awfxyf83tl] {
    background: var(--error-600, #DC2626);
}

.vera-btn-confirm.not-verified:hover:not(:disabled)[b-awfxyf83tl] {
    background: var(--error-700, #B91C1C);
}

/* ============================================
   Top Review Banner (document-first action bar)
   ============================================ */
.review-action-banner[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 1.25rem;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, var(--brand-50) 0%, #ffffff 100%);
    border: 1px solid var(--brand-200);
    border-left: 4px solid var(--brand-500);
    border-radius: var(--radius-md);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.review-action-doc[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    flex: 1 1 320px;
    min-width: 0;
}

.review-action-icon[b-awfxyf83tl] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    flex-shrink: 0;
    border-radius: var(--radius-sm);
    background: var(--brand-100);
    color: var(--brand-600);
    font-size: 1.5rem;
}

.review-action-text[b-awfxyf83tl] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.review-action-title[b-awfxyf83tl] {
    font-weight: 600;
    color: var(--text-primary);
}

.review-action-subtitle[b-awfxyf83tl] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.ai-risk-bottom[b-awfxyf83tl] {
    margin-top: 1.5rem;
}

/* Two passive states for the Underwriter Action row, sharing one neutral pill so neither can be
   mistaken for the amber control itself: .rerate-hint points at the button in the page header,
   .rerate-locked explains why no button is offered once the quote is frozen. The amber
   .rerate-cta rules moved to ApplicationDetailPage.razor.css with the button. */
.rerate-hint[b-awfxyf83tl],
.rerate-locked[b-awfxyf83tl] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.4rem 0.75rem;
    border-radius: 0.5rem;
    background: var(--bs-tertiary-bg, #f1f3f5);
    color: var(--bs-secondary-color, #6c757d);
    font-size: 0.82rem;
}

.rerate-hint .bi-info-circle[b-awfxyf83tl],
.rerate-locked .bi-lock-fill[b-awfxyf83tl] {
    color: var(--bs-secondary-color, #6c757d);
}

/* ========================================
   Rail actions card (feature 049)
   ======================================== */

/* One container for every rail CTA, reusing .veracheck-status-panel so it reads as the
   same kind of card as the VERAcheck status panels above it. Layout comes from Bootstrap
   (.d-grid .gap-2 on the body) and colour from the leca-theme Button System, so the only
   thing left to say here is where the card sits and how big its buttons read in a narrow
   col-4 rail. */
.env-rail-actions[b-awfxyf83tl] {
    margin-top: 0.75rem;
}

.env-rail-actions .btn[b-awfxyf83tl] {
    font-size: 0.8125rem;
}

/* Mark Invalid on the per-document card (feature 049) */
/* Row rather than column since Accept document joined Mark invalid here: the two buttons sit side by
   side, and the refusal sentence — which only ever accompanies a disabled Mark invalid — takes a full
   row of its own underneath via its flex-basis below. */
.env-card-actions[b-awfxyf83tl] {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    /* One value, not 0.25rem/0.375rem: a wrapped Accept-over-Reject stack and a side-by-side
       Accept-and-Reject row now read with the same rhythm, and the rail wraps at every width
       below ~1700px so the wrapped case is the common one, not the exception. */
    gap: 0.375rem;
    padding: 0 0.75rem 0.625rem;
}

/* Open Document, on the card of the document it opens. Its own row above the accept/reject row
   so a decision is never one mis-click away from a read — and its own CONTAINER, because its
   AuthorizeView is a separate gate from theirs (see the markup). The three can therefore never
   share one flex row, whatever the width. */
.env-card-open[b-awfxyf83tl] {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    gap: 0.375rem;
    padding: 0 0.75rem 0.5rem;
}

/* Alignment. The three controls have intrinsic widths of roughly 150 / 155 / 215px against a rail
   whose card is 275px at 1440 and 220px at 1280, so left-packing them at natural width produced a
   different right edge on every line. Growing each line's buttons to fill instead makes every line
   — one button or two — start and end on the same two edges, at any width, with no rag.

   They are .btn / .btn-sm from leca-theme.css, not a private family: .env-accept-btn and
   .env-invalidate-btn were re-implementations of .btn-outline-success and .btn-secondary at
   btn-sm's exact metrics, differing only in the icon gap (4px from a me-1 utility vs the canon's
   8px) and one step of border grey — which is what made a group of three read as three
   unrelated buttons. */
.env-card-open > .btn[b-awfxyf83tl],
.env-card-actions > .btn[b-awfxyf83tl] {
    flex: 1 1 auto;
    /* The canon is white-space: nowrap, which does not survive this rail: Open Document measured
       154px wide inside a 112px card at a 1024px viewport and simply hung out of the card. Let the
       label wrap here instead. The button holds its full row either way, so a two-line label stays
       aligned with everything above and below it. */
    min-width: 0;
    white-space: normal;
}

.env-invalidate-btn:hover:not(:disabled)[b-awfxyf83tl] {
    background: #FEF2F2;
    border-color: #FECACA;
    color: var(--error-700, #B91C1C);
}

/* leca-theme.css defines no disabled treatment, so Bootstrap's .btn:disabled would otherwise
   repaint this button from its own --bs-btn-disabled-* variables. Restate .btn-secondary's resting
   colours and dim them instead, so the refused Reject is visibly the same button as the offered
   one — the refusal sentence beside it is what explains the state, not a change of identity. */
.env-invalidate-btn:disabled[b-awfxyf83tl] {
    background: transparent;
    border-color: #E2E8F0;
    color: #64748B;
    opacity: 0.55;
    cursor: not-allowed;
}

.env-invalidate-reason[b-awfxyf83tl] {
    flex: 1 0 100%;
    font-size: 0.7rem;
    line-height: 1.35;
    color: var(--text-muted, #94a3b8);
}

/* Replaces the reject button on a rejected card. A statement, not a control — so it takes the
   button's row without taking a button's weight. */
.env-rejected-notice[b-awfxyf83tl] {
    flex: 1 0 100%;
    display: flex;
    align-items: flex-start;
    gap: 0.375rem;
    font-size: 0.7rem;
    line-height: 1.35;
    color: var(--text-secondary, #64748b);
}

.env-rejected-notice i[b-awfxyf83tl] {
    flex-shrink: 0;
    margin-top: 1px;
    color: var(--text-muted, #94a3b8);
}

.env-invalid-notes[b-awfxyf83tl] {
    margin: 0 0.75rem 0.625rem;
    padding: 0.5rem 0.625rem;
    font-size: 0.72rem;
    line-height: 1.45;
    white-space: pre-line;
    color: var(--text-secondary, #64748b);
    background: #FEF2F2;
    border-left: 3px solid #FECACA;
    border-radius: 6px;
}

/* An invalidated document stays on the list — visibly void rather than gone. */
.env-document-card.env-document-invalidated[b-awfxyf83tl] {
    opacity: 0.85;
    background: var(--neutral-50, #f8fafc);
}

.env-footer-stat.invalid[b-awfxyf83tl] {
    color: var(--error-600, #DC2626);
}

/* Explanation beside a disabled request CTA. Visible text, not only a title — a tooltip is
   invisible to keyboard and touch users, and these conditions are permanent. */
.veracheck-cta-note[b-awfxyf83tl] {
    font-size: 0.75rem;
    line-height: 1.45;
    color: var(--text-muted, #94a3b8);
    text-align: left;
}
/* /Components/Pages/Underwriting/Tabs/BankRequestsTab.razor.rz.scp.css */
/* ========================================
   Bank Requests Tab - Email Client Style
   ======================================== */

/* ========================================
   Tab Animations
   ======================================== */
@keyframes fadeInUp-b-iccs9n1w4n {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn-b-iccs9n1w4n {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideInLeft-b-iccs9n1w4n {
    from {
        opacity: 0;
        transform: translateX(-15px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideInRight-b-iccs9n1w4n {
    from {
        opacity: 0;
        transform: translateX(15px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.bank-requests-tab[b-iccs9n1w4n] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 500px;
    background: var(--bg-surface, #fff);
    border-radius: 12px;
    border: 1px solid var(--border-light);
    overflow: hidden;
    animation: fadeInUp-b-iccs9n1w4n 0.4s ease-out;
}

/* Toolbar */
.requests-toolbar[b-iccs9n1w4n] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-light);
    gap: 1rem;
    animation: fadeIn-b-iccs9n1w4n 0.35s ease-out;
}

/* Role-based info notes — ::deep needed because AuthorizeView breaks CSS isolation */
[b-iccs9n1w4n] .request-note {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    font-size: 12.5px;
    line-height: 1.5;
    border-bottom: 1px solid var(--border-light);
}

[b-iccs9n1w4n] .request-note i {
    flex-shrink: 0;
    font-size: 14px;
}

[b-iccs9n1w4n] .request-note-warning {
    background: #FEF3C7;
    color: #92400E;
    border-bottom-color: #FCD34D;
}

[b-iccs9n1w4n] .request-note-warning i {
    color: #D97706;
}

[b-iccs9n1w4n] .request-note-muted {
    background: #EFF6FF;
    color: #1E40AF;
    border-bottom-color: #BFDBFE;
}

[b-iccs9n1w4n] .request-note-muted i {
    color: #3B82F6;
}

.toolbar-left[b-iccs9n1w4n],
.toolbar-right[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.btn-toolbar[b-iccs9n1w4n] {
    width: 36px;
    height: 36px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    color: var(--text-secondary, #64748b);
    border-radius: 8px;
    transition: all 0.15s ease;
    cursor: pointer;
}

.btn-toolbar:hover[b-iccs9n1w4n] {
    background: var(--neutral-200);
    color: var(--text-primary, #0f172a);
}

.toolbar-divider[b-iccs9n1w4n] {
    width: 1px;
    height: 24px;
    background: var(--border-light);
    margin: 0 0.25rem;
}

.request-count[b-iccs9n1w4n] {
    font-size: 0.8125rem;
    color: var(--text-muted, #94a3b8);
}

.btn-new-request[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    background: var(--brand-500);
    color: white;
    border: none;
    border-radius: 8px;
    transition: all 0.15s ease;
    cursor: pointer;
}

.btn-new-request:hover[b-iccs9n1w4n] {
    background: var(--brand-600);
}

/* Main Container */
.requests-container[b-iccs9n1w4n] {
    display: flex;
    flex: 1;
    overflow: hidden;
}

/* Left Sidebar */
.requests-sidebar[b-iccs9n1w4n] {
    width: 320px;
    min-width: 320px;
    border-right: 1px solid var(--border-light);
    display: flex;
    flex-direction: column;
    background: white;
    animation: slideInLeft-b-iccs9n1w4n 0.4s ease-out 0.1s backwards;
}

/* Category Tabs */
.category-tabs[b-iccs9n1w4n] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    padding: 0.75rem;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-light);
}

.category-tab[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.625rem;
    font-size: 0.75rem;
    font-weight: 500;
    background: white;
    color: var(--text-secondary, #64748b);
    border: 1px solid var(--border-light);
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.category-tab:hover[b-iccs9n1w4n] {
    border-color: var(--brand-300);
    color: var(--brand-600);
}

.category-tab.active[b-iccs9n1w4n] {
    background: var(--brand-50);
    border-color: var(--brand-300);
    color: var(--brand-600);
}

.tab-count[b-iccs9n1w4n] {
    padding: 0.125rem 0.375rem;
    font-size: 0.625rem;
    background: var(--neutral-200);
    border-radius: 10px;
}

.category-tab.active .tab-count[b-iccs9n1w4n] {
    background: var(--brand-100);
}

/* Request List */
.request-list[b-iccs9n1w4n] {
    flex: 1;
    overflow-y: auto;
}

.request-list-item[b-iccs9n1w4n] {
    display: flex;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--neutral-100);
    cursor: pointer;
    transition: background 0.15s ease;
}

.request-list-item:hover[b-iccs9n1w4n] {
    background: var(--neutral-50);
}

.request-list-item.selected[b-iccs9n1w4n] {
    background: var(--brand-50);
    border-left: 3px solid var(--brand-500);
    padding-left: calc(1rem - 3px);
}

.request-list-item.has-response[b-iccs9n1w4n] {
    background: linear-gradient(90deg, #fef3c7 0%, white 10%);
}

.request-list-item.has-response.selected[b-iccs9n1w4n] {
    background: var(--brand-50);
}

.request-item-icon[b-iccs9n1w4n] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    font-size: 1rem;
    flex-shrink: 0;
}

.type-financial[b-iccs9n1w4n] { background: #dbeafe; color: #2563eb; }
.type-environmental[b-iccs9n1w4n] { background: #dcfce7; color: var(--success-600); }
.type-property[b-iccs9n1w4n] { background: #e0f2fe; color: #0284c7; }
.type-general[b-iccs9n1w4n] { background: #fef3c7; color: #d97706; }
.type-default[b-iccs9n1w4n] { background: #f1f5f9; color: #64748b; }

.request-item-content[b-iccs9n1w4n] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.request-item-header[b-iccs9n1w4n] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.request-item-type[b-iccs9n1w4n] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
}

.request-item-date[b-iccs9n1w4n] {
    font-size: 0.6875rem;
    color: var(--text-muted, #94a3b8);
}

.request-item-subject[b-iccs9n1w4n] {
    font-size: 0.8125rem;
    color: var(--text-secondary, #475569);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.request-item-footer[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.125rem;
}

.unread-badge[b-iccs9n1w4n] {
    font-size: 0.625rem;
    font-weight: 600;
    padding: 0.125rem 0.375rem;
    background: var(--warning-100);
    color: var(--warning-700);
    border-radius: 10px;
}

/* Status Badges */
.badge-status[b-iccs9n1w4n] {
    font-size: 0.6875rem;
    font-weight: 600;
    padding: 0.1875rem 0.5rem;
    border-radius: 4px;
    letter-spacing: 0.015em;
    white-space: nowrap;
}

/* Larger status badge used in the detail header */
.badge-status-lg[b-iccs9n1w4n] {
    font-size: 0.8125rem;
    font-weight: 600;
    padding: 0.375rem 0.625rem;
    border-radius: 6px;
    letter-spacing: 0.02em;
    line-height: 1;
    white-space: nowrap;
}

.badge-pending[b-iccs9n1w4n] { background: #f1f5f9; color: #64748b; }
.badge-sent[b-iccs9n1w4n] { background: #dbeafe; color: #2563eb; }
.badge-responded[b-iccs9n1w4n] { background: #fef3c7; color: #d97706; }
.badge-acknowledged[b-iccs9n1w4n] { background: #dcfce7; color: var(--success-600); }
.badge-needsinfo[b-iccs9n1w4n] { background: #fee2e2; color: #b91c1c; }
.badge-resolved[b-iccs9n1w4n] { background: #d1fae5; color: #059669; }
.badge-closed[b-iccs9n1w4n] { background: #e2e8f0; color: #475569; }
.badge-default[b-iccs9n1w4n] { background: #f1f5f9; color: #64748b; }

.badge-type[b-iccs9n1w4n] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    font-weight: 500;
    padding: 0.25rem 0.625rem;
    border-radius: 6px;
}

/* Right Panel - Request Detail */
.request-detail[b-iccs9n1w4n] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: white;
    animation: slideInRight-b-iccs9n1w4n 0.4s ease-out 0.15s backwards;
}

.detail-header[b-iccs9n1w4n] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem 1.5rem;
    border-bottom: 1px solid var(--border-light);
    background: var(--neutral-50);
}

.btn-back-mobile[b-iccs9n1w4n] {
    display: none;
    width: 36px;
    height: 36px;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--text-secondary, #64748b);
    border-radius: 8px;
    cursor: pointer;
}

.detail-header-content[b-iccs9n1w4n] {
    flex: 1;
    min-width: 0;
}

.detail-type[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

.detail-subject[b-iccs9n1w4n] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    margin: 0 0 0.5rem 0;
    line-height: 1.3;
}

.detail-meta[b-iccs9n1w4n] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    font-size: 0.8125rem;
    color: var(--text-muted, #94a3b8);
}

.detail-meta span[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.detail-actions[b-iccs9n1w4n] {
    display: flex;
    gap: 0.5rem;
    flex-shrink: 0;
}

.btn-action-success[b-iccs9n1w4n],
.btn-action-secondary[b-iccs9n1w4n],
.btn-action-close[b-iccs9n1w4n] {
    height: 36px;
    padding: 0 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border: 1px solid var(--border-light);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
    font-size: 0.8125rem;
    font-weight: 500;
}

.btn-action-success .btn-label[b-iccs9n1w4n],
.btn-action-secondary .btn-label[b-iccs9n1w4n],
.btn-action-close .btn-label[b-iccs9n1w4n] {
    white-space: nowrap;
    display: inline;
}

.btn-action-success[b-iccs9n1w4n] {
    background: white;
    color: var(--success-600);
}

.btn-action-success:hover[b-iccs9n1w4n] {
    background: var(--success-50);
    border-color: var(--success-300);
}

.btn-action-secondary[b-iccs9n1w4n] {
    background: white;
    color: var(--text-secondary, #64748b);
}

.btn-action-secondary:hover[b-iccs9n1w4n] {
    background: var(--neutral-100);
    border-color: var(--neutral-300);
}

/* Close — the red twin of .btn-action-success, one ramp over: white resting, red text and icon, faint
   red wash on hover. Subtle on purpose; Close is not a destructive CTA. Geometry comes entirely from
   the shared selector above, so nothing about the button's size or spacing changes.
   WHY a scoped class and not a theme class: this file's .btn-action-* rules compile to
   [b-xxxxxxxxxx] at specificity (0,2,0) and out-specify every global single-class .btn-* rule (0,1,0),
   so adding btn-outline-danger to the markup would produce no visual change at all.
   WHY --error-* and not --danger-*: the --danger-* family is referenced by 40-plus declarations
   across the app and defined nowhere, with no var() fallbacks — a design-system defect tracked
   separately, not one to spread here. */
.btn-action-close[b-iccs9n1w4n] {
    background: white;
    color: var(--error-600);
}

.btn-action-close:hover[b-iccs9n1w4n] {
    background: var(--error-50);
    border-color: var(--error-300);
}

/* Message Thread */
.message-thread[b-iccs9n1w4n] {
    flex: 1;
    overflow-y: auto;
    padding: 1.25rem 1.5rem;
    background: var(--neutral-50);
}

.messages-loading[b-iccs9n1w4n],
.messages-empty[b-iccs9n1w4n] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 3rem;
    color: var(--text-muted, #94a3b8);
    font-size: 0.875rem;
}

.messages-empty i[b-iccs9n1w4n] {
    font-size: 2rem;
    opacity: 0.5;
}

.messages-container[b-iccs9n1w4n] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.message-bubble[b-iccs9n1w4n] {
    display: flex;
    gap: 0.75rem;
    max-width: 80%;
}

.message-bubble.sent[b-iccs9n1w4n] {
    margin-left: auto;
    flex-direction: row-reverse;
}

.message-bubble.received[b-iccs9n1w4n] {
    margin-right: auto;
}

.message-avatar[b-iccs9n1w4n] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 1rem;
    flex-shrink: 0;
}

.message-bubble.received .message-avatar[b-iccs9n1w4n] {
    background: var(--neutral-200);
    color: var(--text-secondary, #64748b);
}

.message-bubble.sent .message-avatar[b-iccs9n1w4n] {
    background: var(--brand-100);
    color: var(--brand-600);
}

.message-content-wrapper[b-iccs9n1w4n] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.message-bubble.sent .message-content-wrapper[b-iccs9n1w4n] {
    align-items: flex-end;
}

.message-sender[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
}

.message-bubble.sent .message-sender[b-iccs9n1w4n] {
    flex-direction: row-reverse;
}

.sender-name[b-iccs9n1w4n] {
    font-weight: 600;
    color: var(--text-primary, #0f172a);
}

.message-time[b-iccs9n1w4n] {
    color: var(--text-muted, #94a3b8);
}

.message-text[b-iccs9n1w4n] {
    padding: 0.875rem 1.125rem;
    border-radius: 16px;
    font-size: 0.875rem;
    line-height: 1.6;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.message-bubble.received .message-text[b-iccs9n1w4n] {
    background: white;
    color: var(--text-primary, #0f172a);
    border-bottom-left-radius: 4px;
    border: 1px solid var(--border-light);
}

.message-bubble.sent .message-text[b-iccs9n1w4n] {
    background: linear-gradient(135deg, var(--brand-500), var(--brand-600));
    color: white;
    border-bottom-right-radius: 4px;
}

.message-status[b-iccs9n1w4n] {
    font-size: 0.6875rem;
    color: var(--text-muted, #94a3b8);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.message-bubble.sent .message-status[b-iccs9n1w4n] {
    text-align: right;
    justify-content: flex-end;
}

/* Reply Section */
.reply-section[b-iccs9n1w4n] {
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--border-light);
    background: var(--neutral-50);
}

.reply-input-wrapper[b-iccs9n1w4n] {
    display: flex;
    position: relative;
}

.reply-textarea[b-iccs9n1w4n] {
    flex: 1;
    padding: 0.75rem 3.5rem 0.75rem 1rem;
    border: 1px solid var(--border-light);
    border-radius: 12px;
    font-size: 0.875rem;
    resize: none;
    background: white;
    transition: border-color 0.15s ease;
    min-height: 70px;
}

.reply-textarea:focus[b-iccs9n1w4n] {
    outline: none;
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.btn-send[b-iccs9n1w4n] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--brand-500);
    color: white;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.15s ease;
    flex-shrink: 0;
    position: absolute;
    right: 8px;
    bottom: 8px;
}

.btn-send:hover:not(:disabled)[b-iccs9n1w4n] {
    background: var(--brand-600);
}

.btn-send:disabled[b-iccs9n1w4n] {
    background: var(--neutral-300);
    cursor: not-allowed;
}

/* Quick Reply Section */
.quick-reply-wrapper[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.quick-reply-label[b-iccs9n1w4n] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
}

.quick-reply-buttons[b-iccs9n1w4n] {
    display: flex;
    gap: 0.75rem;
}

.btn-quick-reply[b-iccs9n1w4n] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.25rem;
    font-size: 0.875rem;
    font-weight: 600;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-quick-reply i[b-iccs9n1w4n] {
    font-size: 1.125rem;
}

.btn-quick-reply:disabled[b-iccs9n1w4n] {
    opacity: 0.5;
    cursor: not-allowed;
    transform: none !important;
}

.btn-quick-reply:disabled i[b-iccs9n1w4n] {
    color: inherit;
    opacity: 0.7;
}

.btn-quick-acknowledge[b-iccs9n1w4n] {
    background: var(--success-500);
    color: white;
    border: none;
}

.btn-quick-acknowledge:hover:not(:disabled)[b-iccs9n1w4n] {
    background: var(--success-600);
}

.btn-quick-needinfo[b-iccs9n1w4n] {
    background: var(--warning-500);
    color: white;
    border: none;
}

.btn-quick-needinfo:hover:not(:disabled)[b-iccs9n1w4n] {
    background: var(--warning-600);
}

/* Already sent quick reply buttons */
.btn-quick-reply.already-sent[b-iccs9n1w4n] {
    background: var(--neutral-200) !important;
    color: var(--text-muted, #64748b) !important;
    border: 1px solid var(--neutral-300) !important;
    box-shadow: none !important;
}

.btn-quick-reply.already-sent i[b-iccs9n1w4n] {
    color: var(--text-muted, #64748b) !important;
    opacity: 0.8;
}

.btn-quick-reply.already-sent:disabled[b-iccs9n1w4n] {
    opacity: 0.8;
}

/* Waiting for Underwriter Info */
.waiting-for-underwriter-info[b-iccs9n1w4n] {
    display: flex;
    gap: 1.25rem;
    padding: 1.5rem;
    background: linear-gradient(135deg, var(--brand-50) 0%, var(--neutral-50) 100%);
    border-radius: 12px;
    border: 1px solid var(--brand-200);
}

.waiting-for-underwriter-info .waiting-icon[b-iccs9n1w4n] {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--brand-100);
    color: var(--brand-600);
    border-radius: 12px;
    font-size: 1.5rem;
}

.waiting-for-underwriter-info .waiting-icon i[b-iccs9n1w4n] {
    animation: pulse-icon-b-iccs9n1w4n 2s ease-in-out infinite;
}

@keyframes pulse-icon-b-iccs9n1w4n {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

.waiting-for-underwriter-info .waiting-content[b-iccs9n1w4n] {
    flex: 1;
}

.waiting-for-underwriter-info .waiting-content h5[b-iccs9n1w4n] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    margin: 0 0 0.5rem 0;
}

.waiting-for-underwriter-info .waiting-content p[b-iccs9n1w4n] {
    font-size: 0.875rem;
    color: var(--text-secondary, #475569);
    margin: 0 0 1rem 0;
    line-height: 1.5;
}

.waiting-for-underwriter-info .contact-details[b-iccs9n1w4n] {
    padding-top: 1rem;
    border-top: 1px solid var(--brand-200);
}

.waiting-for-underwriter-info .contact-label[b-iccs9n1w4n] {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-muted, #94a3b8);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.75rem;
}

.waiting-for-underwriter-info .contact-options[b-iccs9n1w4n] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.waiting-for-underwriter-info .contact-link[b-iccs9n1w4n] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--brand-700);
    background: white;
    border: 1px solid var(--brand-300);
    border-radius: 8px;
    text-decoration: none;
    transition: all 0.15s ease;
}

.waiting-for-underwriter-info .contact-link:hover[b-iccs9n1w4n] {
    background: var(--brand-50);
    border-color: var(--brand-400);
    color: var(--brand-800);
}

.waiting-for-underwriter-info .contact-link i[b-iccs9n1w4n] {
    font-size: 1rem;
}

.quick-reply-toggle[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-left: auto;
    padding: 0.5rem 0.75rem;
    background: white;
    border-radius: 8px;
    border: 1px solid var(--border-light);
}

.quick-reply-toggle .toggle-label[b-iccs9n1w4n] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary, #475569);
    white-space: nowrap;
}

.quick-reply-toggle .form-switch[b-iccs9n1w4n] {
    padding-left: 2.5em;
}

.quick-reply-toggle .form-check-input[b-iccs9n1w4n] {
    width: 2.5em;
    height: 1.25em;
    cursor: pointer;
}

/* Closed Banner */
.closed-banner[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 1rem;
    background: var(--neutral-100);
    color: var(--text-secondary, #64748b);
    font-size: 0.875rem;
    border-top: 1px solid var(--border-light);
}

.btn-reopen[b-iccs9n1w4n] {
    padding: 0.375rem 0.75rem;
    font-size: 0.8125rem;
    font-weight: 500;
    background: white;
    color: var(--brand-600);
    border: 1px solid var(--brand-300);
    border-radius: 6px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.btn-reopen:hover[b-iccs9n1w4n] {
    background: var(--brand-50);
}

/* Empty States */
.detail-empty[b-iccs9n1w4n] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    padding: 3rem;
    text-align: center;
    color: var(--text-muted, #94a3b8);
}

.detail-empty i[b-iccs9n1w4n] {
    font-size: 3rem;
    margin-bottom: 1rem;
    opacity: 0.5;
}

.detail-empty h4[b-iccs9n1w4n] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.5rem;
}

.detail-empty p[b-iccs9n1w4n] {
    font-size: 0.875rem;
    margin: 0;
}

.empty-list[b-iccs9n1w4n] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    color: var(--text-muted, #94a3b8);
    font-size: 0.875rem;
    gap: 0.5rem;
}

.empty-list i[b-iccs9n1w4n] {
    font-size: 1.5rem;
    opacity: 0.5;
}

.loading-container[b-iccs9n1w4n] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    padding: 3rem;
    gap: 1rem;
}

.loading-container p[b-iccs9n1w4n] {
    font-size: 0.875rem;
    color: var(--text-muted, #94a3b8);
    margin: 0;
}

/* Modal Styles */
.modal-overlay[b-iccs9n1w4n] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1.5rem;
}

.new-request-modal[b-iccs9n1w4n] {
    width: 100%;
    max-width: 700px;
    max-height: 90vh;
    background: white;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
}

.new-request-modal .modal-header[b-iccs9n1w4n] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 1px solid #EEF2F6;
    background: #fff;
}

.new-request-modal .modal-header h3[b-iccs9n1w4n] {
    flex: 1;
    min-width: 0;
    align-self: center;
    font-size: 1.05rem;
    font-weight: 700;
    margin: 0;
    color: #0F172A;
}

.btn-close-modal[b-iccs9n1w4n] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    color: var(--text-muted, #94a3b8);
    border-radius: 8px;
    cursor: pointer;
    flex-shrink: 0;
}

.btn-close-modal:hover[b-iccs9n1w4n] {
    background: #F1F5F9;
    color: #0F172A;
}

.new-request-modal .modal-body[b-iccs9n1w4n] {
    flex: 1;
    overflow-y: auto;
    padding: 1.15rem 1.5rem;
}

/* Template Categories in Modal */
.template-categories[b-iccs9n1w4n] {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
}

.template-category[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    font-size: 0.8125rem;
    font-weight: 500;
    background: var(--neutral-100);
    color: var(--text-secondary, #64748b);
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.template-category:hover[b-iccs9n1w4n] {
    background: var(--neutral-200);
}

.template-category.active[b-iccs9n1w4n] {
    background: var(--brand-500);
    color: white;
}

.category-count[b-iccs9n1w4n] {
    padding: 0.125rem 0.375rem;
    font-size: 0.6875rem;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 10px;
}

.template-category:not(.active) .category-count[b-iccs9n1w4n] {
    background: var(--neutral-200);
}

/* Template List in Modal */
.template-list[b-iccs9n1w4n] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
}

.template-card[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: var(--neutral-50);
    border: 2px solid transparent;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.template-card:hover[b-iccs9n1w4n] {
    background: white;
    border-color: var(--neutral-200);
}

.template-card.selected[b-iccs9n1w4n] {
    background: var(--brand-50);
    border-color: var(--brand-400);
}

.template-icon[b-iccs9n1w4n] {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border-radius: 10px;
    font-size: 1.25rem;
    color: var(--brand-500);
    flex-shrink: 0;
}

.template-card.selected .template-icon[b-iccs9n1w4n] {
    background: var(--brand-100);
}

.template-info[b-iccs9n1w4n] {
    flex: 1;
    min-width: 0;
}

.template-info h4[b-iccs9n1w4n] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    margin: 0 0 0.25rem 0;
}

.template-info p[b-iccs9n1w4n] {
    font-size: 0.8125rem;
    color: var(--text-muted, #94a3b8);
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.template-check[b-iccs9n1w4n] {
    color: var(--brand-500);
    font-size: 1.25rem;
}

/* Already existing request template card */
.template-card.already-exists[b-iccs9n1w4n] {
    background: var(--neutral-100);
    border-color: var(--neutral-200);
    cursor: default;
    opacity: 0.85;
}

.template-card.already-exists:hover[b-iccs9n1w4n] {
    background: var(--neutral-100);
    border-color: var(--neutral-300);
}

.template-card.already-exists .template-icon.icon-muted[b-iccs9n1w4n] {
    background: var(--neutral-200);
    color: var(--text-muted, #94a3b8);
}

.template-card.already-exists .template-info h4[b-iccs9n1w4n] {
    color: var(--text-secondary, #64748b);
}

.existing-request-notice[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    margin-top: 0.5rem;
    font-size: 0.75rem;
    color: var(--warning-600);
}

.existing-request-notice i[b-iccs9n1w4n] {
    font-size: 0.875rem;
}

.existing-request-notice .badge-sm[b-iccs9n1w4n] {
    font-size: 0.625rem;
    padding: 0.125rem 0.375rem;
    margin-left: 0.25rem;
}

.existing-request-actions[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-top: 0.5rem;
}

.btn-link-action[b-iccs9n1w4n] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--brand-600);
    background: transparent;
    border: 1px solid var(--brand-200);
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-link-action:hover[b-iccs9n1w4n] {
    background: var(--brand-50);
    border-color: var(--brand-400);
}

.btn-link-action i[b-iccs9n1w4n] {
    font-size: 0.75rem;
}

.template-exists-badge[b-iccs9n1w4n] {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--neutral-200);
    color: var(--text-muted, #94a3b8);
    border-radius: 50%;
    font-size: 0.875rem;
    flex-shrink: 0;
}

.no-templates[b-iccs9n1w4n] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 2rem;
    color: var(--text-muted, #94a3b8);
    font-size: 0.875rem;
}

.no-templates i[b-iccs9n1w4n] {
    font-size: 1.5rem;
    opacity: 0.5;
}

/* Template Preview in Modal */
.template-preview[b-iccs9n1w4n] {
    background: var(--neutral-50);
    border-radius: 10px;
    overflow: hidden;
}

.preview-header[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--neutral-100);
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
}

.preview-content[b-iccs9n1w4n] {
    padding: 1rem;
    max-height: 200px;
    overflow-y: auto;
}

.preview-subject[b-iccs9n1w4n] {
    font-size: 0.875rem;
    color: var(--text-primary, #0f172a);
    margin-bottom: 0.75rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid var(--border-light);
}

.preview-body[b-iccs9n1w4n] {
    font-size: 0.8125rem;
    color: var(--text-secondary, #64748b);
    line-height: 1.6;
}

/* An HTML-authored template renders its own markup, which arrives as a MarkupString and so carries
   no scope attribute — ::deep is the only way to reach it. This tames the browser's default block
   spacing inside a 200px preview pane and stops wide content bursting the modal; it does not
   restyle the email's design, which is the admin's to author. */
.preview-body-html[b-iccs9n1w4n]  p,
.preview-body-html[b-iccs9n1w4n]  ul,
.preview-body-html[b-iccs9n1w4n]  ol,
.preview-body-html[b-iccs9n1w4n]  blockquote {
    margin: 0 0 0.6rem;
}

.preview-body-html[b-iccs9n1w4n]  > *:last-child {
    margin-bottom: 0;
}

.preview-body-html[b-iccs9n1w4n]  img {
    max-width: 100%;
    height: auto;
}

.preview-body-html[b-iccs9n1w4n]  table {
    max-width: 100%;
}

.preview-content.preview-loading[b-iccs9n1w4n],
.preview-content.preview-failed[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-secondary, #64748b);
}

.preview-content.preview-failed[b-iccs9n1w4n] {
    color: var(--error-700);
}

.preview-note[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--warning-50);
    font-size: 0.75rem;
    color: var(--warning-700);
}

.preview-note.preview-note-ok[b-iccs9n1w4n] {
    background: var(--success-50);
    color: var(--success-700);
}

/* Modal Footer */
.new-request-modal .modal-footer[b-iccs9n1w4n] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

.btn-cancel[b-iccs9n1w4n] {
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    cursor: pointer;
}

.btn-cancel:hover[b-iccs9n1w4n] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-send-request[b-iccs9n1w4n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    cursor: pointer;
}

.btn-send-request:hover:not(:disabled)[b-iccs9n1w4n] {
    background: var(--brand-700, #003760);
}

.btn-send-request:disabled[b-iccs9n1w4n] {
    background: var(--neutral-300);
    cursor: not-allowed;
}

/* Responsive */
@media (max-width: 768px) {
    .requests-toolbar[b-iccs9n1w4n] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .toolbar-left[b-iccs9n1w4n],
    .toolbar-right[b-iccs9n1w4n] {
        width: 100%;
        justify-content: space-between;
    }

    .requests-sidebar[b-iccs9n1w4n] {
        width: 100%;
        min-width: 100%;
        transition: transform 0.3s ease;
    }

    .requests-sidebar.has-selection[b-iccs9n1w4n] {
        transform: translateX(-100%);
        position: absolute;
    }

    .request-detail[b-iccs9n1w4n] {
        position: absolute;
        top: 0;
        left: 100%;
        width: 100%;
        height: 100%;
        transition: transform 0.3s ease;
    }

    .request-detail.visible[b-iccs9n1w4n] {
        transform: translateX(-100%);
    }

    .btn-back-mobile[b-iccs9n1w4n] {
        display: flex;
    }

    .category-tabs[b-iccs9n1w4n] {
        overflow-x: auto;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
    }

    .category-tab[b-iccs9n1w4n] {
        flex-shrink: 0;
    }

    .template-categories[b-iccs9n1w4n] {
        overflow-x: auto;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 0.5rem;
    }

    .template-category[b-iccs9n1w4n] {
        flex-shrink: 0;
    }
}
/* /Components/Pages/Underwriting/Tabs/BindingConfirmationTab.razor.rz.scp.css */
/* ============================================================================
   Bind Coverage Page
   ============================================================================ */
.bind-page[b-q6wbdwaekm] { display: flex; flex-direction: column; gap: 20px; }

/* ---------- Hero header ---------- */
.bind-hero[b-q6wbdwaekm] {
    background: #F8FAFC; border: 1px solid #E2E8F0; border-radius: 12px; padding: 20px 24px;
}
.bind-hero-title[b-q6wbdwaekm] { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.bind-hero-check[b-q6wbdwaekm] { color: #10B981; font-size: 22px; line-height: 1; display: inline-flex; }
.bind-hero-heading[b-q6wbdwaekm] { font-size: 22px; font-weight: 800; color: #0F172A; margin: 0; letter-spacing: -0.01em; }
.bind-hero-badge[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; padding: 4px 10px; border-radius: 999px;
    background: #D1FAE5; color: #047857; font-size: 11px; font-weight: 700; letter-spacing: 0.05em;
    border: 1px solid #A7F3D0;
}
.bind-hero-subtitle[b-q6wbdwaekm] { font-size: 13.5px; color: #64748B; margin: 8px 0 0; }

/* ---------- Surplus Lines Disclosure banner ---------- */
/* Sits between the hero and the two-column grid. Amber so it reads as a pre-flight
   notice, not an error. The warning triangle icon is sized + aligned to match the
   two-line content layout (title + body). */
.bind-sl-banner[b-q6wbdwaekm] {
    display: flex; align-items: flex-start; gap: 12px;
    padding: 14px 16px;
    background: #FFFBEB; border: 1.5px solid #FDE68A; border-radius: 10px;
}
.bind-sl-banner > i[b-q6wbdwaekm] { font-size: 18px; color: #D97706; line-height: 1.3; flex-shrink: 0; }
.bind-sl-banner-title[b-q6wbdwaekm] {
    font-size: 14px; font-weight: 700; color: #92400E; line-height: 1.35;
}
.bind-sl-banner-body[b-q6wbdwaekm] {
    margin-top: 4px; font-size: 13px; color: #78350F; line-height: 1.5;
}

/* ---------- Progress stepper ---------- */
/* Sticky: stays visible under the app topbar while the user scrolls the bind flow,
   so the current step is always in view. Translucent + blur so scrolling content
   reads through softly. z-index stays below the topbar's 100. */
.bind-stepper[b-q6wbdwaekm] {
    display: flex; align-items: center; justify-content: center;
    gap: 0; padding: 10px 24px 8px;
    position: sticky; top: var(--topbar-height, 64px); z-index: 50;
    background: rgba(248, 250, 252, 0.92);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border-bottom: 1px solid rgba(226, 232, 240, 0.7);
    border-radius: 0 0 12px 12px;
}
.bind-step[b-q6wbdwaekm] {
    display: flex; flex-direction: column; align-items: center; gap: 6px;
    min-width: 110px;
}
.bind-step-dot[b-q6wbdwaekm] {
    width: 28px; height: 28px; border-radius: 50%;
    display: inline-flex; align-items: center; justify-content: center;
    background: #F1F5F9; border: 2px solid #CBD5E1; color: #94A3B8;
    font-size: 12.5px; font-weight: 700; line-height: 1;
    transition: all 0.2s;
}
.bind-step-label[b-q6wbdwaekm] {
    font-size: 12px; font-weight: 600; color: #94A3B8; letter-spacing: 0.01em;
    white-space: nowrap;
}
.bind-step.is-current .bind-step-dot[b-q6wbdwaekm] {
    background: var(--brand-500, #005b9f); border-color: var(--brand-500, #005b9f); color: white;
    box-shadow: 0 0 0 4px rgba(0, 91, 159, 0.15);
}
.bind-step.is-current .bind-step-label[b-q6wbdwaekm] { color: #0F172A; font-weight: 700; }
.bind-step.is-complete .bind-step-dot[b-q6wbdwaekm] {
    background: #10B981; border-color: #10B981; color: white;
}
.bind-step.is-complete .bind-step-label[b-q6wbdwaekm] { color: #047857; }
.bind-step-line[b-q6wbdwaekm] {
    flex: 1; height: 2px; min-width: 24px; max-width: 140px;
    background: #E2E8F0; margin: 0 8px 22px;
}
.bind-step-line.is-complete[b-q6wbdwaekm] { background: #10B981; }

/* ---------- Single-column stack ---------- */
.bind-stack[b-q6wbdwaekm] {
    display: flex; flex-direction: column; gap: 20px;
    max-width: 860px; width: 100%; margin: 0 auto;
}

/* Editable fields row inside the merged card. Always exactly three fields — loan
   amount, LTV, funding date — so the tracks are declared explicitly and weighted to
   what each field actually needs instead of split into equal thirds.

   Equal thirds wrapped the date label: inside the 860px .bind-stack the grid is 818px
   (minus 2px card border, minus 40px .bind-card-body padding), so each track was
   (818 - 40) / 3 ~= 259px, while "LOAN FUNDING DATE (POLICY EFFECTIVE DATE)" renders at
   ~282px at the .bind-field-label size (11px/700 Inter + 0.04em letter-spacing). The
   LTV column is where the slack was: its input is capped at 140px (.bind-ltv-group),
   so an equal track left ~119px unused.

   Split 4-2.5-5.5 in twelfths as requested. At the widest layout (818px grid box, minus
   two 20px gaps = 778px of track space) that is ~259px / ~162px / ~357px: loan amount
   unchanged, LTV just over its own 140px input cap, date ~75px clear of the ~282px label.

   The 300px floor on the date track is load-bearing, not decoration. The floor engages
   below ~737px of .bind-stack width, and below ~697px of stack 5.5/12 of the track space
   drops under the label's ~282px — so without the floor the label would wrap again. The
   three-column layout still reaches those widths between 861px and ~1145px viewport,
   because the sidebar's auto-collapse/expand steps change how much room the stack gets
   (at 1025px the sidebar re-expands and the stack drops back to ~637px). With the floor
   the date track holds at 300px and the remaining space splits 4:2.5, so loan amount stays
   >=157px (its "$8,000,000" input needs ~82px of text) and LTV stays >=98px (3 digits
   plus the "%" suffix need ~85px). */
.bind-fields-grid[b-q6wbdwaekm] {
    display: grid;
    grid-template-columns: minmax(0, 4fr) minmax(0, 2.5fr) minmax(300px, 5.5fr);
    gap: 16px 20px; align-items: start;
}

/* Below ~860px the three tracks squeeze the amount/LTV inputs, because the date
   column's 300px floor eats the row. Two columns plus a full-width date row keeps
   the label on one line without the squeeze. */
@media (max-width: 860px) {
    .bind-fields-grid[b-q6wbdwaekm] { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
    .bind-fields-grid > .bind-field:last-child[b-q6wbdwaekm] { grid-column: 1 / -1; }
}

.bind-field-static[b-q6wbdwaekm] {
    font-size: 16px; font-weight: 600; color: #0F172A;
    padding: 10px 12px;
    background-color: #E9ECEF; border: 1px solid #CED4DA; border-radius: 6px;
}

/* ---------- Card shell ---------- */
.bind-card[b-q6wbdwaekm] {
    background: white; border: 1px solid #E2E8F0; border-radius: 12px; overflow: hidden;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}
.bind-card-header[b-q6wbdwaekm] {
    background: linear-gradient(135deg, var(--brand-700, #003760), var(--brand-500, #005b9f));
    padding: 14px 20px; display: flex; justify-content: space-between; align-items: center;
    gap: 12px; flex-wrap: wrap; color: white;
}
.bind-card-header-light[b-q6wbdwaekm] { background: #F1F5F9; color: #0F172A; border-bottom: 1px solid #E2E8F0; }
.bind-card-title[b-q6wbdwaekm] { font-size: 15px; font-weight: 700; margin: 0; color: white; letter-spacing: 0.01em; }
.bind-card-title-dark[b-q6wbdwaekm] { color: #0F172A; }
.bind-card-subtitle[b-q6wbdwaekm] { font-size: 12px; margin: 2px 0 0; color: rgba(255,255,255,0.75); font-weight: 500; }
.bind-card-header-light .bind-card-subtitle[b-q6wbdwaekm] { color: #64748B; }
.bind-readonly-tag[b-q6wbdwaekm] { font-size: 11.5px; color: #64748B; font-weight: 500; font-style: italic; }

/* Inline state-template version chip on the "Documents to Sign" subtitle */
.bind-template-version[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 4px;
    margin-left: 8px; padding: 2px 8px; border-radius: 999px;
    background: #EEF2FF; color: #4338CA; border: 1px solid #C7D2FE;
    font-size: 11px; font-weight: 700; letter-spacing: 0.01em; font-style: normal;
}
.bind-template-version i[b-q6wbdwaekm] { font-size: 11px; }

/* "Outdated" badge next to the template-version chip when sent docs are from an older version */
.bind-template-outdated[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 4px;
    margin-left: 6px; padding: 2px 8px; border-radius: 999px;
    background: #FEF3C7; color: #92400E; border: 1px solid #FDE68A;
    font-size: 11px; font-weight: 700; letter-spacing: 0.01em; font-style: normal;
}
.bind-template-outdated i[b-q6wbdwaekm] { font-size: 11px; }

/* Prominent outdated-template alert inside the Documents to Sign card body */
.bind-sign-outdated-alert[b-q6wbdwaekm] {
    display: flex; align-items: center; gap: 10px;
    padding: 12px 14px; border-radius: 10px;
    background: #FFFBEB; border: 1px solid #FDE68A; color: #92400E;
    font-size: 12.5px; line-height: 1.45;
}
.bind-sign-outdated-alert > i[b-q6wbdwaekm] { font-size: 18px; flex-shrink: 0; color: #D97706; }
.bind-sign-outdated-text[b-q6wbdwaekm] { flex: 1; min-width: 0; }
.bind-sign-outdated-alert .btn-send-signing-inline[b-q6wbdwaekm] { flex-shrink: 0; }

.bind-card-body[b-q6wbdwaekm] { padding: 20px; display: flex; flex-direction: column; gap: 18px; }
.bind-card-footer[b-q6wbdwaekm] { padding: 0 20px 20px; }

/* ---------- Form fields ---------- */
.bind-field[b-q6wbdwaekm] { display: flex; flex-direction: column; gap: 6px; }
.bind-field-label[b-q6wbdwaekm] {
    font-size: 11px; font-weight: 700; color: #475569; text-transform: uppercase;
    letter-spacing: 0.04em;
}

.bind-field-row[b-q6wbdwaekm] { display: flex; gap: 10px; align-items: flex-start; }
.bind-field-input-wrap[b-q6wbdwaekm] { flex: 1; min-width: 0; }

.bind-amount-group[b-q6wbdwaekm] { max-width: 100%; }
.bind-amount-group .input-group-text[b-q6wbdwaekm] { background: #F8FAFC; border-color: #CBD5E1; font-weight: 600; color: #475569; }
.bind-amount-input[b-q6wbdwaekm] { font-size: 16px; font-weight: 600; color: #0F172A; padding: 10px 12px; }
.bind-amount-input:focus[b-q6wbdwaekm] { border-color: var(--brand-400, #3397C7); box-shadow: 0 0 0 3px rgba(51, 151, 199, 0.15); }

/* LTV percent input — same visual weight as the loan amount, "%" suffix instead
   of "$" prefix, narrow since the value is at most 3 digits. */
.bind-ltv-group[b-q6wbdwaekm] { max-width: 140px; }
.bind-ltv-group .bind-amount-input[b-q6wbdwaekm] { text-align: right; }

/* No width cap here: in the three-column layout the date input fills its own track
   (>=300px, ~357px at the widest), the same way the loan amount input fills its
   column. A 220px cap left ~137px of empty column to the right of it at desktop. */
.bind-date-input[b-q6wbdwaekm] { font-size: 14px; padding: 9px 12px; color: #0F172A; }
.bind-date-input:focus[b-q6wbdwaekm] { border-color: var(--brand-400, #3397C7); box-shadow: 0 0 0 3px rgba(51, 151, 199, 0.15); }

/* Below 860px the date field is its own full-width row (~519-646px), which is far more
   room than a date needs — so the cap comes back there. Declared in a second
   max-width:860px block *after* the base rule rather than in the layout block above,
   because scoped CSS gives both the same specificity ([b-xxxxx] on each) and the earlier
   block would lose on source order. */
@media (max-width: 860px) {
    .bind-date-input[b-q6wbdwaekm] { max-width: 220px; }
}

.field-error[b-q6wbdwaekm] { font-size: 12px; color: #DC2626; margin-top: 4px; display: flex; align-items: flex-start; gap: 4px; }
.field-info[b-q6wbdwaekm] { font-size: 12px; color: #2563EB; background: #EFF6FF; padding: 8px 12px; border-radius: 6px; margin-top: 6px; display: flex; align-items: center; gap: 6px; }
.field-success[b-q6wbdwaekm] { font-size: 12px; color: #059669; background: #ECFDF5; padding: 8px 12px; border-radius: 6px; margin-top: 6px; display: flex; align-items: center; gap: 6px; }

.btn-recalculate[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 10px 18px; background: white; color: var(--brand-500, #005b9f);
    border: 2px solid var(--brand-400, #3397C7); border-radius: 8px;
    font-size: 13px; font-weight: 600; cursor: pointer; transition: all 0.2s;
    white-space: nowrap; flex-shrink: 0; height: fit-content;
}
.btn-recalculate:hover[b-q6wbdwaekm] { background: #EFF6FF; border-color: var(--brand-500, #005b9f); }
.btn-recalculate:disabled[b-q6wbdwaekm] { opacity: 0.5; cursor: not-allowed; }

/* ---------- Application Details (read-only) ---------- */
.bind-details-grid[b-q6wbdwaekm] {
    display: grid; grid-template-columns: 1fr 1fr; gap: 16px 24px;
}
.bind-detail[b-q6wbdwaekm] { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.bind-detail-label[b-q6wbdwaekm] {
    font-size: 10.5px; font-weight: 700; color: #94A3B8;
    text-transform: uppercase; letter-spacing: 0.06em;
}
.bind-detail-value[b-q6wbdwaekm] { font-size: 13.5px; color: #0F172A; font-weight: 600; line-height: 1.35; word-break: break-word; }

.bind-warning-note[b-q6wbdwaekm] {
    display: flex; align-items: flex-start; gap: 6px;
    padding: 10px 12px; background: #F8FAFC; border: 1px dashed #CBD5E1;
    border-radius: 8px; font-size: 12px; color: #64748B; margin-top: 4px;
}
.bind-warning-note i[b-q6wbdwaekm] { color: #94A3B8; margin-top: 2px; }

/* ---------- Cost summary (section inside the merged card) ---------- */
.bind-cost-section[b-q6wbdwaekm] {
    border-top: 1px solid #E2E8F0; padding-top: 16px;
    display: flex; flex-direction: column; gap: 0;
}
.bind-cost-section-header[b-q6wbdwaekm] {
    display: flex; align-items: baseline; justify-content: space-between;
    gap: 10px; margin-bottom: 10px;
}
.bind-cost-section-title[b-q6wbdwaekm] {
    font-size: 13px; font-weight: 800; color: #0F172A; margin: 0;
    text-transform: uppercase; letter-spacing: 0.05em;
}
.bind-cost-section-ref[b-q6wbdwaekm] { font-size: 12px; color: #94A3B8; font-weight: 600; }

.cost-list[b-q6wbdwaekm] { display: flex; flex-direction: column; gap: 0; }
.cost-line[b-q6wbdwaekm] {
    display: flex; justify-content: space-between; align-items: center;
    padding: 11px 0; border-bottom: 1px solid #F1F5F9;
    font-size: 13.5px; color: #475569;
}
.cost-line-value[b-q6wbdwaekm] { font-weight: 700; color: #0F172A; font-variant-numeric: tabular-nums; }

.cost-total-line[b-q6wbdwaekm] {
    display: flex; justify-content: space-between; align-items: center;
    padding: 14px 0 2px; margin-top: 4px; font-size: 15px; font-weight: 700; color: #0F172A;
}
.cost-total-amount[b-q6wbdwaekm] { font-size: 20px; font-weight: 800; color: #0F172A; font-variant-numeric: tabular-nums; }

.cost-ready-note[b-q6wbdwaekm] {
    display: flex; align-items: center; gap: 6px; margin-top: 14px;
    padding: 8px 0; font-size: 12.5px; font-weight: 600; color: #047857;
}
.cost-ready-note i.text-warning[b-q6wbdwaekm] { color: #F59E0B !important; }
.cost-ready-note:empty[b-q6wbdwaekm] { display: none; }

/* Stale banner — sits above the cost list when the loan amount changed but the
   premium hasn't been recalculated yet. Co-locates the warning with the action,
   so the user never has to hunt for the Recalculate button. */
.cost-stale-banner[b-q6wbdwaekm] {
    display: flex; align-items: center; gap: 12px; justify-content: space-between;
    padding: 12px; margin-bottom: 14px;
    background: #FFFBEB; border: 1px solid #FDE68A; border-radius: 8px;
}
.cost-stale-banner-text[b-q6wbdwaekm] { display: flex; align-items: flex-start; gap: 8px; }
.cost-stale-banner-text i[b-q6wbdwaekm] { color: #D97706; font-size: 16px; margin-top: 2px; }
.cost-stale-title[b-q6wbdwaekm] { font-size: 12.5px; font-weight: 700; color: #92400E; }
.cost-stale-sub[b-q6wbdwaekm] { font-size: 11.5px; color: #B45309; margin-top: 2px; font-variant-numeric: tabular-nums; }
.cost-stale-cta[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 6px; flex-shrink: 0;
    padding: 8px 14px; background: #D97706;
    color: white; border: none; border-radius: 8px;
    font-size: 12.5px; font-weight: 700; cursor: pointer; transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.cost-stale-cta:hover:not(:disabled)[b-q6wbdwaekm] { background: #B45309; }
.cost-stale-cta:disabled[b-q6wbdwaekm] { opacity: 0.6; cursor: not-allowed; }

/* While stale, dim the numbers + cross them subtly so no one mistakes them for current. */
.cost-list.is-stale .cost-line-value[b-q6wbdwaekm],
.cost-list.is-stale .cost-total-amount[b-q6wbdwaekm] { color: #94A3B8; text-decoration: line-through; text-decoration-color: #CBD5E1; }
.cost-list.is-stale .cost-line[b-q6wbdwaekm] { opacity: 0.85; }

/* "Premium updated" pulse — the cost list re-renders with a new @key after each
   recalc, so this animation replays without any timers. */
.cost-total-line.cost-flash[b-q6wbdwaekm] {
    animation: costFlash-b-q6wbdwaekm 1.2s ease-out 1;
    border-radius: 6px;
}
@keyframes costFlash-b-q6wbdwaekm {
    0% { background: #ECFDF5; box-shadow: 0 0 0 4px #ECFDF5; }
    100% { background: transparent; box-shadow: 0 0 0 4px transparent; }
}

/* Signed-document receipt line — keeps bank users' pre-bind access to the signed
   copy + audit certificate now that the signing card is internal-roles-only. */
.signed-doc-line[b-q6wbdwaekm] {
    display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
    padding: 9px 12px; margin-top: 12px;
    background: #ECFDF5; border: 1px solid #A7F3D0; border-radius: 8px;
    font-size: 12.5px; color: #065F46;
}
.signed-doc-line > i[b-q6wbdwaekm] { color: #10B981; font-size: 14px; flex-shrink: 0; }
.signed-doc-name[b-q6wbdwaekm] { font-weight: 600; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.signed-doc-link[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 3px 10px; background: white; color: var(--brand-500, #005b9f);
    border: 1px solid #A7F3D0; border-radius: 6px;
    font-size: 11.5px; font-weight: 600; cursor: pointer; transition: all 0.15s;
}
.signed-doc-link:hover[b-q6wbdwaekm] { border-color: var(--brand-400, #3397C7); background: #EFF6FF; }
.signed-doc-line .signed-doc-link:first-of-type[b-q6wbdwaekm] { margin-left: auto; }
.signed-doc-template-note[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 5px;
    margin-top: 12px; padding: 5px 10px; border-radius: 8px;
    background: #EEF2FF; color: #4338CA; border: 1px solid #C7D2FE;
    font-size: 11.5px; font-weight: 600;
}
.signed-doc-template-note > i[b-q6wbdwaekm] { font-size: 12px; }

/* ---------- Bind button ---------- */
.btn-bind-coverage[b-q6wbdwaekm] {
    width: 100%; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    padding: 14px 20px; background: var(--success-600, #059669);
    color: white; border: none; border-radius: 10px;
    font-size: 15px; font-weight: 700; cursor: pointer; transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    letter-spacing: 0.01em;
}
.btn-bind-coverage:hover:not(:disabled)[b-q6wbdwaekm] {
    background: var(--success-700, #047857);
}
.btn-bind-coverage:disabled[b-q6wbdwaekm] { opacity: 0.55; cursor: not-allowed; transform: none; box-shadow: none; }
.btn-bind-coverage i[b-q6wbdwaekm] { font-size: 16px; }

.bind-authorize-note[b-q6wbdwaekm] {
    margin: 10px 0 0; font-size: 11.5px; color: #94A3B8; text-align: center; line-height: 1.45;
}

.bind-coverholder[b-q6wbdwaekm] {
    margin-top: 14px; padding: 10px 14px;
    background: #F8FAFC; border: 1px solid #E2E8F0; border-radius: 10px;
    display: flex; align-items: center; gap: 12px;
}
.bind-coverholder-lloyds[b-q6wbdwaekm] {
    background: #0F172A; color: white; padding: 6px 12px; border-radius: 6px;
    font-size: 11px; font-weight: 800; letter-spacing: 0.06em;
}
.bind-coverholder-text[b-q6wbdwaekm] { display: flex; flex-direction: column; line-height: 1.15; }
.bind-coverholder-text strong[b-q6wbdwaekm] { font-size: 12.5px; color: #0F172A; font-weight: 700; }
.bind-coverholder-text small[b-q6wbdwaekm] { font-size: 10.5px; color: #64748B; }

/* ---------- Documents to Sign ---------- */
.bind-sign-pending[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 4px 10px; border-radius: 999px;
    background: #FEF3C7; color: #92400E; border: 1px solid #FDE68A;
    font-size: 11px; font-weight: 700; letter-spacing: 0.02em;
}
.bind-sign-complete[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 4px 10px; border-radius: 999px;
    background: #D1FAE5; color: #047857; border: 1px solid #A7F3D0;
    font-size: 11px; font-weight: 700;
}

/* Sent-to recipients banner */
.sign-recipients[b-q6wbdwaekm] {
    display: flex; flex-wrap: wrap; align-items: center; gap: 6px;
    padding: 8px 12px; margin-bottom: 10px;
    background: #EFF6FF; border: 1px solid #BFDBFE; border-radius: 8px;
    font-size: 12px; color: #1E3A8A;
}
.sign-recipients > i[b-q6wbdwaekm] { color: var(--brand-500, #005b9f); font-size: 14px; }
.sign-recipients-label[b-q6wbdwaekm] { font-weight: 700; color: #1E40AF; margin-right: 2px; }
.sign-recipient-chip[b-q6wbdwaekm] {
    display: inline-flex; align-items: baseline; gap: 4px;
    padding: 2px 8px; background: white; border: 1px solid #BFDBFE; border-radius: 999px;
    font-size: 11.5px; color: #0F172A;
}
.sign-recipient-chip strong[b-q6wbdwaekm] { font-weight: 700; }
.sign-recipient-email[b-q6wbdwaekm] { color: #64748B; font-size: 11px; }

/* Per-row inline recipients */
.sign-doc-text[b-q6wbdwaekm] { display: flex; flex-direction: column; min-width: 0; gap: 1px; }
.sign-doc-recipients[b-q6wbdwaekm] {
    font-size: 11px; color: #64748B; display: inline-flex; align-items: center; gap: 2px;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.sign-doc-recipients i[b-q6wbdwaekm] { color: #94A3B8; }

.sign-doc-list[b-q6wbdwaekm] { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.sign-doc-row[b-q6wbdwaekm] {
    display: flex; justify-content: space-between; align-items: center; gap: 10px;
    padding: 10px 12px; background: #F8FAFC; border: 1px solid #E2E8F0; border-radius: 8px;
}
.sign-doc-info[b-q6wbdwaekm] { display: flex; align-items: center; gap: 8px; min-width: 0; }
.sign-doc-info i[b-q6wbdwaekm] { color: #64748B; font-size: 16px; flex-shrink: 0; }
.sign-doc-name[b-q6wbdwaekm] {
    font-size: 13px; color: #0F172A; font-weight: 500;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}

.sign-status-chip[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 4px; flex-shrink: 0;
    padding: 3px 9px; border-radius: 999px;
    font-size: 11px; font-weight: 700; letter-spacing: 0.01em;
    border: 1px solid transparent;
}
.sign-status-chip i[b-q6wbdwaekm] { font-size: 11px; }
.sign-status-success[b-q6wbdwaekm] { background: #D1FAE5; color: #047857; border-color: #A7F3D0; }
.sign-status-pending[b-q6wbdwaekm] { background: #DBEAFE; color: #1E40AF; border-color: #BFDBFE; }
.sign-status-warning[b-q6wbdwaekm] { background: #FEF3C7; color: #92400E; border-color: #FDE68A; }
.sign-status-error[b-q6wbdwaekm] { background: #FEE2E2; color: #B91C1C; border-color: #FECACA; }
.sign-status-draft[b-q6wbdwaekm] { background: #F1F5F9; color: #475569; border-color: #E2E8F0; }

.sign-hint[b-q6wbdwaekm] {
    margin-top: 10px; padding: 8px 12px; font-size: 11.5px;
    background: #EFF6FF; color: #1E40AF; border: 1px solid #BFDBFE;
    border-radius: 8px; display: flex; align-items: center; gap: 6px; flex-wrap: wrap;
}
.sign-hint i[b-q6wbdwaekm] { margin-top: 1px; }

.sign-action-row[b-q6wbdwaekm] {
    margin-top: 12px; padding: 12px;
    background: #FFFBEB; border: 1px solid #FDE68A; border-radius: 8px;
    display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap;
}
.sign-action-note[b-q6wbdwaekm] {
    display: flex; align-items: center; gap: 6px;
    font-size: 12px; color: #92400E; font-weight: 500;
}
.sign-action-note i[b-q6wbdwaekm] { color: #D97706; }

.btn-send-signing[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 8px 14px; background: var(--brand-600, #004980);
    color: white; border: none; border-radius: 8px;
    font-size: 12.5px; font-weight: 700; cursor: pointer; transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}
.btn-send-signing:hover:not(:disabled)[b-q6wbdwaekm] { background: var(--brand-700, #003760); }
.btn-send-signing:disabled[b-q6wbdwaekm] { opacity: 0.6; cursor: not-allowed; transform: none; }

.btn-send-signing-inline[b-q6wbdwaekm] {
    margin-left: auto; display: inline-flex; align-items: center; gap: 4px;
    padding: 3px 9px; background: white; color: var(--brand-500, #005b9f);
    border: 1px solid var(--brand-400, #3397C7); border-radius: 6px;
    font-size: 11px; font-weight: 600; cursor: pointer;
}
.btn-send-signing-inline:hover:not(:disabled)[b-q6wbdwaekm] { background: #EFF6FF; }
.btn-send-signing-inline:disabled[b-q6wbdwaekm] { opacity: 0.5; cursor: not-allowed; }

/* Completed-signature row actions */
.sign-doc-actions[b-q6wbdwaekm] { display: inline-flex; align-items: center; gap: 8px; flex-shrink: 0; }
.btn-view-signed[b-q6wbdwaekm], .btn-view-audit[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 4px 10px; background: white; color: var(--brand-500, #005b9f);
    border: 1px solid var(--brand-400, #3397C7); border-radius: 6px;
    font-size: 11.5px; font-weight: 600; cursor: pointer; transition: all 0.15s;
    white-space: nowrap;
}
.btn-view-signed:hover[b-q6wbdwaekm], .btn-view-audit:hover[b-q6wbdwaekm] { background: #EFF6FF; border-color: var(--brand-500, #005b9f); }
.btn-view-signed i[b-q6wbdwaekm] { color: #059669; font-size: 13px; }
.btn-view-audit i[b-q6wbdwaekm] { color: #7C3AED; font-size: 12px; }

/* Embedded signing modal (reuses the general modal styles; scoped here for isolation) */
.modal-overlay.signing-modal-overlay[b-q6wbdwaekm] {
    position: fixed; inset: 0; background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    display: flex; align-items: center; justify-content: center; z-index: 1060;
    padding: 1.5rem;
}
.embedded-signing-modal[b-q6wbdwaekm] {
    background: white; border-radius: 16px; box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    width: 100%; max-width: 1080px; height: min(90vh, 860px);
    display: flex; flex-direction: column; overflow: hidden;
}
.embedded-signing-modal .modal-header[b-q6wbdwaekm] {
    display: flex; align-items: flex-start; gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem; border-bottom: 1px solid #EEF2F6;
    background: #fff;
}
.embedded-signing-modal .modal-header h3[b-q6wbdwaekm] {
    margin: 0; font-size: 1.05rem; font-weight: 700; color: #0F172A;
    flex: 1; min-width: 0; align-self: center;
    display: inline-flex; align-items: center; gap: 8px; flex-wrap: wrap;
}
.btn-close-modal[b-q6wbdwaekm] {
    background: transparent; border: none; color: #94A3B8; cursor: pointer;
    width: 32px; height: 32px; border-radius: 8px; flex-shrink: 0;
    display: inline-flex; align-items: center; justify-content: center;
}
.btn-close-modal:hover[b-q6wbdwaekm] { background: #F1F5F9; color: #0F172A; }

.signing-info-bar[b-q6wbdwaekm] {
    background: #EFF6FF; color: #1E40AF; padding: 9px 20px;
    font-size: 12.5px; border-bottom: 1px solid #BFDBFE;
    display: flex; align-items: center; gap: 8px;
}

/* SL-specific reassurance banner inside the signing modal. Green reads as
   "this is handled / filed" — matches the bound-policy signed-disclosure-card. */
.signing-disclosure-note[b-q6wbdwaekm] {
    background: #ECFDF5; color: #065F46; padding: 9px 20px;
    font-size: 12.5px; border-bottom: 1px solid #A7F3D0;
    display: flex; align-items: center; gap: 8px;
}
.signing-disclosure-note i[b-q6wbdwaekm] { color: #059669; flex-shrink: 0; }
.embedded-signing-modal .modal-body.signing-body[b-q6wbdwaekm] { flex: 1; padding: 0; overflow: hidden; }
.signing-iframe[b-q6wbdwaekm] { width: 100%; height: 100%; border: 0; }

/* Persistent error panel — replaces the iframe when the ceremony fails to load */
.signing-error-panel[b-q6wbdwaekm] {
    height: 100%; display: flex; flex-direction: column;
    align-items: center; justify-content: center; gap: 6px;
    padding: 32px; text-align: center; background: #FAFAFA;
}
.signing-error-icon[b-q6wbdwaekm] {
    width: 56px; height: 56px; border-radius: 50%;
    display: inline-flex; align-items: center; justify-content: center;
    background: #FEE2E2; color: #DC2626; font-size: 26px; margin-bottom: 8px;
}
.signing-error-title[b-q6wbdwaekm] { font-size: 16px; font-weight: 700; color: #0F172A; margin: 0; }
.signing-error-message[b-q6wbdwaekm] {
    font-size: 13px; color: #64748B; line-height: 1.5; margin: 4px 0 14px;
    max-width: 480px;
}
.signing-error-retry[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 7px;
    padding: 10px 24px; background: var(--brand-600, #004980);
    color: white; border: none; border-radius: 8px;
    font-size: 13.5px; font-weight: 700; cursor: pointer; transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.signing-error-retry:hover:not(:disabled)[b-q6wbdwaekm] { background: var(--brand-700, #003760); }
.signing-error-retry:disabled[b-q6wbdwaekm] { opacity: 0.6; cursor: not-allowed; transform: none; }
.embedded-signing-modal .modal-footer.signing-footer[b-q6wbdwaekm] {
    padding: 1rem 1.5rem; border-top: 1px solid #EEF2F6; background: #FAFBFC;
    display: flex; justify-content: space-between; align-items: center; gap: 0.6rem;
}

/* "Document N of M" chip in the signing modal header during the guided flow */
.signing-progress[b-q6wbdwaekm] {
    display: inline-flex; align-items: center;
    padding: 3px 10px; border-radius: 999px; margin-left: 6px;
    background: #EFF6FF; color: #1E40AF; border: 1px solid #BFDBFE;
    font-size: 11px; font-weight: 700; letter-spacing: 0.02em;
}
.signing-template-version[b-q6wbdwaekm] {
    display: inline-flex; align-items: center;
    padding: 3px 10px; border-radius: 999px; margin-left: 6px;
    background: #EEF2FF; color: #4338CA; border: 1px solid #C7D2FE;
    font-size: 11px; font-weight: 700; letter-spacing: 0.02em;
}

/* Primary advance button in the signing modal footer */
/* Secondary by design: the real primary action is "Sign document" inside the ceremony
   iframe. This button only verifies the signature landed and advances the flow, so it
   reads as a quiet "after signing" control rather than competing with the green CTA. */
.btn-sign-continue[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 0.55rem 1.15rem; background: transparent;
    color: #64748B; border: 1px solid #E2E8F0; border-radius: 10px;
    font-size: 13.5px; font-weight: 600; cursor: pointer; transition: all 0.15s;
}
.btn-sign-continue:hover:not(:disabled)[b-q6wbdwaekm] {
    background: #F1F5F9; color: #0F172A;
}
.btn-sign-continue:disabled[b-q6wbdwaekm] { opacity: 0.6; cursor: not-allowed; transform: none; }

/* ---------- Yes-Bind confirmation modal ---------- */
.bind-confirm-modal[b-q6wbdwaekm] { border-radius: 16px; overflow: hidden; }
.bind-confirm-header[b-q6wbdwaekm] {
    display: flex; align-items: flex-start; gap: 0.9rem;
    background: #fff; border-bottom: 1px solid #EEF2F6;
    padding: 1.25rem 1.5rem 1rem;
}
.bind-confirm-header-text[b-q6wbdwaekm] { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.bind-confirm-header h5[b-q6wbdwaekm] { margin: 0; font-size: 1.05rem; font-weight: 700; color: #0F172A; }
.bind-confirm-header p[b-q6wbdwaekm] { margin: 0; font-size: 0.8rem; color: #64748B; line-height: 1.45; }

.bind-confirm-body[b-q6wbdwaekm] { padding: 18px 24px 6px; }
.bind-confirm-row[b-q6wbdwaekm] {
    display: flex; justify-content: space-between; align-items: baseline; gap: 16px;
    padding: 10px 0; border-bottom: 1px solid #F1F5F9;
}
.bind-confirm-label[b-q6wbdwaekm] { font-size: 13px; color: #64748B; flex-shrink: 0; }
.bind-confirm-value[b-q6wbdwaekm] { font-size: 13.5px; font-weight: 700; color: #0F172A; text-align: right; }

.bind-confirm-signed[b-q6wbdwaekm] {
    display: flex; align-items: flex-start; gap: 8px;
    padding: 10px 12px; margin-top: 14px;
    background: #ECFDF5; border: 1px solid #A7F3D0; border-radius: 8px;
    font-size: 12.5px; color: #065F46; line-height: 1.45; text-align: left;
}
.bind-confirm-signed i[b-q6wbdwaekm] { color: #10B981; flex-shrink: 0; margin-top: 1px; }
.bind-confirm-signed strong[b-q6wbdwaekm] { color: #047857; }

.bind-confirm-change[b-q6wbdwaekm] {
    display: flex; align-items: flex-start; gap: 8px;
    padding: 8px 12px; margin-top: 10px;
    background: #EFF6FF; border: 1px solid #BFDBFE; border-radius: 8px;
    font-size: 12px; color: #1E40AF; text-align: left;
}
.bind-confirm-change i[b-q6wbdwaekm] { flex-shrink: 0; margin-top: 1px; }

.bind-confirm-note[b-q6wbdwaekm] {
    margin-top: 14px; padding: 10px 12px;
    background: #F8FAFC; border: 1px solid #E2E8F0; border-radius: 8px;
    font-size: 12px; color: #64748B; line-height: 1.5; text-align: left;
}

.bind-confirm-stage[b-q6wbdwaekm] {
    display: flex; align-items: center; gap: 8px;
    margin-top: 12px; padding: 9px 12px;
    background: #FFFBEB; border: 1px solid #FDE68A; border-radius: 8px;
    font-size: 12.5px; color: #92400E;
}

/* Persistent bind-failure alert — modal stays open so the user can read + retry */
.bind-confirm-error[b-q6wbdwaekm] {
    display: flex; align-items: flex-start; gap: 8px;
    margin-top: 12px; padding: 10px 12px;
    background: #FEF2F2; border: 1px solid #FECACA; border-radius: 8px;
    font-size: 12.5px; color: #B91C1C; line-height: 1.5; text-align: left;
}
.bind-confirm-error i[b-q6wbdwaekm] { flex-shrink: 0; margin-top: 1px; color: #DC2626; }

.bind-confirm-footer[b-q6wbdwaekm] {
    display: flex; justify-content: space-between; align-items: center; gap: 0.6rem;
    padding: 1rem 1.5rem;
    background: #FAFBFC; border-top: 1px solid #EEF2F6;
}
.bind-confirm-back[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 0.55rem 1.15rem; background: transparent; color: #64748B;
    border: 1px solid #E2E8F0; border-radius: 10px;
    font-size: 13.5px; font-weight: 600; cursor: pointer; transition: all 0.15s;
}
.bind-confirm-back:hover:not(:disabled)[b-q6wbdwaekm] { background: #F1F5F9; color: #0F172A; }
.bind-confirm-back:disabled[b-q6wbdwaekm] { opacity: 0.55; cursor: not-allowed; }
.bind-confirm-yes[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 7px;
    padding: 0.55rem 1.15rem; background: var(--success-600, #059669);
    color: white; border: none; border-radius: 10px;
    font-size: 13.5px; font-weight: 600; cursor: pointer; transition: all 0.15s;
}
.bind-confirm-yes:hover:not(:disabled)[b-q6wbdwaekm] { background: var(--success-700, #047857); }
.bind-confirm-yes:disabled[b-q6wbdwaekm] { opacity: 0.6; cursor: not-allowed; }

/* ---------- Responsive ---------- */
@media (max-width: 640px) {
    .bind-details-grid[b-q6wbdwaekm] { grid-template-columns: 1fr; }
    .bind-fields-grid[b-q6wbdwaekm] { grid-template-columns: 1fr; }
    .bind-hero-heading[b-q6wbdwaekm] { font-size: 18px; }
    .bind-step[b-q6wbdwaekm] { min-width: 70px; }
    .bind-step-label[b-q6wbdwaekm] { font-size: 11px; }
    .bind-step-line[b-q6wbdwaekm] { min-width: 14px; }
}

/* ============================================================================
   Bind Success screen ("Coverage Successfully Bound") — rendered in-place on the
   binding tab right after a successful bind (see _justBound).
   ============================================================================ */
.bind-success-panel[b-q6wbdwaekm] {
    background: white; border: 1px solid #E2E8F0; border-radius: 16px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
    width: 100%; max-width: 640px; margin: 24px auto;
    padding: 40px 32px 32px; text-align: center;
}

.bind-success-icon[b-q6wbdwaekm] {
    width: 68px; height: 68px; margin: 0 auto 18px; border-radius: 50%;
    background: linear-gradient(135deg, #059669, #10B981);
    display: inline-flex; align-items: center; justify-content: center;
    color: white; box-shadow: 0 8px 24px rgba(5, 150, 105, 0.35);
}
.bind-success-icon i[b-q6wbdwaekm] { font-size: 32px; line-height: 1; font-weight: 700; }

.bind-success-title[b-q6wbdwaekm] {
    font-size: 22px; font-weight: 800; color: var(--brand-700, #003760);
    margin: 0 0 10px; letter-spacing: -0.01em;
}
.bind-success-lead[b-q6wbdwaekm] {
    font-size: 13.5px; color: #475569; margin: 0 0 22px; line-height: 1.55;
}
.bind-success-lead strong[b-q6wbdwaekm] { color: #0F172A; }

.policy-summary-card[b-q6wbdwaekm] {
    background: #F8FAFC; border: 1px solid #E2E8F0; border-radius: 12px;
    padding: 16px 18px; text-align: left; margin-bottom: 16px;
}
.policy-summary-header[b-q6wbdwaekm] {
    font-size: 11px; font-weight: 800; color: #475569;
    letter-spacing: 0.07em; margin-bottom: 10px;
}
.policy-summary-row[b-q6wbdwaekm] {
    display: flex; justify-content: space-between; align-items: center;
    padding: 9px 0; border-top: 1px solid #E2E8F0; font-size: 13.5px;
}
.policy-summary-row:first-of-type[b-q6wbdwaekm] { border-top: 0; }
.policy-summary-label[b-q6wbdwaekm] { color: #64748B; }
.policy-summary-value[b-q6wbdwaekm] { color: #0F172A; font-weight: 700; text-align: right; }

.signed-disclosure-card[b-q6wbdwaekm] {
    display: flex; align-items: flex-start; gap: 10px;
    padding: 12px 14px; margin-bottom: 20px;
    background: #ECFDF5; border: 1px solid #A7F3D0; border-radius: 10px;
    text-align: left; font-size: 12px; color: #065F46; line-height: 1.5;
}
.signed-disclosure-card i[b-q6wbdwaekm] { color: #059669; font-size: 15px; flex-shrink: 0; margin-top: 2px; }
.signed-disclosure-card strong[b-q6wbdwaekm] { color: #047857; }

.bind-success-actions[b-q6wbdwaekm] {
    display: flex; justify-content: center; gap: 12px; margin-bottom: 16px; flex-wrap: wrap;
}

.btn-download-policy[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 11px 22px; background: var(--brand-600, #004980); color: white;
    border: none; border-radius: 10px; font-size: 13.5px; font-weight: 700; cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.btn-download-policy:hover:not(:disabled)[b-q6wbdwaekm] { background: var(--brand-700, #003760); }
.btn-download-policy:disabled[b-q6wbdwaekm] { opacity: 0.55; cursor: not-allowed; transform: none; }

.btn-download-invoice[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 11px 22px; background: white; color: #64748B;
    border: 1.5px solid #CBD5E1; border-radius: 8px;
    font-size: 13.5px; font-weight: 700; cursor: not-allowed; opacity: 0.7;
}

/* Enabled invoice download on the success screen (invoice auto-drafts at bind) */
.btn-download-invoice-live[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 11px 22px; background: white; color: var(--brand-700, #003760);
    border: 1.5px solid var(--brand-400, #3397C7); border-radius: 8px;
    font-size: 13.5px; font-weight: 700; cursor: pointer; transition: all 0.2s;
}
.btn-download-invoice-live:hover:not(:disabled)[b-q6wbdwaekm] { background: #EFF6FF; border-color: var(--brand-500, #005b9f); }
.btn-download-invoice-live:disabled[b-q6wbdwaekm] { opacity: 0.6; cursor: not-allowed; transform: none; }

.btn-return-dashboard[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 6px; margin: 6px auto 0;
    padding: 9px 18px; background: transparent; color: #64748B;
    border: 1px solid #E2E8F0; border-radius: 8px;
    font-size: 12.5px; font-weight: 600; cursor: pointer; transition: all 0.15s;
}
.btn-return-dashboard:hover[b-q6wbdwaekm] { background: #F1F5F9; color: #0F172A; }

/* ========= Bound-state view (post-bind policy summary + re-issue affordance) ========= */
.bound-hero[b-q6wbdwaekm] {
    display: flex; align-items: flex-start; gap: 16px;
    padding: 20px 24px;
    background: linear-gradient(135deg, #065F46 0%, #10B981 100%);
    color: white;
    border-radius: 14px;
    margin-bottom: 16px;
    box-shadow: 0 4px 14px rgba(6, 95, 70, 0.15);
}
.bound-hero-icon[b-q6wbdwaekm] {
    width: 44px; height: 44px;
    display: flex; align-items: center; justify-content: center;
    background: rgba(255, 255, 255, 0.18);
    border-radius: 10px;
    font-size: 22px;
    flex-shrink: 0;
}
.bound-hero-body[b-q6wbdwaekm] { flex: 1; }
.bound-hero-title[b-q6wbdwaekm] { font-size: 22px; font-weight: 700; color: white; letter-spacing: -0.01em; }
.bound-hero-chip[b-q6wbdwaekm] {
    display: inline-flex; align-items: center;
    padding: 3px 10px; border-radius: 999px;
    background: rgba(255,255,255,0.22); color: white;
    font-size: 10.5px; font-weight: 700; letter-spacing: 0.08em;
}
.bound-hero-meta[b-q6wbdwaekm] { font-size: 13px; color: rgba(255,255,255,0.9); }
.bound-hero-sub[b-q6wbdwaekm] { margin: 6px 0 0; font-size: 13.5px; color: rgba(255,255,255,0.88); }

/* Alert banner when the state template has been updated since bind */
.bound-alert[b-q6wbdwaekm] {
    display: flex; align-items: flex-start; gap: 10px;
    padding: 12px 16px; border-radius: 10px;
    margin-bottom: 16px; font-size: 13.5px;
}
.bound-alert-warning[b-q6wbdwaekm] { background: #FFFBEB; border: 1px solid #FCD34D; color: #92400E; }
.bound-alert i[b-q6wbdwaekm] { font-size: 16px; flex-shrink: 0; margin-top: 2px; }
.bound-alert code[b-q6wbdwaekm] { background: rgba(0,0,0,0.05); padding: 1px 6px; border-radius: 4px; font-size: 12px; color: #78350F; }

/* Grid of summary cards */
.bound-grid[b-q6wbdwaekm] {
    display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px;
    margin-bottom: 16px;
}
.bound-card[b-q6wbdwaekm] {
    background: white; border: 1px solid #E2E8F0; border-radius: 12px;
    padding: 16px 18px;
}
.bound-card-wide[b-q6wbdwaekm] { grid-column: 1 / -1; }
.bound-card-title[b-q6wbdwaekm] {
    display: flex; align-items: center; gap: 8px;
    font-size: 13px; font-weight: 700; color: #1F2937;
    margin-bottom: 14px; text-transform: uppercase; letter-spacing: 0.04em;
}
.bound-card-title i[b-q6wbdwaekm] { color: #059669; font-size: 15px; }

/* Stats grid inside summary */
.bound-stats[b-q6wbdwaekm] {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px;
}
.bound-stat-label[b-q6wbdwaekm] { font-size: 11px; color: #94A3B8; font-weight: 600; text-transform: uppercase; letter-spacing: 0.03em; margin-bottom: 2px; }
.bound-stat-value[b-q6wbdwaekm] { font-size: 14px; font-weight: 600; color: #0F172A; }
/* Wide stat row (e.g. SL Affidavit with state + form + signer + date) — spans full grid width. */
.bound-stat-wide[b-q6wbdwaekm] { grid-column: 1 / -1; }

/* Document card */
.bound-doc-filename[b-q6wbdwaekm] { font-size: 13.5px; font-weight: 600; color: #0F172A; word-break: break-word; margin-bottom: 8px; }
.bound-doc-meta[b-q6wbdwaekm] { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin-bottom: 8px; }
.bound-doc-reason[b-q6wbdwaekm] { padding: 8px 10px; background: #F8FAFC; border-left: 3px solid #A78BFA; border-radius: 4px; font-size: 12.5px; color: #475569; margin-top: 8px; }

/* Inline bound-policy PDF preview — sits directly inside the Bound Document card
   so reviewers can scroll the merged policy without leaving the tab. Uses the
   browser's native PDF viewer via same-origin /api/documents/{id}/pdf proxy. */
.bound-doc-preview-header[b-q6wbdwaekm] {
    display: flex; align-items: center; justify-content: space-between;
    gap: 12px; flex-wrap: wrap;
    margin-top: 16px; padding-bottom: 8px;
    border-bottom: 1px solid #E2E8F0;
}
.bound-doc-preview-label[b-q6wbdwaekm] {
    font-size: 12px; font-weight: 700; color: #475569;
    text-transform: uppercase; letter-spacing: 0.04em;
    display: inline-flex; align-items: center; gap: 6px;
}
.bound-doc-preview-label i[b-q6wbdwaekm] { color: #059669; }

.bound-doc-preview-actions[b-q6wbdwaekm] { display: flex; align-items: center; gap: 8px; }
.bound-doc-preview-link[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 5px 10px; border: 1px solid #E2E8F0; border-radius: 6px;
    background: white; color: #475569; font-size: 12px; font-weight: 500;
    text-decoration: none; transition: all 0.15s;
}
.bound-doc-preview-link:hover[b-q6wbdwaekm] { border-color: #94A3B8; background: #F8FAFC; color: #1E40AF; }

.bound-doc-download-btn[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 5px 12px; border: none; border-radius: 8px;
    background: var(--success-600, #059669);
    color: white; font-size: 12px; font-weight: 600; cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.bound-doc-download-btn:hover:not(:disabled)[b-q6wbdwaekm] { background: var(--success-700, #047857); }

/* View Invoice — opens the Application Invoice Preview in a new tab (feature 062).
   Was previously styled as a disabled "coming soon" placeholder (dashed border, muted text,
   cursor: not-allowed), which was honest while the button only switched tabs and is a defect the
   moment it opens a document. Now a real affordance, matching the sibling preview link's colour. */
.bound-doc-invoice-btn[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 5px 12px; border: 1px solid var(--brand-400, #3397C7); border-radius: 6px;
    background: white; color: var(--brand-700, #003760);
    font-size: 12px; font-weight: 600; cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.bound-doc-invoice-btn:hover[b-q6wbdwaekm] { background: #EFF6FF; border-color: var(--brand-500, #005b9f); }
.bound-doc-invoice-badge[b-q6wbdwaekm] {
    display: inline-flex; align-items: center;
    padding: 1px 6px; border-radius: 999px;
    background: #E2E8F0; color: #475569;
    font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em;
    margin-left: 4px;
}

.bound-doc-preview[b-q6wbdwaekm] {
    margin-top: 10px;
    background: #F8FAFC; border: 1px solid #E2E8F0; border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 6px rgba(15,23,42,0.06);
}
.bound-doc-iframe[b-q6wbdwaekm] {
    width: 100%; height: 70vh; min-height: 520px;
    border: 0; display: block; background: white;
}

/* Template card row */
.bound-template-row[b-q6wbdwaekm] { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }

/* Chip variants */
.bound-chip[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; padding: 3px 9px;
    border-radius: 999px; font-size: 11px; font-weight: 600;
}
.bound-chip-muted[b-q6wbdwaekm] { background: #F1F5F9; color: #475569; }
.bound-chip-version[b-q6wbdwaekm] { background: #EDE9FE; color: #6B21A8; }
.bound-chip-ok[b-q6wbdwaekm] { background: #D1FAE5; color: #065F46; }
.bound-chip-warn[b-q6wbdwaekm] { background: #FEF3C7; color: #92400E; }

/* Re-Issue panel */
.bound-reissue-panel[b-q6wbdwaekm] {
    display: flex; align-items: center; gap: 14px;
    padding: 16px 18px;
    background: linear-gradient(135deg, #F8FAFC, #EFF6FF);
    border: 1px dashed #93C5FD; border-radius: 12px;
}
.bound-reissue-icon[b-q6wbdwaekm] {
    width: 38px; height: 38px;
    display: flex; align-items: center; justify-content: center;
    background: #DBEAFE; color: #1D4ED8;
    border-radius: 10px; font-size: 18px; flex-shrink: 0;
}
.bound-reissue-body[b-q6wbdwaekm] { flex: 1; }
.bound-reissue-body h6[b-q6wbdwaekm] { color: #0F172A; }
.bound-reissue-btn[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 10px 18px;
    background: var(--brand-600, #004980);
    color: white;
    border: none; border-radius: 10px;
    font-size: 13.5px; font-weight: 600;
    cursor: pointer; flex-shrink: 0;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}
.bound-reissue-btn:hover[b-q6wbdwaekm] {
    background: var(--brand-700, #003760);
}
.bound-reissue-btn:disabled[b-q6wbdwaekm] {
    opacity: 0.6; cursor: not-allowed; transform: none; box-shadow: none;
}
.bound-reissue-btn i[b-q6wbdwaekm] { font-size: 15px; }

/* Claim CTA panel — same shape as the Re-Issue panel, different accent color */
.bound-claim-panel[b-q6wbdwaekm] {
    display: flex; align-items: center; gap: 14px;
    padding: 16px 18px;
    background: linear-gradient(135deg, #FFF7ED, #FEF2F2);
    border: 1px dashed #FCA5A5; border-radius: 12px;
    margin-top: 14px;
}
.bound-claim-panel.bound-claim-panel-filed[b-q6wbdwaekm] {
    background: linear-gradient(135deg, #F0FDF4, #ECFDF5);
    border-color: #6EE7B7;
}
.bound-claim-icon[b-q6wbdwaekm] {
    width: 38px; height: 38px;
    display: flex; align-items: center; justify-content: center;
    background: #FEE2E2; color: #B91C1C;
    border-radius: 10px; font-size: 18px; flex-shrink: 0;
}
.bound-claim-panel-filed .bound-claim-icon[b-q6wbdwaekm] {
    background: #D1FAE5; color: #047857;
}
.bound-claim-body[b-q6wbdwaekm] { flex: 1; }
.bound-claim-body h6[b-q6wbdwaekm] { color: #0F172A; }
.bound-claim-btn[b-q6wbdwaekm] {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 10px 18px;
    color: white;
    border: none; border-radius: 10px;
    font-size: 13.5px; font-weight: 600;
    cursor: pointer; flex-shrink: 0;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}
.bound-claim-btn-file[b-q6wbdwaekm] {
    background: var(--error-600, #DC2626);
}
.bound-claim-btn-file:hover[b-q6wbdwaekm] {
    background: var(--error-700, #B91C1C);
}
.bound-claim-btn-view[b-q6wbdwaekm] {
    background: var(--success-600, #059669);
}
.bound-claim-btn-view:hover[b-q6wbdwaekm] {
    background: var(--success-700, #047857);
}
.bound-claim-btn i[b-q6wbdwaekm] { font-size: 15px; }

@media (max-width: 900px) {
    .bound-grid[b-q6wbdwaekm] { grid-template-columns: 1fr; }
    .bound-stats[b-q6wbdwaekm] { grid-template-columns: repeat(2, 1fr); }
    .bound-reissue-panel[b-q6wbdwaekm] { flex-direction: column; align-items: flex-start; }
    .bound-claim-panel[b-q6wbdwaekm] { flex-direction: column; align-items: flex-start; }
}

/* Policy Version History timeline */
.policy-history-card[b-q6wbdwaekm] { margin-top: 14px; }
.policy-history[b-q6wbdwaekm] {
    list-style: none;
    margin: 8px 0 0;
    padding: 0;
}
.policy-history-item[b-q6wbdwaekm] {
    position: relative;
    padding: 0 0 18px 22px;
    border-left: 2px solid #E5E7EB;
}
.policy-history-item:last-child[b-q6wbdwaekm] { padding-bottom: 0; border-left-color: transparent; }
.policy-history-marker[b-q6wbdwaekm] {
    position: absolute;
    left: -7px;
    top: 2px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #CBD5E1;
    border: 2px solid #fff;
    box-shadow: 0 0 0 1px #CBD5E1;
}
.policy-history-item.is-current .policy-history-marker[b-q6wbdwaekm] {
    background: #10B981;
    box-shadow: 0 0 0 1px #10B981;
}
.policy-history-item.is-archived[b-q6wbdwaekm] { opacity: 0.85; }
.policy-history-head[b-q6wbdwaekm] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin-bottom: 4px;
}
.policy-history-meta[b-q6wbdwaekm] { margin-bottom: 4px; }
.policy-history-reason[b-q6wbdwaekm] {
    font-size: 12.5px;
    color: #475569;
    margin-bottom: 6px;
}
.policy-history-actions[b-q6wbdwaekm] { display: flex; gap: 14px; }
.policy-history-link[b-q6wbdwaekm] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: none;
    border: none;
    padding: 0;
    font-size: 12.5px;
    font-weight: 600;
    color: var(--brand-500, #2563EB);
    text-decoration: none;
    cursor: pointer;
}
.policy-history-link:hover[b-q6wbdwaekm] { text-decoration: underline; }

/* Re-Issue modal — version block + facts list */
.reissue-version-block[b-q6wbdwaekm] {
    background: #F8FAFC;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    padding: 14px;
    margin-bottom: 16px;
}
.reissue-version-head[b-q6wbdwaekm] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px;
}
.reissue-version-meta[b-q6wbdwaekm] {
    font-size: 12px;
    color: #64748B;
}
.reissue-version-meta .bi-dot[b-q6wbdwaekm] { color: #CBD5E1; }

.reissue-facts[b-q6wbdwaekm] {
    list-style: none;
    margin: 0 0 18px;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 9px;
}
.reissue-facts li[b-q6wbdwaekm] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 12.5px;
    color: #475569;
    line-height: 1.45;
}
.reissue-facts li > i[b-q6wbdwaekm] {
    flex-shrink: 0;
    margin-top: 2px;
    width: 16px;
    text-align: center;
    color: var(--brand-500, #2563EB);
}
.reissue-facts li strong[b-q6wbdwaekm] { color: #334155; }
/* /Components/Pages/Underwriting/Tabs/EmailLogsTab.razor.rz.scp.css */
/* ========================================
   Email Logs Tab - Email Client Style
   ======================================== */

/* ========================================
   Tab Animations
   ======================================== */
@keyframes fadeInUp-b-saxp39h7fx {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn-b-saxp39h7fx {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideInLeft-b-saxp39h7fx {
    from {
        opacity: 0;
        transform: translateX(-15px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideInRight-b-saxp39h7fx {
    from {
        opacity: 0;
        transform: translateX(15px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.email-logs-tab[b-saxp39h7fx] {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 500px;
    background: var(--bg-surface, #fff);
    border-radius: 12px;
    border: 1px solid var(--border-light);
    overflow: hidden;
    animation: fadeInUp-b-saxp39h7fx 0.4s ease-out;
}

/* Toolbar */
.email-toolbar[b-saxp39h7fx] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-light);
    gap: 1rem;
    flex-wrap: wrap;
    animation: fadeIn-b-saxp39h7fx 0.35s ease-out;
}

.toolbar-left[b-saxp39h7fx],
.toolbar-right[b-saxp39h7fx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.btn-toolbar[b-saxp39h7fx] {
    width: 36px;
    height: 36px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    color: var(--text-secondary, #64748b);
    border-radius: 8px;
    transition: all 0.15s ease;
}

.btn-toolbar:hover[b-saxp39h7fx] {
    background: var(--neutral-200);
    color: var(--text-primary, #0f172a);
}

.btn-toolbar-text[b-saxp39h7fx] {
    padding: 0.5rem 0.75rem;
    font-size: 0.8125rem;
    font-weight: 500;
    border: none;
    background: transparent;
    color: var(--text-secondary, #64748b);
    border-radius: 6px;
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.btn-toolbar-text:hover[b-saxp39h7fx] {
    background: var(--neutral-200);
    color: var(--text-primary, #0f172a);
}

.toolbar-divider[b-saxp39h7fx] {
    width: 1px;
    height: 24px;
    background: var(--border-light);
    margin: 0 0.25rem;
}

.email-count[b-saxp39h7fx] {
    font-size: 0.8125rem;
    color: var(--text-muted, #94a3b8);
}

.filter-group[b-saxp39h7fx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.filter-select[b-saxp39h7fx],
.filter-input[b-saxp39h7fx] {
    padding: 0.5rem 0.75rem;
    font-size: 0.8125rem;
    border: 1px solid var(--border-light);
    border-radius: 6px;
    background: white;
    color: var(--text-primary, #0f172a);
    min-width: 120px;
}

.filter-select:focus[b-saxp39h7fx],
.filter-input:focus[b-saxp39h7fx] {
    outline: none;
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.1);
}

.filter-separator[b-saxp39h7fx] {
    font-size: 0.75rem;
    color: var(--text-muted, #94a3b8);
}

/* Email List Container */
.email-list-container[b-saxp39h7fx] {
    display: flex;
    flex: 1;
    overflow: hidden;
}

/* Email List */
.email-list[b-saxp39h7fx] {
    width: 340px;
    min-width: 340px;
    border-right: 1px solid var(--border-light);
    overflow-y: auto;
    background: white;
    animation: slideInLeft-b-saxp39h7fx 0.4s ease-out 0.1s backwards;
}

.email-list-item[b-saxp39h7fx] {
    display: flex;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--neutral-100);
    cursor: pointer;
    transition: background 0.15s ease;
}

.email-list-item:hover[b-saxp39h7fx] {
    background: var(--neutral-50);
}

.email-list-item.selected[b-saxp39h7fx] {
    background: var(--brand-50);
    border-left: 3px solid var(--brand-500);
    padding-left: calc(1rem - 3px);
}

.email-list-item.unread[b-saxp39h7fx] {
    background: white;
}

.email-list-item.unread .email-item-subject[b-saxp39h7fx] {
    font-weight: 600;
}

.email-list-item.failed[b-saxp39h7fx] {
    border-left: 3px solid var(--error-500);
    padding-left: calc(1rem - 3px);
}

.email-list-item.failed.selected[b-saxp39h7fx] {
    border-left-color: var(--error-500);
}

.email-item-status[b-saxp39h7fx] {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 1rem;
}

.email-item-content[b-saxp39h7fx] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.email-item-header[b-saxp39h7fx] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.email-item-to[b-saxp39h7fx] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.email-item-date[b-saxp39h7fx] {
    font-size: 0.75rem;
    color: var(--text-muted, #94a3b8);
    flex-shrink: 0;
}

.email-item-subject[b-saxp39h7fx] {
    font-size: 0.8125rem;
    color: var(--text-secondary, #475569);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.email-item-preview[b-saxp39h7fx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.125rem;
}

.email-item-template[b-saxp39h7fx] {
    font-size: 0.6875rem;
    color: var(--text-muted, #94a3b8);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Status Colors for Icons */
.status-pending[b-saxp39h7fx] { color: #94a3b8; }
.status-sending[b-saxp39h7fx] { color: #3b82f6; }
.status-sent[b-saxp39h7fx] { color: #0ea5e9; }
.status-delivered[b-saxp39h7fx] { color: var(--success-500); }
.status-failed[b-saxp39h7fx] { color: #ef4444; }
.status-retrying[b-saxp39h7fx] { color: #f59e0b; }

/* Email Detail Panel */
.email-detail[b-saxp39h7fx] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: white;
    animation: slideInRight-b-saxp39h7fx 0.4s ease-out 0.15s backwards;
}

.email-detail-header[b-saxp39h7fx] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.5rem;
    border-bottom: 1px solid var(--border-light);
}

.btn-back-mobile[b-saxp39h7fx] {
    display: none;
    width: 36px;
    height: 36px;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--text-secondary, #64748b);
    border-radius: 8px;
}

.email-detail-subject[b-saxp39h7fx] {
    flex: 1;
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.email-detail-actions[b-saxp39h7fx] {
    display: flex;
    gap: 0.5rem;
}

.btn-action[b-saxp39h7fx] {
    width: 36px;
    height: 36px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--border-light);
    background: white;
    color: var(--text-secondary, #64748b);
    border-radius: 8px;
    transition: all 0.15s ease;
}

.btn-action:hover[b-saxp39h7fx] {
    background: var(--neutral-50);
    border-color: var(--border-medium);
    color: var(--text-primary, #0f172a);
}

/* Email Meta */
.email-detail-meta[b-saxp39h7fx] {
    padding: 1rem 1.5rem;
    border-bottom: 1px solid var(--border-light);
}

.email-meta-row[b-saxp39h7fx] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.email-meta-avatar[b-saxp39h7fx] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--brand-100) 0%, var(--brand-50) 100%);
    color: var(--brand-600);
    border-radius: 50%;
    font-size: 1rem;
    flex-shrink: 0;
}

.email-meta-info[b-saxp39h7fx] {
    flex: 1;
    min-width: 0;
}

.email-meta-primary[b-saxp39h7fx] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.email-from[b-saxp39h7fx] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
}

.email-date[b-saxp39h7fx] {
    font-size: 0.75rem;
    color: var(--text-muted, #94a3b8);
}

.email-meta-secondary[b-saxp39h7fx] {
    font-size: 0.8125rem;
    color: var(--text-secondary, #64748b);
    margin-top: 0.25rem;
}

.email-to[b-saxp39h7fx] {
    color: var(--text-primary, #0f172a);
}

.email-meta-status[b-saxp39h7fx] {
    flex-shrink: 0;
}

/* Error Banner */
.email-error-banner[b-saxp39h7fx] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.875rem 1.5rem;
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
    border-bottom: 1px solid #fecaca;
}

.email-error-banner > i[b-saxp39h7fx] {
    color: var(--error-500);
    font-size: 1.125rem;
    margin-top: 0.125rem;
}

.error-content[b-saxp39h7fx] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.error-content strong[b-saxp39h7fx] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--error-700);
}

.error-content span[b-saxp39h7fx] {
    font-size: 0.8125rem;
    color: var(--error-600);
}

/* Email Detail Body */
.email-detail-body[b-saxp39h7fx] {
    flex: 1;
    overflow-y: auto;
    padding: 1.5rem;
}

.email-info-pills[b-saxp39h7fx] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
}

.info-pill[b-saxp39h7fx] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 500;
    background: var(--neutral-100);
    color: var(--text-secondary, #64748b);
    border-radius: 20px;
}

.info-pill.warning[b-saxp39h7fx] {
    background: #fef3c7;
    color: #b45309;
}

/* Section Title */
.section-title[b-saxp39h7fx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
    text-transform: uppercase;
    letter-spacing: 0.025em;
    margin-bottom: 1rem;
}

.section-title i[b-saxp39h7fx] {
    color: var(--text-muted, #94a3b8);
}

/* Email Content Section */
.email-content-section[b-saxp39h7fx] {
    margin-bottom: 2rem;
}

.email-content-frame[b-saxp39h7fx] {
    border: 1px solid var(--border-light);
    border-radius: 8px;
    overflow: hidden;
    background: white;
}

.email-iframe[b-saxp39h7fx] {
    width: 100%;
    min-height: 300px;
    max-height: 500px;
    border: none;
    display: block;
}

.content-loading[b-saxp39h7fx] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 2rem;
    color: var(--text-muted, #94a3b8);
    font-size: 0.8125rem;
    background: var(--neutral-50);
    border-radius: 8px;
    justify-content: center;
}

.content-empty[b-saxp39h7fx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 2rem;
    color: var(--text-muted, #94a3b8);
    font-size: 0.8125rem;
    background: var(--neutral-50);
    border-radius: 8px;
    text-align: center;
}

.content-empty i[b-saxp39h7fx] {
    font-size: 1.5rem;
    opacity: 0.5;
}

/* Activity Section */
.email-activity-section[b-saxp39h7fx] {
    margin-bottom: 2rem;
}

.activity-loading[b-saxp39h7fx] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem;
    color: var(--text-muted, #94a3b8);
    font-size: 0.8125rem;
}

.activity-empty[b-saxp39h7fx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem;
    color: var(--text-muted, #94a3b8);
    font-size: 0.8125rem;
    background: var(--neutral-50);
    border-radius: 8px;
}

/* Activity Timeline Vertical */
.activity-timeline-vertical[b-saxp39h7fx] {
    display: flex;
    flex-direction: column;
    position: relative;
    padding-left: 1.5rem;
}

.activity-timeline-vertical[b-saxp39h7fx]::before {
    content: '';
    position: absolute;
    left: 11px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: var(--neutral-200);
}

.timeline-entry[b-saxp39h7fx] {
    display: flex;
    gap: 0.75rem;
    padding-bottom: 1rem;
    position: relative;
}

.timeline-entry:last-child[b-saxp39h7fx] {
    padding-bottom: 0;
}

.timeline-marker[b-saxp39h7fx] {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: white;
    border: 2px solid currentColor;
    font-size: 0.625rem;
    flex-shrink: 0;
    margin-left: -1.5rem;
    z-index: 1;
}

/* Timeline Marker Colors */
.marker-queued[b-saxp39h7fx] { color: #94a3b8; border-color: #94a3b8; }
.marker-sending[b-saxp39h7fx] { color: #3b82f6; border-color: #3b82f6; }
.marker-sent[b-saxp39h7fx] { color: #0ea5e9; border-color: #0ea5e9; }
.marker-delivered[b-saxp39h7fx] { color: var(--success-500); border-color: var(--success-500); background: var(--success-500); }
.marker-delivered i[b-saxp39h7fx] { color: white; }
.marker-bounced[b-saxp39h7fx] { color: #f59e0b; border-color: #f59e0b; }
.marker-complained[b-saxp39h7fx] { color: #f59e0b; border-color: #f59e0b; }
.marker-opened[b-saxp39h7fx] { color: var(--success-500); border-color: var(--success-500); }
.marker-clicked[b-saxp39h7fx] { color: var(--success-500); border-color: var(--success-500); }
.marker-failed[b-saxp39h7fx] { color: #ef4444; border-color: #ef4444; background: #ef4444; }
.marker-failed i[b-saxp39h7fx] { color: white; }

.timeline-content[b-saxp39h7fx] {
    flex: 1;
    min-width: 0;
}

.timeline-header[b-saxp39h7fx] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
}

.timeline-event[b-saxp39h7fx] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
}

.timeline-time[b-saxp39h7fx] {
    font-size: 0.75rem;
    color: var(--text-muted, #94a3b8);
    font-family: var(--font-mono, monospace);
}

.timeline-data[b-saxp39h7fx] {
    font-size: 0.75rem;
    color: var(--text-secondary, #64748b);
    margin-top: 0.25rem;
    word-break: break-word;
}

.timeline-extra[b-saxp39h7fx] {
    margin-top: 0.375rem;
}

/* Technical Section */
.email-technical-section[b-saxp39h7fx] {
    background: var(--neutral-50);
    border-radius: 10px;
    padding: 1rem;
}

.technical-grid[b-saxp39h7fx] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.technical-item[b-saxp39h7fx] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.technical-item.full-width[b-saxp39h7fx] {
    grid-column: span 2;
}

.technical-label[b-saxp39h7fx] {
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--text-muted, #94a3b8);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.technical-value[b-saxp39h7fx] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
}

.technical-value.monospace[b-saxp39h7fx] {
    font-family: var(--font-mono, monospace);
}

.technical-value.small[b-saxp39h7fx] {
    font-size: 0.75rem;
    word-break: break-all;
}

/* Empty States */
.email-detail-empty[b-saxp39h7fx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    padding: 3rem;
    text-align: center;
    color: var(--text-muted, #94a3b8);
}

.email-detail-empty i[b-saxp39h7fx] {
    font-size: 3rem;
    margin-bottom: 1rem;
    opacity: 0.5;
}

.email-detail-empty h4[b-saxp39h7fx] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.5rem;
}

.email-detail-empty p[b-saxp39h7fx] {
    font-size: 0.875rem;
    margin: 0;
}

.loading-container[b-saxp39h7fx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    padding: 3rem;
    gap: 1rem;
}

.loading-container p[b-saxp39h7fx] {
    font-size: 0.875rem;
    color: var(--text-muted, #94a3b8);
    margin: 0;
}

.empty-state[b-saxp39h7fx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    padding: 3rem;
    text-align: center;
}

.empty-icon[b-saxp39h7fx] {
    font-size: 3rem;
    color: var(--neutral-300);
    margin-bottom: 1rem;
}

.empty-state h4[b-saxp39h7fx] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.5rem;
}

.empty-state p[b-saxp39h7fx] {
    font-size: 0.875rem;
    color: var(--text-muted, #94a3b8);
    margin: 0;
}

/* Load More */
.load-more-container[b-saxp39h7fx] {
    padding: 1rem;
    text-align: center;
}

.btn-load-more[b-saxp39h7fx] {
    padding: 0.5rem 1.5rem;
    font-size: 0.8125rem;
    font-weight: 500;
    border: 1px solid var(--border-light);
    background: white;
    color: var(--text-secondary, #64748b);
    border-radius: 6px;
    transition: all 0.15s ease;
}

.btn-load-more:hover:not(:disabled)[b-saxp39h7fx] {
    background: var(--neutral-50);
    border-color: var(--brand-300);
    color: var(--brand-600);
}

/* Badge Status Styles */
.badge-status[b-saxp39h7fx] {
    font-size: 0.625rem;
    font-weight: 600;
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.badge-pending[b-saxp39h7fx] { background: #f1f5f9; color: #64748b; }
.badge-sending[b-saxp39h7fx] { background: #dbeafe; color: #2563eb; }
.badge-sent[b-saxp39h7fx] { background: #e0f2fe; color: #0284c7; }
.badge-delivered[b-saxp39h7fx] { background: #dcfce7; color: var(--success-600); }
.badge-failed[b-saxp39h7fx] { background: #fee2e2; color: var(--error-600); }
.badge-retrying[b-saxp39h7fx] { background: #fef3c7; color: #d97706; }

.badge-lg[b-saxp39h7fx] {
    font-size: 0.75rem;
    padding: 0.375rem 0.75rem;
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
}

/* Responsive */
@media (max-width: 768px) {
    .email-toolbar[b-saxp39h7fx] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .toolbar-left[b-saxp39h7fx],
    .toolbar-right[b-saxp39h7fx] {
        width: 100%;
        justify-content: space-between;
    }

    .filter-group[b-saxp39h7fx] {
        flex: 1;
    }

    .filter-select[b-saxp39h7fx],
    .filter-input[b-saxp39h7fx] {
        flex: 1;
        min-width: 0;
    }

    .email-list-container[b-saxp39h7fx] {
        position: relative;
    }

    .email-list[b-saxp39h7fx] {
        width: 100%;
        min-width: 100%;
        transition: transform 0.3s ease;
    }

    .email-list.has-selection[b-saxp39h7fx] {
        transform: translateX(-100%);
        position: absolute;
    }

    .email-detail[b-saxp39h7fx] {
        position: absolute;
        top: 0;
        left: 100%;
        width: 100%;
        height: 100%;
        transition: transform 0.3s ease;
    }

    .email-detail.visible[b-saxp39h7fx] {
        transform: translateX(-100%);
    }

    .btn-back-mobile[b-saxp39h7fx] {
        display: flex;
    }
}

/* /Components/Pages/Underwriting/Tabs/ScheduledEmailsTab.razor.rz.scp.css */
/* ========================================
   Scheduled Emails Tab - Modern Finance UI
   ======================================== */

/* ========================================
   Tab Animations
   ======================================== */
@keyframes fadeInUp-b-0xg14fv58g {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn-b-0xg14fv58g {
    from { opacity: 0; }
    to { opacity: 1; }
}

.scheduled-emails-tab[b-0xg14fv58g] {
    padding: 0;
    animation: fadeIn-b-0xg14fv58g 0.35s ease-out;
}

/* Schedules List */
.schedules-list[b-0xg14fv58g] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* Schedule Card */
.schedule-card[b-0xg14fv58g] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    transition: all 0.3s ease;
    position: relative;
    animation: fadeInUp-b-0xg14fv58g 0.4s ease-out forwards;
    opacity: 0;
}

/* Staggered schedule card animations */
.schedule-card:nth-child(1)[b-0xg14fv58g] { animation-delay: 50ms; }
.schedule-card:nth-child(2)[b-0xg14fv58g] { animation-delay: 100ms; }
.schedule-card:nth-child(3)[b-0xg14fv58g] { animation-delay: 150ms; }
.schedule-card:nth-child(4)[b-0xg14fv58g] { animation-delay: 200ms; }
.schedule-card:nth-child(5)[b-0xg14fv58g] { animation-delay: 250ms; }

.schedule-card[b-0xg14fv58g]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--success-500) 0%, var(--success-400) 100%);
    transition: opacity 0.3s ease;
}

.schedule-card.inactive[b-0xg14fv58g] {
    opacity: 0.6;
}

.schedule-card.inactive[b-0xg14fv58g]::before {
    background: linear-gradient(90deg, var(--neutral-400) 0%, var(--neutral-500) 100%);
}

.schedule-card:hover[b-0xg14fv58g] {
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.1);
    border-color: var(--brand-200);
    transform: translateY(-2px);
}

/* Schedule Header */
.schedule-header[b-0xg14fv58g] {
    padding: 1.25rem 1.5rem;
    background: linear-gradient(135deg, var(--success-50) 0%, #ECFDF5 100%);
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: all 0.3s ease;
}

.schedule-card.inactive .schedule-header[b-0xg14fv58g] {
    background: linear-gradient(135deg, var(--neutral-50) 0%, var(--neutral-100) 100%);
}

.schedule-header:hover[b-0xg14fv58g] {
    background: linear-gradient(135deg, #ECFDF5 0%, var(--success-100) 100%);
}

.schedule-card.inactive .schedule-header:hover[b-0xg14fv58g] {
    background: linear-gradient(135deg, var(--neutral-100) 0%, var(--neutral-50) 100%);
}

.schedule-info h6[b-0xg14fv58g] {
    margin-bottom: 0.375rem;
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    letter-spacing: -0.01em;
}

.schedule-info .badge[b-0xg14fv58g] {
    font-size: 0.6875rem;
    padding: 0.375rem 0.75rem;
    border-radius: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Schedule Details */
.schedule-details[b-0xg14fv58g] {
    padding: 1.5rem;
    border-top: 1px solid var(--border-light);
    background: var(--bg-base-solid);
}

.schedule-details .row[b-0xg14fv58g] {
    margin-bottom: 1rem;
}

.schedule-details .row:last-child[b-0xg14fv58g] {
    margin-bottom: 0;
}

.schedule-details small[b-0xg14fv58g] {
    display: block;
    font-weight: 700;
    color: var(--text-muted);
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.375rem;
}

.schedule-details p[b-0xg14fv58g] {
    color: var(--text-primary);
    font-size: 0.9375rem;
    font-weight: 500;
    margin-bottom: 0;
}

.schedule-details code[b-0xg14fv58g] {
    background: white;
    padding: 0.5rem 0.75rem;
    border-radius: 6px;
    font-size: 0.875rem;
    color: var(--brand-600);
    border: 1px solid var(--border-medium);
    font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
    font-weight: 600;
}

/* Action Buttons */
.schedule-header .btn-group[b-0xg14fv58g] {
    display: flex;
    gap: 0.5rem;
}

.schedule-header .btn-sm[b-0xg14fv58g] {
    padding: 0.375rem 0.875rem;
    font-size: 0.8125rem;
    font-weight: 600;
    border-radius: 8px;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.schedule-header .btn-outline-warning[b-0xg14fv58g] {
    border: 1px solid var(--warning-500);
    color: var(--warning-600);
}

.schedule-header .btn-outline-warning:hover[b-0xg14fv58g] {
    background: var(--warning-500);
    color: var(--neutral-900);
}

.schedule-header .btn-outline-success[b-0xg14fv58g] {
    border: 1px solid var(--success-500);
    color: var(--success-600);
}

.schedule-header .btn-outline-success:hover[b-0xg14fv58g] {
    background: var(--success-500);
    color: white;
}

.schedule-header .btn-outline-danger[b-0xg14fv58g] {
    border: 1px solid var(--error-500);
    color: var(--error-600);
}

.schedule-header .btn-outline-danger:hover[b-0xg14fv58g] {
    background: var(--error-500);
    color: white;
}

/* Empty State */
.empty-state[b-0xg14fv58g] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem 2rem;
    text-align: center;
    background: linear-gradient(135deg, var(--bg-base-solid) 0%, var(--neutral-50) 100%);
    border-radius: 16px;
    border: 2px dashed var(--border-medium);
    animation: fadeIn-b-0xg14fv58g 0.5s ease-out;
}

.empty-state-icon[b-0xg14fv58g] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--brand-100) 0%, var(--brand-50) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.08);
}

.empty-state-icon i[b-0xg14fv58g] {
    font-size: 2.5rem;
    color: var(--brand-500);
}

.empty-state-title[b-0xg14fv58g] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 0.75rem;
    letter-spacing: -0.01em;
}

.empty-state-description[b-0xg14fv58g] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
    max-width: 360px;
    line-height: 1.6;
    margin-bottom: 1.5rem;
}

.empty-state .btn-primary[b-0xg14fv58g] {
    padding: 0.625rem 1.25rem;
    font-size: 0.875rem;
    font-weight: 600;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.empty-state .btn-primary i[b-0xg14fv58g] {
    font-size: 1rem;
    margin: 0;
}

[b-0xg14fv58g] .alert-info {
    background: linear-gradient(135deg, var(--brand-50) 0%, var(--brand-100) 100%);
    color: var(--brand-700);
    border: none;
    border-left: 4px solid var(--brand-500);
    border-radius: 10px;
    padding: 1rem 1.25rem;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .schedule-header[b-0xg14fv58g] {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    
    .schedule-header .btn-group[b-0xg14fv58g] {
        width: 100%;
        flex-direction: column;
    }
    
    .schedule-header .btn-sm[b-0xg14fv58g] {
        width: 100%;
    }
    
    .schedule-details[b-0xg14fv58g] {
        padding: 1.25rem;
    }
}

/* /Components/Pages/Underwriting/Tabs/TemplateVersionSelector.razor.rz.scp.css */
.tv-selector[b-0b6giwizqx] { width: 100%; }

.tv-empty[b-0b6giwizqx] {
    font-size: 12.5px;
    color: #64748B;
    padding: 10px 12px;
    background: #F8FAFC;
    border: 1px dashed #CBD5E1;
    border-radius: 10px;
}

.tv-list[b-0b6giwizqx] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-height: 264px;
    overflow-y: auto;
    padding: 2px;
}

.tv-row[b-0b6giwizqx] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    width: 100%;
    text-align: left;
    padding: 12px 14px;
    background: #fff;
    border: 1.5px solid #E5E7EB;
    border-radius: 11px;
    cursor: pointer;
    transition: border-color .12s ease, background .12s ease, box-shadow .12s ease;
}
.tv-row:hover[b-0b6giwizqx] { border-color: #CBD5E1; background: #FAFBFC; }
.tv-row:focus-visible[b-0b6giwizqx] {
    outline: none;
    border-color: var(--brand-400, #60A5FA);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15);
}
.tv-row.is-selected[b-0b6giwizqx] {
    border-color: var(--brand-500, #2563EB);
    background: rgba(37, 99, 235, 0.05);
    box-shadow: 0 1px 4px rgba(37, 99, 235, 0.12);
}

/* Radio indicator */
.tv-radio[b-0b6giwizqx] {
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    margin-top: 1px;
    border-radius: 50%;
    border: 2px solid #CBD5E1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: border-color .12s ease;
}
.tv-row.is-selected .tv-radio[b-0b6giwizqx] { border-color: var(--brand-500, #2563EB); }
.tv-radio-dot[b-0b6giwizqx] {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--brand-500, #2563EB);
    transform: scale(0);
    transition: transform .12s ease;
}
.tv-row.is-selected .tv-radio-dot[b-0b6giwizqx] { transform: scale(1); }

.tv-main[b-0b6giwizqx] {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}
.tv-head[b-0b6giwizqx] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}
.tv-version[b-0b6giwizqx] {
    font-size: 13.5px;
    font-weight: 700;
    color: #0F172A;
}
.tv-date[b-0b6giwizqx] {
    font-size: 11.5px;
    color: #94A3B8;
    margin-left: auto;
}

/* Relation badges */
.tv-badge[b-0b6giwizqx] {
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: .02em;
    text-transform: uppercase;
    padding: 2px 8px;
    border-radius: 999px;
    line-height: 1.4;
}
.tv-badge-current[b-0b6giwizqx] { background: #DCFCE7; color: #15803D; }
.tv-badge-newer[b-0b6giwizqx]   { background: #DBEAFE; color: #1D4ED8; }
.tv-badge-older[b-0b6giwizqx]   { background: #FEF3C7; color: #B45309; }

.tv-desc[b-0b6giwizqx] {
    font-size: 12.5px;
    color: #475569;
    /* Wrap to two lines, then ellipsize — full text is in the title tooltip. */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    word-break: break-word;
}

/* Selected checkmark */
.tv-check[b-0b6giwizqx] {
    flex-shrink: 0;
    align-self: center;
    color: var(--brand-500, #2563EB);
    font-size: 16px;
    opacity: 0;
    transition: opacity .12s ease;
}
.tv-row.is-selected .tv-check[b-0b6giwizqx] { opacity: 1; }
/* /Components/Pages/Underwriting/UnderwriterClaimsPage.razor.rz.scp.css */
/* Header — matches admin pattern */
.content-header[b-k1fan1kur8] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

.content-title[b-k1fan1kur8] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a1a2e;
    margin: 0;
}

.content-subtitle[b-k1fan1kur8] {
    font-size: 0.8rem;
    color: #94A3B8;
    margin: 2px 0 0;
}

.header-stats[b-k1fan1kur8] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.stat-pill[b-k1fan1kur8] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 20px;
    font-size: 0.75rem;
    color: #64748B;
}

.stat-pill i[b-k1fan1kur8] { font-size: 0.8rem; }
.stat-pill .stat-value[b-k1fan1kur8] { font-weight: 700; color: #1E293B; }
.stat-pill .stat-label[b-k1fan1kur8] { font-size: 0.6rem; letter-spacing: 0.5px; color: #94A3B8; }
.stat-pill.stat-primary[b-k1fan1kur8] { border-color: #BFDBFE; background: #EFF6FF; }
.stat-pill.stat-primary i[b-k1fan1kur8] { color: #3B82F6; }
.stat-pill.stat-warning[b-k1fan1kur8] { border-color: #FDE68A; background: #FFFBEB; }
.stat-pill.stat-warning i[b-k1fan1kur8] { color: #F59E0B; }
.stat-pill.stat-success[b-k1fan1kur8] { border-color: #A7F3D0; background: #ECFDF5; }
.stat-pill.stat-success i[b-k1fan1kur8] { color: #10B981; }
.stat-pill.stat-info[b-k1fan1kur8] { border-color: #BAE6FD; background: #F0F9FF; }
.stat-pill.stat-info i[b-k1fan1kur8] { color: #0284C7; }

.btn-header-action[b-k1fan1kur8] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #E2E8F0;
    background: white;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #64748B;
    transition: all 0.2s;
}

.btn-header-action:hover[b-k1fan1kur8] { background: #F1F5F9; color: #334155; }

/* Card with tabs */
.card-with-tabs[b-k1fan1kur8] {
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    background: white;
    overflow: hidden;
}

/* Toolbar */
.card-toolbar[b-k1fan1kur8] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    border-bottom: 1px solid #F1F5F9;
    background: #FAFBFC;
}

.toolbar-search[b-k1fan1kur8] {
    position: relative;
    flex: 1;
    max-width: 300px;
}

.toolbar-search i[b-k1fan1kur8] {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.75rem;
    color: #94A3B8;
    pointer-events: none;
}

.toolbar-search .form-control[b-k1fan1kur8] {
    padding-left: 30px;
    font-size: 0.8rem;
    border-color: #E2E8F0;
    height: 34px;
}

.toolbar-search .form-control:focus[b-k1fan1kur8] {
    border-color: #93C5FD;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.toolbar-filters[b-k1fan1kur8] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: auto;
}

.toolbar-btn[b-k1fan1kur8] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.78rem;
    white-space: nowrap;
    height: 34px;
    border-radius: 6px;
    padding: 0 12px;
    cursor: pointer;
    border: none;
    font-weight: 500;
    transition: all 0.15s;
}

.btn-brand[b-k1fan1kur8] { background: var(--brand-500); color: white; }
.btn-brand:hover[b-k1fan1kur8] { background: var(--brand-600, #0a526a); color: white; }
.btn-ghost[b-k1fan1kur8] { background: transparent; border: 1px solid #E2E8F0; color: #64748B; }
.btn-ghost:hover[b-k1fan1kur8] { background: #F1F5F9; color: #374151; }

/* Table */
.table-card[b-k1fan1kur8] { overflow: hidden; }

.table thead th[b-k1fan1kur8] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #94A3B8;
    font-weight: 600;
    border-bottom: 1px solid #F1F5F9;
    padding: 12px 16px;
    white-space: nowrap;
    background: white;
}

.table tbody td[b-k1fan1kur8] {
    padding: 11px 16px;
    vertical-align: middle;
    border-bottom: 1px solid #F9FAFB;
    font-size: 0.82rem;
}

.claim-row[b-k1fan1kur8] { cursor: pointer; transition: background 0.1s; }
.claim-row:hover[b-k1fan1kur8] { background: #F8FAFC !important; }

.claim-number[b-k1fan1kur8] { font-weight: 600; color: #0d6785; font-size: 0.8rem; }
.cell-text[b-k1fan1kur8] { color: #374151; font-weight: 500; }
.cell-date[b-k1fan1kur8] { color: #64748B; white-space: nowrap; font-size: 0.78rem; }
.cell-amount[b-k1fan1kur8] { color: #374151; font-weight: 600; white-space: nowrap; }

/* Status badges */
.status-badge[b-k1fan1kur8] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

.badge-draft[b-k1fan1kur8] { background: #F3F4F6; color: #6B7280; }
.badge-submitted[b-k1fan1kur8] { background: #FEF3C7; color: #92400E; }
.badge-review[b-k1fan1kur8] { background: #DBEAFE; color: #1E40AF; }
.badge-info-req[b-k1fan1kur8] { background: #FDE8E8; color: #9B1C1C; }
.badge-approved[b-k1fan1kur8] { background: #DCFCE7; color: #166534; }
.badge-denied[b-k1fan1kur8] { background: #FEE2E2; color: #991B1B; }
.badge-closed[b-k1fan1kur8] { background: #E5E7EB; color: #374151; }

/* Empty / Loading */
.table-empty[b-k1fan1kur8] {
    padding: 60px 20px;
    text-align: center;
    color: #94A3B8;
}

.table-empty i[b-k1fan1kur8] { font-size: 2rem; margin-bottom: 8px; display: block; }
.table-empty p[b-k1fan1kur8] { margin: 0 0 8px; }
.table-empty-hint[b-k1fan1kur8] { font-size: 0.75rem; color: #CBD5E1; }

.table-loading[b-k1fan1kur8] {
    padding: 40px 20px;
    text-align: center;
    color: #94A3B8;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 0.85rem;
}

/* Animations */
@keyframes spin-b-k1fan1kur8 {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.spinning[b-k1fan1kur8] { animation: spin-b-k1fan1kur8 1s linear infinite; }

/* Responsive */
@media (max-width: 768px) {
    .content-header[b-k1fan1kur8] {
        flex-direction: column;
        gap: 12px;
        align-items: flex-start;
    }

    .header-stats[b-k1fan1kur8] {
        width: 100%;
        overflow-x: auto;
    }

    .card-toolbar[b-k1fan1kur8] { flex-wrap: wrap; }
    .toolbar-search[b-k1fan1kur8] { max-width: 100%; }
    .toolbar-filters[b-k1fan1kur8] { margin-left: 0; }
}

/* ── Skeleton loader ─────────────────────────────────────────────────── */
@keyframes uw-claims-skel-pulse-b-k1fan1kur8 {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.tbl-row-skeleton td[b-k1fan1kur8] {
    padding: 0.875rem 0.75rem;
}

.tbl-skel[b-k1fan1kur8] {
    height: 1.0625rem;
    width: 80px;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: uw-claims-skel-pulse-b-k1fan1kur8 1.5s ease-in-out infinite;
}

.tbl-skel-badge[b-k1fan1kur8] {
    height: 1.25rem;
    width: 90px;
    border-radius: 9999px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: uw-claims-skel-pulse-b-k1fan1kur8 1.5s ease-in-out infinite;
}
/* /Components/Pages/Underwriting/UnderWriterDashboardPage.razor.rz.scp.css */
/* Underwriter Dashboard Page Styles */

/* ========================================
   Animations
   ======================================== */

/* Header fade-in animation */
@keyframes headerFadeIn-b-q3fezel9jw {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Fade up animation for cards */
@keyframes fadeUp-b-q3fezel9jw {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Pop-in animation for interactive elements */
@keyframes popIn-b-q3fezel9jw {
    from {
        opacity: 0;
        transform: scale(0.9);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Pulse animation for attention items */
@keyframes pulse-b-q3fezel9jw {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.7;
    }
}

/* Dashboard Loading State */
.dashboard-loading[b-q3fezel9jw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: #6b7280;
    animation: fadeUp-b-q3fezel9jw 0.3s ease-out;
}

.loading-spinner[b-q3fezel9jw] {
    font-size: 32px;
    color: var(--brand-500);
}

.spinning[b-q3fezel9jw] {
    animation: spin-b-q3fezel9jw 1s linear infinite;
}

@keyframes spin-b-q3fezel9jw {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Dashboard Error State */
.dashboard-error[b-q3fezel9jw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    gap: 16px;
    color: var(--error-600);
}

.dashboard-error i[b-q3fezel9jw] {
    font-size: 48px;
}

.dashboard-error p[b-q3fezel9jw] {
    font-size: 16px;
    margin: 0;
}

/* Dashboard Header */
.dashboard-header[b-q3fezel9jw] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
    flex-wrap: wrap;
    gap: 16px;
    animation: headerFadeIn-b-q3fezel9jw 0.4s ease-out;
}

.header-content[b-q3fezel9jw] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.dashboard-title[b-q3fezel9jw] {
    font-size: 28px;
    font-weight: 700;
    color: #1f2937;
    margin: 0;
}

.dashboard-subtitle[b-q3fezel9jw] {
    font-size: 14px;
    color: #6b7280;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.separator[b-q3fezel9jw] {
    color: #d1d5db;
}

.header-actions[b-q3fezel9jw] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.btn-toggle[b-q3fezel9jw] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    font-size: 13px;
    font-weight: 600;
    color: #374151;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-toggle:hover[b-q3fezel9jw] {
    background: #f9fafb;
    border-color: #d1d5db;
}

.btn-toggle.active[b-q3fezel9jw] {
    background: #eff6ff;
    border-color: #3b82f6;
    color: #1d4ed8;
}

.btn-toggle.active i[b-q3fezel9jw] {
    color: #3b82f6;
}

.btn-refresh[b-q3fezel9jw] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    font-size: 18px;
    color: #6b7280;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-refresh:hover[b-q3fezel9jw] {
    background: #f9fafb;
    border-color: #d1d5db;
    color: #374151;
}

.btn-refresh:hover i[b-q3fezel9jw] {
    animation: spin-b-q3fezel9jw 0.5s ease-in-out;
}

/* Pipeline Metrics Row - Compact */
.pipeline-metrics[b-q3fezel9jw] {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 12px;
    margin-bottom: 20px;
}

/* Staggered animation delays for pipeline metric cards */
.pipeline-metrics > *:nth-child(1)[b-q3fezel9jw] { animation: fadeUp-b-q3fezel9jw 0.4s ease-out forwards; animation-delay: 0.05s; opacity: 0; }
.pipeline-metrics > *:nth-child(2)[b-q3fezel9jw] { animation: fadeUp-b-q3fezel9jw 0.4s ease-out forwards; animation-delay: 0.1s; opacity: 0; }
.pipeline-metrics > *:nth-child(3)[b-q3fezel9jw] { animation: fadeUp-b-q3fezel9jw 0.4s ease-out forwards; animation-delay: 0.15s; opacity: 0; }
.pipeline-metrics > *:nth-child(4)[b-q3fezel9jw] { animation: fadeUp-b-q3fezel9jw 0.4s ease-out forwards; animation-delay: 0.2s; opacity: 0; }
.pipeline-metrics > *:nth-child(5)[b-q3fezel9jw] { animation: fadeUp-b-q3fezel9jw 0.4s ease-out forwards; animation-delay: 0.25s; opacity: 0; }
.pipeline-metrics > *:nth-child(6)[b-q3fezel9jw] { animation: fadeUp-b-q3fezel9jw 0.4s ease-out forwards; animation-delay: 0.3s; opacity: 0; }

@media (max-width: 1400px) {
    .pipeline-metrics[b-q3fezel9jw] {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .pipeline-metrics[b-q3fezel9jw] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .pipeline-metrics[b-q3fezel9jw] {
        grid-template-columns: 1fr;
    }
    
    .dashboard-header[b-q3fezel9jw] {
        flex-direction: column;
    }
    
    .header-actions[b-q3fezel9jw] {
        width: 100%;
        justify-content: space-between;
    }
}

/* Primary Button */
.btn-primary[b-q3fezel9jw] {
    background: var(--brand-600, #004980);
    border: none;
    padding: 10px 20px;
    border-radius: 10px;
    font-weight: 600;
    font-size: 14px;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-primary:hover[b-q3fezel9jw] {
    background: var(--brand-700, #003760);
}

/* ========================================
   Row Card Animations
   ======================================== */

/* Row 2 - VERAcheck, Productivity, Priority Queue */
.row.g-4.mb-4:first-of-type[b-q3fezel9jw] {
    animation: fadeUp-b-q3fezel9jw 0.5s ease-out forwards;
    animation-delay: 0.35s;
    opacity: 0;
}

/* Staggered animation for Row 2 columns */
.row.g-4.mb-4:first-of-type > .col-lg-3:nth-child(1)[b-q3fezel9jw] {
    animation: fadeUp-b-q3fezel9jw 0.4s ease-out forwards;
    animation-delay: 0.35s;
    opacity: 0;
}

.row.g-4.mb-4:first-of-type > .col-lg-3:nth-child(2)[b-q3fezel9jw] {
    animation: fadeUp-b-q3fezel9jw 0.4s ease-out forwards;
    animation-delay: 0.4s;
    opacity: 0;
}

.row.g-4.mb-4:first-of-type > .col-lg-6[b-q3fezel9jw] {
    animation: fadeUp-b-q3fezel9jw 0.4s ease-out forwards;
    animation-delay: 0.45s;
    opacity: 0;
}

/* Row 3 - Activity Feed and Quick Actions */
.row.g-4:last-of-type > .col-lg-6:nth-child(1)[b-q3fezel9jw] {
    animation: fadeUp-b-q3fezel9jw 0.4s ease-out forwards;
    animation-delay: 0.5s;
    opacity: 0;
}

.row.g-4:last-of-type > .col-lg-6:nth-child(2)[b-q3fezel9jw] {
    animation: fadeUp-b-q3fezel9jw 0.4s ease-out forwards;
    animation-delay: 0.55s;
    opacity: 0;
}

/* Dashboard card base styles with animation */
[b-q3fezel9jw] .dashboard-card,
[b-q3fezel9jw] .widget-card,
[b-q3fezel9jw] .stat-card,
[b-q3fezel9jw] .quick-actions-card {
    transition: all 0.2s ease;
}

[b-q3fezel9jw] .dashboard-card:hover,
[b-q3fezel9jw] .widget-card:hover,
[b-q3fezel9jw] .stat-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
}

/* Activity feed item animations */
[b-q3fezel9jw] .activity-item {
    transition: all 0.2s ease;
}

[b-q3fezel9jw] .activity-item:hover {
    background: rgba(15, 23, 42, 0.03);
    padding-left: 8px;
}

/* Priority queue row animations */
[b-q3fezel9jw] .priority-row {
    transition: all 0.2s ease;
}

[b-q3fezel9jw] .priority-row:hover {
    background: rgba(15, 23, 42, 0.05);
    transform: translateX(2px);
}

/* Quick action card pop-in effect */
[b-q3fezel9jw] .quick-action-item {
    animation: popIn-b-q3fezel9jw 0.4s ease-out forwards;
    opacity: 0;
}

[b-q3fezel9jw] .quick-action-item:nth-child(1) { animation-delay: 0.55s; }
[b-q3fezel9jw] .quick-action-item:nth-child(2) { animation-delay: 0.6s; }
[b-q3fezel9jw] .quick-action-item:nth-child(3) { animation-delay: 0.65s; }
[b-q3fezel9jw] .quick-action-item:nth-child(4) { animation-delay: 0.7s; }

/* Smooth skeleton loading */
[b-q3fezel9jw] .skeleton {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: skeleton-pulse-b-q3fezel9jw 1.5s ease-in-out infinite;
}

@keyframes skeleton-pulse-b-q3fezel9jw {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* /Components/Pages/Underwriting/VERAcheckAdminPage.razor.rz.scp.css */
/* ========================================
   VERAcheck Admin Page - Professional Design
   Matches LECA Financial Design System
   ======================================== */

/* ========================================
   Page Header
   ======================================== */

.page-header[b-8r4rt59bld] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 32px;
    flex-wrap: wrap;
    gap: 16px;
}

.page-header-content[b-8r4rt59bld] {
    flex: 1;
    min-width: 280px;
}

.page-title[b-8r4rt59bld] {
    font-size: 28px;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 6px 0;
    display: flex;
    align-items: center;
    gap: 12px;
}

.page-title i[b-8r4rt59bld] {
    color: var(--brand-500);
    font-size: 24px;
}

.page-subtitle[b-8r4rt59bld] {
    font-size: 14px;
    color: var(--text-muted);
    margin: 0;
    font-weight: 400;
}

.header-actions[b-8r4rt59bld] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.header-actions .btn[b-8r4rt59bld] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    font-size: 13px;
    font-weight: 600;
    border-radius: var(--radius-md);
    transition: all var(--transition-fast);
}

.header-actions .btn i[b-8r4rt59bld] {
    font-size: 16px;
}

.header-actions .btn-outline-primary[b-8r4rt59bld] {
    color: var(--brand-600);
    border-color: var(--brand-200);
    background: white;
}

.header-actions .btn-outline-primary:hover[b-8r4rt59bld] {
    background: var(--brand-50);
    border-color: var(--brand-400);
    color: var(--brand-700);
}

.header-actions .btn-outline-secondary[b-8r4rt59bld] {
    color: var(--text-secondary);
    border-color: var(--border-medium);
    background: white;
}

.header-actions .btn-outline-secondary:hover[b-8r4rt59bld] {
    background: var(--neutral-50);
    border-color: var(--neutral-400);
}

/* ========================================
   Configuration Card
   ======================================== */

.config-card[b-8r4rt59bld] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg);
    padding: 24px;
    margin-bottom: 24px;
    box-shadow: var(--shadow-sm);
}

.config-card-header[b-8r4rt59bld] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--border-light);
}

.config-card-header i[b-8r4rt59bld] {
    font-size: 20px;
    color: var(--brand-500);
}

.config-card-title[b-8r4rt59bld] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.config-grid[b-8r4rt59bld] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 20px;
}

.config-item[b-8r4rt59bld] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.config-label[b-8r4rt59bld] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-muted);
}

.config-value[b-8r4rt59bld] {
    font-size: 14px;
    color: var(--text-primary);
}

.config-value code[b-8r4rt59bld] {
    font-size: 12px;
    background: var(--neutral-100);
    padding: 4px 8px;
    border-radius: var(--radius-sm);
    color: var(--text-secondary);
    font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;
    word-break: break-all;
}

/* ========================================
   Test Result Panel
   ======================================== */

.test-result-panel[b-8r4rt59bld] {
    background: var(--neutral-50);
    border-radius: var(--radius-md);
    padding: 16px;
    border: 1px solid var(--border-light);
}

.test-result-panel.test-success[b-8r4rt59bld] {
    background: var(--success-50);
    border-color: var(--success-200);
}

.test-result-panel.test-warning[b-8r4rt59bld] {
    background: var(--warning-50);
    border-color: var(--warning-200);
}

.test-result-panel.test-error[b-8r4rt59bld] {
    background: var(--error-50);
    border-color: var(--error-500);
}

.test-result-header[b-8r4rt59bld] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary);
}

.test-result-row[b-8r4rt59bld] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 6px 0;
    font-size: 13px;
}

.test-result-row span:first-child[b-8r4rt59bld] {
    color: var(--text-secondary);
}

.test-timestamp[b-8r4rt59bld] {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--border-light);
    font-size: 11px;
    color: var(--text-muted);
}

/* ========================================
   Statistics Cards
   ======================================== */

.stats-row[b-8r4rt59bld] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}

@media (max-width: 1200px) {
    .stats-row[b-8r4rt59bld] {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .stats-row[b-8r4rt59bld] {
        grid-template-columns: repeat(2, 1fr);
    }
}

.stat-card[b-8r4rt59bld] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg);
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    box-shadow: var(--shadow-sm);
    transition: all var(--transition-fast);
}

.stat-card:hover[b-8r4rt59bld] {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
    border-color: var(--brand-200);
}

.stat-icon[b-8r4rt59bld] {
    width: 48px;
    height: 48px;
    border-radius: var(--radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.stat-icon i[b-8r4rt59bld] {
    font-size: 22px;
}

.stat-icon.icon-total[b-8r4rt59bld] {
    background: var(--brand-50);
}
.stat-icon.icon-total i[b-8r4rt59bld] {
    color: var(--brand-600);
}

.stat-icon.icon-pending[b-8r4rt59bld] {
    background: var(--neutral-100);
}
.stat-icon.icon-pending i[b-8r4rt59bld] {
    color: var(--neutral-500);
}

.stat-icon.icon-submitted[b-8r4rt59bld] {
    background: var(--accent-50);
}
.stat-icon.icon-submitted i[b-8r4rt59bld] {
    color: var(--accent-600);
}

.stat-icon.icon-delivered[b-8r4rt59bld] {
    background: var(--success-50);
}
.stat-icon.icon-delivered i[b-8r4rt59bld] {
    color: var(--success-600);
}

.stat-icon.icon-failed[b-8r4rt59bld] {
    background: var(--error-50);
}
.stat-icon.icon-failed i[b-8r4rt59bld] {
    color: var(--error-600);
}

.stat-content[b-8r4rt59bld] {
    flex: 1;
    min-width: 0;
}

.stat-value[b-8r4rt59bld] {
    font-size: 24px;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
}

.stat-label[b-8r4rt59bld] {
    font-size: 13px;
    font-weight: 500;
    color: var(--text-muted);
    margin-top: 2px;
}

/* ========================================
   Filter Card
   ======================================== */

.filter-card[b-8r4rt59bld] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg);
    padding: 20px 24px;
    margin-bottom: 24px;
    box-shadow: var(--shadow-sm);
}

.filter-row[b-8r4rt59bld] {
    display: flex;
    align-items: flex-end;
    gap: 16px;
    flex-wrap: wrap;
}

.filter-group[b-8r4rt59bld] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 180px;
}

.filter-label[b-8r4rt59bld] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-muted);
}

.filter-card .form-select[b-8r4rt59bld],
.filter-card .form-control[b-8r4rt59bld] {
    font-size: 14px;
    padding: 10px 14px;
    border-color: var(--border-medium);
    border-radius: var(--radius-md);
    transition: all var(--transition-fast);
}

.filter-card .form-select:focus[b-8r4rt59bld],
.filter-card .form-control:focus[b-8r4rt59bld] {
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px var(--brand-100);
}

.filter-group-search[b-8r4rt59bld] {
    flex: 1;
    min-width: 240px;
}

.search-input-wrapper[b-8r4rt59bld] {
    position: relative;
    display: block;
}

.search-input-wrapper i.bi-search[b-8r4rt59bld] {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted);
    font-size: 14px;
    pointer-events: none;
    z-index: 2;
}

.search-input-wrapper input.form-control[b-8r4rt59bld] {
    padding-left: 38px;
    width: 100%;
}

.btn-retry-all[b-8r4rt59bld] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    font-size: 13px;
    font-weight: 600;
    border-radius: var(--radius-md);
    background: var(--error-50);
    color: var(--error-600);
    border: 1px solid var(--error-200);
    transition: all var(--transition-fast);
}

.btn-retry-all:hover:not(:disabled)[b-8r4rt59bld] {
    background: var(--error-100);
    border-color: var(--error-300);
    color: var(--error-700);
}

.btn-retry-all:disabled[b-8r4rt59bld] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* ========================================
   Data Table Card
   ======================================== */

.table-card[b-8r4rt59bld] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
}

.table-card-header[b-8r4rt59bld] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 24px;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-light);
}

.table-card-title[b-8r4rt59bld] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.table-card-title i[b-8r4rt59bld] {
    color: var(--brand-500);
    font-size: 18px;
}

.table-card-badge[b-8r4rt59bld] {
    font-size: 12px;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: var(--radius-pill);
    background: var(--brand-50);
    color: var(--brand-600);
}

/* Empty & Loading States */
.empty-state[b-8r4rt59bld],
.loading-state[b-8r4rt59bld] {
    text-align: center;
    padding: 60px 24px;
}

.empty-state i[b-8r4rt59bld],
.loading-state .spinner-border[b-8r4rt59bld] {
    font-size: 48px;
    color: var(--neutral-300);
    margin-bottom: 16px;
}

.empty-state p[b-8r4rt59bld],
.loading-state p[b-8r4rt59bld] {
    font-size: 14px;
    color: var(--text-muted);
    margin: 8px 0 0 0;
}

/* Data Table */
.data-table[b-8r4rt59bld] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.data-table thead[b-8r4rt59bld] {
    background: var(--neutral-50);
}

.data-table thead th[b-8r4rt59bld] {
    padding: 14px 16px;
    text-align: left;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-muted);
    border-bottom: 2px solid var(--border-light);
    white-space: nowrap;
}

.data-table tbody tr[b-8r4rt59bld] {
    transition: all var(--transition-fast);
    border-left: 3px solid transparent;
}

.data-table tbody tr:hover[b-8r4rt59bld] {
    background: rgba(15, 23, 42, 0.04);
    border-left-color: var(--brand-500);
}

.data-table tbody td[b-8r4rt59bld] {
    padding: 16px;
    border-bottom: 1px solid var(--border-light);
    vertical-align: middle;
    font-size: 14px;
}

/* Application Cell */
.app-cell[b-8r4rt59bld] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.app-link[b-8r4rt59bld] {
    font-weight: 600;
    color: var(--brand-600);
    text-decoration: none;
    transition: color var(--transition-fast);
}

.app-link:hover[b-8r4rt59bld] {
    color: var(--brand-700);
    text-decoration: underline;
}

.app-borrower[b-8r4rt59bld] {
    font-size: 12px;
    color: var(--text-muted);
}

/* Order ID */
.order-id[b-8r4rt59bld] {
    font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;
    font-size: 12px;
    background: var(--neutral-100);
    padding: 4px 8px;
    border-radius: var(--radius-sm);
    color: var(--text-secondary);
}

.text-placeholder[b-8r4rt59bld] {
    color: var(--neutral-300);
}

/* Status Badges */
.status-badge[b-8r4rt59bld] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    font-size: 12px;
    font-weight: 600;
    border-radius: var(--radius-pill);
}

.status-badge i[b-8r4rt59bld] {
    font-size: 12px;
}

.status-badge.status-delivered[b-8r4rt59bld] {
    background: var(--success-50);
    color: var(--success-700);
}

.status-badge.status-completed[b-8r4rt59bld] {
    background: #DBEAFE;
    color: #1E40AF;
}

.status-badge.status-submitted[b-8r4rt59bld] {
    background: var(--accent-50);
    color: var(--accent-700);
}

.status-badge.status-processing[b-8r4rt59bld] {
    background: var(--warning-50);
    color: var(--warning-700);
}

.status-badge.status-failed[b-8r4rt59bld] {
    background: var(--error-50);
    color: var(--error-700);
}

.status-badge.status-pending[b-8r4rt59bld] {
    background: var(--neutral-100);
    color: var(--neutral-600);
}

/* Risk Score Badge */
.risk-badge[b-8r4rt59bld] {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    font-size: 12px;
    font-weight: 600;
    border-radius: var(--radius-pill);
}

.risk-badge.risk-low[b-8r4rt59bld] {
    background: var(--success-50);
    color: var(--success-700);
}

.risk-badge.risk-medium[b-8r4rt59bld] {
    background: var(--warning-50);
    color: var(--warning-700);
}

.risk-badge.risk-high[b-8r4rt59bld] {
    background: var(--error-50);
    color: var(--error-700);
}

/* Price & Date */
.price-cell[b-8r4rt59bld] {
    font-weight: 600;
    color: var(--text-primary);
}

.date-cell[b-8r4rt59bld] {
    font-size: 13px;
    color: var(--text-secondary);
}

/* Retry Badge */
.retry-badge[b-8r4rt59bld] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    padding: 0 8px;
    font-size: 12px;
    font-weight: 600;
    border-radius: var(--radius-pill);
    background: var(--neutral-100);
    color: var(--neutral-600);
}

/* Action Buttons */
.action-buttons[b-8r4rt59bld] {
    display: flex;
    gap: 6px;
    justify-content: flex-end;
}

.btn-action[b-8r4rt59bld] {
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-md);
    border: 1px solid var(--border-medium);
    background: white;
    color: var(--text-secondary);
    transition: all var(--transition-fast);
    padding: 0;
}

.btn-action:hover:not(:disabled)[b-8r4rt59bld] {
    background: var(--neutral-50);
    border-color: var(--neutral-400);
    color: var(--text-primary);
}

.btn-action:disabled[b-8r4rt59bld] {
    opacity: 0.45;
    cursor: not-allowed;
}

.btn-action.btn-view:hover[b-8r4rt59bld] {
    background: var(--brand-50);
    border-color: var(--brand-300);
    color: var(--brand-600);
}

.btn-action.btn-retry:hover[b-8r4rt59bld] {
    background: var(--warning-50);
    border-color: var(--warning-300);
    color: var(--warning-600);
}

.manual-override-badge[b-8r4rt59bld] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.62rem;
    font-weight: 600;
    background: #EFF6FF;
    color: #2563EB;
    border: 1px solid #BFDBFE;
    margin-left: 4px;
}

.detail-override-notice[b-8r4rt59bld] {
    background: #EFF6FF;
    border: 1px solid #BFDBFE;
    border-radius: 8px;
    padding: 12px 14px;
}

.override-notice-header[b-8r4rt59bld] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #1E40AF;
    margin-bottom: 6px;
}

.override-notice-reason[b-8r4rt59bld] {
    font-size: 0.75rem;
    color: #3B82F6;
    margin: 0;
    line-height: 1.5;
}

.btn-action.btn-override:hover[b-8r4rt59bld] {
    background: #EFF6FF;
    border-color: #93C5FD;
    color: #2563EB;
}

.btn-action i[b-8r4rt59bld] {
    font-size: 14px;
}

/* ========================================
   Override Modal
   ======================================== */

.override-modal[b-8r4rt59bld] {
    background: white;
    border-radius: 16px;
    width: 480px;
    max-width: 95vw;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    overflow: hidden;
}

.override-modal-header[b-8r4rt59bld] {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    background: #fff;
    border-bottom: 1px solid #EEF2F6;
}

.override-modal-header h4[b-8r4rt59bld] {
    flex: 1;
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
    margin: 0;
}

.override-modal-body[b-8r4rt59bld] {
    padding: 1.15rem 1.5rem;
    overflow-y: auto;
}

.override-info[b-8r4rt59bld] {
    background: #F8FAFC;
    border-radius: 8px;
    padding: 12px 16px;
    margin-bottom: 16px;
}

.override-info-row[b-8r4rt59bld] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 4px 0;
}

.info-label[b-8r4rt59bld] {
    font-size: 0.75rem;
    color: #94A3B8;
    font-weight: 500;
}

.info-value[b-8r4rt59bld] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #1E293B;
}

.override-form .form-label[b-8r4rt59bld] {
    font-size: 0.78rem;
}

.override-form .form-text[b-8r4rt59bld] {
    font-size: 0.7rem;
}

.override-modal-footer[b-8r4rt59bld] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

.override-modal-footer .btn-primary[b-8r4rt59bld] {
    background: var(--brand-600, #004980);
    border-color: var(--brand-600, #004980);
    font-weight: 600;
    border-radius: 10px;
}

.override-modal-footer .btn-primary:hover:not(:disabled)[b-8r4rt59bld] {
    background: var(--brand-700, #003760);
    border-color: var(--brand-700, #003760);
}

.override-modal-footer .btn-outline-secondary[b-8r4rt59bld] {
    background: transparent;
    border: 1px solid #E2E8F0;
    color: #64748B;
    font-weight: 600;
    border-radius: 10px;
}

.override-modal-footer .btn-outline-secondary:hover:not(:disabled)[b-8r4rt59bld] {
    background: #F1F5F9;
    color: #0F172A;
}

/* ========================================
   Modal Styles
   ======================================== */

.modal-backdrop[b-8r4rt59bld] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    z-index: 1050;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
}

.modal-container[b-8r4rt59bld] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    width: 100%;
    max-width: 680px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.modal-header[b-8r4rt59bld] {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    background: #fff;
    border-bottom: 1px solid #EEF2F6;
}

.modal-title[b-8r4rt59bld] {
    flex: 1;
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
    margin: 0;
}

.modal-close[b-8r4rt59bld] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    color: #94A3B8;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.15s;
}

.modal-close:hover[b-8r4rt59bld] {
    background: #F1F5F9;
    color: #0F172A;
}

.modal-body[b-8r4rt59bld] {
    padding: 1.15rem 1.5rem;
    overflow-y: auto;
    flex: 1;
}

.modal-footer[b-8r4rt59bld] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

.modal-footer .btn-secondary[b-8r4rt59bld] {
    background: transparent;
    border: 1px solid #E2E8F0;
    color: #64748B;
    font-weight: 600;
    border-radius: 10px;
}

.modal-footer .btn-secondary:hover:not(:disabled)[b-8r4rt59bld] {
    background: #F1F5F9;
    color: #0F172A;
}

/* Detail Grid */
.detail-grid[b-8r4rt59bld] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.detail-grid.full-width[b-8r4rt59bld] {
    grid-template-columns: 1fr;
}

.detail-item[b-8r4rt59bld] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.detail-label[b-8r4rt59bld] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-muted);
}

.detail-value[b-8r4rt59bld] {
    font-size: 14px;
    color: var(--text-primary);
}

.detail-value a[b-8r4rt59bld] {
    color: var(--brand-600);
    font-weight: 600;
}

.detail-value a:hover[b-8r4rt59bld] {
    color: var(--brand-700);
    text-decoration: underline;
}

/* Error Alert in Modal */
.error-alert[b-8r4rt59bld] {
    background: var(--error-50);
    border: 1px solid var(--error-200);
    border-radius: var(--radius-md);
    padding: 12px 16px;
    font-size: 13px;
    color: var(--error-700);
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.error-alert i[b-8r4rt59bld] {
    color: var(--error-500);
    font-size: 16px;
    margin-top: 1px;
}

/* Raw Response Box */
.raw-response[b-8r4rt59bld] {
    background: var(--neutral-800);
    color: var(--neutral-100);
    padding: 16px;
    border-radius: var(--radius-md);
    font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', monospace;
    font-size: 12px;
    line-height: 1.5;
    max-height: 200px;
    overflow: auto;
    white-space: pre-wrap;
    word-break: break-all;
}

/* ========================================
   Toast Notification
   ======================================== */

.toast-container[b-8r4rt59bld] {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 1100;
}

.toast-notification[b-8r4rt59bld] {
    background: white;
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-lg);
    border: 1px solid var(--border-light);
    min-width: 320px;
    max-width: 420px;
    overflow: hidden;
    animation: slideIn-b-8r4rt59bld 0.3s ease;
}

@keyframes slideIn-b-8r4rt59bld {
    from {
        transform: translateX(100%);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

.toast-notification.toast-success[b-8r4rt59bld] {
    border-left: 4px solid var(--success-500);
}

.toast-notification.toast-error[b-8r4rt59bld] {
    border-left: 4px solid var(--error-500);
}

.toast-header[b-8r4rt59bld] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    border-bottom: 1px solid var(--border-light);
}

.toast-header i[b-8r4rt59bld] {
    font-size: 18px;
}

.toast-success .toast-header i[b-8r4rt59bld] {
    color: var(--success-500);
}

.toast-error .toast-header i[b-8r4rt59bld] {
    color: var(--error-500);
}

.toast-header strong[b-8r4rt59bld] {
    flex: 1;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
}

.toast-close[b-8r4rt59bld] {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    color: var(--text-muted);
    border-radius: var(--radius-sm);
    cursor: pointer;
    transition: all var(--transition-fast);
}

.toast-close:hover[b-8r4rt59bld] {
    background: var(--neutral-100);
    color: var(--text-primary);
}

.toast-body[b-8r4rt59bld] {
    padding: 12px 16px;
    font-size: 14px;
    color: var(--text-secondary);
}

/* ========================================
   Spin Animation
   ======================================== */

@keyframes spin-b-8r4rt59bld {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.spin[b-8r4rt59bld] {
    animation: spin-b-8r4rt59bld 1s linear infinite;
}

/* ========================================
   Responsive Adjustments
   ======================================== */

@media (max-width: 992px) {
    .page-header[b-8r4rt59bld] {
        flex-direction: column;
        align-items: stretch;
    }

    .header-actions[b-8r4rt59bld] {
        justify-content: flex-start;
    }

    .config-grid[b-8r4rt59bld] {
        grid-template-columns: repeat(2, 1fr);
    }

    .detail-grid[b-8r4rt59bld] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .filter-row[b-8r4rt59bld] {
        flex-direction: column;
        align-items: stretch;
    }

    .filter-group[b-8r4rt59bld] {
        min-width: 100%;
    }

    .filter-group-search[b-8r4rt59bld] {
        min-width: 100%;
    }

    .data-table[b-8r4rt59bld] {
        font-size: 13px;
    }

    .data-table thead th[b-8r4rt59bld],
    .data-table tbody td[b-8r4rt59bld] {
        padding: 12px;
    }
}

/* ── Skeleton loader ─────────────────────────────────────────────────── */
@keyframes uw-veracheck-skel-pulse-b-8r4rt59bld {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.tbl-row-skeleton td[b-8r4rt59bld] {
    padding: 0.875rem 0.75rem;
}

.tbl-skel[b-8r4rt59bld] {
    height: 1.0625rem;
    width: 80px;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: uw-veracheck-skel-pulse-b-8r4rt59bld 1.5s ease-in-out infinite;
}

.tbl-skel-badge[b-8r4rt59bld] {
    height: 1.25rem;
    width: 90px;
    border-radius: 9999px;
    background: linear-gradient(90deg, var(--bs-tertiary-bg, #f0f0f0) 25%, var(--bs-secondary-bg, #e0e0e0) 50%, var(--bs-tertiary-bg, #f0f0f0) 75%);
    background-size: 200% 100%;
    animation: uw-veracheck-skel-pulse-b-8r4rt59bld 1.5s ease-in-out infinite;
}


/* ── Environmental review (feature 008) ─────────────────────────────── */

.env-queue-card[b-8r4rt59bld] {
    margin-bottom: 1.25rem;
    border-left: 3px solid #f59e0b;
}

.evidence-tag[b-8r4rt59bld] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.72rem;
    font-weight: 600;
    padding: 0.15rem 0.5rem;
    border-radius: 999px;
    margin-right: 0.3rem;
}

.evidence-tag.veracheck[b-8r4rt59bld] { background: #e0f2fe; color: #075985; }
.evidence-tag.docs[b-8r4rt59bld] { background: #ede9fe; color: #5b21b6; }

.review-status-badge[b-8r4rt59bld] {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 0.2rem 0.55rem;
    border-radius: 999px;
    white-space: nowrap;
}

.review-status-badge.review-pending[b-8r4rt59bld] { background: #fef3c7; color: #92400e; }
.review-status-badge.review-approved[b-8r4rt59bld] { background: #dcfce7; color: #166534; }
.review-status-badge.review-rejected[b-8r4rt59bld] { background: #fee2e2; color: #991b1b; }
.review-status-badge.review-none[b-8r4rt59bld] { background: #f1f5f9; color: #64748b; font-weight: 500; }

.btn-action-approve[b-8r4rt59bld] { color: #16a34a; }
.btn-action-reject[b-8r4rt59bld] { color: #dc2626; }

/* ── Tabs: pending reviews vs requests ──────────────────────────────── */

.admin-tabs[b-8r4rt59bld] {
    display: flex;
    gap: 4px;
    margin-bottom: 16px;
    border-bottom: 2px solid var(--neutral-200, #E2E8F0);
}

.admin-tab[b-8r4rt59bld] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-secondary, #475569);
    background: transparent;
    border: none;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    cursor: pointer;
    transition: color 0.12s ease-in-out, border-color 0.12s ease-in-out;
}

.admin-tab:hover[b-8r4rt59bld] { color: var(--text-primary, #0F172A); }

.admin-tab.active[b-8r4rt59bld] {
    color: var(--brand-600, #004980);
    border-bottom-color: var(--brand-600, #004980);
}

.admin-tab-count[b-8r4rt59bld] {
    background: var(--neutral-100, #F1F5F9);
    color: var(--text-secondary, #475569);
    font-size: 12px;
    font-weight: 700;
    padding: 1px 8px;
    border-radius: 999px;
}

.admin-tab-count.attention[b-8r4rt59bld] {
    background: var(--accent-100, #FEF3C7);
    color: var(--accent-800, #92400E);
}

.admin-tab.active .admin-tab-count.attention[b-8r4rt59bld] {
    background: var(--accent-500, #F59E0B);
    color: #fff;
}

/* ── Queue header tools + waiting urgency ───────────────────────────── */

.queue-header-tools[b-8r4rt59bld] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.queue-bank-filter[b-8r4rt59bld] {
    width: auto;
    min-width: 160px;
    font-size: 13px;
    padding: 4px 28px 4px 10px;
}

.waiting-chip[b-8r4rt59bld] {
    display: inline-block;
    font-size: 12px;
    font-weight: 600;
    padding: 2px 9px;
    border-radius: 999px;
    white-space: nowrap;
}

.waiting-chip.waiting-ok[b-8r4rt59bld] { background: var(--neutral-100, #F1F5F9); color: var(--text-secondary, #475569); }
.waiting-chip.waiting-warn[b-8r4rt59bld] { background: var(--accent-100, #FEF3C7); color: var(--accent-800, #92400E); }
.waiting-chip.waiting-critical[b-8r4rt59bld] { background: var(--error-100, #FEE2E2); color: var(--error-800, #991B1B); }

/* ── Application status pills (queue) — soft variants matching the page palette,
      keyed off ApplicationStatusExtensions.GetBadgeClass() names ─────── */

.app-status-pill[b-8r4rt59bld] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 999px;
    white-space: nowrap;
    background: var(--neutral-100, #F1F5F9);
    color: var(--text-secondary, #475569);
}

.app-status-pill.status-submitted[b-8r4rt59bld] { background: var(--info-100, #BEE3F8); color: var(--info-800, #2C5282); }
.app-status-pill.status-in-review[b-8r4rt59bld] { background: var(--accent-100, #FEF3C7); color: var(--accent-800, #92400E); }
.app-status-pill.status-awaiting-info[b-8r4rt59bld] { background: var(--warning-100, #FFEDDE); color: var(--warning-800, #AB3413); }
.app-status-pill.status-referral[b-8r4rt59bld],
.app-status-pill.status-referred[b-8r4rt59bld] { background: #EDE9FE; color: #5B21B6; }
.app-status-pill.status-approved[b-8r4rt59bld] { background: var(--success-100, #D1FAE5); color: var(--success-800, #065F46); }
.app-status-pill.status-approved-for-binding[b-8r4rt59bld] { background: var(--success-100, #D1FAE5); color: var(--success-800, #065F46); }

/* Clickable evidence tags — open the report / newest document in a new tab */
button.evidence-tag[b-8r4rt59bld] {
    border: none;
    cursor: pointer;
    font-family: inherit;
}

.evidence-tag.clickable:hover[b-8r4rt59bld] {
    filter: brightness(0.94);
    text-decoration: underline;
}

.evidence-open-icon[b-8r4rt59bld] {
    font-size: 0.62rem;
    opacity: 0.7;
}

.evidence-count[b-8r4rt59bld] {
    background: rgba(255, 255, 255, 0.7);
    border-radius: 999px;
    font-size: 0.66rem;
    font-weight: 800;
    padding: 0 5px;
}
/* /Components/Pages/Underwriting/VERAcheckRequestDetailPage.razor.rz.scp.css */
/* ========================================
   VERAcheck Request Detail Page
   Mirrors VERAcheckAdminPage tokens — page is part of the same flow.
   ======================================== */

.detail-page[b-73bywve24q] {
    padding: 24px;
    max-width: 1200px;
    margin: 0 auto;
}

.page-header[b-73bywve24q] {
    margin-bottom: 24px;
}

.back-link[b-73bywve24q] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--text-secondary, #6b7280);
    text-decoration: none;
    font-size: 13px;
    margin-bottom: 8px;
}

.back-link:hover[b-73bywve24q] {
    color: var(--brand-600, #2563eb);
}

.page-header h1[b-73bywve24q] {
    font-size: 26px;
    font-weight: 700;
    color: var(--text-primary, #111827);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.detail-title-row[b-73bywve24q] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: 8px;
}

.detail-title-left[b-73bywve24q] {
    display: flex;
    align-items: center;
    gap: 14px;
}

.detail-title-icon[b-73bywve24q] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--brand-50, #E6F2F8);
    color: var(--brand-500, #005b9f);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    flex-shrink: 0;
}

.detail-title-id[b-73bywve24q] {
    color: var(--text-muted, #64748B);
    font-weight: 600;
}

.detail-title-sub[b-73bywve24q] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: var(--text-secondary, #475569);
    margin-top: 2px;
}

.detail-title-sub a[b-73bywve24q] {
    color: var(--brand-600, #004980);
    text-decoration: none;
    font-weight: 600;
}

.detail-title-sub a:hover[b-73bywve24q] { text-decoration: underline; }
.detail-title-sub .dot[b-73bywve24q] { color: var(--neutral-300, #CBD5E1); }

.detail-title-badges[b-73bywve24q] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

/* ========================================
   Cards
   ======================================== */

.config-card[b-73bywve24q],
.table-card[b-73bywve24q] {
    background: white;
    border: 1px solid var(--border-light, #e5e7eb);
    border-radius: var(--radius-lg, 12px);
    padding: 24px;
    margin-bottom: 20px;
    box-shadow: var(--shadow-sm, 0 1px 2px rgba(0,0,0,0.04));
}

.overview-row[b-73bywve24q] {
    display: flex;
    gap: 24px;
    align-items: stretch;
    flex-wrap: wrap;
}

.overview-row .config-grid[b-73bywve24q] { flex: 1; min-width: 320px; }

/* Risk score feature tile */
.risk-score-tile[b-73bywve24q] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    min-width: 170px;
    padding: 18px 22px;
    border-radius: var(--radius-lg, 12px);
    border: 1px solid var(--neutral-200, #E2E8F0);
    background: var(--neutral-50, #F8FAFC);
    text-align: center;
}

.risk-score-tile.risk-low[b-73bywve24q] { background: var(--success-50, #ECFDF5); border-color: var(--success-200, #A7F3D0); }
.risk-score-tile.risk-medium[b-73bywve24q] { background: var(--accent-50, #FFFBEB); border-color: var(--accent-200, #FDE68A); }
.risk-score-tile.risk-high[b-73bywve24q] { background: var(--error-50, #FEF2F2); border-color: var(--error-200, #FBC2C4); }

.risk-score-label[b-73bywve24q] {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 700;
    color: var(--text-muted, #64748B);
}

.risk-score-value[b-73bywve24q] {
    font-size: 34px;
    font-weight: 800;
    line-height: 1.1;
    color: var(--text-primary, #0F172A);
}

.risk-score-value.muted[b-73bywve24q] { color: var(--text-disabled, #94A3B8); }

.risk-score-level[b-73bywve24q] {
    font-size: 12px;
    font-weight: 700;
}

.risk-score-tile.risk-low .risk-score-level[b-73bywve24q] { color: var(--text-success, #047857); }
.risk-score-tile.risk-medium .risk-score-level[b-73bywve24q] { color: var(--accent-700, #B45309); }
.risk-score-tile.risk-high .risk-score-level[b-73bywve24q] { color: var(--text-error, #B91C1C); }
.risk-score-tile.none .risk-score-level[b-73bywve24q] { color: var(--text-muted, #64748B); }

.risk-score-note[b-73bywve24q] {
    font-size: 11px;
    color: var(--text-muted, #64748B);
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

/* Report download row */
.report-row[b-73bywve24q] {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 16px;
    padding: 12px 16px;
    border: 1px solid var(--neutral-200, #E2E8F0);
    border-radius: var(--radius-md, 10px);
    background: var(--neutral-50, #F8FAFC);
}

.report-row-icon[b-73bywve24q] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--error-50, #FEF2F2);
    color: var(--error-600, #DC2626);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 19px;
    flex-shrink: 0;
}

.report-row-info[b-73bywve24q] {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
    flex: 1;
}

.report-row-title[b-73bywve24q] {
    font-size: 13.5px;
    font-weight: 700;
    color: var(--text-primary, #0F172A);
}

.report-row-filename[b-73bywve24q] {
    font-size: 12px;
    color: var(--text-muted, #64748B);
    font-family: var(--font-mono, ui-monospace, monospace);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.btn-download[b-73bywve24q] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    font-size: 13px;
    font-weight: 600;
    border-radius: var(--radius-md, 8px);
    border: none;
    background: var(--brand-600, #004980);
    color: var(--text-inverse, #fff);
    cursor: pointer;
    white-space: nowrap;
}

.btn-download:hover:not(:disabled)[b-73bywve24q] { background: var(--brand-700, #003760); }
.btn-download:disabled[b-73bywve24q] { opacity: 0.6; cursor: not-allowed; }

.config-grid[b-73bywve24q] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 16px 24px;
}

.config-item[b-73bywve24q] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.config-label[b-73bywve24q] {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
    color: var(--text-muted, #9ca3af);
}

.config-value[b-73bywve24q] {
    font-size: 14px;
    color: var(--text-primary, #111827);
    word-break: break-word;
}

.config-value a[b-73bywve24q] {
    color: var(--brand-600, #2563eb);
    text-decoration: none;
}

.config-value a:hover[b-73bywve24q] {
    text-decoration: underline;
}

/* ========================================
   Header / actions
   ======================================== */

.header-actions[b-73bywve24q] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.header-actions .btn[b-73bywve24q] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    font-size: 13px;
    font-weight: 600;
    border-radius: var(--radius-md, 8px);
}

/* ========================================
   Table card header
   ======================================== */

.table-card-header[b-73bywve24q] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--border-light, #e5e7eb);
}

.table-card-title[b-73bywve24q] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary, #111827);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.table-card-title i[b-73bywve24q] {
    color: var(--brand-500, #3b82f6);
}

.table-card-badge[b-73bywve24q] {
    background: var(--neutral-100, #f3f4f6);
    color: var(--text-secondary, #6b7280);
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
}

/* ========================================
   Status & source badges
   ======================================== */

.status-badge[b-73bywve24q] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
}

.status-completed[b-73bywve24q] { background: #dcfce7; color: #166534; }
.status-submitted[b-73bywve24q] { background: #dbeafe; color: #1e40af; }
.status-processing[b-73bywve24q] { background: #fef3c7; color: #92400e; }
.status-failed[b-73bywve24q] { background: #fee2e2; color: #991b1b; }
.status-pending[b-73bywve24q] { background: #f3f4f6; color: #6b7280; }

.source-badge[b-73bywve24q] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 500;
}

.source-badge.channel-online[b-73bywve24q] { background: #e0f2fe; color: #075985; }
.source-badge.channel-offline[b-73bywve24q] { background: #fef3c7; color: #92400e; }

/* ========================================
   Audit timeline
   ======================================== */

.timeline[b-73bywve24q] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.timeline-item[b-73bywve24q] {
    display: flex;
    gap: 14px;
    padding: 14px 0;
    border-bottom: 1px solid var(--border-light, #e5e7eb);
}

.timeline-item:last-child[b-73bywve24q] {
    border-bottom: none;
}

.timeline-marker[b-73bywve24q] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--neutral-100, #f3f4f6);
    color: var(--text-secondary, #6b7280);
    flex-shrink: 0;
}

.timeline-content[b-73bywve24q] {
    flex: 1;
    min-width: 0;
}

.timeline-headline[b-73bywve24q] {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
    font-size: 14px;
    color: var(--text-primary, #111827);
}

.timeline-meta[b-73bywve24q] {
    font-size: 12px;
    color: var(--text-secondary, #6b7280);
    margin-top: 4px;
}

.timeline-reason[b-73bywve24q] {
    font-size: 13px;
    margin-top: 6px;
    color: var(--text-primary, #111827);
    background: var(--neutral-50, #fafafa);
    padding: 6px 10px;
    border-radius: 6px;
}

/* ========================================
   Empty / state blocks
   ======================================== */

.empty-state[b-73bywve24q] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 48px 16px;
    color: var(--text-muted, #9ca3af);
    text-align: center;
}

.empty-state i[b-73bywve24q] {
    font-size: 32px;
}

.empty-state p[b-73bywve24q] {
    margin: 0;
    font-size: 14px;
}

.state-block[b-73bywve24q] {
    padding: 24px;
    background: white;
    border: 1px solid var(--border-light, #e5e7eb);
    border-radius: var(--radius-lg, 12px);
    color: var(--text-secondary, #6b7280);
}

/* ========================================
   Error alert
   ======================================== */

.error-alert[b-73bywve24q] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    background: #fee2e2;
    color: #991b1b;
    border: 1px solid #fecaca;
    border-radius: 8px;
    font-size: 13px;
}

/* ========================================
   Toast (single instance, simple)
   ======================================== */

.toast-container[b-73bywve24q] {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 1080;
}

.toast-notification[b-73bywve24q] {
    padding: 12px 16px;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
    min-width: 240px;
}

.toast-success[b-73bywve24q] { background: #dcfce7; color: #166534; border: 1px solid #bbf7d0; }
.toast-error[b-73bywve24q] { background: #fee2e2; color: #991b1b; border: 1px solid #fecaca; }

/* ── Environmental review strip (feature 008) ───────────────────────── */

.env-review-strip[b-73bywve24q] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    margin-top: 1rem;
    padding: 0.85rem 1.1rem;
    border-radius: 10px;
    border: 1px solid var(--neutral-200, #e2e8f0);
    border-left-width: 4px;
    background: var(--neutral-50, #f8fafc);
}

.env-review-strip.pending[b-73bywve24q] { border-left-color: var(--accent-500, #f59e0b); background: var(--accent-50, #fffbeb); }
.env-review-strip.approved[b-73bywve24q] { border-left-color: var(--success-600, #16a34a); background: var(--success-50, #f0fdf4); }
.env-review-strip.rejected[b-73bywve24q] { border-left-color: var(--error-600, #dc2626); background: var(--error-50, #fef2f2); }

.env-review-strip-info[b-73bywve24q] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    min-width: 0;
}

.env-review-strip-headline[b-73bywve24q] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    flex-wrap: wrap;
}

.env-review-strip-title[b-73bywve24q] {
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #475569;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}

.env-review-strip-badge[b-73bywve24q] {
    font-size: 0.74rem;
    font-weight: 700;
    padding: 0.22rem 0.65rem;
    border-radius: 999px;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.env-review-strip.pending .env-review-strip-badge[b-73bywve24q] { background: var(--accent-100, #fef3c7); color: var(--accent-800, #92400e); }
.env-review-strip.approved .env-review-strip-badge[b-73bywve24q] { background: var(--success-100, #dcfce7); color: var(--success-800, #166534); }
.env-review-strip.rejected .env-review-strip-badge[b-73bywve24q] { background: var(--error-100, #fee2e2); color: var(--error-800, #991b1b); }

.env-review-strip-meta[b-73bywve24q] {
    font-size: 0.82rem;
    color: var(--text-muted, #64748b);
}

.env-review-strip-meta.rejection[b-73bywve24q] {
    color: var(--text-error, #991b1b);
    font-weight: 500;
}

.env-review-strip-actions[b-73bywve24q] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.env-review-strip-link[b-73bywve24q] {
    font-size: 0.82rem;
    color: var(--brand-600, #2563eb);
    text-decoration: none;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
}

.env-review-strip-link:hover[b-73bywve24q] { text-decoration: underline; }

.env-review-strip.notrequired[b-73bywve24q] { border-left-color: var(--neutral-400, #94a3b8); background: var(--neutral-50, #f8fafc); }
.env-review-strip.notrequired .env-review-strip-badge[b-73bywve24q] { background: var(--neutral-100, #f1f5f9); color: var(--text-muted, #64748b); }
/* /Components/Pages/_Archived/AboutPage.razor.rz.scp.css */
/* About Page Styles */

.about-page[b-rwhpqz7pwf] {
    width: 100%;
    min-height: 100vh;
    background: var(--bg-surface);
}

/* Hero Section */
.about-hero[b-rwhpqz7pwf] {
    background: linear-gradient(135deg, #FFFFFF 0%, #F8FAFC 100%);
    padding: 60px 40px;
    text-align: center;
    border-bottom: 1px solid var(--border-light);
}

.about-hero-content[b-rwhpqz7pwf] {
    max-width: 800px;
    margin: 0 auto;
}

.about-hero-title[b-rwhpqz7pwf] {
    font-size: 48px;
    font-weight: 700;
    margin-bottom: 0;
    line-height: 1.2;
    color: var(--text-primary);
    letter-spacing: 0.02em;
}

/* Secondary Navigation */
.about-nav[b-rwhpqz7pwf] {
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-light);
    padding: 0 40px;
    position: sticky;
    top: 72px;
    z-index: 999;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
}

.about-nav-content[b-rwhpqz7pwf] {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    gap: 8px;
    justify-content: center;
}

.about-nav-link[b-rwhpqz7pwf] {
    padding: 14px 24px;
    font-size: 14px;
    font-weight: 500;
    color: var(--text-secondary);
    text-decoration: none;
    border-bottom: 2px solid transparent;
    transition: all 0.2s ease;
}

.about-nav-link:hover[b-rwhpqz7pwf] {
    color: var(--brand-600);
    background: rgba(15, 23, 42, 0.04);
}

.about-nav-link.active[b-rwhpqz7pwf] {
    color: var(--brand-600);
    background: white;
    border-bottom-color: var(--brand-600);
    font-weight: 600;
}

/* Content Sections */
.about-section[b-rwhpqz7pwf] {
    padding: 60px 40px;
}

.about-section.alt-bg[b-rwhpqz7pwf] {
    background: linear-gradient(135deg, #F8FAFC 0%, #FFFFFF 100%);
}

.about-container[b-rwhpqz7pwf] {
    max-width: 900px;
    margin: 0 auto;
}

/* Content Cards */
.content-card[b-rwhpqz7pwf] {
    background: linear-gradient(135deg, #E6F2F8 0%, #F0F7FB 100%);
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 12px;
    padding: 40px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

.section-card-title[b-rwhpqz7pwf] {
    font-size: 24px;
    font-weight: 700;
    color: var(--brand-700);
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid rgba(15, 23, 42, 0.15);
}

.section-text[b-rwhpqz7pwf] {
    font-size: 15px;
    color: var(--text-secondary);
    line-height: 1.7;
    margin: 0 0 16px 0;
}

.section-text:last-child[b-rwhpqz7pwf] {
    margin-bottom: 0;
}

/* Lists */
.about-list[b-rwhpqz7pwf] {
    list-style: none;
    padding: 0;
    margin: 16px 0 0 0;
}

.about-list li[b-rwhpqz7pwf] {
    font-size: 15px;
    color: var(--text-secondary);
    line-height: 1.7;
    margin-bottom: 16px;
    padding-left: 24px;
    position: relative;
}

.about-list li[b-rwhpqz7pwf]::before {
    content: "�";
    position: absolute;
    left: 8px;
    color: var(--brand-500);
    font-size: 20px;
    font-weight: bold;
}

.about-list li strong[b-rwhpqz7pwf] {
    color: var(--text-primary);
    font-weight: 600;
}

.about-list li:last-child[b-rwhpqz7pwf] {
    margin-bottom: 0;
}

/* CTA Section */
.about-cta[b-rwhpqz7pwf] {
    background: linear-gradient(135deg, #F0F7FB 0%, #E6F2F8 100%);
    padding: 60px 40px;
    border-top: 1px solid var(--border-light);
    border-bottom: 1px solid var(--border-light);
}

.about-cta-content[b-rwhpqz7pwf] {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

.cta-title[b-rwhpqz7pwf] {
    font-size: 32px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 16px;
    line-height: 1.2;
}

.cta-description[b-rwhpqz7pwf] {
    font-size: 16px;
    color: var(--text-secondary);
    margin-bottom: 32px;
    line-height: 1.6;
}

.cta-buttons[b-rwhpqz7pwf] {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}

.cta-buttons .btn i[b-rwhpqz7pwf] {
    margin-right: 8px;
}

/* Footer Note */
.about-footer-note[b-rwhpqz7pwf] {
    background: var(--neutral-50);
    padding: 32px 40px;
    border-top: 1px solid var(--border-light);
}

.about-footer-note-content[b-rwhpqz7pwf] {
    max-width: 1200px;
    margin: 0 auto;
    text-align: center;
}

.about-footer-icon[b-rwhpqz7pwf] {
    font-size: 14px;
    color: var(--brand-700);
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.about-footer-icon i[b-rwhpqz7pwf] {
    font-size: 16px;
}

.about-footer-text[b-rwhpqz7pwf] {
    font-size: 13px;
    color: var(--text-muted);
    line-height: 1.6;
    margin: 0;
}

/* Responsive Design */
@media (max-width: 768px) {
    .about-hero[b-rwhpqz7pwf] {
        padding: 40px 24px;
    }

    .about-hero-title[b-rwhpqz7pwf] {
        font-size: 36px;
    }

    .about-nav[b-rwhpqz7pwf] {
        padding: 0 24px;
        overflow-x: auto;
    }

    .about-nav-content[b-rwhpqz7pwf] {
        justify-content: flex-start;
    }

    .about-nav-link[b-rwhpqz7pwf] {
        padding: 12px 16px;
        font-size: 13px;
        white-space: nowrap;
    }

    .about-section[b-rwhpqz7pwf] {
        padding: 40px 24px;
    }

    .content-card[b-rwhpqz7pwf] {
        padding: 28px;
    }

    .section-card-title[b-rwhpqz7pwf] {
        font-size: 20px;
    }

    .section-text[b-rwhpqz7pwf] {
        font-size: 14px;
    }

    .about-list li[b-rwhpqz7pwf] {
        font-size: 14px;
    }

    .about-cta[b-rwhpqz7pwf] {
        padding: 40px 24px;
    }

    .cta-title[b-rwhpqz7pwf] {
        font-size: 24px;
    }

    .cta-description[b-rwhpqz7pwf] {
        font-size: 15px;
    }

    .cta-buttons[b-rwhpqz7pwf] {
        flex-direction: column;
    }

    .cta-buttons .btn[b-rwhpqz7pwf] {
        width: 100%;
    }

    .about-footer-note[b-rwhpqz7pwf] {
        padding: 24px 24px;
    }
}

@media (max-width: 480px) {
    .about-hero-title[b-rwhpqz7pwf] {
        font-size: 28px;
    }

    .content-card[b-rwhpqz7pwf] {
        padding: 24px;
    }

    .section-card-title[b-rwhpqz7pwf] {
        font-size: 18px;
    }

    .cta-title[b-rwhpqz7pwf] {
        font-size: 20px;
    }
}


.about-hero-subtitle[b-rwhpqz7pwf] {
    font-size: 20px;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.95);
    max-width: 600px;
    margin: 0 auto;
}

/* Content Sections */
.about-section[b-rwhpqz7pwf] {
    padding: 80px 40px;
}

.about-section.alt-bg[b-rwhpqz7pwf] {
    background: linear-gradient(135deg, #F8FAFC 0%, #FFFFFF 100%);
}

.about-container[b-rwhpqz7pwf] {
    max-width: 1200px;
    margin: 0 auto;
}

/* Content Grid */
.about-content-grid[b-rwhpqz7pwf] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
}

.about-content-grid.reverse[b-rwhpqz7pwf] {
    direction: rtl;
}

.about-content-grid.reverse > *[b-rwhpqz7pwf] {
    direction: ltr;
}

.about-text-content[b-rwhpqz7pwf] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.section-title[b-rwhpqz7pwf] {
    font-size: 36px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 8px;
    line-height: 1.2;
}

.section-title-centered[b-rwhpqz7pwf] {
    font-size: 36px;
    font-weight: 700;
    color: var(--text-primary);
    text-align: center;
    margin-bottom: 12px;
    line-height: 1.2;
}

.section-subtitle[b-rwhpqz7pwf] {
    font-size: 18px;
    color: var(--text-secondary);
    text-align: center;
    margin-bottom: 20px;
}

.section-text[b-rwhpqz7pwf] {
    font-size: 16px;
    color: var(--text-secondary);
    line-height: 1.75;
    margin: 0;
}

/* Image Placeholder */
.about-image-placeholder[b-rwhpqz7pwf] {
    background: linear-gradient(135deg, var(--brand-50) 0%, var(--brand-100) 100%);
    border: 2px solid var(--brand-200);
    border-radius: 16px;
    padding: 60px 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 300px;
}

.placeholder-icon[b-rwhpqz7pwf] {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-700) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}

.placeholder-icon i[b-rwhpqz7pwf] {
    font-size: 60px;
    color: white;
}

.placeholder-text[b-rwhpqz7pwf] {
    font-size: 18px;
    font-weight: 600;
    color: var(--brand-700);
    margin: 0;
}

/* Values Section */
.values-header[b-rwhpqz7pwf] {
    text-align: center;
    margin-bottom: 60px;
}

.values-grid[b-rwhpqz7pwf] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

.value-card[b-rwhpqz7pwf] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 12px;
    padding: 32px;
    text-align: center;
    transition: all 0.3s ease;
}

.value-card:hover[b-rwhpqz7pwf] {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.1);
    border-color: var(--brand-300);
}

.value-icon[b-rwhpqz7pwf] {
    width: 64px;
    height: 64px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-700) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.value-icon i[b-rwhpqz7pwf] {
    font-size: 32px;
    color: white;
}

.value-title[b-rwhpqz7pwf] {
    font-size: 20px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 12px;
}

.value-description[b-rwhpqz7pwf] {
    font-size: 15px;
    color: var(--text-secondary);
    line-height: 1.6;
    margin: 0;
}

/* Why Choose Section */
.why-choose-header[b-rwhpqz7pwf] {
    text-align: center;
    margin-bottom: 60px;
}

.why-choose-grid[b-rwhpqz7pwf] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}

.why-choose-item[b-rwhpqz7pwf] {
    display: flex;
    gap: 24px;
    align-items: flex-start;
}

.why-choose-number[b-rwhpqz7pwf] {
    flex-shrink: 0;
    width: 56px;
    height: 56px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-700) 100%);
    color: white;
    font-size: 24px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.why-choose-title[b-rwhpqz7pwf] {
    font-size: 20px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 8px;
}

.why-choose-description[b-rwhpqz7pwf] {
    font-size: 15px;
    color: var(--text-secondary);
    line-height: 1.6;
    margin: 0;
}

/* Stats Section */
.stats-grid[b-rwhpqz7pwf] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
}

.stat-card[b-rwhpqz7pwf] {
    background: linear-gradient(135deg, var(--brand-50) 0%, var(--brand-100) 100%);
    border: 1px solid var(--brand-200);
    border-radius: 12px;
    padding: 40px 24px;
    text-align: center;
}

.stat-number[b-rwhpqz7pwf] {
    font-size: 48px;
    font-weight: 700;
    color: var(--brand-700);
    margin-bottom: 8px;
    line-height: 1;
}

.stat-label[b-rwhpqz7pwf] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* CTA Section */
.about-cta[b-rwhpqz7pwf] {
    background: linear-gradient(135deg, var(--brand-600) 0%, var(--brand-800) 100%);
    padding: 80px 40px;
}

.about-cta-content[b-rwhpqz7pwf] {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

.cta-title[b-rwhpqz7pwf] {
    font-size: 36px;
    font-weight: 700;
    color: white;
    margin-bottom: 16px;
    line-height: 1.2;
}

.cta-description[b-rwhpqz7pwf] {
    font-size: 18px;
    color: rgba(255, 255, 255, 0.95);
    margin-bottom: 32px;
    line-height: 1.6;
}

.cta-buttons[b-rwhpqz7pwf] {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}

/* Responsive Design */
@media (max-width: 1024px) {
    .about-content-grid[b-rwhpqz7pwf] {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .values-grid[b-rwhpqz7pwf] {
        grid-template-columns: repeat(2, 1fr);
    }

    .why-choose-grid[b-rwhpqz7pwf] {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .stats-grid[b-rwhpqz7pwf] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .about-hero[b-rwhpqz7pwf] {
        padding: 60px 24px;
    }

    .about-hero-title[b-rwhpqz7pwf] {
        font-size: 36px;
    }

    .about-hero-subtitle[b-rwhpqz7pwf] {
        font-size: 18px;
    }

    .about-section[b-rwhpqz7pwf] {
        padding: 60px 24px;
    }

    .section-title[b-rwhpqz7pwf],
    .section-title-centered[b-rwhpqz7pwf] {
        font-size: 28px;
    }

    .section-subtitle[b-rwhpqz7pwf] {
        font-size: 16px;
    }

    .values-grid[b-rwhpqz7pwf] {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .value-card[b-rwhpqz7pwf] {
        padding: 24px;
    }

    .why-choose-item[b-rwhpqz7pwf] {
        flex-direction: column;
        gap: 16px;
    }

    .stats-grid[b-rwhpqz7pwf] {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .stat-number[b-rwhpqz7pwf] {
        font-size: 40px;
    }

    .about-cta[b-rwhpqz7pwf] {
        padding: 60px 24px;
    }

    .cta-title[b-rwhpqz7pwf] {
        font-size: 28px;
    }

    .cta-description[b-rwhpqz7pwf] {
        font-size: 16px;
    }

    .cta-buttons[b-rwhpqz7pwf] {
        flex-direction: column;
    }

    .cta-buttons .btn[b-rwhpqz7pwf] {
        width: 100%;
    }

    .about-image-placeholder[b-rwhpqz7pwf] {
        padding: 40px 24px;
        min-height: 250px;
    }

    .placeholder-icon[b-rwhpqz7pwf] {
        width: 100px;
        height: 100px;
    }

    .placeholder-icon i[b-rwhpqz7pwf] {
        font-size: 48px;
    }
}

@media (max-width: 480px) {
    .about-hero-title[b-rwhpqz7pwf] {
        font-size: 28px;
    }

    .section-title[b-rwhpqz7pwf],
    .section-title-centered[b-rwhpqz7pwf] {
        font-size: 24px;
    }

    .value-title[b-rwhpqz7pwf],
    .why-choose-title[b-rwhpqz7pwf] {
        font-size: 18px;
    }

    .stat-number[b-rwhpqz7pwf] {
        font-size: 32px;
    }

    .cta-title[b-rwhpqz7pwf] {
        font-size: 24px;
    }
}
/* /Components/Pages/_Archived/FAQsPage.razor.rz.scp.css */
/* FAQ Page Styles */

.faq-page[b-tsg4pucpj0] {
    width: 100%;
    min-height: 100vh;
    background: var(--bg-surface);
}

/* Hero Section */
.faq-hero[b-tsg4pucpj0] {
    background: linear-gradient(135deg, #FFFFFF 0%, #F8FAFC 100%);
    padding: 60px 40px;
    text-align: center;
    border-bottom: 1px solid var(--border-light);
}

.faq-hero-content[b-tsg4pucpj0] {
    max-width: 800px;
    margin: 0 auto;
}

.faq-logo[b-tsg4pucpj0] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 24px;
}

.logo-icon[b-tsg4pucpj0] {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-700) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.logo-icon i[b-tsg4pucpj0] {
    font-size: 28px;
    color: white;
}

.logo-text[b-tsg4pucpj0] {
    font-size: 20px;
    font-weight: 700;
    color: var(--text-primary);
}

.faq-hero-title[b-tsg4pucpj0] {
    font-size: 42px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 16px;
    line-height: 1.2;
}

.faq-hero-description[b-tsg4pucpj0] {
    font-size: 16px;
    color: var(--text-secondary);
    line-height: 1.6;
    margin-bottom: 32px;
}

.faq-hero-actions[b-tsg4pucpj0] {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}

/* Tabs Section */
.faq-tabs-section[b-tsg4pucpj0] {
    background: white;
    border-bottom: 1px solid var(--border-light);
    padding: 0 40px;
    overflow-x: auto;
}

.faq-tabs[b-tsg4pucpj0] {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    gap: 8px;
    justify-content: center;
}

.faq-tab[b-tsg4pucpj0] {
    padding: 16px 24px;
    background: transparent;
    border: none;
    border-bottom: 3px solid transparent;
    color: var(--text-secondary);
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.faq-tab:hover[b-tsg4pucpj0] {
    color: var(--brand-600);
    background: var(--neutral-50);
}

.faq-tab.active[b-tsg4pucpj0] {
    color: var(--brand-600);
    border-bottom-color: var(--brand-600);
    font-weight: 600;
}

/* Content Section */
.faq-content-section[b-tsg4pucpj0] {
    padding: 60px 40px;
    background: linear-gradient(135deg, #F8FAFC 0%, #FFFFFF 100%);
}

.faq-content[b-tsg4pucpj0] {
    max-width: 900px;
    margin: 0 auto;
}

.faq-category[b-tsg4pucpj0] {
    margin-bottom: 40px;
}

.faq-category-title[b-tsg4pucpj0] {
    font-size: 28px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 8px;
}

.faq-category-subtitle[b-tsg4pucpj0] {
    font-size: 15px;
    color: var(--text-secondary);
    margin-bottom: 32px;
}

.faq-accordion[b-tsg4pucpj0] {
    display: flex;
    flex-direction: column;
}

/* CTA Section */
.faq-cta-section[b-tsg4pucpj0] {
    background: linear-gradient(135deg, #e3f1fb 0%, #CCE5F1 100%);
    padding: 60px 40px;
    text-align: center;
}

.faq-cta-content[b-tsg4pucpj0] {
    max-width: 700px;
    margin: 0 auto;
}

.faq-cta-title[b-tsg4pucpj0] {
    font-size: 32px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 12px;
}

.faq-cta-description[b-tsg4pucpj0] {
    font-size: 16px;
    color: var(--text-secondary);
    line-height: 1.6;
    margin-bottom: 28px;
}

.faq-cta-actions[b-tsg4pucpj0] {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}

/* Footer Note */
.faq-footer-note[b-tsg4pucpj0] {
    background: white;
    border-top: 1px solid var(--border-light);
    padding: 32px 40px;
}

.faq-footer-note-content[b-tsg4pucpj0] {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
}

.faq-footer-text[b-tsg4pucpj0] {
    font-size: 13px;
    color: var(--text-muted);
    line-height: 1.6;
    margin: 0;
    font-style: italic;
}

/* Responsive Design */
@media (max-width: 768px) {
    .faq-hero[b-tsg4pucpj0] {
        padding: 40px 24px;
    }

    .faq-hero-title[b-tsg4pucpj0] {
        font-size: 32px;
    }

    .faq-hero-description[b-tsg4pucpj0] {
        font-size: 15px;
    }

    .faq-hero-actions[b-tsg4pucpj0] {
        flex-direction: column;
        align-items: stretch;
    }

    .faq-hero-actions .btn[b-tsg4pucpj0] {
        width: 100%;
    }

    .faq-tabs-section[b-tsg4pucpj0] {
        padding: 0 24px;
    }

    .faq-tabs[b-tsg4pucpj0] {
        gap: 4px;
        justify-content: flex-start;
    }

    .faq-tab[b-tsg4pucpj0] {
        padding: 14px 16px;
        font-size: 13px;
    }

    .faq-content-section[b-tsg4pucpj0] {
        padding: 40px 24px;
    }

    .faq-category-title[b-tsg4pucpj0] {
        font-size: 24px;
    }

    .faq-category-subtitle[b-tsg4pucpj0] {
        font-size: 14px;
    }

    .faq-cta-section[b-tsg4pucpj0] {
        padding: 40px 24px;
    }

    .faq-cta-title[b-tsg4pucpj0] {
        font-size: 26px;
    }

    .faq-cta-actions[b-tsg4pucpj0] {
        flex-direction: column;
        align-items: stretch;
    }

    .faq-cta-actions .btn[b-tsg4pucpj0] {
        width: 100%;
    }

    .faq-footer-note[b-tsg4pucpj0] {
        padding: 24px;
    }

    .faq-footer-text[b-tsg4pucpj0] {
        font-size: 12px;
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .faq-hero-title[b-tsg4pucpj0] {
        font-size: 36px;
    }

    .faq-tabs[b-tsg4pucpj0] {
        gap: 6px;
    }

    .faq-tab[b-tsg4pucpj0] {
        padding: 15px 20px;
    }
}

/* /Components/Pages/_Archived/LearnMorePage.razor.rz.scp.css */
/* Learn More Page Styles */

.learn-more-page[b-zdxw7c89js] {
    width: 100%;
    min-height: 100vh;
    background: var(--bg-surface);
}

/* Hero Section */
.learn-hero[b-zdxw7c89js] {
    background: linear-gradient(135deg, #FFFFFF 0%, #F8FAFC 100%);
    padding: 60px 40px;
    text-align: center;
    border-bottom: 1px solid var(--border-light);
}

.learn-hero-content[b-zdxw7c89js] {
    max-width: 900px;
    margin: 0 auto;
}

.learn-hero-title[b-zdxw7c89js] {
    font-size: 42px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 16px;
    line-height: 1.2;
}

.learn-hero-subtitle[b-zdxw7c89js] {
    font-size: 20px;
    color: var(--text-secondary);
    margin-bottom: 32px;
    font-weight: 400;
}

.learn-hero-actions[b-zdxw7c89js] {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}

.learn-hero-actions .btn i[b-zdxw7c89js] {
    margin-right: 8px;
}

/* Secondary Navigation */
.learn-nav[b-zdxw7c89js] {
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-light);
    padding: 0 40px;
    position: sticky;
    top: 72px;
    z-index: 999;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
}

.learn-nav-content[b-zdxw7c89js] {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    gap: 8px;
    justify-content: center;
}

.learn-nav-link[b-zdxw7c89js] {
    padding: 14px 24px;
    font-size: 14px;
    font-weight: 500;
    color: var(--text-secondary);
    text-decoration: none;
    border-bottom: 2px solid transparent;
    transition: all 0.2s ease;
}

.learn-nav-link:hover[b-zdxw7c89js] {
    color: var(--brand-600);
    background: rgba(15, 23, 42, 0.04);
}

.learn-nav-link.active[b-zdxw7c89js] {
    color: var(--brand-600);
    background: white;
    border-bottom-color: var(--brand-600);
    font-weight: 600;
}

/* Content Sections */
.content-section[b-zdxw7c89js] {
    padding: 60px 40px;
}

.content-section.alt-bg[b-zdxw7c89js] {
    background: linear-gradient(135deg, #F8FAFC 0%, #FFFFFF 100%);
}

.content-container[b-zdxw7c89js] {
    max-width: 1200px;
    margin: 0 auto;
}

.two-column-grid[b-zdxw7c89js] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}

.content-card[b-zdxw7c89js] {
    background: white;
    padding: 32px;
    border-radius: 12px;
    border: 1px solid var(--border-light);
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

.section-title[b-zdxw7c89js] {
    font-size: 24px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 20px;
}

.section-text[b-zdxw7c89js] {
    font-size: 15px;
    color: var(--text-secondary);
    line-height: 1.7;
    margin: 0;
}

.coverage-list[b-zdxw7c89js] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.coverage-list li[b-zdxw7c89js] {
    font-size: 15px;
    color: var(--text-secondary);
    line-height: 1.7;
    margin-bottom: 16px;
    padding-left: 0;
}

.coverage-list li strong[b-zdxw7c89js] {
    color: var(--text-primary);
    font-weight: 600;
}

.section-highlight[b-zdxw7c89js] {
    margin-top: 24px;
    padding: 16px;
    background: var(--brand-50);
    border-left: 4px solid var(--brand-600);
    border-radius: 4px;
}

.section-highlight strong[b-zdxw7c89js] {
    color: var(--brand-700);
}

/* Why LECA is Different Section */
.different-section[b-zdxw7c89js] {
    padding: 60px 40px;
    background: white;
}

.centered-title[b-zdxw7c89js] {
    font-size: 32px;
    font-weight: 700;
    color: var(--text-primary);
    text-align: center;
    margin-bottom: 48px;
}

.centered-subtitle[b-zdxw7c89js] {
    font-size: 16px;
    color: var(--text-secondary);
    text-align: center;
    margin-bottom: 40px;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

.features-grid-four[b-zdxw7c89js] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
    max-width: 1200px;
    margin: 0 auto;
}

.feature-item[b-zdxw7c89js] {
    text-align: center;
    padding: 24px;
}

.feature-icon-circle[b-zdxw7c89js] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--brand-50) 0%, var(--brand-100) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
}

.feature-icon-circle i[b-zdxw7c89js] {
    font-size: 36px;
    color: var(--brand-600);
}

.feature-title[b-zdxw7c89js] {
    font-size: 18px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 8px;
}

.feature-description[b-zdxw7c89js] {
    font-size: 14px;
    color: var(--text-secondary);
    line-height: 1.6;
}

/* Case Study Section */
.case-study-section[b-zdxw7c89js] {
    padding: 60px 40px;
    background: linear-gradient(135deg, #e3f1fb 0%, #CCE5F1 100%);
}

.case-study-header[b-zdxw7c89js] {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 32px;
}

.case-study-icon[b-zdxw7c89js] {
    font-size: 40px;
    color: var(--brand-600);
}

.case-study-content[b-zdxw7c89js] {
    background: white;
    border-radius: 12px;
    padding: 40px;
    margin-bottom: 32px;
    border: 1px solid var(--border-light);
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
}

.case-study-block[b-zdxw7c89js] {
    margin-bottom: 28px;
}

.case-study-block:last-child[b-zdxw7c89js] {
    margin-bottom: 0;
}

.case-study-subtitle[b-zdxw7c89js] {
    font-size: 18px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 12px;
}

.case-study-block p[b-zdxw7c89js] {
    font-size: 15px;
    color: var(--text-secondary);
    line-height: 1.7;
    margin-bottom: 12px;
}

.case-study-block ul[b-zdxw7c89js] {
    margin: 12px 0;
    padding-left: 24px;
}

.case-study-block li[b-zdxw7c89js] {
    font-size: 15px;
    color: var(--text-secondary);
    line-height: 1.7;
    margin-bottom: 8px;
}

.talk-to-us-box[b-zdxw7c89js] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 12px;
    padding: 40px;
    text-align: center;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
}

.talk-to-us-box i.bi-chat-dots[b-zdxw7c89js] {
    font-size: 56px;
    color: var(--brand-600);
    display: block;
    margin-bottom: 20px;
}

.talk-to-us-box h3[b-zdxw7c89js] {
    font-size: 28px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 24px;
}

.talk-to-us-box .btn[b-zdxw7c89js] {
    margin: 8px;
    min-width: 180px;
}

.talk-to-us-box .btn i[b-zdxw7c89js] {
    font-size: 16px;
    margin-right: 8px;
}

/* Program Highlights Section */
.highlights-section[b-zdxw7c89js] {
    padding: 60px 40px;
    background: white;
}

.highlights-grid[b-zdxw7c89js] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
    max-width: 1000px;
    margin: 0 auto;
}

.highlight-card[b-zdxw7c89js] {
    background: linear-gradient(135deg, #e3f1fb 0%, #CCE5F1 100%);
    border: 1px solid var(--brand-200);
    border-radius: 12px;
    padding: 40px 32px;
    text-align: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.highlight-card:hover[b-zdxw7c89js] {
    transform: translateY(-4px);
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.12);
}

.highlight-icon[b-zdxw7c89js] {
    font-size: 48px;
    color: var(--brand-600);
    margin-bottom: 16px;
    display: block;
}

.highlight-number[b-zdxw7c89js] {
    font-size: 36px;
    font-weight: 700;
    color: var(--brand-700);
    margin-bottom: 8px;
}

.highlight-text[b-zdxw7c89js] {
    font-size: 16px;
    color: var(--text-secondary);
    margin: 0;
    font-weight: 500;
}

/* FAQ Section */
.faq-section[b-zdxw7c89js] {
    padding: 60px 40px;
    background: linear-gradient(135deg, #F8FAFC 0%, #FFFFFF 100%);
}

.faq-accordion[b-zdxw7c89js] {
    max-width: 900px;
    margin: 0 auto;
}

/* Contact Section */
.contact-section[b-zdxw7c89js] {
    padding: 80px 40px;
    background: linear-gradient(135deg, #e3f1fb 0%, #CCE5F1 100%);
}

.contact-box[b-zdxw7c89js] {
    max-width: 700px;
    margin: 0 auto;
    text-align: center;
    background: white;
    padding: 48px 40px;
    border-radius: 12px;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.1);
}

.contact-main-icon[b-zdxw7c89js] {
    font-size: 64px;
    color: var(--brand-600);
    margin-bottom: 24px;
}

.contact-title[b-zdxw7c89js] {
    font-size: 32px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 16px;
}

.contact-description[b-zdxw7c89js] {
    font-size: 16px;
    color: var(--text-secondary);
    margin-bottom: 32px;
}

.contact-actions[b-zdxw7c89js] {
    display: flex;
    gap: 16px;
    justify-content: center;
    margin-bottom: 32px;
    flex-wrap: wrap;
}

.contact-actions .btn i[b-zdxw7c89js] {
    margin-right: 8px;
}

.disclaimer[b-zdxw7c89js] {
    font-size: 13px;
    color: var(--text-muted);
    line-height: 1.6;
    margin: 0;
    padding-top: 24px;
    border-top: 1px solid var(--border-light);
}

/* Responsive Design */
@media (max-width: 1024px) {
    .two-column-grid[b-zdxw7c89js] {
        grid-template-columns: 1fr;
    }

    .features-grid-four[b-zdxw7c89js] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .learn-hero[b-zdxw7c89js] {
        padding: 40px 24px;
    }

    .learn-hero-title[b-zdxw7c89js] {
        font-size: 32px;
    }

    .learn-hero-subtitle[b-zdxw7c89js] {
        font-size: 18px;
    }

    .learn-hero-actions[b-zdxw7c89js] {
        flex-direction: column;
        align-items: stretch;
    }

    .learn-nav[b-zdxw7c89js] {
        padding: 0 24px;
        overflow-x: auto;
    }

    .learn-nav-content[b-zdxw7c89js] {
        justify-content: flex-start;
    }

    .learn-nav-link[b-zdxw7c89js] {
        padding: 12px 16px;
        font-size: 13px;
        white-space: nowrap;
    }

    .content-section[b-zdxw7c89js] {
        padding: 40px 24px;
    }

    .content-card[b-zdxw7c89js] {
        padding: 24px;
    }

    .centered-title[b-zdxw7c89js] {
        font-size: 28px;
    }

    .features-grid-four[b-zdxw7c89js] {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .case-study-section[b-zdxw7c89js] {
        padding: 40px 24px;
    }

    .case-study-header[b-zdxw7c89js] {
        flex-direction: column;
        text-align: center;
    }

    .case-study-content[b-zdxw7c89js] {
        padding: 24px;
    }

    .highlights-grid[b-zdxw7c89js] {
        grid-template-columns: 1fr;
    }

    .contact-section[b-zdxw7c89js] {
        padding: 40px 24px;
    }

    .contact-box[b-zdxw7c89js] {
        padding: 32px 24px;
    }

    .contact-actions[b-zdxw7c89js] {
        flex-direction: column;
        align-items: stretch;
    }

    .talk-to-us-box[b-zdxw7c89js] {
        padding: 24px;
    }

    .talk-to-us-box h3[b-zdxw7c89js] {
        font-size: 22px;
    }

    .talk-to-us-box .btn[b-zdxw7c89js] {
        width: 100%;
        margin: 8px 0;
    }
}

/* /Components/Pages/_Archived/LearnNowPage.razor.rz.scp.css */
/* Learn Now Page Styles */

.learn-now-page[b-6n93ptg8v0] {
    width: 100%;
    min-height: 100vh;
    background: var(--bg-surface);
}

/* Hero Section */
.learn-now-hero[b-6n93ptg8v0] {
    background: linear-gradient(135deg, #FFFFFF 0%, #F8FAFC 100%);
    padding: 60px 40px;
    text-align: center;
    border-bottom: 1px solid var(--border-light);
}

.learn-now-hero-content[b-6n93ptg8v0] {
    max-width: 900px;
    margin: 0 auto;
}

.hero-logo[b-6n93ptg8v0] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-bottom: 24px;
}

.logo-icon[b-6n93ptg8v0] {
    width: 56px;
    height: 56px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-700) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.logo-icon i[b-6n93ptg8v0] {
    font-size: 32px;
    color: white;
}

.logo-text[b-6n93ptg8v0] {
    font-size: 20px;
    font-weight: 700;
    color: var(--text-primary);
}

.hero-main-title[b-6n93ptg8v0] {
    font-size: 44px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 16px;
    line-height: 1.2;
}

.hero-tagline[b-6n93ptg8v0] {
    font-size: 18px;
    color: var(--text-secondary);
    line-height: 1.6;
    margin-bottom: 32px;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

.hero-cta-buttons[b-6n93ptg8v0] {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}

/* Content Section */
.learn-now-content[b-6n93ptg8v0] {
    padding: 60px 40px 80px;
    background: linear-gradient(135deg, #F8FAFC 0%, #FFFFFF 50%, #F8FAFC 100%);
}

.content-header[b-6n93ptg8v0] {
    text-align: center;
    margin-bottom: 48px;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

.content-main-title[b-6n93ptg8v0] {
    font-size: 36px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 12px;
    line-height: 1.2;
}

.content-subtitle[b-6n93ptg8v0] {
    font-size: 18px;
    color: var(--text-secondary);
    font-weight: 400;
}

/* Info Grid */
.info-grid[b-6n93ptg8v0] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    max-width: 1400px;
    margin: 0 auto;
}

.info-card[b-6n93ptg8v0] {
    background: linear-gradient(135deg, #E6F2F8 0%, #F0F7FB 100%);
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 12px;
    padding: 32px;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.info-card:hover[b-6n93ptg8v0] {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.1);
}

.info-card-title[b-6n93ptg8v0] {
    font-size: 22px;
    font-weight: 700;
    color: var(--brand-700);
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid rgba(15, 23, 42, 0.15);
}

.info-list[b-6n93ptg8v0] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.info-list li[b-6n93ptg8v0] {
    font-size: 15px;
    color: var(--text-secondary);
    line-height: 1.7;
    margin-bottom: 16px;
    padding-left: 24px;
    position: relative;
}

.info-list li[b-6n93ptg8v0]::before {
    content: "�";
    position: absolute;
    left: 8px;
    color: var(--brand-500);
    font-size: 20px;
    font-weight: bold;
}

.info-list li strong[b-6n93ptg8v0] {
    color: var(--text-primary);
    font-weight: 600;
}

.info-list li:last-child[b-6n93ptg8v0] {
    margin-bottom: 0;
}

/* Steps List - numbered variant for "How Coverage Works" */
.steps-list[b-6n93ptg8v0] {
    counter-reset: step-counter;
}

.steps-list li[b-6n93ptg8v0] {
    counter-increment: step-counter;
    padding-left: 32px;
}

.steps-list li[b-6n93ptg8v0]::before {
    content: counter(step-counter);
    position: absolute;
    left: 0;
    width: 24px;
    height: 24px;
    background: var(--brand-500);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 700;
}

/* CTA Section */
.learn-now-cta[b-6n93ptg8v0] {
    background: linear-gradient(135deg, var(--brand-600) 0%, var(--brand-800) 100%);
    padding: 60px 40px;
}

.cta-box[b-6n93ptg8v0] {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

.cta-title[b-6n93ptg8v0] {
    font-size: 32px;
    font-weight: 700;
    color: white;
    margin-bottom: 16px;
}

.cta-description[b-6n93ptg8v0] {
    font-size: 18px;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 32px;
    line-height: 1.6;
}

.cta-buttons[b-6n93ptg8v0] {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}

.cta-buttons .btn i[b-6n93ptg8v0] {
    margin-right: 8px;
}

/* Footer Note */
.learn-now-footer[b-6n93ptg8v0] {
    background: var(--neutral-50);
    padding: 32px 40px;
    border-top: 1px solid var(--border-light);
}

.footer-note-content[b-6n93ptg8v0] {
    max-width: 1200px;
    margin: 0 auto;
    text-align: center;
}

.footer-disclaimer[b-6n93ptg8v0] {
    font-size: 13px;
    color: var(--text-muted);
    line-height: 1.6;
    margin: 0;
}

/* Responsive Design */
@media (max-width: 1024px) {
    .info-grid[b-6n93ptg8v0] {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .hero-main-title[b-6n93ptg8v0] {
        font-size: 36px;
    }

    .content-main-title[b-6n93ptg8v0] {
        font-size: 28px;
    }
}

@media (max-width: 768px) {
    .learn-now-hero[b-6n93ptg8v0] {
        padding: 40px 24px;
    }

    .learn-now-content[b-6n93ptg8v0] {
        padding: 40px 24px 60px;
    }

    .hero-main-title[b-6n93ptg8v0] {
        font-size: 28px;
    }

    .hero-tagline[b-6n93ptg8v0] {
        font-size: 16px;
    }

    .content-main-title[b-6n93ptg8v0] {
        font-size: 24px;
    }

    .content-subtitle[b-6n93ptg8v0] {
        font-size: 16px;
    }

    .info-card[b-6n93ptg8v0] {
        padding: 24px;
    }

    .info-card-title[b-6n93ptg8v0] {
        font-size: 20px;
    }

    .info-list li[b-6n93ptg8v0] {
        font-size: 14px;
    }

    .hero-cta-buttons[b-6n93ptg8v0],
    .cta-buttons[b-6n93ptg8v0] {
        flex-direction: column;
    }

    .hero-cta-buttons .btn[b-6n93ptg8v0],
    .cta-buttons .btn[b-6n93ptg8v0] {
        width: 100%;
    }

    .learn-now-cta[b-6n93ptg8v0] {
        padding: 40px 24px;
    }

    .cta-title[b-6n93ptg8v0] {
        font-size: 24px;
    }

    .cta-description[b-6n93ptg8v0] {
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .logo-text[b-6n93ptg8v0] {
        font-size: 16px;
    }

    .logo-icon[b-6n93ptg8v0] {
        width: 48px;
        height: 48px;
    }

    .logo-icon i[b-6n93ptg8v0] {
        font-size: 28px;
    }

    .hero-main-title[b-6n93ptg8v0] {
        font-size: 24px;
    }

    .content-main-title[b-6n93ptg8v0] {
        font-size: 20px;
    }

    .info-card-title[b-6n93ptg8v0] {
        font-size: 18px;
    }
}

/* /Components/Reports/ReportsHub.razor.rz.scp.css */
/* ========================================
   Reports Hub — themed catalog landing
   Bootstrap handles layout (rows/cols, cards).
   This file only adds visual treatments.
   ======================================== */

.reports-hub[b-8ssorl050s] {
    padding: 24px;
    max-width: 1400px;
}

/* ---------- Header alignment (matches AdminAlertsPage convention) ---------- */
.content-header[b-8ssorl050s] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--border-light);
    gap: 16px;
}

.content-title[b-8ssorl050s] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 4px 0;
    letter-spacing: -0.3px;
}

.content-subtitle[b-8ssorl050s] {
    font-size: 0.85rem;
    color: var(--text-muted);
    margin: 0;
    font-weight: 500;
    max-width: 720px;
    line-height: 1.5;
}

.header-actions[b-8ssorl050s] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

/* ---------- Header action buttons (ghost pills with icon chip) ---------- */
.hub-action[b-8ssorl050s] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 38px;
    padding: 0 14px 0 8px;
    background: var(--bg-surface);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-pill);
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-decoration: none;
    box-shadow: var(--shadow-xs);
    transition: border-color .15s ease, color .15s ease, box-shadow .15s ease, transform .15s ease;
    white-space: nowrap;
}

.hub-action:hover[b-8ssorl050s] {
    border-color: var(--brand-300);
    color: var(--brand-700);
    box-shadow: var(--shadow-sm);
    transform: translateY(-1px);
}

.hub-action:active[b-8ssorl050s] {
    transform: translateY(0);
    box-shadow: var(--shadow-xs);
}

.hub-action:focus-visible[b-8ssorl050s] {
    outline: none;
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px rgba(0, 91, 159, 0.15);
}

.hub-action-icon[b-8ssorl050s] {
    width: 26px;
    height: 26px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--brand-50);
    color: var(--brand-600);
    font-size: 0.8rem;
    transition: background .15s ease, color .15s ease;
}

.hub-action:hover .hub-action-icon[b-8ssorl050s] {
    background: var(--brand-100);
}

/* Primary variant — Schedules reads as the higher-intent action */
.hub-action-primary[b-8ssorl050s] {
    background: var(--brand-500);
    border-color: var(--brand-500);
    color: #fff;
    box-shadow: var(--shadow-sm);
}

.hub-action-primary:hover[b-8ssorl050s] {
    background: var(--brand-600);
    border-color: var(--brand-600);
    color: #fff;
}

.hub-action-primary .hub-action-icon[b-8ssorl050s] {
    background: rgba(255, 255, 255, 0.18);
    color: #fff;
}

.hub-action-primary:hover .hub-action-icon[b-8ssorl050s] {
    background: rgba(255, 255, 255, 0.28);
}

@media (max-width: 575.98px) {
    /* Collapse to icon-only on very small screens to keep the header on one line. */
    .hub-action span:not(.hub-action-icon)[b-8ssorl050s] { display: none; }
    .hub-action[b-8ssorl050s] { padding: 0 6px; }
}

/* ---------- Scope banner ---------- */
.scope-banner[b-8ssorl050s] {
    border-left: 4px solid var(--info-500);
}

/* ---------- Stat pills (subtle + compact, override global .card heaviness) ---------- */
.stat-pill[b-8ssorl050s] {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-light) !important;
    border-radius: var(--radius-md);
    box-shadow: none;
    padding: 0 !important;
    overflow: hidden;
    transition: border-color .15s ease;
}

.stat-pill[b-8ssorl050s]::before,
.stat-pill[b-8ssorl050s]::after {
    display: none !important;
    content: none !important;
}

.stat-pill:hover[b-8ssorl050s] {
    border-color: var(--border-medium) !important;
}

.stat-pill .card-body[b-8ssorl050s] {
    padding: 10px 14px !important;
}

.stat-icon[b-8ssorl050s] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-sm);
    font-size: 14px;
    flex-shrink: 0;
}

.stat-icon-brand[b-8ssorl050s]   { background: var(--brand-50);   color: var(--brand-600); }
.stat-icon-success[b-8ssorl050s] { background: var(--success-50); color: var(--success-600); }
.stat-icon-info[b-8ssorl050s]    { background: var(--info-50);    color: var(--info-600); }
.stat-icon-accent[b-8ssorl050s]  { background: var(--accent-50);  color: var(--accent-600); }

/* Clickable stat pills (re-download most-recent / jump to schedules) */
.stat-pill-action[b-8ssorl050s] {
    cursor: pointer;
    text-align: left;
    width: 100%;
}

.stat-pill-action:hover:not(:disabled)[b-8ssorl050s] {
    border-color: var(--brand-300) !important;
    box-shadow: var(--shadow-xs);
}

.stat-pill-action:disabled[b-8ssorl050s] {
    cursor: default;
    opacity: 0.85;
}

.stat-action-icon[b-8ssorl050s] {
    color: var(--text-disabled);
    font-size: 0.95rem;
    transition: color .15s ease, transform .15s ease;
    flex-shrink: 0;
}

.stat-pill-action:hover:not(:disabled) .stat-action-icon[b-8ssorl050s] {
    color: var(--brand-500);
    transform: translateX(2px);
}

.stat-action-icon.spinning[b-8ssorl050s] {
    animation: report-spin-b-8ssorl050s 1s linear infinite;
}

.stat-value[b-8ssorl050s] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    line-height: 1.2;
    font-variant-numeric: tabular-nums;
    font-feature-settings: 'tnum';
}

.stat-label[b-8ssorl050s] {
    font-size: 0.7rem;
    color: var(--text-muted);
    font-weight: 500;
    margin-top: 1px;
    line-height: 1.2;
}

/* ---------- Audience badges ---------- */
.audience-badge[b-8ssorl050s] {
    display: inline-flex;
    align-items: center;
    padding: 4px 12px;
    border-radius: var(--radius-pill);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.audience-brand[b-8ssorl050s]   { background: var(--brand-50);   color: var(--brand-700);   border: 1px solid var(--brand-200); }
.audience-accent[b-8ssorl050s]  { background: var(--accent-50);  color: var(--accent-700);  border: 1px solid var(--accent-200); }
.audience-info[b-8ssorl050s]    { background: var(--info-50);    color: var(--info-800);    border: 1px solid var(--info-200); }
.audience-success[b-8ssorl050s] { background: var(--success-50); color: var(--success-700); border: 1px solid var(--success-200); }

.audience-count[b-8ssorl050s] {
    font-weight: 500;
}

/* ---------- Report cards (override default .card heaviness for buttons) ---------- */
.report-card[b-8ssorl050s] {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-light) !important;
    border-left: 4px solid transparent !important;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-xs);
    cursor: pointer;
    transition: box-shadow .18s ease, transform .18s ease, border-left-color .18s ease;
    padding: 0 !important;
    overflow: hidden;
}

.report-card:hover[b-8ssorl050s] {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.report-card-brand:hover[b-8ssorl050s]   { border-left-color: var(--brand-500) !important; }
.report-card-accent:hover[b-8ssorl050s]  { border-left-color: var(--accent-500) !important; }
.report-card-info:hover[b-8ssorl050s]    { border-left-color: var(--info-500) !important; }
.report-card-success:hover[b-8ssorl050s] { border-left-color: var(--success-500) !important; }

.report-card-icon[b-8ssorl050s] {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-md);
    font-size: 20px;
}

.report-card-brand   .report-card-icon[b-8ssorl050s] { background: var(--brand-50);   color: var(--brand-600); }
.report-card-accent  .report-card-icon[b-8ssorl050s] { background: var(--accent-50);  color: var(--accent-600); }
.report-card-info    .report-card-icon[b-8ssorl050s] { background: var(--info-50);    color: var(--info-600); }
.report-card-success .report-card-icon[b-8ssorl050s] { background: var(--success-50); color: var(--success-600); }

.report-card-title[b-8ssorl050s] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 4px 0;
    line-height: 1.3;
}

.report-card-desc[b-8ssorl050s] {
    font-size: 0.8rem;
    color: var(--text-muted);
    margin: 0;
    line-height: 1.45;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.report-card-cta[b-8ssorl050s] {
    color: var(--text-disabled);
    font-size: 1.4rem;
    transition: color .18s ease, transform .18s ease;
}

.report-card:hover .report-card-cta[b-8ssorl050s] {
    color: var(--brand-500);
    transform: translateX(2px);
}

.min-w-0[b-8ssorl050s] {
    min-width: 0;
}

/* ---------- Meta pills ---------- */
.meta-pill[b-8ssorl050s] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    background: var(--bg-hover);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-pill);
    font-size: 0.7rem;
    color: var(--text-secondary);
    font-weight: 500;
}

.meta-pill i[b-8ssorl050s] {
    font-size: 0.7rem;
}

.meta-pill-scoped[b-8ssorl050s] {
    background: var(--info-50);
    border-color: var(--info-200);
    color: var(--info-700);
}

.meta-pill-fresh[b-8ssorl050s] {
    background: var(--success-50);
    border-color: var(--success-200);
    color: var(--success-700);
}

/* ---------- Recent exports table (modern editorial — hairline rows) ---------- */
.exports-table[b-8ssorl050s] {
    --bs-table-bg: transparent;
    --bs-table-color: var(--text-primary);
    --bs-table-striped-bg: transparent;
    --bs-table-hover-bg: transparent;
    --bs-table-accent-bg: transparent;
    font-size: 0.825rem;
    margin-bottom: 0;
    border-collapse: separate;
    border-spacing: 0;
    background-color: transparent;
}

/* Kill Bootstrap's per-cell inset box-shadow that paints over our row backgrounds */
.exports-table > :not(caption) > * > *[b-8ssorl050s] {
    background-color: transparent;
    box-shadow: none !important;
}

.exports-table thead th[b-8ssorl050s] {
    padding: 10px 16px;
    background-color: var(--bg-surface) !important;
    border-top: 0 !important;
    border-bottom: 1px solid var(--border-medium) !important;
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--text-muted);
    white-space: nowrap;
}

.exports-table tbody td[b-8ssorl050s] {
    padding: 11px 16px;
    border-top: 0 !important;
    border-bottom: 1px solid var(--border-light) !important;
    color: var(--text-primary);
    white-space: nowrap;
    font-weight: 500;
    line-height: 1.4;
}

.exports-table tbody tr:last-child td[b-8ssorl050s] {
    border-bottom: 0 !important;
}

/* Zebra at row-level so all columns share the same background */
.exports-table tbody tr:nth-child(even)[b-8ssorl050s] {
    background-color: rgba(15, 23, 42, 0.018);
}

.exports-table tbody tr:hover[b-8ssorl050s] {
    background-color: var(--bg-active);
}

.exports-table .mono[b-8ssorl050s] {
    font-variant-numeric: tabular-nums;
    font-feature-settings: 'tnum';
    font-weight: 500;
}

.format-pill[b-8ssorl050s] {
    display: inline-flex;
    align-items: center;
    padding: 3px 10px;
    border-radius: var(--radius-pill);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    border: 1px solid transparent;
}

.format-pill i[b-8ssorl050s] {
    font-size: 0.8rem;
}

.format-pdf[b-8ssorl050s]  { background: #FEE2E2; color: #B91C1C; border-color: #FECACA; }
.format-xlsx[b-8ssorl050s] { background: var(--success-50); color: var(--success-700); border-color: var(--success-200); }
.format-csv[b-8ssorl050s]  { background: var(--info-50); color: var(--info-700); border-color: var(--info-200); }

/* ---------- Recent exports — report cell (icon + name + id) ---------- */
.recent-count[b-8ssorl050s] {
    align-self: center;
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 3px 10px;
    background: var(--bg-hover);
    border-radius: var(--radius-pill);
}

/* Catalog search — appears above audience sections when there are >=4 reports */
.catalog-search-bar[b-8ssorl050s] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.catalog-search[b-8ssorl050s] {
    position: relative;
    flex: 1;
    max-width: 480px;
}

.catalog-search-icon[b-8ssorl050s] {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.85rem;
    color: var(--text-disabled);
    pointer-events: none;
}

.catalog-search-input[b-8ssorl050s] {
    height: 36px;
    padding-left: 36px;
    padding-right: 36px;
    font-size: 0.875rem;
    background-color: var(--bg-surface);
    border-color: var(--border-medium);
}

.catalog-search-input:focus[b-8ssorl050s] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(0, 91, 159, 0.12);
}

.catalog-search-clear[b-8ssorl050s] {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 0;
    border-radius: var(--radius-sm);
    color: var(--text-muted);
    cursor: pointer;
    transition: all .12s ease;
}

.catalog-search-clear:hover[b-8ssorl050s] {
    background: var(--bg-hover);
    color: var(--text-primary);
}

.catalog-search-clear i[b-8ssorl050s] { font-size: 0.7rem; }

.catalog-search-count[b-8ssorl050s] {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 4px 10px;
    background: var(--brand-50);
    color: var(--brand-700);
    border: 1px solid var(--brand-200);
    border-radius: var(--radius-pill);
}

/* Recent Exports inline search — appears once exports >5 */
.exports-search[b-8ssorl050s] {
    position: relative;
    width: 220px;
}

.exports-search-icon[b-8ssorl050s] {
    position: absolute;
    left: 9px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.75rem;
    color: var(--text-disabled);
    pointer-events: none;
}

.exports-search-input[b-8ssorl050s] {
    height: 28px;
    padding-left: 28px;
    font-size: 0.78rem;
}

.exports-search-input:focus[b-8ssorl050s] {
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(0, 91, 159, 0.12);
}

/* Scope toggle (Mine / Bank / All) — segmented-control style */
.scope-toggle[b-8ssorl050s] {
    display: inline-flex;
    border: 1px solid var(--border-light);
    border-radius: var(--radius-sm);
    padding: 2px;
    background: var(--bg-surface);
}

.scope-toggle-btn[b-8ssorl050s] {
    height: 24px;
    padding: 0 12px;
    background: transparent;
    border: 0;
    border-radius: calc(var(--radius-sm) - 1px);
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all .12s ease;
}

.scope-toggle-btn:hover:not(.active)[b-8ssorl050s] {
    background: var(--bg-hover);
    color: var(--text-primary);
}

.scope-toggle-btn.active[b-8ssorl050s] {
    background: var(--brand-500);
    color: #fff;
}

.report-cell[b-8ssorl050s] {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.report-icon[b-8ssorl050s] {
    width: 30px;
    height: 30px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-sm);
    font-size: 0.85rem;
}

.report-icon-brand[b-8ssorl050s]   { background: var(--brand-50);   color: var(--brand-600); }
.report-icon-accent[b-8ssorl050s]  { background: var(--accent-50);  color: var(--accent-700); }
.report-icon-info[b-8ssorl050s]    { background: var(--info-50);    color: var(--info-600); }
.report-icon-success[b-8ssorl050s] { background: var(--success-50); color: var(--success-600); }

.report-cell-text[b-8ssorl050s] {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
    min-width: 0;
}

.report-cell-name[b-8ssorl050s] {
    font-weight: 600;
    color: var(--text-primary);
    font-size: 0.85rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.report-cell-id[b-8ssorl050s] {
    font-size: 0.65rem;
    color: var(--text-disabled);
    font-variant-numeric: tabular-nums;
    font-feature-settings: 'tnum';
    margin-top: 1px;
}

/* ---------- User cell (initials avatar + name) ---------- */
.user-cell[b-8ssorl050s] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.user-avatar[b-8ssorl050s] {
    width: 26px;
    height: 26px;
    flex-shrink: 0;
    border-radius: 50%;
    background: var(--brand-100);
    color: var(--brand-700);
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--brand-200);
}

.user-name[b-8ssorl050s] {
    color: var(--text-primary);
    font-weight: 500;
}

/* ---------- When cell (relative time, dotted-underline tooltip affordance) ---------- */
.when-cell[b-8ssorl050s] {
    color: var(--text-secondary);
    font-weight: 500;
    border-bottom: 1px dotted var(--border-medium);
    cursor: help;
}

/* Subtle ghost icon button */
.icon-btn[b-8ssorl050s] {
    width: 28px;
    height: 28px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent !important;
    border: 1px solid var(--border-light) !important;
    border-radius: var(--radius-sm) !important;
    color: var(--text-muted) !important;
    transition: color .15s ease, background .15s ease, border-color .15s ease;
}

.icon-btn i[b-8ssorl050s] {
    font-size: 0.85rem;
}

.icon-btn:hover[b-8ssorl050s] {
    background: var(--brand-50) !important;
    border-color: var(--brand-200) !important;
    color: var(--brand-700) !important;
}

/* ---------- Loading & empty states ---------- */
.reports-loading[b-8ssorl050s] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 40px;
    color: var(--text-muted);
    font-size: 0.875rem;
}

.reports-loading i.spinning[b-8ssorl050s] {
    animation: report-spin-b-8ssorl050s 1s linear infinite;
}

@keyframes report-spin-b-8ssorl050s {
    from { transform: rotate(0deg); }
    to   { transform: rotate(360deg); }
}

.empty-state[b-8ssorl050s] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px 24px;
    text-align: center;
    background: var(--bg-surface);
    border: 1px dashed var(--border-medium);
    border-radius: var(--radius-lg);
    color: var(--text-muted);
}

.empty-state i[b-8ssorl050s] {
    font-size: 2rem;
    color: var(--text-disabled);
    margin-bottom: 10px;
}

/* ---------- Skeleton loaders (shimmer) ---------- */
.skel[b-8ssorl050s] {
    position: relative;
    overflow: hidden;
    background: var(--bg-hover);
    border-radius: var(--radius-sm);
}

.skel[b-8ssorl050s]::after {
    content: "";
    position: absolute;
    inset: 0;
    transform: translateX(-100%);
    background: linear-gradient(90deg,
        transparent,
        rgba(255, 255, 255, 0.55),
        transparent);
    animation: skel-shimmer-b-8ssorl050s 1.3s ease-in-out infinite;
}

@keyframes skel-shimmer-b-8ssorl050s {
    100% { transform: translateX(100%); }
}

.skel-line[b-8ssorl050s] { height: 10px; width: 100%; }
.skel-line-title[b-8ssorl050s] { height: 14px; width: 55%; }
.skel-line-short[b-8ssorl050s] { width: 70%; }
.skel-badge[b-8ssorl050s] { height: 22px; width: 120px; border-radius: var(--radius-pill); }
.skel-pill[b-8ssorl050s]  { height: 18px; width: 64px; border-radius: var(--radius-pill); }

.skel-icon[b-8ssorl050s] {
    width: 44px;
    height: 44px;
    border-radius: var(--radius-md);
    flex-shrink: 0;
}

.skel-icon-sm[b-8ssorl050s] {
    width: 30px;
    height: 30px;
    border-radius: var(--radius-sm);
    flex-shrink: 0;
}

.report-card-skel[b-8ssorl050s] {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-light) !important;
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-xs);
}

.skel-row + .skel-row[b-8ssorl050s] {
    border-top: 1px solid var(--border-light);
}
/* /Components/Routes.razor.rz.scp.css */
.auth-required[b-riwzwolf94] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 70vh;
    padding: 2rem;
}

.auth-message[b-riwzwolf94] {
    background: white;
    border-radius: 12px;
    padding: 3rem;
    max-width: 500px;
    width: 100%;
    text-align: center;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.auth-message h3[b-riwzwolf94] {
    color: #1a1a1a;
    font-size: 1.75rem;
    font-weight: 600;
    margin-bottom: 1rem;
}

.auth-message p[b-riwzwolf94] {
    color: #666;
    font-size: 1.1rem;
    margin-bottom: 1.5rem;
}

.auth-message .btn[b-riwzwolf94] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 2rem;
    background-color: #0d6efd;
    color: white;
    text-decoration: none;
    border-radius: 8px;
    font-weight: 500;
    transition: background-color 0.2s;
}

.auth-message .btn:hover[b-riwzwolf94] {
    background-color: #0b5ed7;
}

.auth-loading[b-riwzwolf94] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 70vh;
    padding: 2rem;
}

.auth-loading p[b-riwzwolf94] {
    color: #666;
    font-size: 1.1rem;
}

/* /Components/Shared/AccordionItem.razor.rz.scp.css */
/* Accordion Component Styles */

.accordion-item[b-kenv51vve1] {
    background: #E3F1FB;
    border: 1px solid #CCE5F1;
    border-radius: 8px;
    margin-bottom: 12px;
    overflow: hidden;
    transition: all 0.2s ease;
}

.accordion-item:hover[b-kenv51vve1] {
    border-color: var(--brand-300);
}

.accordion-item.expanded[b-kenv51vve1] {
    border-color: var(--brand-400);
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

.accordion-header[b-kenv51vve1] {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 24px;
    background: transparent;
    border: none;
    cursor: pointer;
    transition: background-color 0.2s ease;
    text-align: left;
}

.accordion-header:hover[b-kenv51vve1] {
    background: rgba(15, 23, 42, 0.05);
}

.accordion-item.expanded .accordion-header[b-kenv51vve1] {
    background: transparent;
}

.accordion-title[b-kenv51vve1] {
    font-size: 15px;
    font-weight: 600;
    color: var(--brand-700);
    line-height: 1.5;
    flex: 1;
    padding-right: 16px;
}

.accordion-icon[b-kenv51vve1] {
    font-size: 16px;
    color: var(--brand-600);
    transition: transform 0.2s ease;
    flex-shrink: 0;
}

.accordion-content[b-kenv51vve1] {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.accordion-content.show[b-kenv51vve1] {
    max-height: 2000px;
}

.accordion-body[b-kenv51vve1] {
    padding: 0 24px 24px 24px;
    color: var(--text-secondary);
    font-size: 14px;
    line-height: 1.7;
}

.accordion-body p[b-kenv51vve1] {
    margin: 0 0 12px 0;
}

.accordion-body p:last-child[b-kenv51vve1] {
    margin-bottom: 0;
}

.accordion-body ul[b-kenv51vve1] {
    margin: 12px 0;
    padding-left: 24px;
}

.accordion-body li[b-kenv51vve1] {
    margin-bottom: 8px;
}

.accordion-body strong[b-kenv51vve1] {
    color: var(--text-primary);
    font-weight: 600;
}

/* /Components/Shared/AdminDashboard/BankActivity.razor.rz.scp.css */
.bank-activity[b-s3z9ujgzvd] {
    background: #E8F2F7;
    border-radius: 12px;
    padding: 28px;
    border: none;
}

.section-header[b-s3z9ujgzvd] {
    margin-bottom: 20px;
}

.section-title[b-s3z9ujgzvd] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 600;
    color: #004E71;
}

.section-title i[b-s3z9ujgzvd] {
    color: #2563EB;
    font-size: 18px;
}

.banks-list[b-s3z9ujgzvd] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.bank-item[b-s3z9ujgzvd] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 18px;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    background: white;
    transition: all 0.2s;
}

.bank-item:hover[b-s3z9ujgzvd] {
    border-color: #2563EB;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.bank-info[b-s3z9ujgzvd] {
    flex: 1;
}

.bank-name[b-s3z9ujgzvd] {
    font-size: 14px;
    font-weight: 600;
    color: #1A1A1A;
    margin-bottom: 4px;
}

.bank-activity-text[b-s3z9ujgzvd] {
    font-size: 12px;
    color: #6B7280;
}

.bank-status[b-s3z9ujgzvd] {
    margin-left: 16px;
}

.activity-badge[b-s3z9ujgzvd] {
    display: inline-block;
    padding: 5px 14px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 600;
    text-transform: capitalize;
}

.activity-badge.active[b-s3z9ujgzvd] {
    background: #DBEAFE;
    color: #1E40AF;
}

.activity-badge.inactive[b-s3z9ujgzvd] {
    background: #F3F4F6;
    color: #6B7280;
}

.no-data[b-s3z9ujgzvd] {
    text-align: center;
    padding: 40px;
    color: #9CA3AF;
    font-size: 14px;
}

/* /Components/Shared/AdminDashboard/MetricCard.razor.rz.scp.css */
.metric-card[b-4ufg6l2u19] {
    border-radius: 12px;
    padding: 24px;
    transition: transform 0.2s, box-shadow 0.2s;
    position: relative;

    background: linear-gradient(135deg, rgba(227, 241, 251, 0.85) 0%, rgba(255, 255, 255, 0.95) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
   /* transition: all 0.2s;*/
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
}

.metric-card:hover[b-4ufg6l2u19] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.metric-header[b-4ufg6l2u19] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 16px;
}

.metric-label[b-4ufg6l2u19] {
    font-size: 13px;
    color: #004E71;
    font-weight: 500;
    line-height: 1.4;
}

.metric-icon[b-4ufg6l2u19] {
    font-size: 20px;
    color: #FF6B6B;
}

.metric-value[b-4ufg6l2u19] {
    font-size: 36px;
    font-weight: 700;
    color: #1A1A1A;
    line-height: 1;
}

/* Color variants - all use the same light blue background */
.metric-card.pending[b-4ufg6l2u19],
.metric-card.review[b-4ufg6l2u19],
.metric-card.success[b-4ufg6l2u19],
.metric-card.bound[b-4ufg6l2u19] {
    background: #E8F2F7;
}

.metric-card.premium[b-4ufg6l2u19] {
    background: #E8F2F7;
}

/* Icon color variations */
.metric-card.pending .metric-icon[b-4ufg6l2u19] {
    color: #FF6B6B;
}

.metric-card.review .metric-icon[b-4ufg6l2u19] {
    color: #4A90E2;
}

.metric-card.success .metric-icon[b-4ufg6l2u19] {
    color: #10B981;
}

.metric-card.bound .metric-icon[b-4ufg6l2u19] {
    color: #10B981;
}

.metric-card.premium .metric-icon[b-4ufg6l2u19] {
    color: #8B5CF6;
}

/* /Components/Shared/AdminDashboard/QuickActions.razor.rz.scp.css */
.quick-actions[b-ckkf4cxpk4] {
    background: #E8F2F7;
    border-radius: 12px;
    padding: 28px;
    border: none;
    margin-bottom: 24px;
}

.quick-actions-header[b-ckkf4cxpk4] {
    margin-bottom: 20px;
}

.quick-actions-title[b-ckkf4cxpk4] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 600;
    color: #004E71;
    margin-bottom: 6px;
}

.quick-actions-title i[b-ckkf4cxpk4] {
    color: #F59E0B;
    font-size: 18px;
}

.quick-actions-subtitle[b-ckkf4cxpk4] {
    font-size: 13px;
    color: #6B7280;
    margin: 0;
    padding-left: 28px;
}

.actions-grid[b-ckkf4cxpk4] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
}

.action-button[b-ckkf4cxpk4] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 18px 24px;
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    font-size: 14px;
    font-weight: 500;
    color: #004E71;
}

.action-button:hover[b-ckkf4cxpk4] {
    background: var(--brand-600, #004980);
    border-color: var(--brand-600, #004980);
    color: white;
}

.action-button i[b-ckkf4cxpk4] {
    font-size: 18px;
    color: #2563EB;
}

.action-button:hover i[b-ckkf4cxpk4] {
    color: white;
}

/* /Components/Shared/AdminDashboard/RecentApplications.razor.rz.scp.css */
.recent-applications[b-3kcn9onigm] {
    background: #E8F2F7;
    border-radius: 12px;
    padding: 28px;
    border: none;
}

.section-header[b-3kcn9onigm] {
    margin-bottom: 20px;
}

.section-title[b-3kcn9onigm] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 600;
    color: #004E71;
}

.section-title i[b-3kcn9onigm] {
    color: #2563EB;
    font-size: 18px;
}

.applications-list[b-3kcn9onigm] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.application-item[b-3kcn9onigm] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 18px;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    background: white;
    transition: all 0.2s;
}

.application-item:hover[b-3kcn9onigm] {
    border-color: #2563EB;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.application-info[b-3kcn9onigm] {
    flex: 1;
}

.application-name[b-3kcn9onigm] {
    font-size: 14px;
    font-weight: 600;
    color: #1A1A1A;
    margin-bottom: 4px;
}

.application-loan[b-3kcn9onigm] {
    font-size: 12px;
    color: #6B7280;
}

.application-status[b-3kcn9onigm] {
    margin-left: 16px;
}

.status-badge[b-3kcn9onigm] {
    display: inline-block;
    padding: 5px 14px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.status-badge.submitted[b-3kcn9onigm] {
    background: #DBEAFE;
    color: #1E40AF;
}

.status-badge.quoted[b-3kcn9onigm] {
    background: #BFDBFE;
    color: #1E3A8A;
}

.status-badge.bound[b-3kcn9onigm] {
    background: #D1FAE5;
    color: #065F46;
}

.status-badge.pending[b-3kcn9onigm] {
    background: #FEF3C7;
    color: #92400E;
}

.no-data[b-3kcn9onigm] {
    text-align: center;
    padding: 40px;
    color: #9CA3AF;
    font-size: 14px;
}

/* /Components/Shared/AdminDashboard/StatCard.razor.rz.scp.css */
/* Stat Card Styles */
.stat-card[b-0ohfxgxbfj] {
    display: flex;
    align-items: center;
    gap: 16px;
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(240, 247, 252, 0.6) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 20px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.stat-card:hover[b-0ohfxgxbfj] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.12);
    border-color: rgba(15, 23, 42, 0.15);
}

.stat-icon[b-0ohfxgxbfj] {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-400) 100%);
    color: white;
    font-size: 24px;
    flex-shrink: 0;
}

.stat-details[b-0ohfxgxbfj] {
    flex: 1;
}

.stat-label[b-0ohfxgxbfj] {
    font-size: 13px;
    font-weight: 600;
    color: #6B7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 4px;
}

.stat-value[b-0ohfxgxbfj] {
    font-size: 32px;
    font-weight: 700;
    color: #1F2937;
    line-height: 1;
    margin-bottom: 4px;
}

.stat-subtitle[b-0ohfxgxbfj] {
    font-size: 13px;
    color: #6B7280;
    font-weight: 500;
}

/* Icon variants */
.stat-card.success .stat-icon[b-0ohfxgxbfj] {
    background: linear-gradient(135deg, #059669 0%, #10B981 100%);
}

.stat-card.warning .stat-icon[b-0ohfxgxbfj] {
    background: linear-gradient(135deg, #D97706 0%, #F59E0B 100%);
}

.stat-card.info .stat-icon[b-0ohfxgxbfj] {
    background: linear-gradient(135deg, #0284C7 0%, #0EA5E9 100%);
}

.stat-card.danger .stat-icon[b-0ohfxgxbfj] {
    background: linear-gradient(135deg, #DC2626 0%, #EF4444 100%);
}

.stat-card.clickable[b-0ohfxgxbfj] {
    cursor: pointer;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

    .stat-card.clickable:hover[b-0ohfxgxbfj] {
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

    .stat-card.clickable:active[b-0ohfxgxbfj] {
        transform: translateY(0);
    }
/* /Components/Shared/AdminDashboard/SystemAlerts.razor.rz.scp.css */
.system-alerts[b-08x3knqo6z] {
    background: #E8F2F7;
    border-radius: 12px;
    padding: 28px;
    border: none;
    margin-bottom: 24px;
}

.alerts-header[b-08x3knqo6z] {
    margin-bottom: 20px;
}

.alerts-title[b-08x3knqo6z] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 600;
    color: #004E71;
    margin-bottom: 6px;
}

.alerts-title i[b-08x3knqo6z] {
    color: #F59E0B;
    font-size: 18px;
}

.alerts-subtitle[b-08x3knqo6z] {
    font-size: 13px;
    color: #6B7280;
    margin: 0;
    padding-left: 28px;
}

.alerts-list[b-08x3knqo6z] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.alert-item[b-08x3knqo6z] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 18px;
    border-radius: 8px;
    background: white;
    border: 1px solid #E5E7EB;
    transition: all 0.2s;
}

.alert-item:hover[b-08x3knqo6z] {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.alert-item.warning[b-08x3knqo6z] {
    background: #FFFBEB;
    border-left: 3px solid #F59E0B;
}

.alert-item.error[b-08x3knqo6z] {
    background: #FEF2F2;
    border-left: 3px solid #EF4444;
}

.alert-item.success[b-08x3knqo6z] {
    background: #F0FDF4;
    border-left: 3px solid #10B981;
}

.alert-item.info[b-08x3knqo6z] {
    background: #EFF6FF;
    border-left: 3px solid #3B82F6;
}

.alert-content[b-08x3knqo6z] {
    flex: 1;
}

.alert-message[b-08x3knqo6z] {
    font-size: 14px;
    color: #374151;
}

.alert-action[b-08x3knqo6z] {
    margin-left: 16px;
}

.alert-action-btn[b-08x3knqo6z] {
    background: transparent;
    border: none;
    color: #2563EB;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    padding: 6px 12px;
    border-radius: 6px;
    transition: all 0.2s;
}

.alert-action-btn:hover[b-08x3knqo6z] {
    background: rgba(37, 99, 235, 0.1);
    color: #1D4ED8;
}

/* /Components/Shared/AgencyLogoUploader.razor.rz.scp.css */
.agency-logo-uploader[b-72tht0lj5v] {
    display: flex;
    flex-direction: column;
    gap: var(--space-sm);
    max-width: 480px;
}

.agency-logo-preview[b-72tht0lj5v] {
    display: flex;
    align-items: center;
    min-height: 80px;
    padding: var(--space-sm);
    background: var(--sidebar-bg, #1B2A4A);
    border-radius: var(--radius-md);
}

.agency-logo-preview img[b-72tht0lj5v] {
    max-width: 240px;
    max-height: 64px;
    object-fit: contain;
}

.agency-logo-preview-default[b-72tht0lj5v] {
    display: flex;
    align-items: center;
    gap: var(--space-sm);
    color: var(--sidebar-text-muted, #94A3B8);
    font-size: var(--font-size-sm);
}

.agency-logo-preview-default img[b-72tht0lj5v] {
    max-width: 120px;
    max-height: 48px;
    object-fit: contain;
}

.agency-logo-guide p[b-72tht0lj5v] {
    font-size: var(--font-size-xs);
    color: var(--text-muted);
    margin: 0;
}

.agency-logo-actions[b-72tht0lj5v] {
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Custom upload button — hides the native "Choose File" input behind a styled label,
   matching the app's canonical flat button design instead of the raw browser control. */
.btn-logo-upload[b-72tht0lj5v] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    background: var(--brand-600, #004980);
    color: white;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    overflow: hidden;
    white-space: nowrap;
}

.btn-logo-upload:hover[b-72tht0lj5v] { background: var(--brand-700, #003760); }

.btn-logo-upload-disabled[b-72tht0lj5v] {
    opacity: 0.6;
    cursor: not-allowed;
    pointer-events: none;
}

.btn-logo-upload input[type="file"][b-72tht0lj5v] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.btn-logo-remove[b-72tht0lj5v] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    background: white;
    color: #DC2626;
    border: 1.5px solid #FECACA;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    white-space: nowrap;
}

.btn-logo-remove:hover[b-72tht0lj5v] { background: #FEF2F2; border-color: #FCA5A5; }
.btn-logo-remove:disabled[b-72tht0lj5v] { opacity: 0.6; cursor: not-allowed; }
/* /Components/Shared/AgentDashboard/AgentStatCard.razor.rz.scp.css */
/* Agent Dashboard Stat Card - Modern Design */
.stat-card[b-uhk9qnwugq] {
    background: white;
    border-radius: 16px;
    padding: 20px 24px;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-light);
    transition: all 0.2s ease;
    min-height: 120px;
}

.stat-card:hover[b-uhk9qnwugq] {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
    border-color: var(--border-medium);
}

/* Primary variant - colored background */
.stat-card.stat-card-primary[b-uhk9qnwugq] {
    background: linear-gradient(135deg, var(--success-500) 0%, var(--success-600) 100%);
    border: none;
    color: white;
}

.stat-card.stat-card-primary .stat-card-title[b-uhk9qnwugq],
.stat-card.stat-card-primary .stat-card-description[b-uhk9qnwugq] {
    color: rgba(255, 255, 255, 0.85);
}

.stat-card.stat-card-primary .stat-card-value[b-uhk9qnwugq] {
    color: white;
}

.stat-card.stat-card-primary .stat-card-icon[b-uhk9qnwugq] {
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.stat-card.stat-card-primary .stat-card-progress[b-uhk9qnwugq] {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 6px;
    background: rgba(255, 255, 255, 0.2);
}

.stat-card.stat-card-primary .progress-bar[b-uhk9qnwugq] {
    height: 100%;
    background: rgba(255, 255, 255, 0.5);
    border-radius: 0 3px 3px 0;
}

/* Success variant */
.stat-card.stat-card-success .stat-card-icon[b-uhk9qnwugq] {
    background: var(--success-50);
    color: var(--success-600);
}

/* Warning variant */
.stat-card.stat-card-warning .stat-card-icon[b-uhk9qnwugq] {
    background: var(--warning-50);
    color: var(--warning-600);
}

/* Content area */
.stat-card-content[b-uhk9qnwugq] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.stat-card-header[b-uhk9qnwugq] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.stat-card-title[b-uhk9qnwugq] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    letter-spacing: 0.01em;
}

.stat-card-trend[b-uhk9qnwugq] {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 4px;
}

.stat-card-trend.trend-up[b-uhk9qnwugq] {
    background: var(--success-50);
    color: var(--success-600);
}

.stat-card-trend.trend-down[b-uhk9qnwugq] {
    background: var(--error-50);
    color: var(--error-600);
}

.stat-card-trend i[b-uhk9qnwugq] {
    font-size: 0.625rem;
}

.stat-card-value[b-uhk9qnwugq] {
    font-size: 2rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.1;
    letter-spacing: -0.02em;
}

.stat-card-description[b-uhk9qnwugq] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    font-weight: 400;
}

/* Icon */
.stat-card-icon[b-uhk9qnwugq] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--brand-50);
    color: var(--brand-600);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

/* /Components/Shared/AgentDashboard/InfoCard.razor.rz.scp.css */
/* Agent Dashboard Info Card Styles */
.agent-info-card[b-cv1zye5gfv] {
    background: white;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    padding: 24px;
    transition: all 0.2s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.agent-info-card:hover[b-cv1zye5gfv] {
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
    border-color: rgba(15, 23, 42, 0.15);
}

.info-card-header[b-cv1zye5gfv] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
}

.info-card-icon-wrapper[b-cv1zye5gfv] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background-color: rgba(15, 23, 42, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.info-card-icon-wrapper i[b-cv1zye5gfv] {
    font-size: 20px;
    color: var(--brand-500);
}

.info-card-header-text[b-cv1zye5gfv] {
    flex: 1;
}

.info-card-title[b-cv1zye5gfv] {
    font-size: 16px;
    font-weight: 600;
    color: #1F2937;
    margin: 0 0 4px 0;
}

.info-card-subtitle[b-cv1zye5gfv] {
    font-size: 13px;
    color: #6B7280;
    margin: 0;
}

.info-card-body[b-cv1zye5gfv] {
    flex: 1;
}

.info-card-message[b-cv1zye5gfv] {
    font-size: 14px;
    color: #6B7280;
    margin: 0;
}

.info-card-footer[b-cv1zye5gfv] {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #E5E7EB;
}

/* /Components/Shared/AiPremiumExplanation.razor.rz.scp.css */
/* AI Premium Card - Dashboard Theme */
.ai-premium-card[b-kjk0782y7o] {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px dashed #e5e7eb;
}

/* Trigger Button (Collapsed State) */
.ai-premium-card .explain-trigger-btn[b-kjk0782y7o] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 10px 16px;
    background: #f0f9ff;
    border: 1px solid #bfdbfe;
    border-radius: 8px;
    color: var(--brand-500);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.ai-premium-card .explain-trigger-btn:hover:not(:disabled)[b-kjk0782y7o] {
    background: #dbeafe;
    border-color: var(--brand-500);
}

.ai-premium-card .explain-trigger-btn:disabled[b-kjk0782y7o] {
    opacity: 0.7;
    cursor: wait;
}

.ai-premium-card .explain-trigger-btn i.bi-stars[b-kjk0782y7o] {
    color: #d97706;
}

/* Card Header */
.ai-premium-card .card-header[b-kjk0782y7o] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    padding: 0;
    border: none;
    background: transparent;
}

.ai-premium-card .card-title[b-kjk0782y7o] {
    font-size: 14px;
    font-weight: 600;
    color: #374151;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.ai-premium-card .card-title i[b-kjk0782y7o] {
    color: var(--brand-500);
}

.ai-premium-card .ai-badge[b-kjk0782y7o] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 10px;
    font-weight: 600;
    color: #d97706;
    background: #fef3c7;
    padding: 4px 8px;
    border-radius: 10px;
}

.ai-premium-card .rule-badge[b-kjk0782y7o] {
    font-size: 10px;
    font-weight: 600;
    color: #6b7280;
    background: #f3f4f6;
    padding: 4px 8px;
    border-radius: 10px;
}

/* Loading State */
.ai-premium-card .loading-state[b-kjk0782y7o] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 30px 20px;
    gap: 12px;
    color: #6b7280;
    font-size: 13px;
}

/* Summary Section */
.ai-premium-card .summary-section[b-kjk0782y7o] {
    padding: 12px;
    background: #f9fafb;
    border-radius: 8px;
    margin-bottom: 16px;
}

.ai-premium-card .summary-text[b-kjk0782y7o] {
    font-size: 13px;
    color: #374151;
    line-height: 1.5;
    margin: 0;
}

/* Factors Section */
.ai-premium-card .factors-section[b-kjk0782y7o] {
    margin-bottom: 16px;
}

.ai-premium-card .section-title[b-kjk0782y7o] {
    font-size: 11px;
    font-weight: 600;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 10px;
}

.ai-premium-card .section-title i[b-kjk0782y7o] {
    color: #9ca3af;
}

.ai-premium-card .factors-list[b-kjk0782y7o] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ai-premium-card .factor-item[b-kjk0782y7o] {
    padding: 10px 12px;
    border-radius: 8px;
    border-left: 3px solid;
    transition: background-color 0.2s ease;
}

.ai-premium-card .factor-item.factor-increase[b-kjk0782y7o] {
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
    border-left-color: #ef4444;
}

.ai-premium-card .factor-item.factor-decrease[b-kjk0782y7o] {
    background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%);
    border-left-color: #059669;
}

.ai-premium-card .factor-item.factor-neutral[b-kjk0782y7o] {
    background: #f9fafb;
    border-left-color: #9ca3af;
}

.ai-premium-card .factor-main[b-kjk0782y7o] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 4px;
}

.ai-premium-card .factor-name[b-kjk0782y7o] {
    font-size: 13px;
    font-weight: 600;
    color: #374151;
}

.ai-premium-card .factor-impact[b-kjk0782y7o] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 600;
    padding: 3px 8px;
    border-radius: 10px;
}

.ai-premium-card .factor-impact.impact-increase[b-kjk0782y7o] {
    background: #fee2e2;
    color: var(--error-600);
}

.ai-premium-card .factor-impact.impact-decrease[b-kjk0782y7o] {
    background: #d1fae5;
    color: #059669;
}

.ai-premium-card .factor-impact.impact-neutral[b-kjk0782y7o] {
    background: #e5e7eb;
    color: #6b7280;
}

.ai-premium-card .factor-explanation[b-kjk0782y7o] {
    font-size: 12px;
    color: #6b7280;
    margin: 0;
    line-height: 1.4;
}

/* Tip Section */
.ai-premium-card .tip-section[b-kjk0782y7o] {
    display: flex;
    gap: 12px;
    padding: 12px;
    background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%);
    border-radius: 8px;
    border-left: 3px solid #059669;
    margin-bottom: 16px;
}

.ai-premium-card .tip-icon[b-kjk0782y7o] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: #d1fae5;
    color: #059669;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
}

.ai-premium-card .tip-content[b-kjk0782y7o] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.ai-premium-card .tip-label[b-kjk0782y7o] {
    font-size: 10px;
    font-weight: 600;
    color: #059669;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.ai-premium-card .tip-text[b-kjk0782y7o] {
    font-size: 12px;
    color: #065f46;
    line-height: 1.4;
}

/* Error Message */
.ai-premium-card .error-message[b-kjk0782y7o] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    background: #fef3c7;
    border-radius: 8px;
    margin-bottom: 12px;
}

.ai-premium-card .error-message i[b-kjk0782y7o] {
    color: #d97706;
    font-size: 14px;
}

.ai-premium-card .error-message span[b-kjk0782y7o] {
    font-size: 12px;
    color: #92400e;
}

/* Collapse Button */
.ai-premium-card .collapse-btn[b-kjk0782y7o] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    padding: 8px 12px;
    background: transparent;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    color: #6b7280;
    font-size: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.ai-premium-card .collapse-btn:hover[b-kjk0782y7o] {
    background: #f9fafb;
    border-color: #d1d5db;
    color: #374151;
}

/* /Components/Shared/AiRiskPanel.razor.rz.scp.css */
/* AI Risk Card - Dashboard Theme */
.ai-risk-card[b-g4ipsi15wy] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    transition: all 0.2s ease;
}

.ai-risk-card:hover[b-g4ipsi15wy] {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

/* Risk Level Border Colors */
.ai-risk-card.risk-low[b-g4ipsi15wy] {
    border-left: 4px solid #059669;
}

.ai-risk-card.risk-medium[b-g4ipsi15wy] {
    border-left: 4px solid #d97706;
}

.ai-risk-card.risk-high[b-g4ipsi15wy] {
    border-left: 4px solid var(--error-600);
}

.ai-risk-card.risk-critical[b-g4ipsi15wy] {
    border-left: 4px solid #7c3aed;
    animation: critical-pulse-b-g4ipsi15wy 2s infinite;
}

@keyframes critical-pulse-b-g4ipsi15wy {
    0%, 100% { box-shadow: 0 0 0 0 rgba(124, 58, 237, 0.2); }
    50% { box-shadow: 0 0 0 8px rgba(124, 58, 237, 0); }
}

/* Card Header */
.ai-risk-card .card-header[b-g4ipsi15wy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    padding: 0;
    border: none;
    background: transparent;
}

.ai-risk-card .card-title[b-g4ipsi15wy] {
    font-size: 14px;
    font-weight: 600;
    color: #374151;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.ai-risk-card .card-title i[b-g4ipsi15wy] {
    color: var(--brand-500);
}

/* The card title doubles as the collapse toggle. Reset the button chrome only —
   .card-title supplies the layout, typography and the icon colour. */
.ai-risk-card .ai-risk-toggle[b-g4ipsi15wy] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: none;
    border: none;
    padding: 0;
    font: inherit;
    color: inherit;
    text-align: left;
    cursor: pointer;
}

.ai-risk-card .ai-risk-toggle:hover i[b-g4ipsi15wy] {
    color: var(--brand-700);
}

.ai-risk-card .ai-risk-toggle:focus-visible[b-g4ipsi15wy] {
    outline: none;
    box-shadow: 0 0 0 3px rgba(13, 103, 133, 0.2);
    border-radius: 6px;
}

/* Collapsed with CSS rather than a Razor @if so that browser print can still show the
   panel in full — a @media print rule cannot re-add DOM that Razor never rendered.
   Scoping the collapse to `screen` is what makes print expand it. */
@media screen {
    .ai-risk-card.ai-risk-collapsed > *:not(.card-header)[b-g4ipsi15wy] {
        display: none;
    }

    /* Nothing follows the header while collapsed, so drop the gap it was reserving. */
    .ai-risk-card.ai-risk-collapsed .card-header[b-g4ipsi15wy] {
        margin-bottom: 0;
    }
}

@media print {
    .ai-risk-card .ai-risk-chevron[b-g4ipsi15wy] {
        display: none;
    }
}

.ai-risk-card .ai-badge[b-g4ipsi15wy] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 600;
    color: var(--brand-500);
    background: #dbeafe;
    padding: 4px 10px;
    border-radius: 12px;
}

.ai-risk-card .rule-badge[b-g4ipsi15wy] {
    font-size: 11px;
    font-weight: 600;
    color: #6b7280;
    background: #f3f4f6;
    padding: 4px 10px;
    border-radius: 12px;
}

/* Loading State */
.ai-risk-card .loading-state[b-g4ipsi15wy] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    gap: 16px;
    color: #6b7280;
    font-size: 13px;
}

/* Risk Score Display */
.ai-risk-card .risk-score-display[b-g4ipsi15wy] {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 16px;
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
    border-radius: 12px;
    margin-bottom: 16px;
}

.ai-risk-card .score-circle[b-g4ipsi15wy] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border: 4px solid currentColor;
    transition: all 0.3s ease;
}

.ai-risk-card .score-circle.score-low[b-g4ipsi15wy] {
    color: #059669;
    background: rgba(5, 150, 105, 0.1);
}

.ai-risk-card .score-circle.score-medium[b-g4ipsi15wy] {
    color: #d97706;
    background: rgba(217, 119, 6, 0.1);
}

.ai-risk-card .score-circle.score-high[b-g4ipsi15wy] {
    color: var(--error-600);
    background: rgba(220, 38, 38, 0.1);
}

.ai-risk-card .score-circle.score-critical[b-g4ipsi15wy] {
    color: #7c3aed;
    background: rgba(124, 58, 237, 0.1);
}

.ai-risk-card .score-value[b-g4ipsi15wy] {
    font-size: 28px;
    font-weight: 700;
    line-height: 1;
}

.ai-risk-card .score-label[b-g4ipsi15wy] {
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    opacity: 0.8;
}

.ai-risk-card .score-details[b-g4ipsi15wy] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.ai-risk-card .risk-level-badge[b-g4ipsi15wy] {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
}

.ai-risk-card .risk-level-badge.badge-success[b-g4ipsi15wy] {
    background: #d1fae5;
    color: #059669;
}

.ai-risk-card .risk-level-badge.badge-warning[b-g4ipsi15wy] {
    background: #fef3c7;
    color: #d97706;
}

.ai-risk-card .risk-level-badge.badge-danger[b-g4ipsi15wy] {
    background: #fee2e2;
    color: var(--error-600);
}

.ai-risk-card .risk-level-badge.badge-critical[b-g4ipsi15wy] {
    background: #ede9fe;
    color: #7c3aed;
}

.ai-risk-card .confidence-text[b-g4ipsi15wy] {
    font-size: 12px;
    color: #6b7280;
}

/* Action Recommendation */
.ai-risk-card .action-recommendation[b-g4ipsi15wy] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    border-radius: 10px;
    margin-bottom: 16px;
}

.ai-risk-card .action-recommendation.action-approve[b-g4ipsi15wy] {
    background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%);
    border-left: 3px solid #059669;
}

.ai-risk-card .action-recommendation.action-review[b-g4ipsi15wy] {
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border-left: 3px solid #2563eb;
}

.ai-risk-card .action-recommendation.action-senior[b-g4ipsi15wy] {
    background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
    border-left: 3px solid #d97706;
}

.ai-risk-card .action-recommendation.action-decline[b-g4ipsi15wy] {
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
    border-left: 3px solid var(--error-600);
}

.ai-risk-card .action-icon[b-g4ipsi15wy] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}

.ai-risk-card .action-approve .action-icon[b-g4ipsi15wy] {
    background: #d1fae5;
    color: #059669;
}

.ai-risk-card .action-review .action-icon[b-g4ipsi15wy] {
    background: #dbeafe;
    color: #2563eb;
}

.ai-risk-card .action-senior .action-icon[b-g4ipsi15wy] {
    background: #fef3c7;
    color: #d97706;
}

.ai-risk-card .action-decline .action-icon[b-g4ipsi15wy] {
    background: #fee2e2;
    color: var(--error-600);
}

.ai-risk-card .action-content[b-g4ipsi15wy] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.ai-risk-card .action-label[b-g4ipsi15wy] {
    font-size: 10px;
    font-weight: 600;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.ai-risk-card .action-value[b-g4ipsi15wy] {
    font-size: 14px;
    font-weight: 600;
    color: #1f2937;
}

/* Factors Section */
.ai-risk-card .factors-section[b-g4ipsi15wy] {
    margin-bottom: 16px;
}

.ai-risk-card .section-title[b-g4ipsi15wy] {
    font-size: 12px;
    font-weight: 600;
    color: #6b7280;
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 10px;
}

.ai-risk-card .section-title i[b-g4ipsi15wy] {
    color: #9ca3af;
}

.ai-risk-card .factors-list[b-g4ipsi15wy] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ai-risk-card .factor-item[b-g4ipsi15wy] {
    padding: 10px 12px;
    background: #f9fafb;
    border-radius: 8px;
    transition: background-color 0.2s ease;
}

.ai-risk-card .factor-item:hover[b-g4ipsi15wy] {
    background: #f3f4f6;
}

.ai-risk-card .factor-bar-container[b-g4ipsi15wy] {
    height: 4px;
    background: #e5e7eb;
    border-radius: 2px;
    margin-bottom: 8px;
    overflow: hidden;
}

.ai-risk-card .factor-bar[b-g4ipsi15wy] {
    height: 100%;
    background: linear-gradient(90deg, #fbbf24 0%, #ef4444 100%);
    border-radius: 2px;
    transition: width 0.3s ease;
}

.ai-risk-card .factor-header[b-g4ipsi15wy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2px;
}

.ai-risk-card .factor-name[b-g4ipsi15wy] {
    font-size: 13px;
    font-weight: 600;
    color: #374151;
}

.ai-risk-card .factor-score[b-g4ipsi15wy] {
    font-size: 12px;
    font-weight: 700;
    color: var(--error-600);
}

.ai-risk-card .factor-desc[b-g4ipsi15wy] {
    font-size: 11px;
    color: #6b7280;
    line-height: 1.3;
}

/* Insights Section */
.ai-risk-card .insights-section[b-g4ipsi15wy] {
    margin-bottom: 16px;
}

.ai-risk-card .insights-list[b-g4ipsi15wy] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.ai-risk-card .insight-item[b-g4ipsi15wy] {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    font-size: 12px;
    color: #374151;
    line-height: 1.4;
}

.ai-risk-card .insight-item i[b-g4ipsi15wy] {
    color: var(--brand-500);
    font-size: 16px;
    flex-shrink: 0;
}

/* Buttons */
.ai-risk-card .refresh-btn[b-g4ipsi15wy],
.ai-risk-card .analyze-btn[b-g4ipsi15wy] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 10px 16px;
    margin-top: auto;
    background: transparent;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    color: var(--brand-500);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.ai-risk-card .refresh-btn:hover:not(:disabled)[b-g4ipsi15wy],
.ai-risk-card .analyze-btn:hover:not(:disabled)[b-g4ipsi15wy] {
    background: #f0f9ff;
    border-color: var(--brand-500);
}

.ai-risk-card .refresh-btn:disabled[b-g4ipsi15wy],
.ai-risk-card .analyze-btn:disabled[b-g4ipsi15wy] {
    opacity: 0.5;
    cursor: not-allowed;
}

.ai-risk-card .analyze-btn[b-g4ipsi15wy] {
    background: var(--brand-500);
    border-color: var(--brand-500);
    color: white;
}

.ai-risk-card .analyze-btn:hover:not(:disabled)[b-g4ipsi15wy] {
    background: #004a82;
}

/* Empty State */
.ai-risk-card .empty-state[b-g4ipsi15wy] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    text-align: center;
}

.ai-risk-card .empty-state i[b-g4ipsi15wy] {
    font-size: 48px;
    color: #d1d5db;
    margin-bottom: 12px;
}

.ai-risk-card .empty-state p[b-g4ipsi15wy] {
    color: #9ca3af;
    margin-bottom: 16px;
    font-size: 14px;
}

/* Error State */
.ai-risk-card .error-state[b-g4ipsi15wy] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 30px 20px;
    text-align: center;
    gap: 12px;
}

.ai-risk-card .error-state i[b-g4ipsi15wy] {
    font-size: 32px;
    color: #d97706;
}

.ai-risk-card .error-state span[b-g4ipsi15wy] {
    color: #6b7280;
    font-size: 13px;
}

/* Responsive */
@media (max-width: 576px) {
    .ai-risk-card .risk-score-display[b-g4ipsi15wy] {
        flex-direction: column;
        text-align: center;
    }
    
    .ai-risk-card .score-circle[b-g4ipsi15wy] {
        width: 70px;
        height: 70px;
    }
    
    .ai-risk-card .score-value[b-g4ipsi15wy] {
        font-size: 24px;
    }
}
/* /Components/Shared/AuthDisplay.razor.rz.scp.css */
.auth-display[b-7uptt1k7bx] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.5rem;
}

.user-greeting[b-7uptt1k7bx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: #f8f9fa;
    border-radius: 8px;
}

.user-greeting i[b-7uptt1k7bx] {
    font-size: 1.25rem;
}

.user-greeting strong[b-7uptt1k7bx] {
    color: #1a1a1a;
}

.text-success[b-7uptt1k7bx] {
    color: #28a745;
}

.auth-actions[b-7uptt1k7bx] {
    display: flex;
    gap: 0.5rem;
}

.btn[b-7uptt1k7bx] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.5rem 1rem;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 500;
    transition: all 0.2s;
    border: 1px solid transparent;
    cursor: pointer;
}

.btn-sm[b-7uptt1k7bx] {
    padding: 0.375rem 0.75rem;
    font-size: 0.875rem;
}

.btn-primary[b-7uptt1k7bx] {
    background-color: #0d6efd;
    color: white;
}

.btn-primary:hover[b-7uptt1k7bx] {
    background-color: #0b5ed7;
}

.btn-outline-primary[b-7uptt1k7bx] {
    border-color: #0d6efd;
    color: #0d6efd;
    background: transparent;
}

.btn-outline-primary:hover[b-7uptt1k7bx] {
    background-color: #0d6efd;
    color: white;
}

.btn-outline-danger[b-7uptt1k7bx] {
    border-color: #dc3545;
    color: #dc3545;
    background: transparent;
}

.btn-outline-danger:hover[b-7uptt1k7bx] {
    background-color: #dc3545;
    color: white;
}

/* /Components/Shared/BankDashboard/ActionItemsList.razor.rz.scp.css */
/* Action Items Card - Clean Simple Design */

/* Slide in animation */
@keyframes slideInLeft-b-cpccus69gx {
    from {
        opacity: 0;
        transform: translateX(-20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.animate-slide-in[b-cpccus69gx] {
    animation: slideInLeft-b-cpccus69gx 0.4s ease-out forwards;
    animation-delay: 100ms;
    opacity: 0;
}

.action-items-card[b-cpccus69gx] {
    background: var(--bg-surface, #FFFFFF);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg, 12px);
    box-shadow: var(--shadow-xs);
    height: 104px;
}

/* Alert state when there are items requiring attention */
.action-items-card.has-items[b-cpccus69gx] {
    background: var(--warning-50);
    border-color: var(--warning-200);
}

.action-items-card.has-items .action-icon-sm[b-cpccus69gx] {
    background: var(--warning-100);
    color: var(--warning-600);
}

.action-items-card .card-body[b-cpccus69gx] {
    padding: 0.75rem 1rem;
    height: 100%;
    display: flex;
    flex-direction: column;
}

/* Action Icon */
.action-icon[b-cpccus69gx] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--brand-50);
    color: var(--brand-600);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

/* Smaller Action Icon */
.action-icon-sm[b-cpccus69gx] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: var(--brand-50);
    color: var(--brand-600);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    flex-shrink: 0;
}

/* Icon-only button */
.btn-icon-only[b-cpccus69gx] {
    width: 32px;
    height: 32px;
    padding: 0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
}

/* Subtle link icon */
.btn-link-icon[b-cpccus69gx] {
    color: var(--text-muted, #64748b);
    font-size: 1rem;
    transition: color var(--transition-fast, 160ms ease);
    text-decoration: none;
}

.btn-link-icon:hover[b-cpccus69gx] {
    color: var(--brand-600);
}

/* Header */
.action-items-card .card-title[b-cpccus69gx] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary, #1e293b);
    margin: 0;
}

.action-items-card .card-subtitle-text[b-cpccus69gx] {
    font-size: 0.8125rem;
    color: var(--text-muted, #64748b);
}

/* Menu Button */
.btn-icon[b-cpccus69gx] {
    width: 32px;
    height: 32px;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--text-muted, #64748b);
    border-radius: var(--radius-md, 8px);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all var(--transition-fast, 160ms ease);
}

.btn-icon:hover[b-cpccus69gx] {
    background: var(--neutral-100);
    color: var(--text-primary, #1e293b);
}

/* Action Items List */
.action-items-list[b-cpccus69gx] {
    display: flex;
    flex-direction: column;
    flex: 1;
    overflow-y: auto;
}

.action-items-list[b-cpccus69gx]::-webkit-scrollbar {
    width: 4px;
}

.action-items-list[b-cpccus69gx]::-webkit-scrollbar-track {
    background: var(--neutral-100);
    border-radius: 2px;
}

.action-items-list[b-cpccus69gx]::-webkit-scrollbar-thumb {
    background: var(--neutral-300);
    border-radius: 2px;
}

/* Action Item Row - Clean list style like External Links */
.action-item-row[b-cpccus69gx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--neutral-100);
    text-decoration: none;
    transition: all var(--transition-fast, 160ms ease);
}

.action-item-row:last-child[b-cpccus69gx] {
    border-bottom: none;
}

.action-item-row:hover[b-cpccus69gx] {
    background: var(--neutral-50);
    margin: 0 -0.5rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    border-radius: var(--radius-md, 8px);
}

.action-item-info[b-cpccus69gx] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 0;
}

.action-item-title[b-cpccus69gx] {
    font-size: 0.9375rem;
    font-weight: 600;
    line-height: 1.3;
}

/* Status-based colors for the title */
.status-draft[b-cpccus69gx] {
    color: var(--neutral-600);
}

.status-awaiting[b-cpccus69gx] {
    color: var(--warning-600);
}

.status-approved[b-cpccus69gx] {
    color: var(--success-600);
}

.status-default[b-cpccus69gx] {
    color: var(--brand-600);
}

.action-item-meta[b-cpccus69gx] {
    font-size: 0.75rem;
    color: var(--text-muted, #64748b);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.action-item-arrow[b-cpccus69gx] {
    color: var(--text-muted, #64748b);
    font-size: 0.875rem;
    flex-shrink: 0;
    transition: transform var(--transition-fast, 160ms ease);
}

.action-item-row:hover .action-item-arrow[b-cpccus69gx] {
    transform: translateX(2px);
    color: var(--text-secondary, #475569);
}

/* Empty State */
.empty-icon-sm[b-cpccus69gx] {
    width: 40px;
    height: 40px;
    margin: 0 auto;
    border-radius: 50%;
    background: var(--success-50);
    display: flex;
    align-items: center;
    justify-content: center;
}

.empty-icon-sm i[b-cpccus69gx] {
    font-size: 1.25rem;
    color: var(--success-500);
}

/* Skeleton loading */
.action-item-row:has(.skeleton)[b-cpccus69gx] {
    pointer-events: none;
}

/* /Components/Shared/BankDashboard/ActivityFeed.razor.rz.scp.css */
/* ========================================
   Activity Feed - Compact Timeline Design
   ======================================== */

/* Fade up animation for card */
@keyframes fadeUp-b-ffebt4gco8 {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInItem-b-ffebt4gco8 {
    from {
        opacity: 0;
        transform: translateX(-8px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.animate-fade-up[b-ffebt4gco8] {
    animation: fadeUp-b-ffebt4gco8 0.5s ease-out forwards;
    animation-delay: 200ms;
    opacity: 0;
}

/* Card Styles */
.team-activity-card[b-ffebt4gco8] {
    background: var(--bg-surface, #FFFFFF);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg, 12px);
    box-shadow: var(--shadow-xs);
    height: 100%;
}

.team-activity-card .card-subtitle[b-ffebt4gco8] {
    font-weight: 700;
    font-size: 1rem;
    color: var(--text-primary, #0F172A);
}

.team-activity-card .card-subtitle i[b-ffebt4gco8] {
    color: var(--text-muted, #64748B);
}

/* Activity badge */
.activity-badge[b-ffebt4gco8] {
    background: var(--neutral-100);
    color: var(--neutral-700);
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 0.75rem;
    border-radius: var(--radius-pill, 9999px);
    border: 1px solid var(--neutral-200);
}

/* ========================================
   Timeline Container
   ======================================== */

.activity-timeline[b-ffebt4gco8] {
    display: flex;
    flex-direction: column;
    gap: 0;
    max-height: 320px;
    overflow-y: auto;
    padding-right: 0.25rem;
}

.activity-timeline[b-ffebt4gco8]::-webkit-scrollbar {
    width: 4px;
}

.activity-timeline[b-ffebt4gco8]::-webkit-scrollbar-track {
    background: var(--neutral-100);
    border-radius: 2px;
}

.activity-timeline[b-ffebt4gco8]::-webkit-scrollbar-thumb {
    background: var(--neutral-300);
    border-radius: 2px;
}

/* ========================================
   Timeline Item
   ======================================== */

.timeline-item[b-ffebt4gco8] {
    display: flex;
    gap: 0;
    position: relative;
    animation: fadeInItem-b-ffebt4gco8 0.3s ease-out forwards;
    opacity: 0;
}

/* Staggered animations */
.timeline-item:nth-child(1)[b-ffebt4gco8] { animation-delay: 100ms; }
.timeline-item:nth-child(2)[b-ffebt4gco8] { animation-delay: 150ms; }
.timeline-item:nth-child(3)[b-ffebt4gco8] { animation-delay: 200ms; }
.timeline-item:nth-child(4)[b-ffebt4gco8] { animation-delay: 250ms; }
.timeline-item:nth-child(5)[b-ffebt4gco8] { animation-delay: 300ms; }
.timeline-item:nth-child(n+6)[b-ffebt4gco8] { animation-delay: 350ms; }

/* ========================================
   Timeline Icon Wrapper
   ======================================== */

.timeline-icon-wrapper[b-ffebt4gco8] {
    flex-shrink: 0;
    width: 40px;
    padding: 0.375rem 0;
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 2;
}

/* Dashed connecting line */
.timeline-item:not(:last-child) .timeline-icon-wrapper[b-ffebt4gco8]::after {
    content: '';
    position: absolute;
    left: 19px;
    top: 34px;
    bottom: -4px;
    width: 2px;
    background: transparent;
    border-left: 1px dashed var(--neutral-300);
}

/* ========================================
   Timeline Icon (Compact 28px)
   ======================================== */

.timeline-icon[b-ffebt4gco8] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    color: var(--neutral-600);
    flex-shrink: 0;
}

/* Icon Color Variants - Gradient backgrounds */
.timeline-icon.icon-brand[b-ffebt4gco8] {
    background: linear-gradient(135deg, #BFDBFE 0%, #DBEAFE 100%);
    color: #1D4ED8;
}

.timeline-icon.icon-success[b-ffebt4gco8] {
    background: linear-gradient(135deg, #86EFAC 0%, #BBF7D0 100%);
    color: #15803D;
}

.timeline-icon.icon-error[b-ffebt4gco8] {
    background: linear-gradient(135deg, #FCA5A5 0%, #FECACA 100%);
    color: var(--error-600);
}

.timeline-icon.icon-warning[b-ffebt4gco8] {
    background: linear-gradient(135deg, #FCD34D 0%, #FDE68A 100%);
    color: #B45309;
}

.timeline-icon.icon-info[b-ffebt4gco8] {
    background: linear-gradient(135deg, #C4B5FD 0%, #DDD6FE 100%);
    color: #7C3AED;
}

.timeline-icon.icon-default[b-ffebt4gco8] {
    background: linear-gradient(135deg, #CBD5E1 0%, #E2E8F0 100%);
    color: #475569;
}

/* ========================================
   Timeline Content
   ======================================== */

.timeline-content[b-ffebt4gco8] {
    flex: 1;
    min-width: 0;
    padding: 0.375rem 0 0.625rem 0;
}

.timeline-header[b-ffebt4gco8] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 0.125rem;
}

.timeline-user[b-ffebt4gco8] {
    font-weight: 600;
    font-size: 0.8125rem;
    color: var(--text-primary, #0F172A);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.timeline-time[b-ffebt4gco8] {
    font-size: 0.6875rem;
    color: var(--text-muted, #94A3B8);
    white-space: nowrap;
    flex-shrink: 0;
}

.timeline-action[b-ffebt4gco8] {
    font-size: 0.75rem;
    color: var(--text-secondary, #475569);
    line-height: 1.3;
}

.timeline-entity[b-ffebt4gco8] {
    font-size: 0.6875rem;
    color: var(--text-muted, #64748B);
    margin-top: 0.125rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ========================================
   Show More Button
   ======================================== */

.btn-show-more[b-ffebt4gco8] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 0.5rem;
    margin-top: 0.5rem;
    background: var(--neutral-50);
    border: 1px dashed var(--neutral-300);
    border-radius: var(--radius-md, 8px);
    color: var(--text-secondary, #475569);
    font-size: 0.75rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-show-more:hover[b-ffebt4gco8] {
    background: var(--neutral-100);
    border-color: var(--neutral-400);
    color: var(--text-primary, #0F172A);
}

/* ========================================
   Skeleton Loading States
   ======================================== */

.activity-feed[b-ffebt4gco8] {
    max-height: 320px;
    overflow-y: auto;
    padding-right: 0.25rem;
}

.activity-item-skeleton[b-ffebt4gco8] {
    border-bottom: 1px solid var(--neutral-100);
}

.activity-item-skeleton:last-child[b-ffebt4gco8] {
    border-bottom: none;
}

/* ========================================
   Empty State
   ======================================== */

.empty-state[b-ffebt4gco8] {
    padding: 2rem 1rem;
    text-align: center;
}

/* ========================================
   Responsive
   ======================================== */

@media (max-width: 767.98px) {
    .activity-timeline[b-ffebt4gco8] {
        max-height: 260px;
    }
    
    .timeline-header[b-ffebt4gco8] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.125rem;
    }
    
    .timeline-time[b-ffebt4gco8] {
        order: 2;
    }
}

/* /Components/Shared/BankDashboard/ApplicationTrendChart.razor.rz.scp.css */
/* Application Trend Chart - Professional Financial Styling */

/* Scale in animation */
@keyframes scaleIn-b-1ezhbv7urj {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.animate-scale-in[b-1ezhbv7urj] {
    animation: scaleIn-b-1ezhbv7urj 0.5s ease-out forwards;
    animation-delay: 150ms;
    opacity: 0;
}

.trend-chart-card[b-1ezhbv7urj] {
    background: var(--bg-surface, #FFFFFF);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg, 12px);
    box-shadow: var(--shadow-xs);
    transition: all var(--transition-base, 200ms ease);
    height: 400px;
}

.trend-chart-card:hover[b-1ezhbv7urj] {
    box-shadow: var(--shadow-md);
    border-color: var(--border-medium);
}

.trend-chart-card .card-body[b-1ezhbv7urj] {
    height: 100%;
    display: flex;
    flex-direction: column;
    padding: 1rem;
}

.chart-container[b-1ezhbv7urj] {
    position: relative;
    width: 100%;
    flex: 1;
}

/* /Components/Shared/BankDashboard/ClaimsSummaryCard.razor.rz.scp.css */
/* Claims Summary Card - Professional Financial Styling */

/* Fade in animation */
@keyframes fadeIn-b-b96q4qctr6 {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-fade-in[b-b96q4qctr6] {
    animation: fadeIn-b-b96q4qctr6 0.5s ease-out forwards;
    opacity: 0;
}

.claims-card[b-b96q4qctr6] {
    background: var(--bg-surface, #FFFFFF);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg, 12px);
    box-shadow: var(--shadow-xs);
    transition: all var(--transition-base, 200ms ease);
    height: 104px;
}

.claims-card:hover[b-b96q4qctr6] {
    box-shadow: var(--shadow-md);
    border-color: var(--border-medium);
}

.claims-card .card-body[b-b96q4qctr6] {
    height: 100%;
    padding: 0.75rem 1rem;
}

.claims-card .card-title[b-b96q4qctr6] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary, #1e293b);
    margin: 0;
}

.claims-card .card-subtitle-text[b-b96q4qctr6] {
    font-size: 0.8125rem;
    color: var(--text-muted, #64748b);
}

/* Claims Icon */
.claims-icon[b-b96q4qctr6] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.claims-icon-success[b-b96q4qctr6] {
    background: var(--success-50);
    color: var(--success-600);
}

.claims-icon-warning[b-b96q4qctr6] {
    background: var(--warning-50);
    color: var(--warning-600);
}

/* /Components/Shared/BankDashboard/DashboardSkeleton.razor.rz.scp.css */
.skeleton-block[b-pos8wql6l2] {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: skeleton-pulse-b-pos8wql6l2 1.5s ease-in-out infinite;
    border-radius: 4px;
}

@keyframes skeleton-pulse-b-pos8wql6l2 {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

/* /Components/Shared/BankDashboard/FeaturedApplicationCard.razor.rz.scp.css */
/* Featured Application Card - Premium widget styling */

/* Zoom in animation */
@keyframes zoomIn-b-nlueb5pu94 {
    from {
        opacity: 0;
        transform: scale(0.9);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.animate-zoom-in[b-nlueb5pu94] {
    animation: zoomIn-b-nlueb5pu94 0.4s ease-out forwards;
}

.featured-app-card[b-nlueb5pu94] {
    background: linear-gradient(135deg, var(--brand-50) 0%, var(--brand-100) 100%);
    border: 1px solid var(--brand-200);
    border-radius: var(--radius-lg, 12px);
    box-shadow: var(--shadow-sm), 0 0 0 1px rgba(0, 102, 166, 0.08);
    transition: all var(--transition-base, 200ms ease);
    overflow: hidden;
    height: 280px;
}

.featured-app-card:hover[b-nlueb5pu94] {
    box-shadow: var(--shadow-md), 0 0 0 1px rgba(0, 102, 166, 0.12);
    border-color: var(--brand-300);
    transform: translateY(-2px);
}

.featured-app-card .card-body[b-nlueb5pu94] {
    padding: 1rem;
    height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* Featured Label */
.featured-label[b-nlueb5pu94] {
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted, #64748b);
}

/* Status Badge */
.status-badge[b-nlueb5pu94] {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.625rem;
    border-radius: 9999px;
    font-size: 0.6875rem;
    font-weight: 600;
}

.status-in-review[b-nlueb5pu94] {
    background: var(--info-50);
    color: var(--info-600);
    border: 1px solid var(--info-200);
}

/* Featured Title */
.featured-title[b-nlueb5pu94] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary, #1e293b);
    margin: 0;
    line-height: 1.3;
}

/* Borrower Avatar */
.borrower-avatar[b-nlueb5pu94] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-600) 100%);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.6875rem;
    font-weight: 600;
    flex-shrink: 0;
}

/* Info Labels */
.info-label[b-nlueb5pu94] {
    font-size: 0.5625rem;
    font-weight: 500;
    color: var(--text-muted, #64748b);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.info-value[b-nlueb5pu94] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary, #1e293b);
    line-height: 1.3;
}

/* Amount Display - Styled like $3,274.94 */
.amount-display[b-nlueb5pu94] {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    line-height: 1;
}

.amount-currency[b-nlueb5pu94] {
    font-size: 0.625rem;
    font-weight: 600;
    color: var(--text-muted, #64748b);
    margin-top: 0.125rem;
    margin-right: 0.0625rem;
}

.amount-value[b-nlueb5pu94] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary, #1e293b);
}

/* Property Address */
.property-address[b-nlueb5pu94] {
    font-size: 0.875rem;
    color: var(--text-secondary, #475569);
    margin: 0;
}

.property-address i[b-nlueb5pu94] {
    color: var(--text-muted, #64748b);
}

/* Info Boxes Row */
.info-boxes-row[b-nlueb5pu94] {
    flex-wrap: wrap;
}

/* Info Box with Icon and Border */
.info-box-bordered[b-nlueb5pu94] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.5rem;
    background: rgba(255, 255, 255, 0.6);
    border: 1px dashed var(--brand-300);
    border-radius: var(--radius-md, 8px);
    flex: 1;
    min-width: 0;
}

.info-box-icon[b-nlueb5pu94] {
    width: 24px;
    height: 24px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    flex-shrink: 0;
}

.info-box-content[b-nlueb5pu94] {
    min-width: 0;
    overflow: hidden;
}

.info-box-value[b-nlueb5pu94] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary, #1e293b);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.info-box-label[b-nlueb5pu94] {
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--text-muted, #64748b);
    white-space: nowrap;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

/* Compact Info Box (for smaller card) */
.info-box-compact[b-nlueb5pu94] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.5rem;
    background: rgba(255, 255, 255, 0.6);
    border: 1px dashed var(--brand-300);
    border-radius: var(--radius-md, 8px);
    flex: 1;
    min-width: 0;
    overflow: hidden;
    cursor: default;
}

.info-box-compact i[b-nlueb5pu94] {
    font-size: 0.8125rem;
    color: var(--brand-600);
    flex-shrink: 0;
}

.info-box-compact .info-box-content[b-nlueb5pu94] {
    min-width: 0;
    flex: 1;
    overflow: hidden;
}

.info-box-compact .info-box-value[b-nlueb5pu94] {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-primary, #1e293b);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3;
}

.info-box-compact .info-box-label[b-nlueb5pu94] {
    font-size: 0.5625rem;
    font-weight: 500;
    color: var(--text-muted, #64748b);
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

/* Compact Detail Box */
.detail-box-compact[b-nlueb5pu94] {
    flex: 1;
    padding: 0.375rem 0.5rem;
    background: rgba(255, 255, 255, 0.6);
    border: 1px dashed var(--brand-300);
    border-radius: var(--radius-md, 8px);
    text-align: center;
}

.detail-box-compact .detail-value[b-nlueb5pu94] {
    font-size: 0.6875rem;
    font-weight: 700;
    color: var(--text-primary, #1e293b);
    line-height: 1.3;
}

.detail-box-compact .detail-label[b-nlueb5pu94] {
    font-size: 0.5625rem;
    color: var(--text-muted, #64748b);
    text-transform: uppercase;
}

/* Closing Date Row */
.closing-date-row[b-nlueb5pu94] {
    display: flex;
    align-items: center;
    font-size: 0.875rem;
    padding: 0.5rem 0;
    border-top: 1px solid var(--neutral-100);
}

/* Details Row (Closing Date & Est. Premium) */
.details-row[b-nlueb5pu94] {
    padding-top: 0.375rem;
    border-top: 1px solid var(--brand-200);
}

.detail-box[b-nlueb5pu94] {
    flex: 1;
    padding: 0.5rem 0.625rem;
    background: rgba(255, 255, 255, 0.6);
    border: 1px dashed var(--brand-300);
    border-radius: var(--radius-md, 8px);
    text-align: center;
}

.detail-value[b-nlueb5pu94] {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary, #1e293b);
}

.detail-label[b-nlueb5pu94] {
    font-size: 0.6875rem;
    color: var(--text-muted, #64748b);
    margin-top: 0.0625rem;
}

/* Date Boxes */
.date-box[b-nlueb5pu94] {
    flex: 1;
    padding: 0.75rem;
    background: var(--neutral-50);
    border-radius: var(--radius-md, 8px);
    text-align: center;
}

/* Date Boxes with Border (like design image) */
.date-box-bordered[b-nlueb5pu94] {
    flex: 1;
    padding: 0.75rem 1rem;
    background: transparent;
    border: 1px dashed var(--neutral-300);
    border-radius: var(--radius-md, 8px);
    text-align: center;
}

.date-value[b-nlueb5pu94] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--text-primary, #1e293b);
}

.date-label[b-nlueb5pu94] {
    font-size: 0.75rem;
    color: var(--text-muted, #64748b);
    margin-top: 0.125rem;
}

/* Avatar Stack (overlapping avatars) */
.avatar-stack[b-nlueb5pu94] {
    display: flex;
    align-items: center;
}

.stacked-avatar[b-nlueb5pu94] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.5625rem;
    font-weight: 600;
    border: 2px solid white;
    margin-left: -6px;
}

.stacked-avatar:first-child[b-nlueb5pu94] {
    margin-left: 0;
}

/* Underwriter Avatar */
.underwriter-avatar[b-nlueb5pu94] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--neutral-200);
    color: var(--text-secondary, #475569);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.6875rem;
    font-weight: 600;
}

/* View Link */
.view-link[b-nlueb5pu94] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--brand-600);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    transition: color var(--transition-base, 200ms ease);
}

.view-link:hover[b-nlueb5pu94] {
    color: var(--brand-700);
}

.view-link i[b-nlueb5pu94] {
    transition: transform var(--transition-base, 200ms ease);
}

.view-link:hover i[b-nlueb5pu94] {
    transform: translateX(2px);
}

/* Empty State */
.empty-icon[b-nlueb5pu94] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--neutral-100);
    color: var(--neutral-400);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
}

/* /Components/Shared/BankDashboard/PipelineMetricsRow.razor.rz.scp.css */
/* Pipeline Metrics Row - Financial Dashboard Style with Trend Indicators */

/* Card entrance animation */
@keyframes cardFadeInUp-b-q8jk4zd7hg {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-card[b-q8jk4zd7hg] {
    animation: cardFadeInUp-b-q8jk4zd7hg 0.4s ease-out forwards;
    opacity: 0;
}

.metric-card[b-q8jk4zd7hg] {
    display: flex;
    flex-direction: column;
    padding: 0.875rem;
    border-radius: var(--radius-lg, 12px);
    background: var(--bg-surface, #FFFFFF);
    border: 1px solid var(--border-light);
    box-shadow: var(--shadow-xs);
    transition: all var(--transition-fast, 160ms ease);
    cursor: pointer;
    min-height: 110px;
}

.metric-card:hover[b-q8jk4zd7hg] {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
    border-color: var(--border-medium);
}

.metric-card:focus[b-q8jk4zd7hg] {
    outline: none;
    box-shadow: var(--focus-ring, 0 0 0 3px var(--brand-200));
}

/* Small icon at top */
.metric-icon-small[b-q8jk4zd7hg] {
    width: 28px;
    height: 28px;
    border-radius: var(--radius-sm, 6px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    margin-bottom: 0.5rem;
}

/* Large value display */
.metric-value[b-q8jk4zd7hg] {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
    color: var(--text-primary, #0F172A);
    letter-spacing: -0.025em;
    margin-bottom: 0.125rem;
}

/* Label below value */
.metric-label[b-q8jk4zd7hg] {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-muted, #64748B);
    margin-bottom: 0.5rem;
}

/* Trend indicator at bottom */
.metric-trend[b-q8jk4zd7hg] {
    display: inline-flex;
    align-items: center;
    gap: 0.125rem;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.125rem 0.375rem;
    border-radius: var(--radius-pill, 9999px);
    width: fit-content;
}

.metric-trend i[b-q8jk4zd7hg] {
    font-size: 0.875rem;
}

.metric-trend.trend-positive[b-q8jk4zd7hg] {
    background: var(--success-50);
    color: var(--success-600);
}

.metric-trend.trend-negative[b-q8jk4zd7hg] {
    background: var(--error-50);
    color: var(--error-600);
}

.metric-trend.trend-neutral[b-q8jk4zd7hg] {
    background: var(--neutral-100);
    color: var(--neutral-500);
}

/* Metric card variants - icon colors */
.metric-card-draft .metric-icon-small[b-q8jk4zd7hg] {
    background: var(--neutral-100);
    color: var(--neutral-600);
}

.metric-card-submitted .metric-icon-small[b-q8jk4zd7hg] {
    background: var(--brand-50);
    color: var(--brand-600);
}

.metric-card-review .metric-icon-small[b-q8jk4zd7hg] {
    background: #F3E8FF;
    color: #7C3AED;
}

.metric-card-awaiting .metric-icon-small[b-q8jk4zd7hg] {
    background: var(--warning-50);
    color: var(--warning-600);
}

.metric-card-approved .metric-icon-small[b-q8jk4zd7hg] {
    background: var(--success-50);
    color: var(--success-600);
}

.metric-card-bound .metric-icon-small[b-q8jk4zd7hg] {
    background: #E0F2FE;
    color: #0284C7;
}

/* Skeleton state */
.metric-card-skeleton[b-q8jk4zd7hg] {
    padding: 0.875rem;
    min-height: 110px;
    border-radius: var(--radius-lg, 12px);
    background: var(--bg-surface, #FFFFFF);
    border: 1px solid var(--border-light);
}

/* Responsive adjustments */
@media (max-width: 767.98px) {
    .metric-card[b-q8jk4zd7hg] {
        padding: 0.75rem;
        min-height: 100px;
    }
    
    .metric-icon-small[b-q8jk4zd7hg] {
        width: 24px;
        height: 24px;
        font-size: 0.75rem;
        margin-bottom: 0.375rem;
    }
    
    .metric-value[b-q8jk4zd7hg] {
        font-size: 1.25rem;
    }
    
    .metric-label[b-q8jk4zd7hg] {
        font-size: 0.6875rem;
        margin-bottom: 0.375rem;
    }
    
    .metric-trend[b-q8jk4zd7hg] {
        font-size: 0.6875rem;
        padding: 0.125rem 0.25rem;
    }
}
/* /Components/Shared/BankDashboard/PolicySummaryCard.razor.rz.scp.css */
/* Policy Summary Card - Modern Financial Styling with Donut Chart */

/* Fade in animation */
@keyframes fadeIn-b-63zwjit4r5 {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-fade-in[b-63zwjit4r5] {
    animation: fadeIn-b-63zwjit4r5 0.5s ease-out forwards;
    opacity: 0;
}

.policy-card[b-63zwjit4r5] {
    background: var(--bg-surface, #FFFFFF);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg, 12px);
    box-shadow: var(--shadow-xs);
    transition: all var(--transition-base, 200ms ease);
    height: 280px;
}

.policy-card:hover[b-63zwjit4r5] {
    box-shadow: var(--shadow-md);
    border-color: var(--border-medium);
}

.policy-card .card-body[b-63zwjit4r5] {
    height: 100%;
    padding: 1rem;
}

/* Premium Amount */
.premium-amount[b-63zwjit4r5] {
    font-size: 2rem;
    font-weight: 700;
    color: var(--text-primary, #1e293b);
    line-height: 1;
    letter-spacing: -0.025em;
}

.premium-label[b-63zwjit4r5] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-muted, #64748B);
}

/* Trend Badge */
.trend-badge[b-63zwjit4r5] {
    display: inline-flex;
    align-items: center;
    gap: 0.125rem;
    padding: 0.125rem 0.5rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 600;
}

.trend-badge i[b-63zwjit4r5] {
    font-size: 0.875rem;
}

.trend-badge-positive[b-63zwjit4r5] {
    background: var(--success-50);
    color: var(--success-600);
}

.trend-badge-negative[b-63zwjit4r5] {
    background: var(--danger-50);
    color: var(--error-600);
}

.trend-badge-neutral[b-63zwjit4r5] {
    background: var(--neutral-100);
    color: var(--neutral-500);
}

/* Donut Chart */
.donut-chart-container[b-63zwjit4r5] {
    width: 80px;
    height: 80px;
    flex-shrink: 0;
}

.donut-chart[b-63zwjit4r5] {
    width: 100%;
    height: 100%;
    transform: rotate(-90deg);
}

/* Legend */
.chart-legend[b-63zwjit4r5] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.legend-item[b-63zwjit4r5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.legend-dot[b-63zwjit4r5] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
}

.legend-label[b-63zwjit4r5] {
    font-size: 0.8125rem;
    color: var(--text-muted, #64748B);
    flex-grow: 1;
}

.legend-value[b-63zwjit4r5] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary, #1e293b);
}

.empty-state[b-63zwjit4r5] {
    padding: 2.5rem 1.5rem;
    text-align: center;
}

/* /Components/Shared/BankDashboard/TeamActivityFeed.razor.rz.scp.css */
/* Team Activity Feed - Timeline Style */

/* Fade up animation for card */
@keyframes fadeUp-b-tzsqx1dxuj {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-fade-up[b-tzsqx1dxuj] {
    animation: fadeUp-b-tzsqx1dxuj 0.5s ease-out forwards;
    animation-delay: 200ms;
    opacity: 0;
}


.team-activity-card[b-tzsqx1dxuj] {
    background: var(--bg-surface, #FFFFFF);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg, 12px);
    box-shadow: var(--shadow-xs);
    height: 100%;
}

.team-activity-card .card-subtitle[b-tzsqx1dxuj] {
    font-weight: 700;
    font-size: 1rem;
    color: var(--text-primary, #0F172A);
}

.team-activity-card .card-subtitle i[b-tzsqx1dxuj] {
    color: var(--text-muted, #64748B);
}

/* Activity badge */
.activity-badge[b-tzsqx1dxuj] {
    background: var(--neutral-100);
    color: var(--neutral-700);
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 0.75rem;
    border-radius: var(--radius-pill, 9999px);
    border: 1px solid var(--neutral-200);
}

/* Timeline container */
.activity-timeline[b-tzsqx1dxuj] {
    max-height: 300px;
    overflow-y: auto;
    padding-left: 0.5rem;
}

.activity-timeline[b-tzsqx1dxuj]::-webkit-scrollbar {
    width: 4px;
}

.activity-timeline[b-tzsqx1dxuj]::-webkit-scrollbar-track {
    background: var(--neutral-100);
    border-radius: 2px;
}

.activity-timeline[b-tzsqx1dxuj]::-webkit-scrollbar-thumb {
    background: var(--neutral-300);
    border-radius: 2px;
}

/* Timeline item stagger animation */
@keyframes fadeInItem-b-tzsqx1dxuj {
    from {
        opacity: 0;
        transform: translateX(-10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Timeline item */
.timeline-item[b-tzsqx1dxuj] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem 0;
    position: relative;
    animation: fadeInItem-b-tzsqx1dxuj 0.3s ease-out forwards;
    opacity: 0;
}

.timeline-item:nth-child(1)[b-tzsqx1dxuj] { animation-delay: 300ms; }
.timeline-item:nth-child(2)[b-tzsqx1dxuj] { animation-delay: 400ms; }
.timeline-item:nth-child(3)[b-tzsqx1dxuj] { animation-delay: 500ms; }
.timeline-item:nth-child(4)[b-tzsqx1dxuj] { animation-delay: 600ms; }
.timeline-item:nth-child(5)[b-tzsqx1dxuj] { animation-delay: 700ms; }
.timeline-item:nth-child(n+6)[b-tzsqx1dxuj] { animation-delay: 800ms; }

/* Vertical line connecting markers */
.timeline-item:not(:last-child)[b-tzsqx1dxuj]::before {
    content: '';
    position: absolute;
    left: 5px;
    top: 28px;
    bottom: -8px;
    width: 2px;
    background: var(--neutral-200);
}

/* Timeline marker (dot) */
.timeline-marker[b-tzsqx1dxuj] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 4px;
    position: relative;
    z-index: 1;
}

.timeline-marker.marker-default[b-tzsqx1dxuj] {
    background: var(--neutral-400);
}

.timeline-marker.marker-brand[b-tzsqx1dxuj] {
    background: var(--brand-500);
}

.timeline-marker.marker-success[b-tzsqx1dxuj] {
    background: var(--success-500);
}

.timeline-marker.marker-error[b-tzsqx1dxuj] {
    background: var(--error-500);
}

.timeline-marker.marker-warning[b-tzsqx1dxuj] {
    background: var(--warning-500);
}

.timeline-marker.marker-info[b-tzsqx1dxuj] {
    background: #8B5CF6;
}

/* Timeline content */
.timeline-content[b-tzsqx1dxuj] {
    flex: 1;
    min-width: 0;
}

.timeline-user[b-tzsqx1dxuj] {
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--text-primary, #0F172A);
    margin-bottom: 0.125rem;
}

.timeline-action[b-tzsqx1dxuj] {
    font-size: 0.8125rem;
    color: var(--text-secondary, #475569);
}

.timeline-time[b-tzsqx1dxuj] {
    font-size: 0.75rem;
    color: var(--text-muted, #64748B);
    margin-top: 0.125rem;
}

/* Legacy styles for skeleton loading */
.dashboard-card[b-tzsqx1dxuj] {
    background: var(--bg-surface, #FFFFFF);
    border: 1px solid var(--border-light);
    border-radius: var(--radius-lg, 12px);
    box-shadow: var(--shadow-xs);
    transition: all var(--transition-base, 200ms ease);
}

.activity-feed[b-tzsqx1dxuj] {
    max-height: 320px;
    overflow-y: auto;
    padding-right: 0.25rem;
}

.activity-feed[b-tzsqx1dxuj]::-webkit-scrollbar {
    width: 4px;
}

.activity-feed[b-tzsqx1dxuj]::-webkit-scrollbar-track {
    background: var(--neutral-100);
    border-radius: 2px;
}

.activity-feed[b-tzsqx1dxuj]::-webkit-scrollbar-thumb {
    background: var(--neutral-300);
    border-radius: 2px;
}

.activity-item-skeleton[b-tzsqx1dxuj] {
    border-bottom: 1px solid var(--neutral-100);
}

.activity-item-skeleton:last-child[b-tzsqx1dxuj] {
    border-bottom: none;
}

.empty-state[b-tzsqx1dxuj] {
    padding: 2.5rem 1.5rem;
    text-align: center;
}

@media (max-width: 767.98px) {
    .activity-feed[b-tzsqx1dxuj] {
        max-height: 280px;
    }
}

/* /Components/Shared/BorrowerQuestionnaireStatusBadge.razor.rz.scp.css */
/* Feature 072 — BorrowerQuestionnaireStatusBadge. Visually subordinate to the application status
   badge it sits beside: smaller, lighter, and deliberately not pill-shaped, so a reader does not
   mistake the questionnaire's sub-state for the application's own status. */

.questionnaire-status-badge[b-i015jxzutp] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.125rem 0.5rem;
    border-radius: 4px;
    border: 1px solid transparent;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.4;
    white-space: nowrap;
}

.questionnaire-status-badge .bi[b-i015jxzutp] {
    font-size: 0.75rem;
    line-height: 1;
}

.questionnaire-notstarted[b-i015jxzutp] {
    background: var(--neutral-100);
    border-color: var(--neutral-200);
    color: var(--neutral-600);
}

.questionnaire-progress[b-i015jxzutp] {
    background: var(--info-50);
    border-color: var(--info-100);
    color: var(--info-800);
}

.questionnaire-complete[b-i015jxzutp] {
    background: var(--success-50);
    border-color: var(--success-100);
    color: var(--success-800);
}

.questionnaire-expired[b-i015jxzutp] {
    background: var(--error-50);
    border-color: var(--error-200);
    color: var(--error-700);
}
/* /Components/Shared/ConfirmationModal.razor.rz.scp.css */
/* Swal-style confirmation dialog — centered hero icon, centered text, centered actions.
   Pattern reference: the swal modals in ApplicationDetailPage.razor.css.
   Icon colors come from the global modal-icon-* classes (wwwroot/css/modal-theme.css). */

.modal-backdrop[b-75y6gsbidj] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    z-index: 1040;
    animation: fadeIn-b-75y6gsbidj 0.15s ease;
}

.modal-container[b-75y6gsbidj] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1.5rem;
    pointer-events: none;
}

.modal-container.show[b-75y6gsbidj] {
    pointer-events: auto;
}

.confirm-modal[b-75y6gsbidj] {
    background: #fff;
    border-radius: 16px;
    padding: 32px 28px 24px;
    max-width: 400px;
    width: 100%;
    max-height: 90vh;
    overflow-y: auto;
    text-align: center;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    animation: popIn-b-75y6gsbidj 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.confirm-icon[b-75y6gsbidj] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    font-size: 1.8rem;
}

.confirm-title[b-75y6gsbidj] {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
    margin: 0 0 12px;
}

.confirm-text[b-75y6gsbidj] {
    font-size: 0.85rem;
    color: #64748B;
    line-height: 1.5;
    margin: 0 0 24px;
}

/* Caller-supplied body (inputs, detail rows) reads left-aligned inside the centered card. */
.confirm-content[b-75y6gsbidj] {
    text-align: left;
    margin: 0 0 24px;
}

.confirm-text + .confirm-content[b-75y6gsbidj] {
    margin-top: -12px;
}

.confirm-content[b-75y6gsbidj]  .form-control,
.confirm-content[b-75y6gsbidj]  .form-select {
    border-radius: 10px;
    border-color: #E2E8F0;
}

.confirm-actions[b-75y6gsbidj] {
    display: flex;
    gap: 0.6rem;
    justify-content: center;
}

.confirm-actions .btn[b-75y6gsbidj] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0.55rem 1.15rem;
    border-radius: 10px;
    font-size: 0.85rem;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: all 0.15s;
    font-family: inherit;
}

.confirm-actions .btn:disabled[b-75y6gsbidj] {
    opacity: 0.5;
    cursor: not-allowed;
}

.confirm-actions .btn-cancel[b-75y6gsbidj] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.confirm-actions .btn-cancel:hover:not(:disabled)[b-75y6gsbidj] {
    background: #F1F5F9;
    color: #0F172A;
}

.confirm-actions .btn-primary[b-75y6gsbidj] {
    background: var(--brand-600, #004980);
    color: #fff;
}

.confirm-actions .btn-primary:hover:not(:disabled)[b-75y6gsbidj] {
    background: var(--brand-700, #003760);
}

.confirm-actions .btn-success[b-75y6gsbidj] {
    background: var(--success-600, #059669);
    color: #fff;
}

.confirm-actions .btn-success:hover:not(:disabled)[b-75y6gsbidj] {
    background: var(--success-700, #047857);
}

.confirm-actions .btn-danger[b-75y6gsbidj] {
    background: var(--error-600, #DC2626);
    color: #fff;
}

.confirm-actions .btn-danger:hover:not(:disabled)[b-75y6gsbidj] {
    background: var(--error-700, #B91C1C);
}

.confirm-actions .btn-warning[b-75y6gsbidj] {
    background: #D97706;
    color: #fff;
}

.confirm-actions .btn-warning:hover:not(:disabled)[b-75y6gsbidj] {
    background: #B45309;
}

@keyframes fadeIn-b-75y6gsbidj {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes popIn-b-75y6gsbidj {
    from { opacity: 0; transform: scale(0.85); }
    to { opacity: 1; transform: scale(1); }
}

@media (max-width: 576px) {
    .confirm-actions[b-75y6gsbidj] {
        flex-direction: column;
    }

    .confirm-actions .btn[b-75y6gsbidj] {
        width: 100%;
        justify-content: center;
    }
}
/* /Components/Shared/DeleteConfirmationModal.razor.rz.scp.css */
/* Canonical LP3 modal look — .modal-content/.modal-footer base comes from
   wwwroot/css/modal-theme.css; only the delete-specific accents live here. */

.modal.show[b-ukhjcy3ay6] {
    animation: modalFadeIn-b-ukhjcy3ay6 0.2s ease-out;
}

/* Centered hero icon (this modal is headerless by design) */
.delete-icon-wrapper[b-ukhjcy3ay6] {
    display: flex;
    justify-content: center;
}

.delete-icon-bg[b-ukhjcy3ay6] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--error-50, #FEF2F2);
    display: flex;
    align-items: center;
    justify-content: center;
    animation: deleteIconPulse-b-ukhjcy3ay6 0.3s ease-out;
}

.delete-icon-bg i[b-ukhjcy3ay6] {
    font-size: 28px;
    color: var(--error-600, #DC2626);
}

/* Swal-style actions — centered under the message, no footer strip */
.modal-footer[b-ukhjcy3ay6] {
    justify-content: center;
    background: #fff;
    border-top: none;
    padding: 0 1.5rem 1.5rem;
}

.modal-footer .btn[b-ukhjcy3ay6] {
    border-radius: 10px;
    font-weight: 600;
    padding: 0.55rem 1.15rem;
}

.modal-footer .btn-outline-secondary[b-ukhjcy3ay6] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.modal-footer .btn-outline-secondary:hover:not(:disabled)[b-ukhjcy3ay6] {
    background: #F1F5F9;
    color: #0F172A;
    border-color: #E2E8F0;
}

.modal-footer .btn-danger[b-ukhjcy3ay6] {
    background: var(--error-600, #DC2626);
    border-color: var(--error-600, #DC2626);
    color: #fff;
}

.modal-footer .btn-danger:hover:not(:disabled)[b-ukhjcy3ay6] {
    background: var(--error-700, #B91C1C);
    border-color: var(--error-700, #B91C1C);
}

.modal-footer .btn:disabled[b-ukhjcy3ay6] {
    opacity: 0.5;
    cursor: not-allowed;
}

@keyframes modalFadeIn-b-ukhjcy3ay6 {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes deleteIconPulse-b-ukhjcy3ay6 {
    from {
        transform: scale(0.8);
        opacity: 0;
    }
    to {
        transform: scale(1);
        opacity: 1;
    }
}

/* Typed-confirmation fields (feature 052). The modal body is centered by design; these
   left-align so the labels and inputs read as a form rather than as more prose. The column
   width comes from .confirm-measure in wwwroot/css/modal-theme.css, shared with the message
   and the caller's BodyContent so all three line up. */
.confirm-inputs code[b-ukhjcy3ay6] {
    background: var(--error-50, #FEF2F2);
    color: var(--error-600, #DC2626);
    padding: 0.05rem 0.3rem;
    border-radius: 4px;
    font-weight: 600;
}

.confirm-inputs .form-control:focus[b-ukhjcy3ay6] {
    border-color: var(--error-600, #DC2626);
    box-shadow: 0 0 0 0.2rem rgba(220, 38, 38, 0.15);
}

/* Responsive adjustments */
@media (max-width: 576px) {
    .modal-dialog[b-ukhjcy3ay6] {
        margin: 0.5rem;
    }
}
/* /Components/Shared/DocumentReviewModal.razor.rz.scp.css */
/* Carried over with the markup from ApplicationDocumentsTab.razor.css so the extracted modal looks
   identical. The tab keeps its own copies because its other modals (upload, share, delete) still use
   the shared .modal-overlay / .modal-header / .modal-footer shells. */

.modal-overlay[b-ju46xpnro4] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1.5rem;
}

.review-modal[b-ju46xpnro4] {
    width: 100%;
    max-width: 500px;
    max-height: 90vh;
    background: white;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    animation: modalSlideIn-b-ju46xpnro4 0.3s ease-out;
    overflow: hidden;
}

@keyframes modalSlideIn-b-ju46xpnro4 {
    from {
        opacity: 0;
        transform: translateY(-20px) scale(0.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.modal-header[b-ju46xpnro4] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 1px solid #EEF2F6;
    background: #fff;
    border-radius: 16px 16px 0 0;
}

.modal-header h3[b-ju46xpnro4] {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    font-size: 1.05rem;
    font-weight: 700;
    margin: 0;
    align-self: center;
    color: #0F172A;
}

.btn-close-modal[b-ju46xpnro4] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    color: var(--text-muted, #94a3b8);
    border-radius: 8px;
    cursor: pointer;
    flex-shrink: 0;
}

.btn-close-modal:hover[b-ju46xpnro4] {
    background: #F1F5F9;
    color: #0F172A;
}

.modal-body[b-ju46xpnro4] {
    flex: 1;
    overflow-y: auto;
    padding: 1.15rem 1.5rem;
}

.modal-footer[b-ju46xpnro4] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

.review-document-info[b-ju46xpnro4] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: var(--neutral-50);
    border-radius: 10px;
    margin-bottom: 1.25rem;
}

.review-doc-icon[b-ju46xpnro4] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border-radius: 10px;
    font-size: 1.25rem;
    color: var(--brand-500);
}

.review-doc-name[b-ju46xpnro4] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary, #0f172a);
}

.review-doc-meta[b-ju46xpnro4] {
    font-size: 0.8125rem;
    color: var(--text-muted, #94a3b8);
}

.review-notes-input label[b-ju46xpnro4] {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.5rem;
}

.review-notes-input textarea[b-ju46xpnro4] {
    width: 100%;
    padding: 0.75rem;
    border: 1px solid var(--border-light);
    border-radius: 8px;
    font-size: 0.875rem;
    resize: vertical;
}

.review-notes-input textarea:focus[b-ju46xpnro4] {
    outline: none;
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.btn-cancel[b-ju46xpnro4] {
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
    border-radius: 10px;
    cursor: pointer;
}

.btn-cancel:hover[b-ju46xpnro4] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-approve-submit[b-ju46xpnro4],
.btn-reject-submit[b-ju46xpnro4] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 1.15rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: white;
    border: none;
    border-radius: 10px;
    cursor: pointer;
}

.btn-approve-submit[b-ju46xpnro4] {
    background: var(--success-600, #059669);
}

.btn-approve-submit:hover:not(:disabled)[b-ju46xpnro4] {
    background: var(--success-700, #047857);
}

.btn-reject-submit[b-ju46xpnro4] {
    background: var(--error-600, #DC2626);
}

.btn-reject-submit:hover:not(:disabled)[b-ju46xpnro4] {
    background: var(--error-700, #B91C1C);
}

.btn-approve-submit:disabled[b-ju46xpnro4],
.btn-reject-submit:disabled[b-ju46xpnro4] {
    background: var(--neutral-300);
    cursor: not-allowed;
}
/* /Components/Shared/DocumentUploader.razor.rz.scp.css */
/* Document Uploader - Compact & Light */

.document-uploader-compact[b-qv0521zhw9] {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

/* Enhanced Type Selector */
.type-selector-enhanced[b-qv0521zhw9] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.type-label[b-qv0521zhw9] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.type-label i[b-qv0521zhw9] {
    font-size: 0.875rem;
    color: var(--brand-500);
}

.type-dropdown[b-qv0521zhw9] {
    position: relative;
    z-index: 100;
}

.dropdown-toggle-custom[b-qv0521zhw9] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 8px;
    padding: 0.625rem 0.875rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.dropdown-toggle-custom:hover[b-qv0521zhw9] {
    border-color: var(--brand-300);
    background: var(--bg-hover, #f8fafc);
}

.dropdown-toggle-custom:focus[b-qv0521zhw9] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.selected-type[b-qv0521zhw9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
}

.selected-type i[b-qv0521zhw9] {
    font-size: 1rem;
    color: var(--brand-500);
}

.chevron-icon[b-qv0521zhw9] {
    font-size: 0.75rem;
    color: var(--text-muted, #94a3b8);
    transition: transform 0.2s ease;
}

.chevron-icon.rotated[b-qv0521zhw9] {
    transform: rotate(180deg);
}

.dropdown-menu-custom[b-qv0521zhw9] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 10px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    max-height: 320px;
    overflow-y: auto;
    z-index: 9999;
    padding: 0.5rem;
}

.dropdown-menu-custom[b-qv0521zhw9]::-webkit-scrollbar {
    width: 6px;
}

.dropdown-menu-custom[b-qv0521zhw9]::-webkit-scrollbar-track {
    background: transparent;
}

.dropdown-menu-custom[b-qv0521zhw9]::-webkit-scrollbar-thumb {
    background: var(--border-light);
    border-radius: 3px;
}

.dropdown-group-header[b-qv0521zhw9] {
    font-size: 0.6875rem;
    font-weight: 700;
    color: var(--text-muted, #94a3b8);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 0.5rem 0.75rem 0.25rem;
    margin-top: 0.25rem;
}

.dropdown-group-header:first-child[b-qv0521zhw9] {
    margin-top: 0;
}

.dropdown-item-custom[b-qv0521zhw9] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.5rem 0.75rem;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.dropdown-item-custom:hover[b-qv0521zhw9] {
    background: var(--bg-hover, #f1f5f9);
}

.dropdown-item-custom.active[b-qv0521zhw9] {
    background: var(--brand-50);
}

.dropdown-item-custom .item-icon[b-qv0521zhw9] {
    font-size: 1rem;
    color: var(--text-muted, #94a3b8);
    width: 1.25rem;
    text-align: center;
}

.dropdown-item-custom:hover .item-icon[b-qv0521zhw9],
.dropdown-item-custom.active .item-icon[b-qv0521zhw9] {
    color: var(--brand-500);
}

.dropdown-item-custom .item-content[b-qv0521zhw9] {
    flex: 1;
    min-width: 0;
}

.dropdown-item-custom .item-name[b-qv0521zhw9] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary, #0f172a);
    display: block;
}

.dropdown-item-custom .item-desc[b-qv0521zhw9] {
    font-size: 0.6875rem;
    color: var(--text-muted, #94a3b8);
    display: block;
    margin-top: 1px;
}

.dropdown-item-custom .check-icon[b-qv0521zhw9] {
    font-size: 0.875rem;
    color: var(--brand-500);
}

/* Compact Drop Zone */
.drop-zone-compact[b-qv0521zhw9] {
    border: 1.5px dashed rgba(0, 0, 0, 0.15);
    border-radius: 8px;
    padding: 0.75rem;
    text-align: center;
    background: rgba(15, 23, 42, 0.02);
    transition: all 0.2s ease;
    cursor: pointer;
}

.drop-zone-compact:hover[b-qv0521zhw9] {
    border-color: rgba(15, 23, 42, 0.2);
    background: rgba(15, 23, 42, 0.04);
}

.drop-zone-compact.dragging[b-qv0521zhw9] {
    border-color: rgba(15, 23, 42, 0.35);
    border-style: solid;
    background: rgba(15, 23, 42, 0.08);
}

.drop-zone-content-compact[b-qv0521zhw9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.375rem;
}

/* Compact Upload Icon */
.upload-icon-compact[b-qv0521zhw9] {
    font-size: 1.5rem;
    color: rgba(15, 23, 42, 0.35);
    transition: all 0.2s ease;
}

.drop-zone-compact:hover .upload-icon-compact[b-qv0521zhw9] {
    color: rgba(15, 23, 42, 0.5);
}

/* Drop Zone Text */
.drop-zone-text[b-qv0521zhw9] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    color: rgba(0, 0, 0, 0.7);
}

.drop-text-main[b-qv0521zhw9] {
    font-weight: 500;
}

.btn-browse-compact[b-qv0521zhw9] {
    color: rgba(15, 23, 42, 0.7);
    font-weight: 600;
    cursor: pointer;
    text-decoration: underline;
    transition: all 0.2s ease;
}

.btn-browse-compact:hover[b-qv0521zhw9] {
    color: rgba(15, 23, 42, 0.8);
}

.drop-zone-hint[b-qv0521zhw9] {
    font-size: 0.6875rem;
    color: rgba(0, 0, 0, 0.5);
}

/* File Actions Compact */
.file-actions-compact[b-qv0521zhw9] {
    background: rgba(0, 0, 0, 0.02);
    border: 1px solid rgba(0, 0, 0, 0.06);
    border-radius: 6px;
    padding: 0.5rem;
}

.file-count-compact[b-qv0521zhw9] {
    font-size: 0.75rem;
    font-weight: 600;
    color: rgba(0, 0, 0, 0.7);
    margin-bottom: 0.375rem;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.file-count-compact i[b-qv0521zhw9] {
    font-size: 0.875rem;
    color: rgba(15, 23, 42, 0.4);
}

/* Progress Compact */
.progress-compact[b-qv0521zhw9] {
    height: 3px;
    background: rgba(0, 0, 0, 0.1);
    border-radius: 3px;
    overflow: hidden;
    margin-bottom: 0.5rem;
}

.progress-bar-compact[b-qv0521zhw9] {
    height: 100%;
    background: linear-gradient(90deg, rgba(15, 23, 42, 0.4) 0%, rgba(15, 23, 42, 0.6) 100%);
    animation: progressAnimation-b-qv0521zhw9 1.5s infinite;
}

@keyframes progressAnimation-b-qv0521zhw9 {
    0% { width: 0%; }
    50% { width: 70%; }
    100% { width: 100%; }
}

/* Button Group Compact */
.btn-group-compact[b-qv0521zhw9] {
    display: flex;
    gap: 0.375rem;
}

.btn-upload-compact[b-qv0521zhw9] {
    flex: 1;
    background: rgba(16, 185, 129, 0.1);
    border: 1px solid rgba(16, 185, 129, 0.2);
    color: #059669;
    padding: 0.375rem 0.75rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
}

.btn-upload-compact:hover:not(:disabled)[b-qv0521zhw9] {
    background: rgba(16, 185, 129, 0.15);
    border-color: rgba(16, 185, 129, 0.3);
}

.btn-upload-compact:disabled[b-qv0521zhw9] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-clear-compact[b-qv0521zhw9] {
    background: transparent;
    border: 1px solid rgba(0, 0, 0, 0.1);
    color: rgba(0, 0, 0, 0.6);
    padding: 0.375rem 0.625rem;
    border-radius: 6px;
    font-size: 0.875rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-clear-compact:hover[b-qv0521zhw9] {
    background: rgba(0, 0, 0, 0.03);
    border-color: rgba(0, 0, 0, 0.15);
}

/* Spinner */
.spinner-sm[b-qv0521zhw9] {
    display: inline-block;
    width: 0.75rem;
    height: 0.75rem;
    border: 2px solid rgba(5, 150, 105, 0.2);
    border-top-color: #059669;
    border-radius: 50%;
    animation: spin-b-qv0521zhw9 0.6s linear infinite;
}

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

/* Alert Compact */
.alert-compact[b-qv0521zhw9] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.625rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
}

.alert-compact.success[b-qv0521zhw9] {
    background: rgba(16, 185, 129, 0.1);
    border: 1px solid rgba(16, 185, 129, 0.2);
    color: #059669;
}

.alert-compact.error[b-qv0521zhw9] {
    background: rgba(239, 68, 68, 0.1);
    border: 1px solid rgba(239, 68, 68, 0.2);
    color: var(--error-600);
}

.alert-compact i[b-qv0521zhw9] {
    font-size: 0.875rem;
}

/* Responsive */
@media (max-width: 576px) {
    .drop-zone-compact[b-qv0521zhw9] {
        padding: 0.625rem;
    }

    .upload-icon-compact[b-qv0521zhw9] {
        font-size: 1.25rem;
    }

    .drop-zone-text[b-qv0521zhw9] {
        font-size: 0.6875rem;
    }
}

/* Auto-Share Toggle */
.auto-share-toggle[b-qv0521zhw9] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    background: var(--bg-subtle, #f8fafc);
    border: 1px solid var(--border-light);
    border-radius: 8px;
}

.toggle-switch[b-qv0521zhw9] {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 22px;
    flex-shrink: 0;
}

.toggle-switch input[b-qv0521zhw9] {
    opacity: 0;
    width: 0;
    height: 0;
}

.toggle-slider[b-qv0521zhw9] {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--gray-300, #cbd5e1);
    transition: 0.3s;
    border-radius: 22px;
}

.toggle-slider[b-qv0521zhw9]:before {
    position: absolute;
    content: "";
    height: 16px;
    width: 16px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    transition: 0.3s;
    border-radius: 50%;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.toggle-switch input:checked + .toggle-slider[b-qv0521zhw9] {
    background-color: var(--brand-500);
}

.toggle-switch input:checked + .toggle-slider[b-qv0521zhw9]:before {
    transform: translateX(18px);
}

.toggle-switch input:focus + .toggle-slider[b-qv0521zhw9] {
    box-shadow: 0 0 0 2px var(--brand-100);
}

.toggle-label-content[b-qv0521zhw9] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.toggle-label-text[b-qv0521zhw9] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary, #1e293b);
}

.toggle-label-desc[b-qv0521zhw9] {
    font-size: 0.6875rem;
    color: var(--text-secondary, #64748b);
}

/* Signature Options Section */
.signature-options-section[b-qv0521zhw9] {
    animation: slideDown-b-qv0521zhw9 0.2s ease-out;
}

@keyframes slideDown-b-qv0521zhw9 {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.signature-toggle[b-qv0521zhw9] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem;
    background: linear-gradient(135deg, #fefce8 0%, #fef9c3 100%);
    border: 1px solid #fde047;
    border-radius: 8px;
    margin-bottom: 0.75rem;
}

.signature-toggle .toggle-label-text[b-qv0521zhw9] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    color: #854d0e;
}

.signature-toggle .toggle-label-text i[b-qv0521zhw9] {
    color: #ca8a04;
}

.signature-toggle .toggle-label-desc[b-qv0521zhw9] {
    color: #a16207;
}

.toggle-slider.signature-slider[b-qv0521zhw9] {
    background-color: #fcd34d;
}

.toggle-switch input:checked + .toggle-slider.signature-slider[b-qv0521zhw9] {
    background-color: #ca8a04;
}

/* Signer Config Panel */
.signer-config-panel[b-qv0521zhw9] {
    background: white;
    border: 1px solid var(--border-light);
    border-radius: 10px;
    padding: 1rem 1.25rem;
    animation: slideDown-b-qv0521zhw9 0.25s ease-out;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.config-label[b-qv0521zhw9] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    margin-bottom: 0.625rem;
}

.config-label i[b-qv0521zhw9] {
    color: var(--brand-500);
}

/* Signers Section */
.signers-section[b-qv0521zhw9] {
    margin-bottom: 1rem;
}

/* New unified signer edit item style (matching Request Signature modal) */
.signer-edit-item[b-qv0521zhw9] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.875rem;
    background: var(--neutral-50);
    border-radius: 10px;
    margin-bottom: 0.625rem;
    border: 1px solid var(--border-light);
    transition: all 0.2s ease;
}

.signer-edit-item:hover[b-qv0521zhw9] {
    background: white;
    border-color: var(--brand-200);
    box-shadow: 0 2px 8px rgba(59, 130, 246, 0.08);
}

.signer-edit-item.primary[b-qv0521zhw9] {
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border: 1px solid #93c5fd;
}

.signer-order-badge[b-qv0521zhw9] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--brand-500);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 600;
    flex-shrink: 0;
    margin-top: 0.35rem;
    box-shadow: 0 2px 4px rgba(59, 130, 246, 0.3);
}

.signer-edit-item.primary .signer-order-badge[b-qv0521zhw9] {
    background: #1d4ed8;
}

.signer-fields[b-qv0521zhw9] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    flex: 1;
}

.signer-type-name-row[b-qv0521zhw9] {
    display: flex;
    gap: 0.5rem;
}

.signer-type-badge[b-qv0521zhw9] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 0.75rem;
    background: #dbeafe;
    color: #1d4ed8;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    border-radius: 8px;
    flex-shrink: 0;
    min-width: 80px;
}

.signer-fields select[b-qv0521zhw9],
.signer-fields input[b-qv0521zhw9] {
    font-size: 0.85rem;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-light);
    border-radius: 8px;
    transition: all 0.15s ease;
}

.signer-fields select:focus[b-qv0521zhw9],
.signer-fields input:focus[b-qv0521zhw9] {
    outline: none;
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.signer-fields input[readonly][b-qv0521zhw9] {
    background: var(--neutral-100);
    color: var(--text-secondary, #64748b);
    cursor: default;
}

.signer-type-select[b-qv0521zhw9] {
    width: 130px;
    flex-shrink: 0;
    background: white;
}

.signer-name-input[b-qv0521zhw9] {
    flex: 1;
    min-width: 100px;
}

.signer-email-input[b-qv0521zhw9] {
    width: 100%;
}

/* Validation styles */
.input-invalid[b-qv0521zhw9] {
    border-color: var(--error-500) !important;
    background-color: #fef2f2 !important;
}

.input-invalid:focus[b-qv0521zhw9] {
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1) !important;
}

.validation-error[b-qv0521zhw9] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.7rem;
    color: var(--error-600);
    margin-top: 0.125rem;
}

.validation-error i[b-qv0521zhw9] {
    font-size: 0.65rem;
}

.validation-errors[b-qv0521zhw9] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.btn-remove-signer[b-qv0521zhw9] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    margin-top: 0.35rem;
    flex-shrink: 0;
    padding: 0;
    background: transparent;
    border: 1px solid var(--error-200);
    color: var(--error-500);
    cursor: pointer;
    border-radius: 8px;
    transition: all 0.2s ease;
}

.btn-remove-signer:hover[b-qv0521zhw9] {
    background: #fee2e2;
    border-color: var(--error-400);
    color: var(--error-600);
}

.btn-add-signer[b-qv0521zhw9] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    width: 100%;
    padding: 0.5rem;
    background: transparent;
    border: 1px dashed var(--border-light);
    border-radius: 6px;
    color: var(--brand-600);
    font-size: 0.8rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-add-signer:hover:not(:disabled)[b-qv0521zhw9] {
    border-color: var(--brand-500);
    color: var(--brand-500);
    background: var(--brand-50);
}

.btn-add-signer:disabled[b-qv0521zhw9] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Signing Mode Section - Compact Chip Style */
.signing-mode-selection.compact[b-qv0521zhw9] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 0;
    border-top: 1px solid var(--border-light);
    margin-top: 0.5rem;
    flex-wrap: wrap;
}

.signing-mode-label[b-qv0521zhw9] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary, #64748b);
    white-space: nowrap;
}

.signing-mode-options-compact[b-qv0521zhw9] {
    display: flex;
    gap: 0.5rem;
}

.signing-mode-chip[b-qv0521zhw9] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border: 1px solid var(--border-light);
    border-radius: 20px;
    cursor: pointer;
    transition: all 0.2s ease;
    background: white;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary, #64748b);
}

.signing-mode-chip:hover[b-qv0521zhw9] {
    border-color: var(--brand-300);
    background: var(--brand-50);
    color: var(--brand-600);
}

.signing-mode-chip.selected[b-qv0521zhw9] {
    border-color: var(--brand-500);
    background: var(--brand-500);
    color: white;
}

.signing-mode-chip input[b-qv0521zhw9] {
    display: none;
}

.signing-mode-chip i[b-qv0521zhw9] {
    font-size: 0.875rem;
}

.signing-mode-chip .chip-title[b-qv0521zhw9] {
    font-weight: 500;
}

.signing-mode-chip .chip-subtitle[b-qv0521zhw9] {
    font-size: 0.7rem;
    opacity: 0.8;
    font-weight: 400;
}

.signing-mode-chip.selected .chip-subtitle[b-qv0521zhw9] {
    opacity: 0.9;
}

/* Legacy styles (keeping for backward compatibility) */
.signing-mode-section[b-qv0521zhw9] {
    margin-bottom: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border-light);
}

.signing-mode-options[b-qv0521zhw9] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.5rem;
}

.mode-option[b-qv0521zhw9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 0.75rem 0.5rem;
    background: var(--bg-subtle, #f8fafc);
    border: 2px solid transparent;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    text-align: center;
}

.mode-option:hover[b-qv0521zhw9] {
    background: var(--bg-hover, #f1f5f9);
}

.mode-option.selected[b-qv0521zhw9] {
    background: var(--brand-50);
    border-color: var(--brand-500);
}

.mode-option input[b-qv0521zhw9] {
    position: absolute;
    opacity: 0;
}

.mode-option i[b-qv0521zhw9] {
    font-size: 1.25rem;
    color: var(--text-muted, #94a3b8);
}

.mode-option.selected i[b-qv0521zhw9] {
    color: var(--brand-500);
}

.mode-option span[b-qv0521zhw9] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-primary, #1e293b);
}

.mode-option small[b-qv0521zhw9] {
    font-size: 0.625rem;
    color: var(--text-secondary, #64748b);
}

/* Send Option Section */
.send-option-section[b-qv0521zhw9] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 0.75rem;
    background: var(--bg-subtle, #f8fafc);
    border-radius: 8px;
}

.toggle-switch-small[b-qv0521zhw9] {
    position: relative;
    display: inline-block;
    width: 32px;
    height: 18px;
    flex-shrink: 0;
}

.toggle-switch-small input[b-qv0521zhw9] {
    opacity: 0;
    width: 0;
    height: 0;
}

.toggle-slider-small[b-qv0521zhw9] {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--gray-300, #cbd5e1);
    transition: 0.3s;
    border-radius: 18px;
}

.toggle-slider-small[b-qv0521zhw9]:before {
    position: absolute;
    content: "";
    height: 14px;
    width: 14px;
    left: 2px;
    bottom: 2px;
    background-color: white;
    transition: 0.3s;
    border-radius: 50%;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.toggle-switch-small input:checked + .toggle-slider-small[b-qv0521zhw9] {
    background-color: var(--brand-500);
}

.toggle-switch-small input:checked + .toggle-slider-small[b-qv0521zhw9]:before {
    transform: translateX(14px);
}

.send-option-label[b-qv0521zhw9] {
    font-size: 0.75rem;
    color: var(--text-secondary, #64748b);
}

/* Signature Draft Info Box */
.signature-draft-info[b-qv0521zhw9] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.625rem 0.75rem;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-radius: 8px;
    font-size: 0.75rem;
    color: #1d4ed8;
    line-height: 1.4;
}

.signature-draft-info i[b-qv0521zhw9] {
    font-size: 0.875rem;
    color: #3b82f6;
    flex-shrink: 0;
    margin-top: 0.0625rem;
}

.signature-draft-info strong[b-qv0521zhw9] {
    font-weight: 600;
}

/* Disabled state for document type dropdown (when preselected) */
.type-dropdown.disabled[b-qv0521zhw9] {
    pointer-events: none;
}

.type-dropdown.disabled .dropdown-toggle-custom[b-qv0521zhw9] {
    background: var(--neutral-100);
    border-color: var(--neutral-200);
    cursor: not-allowed;
    opacity: 0.85;
}

.type-dropdown.disabled .dropdown-toggle-custom:hover[b-qv0521zhw9] {
    border-color: var(--neutral-200);
    background: var(--neutral-100);
}

.type-dropdown.disabled .selected-type[b-qv0521zhw9] {
    color: var(--text-secondary, #64748b);
}

/* Disabled state for auto-share toggle (when preselected) */
.auto-share-toggle.locked[b-qv0521zhw9] {
    opacity: 0.85;
}

.auto-share-toggle.locked .toggle-switch[b-qv0521zhw9] {
    pointer-events: none;
}

.auto-share-toggle.locked .toggle-switch.disabled .toggle-slider[b-qv0521zhw9] {
    cursor: not-allowed;
}

.auto-share-toggle.locked .toggle-label-text .text-muted[b-qv0521zhw9] {
    font-size: 0.75rem;
    font-weight: 400;
}
/* /Components/Shared/EnhancedReferralPanel.razor.rz.scp.css */
/* Enhanced Referral Card - Dashboard Theme */
.enhanced-referral-card[b-3zmaz4tfoe] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    transition: all 0.2s ease;
}

.enhanced-referral-card:hover[b-3zmaz4tfoe] {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

/* Border Colors */
.enhanced-referral-card.referral-border[b-3zmaz4tfoe] {
    border-left: 4px solid #d97706;
}

.enhanced-referral-card.standard-border[b-3zmaz4tfoe] {
    border-left: 4px solid #059669;
}

/* Card Header */
.enhanced-referral-card .card-header[b-3zmaz4tfoe] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    padding: 0;
    border: none;
    background: transparent;
}

.enhanced-referral-card .card-title[b-3zmaz4tfoe] {
    font-size: 14px;
    font-weight: 600;
    color: #374151;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.enhanced-referral-card .card-title i[b-3zmaz4tfoe] {
    color: #d97706;
}

.enhanced-referral-card .ai-badge[b-3zmaz4tfoe] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 600;
    color: var(--brand-500);
    background: #dbeafe;
    padding: 4px 10px;
    border-radius: 12px;
}

.enhanced-referral-card .rule-badge[b-3zmaz4tfoe] {
    font-size: 11px;
    font-weight: 600;
    color: #6b7280;
    background: #f3f4f6;
    padding: 4px 10px;
    border-radius: 12px;
}

/* Risk Header */
.enhanced-referral-card .risk-header[b-3zmaz4tfoe] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px;
    border-radius: 12px;
    margin-bottom: 16px;
}

.enhanced-referral-card .risk-header.referral[b-3zmaz4tfoe] {
    background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
}

.enhanced-referral-card .risk-header.standard[b-3zmaz4tfoe] {
    background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%);
}

.enhanced-referral-card .risk-score-container[b-3zmaz4tfoe] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.enhanced-referral-card .risk-score-circle[b-3zmaz4tfoe] {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 3px solid currentColor;
    flex-shrink: 0;
}

.enhanced-referral-card .risk-score-circle.score-low[b-3zmaz4tfoe] {
    color: #059669;
    background: rgba(5, 150, 105, 0.1);
}

.enhanced-referral-card .risk-score-circle.score-medium[b-3zmaz4tfoe] {
    color: #d97706;
    background: rgba(217, 119, 6, 0.1);
}

.enhanced-referral-card .risk-score-circle.score-high[b-3zmaz4tfoe] {
    color: var(--error-600);
    background: rgba(220, 38, 38, 0.1);
}

.enhanced-referral-card .risk-score-circle.score-critical[b-3zmaz4tfoe] {
    color: #7c3aed;
    background: rgba(124, 58, 237, 0.1);
}

.enhanced-referral-card .score-value[b-3zmaz4tfoe] {
    font-size: 22px;
    font-weight: 700;
}

.enhanced-referral-card .risk-info[b-3zmaz4tfoe] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.enhanced-referral-card .risk-status[b-3zmaz4tfoe] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 15px;
    font-weight: 600;
    color: #1f2937;
}

.enhanced-referral-card .risk-header.referral .risk-status i[b-3zmaz4tfoe] {
    color: #d97706;
}

.enhanced-referral-card .risk-header.standard .risk-status i[b-3zmaz4tfoe] {
    color: #059669;
}

.enhanced-referral-card .risk-meta[b-3zmaz4tfoe] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.enhanced-referral-card .risk-level-badge[b-3zmaz4tfoe] {
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 600;
}

.enhanced-referral-card .risk-level-badge.badge-success[b-3zmaz4tfoe] {
    background: #d1fae5;
    color: #059669;
}

.enhanced-referral-card .risk-level-badge.badge-warning[b-3zmaz4tfoe] {
    background: #fef3c7;
    color: #d97706;
}

.enhanced-referral-card .risk-level-badge.badge-danger[b-3zmaz4tfoe] {
    background: #fee2e2;
    color: var(--error-600);
}

.enhanced-referral-card .risk-level-badge.badge-critical[b-3zmaz4tfoe] {
    background: #ede9fe;
    color: #7c3aed;
}

.enhanced-referral-card .confidence[b-3zmaz4tfoe] {
    font-size: 11px;
    color: #6b7280;
}

/* Action Badge */
.enhanced-referral-card .action-badge[b-3zmaz4tfoe] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    flex-shrink: 0;
}

.enhanced-referral-card .action-badge.action-approve[b-3zmaz4tfoe] {
    background: #d1fae5;
    color: #059669;
}

.enhanced-referral-card .action-badge.action-review[b-3zmaz4tfoe] {
    background: #dbeafe;
    color: #2563eb;
}

.enhanced-referral-card .action-badge.action-senior[b-3zmaz4tfoe] {
    background: #fef3c7;
    color: #d97706;
}

.enhanced-referral-card .action-badge.action-decline[b-3zmaz4tfoe] {
    background: #fee2e2;
    color: var(--error-600);
}

/* Section Title */
.enhanced-referral-card .section-title[b-3zmaz4tfoe] {
    font-size: 12px;
    font-weight: 600;
    color: #6b7280;
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 10px;
}

.enhanced-referral-card .section-title i[b-3zmaz4tfoe] {
    color: #9ca3af;
}

.enhanced-referral-card .count-badge[b-3zmaz4tfoe] {
    background: #e5e7eb;
    color: #374151;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 11px;
    margin-left: 4px;
}

/* Reasons Section */
.enhanced-referral-card .reasons-section[b-3zmaz4tfoe] {
    margin-bottom: 16px;
}

.enhanced-referral-card .reasons-list[b-3zmaz4tfoe] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.enhanced-referral-card .reason-item[b-3zmaz4tfoe] {
    display: flex;
    gap: 12px;
    padding: 12px;
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
    border-radius: 8px;
    border-left: 3px solid #ef4444;
}

.enhanced-referral-card .reason-icon[b-3zmaz4tfoe] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: #fee2e2;
    color: var(--error-600);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 14px;
}

.enhanced-referral-card .reason-content[b-3zmaz4tfoe] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.enhanced-referral-card .reason-question[b-3zmaz4tfoe] {
    font-size: 13px;
    color: #374151;
    font-weight: 500;
}

.enhanced-referral-card .reason-response[b-3zmaz4tfoe] {
    font-size: 12px;
    color: var(--error-600);
    font-weight: 600;
}

/* Insights Section */
.enhanced-referral-card .insights-section[b-3zmaz4tfoe] {
    margin-bottom: 16px;
}

.enhanced-referral-card .insights-list[b-3zmaz4tfoe] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.enhanced-referral-card .insight-item[b-3zmaz4tfoe] {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    padding: 10px 12px;
    background: #f0f9ff;
    border-radius: 8px;
    border-left: 3px solid var(--brand-500);
}

.enhanced-referral-card .insight-item i[b-3zmaz4tfoe] {
    color: var(--brand-500);
    font-size: 16px;
    flex-shrink: 0;
}

.enhanced-referral-card .insight-item span[b-3zmaz4tfoe] {
    font-size: 12px;
    color: #374151;
    line-height: 1.4;
}

/* Factors Section */
.enhanced-referral-card .factors-section[b-3zmaz4tfoe] {
    margin-bottom: 16px;
}

.enhanced-referral-card .factors-list[b-3zmaz4tfoe] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.enhanced-referral-card .factor-item[b-3zmaz4tfoe] {
    padding: 10px 12px;
    background: #f9fafb;
    border-radius: 8px;
}

.enhanced-referral-card .factor-bar-bg[b-3zmaz4tfoe] {
    height: 4px;
    background: #e5e7eb;
    border-radius: 2px;
    margin-bottom: 8px;
    overflow: hidden;
}

.enhanced-referral-card .factor-bar[b-3zmaz4tfoe] {
    height: 100%;
    background: linear-gradient(90deg, #fbbf24 0%, #ef4444 100%);
    border-radius: 2px;
    transition: width 0.3s ease;
}

.enhanced-referral-card .factor-header[b-3zmaz4tfoe] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2px;
}

.enhanced-referral-card .factor-name[b-3zmaz4tfoe] {
    font-size: 13px;
    font-weight: 600;
    color: #374151;
}

.enhanced-referral-card .factor-score[b-3zmaz4tfoe] {
    font-size: 12px;
    font-weight: 700;
    color: var(--error-600);
}

.enhanced-referral-card .factor-desc[b-3zmaz4tfoe] {
    font-size: 11px;
    color: #6b7280;
}

/* AI Notice */
.enhanced-referral-card .ai-notice[b-3zmaz4tfoe] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px;
    background: #eff6ff;
    border-radius: 8px;
    font-size: 12px;
    color: #374151;
}

.enhanced-referral-card .ai-notice i[b-3zmaz4tfoe] {
    color: #2563eb;
    font-size: 16px;
    flex-shrink: 0;
}

/* Empty State */
.enhanced-referral-card .empty-state[b-3zmaz4tfoe] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    gap: 12px;
    text-align: center;
}

.enhanced-referral-card .empty-state i[b-3zmaz4tfoe] {
    font-size: 40px;
    color: #d1d5db;
}

.enhanced-referral-card .empty-state span[b-3zmaz4tfoe] {
    color: #9ca3af;
    font-size: 14px;
}

/* Responsive */
@media (max-width: 576px) {
    .enhanced-referral-card .risk-header[b-3zmaz4tfoe] {
        flex-direction: column;
        gap: 12px;
        align-items: flex-start;
    }
    
    .enhanced-referral-card .action-badge[b-3zmaz4tfoe] {
        align-self: flex-end;
    }
}
/* /Components/Shared/EnvironmentBanner.razor.rz.scp.css */
.env-banner[b-urki80qt4b] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 5px 16px;
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1.2;
    color: #fff;
    text-shadow: 0 1px 0 rgba(0, 0, 0, 0.15);
}

.env-banner-label[b-urki80qt4b] {
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 2px 10px;
    border-radius: 4px;
    font-size: 0.72rem;
    background: rgba(0, 0, 0, 0.25);
    color: #fff;
    flex-shrink: 0;
}

.env-banner-text[b-urki80qt4b] {
    flex: 1;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Subtle warning-stripe accent on the bottom edge for all non-prod variants */
.env-banner[b-urki80qt4b]::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;
    height: 4px;
    background: repeating-linear-gradient(
        135deg,
        rgba(0, 0, 0, 0.35) 0,
        rgba(0, 0, 0, 0.35) 8px,
        rgba(255, 255, 255, 0.35) 8px,
        rgba(255, 255, 255, 0.35) 16px
    );
}

/* TEST / Staging — solid red, unmistakable */
.env-banner-test[b-urki80qt4b] {
    background: #dc2626;
    border-bottom: 2px solid #7f1d1d;
}

/* Dev — solid amber (caution), dark text for readability */
.env-banner-dev[b-urki80qt4b] {
    background: #fbbf24;
    border-bottom: 2px solid #92400e;
    color: #422006;
    text-shadow: none;
}

.env-banner-dev .env-banner-label[b-urki80qt4b] {
    background: #422006;
    color: #fbbf24;
}

/* Anything else non-prod — solid orange */
.env-banner-other[b-urki80qt4b] {
    background: #ea580c;
    border-bottom: 2px solid #7c2d12;
}

@media (max-width: 640px) {
    .env-banner[b-urki80qt4b] {
        padding: 5px 12px;
        font-size: 0.72rem;
    }

    .env-banner-text[b-urki80qt4b] {
        font-size: 0.7rem;
    }
}
/* /Components/Shared/FileClaimModal.razor.rz.scp.css */
.modal-backdrop[b-bka83fy1lv] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    z-index: 1050;
}

.modal-overlay-claim[b-bka83fy1lv] {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1051;
    padding: 24px;
}

.claim-modal[b-bka83fy1lv] {
    background: white;
    border-radius: 16px;
    width: 100%;
    max-width: 540px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    animation: claimModalIn-b-bka83fy1lv 0.2s ease-out;
    overflow: hidden;
}

@keyframes claimModalIn-b-bka83fy1lv {
    from { opacity: 0; transform: translateY(-12px) scale(0.98); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

.claim-modal-header[b-bka83fy1lv] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 1px solid #EEF2F6;
}

.claim-modal-title-group[b-bka83fy1lv] {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
}

.claim-modal-title[b-bka83fy1lv] {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
    margin: 0;
}

.claim-modal-subtitle[b-bka83fy1lv] {
    font-size: 0.8rem;
    color: #64748B;
    line-height: 1.45;
    margin: 2px 0 0;
}

.claim-modal-close[b-bka83fy1lv] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: none;
    background: transparent;
    color: #94A3B8;
    cursor: pointer;
    transition: all 0.15s;
}

.claim-modal-close:hover[b-bka83fy1lv] {
    background: #F1F5F9;
    color: #0F172A;
}

.claim-modal-body[b-bka83fy1lv] {
    padding: 1.15rem 1.5rem;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.claim-info-row[b-bka83fy1lv] {
    display: flex;
    gap: 16px;
    padding: 12px 16px;
    background: #F8FAFC;
    border-radius: 10px;
    border: 1px solid #F1F5F9;
}

.claim-info-item[b-bka83fy1lv] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.claim-info-label[b-bka83fy1lv] {
    font-size: 0.65rem;
    font-weight: 600;
    color: #94A3B8;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.claim-info-value[b-bka83fy1lv] {
    font-size: 0.85rem;
    font-weight: 600;
    color: #1E293B;
}

.claim-form-group[b-bka83fy1lv] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.claim-form-label[b-bka83fy1lv] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #334155;
}

.claim-error[b-bka83fy1lv] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    background: #FEF2F2;
    color: #991B1B;
    border-radius: 8px;
    font-size: 0.8rem;
    border: 1px solid #FECACA;
}

.claim-confirm-text[b-bka83fy1lv] {
    font-size: 0.9rem;
    color: #334155;
    line-height: 1.6;
    padding: 8px 0;
}

.claim-summary[b-bka83fy1lv] {
    background: #F8FAFC;
    border-radius: 10px;
    border: 1px solid #F1F5F9;
    overflow: hidden;
}

.claim-summary-row[b-bka83fy1lv] {
    display: flex;
    padding: 10px 16px;
    border-bottom: 1px solid #F1F5F9;
}

.claim-summary-row:last-child[b-bka83fy1lv] {
    border-bottom: none;
}

.claim-summary-label[b-bka83fy1lv] {
    width: 140px;
    flex-shrink: 0;
    font-size: 0.75rem;
    font-weight: 600;
    color: #94A3B8;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.claim-summary-value[b-bka83fy1lv] {
    font-size: 0.82rem;
    color: #334155;
    word-break: break-word;
}

.claim-modal-footer[b-bka83fy1lv] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

.btn-modal-cancel[b-bka83fy1lv] {
    padding: 0.55rem 1.15rem;
    border-radius: 10px;
    border: 1px solid #E2E8F0;
    background: transparent;
    color: #64748B;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
    display: flex;
    align-items: center;
    gap: 4px;
}

.btn-modal-cancel:hover:not(:disabled)[b-bka83fy1lv] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-modal-confirm[b-bka83fy1lv] {
    padding: 0.55rem 1.15rem;
    border-radius: 10px;
    border: none;
    background: var(--brand-600, #004980);
    color: white;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: all 0.15s;
}

.btn-modal-confirm:hover:not(:disabled)[b-bka83fy1lv] {
    background: var(--brand-700, #003760);
}

.btn-modal-confirm:disabled[b-bka83fy1lv],
.btn-modal-cancel:disabled[b-bka83fy1lv] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-confirm-success[b-bka83fy1lv] {
    background: var(--success-600, #059669);
}

.btn-confirm-success:hover:not(:disabled)[b-bka83fy1lv] {
    background: var(--success-700, #047857);
}
/* /Components/Shared/FormInput.razor.rz.scp.css */
/* Form Input Component Styles */

.form-group[b-n7jhzs0j96] {
    margin-bottom: 20px;
}

.form-label[b-n7jhzs0j96] {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #374151;
    margin-bottom: 8px;
}

.required-indicator[b-n7jhzs0j96] {
    color: var(--error-600);
    margin-left: 4px;
}

.form-control[b-n7jhzs0j96] {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid rgba(15, 23, 42, 0.15);
    border-radius: 8px;
    font-size: 14px;
    color: #1F2937;
    background: white;
    transition: all 0.2s;
}

.form-control:focus[b-n7jhzs0j96] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.form-control:disabled[b-n7jhzs0j96] {
    background: #F3F4F6;
    color: #9CA3AF;
    cursor: not-allowed;
}

.form-control.error[b-n7jhzs0j96] {
    border-color: var(--error-600);
}

.form-control.error:focus[b-n7jhzs0j96] {
    box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.1);
}

textarea.form-control[b-n7jhzs0j96] {
    resize: vertical;
    min-height: 80px;
}

select.form-control[b-n7jhzs0j96] {
    cursor: pointer;
}

.checkbox-wrapper[b-n7jhzs0j96] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.form-checkbox[b-n7jhzs0j96] {
    width: 18px;
    height: 18px;
    cursor: pointer;
    accent-color: var(--brand-500);
}

.checkbox-label[b-n7jhzs0j96] {
    font-size: 14px;
    font-weight: 500;
    color: #374151;
    cursor: pointer;
    user-select: none;
    margin: 0;
}

.help-text[b-n7jhzs0j96] {
    display: block;
    font-size: 12px;
    color: #6B7280;
    margin-top: 6px;
}

.error-message[b-n7jhzs0j96] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: var(--error-600);
    margin-top: 6px;
}

.error-message i[b-n7jhzs0j96] {
    font-size: 14px;
}

/* Focus styles for accessibility */
.form-control:focus-visible[b-n7jhzs0j96],
.form-checkbox:focus-visible[b-n7jhzs0j96] {
    outline: 2px solid var(--brand-500);
    outline-offset: 2px;
}

/* /Components/Shared/GlobalSearch/GlobalSearchModal.razor.rz.scp.css */
/* Global Search Modal Styles */

/* Overlay */
.global-search-overlay[b-vaggn1cfn2] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px);
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding-top: 10vh;
    z-index: 9999;
    animation: fadeIn-b-vaggn1cfn2 0.15s ease-out;
}

@keyframes fadeIn-b-vaggn1cfn2 {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* Content Container */
.global-search-content[b-vaggn1cfn2] {
    background: var(--bg-primary, #ffffff);
    border-radius: 12px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    width: 100%;
    max-width: 640px;
    max-height: 70vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    animation: slideDown-b-vaggn1cfn2 0.2s ease-out;
}

@keyframes slideDown-b-vaggn1cfn2 {
    from { 
        opacity: 0;
        transform: translateY(-20px);
    }
    to { 
        opacity: 1;
        transform: translateY(0);
    }
}

/* Header */
.global-search-header[b-vaggn1cfn2] {
    display: flex;
    align-items: center;
    padding: 16px;
    border-bottom: 1px solid var(--border-color, #e5e7eb);
    gap: 12px;
}

.search-input-wrapper[b-vaggn1cfn2] {
    flex: 1;
    display: flex;
    align-items: center;
    background: var(--bg-secondary, #f3f4f6);
    border-radius: 8px;
    padding: 0 12px;
    gap: 10px;
}

.search-icon[b-vaggn1cfn2] {
    color: var(--text-secondary, #6b7280);
    font-size: 1.1rem;
}

.search-input[b-vaggn1cfn2] {
    flex: 1;
    border: none;
    background: transparent;
    padding: 12px 0;
    font-size: 1rem;
    color: var(--text-primary, #1f2937);
    outline: none;
}

.search-input[b-vaggn1cfn2]::placeholder {
    color: var(--text-tertiary, #9ca3af);
}

.search-spinner[b-vaggn1cfn2] {
    color: var(--primary, #3b82f6);
}

.clear-btn[b-vaggn1cfn2] {
    background: none;
    border: none;
    color: var(--text-secondary, #6b7280);
    cursor: pointer;
    padding: 4px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.clear-btn:hover[b-vaggn1cfn2] {
    background: var(--bg-tertiary, #e5e7eb);
    color: var(--text-primary, #1f2937);
}

.search-actions[b-vaggn1cfn2] {
    display: flex;
    gap: 8px;
}

.preferences-btn[b-vaggn1cfn2],
.close-btn[b-vaggn1cfn2] {
    background: none;
    border: none;
    color: var(--text-secondary, #6b7280);
    cursor: pointer;
    padding: 8px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease;
}

.preferences-btn:hover[b-vaggn1cfn2],
.close-btn:hover[b-vaggn1cfn2] {
    background: var(--bg-secondary, #f3f4f6);
    color: var(--text-primary, #1f2937);
}

.preferences-btn.active[b-vaggn1cfn2] {
    background: var(--primary-light, #dbeafe);
    color: var(--primary, #3b82f6);
}

/* Preferences Panel */
.preferences-panel[b-vaggn1cfn2] {
    padding: 16px;
    border-bottom: 1px solid var(--border-color, #e5e7eb);
}

.preferences-header[b-vaggn1cfn2] {
    font-weight: 600;
    color: var(--text-primary, #1f2937);
    margin-bottom: 12px;
}

.preferences-list[b-vaggn1cfn2] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.preference-item[b-vaggn1cfn2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 12px;
    background: var(--bg-secondary, #f3f4f6);
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.15s ease;
}

.preference-item:hover[b-vaggn1cfn2] {
    background: var(--bg-tertiary, #e5e7eb);
}

.preference-label[b-vaggn1cfn2] {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--text-primary, #1f2937);
}

.preference-label i[b-vaggn1cfn2] {
    color: var(--text-secondary, #6b7280);
    width: 20px;
}

.preference-toggle[b-vaggn1cfn2] {
    width: 44px;
    height: 24px;
    appearance: none;
    background: var(--border-color, #d1d5db);
    border-radius: 12px;
    position: relative;
    cursor: pointer;
    transition: background 0.2s ease;
}

.preference-toggle[b-vaggn1cfn2]::before {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background: white;
    border-radius: 50%;
    top: 2px;
    left: 2px;
    transition: transform 0.2s ease;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

.preference-toggle:checked[b-vaggn1cfn2] {
    background: var(--primary, #3b82f6);
}

.preference-toggle:checked[b-vaggn1cfn2]::before {
    transform: translateX(20px);
}

.preferences-actions[b-vaggn1cfn2] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 16px;
    padding-top: 12px;
    border-top: 1px solid var(--border-color, #e5e7eb);
}

/* Results Container */
.search-results-container[b-vaggn1cfn2] {
    flex: 1;
    overflow-y: auto;
    padding: 8px;
}

/* Recent Searches */
.recent-searches[b-vaggn1cfn2] {
    padding: 8px;
}

.section-header[b-vaggn1cfn2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 12px;
    color: var(--text-secondary, #6b7280);
    font-size: 0.85rem;
    font-weight: 500;
}

.clear-recent-btn[b-vaggn1cfn2] {
    background: none;
    border: none;
    color: var(--text-tertiary, #9ca3af);
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 0.85rem;
}

.clear-recent-btn:hover[b-vaggn1cfn2] {
    background: var(--bg-secondary, #f3f4f6);
    color: var(--danger, #ef4444);
}

.recent-list[b-vaggn1cfn2] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.recent-item[b-vaggn1cfn2] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    background: transparent;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    text-align: left;
    width: 100%;
    transition: background 0.15s ease;
    color: var(--text-primary, #1f2937);
}

.recent-item:hover[b-vaggn1cfn2] {
    background: var(--bg-secondary, #f3f4f6);
}

.recent-item i[b-vaggn1cfn2] {
    color: var(--text-tertiary, #9ca3af);
}

.recent-query[b-vaggn1cfn2] {
    flex: 1;
}

.recent-count[b-vaggn1cfn2] {
    font-size: 0.8rem;
    color: var(--text-tertiary, #9ca3af);
}

/* Result Groups */
.result-group[b-vaggn1cfn2] {
    margin-bottom: 8px;
}

.group-header[b-vaggn1cfn2] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    color: var(--text-secondary, #6b7280);
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.group-header i[b-vaggn1cfn2] {
    font-size: 0.9rem;
}

.result-count[b-vaggn1cfn2] {
    margin-left: auto;
    background: var(--bg-secondary, #f3f4f6);
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 0.75rem;
}

.group-results[b-vaggn1cfn2] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

/* Search Result Item */
.search-result-item[b-vaggn1cfn2] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    background: transparent;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    text-align: left;
    width: 100%;
    transition: all 0.15s ease;
    color: var(--text-primary, #1f2937);
}

.search-result-item:hover[b-vaggn1cfn2],
.search-result-item.selected[b-vaggn1cfn2] {
    background: var(--primary-light, #dbeafe);
}

.search-result-item.selected[b-vaggn1cfn2] {
    outline: 2px solid var(--primary, #3b82f6);
    outline-offset: -2px;
}

.result-icon[b-vaggn1cfn2] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-secondary, #f3f4f6);
    border-radius: 8px;
    color: var(--text-secondary, #6b7280);
    font-size: 1rem;
}

.search-result-item:hover .result-icon[b-vaggn1cfn2],
.search-result-item.selected .result-icon[b-vaggn1cfn2] {
    background: var(--primary, #3b82f6);
    color: white;
}

.result-content[b-vaggn1cfn2] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.result-title[b-vaggn1cfn2] {
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.result-subtitle[b-vaggn1cfn2] {
    font-size: 0.85rem;
    color: var(--text-secondary, #6b7280);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.enter-icon[b-vaggn1cfn2] {
    color: var(--text-tertiary, #9ca3af);
    opacity: 0;
    transition: opacity 0.15s ease;
}

.search-result-item:hover .enter-icon[b-vaggn1cfn2],
.search-result-item.selected .enter-icon[b-vaggn1cfn2] {
    opacity: 1;
}

/* Empty/Loading States */
.empty-state[b-vaggn1cfn2],
.loading-state[b-vaggn1cfn2],
.no-results[b-vaggn1cfn2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px 24px;
    text-align: center;
    color: var(--text-secondary, #6b7280);
}

.empty-state i[b-vaggn1cfn2],
.loading-state i[b-vaggn1cfn2],
.no-results i[b-vaggn1cfn2] {
    font-size: 2.5rem;
    color: var(--text-tertiary, #9ca3af);
    margin-bottom: 16px;
}

.empty-state p[b-vaggn1cfn2],
.no-results p[b-vaggn1cfn2] {
    margin: 0;
    line-height: 1.5;
}

.no-results .hint[b-vaggn1cfn2] {
    font-size: 0.85rem;
    color: var(--text-tertiary, #9ca3af);
    margin-top: 8px;
}

.shortcut-hint[b-vaggn1cfn2] {
    margin-top: 16px;
    font-size: 0.85rem;
}

.shortcut-hint kbd[b-vaggn1cfn2] {
    display: inline-block;
    background: #e5e7eb !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
    font-family: system-ui, -apple-system, sans-serif !important;
    font-size: 0.8rem !important;
    font-weight: 600 !important;
    color: #374151 !important;
    border: 1px solid #d1d5db !important;
    box-shadow: 0 2px 0 #d1d5db, 0 2px 3px rgba(0, 0, 0, 0.1) !important;
    margin: 0 2px;
    line-height: 1;
}

/* Search Stats Footer */
.search-footer[b-vaggn1cfn2] {
    padding: 8px 12px;
    text-align: right;
}

.search-stats[b-vaggn1cfn2] {
    font-size: 0.75rem;
    color: var(--text-tertiary, #9ca3af);
}

/* Global Search Footer */
.global-search-footer[b-vaggn1cfn2] {
    padding: 12px 16px;
    border-top: 1px solid var(--border-color, #e5e7eb);
    background: var(--bg-secondary, #f9fafb);
}

.keyboard-hints[b-vaggn1cfn2] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    font-size: 0.8rem;
    color: #6b7280;
}

.keyboard-hints span[b-vaggn1cfn2] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.keyboard-hints kbd[b-vaggn1cfn2] {
    display: inline-block;
    background: #e5e7eb !important;
    padding: 3px 8px !important;
    border-radius: 5px !important;
    font-family: system-ui, -apple-system, sans-serif !important;
    font-size: 0.7rem !important;
    font-weight: 600 !important;
    color: #374151 !important;
    border: 1px solid #d1d5db !important;
    box-shadow: 0 2px 0 #d1d5db !important;
    margin-right: 4px;
    min-width: 22px;
    text-align: center;
    line-height: 1.2;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .global-search-overlay[b-vaggn1cfn2] {
        padding: 0;
        align-items: flex-end;
    }

    .global-search-content[b-vaggn1cfn2] {
        max-width: 100%;
        max-height: 90vh;
        border-radius: 16px 16px 0 0;
    }

    .keyboard-hints[b-vaggn1cfn2] {
        display: none;
    }
}

/* /Components/Shared/HealthMonitor/HealthCheckItem.razor.rz.scp.css */
.health-check-item[b-zkgg0vllbp] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px;
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    transition: all 0.2s ease;
}

.health-check-item:hover[b-zkgg0vllbp] {
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
    border-color: rgba(15, 23, 42, 0.15);
}

.check-indicator[b-zkgg0vllbp] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 18px;
    flex-shrink: 0;
}

.check-content[b-zkgg0vllbp] {
    flex: 1;
    min-width: 0;
}

.check-name[b-zkgg0vllbp] {
    font-size: 15px;
    font-weight: 600;
    color: #1F2937;
    margin-bottom: 4px;
}

.check-details[b-zkgg0vllbp] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
}

.check-status[b-zkgg0vllbp] {
    font-weight: 500;
}

.check-separator[b-zkgg0vllbp] {
    color: #CBD5E1;
}

.check-response-time[b-zkgg0vllbp] {
    color: #64748B;
}

/* Healthy State */
.health-check-item.healthy .check-indicator[b-zkgg0vllbp] {
    background: #D1FAE5;
    color: #059669;
}

.health-check-item.healthy .check-status[b-zkgg0vllbp] {
    color: #047857;
}

.health-check-item.healthy[b-zkgg0vllbp] {
    border-left: 3px solid #10B981;
}

/* Warning State */
.health-check-item.warning .check-indicator[b-zkgg0vllbp] {
    background: #FEF3C7;
    color: #D97706;
}

.health-check-item.warning .check-status[b-zkgg0vllbp] {
    color: #B45309;
}

.health-check-item.warning[b-zkgg0vllbp] {
    border-left: 3px solid #F59E0B;
}

/* Error State */
.health-check-item.error .check-indicator[b-zkgg0vllbp] {
    background: #FEE2E2;
    color: var(--error-600);
}

.health-check-item.error .check-status[b-zkgg0vllbp] {
    color: #B91C1C;
}

.health-check-item.error[b-zkgg0vllbp] {
    border-left: 3px solid #EF4444;
}

/* Degraded State */
.health-check-item.degraded .check-indicator[b-zkgg0vllbp] {
    background: #DBEAFE;
    color: #2563EB;
}

.health-check-item.degraded .check-status[b-zkgg0vllbp] {
    color: #1E40AF;
}

.health-check-item.degraded[b-zkgg0vllbp] {
    border-left: 3px solid #3B82F6;
}

/* /Components/Shared/HealthMonitor/HealthMetricCard.razor.rz.scp.css */
.health-metric-card[b-do7m0tr80a] {
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.5) 0%, rgba(240, 247, 252, 0.6) 100%);
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 24px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    gap: 20px;
    align-items: flex-start;
}

.health-metric-card:hover[b-do7m0tr80a] {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.1);
    border-color: rgba(15, 23, 42, 0.15);
}

.metric-icon-wrapper[b-do7m0tr80a] {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    flex-shrink: 0;
    transition: all 0.3s;
}

.metric-icon[b-do7m0tr80a] {
    font-size: 32px;
}

.metric-content[b-do7m0tr80a] {
    flex: 1;
    min-width: 0;
}

.metric-header[b-do7m0tr80a] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 12px;
    gap: 12px;
}

.metric-title[b-do7m0tr80a] {
    font-size: 16px;
    font-weight: 600;
    color: #1F2937;
    margin: 0;
    line-height: 1.4;
}

.metric-status-badge[b-do7m0tr80a] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.metric-value[b-do7m0tr80a] {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 8px;
    line-height: 1;
}

.metric-description[b-do7m0tr80a] {
    font-size: 14px;
    color: #64748B;
    margin: 0 0 12px 0;
    line-height: 1.5;
}

.metric-timestamp[b-do7m0tr80a] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #94A3B8;
    font-weight: 500;
}

.metric-timestamp i[b-do7m0tr80a] {
    font-size: 11px;
}

/* Healthy State */
.health-metric-card.healthy .metric-icon-wrapper[b-do7m0tr80a] {
    background: linear-gradient(135deg, #D1FAE5 0%, #ECFDF5 100%);
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.health-metric-card.healthy .metric-icon[b-do7m0tr80a] {
    color: #059669;
}

.health-metric-card.healthy .metric-value[b-do7m0tr80a] {
    color: #047857;
}

.health-metric-card.healthy .metric-status-badge[b-do7m0tr80a] {
    background: #D1FAE5;
    color: #047857;
    border: 1px solid rgba(16, 185, 129, 0.2);
}

/* Warning State */
.health-metric-card.warning .metric-icon-wrapper[b-do7m0tr80a] {
    background: linear-gradient(135deg, #FEF3C7 0%, #FFFBEB 100%);
    border: 1px solid rgba(245, 158, 11, 0.2);
}

.health-metric-card.warning .metric-icon[b-do7m0tr80a] {
    color: #D97706;
}

.health-metric-card.warning .metric-value[b-do7m0tr80a] {
    color: #B45309;
}

.health-metric-card.warning .metric-status-badge[b-do7m0tr80a] {
    background: #FEF3C7;
    color: #B45309;
    border: 1px solid rgba(245, 158, 11, 0.2);
}

/* Error State */
.health-metric-card.error .metric-icon-wrapper[b-do7m0tr80a] {
    background: linear-gradient(135deg, #FEE2E2 0%, #FEF2F2 100%);
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.health-metric-card.error .metric-icon[b-do7m0tr80a] {
    color: var(--error-600);
}

.health-metric-card.error .metric-value[b-do7m0tr80a] {
    color: #B91C1C;
}

.health-metric-card.error .metric-status-badge[b-do7m0tr80a] {
    background: #FEE2E2;
    color: #B91C1C;
    border: 1px solid rgba(239, 68, 68, 0.2);
}

/* Degraded State */
.health-metric-card.degraded .metric-icon-wrapper[b-do7m0tr80a] {
    background: linear-gradient(135deg, #DBEAFE 0%, #EFF6FF 100%);
    border: 1px solid rgba(59, 130, 246, 0.2);
}

.health-metric-card.degraded .metric-icon[b-do7m0tr80a] {
    color: #2563EB;
}

.health-metric-card.degraded .metric-value[b-do7m0tr80a] {
    color: #1E40AF;
}

.health-metric-card.degraded .metric-status-badge[b-do7m0tr80a] {
    background: #DBEAFE;
    color: #1E40AF;
    border: 1px solid rgba(59, 130, 246, 0.2);
}

/* /Components/Shared/HealthMonitor/SystemStatusOverview.razor.rz.scp.css */
.system-status-overview[b-kl1amvye5f] {
    background: white;
    border-radius: 16px;
    padding: 32px;
    margin-bottom: 32px;
    border: 2px solid;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

.status-header[b-kl1amvye5f] {
    display: flex;
    gap: 24px;
    align-items: center;
}

.status-icon-large[b-kl1amvye5f] {
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 40px;
    flex-shrink: 0;
}

.status-content[b-kl1amvye5f] {
    flex: 1;
}

.status-title[b-kl1amvye5f] {
    font-size: 28px;
    font-weight: 700;
    margin: 0 0 8px 0;
    line-height: 1.2;
}

.status-message[b-kl1amvye5f] {
    font-size: 16px;
    margin: 0;
    line-height: 1.5;
}

.status-details[b-kl1amvye5f] {
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
}

/* Healthy State */
.system-status-overview.healthy[b-kl1amvye5f] {
    border-color: #10B981;
    background: linear-gradient(135deg, #ECFDF5 0%, #FFFFFF 100%);
}

.system-status-overview.healthy .status-icon-large[b-kl1amvye5f] {
    background: linear-gradient(135deg, #10B981 0%, #34D399 100%);
    color: white;
    box-shadow: 0 8px 20px rgba(16, 185, 129, 0.3);
}

.system-status-overview.healthy .status-title[b-kl1amvye5f] {
    color: #047857;
}

.system-status-overview.healthy .status-message[b-kl1amvye5f] {
    color: #065F46;
}

/* Warning State */
.system-status-overview.warning[b-kl1amvye5f] {
    border-color: #F59E0B;
    background: linear-gradient(135deg, #FFFBEB 0%, #FFFFFF 100%);
}

.system-status-overview.warning .status-icon-large[b-kl1amvye5f] {
    background: linear-gradient(135deg, #F59E0B 0%, #FBBF24 100%);
    color: white;
    box-shadow: 0 8px 20px rgba(245, 158, 11, 0.3);
}

.system-status-overview.warning .status-title[b-kl1amvye5f] {
    color: #B45309;
}

.system-status-overview.warning .status-message[b-kl1amvye5f] {
    color: #92400E;
}

/* Error State */
.system-status-overview.error[b-kl1amvye5f] {
    border-color: #EF4444;
    background: linear-gradient(135deg, #FEF2F2 0%, #FFFFFF 100%);
}

.system-status-overview.error .status-icon-large[b-kl1amvye5f] {
    background: linear-gradient(135deg, #EF4444 0%, #F87171 100%);
    color: white;
    box-shadow: 0 8px 20px rgba(239, 68, 68, 0.3);
}

.system-status-overview.error .status-title[b-kl1amvye5f] {
    color: #B91C1C;
}

.system-status-overview.error .status-message[b-kl1amvye5f] {
    color: #991B1B;
}

/* Degraded State */
.system-status-overview.degraded[b-kl1amvye5f] {
    border-color: #3B82F6;
    background: linear-gradient(135deg, #EFF6FF 0%, #FFFFFF 100%);
}

.system-status-overview.degraded .status-icon-large[b-kl1amvye5f] {
    background: linear-gradient(135deg, #3B82F6 0%, #60A5FA 100%);
    color: white;
    box-shadow: 0 8px 20px rgba(59, 130, 246, 0.3);
}

.system-status-overview.degraded .status-title[b-kl1amvye5f] {
    color: #1E40AF;
}

.system-status-overview.degraded .status-message[b-kl1amvye5f] {
    color: #1E3A8A;
}

/* /Components/Shared/LandingFooter.razor.rz.scp.css */
/* Landing Page Footer Styles */

.landing-footer[b-0qsyj1mz22] {
    background: white;
    border-top: 1px solid var(--border-light);
    padding: 60px 40px 32px;
    margin-top: auto;
}

.footer-content[b-0qsyj1mz22] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto 40px;
}

.footer-section[b-0qsyj1mz22] {
    display: flex;
    flex-direction: column;
}

.footer-brand[b-0qsyj1mz22] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
    font-size: 18px;
    font-weight: 600;
    color: var(--text-primary);
}

.footer-brand i[b-0qsyj1mz22] {
    font-size: 24px;
    color: var(--brand-600);
}

.footer-brand-text[b-0qsyj1mz22] {
    font-weight: 600;
}

.footer-tagline[b-0qsyj1mz22] {
    font-size: 14px;
    color: var(--text-secondary);
    line-height: 1.6;
}

.footer-heading[b-0qsyj1mz22] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 16px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.footer-links[b-0qsyj1mz22] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.footer-link[b-0qsyj1mz22] {
    font-size: 14px;
    color: var(--text-secondary);
    text-decoration: none;
    transition: color 0.2s ease;
}

.footer-link:hover[b-0qsyj1mz22] {
    color: var(--brand-600);
    text-decoration: underline;
}

.footer-bottom[b-0qsyj1mz22] {
    text-align: center;
    padding-top: 32px;
    border-top: 1px solid var(--border-light);
    max-width: 1200px;
    margin: 0 auto;
}

.footer-copyright[b-0qsyj1mz22] {
    font-size: 14px;
    color: var(--text-muted);
    margin: 0;
}

/* Responsive Design */
@media (max-width: 768px) {
    .landing-footer[b-0qsyj1mz22] {
        padding: 40px 24px 24px;
    }

    .footer-content[b-0qsyj1mz22] {
        grid-template-columns: 1fr;
        gap: 32px;
        margin-bottom: 32px;
    }

    .footer-bottom[b-0qsyj1mz22] {
        padding-top: 24px;
    }
}

@media (max-width: 480px) {
    .landing-footer[b-0qsyj1mz22] {
        padding: 32px 20px 20px;
    }

    .footer-content[b-0qsyj1mz22] {
        gap: 24px;
    }
}

/* /Components/Shared/LinkExpiryCountdown.razor.rz.scp.css */
/* Feature 072 — LinkExpiryCountdown. Scoped so the three tone classes cannot collide with the
   status badges already in play on the pages that host this component. Colours come from the theme
   tokens in wwwroot/leca-theme.css; nothing new is introduced. */

.link-expiry-countdown[b-edix9xmjik] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.625rem;
    border-radius: 999px;
    border: 1px solid transparent;
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.25;
    /* Tabular figures so a per-second tick in the final minutes does not make the badge jitter
       sideways as digit widths change. */
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.link-expiry-countdown .bi[b-edix9xmjik] {
    font-size: 0.875rem;
    line-height: 1;
}

.countdown-live[b-edix9xmjik] {
    background: var(--brand-50);
    border-color: var(--brand-100);
    color: var(--brand-700);
}

.countdown-soon[b-edix9xmjik] {
    background: var(--warning-50);
    border-color: var(--warning-200);
    color: var(--warning-800);
}

.countdown-expired[b-edix9xmjik] {
    background: var(--error-50);
    border-color: var(--error-200);
    color: var(--error-700);
}
/* /Components/Shared/LoadingIndicator.razor.rz.scp.css */
/* Loading Indicator Styles */
.loading-indicator[b-x0kecktshd] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    width: 100%;
}

.loading-indicator .spinner-border[b-x0kecktshd] {
    width: 2rem;
    height: 2rem;
    border-width: 0.25rem;
    color: var(--brand-500);
    animation: spinner-border 0.75s linear infinite;
}

.loading-indicator .spinner-border-sm[b-x0kecktshd] {
    width: 1.5rem;
    height: 1.5rem;
    border-width: 0.2rem;
}

.loading-indicator span:not(.visually-hidden)[b-x0kecktshd] {
    color: var(--text-secondary);
    font-size: 0.95rem;
    font-weight: 500;
    margin-left: 0.75rem;
}

/* Overlay variant for full-page loading */
.loading-indicator.overlay[b-x0kecktshd] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(4px);
    z-index: 9999;
    padding: 0;
}

.loading-indicator.overlay .spinner-border[b-x0kecktshd] {
    width: 3rem;
    height: 3rem;
    border-width: 0.3rem;
}

/* Inline variant for smaller spaces */
.loading-indicator.inline[b-x0kecktshd] {
    display: inline-flex;
    padding: 0.5rem;
    width: auto;
}

.loading-indicator.inline .spinner-border[b-x0kecktshd] {
    width: 1.25rem;
    height: 1.25rem;
    border-width: 0.15rem;
}

/* Theme variants */
.loading-indicator.brand[b-x0kecktshd] {
    color: var(--brand-500);
}

.loading-indicator.brand .spinner-border[b-x0kecktshd] {
    color: var(--brand-500);
}

.loading-indicator.success[b-x0kecktshd] {
    color: var(--success-500);
}

.loading-indicator.success .spinner-border[b-x0kecktshd] {
    color: var(--success-500);
}

.loading-indicator.accent[b-x0kecktshd] {
    color: var(--accent-500);
}

.loading-indicator.accent .spinner-border[b-x0kecktshd] {
    color: var(--accent-500);
}

/* Card variant for loading within cards */
.loading-indicator.card-loading[b-x0kecktshd] {
    padding: 3rem 2rem;
    background-color: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
}

/* Minimal variant */
.loading-indicator.minimal[b-x0kecktshd] {
    padding: 1rem;
}

.loading-indicator.minimal .spinner-border[b-x0kecktshd] {
    width: 1.5rem;
    height: 1.5rem;
}

/* Animation for smooth appearance */
.loading-indicator[b-x0kecktshd] {
    animation: fadeIn-b-x0kecktshd 0.2s ease-in;
}

@keyframes fadeIn-b-x0kecktshd {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .loading-indicator[b-x0kecktshd] {
        padding: 1.5rem;
    }
    
    .loading-indicator span:not(.visually-hidden)[b-x0kecktshd] {
        font-size: 0.875rem;
    }
}

/* /Components/Shared/ModalDialog.razor.rz.scp.css */
/* Canonical LP3 modal look — see EnvironmentalReviewModal.razor.css / wwwroot/css/modal-theme.css */

.modal-overlay[b-u0neryumjq] {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1.5rem;
    animation: fadeIn-b-u0neryumjq 0.2s ease-out;
}

@keyframes fadeIn-b-u0neryumjq {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.modal-container[b-u0neryumjq] {
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.25);
    max-width: 600px;
    width: 100%;
    max-height: 90vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    animation: slideIn-b-u0neryumjq 0.2s ease-out;
}

@keyframes slideIn-b-u0neryumjq {
    from {
        transform: translateY(8px) scale(0.95);
        opacity: 0;
    }
    to {
        transform: translateY(0) scale(1);
        opacity: 1;
    }
}

.modal-header[b-u0neryumjq] {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    padding: 1.25rem 1.5rem 1rem;
    background: #fff;
    border-bottom: 1px solid #EEF2F6;
}

.modal-title[b-u0neryumjq] {
    flex: 1;
    min-width: 0;
    font-size: 1.05rem;
    font-weight: 700;
    color: #0F172A;
    margin: 0;
}

.modal-close[b-u0neryumjq] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: transparent;
    border: none;
    border-radius: 8px;
    color: #94A3B8;
    cursor: pointer;
    transition: all 0.15s;
}

.modal-close:hover[b-u0neryumjq] {
    background: #F1F5F9;
    color: #0F172A;
}

.modal-body[b-u0neryumjq] {
    padding: 1.15rem 1.5rem;
    overflow-y: auto;
    flex: 1;
}

.modal-footer[b-u0neryumjq] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid #EEF2F6;
    background: #FAFBFC;
}

.btn-modal[b-u0neryumjq] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.55rem 1.15rem;
    border: none;
    border-radius: 10px;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-cancel[b-u0neryumjq] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.btn-cancel:hover[b-u0neryumjq] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-confirm[b-u0neryumjq] {
    background: var(--brand-600, #004980);
    color: #fff;
}

.btn-confirm:hover[b-u0neryumjq] {
    background: var(--brand-700, #003760);
}

/* Responsive Design */
@media (max-width: 768px) {
    .modal-overlay[b-u0neryumjq] {
        padding: 0;
        align-items: flex-end;
    }

    .modal-container[b-u0neryumjq] {
        max-width: 100%;
        max-height: 95vh;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        animation: slideUp-b-u0neryumjq 0.3s ease-out;
    }

    @keyframes slideUp-b-u0neryumjq {
        from {
            transform: translateY(100%);
        }
        to {
            transform: translateY(0);
        }
    }

    .modal-footer[b-u0neryumjq] {
        flex-direction: column-reverse;
    }

    .btn-modal[b-u0neryumjq] {
        width: 100%;
        justify-content: center;
    }
}
/* /Components/Shared/NotificationCenter.razor.rz.scp.css */
/* NotificationCenter Component Styles */

.notification-center[b-likx4lk4uk] {
    position: relative;
    display: inline-flex;
}

/* Trigger Button - Subtle style matching other topbar icons */
.nc-trigger[b-likx4lk4uk] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 0 !important;
    border-radius: 8px;
    background: transparent !important;
    color: #64748b;
    cursor: pointer;
    outline: none !important;
    box-shadow: none !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.nc-trigger:hover[b-likx4lk4uk] {
    background-color: rgba(0, 0, 0, 0.05) !important;
    color: #334155 !important;
}

.nc-trigger:focus[b-likx4lk4uk] {
    outline: none !important;
    box-shadow: none !important;
}

.nc-trigger:active[b-likx4lk4uk] {
    transform: scale(0.95);
}

.nc-trigger svg[b-likx4lk4uk] {
    width: 20px;
    height: 20px;
}

.nc-badge[b-likx4lk4uk] {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #EF4444;
    border: 2px solid white;
}

/* Dropdown Panel */
.notification-dropdown[b-likx4lk4uk] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    width: 360px;
    max-height: 520px;
    background: white;
    border-radius: 14px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.10), 0 4px 10px rgba(15, 23, 42, 0.06);
    overflow: hidden;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    animation: dropdown-enter-b-likx4lk4uk 0.16s ease-out;
}

@keyframes dropdown-enter-b-likx4lk4uk {
    from {
        opacity: 0;
        transform: translateY(-6px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Header */
.notification-header[b-likx4lk4uk] {
    background: linear-gradient(135deg, #2d4a6f 0%, #3d5d82 100%);
    padding: 14px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.notification-header-content h3[b-likx4lk4uk] {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
    color: white;
}

.notification-count[b-likx4lk4uk] {
    font-size: 11px;
    color: rgba(255, 255, 255, 0.7);
    margin-top: 2px;
}

.mark-all-read-btn[b-likx4lk4uk] {
    width: 28px;
    height: 28px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: rgba(255, 255, 255, 0.08);
    border-radius: 6px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease;
}
}

.mark-all-read-btn:hover[b-likx4lk4uk] {
    background: rgba(255, 255, 255, 0.18);
    border-color: rgba(255, 255, 255, 0.3);
}

/* Tabs */
.notification-tabs[b-likx4lk4uk] {
    display: flex;
    padding: 0 12px;
    background: white;
    border-bottom: 1px solid #eef2f7;
}

.notification-tab[b-likx4lk4uk] {
    flex: 1;
    padding: 12px 8px;
    border: none;
    background: transparent;
    font-size: 13px;
    font-weight: 600;
    color: #64748b;
    cursor: pointer;
    position: relative;
    transition: color 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.notification-tab:hover[b-likx4lk4uk] {
    color: #1e3a5f;
}

.notification-tab.active[b-likx4lk4uk] {
    color: #1e3a5f;
}

.notification-tab.active[b-likx4lk4uk]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 14px;
    right: 14px;
    height: 2px;
    background: rgba(30, 58, 95, 0.9);
    border-radius: 2px 2px 0 0;
}

.tab-badge[b-likx4lk4uk] {
    min-width: 18px;
    height: 18px;
    padding: 0 6px;
    font-size: 11px;
    font-weight: 700;
    color: white;
    background: rgba(30, 58, 95, 0.9);
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Notification List */
.notification-list[b-likx4lk4uk] {
    flex: 1;
    overflow-y: auto;
    max-height: 320px;
}

.notification-item[b-likx4lk4uk] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 14px;
    border-bottom: 1px solid #f1f5f9;
    cursor: pointer;
    transition: background-color 0.15s ease;
}

.notification-item:hover[b-likx4lk4uk] {
    background-color: #f8fafc;
}

.notification-item:last-child[b-likx4lk4uk] {
    border-bottom: none;
}

/* Unread notifications - more prominent styling */
.notification-item.unread[b-likx4lk4uk] {
    background-color: #f0f7ff;
    border-left: 3px solid #3b82f6;
    position: relative;
    padding-right: 32px; /* Make room for the unread indicator dot */
}

.notification-item.unread[b-likx4lk4uk]::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 14px;
    transform: translateY(-50%);
    width: 8px;
    height: 8px;
    background-color: #3b82f6;
    border-radius: 50%;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.2);
}

.notification-item.unread:hover[b-likx4lk4uk] {
    background-color: #e0efff;
}

.notification-item.unread .notification-title[b-likx4lk4uk] {
    font-weight: 600;
    color: #1e293b;
}

/* Read notifications - muted styling */
.notification-item:not(.unread)[b-likx4lk4uk] {
    opacity: 0.75;
}

.notification-item:not(.unread):hover[b-likx4lk4uk] {
    opacity: 1;
}

.notification-item:not(.unread) .notification-title[b-likx4lk4uk] {
    font-weight: 500;
    color: #64748b;
}

/* Severity Badges */
.notification-severity[b-likx4lk4uk] {
    flex-shrink: 0;
    padding: 3px 8px;
    font-size: 10px;
    font-weight: 700;
    border-radius: 6px;
    text-transform: uppercase;
    letter-spacing: 0.25px;
}

.severity-ok[b-likx4lk4uk] {
    background: rgba(16, 185, 129, 0.14);
    color: #047857;
}

.severity-wrn[b-likx4lk4uk] {
    background: rgba(245, 158, 11, 0.16);
    color: #92400e;
}

.severity-err[b-likx4lk4uk] {
    background: rgba(239, 68, 68, 0.14);
    color: #991b1b;
}

.severity-info[b-likx4lk4uk] {
    background: rgba(59, 130, 246, 0.14);
    color: #1d4ed8;
}

/* Notification Content */
.notification-content[b-likx4lk4uk] {
    flex: 1;
    min-width: 0;
}

.notification-title[b-likx4lk4uk] {
    font-size: 14px;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Unread notification title - bold and dark */
.notification-item.unread .notification-title[b-likx4lk4uk] {
    font-weight: 700;
    color: #0f172a;
}

/* Read notification title - lighter */
.notification-item:not(.unread) .notification-title[b-likx4lk4uk] {
    font-weight: 500;
    color: #64748b;
}

.notification-message[b-likx4lk4uk] {
    font-size: 13px;
    color: #64748b;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Read notification message - lighter */
.notification-item:not(.unread) .notification-message[b-likx4lk4uk] {
    color: #94a3b8;
}

.notification-time[b-likx4lk4uk] {
    flex-shrink: 0;
    font-size: 12px;
    color: #94a3b8;
    white-space: nowrap;
}

/* Empty State */
.notification-empty[b-likx4lk4uk] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px 24px;
    color: #94a3b8;
}

.notification-empty svg[b-likx4lk4uk] {
    width: 48px;
    height: 48px;
    margin-bottom: 12px;
    opacity: 0.5;
}

.notification-empty p[b-likx4lk4uk] {
    margin: 0;
    font-size: 14px;
}

/* Loading Skeleton */
.notification-item.skeleton[b-likx4lk4uk] {
    cursor: default;
}

.skeleton-badge[b-likx4lk4uk] {
    width: 52px;
    height: 24px;
    background: linear-gradient(90deg, #e5e7eb 25%, #f3f4f6 50%, #e5e7eb 75%);
    background-size: 200% 100%;
    animation: skeleton-shimmer-b-likx4lk4uk 1.5s infinite;
    border-radius: 6px;
}

.skeleton-content[b-likx4lk4uk] {
    flex: 1;
}

.skeleton-title[b-likx4lk4uk] {
    width: 70%;
    height: 14px;
    background: linear-gradient(90deg, #e5e7eb 25%, #f3f4f6 50%, #e5e7eb 75%);
    background-size: 200% 100%;
    animation: skeleton-shimmer-b-likx4lk4uk 1.5s infinite;
    border-radius: 4px;
    margin-bottom: 8px;
}

.skeleton-message[b-likx4lk4uk] {
    width: 90%;
    height: 12px;
    background: linear-gradient(90deg, #e5e7eb 25%, #f3f4f6 50%, #e5e7eb 75%);
    background-size: 200% 100%;
    animation: skeleton-shimmer-b-likx4lk4uk 1.5s infinite;
    border-radius: 4px;
}

.skeleton-time[b-likx4lk4uk] {
    width: 40px;
    height: 12px;
    background: linear-gradient(90deg, #e5e7eb 25%, #f3f4f6 50%, #e5e7eb 75%);
    background-size: 200% 100%;
    animation: skeleton-shimmer-b-likx4lk4uk 1.5s infinite;
    border-radius: 4px;
}

@keyframes skeleton-shimmer-b-likx4lk4uk {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* Footer */
.notification-footer[b-likx4lk4uk] {
    padding: 10px 14px;
    border-top: 1px solid #eef2f7;
    text-align: center;
}

.view-all-link[b-likx4lk4uk] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 600;
    color: rgba(30, 58, 95, 0.95);
    text-decoration: none;
    transition: color 0.2s ease;
}

.view-all-link:hover[b-likx4lk4uk] {
    color: #2d5a87;
}

.view-all-link svg[b-likx4lk4uk] {
    width: 16px;
    height: 16px;
}

/* Overlay for closing */
.notification-overlay[b-likx4lk4uk] {
    position: fixed;
    inset: 0;
    z-index: 999;
    background: transparent;
}

@media (max-width: 575.98px) {
    .notification-overlay[b-likx4lk4uk] {
        background: rgba(15, 23, 42, 0.18);
    }
}
/* /Components/Shared/OfflineVeracheckFields.razor.rz.scp.css */
/* Each field stacks its label over its control. Hosts space them: the admin modal wants the ~1rem
   gap its old .mb-3 gave, the recovery banner's grid supplies its own gap and zeroes this out. */
.offline-field[b-shjc5by07f] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin-bottom: 1rem;
}

.offline-field:last-of-type[b-shjc5by07f] {
    margin-bottom: 0;
}
/* /Components/Shared/Pagination.razor.rz.scp.css */
/* ========================================
   Pagination Component - Soft Style
   ======================================== */

.pagination-container[b-z0orqg2p5x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    gap: 16px;
}

.pagination-summary[b-z0orqg2p5x] {
    font-size: 0.875rem;
    color: #6B7280;
    white-space: nowrap;
}

.pagination-controls[b-z0orqg2p5x] {
    display: flex;
    align-items: center;
    gap: 16px;
}

/* Page Size Selector */
.page-size-selector[b-z0orqg2p5x] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.page-size-label[b-z0orqg2p5x] {
    font-size: 0.875rem;
    color: #6B7280;
    white-space: nowrap;
}

.page-size-select[b-z0orqg2p5x] {
    width: auto;
    min-width: 70px;
    padding: 4px 28px 4px 10px;
    font-size: 0.875rem;
    border: 1px solid #E5E7EB;
    border-radius: 6px;
    background-color: white;
    cursor: pointer;
    transition: border-color 0.2s ease;
}

.page-size-select:hover[b-z0orqg2p5x] {
    border-color: #D1D5DB;
}

.page-size-select:focus[b-z0orqg2p5x] {
    border-color: #f59e0b;
    box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.1);
    outline: none;
}

/* Pagination Navigation */
.pagination-nav[b-z0orqg2p5x] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.pagination-soft[b-z0orqg2p5x] {
    background: transparent;
    padding: 0;
    border-radius: 8px;
    box-shadow: none;
    gap: 2px;
}

.subtle-page-link[b-z0orqg2p5x] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 1px solid transparent;
    color: #6B7280;
    background: transparent;
    min-width: 36px;
    padding: 6px 12px;
    text-align: center;
    border-radius: 6px !important;
    transition: all 0.2s ease;
    font-weight: 400;
    font-size: 14px;
    cursor: pointer;
}

.subtle-page-link:hover:not(:disabled)[b-z0orqg2p5x] {
    color: #374151;
    border-color: transparent;
    background: #F3F4F6;
    box-shadow: none;
}

.page-item.active .subtle-page-link[b-z0orqg2p5x] {
    background: #fef3e2;
    border-color: transparent;
    color: #f59e0b;
    font-weight: 500;
    box-shadow: none;
}

.page-item.disabled .subtle-page-link[b-z0orqg2p5x] {
    color: #D1D5DB;
    border-color: transparent;
    background: transparent;
    cursor: not-allowed;
    opacity: 0.4;
    box-shadow: none;
}

/* ========================================
   Compact Mode
   ======================================== */
.pagination-compact[b-z0orqg2p5x] {
    padding: 8px 12px;
    gap: 12px;
}

.pagination-compact .pagination-summary[b-z0orqg2p5x] {
    font-size: 0.8125rem;
}

.pagination-compact .subtle-page-link[b-z0orqg2p5x] {
    min-width: 30px;
    padding: 4px 8px;
    font-size: 13px;
}

.pagination-compact .page-size-select[b-z0orqg2p5x] {
    padding: 2px 24px 2px 8px;
    font-size: 0.8125rem;
    min-width: 60px;
}

.pagination-compact .page-size-label[b-z0orqg2p5x] {
    font-size: 0.8125rem;
}

/* ========================================
   Responsive Adjustments
   ======================================== */
@media (max-width: 768px) {
    .pagination-container[b-z0orqg2p5x] {
        flex-direction: column;
        gap: 12px;
        align-items: stretch;
    }
    
    .pagination-controls[b-z0orqg2p5x] {
        justify-content: space-between;
    }
    
    .pagination-summary[b-z0orqg2p5x] {
        text-align: center;
    }
}

@media (max-width: 576px) {
    .pagination-controls[b-z0orqg2p5x] {
        flex-direction: column;
        gap: 12px;
    }
    
    .page-size-selector[b-z0orqg2p5x] {
        justify-content: center;
    }
    
    .pagination-nav[b-z0orqg2p5x] {
        justify-content: center;
    }
    
    /* Hide Previous/Next text on very small screens */
    .subtle-page-link span[b-z0orqg2p5x] {
        display: none;
    }
}

/* /Components/Shared/PayloadViewer.razor.rz.scp.css */
/* ========================================
   Payload Viewer — Details / JSON toggle
   Tokens mirror VERAcheckRequestDetailPage.
   ======================================== */

.payload-viewer[b-dor41zqpmy] {
    background: white;
    border: 1px solid var(--border-light, #e5e7eb);
    border-radius: var(--radius-lg, 12px);
    padding: 24px;
    margin-bottom: 20px;
    box-shadow: var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, 0.04));
}

/* Embedded mode — no card chrome; sits inside a host card/row that owns the label. */
.payload-viewer.embedded[b-dor41zqpmy] {
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 0;
    margin-bottom: 0;
    box-shadow: none;
}

.pv-toolbar[b-dor41zqpmy] {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 8px;
}

.table-card-header[b-dor41zqpmy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--border-light, #e5e7eb);
}

.table-card-title[b-dor41zqpmy] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary, #111827);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.table-card-title i[b-dor41zqpmy] {
    color: var(--brand-500, #3b82f6);
}

/* ---- Segmented toggle ---- */

.view-toggle[b-dor41zqpmy] {
    display: inline-flex;
    background: var(--neutral-100, #f3f4f6);
    border: 1px solid var(--border-light, #e5e7eb);
    border-radius: 999px;
    padding: 3px;
    gap: 2px;
}

.toggle-btn[b-dor41zqpmy] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: none;
    background: transparent;
    color: var(--text-secondary, #6b7280);
    font-size: 12px;
    font-weight: 600;
    padding: 5px 14px;
    border-radius: 999px;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
}

.toggle-btn:hover[b-dor41zqpmy] {
    color: var(--text-primary, #111827);
}

.toggle-btn.active[b-dor41zqpmy] {
    background: white;
    color: var(--brand-600, #2563eb);
    box-shadow: var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, 0.08));
}

/* ---- Raw JSON ---- */

.raw-json[b-dor41zqpmy] {
    background: var(--neutral-50, #fafafa);
    border: 1px solid var(--border-light, #e5e7eb);
    border-radius: 8px;
    padding: 12px 16px;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: 12px;
    color: var(--text-primary, #111827);
    overflow-x: auto;
    white-space: pre-wrap;
    word-break: break-all;
    margin: 0;
}

.parse-note[b-dor41zqpmy] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--text-secondary, #6b7280);
    margin-bottom: 12px;
}

/* ---- Readable detail tree (child JsonTreeNode markup) ---- */

.detail-tree[b-dor41zqpmy] {
    font-size: 14px;
    color: var(--text-primary, #111827);
}

.detail-tree[b-dor41zqpmy]  .json-object {
    display: flex;
    flex-direction: column;
}

.detail-tree[b-dor41zqpmy]  .json-row {
    display: flex;
    align-items: baseline;
    gap: 16px;
    padding: 8px 0;
    border-bottom: 1px solid var(--border-light, #f0f1f3);
}

.detail-tree[b-dor41zqpmy]  .json-row:last-child {
    border-bottom: none;
}

.detail-tree[b-dor41zqpmy]  .json-key {
    flex: 0 0 200px;
    max-width: 200px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
    color: var(--text-muted, #9ca3af);
    line-height: 1.5;
}

.detail-tree[b-dor41zqpmy]  .json-val {
    flex: 1;
    min-width: 0;
    word-break: break-word;
}

/* Nested objects / arrays drop the value onto its own indented block.
   Use plain block flow here — flex baseline + flex:1 (from .json-row/.json-val)
   would stretch the value and open a large gap under the key. */
.detail-tree[b-dor41zqpmy]  .json-row-block {
    display: block;
    padding: 12px 0;
}

.detail-tree[b-dor41zqpmy]  .json-row-block > .json-key {
    display: block;
    max-width: none;
    margin-bottom: 8px;
}

.detail-tree[b-dor41zqpmy]  .json-row-block > .json-val {
    margin-left: 4px;
    padding-left: 16px;
    border-left: 2px solid var(--border-light, #e5e7eb);
}

.detail-tree[b-dor41zqpmy]  .json-array {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.detail-tree[b-dor41zqpmy]  .json-array > li {
    padding: 8px 12px;
    background: var(--neutral-50, #fafafa);
    border-radius: 6px;
}

.detail-tree[b-dor41zqpmy]  .json-scalar {
    color: var(--text-primary, #111827);
}

.detail-tree[b-dor41zqpmy]  .json-empty {
    color: var(--text-muted, #9ca3af);
    font-style: italic;
}

@media (max-width: 640px) {
    .detail-tree[b-dor41zqpmy]  .json-row {
        flex-direction: column;
        gap: 2px;
    }

    .detail-tree[b-dor41zqpmy]  .json-key {
        flex-basis: auto;
        max-width: none;
    }
}
/* /Components/Shared/ProcessInsightsPanel.razor.rz.scp.css */
/* Process Insights Card - Dashboard Theme */
.process-insights-card[b-mvgerirotu] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 20px;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: all 0.2s ease;
}

.process-insights-card:hover[b-mvgerirotu] {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

/* Card Header */
.process-insights-card .card-header[b-mvgerirotu] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    padding: 0;
    border: none;
    background: transparent;
}

.process-insights-card .card-title[b-mvgerirotu] {
    font-size: 14px;
    font-weight: 600;
    color: #374151;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.process-insights-card .card-title i[b-mvgerirotu] {
    color: var(--brand-500);
}

.process-insights-card .live-badge[b-mvgerirotu] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 600;
    color: #059669;
    background: #d1fae5;
    padding: 4px 10px;
    border-radius: 12px;
}

.process-insights-card .live-dot[b-mvgerirotu] {
    width: 6px;
    height: 6px;
    background: #059669;
    border-radius: 50%;
    animation: pulse-dot-b-mvgerirotu 2s infinite;
}

@keyframes pulse-dot-b-mvgerirotu {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.4; }
}

/* Loading State */
.process-insights-card .loading-state[b-mvgerirotu] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    gap: 12px;
    color: #6b7280;
    font-size: 13px;
}

/* Metrics Grid */
.process-insights-card .metrics-grid[b-mvgerirotu] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 12px;
}

.process-insights-card .metric-item[b-mvgerirotu] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px;
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
    border-radius: 10px;
    transition: all 0.2s ease;
}

.process-insights-card .metric-item:hover[b-mvgerirotu] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.12);
}

.process-insights-card .metric-icon[b-mvgerirotu] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;
}

.process-insights-card .metric-icon.referral-time[b-mvgerirotu] {
    background: #dbeafe;
    color: #2563eb;
}

.process-insights-card .metric-icon.approval-rate[b-mvgerirotu] {
    background: #d1fae5;
    color: #059669;
}

.process-insights-card .metric-content[b-mvgerirotu] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.process-insights-card .metric-label[b-mvgerirotu] {
    font-size: 10px;
    font-weight: 600;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 2px;
}

.process-insights-card .metric-value[b-mvgerirotu] {
    font-size: 18px;
    font-weight: 700;
    color: #1f2937;
    line-height: 1.2;
}

/* Highlight Items (Warning/Danger) */
.process-insights-card .highlight-item[b-mvgerirotu] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 14px;
    border-radius: 10px;
    margin-bottom: 10px;
}

.process-insights-card .highlight-item.warning[b-mvgerirotu] {
    background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 100%);
    border-left: 3px solid #f59e0b;
}

.process-insights-card .highlight-item.danger[b-mvgerirotu] {
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
    border-left: 3px solid #ef4444;
}

.process-insights-card .highlight-icon[b-mvgerirotu] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
}

.process-insights-card .highlight-item.warning .highlight-icon[b-mvgerirotu] {
    background: #fef3c7;
    color: #d97706;
}

.process-insights-card .highlight-item.danger .highlight-icon[b-mvgerirotu] {
    background: #fee2e2;
    color: var(--error-600);
}

.process-insights-card .highlight-content[b-mvgerirotu] {
    flex: 1;
    min-width: 0;
}

.process-insights-card .highlight-label[b-mvgerirotu] {
    font-size: 10px;
    font-weight: 600;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 2px;
}

.process-insights-card .highlight-value[b-mvgerirotu] {
    font-size: 13px;
    font-weight: 600;
    color: #1f2937;
    line-height: 1.3;
}

.process-insights-card .highlight-item.danger .highlight-value[b-mvgerirotu] {
    color: var(--error-600);
}

/* Performance Section */
.process-insights-card .performance-section[b-mvgerirotu] {
    margin-top: 8px;
    padding-top: 16px;
    border-top: 1px solid #e5e7eb;
}

.process-insights-card .section-title[b-mvgerirotu] {
    font-size: 11px;
    font-weight: 600;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 12px;
}

.process-insights-card .performance-list[b-mvgerirotu] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.process-insights-card .performance-item[b-mvgerirotu] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 12px;
    background: #f9fafb;
    border-radius: 8px;
    transition: background-color 0.2s ease;
}

.process-insights-card .performance-item:hover[b-mvgerirotu] {
    background: #f3f4f6;
}

.process-insights-card .performance-name[b-mvgerirotu] {
    font-size: 13px;
    color: #6b7280;
}

.process-insights-card .performance-value-container[b-mvgerirotu] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.process-insights-card .performance-value[b-mvgerirotu] {
    font-size: 14px;
    font-weight: 600;
    color: #1f2937;
}

.process-insights-card .trend-badge[b-mvgerirotu] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
}

.process-insights-card .trend-badge.positive[b-mvgerirotu] {
    background: #d1fae5;
    color: #059669;
}

.process-insights-card .trend-badge.negative[b-mvgerirotu] {
    background: #fee2e2;
    color: var(--error-600);
}

.process-insights-card .trend-badge.neutral[b-mvgerirotu] {
    background: #f3f4f6;
    color: #9ca3af;
}

/* Refresh Button */
.process-insights-card .refresh-btn[b-mvgerirotu] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 10px 16px;
    margin-top: 16px;
    background: transparent;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    color: var(--brand-500);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.process-insights-card .refresh-btn:hover:not(:disabled)[b-mvgerirotu] {
    background: #f0f9ff;
    border-color: var(--brand-500);
}

.process-insights-card .refresh-btn:disabled[b-mvgerirotu] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Empty State */
.process-insights-card .empty-state[b-mvgerirotu] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    text-align: center;
}

.process-insights-card .empty-state i[b-mvgerirotu] {
    font-size: 48px;
    color: #d1d5db;
    margin-bottom: 12px;
}

.process-insights-card .empty-state p[b-mvgerirotu] {
    color: #9ca3af;
    margin-bottom: 16px;
    font-size: 14px;
}

/* Responsive */
@media (max-width: 576px) {
    .process-insights-card .metrics-grid[b-mvgerirotu] {
        grid-template-columns: 1fr;
    }
    
    .process-insights-card .metric-value[b-mvgerirotu] {
        font-size: 16px;
    }
}
/* /Components/Shared/QuillEditor.razor.rz.scp.css */
/* ========================================
   Quill Editor Component Styles
   LECA Theme Integration
   ======================================== */

.quill-editor-wrapper[b-l0zyb58ady] {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: var(--radius-md, 8px);
    background: var(--bg-surface, #ffffff);
    min-height: 0; /* Allow flex shrinking */
    overflow: hidden;
}

.quill-editor-wrapper.readonly[b-l0zyb58ady] {
    opacity: 0.7;
    pointer-events: none;
}

/* Toolbar Extensions (Variable Dropdown, Code Toggle) */
.quill-toolbar-extensions[b-l0zyb58ady] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-default, #e5e7eb);
    border-radius: var(--radius-md, 8px) var(--radius-md, 8px) 0 0;
    flex-shrink: 0;
    position: relative; /* For dropdown positioning */
}

/* Variable Dropdown */
.variable-dropdown[b-l0zyb58ady] {
    position: relative;
    z-index: 10;
}

.variable-dropdown-menu[b-l0zyb58ady] {
    position: fixed;
    z-index: 1100;
    min-width: 280px;
    max-height: 320px;
    background: var(--bg-surface, #ffffff);
    border: 1px solid var(--border-default, #e5e7eb);
    border-radius: var(--radius-md, 8px);
    box-shadow: var(--shadow-lg, 0 10px 15px -3px rgba(0, 0, 0, 0.1));
    overflow: hidden;
}

.variable-search[b-l0zyb58ady] {
    padding: 8px;
    border-bottom: 1px solid var(--border-default, #e5e7eb);
}

.variable-search input[b-l0zyb58ady] {
    width: 100%;
}

.variable-list[b-l0zyb58ady] {
    max-height: 250px;
    overflow-y: auto;
}

.variable-item[b-l0zyb58ady] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    padding: 8px 12px;
    border: none;
    background: transparent;
    text-align: left;
    cursor: pointer;
    transition: background-color 0.15s ease;
}

.variable-item:hover[b-l0zyb58ady] {
    background: var(--bg-hover, #f1f5f9);
}

.variable-item code[b-l0zyb58ady] {
    font-size: 13px;
    font-weight: 600;
    color: var(--brand-600);
    background: var(--brand-50);
    padding: 2px 6px;
    border-radius: 4px;
    margin-bottom: 2px;
}

.variable-item .variable-name[b-l0zyb58ady] {
    font-size: 12px;
    color: var(--text-muted, #64748b);
    text-transform: capitalize;
}

.variable-empty[b-l0zyb58ady] {
    padding: 16px;
    text-align: center;
    color: var(--text-muted, #64748b);
    font-size: 13px;
}

.variable-dropdown-backdrop[b-l0zyb58ady] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1099;
}

/* Quill Container */
.quill-container[b-l0zyb58ady] {
    min-height: 200px;
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* Override Quill's default styles to match LECA theme */
[b-l0zyb58ady] .ql-toolbar.ql-snow {
    border: none;
    border-bottom: 1px solid var(--border-default, #e5e7eb);
    background: var(--neutral-50);
    padding: 8px;
    flex-shrink: 0;
}

[b-l0zyb58ady] .ql-container.ql-snow {
    border: none;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 14px;
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

[b-l0zyb58ady] .ql-editor {
    min-height: 150px;
    padding: 16px;
    line-height: 1.6;
    flex: 1;
    overflow-y: auto;
}

/* Custom scrollbar for Quill editor */
[b-l0zyb58ady] .ql-editor::-webkit-scrollbar {
    width: 6px;
}

[b-l0zyb58ady] .ql-editor::-webkit-scrollbar-track {
    background: transparent;
}

[b-l0zyb58ady] .ql-editor::-webkit-scrollbar-thumb {
    background: var(--neutral-300);
    border-radius: 3px;
}

[b-l0zyb58ady] .ql-editor::-webkit-scrollbar-thumb:hover {
    background: var(--neutral-400);
}

/* Firefox scrollbar */
[b-l0zyb58ady] .ql-editor {
    scrollbar-width: thin;
    scrollbar-color: var(--neutral-300) transparent;
}

[b-l0zyb58ady] .ql-editor.ql-blank::before {
    color: var(--text-muted, #64748b);
    font-style: normal;
}

[b-l0zyb58ady] .ql-snow .ql-picker {
    color: var(--text-secondary, #475569);
}

[b-l0zyb58ady] .ql-snow .ql-stroke {
    stroke: var(--text-secondary, #475569);
}

[b-l0zyb58ady] .ql-snow .ql-fill {
    fill: var(--text-secondary, #475569);
}

[b-l0zyb58ady] .ql-snow .ql-picker-options {
    background: var(--bg-surface, #ffffff);
    border-color: var(--border-default, #e5e7eb);
    border-radius: var(--radius-md, 8px);
    box-shadow: var(--shadow-lg, 0 10px 15px -3px rgba(0, 0, 0, 0.1));
}

[b-l0zyb58ady] .ql-snow .ql-tooltip {
    background: var(--bg-surface, #ffffff);
    border-color: var(--border-default, #e5e7eb);
    border-radius: var(--radius-md, 8px);
    box-shadow: var(--shadow-lg, 0 10px 15px -3px rgba(0, 0, 0, 0.1));
    color: var(--text-primary, #0f172a);
}

[b-l0zyb58ady] .ql-snow .ql-tooltip input[type="text"] {
    border-color: var(--border-default, #e5e7eb);
    border-radius: var(--radius-sm, 4px);
}

[b-l0zyb58ady] .ql-snow .ql-tooltip a.ql-action::after,
[b-l0zyb58ady] .ql-snow .ql-tooltip a.ql-remove::before {
    color: var(--brand-600);
}

[b-l0zyb58ady] .ql-snow.ql-toolbar button:hover,
[b-l0zyb58ady] .ql-snow .ql-toolbar button:hover,
[b-l0zyb58ady] .ql-snow.ql-toolbar button:focus,
[b-l0zyb58ady] .ql-snow .ql-toolbar button:focus,
[b-l0zyb58ady] .ql-snow.ql-toolbar .ql-picker-label:hover,
[b-l0zyb58ady] .ql-snow .ql-toolbar .ql-picker-label:hover {
    color: var(--brand-600);
}

[b-l0zyb58ady] .ql-snow.ql-toolbar button:hover .ql-stroke,
[b-l0zyb58ady] .ql-snow .ql-toolbar button:hover .ql-stroke,
[b-l0zyb58ady] .ql-snow.ql-toolbar button:focus .ql-stroke,
[b-l0zyb58ady] .ql-snow .ql-toolbar button:focus .ql-stroke {
    stroke: var(--brand-600);
}

[b-l0zyb58ady] .ql-snow.ql-toolbar button:hover .ql-fill,
[b-l0zyb58ady] .ql-snow .ql-toolbar button:hover .ql-fill,
[b-l0zyb58ady] .ql-snow.ql-toolbar button:focus .ql-fill,
[b-l0zyb58ady] .ql-snow .ql-toolbar button:focus .ql-fill {
    fill: var(--brand-600);
}

[b-l0zyb58ady] .ql-snow.ql-toolbar button.ql-active,
[b-l0zyb58ady] .ql-snow .ql-toolbar button.ql-active {
    color: var(--brand-600);
}

[b-l0zyb58ady] .ql-snow.ql-toolbar button.ql-active .ql-stroke,
[b-l0zyb58ady] .ql-snow .ql-toolbar button.ql-active .ql-stroke {
    stroke: var(--brand-600);
}

[b-l0zyb58ady] .ql-snow.ql-toolbar button.ql-active .ql-fill,
[b-l0zyb58ady] .ql-snow .ql-toolbar button.ql-active .ql-fill {
    fill: var(--brand-600);
}

/* Code View (HTML Editor) */
.quill-code-editor[b-l0zyb58ady] {
    width: 100%;
    min-height: 300px;
    padding: 16px;
    border: none;
    font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
    font-size: 13px;
    line-height: 1.5;
    resize: vertical;
    background: var(--neutral-900);
    color: var(--neutral-100);
}

.quill-code-editor:focus[b-l0zyb58ady] {
    outline: none;
}

.quill-code-editor[b-l0zyb58ady]::placeholder {
    color: var(--neutral-500);
}

/* Focus state for wrapper */
.quill-editor-wrapper:focus-within[b-l0zyb58ady] {
    border-color: var(--brand-400);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

/* /Components/Shared/RatingModel/LoanTypeFactorRow.razor.rz.scp.css */
/* Loan Type Factor Row Styles */

.loan-type-factor-row[b-mf3wkpeube] {
    transition: all 0.2s ease;
    border-bottom: 1px solid #E2E8F0;
}

.loan-type-factor-row:hover[b-mf3wkpeube] {
    background-color: rgba(227, 241, 251, 0.3);
}

.loan-type-factor-row.highlighted[b-mf3wkpeube] {
    background-color: rgba(251, 191, 36, 0.1);
    border-left: 3px solid #F59E0B;
}

.loan-type-name[b-mf3wkpeube] {
    font-weight: 600;
    color: #1F2937;
    padding: 16px;
}

.type-name-wrapper[b-mf3wkpeube] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.type-icon[b-mf3wkpeube] {
    font-size: 18px;
    color: var(--brand-500);
}

.factor-description[b-mf3wkpeube] {
    color: #64748B;
    font-size: 14px;
    padding: 16px;
    line-height: 1.5;
}

.description-text[b-mf3wkpeube] {
    display: block;
}

.factor-input-cell[b-mf3wkpeube] {
    padding: 16px;
}

.input-group-compact[b-mf3wkpeube] {
    display: flex;
    align-items: center;
    max-width: 140px;
}

.factor-input[b-mf3wkpeube] {
    width: 100%;
    padding: 10px 14px;
    border: 2px solid #E2E8F0;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #1F2937;
    transition: all 0.2s ease;
    text-align: right;
}

.factor-input:focus[b-mf3wkpeube] {
    outline: none;
    border-color: var(--brand-500);
    box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08);
}

.factor-input.debit[b-mf3wkpeube] {
    border-color: #FBBF24;
    background-color: rgba(251, 191, 36, 0.05);
}

.factor-input.credit[b-mf3wkpeube] {
    border-color: #10B981;
    background-color: rgba(16, 185, 129, 0.05);
}

.factor-input.neutral[b-mf3wkpeube] {
    border-color: #E2E8F0;
    background-color: #F8FAFC;
}

.factor-input:disabled[b-mf3wkpeube] {
    background-color: #F1F5F9;
    color: #94A3B8;
    cursor: not-allowed;
}

.preview-cell[b-mf3wkpeube] {
    padding: 16px;
    text-align: center;
}

.badge-debit[b-mf3wkpeube],
.badge-credit[b-mf3wkpeube],
.badge-neutral[b-mf3wkpeube],
.badge-disabled[b-mf3wkpeube] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 600;
    white-space: nowrap;
}

.badge-debit[b-mf3wkpeube] {
    background: linear-gradient(135deg, #FEF3C7 0%, #FDE68A 100%);
    color: #B45309;
    border: 1px solid #FCD34D;
}

.badge-credit[b-mf3wkpeube] {
    background: linear-gradient(135deg, #D1FAE5 0%, #A7F3D0 100%);
    color: #047857;
    border: 1px solid #6EE7B7;
}

.badge-neutral[b-mf3wkpeube] {
    background: linear-gradient(135deg, #F1F5F9 0%, #E2E8F0 100%);
    color: #64748B;
    border: 1px solid #CBD5E1;
}

.badge-disabled[b-mf3wkpeube] {
    background: #F8FAFC;
    color: #94A3B8;
    border: 1px solid #E2E8F0;
}

.badge-debit i[b-mf3wkpeube],
.badge-credit i[b-mf3wkpeube],
.badge-neutral i[b-mf3wkpeube] {
    font-size: 14px;
}

/* /Components/Shared/RatingModel/PropertyTypeRow.razor.rz.scp.css */
/* Property Type Row Styles */

.property-type-name[b-lddl3risjz] {
    font-weight: 600;
    color: #1F2937;
}

.decline-cell[b-lddl3risjz] {
    text-align: center;
}

.decline-checkbox[b-lddl3risjz] {
    width: 20px;
    height: 20px;
    cursor: pointer;
}

.delete-cell[b-lddl3risjz] {
    text-align: center;
}

.btn-delete[b-lddl3risjz] {
    padding: 6px 10px;
    background: white;
    color: #EF4444;
    border: 1px solid #EF4444;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
    font-size: 14px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.btn-delete:hover[b-lddl3risjz] {
    background: #EF4444;
    color: white;
}

.btn-delete i[b-lddl3risjz] {
    font-size: 14px;
}

.badge-decline[b-lddl3risjz] {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    background: #FEE2E2;
    color: var(--error-600);
}

/* /Components/Shared/RatingModel/RateTable.razor.rz.scp.css */

.table-title[b-90vsunq802] {
    font-size: 16px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 4px 0;
}

.table-subtitle[b-90vsunq802] {
    font-size: 13px;
    color: #64748B;
    margin: 0;
}

.btn-add-rate[b-90vsunq802] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-add-rate:hover[b-90vsunq802] {
    background: var(--brand-700, #003760);
}

.btn-add-rate i[b-90vsunq802] {
    font-size: 16px;
}

.rate-table-body[b-90vsunq802] {
    overflow-x: auto;
}

.rate-table[b-90vsunq802] {
    width: 100%;
    border-collapse: collapse;
}

.rate-table thead[b-90vsunq802] {
    background: #F8FAFC;
}

.rate-table th[b-90vsunq802] {
    padding: 12px 16px;
    text-align: left;
    font-size: 13px;
    font-weight: 600;
    color: #475569;
    border-bottom: 2px solid #E2E8F0;
    white-space: nowrap;
}

.rate-table th.actions-column[b-90vsunq802] {
    text-align: center;
    width: 120px;
}

.rate-table tbody tr[b-90vsunq802] {
    transition: background-color 0.2s;
}

.rate-table tbody tr:hover[b-90vsunq802] {
    background: #F8FAFC;
}

.rate-table td[b-90vsunq802] {
    padding: 14px 16px;
    font-size: 14px;
    color: #1F2937;
    border-bottom: 1px solid #E2E8F0;
}

.rate-table tbody tr:last-child td[b-90vsunq802] {
    border-bottom: none;
}

/* Responsive */
@media (max-width: 768px) {
    .rate-table-header[b-90vsunq802] {
        flex-direction: column;
        gap: 16px;
        align-items: flex-start;
    }

    .btn-add-rate[b-90vsunq802] {
        width: 100%;
        justify-content: center;
    }
}
.rate-table-container[b-90vsunq802] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    overflow: hidden;
}

.rate-table-header[b-90vsunq802] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    background: linear-gradient(135deg, #F8FAFC 0%, #FFFFFF 100%);
    border-bottom: 1px solid #E2E8F0;
}

.table-header-info[b-90vsunq802] {
    flex: 1;
}
/* /Components/Shared/RatingModel/RatingFactorCard.razor.rz.scp.css */
.rating-factor-card[b-w7trth8j5m] {
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 12px;
    padding: 20px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.rating-factor-card:hover[b-w7trth8j5m] {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.1);
    border-color: rgba(15, 23, 42, 0.15);
}

.factor-header[b-w7trth8j5m] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 16px;
}

.factor-icon[b-w7trth8j5m] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.8) 0%, rgba(204, 229, 241, 0.6) 100%);
    color: var(--brand-500);
    font-size: 24px;
    flex-shrink: 0;
}

.factor-info[b-w7trth8j5m] {
    flex: 1;
}

.factor-name[b-w7trth8j5m] {
    font-size: 16px;
    font-weight: 700;
    color: #1F2937;
    margin: 0 0 4px 0;
}

.factor-description[b-w7trth8j5m] {
    font-size: 13px;
    color: #64748B;
    margin: 0;
    line-height: 1.5;
}

.factor-actions[b-w7trth8j5m] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.factor-badge[b-w7trth8j5m] {
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.factor-badge.active[b-w7trth8j5m] {
    background: #D1FAE5;
    color: #047857;
}

.factor-badge.pending[b-w7trth8j5m] {
    background: #FEF3C7;
    color: #B45309;
}

.factor-badge.inactive[b-w7trth8j5m] {
    background: #F1F5F9;
    color: #64748B;
}

.factor-details[b-w7trth8j5m] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 16px;
    background: #F8FAFC;
    border-radius: 8px;
    margin-bottom: 16px;
}

.factor-detail-item[b-w7trth8j5m] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.detail-label[b-w7trth8j5m] {
    font-size: 13px;
    color: #64748B;
    font-weight: 500;
}

.detail-value[b-w7trth8j5m] {
    font-size: 14px;
    color: #1F2937;
    font-weight: 600;
}

.factor-footer[b-w7trth8j5m] {
    display: flex;
    gap: 12px;
    padding-top: 16px;
    border-top: 1px solid #E2E8F0;
}

.btn-factor-action[b-w7trth8j5m] {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 16px;
    background: var(--brand-600, #004980);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn-factor-action:hover[b-w7trth8j5m] {
    background: var(--brand-700, #003760);
}

.btn-factor-action.secondary[b-w7trth8j5m] {
    background: transparent;
    color: #64748B;
    border: 1px solid #E2E8F0;
}

.btn-factor-action.secondary:hover[b-w7trth8j5m] {
    background: #F1F5F9;
    color: #0F172A;
}

.btn-factor-action i[b-w7trth8j5m] {
    font-size: 14px;
}

/* /Components/Shared/ScrollToTop.razor.rz.scp.css */
/* Scroll to Top Button */
.scroll-to-top[b-3efmcxq1ed] {
    position: fixed;
    bottom: 32px;
    right: 32px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-700) 100%);
    color: white;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.2);
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition: all 0.3s ease;
    z-index: 998;
}

.scroll-to-top:hover[b-3efmcxq1ed] {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(15, 23, 42, 0.3);
    background: linear-gradient(135deg, var(--brand-600) 0%, var(--brand-800) 100%);
}

.scroll-to-top:active[b-3efmcxq1ed] {
    transform: translateY(0);
}

.scroll-to-top.visible[b-3efmcxq1ed] {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.scroll-to-top i[b-3efmcxq1ed] {
    font-size: 24px;
    font-weight: bold;
}

/* Responsive Design */
@media (max-width: 768px) {
    .scroll-to-top[b-3efmcxq1ed] {
        bottom: 24px;
        right: 24px;
        width: 44px;
        height: 44px;
    }

    .scroll-to-top i[b-3efmcxq1ed] {
        font-size: 20px;
    }
}

@media (max-width: 480px) {
    .scroll-to-top[b-3efmcxq1ed] {
        bottom: 20px;
        right: 20px;
        width: 40px;
        height: 40px;
    }

    .scroll-to-top i[b-3efmcxq1ed] {
        font-size: 18px;
    }
}

/* /Components/Shared/SearchTextBox.razor.rz.scp.css */
/* SearchTextBox Component Styles */

.search-textbox-container[b-o04zlm5xfx] {
    position: relative;
}

.search-textbox-container .input-group[b-o04zlm5xfx] {
    position: relative;
    border-radius: var(--radius-md, 0.375rem);
    transition: box-shadow 0.15s ease-in-out, border-color 0.15s ease-in-out;
}

.search-textbox-container .search-icon[b-o04zlm5xfx] {
    background-color: var(--bs-body-bg, #fff);
    border-right: none;
    color: var(--text-tertiary, #6c757d);
    transition: border-color 0.15s ease-in-out, color 0.15s ease-in-out;
}

.search-textbox-container .search-input[b-o04zlm5xfx] {
    border-left: none;
    padding-right: 2.5rem; /* Make room for clear button or spinner */
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

/* Focus state - custom focus styling */
.search-textbox-container .search-input:focus[b-o04zlm5xfx] {
    border-color: var(--border-light) !important;
    box-shadow: 0 0 0 3px rgba(240, 229, 220, 0.5) !important;
    outline: none !important;
}

.search-textbox-container .search-input:focus-visible[b-o04zlm5xfx] {
    border-color: var(--border-light) !important;
    box-shadow: 0 0 0 3px rgba(240, 229, 220, 0.5) !important;
    outline: none !important;
}

.search-textbox-container .input-group:focus-within .search-icon[b-o04zlm5xfx] {
    border-color: var(--border-light) !important;
    color: var(--brand-600);
}

.search-textbox-container .input-group:focus-within .search-input[b-o04zlm5xfx] {
    border-color: var(--border-light) !important;
    box-shadow: 0 0 0 3px rgba(240, 229, 220, 0.5) !important;
}

/* Override any global focus ring styles */
.search-textbox-container .form-control:focus[b-o04zlm5xfx],
.search-textbox-container .form-control:focus-visible[b-o04zlm5xfx] {
    --bs-focus-ring-color: rgba(240, 229, 220, 0.5);
    border-color: var(--border-light) !important;
    box-shadow: 0 0 0 3px rgba(240, 229, 220, 0.5) !important;
    outline: none !important;
}

/* Clear button styling */
.search-textbox-container .clear-button[b-o04zlm5xfx] {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 5;
    border: none;
    background: transparent;
    color: var(--text-tertiary, #6c757d);
    padding: 0.375rem 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: color 0.15s ease-in-out;
}

.search-textbox-container .clear-button:hover[b-o04zlm5xfx] {
    color: var(--error-500);
}

.search-textbox-container .clear-button:focus[b-o04zlm5xfx] {
    outline: none;
    box-shadow: none;
}

/* Spinner styling */
.search-textbox-container .search-spinner[b-o04zlm5xfx] {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 5;
    border: none;
    background: transparent;
    padding: 0.375rem 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.search-textbox-container .search-spinner .spinner-border[b-o04zlm5xfx] {
    width: 1rem;
    height: 1rem;
    color: var(--brand-500);
}

/* Disabled state */
.search-textbox-container.disabled[b-o04zlm5xfx],
.search-textbox-container:has(.search-input:disabled)[b-o04zlm5xfx] {
    opacity: 0.65;
}

.search-textbox-container .search-input:disabled[b-o04zlm5xfx] {
    cursor: not-allowed;
    background-color: var(--bs-secondary-bg, #e9ecef);
}

.search-textbox-container .search-input:disabled + .search-icon[b-o04zlm5xfx],
.search-textbox-container .search-icon:has(+ .search-input:disabled)[b-o04zlm5xfx] {
    background-color: var(--bs-secondary-bg, #e9ecef);
    cursor: not-allowed;
}


.search-textbox-container .input-group:focus-within .search-input[b-o04zlm5xfx] {
    border-color: var(--bs-primary, #0d6efd);
}

/* /Components/Shared/TabMenu.razor.rz.scp.css */
/* ========================================
   Shared Tab Menu Styles
   Used by IPD, Admin, and other dashboards
   ======================================== */

.tabs-container[b-xo6qqh3u8v] {
    display: flex;
    gap: 4px;
    background: rgba(227, 241, 251, 0.5);
    padding: 6px;
    border-radius: 10px;
    margin-bottom: 16px;
    overflow-x: auto;
    border: 1px solid rgba(15, 23, 42, 0.08);
}

.tabs-container .tab-button[b-xo6qqh3u8v] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border: none;
    background: transparent;
    color: #6B7280;
    font-size: 14px;
    font-weight: 500;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.tabs-container .tab-button:hover[b-xo6qqh3u8v] {
    background: rgba(255, 255, 255, 0.7);
    color: #374151;
}

.tabs-container .tab-button.active[b-xo6qqh3u8v] {
    background: white;
    color: var(--brand-500);
    font-weight: 600;
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.1);
}

.tabs-container .tab-badge[b-xo6qqh3u8v] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    font-size: 11px;
    font-weight: 600;
    border-radius: 10px;
    background: rgba(15, 23, 42, 0.1);
    color: var(--brand-500);
}

/* Subtle cue that an inactive tab also holds matching results during an active search.
   A gentle, one-shot pulse on the tab header — consistent with the app's existing
   fade/scale animations, never a looping distraction. */
.tabs-container .tab-button.has-results[b-xo6qqh3u8v] {
    animation: tab-has-results-pulse-b-xo6qqh3u8v 1.2s ease-out 1;
}

@keyframes tab-has-results-pulse-b-xo6qqh3u8v {
    0% { box-shadow: 0 0 0 0 rgba(3, 105, 161, 0.35); }
    100% { box-shadow: 0 0 0 8px rgba(3, 105, 161, 0); }
}
/* /Components/Shared/ThemePicker.razor.rz.scp.css */
.theme-picker[b-9kbh6odi49] {
    display: flex;
    flex-direction: column;
    gap: var(--space-md);
}

.theme-picker-grid[b-9kbh6odi49] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: var(--space-md);
}

.theme-swatch[b-9kbh6odi49] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-xs);
    padding: var(--space-sm);
    border: 2px solid var(--border-light);
    border-radius: var(--radius-md);
    background: var(--bg-surface);
    cursor: pointer;
    transition: border-color var(--transition-fast, 0.15s);
}

.theme-swatch:hover:not(:disabled)[b-9kbh6odi49] {
    border-color: var(--border-medium);
}

.theme-swatch-active[b-9kbh6odi49] {
    border-color: var(--brand-500);
}

.theme-swatch:disabled[b-9kbh6odi49] {
    opacity: 0.6;
    cursor: not-allowed;
}

.theme-swatch-preview[b-9kbh6odi49] {
    width: 100%;
    height: 56px;
    border-radius: var(--radius-sm);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--space-xs) var(--space-sm);
}

.theme-swatch-preview-default[b-9kbh6odi49] {
    background: var(--neutral-100);
    justify-content: center;
    color: var(--neutral-500);
    font-size: var(--font-size-lg);
}

.theme-swatch-accent[b-9kbh6odi49] {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    display: inline-block;
}

.theme-swatch-text[b-9kbh6odi49] {
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-medium);
}

.theme-swatch-name[b-9kbh6odi49] {
    font-size: var(--font-size-sm);
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    gap: 4px;
}

.theme-swatch-badge[b-9kbh6odi49] {
    font-size: 10px;
    text-transform: uppercase;
    background: var(--brand-50);
    color: var(--brand-600);
    padding: 1px 6px;
    border-radius: var(--radius-pill);
}

.theme-swatch-check[b-9kbh6odi49] {
    position: absolute;
    top: 6px;
    right: 6px;
    color: var(--success-600);
}

.theme-picker-custom[b-9kbh6odi49] {
    border-top: 1px solid var(--border-light);
    padding-top: var(--space-md);
}

.theme-custom-form[b-9kbh6odi49] {
    display: flex;
    flex-direction: column;
    gap: var(--space-sm);
    max-width: 420px;
}

.theme-custom-field[b-9kbh6odi49] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.theme-custom-field label[b-9kbh6odi49] {
    font-size: var(--font-size-xs);
    color: var(--text-muted);
}

.theme-custom-colors[b-9kbh6odi49] {
    display: grid;
    grid-template-columns: repeat(4, auto);
    gap: var(--space-sm);
}

.theme-custom-preview[b-9kbh6odi49] {
    display: flex;
    align-items: center;
    gap: var(--space-sm);
    padding: var(--space-sm);
    border-radius: var(--radius-sm);
}

.theme-custom-error[b-9kbh6odi49] {
    color: var(--error-600);
    font-size: var(--font-size-sm);
}

.theme-custom-actions[b-9kbh6odi49] {
    display: flex;
    gap: var(--space-sm);
    justify-content: flex-end;
}
/* /Components/Shared/ToastContainer.razor.rz.scp.css */
.toast-wrapper[b-n3q1ldv98d] {
    position: fixed;
    top: 80px;
    right: 20px;
    z-index: 1100;
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-width: 400px;
    pointer-events: none;
}

.toast-item[b-n3q1ldv98d] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px;
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12), 0 2px 8px rgba(0, 0, 0, 0.08);
    border-left: 4px solid;
    pointer-events: auto;
    animation: slideIn-b-n3q1ldv98d 0.3s ease-out;
    min-width: 320px;
}

@keyframes slideIn-b-n3q1ldv98d {
    from {
        opacity: 0;
        transform: translateX(100%);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.toast-item.toast-success[b-n3q1ldv98d] {
    border-left-color: var(--success-500);
}

.toast-item.toast-error[b-n3q1ldv98d] {
    border-left-color: var(--error-500);
}

.toast-item.toast-warning[b-n3q1ldv98d] {
    border-left-color: var(--warning-500);
}

.toast-item.toast-info[b-n3q1ldv98d] {
    border-left-color: var(--brand-500);
}

.toast-icon-wrapper[b-n3q1ldv98d] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    flex-shrink: 0;
}

.toast-icon-wrapper i[b-n3q1ldv98d] {
    font-size: 16px;
}

.toast-icon-wrapper.icon-success[b-n3q1ldv98d] {
    background: var(--success-50);
    color: var(--success-600);
}

.toast-icon-wrapper.icon-error[b-n3q1ldv98d] {
    background: var(--error-50);
    color: var(--error-600);
}

.toast-icon-wrapper.icon-warning[b-n3q1ldv98d] {
    background: var(--warning-50);
    color: var(--warning-600);
}

.toast-icon-wrapper.icon-info[b-n3q1ldv98d] {
    background: var(--brand-50);
    color: var(--brand-600);
}

.toast-content[b-n3q1ldv98d] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.toast-title[b-n3q1ldv98d] {
    font-weight: 600;
    font-size: 14px;
    color: var(--text-primary, #0F172A);
}

.toast-message[b-n3q1ldv98d] {
    font-size: 13px;
    color: var(--text-secondary, #475569);
    line-height: 1.4;
    word-wrap: break-word;
}

.toast-close[b-n3q1ldv98d] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border: none;
    background: transparent;
    color: var(--text-muted, #64748B);
    cursor: pointer;
    border-radius: 6px;
    transition: all 0.15s ease;
    flex-shrink: 0;
    margin-top: 2px;
}

.toast-close:hover[b-n3q1ldv98d] {
    background: var(--neutral-100);
    color: var(--text-primary, #0F172A);
}

.toast-close i[b-n3q1ldv98d] {
    font-size: 12px;
}

/* /Components/Shared/UnderwriterCopilotChat.razor.rz.scp.css */
/* Copilot Chat Widget Styles */
.copilot-chat-widget[b-tuu42fzl62] {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 1000;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* Toggle Button */
.copilot-toggle-btn[b-tuu42fzl62] {
    background: #6D28D9;
    color: white;
    border: none;
    border-radius: 24px;
    padding: 12px 24px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.copilot-toggle-btn:hover[b-tuu42fzl62] {
    background: #5B21B6;
}

.copilot-toggle-btn i[b-tuu42fzl62] {
    font-size: 18px;
}

/* Chat Container */
.copilot-chat-container[b-tuu42fzl62] {
    width: 420px;
    height: 600px;
    background: white;
    border-radius: 16px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    animation: slideUp-b-tuu42fzl62 0.3s ease;
}

@keyframes slideUp-b-tuu42fzl62 {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Header */
.copilot-header[b-tuu42fzl62] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    padding: 16px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.copilot-title[b-tuu42fzl62] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    font-size: 16px;
}

.copilot-title i[b-tuu42fzl62] {
    font-size: 20px;
}

.copilot-close-btn[b-tuu42fzl62] {
    background: transparent;
    border: none;
    color: white;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
    transition: background 0.2s;
}

.copilot-close-btn:hover[b-tuu42fzl62] {
    background: rgba(255, 255, 255, 0.2);
}

/* Messages */
.copilot-messages[b-tuu42fzl62] {
    flex: 1;
    overflow-y: auto;
    padding: 20px;
    background: #f8f9fa;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.copilot-message[b-tuu42fzl62] {
    display: flex;
    gap: 12px;
    animation: fadeIn-b-tuu42fzl62 0.3s ease;
}

@keyframes fadeIn-b-tuu42fzl62 {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

.copilot-message.user[b-tuu42fzl62] {
    flex-direction: row-reverse;
}

.message-avatar[b-tuu42fzl62] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    flex-shrink: 0;
}

.copilot-message.user .message-avatar[b-tuu42fzl62] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
}

.copilot-message.assistant .message-avatar[b-tuu42fzl62] {
    background: #e9ecef;
    color: #495057;
}

.message-content[b-tuu42fzl62] {
    max-width: 75%;
}

.message-text[b-tuu42fzl62] {
    background: white;
    padding: 12px 16px;
    border-radius: 12px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    line-height: 1.5;
}

.copilot-message.user .message-text[b-tuu42fzl62] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
}

.message-time[b-tuu42fzl62] {
    font-size: 11px;
    color: #6c757d;
    margin-top: 4px;
    padding: 0 4px;
}

/* Typing Indicator */
.typing-indicator[b-tuu42fzl62] {
    background: white;
    padding: 16px 20px;
    border-radius: 12px;
    display: flex;
    gap: 4px;
}

.typing-indicator span[b-tuu42fzl62] {
    width: 8px;
    height: 8px;
    background: #667eea;
    border-radius: 50%;
    animation: typing-b-tuu42fzl62 1.4s infinite;
}

.typing-indicator span:nth-child(2)[b-tuu42fzl62] {
    animation-delay: 0.2s;
}

.typing-indicator span:nth-child(3)[b-tuu42fzl62] {
    animation-delay: 0.4s;
}

@keyframes typing-b-tuu42fzl62 {
    0%, 60%, 100% { transform: translateY(0); }
    30% { transform: translateY(-10px); }
}

/* Quick Suggestions */
.copilot-suggestions[b-tuu42fzl62] {
    padding: 16px 20px;
    background: white;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.copilot-suggestions button[b-tuu42fzl62] {
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 8px;
    padding: 10px 14px;
    text-align: left;
    cursor: pointer;
    transition: all 0.2s;
    font-size: 14px;
}

.copilot-suggestions button:hover[b-tuu42fzl62] {
    background: #e9ecef;
    border-color: #667eea;
    transform: translateX(4px);
}

/* Input */
.copilot-input-container[b-tuu42fzl62] {
    padding: 16px 20px;
    background: white;
    border-top: 1px solid #e9ecef;
    display: flex;
    gap: 8px;
    align-items: flex-end;
}

.copilot-input[b-tuu42fzl62] {
    flex: 1;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 10px 12px;
    font-size: 14px;
    resize: none;
    max-height: 120px;
    font-family: inherit;
}

.copilot-input:focus[b-tuu42fzl62] {
    outline: none;
    border-color: #667eea;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

.copilot-input:disabled[b-tuu42fzl62] {
    background: #f8f9fa;
    cursor: not-allowed;
}

.copilot-send-btn[b-tuu42fzl62] {
    background: #6D28D9;
    color: white;
    border: none;
    border-radius: 8px;
    width: 40px;
    height: 40px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    flex-shrink: 0;
}

.copilot-send-btn:not(:disabled):hover[b-tuu42fzl62] {
    background: #5B21B6;
}

.copilot-send-btn:disabled[b-tuu42fzl62] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Footer */
.copilot-footer[b-tuu42fzl62] {
    padding: 8px 20px;
    background: #f8f9fa;
    text-align: center;
    border-top: 1px solid #e9ecef;
}

.copilot-footer small[b-tuu42fzl62] {
    color: #6c757d;
    font-size: 11px;
}

/* Markdown Styling */
.message-text h1[b-tuu42fzl62], .message-text h2[b-tuu42fzl62], .message-text h3[b-tuu42fzl62] {
    margin-top: 12px;
    margin-bottom: 8px;
}

.message-text p[b-tuu42fzl62] {
    margin: 8px 0;
}

.message-text ul[b-tuu42fzl62], .message-text ol[b-tuu42fzl62] {
    margin: 8px 0;
    padding-left: 20px;
}

.message-text code[b-tuu42fzl62] {
    background: rgba(0, 0, 0, 0.05);
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.9em;
}

.message-text pre[b-tuu42fzl62] {
    background: rgba(0, 0, 0, 0.05);
    padding: 12px;
    border-radius: 6px;
    overflow-x: auto;
}

.copilot-message.user .message-text code[b-tuu42fzl62],
.copilot-message.user .message-text pre[b-tuu42fzl62] {
    background: rgba(255, 255, 255, 0.2);
}

/* Responsive */
@media (max-width: 768px) {
    .copilot-chat-widget[b-tuu42fzl62] {
        bottom: 16px;
        right: 16px;
    }

    .copilot-chat-container[b-tuu42fzl62] {
        width: calc(100vw - 32px);
        height: calc(100vh - 100px);
    }
}
/* /Components/Shared/UnderwriterDashboard/PriorityQueueTable.razor.rz.scp.css */
/* Priority Queue Table Styles */
.priority-queue-card[b-7ycp4pnw0g] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 20px;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: all 0.2s ease;
}

.priority-queue-card:hover[b-7ycp4pnw0g] {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

.card-header[b-7ycp4pnw0g] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 16px;
}

.header-content[b-7ycp4pnw0g] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.card-title[b-7ycp4pnw0g] {
    font-size: 14px;
    font-weight: 600;
    color: #374151;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.card-title i[b-7ycp4pnw0g] {
    color: var(--error-600);
}

.subtitle[b-7ycp4pnw0g] {
    font-size: 12px;
    color: #6b7280;
}

.view-all-link[b-7ycp4pnw0g] {
    font-size: 12px;
    color: var(--brand-500);
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 4px;
    transition: color 0.2s;
}

.view-all-link:hover[b-7ycp4pnw0g] {
    color: #003d6b;
}

.empty-state[b-7ycp4pnw0g] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #10b981;
    padding: 40px 20px;
}

.empty-state i[b-7ycp4pnw0g] {
    font-size: 32px;
}

.empty-state p[b-7ycp4pnw0g] {
    font-size: 14px;
    margin: 0;
    color: #6b7280;
}

.queue-table[b-7ycp4pnw0g] {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.table-header[b-7ycp4pnw0g] {
    display: grid;
    grid-template-columns: 2fr 1.5fr 0.5fr 1.5fr 0.5fr;
    gap: 12px;
    padding: 8px 12px;
    background: #f9fafb;
    border-radius: 8px;
    font-size: 11px;
    font-weight: 600;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Fade-in animation for table rows */
@keyframes fadeInRow-b-7ycp4pnw0g {
    from {
        opacity: 0;
        transform: translateY(5px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.table-row[b-7ycp4pnw0g] {
    display: grid;
    grid-template-columns: 2fr 1.5fr 0.5fr 1.5fr 0.5fr;
    gap: 12px;
    padding: 12px;
    border-bottom: 1px solid #f3f4f6;
    align-items: center;
    transition: all 0.2s ease;
    animation: fadeInRow-b-7ycp4pnw0g 0.3s ease-out forwards;
    opacity: 0;
}

/* Staggered animation delays for table rows */
.queue-table .table-row:nth-child(1)[b-7ycp4pnw0g] { animation-delay: 0.05s; }
.queue-table .table-row:nth-child(2)[b-7ycp4pnw0g] { animation-delay: 0.1s; }
.queue-table .table-row:nth-child(3)[b-7ycp4pnw0g] { animation-delay: 0.15s; }
.queue-table .table-row:nth-child(4)[b-7ycp4pnw0g] { animation-delay: 0.2s; }
.queue-table .table-row:nth-child(5)[b-7ycp4pnw0g] { animation-delay: 0.25s; }

.table-row:hover[b-7ycp4pnw0g] {
    background: #f9fafb;
    transform: translateX(3px);
}

.table-row.overdue[b-7ycp4pnw0g] {
    background: #fef2f2;
}

.table-row.overdue:hover[b-7ycp4pnw0g] {
    background: #fee2e2;
}

.table-row:last-child[b-7ycp4pnw0g] {
    border-bottom: none;
}

.col-app[b-7ycp4pnw0g] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.app-link[b-7ycp4pnw0g] {
    font-size: 13px;
    font-weight: 600;
    color: var(--brand-500);
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.app-link:hover[b-7ycp4pnw0g] {
    text-decoration: underline;
}

.borrower-name[b-7ycp4pnw0g] {
    font-size: 11px;
    color: #6b7280;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.col-bank[b-7ycp4pnw0g] {
    font-size: 12px;
    color: #374151;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.col-days[b-7ycp4pnw0g] {
    text-align: center;
}

.days-badge[b-7ycp4pnw0g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    padding: 4px 8px;
    font-size: 12px;
    font-weight: 600;
    border-radius: 6px;
    background: #e5e7eb;
    color: #374151;
}

.days-badge.warning[b-7ycp4pnw0g] {
    background: #fef3c7;
    color: #d97706;
}

.days-badge.overdue[b-7ycp4pnw0g] {
    background: #fee2e2;
    color: var(--error-600);
}

.col-flags[b-7ycp4pnw0g] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.risk-flag[b-7ycp4pnw0g] {
    font-size: 10px;
    font-weight: 500;
    padding: 2px 6px;
    border-radius: 4px;
    background: #fee2e2;
    color: var(--error-600);
    white-space: nowrap;
}

.risk-flag.more[b-7ycp4pnw0g] {
    background: #e5e7eb;
    color: #6b7280;
}

.no-flags[b-7ycp4pnw0g] {
    color: #9ca3af;
    font-size: 12px;
}

.col-action[b-7ycp4pnw0g] {
    text-align: center;
}

.review-btn[b-7ycp4pnw0g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: var(--brand-500);
    color: white;
    text-decoration: none;
    transition: background 0.2s;
}

.review-btn:hover[b-7ycp4pnw0g] {
    background: #003d6b;
    color: white;
}

/* /Components/Shared/UnderwriterDashboard/ProductivityCard.razor.rz.scp.css */
/* Productivity Card Styles */
.productivity-card[b-ndj7n2jvjk] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 20px;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: all 0.2s ease;
}

.productivity-card:hover[b-ndj7n2jvjk] {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

.card-header[b-ndj7n2jvjk] {
    margin-bottom: 16px;
}

.card-title[b-ndj7n2jvjk] {
    font-size: 14px;
    font-weight: 600;
    color: #374151;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.card-title i[b-ndj7n2jvjk] {
    color: #10b981;
}

.metrics-grid[b-ndj7n2jvjk] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 16px;
}

.metric-item[b-ndj7n2jvjk] {
    text-align: center;
    padding: 16px;
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
    border-radius: 10px;
    transition: all 0.2s ease;
}

.metric-item:hover[b-ndj7n2jvjk] {
    transform: scale(1.02);
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.12);
}

.metric-value[b-ndj7n2jvjk] {
    font-size: 32px;
    font-weight: 700;
    color: var(--brand-500);
    line-height: 1;
}

.metric-value-with-trend[b-ndj7n2jvjk] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.trend[b-ndj7n2jvjk] {
    font-size: 12px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 2px;
    padding: 2px 6px;
    border-radius: 4px;
}

.trend.positive[b-ndj7n2jvjk] {
    color: #059669;
    background: #d1fae5;
}

.trend.negative[b-ndj7n2jvjk] {
    color: var(--error-600);
    background: #fee2e2;
}

.metric-label[b-ndj7n2jvjk] {
    font-size: 12px;
    color: #6b7280;
    margin-top: 6px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.stats-row[b-ndj7n2jvjk] {
    display: flex;
    gap: 12px;
    flex: 1;
}

.stat-item[b-ndj7n2jvjk] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    background: #f9fafb;
    border-radius: 8px;
}

.stat-icon[b-ndj7n2jvjk] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
}

.stat-icon.approval[b-ndj7n2jvjk] {
    background: #d1fae5;
    color: #059669;
}

.stat-icon.turnaround[b-ndj7n2jvjk] {
    background: #fef3c7;
    color: #d97706;
}

.stat-content[b-ndj7n2jvjk] {
    display: flex;
    flex-direction: column;
}

.stat-value[b-ndj7n2jvjk] {
    font-size: 16px;
    font-weight: 700;
    color: #1f2937;
}

.stat-label[b-ndj7n2jvjk] {
    font-size: 11px;
    color: #6b7280;
}

.card-footer[b-ndj7n2jvjk] {
    margin-top: 16px;
    padding-top: 12px;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
}

.footer-text[b-ndj7n2jvjk] {
    font-size: 12px;
    color: #6b7280;
    display: flex;
    align-items: center;
    gap: 6px;
}

.footer-text i[b-ndj7n2jvjk] {
    color: #9ca3af;
}

/* /Components/Shared/UnderwriterDashboard/UnderwriterActivityFeed.razor.rz.scp.css */
/* Activity Feed Card Styles */
.activity-feed-card[b-gsqw815pzh] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 20px;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: all 0.2s ease;
}

.activity-feed-card:hover[b-gsqw815pzh] {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

.card-header[b-gsqw815pzh] {
    margin-bottom: 16px;
}

.card-title[b-gsqw815pzh] {
    font-size: 14px;
    font-weight: 600;
    color: #374151;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.card-title i[b-gsqw815pzh] {
    color: #8b5cf6;
}

.empty-state[b-gsqw815pzh] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #9ca3af;
    padding: 40px 20px;
}

.empty-state i[b-gsqw815pzh] {
    font-size: 32px;
}

.empty-state p[b-gsqw815pzh] {
    font-size: 14px;
    margin: 0;
}

.activity-list[b-gsqw815pzh] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
    overflow-y: auto;
    max-height: 300px;
}

/* Slide-in animation for activity items */
@keyframes slideInFromLeft-b-gsqw815pzh {
    from {
        opacity: 0;
        transform: translateX(-10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.activity-item[b-gsqw815pzh] {
    display: flex;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 8px;
    transition: all 0.2s ease;
    animation: slideInFromLeft-b-gsqw815pzh 0.35s ease-out forwards;
    opacity: 0;
}

/* Staggered animation delays for activity items */
.activity-list .activity-item:nth-child(1)[b-gsqw815pzh] { animation-delay: 0.05s; }
.activity-list .activity-item:nth-child(2)[b-gsqw815pzh] { animation-delay: 0.1s; }
.activity-list .activity-item:nth-child(3)[b-gsqw815pzh] { animation-delay: 0.15s; }
.activity-list .activity-item:nth-child(4)[b-gsqw815pzh] { animation-delay: 0.2s; }
.activity-list .activity-item:nth-child(5)[b-gsqw815pzh] { animation-delay: 0.25s; }
.activity-list .activity-item:nth-child(6)[b-gsqw815pzh] { animation-delay: 0.3s; }

.activity-item:hover[b-gsqw815pzh] {
    background: #f9fafb;
    transform: translateX(4px);
}

.activity-icon[b-gsqw815pzh] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    flex-shrink: 0;
}

.activity-icon.review[b-gsqw815pzh] {
    background: #dbeafe;
    color: #3b82f6;
}

.activity-icon.info-request[b-gsqw815pzh] {
    background: #fef3c7;
    color: #f59e0b;
}

.activity-icon.approved[b-gsqw815pzh] {
    background: #d1fae5;
    color: #10b981;
}

.activity-icon.declined[b-gsqw815pzh] {
    background: #fee2e2;
    color: var(--error-600);
}

.activity-icon.default[b-gsqw815pzh] {
    background: #f3f4f6;
    color: #6b7280;
}

.activity-content[b-gsqw815pzh] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.activity-main[b-gsqw815pzh] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.activity-action[b-gsqw815pzh] {
    font-size: 13px;
    font-weight: 500;
    color: #374151;
}

.activity-app[b-gsqw815pzh] {
    font-size: 13px;
    font-weight: 600;
    color: var(--brand-500);
    text-decoration: none;
}

.activity-app:hover[b-gsqw815pzh] {
    text-decoration: underline;
}

.activity-time[b-gsqw815pzh] {
    font-size: 11px;
    color: #9ca3af;
}

/* Scrollbar styling */
.activity-list[b-gsqw815pzh]::-webkit-scrollbar {
    width: 6px;
}

.activity-list[b-gsqw815pzh]::-webkit-scrollbar-track {
    background: #f1f5f9;
    border-radius: 3px;
}

.activity-list[b-gsqw815pzh]::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 3px;
}

.activity-list[b-gsqw815pzh]::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

/* /Components/Shared/UnderwriterDashboard/UnderwriterQuickActions.razor.rz.scp.css */
/* Quick Actions Card Styles - Compact Row Layout */
.quick-actions-card[b-d1rgjtp8lr] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 16px 20px;
    display: flex;
    flex-direction: column;
    transition: all 0.2s ease;
    overflow: hidden;
    height: 100%;
    box-sizing: border-box;
}

.quick-actions-card:hover[b-d1rgjtp8lr] {
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06);
}

/* Pop-in animation for action items */
@keyframes popIn-b-d1rgjtp8lr {
    from {
        opacity: 0;
        transform: scale(0.9);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.card-header[b-d1rgjtp8lr] {
    margin-bottom: 12px;
}

.card-title[b-d1rgjtp8lr] {
    font-size: 13px;
    font-weight: 600;
    color: #374151;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.card-title i[b-d1rgjtp8lr] {
    color: #f59e0b;
    font-size: 14px;
}

.actions-grid[b-d1rgjtp8lr] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    overflow: hidden;
}

.action-item[b-d1rgjtp8lr] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 10px;
    text-decoration: none;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid transparent;
    animation: popIn-b-d1rgjtp8lr 0.35s ease-out forwards;
    opacity: 0;
    position: relative;
    overflow: hidden;
    min-width: 0;
}

.action-content[b-d1rgjtp8lr] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
    overflow: hidden;
}

/* Staggered animation delays for action items */
.actions-grid .action-item:nth-child(1)[b-d1rgjtp8lr] { animation-delay: 0.05s; }
.actions-grid .action-item:nth-child(2)[b-d1rgjtp8lr] { animation-delay: 0.1s; }
.actions-grid .action-item:nth-child(3)[b-d1rgjtp8lr] { animation-delay: 0.15s; }
.actions-grid .action-item:nth-child(4)[b-d1rgjtp8lr] { animation-delay: 0.2s; }
.actions-grid .action-item:nth-child(5)[b-d1rgjtp8lr] { animation-delay: 0.25s; }
.actions-grid .action-item:nth-child(6)[b-d1rgjtp8lr] { animation-delay: 0.3s; }

.action-item:hover[b-d1rgjtp8lr] {
    transform: translateY(-1px);
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.1);
}

.action-item.primary[b-d1rgjtp8lr] {
    background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border-color: rgba(59, 130, 246, 0.25);
}

.action-item.primary:hover[b-d1rgjtp8lr] {
    background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
    border-color: rgba(59, 130, 246, 0.4);
}

.action-item.primary .action-icon[b-d1rgjtp8lr] {
    background: #3b82f6;
    color: white;
}

.action-item.warning[b-d1rgjtp8lr] {
    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
    border-color: rgba(245, 158, 11, 0.25);
}

.action-item.warning:hover[b-d1rgjtp8lr] {
    background: linear-gradient(135deg, #fde68a 0%, #fcd34d 100%);
    border-color: rgba(245, 158, 11, 0.4);
}

.action-item.warning .action-icon[b-d1rgjtp8lr] {
    background: #f59e0b;
    color: white;
}

.action-item.warning.has-badge[b-d1rgjtp8lr] {
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
    border-color: rgba(239, 68, 68, 0.25);
}

.action-item.warning.has-badge:hover[b-d1rgjtp8lr] {
    border-color: rgba(239, 68, 68, 0.4);
}

.action-item.warning.has-badge .action-icon[b-d1rgjtp8lr] {
    background: #ef4444;
}

.action-item.info[b-d1rgjtp8lr] {
    background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%);
    border-color: rgba(16, 185, 129, 0.25);
}

.action-item.info:hover[b-d1rgjtp8lr] {
    background: linear-gradient(135deg, #d1fae5 0%, #a7f3d0 100%);
    border-color: rgba(16, 185, 129, 0.4);
}

.action-item.info .action-icon[b-d1rgjtp8lr] {
    background: #10b981;
    color: white;
}

.action-item.neutral[b-d1rgjtp8lr] {
    background: linear-gradient(135deg, #f9fafb 0%, #f3f4f6 100%);
    border-color: rgba(107, 114, 128, 0.2);
}

.action-item.neutral:hover[b-d1rgjtp8lr] {
    background: linear-gradient(135deg, #f3f4f6 0%, #e5e7eb 100%);
    border-color: rgba(107, 114, 128, 0.35);
}

.action-item.neutral .action-icon[b-d1rgjtp8lr] {
    background: #6b7280;
    color: white;
}

.action-item.secondary[b-d1rgjtp8lr] {
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
    border-color: rgba(15, 23, 42, 0.15);
}

.action-item.secondary:hover[b-d1rgjtp8lr] {
    background: linear-gradient(135deg, #e0f2fe 0%, #bae6fd 100%);
    border-color: rgba(15, 23, 42, 0.25);
}

.action-item.secondary .action-icon[b-d1rgjtp8lr] {
    background: var(--brand-500);
    color: white;
}

.action-item.tertiary[b-d1rgjtp8lr] {
    background: linear-gradient(135deg, #faf5ff 0%, #f3e8ff 100%);
    border-color: rgba(147, 51, 234, 0.2);
}

.action-item.tertiary:hover[b-d1rgjtp8lr] {
    background: linear-gradient(135deg, #f3e8ff 0%, #e9d5ff 100%);
    border-color: rgba(147, 51, 234, 0.35);
}

.action-item.tertiary .action-icon[b-d1rgjtp8lr] {
    background: #9333ea;
    color: white;
}

.action-icon[b-d1rgjtp8lr] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    flex-shrink: 0;
}

.action-title[b-d1rgjtp8lr] {
    font-size: 13px;
    font-weight: 600;
    color: #1f2937;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.action-subtitle[b-d1rgjtp8lr] {
    font-size: 11px;
    font-weight: 400;
    color: #6b7280;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.badge[b-d1rgjtp8lr] {
    position: absolute;
    top: 4px;
    right: 4px;
    background: #ef4444;
    color: white;
    font-size: 10px;
    font-weight: 700;
    padding: 2px 6px;
    border-radius: 10px;
    min-width: 18px;
    text-align: center;
    line-height: 1.2;
    box-shadow: 0 2px 4px rgba(239, 68, 68, 0.3);
}

/* Responsive */
@media (max-width: 768px) {
    .actions-grid[b-d1rgjtp8lr] {
        gap: 10px;
    }
    
    .action-item[b-d1rgjtp8lr] {
        padding: 12px 14px;
    }
    
    .action-icon[b-d1rgjtp8lr] {
        width: 26px;
        height: 26px;
        font-size: 13px;
    }
    
    .action-title[b-d1rgjtp8lr] {
        font-size: 12px;
    }
    
    .action-subtitle[b-d1rgjtp8lr] {
        font-size: 10px;
    }
}

@media (max-width: 576px) {
    .actions-grid[b-d1rgjtp8lr] {
        grid-template-columns: 1fr;
    }
}

/* /Components/Shared/UnderwriterDashboard/VERAcheckStatusWidget.razor.rz.scp.css */
/* VERAcheck Status Widget Styles */
.veracheck-widget[b-hefyobzhxj] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 20px;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: all 0.2s ease;
}

.veracheck-widget:hover[b-hefyobzhxj] {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

.veracheck-widget.has-failures[b-hefyobzhxj] {
    border-color: rgba(220, 38, 38, 0.3);
    background: linear-gradient(135deg, #ffffff 0%, #fef2f2 100%);
}

.widget-header[b-hefyobzhxj] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 16px;
}

.widget-title-section[b-hefyobzhxj] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.widget-title[b-hefyobzhxj] {
    font-size: 14px;
    font-weight: 600;
    color: #374151;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.widget-title i[b-hefyobzhxj] {
    color: var(--brand-500);
}

.failure-badge[b-hefyobzhxj] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: #fee2e2;
    color: var(--error-600);
    font-size: 11px;
    font-weight: 600;
    padding: 4px 8px;
    border-radius: 6px;
    animation: pulse-alert-b-hefyobzhxj 2s ease-in-out infinite;
}

.failure-badge i[b-hefyobzhxj] {
    font-size: 12px;
}

@keyframes pulse-alert-b-hefyobzhxj {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.7; }
}

.widget-action-link[b-hefyobzhxj] {
    font-size: 12px;
    color: var(--brand-500);
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 4px;
    transition: color 0.2s;
}

.widget-action-link:hover[b-hefyobzhxj] {
    color: #003d6b;
}

.status-breakdown[b-hefyobzhxj] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.status-row[b-hefyobzhxj] {
    display: flex;
    gap: 16px;
}

.status-row.failed-row[b-hefyobzhxj] {
    margin-top: 4px;
    padding-top: 12px;
    border-top: 1px dashed rgba(220, 38, 38, 0.3);
}

.status-item[b-hefyobzhxj] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    background: #f9fafb;
    border-radius: 8px;
    transition: background 0.2s;
}

.status-item:hover[b-hefyobzhxj] {
    background: #f3f4f6;
}

.status-item.failed[b-hefyobzhxj] {
    background: #fee2e2;
}

.status-dot[b-hefyobzhxj] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}

.status-dot.pending[b-hefyobzhxj] {
    background: #6b7280;
}

.status-dot.submitted[b-hefyobzhxj] {
    background: #3b82f6;
}

.status-dot.processing[b-hefyobzhxj] {
    background: #f59e0b;
}

.status-dot.delivered[b-hefyobzhxj] {
    background: #10b981;
}

.status-dot.failed[b-hefyobzhxj] {
    background: var(--error-600);
}

.status-dot.risk-score[b-hefyobzhxj] {
    background: #7c3aed;
}

.status-label[b-hefyobzhxj] {
    font-size: 12px;
    color: #6b7280;
    flex: 1;
}

.status-count[b-hefyobzhxj] {
    font-size: 14px;
    font-weight: 600;
    color: #1f2937;
}

.widget-footer[b-hefyobzhxj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 16px;
    padding-top: 12px;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
}

.total-label[b-hefyobzhxj] {
    font-size: 12px;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.total-count[b-hefyobzhxj] {
    font-size: 18px;
    font-weight: 700;
    color: var(--brand-500);
}

/* /Components/Shared/UnderwriterDashboard/WorkbenchStatCard.razor.rz.scp.css */
/* Workbench Stat Card Styles - Compact Version */
.workbench-stat-card[b-kj13eel5zo] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 10px;
    padding: 14px 16px;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 4px rgba(15, 23, 42, 0.05);
    display: flex;
    align-items: center;
    gap: 14px;
}

.workbench-stat-card:hover[b-kj13eel5zo] {
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(15, 23, 42, 0.1);
    border-color: rgba(15, 23, 42, 0.15);
}

.stat-card-header[b-kj13eel5zo] {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-shrink: 0;
}

.stat-card-title[b-kj13eel5zo] {
    display: none; /* Hidden in compact mode, shown via body */
}

.stat-card-icon[b-kj13eel5zo] {
    width: 36px;
    height: 36px;
    background: linear-gradient(135deg, rgba(227, 241, 251, 0.8) 0%, rgba(240, 247, 252, 0.9) 100%);
    color: var(--brand-500);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    transition: transform 0.2s ease;
}

.workbench-stat-card:hover .stat-card-icon[b-kj13eel5zo] {
    transform: scale(1.05);
}

.stat-card-body[b-kj13eel5zo] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
    min-width: 0;
}

.stat-card-label[b-kj13eel5zo] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: #6B7280;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.stat-card-count[b-kj13eel5zo] {
    font-size: 24px;
    font-weight: 700;
    color: #1F2937;
    line-height: 1.1;
}

.stat-card-description[b-kj13eel5zo] {
    font-size: 11px;
    color: #6B7280;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* /Components/Shared/UnderwriterRoutingPanel.razor.rz.scp.css */
/* Underwriter Routing Card - Dashboard Theme */
.underwriter-routing-card[b-uahvcvudsm] {
    background: white;
    border: 1px solid rgba(15, 23, 42, 0.1);
    border-radius: 12px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    transition: all 0.2s ease;
}

.underwriter-routing-card:hover[b-uahvcvudsm] {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

/* Card Header */
.underwriter-routing-card .card-header[b-uahvcvudsm] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
    padding: 0;
    border: none;
    background: transparent;
}

.underwriter-routing-card .card-title[b-uahvcvudsm] {
    font-size: 14px;
    font-weight: 600;
    color: #374151;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.underwriter-routing-card .card-title i[b-uahvcvudsm] {
    color: var(--brand-500);
}

.underwriter-routing-card .ai-badge[b-uahvcvudsm] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 600;
    color: #059669;
    background: #d1fae5;
    padding: 4px 10px;
    border-radius: 12px;
}

/* Loading State */
.underwriter-routing-card .loading-state[b-uahvcvudsm] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    gap: 12px;
    color: #6b7280;
    font-size: 13px;
}

/* Recommendation Section */
.underwriter-routing-card .recommendation-section[b-uahvcvudsm] {
    padding: 16px;
    border-radius: 12px;
    margin-bottom: 16px;
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
}

.underwriter-routing-card .recommendation-section.high-confidence[b-uahvcvudsm] {
    border-left: 4px solid #059669;
}

.underwriter-routing-card .recommendation-section.medium-confidence[b-uahvcvudsm] {
    border-left: 4px solid #2563eb;
}

.underwriter-routing-card .recommendation-section.low-confidence[b-uahvcvudsm] {
    border-left: 4px solid #d97706;
}

.underwriter-routing-card .recommendation-header[b-uahvcvudsm] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.underwriter-routing-card .avatar-circle[b-uahvcvudsm] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--brand-500) 0%, var(--brand-400) 100%);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 16px;
    flex-shrink: 0;
}

.underwriter-routing-card .recommendation-info[b-uahvcvudsm] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.underwriter-routing-card .underwriter-name[b-uahvcvudsm] {
    font-size: 16px;
    font-weight: 600;
    color: #1f2937;
}

.underwriter-routing-card .confidence-text[b-uahvcvudsm] {
    font-size: 12px;
    color: #6b7280;
}

.underwriter-routing-card .recommendation-reasoning[b-uahvcvudsm] {
    font-size: 13px;
    color: #374151;
    margin: 0 0 12px 0;
    line-height: 1.5;
}

.underwriter-routing-card .matching-factors[b-uahvcvudsm] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.underwriter-routing-card .factor-badge[b-uahvcvudsm] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    background: white;
    border-radius: 12px;
    font-size: 11px;
    color: #374151;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.underwriter-routing-card .factor-badge i[b-uahvcvudsm] {
    color: #059669;
    font-size: 12px;
}

/* Action Buttons */
.underwriter-routing-card .action-buttons[b-uahvcvudsm] {
    display: flex;
    gap: 10px;
    margin-bottom: 16px;
}

.underwriter-routing-card .assign-btn[b-uahvcvudsm] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 16px;
    background: var(--brand-500);
    border: none;
    border-radius: 8px;
    color: white;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.underwriter-routing-card .assign-btn:hover:not(:disabled)[b-uahvcvudsm] {
    background: #004a82;
}

.underwriter-routing-card .assign-btn:disabled[b-uahvcvudsm] {
    opacity: 0.6;
    cursor: not-allowed;
}

.underwriter-routing-card .alternatives-btn[b-uahvcvudsm] {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    color: #6b7280;
    cursor: pointer;
    transition: all 0.2s ease;
}

.underwriter-routing-card .alternatives-btn:hover[b-uahvcvudsm] {
    background: #f9fafb;
    border-color: var(--brand-500);
    color: var(--brand-500);
}

/* Complexity Section */
.underwriter-routing-card .complexity-section[b-uahvcvudsm] {
    padding-top: 16px;
    border-top: 1px solid #e5e7eb;
}

.underwriter-routing-card .complexity-header[b-uahvcvudsm] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}

.underwriter-routing-card .complexity-label[b-uahvcvudsm] {
    font-size: 12px;
    color: #6b7280;
}

.underwriter-routing-card .complexity-value[b-uahvcvudsm] {
    font-size: 12px;
    font-weight: 600;
    color: #374151;
}

.underwriter-routing-card .complexity-bar-bg[b-uahvcvudsm] {
    height: 6px;
    background: #e5e7eb;
    border-radius: 3px;
    overflow: hidden;
    margin-bottom: 6px;
}

.underwriter-routing-card .complexity-bar[b-uahvcvudsm] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.3s ease;
}

.underwriter-routing-card .complexity-bar.complexity-low[b-uahvcvudsm] {
    background: linear-gradient(90deg, #34d399 0%, #059669 100%);
}

.underwriter-routing-card .complexity-bar.complexity-standard[b-uahvcvudsm] {
    background: linear-gradient(90deg, #60a5fa 0%, #2563eb 100%);
}

.underwriter-routing-card .complexity-bar.complexity-medium[b-uahvcvudsm] {
    background: linear-gradient(90deg, #fbbf24 0%, #d97706 100%);
}

.underwriter-routing-card .complexity-bar.complexity-high[b-uahvcvudsm] {
    background: linear-gradient(90deg, var(--error-400) 0%, var(--error-600) 100%);
}

.underwriter-routing-card .complexity-text[b-uahvcvudsm] {
    font-size: 11px;
    color: #9ca3af;
}

/* Empty State */
.underwriter-routing-card .empty-state[b-uahvcvudsm] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px 20px;
    text-align: center;
}

.underwriter-routing-card .empty-state i[b-uahvcvudsm] {
    font-size: 48px;
    color: #d1d5db;
    margin-bottom: 12px;
}

.underwriter-routing-card .empty-state p[b-uahvcvudsm] {
    color: #9ca3af;
    margin-bottom: 16px;
    font-size: 14px;
}

.underwriter-routing-card .get-recommendation-btn[b-uahvcvudsm] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 24px;
    background: var(--brand-500);
    border: none;
    border-radius: 8px;
    color: white;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.underwriter-routing-card .get-recommendation-btn:hover:not(:disabled)[b-uahvcvudsm] {
    background: #004a82;
}

.underwriter-routing-card .get-recommendation-btn:disabled[b-uahvcvudsm] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Error Message */
.underwriter-routing-card .error-message[b-uahvcvudsm] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px;
    background: #fef3c7;
    border-radius: 8px;
    margin-top: 12px;
}

.underwriter-routing-card .error-message i[b-uahvcvudsm] {
    color: #d97706;
    font-size: 16px;
}

.underwriter-routing-card .error-message span[b-uahvcvudsm] {
    font-size: 13px;
    color: #92400e;
}

/* Workload Section */
.underwriter-routing-card .workload-section[b-uahvcvudsm] {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid #e5e7eb;
}

.underwriter-routing-card .section-title[b-uahvcvudsm] {
    font-size: 12px;
    font-weight: 600;
    color: #6b7280;
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 12px;
}

.underwriter-routing-card .section-title i[b-uahvcvudsm] {
    color: #9ca3af;
}

.underwriter-routing-card .workload-list[b-uahvcvudsm] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-height: 240px;
    overflow-y: auto;
}

.underwriter-routing-card .workload-item[b-uahvcvudsm] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px;
    background: #f9fafb;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.underwriter-routing-card .workload-item:hover[b-uahvcvudsm] {
    background: #f0f9ff;
    border-color: var(--brand-500);
}

.underwriter-routing-card .workload-info[b-uahvcvudsm] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.underwriter-routing-card .avatar-circle-sm[b-uahvcvudsm] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: linear-gradient(135deg, #6b7280 0%, #374151 100%);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 11px;
    flex-shrink: 0;
}

.underwriter-routing-card .workload-details[b-uahvcvudsm] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.underwriter-routing-card .workload-name[b-uahvcvudsm] {
    font-size: 13px;
    font-weight: 600;
    color: #374151;
}

.underwriter-routing-card .workload-stats[b-uahvcvudsm] {
    font-size: 11px;
    color: #9ca3af;
}

.underwriter-routing-card .workload-status[b-uahvcvudsm] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
}

.underwriter-routing-card .availability-badge[b-uahvcvudsm] {
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 10px;
    font-weight: 600;
}

.underwriter-routing-card .availability-badge.available[b-uahvcvudsm] {
    background: #d1fae5;
    color: #059669;
}

.underwriter-routing-card .availability-badge.busy[b-uahvcvudsm] {
    background: #fef3c7;
    color: #d97706;
}

.underwriter-routing-card .utilization-text[b-uahvcvudsm] {
    font-size: 10px;
    color: #9ca3af;
}

/* Responsive */
@media (max-width: 576px) {
    .underwriter-routing-card .workload-item[b-uahvcvudsm] {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
    
    .underwriter-routing-card .workload-status[b-uahvcvudsm] {
        align-items: flex-start;
    }
}
