/* ============================================================
   学途点点 · policy-v2.css ——「七张门票」政策学堂重设计
   ------------------------------------------------------------
   设计语言:七类招生计划=七个「入口」,讲解行重设计为带撕票孔的
   门票卡(.cl-row):左侧色票根(徽字+占比)+ 撕票虚线 + 票面信息,
   展开即「检票」。蛋糕条收进玻璃总卡;页头改为红头档案玻璃头。
   仅覆盖 policy 页命名空间(.qhero.pol2 / .ptabs / .cl-*),
   颜色全取主题令牌与各计划专属色(--rc),随四套主题换肤。
   最后加载,覆盖 xt10.css 同名规则。
   ============================================================ */

/* —— 页头:红头档案玻璃头 —— */
.qhero.pol2{position:relative;padding:22px 26px 20px 96px;border-radius:16px;
  background:rgba(255,255,255,.62);backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);
  border:1px solid rgba(255,255,255,.78);border-top:3px solid var(--pine);
  box-shadow:0 10px 32px rgba(var(--pine-dark-rgb,120,30,24),.09)}
.qhero.pol2 .x10-side{top:22px;left:30px;height:auto;bottom:22px;white-space:nowrap;overflow:hidden;
  border-left:1px solid color-mix(in srgb,var(--pine) 30%,var(--line))}
.qhero.pol2 h1{margin-top:6px}
.qhero.pol2 h1 .zhu{padding-bottom:7px}
.qhero.pol2 .pol2-seal{position:absolute;right:22px;top:14px;width:78px;height:78px;border-radius:50%;
  border:2.5px solid color-mix(in srgb,var(--cinnabar) 70%,transparent);color:var(--cinnabar);
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  font-family:var(--serif);font-weight:900;font-size:12.5px;letter-spacing:2px;line-height:1.4;
  transform:rotate(-12deg);opacity:.85;mix-blend-mode:multiply;pointer-events:none}
.qhero.pol2 .pol2-seal::before{content:"";position:absolute;inset:6px;border-radius:50%;
  border:1.5px dashed color-mix(in srgb,var(--cinnabar) 60%,transparent)}
