/* stock-thesis.css — khối "Đọc nối các mảnh ghép" (tab Tổng quan trang cổ phiếu, 10/10/2026). Chỉ dùng biến màu moats.css. */
.th{padding:18px 20px 14px}
.th .card-head{align-items:flex-start}
.th .card-sub{margin:4px 0 0;font-size:13px;color:var(--muted);line-height:1.45}
.th-lead{margin:12px 0 4px;padding:12px 14px;border-radius:12px;font-size:15.5px;line-height:1.55;color:var(--ink);background:var(--card-2,var(--neubg));border-left:4px solid var(--brand)}
.th-lead--ok{border-left-color:var(--up,#0B9E6B)}
.th-lead--bad{border-left-color:var(--down,#E5484D)}
.th-lead--warn{border-left-color:var(--orange,#E0A531)}
.th-lead u,.th-p u{text-decoration:none;border-bottom:2px solid var(--orange,#E0A531);padding-bottom:1px}
.th-lead--lock{padding:0;background:transparent;border:0}
.th-steps{list-style:none;margin:10px 0 0;position:relative;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}
.th-step{position:relative;display:flex;gap:12px;align-items:flex-start;padding:12px 14px 12px 12px;border:1px solid var(--line);border-radius:12px;background:var(--card);min-width:0}
.th-step--ok{border-color:color-mix(in srgb,var(--up,#0B9E6B) 45%,var(--line))}
.th-step--warn{border-color:color-mix(in srgb,var(--orange,#E0A531) 55%,var(--line))}
.th-step--bad{border-color:color-mix(in srgb,var(--down,#E5484D) 55%,var(--line))}
.th-ico{flex:none;width:26px;height:26px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;margin-top:1px;background:var(--neubg);color:var(--muted)}
.th-step--ok .th-ico{background:var(--okbg);color:var(--oktext,var(--ok))}
.th-step--warn .th-ico{background:var(--warnbg);color:var(--warn)}
.th-step--bad .th-ico{background:var(--badbg,rgba(229,72,77,.14));color:var(--down-t,var(--bad))}
.th-body{min-width:0;flex:1}
.th-h{margin:0 0 4px;font-size:14.5px;line-height:1.3;color:var(--ink)}
.th-p{margin:0;font-size:14px;line-height:1.55;color:var(--ink2,var(--ink))}
.th-p b.num{font-variant-numeric:tabular-nums;color:var(--ink)}
.th-p i{font-style:normal;font-weight:700}
.th-src{color:var(--muted);font-size:12.5px}
.th-why{display:block;margin-top:6px;padding:8px 10px;border-radius:8px;background:var(--brand-bg,var(--card-2));color:var(--ink);font-size:13.5px;line-height:1.5}
.th-why::before{content:'Vì sao → ';font-weight:700;color:var(--brand-ink,var(--brand))}
.th-rk{font-weight:800;color:var(--brand-ink,var(--brand))}
.th-wrong{display:block;margin-top:6px;padding-top:6px;border-top:1px dashed var(--line);color:var(--ink)}
.th-go{display:inline-block;margin-top:6px;font-size:12.5px;font-weight:600;color:var(--link,var(--brand-ink));text-decoration:none}
.th-go:hover{text-decoration:underline}
.th-ghost{opacity:.55;filter:blur(1px)}
.th-step--lock .th-h{color:var(--muted)}
.th-cta{margin-top:12px;text-align:center}
.th-warn{margin-top:12px;padding:10px 12px;border-radius:10px;background:var(--warnbg);color:var(--ink);font-size:13px;line-height:1.5}
.th-warn b{color:var(--warn)}
.th-warn span{display:block;margin-top:3px}
.th-foot{margin:10px 0 0;font-size:12px;color:var(--muted);line-height:1.45}
.th--skel{min-height:200px}
/* gập khối chi tiết đã được Đọc nối tóm (desktop) */
.th-fold{display:flex;flex-direction:column;gap:14px}
.th-fold__bar{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;min-height:50px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.th-fold__bar:hover{background:var(--hover,var(--zebra))}
.th-fold__t{font-weight:700;font-size:15px;white-space:nowrap}
.th-fold__s{flex:1;min-width:0;color:var(--muted);font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.th-fold__c{flex:none;color:var(--muted);transition:transform .15s}
.th-fold.is-open .th-fold__c{transform:rotate(180deg)}
.th-fold__b{display:none}
.th-fold.is-open .th-fold__b{display:block}
.th-fold.is-open > .th-fold__b > .x3-g2{margin-top:0}
@media (max-width:959px){.th-steps{grid-template-columns:minmax(0,1fr)}}
@media (max-width:719px){
  .th{padding:14px 12px 12px}
  .th-lead{font-size:14.5px;padding:10px 12px}
  .th-step{padding:10px 10px 10px 10px;gap:10px}
  .th-h{font-size:14px}
  .th-p{font-size:13.5px}
}
.th-steps--pro{margin-top:10px}
.th-term{font-style:normal;text-decoration:none;border-bottom:1px dotted var(--muted);cursor:help}
.th-term:hover,.th-term:focus{border-bottom-color:var(--brand);color:var(--brand-ink,var(--brand));outline:0}
.th-gate{position:relative;margin-top:10px;min-height:320px}
.th-gate .th-lead--lock{margin:0 0 10px}
@media (max-width:719px){.th-gate{min-height:380px}}
