/* /Components/Dashboard/ConversationQuotaIndicator.razor.rz.scp.css */
.conversation-quota-indicator[b-ulpr8cn8xa] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    border-radius: var(--radius-sm);
    font-size: 0.875rem;
    line-height: 1.4;
}

.conversation-quota-indicator--inline[b-ulpr8cn8xa] {
    padding: 0.25rem 0.625rem;
    border: 1px solid transparent;
}

.conversation-quota-indicator--inline.conversation-quota-indicator--ok[b-ulpr8cn8xa] {
    color: var(--clr-gray);
    background: var(--clr-card);
}

.conversation-quota-indicator--inline.conversation-quota-indicator--warn[b-ulpr8cn8xa] {
    color: var(--clr-warning);
    background: rgba(245, 158, 11, 0.1);
    border-color: rgba(245, 158, 11, 0.3);
}

.conversation-quota-indicator--inline.conversation-quota-indicator--cap[b-ulpr8cn8xa] {
    color: var(--clr-error);
    background: rgba(239, 68, 68, 0.1);
    border-color: rgba(239, 68, 68, 0.3);
}

.conversation-quota-indicator--banner[b-ulpr8cn8xa] {
    display: flex;
    width: 100%;
    padding: 0.75rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    font-size: 0.9375rem;
}

.conversation-quota-indicator--banner.conversation-quota-indicator--warn[b-ulpr8cn8xa] {
    color: var(--clr-warning);
    background: rgba(245, 158, 11, 0.1);
    border-color: rgba(245, 158, 11, 0.3);
}

.conversation-quota-indicator--banner.conversation-quota-indicator--cap[b-ulpr8cn8xa] {
    color: var(--clr-error);
    background: rgba(239, 68, 68, 0.1);
    border-color: rgba(239, 68, 68, 0.3);
}

.conversation-quota-indicator__text[b-ulpr8cn8xa] {
    flex: 1;
}

.conversation-quota-indicator__cta[b-ulpr8cn8xa] {
    color: inherit;
    text-decoration: underline;
    font-weight: 500;
    white-space: nowrap;
}

.conversation-quota-indicator__cta:hover[b-ulpr8cn8xa] {
    text-decoration: none;
}

.conversation-quota-indicator__dismiss[b-ulpr8cn8xa] {
    appearance: none;
    background: transparent;
    border: 0;
    color: inherit;
    cursor: pointer;
    font-size: 1.25rem;
    line-height: 1;
    padding: 0 0.25rem;
    opacity: 0.7;
}

.conversation-quota-indicator__dismiss:hover[b-ulpr8cn8xa] {
    opacity: 1;
}
/* /Components/Dashboard/RebookingCampaignPanel.razor.rz.scp.css */
.rebooking-panel[b-yzblm1qn32] {
    margin-top: 1.5rem;
}

.rebooking-panel__lede[b-yzblm1qn32] {
    margin: 0 0 1rem;
    color: var(--clr-off-white);
    line-height: 1.5;
    font-size: 0.95rem;
}

.rebooking-panel__actions[b-yzblm1qn32] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 0.5rem;
}

.rebooking-panel__gate-hint[b-yzblm1qn32] {
    color: var(--clr-gray);
    font-size: 0.85rem;
}

.rebooking-confirm[b-yzblm1qn32] {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
}

.rebooking-confirm__backdrop[b-yzblm1qn32] {
    position: absolute;
    inset: 0;
    background: rgba(15, 16, 24, 0.85);
    backdrop-filter: blur(4px);
}

.rebooking-confirm__content[b-yzblm1qn32] {
    position: relative;
    background: var(--clr-dark);
    border: 1px solid var(--clr-border);
    border-radius: 12px;
    padding: 2rem;
    max-width: 32rem;
    width: 100%;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
}

.rebooking-confirm__title[b-yzblm1qn32] {
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0 0 0.75rem;
    color: var(--clr-white);
}

.rebooking-confirm__body[b-yzblm1qn32] {
    font-size: 0.95rem;
    line-height: 1.5;
    color: var(--clr-off-white);
    margin: 0 0 1.5rem;
}

.rebooking-confirm__actions[b-yzblm1qn32] {
    display: flex;
    gap: 0.75rem;
    justify-content: flex-end;
    flex-wrap: wrap;
}
/* /Components/Dashboard/ServiceOutageBanner.razor.rz.scp.css */
.svc-outage-banner[b-o24eu6hpxj] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem 1.25rem;
    margin-bottom: 1.5rem;
    border-radius: var(--radius-md);
    border: 1px solid transparent;
}

.svc-outage-banner--degraded[b-o24eu6hpxj] {
    background: rgba(245, 158, 11, 0.08);
    border-color: rgba(245, 158, 11, 0.3);
    color: var(--clr-warning);
}

.svc-outage-banner--down[b-o24eu6hpxj] {
    background: rgba(239, 68, 68, 0.08);
    border-color: rgba(239, 68, 68, 0.35);
    color: var(--clr-error);
}

.svc-outage-banner--unknown[b-o24eu6hpxj] {
    background: rgba(163, 160, 184, 0.08);
    border-color: var(--clr-border-light);
    color: var(--clr-gray);
}

.svc-outage-icon[b-o24eu6hpxj] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    background: currentColor;
    color: var(--clr-near-black);
    font-weight: 700;
    flex-shrink: 0;
    line-height: 1;
}

.svc-outage-body[b-o24eu6hpxj] {
    flex: 1;
    min-width: 0;
}

.svc-outage-message[b-o24eu6hpxj] {
    margin: 0 0 0.25rem;
    font-weight: 600;
}

