/* B–G 深度模块共用层：延续旧版图鉴视觉，不改各模块原有 Demo。 */
.md-overview,.md-selector,.md-matrix-section,.md-checklist,.md-practice{max-width:1176px;margin:0 auto 20px}
.md-overview,.md-selector,.md-matrix-section{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.md-kicker{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--accent);text-transform:uppercase;margin-bottom:8px}
.md-overview-head{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.8fr);gap:32px;padding:25px 28px 22px;border-bottom:1px dashed var(--line)}
.md-overview h2,.md-selector h2,.md-matrix-section h2{font-family:var(--serif);font-weight:900;font-size:25px;line-height:1.25;letter-spacing:-.01em;margin-bottom:8px}
.md-overview h2 em,.md-selector h2 em,.md-matrix-section h2 em{font-family:var(--em);font-weight:500;color:var(--accent);white-space:nowrap}
.md-overview-head p,.md-section-head p{font-size:13.5px;color:var(--ink-soft);max-width:720px}
.md-formula{margin-top:14px;display:inline-flex;align-items:center;gap:9px;flex-wrap:wrap;border:1px solid #D7D7DC;background:var(--accent-soft);border-radius:10px;padding:9px 12px;font-family:var(--mono);font-size:11.5px;color:var(--ink-soft)}
.md-formula b{color:var(--accent);font-weight:600}
.md-product{align-self:center}
.md-product-label{font-family:var(--mono);font-size:10px;color:var(--ink-mute);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}
.md-switch,.md-picks{display:flex;gap:6px;flex-wrap:wrap}
.md-switch button{border:1px solid var(--line);background:var(--bg);color:var(--ink-soft);border-radius:8px;padding:7px 11px;cursor:pointer;font:500 12px var(--sans);transition:.15s}
.md-switch button:hover,.md-switch button:focus-visible{border-color:var(--accent);color:var(--accent);outline:none}
.md-switch button.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.md-product-note{margin-top:10px;font-size:12.5px;color:var(--ink-soft);line-height:1.6;min-height:40px}
.md-picks{margin-top:10px}
.md-picks button{border:1px solid var(--line-soft);background:var(--bg-2);color:var(--ink);border-radius:100px;padding:4px 10px;font:11px var(--mono);cursor:pointer;transition:.15s}
.md-picks button:hover,.md-picks button:focus-visible{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);outline:none}
.md-journey{display:grid;grid-template-columns:repeat(6,1fr);padding:0 28px}
.md-step{position:relative;padding:18px 16px 18px 0;min-width:0}
.md-step:not(:last-child)::after{content:'→';position:absolute;right:7px;top:29px;color:var(--line);font-family:var(--mono)}
.md-step span{display:block;font:10px var(--mono);color:var(--accent);margin-bottom:4px}
.md-step strong{display:block;font-size:13px;margin-bottom:3px}
.md-step p{font-size:11.5px;color:var(--ink-mute);line-height:1.5;padding-right:12px}
.md-rules{display:grid;grid-template-columns:1fr 1fr;border-top:1px dashed var(--line)}
.md-rule{padding:18px 28px}
.md-rule+.md-rule{border-left:1px dashed var(--line)}
.md-rule h3{font:600 12px var(--sans);margin-bottom:7px;display:flex;align-items:center;gap:7px}
.md-rule.use h3::before{content:'✓';color:#17855b}.md-rule.avoid h3::before{content:'×';color:var(--accent)}
.md-rule ul{padding-left:17px;color:var(--ink-soft);font-size:12.5px}.md-rule li{margin:4px 0}

button.entry{width:100%;border:0;background:transparent;color:inherit;text-align:left;font-family:inherit}
button.entry:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:var(--accent-soft)}
.md-info-extra{display:grid;grid-template-columns:1.05fr 1.35fr 1fr 1fr;border-top:1px dashed var(--line);margin-top:20px;padding-top:18px}
.md-extra,.md-implementation-cell{padding:0 22px;border-left:1px dashed var(--line);min-width:0}
.md-extra:first-child,.md-implementation-cell:first-child{padding-left:0;border-left:0}
.md-extra dt,.md-implementation-cell dt{font-family:var(--mono);font-size:10px;color:var(--ink-mute);margin-bottom:8px;letter-spacing:.08em;text-transform:uppercase}
.md-extra p,.md-implementation-cell p{font-size:12.5px;color:var(--ink-soft);line-height:1.7}
.md-tags{display:flex;gap:5px;flex-wrap:wrap}
.md-tags span{font:10.5px var(--mono);color:var(--ink-soft);background:var(--bg-2);border:1px solid var(--line-soft);border-radius:100px;padding:3px 8px}
.md-implementation{display:grid;grid-template-columns:1.05fr 1fr 1fr;border-top:1px dashed var(--line);margin-top:18px;padding-top:18px}

