@import '_content/Blazor.Bootstrap/Blazor.Bootstrap.bundle.scp.css';

/* /Components/AppHeader.razor.rz.scp.css */
.app-header[b-t7ws8vaybg] {
    background-color: var(--color-background);
    width: 100%;
    padding: 0 var(--spacing-lg);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.app-header .container-fluid[b-t7ws8vaybg] {
    border-bottom: 1.5px solid var(--color-border);
    padding-bottom: 0;
}

.app-logo[b-t7ws8vaybg] {
    display: flex;
    align-items: center;
}

.logo-img[b-t7ws8vaybg] {
    height: 32px;
    width: auto;
    max-width: 150px;
}

.app-logout-btn[b-t7ws8vaybg] {
    color: var(--color-text-dark-teal);
    text-decoration: none;
    padding: var(--spacing-sm) var(--spacing-md);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-semibold);
    transition: color var(--transition-base);
    border: none !important;
    background: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--spacing-sm);
    outline: none !important;
    box-shadow: none !important;
    line-height: 1;
}

.app-logout-btn:hover[b-t7ws8vaybg] {
    color: var(--color-primary);
    text-decoration: none;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

.app-logout-btn:focus[b-t7ws8vaybg],
.app-logout-btn:active[b-t7ws8vaybg],
.app-logout-btn:focus-visible[b-t7ws8vaybg] {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

.app-logout-btn i[b-t7ws8vaybg] {
    font-size: var(--font-size-lg);
    font-weight: var(--font-weight-bold);
    display: flex;
    align-items: center;
    line-height: 1;
    -webkit-text-stroke: 0.3px;
    text-stroke: 0.3px;
    filter: contrast(1.1);
}

.app-logout-btn span[b-t7ws8vaybg] {
    font-weight: var(--font-weight-semibold);
    line-height: 1;
    display: flex;
    align-items: center;
}

/* New Header Styles */
.app-header-new[b-t7ws8vaybg] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    background-color: var(--color-background);
}

.app-header-new .container-fluid[b-t7ws8vaybg] {
    border-bottom: none;
}

.app-header-separator[b-t7ws8vaybg] {
    width: 100%;
    height: 1px;
    background-color: var(--color-border);
    margin-top: 0;
    position: relative;
    z-index: 1000;
}

/* Menu Container */
.app-menu-container[b-t7ws8vaybg] {
    position: relative;
}

/* Menu Button */
.app-menu-btn[b-t7ws8vaybg] {
    background: none;
    border: 2px solid var(--color-primary);
    border-radius: var(--radius-lg);
    padding: var(--spacing-sm);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    transition: all var(--transition-base);
    outline: none !important;
    box-shadow: none !important;
}

.app-menu-btn:hover[b-t7ws8vaybg] {
    background-color: var(--color-background-light);
    border-color: var(--color-primary);
}

.app-menu-btn:focus[b-t7ws8vaybg],
.app-menu-btn:active[b-t7ws8vaybg],
.app-menu-btn:focus-visible[b-t7ws8vaybg] {
    outline: none !important;
    box-shadow: none !important;
}

/* Menu Icon (Three Horizontal Lines) */
.app-menu-icon[b-t7ws8vaybg] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    width: 20px;
    height: 16px;
    justify-content: center;
    align-items: center;
}

.app-menu-icon span[b-t7ws8vaybg] {
    width: 100%;
    height: 2px;
    background-color: var(--color-text-dark-teal);
    border-radius: 1px;
    transition: all var(--transition-base);
}

.app-menu-btn:hover .app-menu-icon span[b-t7ws8vaybg] {
    background-color: var(--color-primary);
}

/* Dropdown Menu */
.app-menu-dropdown[b-t7ws8vaybg] {
    position: absolute;
    top: calc(100% + var(--spacing-sm));
    right: 0;
    background-color: var(--color-background);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-lg);
    min-width: 160px;
    z-index: 1000;
    padding: var(--spacing-xs) 0;
    margin-top: var(--spacing-sm);
}

/* Menu Items */
.app-menu-item[b-t7ws8vaybg] {
    width: 100%;
    padding: var(--spacing-md) var(--spacing-lg);
    background: none;
    border: none;
    text-align: left;
    color: var(--color-text-dark-teal);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-regular);
    cursor: pointer;
    transition: background-color var(--transition-base);
    outline: none !important;
    box-shadow: none !important;
}

.app-menu-item:first-child[b-t7ws8vaybg] {
    border-top-left-radius: var(--radius-lg);
    border-top-right-radius: var(--radius-lg);
}

.app-menu-item:last-child[b-t7ws8vaybg] {
    border-bottom-left-radius: var(--radius-lg);
    border-bottom-right-radius: var(--radius-lg);
}

.app-menu-item:hover[b-t7ws8vaybg] {
    background-color: var(--color-background-light);
    color: var(--color-primary);
}

.app-menu-item:focus[b-t7ws8vaybg],
.app-menu-item:active[b-t7ws8vaybg],
.app-menu-item:focus-visible[b-t7ws8vaybg] {
    outline: none !important;
    box-shadow: none !important;
    background-color: var(--color-background-light);
}

/* Overlay to close menu when clicking outside */
.app-menu-overlay[b-t7ws8vaybg] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    background: transparent;
}


