/* /Components/Alert.razor.rz.scp.css */
.jb-alert[b-a977hmfg3j] {
    display: flex;
    flex-direction: column;
    gap: var(--jb-space-2xs);
    padding: var(--jb-space-sm) var(--jb-space-md);
    border-radius: var(--jb-radius-md);
    border-left: 3px solid currentColor;
    font-size: var(--jb-text-body-sm);
}

.jb-alert__title[b-a977hmfg3j] { font-weight: var(--jb-text-weight-semibold); }

.jb-alert--info[b-a977hmfg3j]    { background: var(--jb-color-status-info-bg);    color: var(--jb-color-status-info); }
.jb-alert--success[b-a977hmfg3j] { background: var(--jb-color-status-success-bg); color: var(--jb-color-status-success); }
.jb-alert--warning[b-a977hmfg3j] { background: var(--jb-color-status-warning-bg); color: var(--jb-color-status-warning); }
.jb-alert--error[b-a977hmfg3j]   { background: var(--jb-color-status-error-bg);   color: var(--jb-color-status-error); }

.jb-alert__body[b-a977hmfg3j] { color: var(--jb-color-text-primary); }
/* /Components/Badge.razor.rz.scp.css */
.jb-badge[b-hxkeo3a1s8] {
    display: inline-flex;
    align-items: center;
    padding: var(--jb-space-3xs) var(--jb-space-xs);
    font-size: var(--jb-text-body-xs);
    font-weight: var(--jb-text-weight-medium);
    line-height: 1;
    border-radius: var(--jb-radius-pill);
    white-space: nowrap;
}

.jb-badge--neutral[b-hxkeo3a1s8]  { background: var(--jb-color-neutral-100); color: var(--jb-color-neutral-700); }
.jb-badge--brand[b-hxkeo3a1s8]    { background: color-mix(in srgb, var(--jb-color-brand-primary) 15%, transparent); color: var(--jb-color-brand-primary); }
.jb-badge--success[b-hxkeo3a1s8]  { background: var(--jb-color-status-success-bg); color: var(--jb-color-status-success); }
.jb-badge--warning[b-hxkeo3a1s8]  { background: var(--jb-color-status-warning-bg); color: var(--jb-color-status-warning); }
.jb-badge--error[b-hxkeo3a1s8]    { background: var(--jb-color-status-error-bg); color: var(--jb-color-status-error); }
.jb-badge--info[b-hxkeo3a1s8]     { background: var(--jb-color-status-info-bg); color: var(--jb-color-status-info); }
/* /Components/Button.razor.rz.scp.css */
.jb-button[b-9dyq4skj7f] {
    display: inline-flex;
    align-items: center;
    gap: var(--jb-space-xs);
    padding: var(--jb-space-xs) var(--jb-space-md);
    font-family: var(--jb-font-family-sans);
    font-size: var(--jb-text-body-sm);
    font-weight: var(--jb-text-weight-semibold);
    line-height: var(--jb-text-leading-tight);
    border-radius: var(--jb-radius-md);
    border: 1px solid transparent;
    cursor: pointer;
    transition: background var(--jb-motion-duration-fast) var(--jb-motion-easing-standard),
                border-color var(--jb-motion-duration-fast) var(--jb-motion-easing-standard),
                box-shadow var(--jb-motion-duration-fast) var(--jb-motion-easing-standard);
}

.jb-button:focus-visible[b-9dyq4skj7f] {
    outline: none;
    box-shadow: var(--jb-shadow-focus);
}

.jb-button:disabled[b-9dyq4skj7f] {
    opacity: 0.5;
    cursor: not-allowed;
}

.jb-button--sm[b-9dyq4skj7f] {
    padding: var(--jb-space-2xs) var(--jb-space-sm);
    font-size: var(--jb-text-body-xs);
}

/* Primary */
.jb-button--primary[b-9dyq4skj7f] {
    background: var(--jb-color-brand-primary);
    color: var(--jb-color-text-inverse);
}
.jb-button--primary:hover:not(:disabled)[b-9dyq4skj7f] { background: var(--jb-color-brand-primary-hover); }
.jb-button--primary:active:not(:disabled)[b-9dyq4skj7f] { background: var(--jb-color-brand-primary-active); }

/* Secondary */
.jb-button--secondary[b-9dyq4skj7f] {
    background: var(--jb-color-surface-card);
    color: var(--jb-color-brand-primary);
    border-color: var(--jb-color-brand-primary);
}
.jb-button--secondary:hover:not(:disabled)[b-9dyq4skj7f] { background: var(--jb-color-neutral-50); }

/* Neutral */
.jb-button--neutral[b-9dyq4skj7f] {
    background: var(--jb-color-surface-card);
    color: var(--jb-color-text-primary);
    border-color: var(--jb-color-border-default);
}
.jb-button--neutral:hover:not(:disabled)[b-9dyq4skj7f] { background: var(--jb-color-neutral-50); }

/* Destructive */
.jb-button--destructive[b-9dyq4skj7f] {
    background: var(--jb-color-status-error);
    color: var(--jb-color-text-inverse);
}
.jb-button--destructive:hover:not(:disabled)[b-9dyq4skj7f] { filter: brightness(0.92); }

/* Ghost */
.jb-button--ghost[b-9dyq4skj7f] {
    background: transparent;
    color: var(--jb-color-text-primary);
}
.jb-button--ghost:hover:not(:disabled)[b-9dyq4skj7f] { background: var(--jb-color-neutral-100); }

.jb-button__spinner[b-9dyq4skj7f] {
    width: 14px; height: 14px;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: jb-button-spin-b-9dyq4skj7f 0.6s linear infinite;
}

@keyframes jb-button-spin-b-9dyq4skj7f { to { transform: rotate(360deg); } }
/* /Components/Card.razor.rz.scp.css */
.jb-card[b-q95p4wkbad] {
    background: var(--jb-color-surface-card);
    border: 1px solid var(--jb-color-border-subtle);
    border-radius: var(--jb-radius-lg);
    box-shadow: var(--jb-shadow-sm);
    overflow: hidden;
}

.jb-card__header[b-q95p4wkbad] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--jb-space-md);
    padding: var(--jb-space-md) var(--jb-space-lg);
    border-bottom: 1px solid var(--jb-color-border-subtle);
    background: var(--jb-color-surface-sunken);
}

.jb-card__title[b-q95p4wkbad] {
    margin: 0;
    font-size: var(--jb-text-heading-sm);
    font-weight: var(--jb-text-weight-semibold);
    color: var(--jb-color-text-primary);
}

.jb-card__actions[b-q95p4wkbad] {
    display: flex;
    gap: var(--jb-space-xs);
}

.jb-card__body[b-q95p4wkbad] {
    padding: var(--jb-space-lg);
}

.jb-card__footer[b-q95p4wkbad] {
    padding: var(--jb-space-md) var(--jb-space-lg);
    border-top: 1px solid var(--jb-color-border-subtle);
    background: var(--jb-color-surface-sunken);
}
/* /Components/DataTable.razor.rz.scp.css */
.jb-datatable[b-r1yjp7hp04] {
    overflow-x: auto;
    background: var(--jb-color-surface-card);
}

.jb-datatable__table[b-r1yjp7hp04] {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--jb-text-body-sm);
}

.jb-datatable__table[b-r1yjp7hp04]  th {
    text-align: left;
    padding: var(--jb-space-sm) var(--jb-space-md);
    background: var(--jb-color-surface-sunken);
    color: var(--jb-color-text-secondary);
    font-weight: var(--jb-text-weight-semibold);
    text-transform: uppercase;
    font-size: var(--jb-text-body-xs);
    letter-spacing: 0.04em;
    border-bottom: 1px solid var(--jb-color-border-default);
    position: sticky;
    top: 0;
    z-index: var(--jb-z-sticky);
}

.jb-datatable__table[b-r1yjp7hp04]  td {
    padding: var(--jb-space-sm) var(--jb-space-md);
    border-bottom: 1px solid var(--jb-color-border-subtle);
    color: var(--jb-color-text-primary);
}

.jb-datatable__row--clickable[b-r1yjp7hp04] {
    cursor: pointer;
}
.jb-datatable__row--clickable:hover[b-r1yjp7hp04] {
    background: var(--jb-color-neutral-50);
}

.jb-datatable__empty[b-r1yjp7hp04] {
    text-align: center;
    padding: var(--jb-space-2xl) !important;
    color: var(--jb-color-text-muted);
}
/* /Components/Path.razor.rz.scp.css */
.jb-path[b-3ypdz8sx9f] {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: var(--jb-space-3xs);
    overflow-x: auto;
}

.jb-path__step[b-3ypdz8sx9f] {
    position: relative;
    flex: 1;
    min-width: 120px;
    padding: var(--jb-space-xs) var(--jb-space-md) var(--jb-space-xs) var(--jb-space-xl);
    background: var(--jb-color-neutral-100);
    color: var(--jb-color-text-secondary);
    font-size: var(--jb-text-body-sm);
    font-weight: var(--jb-text-weight-medium);
    clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 50%, calc(100% - 12px) 100%, 0 100%, 12px 50%);
    white-space: nowrap;
}

