:root{color-scheme:light;--paper: #fff4c8;--cream: #fffaf0;--white: #ffffff;--cocoa: #3b2b22;--cocoa-soft: #6f5a48;--amber: #e9a11b;--amber-dark: #c8790c;--amber-soft: #f8cf64;--leaf: #5f8848;--leaf-dark: #436d36;--leaf-soft: #eff6e8;--line: #d7c5aa;--blue: #bfe4ef;--error: #a54435;--shadow: 0 22px 60px rgb(92 57 11 / 13%);--app-viewport-height: 100dvh;--font-rounded: "Arial Rounded MT Bold", "Trebuchet MS", ui-rounded, "Avenir Next", system-ui, sans-serif;--font-body: "Trebuchet MS", "Avenir Next", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color:var(--cocoa);background:var(--paper);font-family:var(--font-body);font-synthesis:none;line-height:1.35}*{box-sizing:border-box}html{min-height:100%;background:var(--paper)}body{min-width:320px;min-height:100vh;margin:0;overflow-x:hidden;color:var(--cocoa);background-color:var(--paper);background-image:url(/assets/warm-paper.png);background-position:center;background-size:cover;font-size:1rem}button,input,textarea{font:inherit}button,input,textarea{border-radius:14px}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:4px solid var(--blue);outline-offset:4px}h1[tabindex="-1"]:focus{outline:none}button:disabled{cursor:not-allowed;filter:grayscale(.25);opacity:.56}.setup-shell,.practice-shell,.results-shell{position:relative;isolation:isolate;min-height:100vh;margin-inline:auto;overflow:hidden}.setup-shell{width:min(100%,1536px);padding:max(38px,env(safe-area-inset-top)) max(13.54%,env(safe-area-inset-right)) max(32px,env(safe-area-inset-bottom)) max(12.44%,env(safe-area-inset-left))}.practice-shell,.results-shell{width:min(100%,1536px);padding:max(32px,env(safe-area-inset-top)) max(9.8%,env(safe-area-inset-right)) max(34px,env(safe-area-inset-bottom)) max(8.6%,env(safe-area-inset-left))}.results-shell{padding-top:max(127px,env(safe-area-inset-top))}.surface{position:relative;z-index:1;border:0;border-radius:46px 46px 40px 40px;background:#fffaf0f5;box-shadow:var(--shadow)}.surface:before{position:absolute;z-index:-1;top:-10px;right:48px;left:48px;height:64px;background:radial-gradient(ellipse 64px 32px at 64px 32px,var(--cream) 0 63px,transparent 64px) 0 0 / 128px 64px repeat-x;content:"";filter:drop-shadow(0 -10px 13px rgb(92 57 11 / 3%));pointer-events:none}.surface--setup{min-height:938px;padding:38px clamp(64px,7.5vw,115px) 24px}.surface--setup .page-title{font-size:clamp(2.7rem,4.4vw,4rem);line-height:.95;transform:none;white-space:nowrap}.surface--setup .field-label{font-size:1.55rem}.surface--setup .word-list{height:216px;min-height:216px;font-size:1.82rem;line-height:1.3}.surface--setup .word-count{font-size:1.45rem}.surface--setup .word-count:before{width:30px;height:30px;font-size:19px}.surface--setup .button{min-height:96px;font-size:2.25rem}.surface--practice{height:940px;min-height:940px;overflow:hidden;padding:4px 48px 40px}.practice-shell{padding-top:max(50px,env(safe-area-inset-top))}.surface--practice:before{top:-26px}.surface--results{min-height:844px;padding:55px clamp(72px,7vw,108px) 32px}.page-title,.practice-title,.brand-title,.metric-value,.button{font-family:var(--font-rounded)}.page-title{max-width:none;margin:0;color:var(--cocoa);font-size:clamp(3.8rem,4.9vw,4.8rem);font-weight:900;letter-spacing:-.025em;line-height:1;text-align:center;text-wrap:balance}.page-title--center{font-size:clamp(3.7rem,4.8vw,4.65rem)}.setup-hero{display:grid;grid-template-columns:clamp(110px,13vw,180px) minmax(0,1fr);gap:clamp(12px,1.5vw,22px);align-items:center;margin:-15px auto 7px}.setup-mascot,.brand-mascot{display:block;max-width:100%;pointer-events:none;-webkit-user-select:none;user-select:none}.setup-mascot{width:100%;transform:rotate(-5deg) scaleY(.92);transform-origin:center}.lead{margin:21px 0 39px;font-family:var(--font-rounded);font-size:clamp(1.28rem,1.55vw,1.55rem);font-weight:800;text-align:center}.field-label{display:block;margin-bottom:8px;font-family:var(--font-rounded);font-size:1.08rem;font-weight:800}.word-list,.answer-input{width:100%;border:2px solid #bca98f;color:var(--cocoa);background:var(--white);box-shadow:inset 0 2px 4px #4f31130d}.word-list{min-height:216px;padding:17px 20px;resize:vertical;font-size:1.12rem;line-height:1.52}.answer-input{height:82px;padding:11px 18px;font-family:var(--font-rounded);font-size:1.45rem}.word-list[aria-invalid=true],.answer-input[aria-invalid=true]{border-color:var(--error)}.word-count{display:flex;align-items:center;gap:9px;margin:9px 0 0;color:var(--leaf-dark);font-family:var(--font-rounded);font-size:1.01rem;font-weight:800}.word-count:before{display:inline-grid;width:21px;height:21px;place-items:center;border-radius:50%;color:var(--white);background:var(--leaf);content:"✓";font-family:sans-serif;font-size:13px;font-weight:900}.validation-message{min-height:21px;margin:5px 0 0;color:var(--error);font-weight:800}.validation-message:empty{min-height:0;margin:0}.settings{position:relative;display:grid;grid-template-columns:1fr;gap:3px;margin:15px 0 26px;padding:17px 100px 15px;border:3px solid var(--amber-soft);border-radius:5px;background:#ffffff2e}.settings-title{position:absolute;top:0;left:50%;padding:0 18px;color:transparent;background:transparent;font-family:var(--font-rounded);font-size:1.06rem;font-weight:900;transform:translate(-50%,-50%);white-space:nowrap}.checkbox-row{display:flex;min-height:42px;align-items:center;gap:11px;color:var(--cocoa);font-size:1.48rem;font-weight:700;cursor:pointer}.checkbox-row input{width:23px;height:23px;flex:0 0 23px;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid #b89770;border-radius:6px;background:var(--white)}.checkbox-row input:checked{border-color:var(--leaf);background-color:var(--leaf);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.5' d='m3 8 3 3 7-7'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;background-size:17px}.checkbox-row:has(input:disabled){color:#8a7d6b;cursor:default}.honeycomb-cells{display:flex;justify-content:center;gap:13px}.honeycomb-cell{position:relative;display:block;width:66px;height:58px;flex:0 0 auto;background:var(--amber);clip-path:polygon(25% 3%,75% 3%,100% 50%,75% 97%,25% 97%,0 50%)}.honeycomb-cell:after{position:absolute;top:4px;right:4px;bottom:4px;left:4px;background:var(--cream);clip-path:inherit;content:""}.honeycomb-cell--complete:after{background:var(--amber-soft)}.honeycomb-cell--current{filter:drop-shadow(0 2px 3px rgb(130 77 4 / 22%))}.honeycomb-cells--spray{position:absolute;z-index:-1;display:grid;grid-template-columns:repeat(2,49px);gap:0 1px;width:100px;opacity:.95;transform:rotate(-13deg)}.honeycomb-cells--spray .honeycomb-cell{width:51px;height:45px}.honeycomb-cells--spray .honeycomb-cell:after{background:var(--amber-soft)}.honeycomb-cells--spray .honeycomb-cell:nth-child(2n){transform:translateY(21px)}.honeycomb-cells--left{top:4px;left:-42px}.honeycomb-cells--right{right:-42px;bottom:17px;transform:rotate(13deg) scaleX(-1)}.button-row{display:flex;gap:14px}.button-row--setup{display:grid;grid-template-columns:1.14fr 1fr;gap:26px}.button{display:inline-flex;min-height:56px;align-items:center;justify-content:center;padding:13px 24px;border:3px solid transparent;border-radius:15px;font-size:1.12rem;font-weight:900;line-height:1.1;text-align:center;text-decoration:none;cursor:pointer;transition:transform .12s ease,background-color .12s ease,border-color .12s ease,box-shadow .12s ease}.button:hover:not(:disabled){transform:translateY(-1px)}.button:active:not(:disabled){transform:translateY(1px)}.button--primary{color:var(--white);border-color:var(--amber);background:linear-gradient(180deg,#f7b91f 0%,var(--amber) 72%);box-shadow:0 5px 0 var(--amber-dark);text-shadow:0 1px 0 rgb(91 53 0 / 22%)}.button--primary:hover:not(:disabled){border-color:#de920d;background:#de920d}.button--secondary{color:var(--leaf-dark);border-color:var(--leaf);background:var(--cream)}.button--secondary:hover:not(:disabled){background:var(--leaf-soft)}.button--quiet{color:var(--cocoa);border-color:#9a8069;background:var(--cream)}.button--quiet:hover:not(:disabled){background:#f4eadc}.button--hear{min-width:194px!important;gap:9px}.button--hear:before{width:24px;height:24px;background:currentcolor;clip-path:polygon(7% 36%,35% 36%,62% 13%,62% 87%,35% 64%,7% 64%);content:""}.brand-header{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:14px;padding:8px 0 14px;text-align:center}.back-button{position:absolute;z-index:5;top:20px;left:22px;display:inline-flex;min-height:46px;align-items:center;gap:7px;padding:8px 15px 8px 11px;border:2px solid #d9bd7c;border-radius:999px;color:var(--cocoa);background:#fffaf0f0;box-shadow:0 4px 12px #5c390b17;font-family:var(--font-rounded);font-size:1rem;font-weight:900;cursor:pointer}.back-button:hover{border-color:var(--amber);background:var(--white)}.back-button-arrow{font-family:var(--font-body);font-size:1.55rem;line-height:.7}.results-shell>.brand-header{position:absolute;z-index:4;top:19px;right:0;left:0;padding:0}.brand-mascot{width:clamp(76px,8.5vw,112px);transform:rotate(-8deg)}.brand-title{margin:0;color:var(--cocoa);font-size:clamp(2.35rem,3.65vw,3.55rem);font-weight:900;letter-spacing:-.04em}.session-header{position:relative;z-index:2;max-width:780px;margin:0 auto;padding:2px 24px 0}.status-row{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;margin:0 -141px 24px;padding:11px 46px;border:2px solid #efd18f;border-radius:18px;transform:translate(-9px);color:var(--cocoa-soft);font-family:var(--font-rounded);font-size:1.03rem;font-weight:800}.status-row>:last-child{text-align:right}.stage-label{min-width:142px;padding:7px 16px;border-radius:999px;color:var(--leaf-dark);background:var(--leaf-soft);font-weight:900;text-align:center}.progress{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.progress-label{margin:7px 0 0;color:var(--leaf-dark);font-family:var(--font-rounded);font-size:1.05rem;font-weight:900;text-align:center}.session-header .honeycomb-cell{width:72px;height:63px}.practice-content{position:relative;z-index:2;display:flex;width:min(100%,1000px);min-height:688px;flex-direction:column;align-items:center;margin:0 auto;padding:43px 18px 80px;text-align:center}.practice-content--feedback{gap:24px;justify-content:center}.practice-title{margin:0;color:var(--cocoa);font-size:clamp(2rem,2.6vw,2.6rem);font-weight:900;letter-spacing:-.025em;line-height:1.12;text-wrap:balance}.study-word,.masked-word,.correction-word{max-width:100%;margin:-2px 0 36px;overflow-wrap:anywhere;color:var(--cocoa);font-family:var(--font-rounded);font-size:clamp(4rem,6.8vw,6.5rem);font-weight:900;letter-spacing:.12em;line-height:1.08}.study-word,.correction-word{letter-spacing:.04em}.masked-word{color:#665646;font-variant-ligatures:none;white-space:pre-wrap}.no-hint-note,.study-note{margin:25px 0;color:var(--cocoa-soft);font-size:1.08rem;font-weight:700}.study-note{min-height:24px}.practice-content>.button{min-width:min(100%,220px)}.answer-group{width:min(100%,690px);margin-top:28px;text-align:left}.answer-group .button{display:flex;width:min(100%,416px);min-height:80px;margin-top:16px;margin-inline:auto;font-size:2.1rem}.feedback{display:grid;width:min(100%,948px);min-height:82px;place-items:center;margin-top:28px;padding:14px 20px;border:2px solid #eadbc5;border-radius:18px;color:var(--cocoa-soft);background:#ffffffb3;font-family:var(--font-rounded);font-size:1.08rem;font-weight:900;text-align:center}.feedback[data-tone=positive]{color:var(--leaf-dark);border-color:#b9d3ac;background:var(--leaf-soft)}.comparison{width:min(100%,640px);margin-top:20px;padding:17px 20px;border:2px solid #eadbc5;border-radius:16px;background:#ffffffa6;text-align:left}.comparison p{margin:0;overflow-wrap:anywhere}.comparison p+p{margin-top:7px;font-weight:900}.primary-results{display:flex;justify-content:center;gap:18px;margin:24px 0 14px;transform:none}.primary-results .metric{position:relative;display:grid;width:380px;height:190px;place-content:center;background:var(--amber);clip-path:polygon(15% 2%,85% 2%,100% 50%,85% 98%,15% 98%,0 50%)}.primary-results .metric:before{position:absolute;z-index:-1;top:5px;right:5px;bottom:5px;left:5px;background:var(--cream);clip-path:inherit;content:""}.metric{display:flex;flex-direction:column;align-items:center;text-align:center}.metric-value{color:var(--amber-dark);font-size:clamp(2.3rem,3.2vw,3.2rem);line-height:1}.primary-results .metric-value{font-size:clamp(3rem,4.3vw,4.2rem)}.metric-label{margin-top:7px;color:var(--cocoa);font-family:var(--font-rounded);font-size:1rem;font-weight:900}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);max-width:870px;margin:0 auto 25px;padding:26px 0;border-block:2px solid #ead6b9}.metrics-grid .metric{padding-inline:12px}.metrics-grid .metric+.metric{border-left:2px solid #ead6b9}.metrics-grid .metric-value{font-size:2.3rem}.result-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:864px;margin:54px auto 0}.result-list{min-height:154px;margin:0;padding:22px 26px;border:2px solid #ead6b9;border-radius:20px;background:#ffffffbd}.result-list-title{margin:0 0 11px;padding:0;border:0;color:var(--cocoa);font-family:var(--font-rounded);font-size:1.23rem;font-weight:900}.result-list ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 20px;margin:0;padding:0;list-style:none}.result-list li{padding:3px 0;overflow-wrap:anywhere;color:var(--cocoa-soft);font-weight:700}.result-list li:before{margin-right:7px;color:var(--leaf);content:"✓";font-weight:900}.result-list-empty:before{content:"★"!important}.result-list-more{display:none}.button-row--results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:45px}.button-row--results .button{min-height:80px;padding-inline:14px;font-size:1rem}.sunflowers{position:absolute;z-index:3;max-width:none;pointer-events:none;-webkit-user-select:none;user-select:none}.sunflowers--setup{bottom:-75px;left:-4%;width:clamp(340px,30.3vw,465px);transform:scaleX(-1)}.sunflowers--practice{right:-.5%;bottom:-48px;width:clamp(300px,26vw,400px)}.sunflowers--results{bottom:-10px;left:-.7%;width:clamp(250px,21.5vw,330px);transform:scaleX(-1) scaleY(1.25);transform-origin:bottom center}@media(max-width:1100px){.setup-shell{padding-right:max(8%,env(safe-area-inset-right));padding-left:max(8%,env(safe-area-inset-left))}.surface--setup{padding-inline:70px}.settings{grid-template-columns:1fr}.surface--practice{padding-top:44px;padding-inline:28px}.status-row{margin-inline:0;padding-inline:20px;transform:none}}@media(min-width:761px)and (max-width:900px){.surface--setup .button{font-size:1.9rem}.button-row--setup{gap:18px}.sunflowers--setup{bottom:-155px;left:-140px;width:280px}.sunflowers--practice,.sunflowers--results{z-index:0}}@media(max-width:760px){body{background-position:52% center}.setup-shell,.practice-shell,.results-shell{width:100%;min-height:100svh;min-height:100dvh;padding:max(17px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}.surface{min-height:calc(100svh - max(17px,env(safe-area-inset-top)) - max(10px,env(safe-area-inset-bottom)));min-height:calc(100dvh - max(17px,env(safe-area-inset-top)) - max(10px,env(safe-area-inset-bottom)));border-radius:32px;box-shadow:0 12px 38px #5c390b1c}.surface:before{top:-19px;right:16px;left:16px;height:40px;background:radial-gradient(circle at 20px 20px,var(--cream) 0 19px,transparent 20px) 0 0 / 40px 40px repeat-x}.surface--setup{padding:35px 23px 210px}.surface--results{padding:35px 23px 120px}.surface--practice{height:auto;min-height:calc(100svh - max(17px,env(safe-area-inset-top)) - max(10px,env(safe-area-inset-bottom)));min-height:calc(100dvh - max(17px,env(safe-area-inset-top)) - max(10px,env(safe-area-inset-bottom)));padding:20px 17px 115px}.page-title{font-size:clamp(2.55rem,12vw,3.35rem)}.page-title--center{font-size:clamp(2.25rem,10vw,3rem)}.surface--setup .page-title,.surface--results .page-title,.primary-results{transform:none}.setup-hero{grid-template-columns:88px minmax(0,1fr);gap:8px;margin:-21px 0 5px}.setup-hero .page-title{font-size:clamp(2.35rem,11.5vw,3.15rem);text-align:left;white-space:normal}.setup-mascot{width:88px}.lead{font-size:1.16rem}.word-list{min-height:225px}.settings{grid-template-columns:1fr;gap:3px;padding:28px 20px 20px}.button-row--setup{grid-template-columns:1fr;gap:16px}.surface--setup .button{min-height:78px;font-size:1.72rem}.honeycomb-cells--spray{display:none}.brand-header{gap:9px;padding:2px 0 12px}.brand-mascot{width:58px}.brand-title{font-size:1.72rem}.session-header{padding-inline:0}.status-row{grid-template-columns:1fr auto 1fr;gap:6px;margin:0 0 12px;padding:8px 10px;transform:none;font-size:.73rem}.stage-label{min-width:100px;padding:6px 8px}.session-header .honeycomb-cells{gap:6px}.session-header .honeycomb-cell{width:min(12.5vw,51px);height:min(11vw,45px)}.practice-content{width:100%;min-height:620px;padding:39px 3px 110px}.practice-title{font-size:clamp(1.65rem,7vw,2.05rem)}.study-word,.masked-word,.correction-word{margin:27px 0 31px;font-size:clamp(2.65rem,13.2vw,4.25rem);letter-spacing:.08em}.answer-group{margin-top:28px}.answer-input{height:59px}.answer-group .button{min-height:61px}.feedback{min-height:93px;margin-top:18px}.sunflowers--setup{bottom:-25px;left:-50px;width:150px}.sunflowers--practice{right:-48px;bottom:-45px;width:205px}.sunflowers--results{bottom:-60px;left:-66px;width:230px}.primary-results{gap:16px;margin-block:24px}.primary-results .metric{width:145px;height:126px}.primary-results .metric-value{font-size:3rem}.metrics-grid{grid-template-columns:repeat(2,1fr);gap:18px 0}.metrics-grid .metric:nth-child(3){border-left:0}.metrics-grid .metric-value{font-size:2rem}.result-lists,.button-row--results{grid-template-columns:1fr}}@media(max-width:390px){.surface--setup,.surface--results{padding-inline:18px}.surface--practice{padding-inline:14px}.session-header .honeycomb-cell{width:46px;height:41px}.primary-results .metric{width:128px;height:112px}.primary-results .metric-value{font-size:2.6rem}}@media(max-width:1366px){html,body,#app{width:100%;height:100%;min-height:0;overflow:hidden}body{height:100svh;height:var(--app-viewport-height)}.setup-shell,.practice-shell,.results-shell{width:100%;height:100%;min-height:0;padding:max(14px,env(safe-area-inset-top)) max(clamp(14px,4vw,54px),env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(clamp(14px,4vw,54px),env(safe-area-inset-left));overflow:hidden}.results-shell{padding-top:max(78px,env(safe-area-inset-top))}.surface--setup,.surface--practice,.surface--results{height:100%;min-height:0;overflow:hidden}.surface--setup{display:flex;flex-direction:column;padding:clamp(18px,3dvh,34px) clamp(34px,7vw,70px) clamp(14px,2.5dvh,24px)}.setup-hero{grid-template-columns:clamp(68px,9dvh,108px) minmax(0,1fr);gap:clamp(8px,1.5vw,16px);margin:clamp(-12px,-1dvh,-5px) auto 0}.surface--setup .page-title{font-size:clamp(2.25rem,5.8vw,3.5rem)}.lead{margin:clamp(4px,1dvh,10px) 0 clamp(8px,1.6dvh,16px);font-size:clamp(1rem,2.5vw,1.3rem)}.surface--setup .field-label{margin-bottom:5px;font-size:clamp(1rem,2.6vw,1.25rem)}.surface--setup .word-list{height:auto;min-height:70px;max-height:22dvh;flex:1 1 145px;padding:clamp(8px,1.6dvh,14px) 14px;resize:none;font-size:clamp(1rem,3vw,1.35rem)}.surface--setup .word-count{margin-top:5px;font-size:clamp(.9rem,2.3vw,1.1rem)}.surface--setup .word-count:before{width:22px;height:22px;font-size:14px}.settings{gap:0;margin:clamp(7px,1.3dvh,13px) 0 clamp(8px,1.5dvh,15px);padding:clamp(7px,1.2dvh,12px) clamp(42px,8vw,78px)}.checkbox-row{min-height:clamp(29px,3.8dvh,38px);gap:9px;font-size:clamp(.96rem,2.55vw,1.22rem)}.checkbox-row input{width:21px;height:21px;flex-basis:21px}.button-row--setup{gap:clamp(10px,2vw,18px)}.surface--setup .button{min-height:clamp(54px,7.5dvh,72px);padding:9px 14px;font-size:clamp(1.25rem,3.8vw,1.8rem)}.surface--practice{display:flex;flex-direction:column;padding:4px clamp(18px,3.5vw,30px) clamp(10px,2dvh,20px)}.surface--practice>.brand-header{flex:0 0 auto;padding:2px 0 7px}.brand-mascot{width:clamp(56px,8dvh,86px)}.brand-title{font-size:clamp(1.9rem,5vw,2.75rem)}.session-header{width:min(100%,780px);flex:0 0 auto}.status-row{margin:0 0 clamp(7px,1.3dvh,13px);padding:clamp(6px,1dvh,9px) 16px}.session-header .honeycomb-cells{gap:clamp(6px,1.1vw,10px)}.session-header .honeycomb-cell{width:clamp(42px,6.5dvh,58px);height:clamp(37px,5.7dvh,51px)}.progress-label{margin-top:4px;font-size:clamp(.86rem,2.2vw,1rem)}.practice-content{width:min(100%,900px);min-height:0;flex:1 1 auto;justify-content:flex-start;padding:clamp(12px,2.3dvh,24px) 3px 4px;overflow:hidden}.practice-content--feedback{gap:clamp(12px,2dvh,20px);justify-content:center}.practice-title{font-size:clamp(1.65rem,3.5dvh,2.25rem)}.study-word,.masked-word,.correction-word{margin:clamp(8px,1.8dvh,18px) 0 clamp(10px,2dvh,20px);font-size:clamp(3rem,8dvh,5.2rem)}.no-hint-note,.study-note{margin:clamp(8px,1.5dvh,15px) 0}.practice-content>.button{min-height:clamp(50px,6.5dvh,62px)}.answer-group{margin-top:clamp(8px,1.5dvh,16px)}.answer-input{height:clamp(52px,6.8dvh,66px)}.answer-group .button{min-height:clamp(52px,7dvh,66px);margin-top:clamp(8px,1.3dvh,13px);font-size:clamp(1.4rem,3.5dvh,1.8rem)}.feedback{min-height:clamp(48px,7dvh,66px);margin-top:clamp(8px,1.4dvh,14px);padding:8px 14px}.comparison{margin-top:clamp(8px,1.5dvh,15px);padding:clamp(9px,1.5dvh,14px) 16px}.surface--results{display:flex;flex-direction:column;padding:clamp(20px,3dvh,30px) clamp(30px,6vw,66px) clamp(14px,2dvh,20px)}.surface--results .page-title{flex:0 0 auto;font-size:clamp(2.5rem,6vw,3.5rem)}.primary-results{flex:0 0 auto;gap:14px;margin:clamp(8px,1.5dvh,15px) 0 clamp(7px,1dvh,10px)}.primary-results .metric{width:min(38vw,300px);height:clamp(90px,14dvh,130px)}.primary-results .metric-value{font-size:clamp(2.5rem,5.5dvh,3.5rem)}.metrics-grid{flex:0 0 auto;margin:0 auto clamp(8px,1.2dvh,12px);padding:clamp(9px,1.5dvh,15px) 0}.metrics-grid .metric-value{font-size:clamp(1.65rem,3.5dvh,2.15rem)}.result-lists{width:100%;height:clamp(120px,20dvh,190px);min-height:80px;flex:0 1 auto;gap:clamp(10px,2vw,18px);margin:0 auto;overflow:hidden}.result-list{min-height:0;padding:clamp(11px,1.8dvh,17px) clamp(14px,2.5vw,22px);overflow:hidden}.result-list-title{margin-bottom:6px;font-size:clamp(1rem,2.5vw,1.18rem)}.result-list li{padding:2px 0;font-size:clamp(.85rem,2vw,1rem)}.button-row--results{flex:0 0 auto;gap:clamp(7px,1.3vw,12px);margin-top:auto;padding-top:clamp(8px,1.5dvh,14px)}.button-row--results .button{min-height:clamp(50px,7dvh,62px);padding:8px 10px}.sunflowers--setup,.sunflowers--practice,.sunflowers--results{z-index:0}}@media(max-width:760px){.setup-shell,.practice-shell,.results-shell{padding:max(10px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.results-shell{padding-top:max(62px,env(safe-area-inset-top))}.surface{min-height:0;border-radius:28px}.surface--setup{padding:clamp(14px,2.5dvh,22px) 14px clamp(10px,1.8dvh,15px)}.setup-hero{grid-template-columns:clamp(50px,7.5dvh,66px) minmax(0,1fr);margin:clamp(-9px,-1dvh,-3px) auto 0}.setup-hero .page-title{font-size:clamp(1.75rem,8.8vw,2.55rem);white-space:nowrap}.setup-mascot{width:100%}.lead{margin:2px 0 clamp(6px,1.2dvh,10px);font-size:clamp(.88rem,4vw,1.08rem)}.surface--setup .field-label{font-size:clamp(.91rem,3.8vw,1.05rem)}.surface--setup .word-list{min-height:68px;max-height:24dvh;flex-basis:100px;padding:7px 10px;font-size:clamp(.9rem,4vw,1.05rem);line-height:1.35}.surface--setup .word-count{font-size:.82rem}.surface--setup .word-count:before{width:18px;height:18px;font-size:11px}.settings{margin:clamp(5px,1dvh,8px) 0 clamp(6px,1.2dvh,10px);padding:5px 12px}.checkbox-row{min-height:clamp(25px,3.6dvh,30px);gap:7px;font-size:clamp(.82rem,3.8vw,.98rem)}.checkbox-row input{width:19px;height:19px;flex-basis:19px;border-radius:5px}.button-row--setup{grid-template-columns:1.12fr 1fr;gap:7px}.surface--setup .button{min-height:clamp(47px,6.8dvh,56px);padding:7px 8px;font-size:clamp(.95rem,4.3vw,1.18rem)}.back-button{top:10px;left:10px;width:42px;min-height:42px;justify-content:center;padding:0}.back-button-label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.back-button-arrow{font-size:1.65rem}.surface--practice{padding:2px 12px 8px}.surface--practice>.brand-header{gap:7px;padding:2px 0 5px 42px}.brand-mascot{width:clamp(42px,6.5dvh,54px)}.brand-title{font-size:clamp(1.35rem,6.2vw,1.7rem)}.status-row{gap:5px;margin-bottom:6px;padding:5px 7px;font-size:clamp(.65rem,3vw,.75rem)}.stage-label{min-width:86px;padding:5px 6px}.session-header .honeycomb-cells{gap:5px}.session-header .honeycomb-cell{width:min(11vw,40px);height:min(9.7vw,35px)}.progress-label{margin-top:2px;font-size:.76rem}.practice-content{padding:clamp(7px,1.5dvh,13px) 2px 2px}.practice-title{font-size:clamp(1.35rem,6vw,1.75rem)}.study-word,.masked-word,.correction-word{margin:clamp(5px,1dvh,9px) 0;font-size:clamp(2.25rem,7.5dvh,3.4rem)}.no-hint-note,.study-note{margin:clamp(5px,1dvh,9px) 0;font-size:clamp(.83rem,3.7vw,1rem)}.practice-content>.button,.answer-group .button{min-height:clamp(46px,6.5dvh,54px)}.button--hear{min-width:min(100%,175px)!important}.answer-group{margin-top:clamp(5px,1dvh,9px)}.answer-group .field-label{margin-bottom:4px;font-size:.92rem}.answer-input{height:clamp(46px,6.5dvh,54px);padding:7px 12px;font-size:1.2rem}.answer-group .button{margin-top:7px;font-size:clamp(1.2rem,5vw,1.45rem)}.feedback{min-height:clamp(42px,6dvh,52px);margin-top:7px;padding:6px 10px;font-size:.88rem}.comparison{margin-top:6px;padding:7px 10px;font-size:.85rem}.results-shell>.brand-header{top:6px}.surface--results{padding:clamp(12px,2dvh,18px) 12px 9px}.surface--results .page-title{font-size:clamp(1.8rem,8vw,2.35rem)}.primary-results{gap:8px;margin:5px 0}.primary-results .metric{width:min(39vw,150px);height:clamp(65px,10.5dvh,88px)}.primary-results .metric-value{font-size:clamp(2rem,6.5dvh,2.7rem)}.metric-label{margin-top:3px;font-size:.76rem}.metrics-grid{grid-template-columns:repeat(4,1fr);gap:0;margin-bottom:6px;padding:6px 0}.metrics-grid .metric{min-width:0;padding-inline:4px}.metrics-grid .metric:nth-child(3){border-left:2px solid #ead6b9}.metrics-grid .metric-value{font-size:clamp(1.25rem,5vw,1.7rem)}.metrics-grid .metric-label{font-size:clamp(.58rem,2.6vw,.72rem);line-height:1.1}.result-lists{grid-template-columns:repeat(2,minmax(0,1fr));height:clamp(100px,17dvh,145px);gap:7px;min-height:60px}.result-list{padding:8px;border-radius:13px}.result-list-title{margin-bottom:3px;font-size:clamp(.72rem,3.1vw,.88rem);line-height:1.15}.result-list ul{grid-template-columns:1fr;gap:0}.result-list li{padding:1px 0;font-size:clamp(.68rem,2.8vw,.8rem)}.result-list li:not(.result-list-more):nth-child(n+4){display:none}.result-list-more{display:block}.result-list-more:before{content:""!important}.button-row--results{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:auto;padding-top:6px}.button-row--results .button{min-height:clamp(43px,6.5dvh,52px);padding:5px 4px;border-width:2px;border-radius:11px;font-size:clamp(.64rem,2.7vw,.78rem)}.sunflowers--setup{bottom:-28px;left:-48px;width:135px}.sunflowers--practice{right:-42px;bottom:-36px;width:170px}.sunflowers--results{bottom:-55px;left:-58px;width:190px}}@media(max-width:1366px)and (max-height:600px){.setup-shell,.practice-shell,.results-shell{padding:max(7px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}.results-shell{padding-top:max(48px,env(safe-area-inset-top))}.surface{border-radius:22px}.surface--setup{padding:7px clamp(16px,4vw,34px) 7px}.setup-hero{grid-template-columns:42px minmax(0,1fr);gap:6px;margin:-4px auto 0}.setup-hero .page-title{font-size:clamp(1.65rem,5.5vw,2rem)}.lead{margin:0 0 3px;font-size:.78rem}.surface--setup .field-label{margin-bottom:2px;font-size:.78rem}.surface--setup .word-list{min-height:43px;max-height:65px;flex-basis:50px;padding:4px 8px;font-size:.82rem}.surface--setup .word-count{gap:5px;margin-top:2px;font-size:.7rem}.surface--setup .word-count:before{width:14px;height:14px;font-size:9px}.settings{grid-template-columns:repeat(2,minmax(0,1fr));margin:3px 0 4px;padding:3px 9px}.checkbox-row{min-height:22px;gap:5px;font-size:clamp(.68rem,1.8vw,.8rem)}.checkbox-row input{width:16px;height:16px;flex-basis:16px}.surface--setup .button{min-height:39px;padding:4px 7px;font-size:clamp(.78rem,2.5vw,1rem)}.surface--practice{padding:1px 10px 5px}.surface--practice>.brand-header{padding-block:0 2px}.brand-mascot{width:36px}.brand-title{font-size:1.25rem}.back-button{top:5px;left:7px;width:34px;min-height:34px}.status-row{margin-bottom:3px;padding-block:3px}.session-header .honeycomb-cells,.progress-label{display:none}.practice-content{padding:5px 2px 1px}.practice-title{font-size:clamp(1.15rem,4dvh,1.4rem)}.study-word,.masked-word,.correction-word{margin:3px 0;font-size:clamp(1.9rem,9dvh,2.6rem)}.no-hint-note,.study-note{min-height:0;margin:3px 0;font-size:.75rem}.practice-content>.button,.answer-group .button{min-height:38px;padding-block:4px}.answer-group{margin-top:3px}.answer-group .field-label{margin-bottom:2px;font-size:.75rem}.answer-input{height:38px}.answer-group .button{margin-top:4px;font-size:1rem}.feedback{min-height:34px;margin-top:4px;padding:3px 8px;font-size:.76rem}.comparison{margin-top:3px;padding:4px 8px;font-size:.74rem}.results-shell>.brand-header{top:3px}.surface--results{padding:7px 12px 6px}.surface--results .page-title{font-size:1.55rem}.primary-results .metric{height:52px}.primary-results .metric-value{font-size:1.7rem}.metric-label{font-size:.62rem}.metrics-grid{margin-bottom:3px;padding:3px 0}.metrics-grid .metric-value{font-size:1.1rem}.result-list{padding:5px 7px}.button-row--results{margin-top:4px}.button-row--results .button{min-height:37px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
