/* Scoped native practice surfaces follow the current stage and lesson identity. */
.la2-resume-note{display:block;padding:8px 0 12px;font-size:.72rem;line-height:1.8;color:var(--la2-muted);overflow-wrap:anywhere}.la2-resume-note[hidden]{display:none!important}
.la2-activity{--la2-accent:var(--b16-action,var(--el-accent,#4948ba));--la2-on:var(--b16-on-action,#fff);--la2-soft:var(--b16-soft,var(--el-soft,#eeedff));--la2-line:var(--b16-line,var(--el-line,#dce2ef));--la2-ink:var(--el-ink,#172343);--la2-muted:var(--el-muted,#58677e);--la2-card:var(--el-card,#fff);--la2-good:#187746;--la2-bad:#b24135;box-sizing:border-box;min-width:0;color:var(--la2-ink);background:linear-gradient(145deg,var(--la2-card),var(--la2-soft));padding:22px;border:1px solid var(--la2-line);border-radius:22px;margin:16px 0;box-shadow:0 8px 25px #17234309;font:inherit}
.la2-activity *{box-sizing:border-box}.la2-activity [hidden]{display:none!important}.la2-activity p,.la2-activity h4,.la2-activity h5{overflow-wrap:anywhere;white-space:pre-wrap}.la2-activity .la2-instructions{font-size:.85rem;line-height:1.9;color:var(--la2-muted);margin:0 0 16px}.la2-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:16px;border-bottom:1px solid var(--la2-line);margin-bottom:20px}.la2-progress{font-size:.82rem;font-weight:750;color:var(--la2-accent)}
.la2-activity button{font:inherit;cursor:pointer;line-height:1.7;overflow-wrap:anywhere;white-space:normal}.la2-activity button:disabled{opacity:.48;cursor:default}.la2-activity button:focus-visible,.la2-activity textarea:focus-visible,.la2-activity input:focus-visible{outline:3px solid var(--la2-accent);outline-offset:4px}.la2-button{min-height:44px;padding:10px 16px;border:1px solid var(--la2-accent);border-radius:12px;background:var(--la2-accent);color:var(--la2-on)!important;font-size:.83rem!important;font-weight:750}.la2-button.secondary,.la2-reset{background:var(--la2-card);color:var(--la2-accent)!important;border-color:var(--la2-line)}.la2-small-button{min-height:44px;padding:8px 12px;border:1px solid var(--la2-line);border-radius:10px;background:var(--la2-card);color:var(--la2-accent)!important;font-size:.77rem!important;font-weight:700}.la2-small-button.is-selected{background:var(--la2-accent);color:var(--la2-on)!important;border-color:var(--la2-accent)}
.la2-activity[data-la2-type=matching] .la2-stage,.la2-activity[data-la2-type=classification] .la2-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:22px}.la2-bank,.la2-targets{min-width:0}.la2-bank h4{font-size:.86rem!important;margin:0 0 12px!important;color:var(--la2-muted)}.la2-choice{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;min-height:60px;padding:14px 16px;margin:0 0 10px;border:2px solid var(--la2-line);border-radius:15px;background:var(--la2-card);color:var(--la2-ink)!important;text-align:start;font-size:.88rem!important;box-shadow:0 4px 10px #17234306;touch-action:none;user-select:none;transition:border-color .15s,box-shadow .15s}.la2-choice span{min-width:0}.la2-choice small{font-size:.65rem;color:var(--la2-muted);flex:none;max-width:32%}.la2-choice:hover,.la2-choice.is-selected{border-color:var(--la2-accent);box-shadow:0 0 0 3px var(--la2-soft)}.la2-choice.is-selected small{color:var(--la2-accent)}.la2-choice.is-correct{border-color:var(--la2-good)}.la2-choice.is-incorrect{border-color:var(--la2-bad)}.la2-choice.is-dragging{opacity:.45}
.la2-target{border:2px dashed var(--la2-line);border-radius:16px;margin-bottom:12px;background:var(--la2-card);overflow:hidden;transition:border-color .15s}.la2-target-button{display:block;width:100%;min-height:52px;padding:12px 16px;text-align:start;border:0;border-bottom:1px solid var(--la2-line);background:var(--la2-soft);color:var(--la2-accent)!important;font-size:.88rem!important;font-weight:750}.la2-placed{padding:12px;min-height:56px}.la2-placeholder{font-size:.75rem;color:var(--la2-muted);margin:6px 0!important;line-height:1.8}.la2-result{padding:12px;margin-bottom:8px;border:1px solid var(--la2-line);border-inline-start:4px solid var(--la2-good);border-radius:11px;background:var(--la2-card);font-size:.84rem}.la2-result.is-incorrect{border-inline-start-color:var(--la2-bad)}.la2-result p{margin:0 0 8px!important;line-height:1.8}.la2-result strong{display:block;font-size:.72rem;margin-bottom:8px;color:var(--la2-good)}.la2-result.is-incorrect strong{color:var(--la2-bad)}.la2-result .la2-explanation{font-size:.75rem;color:var(--la2-muted)}.la2-target.is-drop-ready,.la2-order-item.is-drop-ready{border-color:var(--la2-accent);box-shadow:0 0 0 3px var(--la2-soft)}.la2-feedback{margin:20px 0 0!important;min-height:44px;padding:12px 16px;background:var(--la2-card);border-radius:12px;border:1px solid var(--la2-line);color:var(--la2-muted);font-size:.82rem;line-height:1.9}.la2-feedback.is-correct{color:var(--la2-good);border-color:var(--la2-good)}.la2-feedback.is-incorrect{color:var(--la2-bad);border-color:var(--la2-bad)}.la2-local-note{display:block;color:var(--la2-muted);font-size:.7rem;line-height:1.8;margin:14px 0 0!important}
.la2-order{display:grid;gap:12px;list-style:none!important;margin:0!important;padding:0!important}.la2-order-item{border:2px solid var(--la2-line);border-radius:16px;background:var(--la2-card);padding:10px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px}.la2-order-item.is-correct{border-color:var(--la2-good)}.la2-order-item.is-incorrect{border-color:var(--la2-bad)}.la2-order-handle{margin:0;min-height:54px;border:0;box-shadow:none;padding:10px;background:transparent;justify-content:flex-start}.la2-order-index{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:10px;background:var(--la2-soft);color:var(--la2-accent);font-weight:750}.la2-order-actions{display:flex;gap:6px;flex-wrap:wrap;padding-top:4px}.la2-order-note{grid-column:1/-1;margin:0!important;font-size:.76rem;line-height:1.8;padding:9px 12px;background:var(--la2-soft);border-radius:9px}
.la2-step-nav,.la2-worked-actions{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0}.la2-step-nav{margin-top:0}.la2-worked-panel{border:1px solid var(--la2-line);padding:22px;border-radius:17px;background:var(--la2-card)}.la2-worked-prompt{margin:0 0 18px!important;font-size:1.08rem!important;line-height:1.9}.la2-attempt-label{display:grid;gap:10px;font-size:.83rem;font-weight:700}.la2-attempt-label textarea{display:block;width:100%;min-height:115px;resize:vertical;padding:14px;border:1px solid var(--la2-line);border-radius:12px;background:var(--la2-card);color:var(--la2-ink);font:inherit;line-height:1.9}.la2-muted{display:block;margin-top:10px;color:var(--la2-muted);font-size:.73rem;line-height:1.8}.la2-hint{padding:14px 18px;background:var(--la2-soft);border-inline-start:4px solid var(--la2-accent);border-radius:12px;line-height:1.9;font-size:.86rem;margin:14px 0!important}.la2-solution{padding:20px;border:1px solid var(--la2-line);border-inline-start:4px solid var(--la2-good);border-radius:14px;margin-top:18px;background:var(--la2-soft)}.la2-solution-title{font-size:.88rem!important;color:var(--la2-good);margin:0 0 12px!important}.la2-solution p{font-size:.89rem;line-height:2;margin:0 0 12px!important}.la2-solution strong{font-size:.8rem;color:var(--la2-accent)}.la2-complete{font-size:.82rem;color:var(--la2-good);line-height:1.9;padding:12px 0}
.la2-compare-stage{position:relative;aspect-ratio:16/10;direction:ltr;overflow:hidden;border:1px solid var(--la2-line);border-radius:16px;background:var(--la2-card);isolation:isolate}.la2-compare-stage>img,.la2-compare-front,.la2-compare-front img{position:absolute!important;inset:0;width:100%!important;height:100%!important;max-height:none!important;margin:0!important;object-fit:contain!important;border-radius:0!important}.la2-compare-front{clip-path:inset(0 50% 0 0);z-index:1;background:var(--la2-card)}.la2-compare-line{position:absolute;top:0;bottom:0;left:50%;width:3px;background:var(--la2-on);box-shadow:0 0 0 1px var(--la2-accent);z-index:2;pointer-events:none}.la2-compare-line::after{content:'↔';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--la2-accent);border:3px solid var(--la2-on);color:var(--la2-on);font-weight:750}.la2-compare-captions{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0;line-height:1.9}.la2-compare-captions strong{font-size:.85rem;color:var(--la2-accent)}.la2-compare-captions p{font-size:.77rem;color:var(--la2-muted);margin:5px 0!important}.la2-compare-control{display:grid;gap:12px;font-size:.83rem;font-weight:750}.la2-compare-control input{display:block;width:100%;height:44px;accent-color:var(--la2-accent);cursor:ew-resize}.la2-comparison-static{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.la2-comparison-static figure{min-width:0;margin:0}.la2-comparison-static img{max-width:100%;height:auto}.la2-intro,.la2-comparison-static p{white-space:normal!important;line-height:1.9}.la2-comparison-static figcaption{font-size:.82rem;line-height:1.9}
.la2-drag-ghost{position:fixed;transform:translate(-50%,calc(-100% - 16px));max-width:min(320px,80vw);pointer-events:none;z-index:2147482500;padding:14px 18px;border-radius:14px;border:2px solid var(--b16-action,#4948ba);background:var(--el-card,#fff);color:var(--el-ink,#172343);box-shadow:0 12px 30px #17234335;font-family:inherit;font-size:.82rem;text-align:center;white-space:normal;overflow-wrap:anywhere}
.dark-mode .la2-activity,[data-bs-theme=dark] .la2-activity{--la2-good:#80dbac;--la2-bad:#ffaaa1}.dark-mode .la2-drag-ghost,[data-bs-theme=dark] .la2-drag-ghost{background:#172343;color:#eef2ff}
@media(max-width:680px){.la2-activity{padding:15px;border-radius:17px}.la2-activity[data-la2-type=matching] .la2-stage,.la2-activity[data-la2-type=classification] .la2-stage{grid-template-columns:1fr;gap:16px}.la2-bank{display:grid;grid-template-columns:1fr 1fr;gap:8px}.la2-bank h4{grid-column:1/-1}.la2-choice{padding:11px;min-height:66px;margin:0;font-size:.8rem!important;flex-direction:column;align-items:flex-start;gap:6px}.la2-choice small{max-width:100%;font-size:.62rem}.la2-targets{display:grid;grid-template-columns:1fr 1fr;gap:9px;align-items:start}.la2-target{margin-bottom:0}.la2-target-button{padding:11px;min-height:64px;font-size:.79rem!important}.la2-placed{padding:9px}.la2-result{padding:9px;font-size:.75rem}.la2-result .la2-small-button{font-size:.66rem!important;padding:7px}.la2-order-item{grid-template-columns:1fr;gap:6px}.la2-order-handle{flex-direction:row;align-items:center}.la2-order-actions{justify-content:flex-end}.la2-worked-panel{padding:16px}.la2-worked-prompt{font-size:.94rem!important}.la2-solution{padding:15px}.la2-compare-stage{aspect-ratio:1/1}.la2-compare-captions{gap:12px}.la2-feedback{font-size:.77rem}.la2-toolbar{margin-bottom:15px}}
@media(max-width:380px){.la2-targets{grid-template-columns:1fr}.la2-bank{grid-template-columns:1fr}.la2-choice{flex-direction:row;align-items:center}.la2-button{padding:9px 12px}.la2-compare-captions{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.la2-choice,.la2-target{transition:none}}
