:root {
    color-scheme: light;
    --bg: #f4f6fb;
    --panel: #ffffff;
    --panel-2: #f7f9fc;
    --text: #172033;
    --muted: #637083;
    --line: #dfe5ee;
    --accent: #0d6efd;
    --accent-dark: #084298;
    --warn: #b15b00;
    --danger: #b42318;
    --good: #137a3f;
    --shadow: 0 18px 45px rgba(19, 32, 51, 0.10);
}

* {
    box-sizing: border-box;
}

*,
*::before,
*::after {
    min-width: 0;
}

body {
    margin: 0;
    min-height: 100vh;
    background: var(--bg);
    color: var(--text);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    letter-spacing: 0;
}

button,
input,
textarea,
select {
    font: inherit;
}

button {
    cursor: pointer;
}

a {
    color: inherit;
    text-decoration: none;
    overflow-wrap: anywhere;
}

.hidden {
    display: none !important;
}

.public-navbar {
    position: sticky;
    top: 0;
    z-index: 40;
    min-height: 78px;
    background: rgba(255, 255, 255, 0.92);
    border-bottom: 1px solid rgba(223, 229, 238, 0.86);
    backdrop-filter: blur(18px);
}

.public-nav-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.job-home {
    min-height: 100vh;
    background: var(--bg);
}

.home-hero {
    padding: 70px 0 46px;
    background:
        linear-gradient(90deg, rgba(7, 24, 54, 0.90), rgba(7, 43, 74, 0.70)),
        url("https://images.unsplash.com/photo-1551836022-d5d88e9218df?auto=format&fit=crop&w=1800&q=80") center/cover;
    color: #fff;
}

.candidate-first-hero {
    padding: 68px 0 54px;
}

.candidate-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.72fr);
    gap: 34px;
    align-items: center;
}

.hero-copy {
    width: min(780px, 100%);
}

.hero-kicker,
.section-heading span {
    display: block;
    color: #7bb9ff;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.hero-copy h1 {
    margin: 12px 0 14px;
    max-width: 760px;
    font-size: clamp(34px, 6vw, 62px);
    line-height: 1.02;
    font-weight: 850;
}

.hero-copy p {
    max-width: 680px;
    margin: 0;
    color: rgba(255, 255, 255, 0.84);
    font-size: 18px;
    line-height: 1.65;
}

.hero-trust-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

.hero-trust-row span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 13px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
    color: rgba(255, 255, 255, 0.92);
    font-size: 13px;
    font-weight: 750;
}

.hero-trust-row svg {
    width: 16px;
    height: 16px;
}

.candidate-login-card {
    padding: 24px;
    border: 1px solid rgba(255, 255, 255, 0.78);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.97);
    color: var(--text);
    box-shadow: 0 26px 70px rgba(5, 20, 44, 0.24);
    animation: riseIn 0.55s ease both;
}

.candidate-login-head h2 {
    margin: 6px 0 8px;
    font-size: 28px;
    font-weight: 850;
}

.candidate-login-head p {
    margin: 0;
    color: var(--muted);
    line-height: 1.5;
}

.candidate-hero-login,
.candidate-hero-search {
    display: grid;
    gap: 12px;
    margin-top: 18px;
}

.candidate-hero-login label,
.resume-upload-cta label {
    display: grid;
    gap: 7px;
    color: #334155;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0;
    text-transform: uppercase;
}

.candidate-hero-login input,
.candidate-hero-search input,
.resume-upload-cta input {
    width: 100%;
    min-height: 46px;
    border: 1px solid #cad7e6;
    border-radius: 8px;
    background: #fff;
    color: var(--text);
    padding: 11px 12px;
    font-weight: 650;
    outline: none;
    transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.candidate-hero-login input:focus,
.candidate-hero-search input:focus,
.resume-upload-cta input:focus {
    border-color: #6aa8ff;
    box-shadow: 0 0 0 4px rgba(13, 110, 253, 0.13);
}

.candidate-hero-login .primary-btn {
    justify-content: center;
    min-height: 48px;
    width: 100%;
}

.resume-upload-cta {
    display: grid;
    gap: 12px;
    margin-top: 14px;
    padding: 14px;
    border: 1px dashed #a9c7f5;
    border-radius: 10px;
    background: #f7fbff;
}

.resume-upload-cta .small-btn {
    justify-content: center;
}

.candidate-hero-search {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
    align-items: end;
}

.candidate-search-band {
    margin-top: -26px;
    position: relative;
    z-index: 2;
}

.public-home-search {
    margin-top: 0;
    padding: 28px 0 12px;
    border-bottom: 1px solid #e5eaf2;
    background: #ffffff;
}

.public-job-search-head {
    display: grid;
    gap: 4px;
}

.public-job-search-head span {
    color: #4f6b88;
    font-size: 12px;
    font-weight: 850;
    text-transform: uppercase;
}

.public-job-search-head h1 {
    margin: 0;
    color: #172033;
    font-size: 34px;
    line-height: 1.1;
    font-weight: 860;
}

@keyframes riseIn {
    from {
        opacity: 0;
        transform: translateY(14px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.job-search-card {
    margin-top: 34px;
    padding: 14px;
    background: rgba(255, 255, 255, 0.98);
    border: 1px solid rgba(255, 255, 255, 0.72);
    border-radius: 8px;
    box-shadow: var(--shadow);
}

.candidate-search-band .job-search-card {
    margin-top: 0;
}

.public-home-search .job-search-card {
    margin-top: 16px;
    border-color: #dfe7f2;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
}

.job-search-card .input-group-text {
    background: #fff;
    color: var(--accent);
}

/* Superio-inspired visual system ------------------------------------------ */
:root {
    --font-sans: "Jost", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --bg: #f5f7fc;
    --panel: #ffffff;
    --panel-2: #f0f5f7;
    --text: #202124;
    --muted: #696969;
    --line: #ecedf2;
    --accent: #1967d2;
    --accent-dark: #155bb8;
    --primary-soft: #e8f0fb;
    --hero-bg: #edf3fb;
    --good: #34a853;
    --warn: #f9ab00;
    --shadow: 0 7px 18px rgba(64, 79, 104, 0.05);
    --shadow-float: 0 16px 40px rgba(25, 103, 210, 0.08);
}

html {
    scroll-behavior: smooth;
}

body,
button,
input,
textarea,
select {
    font-family: var(--font-sans);
}

body {
    color: var(--text);
    font-size: 16px;
    line-height: 1.75;
}

h1, h2, h3, h4, h5, h6,
.hero-copy h1,
.section-heading h2,
.public-job-search-head h1,
.candidate-login-head h2,
.login-marketing-copy h1,
.login-form-panel h2,
.public-job-card h3,
.recruiter-hero h1 {
    color: var(--text);
    font-weight: 500;
    letter-spacing: 0;
}

:focus-visible {
    outline: 3px solid rgba(25, 103, 210, 0.24) !important;
    outline-offset: 2px;
}

.container {
    max-width: 1235px;
}

.public-navbar {
    min-height: 90px;
    background: rgba(255, 255, 255, 0.97);
    border-bottom: 1px solid rgba(236, 237, 242, 0.8);
    box-shadow: none;
}

.brand-mark {
    background: var(--accent);
    font-weight: 600;
}

.brand-row strong,
.candidate-paper-brand strong {
    font-weight: 500;
}

.brand-row small {
    color: var(--muted);
    font-weight: 400;
}

.public-nav-actions {
    gap: 12px;
}

.btn,
.primary-btn,
.ghost-btn,
.small-btn,
.danger-btn,
.icon-btn {
    min-height: 52px;
    padding: 14px 26px;
    border-radius: 8px;
    font-weight: 400;
    transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
}

.btn:hover,
.primary-btn:hover,
.small-btn:hover {
    transform: translateY(-1px);
}

.btn-primary,
.primary-btn {
    border-color: var(--accent);
    background: var(--accent);
    color: #fff;
}

.btn-primary:hover,
.primary-btn:hover {
    border-color: var(--accent-dark);
    background: var(--accent-dark);
}

.btn-outline-secondary,
.btn-outline-primary,
.small-btn,
.ghost-btn {
    border-color: transparent;
    background: var(--primary-soft);
    color: var(--accent);
}

.btn-outline-secondary:hover,
.btn-outline-primary:hover,
.small-btn:hover,
.ghost-btn:hover {
    border-color: rgba(25, 103, 210, 0.14);
    background: #dce9fa;
    color: var(--accent-dark);
}

.small-btn.disabled,
.small-btn[aria-disabled="true"] {
    cursor: not-allowed;
    opacity: .62;
    pointer-events: none;
    box-shadow: none;
    transform: none;
}

.job-home {
    background: #fff;
}

.public-home-search {
    margin: 0;
    padding: 92px 0 76px;
    border: 0;
    background:
        radial-gradient(circle at 83% 35%, rgba(25, 103, 210, 0.10) 0 6%, transparent 6.2%),
        radial-gradient(circle at 90% 62%, rgba(25, 103, 210, 0.07) 0 11%, transparent 11.2%),
        var(--hero-bg);
}

.public-job-search-head {
    max-width: 720px;
    gap: 12px;
}

.public-job-search-head span,
.hero-kicker,
.section-heading span {
    color: var(--accent);
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
}

.public-job-search-head h1 {
    max-width: 680px;
    font-size: clamp(40px, 5vw, 56px);
    line-height: 1.16;
}

.public-job-search-head h1 em {
    color: var(--accent);
    font-style: normal;
}

.public-job-search-head p {
    max-width: 580px;
    margin: 0;
    color: var(--muted);
    font-size: 16px;
    line-height: 1.75;
}

.job-search-card,
.public-home-search .job-search-card {
    max-width: 1000px;
    margin-top: 34px;
    padding: 20px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fff;
    box-shadow: var(--shadow-float);
}

.job-search-card .input-group,
.job-search-card .form-control,
.job-search-card .input-group-text {
    min-height: 58px;
    border-color: transparent;
    background: #fff;
}

.job-search-card .input-group,
.job-search-card > div:nth-child(3) .form-control {
    border: 1px solid var(--line);
    border-radius: 8px;
    overflow: hidden;
}

.job-search-card .form-control {
    color: #363636;
    font-size: 15px;
    font-weight: 400;
    box-shadow: none;
}

.job-search-card .input-group-text {
    color: var(--accent);
}

.job-search-card .btn {
    min-height: 58px;
    padding-inline: 18px;
}

.search-button-label {
    display: none;
}

.quick-tags {
    margin-top: 20px;
}

.public-home-search .quick-tags::before {
    content: "Popular searches:";
    align-self: center;
    color: #363636;
    font-size: 15px;
    font-weight: 500;
}

.public-home-search .quick-tags a {
    padding: 5px 10px;
    border: 0;
    background: transparent;
    color: var(--muted);
    font-size: 14px;
    font-weight: 400;
}

.public-home-search .quick-tags a:hover {
    background: var(--primary-soft);
    color: var(--accent);
}

.home-content {
    padding-top: 86px;
    padding-bottom: 92px;
}

.section-heading {
    align-items: center;
    margin-bottom: 48px;
}

.section-heading h2 {
    margin-top: 6px;
    font-size: 30px;
    line-height: 1.2;
}

.section-subtitle {
    margin-top: 12px;
    color: var(--muted);
    font-size: 15px;
    line-height: 1.7;
}

.public-home-job-results {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.public-home-job-results > .public-pagination,
.public-home-job-results > .empty-state {
    grid-column: 1 / -1;
}

.public-job-card,
.panel,
.item-card,
.metric,
.auth-panel,
.candidate-paper-shell .candidate-job-card,
.candidate-paper-shell .candidate-record-card,
.candidate-paper-shell .candidate-hero-card,
.candidate-paper-shell .profile-meta-card,
.candidate-paper-shell .profile-score-card {
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fff;
    box-shadow: var(--shadow);
}

.public-job-card {
    min-height: 164px;
    padding: 28px 22px 22px 28px;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.public-job-card:hover,
.item-card:hover,
.panel:hover {
    border-color: rgba(25, 103, 210, 0.25);
    box-shadow: 0 10px 24px rgba(64, 79, 104, 0.08);
    transform: translateY(-2px);
}

.public-job-card h3 {
    font-size: 18px;
    line-height: 1.45;
}

.public-job-card p,
.job-meta {
    color: var(--muted);
    font-weight: 400;
}

.company-avatar {
    width: 52px;
    height: 52px;
    border-radius: 8px;
    background: var(--primary-soft);
    color: var(--accent);
}

.tag,
.status-pill,
.badge {
    min-height: 26px;
    padding: 4px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 400;
}

input,
textarea,
select,
.form-control,
.form-select {
    border-color: #f0f5f7;
    border-radius: 8px;
    background: #f0f5f7;
    color: #363636;
    font-weight: 400;
}

input:not([type="checkbox"]):not([type="radio"]),
select,
.form-control,
.form-select {
    min-height: 56px;
}

input:focus,
textarea:focus,
select:focus,
.form-control:focus,
.form-select:focus {
    border-color: rgba(25, 103, 210, 0.55);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(25, 103, 210, 0.14);
}

.home-hero,
.login-shell,
.register-shell,
.auth-shell {
    background: var(--hero-bg);
    color: var(--text);
}

.home-hero {
    padding: 96px 0;
}

.hero-copy h1 {
    max-width: 650px;
    font-size: clamp(40px, 5vw, 56px);
    line-height: 1.16;
}

.hero-copy p,
.login-marketing-copy p,
.login-benefit-item small {
    color: var(--muted);
    font-weight: 400;
}

.hero-trust-row span {
    border-color: var(--line);
    background: #fff;
    color: var(--muted);
    font-weight: 400;
    box-shadow: var(--shadow);
}

.candidate-login-card,
.login-form-panel,
.login-marketing-panel {
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fff;
    color: var(--text);
    box-shadow: var(--shadow-float);
}

.login-page-grid {
    gap: 28px;
}

.login-marketing-panel {
    background: linear-gradient(145deg, #ffffff 0%, #f5f9ff 100%);
}

.login-marketing-brand small,
.login-proof-strip span,
.login-role-option {
    color: var(--muted);
}

.login-role-option.active,
.login-role-option:hover {
    border-color: rgba(25, 103, 210, 0.25);
    background: var(--primary-soft);
    color: var(--accent);
}

.portal-shell,
.candidate-paper-shell,
.recruiter-dashboard {
    background: var(--bg);
}

.sectioned-sidebar {
    background: #fff;
    border-right: 1px solid var(--line);
    box-shadow: none;
}

.sectioned-sidebar .nav-item {
    border-radius: 8px;
    color: var(--muted);
    font-weight: 400;
}

.sectioned-sidebar .nav-item.active {
    background: var(--primary-soft);
    color: var(--accent);
}

.candidate-paper-header {
    background: rgba(255, 255, 255, 0.97);
    border-bottom-color: var(--line);
}

.candidate-top-nav-item.active,
.candidate-top-nav-item:hover {
    background: var(--primary-soft);
    color: var(--accent);
}

.public-footer {
    padding: 52px 0;
    border-top-color: var(--line);
}

@media (max-width: 991px) {
    .public-home-search {
        padding: 68px 0 58px;
    }

    .public-home-job-results {
        grid-template-columns: 1fr;
    }

    .home-content {
        padding-top: 64px;
        padding-bottom: 72px;
    }
}

@media (max-width: 767px) {
    .public-navbar {
        min-height: 70px;
    }

    .public-home-search {
        padding: 48px 0;
    }

    .public-job-search-head h1 {
        font-size: 36px;
        line-height: 1.22;
    }

    .job-search-card,
    .public-home-search .job-search-card {
        padding: 18px;
    }

    .job-search-card .btn {
        width: 100%;
        gap: 8px;
    }

    .search-button-label {
        display: inline;
    }

    .section-heading {
        align-items: flex-start;
        margin-bottom: 30px;
    }

    .public-job-card {
        min-height: 0;
        padding: 22px;
    }

    .home-content {
        padding-top: 52px;
        padding-bottom: 56px;
    }

    .home-hero {
        padding: 56px 0;
    }
}

.job-search-card #minExperience {
    min-width: 0;
    padding-inline: 12px 8px;
    font-size: 16px;
}

.quick-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.quick-tags a {
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, 0.26);
    border-radius: 999px;
    color: #fff;
    background: rgba(255, 255, 255, 0.12);
    font-size: 13px;
    font-weight: 750;
}

.public-home-search .quick-tags a {
    border-color: #d9e4f0;
    background: #f8fafc;
    color: #3b4a5d;
}

.public-home-search .quick-tags a:hover {
    border-color: #bcd0e6;
    background: #edf4ff;
    color: #1d4ed8;
}

.public-home-job-results {
    display: grid;
    gap: 14px;
}

.home-content {
    padding-top: 34px;
    padding-bottom: 54px;
}

.public-footer {
    padding: 24px 0 30px;
    border-top: 1px solid var(--line);
    background: #fff;
}

.footer-role-links {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
    color: #7a8799;
    font-size: 13px;
    font-weight: 700;
}

.footer-role-links a {
    color: #66758a;
    transition: color 0.16s ease;
}

.footer-role-links a:hover {
    color: var(--accent);
}

.section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.section-heading h2 {
    margin: 4px 0 0;
    font-size: 30px;
    font-weight: 820;
}

.section-subtitle {
    margin: 6px 0 0;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.45;
}

.job-results-layout {
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

.home-filter-panel,
.public-job-card,
.auth-panel,
.metric,
.panel,
.item-card {
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 8px;
    box-shadow: 0 10px 26px rgba(19, 32, 51, 0.05);
}

.home-filter-panel {
    position: sticky;
    top: 96px;
    padding: 18px;
}

.home-filter-panel h3 {
    margin: 0 0 16px;
    font-size: 18px;
}

.benefit-row {
    display: flex;
    gap: 10px;
    padding: 12px 0;
    border-top: 1px solid var(--line);
    color: var(--muted);
    font-size: 14px;
    line-height: 1.45;
}

.benefit-row svg {
    color: var(--accent);
    flex: none;
}

.job-results {
    display: grid;
    gap: 14px;
}

.public-pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 6px;
    padding: 14px 16px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(19, 32, 51, 0.05);
}

.public-pagination > span {
    color: var(--muted);
    font-size: 13px;
    font-weight: 800;
    white-space: nowrap;
}

.public-pagination > div {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 7px;
}

.public-pagination .page-link,
.public-pagination .page-ellipsis {
    min-width: 38px;
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 11px;
    border: 1px solid #dbe5f4;
    border-radius: 8px;
    background: #f8fbff;
    color: #32415e;
    font-size: 13px;
    font-weight: 850;
}

.public-pagination .page-link.active {
    border-color: #2454e8;
    background: #2454e8;
    color: #fff;
    pointer-events: none;
}

.public-pagination .page-link.disabled {
    color: #a4aec1;
    background: #f4f7fb;
    pointer-events: none;
}

.public-pagination .page-ellipsis {
    min-width: 28px;
    border-color: transparent;
    background: transparent;
    color: var(--muted);
}

.public-job-card {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    padding: 18px;
}

.job-card-main {
    display: flex;
    gap: 14px;
    min-width: 0;
}

.company-avatar,
.brand-mark {
    display: grid;
    place-items: center;
    flex: none;
    border-radius: 8px;
    background: var(--accent);
    color: #fff;
    font-weight: 850;
}

.company-avatar {
    width: 52px;
    height: 52px;
    background: #e7f1ff;
    color: var(--accent-dark);
    overflow: hidden;
}

.company-avatar img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    display: block;
}

.public-job-card h3 {
    margin: 0;
    font-size: 19px;
    font-weight: 820;
}

.public-job-card h3 a:hover,
.candidate-job-card h4 a:hover {
    color: var(--accent);
}

.public-job-card p {
    margin: 5px 0 10px;
    color: var(--muted);
}

.job-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    color: #435167;
    font-size: 13px;
}

.job-meta span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.job-meta svg {
    width: 15px;
    height: 15px;
    color: var(--accent);
}

.job-card-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: none;
}

.job-detail-page {
    display: grid;
    gap: 16px;
    padding-top: 28px;
    padding-bottom: 54px;
}

.job-detail-hero {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 22px;
}

.job-detail-title {
    display: flex;
    gap: 16px;
    min-width: 0;
}

.job-detail-title h1 {
    margin: 4px 0 7px;
    font-size: 34px;
    line-height: 1.12;
    font-weight: 860;
}

.job-detail-title p {
    margin: 0 0 12px;
    color: var(--muted);
    font-size: 15px;
    font-weight: 760;
}

.job-detail-logo {
    width: 64px;
    height: 64px;
}

.job-detail-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 9px;
    flex: 0 0 auto;
}

.job-detail-actions form {
    margin: 0;
}

.job-detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.34fr);
    gap: 16px;
    align-items: start;
}

.job-detail-description-panel,
.job-detail-summary-panel {
    padding: 18px;
}

.job-detail-description {
    margin: 0;
    color: #273244;
    font-size: 15px;
    line-height: 1.75;
    white-space: pre-line;
}

.job-detail-description.rich-job-description {
    white-space: normal;
}

.job-unavailable-panel {
    display: grid;
    gap: 12px;
    max-width: 760px;
    margin: 0 auto;
    padding: 28px;
}

.job-unavailable-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 12px;
    background: #fff1f0;
    color: var(--danger);
}

.job-unavailable-icon svg {
    width: 24px;
    height: 24px;
}

.job-unavailable-panel h3 {
    margin: 0;
    color: #172033;
    font-size: 26px;
    font-weight: 860;
}

.job-unavailable-panel p {
    max-width: 620px;
    margin: 0;
    color: var(--muted);
    line-height: 1.55;
}

.job-detail-facts {
    display: grid;
    gap: 10px;
}

.job-detail-facts article {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 2px 10px;
    align-items: center;
    padding: 11px;
    border: 1px solid #e3eaf3;
    border-radius: 8px;
    background: #fbfdff;
}

.job-detail-facts svg {
    grid-row: span 2;
    width: 18px;
    height: 18px;
    color: var(--accent);
}

.job-detail-facts span {
    color: #6b7280;
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
}

.job-detail-facts strong {
    color: #172033;
    font-size: 13px;
    font-weight: 850;
}

.auth-shell {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 24px;
    background:
        linear-gradient(90deg, rgba(7, 24, 54, 0.82), rgba(15, 70, 112, 0.52)),
        url("https://images.unsplash.com/photo-1521791136064-7986c2920216?auto=format&fit=crop&w=1800&q=80") center/cover;
}

.auth-panel {
    width: min(540px, 100%);
    padding: 30px;
}

.login-shell {
    min-height: 100vh;
    display: grid;
    align-items: center;
    padding: 34px;
    background:
        linear-gradient(90deg, rgba(4, 19, 43, 0.90), rgba(11, 63, 74, 0.72)),
        url("https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=1800&q=80") center/cover;
}

.register-shell {
    background:
        linear-gradient(90deg, rgba(3, 30, 45, 0.90), rgba(13, 72, 88, 0.66)),
        url("https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1800&q=80") center/cover;
}

.login-page-grid {
    width: min(1180px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.78fr);
    gap: 32px;
    align-items: stretch;
}

.login-page-grid > .toast.inline {
    grid-column: 1 / -1;
    margin: 0;
}

.login-marketing-panel {
    min-height: 620px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 30px;
    padding: 8px 12px 8px 0;
    color: #fff;
}

.login-marketing-brand {
    width: fit-content;
    color: #fff;
}

.login-marketing-brand small,
.login-marketing-copy p,
.login-benefit-item small {
    color: rgba(255, 255, 255, 0.78);
}

.login-marketing-copy {
    max-width: 660px;
}

.login-marketing-copy h1 {
    margin: 12px 0 16px;
    max-width: 680px;
    font-size: 56px;
    line-height: 1.03;
    font-weight: 850;
}

.login-marketing-copy p {
    max-width: 610px;
    margin: 0;
    font-size: 18px;
    line-height: 1.62;
}

.login-benefit-list {
    display: grid;
    gap: 4px;
    max-width: 650px;
}

.login-benefit-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 15px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.20);
}

.login-benefit-item i {
    width: 22px;
    height: 22px;
    color: #89d2ff;
    flex: none;
}

.login-benefit-item strong,
.login-benefit-item small {
    display: block;
}

.login-benefit-item strong {
    margin-bottom: 4px;
    font-size: 16px;
}

.login-benefit-item small {
    line-height: 1.45;
}

.login-proof-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.login-proof-strip span {
    min-height: 54px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 13px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.12);
    color: rgba(255, 255, 255, 0.88);
    font-size: 13px;
    font-weight: 750;
}

.login-proof-strip strong {
    color: #fff;
    font-size: 19px;
}

.login-form-panel {
    align-self: center;
    padding: 30px;
    border: 1px solid rgba(255, 255, 255, 0.78);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 28px 70px rgba(3, 15, 34, 0.30);
}

.login-form-panel h2 {
    margin: 8px 0 8px;
    font-size: 34px;
    line-height: 1.1;
    font-weight: 850;
}

.login-form-panel p {
    margin: 0;
    color: var(--muted);
    line-height: 1.55;
}

.login-role-switcher {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 5px;
    margin-top: 20px;
    padding: 5px;
    border: 1px solid #d9e4f2;
    border-radius: 8px;
    background: #f5f8fc;
}

.login-role-option {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 6px;
    border-radius: 6px;
    color: #5a6880;
    font-size: 12px;
    font-weight: 850;
    text-align: center;
    transition: background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.login-role-option:hover,
.login-role-option.active {
    background: #fff;
    color: var(--accent-dark);
    box-shadow: 0 8px 18px rgba(19, 32, 51, 0.08);
}

.login-form {
    margin-top: 20px;
}

.login-form .primary-btn {
    width: 100%;
    min-height: 48px;
}

.register-form {
    gap: 13px;
}

.register-form-panel {
    border-color: rgba(232, 244, 255, 0.92);
}

.register-form-panel .eyebrow {
    color: #0f766e;
}

.register-form-actions .small-btn {
    background: #f0fdfa;
    border-color: #bdeee4;
    color: #0f766e;
}

.login-form-actions {
    justify-content: space-between;
}

.social-login-panel {
    display: grid;
    gap: 10px;
    margin-top: 14px;
}

.social-login-divider {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #718096;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0;
    text-transform: uppercase;
}

.social-login-divider::before,
.social-login-divider::after {
    content: "";
    height: 1px;
    flex: 1;
    background: var(--line);
}

.social-login-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 8px;
}

.social-login-btn {
    min-height: 48px;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 11px;
    border: 1px solid #d7e0ea;
    border-radius: 8px;
    background: #ffffff;
    color: var(--text);
    font-weight: 840;
    padding: 7px 12px;
    text-align: left;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05);
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease, background 160ms ease;
}

.social-login-btn:hover,
.social-login-btn:focus {
    border-color: #b8c8dc;
    background: #fbfdff;
    color: #111827;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.10);
    transform: translateY(-1px);
}

.social-login-mark {
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none;
    border-radius: 8px;
    background: #f4f7fb;
    color: #273244;
    font-size: 15px;
    font-weight: 900;
    letter-spacing: 0;
}

.social-login-label {
    min-width: 0;
    flex: 1;
    font-size: 14px;
    line-height: 1.2;
    white-space: nowrap;
}

.social-login-btn svg {
    width: 16px;
    height: 16px;
    flex: none;
    color: #8794a8;
}

.social-login-btn.google {
    border-color: #e6d9d6;
}

.social-login-btn.google .social-login-mark {
    background: #fff4f2;
    color: #c5221f;
}

.social-login-btn.linkedin {
    border-color: #cfe1f4;
}

.social-login-btn.linkedin .social-login-mark {
    background: #edf6ff;
    color: #0a66c2;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
}

.social-login-btn.github {
    border-color: #d4d9e2;
}

.social-login-btn.github .social-login-mark {
    background: #f1f3f6;
    color: #111827;
}

.brand-row {
    display: flex;
    align-items: center;
    gap: 14px;
}

.brand-row h1,
.brand-row h2,
.brand-row p {
    margin: 0;
}

.brand-row h1 {
    font-size: 30px;
    line-height: 1.1;
    font-weight: 840;
}

.brand-row h2 {
    font-size: 16px;
}

.brand-row p,
.brand-row span,
.brand-row small {
    display: block;
    color: var(--muted);
    font-size: 13px;
}

.brand-row .brand-mark {
    display: grid;
    place-items: center;
    color: #fff;
}

.brand-row.compact {
    padding: 0;
}

.brand-row.compact .brand-mark {
    width: 42px;
    height: 42px;
}

.brand-mark {
    width: 48px;
    height: 48px;
}

