/* 小资金怎么做大（small-account/）课页样式：叠在 assets/ui.css（令牌）、slides/lesson.css、trader/trader.css、price-action/pa-course.css 之后。
   源在 build/small_account/，生成器原样复制到 small-account/，引用地址带内容哈希。颜色只用 ui.css 令牌；亏损用红（--ch-down），不用绿色表示亏损。 */
.sa-i{width:18px;height:18px;flex:0 0 auto;vertical-align:-3px}
.sa-lesson .lesson-header,.sa-home .lesson-header{margin-bottom:6px}
.sa-h1sub{display:block;margin:6px 0 0;font-size:var(--fs-ui,15px);font-weight:600;color:var(--sub);line-height:1.5}
h1 .sa-h1sub{font-size:.55em}
.sa-meta{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 14px;font-size:var(--fs-small,13px);color:var(--sub)}
@media(min-width:600px){.sa-meta span+span::before{content:"·";margin-right:14px;color:var(--line)}}
.sa-sub{color:var(--sub);font-size:var(--fs-aux,14px);line-height:1.7;margin:4px 0 10px}
.sa-prose{margin:0;max-width:var(--prose-w);font-size:var(--fs-prose);line-height:var(--lh-prose);color:var(--prose)}
.sa-no-g{font-size:.7em}

/* 卡片 */
.sa-card{margin:18px 0;padding:22px 24px;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(180deg,var(--card),var(--card2));box-shadow:var(--shadow);min-width:0}
.sa-h{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px!important;font:var(--fw-strong) 19px/1.4 var(--font-display)!important;color:var(--text)}
.sa-h .sa-i{color:var(--accent)}
.sa-lead{margin:0 0 10px;font-size:17px;line-height:1.8;color:var(--text);font-weight:600}
.sa-goals,.sa-concl{margin:0;padding:0;list-style:none;counter-reset:g;display:grid;gap:6px}
.sa-goals li,.sa-concl li{counter-increment:g;position:relative;padding:6px 0 6px 34px;font-size:var(--fs-body,16px);line-height:1.75;color:var(--prose)}
.sa-goals li::before,.sa-concl li::before{content:counter(g);position:absolute;left:0;top:7px;width:24px;height:24px;border:1px solid var(--accent-line);border-radius:var(--r-xs);background:var(--accent-soft);color:var(--accent);font-size:var(--fs-small,13px);font-weight:var(--fw-strong);display:flex;align-items:center;justify-content:center}
.sa-concl li{padding-top:10px;padding-bottom:10px;border-top:1px solid var(--line)}
.sa-concl li:first-child{border-top:0;padding-top:4px}
.sa-concl li:first-child::before{top:5px}
.sa-concl li::before{top:11px}
@media(max-width:520px){.sa-card{padding:18px 16px}}

