:root{--green: #16a34a;--green-dark: #15803d;--green-light: #dcfce7;--yellow: #facc15;--blue: #2563eb;--ink: #1f2937;--paper: #f8fafc;--card: #ffffff;--ok: #22c55e;--bad: #ef4444;--shadow: 0 6px 0 rgba(0, 0, 0, .12);font-family:Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{margin:0;height:100%}body{background:var(--paper);color:var(--ink);overscroll-behavior:none}.app{max-width:960px;margin:0 auto;min-height:100%;display:flex;flex-direction:column;padding:16px;gap:16px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.topbar .brand{font-size:28px;font-weight:800;color:var(--green)}.stats{display:flex;gap:10px}.chip{background:var(--card);border-radius:999px;padding:8px 14px;font-weight:700;font-size:18px;box-shadow:0 3px #00000014;display:flex;align-items:center;gap:6px}button{font-family:inherit;cursor:pointer;border:none}.btn{background:var(--green);color:#fff;font-size:22px;font-weight:800;padding:16px 24px;border-radius:18px;box-shadow:var(--shadow);transition:transform .05s ease}.btn:active{transform:translateY(3px);box-shadow:0 3px #0000001f}.btn.big{font-size:26px;padding:20px 28px;width:100%}.btn.ghost{background:var(--card);color:var(--ink)}.btn.yellow{background:var(--yellow);color:var(--ink)}.scene{border-radius:22px;overflow:hidden;height:150px;box-shadow:var(--shadow);background:#bae6fd;display:flex}.scene svg{display:block}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}.room-card{background:var(--card);border-radius:22px;padding:18px;box-shadow:var(--shadow);text-align:center;position:relative;border:3px solid transparent}.room-card.active{border-color:var(--green)}.room-card.locked{opacity:.55}.room-card .emoji{font-size:54px}.room-card .name{font-size:20px;font-weight:800;margin-top:6px}.room-card .sub{font-size:14px;color:#6b7280;margin-top:2px}.lock-badge{position:absolute;top:10px;right:12px;font-size:22px}.panel{background:var(--card);border-radius:22px;padding:20px;box-shadow:var(--shadow)}.h1{font-size:30px;font-weight:900;margin:0}.h2{font-size:22px;font-weight:800;margin:0 0 8px}.muted{color:#6b7280}.center{text-align:center}.spacer{flex:1}.stage{flex:1;display:flex;flex-direction:column;gap:16px}.progress-bar{height:14px;background:#e5e7eb;border-radius:999px;overflow:hidden}.progress-bar>div{height:100%;background:var(--green);transition:width .3s ease}.word-emoji{font-size:120px;text-align:center;line-height:1.1}.word-es{font-size:40px;font-weight:900;text-align:center;color:var(--green-dark)}.word-va{font-size:20px;text-align:center;color:var(--blue);font-weight:700}.word-uk{font-size:24px;text-align:center;color:#6b7280}.example{background:var(--green-light);border-radius:16px;padding:14px 18px;text-align:center}.example .es{font-size:22px;font-weight:700}.example .uk{font-size:18px;color:#4b5563}.hint{background:#fff7ed;border-radius:14px;padding:12px 16px;font-size:17px;text-align:center;color:#9a3412}.speaker{background:var(--yellow);color:var(--ink);border-radius:999px;font-size:30px;width:70px;height:70px;margin:0 auto;display:flex;align-items:center;justify-content:center;box-shadow:0 4px #00000026}.options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.option{background:var(--card);border:3px solid #e5e7eb;border-radius:18px;padding:18px;font-size:24px;font-weight:800;text-align:center;min-height:84px;display:flex;align-items:center;justify-content:center}.option.emoji-opt{font-size:56px}.option.correct{border-color:var(--ok);background:#dcfce7}.option.wrong{border-color:var(--bad);background:#fee2e2}.option:disabled{cursor:default}.prompt{font-size:22px;font-weight:800;text-align:center;color:#374151}.celebrate{text-align:center;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;flex:1}.celebrate .big-emoji{font-size:110px}.reward-line{font-size:22px;font-weight:800}.bars{display:flex;flex-direction:column;gap:10px}.word-row{display:flex;align-items:center;gap:10px}.word-row .label{width:130px;font-weight:700}.word-row .track{flex:1;height:16px;background:#e5e7eb;border-radius:999px;overflow:hidden}.word-row .fill{height:100%;background:var(--green)}.word-row .em{font-size:22px}
