:root{--ink:#1e2633;--ink-soft:#4f5d6f;--paper:#fffdf6;--panel:#fff;--line:#243142;--sky:#dff4ff;--mint:#ccefd9;--leaf:#4fb06d;--sun:#ffd460;--coral:#ff7f66;--teal:#2f9eaa;--lavender:#d9d2ff;--shadow:#1e263329;color:var(--ink);font-synthesis:none;text-rendering:optimizelegibility;background:#f8f1dc;font-family:Aptos Rounded,Trebuchet MS,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:#f8f1dc;min-width:320px}body{min-width:320px;min-height:100vh;color:var(--ink);margin:0;overflow-x:hidden}button,input,textarea,select{min-width:0;font:inherit}button{border:2px solid var(--line);background:var(--coral);color:#1c1b15;min-height:48px;box-shadow:0 4px 0 var(--line);cursor:pointer;border-radius:8px;padding:0 18px;font-weight:800;line-height:1.1;transition:transform .12s,box-shadow .12s,background-color .12s}button:hover:not(:disabled){box-shadow:0 5px 0 var(--line);background:#ff927d;transform:translateY(-1px)}button:active:not(:disabled){box-shadow:0 1px 0 var(--line);transform:translateY(3px)}button:disabled,input:disabled{cursor:not-allowed;opacity:.56;box-shadow:none}input,textarea,select{width:100%;min-height:48px;color:var(--ink);background:#fff;border:2px solid #bcc8d6;border-radius:8px;padding:10px 12px}input:focus,textarea:focus,select:focus,button:focus-visible{outline-offset:2px;outline:3px solid #2f9eaa52}.app-shell{background:linear-gradient(#ffffff9e 1px,#0000 1px) 0 0/36px 36px,linear-gradient(90deg,#ffffff9e 1px,#0000 1px) 0 0/36px 36px,linear-gradient(135deg,#f7edcf 0%,#dff4ff 46%,#e8f6df 100%);place-items:start center;min-height:100vh;padding:28px;display:grid}.study-panel{border:3px solid var(--line);background:linear-gradient(180deg, #fffdf6f5, #fffffffa), var(--panel);width:min(1080px,100%);box-shadow:9px 9px 0 #243142e6, 0 18px 50px var(--shadow);border-radius:8px;gap:22px;padding:30px;display:grid}.study-badge{border:2px solid var(--line);background:var(--sun);color:#3a2c00;border-radius:8px;width:fit-content;max-width:100%;padding:7px 12px;font-size:.9rem;font-weight:800;line-height:1.15}.study-copy{max-width:720px}.study-copy h1,.study-panel>h1{letter-spacing:0;margin:0;font-size:3.4rem;line-height:.98}.study-copy p,.study-panel>p,.study-panel section p,.exercise-form p{color:var(--ink-soft);margin:12px 0 0;font-size:1.05rem;line-height:1.55}.map-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.quest-progress{border:2px solid var(--line);background:linear-gradient(90deg,#dff4fff2,#ecf8eef2),#fff;border-radius:8px;gap:10px;padding:14px 16px;display:grid;box-shadow:4px 4px #243142e6}.quest-progress-copy{color:var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-weight:800;display:flex}.quest-progress-copy span{text-transform:uppercase}.quest-progress-copy strong{color:#2a676f}.quest-track{border:2px solid var(--line);background:#ffffffd6;border-radius:999px;height:14px;overflow:hidden}.quest-track span{background:linear-gradient(90deg, var(--leaf), var(--teal) 55%, var(--sun));border-right:2px solid #24314266;height:100%;transition:width .18s;display:block}.quiet-button{color:var(--ink);background:#fff}.quiet-button:hover:not(:disabled){background:var(--sky)}.island-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:18px;display:grid}.practice-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.practice-choice-button{background:linear-gradient(180deg, #ffffff6b, transparent 70%), var(--sun);text-align:left;align-content:center;justify-items:start;gap:8px;min-height:150px;padding:18px;display:grid}.practice-choice-button:nth-child(2n){background:linear-gradient(180deg, #ffffff6b, transparent 70%), var(--mint)}.practice-choice-button span{text-transform:uppercase;font-size:1rem;font-weight:900}.practice-choice-button strong{font-size:1.8rem;line-height:1.05}.practice-choice-button small{color:#374455;font-weight:800}.all-practice-button{justify-self:start}.planned-review-button{background:linear-gradient(180deg, #ffffff75, transparent 70%), var(--coral);width:min(100%,520px);min-height:118px}.setup-callout{background:#fff7d8;border:2px solid #24314229;border-radius:8px;align-items:start;gap:8px;padding:16px;display:grid}.setup-callout strong{color:var(--ink);font-size:1.25rem;line-height:1.2}.setup-callout p{color:var(--ink-soft);margin:0;line-height:1.45}.setup-callout button{justify-self:start}.study-card{border:2px solid var(--line);background:var(--sun);border-radius:8px;gap:8px;width:min(300px,100%);padding:18px;display:grid;box-shadow:5px 5px #243142e6}.study-card span{color:#5b4700;text-transform:uppercase;font-size:.85rem;font-weight:800;line-height:1.2}.study-card strong{overflow-wrap:anywhere;font-size:1.45rem;line-height:1.12}.study-card p{color:#384456;margin:0;line-height:1.45}.quest-finish-card{width:min(420px,100%)}.island-card{background:linear-gradient(180deg, #ffffff9e, transparent 58%), var(--mint);align-content:start;width:100%;min-height:100%;position:relative}.island-card:nth-child(2n){background:linear-gradient(180deg, #ffffff9e, transparent 58%), var(--lavender)}.island-card:before{content:"";border:2px solid var(--line);background:linear-gradient(90deg, var(--leaf) 0 34%, var(--sun) 34% 66%, var(--teal) 66% 100%);border-radius:8px;width:52px;height:10px;margin-bottom:2px}.section-list{gap:10px;margin-top:8px;display:grid}.section-list>div{background:#ffffffb8;border:2px solid #24314229;border-radius:8px;gap:4px;padding:12px;display:grid}.unit-practice-button{justify-self:start;margin-top:2px}.section-button{width:100%;min-height:64px;color:var(--ink);box-shadow:none;text-align:left;background:#ffffffc7;border:2px solid #24314233;border-radius:8px;justify-items:start;gap:4px;padding:12px;display:grid}.section-button:hover:not(:disabled){background:#fff;box-shadow:3px 3px #2431423d}.section-button:active:not(:disabled){transform:translateY(2px);box-shadow:1px 1px #2431423d}.section-list span{color:var(--ink);text-transform:none}.section-list small{color:var(--ink-soft);line-height:1.42}.exercise-card{border:2px solid var(--line);background:#fff7d8;border-radius:8px;gap:16px;padding:22px;display:grid;box-shadow:5px 5px #243142e6}.exercise-card h2{letter-spacing:0;margin:0;font-size:1.75rem;line-height:1.18}.exercise-card>.quiet-button{justify-self:start}.exercise-form{gap:14px;display:grid}.choice-list{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.choice-option{min-height:48px;color:var(--ink);overflow-wrap:anywhere;background:#fff;border:2px solid #bcc8d6;border-radius:8px;align-items:center;gap:10px;padding:11px 12px;font-weight:700;display:flex}.choice-option:has(input:checked){border-color:var(--teal);background:#e3fbff}.choice-option input{width:20px;min-height:20px;accent-color:var(--teal);flex:0 0 20px}.sentence-order{gap:10px;display:grid}.word-bank{flex-wrap:wrap;gap:10px;display:flex}.word-tile{background:#fff;min-height:44px;padding:9px 14px}.word-tile:disabled{color:#6d7784;background:#e8edf3;box-shadow:2px 2px #2431428c}.ordered-answer{min-height:52px;color:var(--ink);overflow-wrap:anywhere;background:#fff;border:2px dashed #92a2b6;border-radius:8px;padding:13px 14px;font-size:1.05rem;font-weight:900}.order-clear-button{justify-self:start}.answer-input{max-width:520px}.result-line{color:#234f31;background:#ecf8ee;border:2px solid #24314224;border-radius:8px;margin:0;padding:10px 12px;font-weight:800}.answer-feedback{border:2px solid var(--line);background:#fff;border-radius:8px;gap:6px;padding:12px 14px;display:grid}.answer-feedback strong{align-items:center;gap:8px;font-size:1.1rem;display:inline-flex}.feedback-symbol{background:#ffffffad;border:2px solid;border-radius:999px;place-items:center;width:28px;height:28px;font-size:1.2rem;line-height:1;display:inline-grid}.answer-feedback p,.session-summary p{margin:0}.answer-feedback.correct{color:#236237;background:#e8f8de;border-color:#2f7d45}.answer-feedback.incorrect{color:#943125;background:#ffe7dc;border-color:#b44335}.answer-feedback.correct p{color:#236237}.answer-feedback.incorrect p{color:#943125}.session-summary{background:#fff;border:2px solid #24314229;border-radius:8px;gap:8px;padding:12px 14px;font-weight:800;display:grid}.study-panel>form,.auth-gate{background:#ffffffc2;border:2px solid #24314229;border-radius:8px;gap:10px;width:100%;max-width:620px;padding:16px;display:grid}.study-panel>form label,.auth-gate label{color:var(--ink);font-size:.92rem;font-weight:800}.study-panel>form button,.auth-gate button{justify-self:start}.study-panel>section[aria-label=Children]:not(:empty),.study-panel>section[aria-label=Weak\ points],.study-panel>section[aria-label=Review\ assignments]{background:#ffffffa8;border:2px solid #24314224;border-radius:8px;flex-wrap:wrap;gap:10px;padding:16px;display:flex}.study-panel>section[aria-label=Children]:empty{display:none}.study-panel>section[aria-label=Weak\ points] h2{letter-spacing:0;flex-basis:100%;margin:0;font-size:1.35rem}.study-panel ul{gap:8px;width:100%;margin:0;padding:0;list-style:none;display:grid}.study-panel li{color:var(--ink-soft);overflow-wrap:anywhere;background:#fff;border:1px solid #d7e0ea;border-radius:8px;padding:10px 12px}.auth-gate{width:min(480px,100% - 32px);margin:32px auto}.auth-shell{align-items:center}.auth-gate h1{color:var(--ink);letter-spacing:0;margin:8px 0 6px;font-size:clamp(2.4rem,8vw,4rem);line-height:.98}.auth-gate strong{margin-bottom:4px;font-size:1rem;display:block}.auth-gate p{color:var(--ink-soft);margin:0;line-height:1.4}.auth-actions{flex-wrap:wrap;gap:10px;display:flex}.account-bar{z-index:20;color:var(--ink-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf5f0;border-bottom:2px solid #2431422e;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;padding:10px 18px;font-weight:800;display:flex;position:sticky;top:0}.account-bar button{min-height:38px;padding:8px 12px}.demo-bar{z-index:20;color:var(--ink-soft);background:#fff7d8;border-bottom:2px solid #2431422e;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;padding:10px 16px;font-weight:800;display:flex;position:sticky;top:0}.demo-bar strong{color:var(--ink)}.parent-action-row{padding-top:4px}.parent-primary-actions{background:#fff7d8;border:2px solid #24314229;border-radius:8px;padding:12px}.back-button{justify-self:start}.empty-state{color:var(--ink-soft);background:#ffffffb8;border:2px dashed #24314247;border-radius:8px;padding:18px;font-weight:800;line-height:1.4}.history-list{gap:12px}.history-item{border:2px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid;box-shadow:4px 4px #243142e6}.history-main{gap:4px;min-width:0;display:grid}.history-main span,.history-main strong,.history-main p{overflow-wrap:anywhere}.history-main span{color:#5b4700;text-transform:uppercase;font-size:.85rem;font-weight:800}.history-main strong{color:var(--ink);text-transform:capitalize;font-size:1.2rem}.history-main p{margin:0}.history-meta{flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:240px;display:flex}.history-meta small,.result-pill,.history-tags span{min-height:28px;color:var(--ink-soft);background:#fff;border:1px solid #24314233;border-radius:8px;align-items:center;padding:4px 8px;font-size:.85rem;font-weight:800;line-height:1.1;display:inline-flex}.result-pill.correct{color:#235b34;background:#dcf7e3}.result-pill.incorrect{color:#713322;background:#ffe1da}.history-tags{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.mistake-summary{background:#fff7d8;border:2px solid #24314229;border-radius:8px;grid-template-columns:repeat(2,minmax(130px,1fr)) auto;align-items:stretch;gap:12px;padding:14px;display:grid}.mistake-summary div{background:#ffffffb8;border:1px solid #24314224;border-radius:8px;gap:4px;padding:10px 12px;display:grid}.mistake-summary span{color:var(--ink-soft);text-transform:uppercase;font-size:.84rem;font-weight:800}.mistake-summary strong{color:var(--ink);font-size:1.7rem;line-height:1}.mistake-list{gap:12px}.mistake-item{border:2px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid;box-shadow:4px 4px #243142e6}.mistake-main{gap:8px;min-width:0;display:grid}.mistake-main strong,.mistake-main p{overflow-wrap:anywhere}.mistake-main strong{color:var(--ink);font-size:1.06rem;line-height:1.35}.mistake-main p{color:var(--ink-soft);margin:0}.mistake-kicker{flex-wrap:wrap;gap:8px;display:flex}.mistake-kicker span{color:#5b4700;text-transform:uppercase;background:#fff;border:1px solid #24314233;border-radius:8px;align-items:center;min-height:26px;padding:3px 8px;font-size:.8rem;font-weight:800;display:inline-flex}@media (width<=720px){.app-shell{background-size:28px 28px,28px 28px,auto;place-items:start stretch;padding:14px}.study-panel{gap:18px;width:100%;padding:18px;box-shadow:5px 5px #243142e6}.study-copy h1,.study-panel>h1{font-size:2.35rem;line-height:1.04}.study-copy p,.study-panel>p,.study-panel section p,.exercise-form p{font-size:1rem}.map-actions{grid-template-columns:1fr;display:grid}.quest-progress{padding:12px}.map-actions button,.map-actions .study-badge,.study-panel>form button,.auth-gate button{width:100%}.island-grid,.practice-choice-grid,.choice-list{grid-template-columns:1fr}.study-card,.exercise-card{width:100%;padding:16px;box-shadow:4px 4px #243142e6}.exercise-card h2{font-size:1.4rem}.study-panel>form,.auth-gate,.study-panel>section[aria-label=Children]:not(:empty),.study-panel>section[aria-label=Weak\ points],.study-panel>section[aria-label=Review\ assignments]{padding:14px}.study-panel>section[aria-label=Children]:not(:empty),.study-panel>section[aria-label=Weak\ points],.study-panel>section[aria-label=Review\ assignments],.auth-actions{grid-template-columns:1fr;display:grid}.history-item,.mistake-summary,.mistake-item{grid-template-columns:1fr}.mistake-summary button{width:100%}.history-meta{justify-content:flex-start;max-width:none}}