/* 视频：横版 */
.sa-video{margin:0 0 18px}
.sa-player{position:relative;aspect-ratio:16/9;border-radius:var(--r);overflow:hidden;background:#000;border:1px solid var(--line);box-shadow:var(--shadow)}
/* 账号水印（站长 11-04，同威科夫 .wy-wm）：透明度低、不挡点击，每 20～40 秒换位置 */
.sa-wm{position:absolute;z-index:2;pointer-events:none;user-select:none;color:#fff;opacity:.18;font-size:var(--fs-small,13px);white-space:nowrap;text-shadow:0 0 2px #000;transition:left 8s linear,top 8s linear}
.sa-player>.sa-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.sa-poster-blank{position:absolute;inset:0;background:linear-gradient(135deg,var(--raise2),var(--raise))}
.sa-player video{position:absolute;inset:0;display:block;width:100%;height:100%;background:#000}
.sa-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border:0;background:transparent;cursor:pointer;color:#fff}
.sa-play .sa-i{width:30px;height:30px;padding:19px;box-sizing:content-box;border-radius:50%;background:rgba(10,12,16,.62);fill:currentColor}
.sa-play:hover .sa-i,.sa-play:focus-visible .sa-i{background:rgba(10,12,16,.82)}
.sa-player-msg{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);max-width:calc(100% - 24px);padding:7px 14px;border-radius:var(--r-pill,999px);background:rgba(10,12,16,.78);color:#fff;font-size:var(--fs-aux,14px);text-align:center}
.sa-vnote{display:flex;align-items:center;gap:6px;margin:8px 0 0;font-size:var(--fs-small,13px);color:var(--sub)}

/* 视频：竖版快看版（节首）与只有竖版的节 */
.sa-quick{display:flex;gap:18px;align-items:center;margin:0 0 18px;padding:14px;border:1px dashed var(--accent-line);border-radius:var(--r);background:var(--accent-soft)}
.sa-player-v{aspect-ratio:9/16;width:150px;flex:0 0 150px;border-radius:var(--r-sm)}
.sa-player-v .sa-play .sa-i{width:22px;height:22px;padding:14px}
.sa-player-v .sa-player-msg{bottom:8px;font-size:var(--fs-tiny,12px);padding:5px 10px}
.sa-player-v.is-on{width:min(320px,100%);flex-basis:min(320px,100%)}
.sa-quick-t{min-width:0}
.sa-quick-k{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-small,13px);font-weight:var(--fw-strong);color:var(--accent)}
.sa-quick-t p{margin:6px 0 8px;font-size:var(--fs-ui,15px);line-height:1.75;color:var(--prose)}
.sa-quick-skip{font-size:var(--fs-small,13px)}
@media(max-width:520px){.sa-quick{gap:12px;padding:12px}.sa-player-v{width:112px;flex-basis:112px}.sa-quick-t p{font-size:var(--fs-aux,14px)}
  .sa-quick:has(.is-on){flex-direction:column;align-items:stretch}.sa-player-v.is-on{width:100%;flex-basis:auto}}

/* 账本 */
.sa-ledger{margin:16px 0 0}
.sa-ledger+.sa-ledger{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.sa-ledger h3{margin:0 0 4px;font-size:var(--fs-body,16px);color:var(--text)}
.sa-tbl-wrap{margin:8px 0 0;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--r-sm)}
.sa-tbl-wrap:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.sa-tbl{width:100%;border-collapse:collapse;font-size:var(--fs-aux,14px);font-variant-numeric:tabular-nums}
.sa-tbl th,.sa-tbl td{padding:9px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;line-height:1.6}
.sa-tbl thead th{background:var(--raise);font-size:var(--fs-small,13px);color:var(--sub);font-weight:600;white-space:nowrap}
.sa-tbl tbody th{font-weight:600;color:var(--text);white-space:nowrap}
.sa-tbl tbody tr:last-child th,.sa-tbl tbody tr:last-child td{border-bottom:0}
.sa-tbl td{color:var(--prose);white-space:nowrap}
.sa-tbl td:last-child{white-space:normal;min-width:10em}
.sa-tbl td.sa-loss{color:var(--ch-down);font-weight:600}
.sa-foot{margin:8px 0 0;font-size:var(--fs-aux,14px);line-height:1.75;color:var(--sub)}
@media(max-width:700px){.sa-tbl{font-size:var(--fs-small,13px)}.sa-tbl th,.sa-tbl td{padding:8px 10px}}

/* 怎么用 */
.sa-use{display:grid;gap:10px}
.sa-use-col{display:grid;grid-template-columns:minmax(120px,190px) minmax(0,1fr);gap:4px 14px;padding:12px 16px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);min-width:0}
.sa-use-col h3{margin:4px 0 0;font-size:var(--fs-ui,15px);line-height:1.5;color:var(--accent)}
.sa-use-col ul{margin:0;padding-left:18px}
.sa-use-col li{font-size:var(--fs-ui,15px);line-height:1.75;color:var(--prose);margin:4px 0}
@media(max-width:600px){.sa-use-col{grid-template-columns:1fr}}

/* 练习、问答 */
.sa-answer{margin:12px 0 0;padding:10px 14px;border-radius:var(--r-sm);background:var(--raise)}
.sa-answer>summary{cursor:pointer;font-size:var(--fs-ui,15px);color:var(--prose)}
.sa-answer[open]>summary{margin-bottom:8px}
.sa-faq{margin:0}
.sa-qa{padding:12px 0;border-bottom:1px solid var(--line)}
.sa-qa:first-child{padding-top:0}
.sa-qa:last-child{border-bottom:0;padding-bottom:0}
.sa-qa dt{font-weight:600;font-size:var(--fs-body,16px);line-height:1.7;color:var(--text)}
.sa-qa dd{margin:4px 0 0;font-size:var(--fs-prose);line-height:var(--lh-prose);color:var(--prose)}

/* 下一节、接着学 */
.sa-next{display:flex;gap:8px;align-items:flex-start;margin:18px 0;padding:12px 16px;border-radius:var(--r-sm);background:var(--accent-soft)}
.sa-next .sa-i{color:var(--accent);margin-top:4px}
.sa-next p{margin:0;font-size:var(--fs-ui,15px);line-height:1.75;color:var(--text)}
.sa-next a{font-weight:var(--fw-strong);white-space:nowrap}
.sa-soon{color:var(--sub);font-size:var(--fs-aux,14px)}
.sa-more{margin:18px 0;padding:18px 20px;border:1px solid var(--line);border-radius:var(--r);background:var(--card)}
.sa-more-l{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.sa-more-l a{display:block;padding:10px 14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card2);color:var(--text);text-decoration:none;font-size:var(--fs-ui,15px);line-height:1.6}
.sa-more-l a:hover{border-color:var(--accent-line)}
.sa-more-c{display:block;font-size:var(--fs-tiny,12px);font-weight:var(--fw-strong);color:var(--accent)}
.sa-more-p{margin:12px 0 0;font-size:var(--fs-aux,14px)}
:root[data-look="app"] .sa-more{display:none}

/* 导览：全课地图 */
.sa-fm{margin:10px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.sa-fm-s{padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);min-width:0}
.sa-fm-hd span{display:block;font-size:var(--fs-tiny,12px);color:var(--mute)}
.sa-fm-hd b{display:block;font-size:var(--fs-body,16px);margin:2px 0}
.sa-fm-hd small{display:block;font-size:var(--fs-small,13px);color:var(--sub);line-height:1.6}
.sa-fm-ls{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:2px}
.sa-fm-ls li{font-size:var(--fs-aux,14px);line-height:1.6;min-width:0}
.sa-fm-ls a{text-decoration:none;color:var(--text)}
.sa-fm-ls a:hover{color:var(--accent)}
.sa-fm-ls span{display:inline-block;min-width:28px;margin-right:6px;font-size:var(--fs-tiny,12px);font-weight:var(--fw-strong);color:var(--accent);font-variant-numeric:tabular-nums}
.sa-fm-ls .is-soon,.sa-fm-ls .is-soon span{color:var(--mute)}
.sa-fm-ls em{margin-left:6px;font-style:normal;font-size:var(--fs-tiny,12px);color:var(--mute)}
@media(max-width:700px){.sa-fm{grid-template-columns:1fr}}

/* 目录页 */
.sa-start{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:18px;align-items:center;margin:18px 0;padding:14px;border:1px solid var(--accent-line);border-radius:var(--r);background:var(--accent-soft);color:var(--text);text-decoration:none}
.sa-start:hover{border-color:var(--accent)}
.sa-start-img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:var(--r-sm);background:var(--raise2)}
.sa-start-t{min-width:0}
.sa-start-k{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-small,13px);font-weight:var(--fw-strong);color:var(--accent)}
.sa-start-k .sa-i{width:14px;height:14px;fill:currentColor}
.sa-start b{display:block;margin:4px 0;font-size:18px;line-height:1.5}
.sa-start small{display:block;font-size:var(--fs-aux,14px);line-height:1.7;color:var(--prose)}
@media(max-width:600px){.sa-start{grid-template-columns:1fr}}
.sa-free{display:flex;gap:12px;align-items:flex-start;margin:18px 0;padding:14px 18px;border:1px solid var(--line);border-radius:var(--r);background:var(--card)}
.sa-free .sa-i{width:22px;height:22px;color:var(--accent);margin-top:2px}
.sa-free b{font-size:var(--fs-body,16px)}
.sa-free p{margin:2px 0 0;font-size:var(--fs-aux,14px);line-height:1.7;color:var(--sub)}
.sa-intro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}
.sa-intro-i{padding:16px 18px;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(180deg,var(--card),var(--card2))}
.sa-intro-i h3{margin:0 0 6px;font-size:var(--fs-body,16px)}
.sa-intro-i p{margin:0;font-size:var(--fs-ui,15px);line-height:1.8;color:var(--prose)}
@media(max-width:700px){.sa-intro{grid-template-columns:1fr}}
.sa-toc-sub{display:block;font-size:var(--fs-small,13px);font-weight:400;color:var(--mute);margin-top:2px}