.svc-outage-list[b-o24eu6hpxj] {
    list-style: none;
    padding: 0;
    margin: 0;
    font-size: 0.85rem;
    color: var(--clr-gray);
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.svc-outage-list strong[b-o24eu6hpxj] {
    color: inherit;
    margin-right: 0.25rem;
}

.svc-outage-list a[b-o24eu6hpxj] {
    margin-left: 0.5rem;
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.svc-outage-retry[b-o24eu6hpxj] {
    align-self: flex-start;
    flex-shrink: 0;
}
/* /Components/Dashboard/ServiceStatusPill.razor.rz.scp.css */
.svc-status-pill[b-n9wv82dhqm] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem 0.625rem;
    border-radius: 999px;
    font-size: 0.8rem;
    line-height: 1.2;
    border: 1px solid transparent;
    background: rgba(255, 255, 255, 0.04);
    color: var(--clr-gray);
}

.svc-status-dot[b-n9wv82dhqm] {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
    flex-shrink: 0;
    background: currentColor;
}

.svc-status-label[b-n9wv82dhqm] {
    font-weight: 600;
}

.svc-status-message[b-n9wv82dhqm] {
    color: var(--clr-gray);
    font-weight: 400;
    margin-left: 0.25rem;
}

.svc-status-link[b-n9wv82dhqm] {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 2px;
    margin-left: 0.5rem;
}

.svc-status-pill--ok[b-n9wv82dhqm] {
    color: var(--clr-success);
    border-color: rgba(34, 197, 94, 0.25);
    background: rgba(34, 197, 94, 0.08);
}

.svc-status-pill--degraded[b-n9wv82dhqm] {
    color: var(--clr-warning);
    border-color: rgba(245, 158, 11, 0.3);
    background: rgba(245, 158, 11, 0.1);
}

.svc-status-pill--down[b-n9wv82dhqm] {
    color: var(--clr-error);
    border-color: rgba(239, 68, 68, 0.35);
    background: rgba(239, 68, 68, 0.1);
}

.svc-status-pill--unknown[b-n9wv82dhqm] {
    color: var(--clr-gray-mid);
    border-color: var(--clr-border);
    background: rgba(255, 255, 255, 0.02);
}
/* /Components/Layout/AdminLayout.razor.rz.scp.css */
/* === AdminLayout (component-scoped) ===
 *
 * Reuses .dashboard-main / .dashboard-topbar / .sidebar-* classes from
 * css/dashboard.css so the admin shell looks visually identical to the
 * studio dashboard shell. The only divergence is the .admin-sidebar /
 * .admin-shell wrappers and the small "Platform Admin" label, all
 * defined here.
 */

.admin-sidebar-label[b-1n3tox1m93] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--clr-gray);
    padding: 0 1rem;
    margin: 0.5rem 0 0.75rem 0;
}
/* /Components/Layout/DashboardLayout.razor.rz.scp.css */
/* Styles in wwwroot/css/site.css — scoped CSS does not apply to InteractiveServer components */
/* /Components/Layout/Footer.razor.rz.scp.css */
/* Styles in wwwroot/css/site.css — global classes included for layout components */
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.site-wrapper[b-brrgtbs888] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.main-content[b-brrgtbs888] {
    flex: 1;
    padding-top: var(--navbar-height);
}
/* /Components/Layout/NavBar.razor.rz.scp.css */
/* Styles in wwwroot/css/site.css — scoped CSS does not apply to InteractiveServer components */
/* /Components/Layout/OnboardingLayout.razor.rz.scp.css */
/* Styles in wwwroot/css/site.css — scoped CSS does not apply to InteractiveServer components */
/* /Components/Onboarding/WorkingDaysPicker.razor.rz.scp.css */
.working-days-picker[b-2a24igscgy] {
    margin-block: 1.25rem;
}

.day-chips[b-2a24igscgy] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.day-chip[b-2a24igscgy] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 3.5rem;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--clr-border-light);
    border-radius: var(--radius-md);
    background: var(--clr-card);
    cursor: pointer;
    transition: border-color var(--transition-fast),
                background-color var(--transition-fast),
                color var(--transition-fast);
    user-select: none;
}

.day-chip:hover[b-2a24igscgy] {
    border-color: var(--clr-accent);
}

.day-chip--selected[b-2a24igscgy] {
    border-color: var(--clr-accent);
    background: var(--clr-accent-muted);
}

.day-chip--selected .day-chip__label[b-2a24igscgy] {
    color: var(--clr-accent-light);
}

.day-chip__label[b-2a24igscgy] {
    font-family: var(--font-sans);
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--clr-gray);
    pointer-events: none;
}

.day-chip--selected .day-chip__label[b-2a24igscgy] {
    color: var(--clr-accent-light);
}

/* Hide native checkbox — label handles the click */
.day-chip input[type="checkbox"][b-2a24igscgy] {
    appearance: none;
    -webkit-appearance: none;
    position: absolute;
    width: 0;
    height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
}

/* Keyboard focus ring on the chip when checkbox is focused */
.day-chip:has(input:focus-visible)[b-2a24igscgy] {
    outline: 2px solid var(--clr-accent);
    outline-offset: 2px;
}
/* /Components/Pages/About.razor.rz.scp.css */
/* === About Hero === */
/* Base layout provided by .page-hero in base.css */
.about-hero[b-l4g3n6vt6j]::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 600px;
    height: 400px;
    background: radial-gradient(ellipse, rgba(124, 58, 237, 0.08), transparent 70%);
    pointer-events: none;
}

/* h1 layout provided by .page-hero h1 in base.css */

/* === Story Section === */
.about-story[b-l4g3n6vt6j] {
    padding: clamp(4rem, 8vw, 6rem) 2rem;
    max-width: var(--content-width-narrow);
    margin: 0 auto;
}

.story-content h2[b-l4g3n6vt6j] {
    font-size: clamp(1.6rem, 3vw, 2rem);
    font-weight: 700;
    color: var(--clr-white);
    margin-bottom: 1.5rem;
}

.story-content p[b-l4g3n6vt6j] {
    font-size: 1.05rem;
    line-height: 1.8;
    color: var(--clr-gray);
    margin-bottom: 1.25rem;
}

