/* Espaniva 2.0 practice experience; original legacy styles stay intact */
.es2-hero{background:linear-gradient(125deg,#0d5c67,#137f83 62%,#3fa6a0);border-radius:22px;color:white;padding:26px;display:flex;justify-content:space-between;align-items:center;gap:16px;box-shadow:0 16px 32px #0d5c6720;margin:0 0 18px}
.es2-hero h1{margin:7px 0;font-size:clamp(25px,3.2vw,38px);letter-spacing:-.8px;line-height:1.1}.es2-hero p{margin:5px 0 0;color:#d4f4ee;max-width:660px}.es2-kicker{font-weight:800;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#b8f2df}.es2-hero .es2-emoji{font-size:clamp(34px,7vw,74px);line-height:1}.es2-card{background:#fff;border:1px solid #dce8e9;border-radius:18px;padding:20px;box-shadow:0 8px 22px #203f4610}.es2-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.es2-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.es2-label{font-size:11px;font-weight:800;color:#5d7a7e;letter-spacing:.6px;text-transform:uppercase}.es2-big{font-size:34px;font-weight:850;color:#0d5360;line-height:1.1}.es2-muted{color:#5b7479;font-size:13px}.es2-tiny{font-size:12px;color:#658087}.es2-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.es2-between{justify-content:space-between}.es2-btn{border:0;background:#0b7b80;color:#fff;padding:11px 17px;min-height:46px;border-radius:13px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;touch-action:manipulation}.es2-btn:hover{filter:brightness(.95)}.es2-btn:disabled{opacity:.45;cursor:not-allowed}.es2-btn.alt{background:#e7f5f3;color:#12646b}.es2-btn.white{background:#fff;color:#0c6668}.es2-btn.outline{background:white;border:1px solid #a8c8ca;color:#1a5560}.es2-btn.small{min-height:35px;padding:8px 12px;font-size:12px}.es2-btn.full{width:100%}.es2-btn.is-selected{background:#074f55;color:#fff;border-color:#074f55}.es2-select{border:1px solid #c4d9da;border-radius:11px;background:#fff;color:#173a45;padding:10px;min-height:43px;max-width:100%;font:inherit}.es2-select:focus,.es2-btn:focus-visible,.es2-option:focus-visible,.es2-tile:focus-visible{outline:3px solid #9cdbd4;outline-offset:3px}.es2-progress{height:12px;background:#e7f0f0;border-radius:99px;overflow:hidden}.es2-progress>div{height:100%;background:linear-gradient(90deg,#0d8c88,#6dc4a1);border-radius:99px;transition:width .3s}.es2-muted-box{padding:15px;background:#f1f8f7;border:1px solid #dbebe8;border-radius:13px;color:#24505a}.es2-pill{background:#e7f4f0;color:#196e68;border-radius:99px;padding:5px 11px;font-size:11px;font-weight:800;display:inline-flex;align-items:center}.es2-option{display:flex;align-items:center;gap:11px;min-height:55px;text-align:left;border:1.5px solid #d5e5e6;padding:12px 15px;background:white;border-radius:13px;color:#274650;width:100%;font:inherit;cursor:pointer;touch-action:manipulation}.es2-option .letter{background:#edf5f4;color:#18787b;min-width:32px;height:32px;display:grid;place-items:center;border-radius:9px;font-weight:800}.es2-option.active{background:#e7f6f3;border-color:#0f8b8a}.es2-option.correct{background:#e4f6ed;border-color:#27966e}.es2-option.incorrect{background:#fff0ed;border-color:#d57869}.es2-qstem{font-size:clamp(19px,2.4vw,26px);color:#183d47;font-weight:750;line-height:1.48;margin:12px 0 15px;white-space:pre-wrap}.es2-answergrid{display:grid;gap:9px}.es2-tilearea{border:2px dashed #bfd9d7;background:#f7fbfa;padding:13px;border-radius:15px;min-height:68px;display:flex;gap:7px;align-items:flex-start;align-content:flex-start;flex-wrap:wrap}.es2-tiles{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0}.es2-tile{background:white;color:#1d535c;border:1.5px solid #9ec4c3;box-shadow:0 3px 0 #d9e9e8;border-radius:10px;padding:11px 13px;min-height:45px;max-width:100%;font:inherit;font-weight:650;cursor:pointer;touch-action:manipulation;overflow-wrap:anywhere}.es2-tile.active{background:#daf4eb;border-color:#208b7d}.es2-tile:disabled{opacity:.45}.es2-feedback{padding:19px;border-radius:16px;background:#ebf9f2;border:1px solid #b5e5d0;margin-top:17px}.es2-feedback.bad{background:#fff6ee;border-color:#f2ceb0}.es2-feedback h3{margin:0 0 9px;font-size:18px;color:#1e644b}.es2-feedback.bad h3{color:#90562b}.es2-feedback p{margin:7px 0;color:#2a4e53}.es2-feedback .es2-translation{background:white;border-radius:10px;padding:10px 13px;margin:11px 0}.es2-flag{border:1px solid #d4e2e4;border-radius:9px;padding:9px 10px;background:white;color:#60797c;font:inherit;cursor:pointer}.es2-flag.on{border-color:#e4af60;background:#fff5e3;color:#a66a1d}.es2-listening{padding:17px;background:linear-gradient(125deg,#f2f8fc,#e6f6f5);border:1px solid #cfe4e6;border-radius:15px;margin:10px 0 15px}.es2-matching{display:grid;grid-template-columns:1fr 1fr;gap:10px}.es2-matchcol{display:grid;gap:8px;align-content:start}.es2-match{border:1.5px solid #bfd8da;border-radius:12px;background:#fff;color:#23434b;min-height:53px;padding:10px;cursor:pointer;text-align:center;font:inherit;font-size:14px;overflow-wrap:anywhere}.es2-match.selected{background:#d9f3ee;border-color:#178783}.es2-match.done{background:#f0f5f5;color:#778d8e;border-style:dashed}.es2-statusline{padding:12px 14px;border-radius:11px;background:#f1f7f7;color:#2b5960;font-size:13px}.es2-skillcard{display:flex;flex-direction:column;gap:8px;min-height:167px}.es2-skillcard .es2-btn{margin-top:auto}.es2-prompt{width:100%;min-height:210px;resize:vertical;background:#f7fbfb;border:1px solid #cee0df;border-radius:13px;padding:14px;font:12px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;color:#304c55}.es2-inputfile{background:white;border:1px dashed #a4cbca;border-radius:12px;padding:15px;width:100%;max-width:100%;font:inherit}.es2-hidden{display:none!important}.es2-divider{margin:18px 0;border-top:1px solid #e0eaea}.es2-confetti{position:fixed;z-index:200;top:15%;left:50%;transform:translateX(-50%);pointer-events:none;font-size:30px;animation:es2pop .8s ease-out forwards}@keyframes es2pop{from{opacity:0;transform:translate(-50%,35px) scale(.7)}50%{opacity:1;transform:translate(-50%,0) scale(1.2)}to{opacity:0;transform:translate(-50%,-60px) scale(1)}}@media(prefers-reduced-motion:reduce){.es2-confetti{animation:none;display:none}.es2-progress>div{transition:none}}
@media(max-width:760px){.es2-grid3{grid-template-columns:repeat(2,minmax(0,1fr))}.es2-hero{padding:19px}.es2-hero .es2-emoji{display:none}.es2-card{padding:16px}.es2-qstem{font-size:20px}.mobilebar{overflow-x:auto;justify-content:flex-start;scrollbar-width:none}.mobilebar>button{flex:1 1 0;min-width:52px;font-size:10px}}
@media(max-width:450px){.es2-grid{grid-template-columns:1fr}.es2-grid3{grid-template-columns:repeat(2,minmax(0,1fr))}.es2-matching{grid-template-columns:1fr 1fr}.es2-match{font-size:12px;padding:8px}.es2-hero h1{font-size:27px}}

/* Speech accessibility improvements */
.es2-voice-row{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:13px}
.es2-voice-row select{flex:1 1 200px;min-width:0;max-width:100%}
.es2-transcript{background:#fff;border:1px solid #bfdfdf;border-radius:12px;padding:12px 15px;margin-top:10px;color:#184b56}
.es2-transcript p{font-size:16px;line-height:1.5;margin:6px 0}
@media(max-width:520px){.es2-voice-row{align-items:stretch}.es2-voice-row select{flex:1 1 100%}}