@media(prefers-reduced-motion:reduce){.sa-start,.sa-more-l a,.sa-play .sa-i{transition:none!important}}

/* 侧栏：节号「1-1」「导览」不折行，「制作中」不折行 */
body[data-course="small-account"] .sidebar .lesson-link .idx{white-space:nowrap;min-width:2.4em}
body[data-course="small-account"] .sidebar .lesson-link em{white-space:nowrap}
/* 手机上宽表横着滑：第一列固定，滑的时候知道是哪一行 */
@media(max-width:700px){.sa-tbl tbody th,.sa-tbl thead th:first-child{position:sticky;left:0;z-index:1;background:var(--card);box-shadow:1px 0 0 var(--line)}
  .sa-tbl thead th:first-child{background:var(--raise)}}

/* ---------- 2026-11-02 第二版课页：一句话、规则卡、实盘图下的三行、盲练 ---------- */
.sa-one{margin:0 0 16px;padding:16px 20px;border-left:4px solid var(--accent);border-radius:0 var(--r-sm) var(--r-sm) 0;background:var(--accent-soft)}
.sa-one p{margin:0;font-size:18px;line-height:1.75;font-weight:var(--fw-strong);color:var(--text)}
@media(max-width:520px){.sa-one{padding:12px 14px}.sa-one p{font-size:16px}}
.sa-rules{margin:0;padding:0;list-style:none;counter-reset:r;border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden}
.sa-rules li{counter-increment:r;display:grid;grid-template-columns:7.5em minmax(0,1fr);gap:4px 14px;padding:11px 16px;border-top:1px solid var(--line);background:var(--card)}
.sa-rules li:first-child{border-top:0}
.sa-rules li:nth-child(even){background:var(--card2)}
.sa-rules b{font-size:var(--fs-ui,15px);color:var(--accent);white-space:nowrap}
.sa-rules b::before{content:counter(r) "  ";color:var(--mute);font-weight:600;font-variant-numeric:tabular-nums}
.sa-rules span{font-size:var(--fs-ui,15px);line-height:1.75;color:var(--prose)}
@media(max-width:520px){.sa-rules li{grid-template-columns:1fr;padding:10px 12px}}
#why .sa-prose+.sa-prose{margin-top:12px}
.sa-read{margin:12px 0 0;display:grid;gap:6px}
.sa-read div{display:grid;grid-template-columns:7em minmax(0,1fr);gap:2px 12px;font-size:var(--fs-aux,14px);line-height:1.75}
.sa-read dt{font-weight:var(--fw-strong);color:var(--text)}
.sa-read dd{margin:0;color:var(--prose)}
@media(max-width:520px){.sa-read div{grid-template-columns:1fr}}
.sa-card .hb-fig{margin:16px 0}
/* 实盘图里本课多用的几样：出场线（前 N 天最高 / 最低）、琥珀色进场短线、图例色块 */
.hb-k .k-ma.sa-exit{stroke:var(--ch-axis);stroke-width:1.2;stroke-dasharray:4 3}
.hb-k .k-lbl.sa-exit{fill:var(--sub)}
.hb-k .k-hline.k-seg.amber{stroke:var(--hb-amber,var(--ch-mark))}
.hb-legend .sa-lg-ma::before,.hb-legend .sa-lg-exit::before,.hb-legend .sa-lg-up::before,.hb-legend .sa-lg-dn::before{content:"";display:inline-block;width:18px;height:0;margin-right:6px;vertical-align:middle;border-top:2px solid var(--ch-ma1)}
.hb-legend .sa-lg-exit::before{border-top:2px dashed var(--ch-axis)}
.hb-legend .sa-lg-up::before{height:10px;border:0;background:var(--hb-up-soft,var(--ch-up-soft))}
.hb-legend .sa-lg-dn::before{height:10px;border:0;background:var(--hb-dn-soft,var(--ch-down-soft))}
/* 盲练题面图（推演中心画法：kline_svg，宽版 + 手机窄版） */
.sa-blind{margin:14px 0 0;padding:12px;border:1px dashed var(--line);border-radius:var(--r-sm);background:var(--card)}
.sa-blind .k-svg{display:block;width:100%;height:auto;background:var(--ch-bg);border-radius:var(--r-xs)}
.sa-blind .k-n{display:none}
@media(max-width:560px){.sa-blind .k-w{display:none}.sa-blind .k-n{display:block}}
.sa-blind .k-grid{fill:none;stroke:var(--ch-grid);stroke-width:1}
.sa-blind .k-ax{fill:var(--ch-axis);font:10px var(--font);font-variant-numeric:tabular-nums;text-anchor:end}
.sa-blind :is(.k-wick,.k-body){stroke-width:1.1}
.sa-blind :is(.k-wick,.k-body).k-up{stroke:var(--ch-up);fill:var(--ch-up)}
.sa-blind :is(.k-wick,.k-body).k-dn{stroke:var(--ch-down);fill:var(--ch-down)}
.sa-blind .k-ma-line{fill:none;stroke:var(--ch-ma1);stroke-width:1.5}
.sa-blind figcaption{margin-top:8px;font-size:var(--fs-small,13px);color:var(--sub);line-height:1.7}
.sa-answer .hb-fig{margin:12px 0 4px}
.sa-blind .k-ma-line.dash{stroke:var(--ch-axis);stroke-width:1.2;stroke-dasharray:4 3}
.hb-legend .sa-lg-stop::before{content:"";display:inline-block;width:18px;height:0;margin-right:6px;vertical-align:middle;border-top:2px dashed var(--hb-dn,var(--ch-down))}
.sa-answer .sa-prose+.sa-prose{margin-top:8px}

