/* /Components/Layout/Accountant/AccountantNav.razor.rz.scp.css */
.nav-menu[b-r09r63v4cx] {
    display: flex;
    flex-direction: column;
    padding: var(--space-2) var(--space-4);
}
/* /Components/Layout/Admin/AdminNav.razor.rz.scp.css */
.nav-menu[b-tt6grhg612] {
    display: flex;
    flex-direction: column;
    padding: var(--space-4) var(--space-4);
    gap: var(--space-1);
}
/* /Components/Layout/AuthLayout.razor.rz.scp.css */
/* AuthLayout - High-End Legal Editorial */
/* Minimal layout for authentication pages */

.auth-layout[b-pbcr61c1de] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--surface);
    padding: var(--spacing-6);
}

.auth-container[b-pbcr61c1de] {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}

/* Blazor error UI */
#blazor-error-ui[b-pbcr61c1de] {
    background: var(--error);
    color: var(--on-error);
    padding: var(--spacing-4) var(--spacing-6);
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: var(--z-tooltip);
    display: none;
    align-items: center;
    justify-content: space-between;
    border-radius: var(--rounded-lg) var(--rounded-lg) 0 0;
    box-shadow: var(--elevation-4);
}

#blazor-error-ui[style*="display: block"][b-pbcr61c1de] {
    display: flex !important;
}

#blazor-error-ui .reload[b-pbcr61c1de] {
    color: var(--on-error);
    text-decoration: underline;
    margin-left: var(--spacing-4);
    font-weight: var(--label-md-weight);
}

#blazor-error-ui .dismiss[b-pbcr61c1de] {
    cursor: pointer;
    padding: var(--spacing-2);
    margin-left: var(--spacing-6);
    font-size: 20px;
    line-height: 1;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .auth-layout[b-pbcr61c1de] {
        padding: var(--spacing-4);
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* MainLayout uses AppShell for layout and navigation.
   Keep this file limited to local layout elements only. */

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

    #blazor-error-ui .dismiss[b-3q5fyly73c] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-yvn47uwofc] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-yvn47uwofc] {
    background-color: rgba(255, 255, 255, 0.5);
}

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

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

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

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

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

    .nav-item[b-yvn47uwofc]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
    }

.nav-item[b-yvn47uwofc]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

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

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

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

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

    .nav-scrollable[b-yvn47uwofc] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Components/Layout/Organisation/OrganisationNav.razor.rz.scp.css */
.nav-menu[b-l47a0v05t4] {
    display: flex;
    flex-direction: column;
    padding: var(--space-2) var(--space-4);
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-wbu2wzfonq],
.components-reconnect-repeated-attempt-visible[b-wbu2wzfonq],
.components-reconnect-failed-visible[b-wbu2wzfonq],
.components-pause-visible[b-wbu2wzfonq],
.components-resume-failed-visible[b-wbu2wzfonq],
.components-rejoining-animation[b-wbu2wzfonq] {
    display: none;
}

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


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

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

}

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

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

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

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

    100% {
        opacity: 1;
    }
}

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

    100% {
        opacity: 0;
    }
}

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

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

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

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

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

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

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

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

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

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

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

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Layout/Shell/AppShell.razor.rz.scp.css */
.app-shell[b-ckb5c4p5sh] {
    display: flex;
    min-height: 100vh;
    font-family: var(--font-body);
}

.app-main[b-ckb5c4p5sh] {
    flex: 1;
    display: flex;
    flex-direction: column;
    margin-left: var(--sidebar-width);
    min-width: 0;
}

.mobile-overlay[b-ckb5c4p5sh] {
    display: none;
}

/* Responsive */
@media (max-width: 1024px) {
    .app-main[b-ckb5c4p5sh] {
        margin-left: var(--sidebar-collapsed-width);
    }
}

@media (max-width: 768px) {
    .app-main[b-ckb5c4p5sh] {
        margin-left: 0;
    }

    .app-shell.mobile-menu-open[b-ckb5c4p5sh]  .sidebar {
        transform: translateX(0);
    }

    .mobile-overlay[b-ckb5c4p5sh] {
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: var(--modal-backdrop);
        z-index: 99;
    }
}

@media print {
    .app-main[b-ckb5c4p5sh] {
        margin-left: 0 !important;
    }
}
/* /Components/Layout/Shell/ContentArea.razor.rz.scp.css */
.content-area[b-swlqflkzmg] {
    flex: 1;
    background: #e8f0ff;
    overflow-y: auto;
    min-height: 0;
}

[data-theme="dark"] .content-area[b-swlqflkzmg] {
    background: #131920;
}

.content-wrapper[b-swlqflkzmg] {
    padding: var(--content-padding);
    max-width: var(--content-max-width);
    margin: 0 auto;
}

/* Responsive */
@media (max-width: 768px) {
    .content-wrapper[b-swlqflkzmg] {
        padding: var(--spacing-4);
    }
}
/* /Components/Layout/Shell/Sidebar.razor.rz.scp.css */
.sidebar[b-ji6vh6q1ft] {
    width: var(--sidebar-width);
    height: 100vh;
    background: var(--surface-container-low);
    border-right: 1px solid var(--sidebar-border);
    display: flex;
    flex-direction: column;
    position: fixed;
    left: 0;
    top: 0;
    z-index: 100;
    transition: background 200ms cubic-bezier(0.4, 0, 0.2, 1);
}

.sidebar-header[b-ji6vh6q1ft] {
    height: var(--topbar-height);
    display: flex;
    align-items: center;
    padding: 0 var(--space-4);
    border-bottom: 1px solid var(--sidebar-border);
    flex-shrink: 0;
}

.sidebar-logo[b-ji6vh6q1ft] {
    text-decoration: none;
    display: flex;
    align-items: center;
    transition: opacity 200ms cubic-bezier(0.4, 0, 0.2, 1);
}

.sidebar-logo:hover[b-ji6vh6q1ft] {
    opacity: 0.8;
}

.logo-image[b-ji6vh6q1ft] {
    height: 32px;
    width: auto;
    display: block;
}

.sidebar-nav[b-ji6vh6q1ft] {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    padding: var(--space-2) 0;
}

/* Nav content is rendered by child components, so use ::deep
   when adjusting shared sidenav spacing from this file. */
.sidebar-nav[b-ji6vh6q1ft]  .nav-menu {
    margin: 0;
}

.sidebar-nav[b-ji6vh6q1ft]::-webkit-scrollbar {
    width: 6px;
}

.sidebar-nav[b-ji6vh6q1ft]::-webkit-scrollbar-track {
    background: transparent;
}

.sidebar-nav[b-ji6vh6q1ft]::-webkit-scrollbar-thumb {
    background: var(--outline-variant);
    border-radius: 3px;
    opacity: 0.4;
}

.sidebar-nav[b-ji6vh6q1ft]::-webkit-scrollbar-thumb:hover {
    background: var(--sidebar-text);
    opacity: 0.6;
}

.sidebar-footer[b-ji6vh6q1ft] {
    flex-shrink: 0;
}

/* Responsive */
@media (max-width: 1024px) {
    .sidebar[b-ji6vh6q1ft] {
        width: var(--sidebar-collapsed-width);
    }

    .logo-image[b-ji6vh6q1ft] {
        height: 28px;
    }
}

@media (max-width: 768px) {
    .sidebar[b-ji6vh6q1ft] {
        transform: translateX(-100%);
        transition: transform 0.3s ease;
    }

    .sidebar.open[b-ji6vh6q1ft] {
        transform: translateX(0);
    }
}

@media print {
    .sidebar[b-ji6vh6q1ft] {
        display: none !important;
    }
}
/* /Components/Layout/Shell/TopBar.razor.rz.scp.css */
/* Dropdown Backdrop */
.dropdown-backdrop[b-50fxsyycje] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99;
    background: transparent;
}

.topbar[b-50fxsyycje] {
    height: var(--topbar-height);
    background: var(--surface);

    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 var(--space-6);
    position: sticky;
    top: 0;
    z-index: 50;
}

.topbar-left[b-50fxsyycje] {
    display: flex;
    align-items: center;
    gap: var(--space-4);
}

.mobile-menu-toggle[b-50fxsyycje] {
    display: none;
    width: 36px;
    height: 36px;
    border-radius: var(--button-border-radius);
    background: transparent;
    border: none;
    color: var(--text-primary);
    cursor: pointer;
    align-items: center;
    justify-content: center;
    transition: background 0.15s ease;
}

.mobile-menu-toggle:hover[b-50fxsyycje] {
    background: var(--content-bg);
}

.menu-icon[b-50fxsyycje] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.menu-icon[b-50fxsyycje]  svg {
    width: 20px;
    height: 20px;
}

.page-title[b-50fxsyycje] {
    font-family: var(--font-ui);
    font-size: var(--page-title-size);
    font-weight: var(--page-title-weight);
    color: var(--text-primary);
    margin: 0;
}

.topbar-right[b-50fxsyycje] {
    display: flex;
    align-items: center;
    gap: var(--space-4);
}

.topbar-actions[b-50fxsyycje] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
}

.theme-toggle-button[b-50fxsyycje] {
    width: 36px;
    height: 36px;
    border-radius: var(--button-border-radius);
    background: transparent;
    border: none;
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.15s ease;
    position: relative;
}

.theme-toggle-button:hover[b-50fxsyycje] {
    background: var(--content-bg);
    color: var(--text-primary);
}

.theme-icon[b-50fxsyycje] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.theme-icon[b-50fxsyycje]  svg {
    width: 20px;
    height: 20px;
}

.notification-button[b-50fxsyycje] {
    width: 36px;
    height: 36px;
    border-radius: var(--button-border-radius);
    background: transparent;
    border: none;
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.15s ease;
    position: relative;
}

.notification-button:hover[b-50fxsyycje] {
    background: var(--content-bg);
    color: var(--text-primary);
}

.notification-icon[b-50fxsyycje] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.notification-icon[b-50fxsyycje]  svg {
    width: 20px;
    height: 20px;
}

/* User Menu Container */
.user-menu-container[b-50fxsyycje] {
    position: relative;
    z-index: 101;
}

.topbar-avatar[b-50fxsyycje] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--accent);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-ui);
    font-size: var(--label-size);
    font-weight: 600;
    cursor: pointer;
    border: none;
    overflow: hidden;
    transition: all 0.15s ease;
}

.topbar-avatar:hover[b-50fxsyycje] {
    transform: scale(1.05);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.topbar-avatar img[b-50fxsyycje] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* User Dropdown Portal */
.user-dropdown-portal[b-50fxsyycje] {
    position: fixed;
    top: var(--topbar-height);
    right: var(--space-6);
    z-index: 100;
    pointer-events: none;
}

/* User Dropdown Menu */
.user-dropdown[b-50fxsyycje] {
    position: relative;
    top: 8px;
    min-width: 240px;
    background: var(--surface);
    border: 1px solid var(--surface-border);
    border-radius: var(--button-border-radius);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    animation: dropdownSlide-b-50fxsyycje 0.2s ease-out;
    pointer-events: all;
}

@keyframes dropdownSlide-b-50fxsyycje {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Dropdown Header */
.user-dropdown-header[b-50fxsyycje] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-4);
}

