.careers-page,
.career-detail-page,
.career-admin-page {
    padding-top: calc(var(--header-height) + 58px);
    padding-bottom: 24px;
}

.careers-intro,
.career-detail-intro {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 18px;
    align-items: stretch;
}

.careers-kicker {
    margin-bottom: 10px;
}

.careers-intro-copy,
.career-detail-intro-copy {
    position: relative;
    z-index: 1;
}

.career-stat-grid,
.career-value-grid,
.career-card-grid,
.career-highlight-grid,
.career-admin-stats,
.career-admin-grid {
    display: grid;
    gap: 16px;
}

.career-stat-grid {
    grid-template-columns: repeat(3, minmax(120px, 1fr));
}

.career-stat-card,
.career-value-card,
.career-card,
.career-highlight-card,
.career-detail-panel,
.career-apply-panel,
.career-side-stat,
.career-admin-card,
.career-admin-table,
.career-auth-card,
.career-empty-state,
.career-not-found {
    border: 1px solid var(--line);
    border-radius: var(--radius-md);
    background: #fff;
    box-shadow: var(--shadow-1);
}

.career-stat-card,
.career-value-card,
.career-highlight-card,
.career-side-stat {
    padding: 18px;
}

.career-stat-card span,
.career-side-stat span,
.career-admin-stat span {
    display: block;
    margin-bottom: 8px;
    color: var(--ink-soft);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 700;
}

.career-stat-card strong,
.career-side-stat strong,
.career-admin-stat strong {
    display: block;
    color: var(--brand-black);
    font-size: 1.7rem;
    line-height: 1.1;
    margin-bottom: 6px;
}

.career-feature-band,
.career-openings-shell,
.career-highlight-shell,
.career-detail-layout,
.career-admin-shell {
    margin-top: clamp(30px, 5vw, 52px);
}

.career-value-grid,
.career-highlight-grid,
.career-admin-stats {
    grid-template-columns: repeat(3, minmax(220px, 1fr));
}

.career-value-card h3,
.career-highlight-card h3,
.career-detail-panel h2,
.career-apply-head h2,
.career-admin-card h2,
.career-auth-card h1 {
    font-size: 1.2rem !important;
}

.career-toolbar {
    margin-bottom: 18px;
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 16px;
    flex-wrap: wrap;
}

.career-toolbar p {
    margin-bottom: 0;
    color: var(--ink-soft);
}

.career-filter-bar,
.career-application-form,
.career-admin-form,
.career-login-form {
    display: grid;
    gap: 14px;
}

.career-filter-bar {
    grid-template-columns: 1.3fr 0.9fr 0.9fr 0.8fr;
    margin-bottom: 20px;
    padding: 18px;
    border-radius: var(--radius-md);
    border: 1px solid var(--line);
    background: rgba(255, 255, 255, 0.92);
    box-shadow: var(--shadow-1);
}

.career-field {
    display: grid;
    gap: 8px;
}

.career-field span {
    font-weight: 700;
    color: var(--brand-black);
}

.career-field input,
.career-field select,
.career-field textarea {
    width: 100%;
    min-height: 46px;
    padding: 12px 14px;
    border: 1px solid #d6d8df;
    border-radius: 10px;
    background: #fff;
    font-family: inherit;
    font-size: 0.95rem;
}

.career-field textarea {
    min-height: 140px;
    resize: vertical;
}

.career-field input:focus,
.career-field select:focus,
.career-field textarea:focus {
    outline: 0;
    border-color: var(--brand-red);
    box-shadow: 0 0 0 4px rgba(183, 15, 31, 0.12);
}

.career-filter-actions,
.career-card-actions,
.career-side-actions,
.career-admin-actions,
.career-auth-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.career-filter-actions {
    align-items: end;
}

.career-reset-link {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 18px;
    border-radius: var(--radius-pill);
    border: 1px solid #cfd2d8;
    background: #fff;
    font-weight: 700;
}

.career-btn-full {
    width: 100%;
}

.career-card-grid {
    grid-template-columns: repeat(2, minmax(260px, 1fr));
}

.career-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 14px;
    padding: 20px;
}

.career-card h3 a:hover,
.career-highlight-card a:hover {
    color: var(--brand-red);
}

.career-card-top p,
.career-highlight-card p {
    margin-bottom: 0;
}

.career-pill-row,
.career-detail-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}

.career-pill,
.career-detail-chip-row span {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    padding: 6px 12px;
    border-radius: var(--radius-pill);
    background: #111;
    color: #fff;
    font-size: 0.78rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    font-weight: 700;
}

.career-pill-soft {
    background: var(--brand-red-soft);
    color: var(--brand-red);
}

.career-meta-list {
    display: grid;
    gap: 10px;
    color: var(--ink-soft);
}

.career-meta-list span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.career-meta-list i {
    width: 18px;
    text-align: center;
    color: var(--brand-red);
}

