:root{--bg:#f7f8f3;--panel:#fff;--sidebar:#fdfdf9;--ink:#293b31;--muted:#7d857c;--line:#e6e9df;--green:#d8eaa8;--green-ink:#526d38;--orange:#f2ddcd;--orange-ink:#b46b40;--purple:#e7e2f3;--purple-ink:#8a76a6;--blue:#dfebef;--blue-ink:#688b9d;--shadow:0 6px 24px #24382b05;--hero:#eaf0da;--field:#fff;--radius:20px;color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);font-size:14px}
:root[data-theme=dark]{--bg:#171e1a;--panel:#222c25;--sidebar:#1b241e;--ink:#e4ebdf;--muted:#a5b09f;--line:#354136;--green:#3b512d;--green-ink:#c6e39e;--orange:#523c30;--orange-ink:#edba95;--purple:#3e354f;--purple-ink:#c3afe0;--blue:#2e444c;--blue-ink:#a5ccd8;--hero:#2a3826;--field:#1c261f;--shadow:none;color-scheme:dark}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit;text-decoration:none}p{line-height:1.75;margin:0 0 16px}h1,h2,h3{font-weight:600;line-height:1.25;margin:0}h1{font-size:34px;letter-spacing:-1.1px}h2{font-size:22px;letter-spacing:-.6px}h3{font-size:16px;letter-spacing:-.2px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #a8b97d;outline-offset:4px}main:focus{outline:none}a:hover{color:var(--green-ink)}.icon{width:20px;height:20px;flex-shrink:0;vertical-align:middle}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;padding:38px 22px 20px;background:var(--sidebar);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:20}.brand{display:flex;gap:10px;align-items:center;margin:0 4px 55px}.brand img{width:39px;height:39px;border-radius:11px}.brand>span{font-size:22px;font-weight:750;letter-spacing:-1px}.brand-light{font-weight:400}.brand small{display:block;font-size:7px;letter-spacing:1.65px;font-weight:600;color:var(--muted);margin-top:5px}.nav-label,.eyebrow{font-size:10px;font-weight:650;letter-spacing:1.8px;color:var(--muted)}.nav-label{margin:0 16px 16px}.sidebar nav{display:grid;gap:7px}.nav-item{display:flex;gap:13px;align-items:center;padding:13px 16px;border-radius:11px;color:var(--muted);font-size:13px;font-weight:500;min-height:46px}.nav-item .icon{width:19px;height:19px}.nav-item:hover{background:var(--bg);color:var(--ink)}.nav-item.active{background:var(--green);color:var(--ink)}.nav-count{margin-left:auto;background:var(--panel);border-radius:6px;padding:2px 6px;font-size:10px}.sidebar-bottom{margin-top:auto;padding-top:32px}.local-card{border:1px solid var(--line);border-radius:14px;padding:20px 18px;margin-bottom:20px;background:linear-gradient(140deg,var(--bg),var(--panel))}.local-card>.icon{color:var(--green-ink);width:21px;height:21px;margin-bottom:14px}.local-card strong{display:block;font-size:17px;line-height:1.45;letter-spacing:-.5px}.local-card p{font-size:11px;color:var(--muted);line-height:1.7;margin:9px 0 18px}.local-card a{font-size:11px;display:flex;align-items:center;justify-content:space-between}.local-card a .icon{width:16px}.version{display:flex;align-items:center;gap:7px;font-size:8px;letter-spacing:1.4px;color:var(--muted);padding:24px 15px 0}.version>span:last-child{margin-left:auto}.status-dot{width:6px;height:6px;display:inline-block;border-radius:50%;background:#809b54}.workspace{margin-left:248px;min-height:100vh}.topbar{height:88px;padding:0 46px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:var(--bg)}.breadcrumb{font-size:11px;color:var(--muted)}.breadcrumb span{margin:0 12px;color:#bcc0b7}.top-actions{display:flex;align-items:center;gap:19px}.streak{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted)}.streak .icon{color:#cd8953;width:18px;height:18px}.streak b{font-size:12px;color:var(--ink)}.top-divider{height:20px;width:1px;background:var(--line)}.avatar{display:grid;place-items:center;height:34px;width:34px;border-radius:50%;background:#eadbc7;color:#7b6650;font-size:12px;font-weight:600}main{max-width:1500px;margin:auto;padding:42px 46px 24px;min-height:calc(100vh - 145px)}.page-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px}.eyebrow{margin:0 0 12px;font-size:9px}.page-intro{color:var(--muted);font-size:12px;margin:12px 0 0;line-height:1.7}.btn{border:0;border-radius:9px;min-height:44px;padding:12px 19px;display:inline-flex;justify-content:center;align-items:center;gap:9px;font-size:11px;font-weight:600;line-height:1.4;transition:background .16s,transform .16s;white-space:normal}.btn .icon{width:16px;height:16px}.btn:hover:not(:disabled){transform:translateY(-1px)}.primary{background:var(--green);color:var(--ink)}.primary:hover:not(:disabled){filter:brightness(.97)}.primary.dark{background:#2c4031;color:#fff}.secondary{background:var(--panel);color:var(--ink);border:1px solid var(--line)}.quiet{background:transparent;color:var(--muted);padding:9px 4px}.quiet:hover{color:var(--ink)}.btn:disabled{opacity:.5}.full{width:100%}.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.hero{border:1px solid #dfe6cb;border-radius:var(--radius);background:var(--hero);padding:32px 34px 27px;display:grid;grid-template-columns:1.1fr 1fr;overflow:hidden;position:relative;min-height:305px}.hero-copy{z-index:1}.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid #bfcba6;border-radius:99px;padding:6px 9px;font-size:8px;letter-spacing:1.2px;font-weight:600;color:var(--green-ink)}.pill .status-dot{height:4px;width:4px}.hero h2{font-family:Georgia,"Times New Roman",serif;font-size:37px;font-weight:400;line-height:1.17;letter-spacing:-1.15px;margin:19px 0 13px}.hero h2 em{font-style:italic;color:#6d8556}.hero p{font-size:11px;line-height:1.8;color:#758168;margin:0 0 21px}.hero-actions{display:flex;align-items:center;gap:17px}.hero-actions>span{font-size:9px;display:flex;align-items:center;gap:5px;color:var(--muted)}.hero-actions>span .icon{width:13px;height:13px}.hero-footnote{margin-top:20px;display:flex;align-items:center;flex-wrap:wrap;gap:7px;font-size:8px;color:var(--muted)}.hero-footnote .icon{width:12px;height:12px;color:var(--green-ink)}.hero-footnote>span{padding:0 2px}.hero-visual{position:relative;display:flex;align-items:center;justify-content:center}.hq-art{width:calc(100% + 45px);min-width:300px;max-height:300px;overflow:visible}.art-label{position:absolute;bottom:-8px;right:9px;font-size:7px;letter-spacing:2.1px;color:#8a997a}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:23px 0 36px}.stat-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:21px;display:flex;gap:16px;align-items:center;box-shadow:var(--shadow)}.stat-icon,.family-icon{height:42px;width:42px;display:inline-grid;place-items:center;border-radius:12px;flex-shrink:0;background:var(--green);color:var(--green-ink)}.stat-icon .icon{width:20px;height:20px}.orange{--accent:var(--orange);--accent-ink:var(--orange-ink)}.purple{--accent:var(--purple);--accent-ink:var(--purple-ink)}.blue{--accent:var(--blue);--accent-ink:var(--blue-ink)}.green{--accent:var(--green);--accent-ink:var(--green-ink)}.stat-icon.orange,.stat-icon.purple,.stat-icon.blue,.stat-icon.green,.family-icon.orange,.family-icon.purple,.family-icon.blue,.family-icon.green{background:var(--accent);color:var(--accent-ink)}.stat-card>div{min-width:0}.stat-label{display:block;font-size:10px;color:var(--muted);margin-bottom:5px}.stat-card strong{display:block;font-size:26px;font-weight:600;letter-spacing:-1px}.stat-card strong small{font-size:11px;font-weight:400;color:var(--muted);letter-spacing:0}.stat-note{font-size:8px;color:var(--muted);display:block;margin-top:5px}.dashboard-bottom{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:24px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.section-head .eyebrow{font-size:8px;margin-bottom:8px;letter-spacing:1.5px}.section-head h2{font-size:20px}.text-link{font-size:10px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.text-link .icon{width:14px;height:14px}.family-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.family-grid.compact{gap:13px}.family-card{display:block;background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:22px;transition:transform .2s,box-shadow .2s}.family-card:hover{transform:translateY(-3px);box-shadow:0 8px 30px #24382b0a;color:var(--ink)}.family-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.family-card .family-icon{background:var(--accent);color:var(--accent-ink)}.family-card h3{font-size:16px}.family-card p{font-size:10px;color:var(--muted);margin:8px 0 28px}.family-card-bottom{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:var(--muted);gap:8px;margin-bottom:14px}.family-card-bottom .icon{width:16px;height:16px;color:var(--ink)}.dot-separator{margin:0 4px}.progress-track{height:4px;background:var(--line);border-radius:20px;overflow:hidden}.progress-track>span{display:block;height:100%;background:#a9c774;border-radius:20px;transition:width .3s}.compact .family-card{padding:18px 15px}.compact .family-card h3{font-size:12px;letter-spacing:-.3px}.compact .family-card p{font-size:9px;min-height:16px;margin-bottom:20px}.compact .family-card-top{margin-bottom:20px}.compact .family-icon{width:35px;height:35px;border-radius:10px}.compact .family-icon .icon{width:17px;height:17px}.compact .family-card-bottom{font-size:8px}.compact .family-card-bottom .dot-separator{margin:0 1px}.daily-card{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:22px}.daily-card .section-head{margin-bottom:22px}.daily-card h3{font-size:13px}.daily-card .section-head>.icon{color:#b29b65;width:18px}.daily-total{display:flex;align-items:baseline;gap:7px;margin-bottom:14px}.daily-total strong{font-size:32px;font-weight:500;letter-spacing:-1px}.daily-total span{font-size:10px;color:var(--muted)}.daily-card p{font-size:10px;color:var(--muted);margin:13px 0 16px;line-height:1.7}.daily-plan{border-top:1px solid var(--line);padding-top:16px;display:grid;gap:10px}.daily-plan>span{display:flex;align-items:center;gap:8px;font-size:9px;color:var(--muted)}.daily-plan .icon{width:14px;height:14px}.backup-nudge,.note{display:flex;align-items:center;gap:10px;margin-top:26px;font-size:11px;color:var(--muted);line-height:1.7}.backup-nudge{border:1px dashed var(--line);border-radius:12px;padding:15px}.backup-nudge .text-link{margin-left:auto}.backup-nudge>.icon,.note>.icon{height:17px;width:17px}.callout{display:flex;gap:16px;background:var(--hero);border:1px solid var(--line);border-radius:14px;padding:24px;margin:0 0 28px}.callout>.icon{color:var(--green-ink);margin-top:2px}.callout strong{font-size:13px}.callout p{font-size:12px;color:var(--muted);margin:7px 0 0}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}.back-link{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;margin:0 0 22px}.back-link .icon{width:15px;height:15px}.family-banner{display:flex;align-items:center;gap:24px;background:var(--accent);border-radius:var(--radius);padding:28px;margin-bottom:25px}.family-banner>div:nth-child(2){max-width:620px}.family-banner h2{font-size:23px;margin-bottom:10px}.family-banner p{font-size:12px;margin:0;opacity:.75}.family-banner .eyebrow{font-size:8px;color:var(--accent-ink)}.family-banner .btn{margin-left:auto;flex-shrink:0}.large-icon{display:grid;place-items:center;min-width:65px;height:65px;border:1px solid var(--accent-ink);border-radius:18px;color:var(--accent-ink);opacity:.8}.large-icon .icon{width:30px;height:30px}.lesson-list{background:var(--panel);border:1px solid var(--line);border-radius:15px;overflow:hidden}.lesson-row{display:flex;gap:20px;align-items:center;padding:20px 24px;border-bottom:1px solid var(--line)}.lesson-row:last-child{border-bottom:0}.lesson-row:hover{background:var(--bg)}.lesson-number{font-size:10px;color:var(--muted)}.lesson-body{display:grid;gap:6px;flex:1}.lesson-body strong{font-size:13px}.lesson-body>span{font-size:11px;color:var(--muted)}.number-badge{font-family:ui-monospace,SFMono-Regular,monospace;font-size:12px;white-space:nowrap;font-weight:600;background:var(--bg);border:1px solid var(--line);padding:7px 9px;border-radius:7px}.transport{font-size:10px;color:var(--muted);min-width:74px}.chip{display:inline-flex;align-items:center;justify-content:center;gap:5px;background:var(--bg);border:1px solid var(--line);border-radius:99px;padding:5px 10px;font-size:9px;white-space:nowrap;font-weight:500;line-height:1.2}.chip.new{color:var(--muted)}.chip.learning{color:var(--orange-ink);background:var(--orange);border-color:transparent}.chip.reviewing{color:var(--blue-ink);background:var(--blue);border-color:transparent}.chip.mastered{color:var(--green-ink);background:var(--green);border-color:transparent}.chip.blue,.chip.green,.chip.purple,.chip.orange{background:var(--accent);color:var(--accent-ink);border-color:transparent}.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:26px}.lesson-layout>div>.card{margin-bottom:20px}.protocol-card{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--accent)}.protocol-card .eyebrow{color:var(--accent-ink)}.big-port{font-size:60px;letter-spacing:-2px;line-height:1;font-weight:500}.protocol-meta{display:flex;flex-direction:column;align-items:flex-end;gap:9px}.protocol-meta>span:last-child{font-size:9px;color:var(--accent-ink);max-width:170px;text-align:right;line-height:1.6}.protocol-meta .chip{background:var(--panel)}.lesson-section h2{margin:10px 0 18px;font-size:24px}.lesson-section p{font-size:13px}.step-label{font-size:9px;letter-spacing:1.6px;color:var(--muted)}.exam-note{display:flex;gap:12px;background:var(--bg);border-left:3px solid #b9c795;padding:18px;border-radius:0 10px 10px 0;margin-top:22px}.exam-note>.icon{width:17px;height:17px;margin-top:2px;color:var(--green-ink)}.exam-note strong{font-size:11px}.exam-note p{font-size:11px;color:var(--muted);margin:6px 0 0}.memory-scene{display:flex;align-items:flex-start;gap:13px;padding:20px;background:var(--hero);border-radius:12px;margin:16px 0}.memory-scene>.icon{color:var(--green-ink);margin-top:3px}.memory-scene p{font-family:Georgia,serif;font-size:19px;line-height:1.65;margin:0;overflow-wrap:anywhere}.lesson-aside .card{position:sticky;top:24px;padding:24px}.lesson-aside h3{margin:17px 0 9px;font-size:19px}.lesson-aside p{font-size:11px;color:var(--muted);line-height:1.8}.skill-list{display:grid;gap:15px;padding:22px 0;margin-top:20px;border-top:1px solid var(--line)}.skill-list>div{display:flex;justify-content:space-between;gap:10px;font-size:10px}.skill-list>div>span{display:flex;gap:6px;align-items:center}.skill-list .icon{width:12px;height:12px;color:var(--muted)}.skill-list small{font-size:9px;color:var(--muted)}.small-tip{padding:26px}.small-tip h3{font-family:Georgia,serif;font-weight:400;font-size:23px;line-height:1.35}.source-line{display:flex;align-items:center;gap:7px;font-size:9px;color:var(--muted);line-height:1.7;flex-wrap:wrap}.source-line .icon{height:13px;width:13px}.source-line a{text-decoration:underline}details{border-top:1px solid var(--line);padding-top:18px;margin-top:22px}summary{cursor:pointer;font-size:11px;color:var(--green-ink);list-style:none;display:flex;align-items:center;gap:8px}summary .icon{width:14px;height:14px}label{display:block;font-size:11px;font-weight:600;margin:24px 0 10px}input:not([type=checkbox]),select,textarea{border:1px solid var(--line);border-radius:9px;padding:13px 14px;background:var(--field);color:var(--ink);min-height:44px;max-width:100%}textarea{width:100%;resize:vertical;line-height:1.7;margin-bottom:12px}input::placeholder{color:var(--muted);opacity:.8}.game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:26px}.game-card{position:relative;text-align:left;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:25px;transition:transform .2s,box-shadow .2s}.game-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px #00000008}.game-icon{width:60px;height:60px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;border-radius:18px;margin-bottom:26px}.game-icon .icon{width:28px;height:28px}.game-card h2{font-size:20px;margin:10px 0}.game-card p{font-size:12px;color:var(--muted);min-height:42px}.game-tag{font-size:8px;letter-spacing:1.4px;color:var(--accent-ink);text-transform:uppercase;font-weight:600}.game-start{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin-top:28px}.game-start .icon{background:var(--bg);width:29px;height:29px;padding:7px;border-radius:50%}.library-tools{display:flex;gap:14px;margin-bottom:23px}.search-field{position:relative;flex:1}.search-field>.icon{position:absolute;left:15px;top:13px;width:17px;height:17px;color:var(--muted)}.search-field input{width:100%;padding-left:42px;font-size:12px}.library-tools select{font-size:11px;min-width:155px}.results-label{font-size:10px;color:var(--muted);display:flex;justify-content:space-between;margin-bottom:13px}.results-label>span{font-size:9px}.library-table-wrap{background:var(--panel);border:1px solid var(--line);border-radius:15px;overflow:auto}.library-table{border-collapse:collapse;width:100%;white-space:nowrap;text-align:left}.library-table th{font-size:9px;color:var(--muted);font-weight:500;background:var(--bg);padding:17px 20px;border-bottom:1px solid var(--line)}.library-table td{border-bottom:1px solid var(--line);padding:16px 20px;font-size:11px}.library-table tr:last-child td{border:0}.library-table tbody tr:hover{background:var(--bg)}.library-table td:first-child a{display:flex;align-items:center;gap:12px}.library-table td strong{display:block;font-size:12px;font-weight:550}.library-table td small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.mini-family{height:31px;width:31px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;border-radius:9px}.mini-family .icon{height:15px;width:15px}.table-port{font-family:ui-monospace,monospace;font-size:13px;font-weight:600}.scope-text{font-size:9px;color:var(--muted)}.empty-state{text-align:center;padding:40px 20px;color:var(--muted)}.empty-state>.icon{width:32px;height:32px;margin-bottom:15px}.empty-state h3,.empty-state h1{color:var(--ink);margin-bottom:12px}.empty-state p{font-size:12px}.progress-overview{display:grid;grid-template-columns:1fr 240px;gap:22px;margin-bottom:24px}.mastery-summary{display:flex;gap:35px;align-items:center}.mastery-ring{--pct:0%;height:170px;width:170px;min-width:170px;border-radius:50%;background:conic-gradient(#9abf69 var(--pct),var(--line) 0);display:grid;place-items:center;transform:rotate(0)}.mastery-ring>div{height:148px;width:148px;background:var(--panel);border-radius:50%;display:grid;place-content:center;text-align:center}.mastery-ring strong{font-size:40px;font-weight:500;letter-spacing:-1px}.mastery-ring span{font-size:10px;color:var(--muted)}.mastery-summary h2{font-family:Georgia,serif;font-weight:400;font-size:26px}.legend{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.legend>span{display:flex;align-items:center;gap:5px;font-size:9px;color:var(--muted)}.legend b{font-weight:600;color:var(--ink)}.legend-dot{width:6px;height:6px;border-radius:50%;background:var(--line)}.legend-dot.learning{background:#d8a17b}.legend-dot.reviewing{background:#86b0be}.legend-dot.mastered{background:#9bb769}.xp-card{display:flex;flex-direction:column;align-items:center;text-align:center}.xp-card .stat-icon{margin-bottom:20px}.xp-card .eyebrow{font-size:7px;margin-bottom:8px}.xp-card>strong{font-size:44px;font-weight:500;letter-spacing:-1.5px}.xp-card>span:not(.stat-icon):not(.eyebrow){font-size:11px;color:var(--muted)}.xp-card p{font-size:9px;color:var(--muted);margin:20px 0 0}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.two-columns>.card h2{font-size:19px}.dimension-bars{display:grid;gap:21px;margin-top:27px}.dimension-bars>div>div:first-child{display:flex;justify-content:space-between;font-size:11px;margin-bottom:11px}.dimension-bars b{font-size:10px;font-weight:400;color:var(--muted)}.activity-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:27px 0 17px}.activity-cell{height:25px;border-radius:5px;background:var(--line);display:block}.activity-cell.level-1{background:#d5e5b3}.activity-cell.level-2{background:#adc980}.activity-cell.level-3{background:#779c50}.activity-key{display:flex;gap:5px;justify-content:flex-end;align-items:center;font-size:8px;color:var(--muted)}.activity-key .activity-cell{height:10px;width:10px;border-radius:2px}.activity-key>span{margin:0 3px}.weak-row{display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--line);padding:17px 0}.weak-row>span:first-child{flex:1}.weak-row strong{font-size:12px}.weak-row small{display:block;font-size:9px;color:var(--muted);margin-top:6px}.weak-row>.icon{height:15px;width:15px}.badge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px 13px;margin-top:25px}.achievement{display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center;opacity:.55}.achievement>span{height:44px;width:44px;border-radius:14px;background:var(--bg);border:1px dashed var(--muted);display:grid;place-items:center;color:var(--muted)}.achievement strong{font-size:9px;font-weight:500;line-height:1.5}.achievement small{font-size:8px;color:var(--muted);line-height:1.6}.achievement.earned{opacity:1}.achievement.earned>span{background:var(--green);color:var(--green-ink);border:1px solid var(--green)}.settings-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:25px}.settings-layout>section{align-self:start}.settings-layout>div>.card{margin-bottom:22px}.settings-layout input:not([type=checkbox]),.settings-layout select{width:100%}.settings-layout .btn{margin-top:8px}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--line);margin:0;font-weight:400}.toggle-row strong{font-size:12px;font-weight:500}.toggle-row small{display:block;font-size:10px;color:var(--muted);margin-top:7px;line-height:1.6}.toggle-row input{width:21px;height:21px;accent-color:#8ba860;cursor:pointer}.settings-layout .toggle-row:last-of-type{margin-bottom:20px}.backup-card>.stat-icon{margin-bottom:20px}.backup-card h2{margin-bottom:14px}.backup-card p{font-size:12px;color:var(--muted)}.backup-status{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--muted);border-top:1px solid var(--line);padding:20px 0 12px;margin-top:24px}.backup-status .icon{width:14px;height:14px}.settings-note h3{display:flex;align-items:center;gap:10px;margin-bottom:13px}.settings-note h3 .icon{width:17px;height:17px}.settings-note p{font-size:12px;color:var(--muted)}.settings-note p:last-child{margin:0}.settings-note p .icon{width:14px;height:14px}.danger-zone{padding:10px 8px}.danger-zone h3{font-size:13px}.danger-zone p{font-size:11px;color:var(--muted);margin:8px 0}.danger{color:#b86d58;margin-right:18px}.danger-button{background:#a95342;color:#fff}.reading-width{max-width:850px}.reading-width>.card{margin-bottom:24px}.reading-width h2{margin-bottom:18px;font-size:25px}.reading-width h3{margin:27px 0 14px}.reading-width p,.source-list{font-size:13px;color:var(--muted);line-height:1.9}.reading-width strong{color:var(--ink);font-weight:550}.reading-width a{text-decoration:underline;text-underline-offset:3px;color:var(--green-ink)}.source-list{padding-left:20px}.source-list li{padding-left:4px;margin:15px 0}.session-top{display:flex;justify-content:space-between;align-items:center;gap:18px;color:var(--muted);font-size:10px;margin:0 auto 20px;max-width:870px}.session-top .back-link{margin:0}.session-score{display:flex;gap:6px;align-items:center}.session-score .icon{width:14px;height:14px;color:var(--orange-ink)}.session-track{max-width:870px;margin:0 auto 35px}.training-card{max-width:760px;margin:0 auto;padding:45px;background:var(--panel);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.question-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:35px}.question-meta>span:last-child{font-size:8px;letter-spacing:1.4px;color:var(--muted)}.question-title{font-size:29px;line-height:1.4;letter-spacing:-.7px;margin-bottom:30px}.recall-input{width:100%;font-size:25px!important;text-align:center;padding:23px 20px!important;min-height:90px!important;letter-spacing:.5px;margin-bottom:20px}.recall-input::placeholder{font-size:17px;letter-spacing:0}.question-tools{display:flex;justify-content:space-between;gap:10px;margin-top:18px}.question-tools .btn{font-size:10px}.hint-box{margin-top:20px;padding:18px;background:var(--hero);border-radius:12px;font-size:12px;line-height:1.8}.hint-box small{display:block;font-size:9px;color:var(--muted);margin-top:10px}.answer-options{display:grid;gap:12px}.answer-option{display:flex;align-items:center;gap:15px;text-align:left;border:1px solid var(--line);border-radius:11px;padding:17px;background:var(--panel);color:var(--ink);font-size:13px;line-height:1.6;min-height:60px}.answer-option:not(:disabled):hover{border-color:#a7bd8d;background:var(--bg)}.option-letter{display:grid;place-items:center;width:25px;height:25px;flex-shrink:0;border-radius:7px;background:var(--bg);font-size:10px;color:var(--muted);border:1px solid var(--line)}.answer-option>.icon{margin-left:auto;width:17px;height:17px}.answer-option.correct-option{background:var(--hero);border-color:#9bb77c}.answer-option.wrong-option{border-color:#d1a294;background:var(--orange)}.answer-feedback{display:flex;align-items:flex-start;gap:15px;padding:22px;margin:25px 0;border-radius:14px;background:var(--hero)}.answer-feedback.retry{background:var(--orange)}.feedback-icon{height:30px;min-width:30px;border-radius:50%;display:grid;place-items:center;background:var(--panel)}.feedback-icon .icon{width:17px;height:17px}.answer-feedback strong{font-size:14px}.answer-feedback p{font-size:12px;margin:9px 0 0}.answer-feedback small{font-size:9px;color:var(--muted);display:block;margin-top:13px;line-height:1.7}.session-bottom{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:22px;color:var(--muted);font-size:9px}.session-bottom .icon{width:12px;height:12px}.teaching>.family-icon{margin-bottom:24px}.teaching h1{font-size:35px}.teach-number{font-size:44px;font-weight:550;letter-spacing:-1px;display:flex;align-items:center;gap:16px;margin:20px 0}.teach-purpose{font-size:15px}.teaching>p.muted{font-size:12px}.teaching .memory-scene p{font-size:20px}.control-note{display:flex;gap:10px;font-size:12px;line-height:1.7;margin:24px 0}.control-note>.icon{color:var(--green-ink)}.teaching>.tiny{margin:15px 0 0}.session-result{text-align:center;max-width:750px;margin:35px auto}.celebration{margin:0 auto 25px;height:85px;width:85px;background:var(--green);border-radius:28px;display:grid;place-items:center;transform:rotate(-8deg)}.celebration .icon{height:40px;width:40px;color:var(--green-ink)}.session-result h1{font-family:Georgia,serif;font-weight:400;font-size:42px;margin-bottom:17px}.session-result>p:not(.eyebrow){font-size:13px;color:var(--muted);max-width:500px;margin:0 auto}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);margin:35px 0;background:var(--panel);border:1px solid var(--line);padding:28px 10px;border-radius:18px}.result-stats>div{border-right:1px solid var(--line)}.result-stats>div:last-child{border:0}.result-stats strong{display:block;font-size:30px;font-weight:500;letter-spacing:-1px}.result-stats span{display:block;font-size:10px;color:var(--muted);margin-top:8px}.result-note{display:flex;gap:12px;background:var(--hero);text-align:left;font-size:12px;line-height:1.8;padding:22px;border-radius:14px;margin-bottom:30px}.session-result .button-row{justify-content:center}.match-card{margin-top:35px}.match-status{display:flex;justify-content:space-between;font-size:11px;margin-bottom:25px;color:var(--muted)}.match-status .icon{width:14px;height:14px}.match-board{display:grid;grid-template-columns:1fr 1fr;gap:40px}.match-board>div{display:grid;gap:13px}.match-tile{height:80px;background:var(--panel);border:1px solid var(--line);border-radius:12px;color:var(--ink);display:flex;align-items:center;justify-content:center;gap:9px;font-size:12px;padding:12px;text-align:center;line-height:1.6}.match-tile.selected{background:var(--blue);border:2px solid var(--blue-ink)}.match-tile.matched{background:var(--hero);border-color:#bdcf9c;opacity:.55}.match-tile>.icon{width:15px;height:15px}.number-tile{flex-direction:column;gap:3px}.number-tile strong{font-size:24px;letter-spacing:-.7px;font-weight:500}.number-tile small{font-size:8px;color:var(--muted)}.match-message{text-align:center;font-size:12px;margin:26px 0;color:var(--muted)}.match-complete{border-top:1px solid var(--line);padding-top:25px}.match-complete h2{font-size:23px;margin-bottom:12px}.match-complete p{font-size:12px;color:var(--muted)}.match-card>.tiny{margin:20px 0 0;text-align:center}.walk-layout{display:grid;grid-template-columns:240px 1fr;gap:25px}.walk-stops{display:flex;flex-direction:column;gap:6px}.walk-stops>.eyebrow{padding:15px 12px}.walk-stop{display:flex;align-items:center;gap:12px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:11px;text-align:left;padding:14px 12px;line-height:1.6}.walk-stop.active{background:var(--green);color:var(--ink)}.walk-stop>span:first-child{font-size:9px;opacity:.7}.walk-scene{align-self:start}.walk-scene>.family-icon{background:var(--accent);color:var(--accent-ink);margin-bottom:23px}.walk-scene h2{font-size:32px}.walk-port{font-size:44px;letter-spacing:-1px;margin:20px 0}.walk-port span{font-size:12px;color:var(--muted);letter-spacing:0;margin-left:12px}.walk-scene>p:not(.eyebrow):not(.tiny){font-size:14px}.walk-scene>.tiny{margin:25px 0 0}.walk-hidden{display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;min-height:270px;padding:30px;background:var(--bg);border-radius:15px;margin:20px 0}.walk-hidden .icon{width:30px;height:30px;margin-bottom:20px;color:var(--green-ink)}.walk-hidden h3{font-family:Georgia,serif;font-size:25px;font-weight:400;margin-bottom:15px}.walk-hidden p{font-size:12px;color:var(--muted)}.reading-width{margin:0 auto 0 0}.muted{color:var(--muted)}.small{font-size:11px!important}.tiny{font-size:9px!important;color:var(--muted);line-height:1.8;margin-bottom:0}.storage-warning{display:flex;align-items:center;gap:10px;padding:16px;background:var(--orange);color:var(--ink);border-radius:12px;margin-bottom:25px;font-size:12px;line-height:1.7}.storage-warning a{text-decoration:underline;white-space:nowrap}.storage-warning>.icon{width:18px;height:18px}footer{display:flex;justify-content:space-between;gap:15px;margin:15px 46px 0;padding:22px 0;border-top:1px solid var(--line);font-size:8px;color:var(--muted);letter-spacing:.2px}footer>span:last-child{display:flex;align-items:center;gap:5px}footer .icon{width:10px;height:10px}.mobile-nav{display:none}#toast{position:fixed;bottom:28px;left:calc(50% + 100px);transform:translate(-50%,15px);max-width:min(550px,90vw);background:var(--ink);color:var(--panel);border-radius:12px;padding:15px 22px;font-size:12px;line-height:1.7;z-index:100;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;box-shadow:0 4px 20px #0002}#toast.show{opacity:1;transform:translate(-50%,0)}dialog{border:1px solid var(--line);border-radius:22px;background:var(--panel);color:var(--ink);max-width:560px;width:calc(100% - 32px);padding:30px;box-shadow:0 20px 100px #0002}dialog::backdrop{background:#17241c65;backdrop-filter:blur(4px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.dialog-head h2{font-size:23px}.icon-button{display:grid;place-items:center;width:35px;height:35px;border:0;border-radius:50%;background:var(--bg);color:var(--muted);flex-shrink:0}.icon-button .icon{width:17px;height:17px}dialog p{font-size:13px;color:var(--muted)}dialog .button-row{margin-top:25px}.import-summary{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:var(--bg);padding:20px;border-radius:12px;margin:20px 0}.import-summary span{font-size:11px;color:var(--muted)}.import-summary b{color:var(--ink);font-size:17px;display:block;margin-bottom:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:20px;top:-100px;z-index:200;padding:15px;background:var(--ink);color:var(--panel);border-radius:10px}.skip-link:focus{top:15px}
@media(min-width:1500px){.hero{padding:40px 42px}.hero h2{font-size:46px}.hero p{font-size:13px}.hero-visual{max-height:310px}.hero .hq-art{max-height:330px}.hero .btn{font-size:12px}.hero-footnote{font-size:10px}.compact .family-card h3{font-size:14px}.dashboard-bottom{grid-template-columns:minmax(0,1fr) 290px}.art-label{bottom:0}}
@media(max-width:1200px){.sidebar{width:216px;padding-left:16px;padding-right:16px}.workspace{margin-left:216px}.brand{gap:8px}.brand>span{font-size:20px}.brand small{font-size:6px}.brand img{width:34px;height:34px}.topbar{padding:0 30px}main{padding:34px 30px 20px}.hero{padding:28px}.hero h2{font-size:34px}.hero-visual{margin-right:-25px}.hero-footnote{font-size:7px}.hero-actions{gap:10px}.hero-actions>.btn{padding:12px 14px}.hero-actions>span{font-size:8px}.dashboard-bottom{grid-template-columns:1fr 225px;gap:18px}.compact .family-card{padding:15px 12px}.compact .family-card h3{font-size:11px}.compact .family-card-bottom{font-size:7px}.stat-card{padding:18px 15px;gap:12px}.stat-card .stat-icon{width:35px;height:35px;border-radius:10px}.stat-note{font-size:7px}.lesson-layout{grid-template-columns:minmax(0,1fr) 260px;gap:20px}.lesson-aside .card{padding:20px}.family-banner{gap:18px}.family-banner .large-icon{display:none}.family-banner .btn{font-size:10px}.family-card{padding:20px}.progress-overview{grid-template-columns:1fr 190px;gap:18px}.mastery-summary{gap:23px;padding:24px}.mastery-ring{height:140px;width:140px;min-width:140px}.mastery-ring>div{width:122px;height:122px}.mastery-summary h2{font-size:22px}.legend{gap:8px}.legend>span{font-size:8px}.two-columns{gap:18px}.two-columns>.card{padding:23px}.library-table td,.library-table th{padding:15px}.library-table td:first-child a{gap:8px}.mini-family{display:none}.game-card{padding:22px}.game-card h2{font-size:18px}footer{margin-left:30px;margin-right:30px}}
@media(max-width:1020px){.sidebar{width:190px;padding:30px 12px 18px}.brand{margin:0 5px 40px}.brand img{width:31px;height:31px}.brand>span{font-size:17px}.brand small{font-size:5px;letter-spacing:1.1px}.nav-item{font-size:12px;padding:12px;gap:10px}.nav-label{font-size:8px;margin-left:12px}.local-card{padding:18px 14px}.local-card strong{font-size:16px}.local-card a{font-size:10px}.workspace{margin-left:190px}.hero{grid-template-columns:1.2fr .8fr}.hero-visual{opacity:.9;margin-left:-25px}.hq-art{min-width:270px}.hero h2{font-size:32px}.hero-footnote>span{display:none}.hero-footnote{max-width:260px}.art-label{display:none}.stat-grid{gap:12px}.stat-note{line-height:1.6}.stat-card{align-items:flex-start;gap:10px}.stat-card .stat-icon{height:29px;width:29px}.stat-card .stat-icon .icon{height:16px;width:16px}.stat-label{font-size:9px}.stat-card strong{font-size:24px}.dashboard-bottom{grid-template-columns:1fr}.daily-card{display:grid;grid-template-columns:1.2fr 1fr;gap:0 35px}.daily-card .section-head{margin:0 0 10px}.daily-total{grid-column:1}.daily-card>.progress-track{grid-column:1}.daily-card>p{grid-column:1;margin-bottom:0}.daily-plan{grid-column:2;grid-row:1/5;justify-content:center;align-content:center;border:0;border-left:1px solid var(--line)}.compact .family-card{padding:18px}.compact .family-card h3{font-size:13px}.compact .family-card-bottom{font-size:9px}.family-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.family-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-layout{grid-template-columns:1fr}.lesson-aside{display:grid;grid-template-columns:1fr 1fr;gap:15px}.lesson-aside .card{position:static}.family-banner{align-items:flex-start;flex-direction:column}.family-banner .btn{margin-left:0}.lesson-row{gap:13px;padding:18px}.lesson-body>span{font-size:10px}.lesson-row .transport{display:none}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-overview{grid-template-columns:1fr}.xp-card{flex-direction:row;justify-content:space-between;gap:15px}.xp-card .stat-icon{margin:0}.xp-card .eyebrow{display:none}.xp-card p{margin:0}.xp-card>strong{font-size:32px}.two-columns{grid-template-columns:1fr}.activity-cell{height:30px}.badge-grid{gap:22px}.settings-layout{grid-template-columns:1fr}.library-tools{flex-wrap:wrap}.search-field{flex-basis:100%}.library-tools select{flex:1}.library-table td,.library-table th{padding:14px 12px}.results-label>span{display:none}.mastery-summary h2{font-size:28px}.walk-layout{grid-template-columns:180px 1fr;gap:18px}.walk-scene{padding:23px}.walk-scene h2{font-size:28px}.walk-port{font-size:35px}.walk-scene .button-row{align-items:stretch;flex-direction:column}}
@media(max-width:760px){.sidebar{display:none}.workspace{margin-left:0}.topbar{height:70px;padding:0 22px}.topbar .breadcrumb{font-size:10px}.top-actions{gap:13px}.streak{font-size:10px;gap:5px}.streak>span{display:none}.top-divider{display:none}.avatar{width:30px;height:30px}.mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;background:var(--panel);border-top:1px solid var(--line);z-index:30;padding:9px 8px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -4px 20px #24382b03}.mobile-nav>a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;min-height:44px;color:var(--muted);font-size:8px}.mobile-nav>a.active{color:var(--green-ink)}.mobile-nav>a.active .icon{background:var(--green);box-shadow:0 0 0 6px var(--green);border-radius:5px}.mobile-nav .icon{width:18px;height:18px;margin:3px 0 4px}main{padding:30px 22px 22px;min-height:calc(100vh - 200px)}.page-head{align-items:flex-start;margin-bottom:24px;gap:16px}.page-head>.btn{font-size:9px;padding:10px 12px;min-height:38px}.page-head>.btn .icon{width:13px;height:13px}.page-head h1{font-size:29px}.page-intro{font-size:11px;margin-top:10px}.eyebrow{font-size:8px}.hero{padding:26px;border-radius:18px;grid-template-columns:1.1fr .9fr;min-height:300px}.hero h2{font-size:34px}.hero p{font-size:11px}.hero-visual{margin-left:-20px}.hq-art{min-width:275px}.hero-actions>span{display:none}.hero-footnote{font-size:8px}.hero-footnote>span{display:inline}.stat-grid{margin:18px 0 30px;gap:11px}.stat-card{padding:16px;gap:12px}.stat-card .stat-icon{width:30px;height:30px}.stat-label{font-size:9px}.stat-note{font-size:7px}.section-head h2{font-size:20px}.compact .family-card{padding:18px 15px}.compact .family-card h3{font-size:12px}.compact .family-card-bottom{font-size:8px}.daily-card{padding:23px}.backup-nudge{font-size:10px;align-items:flex-start}.backup-nudge .text-link{white-space:normal;min-width:80px}.family-card h3{font-size:16px}.family-card p{font-size:11px}.family-card-bottom{font-size:9px}.family-card{padding:24px}.card{padding:25px}.lesson-layout{gap:20px}.protocol-card{padding:28px}.lesson-section h2{font-size:24px}.lesson-section p{font-size:13px}.lesson-row .chip{font-size:8px}.lesson-row .number-badge{font-size:11px}.lesson-row{gap:12px}.lesson-body>span{font-size:10px}.lesson-body strong{font-size:12px}.lesson-number{font-size:8px}.lesson-row>.icon{width:14px;height:14px}.library-table th,.library-table td{padding:14px 18px}.mini-family{display:grid}.results-label{font-size:10px}.library-table-wrap{border-radius:12px}.game-card{padding:25px}.game-card h2{font-size:20px}.game-card p{font-size:12px}.game-grid{gap:16px}.progress-overview{gap:16px}.mastery-summary{gap:25px}.mastery-summary h2{font-size:26px}.settings-layout{gap:20px}.settings-layout .card>h2{font-size:23px}.reading-width .card{padding:25px}.training-card{padding:32px}.question-title{font-size:28px}.session-top{font-size:10px;margin-top:-5px}.session-top .btn{font-size:10px}.session-top .session-score{display:none}.question-meta>span:last-child{font-size:7px}.session-result h1{font-size:36px}.walk-layout{grid-template-columns:1fr}.walk-stops{display:flex;flex-direction:row;overflow-x:auto;gap:8px;padding:3px 3px 15px;scrollbar-width:thin}.walk-stops>.eyebrow{display:none}.walk-stop{flex-shrink:0;background:var(--panel);border:1px solid var(--line);padding:12px}.walk-stop.active{background:var(--green)}.walk-scene .button-row{flex-direction:row}.walk-scene{padding:28px}.walk-port{font-size:44px}.walk-scene .memory-scene p{font-size:20px}footer{margin:15px 22px 85px;font-size:7px;padding:18px 0}#toast{left:50%;bottom:95px;font-size:11px;width:max-content;max-width:calc(100vw - 32px)}dialog{padding:25px}.storage-warning{flex-wrap:wrap}.storage-warning a{margin-left:27px}}
@media(max-width:520px){main{padding:26px 18px 18px}.topbar{padding:0 18px;height:64px}.breadcrumb span{margin:0 7px}.page-head{flex-direction:column;gap:17px}.page-head h1{font-size:30px;letter-spacing:-1px}.page-head>.btn{font-size:10px;padding:9px 14px;min-height:36px}.page-head .eyebrow{font-size:8px;letter-spacing:1.5px}.hero{display:block;padding:25px 24px 20px;min-height:0;overflow:hidden}.hero h2{font-size:36px;line-height:1.2;margin:20px 0 15px;position:relative;z-index:2}.hero p{font-size:12px;position:relative;z-index:2}.hero-visual{height:175px;max-width:310px;margin:-7px auto -12px;position:relative}.hq-art{width:300px;min-width:300px;height:210px;max-height:none;transform:translateY(-5px)}.hero-actions{position:relative;z-index:3}.hero-actions .btn{font-size:11px;min-height:45px;padding:13px 19px}.hero-footnote{position:relative;z-index:2;font-size:8px;line-height:1.7;max-width:none;margin-top:16px}.stat-grid{gap:8px;margin:15px 0 29px}.stat-card{flex-direction:column;gap:12px;padding:16px 12px}.stat-card .stat-icon{width:29px;height:29px;border-radius:9px}.stat-label{font-size:8px;line-height:1.5;min-height:13px}.stat-card strong{font-size:25px;margin:4px 0}.stat-card strong small{font-size:9px}.stat-note{font-size:7px;line-height:1.6;margin-top:5px;min-height:23px}.section-head h2{font-size:19px}.section-head .eyebrow{font-size:7px;letter-spacing:1.2px}.text-link{font-size:9px}.family-grid.compact{grid-template-columns:1fr;gap:10px}.compact .family-card{display:grid;grid-template-columns:42px 1fr auto;gap:0 12px;padding:17px}.compact .family-card-top{grid-column:1;grid-row:1/4;margin:0;align-items:center}.compact .family-card-top>.small{display:none}.compact .family-icon{width:38px;height:38px}.compact .family-card h3{grid-column:2;font-size:14px;margin-top:1px}.compact .family-card p{grid-column:2;font-size:9px;min-height:0;margin:6px 0 0}.compact .family-card-bottom{grid-column:3;grid-row:1/4;margin:0;font-size:8px}.compact .family-card-bottom>span{display:none}.compact .family-card>.progress-track{grid-column:2;grid-row:4;height:2px;margin-top:12px}.compact .family-card-bottom .icon{height:17px;width:17px}.daily-card{padding:22px;gap:0 16px}.daily-plan{padding-left:16px;gap:12px}.daily-plan>span{font-size:8px;gap:6px;line-height:1.6}.daily-plan .icon{width:12px;height:12px}.daily-card h3{font-size:12px}.daily-card .section-head>.icon{display:none}.daily-card>p{font-size:9px}.daily-total{margin-bottom:10px}.daily-total strong{font-size:28px}.daily-total span{font-size:9px}.backup-nudge{flex-wrap:wrap;gap:10px;font-size:10px}.backup-nudge>span{flex:1}.backup-nudge .text-link{margin-left:27px}.family-grid{gap:12px}.family-card{padding:18px 16px}.family-card h3{font-size:14px}.family-card p{font-size:9px;min-height:28px;line-height:1.8;margin-bottom:18px}.family-card-top{margin-bottom:23px}.family-card-bottom{font-size:8px;gap:4px;line-height:1.7}.family-card-bottom .icon{display:none}.family-card-bottom .dot-separator{margin:0 1px}.family-card .family-icon{height:36px;width:36px}.family-card-top>.small{font-size:9px!important}.callout{padding:20px;gap:12px}.callout p{font-size:11px}.callout strong{font-size:12px}.callout>.icon{width:18px;height:18px}.family-banner{padding:24px}.family-banner h2{font-size:23px}.family-banner p{font-size:12px}.family-banner .eyebrow{font-size:7px;line-height:1.8}.lesson-row{padding:17px 13px;gap:10px;flex-wrap:wrap;position:relative}.lesson-row .lesson-number{display:none}.lesson-body{min-width:55%;flex-basis:55%;padding-right:0}.lesson-body>span{font-size:10px;line-height:1.6}.lesson-row .number-badge{font-size:12px}.lesson-row .chip{margin-left:0;font-size:8px}.lesson-row>.icon{margin-left:auto}.lesson-aside{grid-template-columns:1fr}.lesson-aside .small-tip{padding:18px 15px}.protocol-card{padding:24px;align-items:flex-start;flex-direction:column;gap:20px}.big-port{font-size:54px;overflow-wrap:anywhere;line-height:1.1}.protocol-meta{align-items:flex-start;flex-direction:row;flex-wrap:wrap;gap:8px}.protocol-meta>span:last-child{max-width:none;flex-basis:100%;text-align:left;margin-top:5px}.card{padding:23px}.lesson-section h2{font-size:24px;line-height:1.35}.lesson-section p{font-size:12px}.lesson-section .memory-scene p{font-size:19px}.memory-scene{padding:18px;gap:10px}.memory-scene .icon{height:18px;width:18px}.exam-note{padding:16px;gap:10px}.exam-note p{font-size:11px}.step-label{font-size:8px}.source-line{font-size:8px}.game-grid{grid-template-columns:1fr;gap:13px}.game-card{padding:23px;display:grid;grid-template-columns:54px 1fr;gap:0 17px}.game-icon{grid-column:1;grid-row:1/4;height:51px;width:51px;border-radius:15px;margin:5px 0 0}.game-icon .icon{height:24px;width:24px}.game-tag{grid-column:2;font-size:7px}.game-card h2{grid-column:2;font-size:20px;margin:8px 0}.game-card p{grid-column:2;font-size:11px;min-height:0;margin:0}.game-start{grid-column:2;margin-top:17px;font-size:10px}.game-start .icon{height:25px;width:25px}.library-tools{gap:10px}.library-tools select{font-size:10px;min-width:0;padding:12px 8px;flex-basis:40%}.library-table td,.library-table th{padding:15px 13px}.library-table td strong{font-size:11px}.library-table td small{font-size:8px}.mini-family{display:none}.library-table td{font-size:10px}.library-table th{font-size:8px}.library-table .chip{font-size:8px}.mastery-summary{flex-direction:column;align-items:center;text-align:center;gap:25px;padding:28px}.mastery-summary h2{font-size:28px}.mastery-ring{height:155px;width:155px}.mastery-ring>div{height:135px;width:135px}.legend{justify-content:center;margin:18px 0}.legend>span{font-size:9px}.mastery-summary>.tiny{max-width:280px}.xp-card{display:grid;grid-template-columns:43px auto 1fr;gap:7px 14px;align-items:center;padding:22px;text-align:left}.xp-card .stat-icon{grid-row:1/3;grid-column:1}.xp-card>strong{grid-column:2;font-size:30px;line-height:1.1}.xp-card>span:last-of-type{grid-column:3;font-size:9px}.xp-card p{grid-column:2/4;font-size:8px}.two-columns>.card{padding:24px}.two-columns>.card h2{font-size:19px}.two-columns .section-head .btn{font-size:9px}.activity-cell{height:27px}.dimension-bars{gap:21px}.dimension-bars>div>div:first-child{font-size:11px}.badge-grid{gap:23px 14px}.achievement strong{font-size:9px}.achievement small{font-size:8px}.settings-layout .card>h2{font-size:23px}.settings-layout .button-row{gap:10px}.settings-layout .button-row>.btn{font-size:10px;flex:1;padding:12px 13px}.settings-layout .toggle-row small{font-size:10px}.reading-width .card{padding:23px}.reading-width h2{font-size:24px}.reading-width p,.source-list{font-size:12px;line-height:1.9}.session-top{gap:10px;margin-bottom:18px;font-size:9px}.session-top .btn{font-size:9px}.session-top>.back-link{font-size:9px}.session-top>span{max-width:55%;text-align:right;line-height:1.7}.session-track{margin-bottom:23px;height:3px}.training-card{padding:25px 22px;border-radius:18px}.question-meta{margin-bottom:25px;align-items:flex-start}.question-meta .chip{font-size:8px}.question-meta>span:last-child{text-align:right;font-size:7px;line-height:1.7}.question-title{font-size:26px;line-height:1.4;margin-bottom:26px}.recall-input{font-size:25px!important;min-height:85px!important;padding:20px!important}.recall-input::placeholder{font-size:15px}.question-tools{gap:8px;align-items:center}.question-tools .btn{font-size:9px;min-height:44px}.question-tools .btn .icon{height:14px;width:14px}.answer-option{font-size:12px;gap:11px;padding:14px;line-height:1.8}.option-letter{height:23px;width:23px;font-size:9px}.answer-feedback{padding:18px;gap:12px}.answer-feedback strong{font-size:13px}.answer-feedback p{font-size:11px}.answer-feedback small{font-size:8px}.feedback-icon{height:25px;min-width:25px}.feedback-icon .icon{height:14px;width:14px}.teaching h1{font-size:31px}.teaching>.eyebrow{font-size:7px}.teach-number{font-size:43px;flex-wrap:wrap;line-height:1.2}.teach-purpose{font-size:14px}.teaching .memory-scene p{font-size:18px}.teaching>.btn{width:100%;font-size:10px}.control-note{font-size:11px;gap:10px}.session-bottom{font-size:8px;text-align:center;line-height:1.7}.session-result{margin-top:20px}.session-result h1{font-size:34px;line-height:1.25}.session-result>p:not(.eyebrow){font-size:12px}.celebration{height:74px;width:74px;border-radius:24px}.celebration .icon{height:32px;width:32px}.result-stats{padding:24px 8px;margin:28px 0}.result-stats strong{font-size:25px}.result-stats span{font-size:8px;line-height:1.7}.result-note{font-size:11px;padding:20px;gap:10px}.result-note>.icon{height:17px;width:17px}.match-card{margin-top:15px}.match-board{gap:16px}.match-tile{font-size:10px;height:83px;padding:10px}.number-tile strong{font-size:23px}.match-message{font-size:11px}.match-complete h2{font-size:22px}.match-complete p{font-size:11px}.walk-scene h2{font-size:30px}.walk-port{font-size:40px;overflow-wrap:anywhere}.walk-port span{display:block;font-size:11px;margin:10px 0 0}.walk-scene .memory-scene p{font-size:18px}.walk-scene .button-row{gap:8px;flex-direction:column;align-items:stretch}.walk-hidden{padding:20px;min-height:250px}.walk-hidden h3{font-size:24px}dialog{padding:23px}.dialog-head h2{font-size:22px}.dialog-head{gap:12px}dialog .button-row>.btn{font-size:10px}footer{margin-left:18px;margin-right:18px;margin-bottom:88px;font-size:7px}footer>span:first-child{max-width:60%;line-height:1.7}.storage-warning{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}:root[data-motion=off] *,:root[data-motion=off] *::before,:root[data-motion=off] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.recommended{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--green-ink);margin:5px 0 12px}.recommended .icon{width:15px;height:15px}.approach-picker{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 8px}.approach-picker .btn{font-size:9px;min-height:38px;padding:10px 12px}.compare-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 10px}.compare-pair>a{padding:17px;border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;gap:8px}.compare-pair strong{font-size:12px}.compare-pair span{font-family:ui-monospace,monospace;font-size:12px;color:var(--muted)}
/* Keep the learning text comfortable on touch devices; 16px inputs avoid iOS zoom. */
@media(max-width:760px){input:not([type=checkbox]),select,textarea{font-size:16px!important}.page-intro{font-size:13px}.mobile-nav>a{font-size:10px}.btn{font-size:12px}.chip{font-size:10px}.game-card p{font-size:13px}.library-tools select{font-size:12px!important}.toggle-row small{font-size:11px}.answer-option{font-size:13px}.question-tools .btn{font-size:11px}.lesson-body>span{font-size:12px}.memory-scene p{font-size:20px}.source-line{font-size:10px}.tiny{font-size:11px!important}}
@media(max-width:520px){.hero h2{font-size:32px}.hero p{font-size:13px}.hero .pill{font-size:9px}.hero-footnote{font-size:9px}.stat-label{font-size:10px;min-height:30px}.stat-note{font-size:9px;line-height:1.7;min-height:35px}.stat-card{padding:16px 10px}.stat-card strong small{font-size:10px}.compact .family-card p{font-size:11px}.daily-plan>span{font-size:10px}.daily-card>p{font-size:11px}.family-card p{font-size:11px}.family-card-bottom{font-size:10px}.lesson-body strong{font-size:13px}.lesson-body>span{font-size:12px}.lesson-row .chip{font-size:10px}.lesson-section p{font-size:14px}.exam-note p{font-size:12px}.source-line{font-size:10px}.game-card p{font-size:13px}.game-tag{font-size:9px}.game-start{font-size:12px}.game-card .game-start{margin-top:15px}.answer-feedback p{font-size:13px}.answer-feedback strong{font-size:14px}.answer-feedback small{font-size:11px}.question-tools .btn{font-size:11px}.library-table th{font-size:10px}.library-table td{font-size:12px}.library-table td strong{font-size:12px}.library-table td small{font-size:10px}.match-tile{font-size:12px}.number-tile small{font-size:10px}.walk-stop{font-size:12px}.reading-width p,.source-list{font-size:14px}.compare-pair{gap:8px}.compare-pair>a{padding:13px}.compare-pair span{font-size:11px}.settings-layout .button-row>.btn{font-size:12px}.settings-layout .toggle-row small{font-size:11px}.family-banner .eyebrow{font-size:9px}.backup-status{font-size:11px}}
.sidebar{overflow-y:auto}.source-line,.question-title,.protocol-card{overflow-wrap:anywhere}
