:root{--primary:#ff6b6b;--secondary:#4ecdc4;--accent:#ffd166;--bg:#fffef7;--card:#ffffff;--text:#12263a;--muted:#6b7280}
.lm-card{background:var(--card);border-radius:18px;padding:18px;max-width:920px;margin:14px auto;border:3px solid rgba(0,0,0,0.03);box-shadow:0 10px 40px rgba(0,0,0,0.07)}
.lm-title{font-size:1.5rem;font-weight:900;color:var(--primary);letter-spacing:0.5px}
.lm-muted{color:var(--muted);margin-bottom:8px}
.lm-q{background:linear-gradient(90deg,#fff,#fffbf2);padding:14px;border-radius:12px;margin:10px 0;border:2px dashed rgba(0,0,0,0.04);font-size:1.15rem}
.lm-input{padding:12px;border-radius:12px;border:2px solid #ffe6d8;width:100%;font-size:1.05rem;box-sizing:border-box}
.lm-btn{background:linear-gradient(90deg,var(--primary),#ff8a8a);color:#fff;padding:12px 16px;border-radius:14px;border:none;cursor:pointer;font-weight:800;font-size:1rem;min-width:110px}
.lm-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.lm-correct{animation:pop .45s ease;box-shadow:0 10px 30px rgba(0,0,0,0.12);border:2px solid rgba(78,205,196,0.25)}
.lm-wrong{animation:shake .45s ease;border:2px solid rgba(255,107,107,0.25)}
@keyframes pop{0%{transform:scale(1)}50%{transform:scale(1.08)}100%{transform:scale(1)}}
@keyframes shake{0%{transform:translateX(0)}25%{transform:translateX(-8px)}50%{transform:translateX(8px)}75%{transform:translateX(-6px)}100%{transform:translateX(0)}}
#lm-confetti{position:fixed;inset:0;pointer-events:none;z-index:9999}