/* /Components/BrandHeader.razor.rz.scp.css */
/* Brand Header Component - No Media Queries - Exact Design Match */

.brand-header[b-m4sfkxm452] {
    min-height: 40vh;
    padding: 0;
}

.brand-header-content[b-m4sfkxm452] {
    max-width: 600px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

/* Favicon Logo - 110px diameter */
.brand-favicon-wrapper[b-m4sfkxm452] {
    margin-bottom: clamp(25px, 3.5vw, 30px);
}

.brand-favicon[b-m4sfkxm452] {
    width: clamp(50px, 11vw, 80px);
    height: clamp(50px, 11vw, 80px);
    display: block;
    image-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    animation: fadeInDown-b-m4sfkxm452 0.6s ease-out;
}

/* Welcome to Text - Increased font size, #215E6C color, 70px spacing below logo */
.brand-subtitle[b-m4sfkxm452] {
    font-family: var(--font-family);
    font-size: clamp(28px, 4.5vw, 42px);
    font-weight: var(--font-weight-medium);
    color: var(--color-text-primary);
    line-height: var(--line-height-normal);
    margin: 0;
/*    margin-bottom: clamp(19px, 2.4vw, 38px);*/
    width: clamp(200px, 28vw, 280px);
    text-align: center;
    animation: fadeInUp-b-m4sfkxm452 0.6s ease-out 0.2s both;
    outline: none !important;
    border: none !important;
    box-shadow: none !important;
}

    .brand-subtitle:focus[b-m4sfkxm452],
    .brand-subtitle:focus-visible[b-m4sfkxm452],
    .brand-subtitle:active[b-m4sfkxm452] {
        outline: none !important;
        border: none !important;
        box-shadow: none !important;
    }

/* Thuro Logo - Reduced size */
.brand-logo-wrapper[b-m4sfkxm452] {
    animation: fadeInUp-b-m4sfkxm452 0.6s ease-out 0.3s both;
}

.brand-logo[b-m4sfkxm452] {
    width: clamp(180px, 25vw, 200px);
    height: auto;
    display: block;
    image-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    object-fit: contain;
    max-width: 100%;
}

@keyframes fadeInDown-b-m4sfkxm452 {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInUp-b-m4sfkxm452 {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.brand-header.fullscreen[b-m4sfkxm452] {
    min-height: 100vh;
}

/* /Components/DA/CreditNoticesComponent.razor.rz.scp.css */
/* Scoped styles for CreditNoticesComponent */
/* Style h1 and h2 tags in da-text-body to match .da-header h3 */
/*::deep .da-text-body h1,
::deep .da-text-body h2,
::deep .da-section .da-text-body h1,
::deep .da-section .da-text-body h2,
::deep .da-text-body div h1,
::deep .da-text-body div h2,
::deep .da-section .da-text-body div h1,
::deep .da-section .da-text-body div h2 {
    font-size: var(--font-size-lg) !important;
    font-weight: 600 !important;
    padding: 1rem !important;
    margin-bottom: 1.5rem !important;
    color: var(--color-primary) !important;
    background-color: var(--color-background-light) !important;
    line-height: var(--line-height-normal) !important;
    display: block !important;
}
*/
/* /Components/DA/StateNoticesComponent.razor.rz.scp.css */
/* Scoped styles for StateNoticesComponent */
/* Style h1 and h2 tags in da-text-body to match .da-header h3 */
/*::deep .da-text-body h1,
::deep .da-text-body h2,
::deep .da-section .da-text-body h1,
::deep .da-section .da-text-body h2,
::deep .da-text-body div h1,
::deep .da-text-body div h2,
::deep .da-section .da-text-body div h1,
::deep .da-section .da-text-body div h2 {
    font-size: var(--font-size-lg) !important;
    font-weight: 600 !important;
    padding: 1rem !important;
    margin-bottom: 1.5rem !important;
    color: var(--color-primary) !important;
    background-color: var(--color-background-light) !important;
    line-height: var(--line-height-normal) !important;
    display: block !important;
}*/

/* /Components/DocumentsSection.razor.rz.scp.css */
.documents-section-card[b-lb91rdwrft] {
    height: auto;
}

.documents-section-card .card-body[b-lb91rdwrft] {
    padding: var(--spacing-lg);
}

.documents-list[b-lb91rdwrft] {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-sm);
}

.document-item[b-lb91rdwrft] {
    display: flex;
    align-items: center;
    gap: var(--spacing-md);
    border: 1px solid var(--color-border-lighter);
    border-radius: var(--radius-md);
    transition: background-color var(--transition-base);
}

.document-item:hover[b-lb91rdwrft] {
    background-color: var(--color-background-light);
}

.document-icon[b-lb91rdwrft] {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color-background-light-green);
    border-radius: var(--radius-md);
    color: var(--color-primary);
    flex-shrink: 0;
}

.document-details[b-lb91rdwrft] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xs);
}

.document-name[b-lb91rdwrft] {
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-medium);
    color: var(--color-text-primary);
}

.document-meta[b-lb91rdwrft] {
    display: flex;
    gap: var(--spacing-md);
    font-size: var(--font-size-sm);
    color: var(--color-text-secondary);
}