/* ---------- 2026-11-02 晚 第一批：公共板块（下单前 8 项、杠杆计算器、交易记录、目录页章介绍） ---------- */
.sa-eight-l{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;counter-reset:e}
.sa-eight-l li{counter-increment:e;position:relative;padding:10px 12px 10px 42px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);min-width:0}
.sa-eight-l li::before{content:counter(e);position:absolute;left:12px;top:10px;width:22px;height:22px;border-radius:50%;border:1px solid var(--accent-line);background:var(--accent-soft);color:var(--accent);font-size:var(--fs-tiny,12px);font-weight:var(--fw-strong);display:flex;align-items:center;justify-content:center}
.sa-eight-l b{display:block;font-size:var(--fs-ui,15px);line-height:1.5;color:var(--text)}
.sa-eight-l span{display:block;margin-top:2px;font-size:var(--fs-small,13px);line-height:1.6;color:var(--sub)}
.sa-eight-go{margin:12px 0 0;font-size:var(--fs-aux,14px)}
.sa-eight-go a{font-weight:var(--fw-strong)}
@media(max-width:600px){.sa-eight-l{grid-template-columns:1fr}}

.sa-calc-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.sa-calc-ins{display:grid;gap:8px;margin:0}
.sa-calc-f{display:grid;grid-template-columns:9.5em minmax(0,1fr);gap:4px 10px;align-items:center;font-size:var(--fs-aux,14px);color:var(--prose)}
.sa-calc-in{display:flex;align-items:center;gap:6px;min-width:0}
.sa-calc-in input{flex:1;min-width:0;height:36px;padding:0 10px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);color:var(--text);font:inherit;font-variant-numeric:tabular-nums}
.sa-calc-in input:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
.sa-calc-in em{font-style:normal;color:var(--sub);min-width:1.4em}
.sa-calc-rs{display:flex;gap:8px;flex-wrap:wrap}
.sa-calc-r{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--line);border-radius:var(--r-pill,999px);background:var(--card);cursor:pointer}
.sa-calc-r input{accent-color:var(--accent)}
.sa-calc-r:has(input:checked){border-color:var(--accent);background:var(--accent-soft);color:var(--text)}
.sa-calc-outs{margin:0;display:grid;gap:0;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--card);overflow:hidden}
.sa-calc-outs div{display:grid;grid-template-columns:minmax(7em,40%) minmax(0,1fr);gap:4px 10px;padding:9px 12px;border-top:1px solid var(--line)}
.sa-calc-outs div:first-child{border-top:0}
.sa-calc-outs dt{font-size:var(--fs-small,13px);color:var(--sub);line-height:1.6}
.sa-calc-outs dd{margin:0;font-size:var(--fs-ui,15px);font-weight:var(--fw-strong);color:var(--text);line-height:1.6;font-variant-numeric:tabular-nums}
.sa-calc-outs div:first-child dd{color:var(--accent);font-size:17px}
.sa-calc-msg{margin:10px 0 0;padding:9px 12px;border-radius:var(--r-sm);border:1px solid var(--err-line,var(--line));background:var(--err-soft);color:var(--text);font-size:var(--fs-aux,14px);line-height:1.7}
.sa-calc-note{margin:10px 0 0;font-size:var(--fs-small,13px);line-height:1.7;color:var(--sub)}
@media(max-width:700px){.sa-calc-grid{grid-template-columns:1fr}.sa-calc-f{grid-template-columns:8em minmax(0,1fr)}}