/* === Mission Section === */
.about-mission[b-l4g3n6vt6j] {
    padding: clamp(4rem, 8vw, 6rem) 2rem;
    text-align: center;
    background: linear-gradient(180deg, var(--clr-primary) 0%, var(--clr-primary-deep) 100%);
    color: var(--clr-white);
    position: relative;
}

.about-mission h2[b-l4g3n6vt6j] {
    font-size: clamp(1.6rem, 3vw, 2rem);
    font-weight: 700;
    margin-bottom: 1.5rem;
    color: var(--clr-white);
}

.mission-statement[b-l4g3n6vt6j] {
    font-size: 1.25rem;
    line-height: 1.7;
    max-width: 700px;
    margin: 0 auto;
    color: var(--clr-gray);
}

/* === Values Section === */
.about-values[b-l4g3n6vt6j] {
    padding: clamp(4rem, 8vw, 6rem) 2rem;
    text-align: center;
}

.about-values h2[b-l4g3n6vt6j] {
    font-size: clamp(1.6rem, 3vw, 2rem);
    font-weight: 700;
    color: var(--clr-white);
    margin-bottom: 3rem;
}

.values-grid[b-l4g3n6vt6j] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 2rem;
    max-width: 1000px;
    margin: 0 auto;
}

.value-card[b-l4g3n6vt6j] {
    padding: 2.5rem 2rem;
    border-radius: var(--radius-lg);
    background: var(--clr-card);
    border: 1px solid var(--clr-border);
    text-align: left;
    position: relative;
    overflow: hidden;
    transition: border-color var(--transition-base),
                box-shadow var(--transition-base),
                transform var(--transition-base);
}

.value-card[b-l4g3n6vt6j]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--clr-accent), transparent);
    opacity: 0;
    transition: opacity var(--transition-base);
}

.value-card:hover[b-l4g3n6vt6j] {
    border-color: var(--clr-border-light);
    transform: translateY(-6px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3), 0 0 30px var(--clr-glow);
}

.value-card:hover[b-l4g3n6vt6j]::before {
    opacity: 1;
}

.value-card h3[b-l4g3n6vt6j] {
    font-size: 1.15rem;
    font-weight: 600;
    color: var(--clr-white);
    margin-bottom: 0.75rem;
}

.value-card p[b-l4g3n6vt6j] {
    font-size: 0.95rem;
    line-height: 1.7;
    color: var(--clr-gray);
}

/* === About CTA === */
.about-cta[b-l4g3n6vt6j] {
    text-align: center;
    padding: clamp(4rem, 8vw, 6rem) 2rem;
    background: var(--clr-dark);
    position: relative;
}

.about-cta[b-l4g3n6vt6j]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 300px;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--clr-border-light), transparent);
}

.about-cta h2[b-l4g3n6vt6j] {
    font-size: clamp(1.4rem, 3vw, 1.8rem);
    font-weight: 700;
    color: var(--clr-white);
    margin-bottom: 1.5rem;
}

@media (max-width: 768px) {
    .values-grid[b-l4g3n6vt6j] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Admin/AdminHome.razor.rz.scp.css */
/* === Admin landing (component-scoped) === */

.page-subtitle[b-c6ewl38rvg] {
    color: var(--clr-gray);
    margin-top: 0.25rem;
}

.admin-card-grid[b-c6ewl38rvg] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 1.25rem;
    margin-top: 2rem;
}

.admin-card[b-c6ewl38rvg] {
    background: var(--clr-card);
    border: 1px solid var(--clr-border);
    border-radius: 12px;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.admin-card h3[b-c6ewl38rvg] {
    margin: 0;
}

.admin-card p[b-c6ewl38rvg] {
    color: var(--clr-gray);
    margin: 0;
}

.admin-card--placeholder[b-c6ewl38rvg] {
    opacity: 0.7;
}

.admin-card-status[b-c6ewl38rvg] {
    margin-top: auto;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--clr-accent);
}

.admin-card--link[b-c6ewl38rvg] {
    text-decoration: none;
    color: inherit;
    transition: border-color 120ms ease, transform 120ms ease;
}

.admin-card--link:hover[b-c6ewl38rvg],
.admin-card--link:focus-visible[b-c6ewl38rvg] {
    border-color: var(--clr-accent);
    transform: translateY(-2px);
}
/* /Components/Pages/Admin/Payouts.razor.rz.scp.css */
/* === Admin supplier-payouts page (component-scoped) === */

.admin-pay-row[b-6ie38clwhd] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}

.form-input-inline[b-6ie38clwhd] {
    width: 9rem;
    padding: 0.25rem 0.5rem;
    font-size: 0.85rem;
}

.admin-toggle[b-6ie38clwhd] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0.5rem 0 1rem;
    color: var(--clr-gray);
    font-size: 0.9rem;
}
/* /Components/Pages/Admin/Suppliers.razor.rz.scp.css */
/* === Admin suppliers page (component-scoped) === */

.admin-create-card[b-qj8pad7ej5] {
    margin-bottom: 1.5rem;
}

.admin-form-row[b-qj8pad7ej5] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin-bottom: 0.75rem;
}

.admin-toggle[b-qj8pad7ej5] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0.5rem 0 1rem;
    color: var(--clr-gray);
    font-size: 0.9rem;
}

.row-disabled[b-qj8pad7ej5] {
    opacity: 0.55;
}
/* /Components/Pages/Contact.razor.rz.scp.css */
/* Styles in wwwroot/css/site.css — scoped CSS does not apply to InteractiveServer components */
/* /Components/Pages/Dashboard/Referrals.razor.rz.scp.css */
/* === Referrals page (component-scoped) === */

.referral-card[b-3uxaot2cz8] {
    background: var(--clr-card);
    border: 1px solid var(--clr-border);
    border-radius: 12px;
    padding: 1.5rem;
    margin-bottom: 1.25rem;
}