.dropdown-avatar[b-50fxsyycje] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--accent);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-ui);
    font-size: var(--label-size);
    font-weight: 600;
    flex-shrink: 0;
    overflow: hidden;
}

.dropdown-avatar img[b-50fxsyycje] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.dropdown-user-info[b-50fxsyycje] {
    flex: 1;
    min-width: 0;
}

.dropdown-user-name[b-50fxsyycje] {
    font-family: var(--font-ui);
    font-size: var(--body-size);
    font-weight: 600;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dropdown-user-email[b-50fxsyycje] {
    font-family: var(--font-ui);
    font-size: var(--small-size);
    color: var(--text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Dropdown Divider */
.user-dropdown-divider[b-50fxsyycje] {
    height: 1px;
    background: var(--surface-border);
    margin: 0;
}

/* Dropdown Menu Items */
.user-dropdown-menu[b-50fxsyycje] {
    padding: var(--space-2);
}

.dropdown-item[b-50fxsyycje] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    width: 100%;
    padding: var(--space-3) var(--space-4);
    background: transparent;
    border: none;
    border-radius: var(--button-border-radius);
    color: var(--text-primary);
    font-family: var(--font-ui);
    font-size: var(--body-size);
    text-decoration: none;
    cursor: pointer;
    transition: background 0.15s ease;
    text-align: left;
}

.dropdown-item:hover[b-50fxsyycje] {
    background: var(--content-bg);
}

.dropdown-icon[b-50fxsyycje] {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-secondary);
    flex-shrink: 0;
}

.dropdown-icon[b-50fxsyycje]  svg {
    width: 16px;
    height: 16px;
}

/* Responsive */
@media (max-width: 768px) {
    .mobile-menu-toggle[b-50fxsyycje] {
        display: flex;
    }

    .topbar[b-50fxsyycje] {
        padding: 0 var(--space-4);
    }
}

@media print {
    .topbar[b-50fxsyycje] {
        display: none !important;
    }
}
/* /Components/Navigation/NavGroup.razor.rz.scp.css */
.nav-group[b-djcsipiqej] {
    margin: 2px 0;
}

.nav-group-parent[b-djcsipiqej] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    color: var(--sidebar-text);
    text-decoration: none;
    font-family: var(--font-ui);
    font-size: var(--label-lg-size);
    line-height: var(--label-lg-line-height);
    font-weight: var(--label-lg-weight);
    border-radius: var(--rounded-md);
    transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    user-select: none;
}

.nav-group-parent:hover[b-djcsipiqej] {
    background: var(--sidebar-hover-bg);
    color: var(--sidebar-text-active);
    transform: translateX(2px);
}

.nav-group-parent.expanded[b-djcsipiqej] {
    color: var(--sidebar-text-active);
    font-weight: 600;
}

.nav-group-icon[b-djcsipiqej] {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-group-icon > svg[b-djcsipiqej],
.nav-group-icon svg[b-djcsipiqej] {
    width: 18px;
    height: 18px;
    display: block;
}

.nav-group-label[b-djcsipiqej] {
    flex: 1;
}

.nav-group-chevron[b-djcsipiqej] {
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 200ms cubic-bezier(0.4, 0, 0.2, 1);
}

.nav-group-parent.expanded .nav-group-chevron[b-djcsipiqej] {
    transform: rotate(180deg);
}

.nav-group-chevron > svg[b-djcsipiqej],
.nav-group-chevron svg[b-djcsipiqej] {
    width: 16px;
    height: 16px;
    display: block;
}

.nav-group-children[b-djcsipiqej] {
    max-height: 0;
    overflow: hidden;
    transition: max-height 300ms cubic-bezier(0.4, 0, 0.2, 1);
}

.nav-group-children.expanded[b-djcsipiqej] {
    max-height: 500px;
}

.nav-group-children[b-djcsipiqej]  .nav-item-host {
    padding-left: 16px;
}

.nav-group-children[b-djcsipiqej]  .nav-item {
    font-size: var(--label-md-size);
    padding: 10px 16px;
}
/* /Components/Navigation/NavItem.razor.rz.scp.css */
.nav-item-host[b-u4ioqczoz4]  .nav-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    margin: 2px 0;
    color: var(--sidebar-text);
    text-decoration: none;
    font-family: var(--font-ui);
    font-size: var(--label-lg-size);
    line-height: var(--label-lg-line-height);
    font-weight: var(--label-lg-weight);
    border-radius: var(--rounded-md);
    transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    cursor: pointer;
}

.nav-item-host[b-u4ioqczoz4]  .nav-item:hover {
    background: var(--sidebar-hover-bg);
    color: var(--sidebar-text-active);
    transform: translateX(2px);
}

.nav-item-host[b-u4ioqczoz4]  .nav-item.active {
    background: var(--sidebar-active-bg);
    color: var(--sidebar-text-active);
    font-weight: 600;
}

.nav-item-host[b-u4ioqczoz4]  .nav-item.active::before {
    content: '';
    position: absolute;
    left: 0;
    top: 6px;
    bottom: 6px;
    width: 3px;
    background: var(--accent);
    border-radius: 0 2px 2px 0;
}

.nav-item-icon[b-u4ioqczoz4] {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-item-icon > svg[b-u4ioqczoz4],
.nav-item-icon svg[b-u4ioqczoz4] {
    width: 18px;
    height: 18px;
    display: block;
}

.nav-item-label[b-u4ioqczoz4] {
    flex: 1;
}

.nav-item-badge[b-u4ioqczoz4] {
    background: var(--accent);
    color: white;
    font-size: var(--small-size);
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 10px;
    min-width: 18px;
    text-align: center;
}
/* /Components/Navigation/NavSection.razor.rz.scp.css */
.nav-section[b-c2p5x7wcvc] {
    padding: var(--space-4) var(--space-4) var(--space-2) var(--space-4);
}

.nav-section-label[b-c2p5x7wcvc] {
    font-family: var(--font-ui);
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--sidebar-text);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
/* /Components/Navigation/RoleBadge.razor.rz.scp.css */
.role-badge[b-xtm2v2qbv7] {
    padding: var(--space-2) var(--space-4);
    margin: var(--space-3) 0;
}

.role-badge-label[b-xtm2v2qbv7] {
    display: inline-block;
    padding: var(--space-1) var(--space-3);
    background: var(--sidebar-active-bg);
    color: var(--accent);
    font-family: var(--font-ui);
    font-size: var(--small-size);
    font-weight: 600;
    border-radius: var(--badge-border-radius);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
/* /Components/Navigation/UserFooter.razor.rz.scp.css */
.user-footer[b-hde4nyu6a8] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--space-4);
    border-top: 1px solid var(--sidebar-border);
    gap: var(--space-3);
}

.user-info[b-hde4nyu6a8] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    flex: 1;
    min-width: 0;
    text-decoration: none;
    color: inherit;
    border-radius: 6px;
    padding: var(--space-2);
    margin: calc(var(--space-2) * -1);
    transition: all 0.15s ease;
}

.user-info:hover[b-hde4nyu6a8] {
    background: var(--sidebar-hover-bg);
}

.user-avatar[b-hde4nyu6a8] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--accent);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-ui);
    font-size: var(--label-size);
    font-weight: 600;
    flex-shrink: 0;
    overflow: hidden;
}

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

.user-details[b-hde4nyu6a8] {
    flex: 1;
    min-width: 0;
}

.user-name[b-hde4nyu6a8] {
    font-family: var(--font-ui);
    font-size: var(--body-size);
    font-weight: 500;
    color: var(--sidebar-text-active);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.user-email[b-hde4nyu6a8] {
    font-family: var(--font-ui);
    font-size: var(--small-size);
    color: var(--sidebar-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.logout-button[b-hde4nyu6a8] {
    width: 32px;
    height: 32px;
    border-radius: 6px;
    background: transparent;
    border: none;
    color: var(--sidebar-text);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.15s ease;
    flex-shrink: 0;
}

.logout-button:hover[b-hde4nyu6a8] {
    background: var(--sidebar-hover-bg);
    color: var(--sidebar-text-active);
}

.logout-icon[b-hde4nyu6a8] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.logout-icon[b-hde4nyu6a8]  svg {
    width: 16px;
    height: 16px;
}
/* /Components/Pages/Account/Login.razor.rz.scp.css */
/* Login Page - High-End Legal Editorial Design */
/* Based on brand guidelines: .claude/brand-guidelines.md */

.login-page[b-tgz408bv6l] {
    width: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.login-grid[b-tgz408bv6l] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-12);
    width: 100%;
    max-width: 1100px;
    align-items: stretch;
}

/* Brand Panel - Left Side (Desktop) */
.login-brand[b-tgz408bv6l] {
    display: flex;
}

/* Form Panel - Right Side */
.login-form-panel[b-tgz408bv6l] {
    background: var(--surface-container-lowest);
    padding: var(--spacing-12);
    border-radius: var(--rounded-xl);
    box-shadow: var(--elevation-2);
    display: flex;
    align-items: center;
}

.login-form-container[b-tgz408bv6l] {
    width: 100%;
    max-width: 420px;
    margin: 0 auto;
}

/* Header */
.login-header[b-tgz408bv6l] {
    margin-bottom: var(--spacing-8);
}

.login-header h1[b-tgz408bv6l] {
    color: var(--on-surface);
    margin: 0 0 var(--spacing-3) 0;
}

.login-header p[b-tgz408bv6l] {
    margin: 0;
    color: var(--on-surface-variant);
}

/* Alerts - Following brand guidelines */
.alert[b-tgz408bv6l] {
    display: flex;
    gap: var(--spacing-3);
    padding: var(--spacing-4);
    border-radius: var(--rounded-md);
    margin-bottom: var(--spacing-6);
}

.alert-icon[b-tgz408bv6l] {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
}

.alert-icon i[b-tgz408bv6l] {
    width: 20px;
    height: 20px;
}

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

.alert-content strong[b-tgz408bv6l] {
    display: block;
    margin-bottom: var(--spacing-1);
}

.alert-content p[b-tgz408bv6l] {
    margin: 0;
}

.alert-error[b-tgz408bv6l] {
    background: var(--error-container);
    color: var(--on-error-container);
}

.alert-error .alert-icon[b-tgz408bv6l] {
    color: var(--error);
}

.alert-success[b-tgz408bv6l] {
    background: var(--success-container);
    color: var(--on-success-container);
}

.alert-success .alert-icon[b-tgz408bv6l] {
    color: var(--success);
}

/* Form */
.login-form[b-tgz408bv6l] {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-5);
}

/* Full-width button inside form */
.login-form :global(.action-button)[b-tgz408bv6l] {
    width: 100%;
}

/* Form Options (Remember Me + Forgot Password) */
.form-options[b-tgz408bv6l] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: var(--spacing-4) 0 var(--spacing-4) 0;
}

.remember-me[b-tgz408bv6l] {
    display: flex;
    align-items: center;
    gap: var(--spacing-2);
    cursor: pointer;
    color: var(--on-surface-variant);
    user-select: none;
}

