/* ══════════════════════════════════════════════════════════════════════════
   css/orch.css  ——  《配器法》课程章节页专属样式（2026-10-12 新建）

   ★ 命名铁律：本文件只出 .orc- 前缀的类，绝不新增通用类名
     （.score / .sub / .label / .card 这类一律禁止）。
   ★ 本文件只被 /配器法/*.html 引用；站点通用样式一律走 css/site.css。
   ★ 视频网格复用 site.css 已有的 .vid-grid / .vc（站点自有组件，非新类名）。
   ★ 配色：课程主色 = --jade #4FA691（与 js/search.js 的 COURSES 中「配器法」一致）。
   ══════════════════════════════════════════════════════════════════════════ */

/* ─────────── 章节头部：比课程首页更紧凑（内容页要尽快进入正文） ─────────── */
.phero.orc-hero{padding:54px 0 44px;}
@media(max-width:760px){ .phero.orc-hero{padding:40px 0 34px;} }

/* ─────────── 区块标题微调 ─────────── */
.orc-sec-sub{max-width:800px;margin:-32px auto 44px;text-align:center;
  font-size:14.6px;color:var(--muted);line-height:1.9;}
@media(max-width:760px){ .orc-sec-sub{margin:-22px auto 32px;} }

/* ─────────── 章节定位：目标 + 要点 ─────────── */
.orc-goal{margin:0;padding:0;list-style:none;}
.orc-goal li{position:relative;padding:7px 0 7px 24px;font-size:14.8px;color:var(--text-2);line-height:1.82;}
.orc-goal li::before{content:"";position:absolute;left:2px;top:16px;width:7px;height:7px;border-radius:50%;
  background:var(--jade);box-shadow:0 0 0 3px rgba(79,166,145,.16);}
.orc-goal b{color:var(--text);}
.orc-point{margin:0;padding:0;list-style:none;}
.orc-point li{position:relative;padding:6px 0 6px 22px;font-size:14.4px;color:var(--muted);line-height:1.8;}
.orc-point li::before{content:"▸";position:absolute;left:3px;top:6px;color:var(--gold);font-size:12px;}
.orc-point b{color:var(--text);}

/* ─────────── 核心知识块 ─────────── */
.orc-block{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);
  padding:26px 28px 22px;margin-bottom:18px;
  box-shadow:0 4px 18px rgba(20,29,43,.045);}
.orc-block h4{font-size:17.6px;font-weight:800;color:#0F2E28;letter-spacing:.01em;
  margin:0 0 12px;padding-left:13px;position:relative;line-height:1.5;}
.orc-block h4::before{content:"";position:absolute;left:0;top:.34em;bottom:.34em;width:4px;border-radius:3px;
  background:linear-gradient(180deg,var(--jade-2),var(--jade));}
.orc-block p{margin:0 0 12px;font-size:14.9px;line-height:1.95;color:var(--text-2);}
.orc-block p:last-child{margin-bottom:0;}
.orc-block b{color:var(--text);}
.orc-block i{font-style:normal;color:#1F6E5D;font-weight:700;}

/* ─────────── 乐器速查表 ─────────── */
.orc-kv{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);
  padding:22px 24px 18px;margin-bottom:18px;box-shadow:0 4px 18px rgba(20,29,43,.045);}
