:root{color:#1f2933;background:#f6f1e8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,textarea{font:inherit}button{min-height:42px;padding:0 16px;color:#fffaf2;background:#1f2933;border:0;border-radius:8px;font-weight:750;cursor:pointer}button:disabled{cursor:wait;background:#8d969e}.app-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr}.topbar{height:64px;display:flex;align-items:center;gap:12px;padding:0 clamp(20px,5vw,56px);border-bottom:1px solid #ded6c8}.brand-mark{width:32px;height:32px;display:grid;place-items:center;color:#fffaf2;background:#1f2933;border-radius:8px;font-weight:750}.brand-name{font-size:1rem;font-weight:700}.turn-counter{margin-left:auto;font-size:.9rem;font-weight:700}.workspace{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:clamp(28px,6vw,72px) 0}.workspace-heading{display:grid;gap:8px;margin-bottom:28px}.eyebrow{margin:0;color:#7c4f3d;font-size:.82rem;font-weight:700;text-transform:uppercase}h1,h2,h3{margin:0;letter-spacing:0}h1{font-size:clamp(2.4rem,7vw,5.25rem);line-height:.95}h2{font-size:1.15rem}h3{font-size:1rem}.scenario-form,.reply-form{display:grid;gap:14px}.scenario-form{margin-bottom:22px}label{font-size:.95rem;font-weight:700}textarea{width:100%;resize:vertical;padding:16px;color:#1f2933;background:#fffaf2;border:1px solid #cabfaf;border-radius:8px}.scenario-form textarea{min-height:112px}.error-banner,.feedback{margin:0 0 18px;padding:14px 16px;border-radius:8px}.error-banner{color:#7f1d1d;background:#fee2e2}.feedback{color:#1e3a2f;background:#dcfce7}.status-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:0 0 28px;overflow:hidden;border:1px solid #ded6c8;border-radius:8px;background:#ded6c8}.status-list div,.review-panel dl div{min-width:0;padding:16px;background:#f6f1e8}dt{margin-bottom:6px;color:#6b7280;font-size:.78rem;font-weight:700;text-transform:uppercase}dd{margin:0;font-size:1.1rem;font-weight:750}.practice-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:24px;align-items:start}.targets-panel,.chat-panel,.review-panel{display:grid;gap:16px}.targets-panel ul,.review-panel ul{display:grid;gap:8px;padding:0;margin:0;list-style:none}.targets-panel li,.review-panel li{display:flex;justify-content:space-between;gap:12px;padding:12px;background:#fffaf2;border:1px solid #ded6c8;border-radius:8px}.targets-panel span{color:#7c4f3d;font-weight:750}.transcript{display:grid;gap:12px}.message{max-width:min(720px,100%);padding:14px 16px;border-radius:8px;background:#fffaf2;border:1px solid #ded6c8}.message-learner{justify-self:end;background:#e8eef7}.message span{display:block;margin-bottom:6px;color:#6b7280;font-size:.78rem;font-weight:750;text-transform:uppercase}.message p{margin:0;line-height:1.5}.reply-actions{display:flex;flex-wrap:wrap;gap:10px}.review-panel{margin-top:28px;padding-top:24px;border-top:1px solid #ded6c8}.review-panel dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;overflow:hidden;border:1px solid #ded6c8;border-radius:8px;background:#ded6c8}@media(max-width:760px){.topbar{height:56px}.status-list,.practice-layout,.review-panel dl{grid-template-columns:1fr}}
