@import '_content/Blazored.Modal/Blazored.Modal.bundle.scp.css';
@import '_content/BlazorStrap.V5/BlazorStrap.V5.soy3cwhzex.bundle.scp.css';
@import '_content/BlazorStrap/BlazorStrap.10v83wk5fb.bundle.scp.css';
@import '_content/UcpmComponentLibraryEx/UcpmComponentLibraryEx.ftv56eftzr.bundle.scp.css';

/* /Components/AgentHub/Page0/CreateNewQuoteModal.razor.rz.scp.css */
/* Scoped styles for the Create New Quote modal.
   Brand colors come from CSS custom properties (--brand-* / --gradient-g2)
   set by the branding service at runtime — never hardcode theme hex here.
   The literal fallbacks inside var(...) are the default NXUS palette and
   only apply when a tenant hasn't overridden the token. Neutral text/border
   grays below are not theme tokens, so they're fine inline. */

/* Sized between Bootstrap's default (~500px) and modal-lg (800px): wide
   enough that the 3-column ZIP/City/State row breathes, without the empty
   expanse modal-lg leaves for a six-field form. */
.quote-modal-dialog[b-90ov5kaz8k] {
    max-width: 650px;
}

.quote-modal-content[b-90ov5kaz8k] {
    border-radius: 10px;
    overflow: hidden;
}

