.recruitment-page { background: #edf0e9; }
.recruitment-page .prototype-bar__inner > a { padding: 5px 0; font-size: 10px; font-weight: 800; }
.recruitment-page .prototype-bar__inner > a:hover { text-decoration: underline; }
.recruitment-page .primary-nav a.is-active { color: var(--ink); }

.recruitment-hero { position: relative; overflow: hidden; color: var(--white); background: var(--ink); }
.recruitment-hero__grid { position: absolute; inset: 0; opacity: .12; background-image: linear-gradient(rgba(134,238,227,.3) 1px, transparent 1px), linear-gradient(90deg, rgba(134,238,227,.3) 1px, transparent 1px); background-size: 66px 66px; mask-image: linear-gradient(90deg, #000, transparent 92%); }
.recruitment-hero::after { content: ""; position: absolute; right: -180px; top: -260px; width: 650px; height: 650px; border: 1px solid rgba(201,255,71,.2); border-radius: 50%; box-shadow: 0 0 0 100px rgba(201,255,71,.025), 0 0 0 200px rgba(201,255,71,.018); }
.recruitment-hero__layout { position: relative; z-index: 1; min-height: 600px; padding-block: 84px; display: grid; grid-template-columns: minmax(0, 1.04fr) minmax(390px, .76fr); gap: 85px; align-items: center; }
.recruitment-hero__copy h1 { max-width: 720px; margin: 0; font-size: clamp(62px, 7vw, 104px); line-height: .98; letter-spacing: -.068em; }
.recruitment-hero__copy h1 em { color: var(--acid); font-style: normal; }
.recruitment-hero__copy > p:last-of-type { max-width: 650px; margin: 28px 0 0; color: #a5b8bc; font-size: 16px; line-height: 1.9; }
.recruitment-hero__actions { margin-top: 34px; display: flex; flex-wrap: wrap; gap: 12px; }

.recruitment-hero__panel { position: relative; min-height: 430px; padding: 30px; display: flex; flex-direction: column; border: 1px solid #345058; background: rgba(15,42,49,.84); box-shadow: 0 34px 90px rgba(0,0,0,.25); }
.recruitment-signal { position: relative; width: 210px; height: 210px; margin: 0 auto; border: 1px solid rgba(134,238,227,.4); border-radius: 50%; }
.recruitment-signal::before, .recruitment-signal::after { content: ""; position: absolute; left: 50%; top: 50%; background: rgba(134,238,227,.3); transform: translate(-50%,-50%); }
.recruitment-signal::before { width: 1px; height: 130%; }
.recruitment-signal::after { width: 130%; height: 1px; }
.recruitment-signal i { position: absolute; inset: 30px; border: 1px solid rgba(134,238,227,.28); border-radius: 50%; }
.recruitment-signal i:nth-child(2) { inset: 70px; background: var(--acid); border: 0; box-shadow: 0 0 24px rgba(201,255,71,.55); }
.recruitment-signal b { position: absolute; z-index: 1; right: -15px; top: 24px; color: var(--acid); font: 800 48px/1 Arial, sans-serif; letter-spacing: -.07em; }
.recruitment-signal--career b { right: -18px; top: 25px; font-family: inherit; font-size: 43px; letter-spacing: -.08em; }
.recruitment-hero__panel dl { margin: auto 0 0; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid #345058; }
.recruitment-hero__panel dl div { padding: 18px 8px 2px; border-right: 1px solid #345058; }
.recruitment-hero__panel dl div:last-child { border-right: 0; }
.recruitment-hero__panel dt { color: var(--acid); font: 800 28px/1 Arial, sans-serif; }
.recruitment-hero__panel dd { margin: 7px 0 0; color: #789096; font-size: 9px; }
.recruitment-hero__panel > p { margin: 20px 0 0; color: #6f878c; font-size: 9px; text-align: right; }

.job-board-section { padding: 105px 0 120px; }
.job-board-heading { margin-bottom: 52px; display: grid; grid-template-columns: 1fr .65fr; gap: 80px; align-items: end; }
.job-board-heading h2 { margin: 0; font-size: clamp(42px, 5vw, 72px); line-height: 1.05; letter-spacing: -.06em; }
.job-board-heading > p { margin: 0 0 8px; padding-top: 18px; border-top: 1px solid var(--ink); color: var(--muted); font-size: 12px; }

.job-board-layout { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 38px; align-items: start; }
.job-board-sidebar { position: sticky; top: 108px; border-top: 2px solid var(--ink); }
.job-search-field { display: block; padding: 19px 0 22px; border-bottom: 1px solid #bdc6c0; }
.job-search-field > span:first-child, .job-board-filters > p, .job-source-links > p { display: block; margin: 0 0 10px; color: #7b8884; font: 800 9px/1.2 Arial, sans-serif; letter-spacing: .11em; }
.job-search-field > span:last-child { position: relative; display: block; }
.job-search-field input { width: 100%; height: 45px; padding: 10px 39px 10px 12px; border: 1px solid #b7c1bb; border-radius: 0; outline: none; color: var(--ink); background: var(--white); font-size: 12px; }
.job-search-field input:focus { border-color: var(--ink); box-shadow: 0 0 0 2px rgba(7,24,29,.08); }
.job-search-field svg { position: absolute; right: 12px; top: 13px; width: 19px; height: 19px; }
.job-board-filters { padding: 19px 0; border-bottom: 1px solid #bdc6c0; }
.job-board-filters button { width: 100%; min-height: 42px; padding: 8px 9px; display: flex; justify-content: space-between; align-items: center; border: 0; border-left: 2px solid transparent; color: #536065; background: transparent; cursor: pointer; text-align: left; font-size: 12px; font-weight: 700; transition: .2s ease; }
.job-board-filters button:hover, .job-board-filters button.is-active { padding-left: 14px; border-left-color: var(--ink); color: var(--ink); background: var(--white); }
.job-board-filters sup { color: #8a9691; font: 700 9px Arial, sans-serif; }
.job-source-links { padding-top: 21px; }
.job-source-links a { padding: 6px 0; display: flex; justify-content: space-between; color: #637075; font-size: 10px; }
.job-source-links a:hover { color: var(--ink); }
.job-source-links a span { color: var(--orange); }

.job-board-content { min-width: 0; }
.job-board-toolbar { min-height: 58px; padding: 0 3px 14px; display: flex; justify-content: space-between; align-items: start; border-top: 2px solid var(--ink); }
.job-board-toolbar > div { padding-top: 13px; display: flex; align-items: baseline; gap: 11px; }
.job-board-toolbar > div b { font-size: 16px; }
.job-board-toolbar > div span { color: #77837f; font-size: 10px; }
.job-board-toolbar strong { color: var(--orange); }
.job-board-toolbar label { display: flex; align-items: center; gap: 8px; color: #77837f; font-size: 10px; }
.job-board-toolbar select { min-width: 112px; height: 38px; padding: 0 9px; border: 1px solid #bdc6c0; border-radius: 0; color: var(--ink); background: var(--white); font-size: 11px; }
.job-board-toolbar > .job-board-toolbar__actions { padding-top: 9px; display: flex; align-items: center; gap: 9px; }
.job-live-status { min-height: 30px; padding: 0 9px; display: inline-flex; align-items: center; gap: 6px; border: 1px solid #bdc6c0; background: rgba(255,255,255,.45); white-space: nowrap; }
.job-live-status i { width: 7px; height: 7px; flex: 0 0 auto; border-radius: 50%; background: #8b9692; }
.job-board-toolbar .job-live-status b { color: #65716d; font-size: 9px; font-weight: 800; }
.job-live-status[data-state="live"] i { background: #52a913; box-shadow: 0 0 0 4px rgba(82,169,19,.12); }
.job-live-status[data-state="syncing"] i { background: var(--orange); animation: job-live-pulse 1s ease-in-out infinite; }
.job-live-status[data-state="cached"] i { background: #c98b16; }
.job-live-status[data-state="error"] i { background: #c84128; }
.job-live-refresh { min-height: 30px; padding: 0 10px; border: 1px solid var(--ink); color: var(--ink); background: transparent; cursor: pointer; font-size: 9px; font-weight: 800; }
.job-live-refresh:hover { color: var(--white); background: var(--ink); }
.job-live-refresh:disabled { cursor: wait; opacity: .48; }
@keyframes job-live-pulse { 50% { opacity: .35; transform: scale(.72); } }

.portal-job-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; border: 1px solid #c5cdc8; background: #c5cdc8; }
.portal-job-loading { grid-column: 1 / -1; margin: 0; padding: 65px 25px; color: var(--muted); background: var(--white); text-align: center; }
.portal-job-card { position: relative; min-width: 0; min-height: 286px; padding: 24px; display: flex; flex-direction: column; color: var(--ink); background: var(--white); transition: color .22s ease, background .22s ease, transform .22s ease; }
.portal-job-card:hover { z-index: 1; color: var(--ink); background: var(--acid); transform: translateY(-3px); box-shadow: 0 18px 40px rgba(7,24,29,.14); }
.portal-job-card__top { display: flex; justify-content: space-between; align-items: start; gap: 15px; }
.portal-job-card__source { padding: 4px 7px; color: var(--ink); background: var(--acid); font-size: 8px; font-weight: 800; }
.portal-job-card:hover .portal-job-card__source { color: var(--white); background: var(--ink); }
.portal-job-card__index { color: #a1ada8; font: 700 9px Arial, sans-serif; }
.portal-job-card__company { margin: 30px 0 7px; display: flex; align-items: center; gap: 6px; color: var(--orange); font-size: 9px; font-weight: 800; }
.portal-job-card__company svg { width: 14px; height: 14px; }
.portal-job-card:hover .portal-job-card__company { color: #304315; }
.portal-job-card h3 { margin: 0; font-size: 21px; line-height: 1.35; letter-spacing: -.025em; }
.portal-job-card__salary { margin: 12px 0 0; color: var(--orange); font: 800 17px/1.3 Arial, "Microsoft YaHei", sans-serif; }
.portal-job-card:hover .portal-job-card__salary { color: var(--ink); }
.portal-job-card__meta { margin-top: 15px; display: flex; flex-wrap: wrap; gap: 5px; }
.portal-job-card__meta span { padding: 3px 6px; border: 1px solid #d0d6d2; color: #73807c; font-size: 8px; }
.portal-job-card:hover .portal-job-card__meta span { border-color: rgba(7,24,29,.28); color: #384615; }
.portal-job-card__action { width: 100%; margin-top: auto; padding-top: 15px; display: flex; justify-content: space-between; align-items: center; border-top: 1px solid #d5dbd7; font-size: 10px; font-weight: 800; }
.portal-job-card:hover .portal-job-card__action { border-top-color: rgba(7,24,29,.25); }
.portal-job-card__action svg { width: 16px; height: 16px; }

.portal-job-empty { padding: 80px 25px; border: 1px solid #c5cdc8; background: var(--white); text-align: center; }
.portal-job-empty b { font-size: 20px; }
.portal-job-empty p { margin: 6px 0 20px; color: var(--muted); font-size: 12px; }
.portal-job-empty button { padding: 9px 14px; border: 1px solid var(--ink); color: var(--white); background: var(--ink); cursor: pointer; font-size: 11px; font-weight: 800; }
.job-board-notice { margin-top: 22px; padding: 20px 23px; display: grid; grid-template-columns: 140px 1fr auto; gap: 22px; align-items: center; border-left: 3px solid var(--orange); color: #687579; background: var(--white); }
.job-board-notice b { color: var(--ink); font-size: 12px; }
.job-board-notice p { margin: 0; font-size: 10px; }
.job-board-notice span { color: #8a9691; font-size: 9px; white-space: nowrap; }

.recruitment-footer .footer-return { margin-top: 12px; padding: 9px 0; display: flex; align-items: center; gap: 8px; border-bottom: 1px solid #5c7277; color: var(--white); font-size: 11px; }
.recruitment-footer .footer-return .icon { width: 15px; }
.noscript-note { position: fixed; z-index: 500; left: 15px; right: 15px; bottom: 15px; margin: 0; padding: 14px; color: var(--white); background: #9d321d; text-align: center; }

.talent-subnav { position: relative; z-index: 4; border-bottom: 1px solid #a9c23a; background: var(--acid); }
.talent-subnav .container { min-height: 48px; display: flex; align-items: stretch; overflow-x: auto; scrollbar-width: none; }
.talent-subnav .container::-webkit-scrollbar { display: none; }
.talent-subnav a { padding: 0 22px; display: inline-flex; align-items: center; flex: 0 0 auto; border-right: 1px solid rgba(7,24,29,.18); color: var(--ink); font-size: 10px; font-weight: 800; }
.talent-subnav a:first-child { border-left: 1px solid rgba(7,24,29,.18); }
.talent-subnav a:hover { color: var(--white); background: var(--ink); }

.talent-overview { padding: 105px 0 110px; background: #edf0e9; }
.talent-section-heading { margin-bottom: 50px; display: grid; grid-template-columns: 1fr .64fr; gap: 80px; align-items: end; }
.talent-section-heading h2, .talent-column-heading h2, .pilot-pool__heading h2, .student-feedback h2 { margin: 0; font-size: clamp(40px, 4.7vw, 68px); line-height: 1.06; letter-spacing: -.06em; }
.talent-policy-note { padding: 20px 0 3px; border-top: 1px solid var(--ink); }
.talent-policy-note b { font-size: 11px; }
.talent-policy-note p, .talent-section-heading > p, .talent-column-heading > p, .pilot-pool__heading > p { margin: 8px 0 0; color: var(--muted); font-size: 11px; line-height: 1.85; }

.talent-service-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; border: 1px solid #bdc7c0; background: #bdc7c0; }
.talent-service-card { min-width: 0; min-height: 330px; padding: 24px; display: flex; flex-direction: column; color: var(--ink); background: var(--white); transition: transform .2s ease, box-shadow .2s ease; }
.talent-service-card:hover { z-index: 1; transform: translateY(-5px); box-shadow: 0 20px 45px rgba(7,24,29,.13); }
.talent-service-card > span { color: #9ba6a1; font: 700 10px Arial, sans-serif; }
.talent-service-card small { margin-top: 52px; color: var(--orange); font-size: 9px; font-weight: 800; }
.talent-service-card h3 { margin: 9px 0 0; font-size: 22px; line-height: 1.25; letter-spacing: -.035em; }
.talent-service-card p { margin: 15px 0 0; color: #66736f; font-size: 10px; line-height: 1.75; }
.talent-service-card > b { margin-top: auto; padding-top: 15px; border-top: 1px solid #d6dcd8; font-size: 10px; }
.talent-service-card--dark { color: var(--white); background: var(--ink); }
.talent-service-card--dark > span { color: #668087; }
.talent-service-card--dark p { color: #91a6aa; }
.talent-service-card--dark > b { border-color: #375057; }
.talent-service-card--accent { background: var(--acid); }
.talent-service-card--accent small { color: #405419; }
.talent-service-card--accent p { color: #405419; }
.talent-service-card--accent > b { border-color: rgba(7,24,29,.25); }

.service-promotion { margin-top: 24px; padding: 28px 30px; display: grid; grid-template-columns: 1.15fr 1fr auto; gap: 34px; align-items: center; color: var(--white); background: #17323a; }
.service-promotion h3 { margin: 3px 0 0; font-size: 27px; letter-spacing: -.04em; }
.service-promotion p { max-width: 570px; margin: 9px 0 0; color: #9fb0b4; font-size: 10px; line-height: 1.8; }
.promotion-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.promotion-tags span { padding: 7px 9px; border: 1px solid #456068; color: #bdd0d3; font-size: 9px; }
.service-promotion button, .pilot-contact-lock button, .equipment-market > button, .student-feedback > button { min-height: 38px; padding: 0 13px; border: 1px solid var(--acid); color: var(--acid); background: transparent; cursor: pointer; font-size: 9px; font-weight: 800; }
.service-promotion button:hover, .pilot-contact-lock button:hover, .equipment-market > button:hover, .student-feedback > button:hover { color: var(--ink); background: var(--acid); }

.project-pilot-section { padding: 110px 0 120px; color: var(--white); background: var(--ink); }
.project-pilot-layout { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(330px, .65fr); gap: 70px; align-items: start; }
.talent-column-heading { margin-bottom: 35px; }
.project-pilot-section .talent-column-heading > p, .project-pilot-section .pilot-pool__heading > p { color: #8aa0a5; }
.project-list { display: grid; gap: 10px; }
.project-card { padding: 22px 24px; color: var(--ink); background: var(--white); }
.project-card > div:first-child { display: flex; justify-content: space-between; align-items: center; }
.project-card > div:first-child span { padding: 4px 7px; color: var(--ink); background: var(--acid); font-size: 8px; font-weight: 800; }
.project-card > div:first-child i { color: #6e7d78; font-size: 8px; font-style: normal; }
.project-card h3 { margin: 19px 0 0; font-size: 22px; letter-spacing: -.03em; }
.project-card > p { margin: 8px 0 0; color: #687773; font-size: 10px; line-height: 1.75; }
.project-card dl { margin: 19px 0; display: flex; gap: 28px; }
.project-card dl div { min-width: 105px; }
.project-card dt { color: #8a9893; font-size: 8px; }
.project-card dd { margin: 4px 0 0; font-size: 10px; font-weight: 800; }
.project-card button { width: 100%; padding: 12px 0 0; display: flex; justify-content: space-between; border: 0; border-top: 1px solid #d3dad6; color: var(--ink); background: transparent; cursor: pointer; text-align: left; font-size: 9px; font-weight: 800; }

.pilot-pool { position: sticky; top: 110px; padding: 28px; border: 1px solid #365158; background: #102b32; }
.pilot-pool__heading h2 { font-size: clamp(38px, 4vw, 58px); }
.pilot-list { margin-top: 28px; border-top: 1px solid #365158; }
.pilot-list article { min-height: 104px; padding: 18px 0; display: grid; grid-template-columns: 28px 1fr auto; gap: 12px; align-items: start; border-bottom: 1px solid #365158; }
.pilot-list article > span { color: var(--acid); font: 800 9px Arial, sans-serif; }
.pilot-list h3 { margin: 0; font-size: 14px; }
.pilot-list h3 i { margin-left: 5px; color: var(--acid); font-size: 7px; font-style: normal; }
.pilot-list p { margin: 7px 0 0; color: #9db0b4; font-size: 9px; }
.pilot-list small { margin-top: 5px; display: block; color: #6f898f; font-size: 8px; }
.pilot-list article > b { color: #c7d2d4; font-size: 8px; white-space: nowrap; }
.pilot-contact-lock { margin-top: 22px; padding: 18px; color: var(--ink); background: var(--acid); }
.pilot-contact-lock > b { font-size: 12px; }
.pilot-contact-lock p { margin: 7px 0 14px; color: #41551a; font-size: 9px; line-height: 1.65; }
.pilot-contact-lock button { border-color: var(--ink); color: var(--ink); }
.pilot-contact-lock button:hover { color: var(--white); background: var(--ink); }

.repair-market-section { padding: 110px 0 120px; background: #f7f8f3; }
.talent-section-heading--compact { margin-bottom: 42px; }
.repair-market-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 1px; border: 1px solid #c6cec9; background: #c6cec9; }
.repair-intake, .equipment-market { min-width: 0; padding: 32px; background: var(--white); }
.repair-intake > span, .equipment-market__heading > span { color: var(--orange); font-size: 9px; font-weight: 800; }
.repair-intake h3, .equipment-market h3 { margin: 14px 0 0; font-size: 30px; letter-spacing: -.04em; }
.repair-intake > p, .equipment-market__heading > p { margin: 10px 0 0; color: var(--muted); font-size: 10px; line-height: 1.8; }
.repair-intake ol { margin: 30px 0; padding: 0; list-style: none; counter-reset: repair-step; }
.repair-intake li { position: relative; min-height: 65px; padding: 0 0 17px 45px; border-left: 1px solid #c9d1cc; counter-increment: repair-step; }
.repair-intake li:last-child { border-left-color: transparent; }
.repair-intake li::before { content: "0" counter(repair-step); position: absolute; left: -15px; top: -2px; width: 29px; height: 29px; display: grid; place-items: center; color: var(--white); background: var(--ink); border-radius: 50%; font: 800 8px Arial, sans-serif; }
.repair-intake li b { display: block; font-size: 12px; }
.repair-intake li small { margin-top: 5px; display: block; color: #76837e; font-size: 9px; }
.repair-intake > button { width: 100%; padding: 13px 0; border: 1px solid var(--ink); color: var(--white); background: var(--ink); cursor: pointer; font-size: 9px; font-weight: 800; }
.equipment-list { margin: 29px 0 21px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.equipment-list article { min-height: 230px; padding: 22px; display: flex; flex-direction: column; border: 1px solid #ced5d1; background: #f2f4ee; }
.equipment-list i { width: max-content; padding: 4px 6px; color: var(--ink); background: var(--acid); font-size: 7px; font-style: normal; font-weight: 800; }
.equipment-list h4 { margin: 45px 0 0; font-size: 19px; }
.equipment-list p { margin: 7px 0 0; color: var(--muted); font-size: 9px; }
.equipment-list article > div { margin-top: auto; padding-top: 14px; display: flex; justify-content: space-between; border-top: 1px solid #cbd3ce; font-size: 8px; }
.equipment-list article > div span { color: #4f6b1e; font-weight: 800; }
.equipment-list article > div b { color: #7d8985; }
.equipment-market > button { border-color: var(--ink); color: var(--ink); }
.equipment-market > button:hover { color: var(--white); background: var(--ink); }

.ranking-feedback-section { padding: 115px 0 125px; background: #e8ece5; }
.ranking-feedback-layout { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(340px, .65fr); gap: 70px; align-items: start; }
.ranking-table { margin-top: 34px; border-top: 2px solid var(--ink); }
.ranking-row { min-height: 78px; padding: 12px 15px; display: grid; grid-template-columns: minmax(210px, 1.4fr) repeat(3, minmax(70px, .45fr)); gap: 10px; align-items: center; border-bottom: 1px solid #bec8c1; background: rgba(255,255,255,.46); }
.ranking-row--head { min-height: 43px; color: #78847f; background: transparent; font-size: 8px; font-weight: 800; }
.ranking-row > span { display: flex; align-items: center; gap: 13px; font-size: 12px; font-weight: 800; }
.ranking-row > span b { color: var(--orange); font: 800 10px Arial, sans-serif; }
.ranking-row > span small { margin-left: auto; color: #87938e; font-size: 8px; font-weight: 400; }
.ranking-row strong, .ranking-row i, .ranking-row em { font-size: 12px; font-style: normal; }
.ranking-row em { color: #4d6b1b; font-weight: 800; }
.student-feedback { padding: 29px; color: var(--white); background: var(--ink); }
.student-feedback h2 { font-size: clamp(36px, 3.7vw, 52px); }
.feedback-list { margin: 25px 0 22px; }
.feedback-list blockquote { margin: 0; padding: 19px 0; border-top: 1px solid #365158; }
.feedback-list blockquote p { margin: 0; color: #c3d0d2; font-size: 10px; line-height: 1.8; }
.feedback-list footer { margin-top: 13px; display: flex; justify-content: space-between; color: #778f94; font-size: 8px; }
.feedback-list footer b { color: var(--acid); }

.service-dialog { width: min(92vw, 560px); padding: 36px; border: 1px solid #53666a; color: var(--white); background: var(--ink); box-shadow: 0 30px 90px rgba(0,0,0,.38); }
.service-dialog::backdrop { background: rgba(1,12,15,.78); backdrop-filter: blur(3px); }
.service-dialog__close { position: absolute; right: 14px; top: 10px; width: 34px; height: 34px; border: 0; color: #9bb0b4; background: transparent; cursor: pointer; font-size: 28px; }
.service-dialog > span { color: var(--acid); font-size: 8px; font-weight: 800; letter-spacing: .1em; }
.service-dialog h2 { margin: 12px 0 0; font-size: 35px; letter-spacing: -.05em; }
.service-dialog > p { margin: 13px 0 0; color: #adbec1; font-size: 11px; line-height: 1.8; }
.service-dialog > div { margin: 24px 0; padding: 16px; border-left: 3px solid var(--acid); background: #153039; }
.service-dialog > div b { color: var(--acid); font-size: 10px; }
.service-dialog > div p { margin: 6px 0 0; color: #a8b8bb; font-size: 9px; line-height: 1.7; }

@media (max-width: 1100px) {
  .recruitment-hero__layout { grid-template-columns: 1fr 390px; gap: 45px; }
  .recruitment-hero__copy h1 { font-size: 72px; }
  .job-board-layout { grid-template-columns: 220px minmax(0, 1fr); gap: 28px; }
  .portal-job-card { min-height: 300px; padding: 21px; }
  .job-live-status { display: none; }
  .talent-service-grid { grid-template-columns: repeat(2, 1fr); }
  .project-pilot-layout, .ranking-feedback-layout { gap: 38px; }
  .project-pilot-layout { grid-template-columns: minmax(0, 1fr) 340px; }
  .ranking-feedback-layout { grid-template-columns: minmax(0, 1fr) 350px; }
  .service-promotion { grid-template-columns: 1fr 1fr; }
  .service-promotion button { grid-column: 1 / -1; width: max-content; }
}

@media (max-width: 850px) {
  .recruitment-page .primary-nav { position: absolute; inset: 100% 0 auto; width: 100%; height: calc(100dvh - 68px); overflow-y: auto; padding: 35px 20px; display: none; align-items: stretch; flex-direction: column; gap: 0; color: var(--white); background: var(--ink); box-shadow: 0 20px 60px rgba(0,0,0,.25); }
  .recruitment-page .primary-nav.is-open { display: flex; }
  .recruitment-page .primary-nav a { padding: 18px 5px; border-bottom: 1px solid #294047; font-size: 20px; }
  .recruitment-page .primary-nav a.is-active { color: var(--acid); }
  .recruitment-hero__layout { grid-template-columns: 1fr; padding-block: 70px; }
  .recruitment-hero__copy h1 { font-size: clamp(60px, 12vw, 86px); }
  .recruitment-hero__panel { width: min(100%, 600px); }
  .job-board-heading { grid-template-columns: 1fr; gap: 22px; }
  .job-board-layout { grid-template-columns: 1fr; }
  .job-board-sidebar { position: static; }
  .job-board-filters { display: flex; flex-wrap: wrap; gap: 6px; }
  .job-board-filters > p { width: 100%; }
  .job-board-filters button { width: auto; min-height: 36px; padding: 7px 11px; border: 1px solid #bdc6c0; border-radius: 999px; }
  .job-board-filters button:hover, .job-board-filters button.is-active { padding-left: 11px; color: var(--white); border-color: var(--ink); background: var(--ink); }
  .job-board-filters sup { margin-left: 8px; }
  .job-source-links { display: none; }
  .job-board-notice { grid-template-columns: 1fr; gap: 7px; }
  .job-board-notice span { white-space: normal; }
  .talent-section-heading, .project-pilot-layout, .ranking-feedback-layout { grid-template-columns: 1fr; gap: 28px; }
  .pilot-pool { position: static; }
  .repair-market-grid { grid-template-columns: 1fr; }
  .talent-subnav a { padding-inline: 17px; }
}

@media (max-width: 600px) {
  .recruitment-page .prototype-bar__inner > a { display: none; }
  .recruitment-hero__layout { padding-block: 58px; }
  .recruitment-hero__copy h1 { font-size: 58px; }
  .recruitment-hero__copy > p:last-of-type { font-size: 14px; }
  .recruitment-hero__actions { align-items: stretch; flex-direction: column; }
  .recruitment-hero__panel { min-height: 385px; padding: 22px 17px; }
  .recruitment-signal { width: 178px; height: 178px; }
  .recruitment-signal b { font-size: 41px; }
  .recruitment-hero__panel dl div { padding-inline: 5px; }
  .recruitment-hero__panel dt { font-size: 23px; }
  .job-board-section { padding: 78px 0 90px; }
  .job-board-heading h2 { font-size: 46px; }
  .job-board-toolbar { align-items: start; flex-direction: column; gap: 10px; }
  .job-board-toolbar > .job-board-toolbar__actions { width: 100%; padding-top: 0; flex-wrap: wrap; }
  .job-live-status { display: inline-flex; margin-right: auto; }
  .portal-job-grid { grid-template-columns: 1fr; }
  .portal-job-card { min-height: 275px; }
  .talent-overview, .project-pilot-section, .repair-market-section, .ranking-feedback-section { padding-block: 78px 88px; }
  .talent-section-heading { margin-bottom: 32px; }
  .talent-section-heading h2, .talent-column-heading h2, .pilot-pool__heading h2, .student-feedback h2 { font-size: 43px; }
  .talent-service-grid { grid-template-columns: 1fr; }
  .talent-service-card { min-height: 285px; }
  .service-promotion { padding: 22px 18px; grid-template-columns: 1fr; gap: 20px; }
  .service-promotion button { grid-column: auto; width: 100%; }
  .project-card, .pilot-pool, .repair-intake, .equipment-market, .student-feedback { padding: 20px 17px; }
  .equipment-list { grid-template-columns: 1fr; }
  .ranking-row { grid-template-columns: minmax(145px, 1.2fr) repeat(3, minmax(48px, .45fr)); padding-inline: 7px; }
  .ranking-row > span { gap: 7px; font-size: 10px; }
  .ranking-row > span small { display: none; }
  .service-dialog { padding: 28px 21px; }
}

/* V9 — 人才服务界面舒适度与一致性优化 */
.recruitment-page main section[id],
.recruitment-page main [id="project-hall"],
.recruitment-page main [id="pilot-pool"] { scroll-margin-top: 148px; }

.recruitment-page :is(a, button, input, select):focus-visible {
  outline: 3px solid var(--orange);
  outline-offset: 3px;
}

.talent-subnav {
  position: sticky;
  top: 78px;
  z-index: 90;
  box-shadow: 0 8px 24px rgba(7, 24, 29, .08);
}
.talent-subnav .container { justify-content: center; }
.talent-subnav a {
  min-height: 50px;
  padding-inline: 26px;
  gap: 9px;
  font-size: 12px;
  transition: color .2s ease, background .2s ease;
}
.talent-subnav a.is-current,
.talent-subnav a[aria-current="location"] { color: var(--acid); background: var(--ink); }
.talent-subnav a::before {
  color: rgba(7,24,29,.48);
  font: 800 9px/1 Arial, sans-serif;
}
.talent-subnav a:nth-child(1)::before { content: "01"; }
.talent-subnav a:nth-child(2)::before { content: "02"; }
.talent-subnav a:nth-child(3)::before { content: "03"; }
.talent-subnav a:nth-child(4)::before { content: "04"; }
.talent-subnav a:nth-child(5)::before { content: "05"; }
.talent-subnav a:nth-child(6)::before { content: "06"; }
.talent-subnav a:is(:hover, .is-current)::before { color: rgba(201,255,71,.68); }

.talent-view-controls {
  min-height: 88px;
  margin-top: 28px;
  padding: 13px;
  display: grid;
  grid-template-columns: minmax(150px, .34fr) 1fr minmax(150px, .34fr);
  align-items: stretch;
  border: 1px solid #c4cdc7;
  background: rgba(255,255,255,.86);
  box-shadow: 0 18px 48px rgba(7,24,29,.09);
}
.talent-view-controls > button {
  padding: 0 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  border: 0;
  color: var(--white);
  background: var(--ink);
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
  transition: color .2s ease, background .2s ease, transform .2s ease;
}
.talent-view-controls > button:hover { color: var(--ink); background: var(--acid); }
.talent-view-controls > button:active { transform: scale(.98); }
.talent-view-controls > button:disabled { color: #8c9995; background: #e6eae4; cursor: not-allowed; transform: none; }
.talent-view-controls__back { transform: rotate(180deg); }
.talent-view-controls > p {
  margin: 0;
  padding: 4px 24px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-content: center;
  border-inline: 1px solid #d0d7d2;
}
.talent-view-controls small { color: #7b8783; font: 800 9px/1.2 Arial, sans-serif; letter-spacing: .12em; }
.talent-view-controls b { grid-column: 2; grid-row: 1 / span 2; align-self: center; color: var(--orange); font: 800 20px/1 Arial, sans-serif; }
.talent-view-controls strong { margin-top: 5px; font-size: 22px; line-height: 1.2; }

.recruitment-page main > section[hidden],
.project-pilot-section [hidden] { display: none !important; }
.talent-panel-enter-forward { animation: talent-panel-forward .34s cubic-bezier(.2,.72,.22,1) both; }
.talent-panel-enter-back { animation: talent-panel-back .34s cubic-bezier(.2,.72,.22,1) both; }
@keyframes talent-panel-forward {
  from { opacity: 0; transform: translateX(48px); }
  to { opacity: 1; transform: translateX(0); }
}
@keyframes talent-panel-back {
  from { opacity: 0; transform: translateX(-48px); }
  to { opacity: 1; transform: translateX(0); }
}

body[data-talent-view="project-hall"] .project-pilot-layout,
body[data-talent-view="pilot-pool"] .project-pilot-layout { display: block; }
body[data-talent-view="project-hall"] .project-hall { width: min(100%, 940px); margin-inline: auto; }
body[data-talent-view="project-hall"] .project-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
body[data-talent-view="project-hall"] .project-card { min-height: 390px; display: flex; flex-direction: column; }
body[data-talent-view="project-hall"] .project-card dl { margin-top: auto; }
body[data-talent-view="pilot-pool"] .pilot-pool { position: static; width: min(100%, 790px); margin-inline: auto; }

.recruitment-hero__layout { min-height: 570px; padding-block: 76px; }
.recruitment-hero__copy > p:last-of-type { max-width: 680px; font-size: 17px; line-height: 1.85; }
.recruitment-hero__panel {
  min-height: 420px;
  border-top: 3px solid var(--acid);
  background: linear-gradient(145deg, rgba(18, 49, 57, .96), rgba(10, 34, 41, .9));
}
.recruitment-hero__panel dd { color: #9eb0b4; font-size: 11px; }
.recruitment-hero__panel > p { color: #92a5a9; font-size: 11px; }

.talent-overview { padding: 102px 0 108px; }
.talent-section-heading { margin-bottom: 44px; }
.talent-section-heading h2,
.talent-column-heading h2,
.pilot-pool__heading h2,
.student-feedback h2 { text-wrap: balance; }
.talent-policy-note {
  padding: 22px 24px;
  border-top: 0;
  border-left: 4px solid var(--acid-strong);
  background: rgba(255, 255, 255, .72);
  box-shadow: 0 12px 30px rgba(7, 24, 29, .05);
}
.talent-policy-note b { font-size: 13px; }
.talent-policy-note p,
.talent-section-heading > p,
.talent-column-heading > p,
.pilot-pool__heading > p { font-size: 13px; line-height: 1.8; }

.talent-service-grid {
  gap: 12px;
  border: 0;
  background: transparent;
}
.talent-service-card {
  position: relative;
  min-height: 350px;
  padding: 28px;
  overflow: hidden;
  border: 1px solid #c9d1cc;
  box-shadow: 0 8px 26px rgba(7, 24, 29, .045);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.talent-service-card::before {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  top: 0;
  height: 4px;
  background: var(--orange);
  transition: right .24s ease;
}
.talent-service-card:hover { border-color: #aab6af; box-shadow: 0 20px 45px rgba(7,24,29,.12); }
.talent-service-card:hover::before { right: 0; }
.talent-service-card > span {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border: 1px solid #c7cfca;
  color: #66736f;
  font-size: 11px;
}
.talent-service-card small { margin-top: 45px; font-size: 11px; }
.talent-service-card h3 { margin-top: 11px; font-size: 24px; line-height: 1.32; }
.talent-service-card p { font-size: 13px; line-height: 1.75; }
.talent-service-card > b { padding-top: 17px; font-size: 12px; }
.talent-service-card--dark { border-color: #28444b; }
.talent-service-card--dark > span { border-color: #426068; color: #9db0b4; }
.talent-service-card--accent { border-color: #b4dd43; }
.talent-service-card--accent > span { border-color: rgba(7,24,29,.26); color: var(--ink); }

.service-promotion {
  margin-top: 18px;
  padding: 32px 34px;
  border-top: 3px solid var(--acid);
  box-shadow: 0 16px 38px rgba(7,24,29,.12);
}
.service-promotion h3 { font-size: 30px; }
.service-promotion p { font-size: 13px; line-height: 1.75; }
.promotion-tags { gap: 8px; }
.promotion-tags span { padding: 8px 11px; font-size: 11px; }
.service-promotion button,
.pilot-contact-lock button,
.equipment-market > button,
.student-feedback > button { min-height: 44px; padding: 0 16px; font-size: 11px; }

.project-pilot-section { padding: 108px 0 118px; }
.project-pilot-layout { grid-template-columns: minmax(0, 1.1fr) minmax(350px, .68fr); gap: 54px; }
.talent-column-heading { margin-bottom: 38px; }
.project-list { gap: 14px; }
.project-card {
  padding: 27px 29px;
  border-left: 4px solid transparent;
  box-shadow: 0 10px 30px rgba(0,0,0,.08);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.project-card:hover { transform: translateX(4px); border-left-color: var(--acid); box-shadow: 0 16px 38px rgba(0,0,0,.16); }
.project-card > div:first-child span { padding: 5px 9px; font-size: 10px; }
.project-card > div:first-child i { display: inline-flex; align-items: center; gap: 7px; font-size: 10px; }
.project-card > div:first-child i::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #6dab25; }
.project-card h3 { margin-top: 20px; font-size: 25px; }
.project-card > p { font-size: 13px; line-height: 1.75; }
.project-card dl { margin: 22px 0; }
.project-card dt { font-size: 10px; }
.project-card dd { font-size: 12px; }
.project-card button { min-height: 38px; padding-top: 13px; font-size: 11px; transition: color .2s ease; }
.project-card button:hover { color: #526e20; }

.pilot-pool {
  padding: 30px;
  border-top: 3px solid var(--acid);
  box-shadow: 0 24px 55px rgba(0,0,0,.22);
}
.pilot-list { margin-top: 30px; }
.pilot-list article {
  min-height: 112px;
  padding: 20px 10px;
  transition: background .2s ease, padding .2s ease;
}
.pilot-list article:hover { padding-inline: 14px; background: rgba(134,238,227,.045); }
.pilot-list article > span { font-size: 11px; }
.pilot-list h3 { font-size: 16px; }
.pilot-list h3 i { padding: 3px 5px; background: rgba(201,255,71,.1); font-size: 9px; }
.pilot-list p { font-size: 11px; }
.pilot-list small { font-size: 10px; }
.pilot-list article > b { font-size: 10px; }
.pilot-contact-lock { padding: 21px; }
.pilot-contact-lock > b { font-size: 14px; }
.pilot-contact-lock p { font-size: 11px; line-height: 1.7; }

.repair-market-section { padding: 105px 0 115px; }
.repair-market-grid { gap: 16px; border: 0; background: transparent; }
.repair-intake,
.equipment-market { padding: 35px; border: 1px solid #c7d0ca; box-shadow: 0 12px 32px rgba(7,24,29,.055); }
.repair-intake > span,
.equipment-market__heading > span { font-size: 11px; }
.repair-intake h3,
.equipment-market h3 { font-size: 32px; }
.repair-intake > p,
.equipment-market__heading > p { font-size: 13px; line-height: 1.75; }
.repair-intake li { min-height: 72px; }
.repair-intake li b { font-size: 14px; }
.repair-intake li small { font-size: 11px; }
.repair-intake > button { min-height: 46px; font-size: 11px; }
.equipment-list { gap: 12px; }
.equipment-list article {
  position: relative;
  min-height: 245px;
  padding: 24px;
  overflow: hidden;
  transition: transform .2s ease, background .2s ease;
}
.equipment-list article::before {
  content: "";
  position: absolute;
  right: -45px;
  top: -45px;
  width: 125px;
  height: 125px;
  border: 1px solid #ccd5cf;
  border-radius: 50%;
  box-shadow: 0 0 0 20px rgba(7,24,29,.018);
}
.equipment-list article:hover { transform: translateY(-3px); background: #f7f9f3; }
.equipment-list i { position: relative; z-index: 1; padding: 5px 7px; font-size: 9px; }
.equipment-list h4 { margin-top: 53px; font-size: 21px; }
.equipment-list p { font-size: 11px; }
.equipment-list article > div { font-size: 10px; }

.ranking-feedback-section { padding: 108px 0 118px; }
.ranking-feedback-layout { grid-template-columns: minmax(0, 1.08fr) minmax(360px, .68fr); gap: 54px; }
.ranking-row {
  min-height: 82px;
  background: rgba(255,255,255,.7);
  transition: transform .18s ease, background .18s ease;
}
.ranking-row:not(.ranking-row--head):hover { transform: translateX(3px); background: var(--white); }
.ranking-row--head { min-height: 46px; font-size: 10px; }
.ranking-row > span { font-size: 14px; }
.ranking-row > span b { font-size: 12px; }
.ranking-row > span small { font-size: 10px; }
.ranking-row strong,
.ranking-row i,
.ranking-row em { font-size: 14px; }
.student-feedback {
  padding: 32px;
  border-top: 3px solid var(--acid);
  box-shadow: 0 20px 48px rgba(7,24,29,.16);
}
.feedback-list blockquote { padding: 22px 0; }
.feedback-list blockquote p { color: #d2dcde; font-size: 12px; line-height: 1.8; }
.feedback-list footer { font-size: 10px; }

.job-board-section { padding: 102px 0 115px; }
.job-board-heading { margin-bottom: 46px; }
.job-board-heading > p { font-size: 13px; line-height: 1.75; }
.job-search-field > span:first-child,
.job-board-filters > p,
.job-source-links > p { font-size: 10px; }
.job-search-field input { height: 47px; font-size: 13px; }
.job-board-filters button { font-size: 13px; }
.job-source-links a { font-size: 11px; }
.job-board-toolbar > div b { font-size: 18px; }
.job-board-toolbar > div span,
.job-board-toolbar label { font-size: 11px; }
.job-live-status { min-height: 36px; }
.job-board-toolbar .job-live-status b { font-size: 10px; }
.job-live-refresh { min-height: 36px; padding-inline: 13px; font-size: 10px; transition: color .2s ease, background .2s ease; }
.portal-job-grid { gap: 12px; border: 0; background: transparent; }
.portal-job-card {
  min-height: 310px;
  padding: 28px;
  border: 1px solid #c8d0cb;
  box-shadow: 0 7px 22px rgba(7,24,29,.035);
}
.portal-job-card__source { padding: 5px 8px; font-size: 9px; }
.portal-job-card__index { font-size: 10px; }
.portal-job-card__company { margin-top: 32px; font-size: 11px; }
.portal-job-card h3 { font-size: 23px; }
.portal-job-card__salary { font-size: 19px; }
.portal-job-card__meta span { padding: 4px 7px; font-size: 10px; }
.portal-job-card__action { font-size: 11px; }
.job-board-notice p { font-size: 11px; line-height: 1.65; }

.service-dialog {
  width: min(92vw, 590px);
  max-height: min(88vh, 720px);
  padding: 40px;
  overflow-y: auto;
  border-top: 4px solid var(--acid);
}
.service-dialog__close { right: 12px; top: 10px; border: 1px solid transparent; }
.service-dialog__close:hover { color: var(--white); border-color: #52676c; }
.service-dialog > span { font-size: 10px; }
.service-dialog h2 { font-size: 38px; line-height: 1.2; }
.service-dialog > p { font-size: 14px; line-height: 1.8; }
.service-dialog > div { padding: 18px; }
.service-dialog > div b { font-size: 12px; }
.service-dialog > div p { font-size: 11px; }
.service-dialog > p { white-space: pre-line; }

.career-data-state { width: 100%; min-height: 150px; padding: 34px 24px; display: grid; place-content: center; text-align: center; border: 1px solid rgba(152,177,178,.34); color: #bfd0d3; background: rgba(255,255,255,.035); }
.career-data-state b { font-size: 17px; }
.career-data-state p { max-width: 470px; margin: 8px auto 0; color: #8fa7aa; font-size: 11px; line-height: 1.7; }
.project-list .career-data-state { min-height: 280px; color: var(--ink); background: var(--white); }
.project-list .career-data-state p { color: #657774; }
.pilot-contact-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.pilot-contact-actions button { flex: 1 1 150px; }
.project-card button:disabled { color: #899692; cursor: not-allowed; }

.career-review-center { margin-top: 54px; border: 1px solid #365158; background: #102b32; }
.career-review-center__head { min-height: 102px; padding: 22px 26px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 1px solid #365158; }
.career-review-center__head span { color: var(--acid); font: 900 9px/1.2 Arial,sans-serif; letter-spacing: .14em; }.career-review-center__head h2 { margin: 7px 0 0; font-size: 25px; }.career-review-center__head p { margin: 7px 0 0; color: #98adb1; font-size: 11px; }
.career-review-center__tools { display: flex; align-items: center; gap: 12px; }.career-review-center__tools b { min-width: 62px; color: var(--acid); font: 900 16px/1 Arial,sans-serif; text-align: center; }.career-review-center__tools button { min-height: 38px; padding: 0 14px; border: 1px solid #587178; color: #fff; background: transparent; font: inherit; font-size: 10px; font-weight: 900; cursor: pointer; }.career-review-center__tools button:hover { color: var(--ink); border-color: var(--acid); background: var(--acid); }.career-review-center__tools button:disabled { opacity: .55; cursor: wait; }
.career-review-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
.career-review-item { min-height: 104px; padding: 19px 22px; display: flex; align-items: center; justify-content: space-between; gap: 18px; border-right: 1px solid #365158; border-bottom: 1px solid #365158; }.career-review-item:nth-child(2n) { border-right: 0; }.career-review-item small { color: var(--acid); font-size: 9px; font-weight: 900; }.career-review-item h3 { margin: 7px 0 0; font-size: 15px; }.career-review-item p { margin: 6px 0 0; color: #8fa7aa; font-size: 10px; }.career-review-item > span { flex: 0 0 auto; padding: 7px 9px; color: #5f4b00; background: #e6d36d; font-size: 9px; font-weight: 900; }.career-review-item[data-status="accepted"] > span,.career-review-item[data-status="approved"] > span { color: #123b26; background: #9de3b8; }.career-review-item[data-status="withdrawn"] > span,.career-review-item[data-status="hidden"] > span { color: #41545a; background: #cad6d9; }
.career-review-empty { grid-column: 1 / -1; min-height: 112px; padding: 27px; display: grid; place-content: center; text-align: center; }.career-review-empty b { font-size: 15px; }.career-review-empty p { margin: 7px 0 0; color: #8fa7aa; font-size: 11px; }.career-review-empty.is-error b { color: #ff9e95; }

.career-business-dialog { width: min(94vw, 790px); max-height: 90vh; padding: 0; overflow: hidden; border: 1px solid #446169; color: var(--ink); background: #f5f7f3; box-shadow: 0 34px 100px rgba(0,0,0,.45); }
.career-business-dialog::backdrop { background: rgba(1,12,15,.82); backdrop-filter: blur(5px); }
.career-business-head { padding: 27px 30px; display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; color: var(--white); background: var(--ink); border-top: 4px solid var(--acid); }
.career-business-head span { color: var(--acid); font-size: 9px; font-weight: 900; letter-spacing: .14em; }
.career-business-head h2 { margin: 8px 0 0; font-size: 32px; letter-spacing: -.04em; }
.career-business-head p { margin: 7px 0 0; color: #a8b9bc; font-size: 12px; }
.career-business-head button { width: 40px; height: 40px; flex: 0 0 auto; border: 1px solid #486067; color: #b9c8ca; background: transparent; font: 300 28px/1 Arial,sans-serif; cursor: pointer; }
.career-business-head button:hover { color: var(--ink); background: var(--acid); border-color: var(--acid); }
.career-business-body { max-height: calc(90vh - 130px); padding: 29px 30px 33px; overflow-y: auto; }
.career-business-body form[hidden] { display: none; }
.career-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.career-form-grid label { display: grid; gap: 8px; color: #304a4f; font-size: 12px; font-weight: 900; }
.career-form-grid label.is-wide { grid-column: 1 / -1; }
.career-form-grid input,.career-form-grid textarea { width: 100%; min-height: 49px; padding: 12px 14px; border: 1px solid #c2ceca; border-radius: 0; color: var(--ink); background: var(--white); font: inherit; font-size: 14px; outline: none; }
.career-form-grid input[readonly] { color: #566966; background: #e9eeeb; }
.career-form-grid textarea { min-height: 105px; resize: vertical; line-height: 1.65; }
.career-form-grid input:focus,.career-form-grid textarea:focus { border-color: #85aa28; box-shadow: 0 0 0 3px rgba(154,199,44,.15); }
.career-business-body output { min-height: 43px; margin: 20px 0 15px; padding: 12px 14px; display: block; color: #526966; background: #e5ece8; font-size: 12px; line-height: 1.55; }
.career-business-body output.is-success { color: #195c35; background: #ddf4e7; }
.career-business-body output.is-error { color: #922e2e; background: #fde7e7; }
.career-business-body .button { border: 0; cursor: pointer; }
.career-business-body .button:disabled { opacity: .55; cursor: wait; }

@media (max-width: 1100px) {
  .talent-subnav .container { justify-content: flex-start; }
  .talent-subnav a { padding-inline: 21px; }
  .talent-service-card { min-height: 320px; }
  .project-pilot-layout { grid-template-columns: minmax(0, 1fr) 350px; gap: 34px; }
  .ranking-feedback-layout { grid-template-columns: minmax(0, 1fr) 360px; gap: 34px; }
  body[data-talent-view="project-hall"] .project-list { grid-template-columns: 1fr; }
  body[data-talent-view="project-hall"] .project-card { min-height: 0; }
}

@media (max-width: 850px) {
  .recruitment-page main section[id],
  .recruitment-page main [id="project-hall"],
  .recruitment-page main [id="pilot-pool"] { scroll-margin-top: 126px; }
  .talent-subnav { top: 68px; }
  .talent-subnav a { min-height: 46px; padding-inline: 18px; }
  .talent-view-controls { grid-template-columns: minmax(125px, .34fr) 1fr minmax(125px, .34fr); }
  .project-pilot-layout,
  .ranking-feedback-layout { grid-template-columns: 1fr; gap: 38px; }
  .pilot-pool { position: static; }
  .job-board-sidebar { padding-bottom: 8px; }
}

@media (max-width: 600px) {
  .career-review-center { margin-top: 34px; }
  .career-review-center__head { padding: 20px; align-items: flex-start; flex-direction: column; }
  .career-review-center__tools { width: 100%; justify-content: space-between; }
  .career-review-list { grid-template-columns: 1fr; }
  .career-review-item { border-right: 0; }
  .career-business-dialog { width: 100vw; max-width: none; max-height: 94vh; }
  .career-business-head { padding: 22px 18px; }.career-business-head h2 { font-size: 27px; }.career-business-body { max-height: calc(94vh - 118px); padding: 22px 18px 27px; }
  .career-form-grid { grid-template-columns: 1fr; }.career-form-grid label.is-wide { grid-column: auto; }
  .talent-subnav a { gap: 7px; }
  .talent-view-controls {
    min-height: 76px;
    margin-top: 14px;
    padding: 8px;
    grid-template-columns: 48px 1fr 48px;
  }
  .talent-view-controls > button { padding: 0; }
  .talent-view-controls > button span { display: none; }
  .talent-view-controls > p { padding-inline: 14px; }
  .talent-view-controls small { font-size: 8px; }
  .talent-view-controls strong { font-size: 18px; }
  .talent-view-controls b { font-size: 15px; }
  .recruitment-hero__layout { gap: 42px; }
  .recruitment-hero__copy h1 { font-size: clamp(50px, 14vw, 60px); }
  .recruitment-hero__copy > p:last-of-type { font-size: 14px; line-height: 1.8; }
  .recruitment-hero__panel { min-height: 395px; }
  .recruitment-hero__panel dl { grid-template-columns: repeat(2, 1fr); }
  .recruitment-hero__panel dl div { min-height: 66px; border-bottom: 1px solid #345058; }
  .recruitment-hero__panel dl div:nth-child(2) { border-right: 0; }
  .recruitment-hero__panel dl div:nth-last-child(-n+2) { border-bottom: 0; }
  .talent-overview,
  .project-pilot-section,
  .repair-market-section,
  .ranking-feedback-section,
  .job-board-section { padding-block: 72px 82px; }
  .talent-section-heading h2,
  .talent-column-heading h2,
  .pilot-pool__heading h2,
  .student-feedback h2 { font-size: 39px; line-height: 1.1; }
  .talent-policy-note { padding: 19px; }
  .talent-service-grid { gap: 10px; }
  .talent-service-card { min-height: 0; padding: 23px; }
  .talent-service-card small { margin-top: 32px; }
  .talent-service-card p { margin-bottom: 32px; }
  .service-promotion { padding: 24px 20px; }
  .service-promotion h3 { font-size: 26px; }
  .project-card { padding: 23px 20px; }
  .project-card:hover { transform: none; }
  .project-card h3 { font-size: 22px; }
  .project-card dl { gap: 16px; }
  .project-card dl div { min-width: 0; flex: 1; }
  .pilot-pool,
  .repair-intake,
  .equipment-market,
  .student-feedback { padding: 24px 20px; }
  .pilot-list article { grid-template-columns: 25px 1fr; }
  .pilot-list article > b { grid-column: 2; }
  .repair-market-grid { gap: 10px; }
  .repair-intake h3,
  .equipment-market h3 { font-size: 27px; }
  .equipment-list article { min-height: 215px; }
  .ranking-table { border-top: 0; }
  .ranking-row--head { display: none; }
  .ranking-row:not(.ranking-row--head) {
    min-height: 0;
    margin-bottom: 10px;
    padding: 17px;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    border: 1px solid #c5cec8;
    background: rgba(255,255,255,.8);
  }
  .ranking-row:not(.ranking-row--head) > span {
    grid-column: 1 / -1;
    padding-bottom: 12px;
    border-bottom: 1px solid #d0d7d2;
    font-size: 13px;
  }
  .ranking-row:not(.ranking-row--head) > :is(strong, i, em) { font-size: 14px; }
  .ranking-row:not(.ranking-row--head) > strong::before,
  .ranking-row:not(.ranking-row--head) > i::before,
  .ranking-row:not(.ranking-row--head) > em::before {
    display: block;
    margin-bottom: 3px;
    color: #7b8782;
    font-size: 9px;
    font-style: normal;
    font-weight: 500;
  }
  .ranking-row:not(.ranking-row--head) > strong::before { content: "完成项目"; }
  .ranking-row:not(.ranking-row--head) > i::before { content: "按时率"; }
  .ranking-row:not(.ranking-row--head) > em::before { content: "综合评价"; }
  .job-board-heading h2 { font-size: 42px; }
  .job-board-toolbar > .job-board-toolbar__actions { display: grid; grid-template-columns: 1fr auto; }
  .job-live-status { width: 100%; margin: 0; }
  .job-live-refresh { min-height: 40px; }
  .job-board-toolbar label { grid-column: 1 / -1; justify-content: space-between; }
  .job-board-toolbar select { flex: 1; }
  .portal-job-grid { gap: 10px; }
  .portal-job-card { min-height: 290px; padding: 23px; }
  .service-dialog { padding: 31px 22px 25px; }
  .service-dialog h2 { padding-right: 24px; font-size: 31px; }
  .service-dialog > p { font-size: 13px; }
}

/* V11 — 学员风采与就业服务入口 */
.feedback-list blockquote { position: relative; padding-left: 48px; }
.feedback-list blockquote::before {
  position: absolute;
  left: 0;
  top: 20px;
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border: 1px solid #4b656c;
  border-radius: 50%;
  color: var(--ink);
  background: var(--acid);
  font: 800 11px/1 Arial, sans-serif;
}
.feedback-list blockquote:nth-child(1)::before { content: "A"; }
.feedback-list blockquote:nth-child(2)::before { content: "B"; }
.feedback-list blockquote:nth-child(3)::before { content: "C"; }

.career-service-grid {
  margin: -18px 0 42px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  border: 1px solid #bdc7c0;
  background: #bdc7c0;
}
.career-service-grid > :is(a, button) {
  min-width: 0;
  min-height: 190px;
  padding: 22px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  border: 0;
  color: var(--ink);
  background: var(--white);
  cursor: pointer;
  text-align: left;
  transition: color .2s ease, background .2s ease, transform .2s ease;
}
.career-service-grid > :is(a, button):first-child { color: var(--white); background: var(--ink); }
.career-service-grid > :is(a, button):nth-child(3) { background: var(--acid); }
.career-service-grid > :is(a, button):hover { z-index: 1; color: var(--ink); background: var(--cyan); transform: translateY(-3px); }
.career-service-grid span { color: var(--orange); font: 800 10px/1 Arial, sans-serif; }
.career-service-grid > :first-child span { color: var(--acid); }
.career-service-grid b { margin-top: 33px; font-size: 21px; }
.career-service-grid small { margin-top: 7px; color: #73807c; font-size: 10px; line-height: 1.65; }
.career-service-grid > :first-child small { color: #91a4a8; }
.career-service-grid i { width: 100%; margin-top: auto; padding-top: 13px; border-top: 1px solid #d2d9d4; font-size: 10px; font-style: normal; font-weight: 800; }
.career-service-grid > :first-child i { border-color: #365057; }

@media (max-width: 850px) {
  .career-service-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 600px) {
  .feedback-list blockquote { padding-left: 44px; }
  .career-service-grid { margin-top: -10px; grid-template-columns: 1fr; gap: 8px; border: 0; background: transparent; }
  .career-service-grid > :is(a, button) { min-height: 165px; border: 1px solid #c6cec9; }
}

@media (prefers-reduced-motion: reduce) {
  .talent-panel-enter-forward,
  .talent-panel-enter-back { animation: none; }
}

@media print {
  .recruitment-page .prototype-bar, .recruitment-page .site-header, .talent-subnav, .talent-view-controls, .career-service-grid, .job-board-sidebar, .recruitment-footer, .recruitment-hero__actions, .service-dialog { display: none !important; }
  .recruitment-hero { color: #000; background: #fff; }
  .recruitment-hero__layout, .job-board-layout { display: block; min-height: 0; }
  .recruitment-hero__panel { display: none; }
  .portal-job-grid { grid-template-columns: repeat(2, 1fr); }
  .portal-job-card { break-inside: avoid; }
}

/* V12 — 与蓝色培训学院官网视觉统一 */
.recruitment-page.portal-v12 .primary-nav a.is-active { color: #fff; }
.recruitment-page.portal-v12 .recruitment-hero {
  background:
    radial-gradient(circle at 78% 20%, rgba(19,198,228,.14), transparent 26%),
    linear-gradient(135deg, #082b49, #061d34);
}
.recruitment-page.portal-v12 .recruitment-hero__panel { border-top-color: #13c6e4; background: rgba(8,55,82,.9); }
.recruitment-page.portal-v12 .talent-subnav { border-bottom-color: #069bb8; background: #13c6e4; }
.recruitment-page.portal-v12 .talent-subnav a[aria-current="location"] { color: #fff; background: #092844; }
.recruitment-page.portal-v12 .talent-subnav a::before { color: rgba(9,40,68,.55); }
.recruitment-page.portal-v12 .recruitment-footer { background: #061d34; }

@media (max-width: 850px) {
  .recruitment-page.portal-v12 .primary-nav a.is-active { color: #6ce0ef; }
}