.jb-path__step:first-child[b-3ypdz8sx9f] {
    clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 50%, calc(100% - 12px) 100%, 0 100%);
    padding-left: var(--jb-space-md);
}

.jb-path__step--complete[b-3ypdz8sx9f] {
    background: color-mix(in srgb, var(--jb-color-brand-primary) 15%, transparent);
    color: var(--jb-color-brand-primary);
}

.jb-path__step--current[b-3ypdz8sx9f] {
    background: var(--jb-color-brand-primary);
    color: var(--jb-color-text-inverse);
}
/* /Components/UserMenu.razor.rz.scp.css */
.user-menu[b-w8jwji74h5] {
    position: relative;
    display: inline-flex;
}

.user-menu__trigger[b-w8jwji74h5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    background: transparent;
    border: none;
    cursor: pointer;
    border-radius: 50%;
    transition: box-shadow 120ms ease;
}

.user-menu__trigger:hover[b-w8jwji74h5],
.user-menu__trigger:focus-visible[b-w8jwji74h5] {
    outline: none;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--jb-color-brand-primary) 25%, transparent);
}

.user-menu__avatar[b-w8jwji74h5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--jb-color-brand-primary, #0E7C7B);
    color: #ffffff;
    font-size: 13px;
    font-weight: var(--jb-text-weight-semibold, 600);
    letter-spacing: 0.5px;
    user-select: none;
}

.user-menu__panel[b-w8jwji74h5] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    min-width: 240px;
    background: var(--jb-color-surface, #ffffff);
    border: 1px solid var(--jb-color-border-subtle, #e5e7eb);
    border-radius: var(--jb-radius-md, 8px);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12);
    padding: 6px 0;
    z-index: 1000;
    animation: user-menu-fade-b-w8jwji74h5 120ms ease;
}

@keyframes user-menu-fade-b-w8jwji74h5 {
    from { opacity: 0; transform: translateY(-4px); }
    to   { opacity: 1; transform: translateY(0); }
}

