/* Estilos limitados a las nuevas actividades de expresiones. */
.expression-practice{max-width:1100px;min-width:0}
.expression-practice .vocab-entry{margin-block:16px}
.expression-practice .vocab-controls{gap:10px;flex-wrap:wrap}
.expression-practice .btn{white-space:normal;overflow-wrap:anywhere;min-height:48px}
.expression-practice .expression-question{border:1px solid var(--line);border-radius:14px;padding:20px;min-width:0;background:var(--surface)}
.expression-practice .expression-dialogue{white-space:pre-line;font-size:18px;line-height:1.8;overflow-wrap:anywhere}
.expression-practice .expression-gap{font-weight:600}
.expression-practice .expression-filled{font-weight:600;color:#214d2b}
.expression-practice .expression-bank{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.expression-practice #expression-form{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:20px 0}
.expression-practice #expression-form label{flex-basis:100%}
.expression-practice #expression-input{min-height:48px;padding:12px;flex:1 1 240px;min-width:0;border:1px solid var(--line);border-radius:10px;font:inherit;background:var(--surface);color:var(--text);box-sizing:border-box}
.expression-practice .expression-answer{padding:14px;border-radius:10px}
.expression-practice .expression-good{color:#286137;font-weight:600}
.expression-practice .expression-bad{color:#a43939;font-weight:600}
.expression-practice [role="status"]{min-height:26px}
.expression-practice :focus-visible{outline:2px solid var(--text);outline-offset:3px}
@media(max-width:600px){.expression-practice .expression-bank{grid-template-columns:minmax(0,1fr)}.expression-practice .expression-question{padding:16px}.expression-practice #expression-form button{width:100%}}
.expression-practice .expression-cloze .expression-question{flex-basis:100%;box-sizing:border-box}
.expression-practice .expression-cloze .expression-dialogue{line-height:2.8}
.expression-practice .expression-cloze #expression-input{display:inline-block;flex:none;width:160px;max-width:100%;padding:6px 10px;vertical-align:baseline;font-weight:500}
@media(max-width:600px){.expression-practice .expression-cloze #expression-input{width:135px}}
.expression-practice .expression-question.pair-completed{background:#edf7ef;border-color:#438451}