.referral-card h3[b-3uxaot2cz8] {
    margin: 0 0 0.85rem 0;
}

.referral-code-row[b-3uxaot2cz8] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.referral-code-pill[b-3uxaot2cz8] {
    display: inline-block;
    font-family: var(--font-mono);
    font-size: 1.15rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    padding: 0.5rem 0.95rem;
    background: rgba(124, 58, 237, 0.12);
    border: 1px solid var(--clr-accent);
    border-radius: var(--radius-sm);
    color: var(--clr-accent-light);
    user-select: all;
}

.referral-share-url[b-3uxaot2cz8] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    flex-wrap: wrap;
    margin: 0 0 0.85rem 0;
}

.referral-share-url code[b-3uxaot2cz8] {
    font-family: var(--font-mono);
    font-size: 0.85rem;
    padding: 0.3rem 0.55rem;
    background: var(--clr-surface);
    border: 1px solid var(--clr-border);
    border-radius: var(--radius-sm);
    color: var(--clr-off-white);
    word-break: break-all;
}

.referral-share-buttons[b-3uxaot2cz8] {
    display: flex;
    gap: 0.6rem;
    flex-wrap: wrap;
}

.referral-rewards-summary[b-3uxaot2cz8] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin: 0;
    color: var(--clr-off-white);
}

.referral-rewards-summary strong[b-3uxaot2cz8] {
    font-size: 1.4rem;
    color: var(--clr-accent-light);
}

.warning-pill[b-3uxaot2cz8] {
    display: inline-block;
    padding: 0.25rem 0.6rem;
    font-size: 0.78rem;
    font-weight: 600;
    border: 1px solid var(--clr-warning);
    border-radius: var(--radius-sm);
    background: rgba(245, 158, 11, 0.1);
    color: var(--clr-warning);
}

.referrals-table[b-3uxaot2cz8] {
    width: 100%;
    border-collapse: collapse;
    margin-top: 0.5rem;
}

.referrals-table th[b-3uxaot2cz8],
.referrals-table td[b-3uxaot2cz8] {
    text-align: left;
    padding: 0.6rem 0.75rem;
    border-bottom: 1px solid var(--clr-border);
    font-size: 0.92rem;
}

.referrals-table th[b-3uxaot2cz8] {
    color: var(--clr-gray);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-size: 0.78rem;
}
/* /Components/Pages/Dashboard/Subscription.razor.rz.scp.css */
/* ── Current plan card ─────────────────────────────────── */
.sub-current[b-by0wmqx0ha] {
    background: var(--clr-card);
    border: 1px solid var(--clr-border);
    border-radius: var(--radius-lg, 1rem);
    padding: 1.5rem;
    margin-bottom: 2rem;
}

.sub-current__plan[b-by0wmqx0ha] {
    display: flex;
    gap: 1.5rem;
    align-items: flex-start;
}

.sub-current__name[b-by0wmqx0ha] {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0 0 1rem;
    color: var(--clr-white);
}

.sub-current__details[b-by0wmqx0ha] {
    flex: 1;
}

.sub-current__row[b-by0wmqx0ha] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.4rem 0;
    border-bottom: 1px solid var(--clr-border-light, var(--clr-border));
}

.sub-current__row:last-child[b-by0wmqx0ha] {
    border-bottom: none;
}

.sub-current__label[b-by0wmqx0ha] {
    font-size: 0.9rem;
    color: var(--clr-gray);
}

.sub-current__value[b-by0wmqx0ha] {
    font-weight: 600;
}

.sub-current__value--muted[b-by0wmqx0ha] {
    font-weight: 400;
    color: var(--clr-gray);
    font-style: italic;
}

.sub-current__message[b-by0wmqx0ha] {
    margin: 0.75rem 0 0;
    color: var(--clr-gray);
}

.sub-current__actions[b-by0wmqx0ha] {
    margin-top: 1.25rem;
    display: flex;
    gap: 0.75rem;
}

