:root{color:#334155;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f3f7fb;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{overflow-y:scroll}body{min-width:320px;margin:0}button,input{font:inherit}img{max-width:100%}#root{min-height:100svh}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:0}.trainer-shell{background:linear-gradient(#f8f4ea 0% 28%,#f3f7fb 28% 100%);min-height:100svh}.hero-band,.stats-band,.task-map-band,.question-band{box-sizing:border-box;width:min(100%,1100px);margin:0 auto}.hero-band{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;padding:48px 28px 32px;display:grid}.hero-copy-block{max-width:760px}.eyebrow{text-transform:uppercase;color:#8f5a12;margin:0 0 10px;font-size:14px;font-weight:700;line-height:1.3}.hero-copy{color:#475569;max-width:720px;font-size:18px;line-height:1.55}.mode-switcher{background:#ffffffb3;border:1px solid #94a3b840;border-radius:18px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:360px;padding:8px;display:inline-grid}.training-panel{justify-items:end;gap:10px;display:grid}.mode-badge{color:#9a3412;background:#fff7ed;border-radius:999px;align-items:center;min-height:32px;padding:0 12px;font-size:15px;font-weight:700;display:inline-flex}.mode-button{min-height:48px;font:inherit;color:#334155;cursor:pointer;background:0 0;border:0;border-radius:12px;padding:10px 14px}.mode-button.active{color:#0f172a;background:#fff;box-shadow:0 8px 24px #0f172a14}.stats-band{grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;gap:12px;padding:0 28px 24px;display:grid}.stat-tile{background:#ffffffc7;border:1px solid #94a3b833;border-radius:8px;flex-direction:column;gap:6px;min-height:96px;padding:16px;display:flex}.main-stat{background:#f0fdf4;border-color:#16653429}.quiet-stat{background:#ffffff94;min-height:88px}.stat-value{color:#0f172a;font-size:30px;font-weight:700;line-height:1}.quiet-stat .stat-value{color:#475569;font-size:22px}.stat-label{color:#475569}.progress-tile{background:#fff7ed;border-color:#ea580c38}.progress-tile .stat-value{font-size:24px}.task-map-band{padding:10px 28px 34px}.task-map-card{background:#ffffffad;border:1px solid #94a3b833;border-radius:8px;padding:14px 16px 16px}.task-map-legend{flex-wrap:wrap;justify-content:center;gap:5px;margin-top:10px;display:flex}.task-map-legend-item{border:1px solid #94a3b833;border-radius:999px;align-items:center;gap:5px;min-height:22px;padding:0 6px;font-size:11px;display:inline-flex}.task-map-grid{grid-template-columns:repeat(10,38px);justify-content:center;gap:5px;margin:0 auto;display:grid}.task-map-button{width:38px;height:38px;font:inherit;color:#334155;cursor:pointer;background:#fff;border:2px solid #0000;border-radius:8px;place-items:center;gap:2px;padding:0;font-weight:700;display:grid}.task-map-button.current{border-color:#0f172a;box-shadow:0 0 0 2px #0f172a14}.task-map-symbol{font-size:10px;line-height:1}.task-map-button span:last-child{font-size:12px;line-height:1}.status-not_started{color:#94a3b8;background:#fff}.status-solved_independently{color:#166534;background:#ecfdf5}.status-solved_with_hint{color:#1d4ed8;background:#eff6ff}.status-solved_after_mistake{color:#9a3412;background:#fff7ed}.status-solution_viewed{color:#475569;background:#f1f5f9}.status-needs_repeat{color:#b91c1c;background:#fef2f2}.question-band{background:#fff;border-top:1px solid #94a3b833;border-bottom:1px solid #94a3b833;padding:28px}.empty-state{place-content:center;gap:12px;min-height:320px;display:grid}.session-complete{text-align:center;justify-items:center;gap:18px;display:grid}.session-complete h2{color:#0f172a;margin:0;font-size:32px;line-height:1.2}.session-summary{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.session-summary span{color:#334155;background:#f8fafc;border-radius:999px;align-items:center;min-height:36px;padding:0 12px;display:inline-flex}.question-topline,.meta-row{flex-wrap:wrap;gap:10px;display:flex}.question-topline{margin-bottom:18px}.question-topline span,.meta-row span{color:#334155;background:#eef2ff;border-radius:999px;align-items:center;min-height:34px;padding:0 12px;font-size:15px;display:inline-flex}.question-text{color:#0f172a;max-width:900px;margin:0;font-size:34px;line-height:1.24}.question-text:focus{outline-offset:8px;outline:3px solid #f59e0b59}.asset-strip{margin:28px 0}.question-asset{background:#f8fafc;border:1px solid #94a3b847;border-radius:8px;width:auto;max-width:min(100%,440px);height:auto;max-height:280px;padding:16px;display:block}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px;display:grid}.choice-button{text-align:left;min-height:74px;font:inherit;color:#0f172a;cursor:pointer;background:#fbfdff;border:2px solid #dbe4ef;border-radius:8px;grid-template-columns:auto 1fr;align-items:start;gap:12px;padding:16px 18px;display:grid}.choice-button.selected{background:#eff6ff;border-color:#1d4ed8}.choice-button:disabled{cursor:default}.choice-button.rejected{color:#94a3b8;background:#f1f5f9;border-color:#e2e8f0}.choice-button.rejected .choice-label{color:#64748b;background:#cbd5e1}.choice-label{background:#e2e8f0;border-radius:999px;place-items:center;width:32px;height:32px;font-weight:700;display:inline-grid}.answer-field{flex-direction:column;gap:10px;max-width:360px;margin-top:28px;display:flex}.field-label{color:#334155;font-size:16px;font-weight:600}.answer-field input{min-height:58px;font:inherit;color:#0f172a;background:#fff;border:2px solid #cbd5e1;border-radius:8px;padding:0 16px}.answer-field input:focus,.mode-button:focus-visible,.choice-button:focus-visible,.task-map-button:focus-visible,.primary-action:focus-visible,.secondary-action:focus-visible{outline-offset:2px;outline:3px solid #f59e0b59}.action-row{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.primary-action,.secondary-action{min-height:50px;font:inherit;cursor:pointer;border:0;border-radius:8px;padding:0 18px}.primary-action{color:#fff7ed;background:#ea580c}.primary-action:disabled{cursor:default;opacity:1;color:#64748b;background:#cbd5e1}.secondary-action:disabled{cursor:default;opacity:.55;box-shadow:none}.secondary-action{color:#0f172a;background:#e2e8f0}.attention-action{color:#9a3412;background:#fff7ed;box-shadow:0 0 0 3px #ea580c29}.feedback,.info-block{border-radius:8px;margin-top:20px;padding:18px}.feedback.success{color:#166534;background:#ecfdf5}.feedback.error{color:#9a3412;background:#fff7ed}.feedback.info{color:#1e3a8a;background:#eff6ff}.info-block{color:#334155;background:#f8fafc}.info-block h3{color:#0f172a;margin:0 0 10px;font-size:18px;line-height:1.3}.info-block p{margin:0}.feedback p{margin:8px 0 0}.info-block p+p{margin-top:10px}.link-action{color:#1d4ed8;font:inherit;cursor:pointer;background:0 0;border:0;margin-top:14px;padding:0;font-weight:700}.link-action:hover{text-decoration:underline}.meta-row{margin-top:24px}@media (width<=900px){.hero-band{grid-template-columns:1fr;align-items:start}.mode-switcher{width:100%;min-width:0}.training-panel{justify-items:stretch}.mode-badge{justify-content:center}.stats-band{grid-template-columns:repeat(3,minmax(0,1fr))}.task-map-grid{grid-template-columns:repeat(5,38px)}.choice-grid{grid-template-columns:1fr}.question-text{font-size:28px}}@media (width<=640px){.hero-band,.stats-band,.question-band{padding-left:16px;padding-right:16px}.task-map-card{padding:12px 12px 14px}.hero-band{padding-top:28px}.stats-band{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:0}.task-map-grid{grid-template-columns:repeat(4,38px)}.mode-switcher{grid-template-columns:1fr}.question-text{font-size:24px}.action-row{flex-direction:column}.primary-action,.secondary-action{width:100%}}
