/* 互动讲解与思维开拓：考考你、讲一讲、小马虎找错、锦囊示范、动脑时间、小方块 */

/* ---------- 知识卡末尾的“考考你” ---------- */
.lc-ask{margin:18px 0 4px;background:#F3EEFF;border:2px dashed #CDBDFB;border-radius:20px;padding:14px 14px 12px}
.la-t{display:flex;align-items:center;justify-content:space-between;font-weight:900;color:#6A4FD8;font-size:17px;margin-bottom:6px}
.la-q{font-size:18px;font-weight:800;line-height:1.6;margin-bottom:12px;color:var(--ink)}
.la-opts{max-width:none}
.la-opts .choice{font-size:18px;min-height:54px}
.la-opts.wide .choice{font-size:17px;min-height:52px;text-align:left;padding:10px 16px}
.la-fb{margin-top:12px;border-radius:14px;padding:10px 14px;font-weight:700;line-height:1.7;font-size:16px;animation:fadeIn .3s}
.la-fb b{display:block;margin-bottom:2px}
.la-fb.good{background:#E8FAF3;color:#127C64}
.la-fb.reveal{background:#FFF7E4;color:#7A5B12}
.la-fb.bad{background:#FFEFF4;color:#C2416A}
.lc-nav:has(.la-lock){flex-wrap:wrap}
.lc-nav .btn{white-space:nowrap}
.la-lock{order:-1;flex-basis:100%;font-size:14px;font-weight:800;color:#8C73E6;text-align:right;margin-bottom:-4px}
.btn.wait{filter:grayscale(.5)}

/* ---------- 讲一讲：一步一步亮出来 ---------- */
.fb-explain{margin-left:auto}
.fb-explain + .fb-next{margin-left:10px}
.xsteps{margin:8px 0 2px;padding:0;list-style:none;counter-reset:xs}
.xsteps li{counter-increment:xs;position:relative;padding:7px 10px 7px 40px;margin:6px 0;border-radius:12px;background:rgba(255,255,255,.55);opacity:.35;transition:opacity .3s,background .3s,transform .3s}
.xsteps li::before{content:counter(xs);position:absolute;left:9px;top:8px;width:23px;height:23px;border-radius:50%;background:#fff;color:var(--ink2);font-size:13px;font-weight:900;display:grid;place-items:center;box-shadow:var(--shadow-sm)}
.xsteps li.now{opacity:1;background:#fff;transform:translateX(3px);box-shadow:0 0 0 3px var(--sun)}
.xsteps li.now::before{background:var(--sun);color:#fff}
.xsteps li.seen{opacity:1}
.xsteps li.seen::before{content:'✓';background:var(--mint);color:#fff}
.xsteps .parts{margin:4px 0}

/* ---------- 小马虎找错 ---------- */
.vis-box.buddy{display:flex;align-items:center;gap:14px;justify-content:center;flex-wrap:wrap}
.bd-who{display:flex;flex-direction:column;align-items:center;font-size:46px;line-height:1}
.bd-who span{font-size:13px;font-weight:800;color:var(--ink2);margin-top:4px}
.bd-work{position:relative;background:#fff;border-radius:16px;padding:12px 18px;font-size:21px;font-weight:800;line-height:1.7;box-shadow:var(--shadow-sm);font-family:"Chalkboard SE","Comic Sans MS",inherit;max-width:100%}
.bd-work::before{content:'';position:absolute;left:-10px;top:24px;border:6px solid transparent;border-right:10px solid #fff}
/* 小马虎写的答案只做中性的标记：不能用红色波浪线，不然一看就知道他错了 */
.bd-work .x{font-weight:700;text-decoration:underline dotted;text-underline-offset:3px}
.bd-work small{display:block;font-size:14px;color:var(--ink2);font-weight:700;font-family:inherit}

/* ---------- 锦囊示范 ---------- */
.demo{margin:16px 0 6px;background:#EEF5FF;border-radius:20px;padding:14px 16px;text-align:left}
.dm-t{font-weight:900;color:#2F5EA8;font-size:17px;margin-bottom:6px}
.dm-t .qtag{margin:0 0 0 4px}
.dm-q{font-size:17.5px;font-weight:800;line-height:1.65}
.dm-steps li{opacity:1;background:#fff}
.dm-steps li.now{animation:fadeIn .35s}
.dm-acts{margin-top:10px;text-align:center}
.dm-moral{animation:fadeIn .35s}

/* ---------- 动脑时间 ---------- */
.ponder{margin:16px auto 6px;max-width:560px;background:#F3EEFF;border-radius:20px;padding:14px 16px;text-align:left}
.pd-t{font-weight:900;color:#6A4FD8;font-size:17px;margin-bottom:6px}
.pd-t .qtag{margin:0 0 0 4px}
.pd-q{font-size:17.5px;font-weight:800;line-height:1.65}
.pd-a{margin-top:10px;background:#fff;border-radius:14px;padding:10px 14px;font-weight:700;line-height:1.75;color:#4B3A9A;animation:fadeIn .35s}
.pd-acts{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:10px}

/* ---------- 小方块：拆一捆、捆一捆（进位加、退位减） ---------- */
.pv{display:flex;flex-direction:column;gap:10px;align-items:stretch}
.pv-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pv-col{background:#fff;border-radius:16px;padding:8px 10px 10px;min-height:120px;box-shadow:var(--shadow-sm)}
.pv-col h4{margin:0 0 6px;font-size:14px;color:var(--ink2);text-align:center}
.pv-col h4 b{font-size:20px;color:var(--ink);margin-left:6px}
.pv-tens,.pv-ones{display:flex;flex-wrap:wrap;gap:5px;justify-content:center;align-items:flex-end;min-height:84px}
.pv-ten{width:14px;height:80px;border-radius:4px;background:repeating-linear-gradient(#4D96FF 0 7px,#2B77E4 7px 8px);box-shadow:0 2px 0 #1E5CB8;cursor:pointer;transition:transform .2s}
.pv-ten.b{background:repeating-linear-gradient(#FFB02E 0 7px,#E0901A 7px 8px);box-shadow:0 2px 0 #B8700E}
.pv-ten:hover{transform:translateY(-3px)}
.pv-ten.c{background:repeating-linear-gradient(#35CBAD 0 7px,#1FAD91 7px 8px);box-shadow:0 2px 0 #178A73,0 0 0 3px #BDF0E3}
.pv-one{width:16px;height:16px;border-radius:4px;background:#4D96FF;box-shadow:0 2px 0 #1E5CB8;cursor:pointer}
.pv-one.b{background:#FFB02E;box-shadow:0 2px 0 #B8700E}
.pv-one.gone{opacity:.25;background:#AAB2BD;box-shadow:none;cursor:default}
.pv-one.pick{outline:3px solid var(--pink);outline-offset:1px}
.pv-ones{display:grid;grid-template-columns:repeat(5,16px);justify-content:center;align-content:end}
.pv-col.full{box-shadow:0 0 0 3px var(--sun),var(--shadow-sm);animation:pulseS 1.2s infinite}
.pv-eq{text-align:center;font-size:20px;font-weight:900}
.pv-say{text-align:center;font-weight:800;color:#2F5EA8;min-height:1.6em}
.pv-acts{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
@keyframes pvIn{from{transform:scale(.3);opacity:0}to{transform:none;opacity:1}}
.pv-new{animation:pvIn .4s}

@media (max-width:480px){
  .la-q,.dm-q,.pd-q{font-size:16.5px}
  .bd-work{font-size:18px;padding:10px 14px}
  .fb-explain{margin-left:0}
}
@media (prefers-reduced-motion: reduce){
  .xsteps li,.la-fb,.pv-new,.pv-col.full{animation:none;transition:none}
}

/* 余数比除数小：添小棒 */
.stick-lab .sl-tri{font-size:30px;letter-spacing:6px;min-height:46px;text-align:center;line-height:1.5}
.stick-lab .sl-s{color:#8D5423;font-weight:900;font-size:34px;margin:0 2px}
.stick-lab .sl-eq{font-weight:800;margin:6px 0 10px}
.xchg{cursor:pointer;flex-wrap:wrap}
.xchg-out{font-weight:800;margin-top:8px}