/* 4-px gradient top stripe — same token as the dashboard header accent bar. */
.gradient-stripe[b-90ov5kaz8k] {
    height: 4px;
    background: var(--gradient-g2, linear-gradient(to right, var(--brand-primary, #1f628d), var(--brand-secondary, #01949f), var(--brand-accent, #76b243)));
}

.quote-modal-header[b-90ov5kaz8k] {
    padding: 1.25rem 1.5rem 1rem;
}

.quote-modal-title[b-90ov5kaz8k] {
    color: #1f2d3d;
}

.quote-modal-subtitle[b-90ov5kaz8k] {
    font-size: 0.875rem;
    color: #6c757d;
}

.quote-modal-body[b-90ov5kaz8k] {
    padding: 1.5rem;
}

/* "Address Information" group heading — separates company identity from
   the location fields below it. */
.quote-modal-section-label[b-90ov5kaz8k] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: #1f2d3d;
    margin: 1rem 0 0.75rem;
}

/* Address-field labels (Street/Suite/Zip/City/State) sit inside the .row
   blocks; render them a touch smaller than the Company Name label to match
   the Figma hierarchy. Company Name (in a plain .mb-3 div, not a row) and the
   "Address Information" heading are unaffected. */
.row .form-label[b-90ov5kaz8k] {
    font-size: 0.8125rem;
    color: #6b7280;
}

.quote-modal-footer[b-90ov5kaz8k] {
    padding: 1rem 1.5rem 1.5rem;
}

/* Derived City/State fields, once populated — a faint neutral fill so they
   read as "auto-filled & settled" rather than "disabled / can't touch". */
.auto-filled[b-90ov5kaz8k] {
    background-color: #f6f8fa;
}

/* Cancel — tertiary action, light outline. */
.btn-cancel[b-90ov5kaz8k] {
    background: #ffffff;
    color: #6b7280;
    border: 1px solid #d1d5db;
}

.btn-cancel:hover:not(:disabled)[b-90ov5kaz8k] {
    background: #f8f9fa;
    color: #4b5563;
}

/* Get Started — primary action. Brand primary→secondary gradient matching
   the Page 0 "New Quote" button that opens this modal. Element prefix keeps
   specificity above Bootstrap's `.btn:disabled`. */
button.btn-primary-gradient[b-90ov5kaz8k] {
    background: linear-gradient(to right, var(--brand-primary, #1f628d), var(--brand-secondary, #01949f));
    border: none;
    color: #ffffff;
    box-shadow: 0 4px 12px rgba(31, 98, 141, 0.25);
    transition: box-shadow 150ms ease, transform 150ms ease;
}

button.btn-primary-gradient:hover:not(:disabled)[b-90ov5kaz8k] {
    box-shadow: 0 6px 16px rgba(31, 98, 141, 0.32);
    transform: translateY(-1px);
}

button.btn-primary-gradient:active:not(:disabled)[b-90ov5kaz8k] {
    transform: translateY(0);
}

button.btn-primary-gradient:disabled[b-90ov5kaz8k] {
    background: #d1d5db;
    color: #6b7280;
    box-shadow: none;
    opacity: 0.85;
    transform: none;
}
/* /Components/AgentHub/Page2/EditAccountModal.razor.rz.scp.css */
/* Scoped styles for the Edit Account modal — mirrors CreateNewQuoteModal so
   the two address-editing surfaces stay visually consistent.
   Brand colors come from CSS custom properties (--brand-* / --gradient-g2)
   set by the branding service at runtime — never hardcode theme hex here.
   The literal fallbacks inside var(...) are the default NXUS palette and
   only apply when a tenant hasn't overridden the token. Neutral text/border
   grays below are not theme tokens, so they're fine inline. */

/* Sized between Bootstrap's default (~500px) and modal-lg (800px): wide
   enough that the 3-column ZIP/City/State row breathes, without the empty
   expanse modal-lg leaves for a six-field form. */
.quote-modal-dialog[b-tsnshcg5lw] {
    max-width: 650px;
}

.quote-modal-content[b-tsnshcg5lw] {
    border-radius: 10px;
    overflow: hidden;
}

/* 4-px gradient top stripe — same token as the dashboard header accent bar. */
.gradient-stripe[b-tsnshcg5lw] {
    height: 4px;
    background: var(--gradient-g2, linear-gradient(to right, var(--brand-primary, #1f628d), var(--brand-secondary, #01949f), var(--brand-accent, #76b243)));
}

.quote-modal-header[b-tsnshcg5lw] {
    padding: 1.25rem 1.5rem 1rem;
}

.quote-modal-title[b-tsnshcg5lw] {
    color: #1f2d3d;
}

.quote-modal-subtitle[b-tsnshcg5lw] {
    font-size: 0.875rem;
    color: #6c757d;
}

.quote-modal-body[b-tsnshcg5lw] {
    padding: 1.5rem;
}

/* "Address Information" group heading — separates company identity from
   the location fields below it. */
.quote-modal-section-label[b-tsnshcg5lw] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: #1f2d3d;
    margin: 1rem 0 0.75rem;
}

/* Address-field labels (Street/Suite/Zip/City/State) sit inside the .row
   blocks; render them a touch smaller than the Company Name label to match
   the Figma hierarchy. Company Name (in a plain .mb-3 div, not a row) and the
   "Address Information" heading are unaffected. */
.row .form-label[b-tsnshcg5lw] {
    font-size: 0.8125rem;
    color: #6b7280;
}

.quote-modal-footer[b-tsnshcg5lw] {
    padding: 1rem 1.5rem 1.5rem;
}

/* Derived City/State fields, once populated — a faint neutral fill so they
   read as "auto-filled & settled" rather than "disabled / can't touch". */
.auto-filled[b-tsnshcg5lw] {
    background-color: #f6f8fa;
}

/* Cancel — tertiary action, light outline. */
.btn-cancel[b-tsnshcg5lw] {
    background: #ffffff;
    color: #6b7280;
    border: 1px solid #d1d5db;
}

.btn-cancel:hover:not(:disabled)[b-tsnshcg5lw] {
    background: #f8f9fa;
    color: #4b5563;
}

/* Save Changes — primary action. Brand primary→secondary gradient. Element
   prefix keeps specificity above Bootstrap's `.btn:disabled`. */
button.btn-primary-gradient[b-tsnshcg5lw] {
    background: linear-gradient(to right, var(--brand-primary, #1f628d), var(--brand-secondary, #01949f));
    border: none;
    color: #ffffff;
    box-shadow: 0 4px 12px rgba(31, 98, 141, 0.25);
    transition: box-shadow 150ms ease, transform 150ms ease;
}

button.btn-primary-gradient:hover:not(:disabled)[b-tsnshcg5lw] {
    box-shadow: 0 6px 16px rgba(31, 98, 141, 0.32);
    transform: translateY(-1px);
}

button.btn-primary-gradient:active:not(:disabled)[b-tsnshcg5lw] {
    transform: translateY(0);
}

button.btn-primary-gradient:disabled[b-tsnshcg5lw] {
    background: #d1d5db;
    color: #6b7280;
    box-shadow: none;
    opacity: 0.85;
    transform: none;
}
/* /Components/AgentHub/Page2/GlobalControlsCard.razor.rz.scp.css */
/* Page 2 Global Controls + Premium Target — shared card layout helpers. */

/* Both section headers render at the same height so the field rows
   underneath line up across the divider. 31px matches the .btn-sm height
   used by the Premium Target Edit/Save buttons. */
.gc-section-header[b-zvrmqgug0l] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    min-height: 31px;
    margin-bottom: 1rem;
}

/* Vertical separator between Global Controls (left) and Premium Target
   (right). Only shown at md+ where the two cards sit side-by-side; on
   stacked layouts the border is suppressed so it doesn't appear as a
   stray vertical line on the right edge of the viewport. */
@media (min-width: 768px) {
    .gc-left[b-zvrmqgug0l] {
        border-right: 1px solid #e5e7eb;
        padding-right: 1.5rem;
    }
    .gc-right[b-zvrmqgug0l] {
        padding-left: 1.5rem;
    }
}
/* /Components/AgentHub/Page2/MarkAsRejectedModal.razor.rz.scp.css */
/* Brand-tone the "Marked by" radios to match Figma (not Bootstrap blue).
   --brand-primary is supplied at runtime by BrandingService. */
.form-check-input[type="radio"][b-fvdcljl0ar] {
    accent-color: var(--brand-primary);
}
/* /Components/AgentHub/Page2/Page2DeclinedLockdown.razor.rz.scp.css */
.page2-declined-lockdown[b-esrdgn55en] {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding: 3rem 1.5rem;
    min-height: 60vh;
}

.lockdown-card[b-esrdgn55en] {
    width: 100%;
    max-width: 640px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    overflow: hidden;
}

.lockdown-stripe[b-esrdgn55en] {
    height: 4px;
    background: var(--gradient-g2, linear-gradient(to right, var(--brand-primary, #1f628d), var(--brand-secondary, #01949f), var(--brand-accent, #76b243)));
}

.lockdown-header[b-esrdgn55en] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1.5rem 1.5rem 1rem;
}

.lockdown-title[b-esrdgn55en] {
    margin: 0;
    color: #1f2d3d;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.3;
}

.lockdown-pill[b-esrdgn55en] {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.75rem;
    background-color: var(--tier-c-orange-bg, #ffedd5);
    color: var(--tier-c-orange, #9a3412);
    border: 1px solid var(--tier-c-orange-border, #fed7aa);
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1;
}

.lockdown-body[b-esrdgn55en] {
    padding: 0 1.5rem 1.25rem;
}

.lockdown-paragraph[b-esrdgn55en] {
    margin: 0 0 0.875rem;
    color: #1f2937;
    font-size: 1rem;
    line-height: 1.55;
}

.lockdown-paragraph:last-child[b-esrdgn55en] {
    margin-bottom: 0;
}

.lockdown-email[b-esrdgn55en] {
    color: var(--brand-secondary, #01949f);
    text-decoration: underline;
}

.lockdown-email:focus-visible[b-esrdgn55en] {
    outline: 2px solid var(--brand-primary, #1f628d);
    outline-offset: 2px;
    border-radius: 2px;
}

.lockdown-footer[b-esrdgn55en] {
    display: flex;
    justify-content: center;
    padding: 1rem 1.5rem 1.75rem;
}

.lockdown-return-button[b-esrdgn55en] {
    /* Uses --brand-primary (darker blue) instead of --brand-secondary so the
       white text passes WCAG 2.1 AA contrast (4.5:1) — secondary teal failed
       at 3.36:1. Primary blue measures ~6.69:1. */
    min-width: 240px;
    padding: 0.625rem 1.5rem;
    background-color: var(--brand-primary, #1f628d);
    color: #ffffff;
    border: 1px solid var(--brand-primary, #1f628d);
    border-radius: 6px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: filter 0.15s ease, box-shadow 0.15s ease;
}

.lockdown-return-button:hover[b-esrdgn55en] {
    filter: brightness(0.95);
}

.lockdown-return-button:focus-visible[b-esrdgn55en] {
    outline: 2px solid var(--brand-secondary, #01949f);
    outline-offset: 2px;
}

.lockdown-return-button:active[b-esrdgn55en] {
    filter: brightness(0.9);
}
/* /Components/Layout/AuthLayout.razor.rz.scp.css */
/* Auth Layout - Bootstrap-based with Theme Background */

.auth-layout[b-auix9gfai8] {
    background: linear-gradient(to bottom right, #0f172a, #1e293b, #0f172a);
}


/* /Components/Layout/DashboardLayout.razor.rz.scp.css */
.dashboard-layout[b-676g7szhie] {
    min-height: 100vh;
    background-color: #f8f9fa;
}

#blazor-error-ui[b-676g7szhie] {
    display: none !important;
}
/* /Components/Layout/InsuredPresentationLayout.razor.rz.scp.css */
.presentation-layout[b-sxs4pn5zon] {
    min-height: 100vh;
    position: relative;
    overflow-x: hidden;
}

.mountain-background[b-sxs4pn5zon] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, #a8c4d8 0%, /* Lighter, more subtle blue at top */
    #b8d4e8 20%, /* Very light blue */
    #c8e4f8 40%, /* Almost white blue */
    #d8f4ff 60%, /* Very pale blue transitioning */
    #e8f8ff 70%, /* Near white */
    #f0f8f0 80%, /* Very light green tint */
    #f8f8f8 90%, /* Almost white */
    #ffffff 100% /* White at bottom for content readability */
    );
    z-index: -2;
}

    /* Remove the mountain overlay to keep background subtle */
    .mountain-background[b-sxs4pn5zon]::after {
        display: none;
    }

.presentation-header[b-sxs4pn5zon] {
    position: relative;
    z-index: 10;
    padding: 15px 0 15px 0;
    background: rgba(168, 196, 216, 0.3); /* Very light blue tint */
    backdrop-filter: blur(5px);
}

.logo-container[b-sxs4pn5zon] {
    display: flex;
    justify-content: center;
    margin-bottom: 15px;
}

.logo-text[b-sxs4pn5zon] {
    color: #2c5f5f; /* Dark teal to match the content */
    font-size: 2.2rem;
    font-weight: 700;
    text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.8); /* Light shadow for contrast */
    letter-spacing: 1px;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.progress-container[b-sxs4pn5zon] {
    display: flex;
    justify-content: center;
    padding: 0 20px;
    border-bottom: 1px solid #d1d5db;
}

.presentation-content[b-sxs4pn5zon] {
    position: relative;
    z-index: 5;
    padding: 20px;
    min-height: calc(100vh - 180px);
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .presentation-content[b-sxs4pn5zon] {
        padding: 10px;
    }

    .logo-text[b-sxs4pn5zon] {
        font-size: 1.8rem;
    }

    .presentation-header[b-sxs4pn5zon] {
        padding: 12px 0 12px 0;
    }
}
/* /Components/Layout/LandingLayout.razor.rz.scp.css */
/* Landing Layout - Minimal wrapper */

.landing-layout[b-pgpy90fl0m] {
    min-height: 100vh;
}

/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-zntn3bsntc],
.components-reconnect-repeated-attempt-visible[b-zntn3bsntc],
.components-reconnect-failed-visible[b-zntn3bsntc],
.components-pause-visible[b-zntn3bsntc],
.components-resume-failed-visible[b-zntn3bsntc],
.components-rejoining-animation[b-zntn3bsntc] {
    display: none;
}

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


#components-reconnect-modal[b-zntn3bsntc] {
    background-color: white;
    width: 22rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.625rem;
    /* Tenant-branded accent stripe across the top — matches the
       4-px Page 2 modal convention (Order Coverage, ERP Program, PL
       modals). Resolves through CSS custom properties so each tenant's
       primary/secondary/accent palette flows in automatically. */
    border-top: 4px solid;
    border-image: linear-gradient(to right,
        var(--brand-primary, #1f628d),
        var(--brand-secondary, #01949f),
        var(--brand-accent, #76b243)) 1;
    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-zntn3bsntc 0.5s both;
    &[open]

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

}

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

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

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

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

    100% {
        opacity: 1;
    }
}

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

    100% {
        opacity: 0;
    }
}

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

.components-reconnect-title[b-zntn3bsntc] {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 600;
    color: #1f2937;
    text-align: center;
}

#components-reconnect-modal p[b-zntn3bsntc] {
    margin: 0;
    text-align: center;
    color: #4b5563;
    font-size: 0.9375rem;
    line-height: 1.45;
}

#components-reconnect-modal button[b-zntn3bsntc] {
    border: 0;
    background-color: var(--brand-primary);
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-zntn3bsntc] {
        background-color: var(--brand-primary-hover);
    }

    #components-reconnect-modal button:active[b-zntn3bsntc] {
        background-color: var(--brand-primary);
    }

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

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

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

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

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

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

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Agent/ClientConfiguration.razor.rz.scp.css */
/* ClientConfiguration Component Scoped Styles */

.form-check-input:checked[b-gkxh3w3pro] {
    background-color: var(--brand-primary);
    border-color: var(--brand-primary);
}

.form-check-input:focus[b-gkxh3w3pro] {
    border-color: var(--brand-primary);
    box-shadow: 0 0 0 0.25rem rgba(1, 148, 159, 0.25);
}

.validation-summary[b-gkxh3w3pro] {
    background-color: #fff3cd;
    border: 1px solid #ffeaa7;
    color: #856404;
    border-radius: 8px;
}

.required-field[b-gkxh3w3pro]::after {
    content: " *";
    color: #dc3545;
    font-weight: bold;
}

.field-error[b-gkxh3w3pro] {
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
}

.searchable-select-error .selected-value[b-gkxh3w3pro] {
    border-color: #dc3545 !important;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25) !important;
}

/* Form Controls */
.form-control[b-gkxh3w3pro],
.form-select[b-gkxh3w3pro] {
    font-size: 0.875rem; /* 14px - balanced with labels */
    padding: 0.5rem 0.75rem; /* Compact but comfortable padding */
    border-radius: 0.375rem;
    line-height: 1.5;
    height: auto;
}

.form-control:focus[b-gkxh3w3pro],
.form-select:focus[b-gkxh3w3pro] {
    border-color: var(--brand-primary);
    box-shadow: 0 0 0 0.2rem rgba(31, 98, 141, 0.15);
    outline: none;
}

/* Disabled form controls */
.form-control:disabled[b-gkxh3w3pro],
.form-select:disabled[b-gkxh3w3pro],
input:disabled[b-gkxh3w3pro],
textarea:disabled[b-gkxh3w3pro] {
    opacity: 0.6;
    cursor: not-allowed;
    background-color: #e9ecef !important;
}

/* Disabled radio buttons and checkboxes */
.form-check-input:disabled[b-gkxh3w3pro] {
    opacity: 0.6;
    cursor: not-allowed;
}

.form-check-input:disabled ~ .form-check-label[b-gkxh3w3pro] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Validation Messages */
[b-gkxh3w3pro] .validation-message,
[b-gkxh3w3pro] .invalid-feedback {
    color: #dc2626;
    font-size: 0.75rem; /* Match helper-text size */
    margin-top: 0.25rem;
    display: flex;
    align-items: flex-start;
    gap: 0.25rem;
    line-height: 1.4;
}

[b-gkxh3w3pro] .validation-message::before {
    content: "⚠";
    flex-shrink: 0;
    font-size: 0.75rem;
}

/* Invalid field styling - only show border, not background */
.form-control.is-invalid[b-gkxh3w3pro],
.form-select.is-invalid[b-gkxh3w3pro] {
    border-color: #dc2626;
    background-image: none; /* Remove Bootstrap's default validation icon */
    padding-right: 0.75rem; /* Reset padding from Bootstrap validation */
}

.form-control.is-invalid:focus[b-gkxh3w3pro],
.form-select.is-invalid:focus[b-gkxh3w3pro] {
    border-color: #dc2626;
    box-shadow: 0 0 0 0.2rem rgba(220, 38, 38, 0.15);
}

/* General placeholder styling - smaller and more muted */
.form-control[b-gkxh3w3pro]::placeholder {
    color: #d1d5db;
    font-size: 0.75rem; /* Smaller than input text */
    font-weight: 400;
}

/* Revenue Input Placeholder - smaller and more muted */
.form-control.revenue-input[b-gkxh3w3pro]::placeholder {
    color: #d1d5db;
    font-size: 0.875rem; /* Smaller than default */
    font-weight: 400;
}

/* Skeleton Loader Styles */
.skeleton[b-gkxh3w3pro] {
    background: linear-gradient(90deg, #e0e0e0 25%, #f0f0f0 50%, #e0e0e0 75%);
    background-size: 200% 100%;
    animation: shimmer-b-gkxh3w3pro 1.5s infinite;
    border-radius: 4px;
}

@keyframes shimmer-b-gkxh3w3pro {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

.skeleton-label[b-gkxh3w3pro] {
    height: 1.5rem;
    width: 60%;
    margin-bottom: 0.25rem;
}

.skeleton-value[b-gkxh3w3pro] {
    height: 1.5rem;
    width: 80%;
}

.skeleton-button[b-gkxh3w3pro] {
    height: 3rem;
    border-radius: 1rem;
}

.skeleton-logo[b-gkxh3w3pro] {
    height: 160px;
    border-radius: 1rem;
}

.skeleton-title[b-gkxh3w3pro] {
    height: 2.5rem;
    width: 70%;
    margin-bottom: 1.5rem;
}

/* Slide-Left Animation */
@keyframes slideLeft-b-gkxh3w3pro {
    from {
        opacity: 0;
        transform: translateX(100px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.slide-left-animation[b-gkxh3w3pro] {
    animation: slideLeft-b-gkxh3w3pro 0.5s ease-out;
}

/* Ensure smooth transitions for dynamic content changes */
.slide-left-animation .card[b-gkxh3w3pro] {
    transition: all 0.3s ease;
}

/* /Components/Pages/Agent/Components/AccountSettingsSection.razor.rz.scp.css */
/* Outer shell — sits on top of the page background, no modal chrome. */
.settings-section-shell[b-qu0qde0gjf] {
    background-color: #f8f9fa;
    border-radius: 12px;
    padding: 1.25rem 1rem 1.5rem;
}

/* Tabs container — a single pill rail that frames the four tab buttons. */
.tabs-container[b-qu0qde0gjf] {
    margin-bottom: 1.25rem;
    padding: 0.375rem;
    background-color: #eef0f3;
    border-radius: 999px;
}

.tab-strip[b-qu0qde0gjf] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    align-items: stretch;
}

/* Tab buttons — equal-flex segments that fill the rail symmetrically. */
.tab-button[b-qu0qde0gjf] {
    flex: 1 1 0;
    min-width: 150px;
    background-color: transparent;
    border: none;
    padding: 0.625rem 1rem;
    color: #5a6470;
    font-weight: 500;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
    border-radius: 999px;
    font-size: 0.9rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    line-height: 1.25;
}

.tab-button > i[b-qu0qde0gjf] {
    font-size: 1rem;
    line-height: 1;
}

.tab-button:hover:not(.active)[b-qu0qde0gjf] {
    background-color: rgba(255, 255, 255, 0.55);
    color: #333;
}

.tab-button:focus-visible[b-qu0qde0gjf] {
    outline: 2px solid var(--brand-primary, #1f628d);
    outline-offset: 2px;
}

.tab-button.active[b-qu0qde0gjf] {
    background-color: white;
    color: var(--brand-primary);
    font-weight: 600;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06), 0 2px 6px rgba(0, 0, 0, 0.08);
}

@media (max-width: 575.98px) {
    .tab-button[b-qu0qde0gjf] {
        min-width: 0;
        flex-basis: calc(50% - 0.25rem);
        padding: 0.55rem 0.75rem;
    }
}

/* Content area */
.content-area[b-qu0qde0gjf] {
    background-color: white;
    border-radius: 12px;
    min-height: 300px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

/* Section headers */
.section-title[b-qu0qde0gjf] {
    color: var(--brand-primary);
}

.section-subtitle[b-qu0qde0gjf] {
    font-size: 0.75rem;
}

/* Form labels */
.form-label[b-qu0qde0gjf] {
    margin-bottom: 0.25rem;
}

.form-label-custom[b-qu0qde0gjf] {
    color: #333;
    font-size: 0.875rem;
}

/* Form controls */
.form-control[b-qu0qde0gjf] {
    border: 1px solid #dee2e6;
    border-radius: 0.375rem;
    padding: 0.5rem 0.75rem;
}

.form-control-custom[b-qu0qde0gjf] {
    background-color: #f8f9fa;
}

.form-control:focus[b-qu0qde0gjf] {
    border-color: var(--brand-primary);
    box-shadow: 0 0 0 0.2rem rgba(31, 98, 141, 0.15);
}

/* Password requirements box */
.password-requirements[b-qu0qde0gjf] {
    background-color: #e7f3ff;
    border-left: 4px solid var(--brand-primary);
    padding: 1rem;
    border-radius: 0.375rem;
}

.password-requirements ul[b-qu0qde0gjf] {
    list-style-type: none;
    padding-left: 0;
}

.password-requirements li[b-qu0qde0gjf] {
    color: #333;
    line-height: 1.6;
}

.password-requirements li[b-qu0qde0gjf]::before {
    content: "• ";
    color: var(--brand-primary);
    font-weight: bold;
    margin-right: 0.5rem;
}

.password-requirements-title[b-qu0qde0gjf] {
    color: var(--brand-primary);
}

.password-requirements-icon[b-qu0qde0gjf] {
    font-size: 1.25rem;
}

.password-requirements-list[b-qu0qde0gjf] {
    font-size: 0.875rem;
}

/* Buttons */
.btn-save[b-qu0qde0gjf] {
    background-color: #e9ecef;
    color: #333;
    border: none;
    font-weight: 500;
    padding: 0.5rem 1.5rem;
}

.btn-save:hover:not(:disabled)[b-qu0qde0gjf] {
    background-color: #d6d9dc;
}

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

.btn-update[b-qu0qde0gjf] {
    background-color: var(--brand-primary);
    color: white;
    border: none;
    font-weight: 500;
    padding: 0.5rem 1.5rem;
}

.btn-update:hover:not(:disabled)[b-qu0qde0gjf] {
    background-color: var(--brand-primary-hover);
}

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

/* ========== Notification Preferences ========== */
.notification-col-headers[b-qu0qde0gjf] {
    padding-right: 0.25rem;
}

.notification-pref-row[b-qu0qde0gjf] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 0;
    border-bottom: 1px solid #f0f0f0;
}

.notification-pref-row:last-of-type[b-qu0qde0gjf] {
    border-bottom: none;
}

.notification-pref-label[b-qu0qde0gjf] {
    font-size: 0.875rem;
    color: #333;
}

.notification-pref-desc[b-qu0qde0gjf] {
    font-size: 0.75rem;
    margin-top: 2px;
}

.notification-pref-row .form-check-input:checked[b-qu0qde0gjf] {
    background-color: var(--brand-primary, #1f628d);
    border-color: var(--brand-primary, #1f628d);
}

.notification-pref-row .form-check-input:focus[b-qu0qde0gjf] {
    box-shadow: 0 0 0 0.2rem rgba(31, 98, 141, 0.25);
}
/* /Components/Pages/Agent/Components/ProjectDetailsComponent.razor.rz.scp.css */
/* Page Header Styling */
.page-header[b-rz2k5n739s] {
    border-bottom: 1px solid #e9ecef;
    padding-bottom: 1rem;
}

/* Alert Enhancements */
.alert-dismissible .btn-close[b-rz2k5n739s] {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
}

/* Icon Spacing */
.fas[b-rz2k5n739s], .fa[b-rz2k5n739s] {
    margin-right: 0.25rem;
}

/* Alert List Styling */
.alert ul[b-rz2k5n739s] {
    padding-left: 1.25rem;
}

.alert li[b-rz2k5n739s] {
    margin-bottom: 0.25rem;
}

    .alert li:last-child[b-rz2k5n739s] {
        margin-bottom: 0;
    }

/* Component-specific styling */
.project-details-component[b-rz2k5n739s] {
    width: 100%;
}
/* /Components/Pages/Agent/Components/ZipCodeField.razor.rz.scp.css */
/* ZipCodeField Scoped Styles */

.zip-field-container[b-lw4g18v5un] {
    position: relative;
}

.zip-field-container .form-control[b-lw4g18v5un] {
    font-size: 0.875rem;
    padding: 0.5rem 0.75rem;
    border-radius: 0.375rem;
    line-height: 1.5;
    width: 100%;
}

.zip-field-container .form-control:focus[b-lw4g18v5un] {
    border-color: var(--brand-primary);
    box-shadow: 0 0 0 0.2rem rgba(31, 98, 141, 0.15);
    outline: none;
}

/* General placeholder styling - smaller and more muted */
.zip-field-container .form-control[b-lw4g18v5un]::placeholder {
    color: #d1d5db;
    font-size: 0.75rem; /* Smaller than input text */
    font-weight: 400;
}

.zip-field-container .form-control.is-invalid[b-lw4g18v5un] {
    border-color: #dc2626;
    background-image: none;
}

.zip-field-container .form-control.is-invalid:focus[b-lw4g18v5un] {
    border-color: #dc2626;
    box-shadow: 0 0 0 0.2rem rgba(220, 38, 38, 0.15);
}

.zip-field-container .text-muted[b-lw4g18v5un] {
    font-size: 0.75rem;
    color: #6b7280;
    margin-top: 0.25rem;
    display: block;
    line-height: 1.4;
}

.zip-field-container .invalid-feedback[b-lw4g18v5un] {
    color: #dc2626;
    font-size: 0.75rem;
    margin-top: 0.25rem;
    display: flex;
    align-items: flex-start;
    gap: 0.25rem;
    line-height: 1.4;
}

.zip-field-container .invalid-feedback[b-lw4g18v5un]::before {
    content: "⚠";
    flex-shrink: 0;
    font-size: 0.75rem;
}

/* Chrome, Edge, Safari */
.no-spin[b-lw4g18v5un]::-webkit-outer-spin-button,
.no-spin[b-lw4g18v5un]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
.no-spin[b-lw4g18v5un] {
    -moz-appearance: textfield;
    appearance: textfield; /* modern */
}

/* Disabled state */
.zip-field-container input:disabled[b-lw4g18v5un] {
    opacity: 0.6;
    cursor: not-allowed;
}
/* /Components/Pages/Agent/Dashboard.razor.rz.scp.css */
/* Dashboard Scoped Styles */

/* Modal Overlay */
.modal-overlay[b-ysbykhl5ab] {
    background-color: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(2px);
}

/* Modal Content */
.modal-content-custom[b-ysbykhl5ab] {
    border: none;
    border-radius: 12px;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

/* Modal Header */
.modal-header-custom[b-ysbykhl5ab] {
    border-bottom: 1px solid var(--brand-border);
    padding: 1.25rem 1.5rem;
}

.modal-title-custom[b-ysbykhl5ab] {
    color: var(--foreground);
    font-size: 1.125rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.modal-title-icon[b-ysbykhl5ab] {
    color: var(--brand-primary);
}

.modal-close-btn[b-ysbykhl5ab] {
    font-size: 0.875rem;
}

/* Modal Body */
.modal-body-custom[b-ysbykhl5ab] {
    padding: 1.5rem;
    max-height: 70vh;
    overflow-y: auto;
}

/* Add Client Button */
.btn-add-client[b-ysbykhl5ab] {
    background-color: var(--brand-secondary);
    color: white;
    border: none;
    border-radius: var(--radius-button, 8px);
    padding: 0.625rem 1.5rem;
    font-size: 0.8125rem;
    font-weight: 700;
    text-transform: uppercase;
}

.btn-add-client:hover[b-ysbykhl5ab] {
    background-color: var(--brand-secondary-hover);
}

/* Tab Buttons - White Active Style */
.tab-trigger-white[b-ysbykhl5ab] {
    background-color: white;
    color: black;
    border: 1px solid #dee2e6;
    min-height: 38px;
    font-size: 0.8125rem;
    padding: 0.5rem 0.75rem;
}

.tab-trigger-white.active[b-ysbykhl5ab] {
    background-color: var(--brand-primary);
    color: white;
    border-color: var(--brand-primary);
}

.tab-trigger-white:hover:not(.active)[b-ysbykhl5ab] {
    background-color: #f8f9fa;
}

/* Table Row Highlight Animation */
[b-ysbykhl5ab] .table-row-highlight {
    background-color: rgba(1, 148, 159, 0.15) !important;
    animation: fadeOutHighlight-b-ysbykhl5ab 3s ease-out forwards;
}

@keyframes fadeOutHighlight-b-ysbykhl5ab {
    0% {
        background-color: rgba(1, 148, 159, 0.15);
    }
    100% {
        background-color: transparent;
    }
}
/* /Components/Pages/Agent/Learning.razor.rz.scp.css */
/* Page-scoped (Blazor adds a scope id) — class names are local to Learning.razor. */

.learning-page[b-72tw4d45zf] {
    color: #1f2d3d;
}

/* -------- Two-column shell: sidebar + main -------- */
.learning-shell[b-72tw4d45zf] {
    display: grid;
    grid-template-columns: 200px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
}

@media (max-width: 992px) {
    .learning-shell[b-72tw4d45zf] {
        grid-template-columns: 1fr;
    }
}

/* -------- Quick Navigation sidebar -------- */
.learning-sidebar[b-72tw4d45zf] {
    position: sticky;
    top: 16px;
    padding: 4px 0;
}

.learning-sidebar-label[b-72tw4d45zf] {
    font-size: 11px;
    font-weight: 600;
    color: #8a94a3;
    margin: 0 0 12px 4px;
    letter-spacing: 0.02em;
}

.learning-sidebar-list[b-72tw4d45zf] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.learning-sidebar-link[b-72tw4d45zf] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 6px;
    font-size: 13px;
    color: #4a5568;
    text-decoration: none;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.learning-sidebar-link:hover[b-72tw4d45zf] {
    background: var(--brand-primary-alpha-5, rgba(31,98,141,.05));
    color: var(--brand-primary, #1f628d);
}

.learning-sidebar-link i[b-72tw4d45zf] {
    font-size: 14px;
    width: 16px;
    text-align: center;
}

/* -------- Top toolbar: search + filters -------- */
.learning-toolbar[b-72tw4d45zf] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 160px 160px;
    gap: 12px;
    margin-bottom: 16px;
}

@media (max-width: 768px) {
    .learning-toolbar[b-72tw4d45zf] {
        grid-template-columns: 1fr;
    }
}

.learning-search[b-72tw4d45zf] {
    position: relative;
    background: #ffffff;
    border: 1px solid #d9dee5;
    border-radius: 8px;
    display: flex;
    align-items: center;
    padding: 0 12px;
    height: 40px;
}

.learning-search i[b-72tw4d45zf] {
    color: #8a94a3;
    font-size: 14px;
    margin-right: 8px;
}

.learning-search input[b-72tw4d45zf] {
    border: none;
    outline: none;
    flex: 1;
    font-size: 13px;
    color: #1f2d3d;
    background: transparent;
}

.learning-search input[b-72tw4d45zf]::placeholder {
    color: #a0aab8;
}

.learning-filter[b-72tw4d45zf] {
    background: #ffffff;
    border: 1px solid #d9dee5;
    border-radius: 8px;
    padding: 0 12px;
    height: 40px;
    font-size: 13px;
    color: #1f2d3d;
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%238a94a3' d='M5 6 0 0h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    padding-right: 32px;
}

.learning-filter:focus[b-72tw4d45zf] {
    outline: 2px solid #c7d4ec;
    outline-offset: -1px;
}

/* -------- Section panel -------- */
.learning-section[b-72tw4d45zf] {
    border-radius: 12px;
    padding: 22px 24px;
    margin-bottom: 16px;
    scroll-margin-top: 16px;
}

.learning-section-header[b-72tw4d45zf] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 18px;
}

.learning-section-header-content[b-72tw4d45zf] {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

/* Standalone toggle rendered below the card grid (mirrors Sales Tools'
   .sales-view-all-toggle so both pages share the same View All / View Less
   placement and styling). */
.learning-view-all-toggle[b-72tw4d45zf] {
    background: transparent;
    border: none;
    color: var(--brand-primary, #4ea884);
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    padding: 0;
    margin-top: 12px;
    flex-shrink: 0;
    transition: color 0.15s ease;
}

.accent-secondary .learning-view-all-toggle[b-72tw4d45zf] {
    color: var(--brand-secondary, #1f4149);
}

.accent-accent .learning-view-all-toggle[b-72tw4d45zf] {
    color: var(--brand-accent, #A9CF38);
}

.learning-view-all-toggle:hover[b-72tw4d45zf] {
    color: var(--brand-primary-hover, #6aa839);
    text-decoration: underline;
}

.accent-secondary .learning-view-all-toggle:hover[b-72tw4d45zf] {
    color: var(--brand-secondary-hover, #173036);
}

.accent-accent .learning-view-all-toggle:hover[b-72tw4d45zf] {
    color: var(--brand-accent-hover, #95b832);
}

/* Section icon. The colour is driven by the section's accent modifier
   (.accent-primary / -secondary / -accent) so each section's icon rotates
   through the tenant brand palette emitted by DynamicCssGenerator — same
   pattern SalesTools uses. Hex fallbacks match the original mockup. */
.learning-section-icon[b-72tw4d45zf] {
    flex: 0 0 auto;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    background: var(--brand-primary-alpha-10, rgba(31,98,141,.10));
    color: var(--brand-primary, #1f628d);
}

.accent-secondary .learning-section-icon[b-72tw4d45zf] {
    background: var(--brand-secondary-alpha-10, rgba(1,148,159,.10));
    color: var(--brand-secondary, #01949f);
}

.accent-accent .learning-section-icon[b-72tw4d45zf] {
    background: var(--brand-accent-alpha-10, rgba(118,178,67,.10));
    color: var(--brand-accent, #76b243);
}

.learning-section-title[b-72tw4d45zf] {
    font-size: 16px;
    font-weight: 600;
    color: #1f2d3d;
    margin: 0;
}

.learning-section-subtitle[b-72tw4d45zf] {
    font-size: 12px;
    color: #6c7689;
    margin: 2px 0 0 0;
}

/* -------- Card grid -------- */
.learning-grid[b-72tw4d45zf] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

@media (max-width: 992px) {
    .learning-grid[b-72tw4d45zf] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 576px) {
    .learning-grid[b-72tw4d45zf] {
        grid-template-columns: 1fr;
    }
}

/* -------- Resource card -------- */
/* Uniform left-edge gradient stripe via ::before — same gradient as the New
   Quote button on the Clients page. Replaces the per-section solid accent so
   every card across all sections reads as one family. Section identity still
   reads via the icon + badge palettes. */
.learning-card[b-72tw4d45zf] {
    position: relative;
    background: #ffffff;
    border: 1px solid #e3e8ef;
    border-radius: 8px;
    padding: 14px 16px 12px 22px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-height: 150px;
    transition: box-shadow 0.15s ease, transform 0.15s ease;
}

/* 4px-wide gradient stripe along the card's left edge. Matches the card's
   border-radius so the stripe fits the rounded corner cleanly. */
.learning-card[b-72tw4d45zf]::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: var(--gradient-g1, linear-gradient(135deg, var(--brand-primary, #1f628d), var(--brand-secondary, #01949f)));
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

.learning-card:hover[b-72tw4d45zf] {
    box-shadow: 0 2px 8px rgba(31, 45, 61, 0.06);
}

/* Badge colour follows the section accent so the tag visually ties back to
   the card's left edge and the section icon. */
.learning-card-badge[b-72tw4d45zf] {
    align-self: flex-start;
    background: var(--brand-primary-alpha-10, rgba(31,98,141,.10));
    color: var(--brand-primary, #1f628d);
    font-size: 11px;
    font-weight: 500;
    padding: 3px 10px;
    border-radius: 12px;
}

.accent-secondary .learning-card-badge[b-72tw4d45zf] {
    background: var(--brand-secondary-alpha-10, rgba(1,148,159,.10));
    color: var(--brand-secondary, #01949f);
}

.accent-accent .learning-card-badge[b-72tw4d45zf] {
    background: var(--brand-accent-alpha-10, rgba(118,178,67,.10));
    color: var(--brand-accent, #76b243);
}

/* Neutral muted pill shown in the badge slot when a learning resource isn't
   yet available. Same geometry as .learning-card-badge so the slot doesn't
   shift; desaturated palette signals "not ready" rather than a type. */
.learning-card-coming-soon-badge[b-72tw4d45zf] {
    align-self: flex-start;
    background: rgba(108, 117, 125, 0.12);
    color: #6c757d;
    font-size: 11px;
    font-weight: 500;
    padding: 3px 10px;
    border-radius: 12px;
}

.learning-card-title[b-72tw4d45zf] {
    font-size: 14px;
    font-weight: 600;
    color: #1f2d3d;
    margin: 0;
    line-height: 1.35;
}

.learning-card-description[b-72tw4d45zf] {
    font-size: 12px;
    color: #6c7689;
    margin: 0;
    line-height: 1.45;
    flex: 1;
}

.learning-card-footer[b-72tw4d45zf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 6px;
}

.learning-card-duration[b-72tw4d45zf] {
    font-size: 12px;
    color: #6c7689;
}

.learning-card-action[b-72tw4d45zf] {
    background: transparent;
    border: none;
    padding: 0;
    color: var(--brand-primary, #4ea884);
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.accent-secondary .learning-card-action[b-72tw4d45zf] {
    color: var(--brand-secondary, #1f4149);
}

.accent-accent .learning-card-action[b-72tw4d45zf] {
    color: var(--brand-accent, #A9CF38);
}

.learning-card-action:hover:not(:disabled)[b-72tw4d45zf] {
    color: var(--brand-primary-hover, #6aa839);
    text-decoration: underline;
}

.accent-secondary .learning-card-action:hover:not(:disabled)[b-72tw4d45zf] {
    color: var(--brand-secondary-hover, #173036);
}

.accent-accent .learning-card-action:hover:not(:disabled)[b-72tw4d45zf] {
    color: var(--brand-accent-hover, #95b832);
}

.learning-card-action:disabled[b-72tw4d45zf] {
    color: #a0aab8;
    cursor: not-allowed;
}

.learning-card-action i[b-72tw4d45zf] {
    font-size: 11px;
}

/* -------- Empty state -------- */
.learning-empty[b-72tw4d45zf] {
    color: #6c7689;
    font-size: 13px;
    margin: 0;
    padding: 6px 0;
}
/* /Components/Pages/Agent/PostBindManagement.razor.rz.scp.css */
/* Post-Bind Management Page Specific Styles */

/* Ensure cards maintain consistent styling */
.card[b-yciwbx3h2z] {
    transition: box-shadow 0.3s ease;
}

    .card:hover[b-yciwbx3h2z] {
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    }

/* Badge styling for status */
.badge[b-yciwbx3h2z] {
    font-size: 0.875rem;
    font-weight: 600;
    letter-spacing: 0.5px;
}

/* Button hover effects */
.btn[b-yciwbx3h2z] {
    transition: all 0.2s ease;
}

    .btn:hover:not(:disabled)[b-yciwbx3h2z] {
        transform: translateY(-1px);
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    }

    .btn:active:not(:disabled)[b-yciwbx3h2z] {
        transform: translateY(0);
    }

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

/* Card body padding consistency */
.card-body[b-yciwbx3h2z] {
    position: relative;
}

/* Link styling */
a[b-yciwbx3h2z] {
    transition: opacity 0.2s ease;
}

    a:hover[b-yciwbx3h2z] {
        opacity: 0.85;
    }

/* Email template scroll container */
.card-body div[style*="max-height: 200px"][b-yciwbx3h2z] {
    scrollbar-width: thin;
    scrollbar-color: rgba(255, 255, 255, 0.5) transparent;
}

    .card-body div[style*="max-height: 200px"][b-yciwbx3h2z]::-webkit-scrollbar {
        width: 6px;
    }

    .card-body div[style*="max-height: 200px"][b-yciwbx3h2z]::-webkit-scrollbar-track {
        background: transparent;
    }

    .card-body div[style*="max-height: 200px"][b-yciwbx3h2z]::-webkit-scrollbar-thumb {
        background-color: rgba(255, 255, 255, 0.5);
        border-radius: 3px;
    }

        .card-body div[style*="max-height: 200px"][b-yciwbx3h2z]::-webkit-scrollbar-thumb:hover {
            background-color: rgba(255, 255, 255, 0.7);
        }

/* Spinner animation for loading states */
.spinner-border-sm[b-yciwbx3h2z] {
    width: 1rem;
    height: 1rem;
    border-width: 0.15em;
}

/* Responsive design */
@media (max-width: 768px) {
    .col-md-4[b-yciwbx3h2z],
    .col-md-6[b-yciwbx3h2z],
    .col-lg-4[b-yciwbx3h2z],
    .col-lg-8[b-yciwbx3h2z] {
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }

    .card-body[b-yciwbx3h2z] {
        padding: 1.5rem !important;
    }

    .btn[b-yciwbx3h2z] {
        font-size: 0.875rem;
        padding: 0.5rem 1rem !important;
    }
}

/* Print styles */
@media print {
    .btn[b-yciwbx3h2z] {
        display: none;
    }

    .card[b-yciwbx3h2z] {
        break-inside: avoid;
        border: 1px solid #ddd !important;
    }
}
/* /Components/Pages/Agent/QuestionnaireConfig.razor.rz.scp.css */
/* QuestionnaireConfig component styles */
/* /Components/Pages/Agent/QuoteInformation.razor.rz.scp.css */
/* Quote Information Page Styles */

.quote-information-page[b-tpbij9rwbl] {
    background-color: #f8f9fa;
}

/* Client Information Card */
.client-info-avatar[b-tpbij9rwbl] {
    width: 80px;
    height: 80px;
    background-color: var(--brand-secondary);
    color: white;
    font-size: 2rem;
    font-weight: bold;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Email Template Cards */
.email-template-card[b-tpbij9rwbl] {
    border-radius: 15px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.email-template-card textarea[b-tpbij9rwbl] {
    background-color: #f8f9fa;
    border-color: #dee2e6;
    font-size: 0.9rem;
    resize: none;
}

/* Package Cards */
.package-card[b-tpbij9rwbl] {
    border-width: 3px;
    border-radius: 15px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.package-card:hover[b-tpbij9rwbl] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.package-card .card-header[b-tpbij9rwbl] {
    border-radius: 12px 12px 0 0;
    padding: 1rem;
}

.package-card .form-check-input:checked[b-tpbij9rwbl] {
    background-color: var(--brand-primary);
    border-color: var(--brand-primary);
}

.package-card.market-package .form-check-input:checked[b-tpbij9rwbl] {
    background-color: var(--brand-secondary);
    border-color: var(--brand-secondary);
}

/* Pricing Options Card */
.pricing-options-card[b-tpbij9rwbl] {
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.pricing-options-card .table tbody tr[b-tpbij9rwbl] {
    transition: background-color 0.2s ease;
}

.pricing-options-card .table tbody tr:hover[b-tpbij9rwbl] {
    background-color: rgba(0, 0, 0, 0.03);
}

/* Quote Details Card */
.quote-details-card[b-tpbij9rwbl] {
    background-color: #f8f9fa;
    border-radius: 15px;
}

/* Responsive adjustments */
@media (max-width: 991px) {
    .col-lg-4[b-tpbij9rwbl],
    .col-lg-8[b-tpbij9rwbl] {
        margin-bottom: 1.5rem;
    }
}

/* Button hover effects */
.btn.rounded-pill:hover[b-tpbij9rwbl] {
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    transition: all 0.2s ease;
}

/* Card animations */
.card[b-tpbij9rwbl] {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.card:hover[b-tpbij9rwbl] {
    transform: translateY(-1px);
}

/* Checkbox styling */
.form-check-input[b-tpbij9rwbl] {
    cursor: pointer;
    width: 1.2rem;
    height: 1.2rem;
}

.form-check-label[b-tpbij9rwbl] {
    cursor: pointer;
    user-select: none;
}

/* Custom scrollbar for textareas */
.email-template-card textarea[b-tpbij9rwbl]::-webkit-scrollbar {
    width: 8px;
}

.email-template-card textarea[b-tpbij9rwbl]::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.email-template-card textarea[b-tpbij9rwbl]::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 10px;
}

.email-template-card textarea[b-tpbij9rwbl]::-webkit-scrollbar-thumb:hover {
    background: #555;
}

.quote-decline-btn[b-tpbij9rwbl] {
    background: linear-gradient(135deg, #f87171 0%, #f43f5e 100%) !important;
    border: none;
    color: #fff;
    min-width: 150px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.quote-decline-btn:hover:not(:disabled)[b-tpbij9rwbl] {
    transform: translateY(-1px);
    box-shadow: 0 10px 18px rgba(244, 63, 94, 0.35);
}

.quote-decline-btn:disabled[b-tpbij9rwbl] {
    opacity: 0.65;
    cursor: not-allowed;
    box-shadow: none;
}

.quote-declined-banner[b-tpbij9rwbl] {
    background: linear-gradient(120deg, #fee4e2 0%, #fed7d7 100%);
    border: 1px solid #fda29b;
    border-radius: 18px;
    padding: 1.25rem 1.5rem;
    color: #b42318;
    border-left: 8px solid #dc3545;
}

.quote-declined-icon[b-tpbij9rwbl] {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background-color: #f97066;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.35rem;
    flex-shrink: 0;
}

.quote-declined-heading[b-tpbij9rwbl] {
    font-weight: 600;
    font-size: 1rem;
    color: #7a271a;
}

.quote-declined-reason[b-tpbij9rwbl] {
    font-size: 0.9rem;
    color: #912018;
}

.quote-declined-reopen[b-tpbij9rwbl] {
    background-color: #fff;
    color: #b42318;
    border: 1px solid rgba(255, 255, 255, 0.8);
    box-shadow: 0 6px 16px rgba(244, 63, 94, 0.25);
    min-width: 130px;
}

.quote-declined-reopen:disabled[b-tpbij9rwbl] {
    opacity: 0.7;
    box-shadow: none;
}

@media (max-width: 576px) {
    .quote-declined-banner[b-tpbij9rwbl] {
        padding: 1rem;
    }
}
/* /Components/Pages/Agent/SalesTools.razor.rz.scp.css */
.sales-tools-page[b-em67l14o3d] {
    color: #1f2d3d;
}

/* -------- 2-column page layout (left rail + content) -------- */
.sales-layout[b-em67l14o3d] {
    display: grid;
    grid-template-columns: 220px 1fr;
    gap: 20px;
    align-items: start;
}

@media (max-width: 768px) {
    .sales-layout[b-em67l14o3d] {
        grid-template-columns: 1fr;
    }
}

/* -------- Quick Navigation rail -------- */
.sales-quick-nav[b-em67l14o3d] {
    position: sticky;
    top: 16px;
    padding: 4px 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.sales-quick-nav-label[b-em67l14o3d] {
    font-size: 11px;
    font-weight: 600;
    color: #8a94a3;
    margin: 0 0 12px 4px;
    letter-spacing: 0.02em;
}

.sales-quick-nav-item[b-em67l14o3d] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 6px;
    color: #4a5568;
    text-decoration: none;
    font-size: 13px;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.sales-quick-nav-item i[b-em67l14o3d] {
    font-size: 14px;
    width: 16px;
    text-align: center;
}

.sales-quick-nav-item:hover[b-em67l14o3d] {
    background: var(--brand-primary-alpha-5, rgba(31,98,141,.05));
    color: var(--brand-primary, #1f628d);
}

/* -------- Toolbar (search + dropdowns) -------- */
.sales-toolbar[b-em67l14o3d] {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
    flex-wrap: wrap;
    align-items: stretch;
}

.sales-toolbar-search[b-em67l14o3d] {
    position: relative;
    flex: 1;
    min-width: 280px;
}

.sales-toolbar-search i[b-em67l14o3d] {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: #adb5bd;
    font-size: 14px;
    pointer-events: none;
}

.sales-toolbar-search-input[b-em67l14o3d] {
    width: 100%;
    border: 1px solid #d3d8e0;
    border-radius: 8px;
    padding: 10px 14px 10px 40px;
    font-size: 14px;
    color: #495057;
    background: #ffffff;
    outline: none;
    transition: border-color 0.15s ease;
}

.sales-toolbar-search-input:focus[b-em67l14o3d] {
    border-color: var(--brand-primary, #7ac142);
}

.sales-toolbar-search-input[b-em67l14o3d]::placeholder {
    color: #adb5bd;
}

.sales-toolbar-select[b-em67l14o3d] {
    border: 1px solid #d3d8e0;
    border-radius: 8px;
    padding: 10px 14px;
    font-size: 13px;
    color: #495057;
    background: #ffffff;
    cursor: pointer;
    min-width: 140px;
    outline: none;
    transition: border-color 0.15s ease;
}

.sales-toolbar-select:focus[b-em67l14o3d] {
    border-color: var(--brand-primary, #7ac142);
}

/* -------- Section card -------- */
/* Section panel matches Learning's flat panel — accent edge is on the cards,
   not the section, so each card carries its tenant-brand colour via the
   .accent-* modifier inherited from this section. */
.sales-card-section[b-em67l14o3d] {
    border-radius: 12px;
    padding: 22px 24px;
    margin-bottom: 16px;
    scroll-margin-top: 16px;
}

/* -------- Section header -------- */
.sales-section-header[b-em67l14o3d] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 14px;
}

.sales-section-heading[b-em67l14o3d] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.sales-section-icon[b-em67l14o3d] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--brand-primary-alpha-10, rgba(31,98,141,.10));
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--brand-primary, #1f628d);
    font-size: 18px;
    flex-shrink: 0;
}

.accent-secondary .sales-section-icon[b-em67l14o3d] {
    background: var(--brand-secondary-alpha-10, rgba(1,148,159,.10));
    color: var(--brand-secondary, #01949f);
}

.accent-accent .sales-section-icon[b-em67l14o3d] {
    background: var(--brand-accent-alpha-10, rgba(118,178,67,.10));
    color: var(--brand-accent, #76b243);
}

.sales-section-title[b-em67l14o3d] {
    font-size: 16px;
    font-weight: 600;
    margin: 0;
    color: #1f2d3d;
}

.sales-section-subtitle[b-em67l14o3d] {
    font-size: 12px;
    color: #6c7689;
    margin: 2px 0 0 0;
}

.sales-view-all-toggle[b-em67l14o3d] {
    background: transparent;
    border: none;
    color: var(--brand-primary, #4ea884);
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    padding: 0;
    flex-shrink: 0;
    transition: color 0.15s ease;
}

.accent-secondary .sales-view-all-toggle[b-em67l14o3d] {
    color: var(--brand-secondary, #1f4149);
}

.accent-accent .sales-view-all-toggle[b-em67l14o3d] {
    color: var(--brand-accent, #A9CF38);
}

.sales-view-all-toggle:hover[b-em67l14o3d] {
    color: var(--brand-primary-hover, #6aa839);
    text-decoration: underline;
}

.accent-secondary .sales-view-all-toggle:hover[b-em67l14o3d] {
    color: var(--brand-secondary-hover, #173036);
}

.accent-accent .sales-view-all-toggle:hover[b-em67l14o3d] {
    color: var(--brand-accent-hover, #95b832);
}

/* -------- Grid layouts -------- */
.sales-grid[b-em67l14o3d] {
    display: grid;
    gap: 14px;
}

.sales-grid-2[b-em67l14o3d] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sales-grid-3[b-em67l14o3d] { grid-template-columns: repeat(3, minmax(0, 1fr)); }

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

@media (max-width: 768px) {
    .sales-grid-2[b-em67l14o3d],
    .sales-grid-3[b-em67l14o3d] { grid-template-columns: 1fr; }
}

/* -------- Resource card -------- */
/* Uniform left-edge gradient stripe via ::before — same gradient as the New
   Quote button on the Clients page. Replaces the per-section solid accent so
   every card across all sections reads as one family. Section identity still
   reads via the icon + badge palettes. */
.resource-card[b-em67l14o3d] {
    position: relative;
    background: #ffffff;
    border: 1px solid #e3e8ef;
    border-radius: 8px;
    padding: 14px 16px 12px 22px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 10px;
    min-height: 150px;
    transition: box-shadow 0.15s ease;
}

/* 4px-wide gradient stripe along the card's left edge. Matches the card's
   border-radius so the stripe fits the rounded corner cleanly. */
.resource-card[b-em67l14o3d]::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: var(--gradient-g1, linear-gradient(135deg, var(--brand-primary, #1f628d), var(--brand-secondary, #01949f)));
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}

.resource-card:hover[b-em67l14o3d] {
    box-shadow: 0 2px 8px rgba(31, 45, 61, 0.06);
}

.resource-card-body[b-em67l14o3d] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

/* Pill-shaped badge — colour and background follow the section accent so the
   tag visually ties back to the card's left edge and the section icon. */
.resource-type-badge[b-em67l14o3d] {
    align-self: flex-start;
    background: var(--brand-primary-alpha-10, rgba(31,98,141,.10));
    color: var(--brand-primary, #1f628d);
    font-size: 11px;
    font-weight: 500;
    padding: 3px 10px;
    border-radius: 12px;
}

.accent-secondary .resource-type-badge[b-em67l14o3d] {
    background: var(--brand-secondary-alpha-10, rgba(1,148,159,.10));
    color: var(--brand-secondary, #01949f);
}

.accent-accent .resource-type-badge[b-em67l14o3d] {
    background: var(--brand-accent-alpha-10, rgba(118,178,67,.10));
    color: var(--brand-accent, #76b243);
}

/* Neutral muted pill shown in the badge slot when an item isn't yet
   available. Same geometry as .resource-type-badge so the slot doesn't
   shift; desaturated palette signals "not ready" rather than a category. */
.resource-coming-soon-badge[b-em67l14o3d] {
    align-self: flex-start;
    background: rgba(108, 117, 125, 0.12);
    color: #6c757d;
    font-size: 11px;
    font-weight: 500;
    padding: 3px 10px;
    border-radius: 12px;
}

.resource-card-title[b-em67l14o3d] {
    font-size: 14px;
    font-weight: 600;
    color: #1f2d3d;
    margin: 0;
    line-height: 1.3;
}

.resource-card-description[b-em67l14o3d] {
    font-size: 12px;
    color: #6c757d;
    margin: 0;
    line-height: 1.4;
}

.resource-card-footer[b-em67l14o3d] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 12px;
    margin-top: auto;
}

.resource-card-footer-row[b-em67l14o3d] {
    justify-content: space-between;
}

.resource-action-link[b-em67l14o3d] {
    background: transparent;
    border: none;
    padding: 4px 0;
    color: var(--brand-primary, #4ea884);
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: color 0.15s ease;
}

.accent-secondary .resource-action-link[b-em67l14o3d] {
    color: var(--brand-secondary, #1f4149);
}

.accent-accent .resource-action-link[b-em67l14o3d] {
    color: var(--brand-accent, #A9CF38);
}

.resource-action-link:hover:not(:disabled)[b-em67l14o3d] {
    color: var(--brand-primary-hover, #6aa839);
    text-decoration: underline;
}

.accent-secondary .resource-action-link:hover:not(:disabled)[b-em67l14o3d] {
    color: var(--brand-secondary-hover, #173036);
}

.accent-accent .resource-action-link:hover:not(:disabled)[b-em67l14o3d] {
    color: var(--brand-accent-hover, #95b832);
}

.resource-action-link:disabled[b-em67l14o3d] {
    color: #adb5bd;
    cursor: not-allowed;
}

/* Secondary-variant action used by the Benchmarks row's "Learning Module"
   button alongside the primary "View & Download" button. The compound selector
   bumps specificity to 0,3,0 so it wins over the section-level accent cascade
   (.accent-secondary .resource-action-link), which would otherwise repaint
   both buttons with the same secondary brand colour. */
.resource-card .resource-action-link.resource-action-link-secondary[b-em67l14o3d] {
    color: var(--brand-secondary, #1f4149);
}

.resource-card .resource-action-link.resource-action-link-secondary:hover:not(:disabled)[b-em67l14o3d] {
    color: var(--brand-secondary-hover, #173036);
}

/* Disabled-state override for the secondary variant. Without this, the
   .resource-card .resource-action-link.resource-action-link-secondary rule
   (specificity 0,3,0) wins over the generic .resource-action-link:disabled
   rule (0,2,0), and the disabled "Learning Module" button keeps its secondary
   brand colour instead of going gray. */
.resource-card .resource-action-link.resource-action-link-secondary:disabled[b-em67l14o3d] {
    color: #adb5bd;
    cursor: not-allowed;
}

/* -------- Empty state -------- */
.sales-empty-message[b-em67l14o3d] {
    color: #6c757d;
    font-size: 13px;
    margin: 0;
    padding: 8px 0;
}
/* /Components/Pages/Agent/TestPricingPage.razor.rz.scp.css */
/* /Components/Pages/Auth/ForgotPassword.razor.rz.scp.css */
.login-card[b-akd8rdb533] {
    background: white !important;
    border-radius: 12px !important;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.login-header[b-akd8rdb533] {
    padding: 1.5rem 1rem 0rem;
    background: white;
    border-radius: 12px 12px 0 0;
}

.login-logo[b-akd8rdb533] {
    max-width: 120px;
    height: auto;
}

.login-title[b-akd8rdb533] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #2c3e50 !important;
}

.login-subtitle[b-akd8rdb533] {
    font-size: 0.9rem;
    color: #6c757d !important;
}

.login-body[b-akd8rdb533] {
    background: white;
    border-radius: 0 0 12px 12px;
}

.login-footer[b-akd8rdb533] {
    background: #f8f9fa;
    border-radius: 0 0 12px 12px;
}

.status-alert[b-akd8rdb533] {
    max-width: 480px;
}

.btn-login[b-akd8rdb533] {
    width: 100%;
    padding: 0.75rem 1.5rem;
    font-size: 1rem;
    font-weight: 500;
    color: white;
    background-color: #4a6478;
    border: 1px solid #4a6478;
    border-radius: 6px;
    transition: all 0.2s ease-in-out;
    cursor: pointer;
}

.btn-login:hover:not(:disabled)[b-akd8rdb533] {
    background-color: #4A6472;
    border-color: #4A6472;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(169, 207, 56, 0.2);
}

.btn-login:active:not(:disabled)[b-akd8rdb533] {
    transform: translateY(0);
    box-shadow: 0 1px 4px rgba(169, 207, 56, 0.2);
}

.btn-login:disabled[b-akd8rdb533] {
    background-color: #d1d5db;
    border-color: #d1d5db;
    cursor: not-allowed;
    opacity: 0.7;
}

/* Custom input styles to match theme */
.form-control[b-akd8rdb533] {
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.form-control:focus[b-akd8rdb533] {
    border-color: var(--bs-primary, #4A6478);
    box-shadow: 0 0 0 0.15rem rgba(74, 100, 120, 0.1);
}

.form-check-input[b-akd8rdb533] {
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}

.form-check-input:checked[b-akd8rdb533] {
    background-color: #1e293b;
    border-color: #1e293b;
}

/* Responsive adjustments */
@media (max-width: 480px) {
    .login-card[b-akd8rdb533] {
        border-radius: 8px;
    }

    .login-header[b-akd8rdb533] {
        padding: 2rem 1.5rem 1.25rem;
    }

    .login-title[b-akd8rdb533] {
        font-size: 1.375rem;
    }

    .btn-login[b-akd8rdb533] {
        padding: 0.625rem 1.25rem;
        font-size: 0.9375rem;
    }
}
/* /Components/Pages/Auth/Login.razor.rz.scp.css */
/* Login Page - Minimal Custom Styles (Bootstrap-based) */

.login-card[b-686f1u3bo5] {
    background: white;
    border-radius: 12px;
    overflow: hidden;
}

.login-header[b-686f1u3bo5] {
    padding: 1.5rem 1rem 0rem;
}

.login-logo[b-686f1u3bo5] {
    max-width: 120px;
    height: auto;
}

.login-title[b-686f1u3bo5] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #2c3e50;
}

.login-subtitle[b-686f1u3bo5] {
    font-size: 0.9rem;
}

/* Subtle Login Button with Simple Transitions */
.btn-login[b-686f1u3bo5] {
    width: 100%;
    padding: 0.75rem 1.5rem;
    font-size: 1rem;
    font-weight: 500;
    color: white;
    background-color: #4a6478;
    border: 1px solid #4a6478;
    border-radius: 6px;
    transition: all 0.2s ease-in-out;
    cursor: pointer;
}

.btn-login:hover:not(:disabled)[b-686f1u3bo5] {
    background-color: #4A6478E6;
    border-color: #4A6478E6;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(169, 207, 56, 0.2);
}

.btn-login:active:not(:disabled)[b-686f1u3bo5] {
    transform: translateY(0);
    box-shadow: 0 1px 4px rgba(169, 207, 56, 0.2);
}

.btn-login:disabled[b-686f1u3bo5] {
    background-color: #d1d5db;
    border-color: #d1d5db;
    cursor: not-allowed;
    opacity: 0.7;
}

/* Custom input styles to match theme */
.form-control[b-686f1u3bo5] {
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.form-control:focus[b-686f1u3bo5] {
    border-color: var(--bs-primary, #4A6478);
    box-shadow: 0 0 0 0.15rem rgba(74, 100, 120, 0.1);
}

.form-check-input[b-686f1u3bo5] {
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}

.form-check-input:checked[b-686f1u3bo5] {
    background-color: #1e293b;
    border-color: #1e293b;
}

/* Responsive adjustments */
@media (max-width: 480px) {
    .login-card[b-686f1u3bo5] {
        border-radius: 8px;
    }

    .login-header[b-686f1u3bo5] {
        padding: 2rem 1.5rem 1.25rem;
    }

    .login-title[b-686f1u3bo5] {
        font-size: 1.375rem;
    }
    
    .btn-login[b-686f1u3bo5] {
        padding: 0.625rem 1.25rem;
        font-size: 0.9375rem;
    }
}

/* /Components/Pages/Auth/ResetPassword.razor.rz.scp.css */
.login-card[b-xitl1nfov2] {
    background: white;
    border-radius: 12px;
    overflow: hidden;
}

.login-header[b-xitl1nfov2] {
    padding: 1.5rem 1rem 0rem;
}

.login-logo[b-xitl1nfov2] {
    max-width: 120px;
    height: auto;
}

.login-title[b-xitl1nfov2] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #2c3e50;
}

.login-subtitle[b-xitl1nfov2] {
    font-size: 0.9rem;
}

.status-alert[b-xitl1nfov2] {
    max-width: 480px; /* or whatever matches your card width */
}

.btn-login[b-xitl1nfov2] {
    width: 100%;
    padding: 0.75rem 1.5rem;
    font-size: 1rem;
    font-weight: 500;
    color: white;
    background-color: #4a6478;
    border: 1px solid #4a6478;
    border-radius: 6px;
    transition: all 0.2s ease-in-out;
    cursor: pointer;
}

.btn-login:hover:not(:disabled)[b-xitl1nfov2] {
    background-color: #4A6472;
    border-color: #4A6472;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(169, 207, 56, 0.2);
}

.btn-login:active:not(:disabled)[b-xitl1nfov2] {
    transform: translateY(0);
    box-shadow: 0 1px 4px rgba(169, 207, 56, 0.2);
}

.btn-login:disabled[b-xitl1nfov2] {
    background-color: #d1d5db;
    border-color: #d1d5db;
    cursor: not-allowed;
    opacity: 0.7;
}

/* Custom input styles to match theme */
.form-control[b-xitl1nfov2] {
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.form-control:focus[b-xitl1nfov2] {
    border-color: var(--bs-primary, #4A6478);
    box-shadow: 0 0 0 0.15rem rgba(74, 100, 120, 0.1);
}

.form-check-input[b-xitl1nfov2] {
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}

.form-check-input:checked[b-xitl1nfov2] {
    background-color: #1e293b;
    border-color: #1e293b;
}

/* Responsive adjustments */
@media (max-width: 480px) {
    .login-card[b-xitl1nfov2] {
        border-radius: 8px;
    }

    .login-header[b-xitl1nfov2] {
        padding: 2rem 1.5rem 1.25rem;
    }

    .login-title[b-xitl1nfov2] {
        font-size: 1.375rem;
    }

    .btn-login[b-xitl1nfov2] {
        padding: 0.625rem 1.25rem;
        font-size: 0.9375rem;
    }
}
/* /Components/Pages/Company/AgentManagement.razor.rz.scp.css */
/* Agent Management Page Styles */

.agent-management[b-b12azaei6g] {
    color: #1e293b;
}

.agent-management-standalone[b-b12azaei6g] {
    max-width: 1200px;
    margin: 0 auto;
}

.agent-management-section[b-b12azaei6g] {
    background-color: #f8fafc;
    border: 1px solid var(--brand-border);
    border-radius: 16px;
    padding: 2rem;
}

.agent-management-header[b-b12azaei6g] {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1.5rem;
    margin-bottom: 1.5rem;
}

.agent-management-title[b-b12azaei6g] {
    color: #5b91b8;
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.agent-management-subtitle[b-b12azaei6g] {
    color: #64748b;
    font-size: 0.875rem;
    margin-bottom: 0;
    max-width: 32rem;
}

.agent-management-add[b-b12azaei6g] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.875rem;
    letter-spacing: 0.025em;
    text-transform: uppercase;
    border: none;
    background-color: var(--brand-primary);
    color: #ffffff;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.agent-management-add i[b-b12azaei6g] {
    font-size: 1rem;
}

.agent-management-add:hover[b-b12azaei6g],
.agent-management-add:focus[b-b12azaei6g] {
    background-color: var(--brand-primary-hover);
    color: #ffffff;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    transform: translateY(-1px);
}


/* Modal Styles */
.agent-modal[b-b12azaei6g] {
    z-index: 1050;
}

.agent-modal-dialog[b-b12azaei6g] {
    max-width: 540px;
}

.agent-modal-content[b-b12azaei6g] {
    border-radius: 16px;
    border: 2px solid var(--brand-border);
    overflow: hidden;
}

.agent-modal-header[b-b12azaei6g] {
    background-color: #f8fafc;
    border-bottom: 2px solid var(--brand-border);
    padding: 1.25rem 1.5rem;
    border-top-left-radius: 14px;
    border-top-right-radius: 14px;
}

.agent-modal-header .modal-title[b-b12azaei6g] {
    color: #5b91b8;
    font-size: 1.25rem;
    font-weight: 700;
}

.agent-modal-close[b-b12azaei6g] {
    background-color: transparent;
    border: none;
    opacity: 0.7;
    transition: opacity 0.2s ease;
}

.agent-modal-close:hover[b-b12azaei6g] {
    opacity: 1;
}

.agent-modal-body[b-b12azaei6g] {
    padding: 1.5rem;
}


/* Agent Form Styles */
.agent-form[b-b12azaei6g] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.agent-form-error[b-b12azaei6g] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background-color: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    color: #dc2626;
    font-size: 0.875rem;
}

.agent-field[b-b12azaei6g] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.agent-field-grid[b-b12azaei6g] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.agent-label[b-b12azaei6g] {
    color: #475569;
    font-size: 0.875rem;
    font-weight: 600;
}

.agent-input[b-b12azaei6g] {
    padding: 0.625rem 0.875rem;
    border: 2px solid var(--brand-border);
    border-radius: 8px;
    font-size: 0.875rem;
    transition: all 0.2s ease;
}

.agent-input:focus[b-b12azaei6g] {
    outline: none;
    border-color: var(--brand-primary);
    box-shadow: 0 0 0 3px rgba(91, 145, 184, 0.1);
}

.agent-select[b-b12azaei6g] {
    cursor: pointer;
}

/* Photo Upload Styles */
.agent-photo-block[b-b12azaei6g] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.agent-photo-container[b-b12azaei6g] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.agent-photo-row[b-b12azaei6g] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.agent-photo-preview[b-b12azaei6g] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    background: linear-gradient(135deg, #5b91b8 0%, #3b7098 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.agent-photo-preview img[b-b12azaei6g] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.agent-photo-preview i[b-b12azaei6g] {
    font-size: 2rem;
    color: #ffffff;
}

.agent-photo-upload-area[b-b12azaei6g] {
    flex: 1;
}

.visually-hidden-input-wrapper[b-b12azaei6g] {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
}

.agent-photo-input-hidden[b-b12azaei6g] {
    position: absolute !important;
    width: 0.1px !important;
    height: 0.1px !important;
    opacity: 0 !important;
    overflow: hidden !important;
    z-index: -1 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
}

.agent-photo-input-hidden[b-b12azaei6g],
.agent-photo-input-hidden[b-b12azaei6g]::before,
.agent-photo-input-hidden[b-b12azaei6g]::after,
.agent-photo-input-hidden[b-b12azaei6g]::-webkit-file-upload-button {
    position: absolute !important;
    width: 0.1px !important;
    height: 0.1px !important;
    opacity: 0 !important;
    overflow: hidden !important;
    z-index: -1 !important;
}

.agent-photo-upload-label[b-b12azaei6g] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 1.5rem;
    border: 2px dashed var(--brand-border);
    border-radius: 8px;
    background-color: #f8fafc;
    cursor: pointer;
    transition: all 0.2s ease;
}

.agent-photo-upload-label:hover[b-b12azaei6g] {
    border-color: var(--brand-primary);
    background-color: #f1f5f9;
}

.agent-photo-upload-label i[b-b12azaei6g] {
    font-size: 1.5rem;
    color: #5b91b8;
}

.agent-photo-upload-text[b-b12azaei6g] {
    color: #475569;
    font-size: 0.875rem;
    font-weight: 600;
}

.agent-photo-upload-hint[b-b12azaei6g] {
    color: #64748b;
    font-size: 0.75rem;
}

.agent-photo-loading[b-b12azaei6g] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    min-height: 104px; /* Approximate height of the upload label */
    border: 2px dashed var(--brand-border);
    border-radius: 8px;
    background-color: #f8fafc;
}

.agent-photo-remove[b-b12azaei6g] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background-color: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    color: #dc2626;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.agent-photo-remove:hover[b-b12azaei6g] {
    background-color: #fee2e2;
}

.agent-photo-remove i[b-b12azaei6g] {
    font-size: 1rem;
}

/* Form Actions */
.agent-form-actions[b-b12azaei6g] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    margin-top: 0.5rem;
}

.agent-btn[b-b12azaei6g] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.625rem 1.25rem;
    border: none;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

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

.agent-btn-secondary[b-b12azaei6g] {
    background-color: #f1f5f9;
    color: #475569;
}

.agent-btn-secondary:hover:not(:disabled)[b-b12azaei6g] {
    background-color: #e2e8f0;
}

.agent-btn-primary[b-b12azaei6g] {
    background-color: var(--brand-primary);
    color: #ffffff;
}

.agent-btn-primary:hover:not(:disabled)[b-b12azaei6g] {
    background-color: var(--brand-primary-hover);
}

/* Confirmation Modal Styles */
.agent-confirm-text[b-b12azaei6g] {
    color: #475569;
    font-size: 0.875rem;
    margin-bottom: 1.5rem;
}

.agent-confirm-actions[b-b12azaei6g] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
}

.modal-backdrop[b-b12azaei6g] {
    background-color: rgba(15, 23, 42, 0.5);
    z-index: 1040;
}

/* Responsive Design */
@media (max-width: 768px) {
    .agent-management-section[b-b12azaei6g] {
        padding: 1.5rem;
    }

    .agent-management-header[b-b12azaei6g] {
        flex-direction: column;
        align-items: stretch;
    }

    .agent-management-add[b-b12azaei6g] {
        width: 100%;
        justify-content: center;
    }

    .agent-field-grid[b-b12azaei6g] {
        grid-template-columns: 1fr;
    }

    .agent-photo-row[b-b12azaei6g] {
        flex-direction: column;
        align-items: center;
    }

    .agent-photo-upload-area[b-b12azaei6g] {
        width: 100%;
    }

    .agent-form-actions[b-b12azaei6g] {
        flex-direction: column;
    }

    .agent-btn[b-b12azaei6g] {
        width: 100%;
    }
}
/* /Components/Pages/Company/Components/AddAgentModal.razor.rz.scp.css */
/* Add Agent modal — scoped styling for the Search/Create tab strip and the
   agent search-result list. Brand colors flow through design tokens; neutral
   grays are not theme tokens so they may appear literal. */

/* ── Tab strip (Search Existing / Create New) ──────────────────────────────── */
.aam-tabs[b-3ueks04o0c] {
    border-bottom: 1px solid var(--color-border, #e5e7eb);
    gap: 0.25rem;
}

.aam-tabs .nav-link[b-3ueks04o0c] {
    border: none;
    border-bottom: 2px solid transparent;
    border-radius: 0;
    padding: 0.65rem 0.95rem;
    margin-bottom: -1px;
    background: transparent;
    color: var(--color-muted-foreground, #6c757d);
    font-size: 0.875rem;
    font-weight: 600;
    transition: color 0.15s ease, border-color 0.15s ease;
}

.aam-tabs .nav-link:hover[b-3ueks04o0c] {
    color: var(--brand-primary, #1f628d);
    border-bottom-color: var(--brand-primary-alpha-20, rgba(31, 98, 141, 0.20));
}

.aam-tabs .nav-link.active[b-3ueks04o0c] {
    color: var(--brand-primary, #1f628d);
    border-bottom-color: var(--brand-primary, #1f628d);
    background: transparent;
}

/* ── Search-result list ────────────────────────────────────────────────────── */
.aam-result-list[b-3ueks04o0c] {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 10px;
    overflow: hidden;
    max-height: 360px;
    overflow-y: auto;
}

.aam-result[b-3ueks04o0c] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.65rem 0.85rem;
    border-bottom: 1px solid var(--color-border, #eef1f4);
    transition: background-color 0.15s ease;
}

.aam-result:last-child[b-3ueks04o0c] {
    border-bottom: none;
}

.aam-result:hover[b-3ueks04o0c] {
    background: var(--brand-primary-alpha-5, rgba(31, 98, 141, 0.05));
}

.aam-result__avatar[b-3ueks04o0c] {
    width: 38px;
    height: 38px;
    flex-shrink: 0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    font-weight: 700;
    background: var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
    color: var(--brand-primary, #1f628d);
    overflow: hidden;
}

.aam-result__avatar img[b-3ueks04o0c] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.aam-result__info[b-3ueks04o0c] {
    flex: 1 1 auto;
    min-width: 0;
}

.aam-result__name[b-3ueks04o0c] {
    font-weight: 600;
    color: var(--color-foreground, #1e293b);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aam-result__email[b-3ueks04o0c] {
    font-size: 0.8125rem;
    color: var(--color-muted-foreground, #6c757d);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aam-result__meta[b-3ueks04o0c] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 0.3rem;
}

.aam-chip[b-3ueks04o0c] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.7rem;
    font-weight: 500;
    padding: 0.1rem 0.5rem;
    border-radius: 999px;
    background: var(--color-muted, #f3f6fa);
    color: var(--color-muted-foreground, #6c757d);
}

/* Per-row "Move Here" action — subtle brand fill that solidifies on hover. */
.aam-move-btn[b-3ueks04o0c] {
    flex-shrink: 0;
    border: none;
    background: var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
    color: var(--brand-primary, #1f628d);
    transition: background-color 0.15s ease, color 0.15s ease;
}

.aam-move-btn:hover[b-3ueks04o0c] {
    background: var(--brand-primary, #1f628d);
    color: #ffffff;
}

.aam-result-empty[b-3ueks04o0c] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
    padding: 1.75rem 1rem;
    color: var(--color-muted-foreground, #6c757d);
    font-size: 0.875rem;
}

.aam-result-empty i[b-3ueks04o0c] {
    font-size: 1.75rem;
    color: #cbd5e1;
}
/* /Components/Pages/Company/Components/AgentCard.razor.rz.scp.css */
/* Agent Card Styles */

/* Row inside the list panel: flush, separated by hairline dividers, row-hover tint. */
.agent-card[b-n6clufmai9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.875rem;
    background-color: #ffffff;
    border: none;
    border-bottom: 1px solid var(--color-border, #eef1f4);
    padding: 0.7rem 1.1rem;
    transition: background-color 0.15s ease-in-out;
    cursor: pointer;
}

.agent-card:last-child[b-n6clufmai9] {
    border-bottom: none;
}

.agent-card:hover[b-n6clufmai9] {
    background-color: var(--brand-primary-alpha-5, rgba(31, 98, 141, 0.05));
}

.agent-card-clickable[b-n6clufmai9] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex: 1;
    min-width: 0;
}

.agent-avatar[b-n6clufmai9] {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    overflow: hidden;
    background: linear-gradient(135deg, var(--brand-primary, #5b91b8) 0%, var(--brand-primary-hover, #3b7098) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.agent-avatar img[b-n6clufmai9] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Avatar background colors by role (overrides the default gradient).
   Role-semantic hues (purple admin, amber monitoring) — not brand tokens. */
.avatar-role-admin[b-n6clufmai9] {
    background: #7c3aed;
}

.avatar-role-monitoring[b-n6clufmai9] {
    background: #f59e0b;
}

.avatar-role-agent[b-n6clufmai9] {
    background: linear-gradient(135deg, var(--brand-primary, #5b91b8) 0%, var(--brand-primary-hover, #3b7098) 100%);
}

/* Spec §Agent Card role mapping (issue #2731) — gradient avatars used by the
   flat-list view when the page supplies a ResolvedRole (DashboardRole +
   PrimaryGroupAdmin resolution from group hierarchy). Palette mirrors
   GroupCard.razor.css so card-view and flat-list agree. Role-semantic hues. */
.avatar-role--program-manager[b-n6clufmai9] {
    background: linear-gradient(135deg, #0d9488 0%, #14b8a6 100%);
}

.avatar-role--primary-admin[b-n6clufmai9],
.avatar-role--group-admin[b-n6clufmai9] {
    background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%);
}

.avatar-role--standard[b-n6clufmai9] {
    background: linear-gradient(135deg, #475569 0%, #64748b 100%);
}

.org-role-pill[b-n6clufmai9] {
    font-size: 0.75rem !important;
    padding: 0.25rem 0.625rem !important;
    border-radius: 9999px !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

/* Role-semantic pill colors — meaning-bearing, not brand tokens. */
.org-role-pill--program-manager[b-n6clufmai9] {
    background-color: #ccfbf1;
    color: #0f766e;
}

.org-role-pill--primary-admin[b-n6clufmai9],
.org-role-pill--group-admin[b-n6clufmai9] {
    background-color: #e0e7ff;
    color: #4338ca;
}

.org-role-pill--standard[b-n6clufmai9] {
    display: none;
}

.agent-placeholder-icon[b-n6clufmai9] {
    font-size: 1.75rem;
    color: #ffffff;
}

.agent-initials[b-n6clufmai9] {
    color: #ffffff;
    font-size: 0.95rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    user-select: none;
}

/* Compact two-line layout: name + badges on top, email · title · bound below. */
.agent-details[b-n6clufmai9] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.agent-details__top[b-n6clufmai9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    min-width: 0;
}

.agent-details__bottom[b-n6clufmai9] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-width: 0;
    font-size: 0.8125rem;
    color: var(--color-muted-foreground, #64748b);
}

.agent-name[b-n6clufmai9] {
    color: var(--color-foreground, #1e293b);
    font-size: 1rem;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.agent-email[b-n6clufmai9] {
    color: var(--color-muted-foreground, #64748b);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
}

.agent-title[b-n6clufmai9] {
    color: var(--color-muted-foreground, #475569);
    white-space: nowrap;
}

.agent-meta-sep[b-n6clufmai9] {
    color: var(--color-border, #cbd5e1);
    flex-shrink: 0;
}

.agent-bound[b-n6clufmai9] {
    color: var(--color-muted-foreground, #64748b);
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
}

.agent-details__top .badge[b-n6clufmai9] {
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.2rem 0.55rem;
    border-radius: 9999px;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.role-badge[b-n6clufmai9] {
    background-color: var(--brand-primary);
    color: #ffffff;
}

/* Role-specific badge variants (Issue 5 — RBAC visual distinction).
   Purple admin / amber monitoring are role-semantic; agent uses the brand. */
.role-badge-admin[b-n6clufmai9] {
    background-color: #7c3aed;
    color: #ffffff;
}

.role-badge-agent[b-n6clufmai9] {
    background-color: var(--brand-primary);
    color: #ffffff;
}

.role-badge-monitoring[b-n6clufmai9] {
    background-color: #f59e0b;
    color: #1e293b;
}

/* Status-semantic badges — emerald active / slate inactive. */
.status-badge-active[b-n6clufmai9] {
    background-color: #10b981;
    color: #ffffff;
}

.status-badge-inactive[b-n6clufmai9] {
    background-color: #64748b;
    color: #ffffff;
}

.agent-actions[b-n6clufmai9] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-shrink: 0;
}

.agent-edit[b-n6clufmai9] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: none;
    background-color: transparent;
    color: var(--brand-primary, #5b91b8);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 1.125rem;
}

.agent-edit:hover[b-n6clufmai9] {
    background-color: var(--brand-primary-alpha-5, #f1f5f9);
    color: var(--brand-primary);
}

.agent-toggle[b-n6clufmai9] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.5rem 1rem;
    border: none;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

/* Destructive / success-semantic action toggles. */
.agent-toggle.deactivate[b-n6clufmai9] {
    background-color: #fef2f2;
    color: #dc2626;
}

.agent-toggle.deactivate:hover:not(:disabled)[b-n6clufmai9] {
    background-color: #fee2e2;
}

.agent-toggle.activate[b-n6clufmai9] {
    background-color: #f0fdf4;
    color: #16a34a;
}

.agent-toggle.activate:hover:not(:disabled)[b-n6clufmai9] {
    background-color: #dcfce7;
}

.agent-toggle:disabled[b-n6clufmai9] {
    opacity: 0.6;
    cursor: not-allowed;
}

.agent-toggle-spinner[b-n6clufmai9] {
    margin-right: 0.25rem;
}

.agent-view[b-n6clufmai9] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.5rem 1rem;
    border: none;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
    background-color: var(--brand-primary-alpha-5, #eff6ff);
    color: var(--brand-primary, #5b91b8);
    opacity: 1;
}

.agent-card:hover .agent-view[b-n6clufmai9],
.agent-card:focus-within .agent-view[b-n6clufmai9] {
    opacity: 1;
}

.agent-view:hover[b-n6clufmai9] {
    background-color: var(--brand-primary-alpha-10, #dbeafe);
    color: var(--brand-primary);
}

@media (max-width: 768px) {
    .agent-card[b-n6clufmai9] {
        flex-direction: column;
        align-items: flex-start;
    }

    .agent-card-clickable[b-n6clufmai9] {
        width: 100%;
    }

    .agent-actions[b-n6clufmai9] {
        width: 100%;
        justify-content: flex-end;
    }
}
/* /Components/Pages/Company/Components/AgentList.razor.rz.scp.css */
/* Agent List Section Styles */

.agent-list-section[b-yzceffocc6] {
    background-color: transparent;
    margin-bottom: 2rem;
}

/* Single-panel list: one bordered card holding a header + divider-separated rows. */
.agent-list-panel[b-yzceffocc6] {
    background: #ffffff;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 12px;
    /* visible (not hidden) so the in-panel ALL ROLES dropdown isn't clipped;
       rows share the panel's white background, so the rounded corners stay clean. */
    overflow: visible;
}

.agent-list-panel__head[b-yzceffocc6] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.1rem;
    border-bottom: 1px solid var(--color-border, #e5e7eb);
}

.agent-list-panel__head .bi-people[b-yzceffocc6] {
    color: var(--color-muted-foreground, #6c757d);
}

.agent-list-panel__title[b-yzceffocc6] {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--color-muted-foreground, #6c757d);
}

.agent-list-panel__count[b-yzceffocc6] {
    background: var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
    color: var(--brand-primary, #1f628d);
    font-size: 0.75rem;
    font-weight: 600;
    border-radius: 999px;
    padding: 0.05rem 0.55rem;
}

/* Search + role filter live inside the panel, above the rows. */
.agent-list-panel__toolbar[b-yzceffocc6] {
    padding: 0.75rem 1.1rem;
    border-bottom: 1px solid var(--color-border, #eef1f4);
}

/* The toolbar already provides the panel's internal spacing — drop any bottom
   margin the AgentToolbar carries so it sits flush within the panel section. */
.agent-list-panel__toolbar[b-yzceffocc6]  > * {
    margin-bottom: 0;
}

.agent-list-header[b-yzceffocc6] {
    margin-bottom: 1.5rem;
}

.agent-list-title[b-yzceffocc6] {
    color: var(--brand-primary, #5b91b8);
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.agent-list-subtitle[b-yzceffocc6] {
    color: var(--color-muted-foreground, #64748b);
    font-size: 0.875rem;
    margin-bottom: 0;
}

.agent-list-grid[b-yzceffocc6] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.empty-state[b-yzceffocc6] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 1rem;
    color: var(--color-muted-foreground, #64748b);
    text-align: center;
}

.empty-state i[b-yzceffocc6] {
    font-size: 3rem;
    margin-bottom: 1rem;
    color: #94a3b8;
}

.empty-state p[b-yzceffocc6] {
    margin: 0;
    font-size: 0.875rem;
}

/* Loading Skeleton */
.agent-card-skeleton[b-yzceffocc6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.875rem;
    background-color: #ffffff;
    border-bottom: 1px solid var(--color-border, #eef1f4);
    padding: 0.7rem 1.1rem;
}

.agent-card-skeleton:last-child[b-yzceffocc6] {
    border-bottom: none;
}

.skeleton-content[b-yzceffocc6] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex: 1;
}

.skeleton-avatar[b-yzceffocc6] {
    width: 42px;
    height: 42px;
    flex-shrink: 0;
}

.skeleton-details[b-yzceffocc6] {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.skeleton-actions[b-yzceffocc6] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-shrink: 0;
}

.agent-card-skeleton .placeholder[b-yzceffocc6] {
    background-color: #e2e8f0;
    animation: placeholder-glow-b-yzceffocc6 2s ease-in-out infinite;
}

@keyframes placeholder-glow-b-yzceffocc6 {
    0% {
        opacity: 0.5;
    }
    50% {
        opacity: 1;
    }
    100% {
        opacity: 0.5;
    }
}

@media (max-width: 768px) {
    .agent-card-skeleton[b-yzceffocc6] {
        flex-direction: column;
        align-items: flex-start;
    }

    .skeleton-content[b-yzceffocc6] {
        width: 100%;
    }

    .skeleton-actions[b-yzceffocc6] {
        width: 100%;
        justify-content: flex-end;
    }
}
/* /Components/Pages/Company/Components/AgentPagination.razor.rz.scp.css */
/* Agent Pagination Styles */

.agent-pagination[b-cbrvh6wbc2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 1.5rem;
    padding: 1rem 0;
    border-top: 1px solid var(--brand-border);
}

.agent-pagination-info[b-cbrvh6wbc2] {
    color: #64748b;
    font-size: 0.875rem;
    font-weight: 500;
}

.agent-pagination-controls[b-cbrvh6wbc2] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.page-status[b-cbrvh6wbc2] {
    color: var(--brand-primary, #1f628d);
    font-size: 0.875rem;
    font-weight: 700;
    padding: 0 0.5rem;
    letter-spacing: 0.01em;
}

.page-button[b-cbrvh6wbc2] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 1rem;
    background-color: #ffffff;
    border: 1.5px solid var(--brand-primary, #1f628d);
    border-radius: 8px;
    color: var(--brand-primary, #1f628d);
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.page-button:hover:not(:disabled)[b-cbrvh6wbc2] {
    background: var(--gradient-g3, linear-gradient(to right, var(--brand-primary, #1f628d), var(--brand-secondary, #01949f)));
    border-color: var(--brand-primary, #1f628d);
    color: #ffffff;
    box-shadow: 0 2px 6px rgba(31, 98, 141, 0.18);
}

.page-button:focus-visible[b-cbrvh6wbc2] {
    outline: 2px solid var(--brand-secondary, #01949f);
    outline-offset: 2px;
}

.page-button:disabled[b-cbrvh6wbc2] {
    background-color: #f8fafc;
    border-color: #e2e8f0;
    color: #94a3b8;
    cursor: not-allowed;
    box-shadow: none;
}

.page-button.prev[b-cbrvh6wbc2] {
    /* Additional styling for previous button if needed */
}

.page-button.next[b-cbrvh6wbc2] {
    /* Additional styling for next button if needed */
}

@media (max-width: 768px) {
    .agent-pagination[b-cbrvh6wbc2] {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch;
    }

    .agent-pagination-info[b-cbrvh6wbc2] {
        text-align: center;
    }

    .agent-pagination-controls[b-cbrvh6wbc2] {
        justify-content: center;
    }
}
/* /Components/Pages/Company/Components/AgentStatsModal.razor.rz.scp.css */
/* Width comes from Bootstrap's .modal-lg (800px) on the dialog — a global
   class, so it applies reliably without a scoped-CSS rebuild. */

/* Slim header: just an eyebrow label + the close button. */
.agent-stats-header[b-cff32rj023] {
    align-items: center;
    justify-content: space-between;
    padding: 0.85rem 1.25rem;
    border-bottom: 1px solid #e2e8f0;
}

.agent-stats-eyebrow[b-cff32rj023] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--color-muted-foreground, #64748b);
}

/* ── Agent identity hero (moved out of the header) ─────────────────────────── */
.agent-hero[b-cff32rj023] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding-bottom: 1.25rem;
    margin-bottom: 1.25rem;
    border-bottom: 1px solid #eef1f4;
}

.agent-hero__info[b-cff32rj023] {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.agent-hero__name[b-cff32rj023] {
    font-size: 1.2rem;
    color: #1e293b;
}

.agent-hero__meta[b-cff32rj023] {
    font-size: 0.85rem;
    color: var(--color-muted-foreground, #64748b);
}

.agent-hero__status[b-cff32rj023] {
    background: #f1f5f9;
    color: #64748b;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    border-radius: 999px;
    padding: 0.2rem 0.55rem;
}

.agent-hero__actions[b-cff32rj023] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

/* Action buttons — inline, color-coded (no dropdown). */
.agent-action[b-cff32rj023] {
    border: 1px solid transparent;
    white-space: nowrap;
}

.agent-action--edit[b-cff32rj023] {
    background: var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
    color: var(--brand-primary, #1f628d);
}

.agent-action--edit:hover[b-cff32rj023] {
    background: var(--brand-primary, #1f628d);
    color: #ffffff;
}

.agent-action--deactivate[b-cff32rj023] {
    background: #fff;
    border-color: #fecaca;
    color: #dc2626;
}

.agent-action--deactivate:hover[b-cff32rj023] {
    background: #fef2f2;
    border-color: #fca5a5;
    color: #dc2626;
}

.agent-action--activate[b-cff32rj023] {
    background: #ecfdf5;
    border-color: #a7f3d0;
    color: #047857;
}

.agent-action--activate:hover[b-cff32rj023] {
    background: #047857;
    border-color: #047857;
    color: #ffffff;
}

.agent-stats-avatar[b-cff32rj023] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    font-weight: 700;
    color: #fff;
    overflow: hidden;
    flex-shrink: 0;
}

.agent-stats-avatar img[b-cff32rj023] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.agent-stats-avatar--program-manager[b-cff32rj023] {
    background: linear-gradient(135deg, #0d9488 0%, #14b8a6 100%);
}

.agent-stats-avatar--primary-admin[b-cff32rj023],
.agent-stats-avatar--group-admin[b-cff32rj023] {
    background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%);
}

.agent-stats-avatar--standard[b-cff32rj023] {
    background: linear-gradient(135deg, #475569 0%, #64748b 100%);
}

.agent-stats-avatar--deactivated[b-cff32rj023] {
    background: linear-gradient(135deg, #94a3b8 0%, #cbd5e1 100%);
}

/* Management Responsibilities cards */
.resp-card[b-cff32rj023] {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
    padding: 1rem 1.1rem;
    border-radius: 12px;
    border: 1px solid #e5e7eb;
    background: #ffffff;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
    height: 100%;
    position: relative;
    overflow: hidden;
    transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.resp-card:hover[b-cff32rj023] {
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);
}

/* Tinted left accent rail per card. */
.resp-card[b-cff32rj023]::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
}

.resp-card--role[b-cff32rj023]::before { background: var(--brand-primary, #1f628d); }
.resp-card--group[b-cff32rj023]::before { background: var(--brand-secondary, #01949f); }

.resp-card-icon[b-cff32rj023] {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 1.15rem;
}

.resp-card--role .resp-card-icon[b-cff32rj023] {
    background: var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
    color: var(--brand-primary, #1f628d);
}

.resp-card--group .resp-card-icon[b-cff32rj023] {
    background: var(--brand-secondary-alpha-10, rgba(1, 148, 159, 0.10));
    color: var(--brand-secondary, #01949f);
}

.resp-card-label[b-cff32rj023] {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748b;
}

.resp-card-value[b-cff32rj023] {
    font-weight: 600;
    font-size: 1rem;
    color: #1e293b;
    margin-top: 0.1rem;
}

.resp-card-descriptor[b-cff32rj023] {
    font-size: 0.8rem;
    color: #475569;
}

.resp-callout[b-cff32rj023] {
    padding: 0.85rem 1rem;
    border-radius: 8px;
    font-size: 0.9rem;
    border-left: 4px solid;
}

.resp-callout--pm[b-cff32rj023] {
    background: #f0fdfa;
    color: #0f766e;
    border-left-color: #14b8a6;
}

.resp-callout--ga[b-cff32rj023] {
    background: #eef2ff;
    color: #3730a3;
    border-left-color: #6366f1;
}

/* Assigned Accounts table — override the global `.table thead th` rule in
   nxus-components.css that paints headers with --brand-primary on a white
   modal surface (too heavy, plus the slate text we want disappears against
   the dark teal). Subtle muted band matches the modal's overall palette. */
.assigned-accounts-table thead th[b-cff32rj023] {
    background-color: #f8fafc !important;
    color: #64748b !important;
    text-transform: uppercase;
    font-size: 0.7rem;
    letter-spacing: 0.05em;
    font-weight: 600;
    border-bottom: 1px solid #e2e8f0 !important;
    padding: 0.6rem 0.75rem;
}

.clickable-row[b-cff32rj023] {
    cursor: pointer;
}

.stage-pill[b-cff32rj023] {
    font-size: 0.7rem;
    padding: 0.3rem 0.6rem;
    border-radius: 999px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.stage-pill--dormant[b-cff32rj023] {
    background: #f1f5f9;
    color: #475569;
}

.stage-pill--active[b-cff32rj023] {
    background: #dbeafe;
    color: #1d4ed8;
}

.stage-pill--bound[b-cff32rj023] {
    background: #d1fae5;
    color: #065f46;
}

.stage-pill--closed[b-cff32rj023] {
    background: #fee2e2;
    color: #b91c1c;
}

/* Contact-role pill on the Assigned Accounts table.
   Primary = brand teal (matches Program Manager avatar gradient),
   Secondary = indigo (matches Group Admin), Tertiary = slate,
   "—" = muted. */
.contact-role-pill[b-cff32rj023] {
    font-size: 0.7rem;
    padding: 0.3rem 0.6rem;
    border-radius: 999px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.contact-role-pill--primary[b-cff32rj023] {
    background: #ccfbf1;
    color: #0f766e;
}

.contact-role-pill--secondary[b-cff32rj023] {
    background: #e0e7ff;
    color: #4338ca;
}

.contact-role-pill--tertiary[b-cff32rj023] {
    background: #f1f5f9;
    color: #475569;
}

.contact-role-pill--none[b-cff32rj023] {
    background: transparent;
    color: #94a3b8;
    font-weight: 400;
}

/* Performance Metrics collapsible toggle — a full-width bar with a tinted
   icon, label, hint, and a chevron that rotates when open. */
.agent-perf-toggle[b-cff32rj023] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    width: 100%;
    padding: 0.7rem 0.9rem;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease;
}

.agent-perf-toggle:hover[b-cff32rj023] {
    background: var(--brand-primary-alpha-5, rgba(31, 98, 141, 0.05));
    border-color: var(--brand-primary, #1f628d);
}

.agent-perf-toggle--open[b-cff32rj023] {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.agent-perf-toggle__icon[b-cff32rj023] {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
    color: var(--brand-primary, #1f628d);
    font-size: 0.9rem;
}

.agent-perf-toggle__label[b-cff32rj023] {
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #1e293b;
}

.agent-perf-toggle__hint[b-cff32rj023] {
    font-size: 0.8rem;
    color: var(--color-muted-foreground, #64748b);
}

.agent-perf-toggle__chevron[b-cff32rj023] {
    color: var(--color-muted-foreground, #64748b);
    transition: transform 0.2s ease;
}

.agent-perf-toggle--open .agent-perf-toggle__chevron[b-cff32rj023] {
    transform: rotate(180deg);
}

/* Performance metric cards — styles moved to PerfCard.razor.css so
   Blazor scoped CSS actually matches the DOM the child component renders. */
/* /Components/Pages/Company/Components/AgentToolbar.razor.rz.scp.css */
/* Agent Toolbar Styles */

.agent-toolbar[b-9edmslzzl3] {
    display: flex;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.search-wrapper[b-9edmslzzl3] {
    position: relative;
    flex: 1;
    max-width: 400px;
}

.search-icon-wrapper[b-9edmslzzl3] {
    position: absolute;
    left: 1rem;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    color: #64748b;
    pointer-events: none;
    z-index: 5;
}

.search-icon-wrapper i[b-9edmslzzl3] {
    font-size: 1rem;
    line-height: 1;
}

.search-loading-spinner[b-9edmslzzl3] {
    width: 1rem;
    height: 1rem;
    border-width: 2px;
}

.agent-search-input[b-9edmslzzl3] {
    padding-left: 2.75rem;
    border: 2px solid var(--brand-border);
    border-radius: 8px;
    font-size: 0.875rem;
    height: 42px;
    transition: all 0.2s ease;
}

.agent-search-input:focus[b-9edmslzzl3] {
    border-color: var(--brand-primary);
    box-shadow: 0 0 0 3px rgba(91, 145, 184, 0.1);
    outline: none;
}

.role-filter-dropdown[b-9edmslzzl3] {
    position: relative;
    min-width: 180px;
}

.role-dropdown-btn[b-9edmslzzl3] {
    background-color: #ffffff;
    border: 2px solid var(--brand-border);
    border-radius: 8px;
    color: #475569;
    font-size: 0.875rem;
    font-weight: 600;
    height: 42px;
    text-align: left;
    padding: 0.5rem 1rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: all 0.2s ease;
}

.role-dropdown-btn:hover[b-9edmslzzl3],
.role-dropdown-btn:focus[b-9edmslzzl3] {
    background-color: #f8fafc;
    border-color: var(--brand-primary);
    color: var(--brand-primary);
}

.role-dropdown-btn[b-9edmslzzl3]::after {
    margin-left: auto;
}

.role-dropdown-menu[b-9edmslzzl3] {
    border: 2px solid var(--brand-border);
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    margin-top: 0.25rem;
    padding: 0.5rem 0;
}

.role-dropdown-item[b-9edmslzzl3] {
    color: #475569;
    font-size: 0.875rem;
    font-weight: 500;
    padding: 0.625rem 1rem;
    transition: all 0.15s ease;
    cursor: pointer;
}

.role-dropdown-item:hover[b-9edmslzzl3] {
    background-color: #f1f5f9;
    color: var(--brand-primary);
}

.role-dropdown-item.active[b-9edmslzzl3] {
    background-color: #e0f2fe;
    color: var(--brand-primary);
    font-weight: 600;
}

.role-dropdown-item i[b-9edmslzzl3] {
    color: var(--brand-primary);
    font-size: 1rem;
}

@media (max-width: 768px) {
    .agent-toolbar[b-9edmslzzl3] {
        flex-direction: column;
    }

    .search-wrapper[b-9edmslzzl3] {
        max-width: 100%;
    }

    .role-filter-dropdown[b-9edmslzzl3] {
        min-width: 100%;
    }
}
/* /Components/Pages/Company/Components/CompanyMetricCard.razor.rz.scp.css */
/* Company Metric Card Styles */

.company-metric-card[b-11gtkae3md] {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 20px;
    background-color: #ffffff;
    border: 3px solid var(--brand-border);
    border-radius: 12px;
    padding: 1rem;
    transition: all 0.2s ease-in-out;
}

.company-metric-card:hover[b-11gtkae3md] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.metric-header[b-11gtkae3md] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.75rem;
    gap: 0.5rem;
}

.metric-title[b-11gtkae3md] {
    color: #475569;
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.metric-value[b-11gtkae3md] {
    color: #1e293b;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
}

.metric-value-bound[b-11gtkae3md] {
    color: var(--bs-success)
}

.metric-value-declined[b-11gtkae3md] {
    color: var(--bs-danger)
}

.trend-badge[b-11gtkae3md] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.trend-positive[b-11gtkae3md] {
    background-color: var(--brand-primary);
    color: #ffffff;
}

.trend-negative[b-11gtkae3md] {
    background-color: var(--brand-secondary);
    color: #ffffff;
}

.trend-badge i[b-11gtkae3md] {
    font-size: 0.75rem;
    height: 20px;
    width: 20px;
}

.trend-badge svg[b-11gtkae3md] {
    fill: var(--brand-primary-contrast);
    height: 100%;
    width: 100%;
}
/* /Components/Pages/Company/Components/ConversionRatios.razor.rz.scp.css */
.conversion-ratios-section[b-gaiz2u2xdi] {
    background-color: #f8fafc;
    border: 1px solid var(--brand-border);
    border-radius: 16px;
    padding: 2rem;
    margin-bottom: 2rem;
}

.section-header[b-gaiz2u2xdi] {
    margin-bottom: 1.5rem;
}

.section-title[b-gaiz2u2xdi] {
    color: #5b91b8;
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.section-subtitle[b-gaiz2u2xdi] {
    color: #64748b;
    font-size: 0.875rem;
    margin-bottom: 0;
}

.loading-container[b-gaiz2u2xdi] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 0;
}

.loading-text[b-gaiz2u2xdi] {
    margin-top: 1rem;
    color: #6b7280;
    font-size: 0.875rem;
}

.conversion-metrics-grid[b-gaiz2u2xdi] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
}

@media (max-width: 1500px) {
    .conversion-metrics-grid[b-gaiz2u2xdi] {
        grid-template-columns: 1fr;
    }
}

.metric-card[b-gaiz2u2xdi] {
    background-color: #ffffff;
    border: 3px solid var(--brand-border);
    border-radius: 12px;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 20px;
    transition: all 0.2s ease-in-out;
}

.metric-card:hover[b-gaiz2u2xdi] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.metric-content[b-gaiz2u2xdi] {
    flex: 1;
    min-width: 0;
}

.metric-header[b-gaiz2u2xdi] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.75rem;
    gap: 0.5rem;
}

.metric-label[b-gaiz2u2xdi] {
    color: #475569;
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    margin: 0;
}

.metric-value-row[b-gaiz2u2xdi] {
    display: flex;
    align-items: baseline;
    margin-bottom: 0.5rem;
}

.metric-value[b-gaiz2u2xdi] {
    color: #1e293b;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
}

.metric-trend[b-gaiz2u2xdi] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.metric-trend.trend-positive[b-gaiz2u2xdi] {
    background-color: var(--brand-primary);
    color: #ffffff;
}

.metric-trend.trend-negative[b-gaiz2u2xdi] {
    background-color: var(--brand-secondary);
    color: #ffffff;
}

.metric-description[b-gaiz2u2xdi] {
    font-size: 0.813rem;
    color: #64748b;
    margin: 0;
    line-height: 1.4;
}
/* /Components/Pages/Company/Components/CoreMetrics.razor.rz.scp.css */
/* Core Metrics Section Styles */

.core-metrics-section[b-iwcco6p3tp] {
    background-color: #f8fafc;
    border: 1px solid var(--brand-border);
    border-radius: 16px;
    padding: 2rem;
    margin-bottom: 2rem;
}

.metrics-header[b-iwcco6p3tp] {
    margin-bottom: 1.5rem;
}

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

.metrics-info-icon-wrapper[b-iwcco6p3tp] {
    position: relative;
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
}

.metrics-info-icon[b-iwcco6p3tp] {
    color: #5b91b8;
    font-size: 1.25rem;
    cursor: help;
    transition: color 0.2s ease;
}

.metrics-info-icon:hover[b-iwcco6p3tp] {
    color: #3b7098;
}

.metrics-tooltip[b-iwcco6p3tp] {
    position: absolute;
    top: calc(100% + 0.5rem);
    right: 0;
    background-color: var(--brand-primary);
    color: var(--brand-primary-contrast);
    padding: 0.75rem 1rem;
    border-radius: 8px;
    font-size: 0.875rem;
    white-space: pre-line;
    line-height: 1.5;
    min-width: 280px;
    max-width: 320px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0.2s ease;
    z-index: 1000;
    pointer-events: none;
}

.metrics-tooltip[b-iwcco6p3tp]::before {
    content: '';
    position: absolute;
    top: -0.25rem;
    right: 0.75rem;
    width: 0.5rem;
    height: 0.5rem;
    background-color: #1e293b;
    transform: rotate(45deg);
}

.metrics-info-icon-wrapper:hover .metrics-tooltip[b-iwcco6p3tp] {
    opacity: 1;
    visibility: visible;
}

.metrics-title[b-iwcco6p3tp] {
    color: #5b91b8;
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.metrics-subtitle[b-iwcco6p3tp] {
    color: #64748b;
    font-size: 0.875rem;
    margin-bottom: 0;
}

.metrics-grid[b-iwcco6p3tp] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
}

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

@media (max-width: 768px) {
    .metrics-grid[b-iwcco6p3tp] {
        grid-template-columns: 1fr;
    }
}

/* Skeleton Loading States */
.metric-card-skeleton[b-iwcco6p3tp] {
    background-color: #ffffff;
    border: 2px solid #cbd5e1;
    border-radius: 12px;
    padding: 1.5rem;
}

.skeleton-header[b-iwcco6p3tp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.75rem;
    gap: 0.5rem;
}

.skeleton-value[b-iwcco6p3tp] {
    margin-top: 0.75rem;
}

.placeholder[b-iwcco6p3tp] {
    display: inline-block;
    min-height: 1em;
    vertical-align: middle;
    background-color: #e2e8f0;
    opacity: 0.5;
    animation: placeholder-glow-b-iwcco6p3tp 2s ease-in-out infinite;
}

@keyframes placeholder-glow-b-iwcco6p3tp {
    0% {
        opacity: 0.5;
    }
    50% {
        opacity: 0.3;
    }
    100% {
        opacity: 0.5;
    }
}
/* /Components/Pages/Company/Components/DeleteGroupConfirmModal.razor.rz.scp.css */
/* Styling now comes from the shared DestructiveConfirmModal
   (centered-icon confirmation). This component is a thin wrapper, so no
   page-scoped styles are needed here. */
/* /Components/Pages/Company/Components/GroupCard.razor.rz.scp.css */
.group-card[b-woqmntvmkf] {
    background: #fff;
    border: 1px solid var(--brand-border, #dee2e6);
    border-radius: 12px;
    margin-bottom: 1rem;
    overflow: visible; /* allow Group Actions dropdown to escape */
    position: relative;
}

.group-card-actions[b-woqmntvmkf] {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    z-index: 2;
}

/* Lift the card whose Group Actions dropdown is open above its siblings.
   Each .group-card is position:relative with z-index:auto, so sibling cards
   later in the DOM paint over earlier ones. The open dropdown menu (z-index
   1000) is trapped inside its own card's stacking context, so a sibling card's
   absolutely-positioned quick-action buttons (.group-card-actions, z-index 2)
   would otherwise bleed through the open menu. Raising the active card's
   z-index gives its whole stacking context — menu included — priority. */
.group-card:has(.dropdown-menu.show)[b-woqmntvmkf] {
    z-index: 1001;
}

/* Disabled Delete Group state (#2732 follow-up) — Bootstrap's default
   .dropdown-item:disabled doesn't visually override .text-danger
   strongly enough, so users read the bright red as clickable. Drop the
   red, mute the icon + text, and switch the cursor to communicate the
   action is unavailable until the group is empty. */
.delete-group--disabled[b-woqmntvmkf] {
    color: #94a3b8 !important;
    opacity: 0.7;
    cursor: not-allowed !important;
    background-color: transparent !important;
}

.delete-group--disabled:hover[b-woqmntvmkf],
.delete-group--disabled:focus[b-woqmntvmkf] {
    color: #94a3b8 !important;
    background-color: transparent !important;
}

/* Nested subgroups: a lighter, tucked-in treatment so they read as children
   of the current group rather than competing cards. Muted surface, slim brand
   accent rail, compact header. */
.group-card--nested[b-woqmntvmkf] {
    margin-left: 0;
    margin-bottom: 0.5rem;
    background: var(--color-muted, #f8fafc);
    border: 1px solid var(--color-border, #eef1f4);
    border-left: 3px solid var(--brand-primary, #1f628d);
    border-radius: 8px;
    transition: background 0.15s ease, box-shadow 0.15s ease;
}

.group-card--nested:hover[b-woqmntvmkf] {
    background: var(--brand-primary-alpha-5, rgba(31, 98, 141, 0.05));
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}

.group-card--nested:last-child[b-woqmntvmkf] {
    margin-bottom: 0;
}

.group-card--nested .group-card-header[b-woqmntvmkf] {
    padding: 0.65rem 3rem 0.65rem 0.85rem;
}

.group-card--nested .group-card-name[b-woqmntvmkf] {
    font-size: 0.95rem;
}

/* Members-only mode (master–detail center pane): drop the card chrome so the
   member rows sit cleanly inside the detail panel. */
.group-card--bare[b-woqmntvmkf] {
    border: none;
    border-radius: 0;
    margin: 0;
}

.group-card--bare .group-card-body[b-woqmntvmkf] {
    padding: 0;
    border-top: none;
}

.group-card-header[b-woqmntvmkf] {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    /* Right padding reserves space for the absolutely positioned
       .group-card-actions kebab (right: 0.75rem, ~32px wide) so the
       Members/Clients metrics don't render beneath it. */
    padding: 1rem 3.25rem 1rem 1.25rem;
    background: transparent;
    border: none;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s ease;
}

.group-card-header:hover[b-woqmntvmkf] {
    background: var(--brand-primary-alpha-5, rgba(31, 98, 141, 0.05));
}

/* Detail-pane mode: header is static (the left list owns selection). */
.group-card-header--static[b-woqmntvmkf] {
    cursor: default;
}

.group-card-header--static:hover[b-woqmntvmkf] {
    background: transparent;
}

.group-card-chevron[b-woqmntvmkf] {
    color: var(--color-muted-foreground, #64748b);
    flex-shrink: 0;
    font-size: 0.9rem;
}

.group-card-name[b-woqmntvmkf] {
    font-weight: 600;
    font-size: 1.05rem;
    color: var(--color-foreground, #1e293b);
}

.group-badge[b-woqmntvmkf] {
    font-weight: 500;
    font-size: 0.75rem;
    padding: 0.35rem 0.6rem;
    border-radius: 999px;
}

/* Role/state-semantic badge colors — meaning-bearing, not brand tokens. */
.group-badge--admin[b-woqmntvmkf] {
    background: #eef2ff;
    color: #4338ca;
}

.group-badge--warning[b-woqmntvmkf] {
    background: var(--tier-c-warning-bg, #fff7ed);
    color: var(--tier-c-warning, #c2410c);
}

.group-badge--muted[b-woqmntvmkf] {
    background: #f1f5f9;
    color: var(--color-muted-foreground, #475569);
}

.group-card-metrics[b-woqmntvmkf] {
    color: var(--color-muted-foreground, #475569);
}

.group-card-metric[b-woqmntvmkf] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    line-height: 1;
}

.metric-value[b-woqmntvmkf] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-foreground, #1e293b);
}

.metric-label[b-woqmntvmkf] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--color-muted-foreground, #64748b);
}

.group-card-body[b-woqmntvmkf] {
    padding: 0 1.25rem 1.25rem;
    border-top: 1px solid var(--color-border, #f1f5f9);
}

/* Empty state when a group has no members. */
.group-empty[b-woqmntvmkf] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1.75rem 1rem;
    text-align: center;
}

.group-empty__icon[b-woqmntvmkf] {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
    color: var(--brand-primary, #1f628d);
    font-size: 1.2rem;
}

.group-empty__text[b-woqmntvmkf] {
    font-size: 0.875rem;
    color: var(--color-muted-foreground, #6c757d);
}

.group-agent-grid[b-woqmntvmkf] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding-top: 0.75rem;
}

.group-agent-row[b-woqmntvmkf] {
    display: grid;
    grid-template-columns: 40px 1fr auto auto auto;
    gap: 0.75rem;
    align-items: center;
    padding: 0.5rem 0.75rem;
    border-radius: 8px;
    transition: background 0.15s ease;
}

.group-agent-row:hover[b-woqmntvmkf] {
    background: var(--brand-primary-alpha-5, rgba(31, 98, 141, 0.05));
}

.group-agent-row--primary-admin[b-woqmntvmkf] {
    background: #f5f3ff;
}

.group-agent-avatar[b-woqmntvmkf] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.85rem;
    font-weight: 700;
    color: #fff;
    overflow: hidden;
    flex-shrink: 0;
}

.group-agent-avatar img[b-woqmntvmkf] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Spec §Agent Card: teal gradient for Program Manager, indigo for Group Admin
   (Primary and regular share color — see spec note), slate for standard.
   Role-semantic hues — intentionally NOT brand tokens. */
.group-agent-avatar--program-manager[b-woqmntvmkf] {
    background: linear-gradient(135deg, #0d9488 0%, #14b8a6 100%);
}

.group-agent-avatar--primary-admin[b-woqmntvmkf],
.group-agent-avatar--group-admin[b-woqmntvmkf] {
    background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%);
}

.group-agent-avatar--standard[b-woqmntvmkf] {
    background: linear-gradient(135deg, #475569 0%, #64748b 100%);
}

.group-agent-info[b-woqmntvmkf] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

.group-agent-name[b-woqmntvmkf] {
    font-weight: 600;
    color: var(--color-foreground, #1e293b);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.group-agent-email[b-woqmntvmkf] {
    font-size: 0.8rem;
    color: var(--color-muted-foreground, #64748b);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.role-pill[b-woqmntvmkf] {
    font-size: 0.7rem;
    padding: 0.25rem 0.55rem;
    border-radius: 999px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

/* Role-semantic pill colors — meaning-bearing, not brand tokens. */
.role-pill--program-manager[b-woqmntvmkf] {
    background: #ccfbf1;
    color: #0f766e;
}

.role-pill--primary-admin[b-woqmntvmkf],
.role-pill--group-admin[b-woqmntvmkf] {
    background: #e0e7ff;
    color: #4338ca;
}

.role-pill--standard[b-woqmntvmkf] {
    display: none;
}

.group-agent-clients[b-woqmntvmkf] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    line-height: 1;
}

.group-agent-view[b-woqmntvmkf] {
    flex-shrink: 0;
}

/* Member-row actions (View + Remove). */
.group-agent-actions[b-woqmntvmkf] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex-shrink: 0;
}

.group-agent-remove[b-woqmntvmkf] {
    border: 1px solid #fecaca;
    background: #ffffff;
    color: #dc2626;
    white-space: nowrap;
}

.group-agent-remove:hover:not(:disabled)[b-woqmntvmkf] {
    background: #fef2f2;
    border-color: #fca5a5;
}

.group-agent-remove:disabled[b-woqmntvmkf] {
    opacity: 0.45;
    cursor: not-allowed;
}

/* Explicit subgroup quick-actions (Detach / Delete) shown alongside the kebab
   on nested subgroup rows. */
.group-card-actions--nested[b-woqmntvmkf] {
    display: flex;
    align-items: center;
    gap: 0.1rem;
}

.group-card-quickaction[b-woqmntvmkf] {
    border: none;
    background: transparent;
    color: var(--color-muted-foreground, #64748b);
    padding: 0.2rem 0.4rem;
    border-radius: 6px;
    line-height: 1;
}

.group-card-quickaction:hover:not(:disabled)[b-woqmntvmkf] {
    background: var(--brand-primary-alpha-5, rgba(31, 98, 141, 0.05));
    color: var(--brand-primary, #1f628d);
}

.group-card-quickaction--danger:hover:not(:disabled)[b-woqmntvmkf] {
    background: #fef2f2;
    color: #dc2626;
}

.group-card-quickaction:disabled[b-woqmntvmkf] {
    opacity: 0.4;
    cursor: not-allowed;
}

/* Reserve header space for Detach + Delete + kebab on nested rows. */
.group-card--nested .group-card-header[b-woqmntvmkf] {
    padding-right: 8rem;
}

.group-card-children[b-woqmntvmkf] {
    padding-top: 0.85rem;
    border-top: 1px solid var(--color-border, #eef1f4);
    margin-top: 0.85rem;
}

.group-card-children__label[b-woqmntvmkf] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    margin-bottom: 0.6rem;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--color-muted-foreground, #6c757d);
}

.group-card-children__count[b-woqmntvmkf] {
    background: var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
    color: var(--brand-primary, #1f628d);
    font-size: 0.7rem;
    font-weight: 600;
    border-radius: 999px;
    padding: 0.02rem 0.45rem;
}
/* /Components/Pages/Company/Components/MonthlyBreakdown.razor.rz.scp.css */
.monthly-breakdown-section[b-b3i51o2jo6] {
    background-color: #f8fafc;
    border: 1px solid var(--brand-border);
    border-radius: 16px;
    padding: 2rem;
    margin-bottom: 2rem;
}

.section-header[b-b3i51o2jo6] {
    margin-bottom: 1.5rem;
}

.section-title[b-b3i51o2jo6] {
    color: #5b91b8;
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.loading-container[b-b3i51o2jo6] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 0;
}

.loading-text[b-b3i51o2jo6] {
    margin-top: 1rem;
    color: #64748b;
    font-size: 0.875rem;
}

.table-responsive[b-b3i51o2jo6] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.breakdown-table[b-b3i51o2jo6] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
    min-width: 700px;
}

.breakdown-table thead[b-b3i51o2jo6] {
    background-color: var(--brand-muted);
    color: var(--brand-muted-contrast);
}

.breakdown-table th[b-b3i51o2jo6] {
    padding: 0.875rem 0.75rem;
    font-weight: 600;
    text-align: left;
    font-size: 0.813rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    white-space: nowrap;
}

.breakdown-table th.text-center[b-b3i51o2jo6] {
    text-align: center;
}

.breakdown-table tbody tr[b-b3i51o2jo6] {
    border-bottom: 1px solid #e5e7eb;
    transition: background-color 0.15s ease;
}

.breakdown-table tbody tr:hover[b-b3i51o2jo6] {
    background-color: #f8fafc;
}

.breakdown-table tbody tr:last-child[b-b3i51o2jo6] {
    border-bottom: 2px solid var(--brand-border);
}

.breakdown-table td[b-b3i51o2jo6] {
    padding: 0.875rem 0.75rem;
    color: #1e293b;
}

.breakdown-table td.text-center[b-b3i51o2jo6] {
    text-align: center;
}

.breakdown-table .month-cell[b-b3i51o2jo6] {
    font-weight: 600;
    color: #5b91b8;
}

.breakdown-table tfoot[b-b3i51o2jo6] {
    background-color: #f3f6fa;
    border-top: 2px solid #5b91b8;
}

.breakdown-table tfoot .total-row td[b-b3i51o2jo6] {
    padding: 1rem 0.75rem;
    color: #5b91b8;
    font-size: 0.938rem;
}

.breakdown-table tfoot .total-row .month-cell[b-b3i51o2jo6] {
    font-size: 1rem;
}

@media (max-width: 768px) {
    .monthly-breakdown-section[b-b3i51o2jo6] {
        padding: 1rem;
    }
    
    .breakdown-table[b-b3i51o2jo6] {
        font-size: 0.813rem;
    }
    
    .breakdown-table th[b-b3i51o2jo6],
    .breakdown-table td[b-b3i51o2jo6] {
        padding: 0.625rem 0.5rem;
    }
}

/* Scrollbar styling for mobile */
.table-responsive[b-b3i51o2jo6]::-webkit-scrollbar {
    height: 8px;
}

.table-responsive[b-b3i51o2jo6]::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}

.table-responsive[b-b3i51o2jo6]::-webkit-scrollbar-thumb {
    background: #5b91b8;
    border-radius: 4px;
}

.table-responsive[b-b3i51o2jo6]::-webkit-scrollbar-thumb:hover {
    background: #4a7a9a;
}
/* /Components/Pages/Company/Components/MonthlyTrends.razor.rz.scp.css */
.monthly-trends-section[b-6txl3rkh5n] {
    background-color: #f8fafc;
    border: 1px solid var(--brand-border);
    border-radius: 16px;
    padding: 2rem;
    margin-bottom: 2rem;
}

.section-header[b-6txl3rkh5n] {
    margin-bottom: 1.5rem;
}

.section-title[b-6txl3rkh5n] {
    color: #5b91b8;
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.section-subtitle[b-6txl3rkh5n] {
    color: #64748b;
    font-size: 0.875rem;
    margin-bottom: 0;
}

.loading-container[b-6txl3rkh5n] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 0;
}

.loading-text[b-6txl3rkh5n] {
    margin-top: 1rem;
    color: #64748b;
    font-size: 0.875rem;
}

.chart-container[b-6txl3rkh5n] {
    position: relative;
}

.chart-legend[b-6txl3rkh5n] {
    display: flex;
    justify-content: center;
    gap: 2rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.legend-item[b-6txl3rkh5n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.legend-dot[b-6txl3rkh5n] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
}

.legend-dot.quoted[b-6txl3rkh5n] {
    background-color: var(--brand-primary);
}

.legend-dot.configured[b-6txl3rkh5n] {
    background-color: var(--brand-secondary);
}

.legend-dot.bound[b-6txl3rkh5n] {
    background-color: var(--brand-accent);
}

.legend-dot.declined[b-6txl3rkh5n] {
    background-color: var(--destructive);
}

.legend-label[b-6txl3rkh5n] {
    font-size: 0.875rem;
    font-weight: 500;
    color: #475569;
}

@media (max-width: 768px) {
    .chart-legend[b-6txl3rkh5n] {
        gap: 1rem;
    }
    
    .legend-item[b-6txl3rkh5n] {
        font-size: 0.813rem;
    }
}
/* /Components/Pages/Company/Components/MoveGroupToRootConfirmModal.razor.rz.scp.css */
/* Move to Root confirmation modal — non-destructive structural change.
   Mirrors DeleteGroupConfirmModal shape but uses an info/neutral surface.
   Confirm button deliberately avoids .btn-primary because the global
   theme uppercases + bulks up that class; .move-to-root-confirm is a
   standalone class with the same shape as Bootstrap's .btn-danger. */

.move-to-root-header[b-1p5s2m1vje] {
    padding: 1rem 1.25rem 0.5rem;
    align-items: flex-start;
}

.move-to-root-icon[b-1p5s2m1vje] {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: #eef2ff;
    color: #4338ca;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.move-to-root-content[b-1p5s2m1vje] {
    position: relative;
    border: none;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(15, 23, 42, 0.18);
}

.move-to-root-content[b-1p5s2m1vje]::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 4px;
    background: linear-gradient(
        90deg,
        var(--theme-primary-brand, #2563eb) 0%,
        var(--theme-secondary-brand, #4338ca) 50%,
        var(--theme-tertiary-brand, #06b6d4) 100%
    );
}

.move-to-root-path[b-1p5s2m1vje] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
}

.move-to-root-node[b-1p5s2m1vje] {
    min-width: 0;
}

.move-to-root-arrow[b-1p5s2m1vje] {
    color: #94a3b8;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.move-to-root-contents .badge[b-1p5s2m1vje] {
    font-weight: 500;
    padding: 0.4em 0.6em;
}

/* Confirm button — plain Bootstrap .btn base, blue brand styling here.
   Not using .btn-primary so the global theme's uppercase/bulk rules
   don't apply. */
.move-to-root-confirm[b-1p5s2m1vje] {
    min-width: 140px;
    background-color: #2563eb;
    border: 1px solid #2563eb;
    color: #fff;
    box-shadow: 0 1px 2px rgba(37, 99, 235, 0.25);
}

.move-to-root-confirm:hover:not(:disabled)[b-1p5s2m1vje],
.move-to-root-confirm:focus:not(:disabled)[b-1p5s2m1vje] {
    background-color: #1d4ed8;
    border-color: #1d4ed8;
    color: #fff;
}

.move-to-root-confirm:disabled[b-1p5s2m1vje] {
    opacity: 0.65;
    color: #fff;
}
/* /Components/Pages/Company/Components/PerfCard.razor.rz.scp.css */
/* PerfCard — small metric card used in AgentStatsModal's Performance
   Metrics row. Lives next to the component so scoped CSS actually
   applies (the previous home in AgentStatsModal.razor.css never matched
   because Blazor scoped CSS doesn't reach into child components). */

.perf-card[b-9m8p9497eq] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.85rem;
    padding: 1rem 1.1rem;
    border-radius: 12px;
    background: #fff;
    border: 1px solid #e2e8f0;
    height: 100%;
    overflow: hidden;
    transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.perf-card:hover[b-9m8p9497eq] {
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.06);
    transform: translateY(-1px);
}

/* Variant accent strip along the top edge — gives each metric a visual
   identity without overwhelming the card. */
.perf-card[b-9m8p9497eq]::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
}

.perf-card--primary[b-9m8p9497eq]::before   { background: #3b82f6; }
.perf-card--success[b-9m8p9497eq]::before   { background: #10b981; }
.perf-card--danger[b-9m8p9497eq]::before    { background: #ef4444; }
.perf-card--secondary[b-9m8p9497eq]::before { background: #94a3b8; }

.perf-card-icon[b-9m8p9497eq] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.05rem;
    flex-shrink: 0;
}

.perf-card--primary   .perf-card-icon[b-9m8p9497eq] { background: #dbeafe; color: #1d4ed8; }
.perf-card--success   .perf-card-icon[b-9m8p9497eq] { background: #d1fae5; color: #065f46; }
.perf-card--danger    .perf-card-icon[b-9m8p9497eq] { background: #fee2e2; color: #b91c1c; }
.perf-card--secondary .perf-card-icon[b-9m8p9497eq] { background: #f1f5f9; color: #475569; }

.perf-card-body[b-9m8p9497eq] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.perf-card-value[b-9m8p9497eq] {
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1;
    color: #1e293b;
    letter-spacing: -0.01em;
}

/* When the metric is zero, drop the saturation so the eye is drawn to
   the cards that actually have data. */
.perf-card[data-zero="true"] .perf-card-value[b-9m8p9497eq] {
    color: #94a3b8;
}

.perf-card-label[b-9m8p9497eq] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748b;
    margin-top: 0.3rem;
    font-weight: 600;
}

.perf-card-subtitle[b-9m8p9497eq] {
    font-size: 0.75rem;
    color: #64748b;
    margin-top: 0.2rem;
    font-variant-numeric: tabular-nums;
}

.perf-card-subtitle strong[b-9m8p9497eq] {
    color: #1e293b;
    font-weight: 600;
}
/* /Components/Pages/Company/Dashboard.razor.rz.scp.css */
/* Company Dashboard component styles */

.metrics-title[b-a9toun940x] {
    color: #5b91b8;
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.metrics-subtitle[b-a9toun940x] {
    color: #64748b;
    font-size: 0.875rem;
    margin-bottom: 0;
}
/* /Components/Pages/Company/OrganizationPage.razor.rz.scp.css */
/* Organization page — page-scoped styling (spec §My Organization).
   Shared Management primitives (.cm-btn-*, .cm-metric-grid, .cm-drawer*, ...)
   live in wwwroot/css/management-dashboard.css. Only the bits that must stay
   component-scoped live here: the ::deep audit-log overrides so the log fills
   the slide-out drawer instead of its default 220px footer cap. */

/* Groups 3-pane layout: list panel (left) · members detail (center) · info (right). */
.org-groups[b-z7teudhe45] {
    display: grid;
    grid-template-columns: minmax(220px, 280px) minmax(0, 1fr) minmax(220px, 260px);
    gap: 1.25rem;
    align-items: start;
}

/* ── Shared panel chrome (left list) ───────────────────────────────────────── */
.org-panel[b-z7teudhe45] {
    background: #ffffff;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 12px;
    overflow: hidden;
}

.org-panel__head[b-z7teudhe45] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--color-border, #e5e7eb);
}

.org-panel__title[b-z7teudhe45] {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--color-muted-foreground, #6c757d);
}

.org-panel__count[b-z7teudhe45] {
    background: var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
    color: var(--brand-primary, #1f628d);
    font-size: 0.75rem;
    font-weight: 600;
    border-radius: 999px;
    padding: 0.05rem 0.55rem;
}

.org-panel__search[b-z7teudhe45] {
    position: relative;
    padding: 0.75rem;
    border-bottom: 1px solid var(--color-border, #eef1f4);
}

.org-panel__search .bi-search[b-z7teudhe45] {
    position: absolute;
    left: 1.5rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--color-muted-foreground, #6c757d);
    pointer-events: none;
}

.org-panel__search .form-control[b-z7teudhe45] {
    height: 38px;
    padding-left: 2.25rem;
    border-radius: 8px;
    border: 1px solid var(--color-border, #d3d9e3);
    font-size: 0.875rem;
}

.org-panel__search .form-control:focus[b-z7teudhe45] {
    border-color: var(--brand-primary, #1f628d);
    box-shadow: 0 0 0 0.2rem var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
}

.org-groups__list[b-z7teudhe45] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 0.5rem;
    max-height: 640px;
    overflow-y: auto;
}

.org-group-item[b-z7teudhe45] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    width: 100%;
    text-align: left;
    padding: 0.6rem 0.7rem;
    background: transparent;
    border: none;
    border-left: 3px solid transparent;
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease;
}

.org-group-item:hover[b-z7teudhe45] {
    background: var(--brand-primary-alpha-5, rgba(31, 98, 141, 0.05));
}

.org-group-item.active[b-z7teudhe45] {
    background: var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
    border-left-color: var(--brand-primary, #1f628d);
}

.org-group-item__name[b-z7teudhe45] {
    font-weight: 600;
    color: var(--color-foreground, #1e293b);
}

.org-group-item__meta[b-z7teudhe45] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.75rem;
    color: var(--color-muted-foreground, #6c757d);
}

/* ── Center: members detail panel ──────────────────────────────────────────── */
.org-groups__detail[b-z7teudhe45] {
    min-width: 0;
    background: #ffffff;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 12px;
    padding: 1.25rem 1.5rem;
}

.org-detail__head[b-z7teudhe45] {
    display: flex;
    align-items: baseline;
    gap: 0.75rem;
    padding-bottom: 0.85rem;
    margin-bottom: 0.85rem;
    border-bottom: 1px solid var(--color-border, #eef1f4);
}

.org-detail__title[b-z7teudhe45] {
    margin: 0;
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--color-foreground, #0f172a);
}

.org-detail__subtitle[b-z7teudhe45] {
    font-size: 0.8125rem;
    color: var(--color-muted-foreground, #6c757d);
}

/* ── Right: group info panel ───────────────────────────────────────────────── */
.org-info[b-z7teudhe45] {
    background: #ffffff;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 12px;
    padding: 1.1rem 1.15rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.org-info__head[b-z7teudhe45] {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--color-muted-foreground, #6c757d);
}

.org-info__badges[b-z7teudhe45] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.org-info__status[b-z7teudhe45] {
    background: var(--tier-c-success-bg, #d1fae5);
    color: var(--tier-c-success, #065f46);
    font-weight: 600;
    border-radius: 999px;
    padding: 0.3rem 0.6rem;
}

.org-info__list[b-z7teudhe45] {
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.org-info__row[b-z7teudhe45] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

.org-info__row dt[b-z7teudhe45] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--color-muted-foreground, #6c757d);
}

.org-info__row dd[b-z7teudhe45] {
    margin: 0;
    font-weight: 700;
    color: var(--color-foreground, #0f172a);
}

.org-info__actions[b-z7teudhe45] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding-top: 0.75rem;
    border-top: 1px solid var(--color-border, #eef1f4);
}

@media (max-width: 1100px) {
    .org-groups[b-z7teudhe45] {
        grid-template-columns: 1fr;
    }
}

/* View-mode segmented control — a single connected track with two segments so
   it reads as a tab control, not two loose buttons. Active segment is a filled
   brand pill on the muted track. */
.org-segmented[b-z7teudhe45] {
    display: inline-flex;
    gap: 2px;
    padding: 3px;
    background: var(--color-muted, #f1f5f9);
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 10px;
}

.org-segmented__btn[b-z7teudhe45] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    border: none;
    background: transparent;
    color: var(--color-muted-foreground, #6c757d);
    font-size: 0.85rem;
    font-weight: 600;
    padding: 0.4rem 0.95rem;
    border-radius: 7px;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.org-segmented__btn:hover:not(.active)[b-z7teudhe45] {
    color: var(--brand-primary, #1f628d);
}

.org-segmented__btn.active[b-z7teudhe45] {
    background: var(--brand-primary, #1f628d);
    color: #ffffff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
}

/* Organization performance — unwrapped (no card chrome). A modest org-name
   heading sits above a flat 3-stat row. */
.org-performance__head[b-z7teudhe45] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.85rem;
}

.org-performance__title[b-z7teudhe45] {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--color-foreground, #0f172a);
}

.org-performance__subtitle[b-z7teudhe45] {
    margin: 0.15rem 0 0;
    font-size: 0.875rem;
    color: var(--color-muted-foreground, #6c757d);
}

/* 3 mini stat-cards: gradient icon tile + large value + label on a soft surface,
   with a subtle hover lift and a left accent bar tinted per metric. */
.org-stat-row[b-z7teudhe45] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.org-stat[b-z7teudhe45] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 1rem;
    flex: 1 1 200px;
    max-width: 340px;
    min-width: 0;
    padding: 1rem 1.25rem;
    background: #ffffff;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 12px;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
    overflow: hidden;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

/* Tinted left accent rail per metric. */
.org-stat[b-z7teudhe45]::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
}

.org-stat:hover[b-z7teudhe45] {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);
}

.org-stat__icon[b-z7teudhe45] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    flex-shrink: 0;
}

.org-stat__icon--primary[b-z7teudhe45] {
    background: linear-gradient(135deg, var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10)), var(--brand-primary-alpha-5, rgba(31, 98, 141, 0.05)));
    color: var(--brand-primary, #1f628d);
}

.org-stat__icon--secondary[b-z7teudhe45] {
    background: linear-gradient(135deg, var(--brand-secondary-alpha-10, rgba(1, 148, 159, 0.10)), var(--brand-secondary-alpha-5, rgba(1, 148, 159, 0.05)));
    color: var(--brand-secondary, #01949f);
}

.org-stat__icon--accent[b-z7teudhe45] {
    background: linear-gradient(135deg, var(--brand-accent-alpha-10, rgba(118, 178, 67, 0.10)), var(--brand-accent-alpha-5, rgba(118, 178, 67, 0.05)));
    color: var(--brand-accent, #76b243);
}

/* Match the left accent rail to each metric's color. */
.org-stat--primary[b-z7teudhe45]::before { background: var(--brand-primary, #1f628d); }
.org-stat--secondary[b-z7teudhe45]::before { background: var(--brand-secondary, #01949f); }
.org-stat--accent[b-z7teudhe45]::before { background: var(--brand-accent, #76b243); }

.org-stat__text[b-z7teudhe45] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    line-height: 1.1;
    min-width: 0;
}

.org-stat__value[b-z7teudhe45] {
    font-size: 2rem;
    font-weight: 700;
    color: var(--color-foreground, #0f172a);
}

.org-stat__label[b-z7teudhe45] {
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--color-muted-foreground, #6c757d);
}

@media (max-width: 640px) {
    .org-stat[b-z7teudhe45] {
        max-width: none;
    }
}

/* The audit log renders inside the Activity drawer — drop its footer framing
   and let it fill the full drawer height (its default 220px body cap is meant
   for the legacy page-bottom footer, not this tall drawer). */
.cm-drawer__body[b-z7teudhe45] {
    padding: 0;
    display: flex;
    flex-direction: column;
}

.cm-drawer__body[b-z7teudhe45]  .audit-log-footer {
    border-top: none;
    background: transparent;
    border-radius: 0;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}

.cm-drawer__body[b-z7teudhe45]  .audit-log-body {
    max-height: none;
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
}
/* /Components/Pages/Dashboard/Management/Clients.razor.rz.scp.css */
/* =============================================================================
   Client Management — page-scoped styling
   -----------------------------------------------------------------------------
   Tenant-themed presentation for /dashboard/management/clients. All colors flow
   through BrandingService CSS variables (--brand-* / --tier-c-*) with a neutral
   hex fallback; non-brand neutrals (#e5e7eb, #6b7280, ...) may appear literal.

   The reusable Management primitives this page used to define here — buttons
   (.cm-btn-*), metric grid (.cm-metric-grid), search (.cm-search*), chips
   (.cm-chip), table (.cm-table*), skeleton rows (.cm-skeleton-row/.cm-skel-*),
   pager (.cm-pager-info) and the drawer shell (.cm-drawer*) — now live in the
   shared, global wwwroot/css/management-dashboard.css so the Organization page
   shares one source of truth. Class names are unchanged; only their home moved.

   What stays here is Clients-only: the assignment panel (.cm-assign-*) and the
   ::deep audit-log overrides (::deep must remain component-scoped).
   Other shared primitives (.fig-filter-control, .fig-check, .fig-switch) live in
   figma-design-system.css so child components (DateRangePicker) share them.
   ========================================================================== */

/* ── Assignment drawer (reuses .cm-drawer shell) ───────────────────────────── */
.cm-assign-body[b-3yt9s4ocba] {
    flex: 1 1 auto;
    overflow-y: auto;
    min-height: 0;
    padding: 1rem 1.25rem;
}

.cm-assign-body--busy[b-3yt9s4ocba] {
    opacity: 0.6;
    pointer-events: none;
}

.cm-assign-footer[b-3yt9s4ocba] {
    border-top: 1px solid var(--color-border, #e5e7eb);
    padding: 0.85rem 1.25rem;
    display: flex;
    gap: 0.5rem;
}

.cm-assign-card[b-3yt9s4ocba] {
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: var(--radius-card, 10px);
    background: #fff;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
    padding: 0.75rem 1rem 0.9rem;
    margin-bottom: 0.85rem;
}

.cm-assign-card--muted[b-3yt9s4ocba] { opacity: 0.55; }

.cm-assign-card__title[b-3yt9s4ocba] {
    display: flex;
    align-items: center;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--brand-primary, #1f628d);
    padding-bottom: 0.5rem;
    margin-bottom: 0.6rem;
    border-bottom: 1px solid var(--color-border, #eef1f4);
}

.cm-assign-count[b-3yt9s4ocba] {
    margin-left: auto;
    background: var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
    color: var(--brand-primary, #1f628d);
    border-radius: 999px;
    padding: 0.05rem 0.5rem;
    font-size: 0.7rem;
    font-weight: 600;
}

.cm-assign-clients[b-3yt9s4ocba] {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 0.875rem;
}
.cm-assign-clients li[b-3yt9s4ocba] { padding: 0.25rem 0; }

.cm-assign-hint[b-3yt9s4ocba] {
    display: flex;
    align-items: center;
    font-size: 0.8rem;
    color: var(--color-muted-foreground, #6b7280);
    margin-top: 0.25rem;
}

/* The audit log renders inside the drawer body — drop its footer framing and
   let it fill the full drawer height (its default 220px body cap is meant for
   the OrganizationPage footer, not this tall drawer). */
.cm-drawer__body[b-3yt9s4ocba] {
    padding: 0;
    display: flex;
    flex-direction: column;
}

.cm-drawer__body[b-3yt9s4ocba]  .audit-log-footer {
    border-top: none;
    background: transparent;
    border-radius: 0;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}

.cm-drawer__body[b-3yt9s4ocba]  .audit-log-body {
    max-height: none;
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
}
/* /Components/Pages/Dashboard/Management/Components/AuditLogFooter.razor.rz.scp.css */
/* ========== Audit Log Footer Panel ========== */
.audit-log-footer[b-zv162m4fy3] {
    border-top: 1px solid #dee2e6;
    background: #fafafa;
    border-radius: 0 0 8px 8px;
}

.audit-log-header[b-zv162m4fy3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.6rem 1rem;
    border-bottom: 1px solid #eee;
}

.audit-log-title[b-zv162m4fy3] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #495057;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.audit-entry-count[b-zv162m4fy3] {
    font-size: 0.72rem;
    color: #6c757d;
}

/* ========== Body ========== */
.audit-log-body[b-zv162m4fy3] {
    max-height: 220px;
    overflow-y: auto;
}

.audit-log-loading[b-zv162m4fy3],
.audit-log-empty[b-zv162m4fy3] {
    display: flex;
    align-items: center;
    padding: 1rem;
}

/* ========== Entry list (responsive, no horizontal scroll) ========== */
.audit-list[b-zv162m4fy3] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.audit-entry[b-zv162m4fy3] {
    padding: 0.6rem 1rem;
    border-bottom: 1px solid #f0f0f0;
    transition: background-color 0.1s ease;
}

.audit-entry:last-child[b-zv162m4fy3] {
    border-bottom: none;
}

.audit-entry:hover[b-zv162m4fy3] {
    background-color: #f8f9fa;
}

.audit-entry__head[b-zv162m4fy3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 0.2rem;
}

.audit-entry__time[b-zv162m4fy3] {
    font-size: 0.72rem;
    color: #6c757d;
    white-space: nowrap;
    flex-shrink: 0;
}

.audit-entry__user[b-zv162m4fy3] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #374151;
}

/* Compact details: clamp to 2 lines, break long tokens (GUIDs) so nothing
   forces a horizontal scrollbar. Full text available via the title tooltip. */
.audit-entry__details[b-zv162m4fy3] {
    font-size: 0.75rem;
    color: #6c757d;
    margin-top: 0.1rem;
    overflow-wrap: anywhere;
    word-break: break-word;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* ========== Action badge ========== */
.audit-action-badge[b-zv162m4fy3] {
    display: inline-block;
    padding: 0.15rem 0.45rem;
    border-radius: 4px;
    font-size: 0.68rem;
    font-weight: 600;
    text-transform: capitalize;
}

.badge-action-success[b-zv162m4fy3]   { background: var(--tier-c-success-bg, #d1e7dd); color: var(--tier-c-success, #0a5c36); }
.badge-action-danger[b-zv162m4fy3]    { background: var(--tier-c-destructive-bg, #f8d7da); color: var(--tier-c-destructive, #842029); }
.badge-action-info[b-zv162m4fy3]      { background: var(--tier-c-info-bg, #cff4fc); color: var(--tier-c-info, #055160); }
.badge-action-secondary[b-zv162m4fy3] { background: var(--tier-c-neutral-bg, #e2e3e5); color: var(--tier-c-neutral, #41464b); }
/* /Components/Pages/Dashboard/Management/Components/FilterDropdown.razor.rz.scp.css */
/* FilterDropdown — themed searchable single-select. Colors via brand tokens. */
.filter-dd[b-bb9j2j8y2j] {
    position: relative;
    width: 100%;
}

/* The toggle styling itself comes from the global .fig-filter-control. Just
   make room for the caret and align the label. */
.filter-dd .fig-filter-control[b-bb9j2j8y2j] {
    justify-content: space-between;
}

.filter-dd__text[b-bb9j2j8y2j] {
    display: block;
    max-width: 100%;
}

.filter-dd__backdrop[b-bb9j2j8y2j] {
    position: fixed;
    inset: 0;
    z-index: 1049;
}

.filter-dd__menu[b-bb9j2j8y2j] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    z-index: 1050;
    background: #ffffff;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: var(--radius-menu, 8px);
    box-shadow: var(--shadow-dropdown, 0 4px 16px rgba(0, 0, 0, 0.12));
    padding: 0.35rem;
    min-width: 100%;
    width: max-content;
    max-width: 320px;
}

.filter-dd__search[b-bb9j2j8y2j] {
    position: relative;
    margin-bottom: 0.35rem;
}

.filter-dd__search .bi-search[b-bb9j2j8y2j] {
    position: absolute;
    left: 0.6rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--color-muted-foreground, #6c757d);
    font-size: 0.85rem;
    pointer-events: none;
}

.filter-dd__search .form-control[b-bb9j2j8y2j] {
    padding-left: 1.9rem;
    border-radius: 6px;
    border: 1px solid var(--color-border, #e5e7eb);
}

.filter-dd__search .form-control:focus[b-bb9j2j8y2j] {
    border-color: var(--brand-primary, #1f628d);
    box-shadow: 0 0 0 0.15rem var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
}

.filter-dd__list[b-bb9j2j8y2j] {
    max-height: 280px;
    overflow-y: auto;
}

.filter-dd__item[b-bb9j2j8y2j] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    width: 100%;
    border: none;
    background: transparent;
    text-align: left;
    border-radius: 6px;
    padding: 0.5rem 0.65rem;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: var(--color-foreground, #1f2933);
    cursor: pointer;
}

.filter-dd__item:hover[b-bb9j2j8y2j],
.filter-dd__item:focus-visible[b-bb9j2j8y2j] {
    background-color: var(--brand-primary-alpha-5, rgba(31, 98, 141, 0.05));
    outline: none;
}

.filter-dd__item.is-active[b-bb9j2j8y2j] {
    background-color: var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
    color: var(--brand-primary, #1f628d);
}

.filter-dd__item .bi-check-lg[b-bb9j2j8y2j] {
    color: var(--brand-primary, #1f628d);
    flex-shrink: 0;
}

.filter-dd__empty[b-bb9j2j8y2j] {
    padding: 0.75rem 0.65rem;
    font-size: 0.8125rem;
    color: var(--color-muted-foreground, #6c757d);
    text-align: center;
}
/* /Components/Pages/Dashboard/Reporting/Components/DrillDownControls.razor.rz.scp.css */
.drilldown-section[b-85w8gv42ji] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
    background-color: #ffffff;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 12px;
    padding: 0.875rem 1.5rem;
    margin-bottom: 1.5rem;
    /* Keep the scope controls in view while scrolling the long report. */
    position: sticky;
    top: 0;
    z-index: 20;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
}

.drilldown-label[b-85w8gv42ji] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.813rem;
    font-weight: 600;
    color: #5b91b8;
    white-space: nowrap;
    flex-shrink: 0;
}

.drilldown-label i[b-85w8gv42ji] {
    font-size: 0.875rem;
}

.drilldown-filters[b-85w8gv42ji] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    align-items: flex-end;
    flex: 1;
}

.filter-group[b-85w8gv42ji] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 150px;
}

.filter-label[b-85w8gv42ji] {
    font-size: 0.688rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #94a3b8;
    margin: 0;
}

.clear-btn[b-85w8gv42ji] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.875rem;
    border: 1px solid #fca5a5;
    border-radius: 8px;
    background: #fff1f2;
    color: #b91c1c;
    font-size: 0.813rem;
    font-weight: 500;
    cursor: pointer;
    align-self: flex-end;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.clear-btn:hover[b-85w8gv42ji] {
    background: #fee2e2;
    border-color: #f87171;
}

/* ── Active-filter chips ──────────────────────────────────────────────── */

.active-chips[b-85w8gv42ji] {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.chip[b-85w8gv42ji] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.5rem 0.25rem 0.625rem;
    background: #eef3f9;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 500;
    color: #475569;
    white-space: nowrap;
}

.chip button[b-85w8gv42ji] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #cbd5e1;
    color: #1e293b;
    font-size: 0.75rem;
    line-height: 1;
    cursor: pointer;
    transition: background-color 0.12s ease;
}

.chip button:hover[b-85w8gv42ji] {
    background: #94a3b8;
    color: #ffffff;
}

@media (max-width: 768px) {
    .drilldown-section[b-85w8gv42ji] {
        flex-direction: column;
        align-items: flex-start;
    }

    .filter-group[b-85w8gv42ji] {
        width: 100%;
    }
}
/* /Components/Pages/Dashboard/Reporting/Components/ReportingConversionRatios.razor.rz.scp.css */
.reporting-ratios-section[b-ybgvplouqw] {
    background-color: #f8fafc;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 16px;
    padding: 1.25rem 1.5rem;
    margin-bottom: 1.5rem;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
}

.section-header[b-ybgvplouqw] {
    margin-bottom: 1.5rem;
}

.section-title[b-ybgvplouqw] {
    color: #5b91b8;
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.section-subtitle[b-ybgvplouqw] {
    color: #64748b;
    font-size: 0.875rem;
    margin-bottom: 0;
}

.loading-container[b-ybgvplouqw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 0;
}

.loading-text[b-ybgvplouqw] {
    margin-top: 1rem;
    color: #6b7280;
    font-size: 0.875rem;
}

.ratios-grid[b-ybgvplouqw] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}

@media (max-width: 900px) {
    .ratios-grid[b-ybgvplouqw] {
        grid-template-columns: 1fr;
    }
}

.ratio-card[b-ybgvplouqw] {
    background-color: #ffffff;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 12px;
    padding: 1rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
    transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.ratio-card:hover[b-ybgvplouqw] {
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.10);
    transform: translateY(-1px);
}

.ratio-header[b-ybgvplouqw] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.ratio-label[b-ybgvplouqw] {
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    color: #475569;
    margin: 0;
}

.ratio-formula[b-ybgvplouqw] {
    font-size: 0.75rem;
    color: #94a3b8;
    font-style: italic;
    white-space: nowrap;
}

.ratio-gauge[b-ybgvplouqw] {
    align-self: center;
    width: 120px;
    height: 120px;
}

.ratio-trend[b-ybgvplouqw] {
    height: 24px;
    margin-top: 0.125rem;
}

.ratio-description[b-ybgvplouqw] {
    font-size: 0.813rem;
    color: #64748b;
    margin: 0;
    line-height: 1.4;
}

@media (max-width: 768px) {
    .reporting-ratios-section[b-ybgvplouqw] {
        padding: 1rem;
    }
}
/* /Components/Pages/Dashboard/Reporting/Components/ReportingDateControls.razor.rz.scp.css */
.date-controls-section[b-osj8s6zmid] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem;
    background-color: #ffffff;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 12px;
    padding: 1rem 1.5rem;
    margin-bottom: 1.5rem;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
}

.quick-selects[b-osj8s6zmid] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.quick-btn[b-osj8s6zmid] {
    padding: 0.375rem 0.875rem;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 9999px;
    background: #ffffff;
    color: #475569;
    font-size: 0.813rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.quick-btn:hover[b-osj8s6zmid] {
    border-color: var(--brand-primary);
    color: var(--brand-primary);
}

.quick-btn.active[b-osj8s6zmid] {
    background-color: var(--brand-primary);
    border-color: var(--brand-primary);
    color: #ffffff;
    font-weight: 600;
}

.custom-range[b-osj8s6zmid] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.custom-range-label[b-osj8s6zmid] {
    font-size: 0.813rem;
    font-weight: 500;
    color: #64748b;
    white-space: nowrap;
}

.date-input[b-osj8s6zmid] {
    padding: 0.375rem 0.625rem;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 8px;
    font-size: 0.813rem;
    color: #1e293b;
    background: #ffffff;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.date-input:focus[b-osj8s6zmid] {
    border-color: var(--brand-primary);
}

.date-separator[b-osj8s6zmid] {
    color: #94a3b8;
    font-size: 0.875rem;
}

.date-display[b-osj8s6zmid] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.813rem;
    color: #64748b;
    margin-left: auto;
}

.date-display i[b-osj8s6zmid] {
    font-size: 0.875rem;
    color: #5b91b8;
}

@media (max-width: 768px) {
    .date-controls-section[b-osj8s6zmid] {
        flex-direction: column;
        align-items: flex-start;
    }

    .date-display[b-osj8s6zmid] {
        margin-left: 0;
    }
}
/* /Components/Pages/Dashboard/Reporting/Components/ReportingKpiStrip.razor.rz.scp.css */
.kpi-strip[b-27m8sdpt2b] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.kpi-tile[b-27m8sdpt2b] {
    background-color: #ffffff;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 12px;
    padding: 1rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
    transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.kpi-tile:hover[b-27m8sdpt2b] {
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.10);
    transform: translateY(-1px);
}

.kpi-label[b-27m8sdpt2b] {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #94a3b8;
}

.kpi-value[b-27m8sdpt2b] {
    font-size: 2rem;
    font-weight: 700;
    color: #1e293b;
    line-height: 1;
}

.kpi-value.decline[b-27m8sdpt2b] {
    color: #b91c1c;
}

@media (max-width: 900px) {
    .kpi-strip[b-27m8sdpt2b] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .kpi-value[b-27m8sdpt2b] {
        font-size: 1.5rem;
    }
}
/* /Components/Pages/Dashboard/Reporting/Components/ReportingMonthlyBreakdown.razor.rz.scp.css */
.reporting-breakdown-section[b-tlui7o6sck] {
    background-color: #f8fafc;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 16px;
    padding: 2rem;
    margin-bottom: 1.5rem;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
}

.section-header[b-tlui7o6sck] {
    margin-bottom: 1.5rem;
}

.section-title[b-tlui7o6sck] {
    color: #5b91b8;
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.section-subtitle[b-tlui7o6sck] {
    color: #64748b;
    font-size: 0.875rem;
    margin-bottom: 0;
}

.loading-container[b-tlui7o6sck] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 0;
}

.loading-text[b-tlui7o6sck] {
    margin-top: 1rem;
    color: #64748b;
    font-size: 0.875rem;
}

/* ── Chart ──────────────────────────────────────────────────────────── */

.chart-wrapper[b-tlui7o6sck] {
    position: relative;
}

/* ── View switcher ─────────────────────────────────────────────────────── */

.chart-toolbar[b-tlui7o6sck] {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 0.75rem;
}

.chart-view-switch[b-tlui7o6sck] {
    display: inline-flex;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 8px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
}

.view-btn[b-tlui7o6sck] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border: 0;
    border-left: 1px solid var(--color-border, #e5e7eb);
    background: transparent;
    color: #475569;
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.12s ease, color 0.12s ease;
}

.view-btn:first-child[b-tlui7o6sck] {
    border-left: 0;
}

.view-btn:hover[b-tlui7o6sck] {
    background: #f0f5fb;
}

.view-btn.is-active[b-tlui7o6sck] {
    background: var(--brand-primary, #1f628d);
    color: #ffffff;
}

.chart-legend[b-tlui7o6sck] {
    display: flex;
    justify-content: center;
    gap: 1.25rem;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

/* Legend items double as series show/hide toggles for the axis views. */
.legend-item[b-tlui7o6sck] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.125rem 0.25rem;
    border: 0;
    background: transparent;
    border-radius: 6px;
    cursor: pointer;
    transition: opacity 0.12s ease, background-color 0.12s ease;
}

.legend-item:hover:not(:disabled)[b-tlui7o6sck] {
    background: #eef3f9;
}

.legend-item:disabled[b-tlui7o6sck] {
    cursor: default;
}

.legend-item--off[b-tlui7o6sck] {
    opacity: 0.4;
}

.legend-item--off .legend-label[b-tlui7o6sck] {
    text-decoration: line-through;
}

.legend-dot[b-tlui7o6sck] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
}

.legend-dot.uploaded[b-tlui7o6sck]          { background-color: #94a3b8; }
.legend-dot.started[b-tlui7o6sck]           { background-color: #67e8f9; }
.legend-dot.quoted[b-tlui7o6sck]            { background-color: #1f628d; }
.legend-dot.ordered[b-tlui7o6sck]           { background-color: #01949f; }
.legend-dot.issued-pending[b-tlui7o6sck]    { background-color: #8b5cf6; }
.legend-dot.issued-received[b-tlui7o6sck]   { background-color: #76b243; }
.legend-dot.rejected[b-tlui7o6sck]          { background-color: #f97316; }
.legend-dot.closed-status[b-tlui7o6sck]     { background-color: #991b1b; }
.legend-dot.declined[b-tlui7o6sck]          { background-color: #dc2626; }

.legend-label[b-tlui7o6sck] {
    font-size: 0.75rem;
    font-weight: 500;
    color: #475569;
    white-space: nowrap;
}

/* ── Table ──────────────────────────────────────────────────────────── */

.table-responsive[b-tlui7o6sck] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.breakdown-table[b-tlui7o6sck] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.813rem;
    min-width: 1000px;
}

.breakdown-table thead[b-tlui7o6sck] {
    background-color: var(--brand-muted, #f1f5f9);
    color: #475569;
}

.breakdown-table th[b-tlui7o6sck] {
    padding: 0.75rem 0.625rem;
    font-weight: 600;
    text-align: left;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.breakdown-table th.text-center[b-tlui7o6sck] {
    text-align: center;
}

/* Column group header highlighting */
.group-dormant[b-tlui7o6sck]  { color: #475569; border-bottom: 2px solid #94a3b8; }
.group-active[b-tlui7o6sck]   { color: #1d4ed8; border-bottom: 2px solid #93c5fd; }
.group-bound[b-tlui7o6sck]    { color: #15803d; border-bottom: 2px solid #86efac; }
.group-closed[b-tlui7o6sck]   { color: #b91c1c; border-bottom: 2px solid #fca5a5; }
.group-ratio[b-tlui7o6sck]    { color: #7c3aed; border-bottom: 2px solid #c4b5fd; font-style: italic; }

.breakdown-table tbody tr[b-tlui7o6sck] {
    border-bottom: 1px solid #e5e7eb;
    transition: background-color 0.1s ease;
}

.breakdown-table tbody tr:nth-child(even)[b-tlui7o6sck] {
    background-color: #fbfcfe;
}

.breakdown-table tbody tr:hover[b-tlui7o6sck] {
    background-color: #f0f5fb;
}

.breakdown-table td[b-tlui7o6sck] {
    padding: 0.75rem 0.625rem;
    color: #1e293b;
}

.breakdown-table td.text-center[b-tlui7o6sck] {
    text-align: center;
}

.month-cell[b-tlui7o6sck] {
    font-weight: 600;
    color: #5b91b8;
    white-space: nowrap;
}

.ratio-cell[b-tlui7o6sck] {
    color: #7c3aed;
    font-style: italic;
}

.decline-cell[b-tlui7o6sck] {
    color: #b91c1c !important;
}

.breakdown-table tfoot[b-tlui7o6sck] {
    background-color: #f3f6fa;
    border-top: 2px solid #5b91b8;
}

.breakdown-table tfoot .total-row td[b-tlui7o6sck] {
    padding: 0.875rem 0.625rem;
    color: #5b91b8;
    font-size: 0.875rem;
}

/* Scrollbar */
.table-responsive[b-tlui7o6sck]::-webkit-scrollbar { height: 6px; }
.table-responsive[b-tlui7o6sck]::-webkit-scrollbar-track { background: #f1f1f1; border-radius: 3px; }
.table-responsive[b-tlui7o6sck]::-webkit-scrollbar-thumb { background: #5b91b8; border-radius: 3px; }
.table-responsive[b-tlui7o6sck]::-webkit-scrollbar-thumb:hover { background: #4a7a9a; }

@media (max-width: 768px) {
    .reporting-breakdown-section[b-tlui7o6sck] { padding: 1rem; }
    .chart-legend[b-tlui7o6sck] { gap: 0.75rem; }
}
/* /Components/Pages/Dashboard/Reporting/Components/ReportingSummaryMetrics.razor.rz.scp.css */
.summary-metrics-section[b-tgbxov9rrn] {
    background-color: #f8fafc;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 16px;
    padding: 2rem;
    margin-bottom: 1.5rem;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
}

.section-header[b-tgbxov9rrn] {
    margin-bottom: 1.5rem;
}

.section-title[b-tgbxov9rrn] {
    color: #5b91b8;
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.section-subtitle[b-tgbxov9rrn] {
    color: #64748b;
    font-size: 0.875rem;
    margin-bottom: 0;
}

.loading-container[b-tgbxov9rrn] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 0;
}

.loading-text[b-tgbxov9rrn] {
    margin-top: 1rem;
    color: #6b7280;
    font-size: 0.875rem;
}

/* ── Pipeline funnel ───────────────────────────────────────────────── */

.summary-funnel[b-tgbxov9rrn] {
    background-color: #ffffff;
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: 12px;
    padding: 1rem 1.25rem;
    margin-bottom: 1.5rem;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
}

.funnel-title[b-tgbxov9rrn] {
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    color: #475569;
    margin: 0 0 0.5rem;
}

/* ── Group layout ──────────────────────────────────────────────────── */

.status-groups[b-tgbxov9rrn] {
    display: flex;
    gap: 1rem;
    align-items: stretch;
    flex-wrap: nowrap;
    overflow-x: auto;
}

.status-group[b-tgbxov9rrn] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.group-label[b-tgbxov9rrn] {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 0.25rem 0.75rem;
    border-radius: 9999px;
    display: inline-block;
    white-space: nowrap;
}

.status-group.dormant .group-label[b-tgbxov9rrn] {
    background-color: #e2e8f0;
    color: #475569;
}

.status-group.active .group-label[b-tgbxov9rrn] {
    background-color: #dbeafe;
    color: #1d4ed8;
}

.status-group.bound .group-label[b-tgbxov9rrn] {
    background-color: #dcfce7;
    color: #15803d;
}

.status-group.closed .group-label[b-tgbxov9rrn] {
    background-color: #fee2e2;
    color: #b91c1c;
}

.status-cards-row[b-tgbxov9rrn] {
    display: flex;
    gap: 0.75rem;
    flex: 1;
}

/* ── Individual status card ────────────────────────────────────────── */

.status-card[b-tgbxov9rrn] {
    background-color: #ffffff;
    border: 1px solid var(--color-border, #e5e7eb);
    border-top: 3px solid #cbd5e1;
    border-radius: 12px;
    padding: 1rem 1.25rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    min-width: 100px;
    min-height: 88px;
    flex: 1;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
    transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.status-card:hover[b-tgbxov9rrn] {
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.10);
    transform: translateY(-1px);
}

/* Group identity is carried by a colour accent on the top edge rather than a
   heavy all-round border. */
.status-group.dormant .status-card[b-tgbxov9rrn] {
    border-top-color: #94a3b8;
}

.status-group.active .status-card[b-tgbxov9rrn] {
    border-top-color: #3b82f6;
}

.status-group.bound .status-card[b-tgbxov9rrn] {
    border-top-color: #22c55e;
}

.status-group.closed .status-card[b-tgbxov9rrn] {
    border-top-color: #ef4444;
}

.status-name[b-tgbxov9rrn] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #64748b;
    text-align: center;
    line-height: 1.15;
}

.status-count[b-tgbxov9rrn] {
    font-size: 1.75rem;
    font-weight: 700;
    color: #1e293b;
    line-height: 1;
}

/* Share-of-total bar under the count. */
.share-bar[b-tgbxov9rrn] {
    width: 100%;
    height: 4px;
    background-color: #eef2f7;
    border-radius: 9999px;
    overflow: hidden;
}

.share-bar > span[b-tgbxov9rrn] {
    display: block;
    height: 100%;
    border-radius: 9999px;
    transition: width 0.2s ease;
}

/* In-card trend sparkline. */
.status-spark[b-tgbxov9rrn] {
    width: 100%;
    height: 22px;
}

@media (max-width: 1200px) {
    .status-groups[b-tgbxov9rrn] {
        flex-wrap: wrap;
    }
}

@media (max-width: 768px) {
    .summary-metrics-section[b-tgbxov9rrn] {
        padding: 1rem;
    }

    .status-count[b-tgbxov9rrn] {
        font-size: 1.375rem;
    }

    .status-card[b-tgbxov9rrn] {
        min-width: 80px;
        padding: 0.75rem;
    }
}
/* /Components/Pages/Dashboard/Reporting/Reporting.razor.rz.scp.css */
.page-header[b-n7k4cenhkm] {
    border-bottom: 1px solid var(--color-border, #e5e7eb);
    padding-bottom: 1rem;
}

.page-title[b-n7k4cenhkm] {
    color: #1e293b;
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.page-subtitle[b-n7k4cenhkm] {
    color: #64748b;
    font-size: 0.875rem;
    margin: 0;
}

/* Print styles for the PDF export path. G-20 is open on formal visual
   design; this keeps the browser-printed report usable by hiding
   navigation chrome, action buttons, and interactive controls that do
   not belong on a saved report. */
@media print {
    [b-n7k4cenhkm] .btn,
    [b-n7k4cenhkm] .dashboard-navigation,
    [b-n7k4cenhkm] .navbar,
    [b-n7k4cenhkm] .dashboard-header {
        display: none !important;
    }

    [b-n7k4cenhkm] .page-header {
        break-inside: avoid;
    }

    [b-n7k4cenhkm] .card,
    [b-n7k4cenhkm] .table {
        break-inside: avoid;
    }

    [b-n7k4cenhkm] body,
    [b-n7k4cenhkm] .container-fluid {
        background: white !important;
    }
}

/* /Components/Pages/Home.razor.rz.scp.css */
/* Landing Page Styles - Plain & Subtle */

.landing-container[b-5nxviey9a8] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f8f9fa;
    padding: 2rem 1rem;
}

.landing-content[b-5nxviey9a8] {
    width: 100%;
    max-width: 1000px;
    text-align: center;
}

/* Hero Section */
.hero-section[b-5nxviey9a8] {
    padding: 3rem 1rem;
    margin-bottom: 3rem;
}

.hero-logo[b-5nxviey9a8] {
    max-width: 180px;
    height: auto;
    margin-bottom: 2rem;
}

.hero-title[b-5nxviey9a8] {
    font-size: 2.5rem;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 1rem;
    line-height: 1.2;
}

.hero-subtitle[b-5nxviey9a8] {
    font-size: 1.125rem;
    color: #6c757d;
    margin-bottom: 2rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.hero-actions[b-5nxviey9a8] {
    margin-top: 2rem;
}

.btn[b-5nxviey9a8] {
    display: inline-block;
    padding: 0.875rem 2.5rem;
    font-size: 1rem;
    font-weight: 500;
    text-decoration: none;
    border-radius: 6px;
    transition: all 0.2s ease-in-out;
    border: none;
    cursor: pointer;
}

.btn-primary-action[b-5nxviey9a8] {
    background-color: var(--bs-success, #A9CF38);
    color: white;
}

.btn-primary-action:hover[b-5nxviey9a8] {
    background-color: #8fb62d;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(169, 207, 56, 0.3);
}

/* Features Section */
.features-section[b-5nxviey9a8] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 2rem;
    padding: 2rem 1rem;
    margin-bottom: 3rem;
}

.feature-card[b-5nxviey9a8] {
    background: white;
    border-radius: 12px;
    padding: 2rem 1.5rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.feature-card:hover[b-5nxviey9a8] {
    transform: translateY(-4px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.feature-icon[b-5nxviey9a8] {
    width: 64px;
    height: 64px;
    margin: 0 auto 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--bs-primary, #4A6478) 0%, var(--bs-secondary, #013E46) 100%);
    border-radius: 50%;
    color: white;
    font-size: 1.75rem;
}

.feature-title[b-5nxviey9a8] {
    font-size: 1.25rem;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 0.75rem;
}

.feature-description[b-5nxviey9a8] {
    font-size: 0.9375rem;
    color: #6c757d;
    line-height: 1.6;
    margin-bottom: 0;
}

/* Footer */
.landing-footer[b-5nxviey9a8] {
    padding: 2rem 1rem;
    color: #868e96;
    font-size: 0.875rem;
    border-top: 1px solid #e9ecef;
}

.landing-footer p[b-5nxviey9a8] {
    margin: 0;
}

/* Responsive */
@media (max-width: 768px) {
    .hero-title[b-5nxviey9a8] {
        font-size: 2rem;
    }

    .hero-subtitle[b-5nxviey9a8] {
        font-size: 1rem;
    }

    .features-section[b-5nxviey9a8] {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .feature-card[b-5nxviey9a8] {
        padding: 1.5rem 1rem;
    }
}

@media (max-width: 480px) {
    .landing-container[b-5nxviey9a8] {
        padding: 1rem;
    }

    .hero-section[b-5nxviey9a8] {
        padding: 2rem 0.5rem;
    }

    .hero-title[b-5nxviey9a8] {
        font-size: 1.75rem;
    }

    .btn[b-5nxviey9a8] {
        padding: 0.75rem 2rem;
        font-size: 0.9375rem;
    }
}

/* /Components/Pages/Insured/CoverageSection.razor.rz.scp.css */
.coverage-section[b-ys6vjze9sy] {
    margin-bottom: 0;
}

.coverage-list[b-ys6vjze9sy] {
    padding: 15px 20px;
}
/* /Components/Pages/Insured/InsuredHeader.razor.rz.scp.css */
.dashboard-header[b-nsfszgwu2b] {
    /* Background is set via inline style in component */
    color: white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    margin-bottom: 0;
    min-height: 100px;
    position: relative;
    padding: 2rem;
}

.dashboard-header img[b-nsfszgwu2b] {
    position: relative;
    z-index: 2;
}

.dashboard-header .text-white[b-nsfszgwu2b] {
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    position: relative;
    z-index: 2;
}

.dashboard-header .container-fluid[b-nsfszgwu2b] {
    position: relative;
    z-index: 2;
}

.dropdown-toggle[b-nsfszgwu2b] {
    font-weight: 600;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

.dropdown-toggle:hover[b-nsfszgwu2b] {
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.dropdown-menu[b-nsfszgwu2b] {
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.dropdown-item[b-nsfszgwu2b] {
    transition: all 0.2s ease;
}

.dropdown-item:hover[b-nsfszgwu2b] {
    background-color: var(--brand-quote-accent);
    color: white;
}

/* /Components/Pages/Insured/InsuredPresentation.razor.rz.scp.css */
/* Loading overlay styles for InsuredPresentation */
.loading-overlay[b-0ae3f03ksi] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    backdrop-filter: blur(2px);
}

.loading-overlay-content[b-0ae3f03ksi] {
    background-color: white;
    padding: 2rem 3rem;
    border-radius: 0.5rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    text-align: center;
    min-width: 300px;
}

.loading-overlay-content h5[b-0ae3f03ksi] {
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.loading-overlay-content p[b-0ae3f03ksi] {
    font-size: 0.9rem;
}
/* /Components/Pages/Insured/InsuredPresentationDeclined.razor.rz.scp.css */
/* InsuredPresentationDeclined component styles */

/* Main content area styles */
.declined-content[b-xtky92gblz] {
    min-height: 60vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 48px 20px;
}

/* Card */
.decline-card[b-xtky92gblz] {
    width: 720px;
    max-width: 92vw;
    background: #fff;
    border: 3px solid var(--brand-quote-primary);
    border-radius: 14px;
    padding: 44px 48px 42px;
    text-align: center;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.decline-icon[b-xtky92gblz] {
    width: 54px;
    height: 54px;
    margin: 0 auto 18px;
    border-radius: 999px;
    background: var(--brand-quote-primary);
    display: grid;
    place-items: center;
    color: white;
}

.decline-icon svg[b-xtky92gblz] {
    width: 32px;
    height: 32px;
}

.decline-title[b-xtky92gblz] {
    margin: 0 0 14px;
    font-size: 30px;
    letter-spacing: 0.2px;
    color: var(--brand-quote-primary);
    font-weight: 600;
}

.decline-message[b-xtky92gblz] {
    margin: 30px auto;
    max-width: 560px;
    color: #000;
    font-size: 14px;
    line-height: 1.65;
}

.decline-message p[b-xtky92gblz] {
    margin: 10px;
    opacity: 0.8;
}

.contact-agent[b-xtky92gblz] {
    background-color: var(--brand-quote-primary);
    color: white;
    padding: 8px 30px;
    border: none;
    border-radius: 25px;
    font-weight: 600;
    font-size: 1rem;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.2s ease;
    min-width: 18rem;
    letter-spacing: 0.5px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .decline-card[b-xtky92gblz] {
        padding: 32px 24px 30px;
    }

    .decline-title[b-xtky92gblz] {
        font-size: 24px;
    }
}
/* /Components/Pages/Insured/InsuredPresentationDeleted.razor.rz.scp.css */
/* InsuredPresentationDeleted component styles */

/* Main content area styles */
.deleted-content[b-fzdmqjpwao] {
    min-height: 60vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 48px 20px;
}

/* Card */
.delete-card[b-fzdmqjpwao] {
    width: 720px;
    max-width: 92vw;
    background: #fff;
    border: 3px solid var(--brand-quote-primary);
    border-radius: 14px;
    padding: 44px 48px 42px;
    text-align: center;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.delete-icon[b-fzdmqjpwao] {
    width: 54px;
    height: 54px;
    margin: 0 auto 18px;
    border-radius: 999px;
    background: var(--brand-quote-primary);
    display: grid;
    place-items: center;
    color: white;
    font-size: 28px;
}

.delete-icon svg[b-fzdmqjpwao] {
    width: 32px;
    height: 32px;
}

.delete-title[b-fzdmqjpwao] {
    margin: 0 0 14px;
    font-size: 30px;
    letter-spacing: 0.2px;
    color: var(--brand-quote-primary);
    font-weight: 600;
}

.delete-message[b-fzdmqjpwao] {
    margin: 30px auto;
    max-width: 560px;
    color: #000;
    font-size: 14px;
    line-height: 1.65;
}

.delete-message p[b-fzdmqjpwao] {
    margin: 10px;
    opacity: 0.8;
}

.contact-agent[b-fzdmqjpwao] {
    background-color: var(--brand-quote-primary);
    color: white;
    padding: 8px 30px;
    border: none;
    border-radius: 25px;
    font-weight: 600;
    font-size: 1rem;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.2s ease;
    min-width: 18rem;
    letter-spacing: 0.5px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .delete-card[b-fzdmqjpwao] {
        padding: 32px 24px 30px;
    }

    .delete-title[b-fzdmqjpwao] {
        font-size: 24px;
    }
}
/* /Components/Pages/Insured/InsuredPresentationNavigation.razor.rz.scp.css */
.presentation-navigation[b-jtmt5rumvf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 25px 0 20px 0;
    padding: 0 8rem;
    max-width: -webkit-fill-available;
    margin-left: auto;
    margin-right: auto;
}

.nav-spacer[b-jtmt5rumvf] {
    flex-grow: 1;
}

.nav-button[b-jtmt5rumvf] {
    padding: 8px 30px;
    border: none;
    border-radius: 25px;
    font-weight: 600;
    font-size: 1rem;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.2s ease;
    min-width: 18rem;
    letter-spacing: 0.5px;
}

.back-button[b-jtmt5rumvf] {
    background-color: var(--brand-quote-primary); /* Gray-blue matching the progress indicator */
    color: white;
}

    .back-button:hover:not(:disabled)[b-jtmt5rumvf] {
        background: var(--brand-quote-primary-hover);
        transform: translateY(-1px);
    }

.next-button[b-jtmt5rumvf] {
    background-color: var(--brand-quote-accent); /* Bright green matching the CONTINUE button in image */
    color: white;
    font-weight: 700; /* Bold text for CONTINUE button */
}

    .next-button:hover:not(:disabled)[b-jtmt5rumvf] {
        background-color: var(--brand-quote-accent-hover);
    }

.nav-button:disabled[b-jtmt5rumvf] {
    background: #6c757d;
    color: #adb5bd;
    cursor: not-allowed;
    transform: none;
}

.decline-quote-button[b-jtmt5rumvf] {
    background-color: var(--brand-quote-primary);
    color: white;
    margin-right: 10px;
}

/* Responsive design */
@media (max-width: 768px) {
    .presentation-navigation[b-jtmt5rumvf] {
        padding: 0 10px;
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
    
    .nav-button[b-jtmt5rumvf] {
        min-width: 100px;
        padding: 10px 24px;
        font-size: 0.8rem;
        width: 100%;
    }
}
/* /Components/Pages/Insured/InsuredPresentationProgressIndicator.razor.rz.scp.css */
.step-progress-container[b-awt3lg76i1] {
    display: flex;
    justify-content: center;
    margin: 20px 0px 40px 0px;
    padding: 0 20px;
}

.step-progress-wrapper[b-awt3lg76i1] {
    display: flex;
    align-items: center;
    background: #d1d5db; /* Light gray background matching image */
    border-radius: 30px;
    padding: 8px;
    box-shadow: none; /* Remove shadow */
    gap: 0;
    border: none;
    width: 100%;
}

.step-item[b-awt3lg76i1] {
    padding: 5px 24px;
    border-radius: 25px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-weight: 600;
    font-size: 1rem;
    text-align: center;
    min-width: 6rem;
    position: relative;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin: 0 5px; /* Small gap between items */
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    width: 100%;
}

    /* Disabled state - transparent background, gray text */
    .step-item.disabled[b-awt3lg76i1] {
        background: white;
        color: #6c757d;
        cursor: not-allowed;
        opacity: 0.6;
    }

    /* Clickable (accessible but not active/completed) steps */
    .step-item.clickable[b-awt3lg76i1] {
        background: var(--brand-muted-contrast);
        color: white;
    }

        /* Hover effect for clickable steps */
        .step-item.clickable:hover[b-awt3lg76i1] {
            background: var(--brand-quote-accent);
            color: white;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
        }

    /* Active step - dark teal/gray background matching image */
    .step-item.active[b-awt3lg76i1] {
        background: var(--brand-quote-primary);
        color: white;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    }

    /* Completed steps - distinguishable from active */
    .step-item.completed[b-awt3lg76i1] {
        background: var(--brand-muted-contrast);
        color: white;
    }

        /* Hover effect for completed steps (still clickable) */
        .step-item.completed:hover[b-awt3lg76i1] {
            background: var(--brand-quote-accent);
            transform: translateY(-1px);
            box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
        }

.step-number[b-awt3lg76i1] {
    font-size: 1rem;
    font-weight: 600;
    display: block;
}

.step-title[b-awt3lg76i1] {
    font-size: 0.65rem;
    font-weight: 500;
    opacity: 0.9;
    text-transform: none;
    letter-spacing: 0.1px;
}

/* Icons for step states */
.step-check-icon[b-awt3lg76i1] {
    font-size: 0.8rem;
    margin-top: 1px;
    color: rgba(255, 255, 255, 0.9);
}

.step-circle-icon[b-awt3lg76i1] {
    font-size: 0.7rem;
    margin-top: 1px;
    color: rgba(108, 117, 125, 0.6);
}

/* Active state icons */
.step-item.active .step-circle-icon[b-awt3lg76i1],
.step-item.active .step-check-icon[b-awt3lg76i1] {
    color: rgba(255, 255, 255, 0.8);
}

/* Pulsing effect for active step */
.step-item.active[b-awt3lg76i1] {
    animation: subtle-pulse-b-awt3lg76i1 2s ease-in-out infinite alternate;
}

@keyframes subtle-pulse-b-awt3lg76i1 {
    0% {
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    }

    100% {
        box-shadow: 0 2px 12px rgba(0, 0, 0, 0.2);
    }
}

/* Responsive design */
@media (max-width: 768px) {
    .step-progress-wrapper[b-awt3lg76i1] {
        padding: 3px;
        flex-wrap: wrap;
        justify-content: center;
        gap: 4px;
    }

    .step-item[b-awt3lg76i1] {
        padding: 8px 16px;
        min-width: 60px;
        font-size: 0.65rem;
        margin: 1px;
    }

    .step-title[b-awt3lg76i1] {
        font-size: 0.6rem;
    }

    .step-progress-container[b-awt3lg76i1] {
        padding: 0 10px;
        margin: 15px 0;
    }
}

@media (max-width: 480px) {
    .step-item[b-awt3lg76i1] {
        padding: 6px 12px;
        min-width: 50px;
        font-size: 0.6rem;
    }

    .step-title[b-awt3lg76i1] {
        display: none; /* Hide step titles on very small screens */
    }
}
/* /Components/Pages/Insured/InsuredPresentationSuccess.razor.rz.scp.css */
.success-page[b-ehdtr9nxnr] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 70vh;
    padding: 40px 20px;
}

.success-container[b-ehdtr9nxnr] {
    max-width: 600px;
    text-align: center;
    background: white;
    padding: 50px 40px;
    border-radius: 16px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

.success-icon[b-ehdtr9nxnr] {
    font-size: 5rem;
    color: #28a745;
    margin-bottom: 30px;
}

.success-title[b-ehdtr9nxnr] {
    color: #333;
    font-size: 2.2rem;
    font-weight: 600;
    margin-bottom: 20px;
}

.success-message[b-ehdtr9nxnr] {
    color: #6c757d;
    font-size: 1.1rem;
    line-height: 1.6;
    margin-bottom: 40px;
}

.next-steps[b-ehdtr9nxnr] {
    text-align: left;
    background: #f8f9fa;
    padding: 25px;
    border-radius: 8px;
    margin-bottom: 40px;
}

    .next-steps h3[b-ehdtr9nxnr] {
        color: #333;
        font-size: 1.3rem;
        margin-bottom: 15px;
    }

    .next-steps ul[b-ehdtr9nxnr] {
        color: #495057;
        line-height: 1.7;
    }

    .next-steps li[b-ehdtr9nxnr] {
        margin-bottom: 8px;
    }

.success-actions[b-ehdtr9nxnr] {
    display: flex;
    gap: 20px;
    justify-content: center;
    flex-wrap: wrap;
}

.btn[b-ehdtr9nxnr] {
    padding: 12px 30px;
    border-radius: 25px;
    font-weight: 600;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    cursor: pointer;
    border: 2px solid;
    display: inline-flex;
    align-items: center;
    min-width: 160px;
    justify-content: center;
}

.btn-primary[b-ehdtr9nxnr] {
    background: var(--brand-quote-primary);
    color: white;
    border-color: var(--brand-quote-primary);
}

    .btn-primary:hover[b-ehdtr9nxnr] {
        background: var(--brand-quote-primary-hover);
        border-color: var(--brand-quote-primary);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(70, 130, 180, 0.3);
    }

.btn-outline[b-ehdtr9nxnr] {
    background: transparent;
    color: #4682b4;
    border-color: var(--brand-quote-primary);
}

    .btn-outline:hover[b-ehdtr9nxnr] {
        background: var(--brand-quote-primary);
        color: white;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(70, 130, 180, 0.3);
    }

@media (max-width: 768px) {
    .success-container[b-ehdtr9nxnr] {
        padding: 30px 20px;
    }

    .success-title[b-ehdtr9nxnr] {
        font-size: 1.8rem;
    }

    .success-actions[b-ehdtr9nxnr] {
        flex-direction: column;
        align-items: center;
    }
}
/* /Components/Pages/Insured/InvalidLink.razor.rz.scp.css */
/* InvalidLink component styles */

:root[b-dc2ftvvk60] {
    --teal: #2B6F87;
    --teal-2: #3E7E96;
    --card-border: #2B6F87;
    --text: #0e2a36;
    --muted: #3e5560;
    --bg: #ffffff;
    --orange: #F2A20B;
}

/* Main content area styles */
.invalid-link-content[b-dc2ftvvk60] {
    min-height: 60vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 48px 20px;
}

/* Card */
.error-card[b-dc2ftvvk60] {
    width: 720px;
    max-width: 92vw;
    background: #fff;
    border: 2px solid var(--brand-quote-primary);
    border-radius: 14px;
    padding: 44px 48px 42px;
    text-align: center;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.error-icon[b-dc2ftvvk60] {
    width: 54px;
    height: 54px;
    margin: 0 auto 18px;
    border-radius: 999px;
    background: var(--brand-quote-primary);
    display: grid;
    place-items: center;
}

.error-icon svg[b-dc2ftvvk60] {
    width: 26px;
    height: 26px;
}

.error-title[b-dc2ftvvk60] {
    margin: 0 0 14px;
    font-size: 30px;
    letter-spacing: 0.2px;
    color: var(--brand-quote-primary);
    font-weight: 600;
}

.error-message[b-dc2ftvvk60] {
    margin: 0 auto;
    max-width: 560px;
    color: #000;
    font-size: 14px;
    line-height: 1.65;
}

.error-message p[b-dc2ftvvk60] {
    margin: 0;
    opacity: 0.8;
}

.what-you-can-do[b-dc2ftvvk60] {
    margin-top: 1.5rem;
    margin-bottom: 10px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .error-card[b-dc2ftvvk60] {
        padding: 32px 24px 30px;
    }
    
    .error-title[b-dc2ftvvk60] {
    font-size: 24px;
    }
}
/* /Components/Pages/Insured/PricingSection.razor.rz.scp.css */
.pricing-sections[b-pcmjoen8ek] {
    /* Container for all pricing options */
}

.pricing-section[b-pcmjoen8ek] {
    background: var(--brand-quote-primary);
    padding: 20px;
    border: 2rem solid rgb(255 255 255);
    border-radius: 3rem;
}

.pricing-title[b-pcmjoen8ek] {
    color: white;
    font-size: 1.5rem;
    font-weight: 700;
    text-align: center;
    margin: 0 0 15px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.pricing-options[b-pcmjoen8ek] {
    /* Container for all pricing option items */
}
/* /Components/Pages/Insured/Steps/AdditionalInfoStep.razor.rz.scp.css */
.compare-plans-step[b-8zoplzpr66] {
    margin: 0 auto;
    padding: 0 8rem;
}

.step-header[b-8zoplzpr66] {
    margin-bottom: 25px;
}

.step-title[b-8zoplzpr66] {
    color: var(--brand-quote-primary);
    font-size: 2rem;
    font-weight: 600;
    margin-bottom: 10px;
    line-height: 1.2;
}

.step-subtitle[b-8zoplzpr66] {
    color: #666;
    font-size: 1rem;
    margin: 0;
    line-height: 1.5;
}

.packages-container[b-8zoplzpr66] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 5rem;
    margin-bottom: 25px;
}

.package-card[b-8zoplzpr66] {
    background: white;
    border: 3px solid var(--brand-quote-primary);
    border-radius: 12px;
    padding: 0;
    overflow: hidden;
}

.package-header[b-8zoplzpr66] {
    text-align: center;
    padding: 20px;
    border-bottom: 1px solid #eee;
}

.package-title[b-8zoplzpr66] {
    color: var(--brand-quote-primary);
    font-size: 3rem;
    font-weight: 700;
    margin: 0 0 8px 0;
    letter-spacing: 1px;
}

.package-description[b-8zoplzpr66] {
    color: #666;
    font-size: 1rem;
    margin: 0;
}

.packages-container[b-8zoplzpr66] {
    .coverage-sections {
        height: 52rem;
        max-height: 100vh;
        padding: 2rem;
    }
}

.selection-options[b-8zoplzpr66] {
    background: var(--brand-quote-primary);
    border-radius: 12px;
    padding: 20px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 20px;
}

.option-group[b-8zoplzpr66] {
    display: flex;
    flex-direction: column;
}

.option-label[b-8zoplzpr66] {
    color: white;
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 8px;
    text-align: center;
}

.option-select[b-8zoplzpr66] {
    padding: 10px 12px;
    border: none;
    border-radius: 6px;
    background: white;
    color: #333;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
}

.selected-summary[b-8zoplzpr66] {
    background: var(--brand-quote-accent);
    border-radius: 12px;
    padding: 20px;
    color: white;
}

.summary-content[b-8zoplzpr66] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: var(--background);
    color: var(--foreground);
    padding: 20px;
    border-radius: 10px;
}

.summary-text[b-8zoplzpr66] {
    font-size: 1.5rem;
    font-weight: 500;
}

.summary-price[b-8zoplzpr66] {
    color: var(--brand-quote-accent);
    font-size: 1.5rem;
    font-weight: 700;
    margin-left: 10px;
}

.summary-label[b-8zoplzpr66] {
    font-size: 0.8rem;
    text-transform: uppercase;
    opacity: 0.9;
    margin-left: 8px;
}

.summary-header[b-8zoplzpr66] {
    padding: 4px 12px 12px 12px;
    font-size: 1.5rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 4px;
    text-align: center;
}

/* Loading and Error States */
.loading-container[b-8zoplzpr66] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem 2rem;
    text-align: center;
}

.spinner[b-8zoplzpr66] {
    width: 50px;
    height: 50px;
    border: 4px solid #f3f3f3;
    border-top: 4px solid var(--brand-quote-primary);
    border-radius: 50%;
    animation: spin-b-8zoplzpr66 1s linear infinite;
    margin-bottom: 1rem;
}

@keyframes spin-b-8zoplzpr66 {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.error-container[b-8zoplzpr66] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem 2rem;
    text-align: center;
    background-color: #fff3cd;
    border: 1px solid #ffc107;
    border-radius: 8px;
    margin: 2rem 0;
}

.error-icon[b-8zoplzpr66] {
    font-size: 4rem;
    margin-bottom: 1rem;
}

.error-message[b-8zoplzpr66] {
    color: #856404;
    margin: 1rem 0;
    font-size: 1.1rem;
}

.btn-retry[b-8zoplzpr66] {
    background-color: var(--brand-quote-primary);
    color: white;
    padding: 0.75rem 2rem;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 1rem;
    margin-top: 1rem;
    transition: background-color 0.3s;
}

.btn-retry:hover[b-8zoplzpr66] {
    background-color: var(--brand-quote-primary-hover);
}

.support-message[b-8zoplzpr66] {
    margin-top: 1rem;
    color: #856404;
    font-style: italic;
}

/* Responsive design */
@media (max-width: 768px) {
    .compare-plans-step[b-8zoplzpr66] {
        padding: 0 10px;
    }

    .packages-container[b-8zoplzpr66] {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .selection-options[b-8zoplzpr66] {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .summary-content[b-8zoplzpr66] {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .summary-price[b-8zoplzpr66] {
        margin-left: 0;
    }

    .summary-label[b-8zoplzpr66] {
        margin-left: 0;
    }
}
/* /Components/Pages/Insured/Steps/BusinessInformationStep.razor.rz.scp.css */
.business-info-step[b-mtqjvkg70n] {
    max-width: max-content;
    margin: 0 auto;
    padding: 0 8rem;
}

.step-header[b-mtqjvkg70n] {
    margin-bottom: 30px;
}

.step-title[b-mtqjvkg70n] {
    color: var(--brand-quote-primary);
    font-size: 2rem;
    font-weight: 600;
    margin-bottom: 10px;
    line-height: 1.2;
}

.step-subtitle[b-mtqjvkg70n] {
    color: #666;
    font-size: 1rem;
    margin: 0;
    line-height: 1.5;
}

.business-form-container[b-mtqjvkg70n] {
    background: white;
    border-radius: 12px;
    padding: 3rem;
    margin-bottom: 20px;
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
    border: 3px solid var(--brand-quote-primary);
}

.company-info-section[b-mtqjvkg70n] {
    position: relative;
}

.section-header[b-mtqjvkg70n] {
    background-color: var(--brand-quote-primary);
    color: white;
    padding: 16px 30px;
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    text-transform: capitalize;
    letter-spacing: 0.5px;
    border-radius: 1rem 1rem 0 0;
}

.form-grid[b-mtqjvkg70n] {
    padding: 30px;
}

.form-row[b-mtqjvkg70n] {
    display: grid;
    grid-template-columns: 140px 1fr;
    gap: 38rem;
    border-bottom: 1px solid #b9b9b9;
    padding: .5rem;
    align-items: start;
}

    .form-row:last-child[b-mtqjvkg70n] {
        margin-bottom: 0;
    }

.form-label[b-mtqjvkg70n] {
    font-weight: 500;
    color: #000;
    font-size: 1rem;
    min-width: 140px;
    width: 140px;
    text-align: left;
    margin: 0;
    white-space: nowrap;
}

.form-input-wrapper[b-mtqjvkg70n] {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.form-display-value[b-mtqjvkg70n] {
    padding: 12px 16px;
    font-size: 1rem;
    color: #333;
    background-color: #f8f9fa;
    border-radius: 4px;
    min-height: 44px;
    display: flex;
    align-items: center;
}

.form-input[b-mtqjvkg70n] {
    flex: 1;
    padding: 12px 16px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 1rem;
    background-color: #fff;
    color: #000;
    transition: all 0.2s ease;
    width: 100%;
}

    .form-input:focus[b-mtqjvkg70n] {
        outline: none;
        border-color: var(--brand-quote-primary);
        background-color: white;
        box-shadow: 0 0 0 2px rgba(70, 130, 180, 0.1);
    }

    .form-input[b-mtqjvkg70n]::placeholder {
        color: #6c757d;
        opacity: 1;
    }

    .form-input.is-invalid[b-mtqjvkg70n] {
        border-color: #dc3545;
        background-color: #fff5f5;
    }

    .form-input.is-invalid:focus[b-mtqjvkg70n] {
        border-color: #dc3545;
        box-shadow: 0 0 0 2px rgba(220, 53, 69, 0.1);
    }

.benefits-section[b-mtqjvkg70n] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin: 30px 30px 30px 30px;
}

.benefit-card[b-mtqjvkg70n] {
    background: rgba(74, 100, 120, 0.1);
    border: 3px solid var(--brand-quote-primary);
    border-radius: 1rem;
    padding: 20px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

    .benefit-card:hover[b-mtqjvkg70n] {
        transform: translateY(-2px);
        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
    }

.benefit-title[b-mtqjvkg70n] {
    color: var(--brand-quote-primary);
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.benefit-description[b-mtqjvkg70n] {
    color: var(--brand-quote-primary);
    font-size: 1rem;
    line-height: 1.5;
    margin: 0;
}

.validation-message[b-mtqjvkg70n] {
    color: #dc3545;
    font-size: 0.75rem;
    margin-top: 4px;
}

/* SearchableSelect validation styling */
:deep(.searchable-select.is-invalid .selected-value)[b-mtqjvkg70n] {
    border-color: #dc3545;
    background-color: #fff5f5;
}

:deep(.searchable-select.is-invalid .selected-value:focus)[b-mtqjvkg70n] {
    border-color: #dc3545;
    box-shadow: 0 0 0 2px rgba(220, 53, 69, 0.1);
}

/* Responsive design */
@media (max-width: 768px) {
    .business-info-step[b-mtqjvkg70n] {
        padding: 0 10px;
    }

    .form-grid[b-mtqjvkg70n] {
        padding: 20px;
    }

    .form-row[b-mtqjvkg70n] {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .form-label[b-mtqjvkg70n] {
        min-width: auto;
        text-align: left;
        font-weight: 600;
    }

    .benefits-section[b-mtqjvkg70n] {
        grid-template-columns: 1fr;
        margin: 20px;
        gap: 16px;
    }

    .validation-message[b-mtqjvkg70n] {
        margin-left: 0;
    }
}
/* /Components/Pages/Insured/Steps/CoverageSolutionsStep.razor.rz.scp.css */
.coverage-solutions-step[b-h58a160b1x] {
    max-width: max-content;
    margin: 0 auto;
    padding: 0 8rem;
}

.step-header[b-h58a160b1x] {
    margin-bottom: 25px;
}

.step-title[b-h58a160b1x] {
    color: var(--brand-quote-primary);
    font-size: 2rem;
    font-weight: 600;
    margin-bottom: 10px;
    line-height: 1.2;
}

.step-subtitle[b-h58a160b1x] {
    color: #666;
    font-size: 1rem;
    margin: 0;
    line-height: 1.6;
}

.solutions-container[b-h58a160b1x] {
    background: white;
    border-radius: 12px;
    padding: 2rem;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    border: 3px solid var(--brand-quote-primary);
}

/* CERC Section - Main blue header section */
.cerc-section[b-h58a160b1x] {
    background-color: var(--brand-quote-primary);
    color: white;
    padding: 25px 30px;
    display: flex;
    align-items: center;
    gap: 35px;
    border-radius: 1rem;
    margin: 1rem;
}

.cerc-logo[b-h58a160b1x] {
    flex-shrink: 0;
    text-align: center;
}

.cerc-image[b-h58a160b1x] {
    height: 120px;
    width: auto;
}

.cerc-text[b-h58a160b1x] {
    text-align: center;
}

.cerc-large[b-h58a160b1x] {
    font-size: 3.5rem;
    font-weight: 900;
    display: block;
    letter-spacing: 3px;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
    margin-bottom: 5px;
}

.cerc-subtitle[b-h58a160b1x] {
    font-size: 0.8rem;
    line-height: 1.2;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    opacity: 0.95;
}

.cerc-content[b-h58a160b1x] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 35px;
    flex-grow: 1;
}

.cerc-left[b-h58a160b1x], .cerc-right[b-h58a160b1x] {
    font-size: 1rem;
    line-height: 1.5;
}

    .cerc-left p[b-h58a160b1x], .cerc-right p[b-h58a160b1x] {
        margin: 0;
        font-weight: 400;
    }

/* Services Grid - Two equal blue cards */
.services-grid[b-h58a160b1x] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
}

.service-card[b-h58a160b1x] {
    background-color: var(--brand-quote-primary);
    color: white;
    padding: 22px 25px;
    border-radius: 1rem;
    margin: 1rem;
}

    .service-card:first-child[b-h58a160b1x] {
        border-right: 1px solid rgba(255, 255, 255, 0.2);
    }

.service-title[b-h58a160b1x] {
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    opacity: 0.9;
}

.service-description[b-h58a160b1x] {
    font-size: 1rem;
    line-height: 1.5;
    margin: 0;
    font-weight: 400;
}

/* Additional Services - Full width blue section */
.additional-services[b-h58a160b1x] {
    background-color: var(--brand-quote-primary);
    color: white;
    padding: 22px 30px;
    border-radius: 1rem;
    margin: 1rem;
}

.additional-title[b-h58a160b1x] {
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 12px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    opacity: 0.9;
}

.services-list[b-h58a160b1x] {
    margin: 0;
    padding-left: 0;
    list-style: none;
}

    .services-list li[b-h58a160b1x] {
        font-size: 1rem;
        line-height: 1.5;
        margin-bottom: 10px;
        padding-left: 15px;
        position: relative;
        font-weight: 400;
    }

/* Exclusive Guarantees - Green section */
.guarantees-section[b-h58a160b1x] {
    background-color: var(--brand-quote-accent);
    color: white;
    padding: 25px 30px;
    border-radius: 1rem;
    margin: 1rem;
}

.guarantees-header[b-h58a160b1x] {
    margin-bottom: 20px;
}

.guarantees-title[b-h58a160b1x] {
    font-size: 1rem;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 6px;
    letter-spacing: 0.3px;
    opacity: 0.9;
}

.guarantees-subtitle[b-h58a160b1x] {
    font-size: 1.875rem;
    font-weight: 700;
    margin: 0;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
}

.guarantees-content[b-h58a160b1x] {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 35px;
}

.guarantee-item h5[b-h58a160b1x] {
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 10px;
    text-transform: none;
    letter-spacing: 0;
}

.guarantee-item p[b-h58a160b1x] {
    font-size: 1.125rem;
    line-height: 1.5;
    margin: 0;
    font-weight: 400;
}

/* Responsive design */
@media (max-width: 768px) {
    .coverage-solutions-step[b-h58a160b1x] {
        padding: 0 10px;
    }

    .cerc-section[b-h58a160b1x] {
        flex-direction: column;
        text-align: center;
        gap: 25px;
        padding: 20px;
    }

    .cerc-content[b-h58a160b1x],
    .services-grid[b-h58a160b1x],
    .guarantees-content[b-h58a160b1x] {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .service-card:first-child[b-h58a160b1x] {
        border-right: none;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    }

    .additional-services[b-h58a160b1x],
    .guarantees-section[b-h58a160b1x] {
        padding: 20px;
    }
}
/* /Components/Pages/Insured/Steps/ReviewSubmitStep.razor.rz.scp.css */
.review-bind-step[b-6q8bngda6d] {
    margin: 0 auto;
    padding: 0 8rem;
}

.step-header[b-6q8bngda6d] {
    margin-bottom: 25px;
}

.step-title[b-6q8bngda6d] {
    color: var(--brand-quote-primary);
    font-size: 2rem;
    font-weight: 600;
    margin-bottom: 8px;
    line-height: 1.2;
}

.step-subtitle[b-6q8bngda6d] {
    color: #666;
    font-size: 1rem;
    margin: 0;
    line-height: 1.5;
}

.policy-container[b-6q8bngda6d] {
    background: white;
    border-radius: 12px;
    padding: 3rem;
    overflow: hidden;
    margin-bottom: 20px;
    border: 3px solid var(--brand-quote-primary);
}

/* Policy Summary Section */
.policy-summary[b-6q8bngda6d] {
    margin-bottom: 2rem;
    border: 3px solid var(--brand-quote-primary);
    border-radius: 1rem;
}

.summary-header[b-6q8bngda6d] {
    background: var(--brand-quote-primary);
    color: white;
    padding: 16px 25px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top-left-radius: .5rem;
    border-top-right-radius: .5rem;
}

.summary-title[b-6q8bngda6d] {
    font-size: 1.125rem;
    font-weight: 600;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.download-btn[b-6q8bngda6d] {
    background: white;
    color: var(--foreground);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 2rem;
    padding: 8px 16px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

    .download-btn:hover[b-6q8bngda6d] {
        background: rgba(255, 255, 255, 0.8);
    }

    .download-btn:disabled[b-6q8bngda6d] {
        opacity: 0.5;
        cursor: not-allowed;
    }

.summary-content[b-6q8bngda6d] {
    padding: 3rem 3rem 1rem 3rem;
}

.summary-grid[b-6q8bngda6d] {
    margin-bottom: 25px;
}

.summary-row[b-6q8bngda6d] {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    margin-bottom: 15px;
}

    .summary-row:last-child[b-6q8bngda6d] {
        margin-bottom: 0;
    }

.summary-item[b-6q8bngda6d] {
    display: flex;
    flex-direction: column;
}

.item-label[b-6q8bngda6d] {
    color: #666;
    font-size: 1rem;
    font-weight: 500;
    margin-bottom: 4px;
    text-transform: capitalize;
    letter-spacing: 0.3px;
}

.item-value[b-6q8bngda6d] {
    color: #333;
    font-size: 1rem;
    font-weight: 600;
}

.total-cost[b-6q8bngda6d] {
    border-top: 2px solid #f0f0f0;
    padding-top: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cost-label[b-6q8bngda6d] {
    color: #333;
    font-size: 1.25rem;
    font-weight: 600;
}

.cost-amount[b-6q8bngda6d] {
    color: #6c8594;
    font-size: 2.25rem;
    font-weight: 700;
}

/* Next Steps Section */
.next-steps[b-6q8bngda6d] {
    background: var(--brand-quote-primary);
    padding: 3rem;
    border-radius: 1rem;
}

.steps-title[b-6q8bngda6d] {
    color: white;
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0 0 20px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.step-card[b-6q8bngda6d] {
    background: white;
    border-radius: 8px;
    padding: 30px 20px;
    margin-bottom: 15px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

    .step-card:last-child[b-6q8bngda6d] {
        margin-bottom: 0;
    }

.step-info[b-6q8bngda6d] {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

.step-icon[b-6q8bngda6d] {
    font-size: 1.5rem;
    color: white;
    width: 54px;
    height: 54px;
    border-radius: 999px;
    background: var(--brand-quote-primary);
    display: grid;
    place-items: center;
}

.step-content[b-6q8bngda6d] {
    flex-grow: 1;
}

.step-content-justify[b-6q8bngda6d] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    gap: 20px;
    flex-grow: 1;
}

.step-content-desc[b-6q8bngda6d] {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.step-name[b-6q8bngda6d] {
    color: var(--brand-quote-primary);
    font-size: 1.125rem;
    font-weight: 600;
    margin: 0 0 8px 0;
}

.step-description[b-6q8bngda6d] {
    color: #666;
    font-size: 1rem;
    margin-bottom: 0px;
}

.email-input-group[b-6q8bngda6d] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex-grow: 1;
}

.email-label[b-6q8bngda6d] {
    color: #666;
    font-size: 0.9rem;
    font-weight: 500;
}

.email-input[b-6q8bngda6d] {
    padding: 10px 12px;
    border: 1px solid #ddd;
    border-radius: 6px;
    font-size: 0.9rem;
    background: #f8f9fa;
}

    .email-input:focus[b-6q8bngda6d] {
        outline: none;
        border-color: var(--brand-quote-primary);
        background: white;
    }

    /* .email-input is a custom class, not a Bootstrap .form-control, so the
       framework's is-invalid/is-valid border styling doesn't reach it. Scope
       it here so the inline email validation feedback (issue #132) is visible. */
    .email-input.is-invalid[b-6q8bngda6d] {
        border-color: #dc3545;
        background: white;
    }

    .email-input.is-valid[b-6q8bngda6d] {
        border-color: #198754;
        background: white;
    }

.send-esign-btn[b-6q8bngda6d] {
    background: var(--brand-quote-primary);
    color: white;
    border: none;
    border-radius: 2rem;
    padding: 10px 48px;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    align-self: flex-end;
    transition: all 0.2s ease;
}

    .send-esign-btn:hover[b-6q8bngda6d] {
        background: var(--brand-quote-primary-hover);
    }

    .send-esign-btn:disabled[b-6q8bngda6d] {
        opacity: 0.5;
        cursor: not-allowed;
    }

.pay-now-btn[b-6q8bngda6d] {
    background: var(--brand-quote-primary);
    color: white;
    border: none;
    border-radius: 2rem;
    padding: 10px 48px;
    font-size: 0.95rem;
    font-weight: 600;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    transition: all 0.2s ease;
}

    .pay-now-btn:hover[b-6q8bngda6d] {
        background: var(--brand-quote-primary-hover);
    }

    .pay-now-btn:disabled[b-6q8bngda6d] {
        opacity: 0.5;
        cursor: not-allowed;
    }

/* Responsive design */
@media (max-width: 768px) {
    .review-bind-step[b-6q8bngda6d] {
        padding: 0 10px;
    }

    .summary-header[b-6q8bngda6d] {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }

    .summary-row[b-6q8bngda6d] {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .total-cost[b-6q8bngda6d] {
        flex-direction: column;
        gap: 8px;
        text-align: center;
    }

    .step-info[b-6q8bngda6d] {
        flex-direction: column;
        gap: 10px;
    }

    .email-input-group[b-6q8bngda6d] {
        margin-top: 10px;
    }

    .step-content-justify[b-6q8bngda6d] {
        flex-direction: column;
    }
}
/* /Components/Pages/Insured/Steps/WelcomeLetterStep.razor.rz.scp.css */
.welcome-letter-step[b-bmaujtnbpl] {
    max-width: max-content;
    margin: 0 auto;
    padding: 0 8rem;
}

.welcome-header[b-bmaujtnbpl] {
    margin-bottom: 25px;
    text-align: left;
}

.welcome-title[b-bmaujtnbpl] {
    color: var(--brand-quote-primary); /* Gray-blue color matching the image */
    font-size: 2rem;
    font-weight: bold; /* Medium weight, not bold */
    margin: 0;
    line-height: 1.3;
}

.letter-container[b-bmaujtnbpl] {
    background: white;
    border: 3px solid var(--brand-quote-primary); /* Visible border matching image */
    border-radius: 12px;
    padding: 3rem;
    box-shadow: none; /* Remove shadow to match image */
}

.company-profile[b-bmaujtnbpl] {
    display: flex;
    align-items: flex-start;
    gap: 50px;
    margin-bottom: 25px;
    padding-bottom: 0; /* Remove bottom padding */
    border-bottom: none; /* Remove border */
}

.company-avatar[b-bmaujtnbpl] {
    width: 200px;
    height: 180px;
    background: var(--brand-quote-primary); /* Darker teal matching the TD avatar in image */
    border-radius: 1rem; /* Slightly rounded corners */
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: none; /* Remove shadow */
}

.company-initial[b-bmaujtnbpl] {
    color: white;
    font-size: 6rem;
    font-weight: 700; /* Bold font for initials */
    letter-spacing: 2px;
}

.company-avatar img[b-bmaujtnbpl] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px;
}

.logo-wrapper[b-bmaujtnbpl] {
    height: 100%;
    max-height: 120px;
}

@media (max-width: 768px) {
    .logo-wrapper[b-bmaujtnbpl] {
        max-height: none;
    }
}

.company-details[b-bmaujtnbpl] {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    gap: 32px;
    padding-top: 8px; /* Slight top padding to align with avatar */
}

.detail-item[b-bmaujtnbpl] {
    font-size: 1rem;
    line-height: 1.4;
    color: #2d3a43;
}

.detail-item strong[b-bmaujtnbpl] {
    color: #2d3a43; /* Teal color for labels */
    font-weight: bold;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: inline; /* Keep inline with content */
}

.letter-content[b-bmaujtnbpl] {
    color: #2c5f5f; /* Consistent teal color for all text */
}

.salutation[b-bmaujtnbpl] {
    font-size: 1rem;
    font-weight: bold;
    margin-bottom: 18px;
    color: #2d3a43;
}

.letter-text[b-bmaujtnbpl] {
    font-size: 1rem;
    line-height: 1.6;
    color: #2d3a43;
    margin-bottom: 25px;
    text-align: justify;
}

.value-proposition[b-bmaujtnbpl] {
    background: var(--brand-quote-primary); /* Gray-blue background matching image */
    color: white;
    padding: 2rem;
    border-radius: 1rem;
    margin-top: 20px;
}

.value-header[b-bmaujtnbpl] {
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.value-text[b-bmaujtnbpl] {
    font-size: 1.125rem;
    line-height: 1.5;
    margin: 0;
    font-weight: 400;
}

/* Responsive design */
@media (max-width: 768px) {
    .welcome-letter-step[b-bmaujtnbpl] {
        padding: 0 10px;
    }
    
    .letter-container[b-bmaujtnbpl] {
        padding: 20px;
    }
    
    .company-profile[b-bmaujtnbpl] {
        flex-direction: column;
        text-align: center;
        gap: 15px;
    }
    
    .company-avatar[b-bmaujtnbpl] {
        align-self: center;
        width: 80px;
        height: 80px;
    }
    
    .company-initial[b-bmaujtnbpl] {
        font-size: 2.2rem;
    }
    
    .value-proposition[b-bmaujtnbpl] {
        padding: 18px;
    }
}
/* /Components/Pages/Public/PublicPresentation.razor.rz.scp.css */
.public-presentation[b-79zobx5qgx] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 48px 20px;
    background: linear-gradient(135deg, #f6f8fa 0%, #ffffff 100%);
}

.public-presentation__loading[b-79zobx5qgx] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 50vh;
}

.public-presentation__card[b-79zobx5qgx] {
    width: 720px;
    max-width: 92vw;
    background: #fff;
    border: 2px solid var(--brand-quote-primary, #4A6478);
    border-radius: 14px;
    padding: 44px 48px 42px;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.08);
}

.public-presentation__card--unavailable[b-79zobx5qgx] {
    text-align: center;
}

.public-presentation__hero[b-79zobx5qgx] {
    text-align: center;
    margin-bottom: 24px;
}

.public-presentation__eyebrow[b-79zobx5qgx] {
    text-transform: uppercase;
    letter-spacing: 1.2px;
    font-size: 12px;
    color: var(--brand-quote-secondary, #013E46);
    margin: 0 0 6px;
    font-weight: 600;
}

.public-presentation__title[b-79zobx5qgx] {
    margin: 0 0 14px;
    font-size: 30px;
    color: var(--brand-quote-primary, #4A6478);
    font-weight: 600;
    line-height: 1.2;
}

.public-presentation__icon[b-79zobx5qgx] {
    width: 54px;
    height: 54px;
    margin: 0 auto 18px;
    border-radius: 999px;
    background: var(--brand-quote-primary, #4A6478);
    display: grid;
    place-items: center;
}

.public-presentation__icon svg[b-79zobx5qgx] {
    width: 26px;
    height: 26px;
}

.public-presentation__message[b-79zobx5qgx] {
    margin: 0 auto;
    max-width: 560px;
    color: #000;
    font-size: 15px;
    line-height: 1.65;
}

.public-presentation__message p[b-79zobx5qgx] {
    margin: 0 0 8px;
    opacity: 0.85;
}

.public-presentation__message p:last-child[b-79zobx5qgx] {
    margin-bottom: 0;
}

.public-presentation__opening-message[b-79zobx5qgx] {
    margin: 0 auto 24px;
    max-width: 600px;
    color: #1b1b1b;
    font-size: 16px;
    line-height: 1.7;
    white-space: pre-wrap;
}

.public-presentation__opening-message p[b-79zobx5qgx] {
    margin: 0 0 14px;
}

.public-presentation__opening-message p:last-child[b-79zobx5qgx] {
    margin-bottom: 0;
}

.public-presentation__footer[b-79zobx5qgx] {
    margin-top: 28px;
    padding-top: 20px;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    text-align: center;
}

.public-presentation__follow-up[b-79zobx5qgx] {
    margin: 0 0 6px;
    color: var(--brand-quote-secondary, #013E46);
    font-weight: 600;
    font-size: 15px;
}

.public-presentation__contact[b-79zobx5qgx] {
    margin: 0;
    color: #555;
    font-size: 14px;
}

@media (max-width: 768px) {
    .public-presentation[b-79zobx5qgx] {
        padding: 24px 16px;
    }

    .public-presentation__card[b-79zobx5qgx] {
        padding: 28px 22px 26px;
    }

    .public-presentation__title[b-79zobx5qgx] {
        font-size: 24px;
    }

    .public-presentation__opening-message[b-79zobx5qgx] {
        font-size: 15px;
    }
}
/* /Components/Shared/AccountDetailModal.razor.rz.scp.css */
/* ── Modal shell ─────────────────────────────────────────────────────────── */
.adm-content[b-yv499al37u] {
    border: none;
    border-radius: var(--radius-card, 12px);
    overflow: hidden;
    box-shadow: var(--shadow-modal, 0 20px 60px rgba(15, 23, 42, 0.18));
}

.adm-accent[b-yv499al37u] {
    height: 4px;
    background: var(--gradient-g2, linear-gradient(to right,
        var(--brand-primary, #1f628d),
        var(--brand-secondary, #01949f),
        var(--brand-accent, #76b243)));
}

.adm-header[b-yv499al37u] {
    border-bottom: 1px solid var(--color-border, #e5e7eb);
    padding: 1rem 1.25rem;
}

.adm-header .modal-title[b-yv499al37u] {
    font-weight: 700;
    color: var(--color-foreground, #1f2933);
}

.adm-body[b-yv499al37u] { padding: 1.25rem 1.5rem; }

.adm-footer[b-yv499al37u] {
    border-top: 1px solid var(--color-border, #e5e7eb);
    padding: 0.85rem 1.5rem;
}

/* ── Themed buttons ──────────────────────────────────────────────────────── */
.adm-btn-primary[b-yv499al37u] {
    background-color: var(--brand-primary, #1f628d);
    border: none;
    color: var(--brand-primary-contrast, #fff);
    font-weight: 600;
}
.adm-btn-primary:hover:not(:disabled)[b-yv499al37u] { filter: brightness(0.94); color: #fff; }
.adm-btn-primary:disabled[b-yv499al37u] { opacity: 0.55; }

.adm-btn-outline[b-yv499al37u] {
    background: #fff;
    border: 1px solid var(--brand-primary, #1f628d);
    color: var(--brand-primary, #1f628d);
    font-weight: 600;
}
.adm-btn-outline:hover[b-yv499al37u] { background: var(--brand-primary-alpha-5, rgba(31,98,141,0.06)); }

.adm-cancel[b-yv499al37u] { color: var(--color-muted-foreground, #6b7280); font-weight: 600; text-decoration: none; }
.adm-cancel:hover[b-yv499al37u] { color: var(--brand-primary, #1f628d); }

/* ── View cards ──────────────────────────────────────────────────────────── */
.adm-card[b-yv499al37u] {
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: var(--radius-card, 10px);
    background: #fff;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
    padding: 0.4rem 1rem 0.6rem;
    margin-bottom: 0.85rem;
}
.adm-card:last-child[b-yv499al37u] { margin-bottom: 0; }

.adm-card__title[b-yv499al37u] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--brand-primary, #1f628d);
    display: flex;
    align-items: center;
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--color-border, #eef1f4);
    margin-bottom: 0.25rem;
}

.detail-grid[b-yv499al37u] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.detail-row[b-yv499al37u] {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 1rem;
    padding: 0.55rem 0;
    border-bottom: 1px solid #f1f5f9;
}

.detail-row:last-child[b-yv499al37u] {
    border-bottom: none;
}

.detail-label[b-yv499al37u] {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #64748b;
    display: flex;
    align-items: center;
}

.detail-value[b-yv499al37u] {
    font-weight: 500;
    color: #1e293b;
    word-break: break-word;
}

.readonly-badge[b-yv499al37u] {
    background: #f1f5f9;
    color: #475569;
    font-size: 0.65rem;
    padding: 0.2rem 0.5rem;
    border-radius: 999px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

/* Mirrors AgentStatsModal stage pill so the Dashboard feels cohesive. */
.stage-pill[b-yv499al37u] {
    font-size: 0.7rem;
    padding: 0.3rem 0.6rem;
    border-radius: 999px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.stage-pill--dormant[b-yv499al37u] { background: #f1f5f9; color: #475569; }
.stage-pill--active[b-yv499al37u]  { background: #dbeafe; color: #1d4ed8; }
.stage-pill--bound[b-yv499al37u]   { background: #d1fae5; color: #065f46; }
.stage-pill--closed[b-yv499al37u]  { background: #fee2e2; color: #b91c1c; }

.state-pill[b-yv499al37u] {
    font-size: 0.7rem;
    padding: 0.3rem 0.6rem;
    border-radius: 999px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.state-pill--unassigned[b-yv499al37u] { background: #fef3c7; color: #92400e; }
.state-pill--assigned[b-yv499al37u]   { background: #dcfce7; color: #166534; }
.state-pill--house[b-yv499al37u]      { background: #ede9fe; color: #6b21a8; }

/* ── Edit form ───────────────────────────────────────────────────────────── */
.adm-edit .form-label[b-yv499al37u] {
    font-weight: 600;
    font-size: 0.85rem;
    color: var(--color-foreground, #1f2937);
    margin-bottom: 0.3rem;
}

/* Disable interaction (and dim) the whole form while a save is in flight. */
.adm-edit--busy[b-yv499al37u] {
    opacity: 0.6;
    pointer-events: none;
}

.adm-field-error[b-yv499al37u] {
    color: var(--tier-c-destructive, #b91c1c);
    font-size: 0.8rem;
    margin-top: 0.25rem;
}

/* Read-only / auto-filled inputs (City, State, NAICS) — clearly non-editable
   but still legible (lighter than Bootstrap's disabled grey-out). */
.adm-readonly[b-yv499al37u],
.adm-edit .adm-readonly[b-yv499al37u] {
    background-color: var(--color-muted, #f3f6fa);
    color: var(--color-foreground, #1f2933);
    cursor: default;
}
.adm-readonly:focus[b-yv499al37u] {
    background-color: var(--color-muted, #f3f6fa);
    box-shadow: none;
    border-color: var(--color-border, #d3d9e3);
}

/* ── Loading skeleton ────────────────────────────────────────────────────── */
.adm-skel[b-yv499al37u] {
    display: inline-block;
    background: linear-gradient(90deg,
        rgba(229,231,235,0.6) 0%, rgba(243,244,246,0.9) 50%, rgba(229,231,235,0.6) 100%);
    background-size: 200% 100%;
    border-radius: 6px;
    animation: adm-skel-shimmer-b-yv499al37u 1.4s ease-in-out infinite;
}
.adm-skel--title[b-yv499al37u] { width: 240px; height: 1.4rem; }
.adm-skel--label[b-yv499al37u] { width: 60%; height: 0.8rem; }
.adm-skel--value[b-yv499al37u] { width: 80%; height: 0.9rem; }

@keyframes adm-skel-shimmer-b-yv499al37u {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

@media (prefers-reduced-motion: reduce) {
    .adm-skel[b-yv499al37u] { animation: none; background: rgba(229,231,235,0.75); }
}
/* /Components/Shared/AccountSettingsModal.razor.rz.scp.css */
/* Modal backdrop */
.settings-modal-backdrop[b-dwkf8v19wp] {
    background-color: rgba(0, 0, 0, 0.5);
}

/* Modal dialog */
.modal-dialog-settings[b-dwkf8v19wp] {
    max-width: 560px;
}

/* Modal content container */
.modal-content-settings[b-dwkf8v19wp] {
    background-color: #f8f9fa;
    height: 640px;
    display: flex;
    flex-direction: column;
}

/* Modal body */
.modal-body-settings[b-dwkf8v19wp] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* Header title */
.settings-title[b-dwkf8v19wp] {
    color: #281018;
}

/* Header subtitle */
.settings-subtitle[b-dwkf8v19wp] {
    font-size: 0.875rem;
}

/* Tabs container */
.tabs-container[b-dwkf8v19wp] {
    margin-bottom: 1.25rem;
    padding-top: 0.5rem;
    margin-right: 2rem;
    margin-left: 2rem;
}

/* Tab buttons */
.tab-button[b-dwkf8v19wp] {
    background-color: transparent;
    border: none;
    padding: 0.625rem 1.75rem;
    color: #666;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    border-radius: 20px;
    font-size: 0.9rem;
    min-width: 120px;
}

.tab-button:hover:not(.active)[b-dwkf8v19wp] {
    background-color: #f0f0f0;
}

.tab-button.active[b-dwkf8v19wp] {
    background-color: white;
    color: var(--brand-primary);
    font-weight: 600;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Content area */
.content-area[b-dwkf8v19wp] {
    background-color: white;
    border-radius: 12px;
    min-height: 300px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    flex: 1;
    overflow-y: auto;
}

/* Section headers */
.section-title[b-dwkf8v19wp] {
    color: var(--brand-primary);
}

.section-subtitle[b-dwkf8v19wp] {
    font-size: 0.75rem;
}

/* Form labels */
.form-label[b-dwkf8v19wp] {
    margin-bottom: 0.25rem;
}

.form-label-custom[b-dwkf8v19wp] {
    color: #333;
    font-size: 0.875rem;
}

/* Form controls */
.form-control[b-dwkf8v19wp] {
    border: 1px solid #dee2e6;
    border-radius: 0.375rem;
    padding: 0.5rem 0.75rem;
}

.form-control-custom[b-dwkf8v19wp] {
    background-color: #f8f9fa;
}

.form-control:focus[b-dwkf8v19wp] {
    border-color: var(--brand-primary);
    box-shadow: 0 0 0 0.2rem rgba(31, 98, 141, 0.15);
}

/* Password requirements box */
.password-requirements[b-dwkf8v19wp] {
    background-color: #e7f3ff;
    border-left: 4px solid var(--brand-primary);
    padding: 1rem;
    border-radius: 0.375rem;
}

.password-requirements ul[b-dwkf8v19wp] {
    list-style-type: none;
    padding-left: 0;
}

.password-requirements li[b-dwkf8v19wp] {
    color: #333;
    line-height: 1.6;
}

.password-requirements li[b-dwkf8v19wp]::before {
    content: "• ";
    color: var(--brand-primary);
    font-weight: bold;
    margin-right: 0.5rem;
}

.password-requirements-title[b-dwkf8v19wp] {
    color: var(--brand-primary);
}

.password-requirements-icon[b-dwkf8v19wp] {
    font-size: 1.25rem;
}

.password-requirements-list[b-dwkf8v19wp] {
    font-size: 0.875rem;
}

/* Buttons */
.btn-save[b-dwkf8v19wp] {
    background-color: #e9ecef;
    color: #333;
    border: none;
    font-weight: 500;
    padding: 0.5rem 1.5rem;
}

.btn-save:hover:not(:disabled)[b-dwkf8v19wp] {
    background-color: #d6d9dc;
}

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

.btn-update[b-dwkf8v19wp] {
    background-color: var(--brand-primary);
    color: white;
    border: none;
    font-weight: 500;
    padding: 0.5rem 1.5rem;
}

.btn-update:hover:not(:disabled)[b-dwkf8v19wp] {
    background-color: var(--brand-primary-hover);
}

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

/* Bottom padding */
.modal-bottom-padding[b-dwkf8v19wp] {
    height: 1rem;
}

/* ========== Notification Preferences ========== */
.notification-col-headers[b-dwkf8v19wp] {
    padding-right: 0.25rem;
}

.notification-pref-row[b-dwkf8v19wp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 0;
    border-bottom: 1px solid #f0f0f0;
}

.notification-pref-row:last-of-type[b-dwkf8v19wp] {
    border-bottom: none;
}

.notification-pref-label[b-dwkf8v19wp] {
    font-size: 0.875rem;
    color: #333;
}

.notification-pref-desc[b-dwkf8v19wp] {
    font-size: 0.75rem;
    margin-top: 2px;
}

.notification-pref-row .form-check-input:checked[b-dwkf8v19wp] {
    background-color: var(--brand-primary, #1f628d);
    border-color: var(--brand-primary, #1f628d);
}

.notification-pref-row .form-check-input:focus[b-dwkf8v19wp] {
    box-shadow: 0 0 0 0.2rem rgba(31, 98, 141, 0.25);
}

/* /Components/Shared/AddAccountModal.razor.rz.scp.css */
/* ── Modal shell ─────────────────────────────────────────────────────────── */
.aam-content[b-j1optc6h84] {
    border: none;
    border-radius: var(--radius-card, 12px);
    overflow: hidden;
    box-shadow: var(--shadow-modal, 0 20px 60px rgba(15, 23, 42, 0.18));
}

.aam-accent[b-j1optc6h84] {
    height: 4px;
    background: var(--gradient-g2, linear-gradient(to right,
        var(--brand-primary, #1f628d),
        var(--brand-secondary, #01949f),
        var(--brand-accent, #76b243)));
}

.aam-header[b-j1optc6h84] {
    border-bottom: 1px solid var(--color-border, #e5e7eb);
    padding: 1rem 1.25rem;
}

.aam-body[b-j1optc6h84] { padding: 1.25rem 1.5rem; }

.aam-body--busy[b-j1optc6h84] {
    opacity: 0.6;
    pointer-events: none;
}

.aam-footer[b-j1optc6h84] {
    border-top: 1px solid var(--color-border, #e5e7eb);
    padding: 0.85rem 1.5rem;
}

.aam-body .form-label[b-j1optc6h84] {
    font-weight: 600;
    font-size: 0.85rem;
    color: var(--color-foreground, #1f2937);
    margin-bottom: 0.3rem;
}

/* ── Field-group cards ───────────────────────────────────────────────────── */
.aam-card[b-j1optc6h84] {
    border: 1px solid var(--color-border, #e5e7eb);
    border-radius: var(--radius-card, 10px);
    background: #fff;
    box-shadow: var(--shadow-card, 0 1px 3px rgba(0, 0, 0, 0.06));
    padding: 0.6rem 1rem 0.9rem;
    margin-bottom: 0.85rem;
}
.aam-card:last-child[b-j1optc6h84] { margin-bottom: 0; }

.aam-card__title[b-j1optc6h84] {
    display: flex;
    align-items: center;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--brand-primary, #1f628d);
    padding-bottom: 0.5rem;
    margin-bottom: 0.7rem;
    border-bottom: 1px solid var(--color-border, #eef1f4);
}

.aam-card__req[b-j1optc6h84] {
    margin-left: auto;
    background: var(--tier-c-warning-bg, #fef3c7);
    color: var(--tier-c-warning, #92400e);
    border-radius: 999px;
    padding: 0.05rem 0.5rem;
    font-size: 0.62rem;
    letter-spacing: 0.04em;
}

/* ── Section label ───────────────────────────────────────────────────────── */
.aam-section-label[b-j1optc6h84] {
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--brand-primary, #1f628d);
    margin-bottom: 0.5rem;
}

/* ── Assignment toggle ───────────────────────────────────────────────────── */
.aam-toggle[b-j1optc6h84] {
    display: flex;
    gap: 0.5rem;
}

.aam-toggle__btn[b-j1optc6h84] {
    flex: 1 1 0;
    padding: 0.6rem 1rem;
    border: 1px solid var(--color-border, #d3d9e3);
    border-radius: var(--radius-button, 8px);
    background: #fff;
    color: var(--color-foreground, #374151);
    font-weight: 600;
    font-size: 0.875rem;
    cursor: pointer;
    transition: border-color 150ms ease, background-color 150ms ease, color 150ms ease;
}

.aam-toggle__btn:hover[b-j1optc6h84] {
    border-color: var(--brand-primary, #1f628d);
    color: var(--brand-primary, #1f628d);
}

.aam-toggle__btn.is-selected[b-j1optc6h84] {
    background: var(--brand-primary, #1f628d);
    border-color: var(--brand-primary, #1f628d);
    color: var(--brand-primary-contrast, #fff);
}

/* ── Read-only / auto-filled inputs (City, State, NAICS) ─────────────────── */
.aam-readonly[b-j1optc6h84] {
    background-color: var(--color-muted, #f3f6fa);
    color: var(--color-foreground, #1f2933);
    cursor: default;
}
.aam-readonly:focus[b-j1optc6h84] {
    background-color: var(--color-muted, #f3f6fa);
    box-shadow: none;
    border-color: var(--color-border, #d3d9e3);
}

.aam-field-error[b-j1optc6h84] {
    color: var(--tier-c-destructive, #b91c1c);
    font-size: 0.8rem;
    margin-top: 0.25rem;
}

/* ── Buttons ─────────────────────────────────────────────────────────────── */
.aam-btn-primary[b-j1optc6h84] {
    background-color: var(--brand-primary, #1f628d);
    border: none;
    color: var(--brand-primary-contrast, #fff);
    font-weight: 600;
}
.aam-btn-primary:hover:not(:disabled)[b-j1optc6h84] { filter: brightness(0.94); color: #fff; }
.aam-btn-primary:disabled[b-j1optc6h84] { opacity: 0.55; }

.aam-cancel[b-j1optc6h84] { color: var(--color-muted-foreground, #6b7280); font-weight: 600; text-decoration: none; }
.aam-cancel:hover[b-j1optc6h84] { color: var(--brand-primary, #1f628d); }
/* /Components/Shared/BindFileUpload.razor.rz.scp.css */
.bind-file-upload[b-mf5p291u9z] {
    width: 100%;
}

.upload-container[b-mf5p291u9z] {
    padding: 0.5rem 0;
}

.uploaded-file-info[b-mf5p291u9z] {
    padding: 0.75rem;
    background-color: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 0.375rem;
    margin-top: 0.5rem;
}

.alert-sm[b-mf5p291u9z] {
    padding: 0.5rem;
    font-size: 0.875rem;
}

/* Designed upload box styles */
.upload-box-container[b-mf5p291u9z] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.upload-box[b-mf5p291u9z] {
    border: 2px dashed #cbd5e0;
    border-radius: 0.5rem;
    padding: 2rem 1rem;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s ease;
    background-color: #ffffff;
    min-height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.upload-box:hover:not(.uploading)[b-mf5p291u9z] {
    border-color: #0d6efd;
    background-color: #f8f9fa;
}

.upload-box.uploading[b-mf5p291u9z] {
    cursor: not-allowed;
    opacity: 0.7;
}

.upload-content[b-mf5p291u9z] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
}

.upload-icon[b-mf5p291u9z] {
    font-size: 2.5rem;
    color: #6c757d;
}

.upload-text[b-mf5p291u9z] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.click-text[b-mf5p291u9z] {
    color: #0d6efd;
    font-weight: 500;
    font-size: 0.95rem;
}

.file-types[b-mf5p291u9z] {
    color: #6c757d;
    font-size: 0.875rem;
}

.selected-file[b-mf5p291u9z] {
    color: #212529;
    font-weight: 500;
    font-size: 0.95rem;
}

.file-size[b-mf5p291u9z] {
    color: #6c757d;
    font-size: 0.875rem;
}

.btn-upload[b-mf5p291u9z] {
    align-self: flex-start;
    padding: 0.5rem 1.5rem;
    min-width: 120px;
}

/* Match Remove button size to Upload button */
.btn-upload + .btn-danger[b-mf5p291u9z] {
    padding: 0.7rem 1.5rem;
    min-width: 120px;
}
/* /Components/Shared/ClientAddFormModal.razor.rz.scp.css */
/* ClientEditForm Scoped Styles */

/* Alert Styles */
.error-alert[b-pqkxzh88hl] {
    border-left: 4px solid #dc2626;
    background-color: #fef2f2;
    border-radius: 8px;
}

.error-alert-icon[b-pqkxzh88hl] {
    color: #dc2626;
    font-size: 1.125rem;
}

.error-alert-title[b-pqkxzh88hl] {
    color: #991b1b;
    font-size: 0.875rem;
}

.error-alert-list[b-pqkxzh88hl] {
    font-size: 0.8125rem;
    color: #991b1b;
}

/* Form Labels */
.form-label[b-pqkxzh88hl] {
    color: var(--foreground);
    font-size: 0.9375rem; /* 15px - hierarchically larger than inputs */
    margin-bottom: 0.5rem;
    font-weight: 600;
    line-height: 1.5;
}

.required-indicator[b-pqkxzh88hl] {
    color: #dc2626;
    margin-left: 0.25rem;
    font-size: 0.9375rem;
}

.optional-text[b-pqkxzh88hl] {
    color: #6b7280;
    font-weight: normal;
    font-size: 0.8125rem;
    margin-left: 0.5rem;
}

/* Form Controls */
.form-control[b-pqkxzh88hl],
.form-select[b-pqkxzh88hl] {
    font-size: 0.875rem; /* 14px - balanced with labels */
    padding: 0.5rem 0.75rem; /* Compact but comfortable padding */
    border-radius: 0.375rem;
    line-height: 1.5;
    height: auto;
}

.form-control:focus[b-pqkxzh88hl],
.form-select:focus[b-pqkxzh88hl] {
    border-color: var(--brand-primary);
    box-shadow: 0 0 0 0.2rem rgba(31, 98, 141, 0.15);
    outline: none;
}

/* General placeholder styling - smaller and more muted */
.form-control[b-pqkxzh88hl]::placeholder {
    color: #d1d5db;
    font-size: 0.75rem; /* Smaller than input text */
    font-weight: 400;
}

/* Revenue Input Placeholder - smaller and more muted */
.form-control.revenue-input[b-pqkxzh88hl]::placeholder {
    color: #d1d5db;
    font-size: 0.75rem; /* Smaller than default */
    font-weight: 400;
}

/* Read-only Fields */
.readonly-field[b-pqkxzh88hl] {
    background-color: #e9ecef;
    cursor: not-allowed;
}

/* Helper Text */
.helper-text[b-pqkxzh88hl] {
    font-size: 0.75rem;
    color: #6b7280;
    margin-top: 0.25rem;
    display: block;
    line-height: 1.4;
}

/* Effective Date Section */
.date-wrapper[b-pqkxzh88hl] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.date-input[b-pqkxzh88hl] {
    flex: 1;
}

.tbd-checkbox-wrapper[b-pqkxzh88hl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0;
}

.tbd-checkbox[b-pqkxzh88hl] {
    margin: 0;
    cursor: pointer;
}

.tbd-label[b-pqkxzh88hl] {
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    margin: 0;
    white-space: nowrap;
    color: var(--foreground);
}

/* Action Buttons */
.action-buttons[b-pqkxzh88hl] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--brand-border);
}

.btn-cancel[b-pqkxzh88hl],
.btn-submit[b-pqkxzh88hl] {
    border-radius: var(--radius-button, 8px);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.625rem 1.5rem;
    font-size: 0.875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    min-width: 120px;
    border: none;
    transition: all 0.2s ease-in-out;
    cursor: pointer;
}

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

.btn-cancel:hover:not(:disabled)[b-pqkxzh88hl] {
    background-color: var(--brand-primary-hover);
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(31, 98, 141, 0.2);
}

.btn-submit[b-pqkxzh88hl] {
    background-color: var(--brand-accent);
    color: white;
}

.btn-submit:hover:not(:disabled)[b-pqkxzh88hl] {
    background-color: var(--brand-accent-hover);
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(103, 183, 164, 0.3);
}

.btn-cancel:disabled[b-pqkxzh88hl],
.btn-submit:disabled[b-pqkxzh88hl] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-cancel i[b-pqkxzh88hl],
.btn-submit i[b-pqkxzh88hl] {
    font-size: 1rem;
}

.spinner-border-sm[b-pqkxzh88hl] {
    width: 1rem;
    height: 1rem;
    border-width: 0.125rem;
}

/* Spacing */
.field-group[b-pqkxzh88hl] {
    margin-bottom: 1rem;
}

.field-group-small[b-pqkxzh88hl] {
    margin-bottom: 0.625rem;
}

.field-group-last[b-pqkxzh88hl] {
    margin-bottom: 1.5rem;
}

/* Address Row */
.city-state-row[b-pqkxzh88hl] {
    display: flex;
    gap: 0.5rem;
}

.city-col[b-pqkxzh88hl] {
    flex: 0 0 50%;
}

.state-col[b-pqkxzh88hl] {
    flex: 0 0 50%;
}

/* Validation Messages */
[b-pqkxzh88hl] .validation-message,
[b-pqkxzh88hl] .invalid-feedback {
    color: #dc2626;
    font-size: 0.75rem; /* Match helper-text size */
    margin-top: 0.25rem;
    display: flex;
    align-items: flex-start;
    gap: 0.25rem;
    line-height: 1.4;
}

[b-pqkxzh88hl] .validation-message::before {
    content: "⚠";
    flex-shrink: 0;
    font-size: 0.75rem;
}

/* Invalid field styling - only show border, not background */
.form-control.is-invalid[b-pqkxzh88hl],
.form-select.is-invalid[b-pqkxzh88hl] {
    border-color: #dc2626;
    background-image: none; /* Remove Bootstrap's default validation icon */
    padding-right: 0.75rem; /* Reset padding from Bootstrap validation */
}

.form-control.is-invalid:focus[b-pqkxzh88hl],
.form-select.is-invalid:focus[b-pqkxzh88hl] {
    border-color: #dc2626;
    box-shadow: 0 0 0 0.2rem rgba(220, 38, 38, 0.15);
}

/* Modal Scroll Container */
.form-scroll-container[b-pqkxzh88hl] {
    max-height: 55vh;
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 0.5rem;
}

/* Custom Thin Scrollbar */
.custom-scrollbar[b-pqkxzh88hl] {
    scrollbar-width: thin;
    scrollbar-color: #d1d5db transparent;
}

.custom-scrollbar[b-pqkxzh88hl]::-webkit-scrollbar {
    width: 6px;
}

.custom-scrollbar[b-pqkxzh88hl]::-webkit-scrollbar-track {
    background: transparent;
}

.custom-scrollbar[b-pqkxzh88hl]::-webkit-scrollbar-thumb {
    background-color: #d1d5db;
    border-radius: 20px;
    border: 2px solid transparent;
    background-clip: content-box;
}

.custom-scrollbar[b-pqkxzh88hl]::-webkit-scrollbar-thumb:hover {
    background-color: #9ca3af;
}
/* /Components/Shared/ClientConfigurationSkeleton.razor.rz.scp.css */
/* ClientConfigurationSkeleton Component Scoped Styles */
/* Isolated CSS for skeleton loading animations */

.skeleton-container[b-821n9xj4tr] {
    animation: pulse-b-821n9xj4tr 1.5s ease-in-out infinite;
}

@keyframes pulse-b-821n9xj4tr {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.6;
    }
}

/* Base skeleton styles with shimmer effect */
.skeleton[b-821n9xj4tr] {
    background: linear-gradient(90deg, #e0e0e0 25%, #f0f0f0 50%, #e0e0e0 75%);
    background-size: 200% 100%;
    animation: shimmer-b-821n9xj4tr 1.5s infinite;
    border-radius: 4px;
}

@keyframes shimmer-b-821n9xj4tr {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

/* Skeleton element variants */
.skeleton-title[b-821n9xj4tr] {
    height: 2.5rem;
    width: 70%;
    margin-bottom: 1.5rem;
}

.skeleton-label[b-821n9xj4tr] {
    height: 1rem;
    width: 60%;
    margin-bottom: 0.5rem;
}

.skeleton-value[b-821n9xj4tr] {
    height: 1.25rem;
    width: 80%;
}

.skeleton-line[b-821n9xj4tr] {
    height: 1rem;
    width: 100%;
}

.skeleton-button[b-821n9xj4tr] {
    height: 3.5rem;
    width: 100%;
    border-radius: 1rem;
}

.skeleton-logo[b-821n9xj4tr] {
    height: 160px;
    width: 100%;
    border-radius: 1rem;
}

.skeleton-input[b-821n9xj4tr] {
    height: 2.5rem;
    width: 100%;
    border-radius: 0.375rem;
    margin-top: 0.25rem;
}

.skeleton-radio[b-821n9xj4tr] {
    height: 1.25rem;
    width: 1.25rem;
    border-radius: 50%;
    flex-shrink: 0;
}

.skeleton-submit-button[b-821n9xj4tr] {
    height: 3.5rem;
    width: 280px;
    border-radius: 50px;
}

/* Card styling for skeleton state */
[b-821n9xj4tr] .card {
    transition: all 0.3s ease;
}

/* /Components/Shared/ClientEditModal.razor.rz.scp.css */
/* ClientEditModal Scoped Styles */

/* Alert Styles */
.error-alert[b-jo3shobufz] {
    border-left: 4px solid #dc2626;
    background-color: #fef2f2;
    border-radius: 8px;
    margin-bottom: 1rem;
}

.error-alert-icon[b-jo3shobufz] {
    color: #dc2626;
    font-size: 1.125rem;
}

.error-alert-title[b-jo3shobufz] {
    color: #991b1b;
    font-size: 0.875rem;
}

.error-alert-list[b-jo3shobufz] {
    font-size: 0.8125rem;
    color: #991b1b;
}

/* Form validation states */
.form-control.is-invalid[b-jo3shobufz] {
    border-color: #dc2626;
    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='%23dc2626'%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='%23dc2626' 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-control.is-valid[b-jo3shobufz] {
    border-color: #059669;
    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 8 8'%3e%3cpath fill='%23059669' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%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);
}

.invalid-feedback[b-jo3shobufz] {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.875em;
    color: #dc2626;
}

.invalid-feedback.d-block[b-jo3shobufz] {
    display: block;
}

/* Required indicator */
.required-indicator[b-jo3shobufz] {
    color: #dc3545;
    margin-left: 0.25rem;
}

/* Helper for field groups */
.field-group-small[b-jo3shobufz] {
    margin-bottom: 0.625rem;
}

/* Form controls */
.form-control[b-jo3shobufz] {
    border: 1px solid #dee2e6;
    border-radius: 0.375rem;
    padding: 0.5rem 0.75rem;
}

.form-control:focus[b-jo3shobufz] {
    border-color: #1f628d;
    box-shadow: 0 0 0 0.2rem rgba(31, 98, 141, 0.15);
}

.form-label[b-jo3shobufz] {
    margin-bottom: 0.25rem;
}

/* Custom Scrollbar Styles */
.custom-scrollbar[b-jo3shobufz]::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

.custom-scrollbar[b-jo3shobufz]::-webkit-scrollbar-track {
    background: transparent;
}

.custom-scrollbar[b-jo3shobufz]::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.15);
    border-radius: 10px;
}

.custom-scrollbar[b-jo3shobufz]::-webkit-scrollbar-thumb:hover {
    background-color: rgba(0, 0, 0, 0.25);
}
/* /Components/Shared/ClientTable.razor.rz.scp.css */
.client-management-table thead th[b-lc622uqalb] {
    background-color: #f8f9fa;
    color: #495057;
    font-weight: 700;
    text-transform: capitalize;
    font-size: 1.5rem;
    letter-spacing: 0.5px;
    padding: 1rem;
    border-bottom: 2px solid #dee2e6;
}

.client-management-table tbody tr[b-lc622uqalb] {
    background-color: #ffffff;
    transition: all 0.2s ease;
}

.client-management-table tbody tr:hover[b-lc622uqalb] {
    background-color: #f8f9fa;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.client-management-table tbody td[b-lc622uqalb] {
    padding: 1rem;
    vertical-align: middle;
    border-bottom: 1px solid #e9ecef;
}

/* Company column width and text overflow handling */
.client-management-table tbody td:first-child[b-lc622uqalb],
.client-management-table thead th:first-child[b-lc622uqalb] {
    max-width: 250px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.client-management-table tbody td:first-child strong[b-lc622uqalb] {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Status Badge Styles */
.status-badge-configured[b-lc622uqalb] {
    background-color: var(--brand-accent);
}

.status-badge-started[b-lc622uqalb] {
    background-color: var(--brand-primary);
    color: white;
}

/* Action Button Styles */
.action-btn-declined[b-lc622uqalb] {
    background-color: #dc3545;
    color: white;
    border: none;
}

.action-btn-declined:hover[b-lc622uqalb] {
    background-color: #c82333;
    color: white;
}

.action-btn-configured[b-lc622uqalb] {
    background-color: var(--brand-accent);
    color: white;
    border: none;
}

.action-btn-configured:hover[b-lc622uqalb] {
    background-color: var(--brand-accent);
    color: white;
}

.action-btn-started[b-lc622uqalb] {
    background-color: var(--brand-primary);
    color: white;
    border: none;
}

.action-btn-started:hover[b-lc622uqalb] {
    background-color: var(--brand-primary);
    color: white;
}

.action-btn-bound[b-lc622uqalb] {
    background-color: var(--brand-accent);
    color: white;
    border: none;
}

.action-btn-bound:hover[b-lc622uqalb] {
    background-color: var(--brand-accent-hover);
    color: white;
}

/* /Components/Shared/Coverage.razor.rz.scp.css */
.coverage-section[b-8qre1ityjg] {
    margin-bottom: 0;
}

.section-title[b-8qre1ityjg] {
    background-color: var(--brand-primary);
    color: white;
    padding: 12px 20px;
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    text-transform: capitalize;
    letter-spacing: 0.5px;
    border-radius: 5px 5px 0px 0px;
}

.coverage-list[b-8qre1ityjg] {
    padding: 15px 20px;
    border: 1px solid rgb(203, 213, 225);
}
/* /Components/Shared/CoverageItem.razor.rz.scp.css */
.coverage-item[b-gof7z26n1j] {
    display: flex;
    align-items: center;
    margin-bottom: 8px;
    font-size: 1rem;
    color: #2d3a43;
    gap: 10px;
}

    .coverage-item:last-child[b-gof7z26n1j] {
        margin-bottom: 0;
    }

.max-exclusive[b-gof7z26n1j] {
    color: var(--brand-accent);
    font-weight: 700;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
/* /Components/Shared/CrossGroupTransferModal.razor.rz.scp.css */
/* ── Modal shell ─────────────────────────────────────────────────────────── */
.xfer-content[b-311k99x6qy] {
    border: none;
    border-radius: var(--radius-card, 12px);
    overflow: hidden;
    box-shadow: var(--shadow-modal, 0 20px 60px rgba(15, 23, 42, 0.18));
}

.xfer-accent[b-311k99x6qy] {
    height: 4px;
    background: var(--gradient-g2, linear-gradient(to right,
        var(--brand-primary, #1f628d),
        var(--brand-secondary, #01949f),
        var(--brand-accent, #76b243)));
}

.xfer-header[b-311k99x6qy] {
    border-bottom: 1px solid var(--color-border, #e5e7eb);
    padding: 1rem 1.25rem;
    align-items: flex-start;
}

.xfer-body[b-311k99x6qy] { padding: 1.25rem 1.5rem; }

.xfer-body--busy[b-311k99x6qy] {
    opacity: 0.6;
    pointer-events: none;
}

.xfer-footer[b-311k99x6qy] {
    border-top: 1px solid var(--color-border, #e5e7eb);
    padding: 0.85rem 1.5rem;
}

/* ── Section label ───────────────────────────────────────────────────────── */
.xfer-section-label[b-311k99x6qy] {
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--brand-primary, #1f628d);
    margin-bottom: 0.5rem;
}

/* ── Mode toggle ─────────────────────────────────────────────────────────── */
.xfer-toggle[b-311k99x6qy] {
    display: flex;
    gap: 0.5rem;
}

.xfer-toggle__btn[b-311k99x6qy] {
    flex: 1 1 0;
    padding: 0.6rem 1rem;
    border: 1px solid var(--color-border, #d3d9e3);
    border-radius: var(--radius-button, 8px);
    background: #fff;
    color: var(--color-foreground, #374151);
    font-weight: 600;
    font-size: 0.875rem;
    cursor: pointer;
    transition: border-color 150ms ease, background-color 150ms ease, color 150ms ease;
}

.xfer-toggle__btn:hover[b-311k99x6qy] {
    border-color: var(--brand-primary, #1f628d);
    color: var(--brand-primary, #1f628d);
}

.xfer-toggle__btn.is-selected[b-311k99x6qy] {
    background: var(--brand-primary, #1f628d);
    border-color: var(--brand-primary, #1f628d);
    color: var(--brand-primary-contrast, #fff);
}

/* ── Agent picker ────────────────────────────────────────────────────────── */
.agent-picker[b-311k99x6qy] {
    max-height: 280px;
    overflow-y: auto;
    border-color: var(--color-border, #e5e7eb) !important;
    border-radius: var(--radius-button, 8px) !important;
}

.agent-picker-row[b-311k99x6qy] {
    cursor: pointer;
    border-bottom: 1px solid #f1f5f9;
    transition: background-color 120ms ease;
}

.agent-picker-row:last-child[b-311k99x6qy] { border-bottom: none; }
.agent-picker-row:hover[b-311k99x6qy] { background-color: var(--brand-primary-alpha-5, rgba(31, 98, 141, 0.05)); }

.agent-picker-row--selected[b-311k99x6qy] {
    background-color: var(--brand-primary-alpha-10, rgba(31, 98, 141, 0.10));
}

.agent-picker-row .form-check-input:checked[b-311k99x6qy] {
    background-color: var(--brand-primary, #1f628d);
    border-color: var(--brand-primary, #1f628d);
}

/* ── Warning callout ─────────────────────────────────────────────────────── */
.xfer-warning[b-311k99x6qy] {
    display: flex;
    align-items: flex-start;
    gap: 0.25rem;
    background: var(--tier-c-warning-bg, #fef3c7);
    border: 1px solid var(--tier-c-warning-border, #fde68a);
    color: var(--tier-c-warning, #92400e);
    border-radius: var(--radius-button, 8px);
    padding: 0.65rem 0.85rem;
    font-size: 0.8rem;
}

/* ── Buttons ─────────────────────────────────────────────────────────────── */
.xfer-btn-primary[b-311k99x6qy] {
    background-color: var(--brand-primary, #1f628d);
    border: none;
    color: var(--brand-primary-contrast, #fff);
    font-weight: 600;
}
.xfer-btn-primary:hover:not(:disabled)[b-311k99x6qy] { filter: brightness(0.94); color: #fff; }
.xfer-btn-primary:disabled[b-311k99x6qy] { opacity: 0.55; }

.xfer-cancel[b-311k99x6qy] { color: var(--color-muted-foreground, #6b7280); font-weight: 600; text-decoration: none; }
.xfer-cancel:hover[b-311k99x6qy] { color: var(--brand-primary, #1f628d); }
/* /Components/Shared/DashboardHeader.razor.rz.scp.css */
.dashboard-header[b-hdufotx3m1] {
    /* Background is set via inline style in component (GetHeaderStyle).
       Sizing + padding owned by the shared .fig-header--compact class
       (wwwroot/css/figma-design-system.css §16) per audit Header-1 + Header-3
       so they apply uniformly across surfaces that use this component. */
    color: white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    margin-bottom: 0;
    position: relative;
    z-index: var(--z-header, 1025); /* establishes stacking context so the profile dropdown clears the sticky nav ribbon */
}

.dashboard-header img[b-hdufotx3m1] {
    position: relative;
    z-index: 2;
}

.dashboard-header .text-white[b-hdufotx3m1] {
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    position: relative;
    z-index: 2;
}

.dashboard-header .container-fluid[b-hdufotx3m1] {
    position: relative;
    z-index: 2;
}

.dropdown-toggle[b-hdufotx3m1] {
    font-weight: 600;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

.dropdown-toggle:hover[b-hdufotx3m1] {
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.dropdown-menu[b-hdufotx3m1] {
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.dropdown-item[b-hdufotx3m1] {
    transition: all 0.2s ease;
}

.dropdown-item:hover[b-hdufotx3m1] {
    background-color: var(--brand-accent);
    color: white;
}

/* /Components/Shared/DeclineQuoteDialog.razor.rz.scp.css */
/* Decline Quote Dialog Styles */

.decline-quote-modal[b-hn1tuurnit] {
    border-radius: 12px;
    border: none;
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.15);
}

    .decline-quote-modal .modal-header[b-hn1tuurnit] {
            padding: 1.1rem 1.5rem;
            border-bottom: 1px solid #eef2f7;
            background-color: #fff;
            border-top-left-radius: 12px;
            border-top-right-radius: 12px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.75rem;
        }

        .decline-quote-modal .modal-title[b-hn1tuurnit] {
            font-size: 1.2rem;
            font-weight: 600;
            color: #0f172a;
            margin: 0;
        }

    .decline-quote-modal .btn-close[b-hn1tuurnit] {
        padding: 0.4rem;
        margin: -0.25rem -0.25rem -0.25rem auto;
    }

    .decline-quote-modal .modal-body[b-hn1tuurnit] {
        padding: 1.5rem;
        background-color: #fff;
    }

.modal-title-stack[b-hn1tuurnit] {
    display: flex;
    gap: 1rem;
}

.intro-icon[b-hn1tuurnit] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: #ff9f68;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 1.1rem;
}

.intro-icon i[b-hn1tuurnit] {
    font-size: 1.1rem;
}

.modal-subtitle[b-hn1tuurnit] {
    margin: 0.15rem 0 0;
    color: #475467;
    font-size: 0.9rem;
}

.reason-section[b-hn1tuurnit] {
    margin-bottom: 1.25rem;
}

    .reason-section .form-label[b-hn1tuurnit] {
        display: flex;
        align-items: center;
        gap: 0.25rem;
        font-weight: 600;
        color: #0f172a;
        margin-bottom: 0.15rem;
        font-size: 0.95rem;
    }

.required[b-hn1tuurnit] {
    color: #f04438;
    font-weight: 600;
}

.form-helper[b-hn1tuurnit] {
    margin: 0 0 0.75rem;
    color: #667085;
    font-size: 0.85rem;
}

.reason-options[b-hn1tuurnit] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.reason-option[b-hn1tuurnit] {
    display: flex;
    align-items: flex-start;
    gap: 0.65rem;
    padding: 0.35rem 0;
    border: none;
    border-radius: 8px;
    font-size: 0.95rem;
    color: #0f172a;
    cursor: pointer;
}

    .reason-option input[type="checkbox"][b-hn1tuurnit] {
        margin-top: 0.2rem;
        width: 18px;
        height: 18px;
        border-radius: 4px;
        accent-color: #f87171;
    }

    .reason-option.selected span[b-hn1tuurnit] {
        font-weight: 600;
    }

.validation-error[b-hn1tuurnit] {
    margin-top: 0.4rem;
    color: #d92d20;
    font-size: 0.85rem;
}

.notes-section .form-label[b-hn1tuurnit] {
    font-weight: 600;
    color: #0f172a;
}

.notes-section[b-hn1tuurnit] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.decline-textarea[b-hn1tuurnit] {
    border: 1px solid #d0d5dd;
    border-radius: 10px;
    padding: 0.75rem;
    font-size: 0.95rem;
    line-height: 1.5;
    resize: vertical;
    min-height: 110px;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

    .decline-textarea:focus[b-hn1tuurnit] {
        border-color: #7f56d9;
        outline: 0;
        box-shadow: 0 0 0 3px rgba(127, 86, 217, 0.15);
    }

    .decline-textarea[b-hn1tuurnit]::placeholder {
        color: #98a2b3;
    }

.decline-quote-modal .modal-footer[b-hn1tuurnit] {
    padding: 1.25rem 1.5rem;
    border-top: 1px solid #eef2f7;
    background-color: #fff;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
}

.cancel-btn[b-hn1tuurnit] {
    min-width: 100px;
    font-weight: 500;
    color: #475467;
    background-color: #fff;
    border: 1px solid #e4e7ec;
    border-radius: var(--radius-button, 8px) !important;
}

.confirm-decline-btn[b-hn1tuurnit] {
    min-width: 140px;
    height: 2.5rem !important;
    padding: 0.5rem 1.5rem;
    font-weight: 600;
    border-radius: var(--radius-button, 8px) !important;
    border: none;
    background: linear-gradient(135deg, #f87171 0%, #f43f5e 100%);
    color: #fff;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    text-transform: none !important;
}

    .confirm-decline-btn:hover:not(:disabled)[b-hn1tuurnit] {
        transform: translateY(-1px);
        box-shadow: 0 12px 20px rgba(244, 63, 94, 0.3);
    }

    .confirm-decline-btn:disabled[b-hn1tuurnit] {
        opacity: 0.6;
        cursor: not-allowed;
        box-shadow: none;
    }

/* Responsive adjustments */
@media (max-width: 576px) {
    .decline-quote-modal .modal-header[b-hn1tuurnit],
    .decline-quote-modal .modal-body[b-hn1tuurnit],
    .decline-quote-modal .modal-footer[b-hn1tuurnit] {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .reason-option[b-hn1tuurnit] {
        flex-direction: row;
        align-items: flex-start;
    }

    .decline-quote-modal .modal-footer[b-hn1tuurnit] {
        flex-direction: column;
        align-items: stretch;
    }

    .cancel-btn[b-hn1tuurnit],
    .confirm-decline-btn[b-hn1tuurnit] {
        width: 100%;
        min-width: unset;
    }
}
/* /Components/Shared/EmailTemplateCard.razor.rz.scp.css */
.skeleton-input[b-kn3k4wtelh],
.skeleton-textarea[b-kn3k4wtelh],
.skeleton-button[b-kn3k4wtelh] {
    background: linear-gradient(90deg, #e0e0e0 25%, #f0f0f0 50%, #e0e0e0 75%);
    background-size: 200% 100%;
    animation: shimmer-b-kn3k4wtelh 1.5s infinite;
    border-radius: 4px;
}

.skeleton-input[b-kn3k4wtelh] {
    height: 38px;
    width: 100%;
    border-radius: 6px;
}

.skeleton-textarea[b-kn3k4wtelh] {
    width: 100%;
    border-radius: 8px;
}

.skeleton-button[b-kn3k4wtelh] {
    height: 45px;
    width: 100%;
    border-radius: 20px;
}

@keyframes shimmer-b-kn3k4wtelh {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

/* /Components/Shared/InviteLinkHandler.razor.rz.scp.css */
.invite-link-content[b-up3pvra8b3] {
    position: relative;
    z-index: 5;
    padding: 20px;
    min-height: calc(100vh - 180px);
    display: flex;
    justify-content: center;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .invite-link-content[b-up3pvra8b3] {
        padding: 10px;
    }
}
/* /Components/Shared/LoadingSpinner.razor.rz.scp.css */
.loading-spinner[b-3shrigv8q3] {
    align-items: center;
    justify-content: flex-start;
    padding: 0.5rem;
}

.loading-text[b-3shrigv8q3] {
    font-size: 0.9rem;
    color: #6c757d;
}

.spinner-border-sm[b-3shrigv8q3] {
    width: 1rem;
    height: 1rem;
}
/* /Components/Shared/MatchReportFormsModal.razor.rz.scp.css */
/* MatchReportFormsModal Scoped Styles */

/* Modal Structure */
.modal-content[b-cm20jp5ee1] {
    border-radius: 12px;
}

.modal-header[b-cm20jp5ee1] {
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom: 0;
}

.modal-title[b-cm20jp5ee1] {
    color: var(--brand-primary, #1f628d);
}

.modal-body[b-cm20jp5ee1] {
    max-height: 70vh;
    overflow-y: auto;
}

/* Search Input Wrapper */
.position-relative[b-cm20jp5ee1] {
    position: relative;
}

/* Search Icon */
.search-icon[b-cm20jp5ee1] {
    position: absolute;
    left: 1rem;
    top: 50%;
    transform: translateY(-50%);
    color: #6c757d;
    z-index: 10;
    pointer-events: none;
}

/* Search Input */
.search-input[b-cm20jp5ee1] {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
    border-radius: 0.375rem;
    font-size: 0.875rem;
}

.search-input:focus[b-cm20jp5ee1] {
    border-color: var(--brand-secondary, #01949f);
    box-shadow: 0 0 0 0.2rem rgba(1, 148, 159, 0.15);
    outline: none;
}

.search-input[b-cm20jp5ee1]::placeholder {
    color: #d1d5db;
    font-size: 0.8125rem;
}

/* Clear Icon */
.clear-icon[b-cm20jp5ee1] {
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    color: #6c757d;
    cursor: pointer;
    z-index: 10;
    font-size: 1.2rem;
    transition: color 0.2s ease;
}

.clear-icon:hover[b-cm20jp5ee1] {
    color: #495057;
}

/* Table Styling */
.table[b-cm20jp5ee1] {
    border-radius: 12px;
    overflow: hidden; /* Ensures content respects rounded corners */
}

.table thead tr th[b-cm20jp5ee1] {
    background-color: var(--brand-muted, #76b243);
}

.table thead th[b-cm20jp5ee1] {
    padding: 0.75rem;
    font-weight: 600;
    border-bottom: 1px solid var(--brand-muted);
}

.table thead th:first-child[b-cm20jp5ee1] {
    border-top-left-radius: 12px;
}

.table thead th:last-child[b-cm20jp5ee1] {
    border-top-right-radius: 12px;
}

.table tbody tr:last-child td:first-child[b-cm20jp5ee1] {
    border-bottom-left-radius: 12px;
}

.table tbody tr:last-child td:last-child[b-cm20jp5ee1] {
    border-bottom-right-radius: 12px;
}

.table tbody td[b-cm20jp5ee1] {
    padding: 0.75rem;
    vertical-align: middle;
    border-bottom: 1px solid var(--brand-muted);
}

/* Badge Styling */
.badge[b-cm20jp5ee1] {
    background-color: var(--brand-muted-contrast, #01949f);
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.375rem 0.75rem;
    border-radius: 0.25rem;
    letter-spacing: 0.025em;
}

/* Empty State */
.empty-state-icon[b-cm20jp5ee1] {
    font-size: 3rem;
    color: var(--brand-primary, #1f628d);
}

.empty-state-icon.search-empty[b-cm20jp5ee1] {
    opacity: 0.5;
}

.empty-state-icon.no-forms[b-cm20jp5ee1] {
    color: var(--brand-accent, #76b243);
}

/* Processing State */
.empty-state-icon.processing[b-cm20jp5ee1] {
    color: var(--brand-secondary, #01949f);
    animation: pulse-b-cm20jp5ee1 2s ease-in-out infinite;
}

.processing-spinner-container[b-cm20jp5ee1] {
    display: flex;
    justify-content: center;
    align-items: center;
}

@keyframes pulse-b-cm20jp5ee1 {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.4; }
}

/* Responsive Adjustments */
@media (max-width: 768px) {
    .search-input[b-cm20jp5ee1] {
        font-size: 0.8125rem;
        padding-left: 2.25rem;
        padding-right: 2.25rem;
    }

    .search-icon[b-cm20jp5ee1] {
        left: 0.75rem;
        font-size: 0.875rem;
    }

    .clear-icon[b-cm20jp5ee1] {
        right: 0.75rem;
        font-size: 1rem;
    }

    .badge[b-cm20jp5ee1] {
        font-size: 0.6875rem;
        padding: 0.25rem 0.5rem;
    }

    .table thead th[b-cm20jp5ee1],
    .table tbody td[b-cm20jp5ee1] {
        padding: 0.5rem;
        font-size: 0.875rem;
    }
}

/* Modal Footer Button */
.btn-close-modal[b-cm20jp5ee1] {
    color: var(--brand-accent-contrast, white);
    background-color: var(--brand-accent, #76b243);
    border: none;
    transition: all 0.2s ease;
}

.btn-close-modal:hover[b-cm20jp5ee1] {
    background-color: var(--brand-accent-hover, #6aa03a);
    color: var(--brand-accent-contrast, white);
}

/* Scrollbar Styling (Optional - for better UX) */
.modal-body[b-cm20jp5ee1]::-webkit-scrollbar {
    width: 8px;
}

.modal-body[b-cm20jp5ee1]::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.modal-body[b-cm20jp5ee1]::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 10px;
}

.modal-body[b-cm20jp5ee1]::-webkit-scrollbar-thumb:hover {
    background: #555;
}
/* /Components/Shared/NotificationBell.razor.rz.scp.css */
/* ========== Bell Button ========== */
.notification-bell-wrapper[b-xgxdyjosva] {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.notification-bell-btn[b-xgxdyjosva] {
    background: transparent;
    border: none;
    color: white;
    font-size: 1.5rem;
    padding: 0.5rem 0.6rem;
    position: relative;
    transition: transform 0.15s ease;
    line-height: 1;
}

.notification-bell-btn:hover[b-xgxdyjosva] {
    transform: scale(1.15);
    color: white;
}

.notification-badge[b-xgxdyjosva] {
    position: absolute;
    top: -2px;
    right: -4px;
    background-color: #dc3545;
    color: white;
    font-size: 0.7rem;
    font-weight: 700;
    min-width: 22px;
    height: 22px;
    line-height: 22px;
    border-radius: 11px;
    text-align: center;
    padding: 0 5px;
    pointer-events: none;
}

/* ========== Modal Backdrop ========== */
.notification-modal-backdrop[b-xgxdyjosva] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1049;
}

/* ========== Modal ========== */
.notification-modal[b-xgxdyjosva] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1050;
    width: 520px;
    max-width: 95vw;
    max-height: 80vh;
    background: white;
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.notification-modal-header[b-xgxdyjosva] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #eee;
    flex-shrink: 0;
}

.mark-all-btn[b-xgxdyjosva] {
    display: inline-flex;
    align-items: center;
    font-size: 0.8rem;
    font-weight: 600;
    line-height: 1;
    padding: 0.35rem 0.75rem;
    border-radius: 999px;
    color: var(--brand-primary, #1f628d);
    background-color: transparent;
    border: 1px solid var(--brand-primary, #1f628d);
    transition: background-color 0.15s ease, color 0.15s ease;
}

.mark-all-btn:hover:not(:disabled)[b-xgxdyjosva] {
    color: white;
    background-color: var(--brand-primary, #1f628d);
}

.mark-all-btn:disabled[b-xgxdyjosva] {
    opacity: 0.65;
    cursor: wait;
}

.notification-modal-body[b-xgxdyjosva] {
    overflow-y: auto;
    flex: 1;
    min-height: 200px;
}

/* ========== Notification Items ========== */
.notification-item[b-xgxdyjosva] {
    padding: 0.85rem 1.25rem;
    border-bottom: 1px solid #f0f0f0;
    cursor: pointer;
    transition: background-color 0.15s ease;
}

.notification-item:hover[b-xgxdyjosva] {
    background-color: #f8f9fa;
}

.notification-item.unread[b-xgxdyjosva] {
    background-color: #f0f7ff;
}

.notification-item.unread:hover[b-xgxdyjosva] {
    background-color: #e4effc;
}

.notification-title[b-xgxdyjosva] {
    font-weight: 600;
    font-size: 0.875rem;
    color: #333;
    margin-bottom: 2px;
}

.notification-message[b-xgxdyjosva] {
    font-size: 0.8rem;
    color: #666;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.notification-time[b-xgxdyjosva] {
    font-size: 0.7rem;
    color: #999;
    margin-top: 4px;
}

.unread-dot[b-xgxdyjosva] {
    width: 8px;
    height: 8px;
    min-width: 8px;
    border-radius: 50%;
    background-color: var(--brand-primary, #1f628d);
    margin-top: 6px;
}

/* ========== Pagination Footer ========== */
.notification-modal-footer[b-xgxdyjosva] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    padding: 0.75rem 1.25rem;
    border-top: 1px solid #eee;
    flex-shrink: 0;
}

.pagination-btn[b-xgxdyjosva] {
    width: 32px;
    height: 32px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.pagination-info[b-xgxdyjosva] {
    font-size: 0.8rem;
    color: #666;
}

/* ========== Section headers (Wave 7 split) ========== */
.notification-section-header[b-xgxdyjosva] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem 0.35rem;
    background: #f6f7f9;
    border-bottom: 1px solid #e5e7eb;
    position: sticky;
    top: 0;
    z-index: 1;
}

.notification-section-title[b-xgxdyjosva] {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #4b5563;
}

.dismiss-all-btn[b-xgxdyjosva] {
    display: inline-flex;
    align-items: center;
    font-size: 0.72rem;
    font-weight: 600;
    line-height: 1;
    padding: 0.2rem 0.6rem;
    border-radius: 999px;
    color: #6b7280;
    background-color: transparent;
    border: 1px solid #d1d5db;
    transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.dismiss-all-btn:hover:not(:disabled)[b-xgxdyjosva] {
    color: white;
    background-color: #dc3545;
    border-color: #dc3545;
}

.dismiss-all-btn:disabled[b-xgxdyjosva] {
    opacity: 0.6;
    cursor: wait;
}

.notification-section-count[b-xgxdyjosva] {
    font-size: 0.72rem;
    font-weight: 600;
    color: #4b5563;
    background: #e5e7eb;
    padding: 0.1rem 0.5rem;
    border-radius: 999px;
}

/* ========== Dashboard alert (Wave 7) ========== */
.notification-item.dashboard-alert[b-xgxdyjosva] {
    border-left: 3px solid #dc3545;
}

.dashboard-dismiss-btn[b-xgxdyjosva] {
    line-height: 1;
    color: #9ca3af;
}

.dashboard-dismiss-btn:hover:not(:disabled)[b-xgxdyjosva] {
    color: #dc3545;
}

.dashboard-dismiss-btn:disabled[b-xgxdyjosva] {
    opacity: 0.4;
    cursor: wait;
}

/* Issue #2849 — legacy notification per-row dismiss. Mirrors the dashboard
   dismiss styling so both surfaces look consistent. */
.notification-dismiss-btn[b-xgxdyjosva] {
    line-height: 1;
    color: #9ca3af;
}

.notification-dismiss-btn:hover:not(:disabled)[b-xgxdyjosva] {
    color: #dc3545;
}

.notification-dismiss-btn:disabled[b-xgxdyjosva] {
    opacity: 0.4;
    cursor: wait;
}
/* /Components/Shared/OnlineQuotePresentationSkeleton.razor.rz.scp.css */
.skeleton-container[b-rvyta4ghud] {
    animation: pulse-b-rvyta4ghud 1.5s ease-in-out infinite;
}

@keyframes pulse-b-rvyta4ghud {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.6;
    }
}

/* Light theme skeleton elements (for white/light backgrounds) */
.skeleton-line[b-rvyta4ghud] {
    background: linear-gradient(90deg, #e0e0e0 25%, #f0f0f0 50%, #e0e0e0 75%);
    background-size: 200% 100%;
    animation: shimmer-b-rvyta4ghud 1.5s infinite;
    border-radius: 4px;
}

/* Dark theme skeleton elements (for dark/colored backgrounds) */
.skeleton-line-dark[b-rvyta4ghud] {
    background: linear-gradient(90deg, rgba(255,255,255,0.2) 25%, rgba(255,255,255,0.35) 50%, rgba(255,255,255,0.2) 75%);
    background-size: 200% 100%;
    animation: shimmer-b-rvyta4ghud 1.5s infinite;
    border-radius: 4px;
}

.skeleton-input[b-rvyta4ghud] {
    height: 38px;
    background: linear-gradient(90deg, #e8e8e8 25%, #f5f5f5 50%, #e8e8e8 75%);
    background-size: 200% 100%;
    animation: shimmer-b-rvyta4ghud 1.5s infinite;
    border-radius: 6px;
}

.skeleton-textarea[b-rvyta4ghud] {
    background: linear-gradient(90deg, #e8e8e8 25%, #f5f5f5 50%, #e8e8e8 75%);
    background-size: 200% 100%;
    animation: shimmer-b-rvyta4ghud 1.5s infinite;
    border-radius: 6px;
}

.skeleton-button-light[b-rvyta4ghud] {
    height: 45px;
    background: linear-gradient(90deg, rgba(118, 178, 67, 0.5) 25%, rgba(118, 178, 67, 0.7) 50%, rgba(118, 178, 67, 0.5) 75%);
    background-size: 200% 100%;
    animation: shimmer-b-rvyta4ghud 1.5s infinite;
    border-radius: 50px;
}

@keyframes shimmer-b-rvyta4ghud {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

/* /Components/Shared/PackageDisplayCard.razor.rz.scp.css */
.skeleton-line[b-uz41csqbak] {
    background: linear-gradient(90deg, #e0e0e0 25%, #f0f0f0 50%, #e0e0e0 75%);
    background-size: 200% 100%;
    animation: shimmer-b-uz41csqbak 1.5s infinite;
    border-radius: 4px;
}

@keyframes shimmer-b-uz41csqbak {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

/* /Components/Shared/PostBindManagementSkeleton.razor.rz.scp.css */
/* PostBindManagementSkeleton Component Scoped Styles */
/* Isolated CSS for skeleton loading animations */

.skeleton-container[b-ywc1kbgql8] {
    animation: pulse-b-ywc1kbgql8 1.5s ease-in-out infinite;
}

@keyframes pulse-b-ywc1kbgql8 {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.6;
    }
}

/* Base skeleton styles with shimmer effect */
.skeleton[b-ywc1kbgql8] {
    background: linear-gradient(90deg, #e0e0e0 25%, #f0f0f0 50%, #e0e0e0 75%);
    background-size: 200% 100%;
    animation: shimmer-b-ywc1kbgql8 1.5s infinite;
    border-radius: 4px;
}

@keyframes shimmer-b-ywc1kbgql8 {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

/* Skeleton element variants */
.skeleton-title[b-ywc1kbgql8] {
    height: 2.5rem;
    width: 70%;
    margin-bottom: 1.5rem;
}

.skeleton-card-title[b-ywc1kbgql8] {
    height: 1.75rem;
    width: 50%;
}

.skeleton-label[b-ywc1kbgql8] {
    height: 1rem;
    width: 60%;
    margin-bottom: 0.5rem;
}

.skeleton-value[b-ywc1kbgql8] {
    height: 1.25rem;
    width: 80%;
}

.skeleton-line[b-ywc1kbgql8] {
    height: 1rem;
    width: 100%;
}

.skeleton-button[b-ywc1kbgql8] {
    height: 3.5rem;
    width: 100%;
    border-radius: 1rem;
}

.skeleton-pill-button[b-ywc1kbgql8] {
    height: 2.5rem;
    width: 180px;
    border-radius: 50px;
}

.skeleton-logo[b-ywc1kbgql8] {
    height: 160px;
    width: 100%;
    border-radius: 1rem;
}

.skeleton-badge[b-ywc1kbgql8] {
    height: 2rem;
    width: 100px;
    border-radius: 4px;
}

.skeleton-info-box[b-ywc1kbgql8] {
    height: 2.5rem;
    border-radius: 0.75rem;
}

.skeleton-alert[b-ywc1kbgql8] {
    height: 3rem;
    border-radius: 0.5rem;
}

.skeleton-circle[b-ywc1kbgql8] {
    width: 60px;
    height: 60px;
    border-radius: 50%;
}

.skeleton-email-body[b-ywc1kbgql8] {
    height: 150px;
    border-radius: 0.5rem;
}

/* Card styling for skeleton state */
[b-ywc1kbgql8] .card {
    transition: all 0.3s ease;
}
/* /Components/Shared/PostBindManagementV2Skeleton.razor.rz.scp.css */
/* PostBindManagementV2Skeleton Component Scoped Styles */
/* Isolated CSS for skeleton loading animations */

.skeleton-container[b-aejaxba97p] {
    animation: pulse-b-aejaxba97p 1.5s ease-in-out infinite;
}

@keyframes pulse-b-aejaxba97p {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.6;
    }
}

/* Base skeleton styles with shimmer effect */
.skeleton[b-aejaxba97p] {
    background: linear-gradient(90deg, #e0e0e0 25%, #f0f0f0 50%, #e0e0e0 75%);
    background-size: 200% 100%;
    animation: shimmer-b-aejaxba97p 1.5s infinite;
    border-radius: 4px;
}

@keyframes shimmer-b-aejaxba97p {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

/* Skeleton element variants */
.skeleton-title[b-aejaxba97p] {
    height: 2.5rem;
    width: 70%;
    margin-bottom: 1.5rem;
}

.skeleton-card-title[b-aejaxba97p] {
    height: 1.75rem;
    width: 50%;
}

.skeleton-label[b-aejaxba97p] {
    height: 1rem;
    width: 60%;
    margin-bottom: 0.5rem;
}

.skeleton-value[b-aejaxba97p] {
    height: 1.25rem;
    width: 80%;
}

.skeleton-line[b-aejaxba97p] {
    height: 1rem;
    width: 100%;
}

.skeleton-button[b-aejaxba97p] {
    height: 3.5rem;
    width: 100%;
    border-radius: 1rem;
}

.skeleton-pill-button[b-aejaxba97p] {
    height: 2.5rem;
    width: 180px;
    border-radius: 50px;
}

.skeleton-logo[b-aejaxba97p] {
    height: 160px;
    width: 100%;
    border-radius: 1rem;
}

.skeleton-badge[b-aejaxba97p] {
    height: 2rem;
    width: 100px;
    border-radius: 4px;
}

.skeleton-info-box[b-aejaxba97p] {
    height: 2.5rem;
    border-radius: 0.75rem;
}

.skeleton-alert[b-aejaxba97p] {
    height: 3rem;
    border-radius: 0.5rem;
}

.skeleton-circle[b-aejaxba97p] {
    width: 60px;
    height: 60px;
    border-radius: 50%;
}

.skeleton-email-body[b-aejaxba97p] {
    height: 150px;
    border-radius: 0.5rem;
}

/* Card styling for skeleton state — ::deep must be nested inside a
   component-scoped selector to be valid. */
.skeleton-container[b-aejaxba97p]  .card {
    transition: all 0.3s ease;
}
/* /Components/Shared/PricingOption.razor.rz.scp.css */
.pricing-option[b-c2q77rl9pj] {
    background: white;
    border-radius: 1rem;
    padding: 12px 16px;
    margin-bottom: 8px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    transition: all 0.2s ease;
    border: .5rem solid transparent;
}

    .pricing-option:last-child[b-c2q77rl9pj] {
        margin-bottom: 0;
    }

    .pricing-option:hover[b-c2q77rl9pj] {
        border-color: var(--brand-accent);
    }

    .pricing-option.selected[b-c2q77rl9pj] {
        border-color: var(--brand-accent);
        background: #f0f8ff;
    }

.coverage-amount[b-c2q77rl9pj] {
    color: var(--brand-primary);
    font-size: 1.5rem;
}

.price[b-c2q77rl9pj] {
    text-align: right;
}

.price-amount[b-c2q77rl9pj] {
    color: var(--brand-accent);
    font-weight: 700;
    font-size: 1.5rem;
    display: block;
}

.price-label[b-c2q77rl9pj] {
    color: #000;
    font-size: 1rem;
    text-transform: none;
}
/* /Components/Shared/ProjectAddressForm.razor.rz.scp.css */
/* Project Address Form Component Styles */

.row[b-v62b03byg1] {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 16px;
}

.row:last-child[b-v62b03byg1] {
    margin-bottom: 0;
}

.col-12[b-v62b03byg1],
.col-md-6[b-v62b03byg1] {
    padding: 0 8px;
    margin-bottom: 0;
}

/* Section title styling */
.section-title[b-v62b03byg1] {
    color: #495057;
    font-weight: 600;
    margin: 0 0 20px 0;
    font-size: 1rem;
    border-bottom: 1px solid #e9ecef;
    padding-bottom: 8px;
}

/* Auto-filled field styling */
.auto-filled-field[b-v62b03byg1] {
    background-color: #e9ecef !important;
    cursor: not-allowed !important;
    opacity: 0.7;
}

.auto-filled-field:disabled[b-v62b03byg1] {
    background-color: #e9ecef !important;
    border-color: #ced4da !important;
    color: #6c757d !important;
}

/* Ensure disabled state is visible */
.form-control.auto-filled-field:disabled[b-v62b03byg1] {
    background-color: #e9ecef !important;
    opacity: 0.7;
}

/* Loading spinner positioning */
.loading-spinner[b-v62b03byg1] {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
}

.loading-spinner .spinner-border-sm[b-v62b03byg1] {
    width: 1rem;
    height: 1rem;
    border-width: 0.15em;
}

/* Form groups within address section */
.project-address-section .form-group[b-v62b03byg1] {
    margin-bottom: 16px;
}

/* Form labels within address section */
.project-address-section .form-label[b-v62b03byg1] {
    display: block;
    margin-bottom: 6px;
    color: #495057;
    font-weight: 500;
    font-size: 0.9rem;
}

/* Form controls within address section */
.project-address-section .form-control[b-v62b03byg1] {
    width: 100%;
    padding: 8px 12px;
    font-size: 0.9rem;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: 4px;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

/* Focus states for address form controls */
.project-address-section .form-control:focus[b-v62b03byg1] {
    color: #495057;
    background-color: #fff;
    border-color: #80bdff;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

/* Placeholder styling */
.project-address-section .form-control[b-v62b03byg1]::placeholder {
    color: #6c757d;
    opacity: 1;
}

/* Row spacing within address section */
.project-address-section .row[b-v62b03byg1] {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -8px;
    margin-bottom: 16px;
}

/* Remove margin from last row */
.project-address-section .row:last-child[b-v62b03byg1] {
    margin-bottom: 0;
}

/* Column styling within address section */
.project-address-section .col-12[b-v62b03byg1],
.project-address-section .col-md-6[b-v62b03byg1] {
    padding: 0 8px;
    margin-bottom: 0;
}

.project-address-section .col-12[b-v62b03byg1] {
    flex: 0 0 100%;
}

.project-address-section .col-md-6[b-v62b03byg1] {
    flex: 0 0 100%;
}

/* Responsive behavior for medium screens and up */
@media (min-width: 768px) {
    .project-address-section .col-md-6[b-v62b03byg1] {
        flex: 0 0 50%;
    }
}

/* Invalid feedback styling within address section */
.project-address-section .invalid-feedback[b-v62b03byg1] {
    color: #dc3545;
    font-size: 0.8rem;
    margin-top: 4px;
}

/* Special styling for required fields */
.project-address-section .form-label[data-required="true"][b-v62b03byg1]::after {
    content: " *";
    color: #dc3545;
}

/* Enhanced focus ring for accessibility */
.project-address-section .form-control:focus-visible[b-v62b03byg1] {
    outline: 2px solid #80bdff;
    outline-offset: 2px;
}

/* Disabled state styling */
.project-address-section .form-control:disabled[b-v62b03byg1] {
    background-color: #e9ecef;
    opacity: 1;
    color: #6c757d;
}

/* Address section specific hover effects */
.project-address-section:hover[b-v62b03byg1] {
    border-color: #80bdff;
    box-shadow: 0 0 0 0.1rem rgba(0, 123, 255, 0.1);
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

/* Mobile responsive adjustments */
@media (max-width: 767px) {
    .project-address-section[b-v62b03byg1] {
        padding: 16px;
        margin: 16px 0;
    }

    .project-address-section .section-title[b-v62b03byg1] {
        font-size: 0.95rem;
        margin-bottom: 16px;
    }

    .project-address-section .row[b-v62b03byg1] {
        margin-bottom: 12px;
    }
}

/* Print styles */
@media print {
    .project-address-section[b-v62b03byg1] {
        border: 1px solid var(--brand-border);
        box-shadow: none;
        background-color: #fff;
    }

    .project-address-section .section-title[b-v62b03byg1] {
        border-bottom: 1px solid var(--brand-border);
    }
}
/* /Components/Shared/ProjectDetailsForm.razor.rz.scp.css */
.project-details-form[b-m56iijt6dt] {
    background-color: #f8f9fa;
    border-radius: 8px;
    padding: 24px;
    margin: 20px 0;
}

.form-header[b-m56iijt6dt] {
    margin-bottom: 20px;
}

.form-title[b-m56iijt6dt] {
    color: #495057;
    font-weight: 600;
    margin: 0;
    font-size: 1.1rem;
}

.form-content[b-m56iijt6dt] {
    display: flex;
    flex-direction: column;
    gap: 20px; /* Increased to match Project Address spacing */
}

.form-label[b-m56iijt6dt] {
    display: block;
    margin-bottom: 6px;
    color: #495057;
    font-weight: 500;
    font-size: 0.9rem;
}

.form-control[b-m56iijt6dt], .form-select[b-m56iijt6dt] {
    width: 100%;
    padding: 8px 12px;
    font-size: 0.9rem;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: 4px;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

    .form-control:focus[b-m56iijt6dt], .form-select:focus[b-m56iijt6dt] {
        color: #495057;
        background-color: #fff;
        border-color: #80bdff;
        outline: 0;
        box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
    }

    .form-control[b-m56iijt6dt]::placeholder {
        color: #6c757d;
        opacity: 1;
    }

.project-address-section[b-m56iijt6dt] {
    background-color: #fff;
    border: 1px solid #e9ecef;
    border-radius: 6px;
    padding: 20px; /* Increased to match other sections */
    margin: 20px 0; /* Consistent margin with form sections */
}

.section-title[b-m56iijt6dt] {
    color: #495057;
    font-weight: 600;
    margin: 0 0 20px 0; /* Increased bottom margin for consistency */
    font-size: 1rem;
}

.invalid-feedback[b-m56iijt6dt] {
    color: #dc3545;
    font-size: 0.8rem;
    margin-top: 4px;
}

.row[b-m56iijt6dt] {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -8px;
    margin-bottom: 8px; /* Consistent spacing between rows */
}

    .row:last-child[b-m56iijt6dt] {
        margin-bottom: 0; /* Remove margin from last row */
    }

.col-12[b-m56iijt6dt],
.col-md-6[b-m56iijt6dt] {
    padding: 0 8px;
    margin-bottom: 0; /* Remove individual column margins, use row margins instead */
}

.col-12[b-m56iijt6dt] {
    flex: 0 0 100%;
}

.col-md-6[b-m56iijt6dt] {
    flex: 0 0 100%;
}

@media (min-width: 768px) {
    .col-md-6[b-m56iijt6dt] {
        flex: 0 0 50%;
    }
}

/* Custom styling to match the image */
textarea.form-control[b-m56iijt6dt] {
    resize: vertical;
    min-height: 80px;
}

input[type="number"].form-control[b-m56iijt6dt] {
    -moz-appearance: textfield;
}

    input[type="number"].form-control[b-m56iijt6dt]::-webkit-outer-spin-button,
    input[type="number"].form-control[b-m56iijt6dt]::-webkit-inner-spin-button {
        -webkit-appearance: none;
        margin: 0;
    }
/* /Components/Shared/ProjectQuotesSkeleton.razor.rz.scp.css */
.skeleton-container[b-wy7fmbaiek] {
    animation: pulse-b-wy7fmbaiek 1.5s ease-in-out infinite;
}

@keyframes pulse-b-wy7fmbaiek {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.6;
    }
}

.skeleton-line[b-wy7fmbaiek],
.skeleton-button[b-wy7fmbaiek] {
    background: linear-gradient(90deg, #e0e0e0 25%, #f0f0f0 50%, #e0e0e0 75%);
    background-size: 200% 100%;
    animation: shimmer-b-wy7fmbaiek 1.5s infinite;
    border-radius: 4px;
}

.skeleton-button[b-wy7fmbaiek] {
    border-radius: 20px;
}

@keyframes shimmer-b-wy7fmbaiek {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

/* /Components/Shared/QuoteInformationSkeleton.razor.rz.scp.css */
.skeleton-container[b-o77ozjetmi] {
    animation: pulse-b-o77ozjetmi 1.5s ease-in-out infinite;
}

@keyframes pulse-b-o77ozjetmi {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.6;
    }
}

.skeleton-line[b-o77ozjetmi],
.skeleton-circle[b-o77ozjetmi],
.skeleton-badge[b-o77ozjetmi],
.skeleton-button[b-o77ozjetmi],
.skeleton-tab[b-o77ozjetmi],
.skeleton-textarea[b-o77ozjetmi] {
    background: linear-gradient(90deg, #e0e0e0 25%, #f0f0f0 50%, #e0e0e0 75%);
    background-size: 200% 100%;
    animation: shimmer-b-o77ozjetmi 1.5s infinite;
    border-radius: 4px;
}

.skeleton-circle[b-o77ozjetmi] {
    border-radius: 50%;
}

.skeleton-badge[b-o77ozjetmi] {
    border-radius: 14px;
}

.skeleton-button[b-o77ozjetmi] {
    border-radius: 20px;
}

.skeleton-tab[b-o77ozjetmi] {
    border-radius: 8px;
}

.skeleton-textarea[b-o77ozjetmi] {
    border-radius: 8px;
}

@keyframes shimmer-b-o77ozjetmi {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

/* /Components/Shared/QuotePageSkeleton.razor.rz.scp.css */
.quote-skeleton[b-zqmmkfsx1z] {
    animation: pulse-b-zqmmkfsx1z 1.5s ease-in-out infinite;
}

@keyframes pulse-b-zqmmkfsx1z {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}

.skeleton-line[b-zqmmkfsx1z],
.skeleton-circle[b-zqmmkfsx1z],
.skeleton-badge[b-zqmmkfsx1z],
.skeleton-button[b-zqmmkfsx1z],
.skeleton-input[b-zqmmkfsx1z] {
    background: linear-gradient(90deg, #e5e7eb 25%, #f3f4f6 50%, #e5e7eb 75%);
    background-size: 200% 100%;
    animation: shimmer-b-zqmmkfsx1z 1.5s infinite;
    border-radius: 4px;
    display: block;
}

.skeleton-circle[b-zqmmkfsx1z] { border-radius: 50%; }
.skeleton-badge[b-zqmmkfsx1z] { border-radius: 14px; }
.skeleton-button[b-zqmmkfsx1z] { border-radius: 20px; }
.skeleton-input[b-zqmmkfsx1z] { border-radius: 6px; }

@keyframes shimmer-b-zqmmkfsx1z {
    0% { background-position: -200% 0; }
    100% { background-position: 200% 0; }
}
/* /Components/Shared/StatusModal.razor.rz.scp.css */
/* Status Modal Styles */

.status-modal[b-4somqzkd88] {
    border-radius: 16px;
    border: none;
    box-shadow: 0 24px 60px rgba(15, 23, 42, 0.15);
}

    .status-modal .modal-header[b-4somqzkd88] {
        background-color: #fff;
        border-top-left-radius: 16px;
        border-top-right-radius: 16px;
    }

    .status-modal .modal-body[b-4somqzkd88] {
        background-color: #fff;
        border-bottom-left-radius: 16px;
        border-bottom-right-radius: 16px;
    }

.status-icon-container[b-4somqzkd88] {
    display: flex;
    justify-content: center;
    align-items: center;
}

.status-icon[b-4somqzkd88] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 3rem;
    animation: scaleIn-b-4somqzkd88 0.3s ease-out;
}

    .status-icon i[b-4somqzkd88] {
        font-size: 3rem;
    }

.status-success[b-4somqzkd88] {
    background-color: #d1fae5;
    color: #10b981;
}

.status-error[b-4somqzkd88] {
    background-color: #fee2e2;
    color: #ef4444;
}

.status-warning[b-4somqzkd88] {
    background-color: #fef3c7;
    color: #f59e0b;
}

.status-info[b-4somqzkd88] {
    background-color: #dbeafe;
    color: #3b82f6;
}

.status-loading[b-4somqzkd88] {
    background-color: #e0e7ff;
    color: #6366f1;
    animation: pulse-b-4somqzkd88 2s ease-in-out infinite;
}

.spinner-container[b-4somqzkd88] {
    display: flex;
    align-items: center;
    justify-content: center;
}

    .spinner-container .spinner-border[b-4somqzkd88] {
        width: 3rem;
        height: 3rem;
        border-width: 0.3rem;
        color: #6366f1;
    }

.status-modal .modal-title[b-4somqzkd88] {
    font-size: 1.5rem;
    color: #1f2937;
}

.status-modal .text-muted[b-4somqzkd88] {
    color: #6b7280 !important;
    font-size: 1rem;
    line-height: 1.5;
}

.status-modal .btn[b-4somqzkd88] {
    min-width: 120px;
    padding: 0.625rem 2rem;
    font-size: 0.95rem;
    transition: all 0.2s ease;
}

    .status-modal .btn:hover[b-4somqzkd88] {
        transform: translateY(-2px);
        box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
    }

.alert-light[b-4somqzkd88] {
    background-color: #f9fafb;
    border-color: #e5e7eb;
    border-radius: 8px;
    padding: 0.75rem 1rem;
}

    .alert-light small[b-4somqzkd88] {
        font-size: 0.875rem;
        line-height: 1.5;
        display: block;
    }

@keyframes scaleIn-b-4somqzkd88 {
    0% {
        transform: scale(0);
        opacity: 0;
    }

    50% {
        transform: scale(1.1);
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes pulse-b-4somqzkd88 {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.8;
        transform: scale(1.05);
    }
}

/* Responsive adjustments */
@media (max-width: 576px) {
    .status-icon[b-4somqzkd88] {
        width: 64px;
        height: 64px;
    }

        .status-icon i[b-4somqzkd88] {
            font-size: 2.5rem;
        }

    .spinner-container .spinner-border[b-4somqzkd88] {
        width: 2.5rem;
        height: 2.5rem;
    }

    .status-modal .modal-title[b-4somqzkd88] {
        font-size: 1.25rem;
    }

    .status-modal .text-muted[b-4somqzkd88] {
        font-size: 0.9rem;
    }
}