.document-type[b-lb91rdwrft] {
    text-transform: uppercase;
}

.document-size[b-lb91rdwrft] {
    color: var(--color-text-inactive);
}

.document-download[b-lb91rdwrft] {
    color: var(--color-primary);
    text-decoration: none;
    padding: var(--spacing-sm);
    transition: color var(--transition-base);
    flex-shrink: 0;
}

.document-download:hover[b-lb91rdwrft] {
    color: var(--color-primary-dark);
}

.documents-empty[b-lb91rdwrft] {
    display: flex;
    flex-direction: row;
    /*    align-items: center;
    justify-content: center;
    text-align: center;*/
    gap: var(--spacing-md);
}

.documents-empty-icon[b-lb91rdwrft] {
    display: flex;
    align-items: start;
    justify-content: center;
/*    background-color: var(--color-background-light-green);*/
    border-radius: var(--radius-full);
    color: var(--color-primary-lighter);
}

.documents-empty-text[b-lb91rdwrft] {
    font-size: var(--font-size-base);
    color: var(--color-text-secondary);
}

/* /Components/LoadingSpinner.razor.rz.scp.css */
/* Loading Spinner Container */
.loading-spinner-container[b-gj2biv16fw] {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: var(--spacing-lg, 1rem);
}

.loading-spinner-wrapper[b-gj2biv16fw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-md, 0.75rem);
}

/* Custom Spinner */
.custom-spinner[b-gj2biv16fw] {
    position: relative;
    display: inline-block;
}

.custom-spinner .spinner-ring[b-gj2biv16fw] {
    position: absolute;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: var(--color-primary);
    animation: spin-b-gj2biv16fw 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
}

/* Spinner Size Variants */
.spinner-small .spinner-ring[b-gj2biv16fw] {
    width: 24px;
    height: 24px;
    border-width: 2px;
}

.spinner-medium .spinner-ring[b-gj2biv16fw] {
    width: 40px;
    height: 40px;
    border-width: 3px;
}

.spinner-large .spinner-ring[b-gj2biv16fw] {
    width: 56px;
    height: 56px;
    border-width: 4px;
}

.spinner-extra-large .spinner-ring[b-gj2biv16fw] {
    width: 72px;
    height: 72px;
    border-width: 5px;
}

/* Multiple Rings for Layered Effect */
.custom-spinner .spinner-ring:nth-child(1)[b-gj2biv16fw] {
    animation-delay: -0.45s;
    opacity: 1;
}

.custom-spinner .spinner-ring:nth-child(2)[b-gj2biv16fw] {
    animation-delay: -0.3s;
    opacity: 0.8;
}

.custom-spinner .spinner-ring:nth-child(3)[b-gj2biv16fw] {
    animation-delay: -0.15s;
    opacity: 0.6;
}

.custom-spinner .spinner-ring:nth-child(4)[b-gj2biv16fw] {
    animation-delay: 0s;
    opacity: 0.4;
}

/* Spinner Variants */
.spinner-primary .spinner-ring[b-gj2biv16fw] {
    border-top-color: var(--color-primary, #014751);
}

.spinner-success .spinner-ring[b-gj2biv16fw] {
    border-top-color: var(--color-success, #00d37f);
}

.spinner-secondary .spinner-ring[b-gj2biv16fw] {
    border-top-color: var(--color-primary-light, #215e67);
}

/* Alternative: Single Ring with Gradient Effect */
.custom-spinner.spinner-gradient .spinner-ring[b-gj2biv16fw] {
    border: none;
    background: conic-gradient(
        from 0deg,
        transparent 0deg,
        var(--color-primary) 90deg,
        var(--color-primary-lighter) 180deg,
        transparent 270deg,
        transparent 360deg
    );
    mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 3px));
    -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 3px));
}