.form-grid {
    display: grid;
    gap: 14px;
    margin-top: 26px;
}

label {
    display: grid;
    gap: 7px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

input,
textarea,
select {
    width: 100%;
    min-height: 42px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: #fff;
    color: var(--text);
    font-weight: 700;
    padding: 10px 11px;
    outline: none;
    overflow-wrap: anywhere;
}

input::placeholder,
textarea::placeholder {
    color: #cbd5e1;
    font-size: 0.92em;
    font-weight: 500;
    opacity: 1;
}

input:placeholder-shown,
textarea:placeholder-shown {
    color: var(--text);
    font-weight: 700;
}

input:not(:placeholder-shown):valid,
textarea:not(:placeholder-shown):valid {
    color: var(--text);
    font-weight: 700;
}

input:not(:placeholder-shown):invalid,
textarea:not(:placeholder-shown):invalid {
    color: var(--text);
    font-weight: 700;
}

select {
    color: var(--text);
    font-weight: 700;
}

.currency-input {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    min-height: 42px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: #fff;
    overflow: hidden;
}

.currency-input span {
    padding: 0 0 0 11px;
    color: var(--muted);
    font-size: 14px;
    font-weight: 850;
    line-height: 1;
}

.currency-input input {
    min-height: 40px;
    border: 0;
    padding-left: 7px;
}

.currency-input:focus-within {
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.10);
}

textarea {
    min-height: 90px;
    resize: vertical;
}

input:focus,
textarea:focus,
select:focus {
    border-color: var(--accent);
    box-shadow: 0 0 0 4px rgba(13, 110, 253, 0.13);
}

.primary-btn,
.ghost-btn,
.small-btn,
.danger-btn,
.icon-btn {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 6px;
    border: 1px solid transparent;
    padding: 9px 12px;
    font-weight: 780;
    white-space: normal;
    text-align: center;
    overflow-wrap: anywhere;
}

.primary-btn {
    background: var(--accent);
    color: #fff;
}

.ghost-btn {
    background: #fff;
    color: var(--text);
    border-color: var(--line);
}

.small-btn {
    min-height: 34px;
    background: #eef5ff;
    color: var(--accent-dark);
    border-color: #cfe2ff;
    padding: 7px 10px;
    font-size: 13px;
}

.small-btn.icon-only {
    width: 34px;
    min-width: 34px;
    min-height: 34px;
    padding: 0;
}

.small-btn.icon-only svg {
    width: 17px;
    height: 17px;
}

.danger-btn {
    background: #fff3f1;
    color: var(--danger);
    border-color: #ffd1cc;
}

.icon-btn {
    position: relative;
    width: 42px;
    height: 42px;
    padding: 0;
    background: #fff;
    border-color: var(--line);
}

.notification-bell {
    overflow: visible;
}

.notification-badge {
    position: absolute;
    top: -7px;
    right: -7px;
    min-width: 20px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 6px;
    border: 2px solid #fff;
    border-radius: 999px;
    background: #e11d48;
    color: #fff;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
    box-shadow: 0 8px 18px rgba(225, 29, 72, 0.28);
}

button svg,
a svg {
    width: 17px;
    height: 17px;
    flex: none;
}

.seed-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-top: 18px;
}

.seed-grid button {
    justify-content: flex-start;
}

.portal-shell {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 272px minmax(0, 1fr);
    transition: grid-template-columns 180ms ease;
}

.portal-shell.sidebar-collapsed {
    grid-template-columns: 92px minmax(0, 1fr);
}

.sidebar {
    min-height: 100vh;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 251, 255, 0.98)),
        linear-gradient(145deg, rgba(13, 110, 253, 0.16), rgba(19, 122, 63, 0.13));
    border-right: 1px solid rgba(190, 207, 230, 0.82);
    padding: 16px;
    position: sticky;
    top: 0;
    display: flex;
    flex-direction: column;
    box-shadow: 16px 0 40px rgba(19, 32, 51, 0.05);
    overflow: hidden;
}

.sidebar-head {
    display: grid;
    gap: 14px;
    padding-bottom: 18px;
}

.sidebar .brand-row.compact {
    padding: 8px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.72);
    box-shadow: 0 10px 24px rgba(19, 32, 51, 0.05);
}

.brand-copy {
    min-width: 0;
    white-space: nowrap;
}

.sidebar-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 38px;
    padding: 8px 12px;
    border: 1px solid #cfe2ff;
    border-radius: 999px;
    background: linear-gradient(135deg, #0d6efd, #18a058);
    color: #fff;
    font-size: 12px;
    font-weight: 850;
    box-shadow: 0 12px 24px rgba(13, 110, 253, 0.2);
}

.sidebar-toggle:hover,
.sidebar-toggle:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 16px 30px rgba(13, 110, 253, 0.28);
}

.nav-list {
    display: grid;
    gap: 8px;
}

.nav-item {
    position: relative;
    min-height: 46px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 11px 12px;
    border: 1px solid transparent;
    background: rgba(255, 255, 255, 0.58);
    border-radius: 8px;
    color: #4b5c74;
    font-weight: 800;
    text-align: left;
    overflow-wrap: anywhere;
    box-shadow: 0 8px 18px rgba(19, 32, 51, 0.035);
    transition: transform 160ms ease, background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.nav-item svg {
    color: #64758f;
}

.nav-label {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nav-item:hover,
.nav-item.active {
    transform: translateX(2px);
    border-color: rgba(13, 110, 253, 0.16);
    background: linear-gradient(135deg, #eef5ff, #f0fbf5);
    color: var(--accent-dark);
    box-shadow: 0 12px 26px rgba(13, 110, 253, 0.12);
}

.nav-item.active::before {
    content: "";
    position: absolute;
    left: -1px;
    top: 10px;
    bottom: 10px;
    width: 4px;
    border-radius: 999px;
    background: linear-gradient(180deg, #0d6efd, #18a058);
}

.nav-item:hover svg,
.nav-item.active svg {
    color: #0d6efd;
}

.sectioned-sidebar {
    height: 100vh;
    padding: 18px 14px;
    background: #ffffff;
    border-right-color: #e2e8f0;
    box-shadow: 10px 0 28px rgba(15, 23, 42, 0.04);
}

.sectioned-sidebar .sidebar-head {
    gap: 12px;
    padding: 0 4px 18px;
    border-bottom: 1px solid #e8edf4;
}

.sectioned-sidebar .brand-row.compact {
    padding: 4px 2px;
    background: transparent;
    box-shadow: none;
}

.sectioned-sidebar .brand-mark {
    width: 40px;
    height: 40px;
    background: #1d4ed8;
    font-size: 13px;
}

.sectioned-sidebar .brand-copy h2 {
    color: #172033;
    font-size: 15px;
    font-weight: 800;
}

.sectioned-sidebar .brand-copy span {
    margin-top: 3px;
    color: #7b8798;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.sectioned-sidebar .sidebar-toggle {
    min-height: 34px;
    justify-content: flex-start;
    padding: 7px 9px;
    border-color: #dfe5ee;
    border-radius: 6px;
    background: #f8fafc;
    color: #526075;
    font-size: 11px;
    font-weight: 700;
    box-shadow: none;
}

.sectioned-sidebar .sidebar-toggle:hover,
.sectioned-sidebar .sidebar-toggle:focus-visible {
    transform: none;
    border-color: #cbd5e1;
    background: #f1f5f9;
    box-shadow: none;
}

.sectioned-sidebar .nav-list {
    min-height: 0;
    display: block;
    overflow-y: auto;
    padding: 18px 4px 8px;
    scrollbar-width: thin;
}

.sectioned-sidebar .nav-section + .nav-section {
    margin-top: 22px;
    padding-top: 14px;
    border-top: 1px solid #e6edf7;
}

.sectioned-sidebar .nav-section-label {
    margin: 0 0 8px;
    padding: 0 10px;
    color: #475569;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.35;
    letter-spacing: 0;
    text-transform: uppercase;
}

.sectioned-sidebar .nav-section-items {
    display: grid;
    gap: 3px;
}

.sectioned-sidebar .nav-item {
    width: 100%;
    min-height: 40px;
    justify-content: flex-start;
    gap: 10px;
    padding: 9px 10px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: #526075;
    font-size: 13px;
    font-weight: 680;
    line-height: 1.25;
    box-shadow: none;
}

.sectioned-sidebar .nav-item svg {
    width: 17px;
    height: 17px;
    color: #7b8798;
}

.sectioned-sidebar .nav-item:hover {
    transform: none;
    background: #f4f7fb;
    color: #1e293b;
    box-shadow: none;
}

.sectioned-sidebar .nav-item.active {
    transform: none;
    border: 1px solid #b8d2ff;
    background: #dbeafe;
    color: #0f3fbd;
    font-weight: 780;
    box-shadow: inset 0 0 0 1px rgba(37, 99, 235, 0.08);
}

.sectioned-sidebar .nav-item.active::before {
    left: 0;
    top: 6px;
    bottom: 6px;
    width: 4px;
    border-radius: 0 999px 999px 0;
    background: #1d4ed8;
}

.sectioned-sidebar .nav-item:hover svg {
    color: #475569;
}

.sectioned-sidebar .nav-item.active svg {
    color: #0f3fbd;
}

.sidebar-signout-form {
    margin: 4px 0 0;
}

.sectioned-sidebar .sidebar-signout {
    color: #b42318;
}

.sectioned-sidebar .sidebar-signout:hover {
    background: #fff3f1;
    color: #9f1c12;
}

.sectioned-sidebar .sidebar-signout svg,
.sectioned-sidebar .sidebar-signout:hover svg {
    color: currentColor;
}

.portal-shell.sidebar-collapsed .sidebar {
    padding: 14px 12px;
}

.portal-shell.sidebar-collapsed .brand-copy,
.portal-shell.sidebar-collapsed .nav-label,
.portal-shell.sidebar-collapsed .nav-section-label,
.portal-shell.sidebar-collapsed .sidebar-toggle span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

.portal-shell.sidebar-collapsed .sidebar-head,
.portal-shell.sidebar-collapsed .brand-row.compact {
    justify-items: center;
}

.portal-shell.sidebar-collapsed .sidebar .brand-row.compact {
    padding: 8px 0;
    background: transparent;
    box-shadow: none;
}

.portal-shell.sidebar-collapsed .brand-mark {
    margin: 0 auto;
}

.portal-shell.sidebar-collapsed .sidebar-toggle {
    width: 44px;
    height: 44px;
    padding: 0;
}

.portal-shell.sidebar-collapsed .nav-item {
    justify-content: center;
    padding: 11px 0;
}

.portal-shell.sidebar-collapsed .nav-item:hover,
.portal-shell.sidebar-collapsed .nav-item.active {
    transform: translateY(-1px);
}

.portal-shell.sidebar-collapsed .sectioned-sidebar .nav-list {
    padding-left: 0;
    padding-right: 0;
}

.portal-shell.sidebar-collapsed .sectioned-sidebar .nav-section + .nav-section {
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid #edf1f6;
}

.portal-shell.sidebar-collapsed .sectioned-sidebar .nav-item {
    justify-content: center;
    padding-left: 0;
    padding-right: 0;
}

.bottom-action-form {
    margin-top: auto;
}

.bottom-action-form .bottom-action {
    width: 100%;
}

.workspace {
    min-width: 0;
    padding: 24px;
}

.topbar {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin-bottom: 18px;
}

.topbar h2,
.topbar p {
    margin: 0;
}

.topbar h2 {
    font-size: 28px;
    line-height: 1.15;
    font-weight: 820;
}

.topbar p {
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.topbar-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.content-grid {
    display: grid;
    gap: 16px;
}

.candidate-paper-shell {
    min-height: 100vh;
    background: #ffffff;
    color: #172033;
}

.candidate-paper-header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(255, 255, 255, 0.96);
    border-bottom: 1px solid #e5eaf2;
    backdrop-filter: blur(14px);
}

.candidate-paper-header-inner {
    position: relative;
    width: min(1180px, calc(100% - 32px));
    min-height: 74px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    margin: 0 auto;
}

.candidate-paper-brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #172033;
    white-space: nowrap;
}

.candidate-paper-brand strong,
.candidate-paper-brand small {
    display: block;
    line-height: 1.15;
}

.candidate-paper-brand strong {
    font-size: 15px;
    font-weight: 850;
}

.candidate-paper-brand small {
    margin-top: 3px;
    color: #6b7280;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.candidate-top-nav {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 4px;
    overflow-x: auto;
    padding: 8px 270px 8px 2px;
    scrollbar-width: none;
}

.candidate-top-nav::-webkit-scrollbar {
    display: none;
}

.candidate-top-nav-item {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    flex: 0 0 auto;
    padding: 8px 11px;
    border: 1px solid transparent;
    border-radius: 999px;
    color: #516071;
    font-size: 13px;
    font-weight: 760;
    line-height: 1;
}

.candidate-top-nav-item svg {
    width: 16px;
    height: 16px;
    color: #7b8798;
}

.candidate-top-nav-item:hover {
    background: #f6f8fb;
    color: #172033;
}

.candidate-top-nav-item.active {
    border-color: #cfe0ff;
    background: #edf4ff;
    color: #1d4ed8;
}

.candidate-top-nav-item.active svg {
    color: #1d4ed8;
}

.candidate-paper-actions {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    justify-self: end;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}

.candidate-paper-logout {
    margin: 0;
}

.candidate-profile-menu {
    position: relative;
}

.candidate-profile-trigger {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border: 1px solid #dce4f0;
    border-radius: 999px;
    background: #ffffff;
    color: #172033;
    font-size: 13px;
    font-weight: 850;
    line-height: 1;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06);
}

.candidate-profile-trigger:hover,
.candidate-profile-trigger.show {
    border-color: #c9d7ec;
    background: #f8fbff;
}

.candidate-profile-trigger svg {
    width: 17px;
    height: 17px;
    color: #456176;
}

.candidate-profile-trigger svg:last-child {
    width: 15px;
    height: 15px;
}

.candidate-profile-dropdown {
    min-width: 286px;
    padding: 8px;
    border: 1px solid #dfe7f2;
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 24px 54px rgba(15, 23, 42, 0.16);
}

.candidate-profile-menu-item {
    width: 100%;
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 11px;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #263244;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.2;
    text-align: left;
}

.candidate-profile-menu-item:hover,
.candidate-profile-menu-item:focus {
    background: #f4f7fb;
    color: #172033;
}

.candidate-profile-menu-item.active {
    background: #edf4ff;
    color: #1d4ed8;
}

.candidate-profile-menu-item.danger {
    color: #b42318;
}

.candidate-profile-menu-item.danger:hover,
.candidate-profile-menu-item.danger:focus {
    background: #fff3f1;
}

.candidate-profile-menu-item svg {
    width: 17px;
    height: 17px;
    flex: none;
    color: currentColor;
}

.candidate-profile-menu-item > span:first-of-type {
    min-width: 0;
    flex: 1;
}

.candidate-menu-badge {
    min-width: 24px;
    min-height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 2px 7px;
    border-radius: 999px;
    background: #dc2626;
    color: #ffffff;
    font-size: 11px;
    font-weight: 900;
}

.candidate-profile-menu-divider {
    height: 1px;
    margin: 6px 4px;
    background: #edf1f6;
}

.candidate-menu-logout {
    margin: 0;
}

.candidate-paper-main {
    width: min(1180px, calc(100% - 32px));
    display: grid;
    gap: 16px;
    margin: 0 auto;
    padding: 28px 0 52px;
}

.candidate-paper-title {
    display: grid;
    gap: 4px;
    padding-bottom: 4px;
}

.candidate-paper-title p,
.candidate-paper-title h1 {
    margin: 0;
}

.candidate-paper-title p {
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.candidate-paper-title h1 {
    font-size: 30px;
    line-height: 1.12;
    font-weight: 850;
}

.candidate-paper-content {
    display: grid;
    gap: 16px;
}

.candidate-paper-shell .candidate-workspace-page,
.candidate-paper-shell .candidate-list,
.candidate-paper-shell .candidate-job-grid {
    gap: 14px;
}

.candidate-paper-shell .panel,
.candidate-paper-shell .refined-panel,
.candidate-paper-shell .item-card,
.candidate-paper-shell .candidate-job-card,
.candidate-paper-shell .candidate-record-card,
.candidate-paper-shell .candidate-hero-card,
.candidate-paper-shell .profile-meta-card,
.candidate-paper-shell .profile-score-card {
    background: #ffffff;
    border-color: #e4e9f1;
    box-shadow: none;
}

.candidate-paper-shell .candidate-section-hero {
    padding: 16px 0 14px;
    border-width: 0 0 1px;
    border-radius: 0;
    background: #ffffff;
}

.candidate-paper-shell .candidate-section-hero h3 {
    font-size: 26px;
}

.candidate-paper-shell .candidate-section-hero .muted {
    color: #6b7280;
}

.candidate-paper-shell .candidate-job-card,
.candidate-paper-shell .candidate-record-card {
    transition: border-color 160ms ease, background 160ms ease;
}

.candidate-paper-shell .candidate-job-card:hover,
.candidate-paper-shell .candidate-record-card:hover {
    transform: none;
    border-color: #c9d7ec;
    background: #fbfdff;
    box-shadow: none;
}

.candidate-paper-shell .candidate-profile-facts span,
.candidate-paper-shell .profile-detail-list article,
.candidate-paper-shell .profile-checklist span,
.candidate-paper-shell .profile-score-card {
    background: #fbfcfe;
}

.candidate-paper-shell .profile-editor-summary {
    background: #ffffff;
}

.candidate-paper-shell .naukri-search-panel {
    box-shadow: none;
}

.metrics-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(160px, 1fr));
    gap: 12px;
}

.metric {
    min-height: 102px;
    padding: 16px;
}

.metric span {
    display: block;
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.metric strong {
    display: block;
    margin-top: 10px;
    font-size: 32px;
}

.candidate-header-left { display:flex; align-items:center; gap:10px; }
.candidate-action-tooltip { display:inline-flex; }

.account-metrics-grid {
    grid-template-columns: repeat(5,minmax(0,1fr));
}

.account-metrics-grid .metric-email { grid-column:span 2; }

.account-metrics-grid .metric strong {
    min-width:0;
    overflow-wrap:anywhere;
    word-break:break-word;
    font-size:clamp(20px,2vw,28px);
    line-height:1.2;
}

.admin-dashboard-page {
    display: grid;
    gap: 18px;
}

.admin-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(180px, 1fr));
    gap: 12px;
}

.admin-metric-card {
    min-height: 122px;
    display: flex;
    justify-content: space-between;
    gap: 14px;
    padding: 18px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    color: var(--text);
    box-shadow: 0 12px 28px rgba(19, 32, 51, 0.06);
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.admin-metric-card:hover {
    transform: translateY(-2px);
    border-color: #bdd3ff;
    color: var(--text);
    box-shadow: 0 18px 38px rgba(19, 32, 51, 0.11);
}

.admin-metric-card span {
    display: block;
    color: var(--muted);
    font-size: 12px;
    font-weight: 850;
    text-transform: uppercase;
}

.admin-metric-card strong {
    display: block;
    margin-top: 12px;
    font-size: 36px;
    line-height: 1;
}

.admin-metric-card p {
    margin: 10px 0 0;
    color: var(--muted);
    font-size: 13px;
    font-weight: 720;
}

.admin-metric-card > svg {
    width: 38px;
    height: 38px;
    padding: 9px;
    border-radius: 8px;
    background: #eef5ff;
    color: var(--accent-dark);
    flex: none;
}

.admin-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
}

.admin-detail-panel {
    scroll-margin-top: 18px;
}

.admin-detail-panel .collapsible-body {
    padding-top: 2px;
}

.admin-detail-panel:target {
    border-color: #8fb5ff;
    box-shadow: 0 0 0 3px rgba(36, 84, 232, 0.12), 0 16px 34px rgba(19, 32, 51, 0.08);
}

.admin-detail-list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
}