.sa-journal{display:flex;gap:8px;align-items:flex-start;margin:18px 0 8px;padding:12px 16px;border:1px dashed var(--line);border-radius:var(--r-sm);background:var(--card)}
.sa-journal .sa-i{color:var(--accent);margin-top:4px}
.sa-journal p{margin:0;font-size:var(--fs-ui,15px);line-height:1.75;color:var(--prose)}
.sa-journal a{font-weight:var(--fw-strong)}
.sa-ch-line{margin:0;padding:2px 16px 8px;font-size:var(--fs-small,13px);line-height:1.6;color:var(--sub)}

/* ---------- 2026-11-03 一半免费、一半付费：试看版视频上的锁、开通卡、免费 / 付费小标（颜色只用令牌；价格与购买入口 iOS App 里由 worker 删掉） ---------- */
.sa-lockv{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--scrim)}
.sa-lockv-in,a.sa-lockv-in:visited{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:1px solid var(--line2);border-radius:var(--r-pill,999px);background:var(--glass2);color:var(--text);font-weight:var(--fw-strong);font-size:var(--fs-ui,15px);line-height:1.4;text-decoration:none;text-align:center}
a.sa-lockv-in:hover{border-color:var(--accent-line);color:var(--accent)}
.sa-lockv .sa-i{width:20px;height:20px;color:var(--accent)}
.sa-player-v .sa-lockv{padding:8px}
.sa-player-v .sa-lockv-in{flex-direction:column;gap:4px;padding:8px 10px;border-radius:var(--r-sm);font-size:var(--fs-tiny,12px)}
.sa-lock h2{margin-top:0}
.sa-buy-price{margin:2px 0 10px!important}
.sa-buy-price b{font:var(--fw-display,600) 26px/1.3 var(--font-display,inherit);color:var(--accent-big,var(--accent));font-variant-numeric:tabular-nums}
.sa-buy-list{margin:4px 0 6px;padding-left:1.2em;font-size:var(--fs-ui,15px);line-height:1.8;color:var(--prose)}
.sa-buy-list li{margin:2px 0}
.sa-lock-free{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 4px}
.sa-lock-free a{display:inline-block;padding:7px 12px;border:1px solid var(--free-line);border-radius:var(--r-sm);background:var(--free-soft);color:var(--text);font-size:var(--fs-aux,14px);font-weight:600;text-decoration:none}
.sa-lock-free a:hover{border-color:var(--free)}
.sa-paid{display:inline-flex;align-items:center;gap:3px;height:20px;margin-left:8px;padding:0 8px;border:1px solid var(--accent-line);border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--fs-tiny,12px);font-style:normal;font-weight:600;line-height:1;vertical-align:1px;white-space:nowrap}
.sa-paid .sa-i{width:12px;height:12px;vertical-align:0}
.pa-nav-free.sa-nav-paid{border-color:var(--accent-line);color:var(--accent)}
.sa-fm-ls em.pa-free,.sa-fm-ls em.sa-paid{height:18px;margin-left:6px;padding:0 6px;font-weight:600}
.sa-fm-ls em.pa-free{color:var(--free)}
.sa-fm-ls em.sa-paid{color:var(--accent)}
.sa-next .sa-paid{margin-left:4px}
.sa-home .pa-offer{margin:18px 0}
@media(max-width:520px){.sa-buy-price b{font-size:22px}}