.remember-me input[type="checkbox"][b-tgz408bv6l] {
    width: 16px;
    height: 16px;
    cursor: pointer;
    accent-color: var(--primary);
}

.remember-me span[b-tgz408bv6l] {
    font-size: var(--body-sm-size);
    line-height: var(--body-sm-line-height);
}

.forgot-password[b-tgz408bv6l] {
    color: var(--primary);
    text-decoration: none;
    font-weight: var(--label-md-weight);
    transition: var(--transition-colors);
}

.forgot-password:hover[b-tgz408bv6l] {
    color: var(--primary-container);
    text-decoration: underline;
}

/* Divider */
.divider[b-tgz408bv6l] {
    display: flex;
    align-items: center;
    margin: var(--spacing-6) 0;
    color: var(--on-surface-variant);
    position: relative;
}

.divider[b-tgz408bv6l]::before,
.divider[b-tgz408bv6l]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: var(--ghost-border);
}

.divider span[b-tgz408bv6l] {
    padding: 0 var(--spacing-4);
}

/* External Provider Sign-In Buttons - Ghost Style */
.google-button[b-tgz408bv6l],
.microsoft-button[b-tgz408bv6l] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--spacing-3);
    padding: var(--spacing-3) var(--spacing-5);
    height: var(--button-height);
    background: var(--surface-container-lowest);
    border: 1px solid var(--ghost-border);
    border-radius: var(--rounded-md);
    color: var(--on-surface);
    font-family: var(--font-body);
    cursor: pointer;
    transition: var(--transition-all);
}

.google-button:hover:not(:disabled)[b-tgz408bv6l],
.microsoft-button:hover:not(:disabled)[b-tgz408bv6l] {
    background: var(--surface-container-low);
    border-color: var(--outline-variant);
    transform: translateY(-1px);
    box-shadow: var(--elevation-1);
}

.google-button:active:not(:disabled)[b-tgz408bv6l],
.microsoft-button:active:not(:disabled)[b-tgz408bv6l] {
    transform: translateY(0);
}

.google-button:disabled[b-tgz408bv6l],
.microsoft-button:disabled[b-tgz408bv6l] {
    opacity: 0.6;
    cursor: not-allowed;
}

.microsoft-button[b-tgz408bv6l] {
    margin-top: var(--spacing-3);
}

.google-icon[b-tgz408bv6l],
.microsoft-icon[b-tgz408bv6l] {
    flex-shrink: 0;
}

/* Footer */
.login-footer[b-tgz408bv6l] {
    margin-top: var(--spacing-8);
    padding-top: var(--spacing-6);
    border-top: 1px solid var(--ghost-border);
    text-align: center;
}

.login-footer p[b-tgz408bv6l] {
    margin: 0;
}

.link-primary[b-tgz408bv6l] {
    color: var(--primary);
    text-decoration: none;
    font-weight: var(--label-md-weight);
    transition: var(--transition-colors);
}

.link-primary:hover[b-tgz408bv6l] {
    color: var(--primary-container);
    text-decoration: underline;
}

/* Responsive Design */

/* Tablet - Stack vertically but keep side-by-side feel */
@media (max-width: 1024px) {
    .login-grid[b-tgz408bv6l] {
        grid-template-columns: 1fr;
        gap: var(--spacing-8);
        max-width: 600px;
    }

    .login-brand[b-tgz408bv6l] {
        order: 1;
    }

    .login-form-panel[b-tgz408bv6l] {
        order: 2;
    }
}

/* Mobile - Single column, reduced spacing */
@media (max-width: 768px) {
    .login-grid[b-tgz408bv6l] {
        gap: var(--spacing-6);
        max-width: 100%;
    }

    .login-form-panel[b-tgz408bv6l] {
        padding: var(--spacing-6);
    }

    .login-header h1[b-tgz408bv6l] {
        font-size: var(--headline-md-size);
        line-height: var(--headline-md-line-height);
    }

    .form-options[b-tgz408bv6l] {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--spacing-3);
    }

    .forgot-password[b-tgz408bv6l] {
        align-self: flex-end;
    }
}

/* Small Mobile - Further compression */
@media (max-width: 480px) {
    .login-form-panel[b-tgz408bv6l] {
        padding: var(--spacing-4);
        border-radius: var(--rounded-lg);
    }

    .login-header[b-tgz408bv6l] {
        margin-bottom: var(--spacing-6);
    }

    .login-footer[b-tgz408bv6l] {
        margin-top: var(--spacing-6);
    }
}
/* /Components/Pages/Account/Profile.razor.rz.scp.css */
/* Profile Page - High-End Legal Editorial Design */
/* Based on brand guidelines: .claude/brand-guidelines.md */

.profile-page[b-xw68tjezqw] {
    width: 100%;
    min-height: 100vh;
    padding: var(--spacing-8);
    background: var(--surface-dim);
}

.profile-container[b-xw68tjezqw] {
    max-width: 900px;
    margin: 0 auto;
}

/* Header */
.profile-header[b-xw68tjezqw] {
    margin-bottom: var(--spacing-8);
}

.profile-header h1[b-xw68tjezqw] {
    color: var(--on-surface);
    margin: 0 0 var(--spacing-2) 0;
}

.profile-header p[b-xw68tjezqw] {
    margin: 0;
    color: var(--on-surface-variant);
}

/* Loading State */
.loading-state[b-xw68tjezqw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--spacing-12);
    gap: var(--spacing-4);
}

.spinner[b-xw68tjezqw] {
    animation: spin-b-xw68tjezqw 1s linear infinite;
}

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

/* Alerts */
.alert[b-xw68tjezqw] {
    display: flex;
    gap: var(--spacing-3);
    padding: var(--spacing-4);
    border-radius: var(--rounded-md);
    margin-bottom: var(--spacing-6);
}

.alert-icon[b-xw68tjezqw] {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
}

.alert-icon i[b-xw68tjezqw] {
    width: 20px;
    height: 20px;
}

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

.alert-content strong[b-xw68tjezqw] {
    display: block;
    margin-bottom: var(--spacing-1);
}

.alert-content p[b-xw68tjezqw] {
    margin: 0;
}

.alert-error[b-xw68tjezqw] {
    background: var(--error-container);
    color: var(--on-error-container);
}

.alert-error .alert-icon[b-xw68tjezqw] {
    color: var(--error);
}

.alert-success[b-xw68tjezqw] {
    background: var(--success-container);
    color: var(--on-success-container);
}

.alert-success .alert-icon[b-xw68tjezqw] {
    color: var(--success);
}

/* Form */
.profile-form[b-xw68tjezqw] {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-6);
}

/* Profile Grid Layout */
.profile-grid[b-xw68tjezqw] {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--spacing-6);
}

/* Profile Sections */
.profile-section[b-xw68tjezqw] {
    background: var(--surface-container-lowest);
    padding: var(--spacing-6);
    border-radius: var(--rounded-lg);
    box-shadow: var(--elevation-1);
}

.section-title[b-xw68tjezqw] {
    font-size: var(--title-md-size);
    line-height: var(--title-md-line-height);
    font-weight: var(--title-md-weight);
    color: var(--on-surface);
    margin: 0 0 var(--spacing-5) 0;
}

/* Avatar Section */
.avatar-section[b-xw68tjezqw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.avatar-upload[b-xw68tjezqw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-4);
    width: 100%;
}

.avatar-preview[b-xw68tjezqw] {
    width: 160px;
    height: 160px;
    border-radius: 50%;
    overflow: hidden;
    border: 4px solid var(--outline-variant);
    box-shadow: var(--elevation-2);
}

.avatar-image[b-xw68tjezqw] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.avatar-placeholder[b-xw68tjezqw] {
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, var(--primary) 0%, var(--tertiary) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.avatar-initials[b-xw68tjezqw] {
    font-size: 3rem;
    font-weight: var(--title-lg-weight);
    color: var(--on-primary);
    text-transform: uppercase;
}

.avatar-actions[b-xw68tjezqw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-2);
}

.avatar-input[b-xw68tjezqw] {
    display: none;
}

.avatar-button[b-xw68tjezqw] {
    display: flex;
    align-items: center;
    gap: var(--spacing-2);
    padding: var(--spacing-3) var(--spacing-5);
    background: var(--primary);
    color: var(--on-primary);
    border: none;
    border-radius: var(--rounded-md);
    font-family: var(--font-body);
    font-size: var(--label-md-size);
    font-weight: var(--label-md-weight);
    cursor: pointer;
    transition: var(--transition-all);
    box-shadow: var(--elevation-1);
}

.avatar-button:hover[b-xw68tjezqw] {
    background: var(--primary-container);
    transform: translateY(-1px);
    box-shadow: var(--elevation-2);
}

.avatar-button:active[b-xw68tjezqw] {
    transform: translateY(0);
}

.avatar-button i[b-xw68tjezqw] {
    width: 16px;
    height: 16px;
}

/* Warning Box */
.warning-box[b-xw68tjezqw] {
    display: flex;
    gap: var(--spacing-3);
    padding: var(--spacing-4);
    background: var(--warning-container);
    color: var(--on-warning-container);
    border-radius: var(--rounded-md);
    border-left: 4px solid var(--warning);
    margin-top: var(--spacing-4);
}

.warning-box i[b-xw68tjezqw] {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    color: var(--warning);
}

.warning-box strong[b-xw68tjezqw] {
    display: block;
    margin-bottom: var(--spacing-1);
}

.warning-box p[b-xw68tjezqw] {
    margin: 0;
}

/* Form Actions */
.profile-actions[b-xw68tjezqw] {
    display: flex;
    justify-content: flex-end;
    gap: var(--spacing-3);
    padding-top: var(--spacing-4);
    border-top: 1px solid var(--outline-variant);
}

/* Responsive Design */

/* Tablet */
@media (max-width: 768px) {
    .profile-page[b-xw68tjezqw] {
        padding: var(--spacing-6);
    }

    .profile-container[b-xw68tjezqw] {
        max-width: 100%;
    }

    .avatar-preview[b-xw68tjezqw] {
        width: 120px;
        height: 120px;
    }

    .avatar-initials[b-xw68tjezqw] {
        font-size: 2.5rem;
    }

    .profile-actions[b-xw68tjezqw] {
        flex-direction: column-reverse;
    }

    .profile-actions :global(.action-button)[b-xw68tjezqw] {
        width: 100%;
    }
}

/* Mobile */
@media (max-width: 480px) {
    .profile-page[b-xw68tjezqw] {
        padding: var(--spacing-4);
    }

    .profile-header[b-xw68tjezqw] {
        margin-bottom: var(--spacing-6);
    }

    .profile-header h1[b-xw68tjezqw] {
        font-size: var(--headline-md-size);
        line-height: var(--headline-md-line-height);
    }

    .profile-section[b-xw68tjezqw] {
        padding: var(--spacing-4);
    }

    .avatar-preview[b-xw68tjezqw] {
        width: 100px;
        height: 100px;
    }

    .avatar-initials[b-xw68tjezqw] {
        font-size: 2rem;
    }

    .section-title[b-xw68tjezqw] {
        font-size: var(--title-sm-size);
        line-height: var(--title-sm-line-height);
    }
}
/* /Components/Pages/Accountant/Dashboard.razor.rz.scp.css */
.dashboard-grid[b-3ngpw3s4is] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: var(--space-5);
}