.sub-status--active[b-by0wmqx0ha] {
    color: var(--clr-success, #22c55e);
}

.sub-status--pastdue[b-by0wmqx0ha] {
    color: var(--clr-error, #ef4444);
}

.sub-portal-hint[b-by0wmqx0ha] {
    font-size: 0.85rem;
    color: var(--clr-gray);
    margin-top: 0.5rem;
}

/* ── Section headings ─────────────────────────────────── */
.sub-section-title[b-by0wmqx0ha] {
    font-size: 1.15rem;
    font-weight: 700;
    margin: 0 0 0.25rem;
}

.sub-section-desc[b-by0wmqx0ha] {
    color: var(--clr-gray);
    margin: 0 0 1rem;
    max-width: 640px;
}

/* ── Plan grid ────────────────────────────────────────── */
.sub-plan-grid[b-by0wmqx0ha] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    margin: 1rem 0 1.5rem;
}

.sub-plan-card[b-by0wmqx0ha] {
    position: relative;
    background: var(--clr-card);
    border: 1px solid var(--clr-border);
    border-radius: var(--radius-lg, 1rem);
    padding: 2rem 1.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.sub-plan-card:hover[b-by0wmqx0ha] {
    border-color: var(--clr-accent);
    box-shadow: var(--shadow-card-hover);
}

.sub-plan-card--featured[b-by0wmqx0ha] {
    border-color: var(--clr-accent);
    box-shadow: var(--shadow-card-hover);
}

.sub-plan-card--current[b-by0wmqx0ha] {
    border-color: var(--clr-success, #22c55e);
    background: var(--clr-card);
}

.sub-plan-card--current:hover[b-by0wmqx0ha] {
    border-color: var(--clr-success, #22c55e);
}

.sub-plan-badge[b-by0wmqx0ha] {
    position: absolute;
    top: -0.75rem;
    left: 50%;
    transform: translateX(-50%);
    background: var(--clr-accent);
    color: var(--clr-white);
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 1rem;
    border-radius: 999px;
    white-space: nowrap;
}

.sub-plan-badge--current[b-by0wmqx0ha] {
    background: var(--clr-success, #22c55e);
}

.sub-plan-card__header h3[b-by0wmqx0ha] {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0.5rem 0 0.15rem;
}

.sub-plan-card__audience[b-by0wmqx0ha] {
    font-size: 0.85rem;
    color: var(--clr-gray);
    margin: 0 0 0.5rem;
}

.sub-plan-card__price[b-by0wmqx0ha] {
    font-size: 2rem;
    font-weight: 800;
    color: var(--clr-white);
    margin-bottom: 1rem;
}

.sub-plan-card__price span[b-by0wmqx0ha] {
    font-size: 1rem;
    font-weight: 400;
    color: var(--clr-gray);
}

.sub-plan-card__features[b-by0wmqx0ha] {
    list-style: none;
    padding: 0;
    margin: 0 0 1.5rem;
    text-align: left;
    width: 100%;
}

.sub-plan-card__features li[b-by0wmqx0ha] {
    padding: 0.4rem 0;
    font-size: 0.9rem;
    color: var(--clr-gray);
    border-bottom: 1px solid var(--clr-border-light, var(--clr-border));
}

.sub-plan-card__features li:last-child[b-by0wmqx0ha] {
    border-bottom: none;
}

.sub-plan-card__features li[b-by0wmqx0ha]::before {
    content: "\2713\00a0";
    color: var(--clr-accent);
    font-weight: 600;
}

.sub-plan-card .btn[b-by0wmqx0ha] {
    margin-top: auto;
    width: 100%;
}

/* ── Responsive ───────────────────────────────────────── */
@media (max-width: 768px) {
    .sub-current__plan[b-by0wmqx0ha] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .sub-plan-grid[b-by0wmqx0ha] {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .sub-plan-card--featured[b-by0wmqx0ha] {
        order: -1;
    }
}
/* /Components/Pages/Features.razor.rz.scp.css */
/* === Features Hero === */
/* Base layout provided by .page-hero in base.css */
.features-hero[b-bhl2hwdoja]::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 600px;
    height: 400px;
    background: radial-gradient(ellipse, rgba(124, 58, 237, 0.08), transparent 70%);
    pointer-events: none;
}

/* h1 layout provided by .page-hero h1 in base.css */

.hero-ctas[b-bhl2hwdoja] {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
}

/* === Features Grid === */
.features-list[b-bhl2hwdoja] {
    padding: clamp(4rem, 8vw, 6rem) 2rem;
    max-width: 1200px;
    margin: 0 auto;
}

.feature-grid[b-bhl2hwdoja] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 2rem;
}

.feature-icon[b-bhl2hwdoja] {
    font-size: 1.5rem;
}

/* === Features CTA === */
.features-cta[b-bhl2hwdoja] {
    text-align: center;
    padding: clamp(4rem, 8vw, 6rem) 2rem;
    background: linear-gradient(180deg, var(--clr-primary) 0%, var(--clr-primary-deep) 100%);
    color: var(--clr-white);
}

.features-cta h2[b-bhl2hwdoja] {
    font-size: clamp(1.6rem, 3vw, 2rem);
    font-weight: 700;
    margin-bottom: 1.5rem;
    color: var(--clr-white);
}

@media (max-width: 768px) {
    .feature-grid[b-bhl2hwdoja] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* === Hero — Cinematic === */
.hero[b-s8qg76lde4] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    text-align: center;
    overflow: hidden;
    padding: 6rem 2rem;
}

.hero-bg[b-s8qg76lde4] {
    position: absolute;
    inset: 0;
    z-index: 0;
    background: radial-gradient(ellipse 80% 60% at 50% 40%, var(--clr-primary-deep) 0%, var(--clr-black) 100%);
}

.hero-grain[b-s8qg76lde4] {
    position: absolute;
    inset: 0;
    opacity: 0.03;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
    background-repeat: repeat;
    pointer-events: none;
}

.hero-glow[b-s8qg76lde4] {
    position: absolute;
    width: 600px;
    height: 600px;
    border-radius: 50%;
    filter: blur(120px);
    opacity: 0.3;
    pointer-events: none;
}

.hero-glow--left[b-s8qg76lde4] {
    top: -100px;
    left: -200px;
    background: var(--clr-accent);
}

.hero-glow--right[b-s8qg76lde4] {
    bottom: -150px;
    right: -200px;
    background: var(--clr-gradient-end);
}

.hero-grid-pattern[b-s8qg76lde4] {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(124, 58, 237, 0.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(124, 58, 237, 0.05) 1px, transparent 1px);
    background-size: 80px 80px;
    mask-image: radial-gradient(ellipse 50% 50% at 50% 50%, black 20%, transparent 70%);
    -webkit-mask-image: radial-gradient(ellipse 50% 50% at 50% 50%, black 20%, transparent 70%);
    pointer-events: none;
}

.hero-content[b-s8qg76lde4] {
    position: relative;
    z-index: 1;
    max-width: 800px;
}

.hero-eyebrow[b-s8qg76lde4] {
    display: inline-block;
    font-family: var(--font-mono);
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--clr-accent-light);
    letter-spacing: 0.12em;
    text-transform: uppercase;
    margin-bottom: 1.5rem;
    padding: 0.4rem 1.2rem;
    border: 1px solid rgba(124, 58, 237, 0.3);
    border-radius: 100px;
    background: rgba(124, 58, 237, 0.08);
}


.hero-title[b-s8qg76lde4] {
    font-size: clamp(3rem, 7vw, 5rem);
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: -0.03em;
    color: var(--clr-white);
    margin-bottom: 1.5rem;
}

.hero-gradient-text[b-s8qg76lde4] {
    background: linear-gradient(135deg, var(--clr-gradient-start), var(--clr-gradient-end), var(--clr-gradient-accent));
    background-size: 200% auto;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: gradient-shift-b-s8qg76lde4 6s ease infinite;
}

@keyframes gradient-shift-b-s8qg76lde4 {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

.hero-subtitle[b-s8qg76lde4] {
    font-size: clamp(1.1rem, 2vw, 1.3rem);
    line-height: 1.7;
    color: var(--clr-gray);
    max-width: 600px;
    margin: 0 auto 2.5rem;
}

.hero-ctas[b-s8qg76lde4] {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
}

.btn-glow[b-s8qg76lde4] {
    box-shadow: 0 0 20px rgba(124, 58, 237, 0.3);
}

.btn-glow:hover[b-s8qg76lde4] {
    box-shadow: 0 0 30px rgba(124, 58, 237, 0.5), 0 8px 24px rgba(124, 58, 237, 0.3);
}

/* === Section Divider === */
.section-divider[b-s8qg76lde4] {
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--clr-border-light), transparent);
    max-width: 600px;
    margin: 0 auto;
}

/* === Features Section === */
.features-highlight[b-s8qg76lde4] {
    padding: clamp(5rem, 10vw, 8rem) 2rem;
    text-align: center;
    background: var(--clr-black);
}

.features-highlight-inner[b-s8qg76lde4] {
    max-width: 1200px;
    margin: 0 auto;
}

.features-highlight h2[b-s8qg76lde4] {
    font-size: clamp(1.8rem, 4vw, 2.5rem);
    font-weight: 700;
    margin-bottom: 3.5rem;
    color: var(--clr-white);
}

.feature-grid[b-s8qg76lde4] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 2rem;
}

/* text-align override — base.css .feature-card has no text-align set */
.feature-card[b-s8qg76lde4] {
    text-align: left;
}

/* === Stats Bar === */
.stats-bar[b-s8qg76lde4] {
    padding: 3rem 2rem;
    background: var(--clr-dark);
    border-top: 1px solid var(--clr-border);
    border-bottom: 1px solid var(--clr-border);
}

.stats-bar-inner[b-s8qg76lde4] {
    display: flex;
    justify-content: center;
    gap: clamp(3rem, 8vw, 6rem);
    max-width: 800px;
    margin: 0 auto;
}

.stat-item[b-s8qg76lde4] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
}