.orc-kv-h{display:flex;align-items:baseline;gap:11px;flex-wrap:wrap;margin-bottom:14px;}
.orc-kv-h b{font-size:16.6px;font-weight:800;color:#0F2E28;}
.orc-kv-h span{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:#7EA79B;}
.orc-kv-t{width:100%;border-collapse:collapse;font-size:14.2px;}
.orc-kv-t tr{border-bottom:1px solid var(--line);}
.orc-kv-t tr:last-child{border-bottom:0;}
.orc-kv-t th{text-align:left;padding:9px 14px 9px 0;width:172px;vertical-align:top;
  font-weight:700;color:#155545;white-space:nowrap;}
.orc-kv-t td{padding:9px 0;color:var(--text-2);line-height:1.8;}
.orc-kv-t td b{color:var(--text);}
.orc-kv-t td i{font-style:normal;color:#1F6E5D;font-weight:700;}
.orc-kv-note{margin:13px 0 0;font-size:13.1px;color:var(--muted);line-height:1.85;
  padding-left:14px;border-left:3px solid rgba(79,166,145,.3);}
@media(max-width:620px){
  .orc-kv{padding:18px 16px 14px;}
  .orc-kv-t,.orc-kv-t tbody,.orc-kv-t tr,.orc-kv-t th,.orc-kv-t td{display:block;width:auto;}
  .orc-kv-t tr{padding:9px 0;}
  .orc-kv-t th{padding:0 0 3px;}
  .orc-kv-t td{padding:0;}
}

/* ─────────── Sibelius 快捷键表 ─────────── */
.orc-sc{display:grid;grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:9px;margin:4px 0 0;}
.orc-sc-i{display:flex;align-items:center;gap:11px;background:#F7F9F8;border:1px solid #E3EDE9;
  border-radius:10px;padding:9px 13px;}
.orc-kbd{flex:0 0 auto;font-family:var(--mono);font-size:12px;font-weight:700;color:#0F2E28;
  background:#fff;border:1px solid #CFE0DA;border-bottom-width:2px;border-radius:6px;
  padding:3px 8px;white-space:nowrap;}
.orc-sc-i span{font-size:13.3px;color:var(--text-2);line-height:1.6;}
.orc-sc-i span b{color:var(--text);}

/* ─────────── 视频区 ─────────── */
.orc-vgroup{margin-bottom:34px;}
.orc-vgroup:last-child{margin-bottom:0;}
.orc-vgroup-h{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px;
  padding-bottom:11px;border-bottom:1px solid var(--line);}
.orc-vgroup-h b{font-size:18px;font-weight:800;color:#0F2E28;}
.orc-vgroup-h em{font-style:normal;font-family:var(--mono);font-size:11.5px;font-weight:700;
  letter-spacing:.1em;color:#fff;background:var(--jade);border-radius:20px;padding:3px 11px;}
.orc-vgroup-h small{margin-left:auto;font-size:12.6px;color:var(--muted);}

/* ─────────── 资源清单（谱例 / 课件 / 总谱） ─────────── */
.orc-res{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;}
.orc-res-i{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);
  border-radius:var(--r);padding:17px 19px;transition:.26s cubic-bezier(.2,.7,.3,1);text-decoration:none;}
.orc-res-i:hover{transform:translateY(-3px);box-shadow:var(--sh);border-color:#BED9D1;}
.orc-res-ico{flex:0 0 auto;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;
  font-size:18px;background:#EDF6F3;border:1px solid #D5E8E2;}
.orc-res-b{min-width:0;}
.orc-res-b b{display:block;font-size:14.9px;font-weight:700;color:var(--text);margin-bottom:4px;line-height:1.5;}
.orc-res-b span{display:block;font-size:12.9px;color:var(--muted);line-height:1.7;}
.orc-res-b em{display:inline-block;margin-top:7px;font-style:normal;font-family:var(--mono);font-size:10.5px;
  font-weight:700;letter-spacing:.08em;color:#1F6E5D;background:#EDF6F3;border-radius:5px;padding:2px 7px;}
.orc-res-empty{font-size:13.6px;color:var(--muted-2);}

/* ─────────── 配套工具卡 ─────────── */
.orc-tool{display:grid;grid-template-columns:1.35fr 1fr;gap:26px;align-items:center;
  border:1px dashed rgba(255,255,255,.22);border-radius:var(--r-lg);padding:30px 32px;
  background:rgba(255,255,255,.03);}
.orc-tool h3{font-size:21px;color:#fff;margin:0 0 8px;}
.orc-tool .orc-tool-en{font-family:var(--mono);font-size:11.4px;letter-spacing:.16em;color:var(--jade-2);
  margin-bottom:12px;}
.orc-tool p{font-size:14.4px;color:#93A0BA;line-height:1.9;margin:0 0 18px;}
.orc-tool p b{color:var(--gold-3);}
.orc-tool-feats{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 20px;padding:0;list-style:none;}
.orc-tool-feats li{font-size:11.9px;color:#C0CADD;background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);padding:4px 11px;border-radius:20px;}
.orc-tool-note{font-size:12.4px;color:#7E8AA3;margin-top:12px;}
.orc-tool-vis{display:grid;place-items:center;}
.orc-tool-vis .orc-tool-mock{width:100%;max-width:330px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.13);border-radius:14px;padding:18px 16px;}
.orc-tool-mock i{display:block;height:1.4px;background:rgba(255,255,255,.3);margin:13px 0;
  position:relative;border-radius:2px;}
.orc-tool-mock i::before{content:"";position:absolute;left:14%;top:-4.2px;width:9px;height:9px;
  border-radius:50%;background:var(--gold-2);transform:rotate(-18deg);}
.orc-tool-mock i:nth-child(2)::before{left:34%;background:var(--jade-2);}
.orc-tool-mock i:nth-child(3)::before{left:54%;background:var(--indigo-2);}
.orc-tool-mock i:nth-child(4)::before{left:74%;background:var(--rose);}
.orc-tool-mock i:nth-child(5)::before{left:44%;background:#E8B755;}
.orc-tool-mock u{display:block;text-align:center;font-family:var(--mono);font-size:10.4px;
  letter-spacing:.16em;color:#7E8AA3;text-decoration:none;margin-top:16px;}
@media(max-width:900px){ .orc-tool{grid-template-columns:1fr;padding:24px 20px;} .orc-tool-vis{display:none;} }

/* ─────────── 作业卡 ─────────── */
.orc-hw{margin:0;padding:0;list-style:none;counter-reset:orc-hw;}
.orc-hw li{counter-increment:orc-hw;position:relative;padding:13px 0 13px 46px;
  font-size:14.7px;color:var(--text-2);line-height:1.85;border-bottom:1px dashed var(--line);}
.orc-hw li:last-child{border-bottom:0;}
.orc-hw li::before{content:counter(orc-hw,decimal-leading-zero);position:absolute;left:0;top:13px;
  font-family:var(--mono);font-size:12px;font-weight:700;color:#1F6E5D;
  background:#EDF6F3;border-radius:7px;padding:4px 8px;}

/* ─────────── 章节导航 ─────────── */
.orc-nav{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  margin-top:8px;padding:22px 26px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);}
.orc-nav a{font-size:14.4px;color:#1F6E5D;font-weight:600;text-decoration:none;transition:.22s;}
.orc-nav a:hover{color:#0F2E28;}
.orc-nav .orc-nav-mid{font-size:13.3px;color:var(--muted);text-align:center;flex:1 1 260px;}
.orc-nav .orc-nav-mid a{font-weight:400;color:var(--muted);}
.orc-nav .orc-nav-mid a:hover{color:#1F6E5D;}
.orc-nav .orc-nav-next{margin-left:auto;}
@media(max-width:680px){
  .orc-nav{padding:18px 18px;flex-direction:column;align-items:stretch;text-align:center;}
  .orc-nav .orc-nav-mid{order:-1;margin-bottom:12px;}
  .orc-nav .orc-nav-next{margin-left:0;}
}

/* ─────────── 目录页：章节列表 ─────────── */
.orc-toc{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;}
.orc-toc-i{display:flex;gap:15px;align-items:flex-start;background:#fff;border:1px solid var(--line);
  border-radius:var(--r-lg);padding:20px 22px;text-decoration:none;
  transition:.28s cubic-bezier(.2,.7,.3,1);position:relative;overflow:hidden;}
.orc-toc-i::after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--jade);
  transform:scaleY(0);transform-origin:top;transition:transform .3s;}
.orc-toc-i:hover{transform:translateY(-4px);box-shadow:var(--sh);border-color:#BED9D1;}
.orc-toc-i:hover::after{transform:scaleY(1);}
.orc-toc-n{flex:0 0 auto;font-family:var(--mono);font-size:22px;font-weight:800;color:#C9DED8;
  line-height:1;padding-top:2px;letter-spacing:-.02em;}
.orc-toc-i:hover .orc-toc-n{color:var(--jade);}
.orc-toc-b b{display:block;font-size:16.4px;font-weight:800;color:var(--text);margin-bottom:5px;line-height:1.5;}
.orc-toc-b em{display:block;font-style:normal;font-family:var(--mono);font-size:10.6px;font-weight:700;
  letter-spacing:.13em;color:#7EA79B;margin-bottom:7px;}
.orc-toc-b span{display:block;font-size:13.1px;color:var(--muted);line-height:1.75;}
.orc-toc-b u{display:inline-block;text-decoration:none;margin-top:9px;font-family:var(--mono);font-size:10.4px;
  font-weight:700;letter-spacing:.06em;color:#1F6E5D;background:#EDF6F3;border-radius:5px;padding:2px 8px;}

/* ─────────── 目录页：编次分组标题 ─────────── */
.orc-group-h{display:flex;align-items:center;gap:13px;font-size:19px;font-weight:800;color:#0F2E28;
  margin:38px 0 6px;letter-spacing:.01em;}
.orc-group-h:first-of-type{margin-top:0;}
.orc-group-h::after{content:"";flex:1;height:1px;background:var(--line);}
.orc-group-p{margin:0 0 16px;font-size:13.6px;color:var(--muted);line-height:1.8;}
@media(max-width:620px){ .orc-group-h{font-size:16.6px;margin:28px 0 6px;} }

/* ─────────── 课件精讲（网页内阅读，非下载列表） ─────────── */
.orc-cw{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:18px;}
.orc-cw-i{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:22px 24px;
  display:flex;flex-direction:column;gap:10px;transition:.28s cubic-bezier(.2,.7,.3,1);}
.orc-cw-i:hover{box-shadow:var(--sh);border-color:#BED9D1;}
.orc-cw-h{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;}
.orc-cw-h b{font-size:16px;font-weight:800;color:var(--text);}
.orc-cw-h em{font-style:normal;font-family:var(--mono);font-size:10.6px;font-weight:700;
  letter-spacing:.12em;color:#7EA79B;background:#EDF6F3;border-radius:5px;padding:2px 8px;}
.orc-cw-p{margin:0;font-size:13.8px;color:var(--text-2);line-height:1.85;}
/* 乐谱渲染位（OSMD；无 data-xml 时不输出该节点） */
.orc-score{background:#fff;border:1px dashed #C9DED8;border-radius:12px;padding:14px 12px 6px;min-height:0;}
.orc-score.done{border-style:solid;}
.orc-score svg{width:100%;height:auto;display:block;}
.orc-score-empty{margin:6px 0;font-size:12.8px;color:var(--muted);text-align:center;}
@media(max-width:640px){ .orc-cw{grid-template-columns:1fr;} }

/* ─────────── 总谱内嵌在线阅读 ─────────── */
.orc-pdf{margin:26px 0 8px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;}
.orc-pdf-h{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 20px;
  background:#F6F5EF;border-bottom:1px solid var(--line);}
.orc-pdf-h b{font-size:15.4px;font-weight:800;color:var(--text);}
.orc-pdf-h span{font-size:12.8px;color:var(--muted);flex:1 1 240px;}
.orc-pdf-h em{font-style:normal;font-family:var(--mono);font-size:10.6px;font-weight:700;
  letter-spacing:.12em;color:#1F6E5D;}
.orc-pdf iframe{display:block;width:100%;height:680px;border:0;background:#fff;}
@media(max-width:640px){ .orc-pdf iframe{height:460px;} }

/* ─────────── 首页：课件按章直达 ─────────── */
.orc-cw-h2{margin:38px 0 16px;font-size:19px;font-weight:800;color:#0F2E28;}
.orc-cw-map{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:12px;}
.orc-cw-row{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);
  border-radius:12px;padding:13px 16px;text-decoration:none;transition:.24s;}
.orc-cw-row:hover{border-color:#BED9D1;box-shadow:var(--sh);transform:translateY(-2px);}
.orc-cw-no{flex:0 0 auto;font-family:var(--mono);font-size:11.4px;font-weight:700;color:#1F6E5D;
  background:#EDF6F3;border-radius:6px;padding:3px 8px;}
.orc-cw-row b{font-size:13.8px;font-weight:600;color:var(--text);line-height:1.6;}
.orc-cw-row em{font-style:normal;margin-left:auto;flex:0 0 auto;font-size:12px;color:#1F6E5D;font-weight:600;}

/* ─────────── 网页课件入口横幅（章节页 → ppt/ 播放器） ─────────── */
.orc-deck{display:flex;align-items:center;gap:22px;flex-wrap:wrap;
  margin:0 0 22px;padding:20px 26px;border-radius:var(--r-lg);
  background:linear-gradient(115deg,#0F2E28,#1B4A40 62%,#2F7C6B);
  text-decoration:none;box-shadow:var(--sh);transition:.28s cubic-bezier(.2,.7,.3,1);}
.orc-deck:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(15,46,40,.26);}
.orc-deck-l{flex:1 1 320px;}
.orc-deck-l em{display:block;font-style:normal;font-family:var(--mono);font-size:10.6px;
  font-weight:700;letter-spacing:.18em;color:#8CC4B4;}
.orc-deck-l b{display:block;margin:6px 0;font-size:19px;font-weight:800;color:#fff;}
.orc-deck-l span{display:block;font-size:13.6px;line-height:1.85;color:#C2DAD4;}
.orc-deck-go{flex:0 0 auto;font-size:14px;font-weight:700;color:#2A1C05;
  background:linear-gradient(120deg,var(--gold),var(--gold-2));border-radius:10px;
  padding:11px 20px;white-space:nowrap;}
@media(max-width:640px){ .orc-deck-go{width:100%;text-align:center;} }

/* ═══════════ 章节页「首屏即课件」版式 ═══════════ */
.orc-deckbar{background:#fff;border-bottom:1px solid var(--line);}
.orc-deckbar .wrap{display:flex;align-items:center;gap:12px;height:50px;flex-wrap:nowrap;overflow:hidden;}
.orc-deckbar a{text-decoration:none;white-space:nowrap;}
.db-home{font-size:13.6px;font-weight:600;color:#2F7C6B;}
.db-home:hover{color:#1F6E5D;}
.db-sep{width:1px;height:18px;background:var(--line);flex:0 0 auto;}
.db-name{font-size:14.6px;font-weight:800;color:var(--text);}
.db-tag{font-family:var(--mono);font-size:10.8px;font-weight:700;letter-spacing:.1em;color:#7EA79B;
  background:#EDF6F3;border-radius:5px;padding:3px 9px;}
.db-sp{flex:1 1 auto;}
.db-lnk{font-size:13.2px;font-weight:600;color:#54665F;}
.db-lnk:hover{color:#2F7C6B;}
.db-btn{font-size:13px;font-weight:700;color:#fff;background:#4FA691;border-radius:9px;padding:8px 14px;}
.db-btn:hover{background:#2F7C6B;}
@media(max-width:760px){ .db-lnk{display:none;} .orc-deckbar .wrap{height:46px;gap:9px;} }
.orc-embed{background:#101A17;overflow:hidden;}
.orc-embed iframe{display:block;width:100%;height:100%;border:0;background:#101A17;}