.admin-detail-card {
    display: grid;
    gap: 12px;
    min-width: 0;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: linear-gradient(180deg, #fff, #fbfdff);
}

.admin-record-head {
    display: flex;
    gap: 12px;
    align-items: center;
    min-width: 0;
}

.admin-record-head > div:last-child {
    min-width: 0;
}

.admin-record-head h4 {
    margin: 0;
    font-size: 16px;
    font-weight: 850;
    overflow-wrap: anywhere;
}

.admin-record-head p {
    margin: 4px 0 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.45;
}

.candidate-avatar.mini {
    width: 44px;
    height: 44px;
    font-size: 14px;
}

.admin-application-list,
.admin-mini-list {
    display: grid;
    gap: 8px;
}

.admin-application-chip,
.admin-mini-list span,
.admin-empty-line {
    display: grid;
    gap: 3px;
    padding: 9px 10px;
    border: 1px solid #e2e9f5;
    border-radius: 8px;
    background: #f8fbff;
    color: #4c5a73;
    font-size: 12px;
    line-height: 1.35;
}

.admin-application-chip strong {
    color: var(--text);
    font-size: 13px;
    overflow-wrap: anywhere;
}

.admin-application-chip span {
    overflow-wrap: anywhere;
}

.admin-empty-line {
    color: var(--muted);
    font-weight: 760;
}

.admin-note {
    margin: 0;
    padding: 10px;
    border-radius: 8px;
    background: var(--panel-2);
    color: var(--muted);
    font-size: 13px;
    line-height: 1.45;
}

.danger-text {
    color: var(--danger) !important;
}

.candidate-notification-action {
    position:relative;
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border:1px solid #dce4f0;
    border-radius:50%;
    color:#516071;
    background:#fff;
}

.candidate-notification-action:hover { border-color:#bfd0eb; color:#2454e8; background:#f7faff; }
.candidate-notification-action svg { width:18px; height:18px; }
.candidate-notification-action span { position:absolute; top:-4px; right:-3px; display:grid; place-items:center; min-width:18px; height:18px; padding:0 4px; border:2px solid #fff; border-radius:999px; background:#e11d48; color:#fff; font-size:9px; font-weight:850; }
.candidate-logout-action { display:grid; place-items:center; width:42px; height:42px; padding:0; border:1px solid #f0c9c5; border-radius:50%; background:#fff; color:#b42318; }
.candidate-logout-action:hover { border-color:#e7a6a0; background:#fff5f4; }
.candidate-logout-action svg { width:18px; height:18px; }

.social-login-btn .social-login-mark svg {
    display: block;
    width: 20px;
    height: 20px;
}

.form-validation-message {
    grid-column: 1 / -1;
    min-height: 1.25rem;
    color: var(--danger);
    font-size: 0.82rem;
    font-weight: 700;
}

.panel {
    padding: 16px;
}

.panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.panel-head h3 {
    margin: 0;
    font-size: 18px;
    font-weight: 820;
}

.panel-head p {
    margin: 4px 0 0;
    color: var(--muted);
    font-size: 13px;
}

.muted {
    color: var(--muted);
    font-size: 13px;
}

.split-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.48fr);
    gap: 16px;
    align-items: start;
}

.list-grid {
    display: grid;
    gap: 10px;
}

.item-card {
    padding: 15px;
}

.item-card h4,
.item-card p {
    margin: 0;
}

.item-card h4 {
    font-size: 16px;
    font-weight: 820;
}

.item-card p {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.5;
}

.item-card .moderation-help {
    width: fit-content;
    margin-top: 10px;
    padding: 7px 12px;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    background: linear-gradient(135deg, #eff6ff, #ecfeff);
    color: #155e75;
    font-weight: 720;
}

.admin-job-card-head {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
}

.admin-job-company-mark {
    width: 54px;
    height: 54px;
    font-size: 18px;
}

.admin-job-card-head > div {
    min-width: 0;
}

.admin-job-card-head h4,
.admin-job-card-head p,
.admin-job-location {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-job-card-head .eyebrow {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-job-location {
    margin-top: 8px;
}

.admin-job-description-preview {
    display: -webkit-box;
    margin-top: 10px;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    color: #475569;
    line-height: 1.55;
}

.admin-job-description-preview span {
    display: inline-flex;
    margin-right: 8px;
    color: #1d4ed8;
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
}

.card-actions,
.inline-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}

.toolbar-form {
    display: grid;
    grid-template-columns: repeat(4, minmax(140px, 1fr));
    gap: 8px;
    margin-bottom: 12px;
}

.inline-label {
    min-width: 170px;
    text-transform: none;
}

.check-row {
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--text);
    font-size: 13px;
    font-weight: 700;
    text-transform: none;
}

.check-row input {
    width: auto;
    min-height: auto;
}

details {
    margin-top: 12px;
    width: 100%;
    max-width: 100%;
}

summary {
    color: var(--accent-dark);
    cursor: pointer;
    font-size: 13px;
    font-weight: 800;
    overflow-wrap: anywhere;
}

details .form-grid {
    max-width: 100%;
    overflow-wrap: anywhere;
}

.collapsible-panel {
    padding: 0;
    overflow: hidden;
}

.collapsible-panel summary {
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 14px;
    padding: 16px;
    color: var(--text);
    list-style: none;
}

.collapsible-panel summary::-webkit-details-marker {
    display: none;
}

.collapsible-panel summary:hover {
    background: #f8fbff;
}

.collapsible-title {
    min-width: 0;
    flex: 1 1 320px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.collapsible-title > svg {
    width: 18px;
    height: 18px;
    color: var(--accent-dark);
    transition: transform 0.18s ease;
    flex: none;
}

.collapsible-title strong,
.collapsible-title small {
    display: block;
}

.collapsible-title strong {
    color: var(--text);
    font-size: 16px;
    font-weight: 860;
    text-transform: none;
}

.collapsible-title small {
    margin-top: 3px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
    text-transform: none;
}

.collapsible-action {
    margin-left: 28px;
    padding: 6px 10px;
    border: 1px solid #cfe2ff;
    border-radius: 999px;
    background: #eef5ff;
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 850;
    white-space: nowrap;
    text-transform: none;
}

.collapsible-panel[open] .collapsible-title > svg {
    transform: rotate(90deg);
}

.collapsible-panel[open] .collapsible-action {
    background: #fff;
    color: var(--muted);
}

.collapsible-panel[open] .collapsible-action::before {
    content: "Collapse";
}

.collapsible-panel[open] .collapsible-action {
    font-size: 0;
}

.collapsible-panel[open] .collapsible-action::before {
    font-size: 12px;
}

.collapsible-body {
    padding: 0 16px 16px;
}

.tag-row {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px;
}

.tag {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    min-height: 24px;
    padding: 3px 8px;
    border-radius: 999px;
    background: #eef5ff;
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 760;
    white-space: normal;
    overflow-wrap: anywhere;
    line-height: 1.35;
}

.status {
    background: #eef2ff;
    color: #3446a2;
}

.status.good {
    background: #e9f7ef;
    color: var(--good);
}

.status.warn {
    background: #fff3e5;
    color: var(--warn);
}

.status.interview-scheduled {
    background: #e8f1ff;
    color: #175cd3;
}

.status.danger {
    background: #fff1f0;
    color: var(--danger);
}

.table-tools {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 10px;
}

.table-tools label {
    width: min(360px, 100%);
    text-transform: none;
}

.table-tools label span {
    color: var(--muted);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.table-tools input {
    min-height: 38px;
}

.admin-user-status-form { display:grid; grid-template-columns:minmax(220px,1fr); align-items:center; gap:10px; margin-top:12px; }
.admin-user-status-form label { margin:0; }
.admin-user-status-form select { width:100%; min-height:46px; border:1px solid #cad7e6; border-radius:9px; background:#f8fbff; color:#27324a; font-weight:750; }
.admin-user-status-form select:focus { border-color:#75a6ef; box-shadow:0 0 0 3px rgba(36,107,219,.13); outline:0; }
.admin-user-status-form.is-saving select { pointer-events:none; opacity:.72; }

.table-export-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-left: auto;
}

.table-export-actions .small-btn {
    min-height: 34px;
    padding: 8px 10px;
}

.data-table th:first-child:has([data-table-select-all]),
.data-table td:first-child:has([data-table-row-select]) {
    width: 42px;
    text-align: center;
}

.data-table [data-table-select-all],
.data-table [data-table-row-select] {
    width: 16px;
    height: 16px;
    cursor: pointer;
}

.table-tools small {
    color: var(--muted);
    font-size: 12px;
    font-weight: 760;
    white-space: nowrap;
}

.table-wrap {
    max-width: 100%;
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 1px 0 rgba(15, 23, 42, 0.03);
}

table {
    width: 100%;
    min-width: 760px;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: auto;
}

th,
td {
    padding: 11px 12px;
    border-bottom: 1px solid var(--line);
    text-align: left;
    font-size: 13px;
    line-height: 1.45;
    vertical-align: middle;
    overflow-wrap: anywhere;
}

th {
    position: sticky;
    top: 0;
    z-index: 1;
    color: var(--muted);
    font-size: 11px;
    text-transform: uppercase;
    background: #fbfcff;
    white-space: nowrap;
}

th.sortable {
    cursor: pointer;
    user-select: none;
}

th.sortable::after {
    content: "↕";
    margin-left: 6px;
    color: #94a3b8;
    font-size: 12px;
    text-transform: none;
}

th.sortable[data-sort-direction="asc"]::after {
    content: "↑";
    color: var(--accent-dark);
}

th.sortable[data-sort-direction="desc"]::after {
    content: "↓";
    color: var(--accent-dark);
}

tbody tr:nth-child(even) {
    background: #fcfdff;
}

tbody tr:hover {
    background: #f8fbff;
}

tr:last-child td {
    border-bottom: 0;
}

.two-col {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.full {
    grid-column: 1 / -1;
}

.toast {
    position: sticky;
    top: 12px;
    z-index: 10;
    padding: 12px 14px;
    border-radius: 6px;
    background: #10201d;
    color: #fff;
    box-shadow: var(--shadow);
}

.toast.inline {
    position: static;
    margin: 14px 0;
}

.toast.good {
    background: #0f6b3d;
}

.toast.danger {
    background: #8b1d17;
}

.planned-card {
    background: #fffdf7;
}

.empty {
    padding: 18px;
    border: 1px dashed var(--line);
    border-radius: 8px;
    color: var(--muted);
    background: rgba(255, 255, 255, 0.64);
}

.recruiter-dashboard {
    display: grid;
    gap: 18px;
}

.recruiter-dashboard[data-dashboard-theme="dark"] {
    --panel: #111827;
    --panel-2: #172033;
    --text: #eef4ff;
    --muted: #a8b3c7;
    --line: #28354a;
    --accent: #66a6ff;
    --accent-dark: #d9e8ff;
    color: var(--text);
}

.employer-overview-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px;
}

.employer-overview-hero h3 {
    margin: 4px 0;
    font-size: 24px;
    font-weight: 840;
}

.employer-overview-hero p {
    margin: 0;
    color: var(--muted);
}

.recruiter-hero {
    display: flex;
    justify-content: space-between;
    gap: 22px;
    padding: 28px;
    border-radius: 8px;
    background:
        linear-gradient(110deg, rgba(7, 24, 54, 0.94), rgba(13, 110, 253, 0.74)),
        url("https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=1600&q=80") center/cover;
    color: #fff;
    box-shadow: var(--shadow);
}

.recruiter-hero h1 {
    margin: 8px 0 10px;
    max-width: 760px;
    font-size: clamp(30px, 4vw, 46px);
    line-height: 1.04;
    font-weight: 860;
}

.recruiter-hero p {
    max-width: 720px;
    margin: 0;
    color: rgba(255, 255, 255, 0.84);
    font-size: 16px;
    line-height: 1.6;
}

.hero-actions,
.form-actions,
.filter-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.hero-actions {
    align-content: flex-start;
    justify-content: flex-end;
}

.kpi-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(160px, 1fr));
    gap: 12px;
}

.kpi-card {
    position: relative;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: start;
    gap: 14px;
    min-height: 124px;
    padding: 16px;
    overflow: hidden;
    background: var(--panel);
    border: 1px solid var(--line);
    border-radius: 8px;
    box-shadow: 0 12px 30px rgba(19, 32, 51, 0.07);
    transition: transform 180ms ease, border-color 180ms ease, background-color 180ms ease, box-shadow 180ms ease;
}

.kpi-link {
    color: var(--text);
}

.kpi-link::after {
    content: "";
    position: absolute;
    inset: 0;
    border: 1px solid transparent;
    border-radius: inherit;
    transition: border-color 180ms ease, box-shadow 180ms ease;
}

.kpi-link:hover,
.kpi-link:focus-visible {
    color: var(--text);
}

.kpi-link:hover::after,
.kpi-link:focus-visible::after {
    border-color: #8fb5ff;
    box-shadow: inset 0 0 0 1px rgba(13, 110, 253, 0.14);
}

.kpi-card:hover,
.public-job-card:hover,
.item-card:hover,
.candidate-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 36px rgba(19, 32, 51, 0.11);
}

.kpi-card:hover {
    border-color: rgba(13, 110, 253, 0.36);
    background: #f8fbff;
}

.kpi-card span {
    display: block;
    max-width: 100%;
    color: var(--muted);
    font-size: 11px;
    line-height: 1.2;
    font-weight: 820;
    letter-spacing: 0;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.kpi-card strong {
    display: block;
    margin-top: 10px;
    color: var(--text);
    font-size: 28px;
    line-height: 1;
    font-weight: 860;
    font-variant-numeric: tabular-nums;
}

.kpi-card p {
    margin: 9px 0 0;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.35;
}

.kpi-icon {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: #eef5ff;
    color: var(--accent-dark);
}

.kpi-card.good .kpi-icon {
    background: #e9f7ef;
    color: var(--good);
}

.kpi-card.warn .kpi-icon {
    background: #fff3e5;
    color: var(--warn);
}

.kpi-card.danger .kpi-icon {
    background: #fff1f0;
    color: var(--danger);
}

.progress.slim {
    grid-column: 1 / -1;
    height: 6px;
    margin-top: auto;
    background: var(--panel-2);
}

.progress.slim .progress-bar {
    height: 100%;
    border-radius: inherit;
    background: var(--accent);
    transition: width .18s ease;
}

.dashboard-tabs {
    padding: 18px;
}

.status-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 30px;
    padding: 5px 10px;
    border-radius: 999px;
    background: #eef5ff;
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 800;
}

.status-pill.good {
    background: #e9f7ef;
    color: var(--good);
}

.status-pill.warn {
    background: #fff3e5;
    color: var(--warn);
}

.recruiter-tabs {
    gap: 8px;
    margin: 12px 0 18px;
}

.recruiter-tabs .nav-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    border-radius: 999px;
    color: var(--muted);
    font-weight: 780;
}

.recruiter-tabs .nav-link.active {
    background: var(--accent);
    color: #fff;
}

.recruiter-tabs .tab-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 22px;
    padding: 0 7px;
    border-radius: 999px;
    background: #eef4ff;
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 850;
    line-height: 1;
}

.recruiter-tabs .nav-link.active .tab-count {
    background: rgba(255, 255, 255, 0.22);
    color: #fff;
}

.recruiter-tab-content {
    min-height: 480px;
}

.dashboard-analytics-panel {
    display: grid;
    gap: 14px;
}

.dashboard-insight-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.dashboard-insight-card {
    display: grid;
    gap: 5px;
    padding: 12px;
    border: 1px solid #e1e9f5;
    border-radius: 8px;
    background: #f8fbff;
}

.dashboard-insight-card svg {
    width: 18px;
    height: 18px;
    color: var(--accent-dark);
}

.dashboard-insight-card span {
    color: #64748b;
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
}

.dashboard-insight-card strong {
    color: #172033;
    font-size: 24px;
    line-height: 1;
}

.dashboard-insight-card p {
    margin: 0;
    color: var(--muted);
    font-size: 12px;
}

.dashboard-funnel,
.dashboard-activity-list,
.dashboard-job-summary-list {
    display: grid;
    gap: 9px;
}

.dashboard-pending-info {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 10px 12px;
    border: 1px solid #d9e7fb;
    border-radius: 8px;
    background: #f3f8ff;
    color: #2454e8;
    font-size: 13px;
    font-weight: 780;
}

.dashboard-pending-info svg {
    width: 17px;
    height: 17px;
    flex: 0 0 auto;
}

.dashboard-subscription-banner {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;
    margin: 18px 0;
    padding: 18px;
    border: 1px solid #fedf89;
    border-left: 5px solid #f79009;
    border-radius: 10px;
    background: #fffbeb;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
}

.dashboard-subscription-icon {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    border-radius: 10px;
    background: #fff3d6;
    color: #b54708;
}

.dashboard-subscription-icon svg {
    width: 22px;
    height: 22px;
}

.dashboard-subscription-banner h3 {
    margin: 2px 0 4px;
    color: #172033;
    font-size: 18px;
}

.dashboard-subscription-banner p {
    margin: 0;
    color: #6b5b36;
    font-size: 13px;
    line-height: 1.5;
}

.dashboard-subscription-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.subscription-required-panel {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 14px;
    border: 1px solid #fedf89;
    border-radius: 8px;
    background: #fffbeb;
    color: #6b5b36;
}

.subscription-required-panel > svg {
    width: 22px;
    color: #b54708;
}

.subscription-required-panel strong {
    display: block;
    color: #172033;
}

.subscription-required-panel p {
    margin: 3px 0 0;
    font-size: 13px;
}

.status-tag.good {
    border-color: #a6d7b8;
    background: #ecfdf3;
    color: #027a48;
}

.status-tag.danger {
    border-color: #fecdca;
    background: #fef3f2;
    color: #b42318;
}

.dashboard-funnel h4,
.dashboard-activity-list h4 {
    margin: 0;
    color: #172033;
    font-size: 14px;
    font-weight: 850;
}

.dashboard-funnel-step,
.dashboard-job-summary {
    display: grid;
    gap: 7px;
    padding: 10px;
    border: 1px solid #e1e9f5;
    border-radius: 8px;
    background: #fff;
}

.dashboard-funnel-step > div:first-child,
.dashboard-job-summary {
    color: var(--text);
}

.dashboard-funnel-step > div:first-child {
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

.dashboard-funnel-step span,
.dashboard-job-summary small {
    color: var(--muted);
    font-size: 12px;
    font-weight: 700;
}

.dashboard-funnel-step strong,
.dashboard-job-summary strong {
    color: #172033;
    font-size: 13px;
    font-weight: 850;
}

.dashboard-job-summary {
    grid-template-columns: minmax(180px, 1fr) auto auto auto;
    align-items: center;
    column-gap: 12px;
    transition: border-color 160ms ease, background 160ms ease;
}

.dashboard-job-summary:hover {
    border-color: #9bbcff;
    background: #f8fbff;
}

.dashboard-job-title {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.dashboard-job-title strong,
.dashboard-job-title small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-job-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    justify-content: flex-end;
}

.dashboard-job-summary em {
    color: var(--accent-dark);
    font-size: 12px;
    font-style: normal;
    font-weight: 850;
    white-space: nowrap;
}

.dashboard-job-summary .small-btn {
    min-height: 34px;
    padding: 7px 10px;
    white-space: nowrap;
}

.dashboard-job-summary .meter {
    grid-column: 1 / -1;
}

.dashboard-activity-item {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
    padding: 10px;
    border: 1px solid #e1e9f5;
    border-radius: 8px;
    background: #fff;
    color: var(--text);
}

.dashboard-activity-item:hover {
    border-color: #9bbcff;
    background: #f8fbff;
    color: var(--text);
}

.dashboard-activity-item > svg {
    width: 18px;
    height: 18px;
    color: var(--accent-dark);
}

.dashboard-activity-item span {
    display: grid;
    min-width: 0;
}

.dashboard-activity-item strong {
    font-size: 13px;
    font-weight: 850;
}

.dashboard-activity-item small {
    color: var(--muted);
    font-size: 11px;
}

.analytics-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(220px, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.workspace-grid,
.module-grid,
.settings-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(360px, 0.9fr);
    gap: 16px;
    align-items: start;
}

.staffing-list-page .workspace-grid {
    grid-template-columns: minmax(0, 1fr);
}

.staffing-dashboard-page .workspace-grid {
    grid-template-columns: minmax(0, 1fr);
}

.chart-card {
    min-height: 248px;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
}

.chart-head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.chart-head h4 {
    margin: 0;
    font-size: 16px;
    font-weight: 830;
}

.chart-head p {
    margin: 4px 0 0;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.35;
}

.bar-chart {
    display: grid;
    gap: 11px;
}

.bar-row {
    display: grid;
    grid-template-columns: minmax(90px, 1fr) 2fr 30px;
    gap: 10px;
    align-items: center;
    font-size: 12px;
}

.bar-row a {
    color: var(--text);
    font-weight: 700;
    text-decoration: none;
}

.bar-row a:hover,
.bar-row a:focus-visible {
    color: var(--accent);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.bar-row div,
.funnel-step {
    background: var(--panel-2);
    border-radius: 999px;
    overflow: hidden;
}

.bar-row i,
.funnel-step i {
    display: block;
    height: 9px;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--accent), #55c2ff);
}

.trend-chart {
    height: 150px;
    display: flex;
    align-items: end;
    gap: 10px;
    padding: 10px 0;
}

.trend-chart span {
    flex: 1;
    min-width: 14px;
    border-radius: 8px 8px 2px 2px;
    background: linear-gradient(180deg, #66a6ff, var(--accent));
}

.chart-axis {
    display: flex;
    justify-content: space-between;
    color: var(--muted);
    font-size: 11px;
}

.source-analytics {
    display: flex;
    align-items: center;
    gap: 18px;
}

.donut-chart {
    width: 128px;
    height: 128px;
    border-radius: 50%;
    background: conic-gradient(#0d6efd 0 42%, #13a463 42% 70%, #f59f00 70% 88%, #64748b 88% 100%);
    position: relative;
}

.donut-chart::after {
    content: "";
    position: absolute;
    inset: 26px;
    border-radius: 50%;
    background: var(--panel);
}

.source-list {
    display: grid;
    gap: 8px;
    color: var(--muted);
    font-size: 13px;
}

.dot {
    display: inline-block;
    width: 9px;
    height: 9px;
    margin-right: 7px;
    border-radius: 50%;
}

.dot.blue { background: #0d6efd; }
.dot.green { background: #13a463; }
.dot.amber { background: #f59f00; }
.dot.slate { background: #64748b; }

.funnel {
    display: grid;
    gap: 12px;
}

.funnel-step {
    padding: 8px;
}

.funnel-step div {
    display: flex;
    justify-content: space-between;
    margin-bottom: 7px;
    font-size: 12px;
}

.funnel-step strong {
    color: var(--text);
}

.table-panel .panel-head,
.recruiter-table td:first-child {
    min-width: 0;
}

.recruiter-table td strong,
.recruiter-table td span {
    display: block;
}

.recruiter-table td span {
    color: var(--muted);
    font-size: 12px;
}

.employer-workspace-page {
    font-feature-settings: "cv02", "cv03", "cv04";
}

.employer-section-hero {
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(239, 246, 255, 0.92)),
        radial-gradient(circle at 96% 0%, rgba(13, 110, 253, 0.16), transparent 34%);
    border-color: rgba(190, 207, 230, 0.78);
}

.employer-section-hero h3 {
    font-size: 28px;
}

.employer-jobs-page .employer-section-hero {
    align-items: center;
    gap: 16px;
    padding: 14px 16px;
}

.employer-jobs-page .employer-section-hero .hero-actions {
    align-items: center;
    gap: 8px;
}

.employer-jobs-page .employer-section-hero .primary-btn,
.employer-jobs-page .employer-section-hero .small-btn {
    min-height: 36px;
    padding: 7px 11px;
}

.employer-jobs-page .job-secondary-action {
    border-color: #d8e2ef;
    background: #fff;
    color: #526075;
}

.employer-jobs-page .job-secondary-action:hover,
.employer-jobs-page .job-secondary-action:focus-visible {
    border-color: #b9c9dd;
    background: #f8fafc;
    color: var(--accent-dark);
}

.employer-jobs-page {
    gap: 12px;
}

.refined-panel {
    padding: 18px;
}

.refined-panel .panel-head {
    margin-bottom: 16px;
}

.refined-panel .panel-head h3 {
    margin: 0;
    font-size: 18px;
    font-weight: 850;
}

.refined-panel .panel-head p {
    margin: 4px 0 0;
    color: var(--muted);
    font-size: 13px;
}

.employer-page-grid {
    grid-template-columns: minmax(360px, 0.82fr) minmax(0, 1.18fr);
}

.compact-kpis {
    grid-template-columns: repeat(4, minmax(160px, 1fr));
}

.premium-form {
    gap: 14px;
}

.premium-form label {
    color: #334155;
    font-size: 12px;
    font-weight: 820;
    letter-spacing: 0;
}

.helper-text {
    display: block;
    margin-top: 2px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 650;
}

.upload-choice-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 14px;
    border: 1px dashed #bdd0e8;
    border-radius: 8px;
    background: #fbfdff;
}

.upload-choice-card > span {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #eef5ff;
    color: var(--accent-dark);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.upload-choice-card input[type="file"] {
    padding: 8px;
    background: #fff;
}

.choice-divider {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    margin: 18px 0 0;
    color: var(--muted);
    font-size: 12px;
    font-weight: 900;
    text-align: center;
    text-transform: uppercase;
}

.choice-divider::before,
.choice-divider::after {
    content: "";
    height: 1px;
    background: var(--line);
}

.choice-divider span {
    display: grid;
    place-items: center;
    min-width: 42px;
    min-height: 28px;
    padding: 4px 10px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: #fff;
    color: var(--accent-dark);
}

.bulk-import-block {
    display: grid;
    gap: 16px;
    padding: 18px 20px 20px;
}

.bulk-import-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.bulk-import-head h4 {
    margin: 0 0 4px;
    font-size: 16px;
}

.bulk-import-head p {
    margin: 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.45;
}

.template-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}

.bulk-import-form {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 12px;
    padding: 14px;
    border: 1px solid #dbe6f5;
    border-radius: 8px;
    background: #fff;
}

.bulk-import-form input[type="file"] {
    padding: 9px;
    background: #fbfdff;
}

.bulk-import-form .secondary-btn {
    min-height: 42px;
    white-space: nowrap;
}

.staffing-create-stack {
    display: grid;
    gap: 18px;
}

.submission-import-panel {
    border-color: #cfe0f5;
    background: #f8fbff;
}

.submission-format-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.submission-format-strip span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 5px 9px;
    border: 1px solid #d7e3f4;
    border-radius: 6px;
    background: #fff;
    color: #344054;
    font-size: 12px;
    font-weight: 800;
    line-height: 16px;
}

.submission-import-form {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: end;
}

.submission-import-form label {
    min-width: 0;
}

.submission-upload-row {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) auto;
    gap: 12px;
    align-items: end;
    padding-top: 2px;
}

.submission-upload-row label {
    margin: 0;
}

.submission-upload-row input[type="file"] {
    min-height: 44px;
    border: 1px solid #d7e3f4;
    border-radius: 6px;
    background: #fff;
}

.submission-upload-row .primary-btn {
    min-height: 44px;
    white-space: nowrap;
}

.submission-import-errors {
    display: grid;
    gap: 8px;
    padding: 12px 14px;
    border: 1px solid #fecaca;
    border-radius: 8px;
    background: #fff5f5;
    color: #991b1b;
}

.submission-import-errors-title {
    display: flex;
    align-items: center;
    gap: 8px;
}

.submission-import-errors-title svg {
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
}

.submission-import-errors p {
    margin: 0;
    color: #b42318;
    font-size: 12px;
    font-weight: 750;
}

.submission-import-errors ul {
    display: grid;
    gap: 4px;
    margin: 0;
    padding-left: 18px;
    font-size: 12px;
    font-weight: 750;
    line-height: 1.45;
}

.submission-format-details {
    border-top: 1px solid #dbe6f5;
    padding-top: 12px;
}

.submission-format-details summary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #344054;
    cursor: pointer;
    font-size: 13px;
    font-weight: 850;
    list-style: none;
}

.submission-format-details summary::-webkit-details-marker {
    display: none;
}

.submission-format-details svg {
    width: 16px;
    height: 16px;
}

.submission-format-details[open] .submission-format-strip {
    margin-top: 10px;
}

.submission-tracker-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding: 14px;
    border: 1px solid #dbe6f5;
    border-radius: 8px;
    background: #fbfdff;
}

.submission-tracker-grid h4 {
    grid-column: 1 / -1;
    margin: 0;
    color: #172033;
    font-size: 14px;
    font-weight: 900;
}

.premium-form input,
.premium-form textarea,
.premium-form select,
.status-update-form input,
.status-update-form select,
.toolbar-form input {
    color: var(--text);
    font-weight: 700;
    border-color: #d7e0ec;
    background: #fbfdff;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
    transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.premium-form input::placeholder,
.premium-form textarea::placeholder,
.status-update-form input::placeholder,
.toolbar-form input::placeholder {
    color: #cbd5e1;
    font-size: 0.92em;
    font-weight: 500;
    opacity: 1;
}

.premium-form input:placeholder-shown,
.premium-form textarea:placeholder-shown,
.status-update-form input:placeholder-shown,
.toolbar-form input:placeholder-shown {
    color: var(--text);
    font-weight: 700;
}

.premium-form input:focus,
.premium-form textarea:focus,
.premium-form select:focus,
.status-update-form input:focus,
.status-update-form select:focus,
.toolbar-form input:focus {
    outline: none;
    border-color: rgba(13, 110, 253, 0.58);
    background: #fff;
    box-shadow: 0 0 0 4px rgba(13, 110, 253, 0.12);
}

.premium-form textarea {
    min-height: 138px;
}

.profile-preview-card,
.candidate-profile-card,
.application-card,
.interview-row-card,
.usage-list article {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: linear-gradient(180deg, #fff, #fbfdff);
    box-shadow: 0 12px 28px rgba(19, 32, 51, 0.06);
}

.profile-preview-card {
    display: grid;
    gap: 14px;
    padding: 18px;
}

.company-mark {
    width: 62px;
    height: 62px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: #e7f1ff;
    color: var(--accent-dark);
    font-size: 22px;
    font-weight: 900;
    overflow: hidden;
}

.company-mark img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    display: block;
}

.eyebrow {
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 850;
    text-transform: uppercase;
}

.profile-preview-card h3,
.candidate-profile-card h4,
.application-card h4,
.interview-row-card h4 {
    margin: 0;
    font-weight: 850;
}

.profile-preview-card p,
.candidate-profile-card p,
.application-card p,
.interview-row-card p {
    margin: 5px 0 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.5;
}

.profile-meta {
    display: grid;
    gap: 9px;
}

.profile-meta span {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--muted);
    font-size: 13px;
}

.profile-meta svg {
    width: 16px;
    color: var(--accent);
}

.table-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: start;
    gap: 8px;
}

.candidate-results-grid,
.application-list,
.interview-list {
    display: grid;
    gap: 12px;
}

.candidate-results-grid {
    grid-template-columns: repeat(2, minmax(260px, 1fr));
}

.candidate-profile-card,
.application-card,
.interview-row-card {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 12px;
    padding: 14px;
}

.candidate-profile-card {
    grid-template-columns: 46px minmax(0, 1fr) minmax(120px, 0.34fr);
    align-items: center;
}

.profile-meter {
    display: grid;
    gap: 8px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
}

.application-card {
    grid-template-columns: 46px minmax(0, 1fr) auto;
    align-items: center;
}

.applicant-identity {
    min-width: 0;
}

.applicant-identity h4 {
    font-size: 21px;
    line-height: 1.2;
}

.applicant-role-line {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
}

.applicant-role-line strong {
    color: var(--text);
    font-weight: 820;
}

.applicant-role-line span {
    color: #5f6f86;
    font-weight: 650;
}

.applicant-role-line span::before {
    content: "/";
    margin-right: 7px;
    color: #a8b4c5;
}

.applicant-card-action {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    justify-content: flex-end;
    min-width: 260px;
}

.applicant-card-action .primary-btn,
.applicant-card-action .small-btn {
    min-height: 40px;
    padding: 9px 14px;
    white-space: nowrap;
}

.applicant-card-action .applicant-resume-action {
    border: 1px solid rgba(13, 110, 253, 0.48);
    background: #fff;
    color: var(--accent-dark);
    box-shadow: inset 0 0 0 1px rgba(13, 110, 253, 0.08);
}

.applicant-card-action .applicant-resume-action:hover,
.applicant-card-action .applicant-resume-action:focus-visible {
    border-color: var(--accent-dark);
    background: #f6faff;
    color: var(--accent-dark);
    box-shadow: 0 8px 18px rgba(13, 110, 253, 0.12);
}

.applicant-contact-row {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 9px;
}

.applicant-contact-row a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-width: 0;
    padding: 6px 8px;
    border: 1px solid #d8e7ff;
    border-radius: 7px;
    background: #f7faff;
    color: #334155;
    font-size: 12px;
    font-weight: 760;
    overflow-wrap: anywhere;
}

.applicant-contact-row svg {
    width: 14px;
    height: 14px;
    flex: none;
    color: var(--accent-dark);
}

.applicant-status-row {
    margin-top: 8px;
}

.applicant-filter-bar {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 10px;
    align-items: end;
    margin: 14px 0;
    padding: 12px;
    border: 1px solid #dfe8f6;
    border-radius: 8px;
    background: #f8fbff;
}

.applicant-filter-bar label {
    display: grid;
    gap: 5px;
    min-width: 0;
    margin: 0;
    color: #5c6d86;
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
}

.applicant-filter-bar input,
.applicant-filter-bar select {
    width: 100%;
    min-width: 0;
    min-height: 38px;
    border: 1px solid #cad7e6;
    border-radius: 8px;
    background: #fff;
    color: var(--text);
    font-size: 13px;
    font-weight: 750;
    text-transform: none;
}

.applicant-filter-bar .filter-search {
    position: relative;
    min-width: 0;
}

.applicant-filter-bar .filter-search input {
    padding-right: 38px;
    padding-left: 12px;
}

.applicant-filter-bar .filter-search svg {
    position: absolute;
    right: 12px;
    bottom: 11px;
    display: block;
    width: 16px;
    height: 16px;
    color: var(--accent-dark);
    pointer-events: none;
}

.applicant-filter-bar .primary-btn,
.applicant-filter-bar .small-btn {
    width: 100%;
    min-width: 0;
    min-height: 38px;
    white-space: nowrap;
}

.employer-applicant-filters {
    grid-template-columns: repeat(12, minmax(0, 1fr));
}

.employer-applicants-page {
    display: grid;
    gap: 14px;
}

.employer-applicants-page .employer-section-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 0;
    padding: 14px 16px;
}

.employer-applicants-page .employer-section-hero h3 {
    margin: 2px 0 2px;
    font-size: 24px;
    line-height: 1.2;
}

.employer-applicants-page .employer-section-hero p {
    margin: 0;
    font-size: 13px;
    line-height: 1.4;
}

.employer-applicants-page .employer-section-hero .muted {
    display: none;
}

.employer-applicants-page .employer-section-hero .hero-actions {
    flex: none;
}

.employer-applicants-page .employer-section-hero .small-btn {
    min-height: 34px;
    padding: 7px 10px;
}

.employer-applicant-panel {
    padding: 16px;
}

.employer-applicant-head {
    justify-content: flex-end;
    margin-bottom: 12px;
}

.applicant-status-tabs {
    gap: 8px;
}

.applicant-status-tabs .small-btn {
    min-height: 34px;
    padding: 7px 11px;
}

.auto-submit-ready [data-filter-submit] {
    display: none;
}

.filter-auto-status {
    align-self: center;
    color: var(--muted);
    font-size: 12px;
    font-weight: 650;
    white-space: nowrap;
}

.employer-applicant-filters > .filter-search {
    grid-column: span 4;
}

.employer-applicant-filters > label:nth-child(2),
.employer-applicant-filters > label:nth-child(3),
.employer-applicant-filters > label:nth-child(4),
.employer-applicant-filters > label:nth-child(5) {
    grid-column: span 2;
}

.employer-applicant-filters > label:nth-child(6) {
    grid-column: span 3;
}

.employer-applicant-filters > .primary-btn,
.employer-applicant-filters > .small-btn {
    grid-column: span 2;
}

.employer-applicant-filters input,
.employer-applicant-filters select,
.employer-applicant-filters .primary-btn,
.employer-applicant-filters .small-btn {
    height: 40px;
    min-height: 40px;
    padding-top: 0;
    padding-bottom: 0;
}

@media (max-width: 1200px) and (min-width: 721px) {
    .employer-applicant-filters {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }

    .employer-applicant-filters > .filter-search {
        grid-column: span 6;
    }

    .employer-applicant-filters > label:nth-child(n+2),
    .employer-applicant-filters > .primary-btn,
    .employer-applicant-filters > .small-btn {
        grid-column: span 2;
    }
}

.applicant-list-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}

.applicant-list-summary span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 28px;
    padding: 5px 9px;
    border: 1px solid #dfe8f6;
    border-radius: 999px;
    background: #fff;
    color: #40516b;
    font-size: 12px;
    font-weight: 760;
}