.user-menu__identity[b-w8jwji74h5] {
    padding: 10px 16px 12px;
    border-bottom: 1px solid var(--jb-color-border-subtle, #e5e7eb);
    margin-bottom: 6px;
}

.user-menu__identity-name[b-w8jwji74h5] {
    font-size: 13px;
    font-weight: var(--jb-text-weight-semibold, 600);
    color: var(--jb-color-text, #111827);
    word-break: break-all;
}

.user-menu__identity-role[b-w8jwji74h5] {
    font-size: 11px;
    color: var(--jb-color-text-muted, #6b7280);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 2px;
}

.user-menu__item[b-w8jwji74h5] {
    display: block;
    width: 100%;
    padding: 8px 16px;
    text-align: left;
    font-size: 13px;
    color: var(--jb-color-text, #111827);
    background: transparent;
    border: none;
    cursor: pointer;
    text-decoration: none;
}

.user-menu__item:hover[b-w8jwji74h5],
.user-menu__item:focus-visible[b-w8jwji74h5] {
    background: var(--jb-color-surface-alt, #f3f4f6);
    outline: none;
}

.user-menu__item--danger[b-w8jwji74h5] {
    color: var(--jb-color-status-danger, #b91c1c);
}

.user-menu__item--danger:hover[b-w8jwji74h5] {
    background: color-mix(in srgb, var(--jb-color-status-danger, #b91c1c) 8%, transparent);
}
/* /Layout/AuthenticatedShellLayout.razor.rz.scp.css */
.shell[b-y46vh1etb3] {
    display: grid;
    grid-template-columns: 240px 1fr;
    min-height: 100vh;
}

.shell__sidebar[b-y46vh1etb3] {
    background: var(--jb-color-neutral-900);
    color: var(--jb-color-text-inverse);
    border-right: 1px solid var(--jb-color-border-default);
    position: relative;
}

/* Role-specific sidebar accent stripe */
.shell--admin .shell__sidebar[b-y46vh1etb3]::after { background: var(--jb-color-brand-primary); }
.shell--sales .shell__sidebar[b-y46vh1etb3]::after { background: #6366F1; /* indigo */ }
.shell--employer .shell__sidebar[b-y46vh1etb3]::after { background: #0284C7; /* sky */ }
.shell--agency .shell__sidebar[b-y46vh1etb3]::after { background: #DC2626; /* red */ }

.shell__sidebar[b-y46vh1etb3]::after {
    content: "";
    position: absolute;
    top: 0; right: 0; bottom: 0;
    width: 3px;
}

.shell__main[b-y46vh1etb3] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.shell__topbar[b-y46vh1etb3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 56px;
    padding: 0 var(--jb-space-lg);
    background: var(--jb-color-surface-card);
    border-bottom: 1px solid var(--jb-color-border-subtle);
    box-shadow: var(--jb-shadow-sm);
    position: sticky;
    top: 0;
    z-index: var(--jb-z-sticky);
}

.shell__area-label[b-y46vh1etb3] {
    font-size: var(--jb-text-body-sm);
    color: var(--jb-color-text-secondary);
    font-weight: var(--jb-text-weight-medium);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.shell__user[b-y46vh1etb3] {
    display: flex;
    align-items: center;
    gap: var(--jb-space-md);
}

.shell__user-email[b-y46vh1etb3] {
    font-size: var(--jb-text-body-sm);
    color: var(--jb-color-text-secondary);
}

.shell__content[b-y46vh1etb3] {
    flex: 1;
    padding: var(--jb-space-xl);
    max-width: 100%;
    overflow-x: auto;
}

/* Hamburger button — desktop-hidden, shown <768px. Three-stripe CSS icon
   so we don't need an icon library. */
.shell__hamburger[b-y46vh1etb3] {
    display: none;
    background: transparent;
    border: 0;
    padding: 8px;
    margin-right: 8px;
    cursor: pointer;
    width: 40px;
    height: 40px;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
}
.shell__hamburger span[b-y46vh1etb3] {
    display: block;
    height: 2px;
    width: 22px;
    background: var(--jb-color-text-primary, #111);
    border-radius: 1px;
    transition: transform 200ms, opacity 200ms;
}

.shell__backdrop[b-y46vh1etb3] {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    border: 0;
    padding: 0;
    cursor: pointer;
    z-index: 90;
}

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

    /* Off-canvas sidebar — lives offscreen to the left by default, slides
       in when .shell--menu-open is applied. Fixed positioning so it floats
       above content without relayout. */
    .shell__sidebar[b-y46vh1etb3] {
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        width: 260px;
        transform: translateX(-100%);
        transition: transform 220ms ease;
        z-index: 100;
        overflow-y: auto;
    }
    .shell--menu-open .shell__sidebar[b-y46vh1etb3] { transform: translateX(0); }
    .shell--menu-open .shell__backdrop[b-y46vh1etb3] { display: block; }

    .shell__hamburger[b-y46vh1etb3] { display: inline-flex; }
}
/* /Layout/CandidatePortalLayout.razor.rz.scp.css */
.candidate-shell[b-02ynvq4zy5] {
    min-height: 100vh;
    background: var(--jb-color-surface-canvas);
    display: flex;
    flex-direction: column;
}

.candidate-shell__header[b-02ynvq4zy5] {
    display: flex;
    align-items: center;
    gap: var(--jb-space-xl);
    padding: 0 var(--jb-space-xl);
    height: 64px;
    background: var(--jb-color-surface-card);
    border-bottom: 1px solid var(--jb-color-border-subtle);
    position: sticky;
    top: 0;
    z-index: var(--jb-z-sticky);
}

.candidate-shell__brand[b-02ynvq4zy5] {
    display: inline-flex;
    align-items: center;
    gap: var(--jb-space-sm);
    color: var(--jb-color-text-primary);
    text-decoration: none;
    font-weight: var(--jb-text-weight-semibold);
}
.candidate-shell__brand:hover[b-02ynvq4zy5] { text-decoration: none; }

.candidate-shell__brand-mark[b-02ynvq4zy5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px; height: 32px;
    border-radius: var(--jb-radius-md);
    background: var(--jb-color-brand-primary);
    color: var(--jb-color-text-inverse);
    font-weight: var(--jb-text-weight-bold);
    font-size: var(--jb-text-body-sm);
}

.candidate-shell__nav[b-02ynvq4zy5] {
    display: flex;
    gap: var(--jb-space-xs);
    flex: 1;
}

[b-02ynvq4zy5] .candidate-shell__nav-link {
    padding: var(--jb-space-xs) var(--jb-space-md);
    border-radius: var(--jb-radius-md);
    color: var(--jb-color-text-secondary);
    font-size: var(--jb-text-body-sm);
    font-weight: var(--jb-text-weight-medium);
    text-decoration: none;
}
[b-02ynvq4zy5] .candidate-shell__nav-link:hover {
    background: var(--jb-color-neutral-100);
    color: var(--jb-color-text-primary);
    text-decoration: none;
}
[b-02ynvq4zy5] .candidate-shell__nav-link.active {
    background: color-mix(in srgb, var(--jb-color-brand-primary) 12%, transparent);
    color: var(--jb-color-brand-primary);
}

.candidate-shell__user[b-02ynvq4zy5] {
    display: flex;
    align-items: center;
    gap: var(--jb-space-md);
}

.candidate-shell__user-email[b-02ynvq4zy5] {
    font-size: var(--jb-text-body-sm);
    color: var(--jb-color-text-secondary);
}

.candidate-shell__content[b-02ynvq4zy5] {
    flex: 1;
    padding: var(--jb-space-xl);
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

.candidate-shell__hamburger[b-02ynvq4zy5] {
    display: none;
    background: transparent;
    border: 0;
    padding: 8px;
    margin-right: 4px;
    cursor: pointer;
    width: 40px;
    height: 40px;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
}
.candidate-shell__hamburger span[b-02ynvq4zy5] {
    display: block;
    height: 2px;
    width: 22px;
    background: var(--jb-color-text-primary, #111);
    border-radius: 1px;
}
.candidate-shell__backdrop[b-02ynvq4zy5] {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    border: 0;
    padding: 0;
    cursor: pointer;
    z-index: 90;
}

@media (max-width: 768px) {
    .candidate-shell__header[b-02ynvq4zy5] { padding: var(--jb-space-sm) var(--jb-space-md); }
    .candidate-shell__hamburger[b-02ynvq4zy5] { display: inline-flex; }

    /* Collapse the horizontal nav into an off-canvas top drawer. */
    .candidate-shell__nav[b-02ynvq4zy5] {
        position: fixed;
        top: 56px;
        left: 0;
        right: 0;
        background: var(--jb-color-surface-card, #fff);
        flex-direction: column;
        padding: var(--jb-space-md);
        gap: 4px;
        box-shadow: 0 8px 24px rgba(0,0,0,0.12);
        transform: translateY(-110%);
        transition: transform 220ms ease;
        z-index: 100;
    }
    .candidate-shell--menu-open .candidate-shell__nav[b-02ynvq4zy5] { transform: translateY(0); }
    .candidate-shell--menu-open .candidate-shell__backdrop[b-02ynvq4zy5] { display: block; }
    .candidate-shell__nav-link[b-02ynvq4zy5] { padding: 10px 12px; }
}
/* /Layout/PublicLayout.razor.rz.scp.css */
.public[b-5v76otuyd2] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: var(--jb-color-surface-canvas);
}

/* ───────── Header ───────── */
.public__header[b-5v76otuyd2] {
    display: flex;
    align-items: center;
    gap: var(--jb-space-xl);
    padding: 0 var(--jb-space-xl);
    height: 72px;
    background: var(--jb-color-surface-card);
    border-bottom: 1px solid var(--jb-color-border-subtle);
    position: sticky;
    top: 0;
    z-index: var(--jb-z-sticky);
}

.public__brand[b-5v76otuyd2] {
    display: inline-flex;
    align-items: center;
    gap: var(--jb-space-sm);
    color: var(--jb-color-text-primary);
    text-decoration: none;
    font-size: var(--jb-text-heading-sm);
    font-weight: var(--jb-text-weight-bold);
}
.public__brand:hover[b-5v76otuyd2] { text-decoration: none; }

.public__brand-mark[b-5v76otuyd2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px; height: 36px;
    border-radius: var(--jb-radius-md);
    background: var(--jb-color-brand-primary);
    color: var(--jb-color-text-inverse);
    font-weight: var(--jb-text-weight-bold);
}

.public__nav[b-5v76otuyd2] {
    display: flex;
    gap: var(--jb-space-lg);
    flex: 1;
    margin-left: var(--jb-space-xl);
}

.public__nav a[b-5v76otuyd2] {
    color: var(--jb-color-text-secondary);
    text-decoration: none;
    font-size: var(--jb-text-body-sm);
    font-weight: var(--jb-text-weight-medium);
    padding: var(--jb-space-xs) 0;
    border-bottom: 2px solid transparent;
    transition: border-color var(--jb-motion-duration-fast) var(--jb-motion-easing-standard);
}
.public__nav a:hover[b-5v76otuyd2] {
    color: var(--jb-color-text-primary);
    border-bottom-color: var(--jb-color-brand-primary);
    text-decoration: none;
}

.public__actions[b-5v76otuyd2] {
    display: flex;
    align-items: center;
    gap: var(--jb-space-md);
}

.public__signin[b-5v76otuyd2] {
    color: var(--jb-color-text-primary);
    font-size: var(--jb-text-body-sm);
    font-weight: var(--jb-text-weight-medium);
    text-decoration: none;
}
.public__signin:hover[b-5v76otuyd2] { color: var(--jb-color-brand-primary); text-decoration: none; }

/* ───────── Main ───────── */
.public__main[b-5v76otuyd2] { flex: 1; }

/* ───────── Footer ───────── */
.public__footer[b-5v76otuyd2] {
    background: var(--jb-color-neutral-900);
    color: var(--jb-color-neutral-200);
    padding: var(--jb-space-2xl) var(--jb-space-xl) var(--jb-space-lg);
    margin-top: var(--jb-space-3xl);
}

.public__footer-grid[b-5v76otuyd2] {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: var(--jb-space-xl);
    padding-bottom: var(--jb-space-xl);
    border-bottom: 1px solid var(--jb-color-neutral-800);
}

.public__footer-brand[b-5v76otuyd2] {
    font-size: var(--jb-text-heading-md);
    font-weight: var(--jb-text-weight-bold);
    color: var(--jb-color-text-inverse);
    margin-bottom: var(--jb-space-xs);
}

.public__footer-grid h4[b-5v76otuyd2] {
    font-size: var(--jb-text-body-sm);
    font-weight: var(--jb-text-weight-semibold);
    color: var(--jb-color-text-inverse);
    margin-bottom: var(--jb-space-sm);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.public__footer-grid a[b-5v76otuyd2] {
    display: block;
    color: var(--jb-color-neutral-300);
    font-size: var(--jb-text-body-sm);
    padding: var(--jb-space-3xs) 0;
    text-decoration: none;
}
.public__footer-grid a:hover[b-5v76otuyd2] { color: var(--jb-color-text-inverse); text-decoration: underline; }

.public__footer-meta[b-5v76otuyd2] {
    max-width: 1200px;
    margin: var(--jb-space-lg) auto 0;
    display: flex;
    justify-content: space-between;
    font-size: var(--jb-text-body-xs);
    color: var(--jb-color-neutral-400);
}

@media (max-width: 900px) {
    .public__footer-grid[b-5v76otuyd2] { grid-template-columns: 1fr 1fr; }
    .public__nav[b-5v76otuyd2] { display: none; }
}
/* /Layout/RoleNav.razor.rz.scp.css */
.nav[b-c8ynr1p911] {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: var(--jb-space-lg) 0;
}

.nav__brand[b-c8ynr1p911] {
    display: flex;
    align-items: center;
    gap: var(--jb-space-sm);
    padding: 0 var(--jb-space-lg) var(--jb-space-lg);
    border-bottom: 1px solid var(--jb-color-neutral-800);
    margin-bottom: var(--jb-space-md);
}

.nav__brand-mark[b-c8ynr1p911] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px; height: 32px;
    border-radius: var(--jb-radius-md);
    background: var(--jb-color-brand-primary);
    color: var(--jb-color-text-inverse);
    font-weight: var(--jb-text-weight-bold);
    font-size: var(--jb-text-body-sm);
}

.nav__brand-name[b-c8ynr1p911] {
    font-size: var(--jb-text-body-md);
    font-weight: var(--jb-text-weight-semibold);
    color: var(--jb-color-text-inverse);
}

.nav__sections[b-c8ynr1p911] {
    display: flex;
    flex-direction: column;
    gap: var(--jb-space-lg);
    padding: 0 var(--jb-space-sm);
    flex: 1;
}

.nav__section[b-c8ynr1p911] {
    display: flex;
    flex-direction: column;
    gap: var(--jb-space-3xs);
}

.nav__section--footer[b-c8ynr1p911] {
    margin-top: auto;
    padding-top: var(--jb-space-lg);
    border-top: 1px solid var(--jb-color-neutral-800);
}

.nav__section-title[b-c8ynr1p911] {
    padding: var(--jb-space-xs) var(--jb-space-md);
    font-size: var(--jb-text-body-xs);
    font-weight: var(--jb-text-weight-semibold);
    color: var(--jb-color-neutral-400);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

[b-c8ynr1p911] .nav__link {
    display: block;
    padding: var(--jb-space-xs) var(--jb-space-md);
    border-radius: var(--jb-radius-md);
    color: var(--jb-color-neutral-200);
    font-size: var(--jb-text-body-sm);
    font-weight: var(--jb-text-weight-medium);
    text-decoration: none;
    transition: background var(--jb-motion-duration-fast) var(--jb-motion-easing-standard);
}

[b-c8ynr1p911] .nav__link:hover {
    background: var(--jb-color-neutral-800);
    color: var(--jb-color-text-inverse);
    text-decoration: none;
}

[b-c8ynr1p911] .nav__link.active {
    background: color-mix(in srgb, var(--jb-color-brand-primary) 20%, transparent);
    color: var(--jb-color-text-inverse);
}

[b-c8ynr1p911] .nav__badge {
    display: inline-block;
    min-width: 20px;
    padding: 0 6px;
    margin-left: 6px;
    background: var(--jb-color-status-warning, #F59E0B);
    color: #fff;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 600;
    text-align: center;
    line-height: 18px;
    vertical-align: middle;
}
/* /Pages/Candidate/Profile.razor.rz.scp.css */
.profile[b-0q9jwp3x5h] { display: flex; flex-direction: column; gap: var(--jb-space-md); }

.profile__head[b-0q9jwp3x5h] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: var(--jb-space-md);
    margin-bottom: var(--jb-space-md);
}

.profile__progress[b-0q9jwp3x5h] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--jb-space-2xs);
}

.profile__progress-ring[b-0q9jwp3x5h] {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background:
        conic-gradient(var(--jb-color-brand-primary) calc(var(--pct, 0%) * 1), var(--jb-color-neutral-200) 0);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.profile__progress-ring[b-0q9jwp3x5h]::before {
    content: "";
    width: 48px; height: 48px;
    background: var(--jb-color-surface-card);
    border-radius: 50%;
    position: absolute;
}
.profile__progress-ring span[b-0q9jwp3x5h] {
    position: relative;
    font-size: var(--jb-text-body-sm);
    font-weight: var(--jb-text-weight-semibold);
    color: var(--jb-color-text-primary);
}

.profile__row[b-0q9jwp3x5h] { display: grid; grid-template-columns: 1fr; gap: var(--jb-space-md); }
.profile__row--3[b-0q9jwp3x5h] { grid-template-columns: repeat(3, 1fr); }

@media (max-width: 700px) {
    .profile__row--3[b-0q9jwp3x5h] { grid-template-columns: 1fr; }
}

.profile__field[b-0q9jwp3x5h] {
    display: flex;
    flex-direction: column;
    gap: var(--jb-space-2xs);
    margin-bottom: var(--jb-space-md);
}
.profile__field:last-child[b-0q9jwp3x5h] { margin-bottom: 0; }
.profile__field label[b-0q9jwp3x5h] {
    font-size: var(--jb-text-body-sm);
    font-weight: var(--jb-text-weight-medium);
    color: var(--jb-color-text-secondary);
}
.profile__field[b-0q9jwp3x5h]  input,
.profile__field[b-0q9jwp3x5h]  textarea,
.profile__field[b-0q9jwp3x5h]  select {
    padding: var(--jb-space-xs) var(--jb-space-sm);
    font-size: var(--jb-text-body-md);
    font-family: var(--jb-font-family-sans);
    border: 1px solid var(--jb-color-border-default);
    border-radius: var(--jb-radius-md);
    background: var(--jb-color-surface-card);
    color: var(--jb-color-text-primary);
    width: 100%;
}
.profile__field[b-0q9jwp3x5h]  input:focus,
.profile__field[b-0q9jwp3x5h]  textarea:focus,
.profile__field[b-0q9jwp3x5h]  select:focus {
    outline: none;
    border-color: var(--jb-color-border-focus);
    box-shadow: var(--jb-shadow-focus);
}
.profile__field[b-0q9jwp3x5h]  input:disabled { background: var(--jb-color-neutral-100); color: var(--jb-color-text-muted); }

.profile__actions[b-0q9jwp3x5h] { display: flex; justify-content: flex-end; }
/* /Pages/ForgotPassword.razor.rz.scp.css */
/* Auth-page shell — see Login.razor.css for rationale (Blazor-scoped CSS
 * is content-hashed into JobBoardAdmin.styles.css, which auto-busts the
 * browser cache on every deploy; plain wwwroot CSS doesn't). */
.login[b-eh0kw6p5ft] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--jb-space-lg);
    background:
        radial-gradient(circle at top left, color-mix(in srgb, var(--jb-color-brand-primary) 10%, transparent), transparent 50%),
        radial-gradient(circle at bottom right, color-mix(in srgb, var(--jb-color-brand-accent) 8%, transparent), transparent 50%),
        var(--jb-color-surface-canvas);
}

.login__card[b-eh0kw6p5ft] { width: 100%; max-width: 440px; box-shadow: var(--jb-shadow-lg); }

.login__brand[b-eh0kw6p5ft] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--jb-space-xs);
    margin-bottom: var(--jb-space-lg);
    text-align: center;
}

.login__mark[b-eh0kw6p5ft] {
    width: 48px; height: 48px;
    border-radius: var(--jb-radius-md);
    background: var(--jb-color-brand-primary);
    color: var(--jb-color-text-inverse);
    font-weight: var(--jb-text-weight-bold);
    display: flex; align-items: center; justify-content: center;
    font-size: var(--jb-text-body-lg);
}

.login__title[b-eh0kw6p5ft] { margin: 0; font-size: var(--jb-text-heading-lg); }
.login__subtitle[b-eh0kw6p5ft] { margin: 0; color: var(--jb-color-text-secondary); font-size: var(--jb-text-body-sm); max-width: 320px; }

.login__field[b-eh0kw6p5ft] { display: flex; flex-direction: column; gap: var(--jb-space-2xs); margin-bottom: var(--jb-space-md); }
.login__field label[b-eh0kw6p5ft] { font-size: var(--jb-text-body-sm); font-weight: var(--jb-text-weight-medium); color: var(--jb-color-text-secondary); }

.login__field[b-eh0kw6p5ft]  input {
    padding: var(--jb-space-xs) var(--jb-space-sm);
    font-size: var(--jb-text-body-md);
    font-family: var(--jb-font-family-sans);
    border: 1px solid var(--jb-color-border-default);
    border-radius: var(--jb-radius-md);
    background: var(--jb-color-surface-card);
    color: var(--jb-color-text-primary);
    width: 100%;
}
.login__field[b-eh0kw6p5ft]  input:focus { outline: none; border-color: var(--jb-color-border-focus); box-shadow: var(--jb-shadow-focus); }

.login__submit[b-eh0kw6p5ft] { width: 100%; justify-content: center; margin-top: var(--jb-space-xs); }
.login__footer[b-eh0kw6p5ft] { margin-top: var(--jb-space-md); text-align: center; }
/* /Pages/Jobs/PublicJobDetail.razor.rz.scp.css */
.detail-loading[b-lcdn4ffj4f],
.detail-empty[b-lcdn4ffj4f] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--jb-space-md);
    padding: var(--jb-space-3xl) var(--jb-space-lg);
    text-align: center;
}

.detail__inner[b-lcdn4ffj4f] {
    max-width: 1200px;
    margin: 0 auto;
    padding: var(--jb-space-lg) var(--jb-space-lg) var(--jb-space-2xl);
}

.breadcrumbs[b-lcdn4ffj4f] {
    display: flex;
    align-items: center;
    gap: var(--jb-space-2xs);
    color: var(--jb-color-text-secondary);
    margin-bottom: var(--jb-space-md);
}
.breadcrumbs a[b-lcdn4ffj4f] { color: var(--jb-color-text-secondary); text-decoration: none; }
.breadcrumbs a:hover[b-lcdn4ffj4f] { color: var(--jb-color-brand-primary); text-decoration: underline; }
.breadcrumbs__sep[b-lcdn4ffj4f] { color: var(--jb-color-text-muted); }

.detail__head[b-lcdn4ffj4f] {
    display: flex;
    align-items: flex-start;
    gap: var(--jb-space-md);
    padding: var(--jb-space-lg);
    background: var(--jb-color-surface-card);
    border: 1px solid var(--jb-color-border-subtle);
    border-radius: var(--jb-radius-lg);
    margin-bottom: var(--jb-space-lg);
}

.detail__employer-mark[b-lcdn4ffj4f] {
    width: 56px; height: 56px; flex-shrink: 0;
    border-radius: var(--jb-radius-md);
    background: linear-gradient(135deg, var(--jb-color-brand-primary), var(--jb-color-brand-primary-active));
    color: var(--jb-color-text-inverse);
    display: flex; align-items: center; justify-content: center;
    font-weight: var(--jb-text-weight-bold);
    font-size: var(--jb-text-body-md);
}

.detail__head-text[b-lcdn4ffj4f] { flex: 1; min-width: 0; }

.detail__eyebrow[b-lcdn4ffj4f] {
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-weight: var(--jb-text-weight-semibold);
}

.detail__title[b-lcdn4ffj4f] {
    margin: var(--jb-space-3xs) 0 var(--jb-space-sm);
    font-size: var(--jb-text-heading-xl);
    line-height: var(--jb-text-leading-tight);
}

.detail__meta[b-lcdn4ffj4f] {
    color: var(--jb-color-text-secondary);
    font-size: var(--jb-text-body-sm);
}

.detail__actions[b-lcdn4ffj4f] {
    display: flex;
    flex-direction: column;
    gap: var(--jb-space-xs);
    flex-shrink: 0;
}

@media (max-width: 700px) {
    .detail__head[b-lcdn4ffj4f] { flex-direction: column; }
    .detail__actions[b-lcdn4ffj4f] { flex-direction: row; width: 100%; }
}

.detail__columns[b-lcdn4ffj4f] {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: var(--jb-space-lg);
}

@media (max-width: 900px) {
    .detail__columns[b-lcdn4ffj4f] { grid-template-columns: 1fr; }
}

.detail__main[b-lcdn4ffj4f] { display: flex; flex-direction: column; gap: var(--jb-space-md); min-width: 0; }
.detail__side[b-lcdn4ffj4f] { display: flex; flex-direction: column; gap: var(--jb-space-md); }

.detail__description[b-lcdn4ffj4f] {
    color: var(--jb-color-text-primary);
    font-size: var(--jb-text-body-md);
    line-height: var(--jb-text-leading-relaxed);
}
.detail__description[b-lcdn4ffj4f]  p { margin: 0 0 var(--jb-space-md); }
.detail__description[b-lcdn4ffj4f]  p:last-child { margin-bottom: 0; }

.detail__apply-card[b-lcdn4ffj4f] { background: var(--jb-color-surface-sunken) !important; }

.definition[b-lcdn4ffj4f] { display: flex; flex-direction: column; gap: var(--jb-space-sm); margin: 0; }
.definition > div[b-lcdn4ffj4f] { display: flex; flex-direction: column; gap: var(--jb-space-3xs); }
.definition dt[b-lcdn4ffj4f] {
    font-size: var(--jb-text-body-xs);
    color: var(--jb-color-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin: 0;
}
.definition dd[b-lcdn4ffj4f] { margin: 0; font-size: var(--jb-text-body-sm); color: var(--jb-color-text-primary); }
/* /Pages/Jobs/PublicJobSearch.razor.rz.scp.css */
/* ───────── Top search bar ───────── */
.search-bar[b-yggedta8dy] {
    background: linear-gradient(135deg, #0B3D3C 0%, #0E7C7B 100%);
    padding: var(--jb-space-xl) var(--jb-space-lg);
}

.search-bar__inner[b-yggedta8dy] {
    max-width: 1200px;
    margin: 0 auto;
}

.search-bar__inner form[b-yggedta8dy] {
    display: grid;
    grid-template-columns: 1.2fr 1fr auto;
    gap: var(--jb-space-2xs);
    background: var(--jb-color-surface-card);
    border-radius: var(--jb-radius-lg);
    padding: var(--jb-space-2xs);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
}

.search-bar__field[b-yggedta8dy] {
    display: flex;
    flex-direction: column;
    padding: var(--jb-space-xs) var(--jb-space-md);
}

.search-bar__field + .search-bar__field[b-yggedta8dy] {
    border-left: 1px solid var(--jb-color-border-subtle);
}

.search-bar__field label[b-yggedta8dy] {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: var(--jb-text-weight-semibold);
    color: var(--jb-color-text-muted);
    margin-bottom: 2px;
}

.search-bar__field input[b-yggedta8dy] {
    border: none;
    outline: none;
    font-size: var(--jb-text-body-md);
    font-family: var(--jb-font-family-sans);
    color: var(--jb-color-text-primary);
    background: transparent;
    padding: 0;
}

.search-bar__btn[b-yggedta8dy] {
    padding: 0 var(--jb-space-lg);
    background: var(--jb-color-brand-primary);
    color: var(--jb-color-text-inverse);
    border: none;
    border-radius: var(--jb-radius-md);
    font-size: var(--jb-text-body-md);
    font-weight: var(--jb-text-weight-semibold);
    cursor: pointer;
}
.search-bar__btn:hover[b-yggedta8dy] { background: var(--jb-color-brand-primary-hover); }

.search-bar__advanced[b-yggedta8dy] { margin-top: 8px; text-align: right; }
.search-bar__advanced a[b-yggedta8dy] { color: rgba(255,255,255,.85); font-size: .85em; text-decoration: none; }
.search-bar__advanced a:hover[b-yggedta8dy] { color: #fff; text-decoration: underline; }

@media (max-width: 700px) {
    .search-bar__inner form[b-yggedta8dy] { grid-template-columns: 1fr; }
    .search-bar__field + .search-bar__field[b-yggedta8dy] { border-left: none; border-top: 1px solid var(--jb-color-border-subtle); }
    .search-bar__btn[b-yggedta8dy] { padding: var(--jb-space-md); }
}

/* ───────── Two-column results layout ───────── */
.results[b-yggedta8dy] {
    max-width: 1200px;
    margin: 0 auto;
    padding: var(--jb-space-xl) var(--jb-space-lg);
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: var(--jb-space-xl);
}

@media (max-width: 900px) {
    .results[b-yggedta8dy] { grid-template-columns: 1fr; padding: var(--jb-space-md); }
}

/* ───────── Mobile action bar + active-filter chips ─────────
   eBay-style pattern: sticky Filter + Sort pills above the
   results, horizontally-scrollable chip row for applied filters.
   Desktop hides all of this — the sidebar owns filtering there. */

.mobile-actions[b-yggedta8dy] {
    display: none;
    position: sticky;
    top: 0;
    z-index: 20;
    background: var(--jb-color-surface-canvas, #fff);
    border-bottom: 1px solid var(--jb-color-border-subtle, #e5e7eb);
    padding: var(--jb-space-sm) var(--jb-space-md);
    gap: var(--jb-space-sm);
    align-items: center;
    justify-content: space-between;
}

.mobile-actions__btn[b-yggedta8dy] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    background: var(--jb-color-surface-card, #fff);
    border: 1px solid var(--jb-color-border-default, #d1d5db);
    border-radius: 999px;
    font: inherit;
    font-weight: 600;
    color: var(--jb-color-text-primary);
    cursor: pointer;
}
.mobile-actions__badge[b-yggedta8dy] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    background: var(--jb-color-brand-primary, #0E7C7B);
    color: #fff;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
}
.mobile-actions__sort[b-yggedta8dy] { display: inline-flex; align-items: center; gap: 6px; }
.mobile-actions__sort select[b-yggedta8dy] {
    padding: 8px 10px;
    border: 1px solid var(--jb-color-border-default, #d1d5db);
    border-radius: 8px;
    background: var(--jb-color-surface-card, #fff);
    font: inherit;
    font-size: .9em;
}

.active-chips[b-yggedta8dy] {
    display: none;
    gap: 8px;
    padding: var(--jb-space-sm) var(--jb-space-md);
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    background: var(--jb-color-surface-canvas, #fff);
    border-bottom: 1px solid var(--jb-color-border-subtle, #e5e7eb);
}
.active-chips[b-yggedta8dy]::-webkit-scrollbar { display: none; }

.active-chip[b-yggedta8dy] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    flex-shrink: 0;
    background: color-mix(in srgb, var(--jb-color-brand-primary, #0E7C7B) 10%, transparent);
    color: var(--jb-color-brand-primary, #0E7C7B);
    border: 1px solid color-mix(in srgb, var(--jb-color-brand-primary, #0E7C7B) 30%, transparent);
    border-radius: 999px;
    font: inherit;
    font-size: .85em;
    font-weight: 500;
    cursor: pointer;
    white-space: nowrap;
}
.active-chip__x[b-yggedta8dy] { font-size: 1.1em; line-height: 1; font-weight: 600; }
.active-chip--clear[b-yggedta8dy] {
    background: transparent;
    color: var(--jb-color-text-muted);
    border-color: var(--jb-color-border-default, #d1d5db);
}

/* Drawer-only bits. Hidden on desktop; activated by the 900px query. */
.filters__mobile-head[b-yggedta8dy],
.filters__mobile-foot[b-yggedta8dy],
.filters__close[b-yggedta8dy],
.filters__scrim[b-yggedta8dy] { display: none; }

@media (max-width: 900px) {
    .mobile-actions[b-yggedta8dy],
    .active-chips[b-yggedta8dy] { display: flex; }

    .search-bar__advanced[b-yggedta8dy] { display: none; }

    /* Off-canvas drawer pinned to the right edge, slides in. */
    .filters[b-yggedta8dy] {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        width: min(88%, 360px);
        max-width: none;
        margin: 0;
        padding: 0;
        z-index: 60;
        background: var(--jb-color-surface-card, #fff);
        box-shadow: -8px 0 24px rgba(0, 0, 0, 0.18);
        transform: translateX(100%);
        transition: transform 220ms ease;
        display: flex;
        flex-direction: column;
        border: none;
        border-radius: 0;
        overflow-y: auto;
    }
    .filters--open[b-yggedta8dy] { transform: translateX(0); }

    .filters__mobile-head[b-yggedta8dy] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: var(--jb-space-md);
        border-bottom: 1px solid var(--jb-color-border-subtle, #e5e7eb);
        position: sticky;
        top: 0;
        background: var(--jb-color-surface-card, #fff);
        z-index: 1;
    }
    .filters__mobile-head .filters__title[b-yggedta8dy] { margin: 0; }

    .filters__close[b-yggedta8dy] {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 36px; height: 36px;
        background: transparent;
        border: none;
        border-radius: 50%;
        font-size: 1.5em;
        color: var(--jb-color-text-muted);
        cursor: pointer;
    }
    .filters__close:hover[b-yggedta8dy] { background: var(--jb-color-surface-sunken, #f3f4f6); }

    /* Pad the existing filter groups for the drawer layout. */
    .filters > :not(.filters__mobile-head):not(.filters__mobile-foot)[b-yggedta8dy] {
        padding-left: var(--jb-space-md);
        padding-right: var(--jb-space-md);
    }
    .filters > .filters__group[b-yggedta8dy] { margin-bottom: var(--jb-space-md); }

    .filters__mobile-foot[b-yggedta8dy] {
        display: flex;
        position: sticky;
        bottom: 0;
        padding: var(--jb-space-md);
        background: var(--jb-color-surface-card, #fff);
        border-top: 1px solid var(--jb-color-border-subtle, #e5e7eb);
        margin-top: auto;
    }
    .filters__apply[b-yggedta8dy] {
        width: 100%;
        padding: 14px;
        background: var(--jb-color-brand-primary, #0E7C7B);
        color: #fff;
        border: none;
        border-radius: 10px;
        font: inherit;
        font-weight: 600;
        font-size: 1em;
        cursor: pointer;
    }
    .filters__apply:hover[b-yggedta8dy] { background: var(--jb-color-brand-primary-hover, #0A6261); }

    .filters__scrim[b-yggedta8dy] {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 55;
        background: rgba(15, 23, 42, 0.5);
        border: none;
        padding: 0;
        cursor: pointer;
        animation: filters-scrim-in-b-yggedta8dy 180ms ease;
    }
    @keyframes filters-scrim-in-b-yggedta8dy {
        from { opacity: 0; }
        to   { opacity: 1; }
    }

    /* Hide the desktop Sort dropdown inside the results header on mobile —
       its replacement lives in the sticky action bar at the top. */
    .results__sort[b-yggedta8dy] { display: none; }
}

/* ───────── Filters sidebar ───────── */
.filters[b-yggedta8dy] {
    background: var(--jb-color-surface-card);
    border: 1px solid var(--jb-color-border-subtle);
    border-radius: var(--jb-radius-lg);
    padding: var(--jb-space-md);
    align-self: start;
    position: sticky;
    top: var(--jb-space-lg);
}

.filters__title[b-yggedta8dy] {
    font-size: var(--jb-text-body-md);
    font-weight: var(--jb-text-weight-semibold);
    margin: 0 0 var(--jb-space-sm);
}

.filters__group[b-yggedta8dy] {
    display: flex;
    flex-direction: column;
    gap: var(--jb-space-3xs);
    padding: var(--jb-space-sm) 0;
    border-top: 1px solid var(--jb-color-border-subtle);
}

.filters__group-title[b-yggedta8dy] {
    font-size: var(--jb-text-body-xs);
    font-weight: var(--jb-text-weight-semibold);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--jb-color-text-muted);
    margin-bottom: var(--jb-space-2xs);
}

.filters__option[b-yggedta8dy] {
    display: flex;
    align-items: center;
    gap: var(--jb-space-xs);
    font-size: var(--jb-text-body-sm);
    cursor: pointer;
    padding: var(--jb-space-3xs) 0;
}

.filters__option input[b-yggedta8dy] {
    accent-color: var(--jb-color-brand-primary);
}

/* Facet count appended to each option label. Muted + right-aligned so it
   reads as a hint rather than a primary piece of text. Empty when counts
   haven't loaded yet (first render, before the async facet call returns)
   so there's no layout shift. */
.filters__count[b-yggedta8dy] {
    margin-left: auto;
    color: var(--jb-color-text-muted);
    font-variant-numeric: tabular-nums;
    font-size: 0.85em;
}

.filters__clear[b-yggedta8dy] {
    background: none;
    border: none;
    color: var(--jb-color-brand-primary);
    font-size: var(--jb-text-body-xs);
    text-align: left;
    padding: var(--jb-space-3xs) 0;
    cursor: pointer;
}
.filters__clear:hover[b-yggedta8dy] { text-decoration: underline; }

/* ───────── Results main ───────── */
.results__main[b-yggedta8dy] { min-width: 0; }

.results__header[b-yggedta8dy] {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: var(--jb-space-md);
    gap: var(--jb-space-md);
}

.results__title[b-yggedta8dy] {
    font-size: var(--jb-text-heading-lg);
    margin: 0 0 var(--jb-space-2xs);
}

.results__loading[b-yggedta8dy] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--jb-space-sm);
    padding: var(--jb-space-2xl) 0;
}

/* ───────── Job cards ───────── */
.job-list[b-yggedta8dy] {
    display: flex;
    flex-direction: column;
    gap: var(--jb-space-md);
}

.job-card[b-yggedta8dy] {
    display: block;
    background: var(--jb-color-surface-card);
    border: 1px solid var(--jb-color-border-subtle);
    border-radius: var(--jb-radius-lg);
    padding: var(--jb-space-lg);
    color: var(--jb-color-text-primary);
    text-decoration: none;
    transition: transform var(--jb-motion-duration-fast) var(--jb-motion-easing-standard),
                box-shadow var(--jb-motion-duration-fast) var(--jb-motion-easing-standard),
                border-color var(--jb-motion-duration-fast) var(--jb-motion-easing-standard);
}

.job-card:hover[b-yggedta8dy] {
    transform: translateY(-1px);
    box-shadow: var(--jb-shadow-md);
    border-color: color-mix(in srgb, var(--jb-color-brand-primary) 30%, var(--jb-color-border-subtle));
    text-decoration: none;
    color: var(--jb-color-text-primary);
}

.job-card__top[b-yggedta8dy] {
    display: flex;
    align-items: flex-start;
    gap: var(--jb-space-md);
    margin-bottom: var(--jb-space-sm);
}

.job-card__employer-mark[b-yggedta8dy] {
    width: 44px; height: 44px; flex-shrink: 0;
    border-radius: var(--jb-radius-md);
    background: linear-gradient(135deg, var(--jb-color-brand-primary), var(--jb-color-brand-primary-active));
    color: var(--jb-color-text-inverse);
    display: flex; align-items: center; justify-content: center;
    font-weight: var(--jb-text-weight-bold);
    font-size: var(--jb-text-body-sm);
}

.job-card__head[b-yggedta8dy] { flex: 1; min-width: 0; }

.job-card__title[b-yggedta8dy] {
    margin: 0 0 var(--jb-space-3xs);
    font-size: var(--jb-text-heading-sm);
    color: var(--jb-color-text-primary);
}

.job-card__employer[b-yggedta8dy] {
    font-size: var(--jb-text-body-sm);
    color: var(--jb-color-text-secondary);
    font-weight: var(--jb-text-weight-medium);
}

.job-card__date[b-yggedta8dy] { white-space: nowrap; }

.job-card__meta[b-yggedta8dy] { margin-bottom: var(--jb-space-sm); }

.job-card__excerpt[b-yggedta8dy] {
    color: var(--jb-color-text-secondary);
    margin: 0;
    line-height: var(--jb-text-leading-relaxed);
}

/* ───────── Pager ───────── */
.pager[b-yggedta8dy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: var(--jb-space-lg);
    padding: var(--jb-space-md);
    border-top: 1px solid var(--jb-color-border-subtle);
}

.pager__info[b-yggedta8dy] { color: var(--jb-color-text-secondary); }
/* /Pages/Login.razor.rz.scp.css */
/* Auth-page shell. Duplicated across Login, ForgotPassword, ResetPassword,
 * ChangePassword and AcceptInvite scoped CSS files so Blazor's
 * content-hashed JobBoardAdmin.styles.css bundle busts the cache on every
 * deploy. Keeping them in global app.css proved cache-flaky — visitors
 * kept rendering an old copy without the layout rules. */
.login[b-w6wyh3x3eq] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--jb-space-lg);
    background:
        radial-gradient(circle at top left, color-mix(in srgb, var(--jb-color-brand-primary) 10%, transparent), transparent 50%),
        radial-gradient(circle at bottom right, color-mix(in srgb, var(--jb-color-brand-accent) 8%, transparent), transparent 50%),
        var(--jb-color-surface-canvas);
}

.login__card[b-w6wyh3x3eq] { width: 100%; max-width: 440px; box-shadow: var(--jb-shadow-lg); }

.login__brand[b-w6wyh3x3eq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--jb-space-xs);
    margin-bottom: var(--jb-space-lg);
    text-align: center;
}

.login__mark[b-w6wyh3x3eq] {
    width: 48px; height: 48px;
    border-radius: var(--jb-radius-md);
    background: var(--jb-color-brand-primary);
    color: var(--jb-color-text-inverse);
    font-weight: var(--jb-text-weight-bold);
    display: flex; align-items: center; justify-content: center;
    font-size: var(--jb-text-body-lg);
}

.login__title[b-w6wyh3x3eq] { margin: 0; font-size: var(--jb-text-heading-lg); }
.login__subtitle[b-w6wyh3x3eq] { margin: 0; color: var(--jb-color-text-secondary); font-size: var(--jb-text-body-sm); max-width: 320px; }

.login__field[b-w6wyh3x3eq] { display: flex; flex-direction: column; gap: var(--jb-space-2xs); margin-bottom: var(--jb-space-md); }
.login__field label[b-w6wyh3x3eq] { font-size: var(--jb-text-body-sm); font-weight: var(--jb-text-weight-medium); color: var(--jb-color-text-secondary); }

.login__field[b-w6wyh3x3eq]  input {
    padding: var(--jb-space-xs) var(--jb-space-sm);
    font-size: var(--jb-text-body-md);
    font-family: var(--jb-font-family-sans);
    border: 1px solid var(--jb-color-border-default);
    border-radius: var(--jb-radius-md);
    background: var(--jb-color-surface-card);
    color: var(--jb-color-text-primary);
    width: 100%;
}
.login__field[b-w6wyh3x3eq]  input:focus { outline: none; border-color: var(--jb-color-border-focus); box-shadow: var(--jb-shadow-focus); }

.login__submit[b-w6wyh3x3eq] { width: 100%; justify-content: center; margin-top: var(--jb-space-xs); }
.login__footer[b-w6wyh3x3eq] { margin-top: var(--jb-space-md); text-align: center; }
/* /Pages/PublicHome.razor.rz.scp.css */
/* ───────── Hero ───────── */
.hero[b-mxpfbu5vn6] {
    background:
        linear-gradient(135deg, #0B3D3C 0%, #0E7C7B 60%, #0F766E 100%);
    color: var(--jb-color-text-inverse);
    position: relative;
    overflow: hidden;
}

.hero[b-mxpfbu5vn6]::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 20% 30%, rgba(245, 158, 11, 0.15), transparent 40%),
        radial-gradient(circle at 80% 70%, rgba(14, 124, 123, 0.4), transparent 50%);
    pointer-events: none;
}

.hero__inner[b-mxpfbu5vn6] {
    position: relative;
    max-width: 960px;
    margin: 0 auto;
    padding: 96px var(--jb-space-xl) 120px;
    text-align: center;
}

.hero__eyebrow[b-mxpfbu5vn6] {
    display: inline-block;
    padding: var(--jb-space-2xs) var(--jb-space-md);
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: var(--jb-radius-pill);
    font-size: var(--jb-text-body-xs);
    font-weight: var(--jb-text-weight-medium);
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: var(--jb-space-md);
}

.hero__title[b-mxpfbu5vn6] {
    font-size: clamp(2rem, 4vw, 3.25rem);
    font-weight: var(--jb-text-weight-bold);
    line-height: 1.1;
    margin: 0 0 var(--jb-space-md);
    color: var(--jb-color-text-inverse);
}

.hero__subtitle[b-mxpfbu5vn6] {
    font-size: var(--jb-text-body-lg);
    line-height: var(--jb-text-leading-relaxed);
    color: rgba(255, 255, 255, 0.85);
    max-width: 640px;
    margin: 0 auto var(--jb-space-xl);
}

.hero__search[b-mxpfbu5vn6] {
    display: grid;
    grid-template-columns: 1.2fr 1fr auto;
    gap: var(--jb-space-2xs);
    background: var(--jb-color-surface-card);
    border-radius: var(--jb-radius-lg);
    padding: var(--jb-space-2xs);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.25);
    margin-bottom: var(--jb-space-xl);
    text-align: left;
}

.hero__search-field[b-mxpfbu5vn6] {
    display: flex;
    flex-direction: column;
    padding: var(--jb-space-xs) var(--jb-space-md);
}

.hero__search-field label[b-mxpfbu5vn6] {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: var(--jb-text-weight-semibold);
    color: var(--jb-color-text-muted);
    margin-bottom: 2px;
}

.hero__search-field input[b-mxpfbu5vn6] {
    border: none;
    outline: none;
    font-size: var(--jb-text-body-md);
    font-family: var(--jb-font-family-sans);
    color: var(--jb-color-text-primary);
    background: transparent;
    padding: 0;
}

.hero__search-field + .hero__search-field[b-mxpfbu5vn6] {
    border-left: 1px solid var(--jb-color-border-subtle);
}

.hero__search-btn[b-mxpfbu5vn6] {
    padding: 0 var(--jb-space-lg);
    background: var(--jb-color-brand-primary);
    color: var(--jb-color-text-inverse);
    border: none;
    border-radius: var(--jb-radius-md);
    font-size: var(--jb-text-body-md);
    font-weight: var(--jb-text-weight-semibold);
    cursor: pointer;
    transition: background var(--jb-motion-duration-fast) var(--jb-motion-easing-standard);
}
.hero__search-btn:hover[b-mxpfbu5vn6] { background: var(--jb-color-brand-primary-hover); }

.hero__trust[b-mxpfbu5vn6] {
    display: flex;
    justify-content: center;
    gap: var(--jb-space-2xl);
    color: rgba(255, 255, 255, 0.8);
    font-size: var(--jb-text-body-sm);
}
.hero__trust strong[b-mxpfbu5vn6] {
    display: block;
    font-size: var(--jb-text-heading-md);
    color: var(--jb-color-text-inverse);
    font-weight: var(--jb-text-weight-bold);
}

@media (max-width: 700px) {
    .hero__search[b-mxpfbu5vn6] { grid-template-columns: 1fr; }
    .hero__search-field + .hero__search-field[b-mxpfbu5vn6] { border-left: none; border-top: 1px solid var(--jb-color-border-subtle); }
    .hero__search-btn[b-mxpfbu5vn6] { padding: var(--jb-space-md); }
    .hero__trust[b-mxpfbu5vn6] { gap: var(--jb-space-lg); flex-wrap: wrap; }
}

/* ───────── Sections ───────── */
.section[b-mxpfbu5vn6] { padding: var(--jb-space-3xl) var(--jb-space-xl); }
.section--muted[b-mxpfbu5vn6] { background: var(--jb-color-surface-sunken); }
.section__inner[b-mxpfbu5vn6] { max-width: 1200px; margin: 0 auto; }
.section__head[b-mxpfbu5vn6] { margin-bottom: var(--jb-space-xl); text-align: center; }
.section__head h2[b-mxpfbu5vn6] { font-size: var(--jb-text-heading-xl); margin: 0 0 var(--jb-space-xs); }

/* ───────── Category tiles ───────── */
.tiles[b-mxpfbu5vn6] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: var(--jb-space-md);
}

.tile[b-mxpfbu5vn6] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--jb-space-xs);
    padding: var(--jb-space-lg);
    background: var(--jb-color-surface-card);
    border: 1px solid var(--jb-color-border-subtle);
    border-radius: var(--jb-radius-lg);
    text-decoration: none;
    color: var(--jb-color-text-primary);
    transition: transform var(--jb-motion-duration-fast) var(--jb-motion-easing-standard),
                box-shadow var(--jb-motion-duration-fast) var(--jb-motion-easing-standard),
                border-color var(--jb-motion-duration-fast) var(--jb-motion-easing-standard);
}
.tile:hover[b-mxpfbu5vn6] {
    transform: translateY(-2px);
    box-shadow: var(--jb-shadow-md);
    border-color: var(--jb-color-brand-primary);
    text-decoration: none;
    color: var(--jb-color-text-primary);
}

.tile__icon[b-mxpfbu5vn6] { font-size: 28px; line-height: 1; }
.tile__name[b-mxpfbu5vn6] { font-size: var(--jb-text-body-lg); font-weight: var(--jb-text-weight-semibold); }
.tile__count[b-mxpfbu5vn6] { font-size: var(--jb-text-body-sm); color: var(--jb-color-text-muted); }

/* ───────── Location pills ───────── */
.pills[b-mxpfbu5vn6] { display: flex; flex-wrap: wrap; gap: var(--jb-space-xs); justify-content: center; }
.pill[b-mxpfbu5vn6] {
    padding: var(--jb-space-xs) var(--jb-space-md);
    background: var(--jb-color-surface-card);
    border: 1px solid var(--jb-color-border-default);
    border-radius: var(--jb-radius-pill);
    color: var(--jb-color-text-primary);
    font-size: var(--jb-text-body-sm);
    font-weight: var(--jb-text-weight-medium);
    text-decoration: none;
    transition: all var(--jb-motion-duration-fast) var(--jb-motion-easing-standard);
}
.pill:hover[b-mxpfbu5vn6] {
    background: var(--jb-color-brand-primary);
    color: var(--jb-color-text-inverse);
    border-color: var(--jb-color-brand-primary);
    text-decoration: none;
}
.pill__count[b-mxpfbu5vn6] {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 8px;
    background: var(--jb-color-surface-sunken, #f3f4f6);
    border-radius: 999px;
    font-size: 0.8em;
    color: var(--jb-color-text-muted);
    font-variant-numeric: tabular-nums;
}
.pill:hover .pill__count[b-mxpfbu5vn6] {
    background: rgba(255, 255, 255, 0.18);
    color: rgba(255, 255, 255, 0.9);
}

/* ───────── Featured employers ───────── */
.employers[b-mxpfbu5vn6] { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--jb-space-md); }

.employer-card[b-mxpfbu5vn6] {
    display: flex;
    align-items: center;
    gap: var(--jb-space-md);
    padding: var(--jb-space-md);
    background: var(--jb-color-surface-card);
    border: 1px solid var(--jb-color-border-subtle);
    border-radius: var(--jb-radius-lg);
}

.employer-card__logo[b-mxpfbu5vn6] {
    width: 56px; height: 56px;
    border-radius: var(--jb-radius-md);
    background: linear-gradient(135deg, var(--jb-color-brand-primary), var(--jb-color-brand-primary-active));
    color: var(--jb-color-text-inverse);
    display: flex; align-items: center; justify-content: center;
    font-weight: var(--jb-text-weight-bold);
    font-size: var(--jb-text-body-md);
}

.employer-card__name[b-mxpfbu5vn6] { font-size: var(--jb-text-body-md); font-weight: var(--jb-text-weight-semibold); }
.employer-card__meta[b-mxpfbu5vn6] { font-size: var(--jb-text-body-sm); color: var(--jb-color-text-secondary); }

/* ───────── CTA ───────── */
.cta[b-mxpfbu5vn6] {
    background: var(--jb-color-neutral-900);
    color: var(--jb-color-text-inverse);
    padding: var(--jb-space-2xl) var(--jb-space-xl);
}
.cta__inner[b-mxpfbu5vn6] {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--jb-space-xl);
}
.cta__title[b-mxpfbu5vn6] { font-size: var(--jb-text-heading-lg); margin: 0 0 var(--jb-space-xs); color: var(--jb-color-text-inverse); }
.cta__body[b-mxpfbu5vn6] { color: rgba(255, 255, 255, 0.75); margin: 0; max-width: 520px; }
.cta__actions[b-mxpfbu5vn6] { display: flex; gap: var(--jb-space-sm); flex-shrink: 0; }

@media (max-width: 700px) {
    .cta__inner[b-mxpfbu5vn6] { flex-direction: column; align-items: flex-start; }
}
/* /Pages/ResetPassword.razor.rz.scp.css */
/* Auth-page shell — mirrors Login.razor.css; see there for rationale. */
.login[b-m9mlyatkqu] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--jb-space-lg);
    background:
        radial-gradient(circle at top left, color-mix(in srgb, var(--jb-color-brand-primary) 10%, transparent), transparent 50%),
        radial-gradient(circle at bottom right, color-mix(in srgb, var(--jb-color-brand-accent) 8%, transparent), transparent 50%),
        var(--jb-color-surface-canvas);
}

.login__card[b-m9mlyatkqu] { width: 100%; max-width: 440px; box-shadow: var(--jb-shadow-lg); }

.login__brand[b-m9mlyatkqu] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--jb-space-xs);
    margin-bottom: var(--jb-space-lg);
    text-align: center;
}

.login__mark[b-m9mlyatkqu] {
    width: 48px; height: 48px;
    border-radius: var(--jb-radius-md);
    background: var(--jb-color-brand-primary);
    color: var(--jb-color-text-inverse);
    font-weight: var(--jb-text-weight-bold);
    display: flex; align-items: center; justify-content: center;
    font-size: var(--jb-text-body-lg);
}

.login__title[b-m9mlyatkqu] { margin: 0; font-size: var(--jb-text-heading-lg); }
.login__subtitle[b-m9mlyatkqu] { margin: 0; color: var(--jb-color-text-secondary); font-size: var(--jb-text-body-sm); max-width: 320px; }

.login__field[b-m9mlyatkqu] { display: flex; flex-direction: column; gap: var(--jb-space-2xs); margin-bottom: var(--jb-space-md); }
.login__field label[b-m9mlyatkqu] { font-size: var(--jb-text-body-sm); font-weight: var(--jb-text-weight-medium); color: var(--jb-color-text-secondary); }

.login__field[b-m9mlyatkqu]  input {
    padding: var(--jb-space-xs) var(--jb-space-sm);
    font-size: var(--jb-text-body-md);
    font-family: var(--jb-font-family-sans);
    border: 1px solid var(--jb-color-border-default);
    border-radius: var(--jb-radius-md);
    background: var(--jb-color-surface-card);
    color: var(--jb-color-text-primary);
    width: 100%;
}
.login__field[b-m9mlyatkqu]  input:focus { outline: none; border-color: var(--jb-color-border-focus); box-shadow: var(--jb-shadow-focus); }

.login__submit[b-m9mlyatkqu] { width: 100%; justify-content: center; margin-top: var(--jb-space-xs); }
.login__footer[b-m9mlyatkqu] { margin-top: var(--jb-space-md); text-align: center; }
/* /Pages/Signup.razor.rz.scp.css */
.login[b-0kjrtzny2c] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--jb-space-lg);
    background:
        radial-gradient(circle at top left, color-mix(in srgb, var(--jb-color-brand-primary) 10%, transparent), transparent 50%),
        radial-gradient(circle at bottom right, color-mix(in srgb, var(--jb-color-brand-accent) 8%, transparent), transparent 50%),
        var(--jb-color-surface-canvas);
}

.login__card[b-0kjrtzny2c] { width: 100%; max-width: 440px; box-shadow: var(--jb-shadow-lg); }

.login__brand[b-0kjrtzny2c] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--jb-space-xs);
    margin-bottom: var(--jb-space-lg);
    text-align: center;
}

.login__mark[b-0kjrtzny2c] {
    width: 48px; height: 48px;
    border-radius: var(--jb-radius-md);
    background: var(--jb-color-brand-primary);
    color: var(--jb-color-text-inverse);
    font-weight: var(--jb-text-weight-bold);
    display: flex; align-items: center; justify-content: center;
    font-size: var(--jb-text-body-lg);
}

.login__title[b-0kjrtzny2c] { margin: 0; font-size: var(--jb-text-heading-lg); }
.login__subtitle[b-0kjrtzny2c] { margin: 0; color: var(--jb-color-text-secondary); font-size: var(--jb-text-body-sm); max-width: 320px; }

.login__field[b-0kjrtzny2c] { display: flex; flex-direction: column; gap: var(--jb-space-2xs); margin-bottom: var(--jb-space-md); }
.login__field label[b-0kjrtzny2c] { font-size: var(--jb-text-body-sm); font-weight: var(--jb-text-weight-medium); color: var(--jb-color-text-secondary); }

.login__field[b-0kjrtzny2c]  input {
    padding: var(--jb-space-xs) var(--jb-space-sm);
    font-size: var(--jb-text-body-md);
    font-family: var(--jb-font-family-sans);
    border: 1px solid var(--jb-color-border-default);
    border-radius: var(--jb-radius-md);
    background: var(--jb-color-surface-card);
    color: var(--jb-color-text-primary);
    width: 100%;
}
.login__field[b-0kjrtzny2c]  input:focus { outline: none; border-color: var(--jb-color-border-focus); box-shadow: var(--jb-shadow-focus); }

.login__submit[b-0kjrtzny2c] { width: 100%; justify-content: center; margin-top: var(--jb-space-xs); }

.login__footer[b-0kjrtzny2c] { margin-top: var(--jb-space-md); text-align: center; }

.login__dev-hint[b-0kjrtzny2c] { margin-top: var(--jb-space-lg); border-top: 1px dashed var(--jb-color-border-subtle); padding-top: var(--jb-space-sm); }
.login__dev-hint summary[b-0kjrtzny2c] { cursor: pointer; font-size: var(--jb-text-body-xs); color: var(--jb-color-text-muted); text-align: center; }
.login__dev-hint ul[b-0kjrtzny2c] { list-style: none; padding: var(--jb-space-xs) 0 0; margin: 0; font-size: var(--jb-text-body-xs); color: var(--jb-color-text-secondary); }
.login__dev-hint code[b-0kjrtzny2c] { background: var(--jb-color-neutral-100); padding: 1px 5px; border-radius: var(--jb-radius-sm); font-family: var(--jb-font-family-mono); font-size: 11px; }
/* /Pages/VerifyEmail.razor.rz.scp.css */
/* Auth-page shell — mirrors Login.razor.css; see there for rationale. */
.login[b-d9trel3j86] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--jb-space-lg);
    background:
        radial-gradient(circle at top left, color-mix(in srgb, var(--jb-color-brand-primary) 10%, transparent), transparent 50%),
        radial-gradient(circle at bottom right, color-mix(in srgb, var(--jb-color-brand-accent) 8%, transparent), transparent 50%),
        var(--jb-color-surface-canvas);
}

.login__card[b-d9trel3j86] { width: 100%; max-width: 440px; box-shadow: var(--jb-shadow-lg); }

.login__brand[b-d9trel3j86] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--jb-space-xs);
    margin-bottom: var(--jb-space-lg);
    text-align: center;
}

.login__mark[b-d9trel3j86] {
    width: 48px; height: 48px;
    border-radius: var(--jb-radius-md);
    background: var(--jb-color-brand-primary);
    color: var(--jb-color-text-inverse);
    font-weight: var(--jb-text-weight-bold);
    display: flex; align-items: center; justify-content: center;
    font-size: var(--jb-text-body-lg);
}

.login__title[b-d9trel3j86] { margin: 0; font-size: var(--jb-text-heading-lg); }
.login__subtitle[b-d9trel3j86] { margin: 0; color: var(--jb-color-text-secondary); font-size: var(--jb-text-body-sm); max-width: 320px; }

.login__submit[b-d9trel3j86] { width: 100%; justify-content: center; margin-top: var(--jb-space-xs); }
.login__footer[b-d9trel3j86] { margin-top: var(--jb-space-md); text-align: center; }