.stat-number[b-s8qg76lde4] {
    font-family: var(--font-display);
    font-size: clamp(2rem, 4vw, 2.8rem);
    font-weight: 700;
    background: linear-gradient(135deg, var(--clr-accent-light), var(--clr-gradient-blue));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.stat-label[b-s8qg76lde4] {
    font-size: 0.9rem;
    color: var(--clr-gray);
    text-align: center;
}

/* === Pricing Preview ===
 *
 * Plan-card / price / feature styling lives in css/pages/pricing.css —
 * shared with the dedicated /pricing page so both surfaces stay in sync.
 * This file keeps only the section-level layout for the home page's
 * preview block (background, padding, heading sizing).
 */
.pricing-preview[b-s8qg76lde4] {
    padding: clamp(5rem, 10vw, 8rem) 2rem;
    background: var(--clr-dark);
}

/* === Referral Banner === */
.referral-banner[b-s8qg76lde4] {
    margin-top: 2.5rem;
    padding: 1.5rem 2rem;
    background: linear-gradient(135deg, rgba(124, 58, 237, 0.1), rgba(37, 99, 235, 0.08));
    border: 1px solid rgba(124, 58, 237, 0.25);
    border-radius: var(--radius-lg);
    text-align: center;
}

.referral-banner strong[b-s8qg76lde4] {
    font-size: 1.15rem;
    color: var(--clr-white);
    display: block;
    margin-bottom: 0.35rem;
}

.referral-banner p[b-s8qg76lde4] {
    font-size: 0.95rem;
    color: var(--clr-gray);
    margin: 0;
}

.referral-banner + .btn[b-s8qg76lde4] {
    margin-top: 1.5rem;
}

/* === CTA Section === */
.cta-section[b-s8qg76lde4] {
    padding: clamp(5rem, 10vw, 8rem) 2rem;
    text-align: center;
    background: linear-gradient(180deg, var(--clr-primary) 0%, var(--clr-primary-deep) 100%);
    color: var(--clr-white);
    position: relative;
}

.cta-section-inner[b-s8qg76lde4] {
    max-width: 600px;
    margin: 0 auto;
}

.cta-section h2[b-s8qg76lde4] {
    font-size: clamp(1.8rem, 4vw, 2.5rem);
    font-weight: 700;
    margin-bottom: 1rem;
    color: var(--clr-white);
}

.cta-section p[b-s8qg76lde4] {
    font-size: 1.15rem;
    color: var(--clr-gray);
    margin-bottom: 2.5rem;
    line-height: 1.7;
}

/* === Responsive === */
@media (max-width: 768px) {
    .hero[b-s8qg76lde4] {
        min-height: 90vh;
        padding: 5rem 1.5rem;
    }

    .hero-glow[b-s8qg76lde4] {
        width: 350px;
        height: 350px;
        filter: blur(80px);
    }

    .hero-grid-pattern[b-s8qg76lde4] {
        background-size: 50px 50px;
    }

    .feature-grid[b-s8qg76lde4] {
        grid-template-columns: 1fr;
    }

    .feature-card[b-s8qg76lde4] {
        text-align: left;
    }

    .stats-bar-inner[b-s8qg76lde4] {
        gap: 2rem;
    }

    .plan-cards[b-s8qg76lde4] {
        grid-template-columns: 1fr;
        max-width: 400px;
        margin: 0 auto;
    }

    .plan-card--featured[b-s8qg76lde4] {
        transform: none;
    }

    .plan-card--featured:hover[b-s8qg76lde4] {
        transform: translateY(-6px);
    }
}
/* /Components/Pages/Login.razor.rz.scp.css */
/* Styles in wwwroot/css/site.css — scoped CSS does not apply to InteractiveServer components */
/* /Components/Pages/NotFound.razor.rz.scp.css */
.not-found-section[b-vj1zsrn80j] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 70vh;
    padding: 3rem 2rem;
    text-align: center;
    background: var(--clr-dark);
    position: relative;
    overflow: hidden;
}