/* Spinner Animation */
@keyframes spin-b-gj2biv16fw {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/* Loading Text */
.loading-spinner-text[b-gj2biv16fw] {
    color: var(--color-text-secondary, #666);
    font-size: var(--font-size-sm, 0.875rem);
    font-weight: var(--font-weight-medium, 500);
    text-align: center;
    margin-top: var(--spacing-sm, 0.5rem);
}

/* Pulse Animation Alternative */
.custom-spinner.spinner-pulse .spinner-ring[b-gj2biv16fw] {
    animation: pulse-b-gj2biv16fw 1.5s ease-in-out infinite;
    border: none;
    background: var(--color-primary);
    opacity: 0.6;
}

.custom-spinner.spinner-pulse .spinner-ring:nth-child(1)[b-gj2biv16fw] {
    animation-delay: 0s;
}

.custom-spinner.spinner-pulse .spinner-ring:nth-child(2)[b-gj2biv16fw] {
    animation-delay: 0.2s;
}

.custom-spinner.spinner-pulse .spinner-ring:nth-child(3)[b-gj2biv16fw] {
    animation-delay: 0.4s;
}

.custom-spinner.spinner-pulse .spinner-ring:nth-child(4)[b-gj2biv16fw] {
    animation-delay: 0.6s;
}

@keyframes pulse-b-gj2biv16fw {
    0%, 100% {
        transform: scale(0.8);
        opacity: 0.6;
    }
    50% {
        transform: scale(1.2);
        opacity: 1;
    }
}

/* Accessibility */
.custom-spinner[aria-label][b-gj2biv16fw] {
    /* Ensure screen readers can identify the spinner */
}

/* Responsive Adjustments */
@media (max-width: 768px) {
    .spinner-large .spinner-ring[b-gj2biv16fw] {
        width: 48px;
        height: 48px;
    }
    
    .spinner-extra-large .spinner-ring[b-gj2biv16fw] {
        width: 64px;
        height: 64px;
    }
    
    .loading-spinner-text[b-gj2biv16fw] {
        font-size: var(--font-size-xs, 0.75rem);
    }
}

/* /Components/ProgressTracker.razor.rz.scp.css */
/* Horizontal Layout - Override status-bar for horizontal display */
.status-bar-horizontal[b-uqbzzdd361] {
    flex-direction: row !important;
    align-items: flex-start;
    justify-content: space-between;
    position: relative;
}

.status-bar-horizontal .status-step[b-uqbzzdd361] {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding-bottom: 0 !important;
    margin: 0 !important;
    flex: 1;
    position: relative;
    display: flex;
}

/* Hide vertical connector line in horizontal layout */
.status-bar-horizontal .status-step:not(:last-child)[b-uqbzzdd361]::after {
    display: none;
}

/* Horizontal connector line - with space from indicator, centered vertically on indicator */
.status-bar-horizontal .status-step:not(:last-child)[b-uqbzzdd361]::before {
    content: '';
    position: absolute;
    top: 16px;
    left: calc(50% + 32px);
    right: calc(-50% + 32px);
    height: 1px;
    background-color: var(--color-border-inactive);
    z-index: 0;
    transform: translateY(-50%);
}

/* Completed connector in horizontal layout */
.status-bar-horizontal .status-step.completed:not(:last-child)[b-uqbzzdd361]::before {
    background-color: var(--color-success);
}

/* Adjust indicator margin for horizontal layout - align all indicators in a line */
.status-bar-horizontal .status-step-indicator[b-uqbzzdd361] {
    margin-right: 0 !important;
    margin-bottom: var(--spacing-md);
    position: relative;
    top: 0;
    width: 32px;
    height: 32px;
}

/* Adjust text styling for horizontal layout */
.status-bar-horizontal .status-step-text[b-uqbzzdd361] {
    padding-top: 0 !important;
    margin-top: var(--spacing-lg);
    font-size: var(--font-size-sm);
    max-width: 150px;
    word-wrap: break-word;
    text-align: center;
}

/* Vertical Layout - Explicit styles for vertical display */
.status-bar-vertical[b-uqbzzdd361] {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    position: relative;
}

.status-bar-vertical .status-step[b-uqbzzdd361] {
    flex-direction: row;
    align-items: flex-start;
    position: relative;
    padding-bottom: 1rem;
    margin: 1rem 0;
}

/* Vertical connector line */
.status-bar-vertical .status-step:not(:last-child)[b-uqbzzdd361]::after {
    content: '';
    position: absolute;
    left: 15px;
    top: 40px;
    width: 2px;
    height: calc(100% - 15px);
    background-color: var(--color-border-inactive);
    z-index: 0;
}

/* Completed connector in vertical layout */
.status-bar-vertical .status-step.completed:not(:last-child)[b-uqbzzdd361]::after {
    background-color: var(--color-success);
}

/* Ensure indicator margin for vertical layout */
.status-bar-vertical .status-step-indicator[b-uqbzzdd361] {
    margin-right: var(--spacing-lg);
}

/* Text styling for vertical layout */
.status-bar-vertical .status-step-text[b-uqbzzdd361] {
    padding-top: 6px;
    font-size: var(--font-size-base);
    line-height: var(--line-height-normal);
}

/* Clickable steps */
.status-step.clickable[b-uqbzzdd361] {
    cursor: pointer;
    transition: opacity var(--transition-base);
}

.status-step.clickable:hover[b-uqbzzdd361] {
    opacity: 0.8;
}

/* Disabled/non-clickable steps */
.status-step.disabled[b-uqbzzdd361] {
    cursor: not-allowed;
    pointer-events: none;
}

/* Ensure clickable steps are interactive */
.status-step.clickable .status-step-indicator[b-uqbzzdd361],
.status-step.clickable .status-step-text[b-uqbzzdd361] {
    pointer-events: auto;
}

/* /Components/RecruiterInfoCard.razor.rz.scp.css */
.recruiter-info-card[b-xagmywfzat] {
    height: 100%;
}

.recruiter-info-content[b-xagmywfzat] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: var(--spacing-lg);
    justify-content: flex-start;
}

.company-logo-wrapper[b-xagmywfzat] {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.company-logo[b-xagmywfzat] {
    width: auto;
    height: auto;
    max-width: 120px;
    max-height: 45px;
    object-fit: contain;
}

.recruiter-details[b-xagmywfzat] {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xs);
    flex: 1;
    justify-content: flex-start;
    align-items: flex-start;
}

.company-name[b-xagmywfzat] {
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-semibold);
    color: var(--color-text-primary);
}

.recruiter-name[b-xagmywfzat] {
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-regular);
    color: var(--color-text-primary);
}

