/* ============================================================
   cailiaoyuan.css · 材料员岗位详解（重构版）
   题头形态⑥：深色题头 + 统计数字（保留）
   中间区块：横向流程 / 三卡 / 表格 / 双栏 / 清单 / 备考卡 / FAQ
   类名前缀 cy-
   ============================================================ */

/* ---------- 题头：深色底 + 统计数字 ---------- */
.cy-hero{
  background:linear-gradient(150deg,#0F1F17 0%,#123524 55%,#0E2A1C 100%);
  color:#fff; padding:120px 0 56px; position:relative; overflow:hidden;
}
.cy-hero::before{
  content:""; position:absolute; right:-120px; top:-120px; width:420px; height:420px;
  border-radius:50%; background:radial-gradient(circle,rgba(255,122,28,.22),transparent 70%);
}
.cy-crumbs{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; font-size:13px; color:#8FB3A0; padding:0 0 18px; }
.cy-crumbs a{ color:#C9E4D6; }
.cy-crumbs a:hover{ color:var(--orange-2); }
.cy-sep{ color:rgba(255,255,255,.25); }
.cy-hero-grid{ display:grid; grid-template-columns:1.15fr .85fr; gap:48px; align-items:center; position:relative; z-index:1; }
.cy-kicker{ display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:700; letter-spacing:3px; color:var(--orange-2); margin-bottom:14px; }
.cy-kicker::before{ content:""; width:26px; height:3px; border-radius:3px; background:linear-gradient(90deg,var(--orange),var(--green-2)); }
.cy-kicker.k-green{ color:var(--green-2); }
.cy-title{ font-size:46px; font-weight:800; letter-spacing:1px; line-height:1.2; }
.cy-sub{ margin-top:18px; color:#C4D8CC; font-size:16px; line-height:1.9; max-width:560px; }
.cy-actions{ margin-top:28px; display:flex; flex-wrap:wrap; gap:14px; }
.btn-ghost-white{ border-color:rgba(255,255,255,.45); color:#fff; background:transparent; }
.btn-ghost-white:hover{ background:rgba(255,255,255,.12); transform:translateY(-2px); }
.cy-hero-media{ position:relative; }
.cy-hero-media img{ width:100%; height:340px; object-fit:cover; border-radius:20px; box-shadow:0 24px 60px rgba(0,0,0,.35); }
.cy-hero-badge{ position:absolute; left:18px; bottom:18px; background:rgba(15,31,23,.82); color:#fff; font-size:13px; font-weight:600; padding:8px 16px; border-radius:999px; border:1px solid rgba(255,255,255,.18); }
.cy-stats{ margin-top:48px; display:grid; grid-template-columns:repeat(4,1fr); gap:16px; position:relative; z-index:1; }
.cy-stats li{ background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12); border-radius:16px; padding:20px 22px; }
.cy-stats b{ display:block; font-size:34px; font-weight:800; color:var(--orange-2); line-height:1.1; }
.cy-stats span{ font-size:13px; color:#9FBCAC; margin-top:6px; display:block; }

/* ---------- 区块标题通用 ---------- */
.cy-head{ margin-bottom:36px; }
.cy-head .cy-kicker{ margin-bottom:10px; }
.cy-h2{ font-size:32px; font-weight:800; letter-spacing:.5px; }
.cy-sub{ margin-top:10px; color:var(--ink-2); font-size:15px; max-width:720px; }
.cy-head.ta-c{ text-align:center; }
.cy-head.ta-c .cy-sub{ margin-left:auto; margin-right:auto; }

/* ---------- 区块1：横向五步流程 ---------- */
.cy-flow{ background:#fff; }
.cy-flowbar{ display:grid; grid-template-columns:repeat(5,1fr); gap:16px; }
.cy-step{ background:var(--bg-soft); border-radius:var(--radius); padding:26px 18px; border:1px solid var(--line); position:relative; }
.cy-step:not(:last-child)::after{
  content:""; position:absolute; right:-13px; top:50%; transform:translateY(-50%);
  width:0; height:0; border-left:12px solid var(--green); border-top:8px solid transparent; border-bottom:8px solid transparent; z-index:2;
}
.cls-num{ display:inline-flex; width:36px; height:36px; align-items:center; justify-content:center; border-radius:50%; background:linear-gradient(135deg,var(--orange),var(--orange-deep)); color:#fff; font-weight:800; margin-bottom:12px; }
.cy-step h3{ font-size:16.5px; margin-bottom:8px; }
.cy-step p{ font-size:13px; color:var(--ink-2); line-height:1.75; }

/* ---------- 区块2：复试/台账/堆放三卡 ---------- */
.cy-cards{ background:var(--bg-green); }
.cy-triple{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.cy-tcard{ background:#fff; border-radius:var(--radius-lg); padding:32px 28px; box-shadow:var(--shadow-sm); border-top:4px solid var(--orange); transition:transform .3s ease, box-shadow .3s ease; }
.cy-tcard:nth-child(2){ border-top-color:var(--green); }
.cy-tcard:nth-child(3){ border-top-color:var(--orange-deep); }
.cy-tcard:hover{ transform:translateY(-6px); box-shadow:var(--shadow-md); }
.clt-icon{ display:block; width:46px; height:46px; border-radius:12px; margin-bottom:16px; }
.ci-recheck{ background:linear-gradient(135deg,var(--orange-soft),#FFE0C2); position:relative; }
.ci-recheck::after{ content:""; position:absolute; left:12px; top:14px; width:22px; height:14px; border:3px solid var(--orange-deep); border-radius:3px; }
.ci-ledger{ background:linear-gradient(135deg,var(--green-soft),#C9F0DC); position:relative; }
.ci-ledger::after{ content:""; position:absolute; left:13px; top:12px; width:20px; height:22px; border-left:3px solid var(--green-deep); border-bottom:3px solid var(--green-deep); }
.ci-stack{ background:linear-gradient(135deg,#FFF4EA,#FFDDB8); position:relative; }
.ci-stack::after{ content:""; position:absolute; left:11px; top:18px; width:24px; height:5px; background:var(--orange-deep); box-shadow:0 -7px 0 var(--orange-deep),0 7px 0 var(--orange-deep); }
.cy-tcard h3{ font-size:19px; margin-bottom:10px; }
.cy-tcard p{ color:var(--ink-2); font-size:14.5px; line-height:1.85; }

/* ---------- 区块3：台账表格 ---------- */
.cy-table-sec{ background:#fff; }
.cy-tablewrap{ border-radius:var(--radius-lg); overflow:auto; box-shadow:var(--shadow-sm); border:1px solid var(--line); }
.cy-table{ width:100%; border-collapse:collapse; background:#fff; min-width:760px; }
.cy-table th,.cy-table td{ padding:13px 14px; text-align:left; font-size:13.5px; }
.cy-table thead th{ background:var(--ink); color:#fff; letter-spacing:1px; white-space:nowrap; }
.cy-table tbody tr{ border-bottom:1px solid var(--line); }
.cy-table tbody tr:nth-child(odd){ background:var(--bg-soft); }
.cy-table tbody tr:last-child{ border-bottom:none; }
.cy-table td{ color:var(--ink-2); }
.cy-table-note{ margin-top:12px; font-size:12.5px; color:var(--ink-3); }

/* ---------- 区块4：适合人群双栏 ---------- */
.cy-fit{ background:var(--bg-orange); }
.cy-fit2{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.cy-fitcol{ background:#fff; border-radius:var(--radius-lg); padding:32px 30px; box-shadow:var(--shadow-sm); }
.cy-fitcol h3{ font-size:19px; margin-bottom:18px; color:var(--orange-deep); }
.cy-fitcol:last-child h3{ color:var(--green-deep); }
.cy-fitcol ul{ display:flex; flex-direction:column; gap:12px; }
.cy-fitcol li{ position:relative; padding-left:24px; font-size:14.5px; color:var(--ink-2); line-height:1.8; }
.cy-fitcol li::before{ content:""; position:absolute; left:0; top:9px; width:10px; height:10px; border-radius:50%; background:linear-gradient(135deg,var(--orange),var(--green)); }

/* ---------- 区块5：报考清单 ---------- */
.cy-apply-wrap{ max-width:900px; margin:0 auto; }
.cy-checklist{ border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-sm); border:1px solid var(--line); }
.cy-checklist li{ background:#fff; padding:18px 26px; font-size:14.5px; color:var(--ink-2); line-height:1.85; border-bottom:1px solid var(--line); }
.cy-checklist li:nth-child(odd){ background:var(--bg-soft); }
.cy-checklist li:last-child{ border-bottom:none; }
.cy-checklist b{ color:var(--green-deep); font-weight:800; margin-right:8px; }
.cy-apply-links{ margin-top:24px; display:flex; flex-wrap:wrap; gap:14px; }

/* ---------- 区块6：备考卡 ---------- */
.cy-prep{ background:#fff; }
.cy-prep-card{ display:grid; grid-template-columns:1.2fr .8fr; gap:40px; align-items:center; background:linear-gradient(135deg,#FFF4EA,#fff); border:1px solid rgba(255,122,28,.2); border-radius:var(--radius-lg); padding:44px; box-shadow:var(--shadow-sm); }
.cy-prep-copy p{ margin-top:14px; color:var(--ink-2); line-height:1.9; }
.cy-prep-copy .btn{ margin-top:22px; }
.cy-prep-media img{ width:100%; height:280px; object-fit:cover; border-radius:var(--radius); }

/* ---------- 区块7：FAQ 手风琴 ---------- */
.cy-faq-wrap{ max-width:860px; margin:0 auto; }
.cy-acc{ margin-top:30px; }
.cy-acc-item{ background:#fff; border:1px solid var(--line); border-radius:14px; margin-bottom:14px; overflow:hidden; }
.cy-acc-head{ width:100%; text-align:left; padding:18px 22px; font-size:16px; font-weight:700; color:var(--ink); display:flex; align-items:center; justify-content:space-between; gap:16px; }
.cy-acc-arrow{ flex-shrink:0; width:26px; height:26px; border-radius:50%; background:var(--bg-green); position:relative; transition:transform .3s ease; }
.cy-acc-arrow::before{ content:""; position:absolute; left:50%; top:50%; width:10px; height:2px; background:var(--green-deep); transform:translate(-50%,-50%); }
.cy-acc-arrow::after{ content:""; position:absolute; left:50%; top:50%; width:2px; height:10px; background:var(--green-deep); transform:translate(-50%,-50%); transition:opacity .3s ease; }
.cy-acc-item.open .cy-acc-arrow{ transform:rotate(180deg); }
.cy-acc-item.open .cy-acc-arrow::after{ opacity:0; }
.cy-acc-body{ max-height:0; overflow:hidden; transition:max-height .35s ease; }
.cy-acc-item.open .cy-acc-body{ max-height:320px; }
.cy-acc-body p{ padding:0 22px 20px; color:var(--ink-2); font-size:14.5px; line-height:1.9; }
.cy-acc-body a{ color:var(--orange-deep); font-weight:600; }

/* ---------- 底部 CTA ---------- */
.cy-cta{ background:linear-gradient(120deg,var(--orange),var(--orange-deep)); padding:56px 0; color:#fff; }
.cy-cta .cta-inner{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px; }
.cy-cta .cta-copy h2{ font-size:28px; font-weight:800; }
.cy-cta .cta-copy p{ margin-top:10px; color:rgba(255,255,255,.92); max-width:520px; line-height:1.8; }
.cy-cta .cta-actions{ display:flex; flex-wrap:wrap; gap:14px; }

/* ---------- 响应式 ---------- */
@media (max-width:980px){
  .cy-hero{ padding:104px 0 44px; }
  .cy-hero-grid{ grid-template-columns:1fr; gap:28px; }
  .cy-title{ font-size:36px; }
  .cy-stats{ grid-template-columns:repeat(2,1fr); }
  .cy-flowbar{ grid-template-columns:1fr 1fr; }
  .cy-step:not(:last-child)::after{ display:none; }
  .cy-triple{ grid-template-columns:1fr; }
  .cy-fit2{ grid-template-columns:1fr; }
  .cy-prep-card{ grid-template-columns:1fr; padding:30px; }
}
@media (max-width:640px){
  .cy-title{ font-size:30px; }
  .cy-flowbar{ grid-template-columns:1fr; }
  .cy-cta .cta-inner{ flex-direction:column; align-items:flex-start; }
}
