.activity-label{display:inline-block;background:#e9e0ff;color:#513185;padding:6px 12px;border-radius:10px;font-weight:900}.word-bank{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.word-tile{background:#eaf1ff;border:2px solid #b9cdeb;color:#21364e;touch-action:manipulation}.selected{outline:3px solid #ecb528;background:#fff0ab!important}.drop-zone{display:block;width:100%;min-height:100px;border:3px dashed #468977;background:#edf9ef;color:#1c5949;font-size:23px}.sentence-tray{padding:18px;min-height:90px;border:2px dashed #839cb9;border-radius:18px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.match-board{display:grid;grid-template-columns:1fr 1fr;gap:24px}.match-board>div{display:flex;flex-direction:column;gap:12px}.match-card{border:2px solid #c9d9ed;background:#eef5ff;color:#21364e;min-height:66px}.match-card.paired{background:#d4f5df;opacity:1;color:#256340}.letter-grid{display:grid;grid-template-columns:repeat(var(--cols),1fr);gap:5px;max-width:500px;margin:20px auto}.letter-grid button{padding:0;aspect-ratio:1;border-radius:8px;background:#eaf0f8;color:#21364e;font-size:clamp(14px,2.8vw,24px);min-width:0}.activity input{display:block;width:100%;font:700 24px Nunito,sans-serif;padding:15px;border:2px solid #8aabc8;border-radius:12px;margin:15px 0}.celebrate{width:min(90vw,500px);max-width:500px;text-align:center;padding:36px;border:5px solid #58b981;background:#f5fff7}.celebrate.retry{border-color:#eab455;background:#fff9ed}.celebrate h2{font-size:36px}.celebrate p{font-size:19px}.reward-icon{font-size:54px}.countdown{background:#d9f6e2;padding:12px;border-radius:14px}.celebrate::backdrop{background:#112541b8;backdrop-filter:blur(4px)}.workspace .topline{flex-wrap:wrap}.activity button:disabled{transform:none}.activity form label{line-height:1.6}@media(max-width:500px){.match-board{gap:10px}.match-card{padding:12px 8px;font-size:15px}.letter-grid{gap:3px}.celebrate{padding:22px}.celebrate h2{font-size:29px}}@media(prefers-reduced-motion:no-preference){.celebrate[open]{animation:pop .22s ease-out}@keyframes pop{from{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}} 