.applicant-list-summary strong {
    color: var(--accent-dark);
}

.application-actions {
    display: grid;
    gap: 10px;
}

.applicant-details {
    grid-column: 1 / -1;
    min-width: 0;
    border-top: 1px solid #e6eef8;
}

.applicant-details > summary {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 10px;
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 820;
    cursor: pointer;
    list-style: none;
}

.applicant-details > summary::-webkit-details-marker {
    display: none;
}

.applicant-details > summary svg {
    width: 15px;
    height: 15px;
    transition: transform 160ms ease;
}

.applicant-details[open] > summary svg {
    transform: rotate(180deg);
}

.applicant-details-body {
    display: grid;
    gap: 10px;
    padding-top: 10px;
}

.applicant-secondary-tags:empty {
    display: none;
}

.applicant-status-details {
    border: 1px solid #dfe8f6;
    border-radius: 8px;
    background: #fff;
}

.applicant-status-details summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 10px 11px;
    color: #334155;
    font-size: 12px;
    font-weight: 850;
    cursor: pointer;
    list-style: none;
}

.applicant-status-details summary::-webkit-details-marker {
    display: none;
}

.applicant-status-details summary svg {
    width: 15px;
    height: 15px;
    color: var(--accent-dark);
    transition: transform 160ms ease;
}

.applicant-status-details[open] summary svg {
    transform: rotate(180deg);
}

.applicant-status-controls {
    display: grid;
    gap: 8px;
    padding: 0 11px 11px;
}

.applicant-review-summary {
    display: grid;
    gap: 9px;
    padding: 11px;
    border: 1px solid #dfe8f6;
    border-radius: 8px;
    background: #f8fbff;
}

.applicant-review-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    color: #334155;
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
}

.applicant-progress-steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
}

.applicant-progress-steps span {
    display: flex;
    align-items: center;
    gap: 5px;
    min-width: 0;
    color: #7b8798;
    font-size: 11px;
    font-weight: 760;
}

.applicant-progress-steps span.complete {
    color: #147a43;
}

.applicant-progress-steps span.current {
    color: #875200;
}

.applicant-progress-steps svg {
    width: 14px;
    height: 14px;
    flex: none;
}

.applicant-interview-summary {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-top: 8px;
    border-top: 1px solid #dfe8f6;
}

.applicant-interview-summary > svg {
    width: 17px;
    height: 17px;
    flex: none;
    color: var(--accent-dark);
}

.applicant-interview-summary span:nth-child(2) {
    display: grid;
    flex: 1;
    min-width: 0;
}

.applicant-interview-summary small {
    color: var(--muted);
    font-size: 11px;
}

.application-actions > .primary-btn,
.application-actions > .small-btn {
    justify-self: flex-start;
}

.compact-actions {
    align-content: start;
}

.status-update-form {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

.status-update-form input,
.status-update-form select {
    min-height: 36px;
    border-radius: 8px;
    font-size: 13px;
}

.reschedule-inline-form {
    grid-column: 2 / -1;
    margin-top: 10px;
    padding: 10px;
    border: 1px solid #fed7aa;
    border-radius: 8px;
    background: #fff8ed;
}

.reschedule-inline-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(180px, 1fr));
    gap: 10px;
    align-items: end;
}

.reschedule-form-head {
    grid-column: 1 / -1;
    display: flex;
    align-items: flex-start;
    gap: 9px;
    color: #7c4a03;
}

.reschedule-form-head svg {
    width: 18px;
    flex: 0 0 auto;
}

.reschedule-form-head strong,
.reschedule-form-head span,
.reschedule-inline-form label {
    display: block;
}

.reschedule-form-head strong {
    color: #5f3700;
    font-size: 13px;
}

.reschedule-form-head span {
    margin-top: 2px;
    font-size: 12px;
}

.reschedule-inline-form label {
    color: #5f3700;
    font-size: 12px;
    font-weight: 800;
}

.reschedule-inline-form input {
    width: 100%;
    margin-top: 5px;
}

.reschedule-inline-form button {
    justify-self: start;
}

.applicant-context {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
    color: #40516b;
    font-size: 12px;
    font-weight: 760;
}

.applicant-context-compact {
    gap: 6px;
    margin-top: 8px;
    color: #62728a;
    font-size: 11px;
    font-weight: 700;
}

.applicant-context-compact span {
    min-height: 25px;
    padding: 4px 7px;
}

.applicant-context span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 28px;
    padding: 5px 8px;
    border: 1px solid #dfe8f6;
    border-radius: 999px;
    background: #f8fbff;
}

.applicant-context svg {
    width: 14px;
    height: 14px;
    color: var(--accent-dark);
}

.applicant-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.65fr);
    gap: 16px;
    align-items: start;
}

.applicant-profile-hero {
    display: grid;
    grid-template-columns: 84px minmax(0, 1fr) minmax(150px, 0.28fr);
    align-items: center;
    gap: 16px;
}

.applicant-profile-hero h3 {
    margin: 2px 0 4px;
    font-size: 26px;
    font-weight: 850;
}

.applicant-profile-hero p,
.applicant-summary {
    margin: 0;
    color: var(--muted);
    line-height: 1.55;
}

.applicant-job-panel {
    position: sticky;
    top: 18px;
}

.applicant-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.applicant-facts span {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 4px 8px;
    align-items: center;
    padding: 10px;
    border: 1px solid #dfe8f6;
    border-radius: 8px;
    background: #f8fbff;
}

.applicant-facts svg {
    grid-row: span 2;
    width: 32px;
    height: 32px;
    padding: 7px;
    border-radius: 8px;
    background: #e7f1ff;
    color: var(--accent-dark);
}

.applicant-facts strong {
    min-width: 0;
    overflow-wrap: anywhere;
    font-size: 13px;
}

.applicant-facts small {
    color: var(--muted);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.applicant-review-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.7fr) minmax(320px, 1fr);
    gap: 16px;
    align-items: start;
}

.applicant-review-grid h4 {
    margin: 0 0 8px;
    font-size: 15px;
    font-weight: 850;
}

.applicant-review-grid p {
    margin: 0;
    color: var(--muted);
    line-height: 1.55;
}

.applicant-file-list {
    display: grid;
    gap: 10px;
}

.applicant-file-row {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    padding: 12px;
    border: 1px solid #dfe8f6;
    border-radius: 8px;
    background: #fbfdff;
}

.applicant-file-row > svg {
    width: 38px;
    height: 38px;
    padding: 9px;
    border-radius: 8px;
    background: #e7f1ff;
    color: var(--accent-dark);
}

.applicant-file-row strong {
    display: block;
    overflow-wrap: anywhere;
}

.applicant-file-row span {
    display: block;
    margin-top: 3px;
    color: var(--muted);
    font-size: 12px;
}

.applicant-signal {
    align-items: flex-start;
}

.applicant-wide-panel {
    grid-column: 1 / -1;
}

.interview-row-card {
    grid-template-columns: 58px minmax(0, 1fr) minmax(240px, 0.6fr);
    align-items: center;
}

.meeting-link-chip,
.interview-contact-row a,
.interview-contact-row span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 30px;
    border-radius: 999px;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 850;
    line-height: 1.2;
    text-decoration: none;
    overflow-wrap: anywhere;
}

.meeting-link-chip {
    border: 1px solid #bfe4cc;
    background: #ecfdf3;
    color: #08743f;
}

.meeting-link-chip:hover {
    border-color: #8ed3a7;
    background: #dcf8e9;
    color: #065f34;
}

.meeting-link-chip svg,
.interview-contact-row svg {
    width: 14px;
    height: 14px;
    flex: none;
}

.interview-contact-row {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 9px;
}

.interview-contact-row a,
.interview-contact-row span {
    border: 1px solid #d8e7ff;
    background: #f4f8ff;
    color: #334155;
}

.interview-contact-row a:hover {
    border-color: #b8d5ff;
    background: #eaf3ff;
    color: var(--accent-dark);
}

.usage-list {
    display: grid;
    gap: 10px;
}

.usage-list article {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px;
}