.md-section-head{padding:23px 28px 17px;border-bottom:1px dashed var(--line)}
.md-selector-layout{display:grid;grid-template-columns:1.15fr .85fr}
.md-selector-form{padding:21px 28px;display:grid;gap:16px}
.md-selector-group{display:grid;grid-template-columns:96px 1fr;gap:12px;align-items:start}
.md-selector-group dt{font:10px var(--mono);color:var(--ink-mute);letter-spacing:.07em;padding-top:8px}
.md-options{display:flex;gap:6px;flex-wrap:wrap}
.md-options button{border:1px solid var(--line);background:var(--bg);color:var(--ink-soft);border-radius:8px;padding:6px 10px;font:11.5px var(--sans);cursor:pointer;transition:.15s}
.md-options button:hover,.md-options button:focus-visible{border-color:var(--accent);color:var(--accent);outline:none}
.md-options button.on{background:var(--accent-soft);border-color:#D7D7DC;color:var(--accent);font-weight:600}
.md-selector-result{background:var(--bg-2);border-left:1px dashed var(--line);padding:21px 24px}
.md-result-label{font:10px var(--mono);color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}
.md-selector-result h3{font-family:var(--serif);font-weight:900;font-size:18px;margin-bottom:6px}
.md-selector-result>p{font-size:12px;color:var(--ink-soft);margin-bottom:12px}
.md-recommendations{display:grid;gap:7px}
.md-recommendation{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);background:var(--paper);border-radius:9px;padding:9px 10px;text-align:left;color:var(--ink);cursor:pointer;font-family:var(--sans);transition:.15s}
.md-recommendation:hover,.md-recommendation:focus-visible{border-color:var(--accent);transform:translateY(-1px);outline:none}
.md-recommendation .rank{width:32px;height:32px;border-radius:10px;border:1px solid var(--line-soft);background:var(--bg-2);color:var(--ink);display:grid;place-items:center;font-size:16px;line-height:1;font-family:'Apple Color Emoji','Segoe UI Emoji',sans-serif}
.md-recommendation b{display:block;font-size:12.5px;margin-bottom:1px}.md-recommendation small{display:block;color:var(--ink-mute);font-size:10.5px;line-height:1.4}.md-recommendation .match{display:inline-flex;align-items:baseline;gap:3px;padding:6px 9px;border:1px solid rgba(58,52,255,.28);border-radius:100px;background:var(--accent-soft);font:600 10px var(--mono);color:var(--accent);white-space:nowrap}.md-recommendation .match strong{font-size:13px;line-height:1}

.md-matrix-section{padding:24px 28px}
.md-matrix-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:16px;border-bottom:1px dashed var(--line);margin-bottom:16px}
.md-matrix-head .md-section-head{padding:0;border:0}.md-legend{font:10.5px var(--mono);color:var(--ink-mute);white-space:nowrap}.md-legend span{display:none}
.md-matrix-wrap{overflow-x:auto;padding-bottom:3px}
.md-matrix{width:100%;border-collapse:collapse;min-width:760px;font-size:12px}
.md-matrix th{font:10px var(--mono);letter-spacing:.05em;color:var(--ink-mute);text-align:left;padding:9px 10px;border-bottom:1px solid var(--line)}
.md-matrix td{padding:10px;border-bottom:1px dashed var(--line-soft);color:var(--ink-soft)}.md-matrix tr:last-child td{border-bottom:0}.md-matrix tr:hover td{background:rgba(58,52,255,.035)}
.md-matrix-entry{border:0;background:transparent;color:var(--ink);cursor:pointer;font:600 12.5px var(--sans);display:flex;align-items:center;gap:7px;text-align:left}
.md-matrix-entry:hover,.md-matrix-entry:focus-visible{color:var(--accent);outline:none}.md-score{font:10px var(--mono);letter-spacing:1px;color:var(--accent);white-space:nowrap}.md-score .off{color:var(--line)}

