/* Practice Studio (v20261114-ps1). Tokens only; works in light and opt-in dark. */
.csf-studio{max-width:48rem;margin:2.5rem auto;padding:1.4rem 1.25rem 1.6rem;background:var(--ds-surface);color:var(--ds-ink);border:1px solid var(--ds-line);border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-md);font-family:var(--ds-font-body);border-top:6px solid var(--ds-action)}
.csf-studio__head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 1rem;align-items:flex-start}
.csf-studio__kicker{margin:0;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--ds-commerce)}
.csf-studio h2{margin:.15rem 0 .2rem;font:900 clamp(1.5rem,4vw,2rem)/1.1 var(--ds-font-display);color:var(--ds-forest)}
.csf-studio__lead{margin:0;color:var(--ds-muted);max-width:34rem}
.csf-studio__stats{display:flex;gap:.4rem;flex-wrap:wrap;margin:0}
.csf-studio__chip{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .7rem;border-radius:var(--ds-radius-pill);background:var(--ds-reward-soft);color:var(--ds-ink);font-weight:800;font-size:.85rem}
.csf-studio__stage{margin-top:1.1rem}
.csf-studio__intro,.csf-studio__results{background:var(--ds-soft);border-radius:var(--ds-radius-md);padding:1.2rem}
.csf-studio__big{margin:0 0 .3rem;font:900 1.6rem/1.15 var(--ds-font-display);color:var(--ds-forest)}
.csf-studio__note{color:var(--ds-muted);margin:.4rem 0}
.csf-studio__bar{display:flex;gap:.35rem;margin-bottom:.9rem}.csf-studio__dot{flex:1;height:.5rem;border-radius:99px;background:var(--ds-line)}.csf-studio__dot.is-done{background:var(--ds-action)}.csf-studio__dot.is-now{background:var(--ds-reward)}
.csf-studio__card{display:grid;gap:.7rem}
.csf-studio__tag{justify-self:start;padding:.15rem .6rem;border-radius:var(--ds-radius-pill);background:var(--ds-reward-soft);font-size:.75rem;font-weight:800}
.csf-studio__q{margin:0;font-weight:800;color:var(--ds-forest);font-size:1.1rem}
.csf-studio__ctx{margin:0;color:var(--ds-muted);font-size:.95rem}
.csf-studio__sentence{margin:0;font:800 1.35rem/1.4 var(--ds-font-display);color:var(--ds-ink);overflow-wrap:anywhere}
.csf-studio__sentence mark{background:var(--ds-reward);color:var(--ds-on-reward);padding:0 .25rem;border-radius:.3rem}
.csf-studio__blank{display:inline-block;min-width:4.5rem;border-bottom:3px dashed var(--ds-action);text-align:center;color:var(--ds-action)}
.csf-studio__opts{display:flex;flex-wrap:wrap;gap:.5rem}.csf-studio__opts--col{flex-direction:column}
.csf-studio__opt{min-height:var(--ds-tap);padding:.55rem 1rem;border-radius:var(--ds-radius-md);border:2px solid var(--ds-forest);background:var(--ds-surface);color:var(--ds-forest);font:800 1rem/1.3 var(--ds-font-body);cursor:pointer;text-align:left}
.csf-studio__opt:hover:not(:disabled){background:var(--ds-soft)}
.csf-studio__opt[aria-pressed="true"]{background:var(--ds-forest);color:var(--ds-bg)}
.csf-studio__opt.is-right{background:var(--ds-action);border-color:var(--ds-action);color:var(--ds-on-action)}
.csf-studio__opt.is-wrong{border-color:var(--ds-danger);color:var(--ds-danger);background:var(--ds-surface)}
.csf-studio__opt:disabled:not(.is-right){opacity:.55;cursor:default}
.csf-studio__opt:focus-visible,.csf-studio .csf-btn:focus-visible{outline:3px solid var(--ds-focus);outline-offset:2px}
.csf-studio__match{display:grid;grid-template-columns:1fr 1.4fr;gap:.6rem}.csf-studio__col{display:grid;gap:.5rem;align-content:start}
.csf-studio__col .csf-studio__opt{width:100%}
.csf-studio__placed{margin:0;padding-left:1.4rem;display:grid;gap:.35rem;color:var(--ds-forest)}
.csf-studio__hint{margin:0;padding:.45rem .8rem;border-radius:var(--ds-radius-sm);background:var(--ds-link-soft);color:var(--ds-link);font-weight:700}
.csf-studio__fb{padding:.8rem 1rem;border-radius:var(--ds-radius-md);border:2px solid var(--ds-action);background:var(--ds-soft)}
.csf-studio__fb.is-try{border-color:var(--ds-commerce);background:var(--ds-commerce-soft)}
.csf-studio__fb strong{display:block;color:var(--ds-forest);font-size:1.1rem}
.csf-studio__why{margin:.3rem 0 0;color:var(--ds-ink)}.csf-studio__list{margin:.4rem 0 0;padding-left:1.1rem;display:grid;gap:.25rem}
.csf-studio__break{margin:.4rem 0;padding-left:1.1rem}.csf-studio__acts{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 0}
.csf-studio__results h3{margin:.8rem 0 0;font-size:1.05rem;color:var(--ds-forest)}
.csf-studio__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media(max-width:560px){.csf-studio__match{grid-template-columns:1fr}}
@media(prefers-reduced-motion:no-preference){.csf-studio__opt.is-wrong{animation:csf-shake .3s}.csf-studio__opt.is-right{animation:csf-pop .25s}@keyframes csf-shake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}@keyframes csf-pop{50%{transform:scale(1.04)}}}
@media print{.csf-studio{display:none}}