/* ---------- 2026-11-03 精简版课页（v4，站长定「结论和应该怎么做」）：结论、怎么做、最常见的错、明细（默认收起） ---------- */
.sa-concl4{margin:0 0 18px}
.sa-one.sa-concl4>p{margin:0}            /* 盖过 trader.css 的 .lesson section > p 下边距 */
.sa-one .sa-one-k{margin:0 0 6px;font:var(--fw-strong) var(--fs-small,13px)/1.4 var(--font);letter-spacing:.06em;color:var(--accent)}
.sa-steps{margin:0;padding:0;list-style:none;counter-reset:s;display:grid}
.sa-steps li{counter-increment:s;position:relative;padding:10px 0 10px 40px;font-size:var(--fs-body,16px);line-height:1.75;color:var(--prose)}
.sa-steps li+li{border-top:1px solid var(--line)}
.sa-steps li:first-child{padding-top:2px}
.sa-steps li::before{content:counter(s);position:absolute;left:0;top:11px;width:26px;height:26px;border-radius:50%;border:1px solid var(--accent-line);background:var(--accent-soft);color:var(--accent);font-size:var(--fs-small,13px);font-weight:var(--fw-strong);display:flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums}
.sa-steps li:first-child::before{top:3px}
.sa-mis{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.sa-mis li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;background:var(--card)}
.sa-mis p{display:flex;gap:10px;align-items:flex-start;margin:0;padding:12px 14px;font-size:var(--fs-ui,15px);line-height:1.75;color:var(--prose);min-width:0}
.sa-mis-o{border-left:1px solid var(--line);background:var(--card2)}
.sa-mis b{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-top:2px;border-radius:var(--r-xs);font-size:var(--fs-small,13px);font-weight:var(--fw-strong);line-height:1}
.sa-mis-x b{color:var(--err);background:var(--err-soft);border:1px solid var(--err-line)}
.sa-mis-o b{color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-line)}
.sa-mis+.hb-fig{margin-top:16px}
.sa-terms{margin:0;display:grid;border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;background:var(--card)}
.sa-terms>div{display:grid;grid-template-columns:9em minmax(0,1fr);gap:14px;padding:12px 14px}
.sa-terms>div+div{border-top:1px solid var(--line)}
.sa-terms dt{margin:0;font-weight:var(--fw-strong);color:var(--text);font-size:var(--fs-ui,15px);line-height:1.75}
.sa-terms dd{margin:0;color:var(--prose);font-size:var(--fs-ui,15px);line-height:1.75;min-width:0}
@media(max-width:600px){.sa-terms>div{grid-template-columns:1fr;gap:2px}}
@media(max-width:600px){.sa-mis li{grid-template-columns:1fr}.sa-mis-o{border-left:0;border-top:1px solid var(--line)}}
.sa-detail>summary{list-style:none;cursor:pointer}
.sa-detail>summary::-webkit-details-marker{display:none}
.sa-detail>summary .sa-h{margin:0!important}
.sa-detail[open]>summary .sa-h{margin-bottom:10px!important}
.sa-detail .sa-detail-chev{margin-left:auto;color:var(--sub);transition:transform var(--dur-2,.2s) var(--ease,ease)}
.sa-detail[open] .sa-detail-chev{transform:rotate(180deg)}
.sa-detail>summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:var(--r-xs)}
.sa-detail-b>.sa-ledger:first-child{margin-top:0}
@media(prefers-reduced-motion:reduce){.sa-detail .sa-detail-chev{transition:none}}