@media (max-width: 768px) {
    .dashboard-grid[b-3ngpw3s4is] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Admin/Dashboard.razor.rz.scp.css */
.dashboard-grid[b-vumambbyu4] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: var(--space-5);
}

@media (max-width: 768px) {
    .dashboard-grid[b-vumambbyu4] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* LegalHub Landing Page Styles - Scoped to Home.razor */

*[b-sjst3oblah], *[b-sjst3oblah]::before, *[b-sjst3oblah]::after { box-sizing: border-box; margin: 0; padding: 0; }

/* Landing page specific variables - use sparingly, prefer global tokens */
:root[b-sjst3oblah] {
  --landing-primary: #1f6feb;
  --landing-amber: #fbbf24;
  --landing-teal: #14b8a6;
}

html[b-sjst3oblah] { scroll-behavior: smooth; }
body[b-sjst3oblah] { font-family: 'DM Sans', sans-serif; color: var(--on-surface); background: #ffffff; line-height: 1.65; -webkit-font-smoothing: antialiased; overflow-x: hidden; }

.serif[b-sjst3oblah] { font-family: 'Fraunces', serif; }
.container[b-sjst3oblah] { max-width: 1160px; margin: 0 auto; padding: 0 24px; }
section[b-sjst3oblah] { padding: 48px 0; }

h1[b-sjst3oblah] { font-family: 'Fraunces', serif; font-size: clamp(2.4rem, 5vw, 3.5rem); line-height: 1.08; font-weight: 800; color: var(--on-surface); }
h2[b-sjst3oblah] { font-family: 'Fraunces', serif; font-size: clamp(1.8rem, 3.5vw, 2.5rem); line-height: 1.18; font-weight: 700; color: var(--on-surface); }
h3[b-sjst3oblah] { font-family: 'Fraunces', serif; font-size: 1.4rem; font-weight: 600; line-height: 1.3; color: var(--on-surface); }
p[b-sjst3oblah] { color: var(--on-surface-variant); font-size: 1.05rem; }

.label[b-sjst3oblah] { font-size: 0.75rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; color: var(--landing-primary); margin-bottom: 12px; display: block; }
.label-teal[b-sjst3oblah] { color: var(--landing-teal); }

img[b-sjst3oblah] { display: block; max-width: 100%; }
a[b-sjst3oblah] { text-decoration: none; }

/* BUTTONS */
.btn[b-sjst3oblah] { display: inline-flex; align-items: center; gap: 8px; padding: 14px 26px; border-radius: var(--rounded-md); font-family: 'DM Sans', sans-serif; font-size: 1rem; font-weight: 500; cursor: pointer; transition: all 0.22s cubic-bezier(0.22,1,0.36,1); border: none; line-height: 1; }
.btn-primary[b-sjst3oblah] { background: var(--landing-primary); color: #ffffff; }
.btn-primary:hover[b-sjst3oblah] { background: #1158c7; transform: translateY(-1px); box-shadow: 0 6px 20px rgba(31,111,235,0.32); }
.btn-amber[b-sjst3oblah] { background: var(--landing-amber); color: var(--on-surface); }
.btn-amber:hover[b-sjst3oblah] { background: #f59e0b; transform: translateY(-1px); box-shadow: 0 6px 20px rgba(251,191,36,0.35); }
.btn-ghost[b-sjst3oblah] { background: transparent; color: var(--landing-primary); border: 1.5px solid var(--landing-primary); }
.btn-ghost:hover[b-sjst3oblah] { background: #eff6ff; }
.btn-ghost-white[b-sjst3oblah] { background: transparent; color: #ffffff; border: 1.5px solid rgba(255,255,255,0.55); }
.btn-ghost-white:hover[b-sjst3oblah] { background: rgba(255,255,255,0.1); }
.btn-sm[b-sjst3oblah] { padding: 10px 20px; font-size: 0.9rem; }

/* TICK LIST */
.tick-list[b-sjst3oblah] { list-style: none; display: flex; flex-direction: column; gap: 14px; margin: 24px 0 32px; }
.tick-list li[b-sjst3oblah] { display: flex; align-items: flex-start; gap: 12px; font-size: 0.98rem; color: var(--on-surface-variant); }
.tick-list li[b-sjst3oblah]::before { content: ''; display: block; width: 20px; height: 20px; min-width: 20px; border-radius: 50%; background: #eff6ff; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2 6l3 3 5-5' stroke='%231f6feb' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; margin-top: 2px; }
.tick-list-teal li[b-sjst3oblah]::before { background: #f0fdfa; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2 6l3 3 5-5' stroke='%230f766e' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; }

/* ===== NAV ===== */
nav[b-sjst3oblah] { position: fixed; top: 0; left: 0; right: 0; z-index: 100; height: 68px; display: flex; align-items: center; transition: background 0.3s, box-shadow 0.3s; }
nav.scrolled[b-sjst3oblah] { background: #ffffff; box-shadow: 0 1px 4px rgba(0,0,0,0.09); }
.nav-inner[b-sjst3oblah] { display: flex; align-items: center; justify-content: space-between; width: 100%; }
.nav-logo[b-sjst3oblah] { font-family: 'Fraunces', serif; font-size: 1.35rem; font-weight: 800; color: var(--landing-primary); letter-spacing: -0.01em; }
.nav-logo span[b-sjst3oblah] { color: var(--on-surface); }
.nav-links[b-sjst3oblah] { display: flex; gap: 28px; list-style: none; }
.nav-links a[b-sjst3oblah] { font-size: 0.95rem; font-weight: 500; color: var(--on-surface-variant); transition: color 0.18s; }
.nav-links a:hover[b-sjst3oblah] { color: var(--landing-primary); }
.nav-links a.teal-dot[b-sjst3oblah] { position: relative; }
.nav-links a.teal-dot[b-sjst3oblah]::after { content: ''; position: absolute; top: -4px; right: -7px; width: 5px; height: 5px; border-radius: 50%; background: var(--landing-teal); }
.nav-actions[b-sjst3oblah] { display: flex; align-items: center; gap: 10px; }

/* ===== HERO ===== */
.hero[b-sjst3oblah] { padding: 80px 0 40px; background: #ffffff; position: relative; overflow: hidden; }
.hero-bg[b-sjst3oblah] { position: absolute; top: 0; right: 0; width: 55%; height: 100%; background: radial-gradient(ellipse at 80% 30%, #eff6ff 0%, transparent 70%); pointer-events: none; }
.hero-dots[b-sjst3oblah] { position: absolute; top: 60px; right: 40px; width: 340px; height: 340px; background-image: radial-gradient(circle, #dbeafe 1.5px, transparent 1.5px); background-size: 22px 22px; opacity: 0.7; pointer-events: none; }
.hero-grid[b-sjst3oblah] { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
.hero-eyebrow[b-sjst3oblah] { display: inline-flex; align-items: center; gap: 8px; background: #eff6ff; border: 1px solid #dbeafe; border-radius: 40px; padding: 6px 14px 6px 8px; margin-bottom: 24px; }
.hero-eyebrow-dot[b-sjst3oblah] { width: 8px; height: 8px; border-radius: 50%; background: var(--landing-primary); }
.hero-eyebrow span[b-sjst3oblah] { font-size: 0.82rem; font-weight: 600; color: var(--landing-primary); }
.hero h1[b-sjst3oblah] { margin-bottom: 22px; }
.hero h1 em[b-sjst3oblah] { font-style: italic; color: var(--landing-primary); }
.hero p[b-sjst3oblah] { font-size: 1.08rem; line-height: 1.7; max-width: 470px; margin-bottom: 36px; }
.hero-cta[b-sjst3oblah] { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-bottom: 36px; }
.hero-trust[b-sjst3oblah] { display: flex; flex-wrap: wrap; gap: 20px; }
.hero-trust-item[b-sjst3oblah] { display: flex; align-items: center; gap: 7px; font-size: 0.82rem; color: var(--on-surface-variant); font-weight: 500; }
.hero-trust-icon[b-sjst3oblah] { width: 16px; height: 16px; border-radius: 50%; background: #eff6ff; display: flex; align-items: center; justify-content: center; }

/* DASHBOARD MOCKUP */
.dashboard-mockup[b-sjst3oblah] { background: #ffffff; border-radius: 16px; box-shadow: 0 8px 48px rgba(31,111,235,0.14), 0 2px 12px rgba(0,0,0,0.08); border: 1px solid #e2e8f0; padding: 20px; transform: rotate(2deg); position: relative; }
.dash-header[b-sjst3oblah] { display: flex; align-items: center; gap: 8px; margin-bottom: 18px; }
.dash-dot[b-sjst3oblah] { width: 10px; height: 10px; border-radius: 50%; }
.dash-title[b-sjst3oblah] { font-size: 0.78rem; font-weight: 600; color: var(--on-surface-variant); margin-left: auto; }
.compliance-gauge-wrap[b-sjst3oblah] { display: flex; flex-direction: column; align-items: center; margin-bottom: 18px; }
.gauge-svg[b-sjst3oblah] { width: 160px; height: 90px; }
.gauge-score[b-sjst3oblah] { font-family: 'Fraunces', serif; font-size: 2rem; font-weight: 800; color: var(--landing-amber); }
.gauge-label[b-sjst3oblah] { font-size: 0.72rem; font-weight: 600; color: #94a3b8; text-transform: uppercase; letter-spacing: 0.07em; }
.dash-items[b-sjst3oblah] { display: flex; flex-direction: column; gap: 8px; }
.dash-item[b-sjst3oblah] { display: flex; align-items: center; gap: 10px; padding: 9px 12px; border-radius: var(--rounded-md); background: #f1f5f9; }
.dash-item-dot[b-sjst3oblah] { width: 8px; height: 8px; min-width: 8px; border-radius: 50%; }
.dash-item-dot.green[b-sjst3oblah] { background: #22c55e; }
.dash-item-dot.amber[b-sjst3oblah] { background: var(--landing-amber); }
.dash-item-dot.red[b-sjst3oblah] { background: #ef4444; }
.dash-item-label[b-sjst3oblah] { font-size: 0.8rem; font-weight: 500; color: var(--on-surface-variant); flex: 1; }
.dash-item-tag[b-sjst3oblah] { font-size: 0.68rem; font-weight: 600; padding: 3px 8px; border-radius: 20px; }
.tag-green[b-sjst3oblah] { background: #dcfce7; color: #15803d; }
.tag-amber[b-sjst3oblah] { background: #fef9c3; color: #a16207; }
.tag-red[b-sjst3oblah] { background: #fee2e2; color: #b91c1c; }
.floating-card[b-sjst3oblah] { position: absolute; background: #ffffff; border-radius: var(--rounded-lg); box-shadow: 0 4px 20px rgba(0,0,0,0.09); border: 1px solid #e2e8f0; padding: 10px 14px; display: flex; align-items: center; gap: 8px; }
.floating-card-1[b-sjst3oblah] { bottom: -18px; left: -30px; }
.floating-card-2[b-sjst3oblah] { top: -16px; right: -20px; }
.float-icon[b-sjst3oblah] { width: 28px; height: 28px; border-radius: var(--rounded-sm); display: flex; align-items: center; justify-content: center; font-size: 14px; }
.float-text strong[b-sjst3oblah] { font-size: 0.78rem; font-weight: 600; color: var(--on-surface); display: block; }
.float-text span[b-sjst3oblah] { font-size: 0.68rem; color: #94a3b8; }

/* ===== STATS BAR ===== */
.stats-bar[b-sjst3oblah] { padding: 32px 0; background: #eff6ff; border-top: 1px solid #dbeafe; border-bottom: 1px solid #dbeafe; }
.stats-grid[b-sjst3oblah] { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-bottom: 24px; }
.stat-card[b-sjst3oblah] { text-align: center; padding: 16px 12px; }
.stat-number[b-sjst3oblah] { font-family: 'Fraunces', serif; font-size: clamp(2rem, 4vw, 2.8rem); font-weight: 800; color: var(--landing-primary); display: block; line-height: 1; margin-bottom: 8px; }
.stat-label[b-sjst3oblah] { font-size: 0.88rem; color: var(--on-surface-variant); font-weight: 500; }
.logos-strip[b-sjst3oblah] { display: flex; flex-direction: column; align-items: center; gap: 20px; }
.logos-label[b-sjst3oblah] { font-size: 0.8rem; color: #94a3b8; font-weight: 500; text-transform: uppercase; letter-spacing: 0.08em; }
.logos-row[b-sjst3oblah] { display: flex; align-items: center; gap: 40px; flex-wrap: wrap; justify-content: center; }
.logo-placeholder[b-sjst3oblah] { height: 28px; border-radius: 4px; background: #cbd5e1; opacity: 0.6; }

/* ===== FEATURE SECTIONS ===== */
.feature-section[b-sjst3oblah] { overflow: hidden; }
.feature-grid[b-sjst3oblah] { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
.feature-grid.reverse[b-sjst3oblah] { direction: rtl; }
.feature-grid.reverse > *[b-sjst3oblah] { direction: ltr; }
.feature-content .label[b-sjst3oblah] { margin-bottom: 14px; }
.feature-content h2[b-sjst3oblah] { margin-bottom: 18px; }
.feature-content p[b-sjst3oblah] { margin-bottom: 4px; line-height: 1.72; }
.feature-link[b-sjst3oblah] { display: inline-flex; align-items: center; gap: 6px; color: var(--landing-primary); font-weight: 600; font-size: 0.95rem; margin-top: 8px; transition: gap 0.2s; }
.feature-link:hover[b-sjst3oblah] { gap: 10px; }
.feature-link-teal[b-sjst3oblah] { color: var(--landing-teal); }
.feature-visual[b-sjst3oblah] { border-radius: var(--rounded-xl); overflow: visible; position: relative; }

/* MOCKUP SCREENS */
.mockup-screen[b-sjst3oblah] { background: #ffffff; border-radius: var(--rounded-xl); box-shadow: 0 8px 40px rgba(0,0,0,0.12); border: 1px solid #e2e8f0; overflow: hidden; }
.mockup-topbar[b-sjst3oblah] { background: #f1f5f9; padding: 10px 16px; display: flex; align-items: center; gap: 6px; border-bottom: 1px solid #e2e8f0; }
.mockup-circle[b-sjst3oblah] { width: 9px; height: 9px; border-radius: 50%; }
.mockup-url[b-sjst3oblah] { background: #ffffff; border: 1px solid #e2e8f0; border-radius: 20px; flex: 1; height: 22px; margin: 0 16px; font-size: 0.68rem; color: #94a3b8; display: flex; align-items: center; padding: 0 10px; }

/* Compliance mockup */
.comp-mockup-body[b-sjst3oblah] { padding: 20px; }
.comp-section-title[b-sjst3oblah] { font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.09em; color: #94a3b8; margin-bottom: 12px; }
.comp-row[b-sjst3oblah] { display: flex; align-items: center; gap: 10px; padding: 11px 14px; border-radius: var(--rounded-md); margin-bottom: 8px; border: 1px solid transparent; }
.comp-row.done[b-sjst3oblah] { background: #f0fdf4; border-color: #bbf7d0; }
.comp-row.warn[b-sjst3oblah] { background: #fffbeb; border-color: #fde68a; }
.comp-row.fail[b-sjst3oblah] { background: #fff1f2; border-color: #fecdd3; }
.comp-row-icon[b-sjst3oblah] { width: 26px; height: 26px; border-radius: var(--rounded-sm); display: flex; align-items: center; justify-content: center; font-size: 13px; flex-shrink: 0; }
.comp-row-label[b-sjst3oblah] { flex: 1; font-size: 0.82rem; font-weight: 500; color: var(--on-surface-variant); }
.comp-row-status[b-sjst3oblah] { font-size: 0.7rem; font-weight: 600; padding: 3px 9px; border-radius: 20px; }

/* Document grid mockup */
.doc-grid-mockup[b-sjst3oblah] { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 20px; }
.doc-card-mock[b-sjst3oblah] { background: #f1f5f9; border-radius: var(--rounded-lg); padding: 16px; border: 1px dashed #cbd5e1; position: relative; }
.doc-card-mock:first-child[b-sjst3oblah] { border-color: #dbeafe; background: #eff6ff; }
.doc-icon-circle[b-sjst3oblah] { width: 36px; height: 36px; border-radius: var(--rounded-md); background: #dbeafe; display: flex; align-items: center; justify-content: center; margin-bottom: 10px; }
.doc-name[b-sjst3oblah] { font-size: 0.8rem; font-weight: 600; color: var(--on-surface); margin-bottom: 4px; }
.doc-cat[b-sjst3oblah] { font-size: 0.68rem; color: #94a3b8; margin-bottom: 10px; }
.doc-badge[b-sjst3oblah] { position: absolute; top: 12px; right: 12px; font-size: 0.62rem; font-weight: 700; padding: 3px 8px; border-radius: 20px; background: var(--landing-amber); color: var(--on-surface); }
.doc-badge-premium[b-sjst3oblah] { background: #e2e8f0; color: var(--on-surface-variant); }
.doc-gen-btn[b-sjst3oblah] { font-size: 0.72rem; font-weight: 600; color: var(--landing-primary); }

/* ===== AUDIENCE SPLIT ===== */
.audience-split[b-sjst3oblah] { padding: 0; }
.split-grid[b-sjst3oblah] { display: grid; grid-template-columns: 1fr 1fr; }
.split-panel[b-sjst3oblah] { padding: 48px 40px; }
.split-panel-teal[b-sjst3oblah] { background: #f0fdfa; }
.split-panel-blue[b-sjst3oblah] { background: #eff6ff; }
.audience-badge[b-sjst3oblah] { display: inline-block; font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; padding: 5px 14px; border-radius: 40px; margin-bottom: 20px; }
.audience-badge-teal[b-sjst3oblah] { background: var(--landing-teal); color: #ffffff; }
.audience-badge-blue[b-sjst3oblah] { background: var(--landing-primary); color: #ffffff; }

/* ===== LAWYER SECTION ===== */
.lawyer-visual[b-sjst3oblah] { background: #f1f5f9; border-radius: var(--rounded-xl); padding: 32px; display: flex; flex-direction: column; gap: 20px; position: relative; overflow: hidden; }
.lawyer-visual-bg[b-sjst3oblah] { position: absolute; top: -40px; right: -40px; width: 200px; height: 200px; border-radius: 50%; background: #eff6ff; opacity: 0.7; }
.lawyer-avatar-row[b-sjst3oblah] { display: flex; gap: -8px; position: relative; z-index: 1; }
.lawyer-avatar[b-sjst3oblah] { width: 56px; height: 56px; border-radius: 50%; border: 3px solid #ffffff; background: #cbd5e1; display: flex; align-items: center; justify-content: center; font-size: 0.85rem; font-weight: 700; color: var(--on-surface-variant); }
.lawyer-avatar:not(:first-child)[b-sjst3oblah] { margin-left: -12px; }
.lawyer-avatar.blue[b-sjst3oblah] { background: #dbeafe; color: var(--landing-primary); }
.lawyer-avatar.teal[b-sjst3oblah] { background: #f0fdfa; color: var(--landing-teal); }
.lawyer-card[b-sjst3oblah] { background: #ffffff; border-radius: var(--rounded-lg); padding: 16px 20px; box-shadow: 0 2px 8px rgba(0,0,0,0.06); border: 1px solid #e2e8f0; }
.lawyer-card-head[b-sjst3oblah] { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.lawyer-card-icon[b-sjst3oblah] { width: 32px; height: 32px; border-radius: var(--rounded-md); background: #eff6ff; display: flex; align-items: center; justify-content: center; }
.lawyer-card-title[b-sjst3oblah] { font-size: 0.85rem; font-weight: 600; color: var(--on-surface); }
.lawyer-card-sub[b-sjst3oblah] { font-size: 0.75rem; color: #94a3b8; }
.book-btn[b-sjst3oblah] { display: inline-flex; align-items: center; gap: 6px; background: var(--landing-primary); color: #ffffff; padding: 10px 18px; border-radius: var(--rounded-md); font-size: 0.82rem; font-weight: 600; cursor: pointer; }
.time-slots[b-sjst3oblah] { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
.slot[b-sjst3oblah] { font-size: 0.72rem; font-weight: 600; padding: 5px 10px; border-radius: 6px; border: 1.5px solid #e2e8f0; color: var(--on-surface-variant); cursor: pointer; transition: all 0.15s; }
.slot.selected[b-sjst3oblah] { border-color: var(--landing-primary); color: var(--landing-primary); background: #eff6ff; }
.sra-badge[b-sjst3oblah] { display: inline-flex; align-items: center; gap: 6px; background: #f1f5f9; border-radius: 40px; padding: 6px 12px; font-size: 0.75rem; font-weight: 600; color: var(--on-surface-variant); }

/* ===== DARK CTA BAND ===== */
.dark-cta[b-sjst3oblah] { background: #0a0f1e; padding: 56px 0; text-align: center; position: relative; overflow: hidden; }
.dark-cta-glow[b-sjst3oblah] { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 600px; height: 400px; background: radial-gradient(ellipse, rgba(31,111,235,0.25) 0%, transparent 70%); pointer-events: none; }
.dark-cta h2[b-sjst3oblah] { color: #ffffff; margin-bottom: 18px; }
.dark-cta p[b-sjst3oblah] { color: rgba(255,255,255,0.6); margin-bottom: 40px; max-width: 440px; margin-left: auto; margin-right: auto; }
.dark-cta .label[b-sjst3oblah] { color: rgba(255,255,255,0.4); margin-bottom: 20px; }
.dark-cta-btns[b-sjst3oblah] { display: flex; gap: 14px; justify-content: center; margin-bottom: 24px; flex-wrap: wrap; }
.dark-cta-meta[b-sjst3oblah] { font-size: 0.82rem; color: rgba(255,255,255,0.35); font-weight: 500; }

/* ===== TEMPLATES ===== */
.templates[b-sjst3oblah] { background: #f1f5f9; }
.templates-header[b-sjst3oblah] { text-align: center; margin-bottom: 32px; }
.templates-header h2[b-sjst3oblah] { margin-bottom: 14px; }
.templates-header p[b-sjst3oblah] { max-width: 500px; margin: 0 auto; }
.templates-grid[b-sjst3oblah] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 40px; }
.template-card[b-sjst3oblah] { background: #ffffff; border-radius: var(--rounded-lg); padding: 24px; border: 1px solid #e2e8f0; transition: all 0.22s; position: relative; cursor: pointer; }
.template-card:hover[b-sjst3oblah] { box-shadow: 0 4px 20px rgba(0,0,0,0.09); transform: translateY(-2px); border-color: #dbeafe; }
.template-icon[b-sjst3oblah] { width: 44px; height: 44px; border-radius: var(--rounded-md); background: #eff6ff; display: flex; align-items: center; justify-content: center; margin-bottom: 14px; }
.template-name[b-sjst3oblah] { font-size: 0.95rem; font-weight: 600; color: var(--on-surface); margin-bottom: 4px; }
.template-cat[b-sjst3oblah] { font-size: 0.78rem; color: #94a3b8; margin-bottom: 14px; }
.template-footer[b-sjst3oblah] { display: flex; align-items: center; justify-content: space-between; }
.template-badge[b-sjst3oblah] { font-size: 0.68rem; font-weight: 700; padding: 4px 10px; border-radius: 20px; }
.template-badge.free[b-sjst3oblah] { background: var(--landing-amber); color: var(--on-surface); }
.template-badge.premium[b-sjst3oblah] { background: #e2e8f0; color: var(--on-surface-variant); }
.template-gen[b-sjst3oblah] { font-size: 0.82rem; font-weight: 600; color: var(--landing-primary); }
.templates-cta[b-sjst3oblah] { text-align: center; }
.templates-cta a[b-sjst3oblah] { color: var(--landing-primary); font-weight: 600; font-size: 0.98rem; display: inline-flex; align-items: center; gap: 6px; }
.templates-cta a:hover[b-sjst3oblah] { text-decoration: underline; }

/* ===== TESTIMONIALS ===== */
.testimonials[b-sjst3oblah] { background: #ffffff; }
.testimonials-header[b-sjst3oblah] { text-align: center; margin-bottom: 32px; }
.testimonials-grid[b-sjst3oblah] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.testimonial-card[b-sjst3oblah] { background: #f1f5f9; border-radius: var(--rounded-xl); padding: 32px; border: 1px solid #e2e8f0; position: relative; }
.quote-mark[b-sjst3oblah] { font-family: 'Fraunces', serif; font-size: 4rem; line-height: 1; color: #dbeafe; position: absolute; top: 16px; left: 24px; font-weight: 900; }
.testimonial-text[b-sjst3oblah] { font-size: 0.98rem; line-height: 1.7; color: var(--on-surface-variant); margin-bottom: 24px; margin-top: 28px; font-style: italic; }
.testimonial-author[b-sjst3oblah] { display: flex; align-items: center; gap: 12px; }
.author-avatar[b-sjst3oblah] { width: 44px; height: 44px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 0.85rem; flex-shrink: 0; }
.author-name[b-sjst3oblah] { font-size: 0.9rem; font-weight: 600; color: var(--on-surface); }
.author-role[b-sjst3oblah] { font-size: 0.78rem; color: #94a3b8; }
.stars[b-sjst3oblah] { color: #f59e0b; font-size: 0.9rem; letter-spacing: 1px; margin-bottom: 4px; }

/* ===== PRICING ===== */
.pricing[b-sjst3oblah] { background: #eff6ff; }
.pricing-header[b-sjst3oblah] { text-align: center; margin-bottom: 32px; }
.pricing-header h2[b-sjst3oblah] { margin-bottom: 12px; }
.pricing-grid[b-sjst3oblah] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; max-width: 960px; margin: 0 auto 32px; }
.pricing-card[b-sjst3oblah] { background: #ffffff; border-radius: var(--rounded-xl); padding: 36px 30px; border: 1.5px solid #e2e8f0; position: relative; transition: box-shadow 0.22s; }
.pricing-card:hover[b-sjst3oblah] { box-shadow: 0 4px 20px rgba(0,0,0,0.09); }
.pricing-card.featured[b-sjst3oblah] { background: var(--landing-primary); border-color: var(--landing-primary); }
.pricing-card.featured h3[b-sjst3oblah], .pricing-card.featured .price-amount[b-sjst3oblah], .pricing-card.featured .price-period[b-sjst3oblah] { color: #ffffff !important; }
.pricing-card.featured .pricing-list li[b-sjst3oblah] { color: rgba(255,255,255,0.85) !important; }
.pricing-card.featured .pricing-list li[b-sjst3oblah]::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2 6l3 3 5-5' stroke='white' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-color: rgba(255,255,255,0.2); }
.popular-badge[b-sjst3oblah] { position: absolute; top: -12px; left: 50%; transform: translateX(-50%); background: var(--landing-amber); color: var(--on-surface); font-size: 0.7rem; font-weight: 700; padding: 5px 14px; border-radius: 40px; white-space: nowrap; }
.pricing-plan-name[b-sjst3oblah] { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; color: #94a3b8; margin-bottom: 8px; }
.pricing-card.featured .pricing-plan-name[b-sjst3oblah] { color: rgba(255,255,255,0.6); }
.price-row[b-sjst3oblah] { display: flex; align-items: baseline; gap: 4px; margin-bottom: 4px; }
.price-amount[b-sjst3oblah] { font-family: 'Fraunces', serif; font-size: 2.4rem; font-weight: 800; color: var(--on-surface); }
.price-period[b-sjst3oblah] { font-size: 0.85rem; color: #94a3b8; }
.price-note[b-sjst3oblah] { font-size: 0.78rem; color: #94a3b8; margin-bottom: 24px; }
.pricing-divider[b-sjst3oblah] { height: 1px; background: #e2e8f0; margin: 24px 0; }
.pricing-card.featured .pricing-divider[b-sjst3oblah] { background: rgba(255,255,255,0.15); }
.pricing-list[b-sjst3oblah] { list-style: none; display: flex; flex-direction: column; gap: 12px; margin-bottom: 32px; }
.pricing-list li[b-sjst3oblah] { display: flex; align-items: flex-start; gap: 10px; font-size: 0.88rem; color: var(--on-surface-variant); }
.pricing-list li[b-sjst3oblah]::before { content: ''; display: block; width: 18px; height: 18px; min-width: 18px; border-radius: 50%; background: #eff6ff; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath d='M2 6l3 3 5-5' stroke='%231f6feb' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; margin-top: 2px; }
.pricing-card.featured .btn-primary[b-sjst3oblah] { background: #ffffff; color: var(--landing-primary); }
.pricing-card.featured .btn-primary:hover[b-sjst3oblah] { background: #eff6ff; }
.pricing-footer[b-sjst3oblah] { text-align: center; font-size: 0.82rem; color: #64748b; }

/* ===== FINAL CTA ===== */
.final-cta[b-sjst3oblah] { background: #1e40af; padding: 56px 0; text-align: center; }
.final-cta h2[b-sjst3oblah] { color: #ffffff; margin-bottom: 16px; }
.final-cta p[b-sjst3oblah] { color: rgba(255,255,255,0.7); max-width: 480px; margin: 0 auto 40px; }
.final-cta-btns[b-sjst3oblah] { display: flex; gap: 14px; justify-content: center; margin-bottom: 36px; flex-wrap: wrap; }
.social-proof-row[b-sjst3oblah] { display: flex; align-items: center; justify-content: center; gap: 14px; }
.avatar-stack[b-sjst3oblah] { display: flex; }
.av-sm[b-sjst3oblah] { width: 32px; height: 32px; border-radius: 50%; border: 2px solid #1e40af; display: flex; align-items: center; justify-content: center; font-size: 0.65rem; font-weight: 700; }
.av-sm:not(:first-child)[b-sjst3oblah] { margin-left: -8px; }
.sp-text[b-sjst3oblah] { font-size: 0.82rem; color: rgba(255,255,255,0.5); font-weight: 500; }

/* ===== FOOTER ===== */
footer[b-sjst3oblah] { background: #0a0f1e; padding: 64px 0 32px; }
.footer-grid[b-sjst3oblah] { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr 1fr; gap: 32px; margin-bottom: 40px; }
.footer-logo[b-sjst3oblah] { font-family: 'Fraunces', serif; font-size: 1.3rem; font-weight: 800; color: #ffffff; margin-bottom: 10px; }
.footer-tagline[b-sjst3oblah] { font-size: 0.85rem; color: rgba(255,255,255,0.4); margin-bottom: 20px; line-height: 1.6; }
.footer-social[b-sjst3oblah] { display: flex; gap: 10px; }
.social-btn[b-sjst3oblah] { width: 34px; height: 34px; border-radius: var(--rounded-md); background: rgba(255,255,255,0.08); display: flex; align-items: center; justify-content: center; transition: background 0.18s; cursor: pointer; }
.social-btn:hover[b-sjst3oblah] { background: rgba(255,255,255,0.14); }
.footer-col-title[b-sjst3oblah] { font-size: 0.82rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.09em; color: rgba(255,255,255,0.35); margin-bottom: 16px; }
.footer-links[b-sjst3oblah] { list-style: none; display: flex; flex-direction: column; gap: 10px; }
.footer-links a[b-sjst3oblah] { font-size: 0.88rem; color: rgba(255,255,255,0.55); transition: color 0.18s; }
.footer-links a:hover[b-sjst3oblah] { color: #ffffff; }
.footer-bottom[b-sjst3oblah] { border-top: 1px solid rgba(255,255,255,0.08); padding-top: 28px; display: flex; flex-direction: column; gap: 8px; }
.footer-bottom-text[b-sjst3oblah] { font-size: 0.75rem; color: rgba(255,255,255,0.25); line-height: 1.6; }
.footer-bottom-links[b-sjst3oblah] { display: flex; gap: 16px; }
.footer-bottom-links a[b-sjst3oblah] { font-size: 0.75rem; color: rgba(255,255,255,0.35); }
.footer-bottom-links a:hover[b-sjst3oblah] { color: rgba(255,255,255,0.6); }

/* ===== SCROLL ANIMATIONS ===== */
.reveal[b-sjst3oblah] { opacity: 0; transform: translateY(24px); transition: opacity 0.55s cubic-bezier(0.22,1,0.36,1), transform 0.55s cubic-bezier(0.22,1,0.36,1); }
.reveal.visible[b-sjst3oblah] { opacity: 1; transform: translateY(0); }
.reveal-delay-1[b-sjst3oblah] { transition-delay: 0.1s; }
.reveal-delay-2[b-sjst3oblah] { transition-delay: 0.2s; }
.reveal-delay-3[b-sjst3oblah] { transition-delay: 0.3s; }

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
  .hero-grid[b-sjst3oblah], .feature-grid[b-sjst3oblah] { grid-template-columns: 1fr; gap: 48px; }
  .feature-grid.reverse[b-sjst3oblah] { direction: ltr; }
  .split-grid[b-sjst3oblah] { grid-template-columns: 1fr; }
  .split-panel[b-sjst3oblah] { padding: 56px 32px; }
  .stats-grid[b-sjst3oblah] { grid-template-columns: repeat(2, 1fr); }
  .templates-grid[b-sjst3oblah] { grid-template-columns: repeat(2, 1fr); }
  .testimonials-grid[b-sjst3oblah] { grid-template-columns: 1fr; gap: 16px; }
  .pricing-grid[b-sjst3oblah] { grid-template-columns: 1fr; max-width: 420px; }
  .footer-grid[b-sjst3oblah] { grid-template-columns: 1fr 1fr; gap: 32px; }
  .dashboard-mockup[b-sjst3oblah] { transform: none; margin: 0 auto; max-width: 440px; }
  .floating-card-2[b-sjst3oblah] { display: none; }
  .nav-links[b-sjst3oblah] { display: none; }
}

@media (max-width: 640px) {
  section[b-sjst3oblah] { padding: 32px 0; }
  .templates-grid[b-sjst3oblah] { grid-template-columns: 1fr; }
  .stats-grid[b-sjst3oblah] { grid-template-columns: repeat(2, 1fr); }
  .hero-cta[b-sjst3oblah] { flex-direction: column; align-items: flex-start; }
  .dark-cta-btns[b-sjst3oblah], .final-cta-btns[b-sjst3oblah] { flex-direction: column; align-items: center; }
  .footer-grid[b-sjst3oblah] { grid-template-columns: 1fr; }
  .logos-row[b-sjst3oblah] { gap: 20px; }
}
/* /Components/Pages/Organisation/Dashboard.razor.rz.scp.css */
.dashboard-grid[b-etwbftc6xn] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: var(--space-5);
}

@media (max-width: 768px) {
    .dashboard-grid[b-etwbftc6xn] {
        grid-template-columns: 1fr;
    }
}
/* /Components/UI/Badges/StatusBadge.razor.rz.scp.css */
.status-badge[b-8m2b3nmt7i] {
    display: inline-flex;
    align-items: center;
    padding: var(--spacing-1) var(--spacing-3);
    border-radius: var(--rounded-sm);
    font-family: var(--font-body);
    font-size: var(--label-sm-size);
    font-weight: var(--label-sm-weight);
    line-height: var(--label-sm-line-height);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.status-badge-success[b-8m2b3nmt7i] {
    background: var(--success-container);
    color: var(--success);
}

.status-badge-warning[b-8m2b3nmt7i] {
    background: var(--warning-container);
    color: var(--warning);
}

.status-badge-danger[b-8m2b3nmt7i] {
    background: var(--error-container);
    color: var(--error);
}

.status-badge-neutral[b-8m2b3nmt7i] {
    background: var(--surface-container);
    color: var(--on-surface-variant);
}
/* /Components/UI/Buttons/ActionButton.razor.rz.scp.css */
.action-button[b-84ww7rddka] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-2);
    height: var(--button-height);
    padding: 0 var(--space-4);
    border-radius: var(--button-border-radius);
    font-family: var(--font-ui);
    font-size: var(--body-size);
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s ease;
    border: 1px solid transparent;
    white-space: nowrap;
}

.action-button-compact[b-84ww7rddka] {
    height: var(--button-height-compact);
    padding: 0 var(--space-3);
}

.action-button-full-width[b-84ww7rddka] {
    width: 100%;
}

.action-button:disabled[b-84ww7rddka] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Primary Button - Brand Gradient */
.action-button-primary[b-84ww7rddka] {
    background: var(--primary-gradient);
    color: var(--on-primary);
    border: none;
    box-shadow: var(--elevation-1);
}

.action-button-primary:hover:not(:disabled)[b-84ww7rddka] {
    transform: translateY(-1px);
    box-shadow: var(--elevation-2);
}

.action-button-primary:active:not(:disabled)[b-84ww7rddka] {
    transform: translateY(0);
    box-shadow: var(--elevation-1);
}

/* Secondary Button */
.action-button-secondary[b-84ww7rddka] {
    background: transparent;
    color: var(--text-primary);
    border-color: var(--surface-border);
}

.action-button-secondary:hover:not(:disabled)[b-84ww7rddka] {
    background: var(--content-bg);
    border-color: var(--text-secondary);
}

/* Ghost Button */
.action-button-ghost[b-84ww7rddka] {
    background: transparent;
    color: var(--text-secondary);
    border-color: transparent;
}

.action-button-ghost:hover:not(:disabled)[b-84ww7rddka] {
    background: var(--content-bg);
    color: var(--text-primary);
}

/* Danger Button */
.action-button-danger[b-84ww7rddka] {
    background: var(--danger);
    color: white;
    border-color: var(--danger);
}

.action-button-danger:hover:not(:disabled)[b-84ww7rddka] {
    background: #b91c1c;
    border-color: #b91c1c;
}

.button-icon[b-84ww7rddka] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.button-icon[b-84ww7rddka]  svg {
    width: var(--icon-action);
    height: var(--icon-action);
}
/* /Components/UI/Cards/Card.razor.rz.scp.css */
.card[b-bawi0pvyov] {
    background: var(--surface-container-lowest);
    border: none;
    border-radius: var(--card-border-radius);
    box-shadow: var(--elevation-1);
    transition: box-shadow 200ms cubic-bezier(0.4, 0, 0.2, 1);
}

.card-header[b-bawi0pvyov] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--spacing-4);
    border-bottom: none;
    background-color: var(--surface-container-low);
}

.card-title[b-bawi0pvyov] {
    font-family: var(--font-body);
    font-size: var(--title-lg-size);
    font-weight: var(--title-lg-weight);
    color: var(--text-primary);
    margin: 0;
}

.card-actions[b-bawi0pvyov] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
}

.card-body[b-bawi0pvyov] {
    padding: var(--spacing-6);
}

[data-theme="dark"] .card-body[b-bawi0pvyov] {
    background-color: #1b232d;
}
/* /Components/UI/Cards/StatCard.razor.rz.scp.css */
.stat-card[b-klw9yhojeh] {
    background: var(--surface-container-lowest);
    border: none;
    border-radius: var(--card-border-radius);
    padding: var(--spacing-6);
    box-shadow: var(--elevation-2);
    display: flex;
    align-items: center;
    gap: var(--spacing-4);
    transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
    cursor: default;
}

.stat-card:hover[b-klw9yhojeh] {
    box-shadow: var(--elevation-3);
    transform: translateY(-2px);
}

.stat-icon-container[b-klw9yhojeh] {
    width: 48px;
    height: 48px;
    background: var(--primary-gradient);
    border-radius: var(--rounded-lg);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: var(--elevation-1);
}

.stat-icon[b-klw9yhojeh] {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--on-primary);
}

.stat-icon[b-klw9yhojeh]  svg {
    width: 24px;
    height: 24px;
}

.stat-content[b-klw9yhojeh] {
    flex: 1;
}

.stat-value[b-klw9yhojeh] {
    font-family: var(--font-display);
    font-size: var(--headline-sm-size);
    font-weight: var(--headline-sm-weight);
    color: var(--text-primary);
    line-height: 1.2;
}

.stat-label[b-klw9yhojeh] {
    font-family: var(--font-body);
    font-size: var(--body-sm-size);
    font-weight: var(--body-sm-weight);
    color: var(--text-secondary);
    margin-top: var(--spacing-1);
}
/* /Components/UI/Empty/EmptyState.razor.rz.scp.css */
.empty-state[b-yaywz4e2ui] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--space-8);
    text-align: center;
}

.empty-icon[b-yaywz4e2ui] {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-muted);
    margin-bottom: var(--space-4);
}

.empty-icon[b-yaywz4e2ui]  svg {
    width: 48px;
    height: 48px;
}

.empty-title[b-yaywz4e2ui] {
    font-family: var(--font-ui);
    font-size: var(--section-title-size);
    font-weight: var(--section-title-weight);
    color: var(--text-primary);
    margin-bottom: var(--space-2);
}

.empty-message[b-yaywz4e2ui] {
    font-family: var(--font-body);
    font-size: var(--body-size);
    color: var(--text-secondary);
    max-width: 400px;
    margin-bottom: var(--space-5);
}

.empty-action[b-yaywz4e2ui] {
    margin-top: var(--space-2);
}
/* /Components/UI/Forms/DateInput.razor.rz.scp.css */
.date-input[b-4rrx1byfc1] {
    width: 100%;
    height: var(--input-height);
    padding: var(--spacing-3) var(--spacing-4);
    border: 1px solid var(--ghost-border);
    border-radius: var(--rounded-md);
    font-family: var(--font-body);
    font-size: var(--body-md-size);
    color: var(--on-surface);
    background: var(--surface-container-lowest);
    transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
}

/* Calendar icon styling */
.date-input[b-4rrx1byfc1]::-webkit-calendar-picker-indicator {
    cursor: pointer;
    opacity: 0.6;
    transition: opacity 150ms ease;
}

.date-input[b-4rrx1byfc1]::-webkit-calendar-picker-indicator:hover {
    opacity: 1;
}

/* Placeholder/empty state */
.date-input[b-4rrx1byfc1]::-webkit-datetime-edit-text {
    color: var(--on-surface-variant);
    opacity: 0.6;
}

.date-input[b-4rrx1byfc1]::-webkit-datetime-edit-month-field,
.date-input[b-4rrx1byfc1]::-webkit-datetime-edit-day-field,
.date-input[b-4rrx1byfc1]::-webkit-datetime-edit-year-field {
    color: var(--on-surface);
}

/* Hover state */
.date-input:hover:not(:disabled)[b-4rrx1byfc1] {
    background: var(--surface-hover);
    border-color: var(--outline-variant);
}

/* Focus state */
.date-input:focus[b-4rrx1byfc1] {
    outline: none;
    border-color: transparent;
    border-bottom: 2px solid var(--primary);
    box-shadow: 0 0 0 3px var(--accent-subtle);
}

/* Disabled state */
.date-input:disabled[b-4rrx1byfc1] {
    background: var(--surface-container);
    color: var(--on-surface-variant);
    opacity: 0.5;
    cursor: not-allowed;
}

.date-input:disabled[b-4rrx1byfc1]::-webkit-calendar-picker-indicator {
    opacity: 0.3;
    cursor: not-allowed;
}
/* /Components/UI/Forms/FormField.razor.rz.scp.css */
.form-field[b-6btnc06zlg] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    margin-bottom: var(--space-4);
}

.form-label[b-6btnc06zlg] {
    font-family: var(--font-ui);
    font-size: var(--label-size);
    font-weight: var(--label-weight);
    color: var(--text-primary);
}

.form-input-wrapper[b-6btnc06zlg] {
    position: relative;
}

.form-error[b-6btnc06zlg] {
    font-family: var(--font-ui);
    font-size: var(--small-size);
    color: var(--danger);
    margin-top: var(--space-1);
}

.form-field.has-error[b-6btnc06zlg]  input,
.form-field.has-error[b-6btnc06zlg]  select,
.form-field.has-error[b-6btnc06zlg]  textarea {
    border-color: var(--danger);
}

.form-field.has-error[b-6btnc06zlg]  input:focus,
.form-field.has-error[b-6btnc06zlg]  select:focus,
.form-field.has-error[b-6btnc06zlg]  textarea:focus {
    border-color: var(--danger);
    outline: none;
    box-shadow: 0 0 0 2px rgba(220, 38, 38, 0.1);
}
/* /Components/UI/Forms/SearchInput.razor.rz.scp.css */
.search-input-wrapper[b-pd638auwzk] {
    position: relative;
    width: 100%;
}

.search-icon[b-pd638auwzk] {
    position: absolute;
    left: var(--space-3);
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-muted);
    pointer-events: none;
}

.search-icon[b-pd638auwzk]  svg {
    width: 16px;
    height: 16px;
}

.search-input[b-pd638auwzk] {
    width: 100%;
    height: var(--input-height);
    padding: 0 var(--space-3) 0 calc(var(--space-3) * 2 + 16px);
    border: 1px solid var(--surface-border);
    border-radius: var(--input-border-radius);
    font-family: var(--font-body);
    font-size: var(--body-size);
    color: var(--text-primary);
    background: var(--surface);
    transition: all 0.15s ease;
}

.search-input[b-pd638auwzk]::placeholder {
    color: var(--text-muted);
}

.search-input:focus[b-pd638auwzk] {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 2px var(--accent-subtle);
}
/* /Components/UI/Forms/SelectInput.razor.rz.scp.css */
.select-input[b-13u6tnpmik] {
    width: 100%;
    height: var(--input-height);
    padding: var(--spacing-3) var(--spacing-4);
    padding-right: var(--spacing-10); /* Extra space for dropdown arrow */
    border: 1px solid var(--ghost-border);
    border-radius: var(--rounded-md);
    font-family: var(--font-body);
    font-size: var(--body-md-size);
    color: var(--on-surface);
    background: var(--surface-container-lowest);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23434656' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right var(--spacing-4) center;
    background-size: 12px;
    transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

/* Hover state */
.select-input:hover:not(:disabled)[b-13u6tnpmik] {
    background-color: var(--surface-hover);
    border-color: var(--outline-variant);
}

/* Focus state */
.select-input:focus[b-13u6tnpmik] {
    outline: none;
    border-color: transparent;
    border-bottom: 2px solid var(--primary);
    box-shadow: 0 0 0 3px var(--accent-subtle);
    background-color: var(--surface-container-lowest);
}

/* Disabled state */
.select-input:disabled[b-13u6tnpmik] {
    background-color: var(--surface-container);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23999' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
    color: var(--on-surface-variant);
    opacity: 0.5;
    cursor: not-allowed;
}

/* Option styling */
.select-input option[b-13u6tnpmik] {
    background: var(--surface-container-lowest);
    color: var(--on-surface);
    padding: var(--spacing-2);
}
/* /Components/UI/Forms/TextInput.razor.rz.scp.css */
.text-input[b-jaemx3xibr] {
    width: 100%;
    height: var(--input-height);
    padding: var(--spacing-3) var(--spacing-4);
    border: 1px solid var(--ghost-border);
    border-radius: var(--rounded-md);
    font-family: var(--font-body);
    font-size: var(--body-md-size);
    color: var(--on-surface);
    background: var(--surface-container-lowest);
    transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}

.text-input[b-jaemx3xibr]::placeholder {
    color: var(--on-surface-variant);
    opacity: 0.6;
}

.text-input:focus[b-jaemx3xibr] {
    outline: none;
    border-color: transparent;
    border-bottom: 2px solid var(--primary);
    box-shadow: 0 0 0 3px var(--accent-subtle);
}

.text-input:disabled[b-jaemx3xibr] {
    background: var(--surface-container);
    color: var(--on-surface-variant);
    opacity: 0.5;
    cursor: not-allowed;
}
/* /Components/UI/Modals/Modal.razor.rz.scp.css */
.modal-overlay[b-s45u3tplr6] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--backdrop-modal);
    backdrop-filter: blur(12px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: var(--z-modal-backdrop);
    padding: var(--spacing-4);
}

.modal-panel[b-s45u3tplr6] {
    background: var(--surface-container-lowest);
    border-radius: var(--rounded-xl);
    box-shadow: var(--elevation-4);
    display: flex;
    flex-direction: column;
    max-height: 90vh;
    opacity: 0.98;
}

.modal-panel-standard[b-s45u3tplr6] {
    width: 100%;
    max-width: 480px;
}

.modal-panel-wide[b-s45u3tplr6] {
    width: 100%;
    max-width: 640px;
}

.modal-panel-large[b-s45u3tplr6] {
    width: 100%;
    max-width: 800px;
}

.modal-header[b-s45u3tplr6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--spacing-8) var(--spacing-8) var(--spacing-6) var(--spacing-8);
    background: var(--surface-container-low);
    border-radius: var(--rounded-xl) var(--rounded-xl) 0 0;
}

.modal-title[b-s45u3tplr6] {
    font-family: var(--font-body);
    font-size: var(--title-lg-size);
    font-weight: var(--title-lg-weight);
    color: var(--on-surface);
    margin: 0;
}

.modal-close[b-s45u3tplr6] {
    width: 32px;
    height: 32px;
    border-radius: var(--rounded-md);
    background: transparent;
    border: none;
    color: var(--on-surface-variant);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.modal-close:hover[b-s45u3tplr6] {
    background: var(--surface-container);
    color: var(--on-surface);
    transform: scale(1.05);
}

.close-icon[b-s45u3tplr6] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.close-icon[b-s45u3tplr6]  svg {
    width: 20px;
    height: 20px;
}

.modal-body[b-s45u3tplr6] {
    flex: 1;
    overflow-y: auto;
    padding: var(--spacing-8);
}

.modal-footer[b-s45u3tplr6] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: var(--spacing-3);
    padding: var(--spacing-6) var(--spacing-8) var(--spacing-8) var(--spacing-8);
    background: var(--surface-container-low);
    border-radius: 0 0 var(--rounded-xl) var(--rounded-xl);
}
/* /Components/UI/Tables/DataTable.razor.rz.scp.css */
/* Data Table Wrapper */
.data-table-wrapper[b-teq8hipzqr] {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: var(--spacing-4);
}

/* Search Bar */
.data-table-search[b-teq8hipzqr] {
    width: 100%;
    padding: 0;
}

.search-input[b-teq8hipzqr] {
    width: 100%;
    max-width: 400px;
    padding: var(--spacing-3) var(--spacing-4);
    font-family: var(--font-body);
    font-size: var(--body-md-size);
    color: var(--on-surface);
    background: var(--surface-container-lowest);
    border: 1px solid var(--outline-variant);
    border-radius: var(--rounded-sm);
    transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.search-input:focus[b-teq8hipzqr] {
    outline: none;
    border-color: var(--primary);
    box-shadow: 0 0 0 3px rgba(0, 62, 199, 0.1);
}

.search-input[b-teq8hipzqr]::placeholder {
    color: var(--text-secondary);
}

/* Table Container */
.data-table-container[b-teq8hipzqr] {
    width: 100%;
    overflow-x: auto;
}

.data-table[b-teq8hipzqr] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-family: var(--font-body);
}

/* Table Header */
.data-table[b-teq8hipzqr]  thead {
    background: var(--primary-gradient);
}

.data-table[b-teq8hipzqr]  th {
    font-size: var(--label-md-size);
    font-weight: var(--label-md-weight);
    color: #ffffff;
    text-align: left;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: var(--spacing-4) var(--spacing-4);
    height: var(--table-header-height);
    position: relative;
}

/* Sortable Headers */
.data-table[b-teq8hipzqr]  th.sortable {
    cursor: pointer;
    user-select: none;
    transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.data-table[b-teq8hipzqr]  th.sortable:hover {
    background: rgba(255, 255, 255, 0.1);
}

.data-table[b-teq8hipzqr]  th.sortable .header-content {
    display: flex;
    align-items: center;
    gap: var(--spacing-2);
    justify-content: space-between;
}

.data-table[b-teq8hipzqr]  th .sort-icon {
    font-size: 12px;
    opacity: 1;
    transition: opacity 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.data-table[b-teq8hipzqr]  th .sort-icon .sort-inactive {
    opacity: 0.4;
}

.data-table[b-teq8hipzqr]  th.sortable:hover .sort-icon .sort-inactive {
    opacity: 0.7;
}

.data-table[b-teq8hipzqr]  th.sorted {
    font-weight: var(--label-lg-weight);
}

/* Table Body */
.data-table[b-teq8hipzqr]  tbody tr {
    background: var(--surface-container-lowest);
    transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.data-table[b-teq8hipzqr]  tbody tr:nth-child(even) {
    background: var(--surface);
}

.data-table[b-teq8hipzqr]  tbody tr:hover {
    background: var(--surface-container-low);
}

.data-table[b-teq8hipzqr]  td {
    font-size: var(--body-md-size);
    font-weight: var(--body-md-weight);
    color: var(--on-surface);
    padding: var(--spacing-4);
    height: var(--table-row-height);
    vertical-align: middle;
}

.data-table[b-teq8hipzqr]  td.empty-state {
    text-align: center;
    color: var(--text-secondary);
    padding: var(--spacing-8);
    font-style: italic;
}

.data-table[b-teq8hipzqr]  .table-actions {
    text-align: right;
    white-space: nowrap;
}

/* Pagination */
.data-table-pagination[b-teq8hipzqr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--spacing-4) 0;
    gap: var(--spacing-4);
    flex-wrap: wrap;
}

.pagination-info[b-teq8hipzqr] {
    font-size: var(--body-sm-size);
    color: var(--text-secondary);
    font-family: var(--font-body);
}

.pagination-controls[b-teq8hipzqr] {
    display: flex;
    align-items: center;
    gap: var(--spacing-4);
}

.pagination-btn[b-teq8hipzqr] {
    padding: var(--spacing-2) var(--spacing-4);
    font-family: var(--font-body);
    font-size: var(--body-sm-size);
    font-weight: var(--label-md-weight);
    color: var(--primary);
    background: var(--surface-container-lowest);
    border: 1px solid var(--outline-variant);
    border-radius: var(--rounded-sm);
    cursor: pointer;
    transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
    user-select: none;
}

.pagination-btn:hover:not(:disabled)[b-teq8hipzqr] {
    background: var(--surface-container-low);
    border-color: var(--primary);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.pagination-btn:active:not(:disabled)[b-teq8hipzqr] {
    transform: translateY(1px);
}

.pagination-btn:disabled[b-teq8hipzqr] {
    color: var(--text-disabled);
    cursor: not-allowed;
    opacity: 0.5;
}

.page-indicator[b-teq8hipzqr] {
    font-size: var(--body-sm-size);
    color: var(--on-surface);
    font-family: var(--font-body);
    font-weight: var(--label-md-weight);
    padding: 0 var(--spacing-2);
}

/* Responsive */
@media (max-width: 640px) {
    .data-table-pagination[b-teq8hipzqr] {
        flex-direction: column;
        align-items: stretch;
    }

    .pagination-controls[b-teq8hipzqr] {
        justify-content: center;
    }

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