:root{color:#18212f;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button{font:inherit}.app-shell{flex-direction:column;gap:24px;min-height:100vh;padding:20px;display:flex}.topbar,.lesson-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.topbar-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}button.secondary.compact{white-space:nowrap;padding:8px 12px;font-size:13px}button.linkish{align-self:flex-start;margin-bottom:8px}.progress{background:#dbe4f0;border-radius:999px;flex:1;height:12px;overflow:hidden}.progress span{border-radius:inherit;background:#2563eb;height:100%;transition:width .18s;display:block}.eyebrow{color:#64748b;text-transform:uppercase;font-size:13px;font-weight:700}h1,h2,p{margin:0}h1{font-size:28px;line-height:1.15}.hearts{color:#e11d48;background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:6px;min-width:64px;height:40px;padding:0 12px;font-weight:800;display:inline-flex;box-shadow:0 8px 24px #0f172a14}.error-band{color:#9f1239;background:#fff1f2;border:1px solid #fecdd3;border-radius:8px;align-items:center;gap:10px;padding:12px 14px;font-weight:700;display:flex}.loader{border:5px solid #dbe4f0;border-top-color:#2563eb;border-radius:50%;width:42px;height:42px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.review-banner{background:#ffffff14;border-radius:16px;margin:0 1rem 1rem;padding:1rem}.review-banner h2{margin:0 0 .35rem;font-size:1rem}.sequence-built{background:#ffffff0f;border-radius:12px;min-height:2.5rem;margin-bottom:.75rem;padding:.75rem}.sequence-tokens{flex-wrap:wrap;gap:.5rem;display:flex}.path{flex-direction:column;flex:1;align-items:stretch;gap:20px;max-height:55vh;padding:4px 0 16px;display:flex;overflow-y:auto}.path-unit{flex-direction:column;gap:10px;display:flex}.path-unit-title{color:#64748b;text-align:left;margin:0;font-size:14px;font-weight:700}.path-unit-nodes{flex-direction:column;align-items:center;gap:14px;display:flex}.lesson-node{color:#fff;cursor:pointer;background:#2563eb;border:0;border-radius:50%;place-items:center;width:84px;height:84px;font-weight:900;display:grid;box-shadow:0 14px #1d4ed8,0 20px 34px #2563eb40}.lesson-node.complete{background:#16a34a;box-shadow:0 14px #15803d,0 20px 34px #16a34a38}.lesson-node.locked{background:#94a3b8;box-shadow:0 14px #64748b}.lesson-node.in-progress{background:#f59e0b;box-shadow:0 14px #d97706,0 20px 34px #f59e0b38}.icon-button{color:#2563eb;background:#fff;border:0;border-radius:50%;place-items:center;width:48px;height:48px;display:grid;box-shadow:0 8px 24px #0f172a14}.question{flex-direction:column;flex:1;justify-content:center;gap:22px;display:flex}.report-issue-button{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;padding:6px 10px;font-size:.82rem;display:inline-flex}.report-issue-button:disabled{opacity:.85;color:#16a34a;border-color:#bbf7d0}.picture-card{aspect-ratio:4/3;background:#fff;border-radius:8px;align-self:center;place-items:center;width:min(100%,320px);font-size:96px;display:grid;overflow:hidden;box-shadow:0 12px 34px #0f172a14}.picture-card__img{object-fit:contain;width:100%;height:100%;padding:12px}.picture-card--empty{color:#94a3b8;font-size:48px}.answers--visual{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.answer--visual{flex-direction:column;gap:8px;min-height:auto;padding:10px 8px}.answer__img{aspect-ratio:1;object-fit:contain;width:100%;max-width:88px}.answer__label{font-size:14px;font-weight:700}@media (width<=400px){.answers--visual{grid-template-columns:1fr}.answer--visual{text-align:left;flex-direction:row;justify-content:flex-start}.answer__img{flex-shrink:0;width:56px}}.answers{gap:12px;display:grid}.answer,.primary,.secondary{color:#18212f;cursor:pointer;background:#fff;border:2px solid #dbe4f0;border-radius:8px;min-height:56px;font-weight:800}.answer:disabled{cursor:default}.answer.selected{background:#eff6ff;border-color:#2563eb}.answer.correct{background:#dcfce7;border-color:#16a34a}.answer.wrong{background:#ffe4e6;border-color:#e11d48}.feedback{border-top:1px solid #0f172a14;gap:14px;margin:0 -20px -20px;padding:16px 20px 20px;display:grid}.feedback.correct{color:#166534;background:#dcfce7}.feedback.wrong{color:#9f1239;background:#ffe4e6}.feedback-copy{align-items:center;gap:10px;font-weight:900;display:flex}.compact{width:100%}.result{text-align:center;justify-content:center;align-items:center}.result svg{color:#16a34a}.primary{color:#fff;background:#2563eb;border-color:#2563eb;width:min(100%,320px)}.secondary{color:#2563eb;background:#fff;border-color:#bfdbfe;width:min(100%,320px)}.setup{max-width:480px;margin:0 auto}.setup-subtitle{color:#64748b;margin-top:8px}.setup-form{gap:14px;display:grid}.field{gap:8px;font-weight:700;display:grid}.field input,.field select{min-height:48px;font:inherit;background:#fff;border:2px solid #dbe4f0;border-radius:8px;padding:0 12px}.consent-field{background:#fff;border:1px solid #dbe4f0;border-radius:8px;align-items:flex-start;gap:10px;padding:12px;font-size:14px;line-height:1.45;display:flex}.consent-field input{margin-top:4px}.context-block{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:12px;padding:16px;display:flex}.context-listen{color:#1d4ed8;background:#eff6ff;border:0;border-radius:999px;align-self:flex-start;align-items:center;gap:8px;padding:8px 14px;font-weight:600;display:inline-flex}.dialogue-lines p,.reading-passage{margin:0;font-size:1rem;line-height:1.55}.dialogue-lines p+p{margin-top:8px}.answers--text{flex-direction:column;gap:10px;display:flex}.answer--text{text-align:left;background:#fff;border:2px solid #dbe4f0;border-radius:12px;width:100%;min-height:52px;padding:14px 16px;font-weight:600}.answer--text.correct{background:#f0fdf4;border-color:#16a34a}