.not-found-section[b-vj1zsrn80j]::before {
    content: '';
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 400px;
    height: 300px;
    background: radial-gradient(ellipse, rgba(124, 58, 237, 0.06), transparent 70%);
    pointer-events: none;
}

.not-found-content[b-vj1zsrn80j] {
    max-width: 500px;
    position: relative;
}

.not-found-code[b-vj1zsrn80j] {
    font-family: var(--font-display);
    font-size: 7rem;
    font-weight: 700;
    background: linear-gradient(135deg, var(--clr-accent), var(--clr-gradient-end));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    opacity: 0.35;
    line-height: 1;
    margin-bottom: 1rem;
}

.not-found-content h1[b-vj1zsrn80j] {
    font-size: 2rem;
    font-weight: 700;
    color: var(--clr-white);
    margin-bottom: 1rem;
}

.not-found-content p[b-vj1zsrn80j] {
    font-size: 1.05rem;
    line-height: 1.7;
    color: var(--clr-gray);
    margin-bottom: 2rem;
}
/* /Components/Pages/Onboarding/Billing.razor.rz.scp.css */
.billing-plan-grid[b-zavrs047ak] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    margin: 2rem 0;
}

.billing-plan-card[b-zavrs047ak] {
    position: relative;
    background: var(--clr-card);
    border: 1px solid var(--clr-border);
    border-radius: var(--radius-lg, 1rem);
    padding: 2rem 1.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.billing-plan-card:hover[b-zavrs047ak] {
    border-color: var(--clr-accent);
    box-shadow: var(--shadow-card-hover);
}

.billing-plan-card--featured[b-zavrs047ak] {
    border-color: var(--clr-accent);
    box-shadow: var(--shadow-card-hover);
}

.billing-plan-badge[b-zavrs047ak] {
    position: absolute;
    top: -0.75rem;
    left: 50%;
    transform: translateX(-50%);
    background: var(--clr-accent);
    color: var(--clr-white);
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 1rem;
    border-radius: 999px;
    white-space: nowrap;
}

.billing-plan-card h2[b-zavrs047ak] {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0.5rem 0 0.25rem;
}

.billing-plan-price[b-zavrs047ak] {
    font-size: 2rem;
    font-weight: 800;
    color: var(--clr-white);
    margin-bottom: 1rem;
}

.billing-plan-price span[b-zavrs047ak] {
    font-size: 1rem;
    font-weight: 400;
    color: var(--clr-gray);
}

.billing-plan-card ul[b-zavrs047ak] {
    list-style: none;
    padding: 0;
    margin: 0 0 1.5rem;
    text-align: left;
    width: 100%;
}

.billing-plan-card li[b-zavrs047ak] {
    padding: 0.4rem 0;
    font-size: 0.9rem;
    color: var(--clr-gray);
    border-bottom: 1px solid var(--clr-border-light, var(--clr-border));
}

.billing-plan-card li:last-child[b-zavrs047ak] {
    border-bottom: none;
}

.billing-plan-card li[b-zavrs047ak]::before {
    content: "\2713\00a0";
    color: var(--clr-accent);
    font-weight: 600;
}

.billing-plan-card .btn[b-zavrs047ak] {
    margin-top: auto;
    width: 100%;
}

.billing-return-status[b-zavrs047ak] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 2rem 0;
}

.billing-return-spinner[b-zavrs047ak] {
    width: 2.5rem;
    height: 2.5rem;
    border: 3px solid var(--clr-border);
    border-top-color: var(--clr-accent);
    border-radius: 50%;
    animation: billing-spin-b-zavrs047ak 0.8s linear infinite;
}

@keyframes billing-spin-b-zavrs047ak {
    to { transform: rotate(360deg); }
}

@media (max-width: 768px) {
    .billing-plan-grid[b-zavrs047ak] {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .billing-plan-card--featured[b-zavrs047ak] {
        order: -1;
    }
}
/* /Components/Pages/Pricing.razor.rz.scp.css */
/* === Pricing page (component-scoped) ===
 *
 * Tier-card / price / feature-list styling has been centralised in
 * css/pages/pricing.css. This scoped file now holds only the pricing-page
 * decorative bits that don't fit the shared visual language —
 * specifically, the hero glow.
 *
 * If you find yourself adding tier-card rules here, add them to the
 * shared pricing.css instead. Scoped rules outweigh shared on specificity
 * and the divergence becomes a maintenance trap (we lost half a session
 * to that on 2026-05-01 — see project memory).
 */

.pricing-hero[b-gee3j6ul7t]::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 600px;
    height: 400px;
    background: radial-gradient(ellipse, rgba(124, 58, 237, 0.08), transparent 70%);
    pointer-events: none;
}

.pricing-faq[b-gee3j6ul7t]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 300px;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--clr-border-light), transparent);
}

.pricing-faq p a[b-gee3j6ul7t] {
    color: var(--clr-accent-light);
    text-decoration: none;
    transition: color 0.2s ease;
}

.pricing-faq p a:hover[b-gee3j6ul7t] {
    color: var(--clr-white);
}
/* /Components/Pages/Privacy.razor.rz.scp.css */
/* Base layout provided by .page-hero in base.css */
.legal-hero[b-qk3z0w6cry]::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 500px;
    height: 300px;
    background: radial-gradient(ellipse, rgba(124, 58, 237, 0.06), transparent 70%);
    pointer-events: none;
}

.legal-hero h1[b-qk3z0w6cry] {
    margin-bottom: 0.5rem; /* tighter than .page-hero default */
}

.legal-updated[b-qk3z0w6cry] {
    font-size: 0.9rem;
    color: var(--clr-gray-mid);
    position: relative;
}