.qhero.pol2 .pol2-seal small{font-size:8.5px;letter-spacing:3px;font-weight:700;margin-top:2px}
.policy-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0 20px}
.policy-trust>div{display:grid;grid-template-columns:auto 1fr;gap:2px 9px;padding:14px 15px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.55)}
.policy-trust span{grid-row:1/3;font-family:var(--mono);font-size:10px;color:var(--cinnabar);padding-top:2px}
.policy-trust b{font-family:var(--serif);font-size:13.5px;color:var(--ink)}
.policy-trust small{font-size:10.5px;line-height:1.55;color:var(--ink-soft)}
@media(max-width:760px){
  .qhero.pol2{padding-left:22px}
  .qhero.pol2 .pol2-seal{display:none}
  .policy-trust{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){.policy-trust{grid-template-columns:1fr}}

/* —— 页签:玻璃药丸 + 当前页签朱底 —— */
.ptabs{border-bottom:none;gap:8px;margin:20px 0 18px;padding:0}
.ptabs button{border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:13px;
  background:rgba(255,255,255,.62);backdrop-filter:blur(8px);color:var(--ink-soft);
  transition:color .15s,border-color .15s,background .15s,transform .15s}
.ptabs button:hover{border-color:var(--pine-border);color:var(--pine-dark);transform:translateY(-1px)}
.ptabs button.on{font-family:var(--sans);font-weight:700;font-size:13px;color:#fff;
  background:linear-gradient(120deg,var(--pine),var(--pine-dark));border-color:transparent;
  box-shadow:0 6px 16px rgba(var(--pine-rgb,194,69,45),.32)}
.ptabs button.on::after,.ptabs button.on::before{display:none}

/* —— 概念讲解:导语 + 蛋糕条收进玻璃总卡 —— */
.cl-head{position:relative;border-radius:16px;padding:18px 20px 16px;margin:4px 0 18px;
  background:rgba(255,255,255,.6);backdrop-filter:blur(14px) saturate(1.3);
  border:1px solid rgba(255,255,255,.78);
  box-shadow:0 8px 28px rgba(var(--pine-dark-rgb,120,30,24),.08)}
.cl-head .cl-intro{margin:0 0 12px}
.cl-barwrap{margin:0 0 8px}
.cl-bartotal{border-radius:12px 0 0 12px;background:linear-gradient(150deg,color-mix(in srgb,var(--ink) 94%,#000),color-mix(in srgb,var(--ink) 76%,var(--pine)))}
.cl-bar{height:48px;background:rgba(255,255,255,.5);gap:2px;padding:3px;border-radius:0 12px 12px 0}
.cl-bar i{border-radius:7px;transition:filter .14s,transform .18s}
.cl-bar i:hover{filter:brightness(1.12);transform:translateY(-2px)}
.cl-barcap{margin-top:6px}

/* —— 门票卡 —— */
.cl-rows{gap:11px}
details.cl-row{border:1px solid rgba(255,255,255,.8);border-left:none;border-radius:14px;
  background:rgba(255,255,255,.66);backdrop-filter:blur(12px) saturate(1.25);
  box-shadow:0 4px 18px rgba(var(--pine-dark-rgb,120,30,24),.06);
  transition:box-shadow .18s,transform .18s}
details.cl-row:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(var(--pine-dark-rgb,120,30,24),.12)}
details.cl-row[open]{border-color:color-mix(in srgb,var(--rc,var(--pine)) 40%,rgba(255,255,255,.8));
  box-shadow:0 14px 34px color-mix(in srgb,var(--rc,var(--pine)) 16%,transparent)}
details.cl-row.tk[open]{background:linear-gradient(90deg,color-mix(in srgb,var(--rc,var(--pine)) 12%,#fff) 0 64px,rgba(255,255,255,.66) 64px)}

details.cl-row.tk>summary{padding:0;gap:0;align-items:stretch}
/* 票根:计划色底,徽字+占比,右缘撕票孔 */
.tk-stub{flex:none;width:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
  background:linear-gradient(160deg,var(--rc,var(--pine)),color-mix(in srgb,var(--rc,var(--pine)) 78%,#000));
  color:#fff;position:relative;padding:12px 0}
.tk-stub .tk-bd{font-style:normal;font-family:var(--serif);font-weight:900;font-size:19px;line-height:1}
.tk-stub .tk-pct{font-style:normal;font-family:var(--mono);font-size:9.5px;letter-spacing:1px;opacity:.85}
/* 撕票孔:上下半圆缺口 + 竖虚线 */
.tk-stub::after{content:"";position:absolute;right:-1px;top:6px;bottom:6px;
  border-right:2px dashed rgba(255,255,255,.65)}
details.cl-row .tk-notch{position:absolute;left:55px;width:16px;height:16px;border-radius:50%;
  background:var(--paper);box-shadow:inset 0 1px 3px rgba(0,0,0,.14);z-index:2;pointer-events:none}
details.cl-row .tk-notch.t{top:-8px} details.cl-row .tk-notch.b{bottom:-8px}

.tk-body{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:12px 15px}
.cl-main b{font-size:15.5px}
.cl-num{font-family:var(--mono);font-weight:600;font-size:18px}
.cl-cv{background:rgba(255,255,255,.7)}

/* 检票后的抽屉 */
details.cl-row.tk .cl-drawer{margin-left:64px;}
.cl-drawer{border-top:1px dashed color-mix(in srgb,var(--rc,var(--pine)) 36%,var(--line));
  background:color-mix(in srgb,var(--rc,var(--pine)) 4%,rgba(255,255,255,.7));
  animation:tkOpen .26s ease}
@keyframes tkOpen{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}

@media(max-width:680px){
  .tk-stub{width:46px}
  details.cl-row .tk-notch{left:38px}
  details.cl-row.tk .cl-drawer{margin-left:0}
  details.cl-row.tk[open]{background:rgba(255,255,255,.66)}
  .cl-side .cl-chip{display:none}
}
@media (prefers-reduced-motion:reduce){
  .cl-drawer{animation:none}
  details.cl-row:hover,.ptabs button:hover,.cl-bar i:hover{transform:none}
}