/* /Components/StatusCard.razor.rz.scp.css */
.status-card[b-yqduynfwbn] {
    height: auto;
}

.status-card .status-bar-vertical .status-step[b-yqduynfwbn] {
    padding-bottom: 0.75rem;
    margin: 0.5rem 0;
}

/* /Components/ValidationAlert.razor.rz.scp.css */
/* Modal Container - Reusing ConfirmationModal styles */
.validation-modal[b-elv5xj0hbk] {
    z-index: 1050;
}

.validation-modal-dialog[b-elv5xj0hbk] {
    margin: var(--spacing-xl, 1.5rem) auto 0 auto;
    max-width: 500px;
    position: relative;
    top: 0;
}

@media (min-width: 992px) {
    .validation-modal-dialog[b-elv5xj0hbk] {
        max-width: 550px;
        margin-top: var(--spacing-xxl, 2rem);
    }
}

/* Modal Content Styling */
.validation-modal .modal-content[b-elv5xj0hbk] {
    border-radius: var(--radius-md, 8px);
    border: none;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.validation-modal .modal-content.validation-alert-missing[b-elv5xj0hbk] {
    background-color: var(--color-background);
    border: 1px solid var(--color-border-lighter);
}

    .validation-modal .modal-content.validation-alert-invalid[b-elv5xj0hbk] {
        background-color: var(--color-background-error-light);
        border: 1px solid var(--color-error);
    }

/* Modal Header */
.validation-modal .modal-header[b-elv5xj0hbk] {
    padding: var(--spacing-lg, 1rem) var(--spacing-xl, 1.5rem);
/*    border-bottom: 1px solid var(--color-border-lighter);*/
}

.validation-modal .modal-title[b-elv5xj0hbk] {
    font-size: var(--font-size-lg, 20px);
    margin: 0;
    display: flex;
    align-items: center;
}

.validation-modal .modal-content.validation-alert-missing .modal-title[b-elv5xj0hbk] {
    color: var(--color-text-dark-teal);
}

.validation-modal .modal-content.validation-alert-invalid .modal-title[b-elv5xj0hbk] {
    color: var(--color-error);
}

.validation-alert-icon[b-elv5xj0hbk] {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.validation-modal .modal-content.validation-alert-missing .validation-alert-icon[b-elv5xj0hbk] {
    color: var(--color-error);
}

.validation-modal .modal-content.validation-alert-invalid .validation-alert-icon[b-elv5xj0hbk] {
    color: var(--color-error);
}

/* Modal Body */
.validation-modal .modal-body[b-elv5xj0hbk] {
    padding: var(--spacing-xl, 1.5rem);
    color: var(--color-text-secondary, #215e67);
    font-size: var(--font-size-base, 16px);
    line-height: var(--line-height-normal, 1.5);
}

.validation-alert-messages[b-elv5xj0hbk] {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-sm, 0.5rem);
}

.validation-alert-message[b-elv5xj0hbk] {
    font-size: var(--font-size-base, 16px);
    cursor: pointer;
    text-decoration: underline;
    transition: opacity var(--transition-base);
    padding: var(--spacing-xs, 0.25rem) 0;
}

.validation-alert-message:hover[b-elv5xj0hbk] {
    opacity: 0.8;
}

.validation-modal .modal-content.validation-alert-missing .validation-alert-message[b-elv5xj0hbk] {
    color: var(--color-text-dark-teal);
}

.validation-modal .modal-content.validation-alert-invalid .validation-alert-message[b-elv5xj0hbk] {
    color: var(--color-error);
}

/* Modal Backdrop - Reusing ConfirmationModal styles */
.validation-modal + .modal-backdrop[b-elv5xj0hbk] {
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1040;
}

/* /Components/WelcomeCard.razor.rz.scp.css */
.welcome-card[b-8vggth8yx6] {
/*    min-height: 200px;*/
    min-height: 355px;
    position: relative;
    overflow: hidden;
}

.welcome-card-content[b-8vggth8yx6] {
    position: relative;
    z-index: 1;
}

.welcome-card-content .row[b-8vggth8yx6] {
    align-items: center;
}

.welcome-text-section[b-8vggth8yx6] {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-md);
}

.welcome-greeting[b-8vggth8yx6] {
    font-size: var(--font-size-xxl);
    font-weight: var(--font-weight-semibold);
    color: var(--color-text-dark-teal);
    margin: 0;
/*    margin-bottom: var(--spacing-sm);*/
}

.welcome-name[b-8vggth8yx6] {
    font-size: var(--font-size-xxl);
    font-weight: var(--font-weight-semibold);
    color: var(--color-text-dark-teal);
    margin: 0;
    line-height: var(--line-height-tight);
    margin-bottom: var(--spacing-sm);
}

.welcome-message[b-8vggth8yx6] {
    font-size: var(--font-size-base);
    color: var(--color-text-primary);
    margin: 0;
    margin-bottom: var(--spacing-md);
}

.welcome-button[b-8vggth8yx6] {
    align-self: flex-start;
    background-color: var(--color-primary);
    color: var(--color-text-white);
    border: none;
    padding: var(--spacing-md) var(--spacing-xxl);
    font-size: var(--font-size-base);
/*    font-weight: var(--font-weight-semibold);*/
    border-radius: var(--radius-md);
    transition: background-color var(--transition-base);
    min-width: 120px;
}

.welcome-button:hover:not(:disabled)[b-8vggth8yx6] {
    background-color: var(--color-primary-dark);
}

.welcome-illustration[b-8vggth8yx6] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
/*    padding: var(--spacing-lg);*/
}

