@font-face{font-family:Garden;src:local('Avenir Next');font-display:swap}
:root{color-scheme:light;--bg:#faf8f1;--surface:#fffef9;--ink:#263f32;--muted:#627265;--green:#315d43;--light:#eaf0dc;--line:#dce2d5;--peach:#f6e3d2;--gold:#d8a55d;--red:#924934;--blue:#365d72;font-family:Garden,'Avenir Next',ui-rounded,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:17px;line-height:1.55;background:var(--bg);color:var(--ink)}
*{box-sizing:border-box}body{margin:0}a{color:inherit}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #718c58;outline-offset:4px}button{border:0;color:inherit;background:none;border-radius:14px;padding:12px 18px;min-height:48px}h1,h2,h3,p{margin:0}h1{font-size:clamp(32px,4.5vw,52px);line-height:1.12;letter-spacing:-1.6px;font-weight:650}h2{font-size:27px;letter-spacing:-.6px;line-height:1.25}h3{font-size:20px;line-height:1.3}p+p{margin-top:12px}small{font-size:13px}.muted{color:var(--muted)}.eyebrow{font-size:12px;letter-spacing:1.6px;font-weight:700;text-transform:uppercase;color:var(--muted);margin-bottom:12px}.tag{display:inline-block;border-radius:30px;background:var(--light);font-size:12px;padding:4px 10px;font-weight:650;white-space:nowrap}.tag.peach{background:var(--peach)}.tag.outline{background:none;border:1px solid var(--line)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--line);background:var(--surface);font-weight:600;text-decoration:none;min-height:50px;border-radius:14px;padding:12px 20px}.btn.primary{background:var(--green);color:#fff;border-color:var(--green)}.btn.wide{width:100%}.btn.soft{background:var(--light);border-color:transparent}.btn.small{font-size:14px;min-height:44px;padding:9px 14px}.text-btn{font-size:14px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.stack{display:grid;gap:18px}.center{text-align:center}.mt{margin-top:24px}.gap-top{margin-top:40px}.card{background:var(--surface);border:1px solid var(--line);border-radius:25px;padding:27px}.notice{background:var(--light);border-radius:16px;padding:16px 19px;font-size:15px}.notice.peach{background:var(--peach)}.notice.error{border:1px solid #ddbaac;background:#fbede7;color:#783a27}.empty{padding:35px 22px;text-align:center;border-radius:20px;background:var(--light)}.divider{height:1px;background:var(--line);margin:24px 0}.skip-link{position:absolute;left:12px;top:-100px;background:var(--surface);padding:12px;z-index:20}.skip-link:focus{top:12px}
.site-header{max-width:1160px;margin:auto;padding:28px 32px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-size:23px;font-weight:700;letter-spacing:-.5px}.brand-sprout{width:44px;height:48px;display:grid;place-items:center;background:var(--light);border-radius:14px;font-size:25px}.brand small{display:block;font-size:9px;letter-spacing:1.5px;font-weight:650;margin-top:2px}.site-header nav{display:flex;gap:5px;background:#efeee4;border-radius:15px;padding:5px}.site-header nav a{min-height:44px;display:grid;place-items:center;text-decoration:none;font-size:14px;font-weight:600;padding:9px 20px;border-radius:11px}.site-header nav a[aria-current=page]{background:var(--surface);box-shadow:0 2px 5px #20351c09}.site-footer{max-width:1096px;margin:32px auto 0;padding:24px 0 max(25px,env(safe-area-inset-bottom));border-top:1px solid var(--line);display:flex;align-items:center;gap:24px;font-size:12px;color:var(--muted)}.site-footer span{margin-right:auto}.site-footer a{min-height:44px;display:flex;align-items:center;text-underline-offset:3px}#main{max-width:1096px;margin:16px auto 0;min-height:62vh;padding-bottom:10px}.loading-card{max-width:650px;margin:80px auto;text-align:center;padding:30px}.loading-card>span{font-size:45px}.loading-card h1{font-size:30px;margin:15px 0}.page-head{margin:26px 0 30px}.page-head h1{margin-bottom:14px}.page-head p{max-width:650px}.narrow{max-width:650px;margin:24px auto}.save-warning{max-width:1096px;margin:15px auto;padding:15px 20px;border:1px solid #ddbaac;background:#fbede7;border-radius:14px;color:#783a27;font-size:14px}.save-warning[hidden]{display:none}
.home-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center;min-height:500px;padding:28px 20px 22px}.home-copy{max-width:490px}.home-copy h1{margin:12px 0 20px}.home-copy>p{max-width:340px}.home-hero-art{margin:15px 0 30px;height:166px;display:flex;justify-content:flex-start;gap:15px;align-items:end;padding-left:10px}.garden-art{height:185px;display:flex;align-items:end;justify-content:center;gap:24px;margin:25px 0 15px}.plant{width:80px;height:180px;position:relative;flex-shrink:0}.plant.small{transform:scale(.75);transform-origin:bottom}.plant.tiny{transform:scale(.5);transform-origin:bottom}.stem{height:95px;width:5px;background:var(--green);position:absolute;bottom:50px;left:38px;border-radius:5px}.leaf{width:37px;height:23px;background:#91aa70;border-radius:0 30px 0 30px;position:absolute;left:3px;bottom:100px;transform:rotate(9deg)}.leaf.right{left:40px;bottom:116px;transform:scaleX(-1) rotate(9deg);background:#a9bd88}.flower{position:absolute;background:var(--gold);width:28px;height:28px;border-radius:50%;left:26px;bottom:143px;box-shadow:12px 0 0 -2px #f2ddbb,-12px 0 0 -2px #f2ddbb,0 12px 0 -2px #f2ddbb,0 -12px 0 -2px #f2ddbb}.pot{position:absolute;bottom:0;width:80px;height:57px;border-radius:8px 8px 29px 29px;background:#c78c6c}.pot:before{content:'';position:absolute;left:8px;right:8px;top:10px;height:4px;border-radius:4px;background:#e5b595}.mission-card{padding:32px;position:relative}.mission-card h2{font-size:30px;margin:18px 0 12px}.mission-card .btn{margin-top:27px}.mission-meta{margin:18px 0;display:flex;gap:12px;align-items:center;font-size:14px;color:var(--muted)}.mission-steps{display:flex;gap:8px;justify-content:space-around;margin-top:21px;font-size:13px;color:var(--muted)}.home-bottom{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:10px 20px}.home-bottom .card{padding:22px 24px}.home-bottom h3{margin-bottom:7px}.home-bottom p{font-size:14px}.home-bottom .btn{margin-top:15px}.progress-line{height:7px;background:#e4e9dc;border-radius:20px;overflow:hidden;margin:13px 0}.progress-line>span{display:block;height:100%;background:#668850;border-radius:20px}.stat-inline{font-size:14px;color:var(--muted)}
.level-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:20px}.level-toolbar label{font-size:14px;color:var(--muted)}select{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:11px 14px;color:var(--ink);max-width:100%;min-height:46px}.levels-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.level-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:21px 24px;display:flex;align-items:center;gap:18px;text-align:left;position:relative;width:100%}.level-card .level-number{font-size:19px;font-weight:650;display:grid;place-items:center;width:50px;height:50px;border-radius:17px;background:var(--light);flex-shrink:0}.level-card .level-content{flex:1;min-width:0}.level-card small{display:block;margin-top:4px;color:var(--muted);font-weight:400}.level-card .arrow{color:var(--muted)}.level-card.completed .level-number{background:var(--green);color:white}.word-pills{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.word-pills span{background:var(--light);padding:8px 13px;border-radius:12px;font-size:16px}.score-history{margin:22px 0;display:flex;gap:10px;flex-wrap:wrap}.score-history span{border:1px solid var(--line);border-radius:12px;padding:8px 12px;font-size:13px}
.session-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:5px 0 15px;font-size:13px;color:var(--muted)}.session-card{background:var(--surface);border:1px solid var(--line);border-radius:28px;padding:36px}.session-card h1{font-size:34px;letter-spacing:-1px;margin-bottom:14px}.big-word{font-size:clamp(31px,7vw,49px);font-weight:650;letter-spacing:1px;overflow-wrap:anywhere;margin:16px 0 24px;line-height:1.3}.big-word mark{background:var(--peach);color:inherit;border-radius:5px;padding:0 2px}.meaning{font-size:19px;margin-top:25px}.example{font-size:16px;color:var(--muted);margin-top:13px}.audio-controls{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.audio-controls .btn{font-size:14px;min-width:135px}.audio-status{min-height:23px;text-align:center;font-size:12px;color:var(--muted);margin:10px 0}.tip{margin:24px 0 0;border-radius:16px;background:var(--light);padding:16px 18px;font-size:16px}.tip strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}.session-card .next{margin-top:25px;width:100%}.answer-label{display:block;margin:25px 0 8px;font-size:14px;font-weight:600}.answer-input{width:100%;border:2px solid var(--line);border-radius:16px;background:#fffefb;font-size:25px;letter-spacing:1px;color:var(--ink);padding:16px;min-height:65px;appearance:none}.answer-input:focus{border-color:#718c58}.answer-tools{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:8px}.answer-tools button{font-size:13px;padding:8px;min-height:44px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}.answer-help{min-height:20px;font-size:13px;color:var(--muted);margin-top:7px}.feedback-compare{background:var(--bg);border-radius:17px;padding:18px;margin-top:20px}.feedback-compare .your-answer{font-size:16px;color:var(--muted);overflow-wrap:anywhere}.feedback-compare .big-word{margin:8px 0;font-size:37px}.feedback-icon{width:54px;height:54px;border-radius:50%;background:var(--light);display:grid;place-items:center;margin:0 auto 20px;font-size:24px}.session-score{font-size:15px;color:var(--muted);margin-top:15px}.paper-box{background:var(--bg);padding:25px;border-radius:18px;margin-top:20px;text-align:center}.result-list{display:grid;gap:0;margin:20px 0}.result-row{display:flex;gap:15px;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.result-row:last-child{border-bottom:0}.result-row small{color:var(--muted)}.result-row .status{font-size:12px;text-align:right;max-width:45%}.pause-note{font-size:13px;color:var(--muted);text-align:center;margin-top:18px}.exam-timer{display:flex;align-items:center;gap:14px;justify-content:center;background:var(--light);padding:14px;border-radius:16px;margin-top:20px}.exam-timer strong{font-variant-numeric:tabular-nums;font-size:24px}.exam-entry{display:flex;align-items:center;gap:12px;margin:10px 0}.exam-entry>label{min-width:34px;color:var(--muted);font-size:14px}.exam-entry input{font-size:18px;padding:10px 14px}.exam-entry .audio-small{min-width:45px;padding:8px}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.metric{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:21px}.metric .value{font-size:34px;letter-spacing:-1px;font-weight:650;display:block;margin:7px 0}.metric .label{font-size:13px;color:var(--muted)}.parent-columns{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;margin-top:22px}.parent-columns .card h2{font-size:23px;margin-bottom:12px}.parent-columns p{font-size:14px}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table td,.data-table th{text-align:left;padding:13px 8px;border-bottom:1px solid var(--line)}.data-table th{color:var(--muted);font-weight:500;font-size:12px}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}.data-table .btn{white-space:nowrap}.search-input{min-width:0;border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--surface);color:var(--ink);font-size:16px}.word-search{display:flex;gap:12px;margin:20px 0;flex-wrap:wrap}.word-search input{flex:1}.word-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.word-item{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:16px 19px;display:flex;justify-content:space-between;gap:12px;align-items:center}.word-item small{display:block;color:var(--muted);font-size:12px;margin-top:3px}.word-item button{padding:7px 12px;min-height:42px;font-size:13px;background:var(--light)}.week-bars{display:flex;align-items:end;gap:12px;height:175px;margin:18px 0 8px}.day-bar{flex:1;text-align:center;display:flex;flex-direction:column;align-items:center;gap:5px;font-size:11px;height:100%;justify-content:flex-end}.day-bar .bar{width:100%;max-width:34px;background:#8da576;border-radius:7px 7px 0 0;min-height:2px}.day-bar .count{font-size:12px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.settings-grid>div{min-width:0}.settings-grid select{width:100%;min-width:0;max-width:100%;text-overflow:ellipsis}.settings-grid label{display:block;font-size:14px;margin-bottom:8px}.settings-grid input[type=date]{border:1px solid var(--line);border-radius:12px;padding:11px;background:var(--surface);font:inherit;color:inherit;max-width:100%;min-width:0}.fine-print{font-size:12px;color:var(--muted)}.garden-collection{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:25px 0}.garden-patch{padding:16px;border-radius:22px;background:var(--light);text-align:center}.garden-patch .garden-art{height:140px;margin:0;transform:scale(.76);transform-origin:bottom}.garden-patch p{font-size:13px;margin-top:10px}.garden-patch.locked{background:#eeeee4}.garden-patch.locked .garden-art{opacity:.35}.garden-patch.locked .flower{display:none}.steps-list{padding-left:24px}.steps-list li{padding-left:5px;margin:17px 0}.toast{position:fixed;top:max(16px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));margin:0 auto;width:fit-content;max-width:min(640px,calc(100% - 32px));box-sizing:border-box;background:var(--ink);color:#fff;padding:13px 21px;border-radius:14px;font-size:14px;line-height:1.4;overflow-wrap:anywhere;pointer-events:none;z-index:50;box-shadow:0 8px 30px #263f3222}.toast[hidden]{display:none}dialog{border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--ink);max-width:min(520px,calc(100% - 32px));padding:30px;max-height:85vh;overflow-y:auto}dialog::backdrop{background:#1c352b66}dialog h2{margin-bottom:14px}dialog .row{margin-top:25px}dialog p{font-size:15px}dialog .row .btn{flex:1}
@media(max-width:1150px){#main,.save-warning{margin-left:32px;margin-right:32px}.site-footer{margin-left:32px;margin-right:32px}.home-grid{gap:25px;padding-left:0;padding-right:0}.home-bottom{padding-left:0;padding-right:0}}
@media(max-width:750px){.site-header{padding:20px 22px 10px;flex-wrap:wrap;gap:20px}.site-header nav{width:100%;justify-content:space-between}.site-header nav a{flex:1;padding:8px 10px}.brand{font-size:22px}.brand small{font-size:8px}.site-header .brand-sprout{width:40px;height:44px}#main,.save-warning{margin:12px 20px 0}.site-footer{margin:28px 20px 0;gap:10px 23px;flex-wrap:wrap;font-size:11px}.site-footer span{width:100%;margin:0}.site-footer a{font-size:12px}.home-grid{display:block;padding:18px 0 0;min-height:0}.home-copy{position:relative;padding-right:55px}.home-copy h1{font-size:34px;margin:8px 0 13px}.home-copy>p{font-size:15px;max-width:310px}.home-hero-art{position:absolute;right:0;bottom:0;width:80px;height:120px;margin:0;transform:scale(.60);transform-origin:bottom right;padding:0;gap:0}.home-hero-art .small,.home-hero-art .tiny{display:none}.mission-card{padding:24px;margin-top:27px}.mission-card h2{font-size:26px;margin:11px 0}.mission-card .btn{margin-top:18px}.mission-meta{margin:12px 0}.home-bottom{grid-template-columns:1fr;margin-top:20px;gap:14px}.home-bottom .card{padding:20px}.page-head{margin:24px 0}.page-head h1{font-size:34px;letter-spacing:-1px}.page-head p{font-size:15px}.levels-grid{grid-template-columns:1fr}.level-card{padding:17px 18px}.level-card .level-number{width:43px;height:43px;border-radius:13px}.narrow{margin:20px auto}.session-card{padding:24px 21px;border-radius:23px}.session-card h1{font-size:29px}.meaning{font-size:18px}.big-word{font-size:36px}.audio-controls{gap:8px}.audio-controls .btn{min-width:0;flex:1;padding:11px 10px;font-size:13px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:10px}.metric{padding:17px}.metric .value{font-size:29px}.parent-columns{grid-template-columns:1fr}.settings-grid{grid-template-columns:minmax(0,1fr)}.word-list{grid-template-columns:1fr}.garden-collection{grid-template-columns:repeat(2,1fr);gap:12px}.card{padding:22px}.data-table{font-size:13px}.data-table td,.data-table th{padding:12px 4px}.data-table .btn.small{font-size:12px;padding:7px 9px}.garden-art{gap:6px}.row.mobile-stack{flex-direction:column;align-items:stretch}.row.mobile-stack>*{width:100%}.btn{padding:12px 16px}.session-head{font-size:12px}.session-head button{padding:6px 10px;font-size:12px}.loading-card{margin:50px auto;padding:20px}.exam-entry{gap:7px}.exam-entry input{font-size:16px}.exam-entry>label{min-width:25px}}
@media(prefers-reduced-motion:no-preference){.btn,.level-card{transition:background .15s,transform .15s}.btn:active,.level-card:active{transform:translateY(1px)}}
@media print{.site-header,.site-footer,.btn,button,.audio-controls,.toast,.save-warning,.word-search,.parent-tabs{display:none!important}body{background:white;color:black}#main{margin:0;max-width:none}.card,.metric{break-inside:avoid;border-color:#ccc}.parent-columns{display:block}.parent-columns>*{margin-top:20px}.word-list{grid-template-columns:1fr 1fr}}

/* Parent contact and privacy controls stay outside the learning flow. */
#parent-email{display:block;width:100%;max-width:100%}
.parent-connect-card{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.parent-connect-card>div{flex:1;min-width:min(100%,270px)}.parent-connect-card .muted{font-size:14px}.parent-choices{border:0;padding:0;margin:24px 0}.parent-choices legend{font-weight:600;font-size:15px;margin-bottom:12px}.check-choice{display:flex;align-items:flex-start;gap:12px;line-height:1.6;font-size:15px;padding:10px 0;cursor:pointer}.check-choice input{width:20px;height:20px;flex:0 0 20px;margin-top:3px;accent-color:var(--green)}.adult-choice{border-top:1px solid var(--line);margin-top:16px;padding-top:20px}.signup-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.parent-signup-result h2{font-size:25px}.privacy-page .card h2{font-size:25px}.privacy-page .muted{font-size:15px}.privacy-page a:not(.btn),#parent-signup-form a{text-decoration:underline;text-underline-offset:3px}.parent-signup-result a{overflow-wrap:anywhere}.parent-connect-card .btn{flex-shrink:0}@media(max-width:750px){.parent-connect-card{align-items:flex-start}.parent-connect-card>div{width:100%}.check-choice{font-size:14px}.privacy-page .card h2{font-size:23px}}

/* Destructive actions stay within grown-up settings and require confirmation. */
.btn.danger{color:#873b30;border-color:#bd8a80;background:#fff9f6}
#reset-confirmation{display:block;width:100%;max-width:100%}

@media(hover:hover){.btn:hover{filter:brightness(.97)}
.btn.danger:hover:not(:disabled){background:#f8e9e3;border-color:#873b30}}

/* Keep the grown-up name field roomy on tablets and within the card on phones. */
#child-name-setting{display:block;width:100%;max-width:100%;min-height:56px;font-size:20px}
