:root{color:#17221b;background:#f7f8f4;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{margin:0;min-width:320px;min-height:100vh}button{font:inherit}.app-shell{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);min-height:100vh;padding-top:0}.account-bar{align-items:center;background:#fff;border-bottom:1px solid #dfe5db;display:flex;gap:16px;justify-content:flex-end;min-height:58px;padding:10px 28px}.account-bar span{color:#5f6d63;font-size:.92rem;font-weight:800}.locale-toggle{align-items:center;background:#eef2ea;border:1px solid #dfe5db;border-radius:8px;display:inline-flex;gap:2px;padding:3px}.locale-toggle button{background:transparent;border:0;border-radius:6px;color:#5f6d63;cursor:pointer;font-size:.78rem;font-weight:900;min-height:28px;min-width:38px;padding:4px 8px}.locale-toggle button.selected{background:#fff;color:#17221b;box-shadow:0 4px 12px #10171414}.progress-rail .locale-toggle{background:#f7f8f414;border-color:#f7f8f42e;margin-bottom:20px}.progress-rail .locale-toggle button{color:#b9c4bb}.progress-rail .locale-toggle button.selected{background:#f7f8f4;color:#101714}.progress-rail{background:#101714;color:#f7f8f4;padding:28px}.progress-rail h2,.video-heading h1,.finish-state h1,.answer-panel h2{margin:0;letter-spacing:0}.progress-rail ol{display:grid;gap:12px;list-style:none;margin:28px 0 0;padding:0}.progress-summary{display:grid;gap:10px;margin-top:22px}.progress-summary>div{align-items:center;border:1px solid rgba(247,248,244,.14);border-radius:8px;display:grid;gap:6px;grid-template-columns:auto 1fr auto;padding:10px 12px}.progress-summary span{color:#b9c4bb;font-size:.78rem;font-weight:800;text-transform:uppercase}.progress-summary strong{font-size:1.15rem}.progress-rail li{align-items:center;border:1px solid rgba(247,248,244,.14);border-radius:8px;display:grid;gap:12px;grid-template-columns:34px 1fr;padding:12px}.progress-rail li.active{background:#f7f8f4;color:#101714}.progress-rail li.complete span{background:#e8c547;color:#101714}.progress-rail li>span{align-items:center;background:#f7f8f41f;border-radius:999px;display:inline-flex;font-weight:800;height:34px;justify-content:center;width:34px}.progress-rail strong,.progress-rail small{display:block}.progress-rail small{color:inherit;line-height:1.35;margin-top:4px;opacity:.74}.player-shell{display:grid;gap:22px;grid-template-columns:minmax(0,1fr) minmax(300px,380px);padding:28px}.video-stage,.answer-panel,.finish-state,.center-state{align-self:start}.video-heading{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.eyebrow{color:#5f6d63;font-size:.76rem;font-weight:800;letter-spacing:0;margin:0 0 8px;text-transform:uppercase}.progress-rail .eyebrow{color:#b9c4bb}.video-heading h1,.finish-state h1{font-size:clamp(2rem,4vw,3.6rem);line-height:1}.video-wrap{position:relative}.video-wrap video{aspect-ratio:16 / 9;background:#101714;border-radius:8px;display:block;width:100%}.decision-overlay{align-items:center;background:#101714c7;border-radius:8px;color:#fff;display:grid;gap:6px;inset:0;justify-items:center;padding:20px;pointer-events:none;position:absolute;text-align:center}.decision-overlay strong{font-size:clamp(1.25rem,3vw,2.1rem);line-height:1.1}.decision-overlay span{color:#e8c547;font-size:.95rem;font-weight:900;text-transform:uppercase}.clip-meta{color:#5f6d63;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-top:12px}.answer-panel{background:#fff;border:1px solid #dfe5db;border-radius:8px;box-shadow:0 18px 45px #10171414;display:grid;gap:18px;padding:22px}.answer-panel h2{font-size:1.45rem;line-height:1.15}.option-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.option-button,.primary-action,.icon-button,.text-action{border:0;cursor:pointer;transition:transform .16s ease,background .16s ease,color .16s ease}.rail-action{background:#f7f8f414;border-color:#f7f8f42e;color:#f7f8f4;margin-top:16px;width:100%}.option-button{background:#eef2ea;border-radius:8px;color:#17221b;font-weight:800;min-height:56px;padding:12px}.option-button:hover:not(:disabled),.primary-action:hover:not(:disabled),.icon-button:hover,.text-action:hover{transform:translateY(-1px)}.option-button.correct{background:#2c7a4b;color:#fff}.option-button.incorrect{background:#c44536;color:#fff}.option-button:disabled{cursor:default}.text-action:disabled{cursor:not-allowed;opacity:.48}.feedback{align-items:flex-start;border-radius:8px;display:flex;gap:12px;padding:14px}.feedback.correct{background:#e7f3eb;color:#1d5e38}.feedback.incorrect{background:#f8e7e4;color:#923224}.feedback p{line-height:1.45;margin:4px 0 0}.primary-action{align-items:center;background:#e8c547;border-radius:8px;color:#101714;display:inline-flex;gap:8px;font-weight:900;justify-content:center;min-height:48px;padding:12px 16px}.primary-action:disabled{cursor:not-allowed;opacity:.48}.icon-button{align-items:center;background:#fff;border:1px solid #dfe5db;border-radius:8px;color:#17221b;display:inline-flex;height:44px;justify-content:center;width:44px}.text-action{align-items:center;background:#fff;border:1px solid #dfe5db;border-radius:8px;color:#17221b;display:inline-flex;font-size:.92rem;font-weight:800;gap:6px;min-height:34px;padding:6px 10px}.finish-state,.center-state{display:grid;gap:16px;justify-items:start;margin:auto;max-width:620px;padding:28px}.finish-state svg,.session-start>svg{color:#e8c547}.finish-state p:not(.eyebrow),.center-state p:not(.eyebrow){color:#5f6d63;font-size:1.08rem;line-height:1.6}.center-state .error-text{color:#923224;font-weight:700;margin-top:0}.answer-panel .error-text,.finish-state .error-text{color:#923224;font-weight:700;margin:0}.session-options{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,460px)}.session-option{background:#fff;border:1px solid #dfe5db;border-radius:8px;color:#17221b;cursor:pointer;display:grid;font-weight:800;min-height:86px;padding:12px;place-items:center;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.session-option span{font-size:1.8rem;line-height:1}.session-option:hover,.session-option.selected{border-color:#e8c547;box-shadow:0 12px 28px #1017141a;transform:translateY(-1px)}.modal-backdrop{align-items:center;background:#10171494;display:flex;inset:0;justify-content:center;padding:22px;position:fixed;z-index:20}.progress-modal{background:#fff;border:1px solid #dfe5db;border-radius:8px;box-shadow:0 24px 72px #1017143d;color:#17221b;display:grid;gap:18px;max-height:min(90vh,760px);max-width:860px;overflow:auto;padding:22px;width:min(100%,860px)}.modal-heading{align-items:start;display:flex;gap:16px;justify-content:space-between}.modal-heading h2,.empty-chart-state h3{letter-spacing:0;margin:0}.modal-heading h2{color:#f26b2c;font-size:1.55rem}.chart-frame{border:1px solid #dfe5db;border-radius:8px;overflow-x:auto;padding:10px}.progress-chart{display:block;min-width:640px;width:100%}.chart-gridline{stroke:#e9ede5;stroke-width:1}.chart-axis{stroke:#b9c4bb;stroke-width:1.5}.chart-axis-label,.chart-x-label{fill:#5f6d63;font-size:.78rem;font-weight:800;text-anchor:middle}.chart-axis-label{text-anchor:end}.chart-line{fill:none;stroke:#f26b2c;stroke-linecap:round;stroke-linejoin:round;stroke-width:4}.chart-point{fill:#fff;stroke:#f26b2c;stroke-width:3}.progress-table-wrap{overflow-x:auto}.progress-table{border-collapse:collapse;min-width:640px;width:100%}.progress-table th,.progress-table td{border-bottom:1px solid #dfe5db;padding:10px;text-align:left}.progress-table th{color:#5f6d63;font-size:.76rem;letter-spacing:0;text-transform:uppercase}.progress-table td{font-weight:700}.empty-chart-state{background:#f7f8f4;border:1px solid #dfe5db;border-radius:8px;display:grid;gap:8px;padding:28px}.empty-chart-state p{color:#5f6d63;line-height:1.5;margin:0}.modal-actions{display:flex;justify-content:flex-end}@media(max-width:980px){.app-shell,.player-shell{grid-template-columns:1fr}.progress-rail{padding:20px}.progress-rail ol{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.player-shell{padding:18px}.progress-rail ol,.option-grid{grid-template-columns:1fr}.video-heading{align-items:flex-start}.session-options{grid-template-columns:1fr}}