.welcome-img[b-8vggth8yx6] {
    width: 100%;
    height: auto;
    max-width: 100%;
    object-fit: contain;
    /* Image automatically adjusts to fit within its column while maintaining aspect ratio */
    /* Ensures image stays aligned with text content */
}

.welcome-download-link[b-8vggth8yx6] {
    align-self: flex-start;
    color: var(--color-text-dark-teal);
    text-decoration: none;
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-regular);
    display: inline-flex;
    align-items: center;
    gap: var(--spacing-md);
    transition: color var(--transition-base);
    cursor: pointer;
}

.welcome-download-link:hover[b-8vggth8yx6] {
    color: var(--color-primary);
    text-decoration: underline;
}

.welcome-download-link:hover .welcome-download-icon[b-8vggth8yx6] {
    border-color: var(--color-primary);
}

.welcome-download-link:hover .welcome-download-icon i[b-8vggth8yx6] {
    color: var(--color-primary);
}

.welcome-download-icon[b-8vggth8yx6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: var(--radius-full);
    background-color: var(--color-text-white);
/*    border: 2px solid var(--color-text-dark-teal);*/
    flex-shrink: 0;
}

.download-icon-bold[b-8vggth8yx6] {
    font-size: 1.4rem !important; /* Increased size */
}

.welcome-download-icon i[b-8vggth8yx6] {
    font-size: var(--font-size-base);
    color: var(--color-text-dark-teal);
}

.welcome-download-text[b-8vggth8yx6] {
    flex: 1;
}

/* /Layout/MainLayout.razor.rz.scp.css */
.page[b-f5dwvlpmy6] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-f5dwvlpmy6] {
    flex: 1;
}

.sidebar[b-f5dwvlpmy6] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-f5dwvlpmy6] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-f5dwvlpmy6]  a, .top-row[b-f5dwvlpmy6]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-f5dwvlpmy6]  a:hover, .top-row[b-f5dwvlpmy6]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-f5dwvlpmy6]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-f5dwvlpmy6] {
        justify-content: space-between;
    }

    .top-row[b-f5dwvlpmy6]  a, .top-row[b-f5dwvlpmy6]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-f5dwvlpmy6] {
        flex-direction: row;
    }

    .sidebar[b-f5dwvlpmy6] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-f5dwvlpmy6] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-f5dwvlpmy6]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-f5dwvlpmy6], article[b-f5dwvlpmy6] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}