.career-pagination {
    margin-top: 18px;
    display: flex;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
}

.career-pagination a {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #d5d7dd;
    background: #fff;
    font-weight: 700;
}

.career-pagination a.is-active,
.career-pagination a:hover {
    color: #fff;
    border-color: var(--brand-red);
    background: linear-gradient(135deg, var(--brand-red), #de2f43);
}

.career-empty-state,
.career-not-found {
    padding: 24px;
    text-align: center;
}

.career-highlight-card {
    background: linear-gradient(145deg, #111 0%, #2b2b2b 46%, #9f1020 140%);
    color: #fff;
}

.career-highlight-card small,
.career-highlight-card h3,
.career-highlight-card p,
.career-highlight-card a {
    color: inherit;
}

.career-highlight-card a {
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.career-detail-sidebox {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 12px;
}

.career-detail-layout {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 18px;
    align-items: start;
}

.career-detail-content,
.career-admin-column {
    display: grid;
    gap: 16px;
}

.career-detail-panel,
.career-apply-panel,
.career-admin-card,
.career-auth-card,
.career-admin-table {
    padding: 22px;
}

.career-list {
    margin: 0;
    padding-left: 18px;
    display: grid;
    gap: 10px;
}

.career-list li {
    color: var(--ink);
}

.career-alert {
    margin-bottom: 16px;
    padding: 14px 16px;
    border-radius: 12px;
    border: 1px solid transparent;
}

.career-alert strong {
    display: block;
    margin-bottom: 6px;
}

.career-alert ul {
    margin: 0;
    padding-left: 18px;
}

.career-alert-success {
    border-color: #c7e8d0;
    background: #eef8f1;
    color: #136a3a;
}

.career-alert-error {
    border-color: #f0c7cc;
    background: #fff1f3;
    color: #8a2130;
}

.career-file-note {
    color: var(--ink-soft);
}

.career-admin-shell {
    display: grid;
    gap: 20px;
}

.career-admin-stats {
    grid-template-columns: repeat(3, minmax(180px, 1fr));
}

.career-admin-stat {
    padding: 18px;
    border-radius: var(--radius-md);
    border: 1px solid var(--line);
    background: #fff;
    box-shadow: var(--shadow-1);
}

.career-admin-grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
}

.career-admin-table-wrap {
    overflow-x: auto;
}

.career-admin-table table {
    width: 100%;
    border-collapse: collapse;
}

.career-admin-table th,
.career-admin-table td {
    padding: 12px 10px;
    border-bottom: 1px solid #eceef2;
    text-align: left;
    vertical-align: top;
}

.career-admin-table th {
    color: var(--ink-soft);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 800;
}

.career-admin-table td strong {
    display: block;
    color: var(--brand-black);
}

.career-inline-form {
    display: inline;
}

.career-link-button,
.career-muted-link {
    border: 0;
    padding: 0;
    background: transparent;
    color: var(--brand-red);
    font-weight: 700;
    cursor: pointer;
}

.career-muted-link {
    color: var(--ink-soft);
}

.career-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(160px, 1fr));
    gap: 14px;
}

.career-form-grid .career-field:last-child,
.career-form-grid .career-field.career-span-full {
    grid-column: 1 / -1;
}

.career-switches {
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
}

.career-checkbox {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
}

.career-checkbox input {
    width: 18px;
    height: 18px;
}

.career-auth-wrap {
    width: min(560px, calc(100% - 24px));
    margin: clamp(110px, 14vw, 140px) auto 40px;
}

.career-auth-card p {
    margin-bottom: 18px;
}

.career-admin-note {
    padding: 14px 16px;
    border-radius: 12px;
    border: 1px solid #ead8bc;
    background: #fff7eb;
    color: #7c5812;
}

@media (max-width: 1180px) {
    .careers-intro,
    .career-detail-intro,
    .career-detail-layout,
    .career-admin-grid {
        grid-template-columns: 1fr;
    }

    .career-filter-bar,
    .career-value-grid,
    .career-highlight-grid,
    .career-admin-stats {
        grid-template-columns: repeat(2, minmax(180px, 1fr));
    }
}

@media (max-width: 900px) {
    .career-card-grid,
    .career-stat-grid,
    .career-filter-bar,
    .career-value-grid,
    .career-highlight-grid,
    .career-admin-stats,
    .career-form-grid {
        grid-template-columns: 1fr;
    }

    .career-toolbar {
        align-items: start;
    }
}

@media (max-width: 767px) {
    .careers-page,
    .career-detail-page,
    .career-admin-page {
        padding-top: calc(var(--header-height) + 52px);
    }

    .career-card,
    .career-detail-panel,
    .career-apply-panel,
    .career-admin-card,
    .career-auth-card,
    .career-admin-table,
    .career-empty-state,
    .career-not-found {
        padding: 18px;
    }
}