/* ---------- 2026-11-03 头寸框（kit.kline 的 positions，像交易软件的多头 / 空头头寸工具；站长：「把多头工具标记出来」） ---------- */
/* 框：开仓价到平仓价赚的那段绿、开仓价到止损那段红，底色是 handbook.css 的 .k-band.up/.dn（涨跌两个色加透明度），这里加一圈同色细边 */
.hb-k .k-band.k-pos{stroke-width:1}
.hb-k .k-band.k-pos.up{stroke:var(--ch-up-line,var(--hb-up))}
.hb-k .k-band.k-pos.dn{stroke:var(--ch-down-line,var(--hb-dn))}
.hb-k .k-hline.k-pos-e{stroke:var(--text);stroke-dasharray:none;stroke-width:1.2;opacity:.6}
/* 进场三角（多单在开仓那根下面、空单在上面）、平仓价上的小圈：描一圈卡片底色，压在 K 线上也看得清 */
.hb-k .k-pos-in{fill:var(--text);stroke:var(--card);stroke-width:1.5;paint-order:stroke}
.hb-k .k-pos-out{fill:var(--card);stroke:var(--text);stroke-width:1.8}
/* 盈亏比小标签：卡片底、红绿边 */
.hb-k .k-band.k-pos-chip{fill:var(--card);stroke-width:1.2}
.hb-k .k-band.k-pos-chip.up{stroke:var(--hb-up)}
.hb-k .k-band.k-pos-chip.dn{stroke:var(--hb-dn)}
/* 画了头寸框的图，出场线（前 7 天最低 / 最高）淡一点 */
.hb-k .k-ma.sa-exit.sa-faint{opacity:.5}
.hb-legend .sa-lg-exit.sa-faint::before{opacity:.5}
/* 手机窄版的头寸框字大一号（和 kit.POS_FS_N 一致，挑位置按这个字号算） */
.hb-k.hb-n .k-pos-t{font-size:14px}