/* /Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-7ax43j5cj1] {
    background-color: rgba(255, 255, 255, 0.1);
}

.top-row[b-7ax43j5cj1] {
    height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-7ax43j5cj1] {
    font-size: 1.1rem;
}

.bi[b-7ax43j5cj1] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-7ax43j5cj1] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-7ax43j5cj1] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-7ax43j5cj1] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.nav-item[b-7ax43j5cj1] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-7ax43j5cj1] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-7ax43j5cj1] {
        padding-bottom: 1rem;
    }

    .nav-item[b-7ax43j5cj1]  a {
        color: #d7d7d7;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
    }

.nav-item[b-7ax43j5cj1]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-7ax43j5cj1]  a:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

@media (min-width: 641px) {
    .navbar-toggler[b-7ax43j5cj1] {
        display: none;
    }

    .collapse[b-7ax43j5cj1] {
        /* Never collapse the sidebar for wide screens */
        display: block;
    }
    
    .nav-scrollable[b-7ax43j5cj1] {
        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Pages/Decline.razor.rz.scp.css */
/* Decline Page Styles - Matching Login Page Design */
.decline-title[b-g7c8xds0pm] {
    font-weight: var(--font-weight-semibold);
}

/* Responsive Design */
@media (max-width: 768px) {
    .decline-page-container[b-g7c8xds0pm] {
        padding: 10px;
    }

    .decline-card[b-g7c8xds0pm] {
        border-radius: 12px;
    }

    .decline-form-wrapper[b-g7c8xds0pm] {
        min-height: 300px;
        padding: 1.5rem !important;
    }

    .decline-buttons[b-g7c8xds0pm] {
        flex-direction: column;
        width: 100%;
    }

    .decline-btn-yes[b-g7c8xds0pm],
    .decline-btn-no[b-g7c8xds0pm] {
        width: 100%;
        margin-bottom: 0.5rem;
    }
}

/* /Pages/PersonalInformation.razor.rz.scp.css */
.personal-information-page[b-fz4z5op40r] {
    padding: 0;
    background-color: var(--color-background);
    min-height: 100%;
}

.personal-information-page .container-fluid[b-fz4z5op40r] {
    background-color: var(--color-background);
}

/* Note: progress-title, progress-tracker-wrapper, form-container, and form-section-title 
   are now defined globally in app.css for reuse across all step pages */

.form-mandatory-note[b-fz4z5op40r] {
    font-size: var(--font-size-md);
    color: var(--color-text-secondary);
    margin-bottom: var(--spacing-xl);
}

/* Form Sections */
.form-section[b-fz4z5op40r] {
    margin-bottom: var(--spacing-xxl);
    padding-bottom: var(--spacing-xl);
    border-bottom: 1px solid var(--color-border-lighter);
}

.form-section-no-border[b-fz4z5op40r] {
    border-bottom: none !important;
}

.form-section:last-of-type[b-fz4z5op40r] {
    border-bottom: none;
}

/* Horizontal Divider - matches form-section border style */
.form-divider[b-fz4z5op40r] {
    margin-bottom: var(--spacing-xxl);
    padding-bottom: var(--spacing-xl);
    border-bottom: 1px solid var(--color-border-lighter);
}

/* Note: form-separator is now defined globally in app.css for reuse across all step pages */

.form-subsection-title[b-fz4z5op40r] {
    font-size: var(--font-size-lg);
    font-weight: var(--font-weight-semibold);
    color: var(--color-text-primary);
    margin-bottom: var(--spacing-lg);
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

.form-subsection-title:focus[b-fz4z5op40r],
.form-subsection-title:active[b-fz4z5op40r],
.form-subsection-title:hover[b-fz4z5op40r] {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Form Labels */
.form-label[b-fz4z5op40r] {
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-regular);
    color: var(--color-text-secondary);
    margin-bottom: var(--spacing-sm);
    display: block;
}

.form-label.required[b-fz4z5op40r]::after {
    content: '*';
    color: var(--color-error);
    margin-left: var(--spacing-xs);
}

/* Form text helper (e.g., "(Annually)") */
.form-text[b-fz4z5op40r] {
    font-size: var(--font-size-sm);
    color: var(--color-text-secondary);
    margin-top: var(--spacing-xs);
    margin-bottom: 0;
}

/* Placeholder styling to match label color */
.personal-info-form .form-control[b-fz4z5op40r]::placeholder {
    color: var(--color-text-secondary);
    opacity: 1;
}

/* Checkbox and Radio Styling */
.form-check[b-fz4z5op40r] {
    display: flex;
    align-items: flex-start;
    gap: var(--spacing-sm);
    margin-bottom: 0;
    margin-top: var(--spacing-xs);
}

.form-check-input[b-fz4z5op40r] {
    width: 18px;
    height: 18px;
    margin-top: 2px;
    cursor: pointer;
    flex-shrink: 0;
}

.form-check-label[b-fz4z5op40r] {
    font-size: var(--font-size-sm);
    color: var(--color-text-primary);
    cursor: pointer;
    margin-bottom: 0;
    line-height: var(--line-height-normal);
    flex: 1;
}

/* Questionnaire Section */
.questionnaire-question[b-fz4z5op40r] {
    margin-top: var(--spacing-md);
}

.question-text[b-fz4z5op40r] {
    font-size: var(--font-size-base);
    color: var(--color-text-primary);
    margin-bottom: var(--spacing-md);
    line-height: var(--line-height-relaxed);
}

.radio-group[b-fz4z5op40r] {
    display: flex;
    gap: var(--spacing-xxl);
    flex-wrap: wrap;
    margin-top: var(--spacing-sm);
}

.radio-group .form-check[b-fz4z5op40r] {
    margin-bottom: 0;
    margin-top: 0;
    align-items: center;
}

.radio-group .form-check-input[b-fz4z5op40r] {
    margin-top: 0;
}

.radio-group .form-check-label[b-fz4z5op40r] {
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-regular);
}

/* Disclaimer Section */
.disclaimer-section[b-fz4z5op40r] {
    margin-top: var(--spacing-md);
}

.disclaimer-section .form-check-label[b-fz4z5op40r] {
    font-size: var(--font-size-sm);
    line-height: var(--line-height-relaxed);
    color: var(--color-text-primary);
}

/* Form Actions */
.form-actions[b-fz4z5op40r] {
    margin-top: var(--spacing-xxl);
    padding-top: var(--spacing-xl);
/*    border-top: 1px solid var(--color-border-lighter);*/
    display: flex;
    justify-content: flex-start;
}

.btn-next[b-fz4z5op40r] {
    background-color: var(--color-text-dark-teal);
    color: var(--color-text-white);
    border: none;
    padding: var(--spacing-md) var(--spacing-xxl);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-regular);
    border-radius: var(--radius-md);
    cursor: pointer;
    transition: background-color var(--transition-base);
    min-width: 120px;
}

.btn-next:hover:not(:disabled)[b-fz4z5op40r] {
    background-color: var(--color-primary);
}

.btn-next:disabled[b-fz4z5op40r] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Validation Messages */
.invalid-feedback[b-fz4z5op40r] {
    display: block;
    width: 100%;
    margin-top: var(--spacing-xs);
    font-size: var(--font-size-sm);
    color: var(--color-error);
}