.analytics-status-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: linear-gradient(180deg, #fff, #fbfdff);
    color: inherit;
    text-decoration: none;
    box-shadow: 0 12px 28px rgba(19, 32, 51, 0.06);
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.analytics-status-card:hover,
.analytics-status-card:focus-visible {
    border-color: rgba(36, 107, 219, .35);
    box-shadow: 0 14px 30px rgba(25, 103, 210, .12);
    color: inherit;
    transform: translateY(-1px);
}

.usage-list span {
    color: var(--muted);
    font-weight: 780;
}

.usage-list strong {
    font-size: 22px;
}

.usage-list.compact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.subscription-coming-soon { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:18px; padding:22px; border:1px solid #bed5ff; border-radius:14px; background:linear-gradient(135deg,#f8fbff,#eef5ff); }
.subscription-coming-icon { display:grid; place-items:center; width:50px; height:50px; border-radius:13px; background:#246bdb; color:#fff; box-shadow:0 8px 20px rgba(36,107,219,.2); }
.subscription-coming-icon svg { width:24px; height:24px; }
.subscription-availability { display:inline-flex; margin-bottom:5px; color:#195fc5; font-size:11px; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.subscription-coming-soon h3 { margin:0; color:#172033; font-size:19px; }
.subscription-coming-soon p { max-width:820px; margin:6px 0 0; color:var(--muted); font-size:13px; line-height:1.55; }
.subscription-status-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.subscription-status-list article { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px; border:1px solid #e3eaf4; border-radius:10px; background:#fbfdff; }
.subscription-status-list article > span { display:flex; align-items:center; gap:9px; color:#64748b; }
.subscription-status-list svg { width:17px; color:#246bdb; }
.subscription-status-list small { font-size:12px; font-weight:750; }
.subscription-status-list strong { color:#344054; font-size:12px; text-align:right; }
.subscription-preview-panel { margin-top:16px; }
.subscription-feature-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.subscription-feature-grid article { display:flex; align-items:flex-start; gap:11px; padding:15px; border:1px solid #e3eaf4; border-radius:11px; background:#fbfdff; }
.subscription-feature-grid article > svg { width:20px; flex:0 0 auto; color:#246bdb; }
.subscription-feature-grid article div { display:grid; gap:4px; }
.subscription-feature-grid strong { color:#27324a; font-size:13px; }
.subscription-feature-grid span { color:var(--muted); font-size:11px; line-height:1.5; }

.employer-analytics-grid {
    grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
}

.employer-jobs-layout {
    display: grid;
    gap: 16px;
}

.employer-manage-jobs-layout {
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.employer-manage-jobs-layout:has(.employer-job-filter-panel:not([open])) {
    grid-template-columns: 68px minmax(0, 1fr);
}

.employer-job-filter-panel {
    display: grid;
    gap: 18px;
    width: 52px;
    min-height: 430px;
    padding: 0 16px 0 0;
    border-right: 1px solid #dde5ef;
    transition: width .18s ease;
}

.employer-job-filter-panel[open] {
    width: 100%;
}

.filter-panel-title,
.filter-group-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    color: #27364f;
}

.filter-panel-title {
    min-height: 48px;
    padding: 0 0 12px;
    border-bottom: 1px solid #e4ebf4;
    font-size: 15px;
    cursor: pointer;
    list-style: none;
}

.filter-panel-title::-webkit-details-marker {
    display: none;
}

.filter-panel-title span {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.employer-job-filter-panel:not([open]) .filter-panel-title {
    min-height: 174px;
    padding: 12px 0;
    flex-direction: column;
    justify-content: center;
    border-bottom: 0;
}

.employer-job-filter-panel:not([open]) .filter-panel-title span {
    flex-direction: column;
}

.employer-job-filter-panel:not([open]) .filter-panel-title strong {
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    font-size: 12px;
}

.filter-panel-chevron {
    transition: transform .16s ease;
}

.employer-job-filter-panel[open] .filter-panel-chevron {
    transform: rotate(180deg);
}

.employer-job-filter-panel:not([open]) .managed-filter-form {
    display: none;
}

.filter-panel-title svg,
.filter-group-title svg {
    width: 18px;
    color: #7b8aa2;
}

.managed-filter-form,
.filter-group {
    display: grid;
    gap: 14px;
}

.managed-search {
    position: relative;
    display: grid;
    gap: 7px;
    color: #69758a;
    font-size: 12px;
    font-weight: 800;
}

.managed-search input {
    min-height: 46px;
    width: 100%;
    padding: 0 38px 0 12px;
    border: 1px solid #dbe4ef;
    border-radius: 4px;
    background: #fff;
    color: #27364f;
}

.managed-search.compact input {
    min-height: 42px;
}

.managed-search svg {
    position: absolute;
    right: 12px;
    bottom: 13px;
    width: 17px;
    color: #8a98ad;
}

.admin-employer-search {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 14px;
}

.admin-employer-search label {
    display: grid;
    flex: 1;
    gap: 7px;
    max-width: 620px;
    color: #27364f;
    font-size: 13px;
    font-weight: 850;
}

.admin-employer-search strong {
    color: #64748b;
    font-size: 13px;
    white-space: nowrap;
}

.admin-employer-empty {
    margin-top: 14px;
}

.filter-group {
    padding: 18px 0;
    border-top: 1px solid #e4ebf4;
}

.filter-group-title {
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    font-size: 14px;
    font-weight: 900;
    text-align: left;
    cursor: pointer;
    list-style: none;
}

.filter-group-title::-webkit-details-marker {
    display: none;
}

.filter-group-title svg {
    transition: transform .16s ease;
}

.filter-group[open] .filter-group-title svg {
    transform: rotate(180deg);
}

.filter-group-body {
    display: grid;
    gap: 14px;
}

.filter-group:not([open]) {
    gap: 0;
}

.filter-check {
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr) auto;
    gap: 9px;
    align-items: center;
    color: #43516a;
    font-size: 13px;
}

.filter-check input,
.select-all-control input,
.job-card-select input {
    width: 16px;
    height: 16px;
    accent-color: #2368c4;
}

.filter-check strong {
    color: #6f7e94;
    font-size: 12px;
}

.filter-actions {
    display: flex;
    gap: 8px;
    padding-top: 2px;
}

.employer-managed-list {
    min-width: 0;
    display: grid;
    gap: 14px;
    align-content: start;
}

.managed-tabs {
    display: flex;
    gap: 28px;
    min-height: 48px;
    align-items: center;
    border-bottom: 1px solid #e2e9f2;
}

.managed-tabs a {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #617089;
    font-size: 13px;
    font-weight: 850;
}

.managed-tabs a.active {
    color: #13213a;
}

.managed-tabs a.active::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 2px;
    background: #e22e58;
}

.managed-list-toolbar,
.managed-page-strip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 13px 16px;
    border: 1px solid #dfe7f1;
    border-radius: 8px;
    background: #fff;
}

.bulk-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
}

.select-all-control,
.icon-text-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 32px;
    border: 0;
    background: transparent;
    color: #31425d;
    font-size: 13px;
    font-weight: 800;
}

.icon-text-btn svg {
    width: 17px;
    color: #8190a6;
}

.managed-sort-form label,
.managed-page-strip {
    color: #56647a;
    font-size: 13px;
}

.managed-sort-form label {
    display: grid;
    gap: 7px;
    min-width: 190px;
    font-weight: 800;
    text-transform: uppercase;
}

.managed-sort-form select,
.managed-page-strip select {
    min-height: 40px;
    width: 100%;
    padding: 0 12px;
    border: 1px solid #dbe4ef;
    border-radius: 6px;
    background: #fff;
    color: #32415e;
    font-size: 14px;
    font-weight: 700;
}

.managed-page-strip {
    justify-content: flex-end;
    padding: 6px 0;
    border: 0;
    background: transparent;
}

.managed-page-strip form {
    margin: 0;
}

.managed-job-card {
    display: grid;
    grid-template-columns: 18px minmax(220px, 1fr) minmax(250px, 0.9fr) minmax(190px, auto) auto;
    gap: 12px;
    align-items: start;
    min-width: 0;
    padding: 15px 14px;
    border: 1px solid #e2eaf4;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 8px 18px rgba(36, 48, 70, 0.09);
}

.managed-job-info {
    min-width: 0;
}

.managed-job-info h4 {
    margin: 0 0 4px;
    color: #1e3b68;
    font-size: 15px;
    font-weight: 900;
    overflow-wrap: anywhere;
}

.managed-job-location,
.managed-job-meta span,
.managed-job-metrics span {
    color: #334762;
    font-size: 12px;
}

.managed-job-badge {
    display: table;
    margin-top: 8px;
    padding: 2px 6px;
    border-radius: 4px;
    background: #f1f5f9;
    color: #27405f;
    font-size: 11px;
    font-weight: 750;
}

.managed-job-metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.managed-job-metrics a {
    display: grid;
    gap: 3px;
    color: #1d66c2;
}

.managed-job-metrics strong {
    color: #1d66c2;
    font-size: 15px;
    font-weight: 950;
}

.managed-job-metrics em {
    display: inline-flex;
    align-items: center;
    min-height: 18px;
    padding: 1px 5px;
    border-radius: 999px;
    background: #2368c4;
    color: #fff;
    font-size: 10px;
    font-style: normal;
}

.managed-job-meta {
    display: grid;
    gap: 4px;
    align-self: end;
    text-align: right;
}

.managed-job-actions {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

.job-icon-action {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: #8290a3;
}

.job-icon-action:hover,
.job-icon-action:focus-visible {
    background: #eef4fb;
    color: #2368c4;
}

.job-icon-action svg {
    width: 18px;
}

.managed-more-menu {
    position: relative;
}

.managed-more-menu summary {
    list-style: none;
    cursor: pointer;
}

.managed-more-menu summary::-webkit-details-marker {
    display: none;
}

.managed-more-options {
    position: absolute;
    right: 0;
    top: calc(100% + 8px);
    z-index: 30;
    display: grid;
    gap: 2px;
    min-width: 170px;
    padding: 7px;
    border: 1px solid #dce4ef;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .16);
}

.managed-more-options a,
.managed-more-options button {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    min-height: 34px;
    padding: 7px 9px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: #344054;
    font-size: 12px;
    font-weight: 800;
    text-align: left;
}

.managed-more-options a:hover,
.managed-more-options button:hover {
    background: #f3f7fc;
}

.managed-more-options button:disabled {
    color: #a3adbd;
    cursor: not-allowed;
}

.managed-more-options svg {
    width: 15px;
}

.managed-more-options form {
    margin: 0;
}

.managed-pagination svg {
    width: 15px;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

@media (max-width: 1100px) {
    .employer-manage-jobs-layout {
        grid-template-columns: 1fr;
    }

    .employer-job-filter-panel {
        width: 100%;
        padding-right: 0;
        padding-bottom: 16px;
        border-right: 0;
        border-bottom: 1px solid #dde5ef;
    }

    .managed-job-card {
        grid-template-columns: 18px minmax(0, 1fr) auto;
    }

    .managed-job-metrics,
    .managed-job-meta {
        grid-column: 2 / -1;
    }

    .managed-job-meta {
        text-align: left;
    }
}

@media (max-width: 720px) {
    .managed-list-toolbar,
    .managed-page-strip,
    .bulk-actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .managed-sort-form,
    .managed-sort-form label,
    .managed-page-strip form,
    .managed-page-strip select {
        width: 100%;
    }

    .managed-job-card {
        grid-template-columns: 18px minmax(0, 1fr);
    }

    .managed-job-actions {
        grid-column: 2;
        justify-content: flex-start;
    }

    .managed-job-metrics {
        grid-template-columns: 1fr;
    }
}

.employer-job-list-panel {
    min-width: 0;
}

.employer-job-list {
    display: grid;
    gap: 12px;
}

.employer-job-card {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) auto;
    gap: 10px 14px;
    min-width: 0;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: linear-gradient(180deg, #fff, #fbfdff);
    box-shadow: 0 12px 28px rgba(19, 32, 51, 0.06);
}

.employer-job-main {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: 52px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
}

.interview-scheduling-form {
    padding: 12px;
    border: 1px solid #cfe0fb;
    border-radius: 9px;
    background: #f8fbff;
}

.interview-scheduling-form[hidden] {
    display: none !important;
}

.employer-job-main > .company-mark {
    width: 52px;
    height: 52px;
    font-size: 18px;
}

.employer-job-main h4 {
    margin: 3px 0 5px;
    font-size: 17px;
    font-weight: 850;
    overflow-wrap: anywhere;
}

.employer-job-main p {
    margin: 0;
    color: var(--muted);
    font-size: 13px;
}

.employer-job-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    color: var(--muted);
    font-size: 13px;
}

.employer-job-meta span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.employer-job-meta svg {
    width: 15px;
    height: 15px;
    color: var(--accent);
}

.job-status-row,
.employer-job-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.employer-job-skills {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    min-width: 0;
    padding: 9px 10px;
    border-radius: 8px;
    background: var(--panel-2);
}

.employer-job-skills > div {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.skill-label {
    padding-top: 4px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
}

.employer-job-skills .tag {
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    line-height: 1.35;
}

.employer-job-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
    padding-top: 0;
}

.employer-job-card .status.danger {
    border: 1px solid #f4aaa4;
    background: #ffe8e6;
    color: #a61b12;
    font-weight: 900;
}

.employer-job-actions form {
    margin: 0;
}

.job-status-dropdown {
    position: relative;
}

.job-status-dropdown summary {
    list-style: none;
}

.job-status-dropdown summary::-webkit-details-marker {
    display: none;
}

.job-status-trigger {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 8px 13px;
    border: 1px solid #b8c2d2;
    border-radius: 8px;
    background: #fff;
    color: #253044;
    font-weight: 800;
    cursor: pointer;
}

.job-status-trigger svg {
    width: 16px;
    transition: transform .18s ease;
}

.job-status-dropdown[open] .job-status-trigger {
    border-color: #246bdb;
    box-shadow: 0 0 0 3px rgba(36, 107, 219, .12);
}

.job-status-dropdown[open] .job-status-trigger svg {
    transform: rotate(180deg);
}

.job-status-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: #98a2b3;
    flex: 0 0 auto;
}

.job-status-dot.open,
.job-status-trigger.open .job-status-dot {
    background: #16803c;
}

.job-status-dot.paused,
.job-status-trigger.paused .job-status-dot {
    background: #b76e00;
}

.job-status-dot.closed,
.job-status-trigger.closed .job-status-dot {
    background: #b42318;
}

.job-status-menu {
    position: absolute;
    right: 0;
    top: calc(100% + 8px);
    z-index: 35;
    display: grid;
    gap: 4px;
    min-width: 178px;
    padding: 8px;
    border: 1px solid #dce4ef;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .18);
}

.job-status-option {
    display: grid;
    grid-template-columns: 18px 10px 1fr;
    align-items: center;
    gap: 8px;
    width: 100%;
    min-height: 38px;
    padding: 8px 10px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #344054;
    font-weight: 750;
    text-align: left;
}

.job-status-option:hover,
.job-status-option:focus {
    background: #f2f5f9;
    outline: 0;
}

.job-status-option.selected {
    background: #f7f8fb;
    color: #182230;
}

.job-status-check {
    color: #172033;
    font-weight: 900;
}

.job-logo-upload-form {
    display: grid;
    justify-items: end;
    gap: 4px;
    margin: 0;
}

.logo-upload-status {
    color: var(--muted);
    font-size: 11px;
    font-weight: 750;
}

.logo-upload-status.pending {
    color: #9a6700;
}

.logo-upload-status.verified {
    color: #16803c;
}

.logo-upload-status.rejected {
    color: #b42318;
}

.logo-file-picker {
    cursor: pointer;
}

.logo-file-picker input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.job-edit-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
    align-items: start;
}

.job-edit-panel {
    min-width: 0;
}

.job-edit-panel .premium-form {
    max-width: none;
}

.edit-notice {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    margin-bottom: 16px;
    padding: 12px;
    border: 1px solid #cfe2ff;
    border-radius: 8px;
    background: #eef5ff;
    color: var(--accent-dark);
    font-size: 13px;
    font-weight: 720;
    line-height: 1.45;
}

.edit-notice svg {
    width: 18px;
    flex: none;
}

.job-edit-aside {
    position: sticky;
    top: 18px;
}

.job-import-accordion {
    padding: 0;
    overflow: hidden;
}

.job-import-accordion summary {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    min-height: 74px;
    padding: 18px 20px;
    cursor: pointer;
    list-style: none;
}

.job-import-accordion summary::-webkit-details-marker {
    display: none;
}

.job-import-accordion summary:focus-visible {
    outline: 3px solid rgba(37, 99, 235, 0.22);
    outline-offset: -3px;
}

.job-import-accordion summary > svg {
    width: 19px;
    height: 19px;
    color: #64748b;
    transition: transform 160ms ease;
}

.job-import-accordion[open] summary {
    border-bottom: 1px solid var(--line);
    background: #f8fbff;
}

.job-import-accordion[open] summary > svg {
    transform: rotate(180deg);
}

.job-import-summary-icon {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid #cfe0ff;
    border-radius: 8px;
    background: #eef5ff;
    color: var(--accent-dark);
}

.job-import-summary-icon svg {
    width: 19px;
    height: 19px;
}

.job-import-accordion strong {
    display: block;
    color: var(--text);
    font-size: 15px;
    font-weight: 860;
}

.job-import-accordion small {
    display: block;
    margin-top: 3px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 650;
    line-height: 1.4;
}

.edit-summary-card {
    display: grid;
    gap: 14px;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: linear-gradient(180deg, #fff, #fbfdff);
}

.edit-summary-card h3 {
    margin: 4px 0;
    font-size: 20px;
    font-weight: 860;
    overflow-wrap: anywhere;
}

.edit-summary-card p {
    margin: 0;
    color: var(--muted);
    font-size: 13px;
}

.edit-side-actions {
    display: grid;
    gap: 8px;
    margin-top: 12px;
}

.candidate-workspace-page {
    display: grid;
    gap: 18px;
}

.candidate-section-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(235, 248, 255, 0.94)),
        radial-gradient(circle at 100% 0%, rgba(19, 164, 99, 0.14), transparent 34%);
    border-color: rgba(190, 207, 230, 0.78);
}

.candidate-section-hero h3 {
    margin: 4px 0;
    font-size: 28px;
    font-weight: 860;
}

.candidate-section-hero p {
    margin: 0;
    color: var(--muted);
}

.candidate-hero-card {
    display: grid;
    grid-template-columns: 86px minmax(0, 1fr) 210px;
    gap: 16px;
    align-items: center;
    padding: 18px;
}

.candidate-hero-card.compact {
    grid-template-columns: 86px minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    box-shadow: none;
}

.candidate-hero-card.compact > div:last-child {
    min-width: 0;
}

.candidate-hero-card h3 {
    margin: 3px 0 5px;
    font-size: 24px;
    font-weight: 860;
    line-height: 1.15;
    overflow-wrap: break-word;
}

.candidate-hero-card p {
    margin: 0 0 10px;
    color: var(--muted);
    line-height: 1.45;
    overflow-wrap: break-word;
}

.candidate-profile-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 12px 0;
}

.candidate-profile-facts span {
    display: grid;
    grid-template-columns: 18px auto minmax(0, 1fr);
    align-items: center;
    gap: 6px;
    min-width: 0;
    padding: 8px 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fbfdff;
    color: var(--text);
    font-size: 13px;
    font-weight: 760;
    overflow-wrap: anywhere;
}

.candidate-hero-card.compact .candidate-profile-facts {
    grid-template-columns: 1fr;
    gap: 10px;
    margin: 14px 0;
}

.candidate-hero-card.compact .candidate-profile-facts span {
    grid-template-columns: 18px minmax(74px, auto) minmax(0, 1fr);
    padding: 10px 12px;
    overflow-wrap: break-word;
    word-break: normal;
}

.candidate-hero-card.compact .candidate-profile-facts strong {
    white-space: nowrap;
}

.candidate-profile-facts strong {
    color: var(--muted);
    font-size: 11px;
    text-transform: uppercase;
}

.candidate-profile-facts svg {
    width: 16px;
    height: 16px;
    color: var(--accent);
}

.profile-score-card {
    display: grid;
    gap: 8px;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fbfdff;
}

.profile-score-card strong {
    font-size: 34px;
    line-height: 1;
}

.profile-score-card span {
    color: var(--muted);
    font-size: 12px;
    font-weight: 820;
}

.profile-score-card p {
    margin: 0;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.4;
}

.meter {
    width: 100%;
    height: 8px;
    overflow: hidden;
    border-radius: 999px;
    background: #e8edf5;
}

.meter span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #137a3f, #0d6efd);
}

.candidate-profile-editor-hero {
    padding: 0;
    overflow: hidden;
}

.profile-editor-summary {
    grid-template-columns: minmax(150px, 180px) minmax(0, 1fr) minmax(180px, 240px);
    align-items: center;
    background:
        linear-gradient(135deg, #ffffff 0%, #f7fbff 54%, #eef8f0 100%);
}

.profile-photo-stack {
    display: grid;
    justify-items: center;
    gap: 10px;
}

.profile-photo-trigger {
    display: grid;
    place-items: center;
    padding: 4px;
    border: 1px solid transparent;
    border-radius: 999px;
    background: transparent;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.profile-photo-trigger:hover,
.profile-photo-trigger:focus-visible {
    border-color: #b9d5ff;
    box-shadow: 0 0 0 4px rgba(13, 110, 253, 0.12);
    transform: translateY(-1px);
}

.photo-click-hint {
    color: var(--muted);
    font-size: 11px;
    font-weight: 820;
    text-align: center;
    text-transform: uppercase;
}

.profile-editor-summary .profile-score-card {
    background: #ffffff;
    box-shadow: 0 12px 30px rgba(19, 32, 51, 0.08);
}

.profile-meta-line {
    display: grid;
    grid-template-columns: repeat(3, minmax(150px, 1fr));
    gap: 10px;
    margin-top: 12px;
}

.profile-meta-card {
    display: grid;
    gap: 6px;
    align-content: start;
    min-height: 124px;
    padding: 12px;
    border: 1px solid #dfe8f6;
    border-radius: 8px;
    background: #fff;
    color: var(--muted);
    font-size: 12px;
    font-weight: 760;
    overflow-wrap: anywhere;
    box-shadow: 0 10px 24px rgba(19, 32, 51, 0.06);
}

.profile-meta-card.role {
    background: linear-gradient(180deg, #ffffff, #f4f8ff);
}

.profile-meta-card.location {
    background: linear-gradient(180deg, #ffffff, #f2fbf6);
}

.profile-meta-card.notice {
    background: linear-gradient(180deg, #ffffff, #fff8ed);
}

.profile-meta-card small {
    color: var(--muted);
    font-size: 10px;
    font-weight: 860;
    line-height: 1;
    text-transform: uppercase;
}

.profile-meta-card strong {
    color: var(--text);
    font-size: 14px;
    font-weight: 850;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.profile-meta-card svg {
    width: 18px;
    height: 18px;
    color: var(--accent);
    flex: none;
}

.profile-meta-card em {
    justify-self: start;
    align-self: end;
    margin-top: 4px;
    padding: 5px 10px;
    border-radius: 999px;
    font-size: 11px;
    font-style: normal;
    font-weight: 850;
}

.profile-meta-card.role em {
    background: #e7f1ff;
    color: #084298;
}

.profile-meta-card.location em {
    background: #e9f8ef;
    color: #137a3f;
}

.profile-meta-card.notice em {
    background: #fff1dc;
    color: #875200;
}

.profile-photo-modal .modal-content {
    overflow: hidden;
    border: 0;
    border-radius: 8px;
    background: #171c22;
    color: #f8fafc;
}

.profile-photo-modal .modal-header {
    border-bottom-color: rgba(255, 255, 255, 0.12);
}

.profile-photo-modal .modal-title {
    font-size: 20px;
    font-weight: 850;
}

.profile-photo-modal .btn-close {
    filter: invert(1) grayscale(1);
    opacity: 0.85;
}

.profile-photo-modal .modal-body {
    display: grid;
    justify-items: center;
    gap: 22px;
    padding: 28px;
}

.profile-photo-preview {
    display: grid;
    place-items: center;
}

.candidate-avatar.photo-modal-avatar {
    width: min(280px, 68vw);
    height: min(280px, 68vw);
    font-size: 76px;
    background: #0b0f14;
    color: #dbeafe;
}

.profile-photo-modal-form {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) auto;
    gap: 12px;
    align-items: end;
    width: min(620px, 100%);
}

.profile-photo-modal-form label {
    display: grid;
    gap: 6px;
    color: #d8dee7;
    font-size: 12px;
    font-weight: 820;
    text-transform: uppercase;
}

.profile-photo-modal-form input {
    width: 100%;
    min-height: 42px;
    padding: 8px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    background: #232a32;
    color: #f8fafc;
    font-size: 13px;
    text-transform: none;
}

.candidate-profile-layout {
    align-items: start;
}

.candidate-profile-form-panel .premium-form {
    gap: 14px;
}

.experience-input-group {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 8px 12px;
}

.experience-input-group > span,
.experience-input-group > small {
    grid-column: 1 / -1;
}

.experience-input-group > span {
    color: #334155;
    font-size: 12px;
    font-weight: 820;
}

.experience-input-group label {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
}

.experience-input-group strong {
    color: #64748b;
    font-size: 12px;
}

.experience-input-group small {
    color: var(--muted);
    font-size: 11px;
    font-weight: 650;
}

.skill-tag-picker {
    display: grid;
    gap: 8px;
    padding: 10px;
    border: 1px solid #d7e7ff;
    border-radius: 8px;
    background: #fbfdff;
}

.skill-picker-source {
    display: none;
}

.skill-tag-list,
.skill-suggestion-seeds {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.skill-tag,
.skill-suggestion-chip,
.skill-suggestion-option {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border: 1px solid #93c5fd;
    border-radius: 999px;
    background: #fff;
    color: #0f5ea8;
    font-size: 12px;
    font-weight: 760;
    line-height: 1.25;
}

.skill-tag,
.skill-suggestion-chip {
    min-height: 28px;
    padding: 4px 9px;
}

.skill-tag:hover,
.skill-suggestion-chip:hover,
.skill-suggestion-option:hover {
    border-color: #2563eb;
    background: #eff6ff;
}

.skill-tag svg,
.skill-suggestion-chip svg,
.skill-suggestion-option svg,
.skill-tag-search svg {
    width: 14px;
    height: 14px;
    flex: 0 0 auto;
}

.skill-empty {
    color: var(--muted);
    font-size: 12px;
    font-weight: 650;
}

.skill-tag-search {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    padding: 0 10px;
    border: 1px solid #dbe6f5;
    border-radius: 8px;
    background: #fff;
}

.skill-tag-search input {
    min-height: 36px;
    padding: 8px 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.skill-suggestion-panel {
    display: grid;
    gap: 5px;
    max-height: 220px;
    overflow: auto;
    padding: 6px;
    border: 1px solid #dbe6f5;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.12);
}

.skill-suggestion-option {
    width: 100%;
    justify-content: flex-start;
    min-height: 32px;
    padding: 6px 9px;
    border-color: transparent;
    border-radius: 7px;
    text-align: left;
}

.rich-text-field {
    display: grid;
    gap: 8px;
}

.rich-text-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 8px;
    border: 1px solid var(--line);
    border-radius: 10px 10px 0 0;
    background: #f8fafc;
}

.rich-text-toolbar button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 32px;
    border: 1px solid transparent;
    border-radius: 7px;
    background: #fff;
    color: #334155;
    font-size: 13px;
    font-weight: 900;
}

.rich-text-toolbar select,
.rich-color-control {
    height: 32px;
    border: 1px solid transparent;
    border-radius: 7px;
    background: #fff;
    color: #334155;
    font-size: 12px;
    font-weight: 800;
}

.rich-text-toolbar select {
    width: auto;
    min-width: 84px;
    padding: 0 28px 0 10px;
}

.rich-color-control {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    padding: 0;
    cursor: pointer;
}

.rich-color-control input[type="color"] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    opacity: 0;
    cursor: pointer;
}

.rich-highlight-control {
    background: #fff8cf;
}

.rich-highlight-control svg {
    color: #9a6b00;
}

.rich-text-toolbar button:hover,
.rich-text-toolbar button:focus-visible,
.rich-text-toolbar select:hover,
.rich-text-toolbar select:focus-visible,
.rich-color-control:hover,
.rich-color-control:focus-within {
    border-color: #bdd3f4;
    color: #1d4ed8;
}

.rich-text-toolbar svg {
    width: 17px;
    height: 17px;
}

.rich-text-editor {
    min-height: 220px;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 0 0 10px 10px;
    background: #fff;
    color: #172033;
    line-height: 1.55;
    outline: none;
    overflow-wrap: anywhere;
    text-transform: none;
    font-family: "Times New Roman", Times, serif;
    font-weight: 500;
}

.rich-text-editor *,
.rich-job-description,
.rich-job-description * {
    text-transform: none;
    font-family: "Times New Roman", Times, serif;
}

.rich-text-editor:focus {
    border-color: #2563eb;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}

.rich-text-editor.field-invalid {
    border-color: #dc2626;
}

.rich-text-editor:empty::before {
    content: attr(data-placeholder);
    color: #94a3b8;
}

.rich-text-editor p,
.rich-job-description p {
    margin: 0 0 10px;
}

.rich-text-editor h2,
.rich-text-editor h3,
.rich-text-editor h4,
.rich-job-description h2,
.rich-job-description h3,
.rich-job-description h4 {
    margin: 14px 0 8px;
    color: #172033;
    font-weight: 900;
}

.rich-text-editor ul,
.rich-text-editor ol,
.rich-job-description ul,
.rich-job-description ol {
    margin: 0 0 12px 20px;
    padding: 0;
}

.rich-text-editor li,
.rich-job-description li {
    margin: 4px 0;
}

.salary-budget-group {
    display: grid;
    grid-template-columns: minmax(170px, 1.25fr) minmax(140px, 0.8fr) auto minmax(140px, 0.8fr) minmax(140px, 0.8fr);
    gap: 12px;
    align-items: start;
    padding: 18px 0 6px;
}

.salary-budget-group > span {
    grid-column: 1 / -1;
    color: #242933;
    font-size: 15px;
    font-weight: 900;
}

.salary-budget-group > p {
    grid-column: 1 / -1;
    margin: -5px 0 8px;
    color: #6f7682;
    font-size: 13px;
    line-height: 1.45;
}

.salary-budget-group label {
    display: grid;
    gap: 7px;
}

.salary-budget-group label > strong {
    color: #30343b;
    font-size: 13px;
    font-weight: 850;
}

.salary-budget-group > em {
    align-self: center;
    margin-top: 31px;
    color: var(--muted);
    font-style: normal;
    font-size: 13px;
    font-weight: 760;
}

.salary-budget-group select {
    min-height: 44px;
    border-radius: 10px;
}

.currency-input {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fff;
}

.currency-input:focus-within {
    border-color: #2563eb;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}

.currency-input > span {
    padding-left: 11px;
    color: #475569;
    font-size: 0;
    font-weight: 820;
}

.currency-input > span::before {
    content: "\20B9";
    font-size: 14px;
}

.currency-input input {
    min-height: 40px;
    border: 0;
    background: transparent;
    box-shadow: none;
}

@media (max-width: 760px) {
    .salary-budget-group {
        grid-template-columns: 1fr;
    }

    .salary-budget-group > em {
        margin-top: 0;
    }
}

.candidate-profile-side {
    display: grid;
    gap: 16px;
    position: sticky;
    top: 18px;
}

.recruiter-preview-card {
    padding: 0 0 16px;
}

.profile-detail-list {
    display: grid;
    gap: 10px;
    margin-top: 4px;
}

.profile-detail-list article {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    padding: 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fbfdff;
}

.profile-detail-list svg {
    width: 18px;
    height: 18px;
    color: var(--good);
}

.profile-detail-list span {
    display: block;
    margin-bottom: 2px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 820;
    text-transform: uppercase;
}

.profile-detail-list strong {
    display: block;
    color: var(--text);
    font-size: 13px;
    font-weight: 780;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.profile-checklist {
    display: grid;
    gap: 8px;
}

.profile-checklist span {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 10px;
    border: 1px dashed #c8d2e1;
    border-radius: 8px;
    background: #fbfdff;
    color: var(--muted);
    font-size: 13px;
    font-weight: 760;
}

.profile-checklist span.complete {
    border-style: solid;
    border-color: #bfe4cc;
    background: #f1fbf5;
    color: var(--good);
}

.profile-checklist svg {
    width: 16px;
    height: 16px;
    flex: none;
}

.candidate-page-grid {
    grid-template-columns: minmax(0, 1fr) minmax(380px, 0.95fr);
    align-items: start;
}

.candidate-list,
.candidate-job-grid {
    display: grid;
    gap: 12px;
}

.candidate-job-grid {
    grid-template-columns: repeat(2, minmax(280px, 1fr));
}

.candidate-job-card,
.candidate-record-card {
    display: grid;
    gap: 12px;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: linear-gradient(180deg, #fff, #fbfdff);
    box-shadow: 0 12px 28px rgba(19, 32, 51, 0.06);
    transition: transform 160ms ease, box-shadow 160ms ease;
}

.candidate-job-card:hover,
.candidate-record-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 36px rgba(19, 32, 51, 0.11);
}

.candidate-job-head {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.candidate-job-head > div:last-child {
    min-width: 0;
}

.apply-guidance {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    padding: 10px;
    border: 1px solid #ffd7a8;
    border-radius: 8px;
    background: #fff8ed;
    color: #875200;
    font-size: 13px;
    font-weight: 760;
}

.apply-guidance span {
    flex: 1 1 180px;
}

.candidate-apply-banner {
    margin-bottom: 12px;
}

.candidate-job-card h4,
.candidate-record-card h4 {
    margin: 0;
    font-size: 17px;
    font-weight: 850;
}

.candidate-job-card p,
.candidate-record-card p {
    margin: 4px 0 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.5;
}

.candidate-record-card .application-company-name {
    color: #334155;
    font-weight: 760;
}

.candidate-job-card .card-actions,
.candidate-job-card .job-card-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 4px;
}

.candidate-record-card {
    grid-template-columns: 44px minmax(0, 1fr);
    align-items: center;
}

.candidate-record-card > div:nth-child(2) {
    min-width: 0;
}

.candidate-record-card .record-actions {
    grid-column: 2;
    justify-content: flex-start;
}

.candidate-record-card .record-actions form {
    margin: 0;
}

.candidate-record-card .record-actions .small-btn,
.candidate-record-card .record-actions .danger-btn,
.candidate-record-card .status-pill {
    white-space: nowrap;
    overflow-wrap: normal;
}

.candidate-application-statuses {
    display: grid;
    gap: 8px;
    margin-top: 10px;
}

.application-search-panel {
    display: grid;
    grid-template-columns: minmax(240px, 1fr) auto;
    gap: 12px;
    align-items: center;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(19, 32, 51, 0.05);
}

.application-search-field {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    margin: 0;
    padding: 0 11px;
    border: 1px solid #dbe6f5;
    border-radius: 8px;
    background: #fbfdff;
}

.application-search-field svg {
    width: 17px;
    height: 17px;
    color: #64748b;
}

.application-search-field input {
    min-height: 40px;
    padding: 9px 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.application-search-panel p {
    margin: 0;
    color: var(--muted);
    font-size: 13px;
    font-weight: 760;
}

.application-search-empty {
    display: grid;
    place-items: center;
    gap: 8px;
    min-height: 150px;
    text-align: center;
}

.application-search-empty[hidden] {
    display: none;
}

.application-search-empty svg {
    color: var(--accent);
}

.interview-filter-panel {
    grid-template-columns: minmax(260px, 1.4fr) minmax(150px, .72fr) minmax(150px, .72fr) minmax(130px, .58fr) minmax(130px, .58fr) minmax(140px, .62fr) auto auto;
    align-items: end;
}

.interview-filter-panel label:not(.application-search-field) {
    display: grid;
    gap: 6px;
    margin: 0;
    min-width: 0;
}

.interview-filter-panel label > span {
    color: #65758d;
    font-size: 11px;
    font-weight: 850;
    line-height: 1;
    text-transform: uppercase;
}

.interview-filter-panel input,
.interview-filter-panel select {
    min-width: 0;
    min-height: 42px;
    border: 1px solid #dbe6f5;
    border-radius: 8px;
    background: #fbfdff;
}

.interview-filter-panel .primary-btn,
.interview-filter-panel .small-btn {
    min-height: 42px;
    justify-content: center;
    white-space: nowrap;
}

.interview-filter-panel p {
    grid-column: 1 / -1;
}

.interview-search-empty {
    min-height: 210px;
}

@media (max-width: 760px) {
    .application-search-panel {
        grid-template-columns: 1fr;
    }
}

.status-context-row {
    display: grid;
    gap: 2px;
    padding: 10px 12px;
    border: 1px solid var(--line);
    border-left-width: 4px;
    border-radius: 8px;
    background: #fff;
}

.status-context-row.good {
    border-color: #bfe4cc;
    border-left-color: #16a34a;
    background: #f3fcf6;
}

.status-context-row.warn {
    border-color: #fed7aa;
    border-left-color: #f59e0b;
    background: #fff8ed;
}

.status-context-row.danger {
    border-color: #fecaca;
    border-left-color: #e11d48;
    background: #fff5f6;
}

.status-context-row.neutral {
    border-left-color: #94a3b8;
    background: #f8fafc;
}

.status-context-label {
    color: var(--muted);
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
}

.status-context-row strong {
    color: #0f172a;
    font-size: 13px;
    font-weight: 900;
}

.status-context-row small {
    color: var(--muted);
    font-size: 12px;
    font-weight: 690;
    line-height: 1.4;
}

.application-chat-thread {
    display: grid;
    gap: 10px;
    margin-top: 12px;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #f8fafc;
}

.application-chat-head {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #0f172a;
    font-size: 13px;
}

.application-chat-accordion {
    padding: 0;
    overflow: hidden;
}

.application-chat-accordion .application-chat-head {
    justify-content: space-between;
    padding: 12px;
    cursor: pointer;
    list-style: none;
}

.application-chat-accordion .application-chat-head::-webkit-details-marker {
    display: none;
}

.application-chat-accordion .application-chat-head > span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.application-chat-accordion[open] .chat-chevron {
    transform: rotate(180deg);
}

.chat-chevron {
    transition: transform 160ms ease;
}

.application-chat-badge {
    display: inline-grid;
    place-items: center;
    min-width: 22px;
    min-height: 22px;
    padding: 0 6px;
    border-radius: 999px;
    background: #0d6efd;
    color: #fff;
    font-size: 11px;
    font-weight: 900;
}

.application-chat-accordion .application-chat-messages,
.application-chat-accordion .application-chat-form {
    margin: 0 12px 12px;
}

.application-chat-messages {
    display: grid;
    gap: 8px;
}

.application-chat-message {
    max-width: min(620px, 92%);
    padding: 9px 11px;
    border: 1px solid #dbeafe;
    border-radius: 8px;
    background: #fff;
}

.application-chat-message.mine {
    justify-self: end;
    border-color: #bbf7d0;
    background: #f0fdf4;
}

.application-chat-message span,
.application-chat-message small {
    display: block;
    color: var(--muted);
    font-size: 11px;
    font-weight: 800;
}

.application-chat-message p {
    margin: 4px 0;
    color: #0f172a;
    font-size: 13px;
    line-height: 1.45;
}

.application-chat-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
}

.assessment-workspace {
    display: grid;
    gap: 16px;
}

.assignment-planner {
    border-color: rgba(13, 110, 253, 0.24);
    box-shadow: 0 16px 34px rgba(13, 110, 253, 0.08);
}

.assessment-assignment-form {
    gap: 14px;
}

.assessment-review-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
    gap: 16px;
    align-items: start;
}

.assignment-card-list {
    display: grid;
    gap: 10px;
}

.assignment-option-card {
    display: grid;
    gap: 10px;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fbfdff;
}

.assignment-option-card h4 {
    margin: 0;
    font-size: 16px;
    font-weight: 850;
}

.assignment-option-card p {
    margin: 4px 0 0;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.45;
}

.assignment-option-card.compact-row {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
}

.candidate-mini-head {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
}

.candidate-avatar.mini {
    width: 48px;
    height: 48px;
    font-size: 18px;
}

@media (max-width: 980px) {
    .assessment-review-grid,
    .assignment-option-card.compact-row {
        grid-template-columns: 1fr;
    }
}

.record-icon {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: #e7f1ff;
    color: var(--accent-dark);
}

.record-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}

.record-note {
    padding: 10px;
    border-radius: 8px;
    background: var(--panel-2);
}

.employer-comment-note {
    display: inline-flex;
    align-items: flex-start;
    gap: 8px;
    margin-top: 8px;
    border: 1px solid #d8e7ff;
    background: #f4f8ff;
    color: #334155;
    font-size: 13px;
    line-height: 1.45;
}

.employer-comment-note svg {
    width: 16px;
    height: 16px;
    flex: none;
    margin-top: 1px;
    color: var(--accent-dark);
}

.employer-comment-note strong {
    color: #0f172a;
    font-weight: 850;
}

.candidate-search-form {
    margin-top: 0;
}

.candidate-search-page {
    gap: 16px;
}

.assessment-builder-form .helper-text {
    color: var(--muted);
    font-size: 11px;
    font-weight: 650;
    text-transform: none;
}

.status-pill {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 850;
    background: #eef5ff;
    color: var(--accent-dark);
}

.status-pill.good {
    background: #eafaf2;
    color: #117243;
}

.status-pill.warn {
    background: #fff8ed;
    color: #875200;
}

.status-pill.bad {
    background: #fff3f1;
    color: var(--danger);
}

.exam-shell {
    display: grid;
    gap: 16px;
}

.exam-topbar,
.exam-submit-bar,
.exam-question-card {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(19, 32, 51, 0.06);
}

.exam-topbar {
    position: sticky;
    top: 0;
    z-index: 5;
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 16px;
}

.exam-topbar h3,
.exam-topbar p,
.exam-question-card h4,
.exam-submit-bar p {
    margin: 0;
}

.exam-topbar h3 {
    font-size: 20px;
}

.exam-topbar p,
.exam-submit-bar p {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.5;
}

.exam-guard {
    display: inline-flex;
    align-items: center;
    align-self: center;
    gap: 8px;
    padding: 9px 12px;
    border-radius: 8px;
    background: #fff8ed;
    color: #875200;
    font-size: 13px;
    font-weight: 850;
}

.exam-form {
    display: grid;
    gap: 12px;
}

.exam-question-card {
    display: grid;
    gap: 14px;
    padding: 16px;
}

.exam-question-card h4 {
    font-size: 16px;
    line-height: 1.45;
}

.exam-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(240px, 1fr));
    gap: 10px;
}

.exam-option {
    grid-template-columns: auto 30px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    min-height: 52px;
    padding: 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #f8fbff;
    color: var(--text);
    font-size: 13px;
    text-transform: none;
}

.exam-option input {
    width: 18px;
    min-height: 18px;
}

.exam-option span {
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border-radius: 8px;
    background: #e7f1ff;
    color: var(--accent-dark);
}

.exam-option strong {
    min-width: 0;
    overflow-wrap: anywhere;
}

.exam-submit-bar {
    position: sticky;
    bottom: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 16px;
}

.hr-candidate-directory {
    display: grid;
    gap: 16px;
}

.hr-directory-hero {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: center;
}

.hr-directory-hero h3,
.hr-directory-hero p {
    margin: 0;
}

.hr-directory-hero h3 {
    margin-top: 4px;
    font-size: 24px;
}

.hr-directory-hero p {
    margin-top: 6px;
    color: var(--muted);
    line-height: 1.45;
}

.hr-directory-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(110px, 1fr));
    gap: 10px;
    min-width: min(540px, 100%);
}

.hr-directory-kpis article {
    display: grid;
    gap: 5px;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #f8fbff;
}

.hr-directory-kpis svg {
    width: 18px;
    height: 18px;
    color: var(--accent-dark);
}

.hr-directory-kpis span {
    color: var(--muted);
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
}

.hr-directory-kpis strong {
    font-size: 24px;
    line-height: 1;
}

.hr-filter-panel {
    padding: 14px;
}

.hr-filter-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 10px;
    align-items: end;
}

.hr-filter-grid label {
    display: grid;
    gap: 5px;
    min-width: 0;
    margin: 0;
    color: #5c6d86;
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
}

.hr-filter-grid input,
.hr-filter-grid select {
    width: 100%;
    min-width: 0;
    min-height: 38px;
    border: 1px solid #cad7e6;
    border-radius: 8px;
    background: #fff;
    color: var(--text);
    font-size: 13px;
    font-weight: 750;
    text-transform: none;
}

.hr-filter-grid .primary-btn,
.hr-filter-grid .small-btn {
    width: 100%;
    min-width: 0;
    min-height: 38px;
    white-space: nowrap;
}

.hr-filter-grid .check-row {
    min-height: 42px;
    align-items: center;
    padding: 9px 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
}

.hr-candidate-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(340px, 1fr));
    gap: 14px;
}

.hr-candidate-card {
    display: grid;
    gap: 13px;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(19, 32, 51, 0.06);
}

.hr-candidate-main {
    display: flex;
    gap: 12px;
    align-items: center;
    min-width: 0;
}

.hr-candidate-main h4,
.hr-candidate-main p {
    margin: 0;
}

.hr-candidate-main h4 {
    font-size: 18px;
    font-weight: 850;
    overflow-wrap: anywhere;
}

.hr-candidate-main p {
    margin-top: 4px;
    color: var(--muted);
    font-size: 13px;
}

.hr-contact-strip {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.hr-contact-strip span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    padding: 9px 10px;
    border: 1px solid #dfe8f6;
    border-radius: 8px;
    background: #f8fbff;
    color: #33425d;
    font-size: 13px;
    font-weight: 760;
    overflow-wrap: anywhere;
}

.hr-contact-strip svg {
    width: 15px;
    height: 15px;
    color: var(--accent-dark);
    flex: none;
}

.hr-candidate-sections {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.hr-mini-section {
    min-width: 0;
    padding: 11px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fbfdff;
}

.hr-mini-section > strong {
    display: block;
    margin-bottom: 8px;
    font-size: 13px;
}

.hr-mini-section ul {
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.hr-mini-section li {
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr);
    gap: 6px;
    align-items: start;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.35;
}

.hr-mini-section li svg {
    width: 15px;
    height: 15px;
    color: var(--accent-dark);
}

.hr-mini-section li a,
.hr-mini-section li span {
    min-width: 0;
    color: var(--text);
    font-weight: 760;
    overflow-wrap: anywhere;
}

.hr-mini-section li small {
    grid-column: 2;
    color: var(--muted);
    font-weight: 700;
}

.candidate-top-search {
    width: 100%;
}

.naukri-search-panel {
    display: grid;
    grid-template-columns: minmax(260px, 1.4fr) minmax(190px, 0.7fr) minmax(220px, 1fr) auto;
    align-items: center;
    gap: 0;
    width: 100%;
    min-height: 72px;
    padding: 9px 12px 9px 24px;
    border: 1px solid #e1e7f5;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(44, 72, 132, 0.1);
}

.naukri-search-panel label {
    min-width: 0;
    min-height: 48px;
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 0 18px;
    border-right: 1px solid #e6ebf5;
}

.naukri-search-panel label:first-child {
    padding-left: 0;
}

.naukri-search-panel label:nth-child(3) {
    border-right: 0;
}

.naukri-search-panel svg {
    width: 19px;
    height: 19px;
    color: #2454e8;
    flex: none;
}

.naukri-search-panel input,
.naukri-search-panel select {
    width: 100%;
    min-width: 0;
    min-height: 44px;
    padding: 0;
    border: 0;
    background: transparent;
    color: #27324a;
    font-size: 15px;
    font-weight: 760;
    outline: none;
}

.naukri-search-panel input::placeholder {
    color: #cbd5e1;
    font-size: 0.92em;
    opacity: 1;
}

.focused-edit-shell {
    min-height: 100vh;
    background: #f4f7fb;
}

.focused-edit-header {
    position: sticky;
    top: 0;
    z-index: 20;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 68px;
    padding: 10px clamp(16px, 4vw, 40px);
    border-bottom: 1px solid var(--line);
    background: #fff;
}

.focused-edit-header .brand-row {
    color: var(--text);
}

.focused-edit-header .brand-copy {
    display: grid;
    gap: 2px;
}

.focused-edit-header .brand-copy small {
    color: var(--muted);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.focused-edit-main {
    width: min(920px, calc(100% - 32px));
    margin: 0 auto;
    padding: 24px 0 40px;
}

.focused-job-edit-panel {
    padding: clamp(16px, 3vw, 28px);
}

.focused-job-edit-panel .panel-head {
    align-items: flex-start;
}

.focused-job-edit-panel h1 {
    margin: 4px 0;
    font-size: 24px;
    letter-spacing: 0;
}

.focused-job-edit-panel .premium-form {
    max-width: none;
}

.naukri-search-panel select {
    appearance: auto;
    color: #475569;
}

.jobs-advanced-filters {
    grid-column: 1 / -1;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
    align-items:end;
    gap:10px;
    padding:12px 2px 2px;
    border-top:1px solid #edf1f7;
}

.naukri-search-panel .jobs-advanced-filters label {
    min-height:auto;
    display:grid;
    gap:5px;
    padding:0;
    border:0;
}

.jobs-advanced-filters label span { color:#5f6f83; font-size:11px; font-weight:800; text-transform:uppercase; }
.naukri-search-panel .jobs-advanced-filters input,
.naukri-search-panel .jobs-advanced-filters select { min-height:38px; padding:0 10px; border:1px solid #dfe6f1; border-radius:7px; background:#fff; font-size:13px; }
.jobs-advanced-filters .small-btn { min-height:38px; justify-content:center; }
.jobs-advanced-filters .salary-filter-field {
    grid-template-rows: auto 38px 32px;
    align-self: stretch;
}

.jobs-advanced-filters .salary-filter-field .field-error {
    min-height: 30px;
    margin: 0;
    color: #c02f24;
    font-size: 11px;
    font-weight: 760;
    line-height: 1.35;
}

.candidate-search-page .naukri-search-panel { border-radius:16px; }
.jobs-results-heading { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:54px; padding:0; }
.jobs-results-copy { display:flex; align-items:center; gap:10px; min-width:0; }
.jobs-results-copy span { color:#64748b; font-size:12px; font-weight:800; letter-spacing:0; text-transform:uppercase; white-space:nowrap; }
.jobs-results-copy strong { display:inline-flex; align-items:center; min-height:34px; max-width:240px; padding:7px 11px; border:1px solid #dce5f2; border-radius:999px; background:#fff; color:#25324b; font-size:13px; font-weight:800; line-height:1.2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.jobs-results-actions { display:flex; align-items:center; gap:10px; flex-shrink:0; }
.saved-jobs-count { display:grid; grid-template-columns:auto auto; align-items:center; gap:0 8px; min-width:120px; padding:9px 12px; border:1px solid #dce5f2; border-radius:9px; background:#fff; }
.saved-jobs-count svg { grid-row:span 2; width:19px; color:#2454e8; }
.saved-jobs-count strong { color:#172033; font-size:18px; line-height:1; }
.saved-jobs-count span { color:#64748b; font-size:11px; }

.candidate-jobs-readiness { display:flex; align-items:center; gap:18px; padding:12px 14px; border:1px solid #f2d59f; border-radius:9px; background:#fff9ed; }
.candidate-jobs-readiness > div:first-child { min-width:145px; }
.candidate-jobs-readiness strong { display:block; color:#8a5100; }
.candidate-jobs-readiness > div:first-child span { color:#866b42; font-size:11px; }
.readiness-missing { display:flex; flex:1; flex-wrap:wrap; gap:7px; }
.readiness-missing span { display:inline-flex; align-items:center; gap:4px; padding:4px 7px; border-radius:999px; background:#fff; color:#7a5b2d; font-size:11px; font-weight:750; }
.readiness-missing svg { width:12px; height:12px; }

.candidate-jobs-layout { grid-template-columns:minmax(0,1fr) 280px; align-items:start; gap:18px; }
.candidate-jobs-results { grid-template-columns:1fr; }
.candidate-job-card[hidden] { display:none !important; }
.live-job-empty { min-height:240px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:7px; padding:28px; border:1px dashed #d7e0ed; border-radius:10px; background:#fbfdff; text-align:center; }
.live-job-empty[hidden] { display:none; }
.live-job-empty > svg { width:32px; height:32px; color:#2454e8; }
.live-job-empty strong { color:#27324a; }
.live-job-empty p { margin:0; color:#718096; font-size:12px; }
.candidate-jobs-sidebar { display:grid; gap:14px; }
.jobs-side-panel { padding:15px; }
.saved-jobs-preview { display:grid; gap:7px; margin-bottom:11px; }
.saved-jobs-preview a { display:grid; gap:2px; padding:9px; border:1px solid #e5eaf2; border-radius:7px; }
.saved-jobs-preview a:hover { border-color:#bfd0eb; background:#f8fbff; }
.saved-jobs-preview strong { color:#27324a; font-size:12px; }
.saved-jobs-preview span,.side-empty { color:#718096; font-size:11px; }
.recommendation-signals { display:grid; gap:7px; margin-bottom:11px; }
.recommendation-signals span { display:flex; align-items:center; gap:7px; color:#526075; font-size:12px; }
.recommendation-signals svg { width:15px; color:#2454e8; }

.candidate-job-card { gap:13px; }
.job-company-name { display:block; margin:2px 0; color:#34445b; font-size:12px; }
.job-card-facts { display:flex; flex-wrap:wrap; gap:8px 16px; padding:9px 0; border-block:1px solid #edf1f6; }
.job-card-facts span { display:inline-flex; align-items:center; gap:5px; color:#536176; font-size:12px; font-weight:700; }
.job-card-facts svg { width:14px; height:14px; color:#2454e8; }
.job-card-description { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; margin:0; color:#637188; line-height:1.55; }
.candidate-job-card .card-actions { align-items:center; }
.candidate-job-card .card-actions form:has(.primary-btn) { margin-left:auto; }
.applied-btn { background:#16814a; border-color:#16814a; pointer-events:auto; }
.applied-btn:hover { background:#116b3d; border-color:#116b3d; }
.save-job-btn.saved { border-color:#9ad5b5; background:#e7f8ef; color:#147a43; }
.save-job-btn.saved svg { color:#147a43; }
.save-job-btn[aria-busy="true"] { opacity:.7; cursor:wait; }
.save-job-toast { position:fixed; right:22px; bottom:22px; z-index:1100; max-width:320px; padding:12px 16px; border-radius:9px; color:#fff; font-size:13px; font-weight:800; box-shadow:0 14px 34px rgba(15,23,42,.2); opacity:0; transform:translateY(10px); transition:opacity .2s ease,transform .2s ease; }
.save-job-toast.visible { opacity:1; transform:translateY(0); }
.save-job-toast.good { background:#147a43; }
.save-job-toast.danger { background:#b42318; }
.login-password-help { display:flex; justify-content:flex-end; margin-top:-7px; }
.login-remember-row { display:inline-flex; align-items:center; gap:8px; margin-top:-2px; color:#475569; font-size:13px; font-weight:700; line-height:1.35; }
.login-remember-row input { width:16px; height:16px; min-height:16px; margin:0; accent-color:var(--accent); }
.login-password-help a { color:#2454e8; font-size:12px; font-weight:800; }
.login-password-help a:hover { text-decoration:underline; }
.login-error-alert { display:flex; align-items:flex-start; gap:9px; padding:12px 13px; border:1px solid #f3b7b2; border-radius:9px; background:#fff4f2; color:#a52a22; font-size:12px; font-weight:750; line-height:1.45; }
.login-error-alert svg { width:18px; height:18px; flex:0 0 auto; margin-top:1px; }
.password-reset-success-alert { display:flex; align-items:flex-start; gap:9px; padding:12px 13px; border:1px solid #9fd9b7; border-radius:9px; background:#effbf4; color:#17633a; font-size:12px; font-weight:750; line-height:1.45; }
.password-reset-success-alert svg { width:18px; height:18px; flex:0 0 auto; margin-top:1px; }
.social-login-btn.unavailable { opacity:.68; cursor:not-allowed; filter:grayscale(.25); }
.registration-status-alert { display:flex; gap:12px; padding:14px; border-radius:8px; border:1px solid #ffd8c2; background:#fff7ed; color:#7c2d12; }
.registration-status-alert > svg { width:22px; height:22px; flex:0 0 auto; margin-top:2px; }
.registration-status-alert strong { display:block; color:#7c2d12; font-size:14px; font-weight:850; }
.registration-status-alert p { margin:4px 0 0; color:#9a3412; font-size:13px; line-height:1.45; }
.registration-status-alert b { font-weight:850; overflow-wrap:anywhere; }
.registration-status-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.registration-status-actions .small-btn { min-height:38px; padding:8px 12px; }
.password-recovery-panel { position:relative; width:min(100%,480px); display:grid; gap:16px; padding-top:28px; }
.password-recovery-panel h2,.password-recovery-panel p { margin:0; }
.password-recovery-panel h2 { color:#172033; font-size:28px; font-weight:860; }
.password-recovery-panel > p { color:#64748b; line-height:1.6; }
.password-recovery-panel .small-btn { width:fit-content; }
.password-recovery-panel .text-back-link {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--accent);
    font-size: 13px;
    font-weight: 700;
}
.password-recovery-panel .text-back-link svg {
    width: 15px;
    height: 15px;
}
.recovery-status-icon { width:42px; height:42px; color:#b42318; }
.form-requirement-note { display:flex; align-items:flex-start; gap:8px; padding:10px 12px; border:1px solid #cfe0ff; border-radius:8px; background:#f3f7ff; color:#42526a; font-size:12px; line-height:1.45; }
.form-requirement-note svg { flex:0 0 auto; width:16px; height:16px; margin-top:1px; color:#2454e8; }
.resume-upload-form button[type="submit"]:disabled { opacity:.5; cursor:not-allowed; box-shadow:none; }

.saved-jobs-page { gap:18px; }
.saved-jobs-context { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:2px 0 14px; border-bottom:1px solid #e7edf5; }
.saved-jobs-context strong { color:#172033; font-size:18px; }
.saved-jobs-context p { margin:3px 0 0; color:#64748b; font-size:13px; }
.saved-jobs-empty { min-height:330px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; padding:38px; text-align:center; background:linear-gradient(145deg,#fff 0%,#f7faff 100%); }
.saved-jobs-empty > div:nth-child(2) { max-width:520px; }
.saved-jobs-empty strong { color:#172033; font-size:22px; }
.saved-jobs-empty p { margin:7px 0 0; color:#65748a; line-height:1.6; }
.saved-empty-illustration { position:relative; display:grid; place-items:center; width:90px; height:90px; border-radius:24px; background:#eaf1ff; color:#2454e8; }
.saved-empty-illustration > svg { width:40px; height:40px; }
.saved-empty-illustration span { position:absolute; right:-9px; bottom:-7px; display:grid; place-items:center; width:35px; height:35px; border:4px solid #fff; border-radius:50%; background:#2454e8; color:#fff; }
.saved-empty-illustration span svg { width:16px; height:16px; }
.saved-empty-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:9px; }
.saved-recommendations { display:grid; gap:14px; }
.saved-recommendation-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.saved-recommendation-grid .candidate-job-card { min-width:0; }
.saved-jobs-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }

.candidate-tracking-page { gap:18px; }
.tracking-page-context { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:2px 0 14px; border-bottom:1px solid #e7edf5; }
.tracking-page-context strong { color:#172033; font-size:18px; }
.tracking-page-context p { margin:3px 0 0; color:#64748b; font-size:13px; }
.tracking-empty-state { min-height:330px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; padding:38px; text-align:center; background:linear-gradient(145deg,#fff 0%,#f7faff 100%); }
.tracking-empty-state > strong { color:#172033; font-size:22px; }
.tracking-empty-state > p { max-width:520px; margin:0 0 5px; color:#65748a; line-height:1.6; }
.tracking-empty-icon { display:grid; place-items:center; width:82px; height:82px; margin-bottom:4px; border-radius:22px; background:#eaf1ff; color:#2454e8; }
.tracking-empty-icon svg { width:36px; height:36px; }
.tracking-support-grid { display:grid; grid-template-columns:minmax(0,1fr) 280px; align-items:start; gap:18px; }
.tracking-recommendations { display:grid; gap:14px; min-width:0; }
.tracking-job-grid { grid-template-columns:1fr; }
.tracking-guidance { padding:18px; }
.tracking-guidance > svg { width:26px; height:26px; margin-bottom:10px; color:#2454e8; }
.tracking-guidance h3 { margin:0 0 12px; color:#172033; font-size:17px; }
.tracking-guidance ol,.tracking-guidance ul { display:grid; gap:10px; margin:0; padding-left:19px; color:#5f6f83; font-size:12px; line-height:1.5; }

.candidate-documents-page { gap:20px; }
.documents-context { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:2px 0 14px; border-bottom:1px solid #e7edf5; }
.documents-context strong { color:#172033; font-size:18px; }
.documents-context p { margin:3px 0 0; color:#64748b; font-size:13px; }
.document-category-nav { display:flex; flex-wrap:wrap; gap:10px; }
.document-category-nav a { display:inline-flex; align-items:center; gap:7px; padding:10px 13px; border:1px solid #dfe6f1; border-radius:9px; background:#fff; color:#34445b; font-size:13px; font-weight:800; }
.document-category-nav a:hover { border-color:#b9ccec; color:#2454e8; }
.document-category-nav svg { width:17px; color:#2454e8; }
.document-category-nav span { display:grid; place-items:center; min-width:21px; height:21px; padding:0 5px; border-radius:999px; background:#eaf1ff; color:#2454e8; font-size:11px; }

.company-selector { position: relative; }
.company-selector-control {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    padding: 0 12px;
    border: 1px solid #d8e1ef;
    border-radius: 8px;
    background: #fff;
}
.company-selector-control svg { width: 18px; color: #5f6f89; flex: 0 0 auto; }
.company-selector-control input {
    border: 0;
    box-shadow: none;
    padding: 0;
    min-height: 40px;
    background: transparent;
    width: 100%;
}
.company-selector-control input:focus { outline: 0; box-shadow: none; }
.company-selector:focus-within .company-selector-control { border-color: #2f6fed; box-shadow: 0 0 0 3px rgba(47, 111, 237, .12); }
.company-selector-options {
    position: absolute;
    z-index: 20;
    left: 0;
    right: 0;
    top: calc(100% - 22px);
    display: grid;
    gap: 6px;
    max-height: 240px;
    overflow: auto;
    padding: 8px;
    border: 1px solid #d8e1ef;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(31, 41, 55, .16);
}
.company-selector-options[hidden],
.company-selector-option[hidden] { display: none; }
.company-selector-option {
    display: flex;
    align-items: center;
    gap: 9px;
    width: 100%;
    min-height: 38px;
    padding: 8px 10px;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #202b3c;
    font-weight: 700;
    text-align: left;
}
.company-selector-option:hover,
.company-selector-option:focus { background: #eef4ff; color: #2454e8; outline: 0; }
.company-selector-option svg { width: 17px; flex: 0 0 auto; }
.company-selector-add { color: #2454e8; }
.company-selector-empty { color: #708097; cursor: default; }

.company-management-page { align-items: start; }
.company-management-form input,
.company-management-form textarea,
.company-management-form select {
    border-color: #b8c6d8;
    background: #fff;
    color: #172033;
    box-shadow: none;
}
.company-management-form input::placeholder,
.company-management-form textarea::placeholder {
    color: #64748b;
    font-weight: 650;
    opacity: 1;
}
.company-management-form input:placeholder-shown,
.company-management-form textarea:placeholder-shown {
    background: #fff;
    color: #172033;
}
.company-management-form input:hover,
.company-management-form textarea:hover,
.company-management-form select:hover {
    border-color: #7f96b3;
}
.company-management-form input:focus,
.company-management-form textarea:focus,
.company-management-form select:focus {
    border-color: #2563eb;
    background: #fff;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .16);
}
.company-management-form input:disabled,
.company-management-form textarea:disabled,
.company-management-form select:disabled {
    border-color: #d8e0eb;
    background: #f1f5f9;
    color: #94a3b8;
    cursor: not-allowed;
}
.company-management-form textarea { min-height: 92px; }
.company-directory-list { display: grid; gap: 12px; margin-top: 12px; }
.company-directory-card {
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 12px;
    align-items: start;
    padding: 14px;
    border: 1px solid #dfe6f1;
    border-radius: 8px;
    background: #fff;
}
.company-directory-mark {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 8px;
    background: #eaf1ff;
    color: #2454e8;
    font-weight: 900;
}
.company-directory-card h4 { margin: 0 0 4px; font-size: 16px; }
.company-directory-card p { margin: 0; color: #5f6f89; font-size: 13px; }
.company-directory-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}
.company-directory-meta span {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 8px;
    border-radius: 999px;
    background: #f4f7fb;
    color: #52627a;
    font-size: 12px;
    font-weight: 700;
}
.company-directory-meta svg { width: 14px; }
.primary-company-card { border-color: #bcd0f7; background: #f8fbff; }
.document-category-section { display:grid; gap:13px; scroll-margin-top:90px; }
.document-category-section + .document-category-section { padding-top:20px; border-top:1px solid #e5eaf2; }
.document-category-heading h3,.document-category-heading p { margin:0; }
.document-category-heading h3 { margin-top:2px; color:#172033; font-size:21px; font-weight:850; }
.document-category-heading p { margin-top:4px; color:#64748b; font-size:13px; }
.supporting-document-upload { padding:18px; }
.document-library-grid { columns:2 320px; column-gap:14px; }
.document-library-category { display:inline-block; width:100%; margin:0 0 14px; padding:15px; scroll-margin-top:90px; break-inside:avoid; }
.document-library-head { display:flex; align-items:center; gap:10px; margin-bottom:12px; padding-bottom:10px; border-bottom:1px solid #e8edf4; }
.document-library-head > svg { width:21px; height:21px; color:#2454e8; }
.document-library-head h3 { margin:0; color:#172033; font-size:15px; }
.document-library-head span { color:#718096; font-size:11px; }
.document-library-category.is-empty { padding-bottom:14px; background:#fff; }
.document-library-category.is-empty .document-library-head { margin-bottom:8px; padding-bottom:8px; }
.document-category-empty { margin:0; padding:4px 0 0 31px; color:#8491a3; font-size:12px; text-align:left; }
.account-password-panel { margin-top:16px; padding:20px; }
.account-password-panel .panel-head > svg { width:28px; height:28px; color:#2454e8; }
.account-password-layout { display:grid; grid-template-columns:minmax(320px,620px) minmax(280px,1fr); gap:22px; align-items:start; }
.account-password-form { max-width:none; }
.password-match-status { min-height:18px; margin-top:-5px; font-size:12px; font-weight:750; }
.good-text { color:#147a43; }
.account-password-form button:disabled { opacity:.5; cursor:not-allowed; }
.account-password-modal[hidden] { display:none; }
.account-password-modal {
    position: fixed;
    inset: 0;
    z-index: 120;
    display: grid;
    place-items: center;
    padding: 24px;
}
.account-password-modal-open { overflow:hidden; }
.account-password-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15,23,42,.46);
    backdrop-filter: blur(4px);
}
.account-password-dialog {
    position: relative;
    z-index: 1;
    width: min(980px, 100%);
    max-height: min(760px, calc(100vh - 48px));
    overflow: auto;
    padding: 20px;
    border: 1px solid #dbe5f2;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 28px 80px rgba(15,23,42,.28);
}
.account-password-dialog-head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:18px;
    padding-bottom:14px;
    border-bottom:1px solid #e7edf6;
}
.account-password-dialog-head h3,
.account-password-dialog-head p { margin:0; }
.account-password-dialog-head h3 { margin-top:4px; color:#172033; font-size:22px; font-weight:850; }
.account-password-dialog-head p { margin-top:4px; color:#64748b; font-size:13px; line-height:1.45; }
.account-password-dialog-actions {
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:8px;
    margin-top:4px;
}
.password-guidance-panel { display:grid; gap:13px; padding:16px; border:1px solid #e2eaf5; border-radius:10px; background:#f8fbff; }
.password-guidance-panel h4,.password-guidance-panel p { margin:0; }
.password-guidance-panel h4 { color:#172033; font-size:16px; font-weight:860; }
.password-guidance-panel p { color:#64748b; font-size:12px; line-height:1.45; }
.password-validation-note {
    display:block;
    margin-top:9px;
    color:#64748b;
    font-size:11px;
    font-weight:750;
    line-height:1.45;
}
.password-rule-list { display:grid; gap:8px; margin:0; padding:0; list-style:none; }
.password-rule-list li { display:flex; align-items:center; gap:8px; color:#526075; font-size:12px; font-weight:800; }
.password-rule-list li svg { width:16px; height:16px; flex:0 0 auto; color:currentColor; }
.password-rule-list li.is-met { color:#147a43; }
.account-password-dialog.is-validating .password-rule-list li.is-missing { color:#8a1820; }
.password-recovery-card { display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:10px; padding:12px; border:1px solid #dbe7f8; border-radius:9px; background:#fff; }
.password-recovery-card > svg { width:19px; height:19px; color:#2454e8; }
.password-recovery-card strong { display:block; color:#27324a; font-size:13px; }
.password-recovery-card span { color:#718096; font-size:11px; line-height:1.4; }
.password-recovery-card a { color:#2454e8; font-size:11px; font-weight:850; white-space:nowrap; }
.password-security-tip { display:flex; gap:8px; align-items:flex-start; color:#526075; font-size:12px; font-weight:760; line-height:1.45; }
.password-security-tip svg { width:16px; height:16px; flex:0 0 auto; color:#2454e8; }
.account-settings-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:16px; }
.account-security-panel,.account-preferences-panel { padding:20px; }
.account-setting-list,.account-preference-links { display:grid; gap:9px; }
.account-setting-list article,.account-preference-links a { display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:10px; padding:12px; border:1px solid #e4eaf2; border-radius:9px; background:#fbfdff; }
.account-setting-list article > svg,.account-preference-links a > svg:first-child { width:19px; height:19px; color:#2454e8; }
.account-setting-list strong,.account-preference-links strong { display:block; color:#27324a; font-size:13px; }
.account-setting-list span,.account-preference-links span { color:#718096; font-size:11px; line-height:1.4; }
.account-setting-list em { padding:4px 7px; border-radius:999px; font-size:10px; font-style:normal; font-weight:850; }
.account-setting-list em.good { background:#e7f8ef; color:#147a43; }
.account-setting-list a,
.account-setting-action {
    justify-self:end;
    border:0;
    background:transparent;
    color:#2454e8;
    font-size:11px;
    font-weight:800;
    white-space:nowrap;
}
.account-setting-action:hover,
.account-setting-list a:hover { color:#084298; text-decoration:underline; }
.account-preference-links a:hover { border-color:#bfd0eb; background:#f7faff; }
.account-preference-links a > svg:last-child { width:15px; height:15px; color:#97a5b7; }
.candidate-help-page { gap:18px; }
.help-intro { display:flex; align-items:center; justify-content:space-between; gap:22px; padding:24px; background:linear-gradient(135deg,#f7faff,#fff); }
.help-intro h2,.help-intro p { margin:0; }
.help-intro h2 { margin-top:3px; color:#172033; font-size:28px; font-weight:860; }
.help-intro p { margin-top:6px; color:#64748b; }
.help-quick-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.help-quick-actions a { display:inline-flex; align-items:center; gap:6px; padding:9px 11px; border:1px solid #dbe5f2; border-radius:8px; background:#fff; color:#34445b; font-size:12px; font-weight:800; }
.help-quick-actions a:hover { border-color:#b9ccec; color:#2454e8; }
.help-quick-actions svg { width:15px; color:#2454e8; }
.help-topic-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.help-topic-card { display:flex; flex-direction:column; min-height:190px; padding:18px; }
.help-topic-card > svg { width:26px; height:26px; color:#2454e8; }
.help-topic-card h3 { margin:13px 0 5px; color:#172033; font-size:16px; }
.help-topic-card p { margin:0 0 14px; color:#64748b; font-size:12px; line-height:1.55; }
.help-topic-card a { display:inline-flex; align-items:center; gap:5px; margin-top:auto; color:#2454e8; font-size:12px; font-weight:800; }
.help-topic-card a svg { width:14px; }
.help-faq { padding:20px; }
.help-accordion { display:grid; gap:8px; }
.help-accordion details { border:1px solid #e4eaf2; border-radius:9px; background:#fbfdff; }
.help-accordion summary { display:flex; justify-content:space-between; gap:12px; padding:13px; color:#27324a; font-size:13px; font-weight:800; cursor:pointer; list-style:none; }
.help-accordion summary svg { width:16px; color:#718096; transition:transform .18s ease; }
.help-accordion details[open] summary svg { transform:rotate(180deg); }
.help-accordion details p { margin:0; padding:0 13px 13px; color:#64748b; font-size:12px; line-height:1.6; }
.help-contact-grid { display:grid; grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr); gap:16px; }
.help-contact-card,.help-request-panel { padding:20px; }
.help-contact-card { display:flex; flex-direction:column; align-items:flex-start; }
.help-contact-card > svg { width:30px; height:30px; color:#2454e8; }
.help-contact-card h3 { margin:14px 0 5px; color:#172033; }
.help-contact-card p { color:#64748b; line-height:1.55; }
.help-contact-card span { margin-top:12px; color:#8491a3; font-size:11px; }
.form-required-guidance { display:flex; align-items:center; gap:7px; padding:10px 12px; border:1px solid #cfe0ff; border-radius:8px; background:#f5f8ff; color:#526075; font-size:12px; }
.form-required-guidance svg { width:16px; color:#2454e8; }
.job-submission-alert { display:flex; align-items:flex-start; gap:12px; padding:14px 16px; border-radius:8px; border:1px solid; margin-bottom:16px; box-shadow:0 12px 28px rgba(15,23,42,.08); }
.job-submission-alert svg { width:22px; height:22px; flex:0 0 auto; margin-top:1px; }
.job-submission-alert strong { display:block; font-size:14px; font-weight:850; color:inherit; }
.job-submission-alert p { margin:3px 0 0; font-size:13px; line-height:1.45; color:inherit; }
.job-submission-alert.success { border-color:#95d5b2; background:#effaf4; color:#17633a; }
.job-submission-alert.danger { border-color:#fecaca; background:#fff5f5; color:#991b1b; }
.employer-manage-jobs-layout > .job-submission-alert { grid-column:1 / -1; }
.required-mark { display:inline-block; margin-left:2px; color:#b42318; font-size:.95em; font-weight:800; line-height:1; vertical-align:baseline; white-space:nowrap; }
.field-error { display:block; min-height:0; margin-top:4px; color:#b42318; font-size:11px; font-weight:750; }
.field-error:not(:empty) { min-height:16px; }
.company-profile-form {
    gap: 12px;
}
.company-profile-form .two-col {
    gap: 10px 12px;
    align-items: start;
}
.company-profile-form label {
    align-content: start;
    gap: 6px;
}
.company-profile-form .two-col > label {
    min-height: 86px;
}
.company-profile-form .field-error {
    min-height: 30px;
    margin-top: 1px;
    line-height: 1.25;
    overflow-wrap: anywhere;
}
.company-profile-form .field-error:not(:empty) {
    min-height: 30px;
}
.document-name-editor { display:flex; flex-direction:column; gap:8px; }
.document-name-editor summary { list-style:none; cursor:pointer; }
.document-name-editor summary::-webkit-details-marker { display:none; }
.document-name-editor form { display:flex; flex-wrap:wrap; gap:8px; align-items:flex-end; margin-top:8px; }
.document-name-editor label { min-width:220px; flex:1 1 220px; }
.document-name-editor label span { display:block; margin-bottom:4px; color:#475569; font-size:11px; font-weight:800; text-transform:uppercase; }
.document-name-editor input { width:100%; border:1px solid #d8e1ee; border-radius:8px; padding:9px 10px; font:inherit; }
.vendor-option.already-assigned { cursor:not-allowed; opacity:.72; background:#f8fafc; }
.vendor-option.already-assigned .vendor-option-check { background:#e5e7eb; }
.vendor-assigned-badge { margin-left:auto; padding:4px 7px; border-radius:999px; background:#fff1f0; color:#b42318; font-size:10px; font-weight:800; white-space:nowrap; }
.vendor-assignment-guidance { display:flex; align-items:flex-start; gap:6px; margin-top:8px; }
.vendor-assignment-guidance svg { width:15px; flex:0 0 auto; color:#2454e8; }
.requirement-distribution-page {
    min-width: 0;
}
.requirement-distribution-page .split-grid,
.requirement-distribution-page .panel {
    min-width: 0;
}
.requirement-distribution-page .split-grid {
    grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr);
}
.distribution-history-wrap {
    overflow-x: hidden;
}
.distribution-history-table {
    min-width: 0;
    table-layout: fixed;
}
.distribution-history-table th,
.distribution-history-table td {
    overflow-wrap: anywhere;
}
.distribution-history-table th:nth-child(1) { width: 42%; }
.distribution-history-table th:nth-child(2) { width: 17%; }
.distribution-history-table th:nth-child(3) { width: 15%; }
.distribution-history-table th:nth-child(4) { width: 11%; }
.distribution-history-table th:nth-child(5) { width: 15%; }
.distribution-vendor-cell strong,
.distribution-vendor-cell .muted {
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
}
.vendor-distribution-form {
    min-width: 0;
}
.distribution-vendor-picker {
    min-width: 0;
    overflow: hidden;
}
.distribution-vendor-picker .vendor-picker-heading {
    align-items: flex-start;
    flex-wrap: wrap;
}
.distribution-vendor-picker .vendor-option-list {
    grid-template-columns: 1fr;
    overflow-x: hidden;
}
.distribution-vendor-picker .vendor-option {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr) auto;
    align-items: center;
}
.distribution-vendor-picker .vendor-option-copy strong,
.distribution-vendor-picker .vendor-option-copy small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.distribution-vendor-picker .vendor-assigned-badge {
    justify-self: end;
    max-width: 120px;
    margin-left: 0;
    text-align: center;
    white-space: normal;
}
@media (max-width: 980px) {
    .requirement-distribution-page .split-grid {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 520px) {
    .distribution-history-table th:nth-child(5),
    .distribution-history-table td:nth-child(5) {
        display: none;
    }
    .distribution-vendor-picker .vendor-option {
        grid-template-columns: 22px minmax(0, 1fr);
    }
    .distribution-vendor-picker .vendor-assigned-badge {
        grid-column: 2;
        justify-self: start;
        max-width: 100%;
    }
}
.premium-form input.field-invalid,.premium-form textarea.field-invalid,.premium-form select.field-invalid,
.dense-form input.field-invalid,.dense-form textarea.field-invalid,.dense-form select.field-invalid { border-color:#d92d20; background:#fff8f7; box-shadow:0 0 0 3px rgba(217,45,32,.1); }
.employer-registration-form input.field-invalid,
.employer-registration-form select.field-invalid,
.employer-registration-form textarea.field-invalid {
    border-color: #d92d20;
    background: #fff8f7;
    box-shadow: 0 0 0 3px rgba(217,45,32,.12);
}
.employer-registration-form .password-reveal-control:has(input.field-invalid) {
    border-color: #d92d20;
    background: #fff8f7;
    box-shadow: 0 0 0 3px rgba(217,45,32,.12);
}
.employer-registration-form .field-has-error {
    color: #7a271a;
}
.logout-confirm-modal .modal-dialog { max-width:420px; }
.logout-confirm-modal .modal-content { overflow:hidden; border:0; border-radius:14px; box-shadow:0 24px 60px rgba(15,23,42,.22); }
.logout-confirm-modal .modal-body { display:flex; flex-direction:column; align-items:center; padding:30px 28px 20px; text-align:center; }
.logout-confirm-modal h2 { margin:14px 0 6px; color:#172033; font-size:23px; font-weight:860; }
.logout-confirm-modal p { margin:0; color:#64748b; }
.logout-confirm-icon { display:grid; place-items:center; width:58px; height:58px; border-radius:50%; background:#fff0ef; color:#b42318; }
.logout-confirm-icon svg { width:26px; height:26px; }
.logout-confirm-modal .modal-footer { justify-content:center; gap:9px; padding:16px 24px 24px; border:0; }
.logout-confirm-modal .modal-footer form { margin:0; }

.naukri-search-panel .primary-btn {
    min-height: 48px;
    min-width: 118px;
    justify-content: center;
    border-radius: 999px;
    background: #2454e8;
    box-shadow: none;
}

.naukri-search-panel .primary-btn:hover {
    background: #1743c8;
}

.candidate-home-filter-panel {
    grid-template-columns: minmax(240px, 1.3fr) minmax(180px, 0.7fr) minmax(210px, 1fr) auto auto;
}

.candidate-private-dashboard {
    gap: 16px;
}

.candidate-dashboard-hero { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; padding:20px; }
.candidate-dashboard-identity { display:flex; align-items:center; gap:18px; min-width:0; }
.candidate-dashboard-identity h3 { margin:3px 0 6px; color:#172033; font-size:26px; font-weight:860; }
.candidate-dashboard-identity p { max-width:620px; margin:0; color:#64748b; }
.dashboard-avatar-wrap { position:relative; flex:0 0 auto; }
.dashboard-avatar-wrap .profile-photo-trigger { width:84px; height:84px; }
.dashboard-avatar-wrap > span { position:absolute; right:-8px; bottom:-5px; display:inline-flex; align-items:center; gap:4px; padding:4px 7px; border:1px solid #dbe5f3; border-radius:999px; background:#fff; color:#2454e8; font-size:10px; font-weight:800; white-space:nowrap; pointer-events:none; }
.dashboard-avatar-wrap > span svg { width:12px; height:12px; }
.dashboard-profile-meta { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.dashboard-profile-meta a { display:inline-flex; align-items:center; gap:5px; padding:5px 9px; border-radius:999px; background:#f4f7fb; color:#536176; font-size:12px; font-weight:700; }
.dashboard-profile-meta a:hover { background:#e9f0ff; color:#2454e8; }
.dashboard-profile-meta svg { width:13px; height:13px; }
.candidate-dashboard-actions { display:grid; justify-items:end; gap:16px; }
.dashboard-status { display:inline-flex; align-items:center; gap:6px; padding:6px 10px; border-radius:999px; font-size:12px; font-weight:800; }
.dashboard-status svg { width:14px; height:14px; }
.dashboard-status.incomplete { background:#fff3dc; color:#9a5b00; }
.dashboard-status.complete { background:#e6f8ee; color:#147a43; }
.dashboard-summary-action { display:inline-flex; align-items:center; gap:6px; width:fit-content; margin:-6px 0 0 122px; color:#2454e8; font-size:13px; font-weight:800; }
.dashboard-summary-action svg { width:15px; height:15px; }
.candidate-dashboard-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.dashboard-metric-card { position:relative; display:flex; align-items:center; gap:14px; min-height:104px; padding:16px; border:1px solid #e3eaf3; border-radius:10px; background:#fff; box-shadow:0 5px 16px rgba(15,23,42,.035); cursor:pointer; transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.dashboard-metric-card:hover { transform:translateY(-2px); border-color:#bfd0eb; box-shadow:0 10px 24px rgba(15,23,42,.08); }
.dashboard-metric-card .metric-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:9px; }
.dashboard-metric-card.blue .metric-icon { background:#eaf1ff; color:#2454e8; }
.dashboard-metric-card.amber .metric-icon { background:#fff3dc; color:#b86b00; }
.dashboard-metric-card.green .metric-icon { background:#e7f8ef; color:#16814a; }
.dashboard-metric-card svg { width:19px; height:19px; }
.dashboard-metric-card div > span { color:#68758a; font-size:11px; font-weight:850; text-transform:uppercase; }
.dashboard-metric-card strong { display:block; margin-top:1px; color:#172033; font-size:25px; line-height:1; }
.dashboard-metric-card p { margin:5px 0 0; color:#718096; font-size:12px; }
.dashboard-metric-card .metric-arrow { position:absolute; top:13px; right:13px; width:15px; color:#97a5b7; }
.dashboard-completion-panel,.dashboard-resume-panel,.recruiter-activity-panel { padding:18px; }
.dashboard-completion-head strong { display:block; color:#172033; font-size:30px; }
.dashboard-completion-head .meter { margin:8px 0; }
.dashboard-completion-head p { margin:0 0 12px; color:#64748b; font-size:13px; }
.dashboard-completion-list { display:grid; gap:7px; }
.dashboard-completion-item { display:grid; grid-template-columns:28px minmax(0,1fr) auto; align-items:center; gap:9px; padding:9px; border:1px solid #e5eaf2; border-radius:8px; color:#526075; }
.dashboard-completion-item:hover { border-color:#bcd0f1; background:#f8fbff; }
.dashboard-completion-item > svg { width:19px; color:#2454e8; }
.dashboard-completion-item.complete > svg { color:#16814a; }
.dashboard-completion-item strong { display:block; color:#27324a; font-size:13px; }
.dashboard-completion-item span { font-size:11px; }
.dashboard-completion-item em { color:#2454e8; font-size:11px; font-style:normal; font-weight:850; }
.dashboard-completion-item.complete em { color:#16814a; }
.dashboard-resume-empty,.dashboard-resume-ready { display:flex; align-items:center; gap:13px; padding:14px; border-radius:9px; background:#f8fafc; }
.dashboard-resume-empty > svg,.dashboard-resume-ready > svg { width:30px; height:30px; color:#2454e8; }
.dashboard-resume-empty div,.dashboard-resume-ready div { min-width:0; flex:1; }
.dashboard-resume-empty strong,.dashboard-resume-ready strong { color:#27324a; }
.dashboard-resume-empty p,.dashboard-resume-ready p { margin:3px 0 0; color:#718096; font-size:12px; }
.resume-visibility { display:flex; justify-content:space-between; margin-top:12px; padding:10px 2px; color:#64748b; font-size:13px; }
.resume-visibility strong { color:#16814a; }
.recruiter-activity-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.recruiter-activity-grid article { display:flex; gap:12px; padding:13px; border:1px solid #e5eaf2; border-radius:9px; }
.recruiter-activity-grid article > svg { width:20px; color:#2454e8; }
.recruiter-activity-grid span { color:#64748b; font-size:12px; font-weight:750; }
.recruiter-activity-grid strong { display:block; color:#172033; font-size:22px; }
.recruiter-activity-grid p { margin:3px 0 0; color:#8491a3; font-size:11px; }

.candidate-private-overview {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 18px;
}

.candidate-private-overview h3,
.candidate-private-overview p {
    margin: 0;
}

.candidate-private-overview h3 {
    margin-top: 4px;
    color: #172033;
    font-size: 28px;
    line-height: 1.16;
    font-weight: 860;
}

.candidate-private-overview p {
    max-width: 680px;
    margin-top: 7px;
    color: #5f6f83;
    font-size: 14px;
    line-height: 1.55;
}

.candidate-dashboard-score {
    flex: 0 0 220px;
}

.candidate-dashboard-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: stretch;
}

.candidate-readiness-panel,
.candidate-next-actions-panel {
    padding: 16px;
}

.candidate-next-actions {
    display: grid;
    gap: 10px;
}

.candidate-next-actions a {
    min-height: 62px;
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 2px 10px;
    align-items: center;
    padding: 11px;
    border: 1px solid #e3eaf3;
    border-radius: 8px;
    background: #fbfdff;
}

.candidate-next-actions a:hover {
    border-color: #c9d7ec;
    background: #f6faff;
}

.candidate-next-actions svg {
    grid-row: span 2;
    width: 18px;
    height: 18px;
    color: var(--accent);
}

.candidate-next-actions span {
    color: #6b7280;
    font-size: 11px;
    font-weight: 850;
    text-transform: uppercase;
}

.candidate-next-actions strong {
    color: #172033;
    font-size: 13px;
    font-weight: 850;
}

.candidate-filter-reset {
    min-height: 48px;
    justify-content: center;
    border-radius: 999px;
}

.candidate-list-toolbar {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
    padding: 4px 0 14px;
    border-bottom: 1px solid #e7edf5;
}

.candidate-list-toolbar h3,
.candidate-list-toolbar p {
    margin: 0;
}

.candidate-list-toolbar h3 {
    margin-top: 2px;
    color: #172033;
    font-size: 22px;
    font-weight: 850;
}

.candidate-list-toolbar p {
    margin-top: 4px;
    color: #6b7280;
    font-size: 13px;
}

.candidate-home-job-list {
    grid-template-columns: minmax(0, 1fr);
    grid-auto-rows: max-content;
    align-items: start;
}

.candidate-search-filter-form { grid-template-columns:minmax(220px,1.1fr) minmax(220px,1fr) minmax(170px,.7fr) auto auto; align-items:end; overflow:visible; }
.searchable-filter { position:relative; min-width:0; }
.searchable-filter > summary { display:grid; grid-template-columns:1fr auto; gap:5px 10px; min-height:70px; padding:11px 42px 11px 14px; border:1px solid #d7e0ed; border-radius:10px; background:#fff; cursor:pointer; list-style:none; }
.searchable-filter > summary::-webkit-details-marker { display:none; }
.searchable-filter > summary > span,.structured-experience-filter > span { color:#64748b; font-size:11px; font-weight:850; text-transform:uppercase; }
.searchable-filter > summary > strong { grid-column:1; overflow:hidden; color:#27324a; font-size:14px; font-weight:700; text-overflow:ellipsis; white-space:nowrap; }
.searchable-filter > summary > svg { position:absolute; top:25px; right:14px; width:18px; color:#64748b; transition:transform .16s ease; }
.searchable-filter[open] > summary { border-color:#7aa7ee; box-shadow:0 0 0 3px rgba(36,107,219,.12); }
.searchable-filter[open] > summary > svg { transform:rotate(180deg); }
.searchable-filter-menu { position:absolute; z-index:30; top:calc(100% + 8px); left:0; width:max(100%,280px); padding:10px; border:1px solid #dbe4f0; border-radius:11px; background:#fff; box-shadow:0 18px 40px rgba(15,23,42,.16); }
.candidate-search-filter-form .searchable-filter-input { display:flex; grid-template-columns:auto 1fr; align-items:center; gap:8px; padding:0 10px; border:1px solid #dbe4f0; border-radius:8px; text-transform:none; }
.searchable-filter-input svg { width:17px; color:#246bdb; }
.searchable-filter-input input { min-width:0; height:42px; padding:0; border:0; outline:0; background:transparent; }
.searchable-filter-options { display:grid; gap:4px; max-height:230px; margin-top:8px; overflow:auto; }
.candidate-search-filter-form .searchable-filter-option,.searchable-location-option { display:flex; grid-template-columns:auto 1fr; align-items:center; gap:9px; width:100%; padding:9px 10px; border:0; border-radius:7px; background:transparent; color:#344054; text-align:left; text-transform:none; cursor:pointer; }
.searchable-filter-option:hover,.searchable-location-option:hover,.searchable-location-option.selected { background:#eef5ff; color:#195fc5; }
.searchable-filter-option input { position:absolute; opacity:0; pointer-events:none; }
.searchable-filter-option > span { display:grid; place-items:center; width:18px; height:18px; border:1px solid #b8c5d6; border-radius:5px; }
.searchable-filter-option > span svg { width:13px; opacity:0; }
.searchable-filter-option input:checked + span { border-color:#246bdb; background:#246bdb; color:#fff; }
.searchable-filter-option input:checked + span svg { opacity:1; }
.searchable-filter-option strong { font-size:13px; font-weight:700; }
.searchable-location-option svg { width:16px; }
.structured-experience-filter { display:grid; gap:6px; }
.structured-experience-filter select { min-height:70px; padding:0 38px 0 14px; border:1px solid #d7e0ed; border-radius:10px; background:#fff; color:#27324a; }

.candidate-home-job-list .candidate-job-card {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    min-height: max-content;
    height: auto;
    align-content: start;
    overflow: visible;
}

.candidate-home-job-list .candidate-job-card > * {
    min-width: 0;
    max-width: 100%;
}

.candidate-home-job-list .job-card-description {
    display: block;
    overflow: visible;
    overflow-wrap: anywhere;
    -webkit-line-clamp: unset;
}

.candidate-home-job-list .candidate-job-card .card-actions {
    position: static;
    align-self: auto;
}

.search-jobs-summary {
    padding: 16px 18px;
    background: #fff;
}

.attachment-mini {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

.attachment-mini span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 10px;
    border-radius: 999px;
    background: #eef5ff;
    color: var(--accent-dark);
    font-size: 12px;
    font-weight: 820;
}

.candidate-interview-card {
    grid-template-columns: 58px minmax(0, 1fr) 400px;
    align-items: stretch;
    scroll-margin-top: 96px;
    background: linear-gradient(180deg, #fff, #fbfdff);
}

.candidate-interview-card:target {
    border-color: #78a9ff;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12), 0 16px 34px rgba(19, 32, 51, 0.1);
}

.candidate-interview-company {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 5px;
    color: #334155;
    font-size: 13px;
    font-weight: 850;
    line-height: 1.35;
}

.candidate-interview-company svg {
    width: 15px;
    height: 15px;
    flex: none;
    color: var(--accent-dark);
}

.candidate-interview-notes {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-top: 10px;
    padding: 9px 10px;
    border-left: 3px solid #8fb5ff;
    background: #f7faff;
    color: #475569;
}

.candidate-interview-notes svg {
    width: 16px;
    height: 16px;
    flex: none;
    color: var(--accent-dark);
}

.candidate-interview-notes span,
.candidate-interview-notes small {
    display: block;
}

.candidate-interview-notes strong {
    color: #0f172a;
    font-size: 12px;
}

.candidate-interview-notes small {
    margin-top: 2px;
    font-size: 12px;
    line-height: 1.45;
}

.interview-time-row {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 9px 0 3px;
    padding: 7px 10px;
    border: 1px solid #d8e7ff;
    border-radius: 8px;
    background: #f4f8ff;
    color: #334155;
    font-size: 13px;
    line-height: 1.35;
}

.interview-time-row svg {
    width: 15px;
    height: 15px;
    flex: none;
    color: var(--accent-dark);
}

.interview-time-row strong {
    color: #0f172a;
    font-weight: 850;
}

.candidate-interview-response {
    display: grid;
    grid-template-rows: minmax(40px, auto) 1fr;
    gap: 10px;
    align-self: stretch;
    min-width: 0;
    min-height: 156px;
}

.candidate-interview-response form {
    margin: 0;
}

.candidate-interview-response-main,
.candidate-interview-response-actions {
    min-width: 0;
}

.candidate-interview-response-main {
    display: grid;
    min-height: 40px;
}

.candidate-interview-response-main > form {
    display: grid;
}

.candidate-interview-response-main .small-btn {
    min-height: 40px;
}

.candidate-interview-response-actions {
    display: grid;
    min-height: 96px;
}

.candidate-interview-response details {
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
    min-width: 0;
}

.candidate-interview-response summary {
    min-height: 34px;
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 7px 10px;
    color: var(--text);
    cursor: pointer;
    font-size: 13px;
    font-weight: 850;
    line-height: 1.2;
    list-style: none;
    white-space: nowrap;
}

.candidate-interview-response summary::-webkit-details-marker {
    display: none;
}

.candidate-interview-response summary svg {
    width: 15px;
    height: 15px;
    flex: none;
    color: var(--accent-dark);
}

.candidate-interview-response details form {
    display: grid;
    gap: 8px;
    padding: 0 10px 10px;
}

.candidate-interview-response textarea {
    min-height: 74px;
    width: 100%;
    font-size: 13px;
}

.candidate-interview-response .small-btn,
.candidate-interview-response .danger-btn {
    width: 100%;
    justify-content: center;
    white-space: nowrap;
}

.candidate-interview-placeholder {
    display: flex;
    align-items: center;
    min-height: 40px;
    padding: 0 12px;
    border-radius: 8px;
    background: #f1f5f9;
    color: #64748b;
    font-size: 12px;
    font-weight: 850;
}

.positive-action {
    border-color: #bfe4cc;
    background: #ecfdf3;
    color: #08743f;
}

.candidate-interview-decision {
    min-height: 40px;
    display: flex;
    align-items: center;
    gap: 10px;
    align-self: stretch;
    padding: 10px 12px;
    border-radius: 8px;
    border: 1px solid var(--line);
    background: #fff;
    color: #334155;
}

.candidate-interview-decision svg {
    width: 19px;
    height: 19px;
    flex: none;
}

.candidate-interview-decision strong,
.candidate-interview-decision small {
    display: block;
}

.candidate-interview-decision strong {
    color: #0f172a;
    font-size: 13px;
    font-weight: 900;
}

.candidate-interview-decision small {
    margin-top: 3px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 720;
}

.candidate-interview-decision.confirmed {
    border-color: #bfe4cc;
    background: #ecfdf3;
    color: #08743f;
}

.candidate-interview-decision.reschedule {
    border-color: #fed7aa;
    background: #fff7ed;
    color: #9a3412;
}

.candidate-interview-decision.declined {
    border-color: #fecaca;
    background: #fff1f2;
    color: #be123c;
}

.candidate-interview-decision.completed {
    border-color: #bfdbfe;
    background: #eff6ff;
    color: var(--accent-dark);
}

.interview-card,
.suggestion-card,
.settings-list article {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
}

.calendar-chip {
    width: 54px;
    height: 58px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: #fff;
    border: 1px solid var(--line);
}

.calendar-chip strong {
    font-size: 22px;
}

.calendar-chip span {
    margin-top: -12px;
    color: var(--muted);
    font-size: 11px;
    font-weight: 800;
}

.timeline,
.action-list,
.settings-list,
.permission-table {
    display: grid;
    gap: 10px;
}

.timeline article {
    display: flex;
    gap: 10px;
    padding: 11px;
    border-left: 3px solid var(--accent);
    background: var(--panel-2);
    border-radius: 6px;
}

.timeline strong,
.settings-list strong {
    display: block;
}

.timeline p,
.settings-list p {
    margin: 2px 0 0;
    color: var(--muted);
    font-size: 13px;
}

.action-list label,
.action-task,
.checkbox-grid label {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px;
    border: 1px solid var(--line);
    border-radius: 6px;
    color: var(--text);
    background: var(--panel-2);
    text-transform: none;
}

.action-task {
    color: var(--text);
    transition: border-color 160ms ease, background 160ms ease, transform 160ms ease;
}

.action-task:hover,
.action-task:focus-visible {
    border-color: #8fb5ff;
    background: #f4f8ff;
    color: var(--text);
    transform: translateY(-1px);
}

.action-task svg {
    width: 18px;
    height: 18px;
    color: var(--accent-dark);
    flex: none;
}

.action-task span {
    flex: 1 1 auto;
    min-width: 0;
    overflow-wrap: anywhere;
    font-size: 13px;
    font-weight: 760;
}

.action-task strong {
    color: var(--accent-dark);
    font-size: 12px;
    white-space: nowrap;
}

.action-list input,
.checkbox-grid input {
    width: auto;
    min-height: auto;
}

.dense-form {
    margin-top: 0;
}

.candidate-interview-change-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    min-height: 96px;
}

.candidate-interview-change-actions details {
    min-width: 0;
    min-height: 94px;
}

.organization-form {
    display: grid;
    gap: 18px;
}

.organization-required-note {
    margin: 0;
    color: var(--muted);
    font-size: 12px;
    font-weight: 650;
    text-align: right;
}

.organization-required-note span,
.organization-form .required-mark {
    color: #d92d20;
}

.organization-form .field-error {
    display: block;
    min-height: 0;
    margin-top: 2px;
    color: #b42318;
    font-size: 11px;
    font-weight: 700;
    text-transform: none;
}

.organization-form .field-error:not(:empty) {
    min-height: 16px;
}

.organization-form input.field-invalid,
.organization-form select.field-invalid,
.organization-form textarea.field-invalid {
    border-color: #d92d20;
    background: #fff8f7;
}

.organization-accordion {
    position: relative;
    min-width: 0;
    margin: 0;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fbfdff;
    overflow: hidden;
}

.organization-accordion[open] {
    z-index: 20;
    overflow: visible;
}

.organization-accordion summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-height: 52px;
    padding: 14px 18px;
    color: var(--text);
    font-size: 15px;
    font-weight: 850;
    cursor: pointer;
    list-style: none;
}

.organization-accordion summary::-webkit-details-marker {
    display: none;
}

.organization-accordion summary span {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.organization-accordion summary svg {
    width: 18px;
    height: 18px;
    color: var(--accent);
    flex: 0 0 auto;
}

.organization-accordion summary > svg:last-child {
    color: #64748b;
    transition: transform 160ms ease;
}

.organization-accordion[open] summary {
    border-bottom: 1px solid var(--line);
    background: #f8fbff;
}

.organization-accordion[open] summary > svg:last-child {
    transform: rotate(180deg);
}

.organization-form-section {
    min-width: 0;
    margin: 0;
    padding: 18px;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.organization-form-section legend {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 10px;
    color: var(--text);
    font-size: 15px;
    font-weight: 850;
}

.organization-form-section legend svg {
    width: 19px;
    height: 19px;
    color: var(--accent);
}

.organization-verification-note {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    border: 1px solid #cfe0ff;
    border-radius: 10px;
    background: #f5f8ff;
    color: #526075;
}

.organization-verification-note > svg {
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    margin-top: 1px;
    color: #2454e8;
}

.organization-verification-note strong {
    display: block;
    color: #24324b;
    font-size: 13px;
    font-weight: 850;
    line-height: 1.35;
}

.organization-verification-note span {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    font-weight: 650;
    line-height: 1.5;
}

.organization-form-section .country-search,
.organization-form-section .location-search,
.organization-form-section .master-data-search {
    min-height: 36px;
    padding-block: 7px;
    border-color: #c8d5e5;
    background: #fff;
    color: var(--text);
    font-size: 13px;
    text-transform: none;
}

.searchable-select-field {
    position: relative;
    display: block;
    min-width: 0;
}

.searchable-select-field > input[type="search"] {
    display: none;
}

.searchable-select-enhanced > select {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 1px;
    min-height: 1px;
    height: 1px;
    padding: 0;
    border: 0;
    opacity: 0;
    pointer-events: none;
}

.searchable-select-button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    min-height: 42px;
    padding: 10px 11px;
    border: 1px solid #c8d5e5;
    border-radius: 6px;
    background: #fff;
    color: var(--text);
    font-weight: 700;
    text-align: left;
}

.searchable-select-button svg {
    width: 17px;
    height: 17px;
    color: #64748b;
    flex: 0 0 auto;
}

.searchable-select-button:focus,
.searchable-select-field.is-open .searchable-select-button {
    border-color: #6aa8ff;
    box-shadow: 0 0 0 4px rgba(13, 110, 253, 0.13);
}

.searchable-select-field.is-disabled .searchable-select-button,
.searchable-select-button:disabled {
    background: #f1f5f9;
    color: var(--muted);
    cursor: not-allowed;
}

.searchable-select-panel {
    position: absolute;
    z-index: 80;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    display: none;
    padding: 10px;
    border: 1px solid #b8cef0;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 20px 44px rgba(19, 32, 51, 0.2);
}

.searchable-select-field.is-open .searchable-select-panel {
    display: grid;
    gap: 8px;
}

.searchable-select-panel-search {
    min-height: 36px;
    padding: 7px 10px;
    border-color: #c8d5e5;
    background: #fff;
    font-size: 13px;
    text-transform: none;
}

.searchable-select-list {
    display: grid;
    gap: 4px;
    max-height: 280px;
    overflow-y: auto;
    padding-right: 3px;
}

.searchable-select-option {
    width: 100%;
    min-height: 38px;
    padding: 9px 11px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--text);
    font-size: 13px;
    font-weight: 700;
    text-align: left;
}

.searchable-select-option:hover,
.searchable-select-option[aria-selected="true"] {
    background: #eaf2ff;
    color: #084298;
}

.searchable-select-option:disabled,
.searchable-select-empty {
    color: #8a97aa;
    cursor: default;
}

.searchable-select-empty {
    padding: 10px;
    font-size: 13px;
    font-weight: 650;
    text-transform: none;
}

.organization-form-section [data-timezone-select],
.organization-form-section [data-state-select]:disabled,
.organization-form-section [data-city-select]:disabled {
    background-color: #f1f5f9;
    color: var(--muted);
    cursor: not-allowed;
    pointer-events: none;
}

.organization-billing-section .dense-form {
    gap: 12px 14px;
}

.organization-billing-section label {
    gap: 5px;
}

.organization-billing-section input,
.organization-billing-section select,
.organization-billing-section .master-data-search,
.organization-billing-section .vacancy-limit-control {
    min-height: 38px;
}

.organization-billing-section input,
.organization-billing-section select,
.organization-billing-section .master-data-search {
    padding-top: 7px;
    padding-bottom: 7px;
}

.vacancy-limit-control {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: #fff;
    overflow: hidden;
}

.vacancy-limit-control:focus-within {
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.10);
}

.vacancy-limit-control input {
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.vacancy-limit-control strong {
    padding: 0 12px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 750;
    text-transform: none;
    white-space: nowrap;
}

.organization-toggle-list,
.organization-role-toggle-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.organization-role-toggle-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.organization-role-toggle-list > span {
    grid-column: 1 / -1;
    color: var(--muted);
    font-size: 12px;
    font-weight: 850;
    text-transform: uppercase;
}

.organization-toggle-list .checkbox-line,
.organization-role-toggle-list .checkbox-line {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    min-height: 48px;
    padding: 12px 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
    text-transform: none;
    transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}

.organization-toggle-list .checkbox-line:hover,
.organization-role-toggle-list .checkbox-line:hover {
    border-color: #a9c7f5;
    background: #f8fbff;
}

.organization-toggle-list .checkbox-line:focus-within,
.organization-role-toggle-list .checkbox-line:focus-within {
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.10);
}

.organization-toggle-list .checkbox-line input[type="checkbox"],
.organization-role-toggle-list .checkbox-line input[type="checkbox"] {
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    min-height: 18px;
    margin: 2px 0 0;
    padding: 0;
    accent-color: var(--accent);
    cursor: pointer;
}

.organization-toggle-list .checkbox-line > span,
.organization-role-toggle-list .checkbox-line > span {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.organization-toggle-list .checkbox-line strong,
.organization-role-toggle-list .checkbox-line strong {
    color: var(--text);
    font-size: 13px;
    font-weight: 800;
}

.organization-toggle-list .checkbox-line small,
.organization-role-toggle-list .checkbox-line small {
    color: var(--muted);
    font-size: 12px;
    font-weight: 500;
    line-height: 1.4;
}

.organization-form-actions {
    position: sticky;
    bottom: 12px;
    z-index: 8;
    justify-content: flex-end;
    gap: 8px;
    padding: 10px 12px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 10px 24px rgba(19, 32, 51, 0.1);
    backdrop-filter: blur(8px);
}

.organization-form-actions .primary-btn,
.organization-form-actions .small-btn,
.organization-form-actions .ghost-btn {
    min-height: 36px;
    min-width: 0;
    padding: 7px 12px;
    border-radius: 7px;
    font-size: 13px;
    line-height: 1.2;
}

@media (max-width: 720px) {
    .organization-form-section {
        padding: 18px 14px;
    }

    .organization-toggle-list,
    .organization-role-toggle-list {
        grid-template-columns: 1fr;
    }

    .organization-form-actions > * {
        flex: 1 1 140px;
        justify-content: center;
    }
}

.full-span {
    grid-column: 1 / -1;
}

.staffing-dashboard-page,
.staffing-operations-page {
    display: grid;
    gap: 16px;
}

.staffing-hero-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 22px;
    padding: 26px 28px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(247, 251, 255, 0.96)),
        linear-gradient(90deg, rgba(13, 110, 253, 0.12), rgba(19, 122, 63, 0.10));
}

.staffing-hero-copy {
    display: grid;
    gap: 8px;
    max-width: 920px;
}

.staffing-hero-panel .hero-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 10px;
}

.staffing-hero-panel .hero-actions a {
    flex: 0 1 auto;
    min-height: 42px;
    white-space: nowrap;
}

.staffing-hero-panel h3 {
    max-width: 900px;
    margin: 0;
    font-size: clamp(25px, 2.3vw, 32px);
    font-weight: 860;
    line-height: 1.16;
}

.staffing-hero-panel p {
    max-width: 900px;
    margin: 0;
    color: var(--muted);
    font-size: 15px;
    line-height: 1.55;
}

@media (max-width: 720px) {
    .staffing-hero-panel {
        gap: 18px;
        padding: 22px 16px;
    }

    .staffing-hero-panel .hero-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .staffing-hero-panel .hero-actions a {
        justify-content: center;
        white-space: normal;
        text-align: center;
    }
}

@media (max-width: 460px) {
    .staffing-hero-panel .hero-actions {
        grid-template-columns: 1fr;
    }
}

.staffing-form-stack {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.staffing-submission-form {
    --submission-field-height: 44px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 14px;
    width: 100%;
    margin-top: 0;
}

.staffing-submission-form > * {
    min-width: 0;
}

.staffing-submission-form label {
    display: flex;
    flex-direction: column;
    align-self: stretch;
    min-width: 0;
    gap: 6px;
    color: #526075;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.35;
    text-transform: none;
}

.staffing-submission-form label > span:first-child {
    display: flex;
    align-items: baseline;
    min-height: 18px;
    gap: 4px;
    color: #344054;
    letter-spacing: 0;
}

.staffing-submission-form label > span:first-child small {
    color: #718096;
    font-size: 11px;
    font-weight: 700;
}

.staffing-submission-form input,
.staffing-submission-form select,
.staffing-submission-form textarea,
.staffing-submission-form .currency-input {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

.staffing-submission-form input,
.staffing-submission-form select {
    height: var(--submission-field-height);
    min-height: var(--submission-field-height);
    padding: 0 12px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 650;
    line-height: 20px;
}

.staffing-submission-form input[type="file"] {
    padding: 9px 12px;
}

.staffing-submission-form textarea {
    min-height: 58px;
    padding: 10px 12px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 650;
    line-height: 20px;
    resize: vertical;
}

.staffing-submission-form textarea[name="notes"] {
    min-height: 72px;
}

.staffing-submission-form .currency-input {
    grid-template-columns: auto minmax(0, 1fr);
    height: var(--submission-field-height);
    min-height: var(--submission-field-height);
    border-radius: 6px;
}

.staffing-submission-form .currency-input span {
    padding-left: 12px;
}

.staffing-submission-form .currency-input input {
    height: calc(var(--submission-field-height) - 2px);
    min-height: calc(var(--submission-field-height) - 2px);
    padding: 0 12px 0 8px;
}

.staffing-submission-form .helper-text,
.staffing-submission-form .field-error {
    display: block;
    margin: 0;
    font-size: 11px;
    font-weight: 700;
    line-height: 16px;
    text-transform: none;
}

.staffing-submission-form .helper-text {
    color: #667085;
}

.staffing-submission-form .field-error {
    color: #b42318;
}

.staffing-submission-form .form-required-guidance {
    align-items: flex-start;
    gap: 8px;
    margin: 0;
    padding: 12px;
    line-height: 18px;
}

.staffing-submission-form .form-required-guidance svg {
    flex: 0 0 auto;
    margin-top: 1px;
}

.staffing-submission-form .form-actions {
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
    margin-top: 0;
}

@media (max-width: 900px) {
    .dashboard-job-summary {
        grid-template-columns: 1fr;
        align-items: start;
    }

    .dashboard-job-badges {
        justify-content: flex-start;
    }

    .dashboard-job-summary .small-btn {
        width: 100%;
        justify-content: center;
    }

    .staffing-submission-form {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .submission-import-form,
    .submission-upload-row,
    .submission-tracker-grid {
        grid-template-columns: 1fr;
    }

    .submission-upload-row .primary-btn {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 560px) {
    .staffing-submission-form {
        gap: 12px;
    }

    .staffing-submission-form .form-required-guidance {
        padding: 10px;
    }

    .staffing-submission-form .form-actions {
        align-items: stretch;
        flex-direction: column-reverse;
    }

    .staffing-submission-form .form-actions > * {
        width: 100%;
        justify-content: center;
    }
}

.staffing-inline-form {
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
}

.staffing-inline-form h4 {
    margin: 0;
    font-size: 15px;
    font-weight: 850;
}

.inline-status-form {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.inline-status-form select,
.inline-status-form input {
    width: min(150px, 100%);
    min-height: 34px;
    padding: 6px 8px;
}

.row-actions {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: nowrap;
}

.row-actions .inline-status-form {
    flex-wrap: nowrap;
}

.vendor-multi-select {
    padding: 14px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--panel-2);
}

.vendor-picker-heading,
.vendor-picker-heading > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.vendor-picker-heading > div {
    align-items: baseline;
}

.vendor-picker-heading strong {
    color: var(--primary);
    font-size: 12px;
}

.field-label {
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.vendor-search-wrap {
    position: relative;
    margin: 12px 0;
}

.vendor-search-wrap svg {
    position: absolute;
    left: 11px;
    top: 50%;
    width: 16px;
    transform: translateY(-50%);
    color: var(--muted);
    pointer-events: none;
}

.vendor-search-wrap input {
    width: 100%;
    padding-left: 36px;
}

.vendor-option-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    max-height: 280px;
    overflow-y: auto;
    padding: 2px;
}

.vendor-option {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 10px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--panel);
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease, transform .15s ease;
}

.vendor-option:hover {
    border-color: var(--primary);
    transform: translateY(-1px);
}

.vendor-option:has(input:checked) {
    border-color: var(--primary);
    background: color-mix(in srgb, var(--primary) 8%, var(--panel));
}

.vendor-option > input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.vendor-option-check {
    display: grid;
    flex: 0 0 22px;
    width: 22px;
    height: 22px;
    place-items: center;
    border: 1px solid var(--border);
    border-radius: 6px;
    color: transparent;
}

.vendor-option:has(input:checked) .vendor-option-check {
    border-color: var(--primary);
    background: var(--primary);
    color: white;
}

.vendor-option-check svg {
    width: 14px;
}

.vendor-option-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.vendor-option-copy strong,
.vendor-option-copy small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.vendor-option-copy small {
    color: var(--muted);
}

@media (max-width: 720px) {
    .vendor-option-list {
        grid-template-columns: 1fr;
    }
}

.attachment-actions {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.attachment-state {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: #f8fbff;
}

.attachment-state svg {
    width: 17px;
    height: 17px;
    stroke-width: 3;
}

.attachment-state.attached {
    border-color: #b8e6c9;
    background: #effdf4;
    color: var(--good);
}

.attachment-state.missing {
    border-color: #ffd3cc;
    background: #fff5f3;
    color: var(--danger);
}

.column-manager {
    padding: 0;
}

.column-manager summary {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 14px 16px;
    cursor: pointer;
    font-weight: 850;
}

.column-manager summary svg {
    width: 18px;
    height: 18px;
}

.column-manager-form {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 10px;
    padding: 0 16px 16px;
}

.column-manager-form .form-actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
}

.screening-builder {
    display: grid;
    gap: 8px;
    padding: 12px;
    border: 1px dashed var(--line);
    border-radius: 8px;
    background: var(--panel-2);
}

.question-row {
    display: grid;
    grid-template-columns: 1fr 42px;
    gap: 8px;
}

.candidate-workspace {
    display: grid;
    gap: 16px;
}

.pipeline-board {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: 12px;
    padding-bottom: 8px;
}

.pipeline-column {
    min-height: 360px;
    display: grid;
    grid-template-rows: auto 1fr;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
}

.pipeline-column header {
    display: flex;
    justify-content: space-between;
    padding: 12px;
    border-bottom: 1px solid var(--line);
    font-weight: 820;
}

.pipeline-dropzone {
    display: grid;
    align-content: start;
    gap: 10px;
    padding: 10px;
}

.candidate-card {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    padding: 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel);
    cursor: grab;
}

.candidate-card.dragging {
    opacity: 0.55;
    transform: rotate(1deg) scale(0.98);
}

.pipeline-column.drop-ready {
    outline: 2px dashed var(--accent);
    outline-offset: 3px;
}

.candidate-avatar {
    position: relative;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 50%;
    background: #e7f1ff;
    color: var(--accent-dark);
    font-weight: 850;
}

.candidate-avatar span {
    position: relative;
    z-index: 1;
}

.candidate-avatar img {
    position: absolute;
    inset: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.candidate-avatar.large {
    width: 84px;
    height: 84px;
    font-size: 28px;
}

.verification-panel {
    display: grid;
    gap: 14px;
}

.verification-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(190px, 1fr));
    gap: 10px;
}

.verification-step {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fbfdff;
}

.verification-step.complete {
    border-color: #a8e6bf;
    background: #f1fff6;
}

.verification-step > svg {
    width: 34px;
    height: 34px;
    padding: 8px;
    border-radius: 8px;
    background: #eef5ff;
    color: var(--accent-dark);
}

.verification-step strong {
    display: block;
    font-size: 14px;
}

.verification-step p {
    margin: 2px 0 10px;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.45;
}

.verification-step a,
.verification-step form,
.verification-step .status-pill {
    grid-column: 1 / -1;
}

.status-pill {
    display: inline-flex;
    justify-content: center;
    padding: 7px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 850;
}

.status-pill.good {
    background: #dbf7e3;
    color: #13723b;
}

.verification-photo-form {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) auto;
    gap: 10px;
    align-items: end;
    padding-top: 14px;
    border-top: 1px solid var(--line);
}

.candidate-card h4,
.suggestion-card h4 {
    margin: 0;
    font-size: 14px;
}

.candidate-card p,
.suggestion-card p {
    margin: 2px 0 8px;
    color: var(--muted);
    font-size: 12px;
}

.match-meter {
    height: 6px;
    overflow: hidden;
    border-radius: 999px;
    background: var(--panel-2);
}

.match-meter span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #13a463, #79d28f);
}

.candidate-meta,
.match-badge,
.stars {
    color: var(--muted);
    font-size: 12px;
    font-weight: 760;
}

.stars {
    color: #f59f00;
}

.mini-empty,
.premium-empty,
.loading-state {
    display: grid;
    place-items: center;
    gap: 8px;
    min-height: 110px;
    padding: 14px;
    border: 1px dashed var(--line);
    border-radius: 8px;
    color: var(--muted);
    text-align: center;
    background: var(--panel);
}

.mini-empty {
    min-height: 72px;
    font-size: 12px;
}

.premium-empty svg {
    color: var(--accent);
}

.loading-state span {
    width: 100%;
    height: 10px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--panel-2), #e7f1ff, var(--panel-2));
    animation: shimmer 1.4s ease-in-out infinite;
}

@keyframes shimmer {
    0% { opacity: 0.45; }
    50% { opacity: 1; }
    100% { opacity: 0.45; }
}

.calendar-shell {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) minmax(260px, 0.8fr);
    gap: 16px;
}

.calendar-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 8px;
}

.calendar-grid button {
    aspect-ratio: 1;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
    color: var(--text);
}

.calendar-grid button.has-event {
    background: var(--accent);
    color: #fff;
}

.availability-card,
.pricing-card {
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: var(--panel-2);
}

.pricing-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 14px;
}

.pricing-card {
    display: grid;
    gap: 5px;
}

.pricing-card.active {
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.12);
}

.settings-list article {
    justify-content: space-between;
}

.permission-table div {
    display: grid;
    grid-template-columns: 1fr 1fr auto;
    gap: 10px;
    align-items: center;
    padding: 10px;
    border: 1px solid var(--line);
    border-radius: 8px;
}

.switch {
    display: inline-flex;
    align-items: center;
}

.switch input {
    position: absolute;
    opacity: 0;
}

.switch span {
    width: 42px;
    height: 24px;
    border-radius: 999px;
    background: #cbd5e1;
    position: relative;
}

.switch span::after {
    content: "";
    width: 18px;
    height: 18px;
    position: absolute;
    top: 3px;
    left: 3px;
    border-radius: 50%;
    background: #fff;
    transition: transform 160ms ease;
}

.switch input:checked + span {
    background: var(--accent);
}

.switch input:checked + span::after {
    transform: translateX(18px);
}

.wizard-progress {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    margin-bottom: 16px;
}

.wizard-progress span {
    padding: 9px 10px;
    border-radius: 999px;
    background: var(--panel-2);
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
    text-align: center;
}

.wizard-progress .active {
    background: var(--accent);
    color: #fff;
}

.wizard-grid {
    display: grid;
    gap: 16px;
}

.wizard-step {
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 8px;
}

.checkbox-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
}

.recruiter-modal .modal-content {
    border: 0;
    border-radius: 8px;
    box-shadow: var(--shadow);
}

.recruiter-modal .modal-header {
    align-items: flex-start;
}

.recruiter-modal .modal-title {
    font-size: 24px;
    font-weight: 840;
}

.recruiter-modal .modal-header p {
    margin: 4px 0 0;
    color: var(--muted);
}

.candidate-profile-preview {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 18px;
}

.candidate-profile-preview aside {
    display: grid;
    align-content: start;
    justify-items: center;
    gap: 8px;
    padding: 16px;
    border-radius: 8px;
    background: var(--panel-2);
    text-align: center;
}

.resume-preview {
    min-height: 220px;
    display: grid;
    place-items: center;
    margin-bottom: 14px;
    border: 1px dashed var(--line);
    border-radius: 8px;
    color: var(--muted);
    background: var(--panel-2);
}

@media (max-width: 1060px) {
    .help-topic-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    .help-contact-grid {
        grid-template-columns: 1fr;
    }

    .account-settings-grid {
        grid-template-columns: 1fr;
    }

    .account-password-layout {
        grid-template-columns: 1fr;
    }

    .account-metrics-grid .metric-email {
        grid-column: auto;
    }

    .document-library-grid {
        grid-template-columns: 1fr;
    }

    .tracking-support-grid {
        grid-template-columns: 1fr;
    }

    .saved-recommendation-grid,
    .saved-jobs-grid {
        grid-template-columns: 1fr;
    }

    .candidate-dashboard-metrics,
    .recruiter-activity-grid {
        grid-template-columns: 1fr;
    }

    .job-results-layout,
    .candidate-hero-grid,
    .job-detail-layout,
    .applicant-detail-grid,
    .applicant-review-grid,
    .admin-kpi-grid,
    .admin-detail-list,
    .hr-directory-hero,
    .hr-filter-grid,
    .hr-candidate-grid,
    .hr-candidate-sections,
    .kpi-grid,
    .analytics-grid,
    .workspace-grid,
    .module-grid,
    .settings-grid,
    .calendar-shell,
    .candidate-profile-preview,
    .candidate-results-grid,
    .candidate-job-grid,
    .candidate-page-grid,
    .job-edit-layout,
    .employer-analytics-grid,
    .login-page-grid,
    .portal-shell {
        grid-template-columns: 1fr;
    }

    .subscription-coming-soon { grid-template-columns:auto 1fr; }
    .subscription-coming-soon > .small-btn { grid-column:1 / -1; justify-self:start; }
    .subscription-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }

    .login-shell {
        align-items: start;
    }

    .login-marketing-panel {
        min-height: auto;
        padding: 0;
    }

    .login-marketing-copy h1 {
        max-width: 760px;
        font-size: 44px;
    }

    .login-form-panel {
        align-self: stretch;
    }

    .candidate-paper-header-inner {
        width: min(100% - 24px, 1180px);
        grid-template-columns: 1fr auto;
        gap: 10px;
        padding: 10px 0;
    }

    .candidate-top-nav {
        grid-column: 1 / -1;
        order: 3;
        padding: 2px 0 4px;
    }

    .candidate-paper-actions {
        position: static;
        transform: none;
    }

    .candidate-paper-main {
        width: min(100% - 24px, 1180px);
        padding-top: 22px;
    }

    .job-edit-aside {
        position: static;
    }

    .candidate-profile-side {
        position: static;
    }

    .applicant-job-panel {
        position: static;
    }

    .home-filter-panel {
        position: static;
    }

    .sidebar {
        min-height: auto;
        position: static;
        border-right: 0;
        border-bottom: 1px solid var(--line);
    }

    .nav-list {
        display: flex;
        flex-wrap: wrap;
        padding-bottom: 4px;
    }

    .sectioned-sidebar {
        height: auto;
    }

    .sectioned-sidebar .nav-list {
        display: grid;
        overflow: visible;
        padding-top: 16px;
    }

    .sectioned-sidebar .nav-section-items {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }

    .sectioned-sidebar .nav-section + .nav-section {
        margin-top: 15px;
    }

    .sectioned-sidebar .sidebar-signout {
        max-width: 240px;
    }

    .nav-item {
        flex: 0 0 auto;
    }

    .split-grid,
    .metrics-grid,
    .staffing-hero-panel,
    .staffing-form-stack,
    .toolbar-form {
        grid-template-columns: 1fr;
    }

    .candidate-login-card {
        max-width: 640px;
    }

    .candidate-hero-search {
        grid-template-columns: 1fr;
    }

    .recruiter-hero {
        flex-direction: column;
    }

    .employer-overview-hero {
        align-items: flex-start;
        flex-direction: column;
    }

    .candidate-section-hero {
        align-items: flex-start;
        flex-direction: column;
    }

    .candidate-private-overview {
        flex-direction: column;
    }

    .candidate-dashboard-score {
        width: 100%;
        flex-basis: auto;
    }

    .job-detail-hero {
        flex-direction: column;
    }

    .job-detail-actions {
        justify-content: flex-start;
    }

    .naukri-search-panel {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 14px;
        border-radius: 22px;
    }

    .naukri-search-panel label {
        min-height: 48px;
        padding: 0 0 8px;
        border-right: 0;
        border-bottom: 1px solid #e6ebf5;
    }

    .naukri-search-panel label:nth-child(3) {
        border-bottom: 0;
    }

    .naukri-search-panel .primary-btn {
        width: 100%;
    }

    .candidate-filter-reset {
        width: 100%;
    }

    .candidate-list-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .hero-actions {
        justify-content: flex-start;
    }

    .pipeline-board {
        grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    }

    .application-card,
    .interview-row-card,
    .applicant-profile-hero,
    .candidate-hero-card,
    .employer-job-main,
    .candidate-profile-card {
        grid-template-columns: 46px minmax(0, 1fr);
    }

    .application-card .applicant-card-action {
        grid-column: 2;
        justify-content: flex-start;
    }

    .application-card .applicant-details {
        grid-column: 1 / -1;
    }

    .employer-job-main {
        grid-template-columns: 46px minmax(0, 1fr);
    }

    .employer-job-card {
        grid-template-columns: minmax(0, 1fr);
    }

    .employer-job-main > .company-mark {
        width: 46px;
        height: 46px;
    }

    .employer-job-main .job-status-row {
        grid-column: 2;
    }

    .job-status-row {
        justify-content: flex-start;
    }

    .employer-job-actions {
        justify-content: flex-start;
    }

    .profile-score-card,
    .record-actions {
        grid-column: 1 / -1;
    }

    .candidate-profile-facts {
        grid-template-columns: 1fr;
    }

    .profile-editor-summary {
        grid-template-columns: minmax(0, 1fr);
    }

    .profile-meta-line {
        grid-template-columns: 1fr;
    }

    .application-actions,
    .applicant-wide-panel,
    .candidate-interview-response,
    .status-update-form {
        grid-column: 1 / -1;
    }

    .bulk-import-form {
        grid-template-columns: 1fr;
    }

    .bulk-import-form .secondary-btn {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 720px) {
    .help-intro {
        align-items: flex-start;
        flex-direction: column;
    }

    .help-quick-actions {
        justify-content: flex-start;
    }

    .help-topic-grid {
        grid-template-columns: 1fr;
    }

    .documents-context {
        align-items: flex-start;
        flex-direction: column;
    }

    .tracking-page-context {
        align-items: flex-start;
        flex-direction: column;
    }

    .tracking-empty-state {
        min-height: 280px;
        padding: 26px 18px;
    }

    .saved-jobs-context {
        align-items: flex-start;
        flex-direction: column;
    }

    .saved-jobs-empty {
        min-height: 280px;
        padding: 26px 18px;
    }

    .saved-empty-actions {
        width: 100%;
    }

    .saved-empty-actions a {
        width: 100%;
        justify-content: center;
    }

    .jobs-advanced-filters {
        grid-template-columns: 1fr;
    }

    .jobs-results-heading,
    .candidate-jobs-readiness {
        align-items: flex-start;
        flex-direction: column;
    }

    .jobs-results-copy {
        width: 100%;
    }

    .jobs-results-copy strong {
        max-width: 100%;
    }

    .jobs-results-actions,
    .jobs-results-actions .saved-jobs-count {
        width: 100%;
    }

    .candidate-jobs-readiness .hero-actions {
        width: 100%;
    }

    .candidate-dashboard-hero,
    .candidate-dashboard-identity {
        flex-direction: column;
    }

    .candidate-dashboard-actions {
        width: 100%;
        justify-items: start;
    }

    .dashboard-summary-action {
        margin-left: 0;
    }

    .dashboard-resume-empty,
    .dashboard-resume-ready {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .workspace,
    .home-content {
        padding-left: 14px;
        padding-right: 14px;
    }

    .home-hero {
        padding: 44px 0 34px;
    }

    .auth-shell {
        padding: 14px;
    }

    .login-shell {
        padding: 16px;
    }

    .login-page-grid {
        gap: 18px;
    }

    .login-marketing-copy h1 {
        font-size: 34px;
    }

    .login-marketing-copy p {
        font-size: 16px;
    }

    .login-benefit-list {
        gap: 0;
    }

    .login-proof-strip span {
        flex: 1 1 140px;
    }

    .login-form-panel {
        padding: 22px;
    }

    .candidate-paper-header-inner {
        width: calc(100% - 20px);
    }

    .candidate-paper-brand small {
        display: none;
    }

    .candidate-paper-actions {
        gap: 5px;
    }

    .candidate-profile-trigger {
        padding-inline: 10px;
    }

    .candidate-profile-dropdown {
        max-width: calc(100vw - 20px);
    }

    .candidate-top-nav-item {
        min-height: 36px;
        padding: 8px 10px;
        font-size: 12px;
    }

    .candidate-paper-main {
        width: calc(100% - 20px);
        padding-top: 18px;
    }

    .candidate-paper-title h1 {
        font-size: 25px;
    }

    .login-role-switcher {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .login-form-actions {
        justify-content: stretch;
    }

    .login-form-actions .small-btn {
        flex: 1 1 160px;
    }

    .auth-panel {
        padding: 20px;
    }

    .public-navbar .container,
    .section-heading,
    .public-job-card,
    .job-detail-title,
    .settings-list article,
    .topbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .job-detail-title h1 {
        font-size: 28px;
    }

    .job-detail-actions,
    .job-detail-actions .primary-btn,
    .job-detail-actions .small-btn,
    .job-detail-actions form {
        width: 100%;
    }

    .public-nav-actions {
        width: 100%;
        justify-content: stretch;
    }

    .public-nav-actions .btn {
        flex: 1 1 150px;
    }

    .public-pagination {
        align-items: flex-start;
        flex-direction: column;
    }

    .public-pagination > div {
        width: 100%;
        justify-content: flex-start;
    }

    .hr-directory-kpis,
    .hr-contact-strip {
        grid-template-columns: 1fr;
        min-width: 0;
        width: 100%;
    }

    .candidate-login-card {
        padding: 18px;
    }

    .candidate-search-band {
        margin-top: 0;
        padding-top: 14px;
    }

    .job-card-actions,
    .job-card-actions .btn {
        width: 100%;
    }

    .two-col,
    .seed-grid,
    .pricing-row,
    .checkbox-grid,
    .verification-grid,
    .exam-options,
    .applicant-filter-bar,
    .verification-photo-form,
    .profile-photo-modal-form,
    .upload-choice-card,
    .usage-list.compact,
    .wizard-progress,
    .permission-table div {
        grid-template-columns: 1fr;
    }

    .employer-applicant-filters > .filter-search,
    .employer-applicant-filters > label:nth-child(n+2),
    .employer-applicant-filters > .primary-btn,
    .employer-applicant-filters > .small-btn {
        grid-column: 1;
    }

    .upload-choice-card > span {
        justify-self: center;
    }

    .refined-panel,
    .employer-overview-hero {
        padding: 14px;
    }

    .status-update-form input,
    .status-update-form select,
    .status-update-form button,
    .applicant-card-action,
    .applicant-card-action .primary-btn,
    .applicant-card-action .small-btn,
    .applicant-filter-bar .primary-btn,
    .applicant-filter-bar .small-btn,
    .applicant-file-row,
    .applicant-facts,
    .candidate-job-card .card-actions,
    .candidate-job-card .card-actions form,
    .employer-job-actions a,
    .employer-job-actions form,
    .employer-job-actions button,
    .table-actions,
    .table-actions form,
    .table-actions a {
        width: 100%;
    }

    .collapsible-panel summary {
        align-items: flex-start;
        flex-direction: column;
    }

    .collapsible-action {
        margin-left: 28px;
    }

    .applicant-file-row {
        grid-template-columns: 38px minmax(0, 1fr);
    }

    .applicant-file-row > .small-btn,
    .applicant-file-row > .status-pill {
        grid-column: 1 / -1;
        justify-self: flex-start;
    }

    .candidate-hero-card.compact {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
    }

    .candidate-hero-card.compact .candidate-profile-facts {
        width: 100%;
    }

    .candidate-hero-card.compact .candidate-profile-facts span {
        grid-template-columns: 18px minmax(0, 1fr);
        text-align: left;
    }

    .candidate-hero-card.compact .candidate-profile-facts strong {
        grid-column: 2;
        white-space: normal;
    }

    .recruiter-hero {
        padding: 20px;
    }

    .dashboard-tabs {
        padding: 12px;
    }

    .kpi-card {
        min-height: 128px;
    }

    .filter-row input,
    .filter-row select,
    .filter-row button,
    .hero-actions .btn,
    .exam-submit-bar,
    .exam-topbar {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
    }

    .topbar h2 {
        font-size: 22px;
    }
}