.legal-content[b-qk3z0w6cry] {
    padding: clamp(3rem, 6vw, 5rem) 2rem;
}

.legal-body[b-qk3z0w6cry] {
    max-width: 760px;
    margin: 0 auto;
}

.legal-body h2[b-qk3z0w6cry] {
    font-size: 1.3rem;
    font-weight: 600;
    color: var(--clr-accent-light);
    margin-top: 2.5rem;
    margin-bottom: 0.75rem;
}

.legal-body h2:first-child[b-qk3z0w6cry] {
    margin-top: 0;
}

.legal-body p[b-qk3z0w6cry] {
    font-size: 1rem;
    line-height: 1.8;
    color: var(--clr-gray);
    margin-bottom: 1rem;
}

.legal-body ul[b-qk3z0w6cry] {
    padding-left: 1.5rem;
    margin-bottom: 1rem;
}

.legal-body li[b-qk3z0w6cry] {
    font-size: 1rem;
    line-height: 1.8;
    color: var(--clr-gray);
    margin-bottom: 0.5rem;
}

.legal-body a[b-qk3z0w6cry] {
    color: var(--clr-accent-light);
    text-decoration: underline;
    transition: color var(--transition-fast);
}

.legal-body a:hover[b-qk3z0w6cry] {
    color: var(--clr-white);
}
/* /Components/Pages/Register.razor.rz.scp.css */
/* Styles in wwwroot/css/site.css — scoped CSS does not apply to InteractiveServer components */
/* /Components/Pages/Terms.razor.rz.scp.css */
/* Base layout provided by .page-hero in base.css */
.legal-hero[b-pqqu2y8sdn]::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 500px;
    height: 300px;
    background: radial-gradient(ellipse, rgba(124, 58, 237, 0.06), transparent 70%);
    pointer-events: none;
}

.legal-hero h1[b-pqqu2y8sdn] {
    margin-bottom: 0.5rem; /* tighter than .page-hero default */
}

.legal-updated[b-pqqu2y8sdn] {
    font-size: 0.9rem;
    color: var(--clr-gray-mid);
    position: relative;
}

.legal-content[b-pqqu2y8sdn] {
    padding: clamp(3rem, 6vw, 5rem) 2rem;
}

.legal-body[b-pqqu2y8sdn] {
    max-width: 760px;
    margin: 0 auto;
}

.legal-body h2[b-pqqu2y8sdn] {
    font-size: 1.3rem;
    font-weight: 600;
    color: var(--clr-accent-light);
    margin-top: 2.5rem;
    margin-bottom: 0.75rem;
}

.legal-body h2:first-child[b-pqqu2y8sdn] {
    margin-top: 0;
}

.legal-body p[b-pqqu2y8sdn] {
    font-size: 1rem;
    line-height: 1.8;
    color: var(--clr-gray);
    margin-bottom: 1rem;
}

.legal-body ul[b-pqqu2y8sdn] {
    padding-left: 1.5rem;
    margin-bottom: 1rem;
}

.legal-body li[b-pqqu2y8sdn] {
    font-size: 1rem;
    line-height: 1.8;
    color: var(--clr-gray);
    margin-bottom: 0.5rem;
}

.legal-body a[b-pqqu2y8sdn] {
    color: var(--clr-accent-light);
    text-decoration: underline;
    transition: color var(--transition-fast);
}

.legal-body a:hover[b-pqqu2y8sdn] {
    color: var(--clr-white);
}
/* /Components/Shared/ToggleSwitch.razor.rz.scp.css */
.toggle-switch[b-1rk9dnjlb0] {
    display: inline-flex;
    align-items: center;
    gap: 0.625rem;
    cursor: pointer;
    user-select: none;
}

/* Hide native checkbox */
.toggle-switch input[type="checkbox"][b-1rk9dnjlb0] {
    appearance: none;
    -webkit-appearance: none;
    position: absolute;
    width: 0;
    height: 0;
    margin: 0;
    padding: 0;
    border: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
}

.toggle-switch__track[b-1rk9dnjlb0] {
    position: relative;
    width: 2.75rem;
    height: 1.5rem;
    border-radius: 0.75rem;
    background: var(--clr-border-light);
    border: 1px solid var(--clr-border-light);
    transition: background-color var(--transition-fast),
                border-color var(--transition-fast);
}

.toggle-switch--on .toggle-switch__track[b-1rk9dnjlb0] {
    background: var(--clr-accent);
    border-color: var(--clr-accent);
}

.toggle-switch__thumb[b-1rk9dnjlb0] {
    position: absolute;
    top: 2px;
    left: 2px;
    width: 1.125rem;
    height: 1.125rem;
    border-radius: 50%;
    background: var(--clr-gray);
    transition: transform var(--transition-fast),
                background-color var(--transition-fast);
}

.toggle-switch--on .toggle-switch__thumb[b-1rk9dnjlb0] {
    transform: translateX(1.25rem);
    background: var(--clr-white);
}

.toggle-switch__label[b-1rk9dnjlb0] {
    font-family: var(--font-sans);
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--clr-gray);
    transition: color var(--transition-fast);
}

.toggle-switch--on .toggle-switch__label[b-1rk9dnjlb0] {
    color: var(--clr-accent-light);
}

/* Focus ring on track when checkbox is focused */
.toggle-switch:has(input:focus-visible) .toggle-switch__track[b-1rk9dnjlb0] {
    outline: 2px solid var(--clr-accent);
    outline-offset: 2px;
}

/* Hover */
.toggle-switch:hover .toggle-switch__track[b-1rk9dnjlb0] {
    border-color: var(--clr-accent);
}

/* Disabled */
.toggle-switch--disabled[b-1rk9dnjlb0] {
    cursor: not-allowed;
    opacity: 0.5;
}

.toggle-switch--disabled:hover .toggle-switch__track[b-1rk9dnjlb0] {
    border-color: var(--clr-border-light);
}