/* Validation Error Styling - Red Border for Invalid Fields */
.personal-info-form .form-control.is-invalid[b-fz4z5op40r],
.personal-info-form .form-control:invalid[b-fz4z5op40r],
.personal-info-form input.is-invalid[b-fz4z5op40r],
.personal-info-form select.is-invalid[b-fz4z5op40r],
.personal-info-form textarea.is-invalid[b-fz4z5op40r],
.personal-info-form input:invalid[b-fz4z5op40r],
.personal-info-form select:invalid[b-fz4z5op40r],
.personal-info-form textarea:invalid[b-fz4z5op40r] {
    border-color: var(--color-error) !important;
    border-width: 1px !important;
}

.personal-info-form .form-control.is-invalid:focus[b-fz4z5op40r],
.personal-info-form .form-control:invalid:focus[b-fz4z5op40r],
.personal-info-form input.is-invalid:focus[b-fz4z5op40r],
.personal-info-form select.is-invalid:focus[b-fz4z5op40r],
.personal-info-form textarea.is-invalid:focus[b-fz4z5op40r],
.personal-info-form input:invalid:focus[b-fz4z5op40r],
.personal-info-form select:invalid:focus[b-fz4z5op40r],
.personal-info-form textarea:invalid:focus[b-fz4z5op40r] {
    border-color: var(--color-error) !important;
    box-shadow: 0 0 0 2px rgba(223, 73, 92, 0.1) !important;
    outline: none !important;
}

/* Ensure validation errors show red border on all input types */
.personal-info-form input[type="text"].is-invalid[b-fz4z5op40r],
.personal-info-form input[type="email"].is-invalid[b-fz4z5op40r],
.personal-info-form input[type="tel"].is-invalid[b-fz4z5op40r],
.personal-info-form input[type="date"].is-invalid[b-fz4z5op40r],
.personal-info-form input[type="number"].is-invalid[b-fz4z5op40r] {
    border-color: var(--color-error) !important;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
    /* Note: form-container, progress-title, and form-section-title responsive styles 
       are now defined globally in app.css */
    
    .radio-group[b-fz4z5op40r] {
        flex-direction: column;
        gap: var(--spacing-md);
    }

    .form-actions[b-fz4z5op40r] {
        justify-content: flex-start;
    }
}

/* /Pages/ReviewAndSubmit.razor.rz.scp.css */
.review-submit-page[b-58sq7wgxr0] {
    padding: 0;
    background-color: var(--color-background);
    min-height: 100%;
}

.review-submit-page .container-fluid[b-58sq7wgxr0] {
    background-color: var(--color-background);
}

/* Review Section */
.review-section[b-58sq7wgxr0] {
    background-color: var(--color-background);
/*    border: 1px solid var(--color-border-lighter);*/
    border-radius: var(--radius-md);
    margin-bottom: var(--spacing-lg);
    overflow: hidden;
}

.review-section-header[b-58sq7wgxr0] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--spacing-md) var(--spacing-lg);
    cursor: pointer;
    background-color: var(--color-background-light);
    transition: background-color var(--transition-base);
}

.review-section-header:hover[b-58sq7wgxr0] {
    background-color: var(--color-background-hover, #f8f9fa);
}

.review-chevron[b-58sq7wgxr0] {
    font-size: var(--font-size-lg);
    color: var(--color-text-secondary);
    margin-right: var(--spacing-sm);
    transition: transform var(--transition-base);
}

.review-section-title[b-58sq7wgxr0] {
    font-size: var(--font-size-lg);
    font-weight: var(--font-weight-semibold);
    color: var(--color-text-primary);
    margin: 0;
}

.review-section-status[b-58sq7wgxr0] {
    display: flex;
    align-items: center;
}

/* Use the same styling as completed status step indicator */
.review-section-status .completed-indicator[b-58sq7wgxr0] {
    width: 32px;
    height: 32px;
    border-radius: var(--radius-full);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-base);
    position: relative;
    z-index: 1;
    flex-shrink: 0;
    background-color: var(--color-success);
    color: var(--color-text-white);
    border: 2px solid var(--color-success);
}

.review-section-status .completed-indicator[b-58sq7wgxr0]::before {
    content: '✓';
    font-size: 18px;
    font-weight: var(--font-weight-bold);
    color: var(--color-text-white);
    position: absolute;
}

.review-section-content[b-58sq7wgxr0] {
    padding: var(--spacing-lg);
    border-top: 1px solid var(--color-border-lighter);
    background-color: var(--color-background);
}

/* Review Info Item (Read Mode) */
.review-info-item[b-58sq7wgxr0] {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xs);
    min-width: 0; /* Allows flex items to shrink below content size */
    overflow: hidden; /* Prevents content from overflowing */
}

.review-info-label[b-58sq7wgxr0] {
    font-size: var(--font-size-sm);
    color: var(--color-text-secondary);
    font-weight: var(--font-weight-regular);
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word;
}

.review-info-label.required[b-58sq7wgxr0]::after {
    content: '*';
    color: var(--color-error);
    margin-left: var(--spacing-xs);
}

.review-info-value[b-58sq7wgxr0] {
    font-size: var(--font-size-base);
    color: var(--color-text-primary);
    font-weight: var(--font-weight-regular);
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-word;
    white-space: normal; /* Ensures text wraps */
}

/* Review Actions - Using da-nav-buttons from Step 2 */

/* Responsive Adjustments */
@media (max-width: 768px) {
    /* Mobile view: Each field is already on its own row via col-12 */
}