.md-checklist{background:var(--ink);color:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow);padding:23px 28px}
.md-check-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:17px}.md-check-head .md-kicker{color:#6B66FF}
.md-check-head h2{font-family:var(--serif);font-size:22px;line-height:1.3;margin-bottom:5px}.md-check-head p{font-size:12px;color:rgba(250,247,240,.65)}
.md-progress{min-width:210px;text-align:right}.md-progress strong{font:600 12px var(--mono);color:#8D89FF}.md-progress-track{height:5px;border-radius:100px;background:rgba(255,255,255,.13);overflow:hidden;margin-top:7px}.md-progress-value{display:block;height:100%;width:0;background:var(--accent);border-radius:100px;transition:.25s}
.md-check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px 10px}
.md-check-item{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);color:var(--paper);border-radius:9px;padding:9px 11px;display:grid;grid-template-columns:21px 1fr;gap:9px;align-items:start;text-align:left;font:12px var(--sans);cursor:pointer;transition:.15s}
.md-check-item:hover,.md-check-item:focus-visible{border-color:rgba(58,52,255,.75);outline:none}.md-box{width:19px;height:19px;border-radius:6px;border:1px solid rgba(255,255,255,.25);display:grid;place-items:center;color:transparent;font:11px var(--mono);transition:.15s}
.md-check-item.on{background:rgba(58,52,255,.12);border-color:rgba(58,52,255,.4)}.md-check-item.on .md-box{background:var(--accent);border-color:var(--accent);color:#fff}.md-check-item.on .md-check-text{color:rgba(250,247,240,.68);text-decoration:line-through;text-decoration-thickness:1px}
.md-check-actions{display:flex;justify-content:flex-end;margin-top:12px}.md-reset{border:0;background:transparent;color:rgba(250,247,240,.55);font:10px var(--mono);cursor:pointer;padding:4px}.md-reset:hover,.md-reset:focus-visible{color:#8D89FF;outline:none}

.md-practice{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}
.md-practice-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px 24px}.md-practice-card h3{font-family:var(--serif);font-weight:900;font-size:19px;margin-bottom:7px}.md-practice-card>.desc{font-size:12.5px;color:var(--ink-soft);margin-bottom:15px}
.md-recipes{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.md-recipe{border:1px solid var(--line-soft);background:var(--bg);border-radius:10px;padding:12px}.md-recipe b{font-size:12.5px;display:block;margin-bottom:5px}.md-recipe p{font-size:11.5px;color:var(--ink-soft);line-height:1.55}.md-recipe .chain{font:10px var(--mono);color:var(--accent);margin-top:8px;line-height:1.5}
.md-anti{display:grid;gap:8px}.md-anti-item{display:grid;grid-template-columns:24px 1fr;gap:7px;align-items:start;font-size:12px;color:var(--ink-soft);padding-bottom:8px;border-bottom:1px dashed var(--line-soft)}.md-anti-item:last-child{border-bottom:0;padding-bottom:0}.md-anti-item span{width:20px;height:20px;border-radius:6px;display:grid;place-items:center;color:var(--accent);background:var(--accent-soft);font-family:var(--mono)}

@media(max-width:900px){
  .md-overview,.md-selector,.md-matrix-section,.md-checklist,.md-practice{margin-left:16px;margin-right:16px}
  .md-overview-head{grid-template-columns:1fr}.md-journey{grid-template-columns:repeat(3,1fr)}.md-step:nth-child(3)::after{display:none}
  .md-info-extra{grid-template-columns:1fr 1fr}.md-extra{padding:14px 0;border-left:0;border-top:1px dashed var(--line)}.md-extra:nth-child(odd){padding-right:16px}.md-extra:nth-child(even){padding-left:16px;border-left:1px dashed var(--line)}.md-extra:nth-child(-n+2){border-top:0}
  .md-implementation{grid-template-columns:1fr}.md-implementation-cell{padding:13px 0;border-left:0;border-top:1px dashed var(--line)}.md-implementation-cell:first-child{padding-top:0;border-top:0}
  .md-selector-layout{grid-template-columns:1fr}.md-selector-result{border-left:0;border-top:1px dashed var(--line)}.md-practice{grid-template-columns:1fr}
}
@media(max-width:620px){
  .md-overview,.md-selector,.md-matrix-section,.md-checklist,.md-practice{margin-left:16px;margin-right:16px;margin-bottom:16px}
  .md-overview-head{padding:20px 18px;gap:20px}.md-overview h2,.md-selector h2,.md-matrix-section h2{font-size:21px}.md-formula{border-radius:9px;line-height:1.55}
  .md-journey{grid-template-columns:1fr 1fr;padding:0 18px}.md-step:nth-child(3)::after{display:block}.md-step:nth-child(even)::after{display:none}.md-rules{grid-template-columns:1fr}.md-rule{padding:16px 18px}.md-rule+.md-rule{border-left:0;border-top:1px dashed var(--line)}
  .md-info-extra{grid-template-columns:1fr}.md-extra,.md-extra:nth-child(odd),.md-extra:nth-child(even){padding:13px 0;border-left:0;border-top:1px dashed var(--line)}.md-extra:first-child{border-top:0}
  .md-section-head,.md-selector-form,.md-selector-result{padding-left:18px;padding-right:18px}.md-selector-group{grid-template-columns:1fr;gap:6px}.md-selector-group dt{padding-top:0}
  .md-matrix-section{padding:20px 18px}.md-matrix-head{align-items:flex-start;flex-direction:column;gap:8px}.md-legend span{display:inline}
  .md-checklist{padding:20px 18px}.md-check-head{align-items:flex-start;flex-direction:column;gap:12px}.md-progress{width:100%;text-align:left}.md-check-grid{grid-template-columns:1fr}
  .md-recipes{grid-template-columns:1fr}.md-practice-card{padding:19px 18px}.entry .play{opacity:1}
}
