:root{font-family:Segoe UI,Arial,sans-serif;color:#12354a;background:#f5f7f1;font-synthesis:none;--ink: #12354a;--muted: #5e7380;--green: #145a4a;--green-2: #0f7d68;--mint: #e3f4ed;--line: #ccdcd5;--paper: #fffefb;--warm: #fff2cf;--blue: #e9f2ff;--lavender: #f0eafd}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(150deg,#f9fbf6,#eef5f1 60%,#f7f2e8)}button,a{font:inherit}button{color:inherit}button:focus-visible,a:focus-visible{outline:4px solid #f4b73e;outline-offset:3px}body.storybridge-workspace-active #learnvello-internal-analytics-consent.lv-compact{display:none!important}.app-shell{min-height:100vh}.app-header{height:76px;padding:0 clamp(20px,4vw,64px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fffefbf2}.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:var(--green);color:#fff;font:800 15px/1 Segoe UI,Arial,sans-serif}.brand strong,.brand small{display:block}.brand strong{font:800 18px/1.15 Segoe UI,Arial,sans-serif}.brand small{color:var(--muted);margin-top:3px;font-size:13px}.app-header nav{display:flex;align-items:center;gap:12px}.app-header nav a,.app-header nav button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 15px;text-decoration:none;color:var(--ink);font-weight:700;cursor:pointer}.home{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:62px 0 48px}.hero{text-align:center;max-width:840px;margin:0 auto 34px}.eyebrow{margin:0 0 10px;text-transform:uppercase;letter-spacing:.14em;color:var(--green-2);font:800 13px/1.2 Segoe UI,Arial,sans-serif}.hero h1{margin:0;font:800 clamp(38px,5vw,64px)/1.02 "Segoe UI",Arial,sans-serif;letter-spacing:-.035em}.hero>p:not(.eyebrow){max-width:700px;margin:20px auto;color:var(--muted);font-size:20px;line-height:1.5}.inventory{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.inventory span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:9px 14px}.inventory strong{color:var(--green-2)}.access-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;margin:0 0 20px;border:1px solid #b7d9cc;border-radius:20px;background:var(--mint)}.access-strip strong,.access-strip span{display:block}.access-strip span{margin-top:4px;color:#48675d}.access-strip a{flex:0 0 auto;color:var(--green);font-weight:700}.stage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.stage-card{min-height:360px;padding:28px;border:1px solid var(--line);border-radius:28px;background:#fff;display:flex;flex-direction:column;box-shadow:0 16px 36px #1a433d12}.stage-card.stage-1{background:linear-gradient(160deg,#fff 0%,var(--warm) 150%)}.stage-card.stage-2{background:linear-gradient(160deg,#fff 0%,var(--blue) 150%)}.stage-card.stage-3{background:linear-gradient(160deg,#fff 0%,var(--lavender) 150%)}.stage-number{width:46px;height:46px;margin-bottom:22px;border-radius:15px;display:grid;place-items:center;background:var(--ink);color:#fff;font:800 20px/1 Segoe UI,Arial,sans-serif}.stage-card h2{margin:0 0 12px;font:800 28px/1.1 Segoe UI,Arial,sans-serif}.stage-card>p:not(.eyebrow){margin:0;color:var(--muted);font-size:17px;line-height:1.45}.stage-card dl{display:flex;gap:28px;margin:auto 0 22px}.stage-card dl div{display:grid}.stage-card dt{color:var(--muted);font-size:13px}.stage-card dd{margin:3px 0 0;font:800 20px/1 Segoe UI,Arial,sans-serif}.stage-card button,.primary,.link-button{border:0;border-radius:16px;background:var(--green);color:#fff;padding:15px 18px;font-weight:800;cursor:pointer;display:flex;justify-content:space-between;align-items:center;text-decoration:none}.stage-card button:hover,.primary:hover{background:#0e4b3e}.progress-note{text-align:center;color:var(--muted);margin:26px 0 0}.reading-workspace,.question-workspace{height:calc(100dvh - 76px);min-height:0;padding:16px clamp(18px,3vw,48px) 18px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}.workspace-progress{display:flex;justify-content:space-between;color:var(--muted);font-size:15px;padding:0 2px 10px}.story-text{align-self:stretch;width:min(1180px,100%);max-height:100%;overflow:auto;margin:0 auto;padding:clamp(26px,3.2vw,46px) clamp(28px,4vw,58px);border:1px solid var(--line);border-radius:28px;background:var(--paper);box-shadow:0 18px 44px #20453b14;display:flex;flex-direction:column;justify-content:center}.story-text h1{margin:0 0 22px;font:800 clamp(30px,3.4vw,46px)/1.05 "Segoe UI",Arial,sans-serif}.passage-copy{margin:0;font-size:clamp(21px,1.9vw,28px);line-height:1.54;letter-spacing:.005em}.reading-actions{width:min(1180px,100%);margin:12px auto 0;display:flex;justify-content:space-between;gap:20px;align-items:center}.audio-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.audio-actions button{border:1px solid var(--line);background:#fff;border-radius:14px;padding:12px 15px;font-weight:700;cursor:pointer}.audio-actions button:disabled{opacity:.45;cursor:not-allowed}.audio-actions>span{color:var(--muted);font-size:13px}.reading-actions .primary{min-width:210px;flex:0 0 auto}.question-workspace{padding-bottom:16px}.question-grid{min-height:0;display:grid;grid-template-columns:minmax(340px,.9fr) minmax(430px,1.1fr);gap:16px}.question-grid>div,.question-card{min-height:0;overflow:auto}.story-text.compact{width:100%;padding:28px;border-radius:24px;box-shadow:none;display:block}.story-text.compact h1{font-size:28px;margin-bottom:18px}.story-text.compact .passage-copy{font-size:20px;line-height:1.52}.question-grid>div .audio-actions{padding:12px 4px 0}.question-card{padding:clamp(26px,3vw,44px);border:1px solid var(--line);border-radius:24px;background:#fff}.question-card h2{margin:0 0 26px;font:800 clamp(27px,3vw,38px)/1.16 "Segoe UI",Arial,sans-serif}.options{display:grid;gap:11px}.options button{width:100%;min-height:62px;padding:13px 16px;display:flex;align-items:center;gap:13px;text-align:left;border:2px solid transparent;border-radius:16px;background:#eff5f2;cursor:pointer;font-weight:700;font-size:17px}.options button>span{flex:0 0 34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#fff}.options button:hover:not(:disabled),.options button.selected{border-color:var(--green);background:#e5f2ed}.options button.correct{border-color:#18845e;background:#dff4e9}.options button.incorrect{border-color:#bd5a4b;background:#fbe7e2}.feedback{margin-top:14px;padding:15px 17px;border-radius:15px}.feedback.correct{background:#dff4e9;color:#175d45}.feedback.incorrect{background:#fff0df;color:#814426}.feedback p{margin:5px 0 0;line-height:1.4}.question-actions{display:flex;justify-content:flex-end;margin-top:18px}.question-actions .primary{min-width:180px}.primary:disabled{opacity:.42;cursor:not-allowed}.result-workspace{min-height:calc(100vh - 76px);display:grid;place-items:center;padding:30px}.result-card{width:min(620px,100%);padding:48px;text-align:center;border:1px solid var(--line);border-radius:32px;background:#fff;box-shadow:0 22px 60px #20453b1a}.result-mark{width:72px;height:72px;margin:0 auto 20px;display:grid;place-items:center;border-radius:50%;background:var(--mint);color:var(--green);font-size:35px;font-weight:800}.result-card h1{margin:0;font:800 38px/1.1 Segoe UI,Arial,sans-serif}.result-score{font-size:22px;line-height:1.45}.result-card .primary{margin:26px auto 0;justify-content:center}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;padding:20px;display:grid;place-items:center;background:#0c253094;z-index:10}.access-dialog{position:relative;width:min(560px,100%);padding:42px;border-radius:28px;background:#fff;box-shadow:0 30px 80px #00000040}.access-dialog h2{margin:0 0 14px;font:800 32px/1.1 Segoe UI,Arial,sans-serif}.access-dialog p:not(.eyebrow){color:var(--muted);font-size:18px;line-height:1.5}.access-dialog>div{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.access-dialog>div button{border:1px solid var(--line);border-radius:14px;background:#fff;padding:13px 15px;cursor:pointer}.dialog-close{position:absolute;top:16px;right:16px;width:36px;height:36px;border:0;border-radius:50%;background:#eef3f1;cursor:pointer;font-size:22px}@media(max-width:1100px)and (orientation:landscape){.app-header{height:64px;padding:0 18px}.brand small{display:none}.app-header nav{gap:8px}.app-header nav a,.app-header nav button{padding:8px 12px}.reading-workspace,.question-workspace{height:calc(100dvh - 64px);padding:10px 14px 12px}.workspace-progress{padding-bottom:7px;font-size:13px}.story-text{padding:20px 26px;border-radius:22px;justify-content:flex-start}.story-text h1{margin-bottom:14px;font-size:clamp(26px,3vw,34px)}.passage-copy{font-size:clamp(18px,2.1vw,22px);line-height:1.42}.reading-actions{margin-top:8px}.audio-actions button{padding:9px 12px}.reading-actions .primary{min-width:180px;padding:12px 15px}.question-grid{grid-template-columns:minmax(300px,.82fr) minmax(390px,1.18fr);gap:10px}.story-text.compact{padding:20px}.story-text.compact h1{font-size:24px;margin-bottom:12px}.story-text.compact .passage-copy{font-size:17px;line-height:1.4}.question-card{padding:22px}.question-card h2{margin-bottom:16px;font-size:clamp(24px,2.8vw,32px)}.options{gap:8px}.options button{min-height:52px;padding:10px 13px}.question-actions{margin-top:12px}}@media(max-width:900px)and (orientation:portrait){.stage-grid{grid-template-columns:1fr}.stage-card{min-height:0}.stage-card dl{margin-top:28px}.question-grid{grid-template-columns:1fr;overflow:auto}.question-grid>div,.question-card{overflow:visible}.question-workspace{height:auto;min-height:calc(100dvh - 76px);overflow:visible}}@media(max-width:640px){.app-header{height:auto;min-height:70px;padding:12px 16px}.brand small,.app-header nav a{display:none}.home{width:min(100% - 24px,1180px);padding-top:38px}.hero h1{font-size:39px}.hero>p:not(.eyebrow){font-size:18px}.access-strip,.reading-actions{align-items:stretch;flex-direction:column}.reading-workspace{height:auto;min-height:calc(100dvh - 70px);overflow:visible;padding:14px 12px 18px}.story-text{padding:26px 22px;border-radius:22px;max-height:none;overflow:visible;display:block}.passage-copy{font-size:22px}.workspace-progress{font-size:13px}.audio-actions button{flex:1 1 auto}.reading-actions .primary{width:100%}.question-workspace{height:auto;min-height:calc(100dvh - 70px);overflow:visible;padding:14px 12px 18px}.question-grid{grid-template-columns:1fr;overflow:visible}.question-grid>div,.question-card{overflow:visible}.question-card{padding:24px 18px}.result-card,.access-dialog{padding:34px 22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}.stars{display:inline-flex;gap:.15rem;font-size:1.65rem;line-height:1;color:#cbd5d1;letter-spacing:.02em}.stars .earned{color:#f4b73e}.progress-pill{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px;cursor:pointer;color:var(--ink)}.progress-note button{border:0;background:transparent;color:var(--green);font-weight:800;text-decoration:underline;cursor:pointer}.result-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:26px}.result-actions>button:not(.primary){border:1px solid var(--line);background:#fff;border-radius:16px;padding:15px 18px;font-weight:800;cursor:pointer}.result-card>.stars{margin:20px auto 4px;font-size:2.4rem}.progress-workspace,.review-workspace{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:34px 0 50px}.progress-hero,.review-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.progress-hero h1,.review-heading h1{margin:0;font:800 clamp(30px,4vw,46px)/1.06 "Segoe UI",Arial,sans-serif}.progress-tabs{display:flex;gap:8px;padding:5px;border-radius:999px;background:#e8f0ec}.progress-tabs button{border:0;border-radius:999px;background:transparent;padding:10px 16px;font-weight:800;cursor:pointer}.progress-tabs button.active{background:#fff;box-shadow:0 3px 12px #0f332c14}.reward-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.reward-summary>div{padding:26px;border:1px solid var(--line);border-radius:24px;background:#fff;text-align:center}.reward-summary strong{display:block;font-size:38px;color:var(--green)}.reward-summary span{color:var(--muted);font-weight:700}.stage-progress-list{display:grid;gap:12px}.stage-progress-list article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;border:1px solid var(--line);border-radius:20px;background:#fff}.stage-progress-list article>div:first-child{display:flex;align-items:center;gap:14px}.stage-progress-list .stage-number{margin:0;width:40px;height:40px}.stage-progress-list strong,.stage-progress-list small{display:block}.stage-progress-list small{margin-top:4px;color:var(--muted)}.parent-progress-table{display:grid;gap:14px}.parent-progress-table>article{padding:20px 22px;border:1px solid var(--line);border-radius:22px;background:#fff}.parent-progress-table>article>div:first-child strong,.parent-progress-table>article>div:first-child span{display:block}.parent-progress-table>article>div:first-child span{margin-top:4px;color:var(--muted)}.parent-metrics{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:14px 0}.parent-metrics>span:not(.stars){padding:6px 10px;border-radius:999px;background:#eef4f1}.parent-metrics .stars{font-size:1.25rem}.historical-note{margin:8px 0 12px;color:var(--muted);font-size:.92rem}.attempt-buttons{display:flex;gap:8px;flex-wrap:wrap}.attempt-buttons button{border:1px solid var(--line);border-radius:12px;background:#fff;padding:9px 12px;font-weight:800;cursor:pointer}.review-heading{align-items:flex-start}.review-heading>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.review-heading .stars{font-size:1.3rem}.review-list{display:grid;gap:14px}.review-item{padding:22px;border:1px solid var(--line);border-left-width:5px;border-radius:20px;background:#fff}.review-item.correct{border-left-color:#18845e}.review-item.incorrect{border-left-color:#bd5a4b}.review-item.historical{border-left-color:#94a3b8;background:#f8faf9}.review-item h2{margin:0 0 12px;font-size:21px;line-height:1.3}.review-item p{margin:7px 0;line-height:1.45}.review-explanation{padding-top:8px;border-top:1px solid #e8efeb}.review-footer{display:flex;justify-content:flex-end;margin-top:20px}.sound-toggle{white-space:nowrap}@media(max-width:760px){.progress-workspace,.review-workspace{width:min(100% - 24px,1180px);padding-top:22px}.progress-hero,.review-heading{align-items:flex-start;flex-direction:column}.reward-summary{grid-template-columns:1fr}.stage-progress-list article{align-items:flex-start}.parent-metrics{align-items:flex-start}.app-header nav .sound-toggle{display:none}.result-actions{flex-direction:column}.result-actions>button{width:100%;justify-content:center}}.tier-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin:1.1rem 0 1rem}.tier-choice{display:flex;min-height:9.5rem;flex-direction:column;align-items:stretch;gap:.35rem;padding:1rem 1.05rem;text-align:left;border:1px solid rgba(46,73,94,.16);border-radius:18px;background:#ffffffc7;color:inherit;box-shadow:0 10px 28px #2337460f}.tier-choice:hover,.tier-choice:focus-visible{border-color:#2e495e5c;transform:translateY(-1px)}.tier-choice.active{border-color:#27657e94;box-shadow:0 0 0 3px #27657e17,0 12px 30px #23374614}.tier-choice-top{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.tier-choice-top strong{font-size:1.08rem}.tier-kicker{font-weight:700;color:#355f70}.tier-choice small{margin-top:auto;opacity:.72}.tier-lock{display:inline-flex;align-items:center;min-height:1.6rem;padding:.18rem .55rem;border-radius:999px;background:#355f701a;font-size:.72rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.selected-tier-heading{margin:1.2rem 0 .75rem}.selected-tier-heading h2,.selected-tier-heading p{margin-bottom:.35rem}.progress-tier-switch{display:inline-flex;gap:.35rem;padding:.3rem;margin:0 0 1rem;border-radius:999px;background:#2b485912}.progress-tier-switch button{border:0;border-radius:999px;background:transparent;padding:.55rem .9rem}.progress-tier-switch button.active{background:#fff;box-shadow:0 3px 12px #2337461a}@media(max-width:720px){.tier-picker{grid-template-columns:1fr}.tier-choice{min-height:0}}
