:root{--deep:#1E4DB7;--blue:#4DA7F2;--teal:#16B9A6;--gold:#FFC24D;--coral:#FF7D7A;--purple:#8E7CF8;--ink:#12346f;--line:#cbe6fb;--shadow:0 14px 38px rgba(30,77,183,.18)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-rounded,"Arial Rounded MT Bold",system-ui,sans-serif;color:var(--ink);background:#eef9ff}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible{outline:5px solid #111;outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.screen{min-height:100vh;padding:18px 24px 42px;display:flex;flex-direction:column;position:relative;overflow:hidden;background:linear-gradient(#f7fcff,#fff)}.screen:after{content:"";position:absolute;z-index:0;left:-6%;right:-6%;bottom:-95px;height:170px;border-radius:50% 50% 0 0;background:linear-gradient(12deg,#0ba985,#27c69f)}footer{position:absolute;z-index:4;bottom:13px;left:50%;transform:translateX(-50%);font-weight:800;color:#1453aa;font-size:.88rem;white-space:nowrap}
.top{height:82px;display:flex;justify-content:space-between;align-items:flex-start;position:relative;z-index:10}.brand-home{border:0;background:transparent;padding:0;border-radius:14px}.brand-home:hover .brand,.brand-home:focus-visible .brand{filter:drop-shadow(0 5px 8px rgba(30,77,183,.22));transform:translateY(-1px)}.brand{display:flex;align-items:center;gap:8px;color:#1445a9;line-height:.82;transition:.18s}.brand svg{width:68px;height:68px}.brand b{display:block;font-size:22px;letter-spacing:-.7px}.brand .world{color:var(--teal);margin-top:4px}.top-actions{display:flex;gap:10px;align-items:center}.nav-control,.audio-control{border:2px solid var(--line);background:#fff;border-radius:18px;height:56px;padding:5px 14px;display:flex;align-items:center;gap:7px;font-weight:850;box-shadow:0 6px 18px rgba(30,77,183,.12)}.nav-control svg{width:39px;height:39px}.nav-control>span{font-size:30px}.audio-control{border:0;background:#0870e8;color:#fff}.audio-control svg{width:30px;height:30px}.audio-control span{font-size:.85rem}.reset{color:#31568f}
h1{font-size:clamp(2.2rem,4vw,4.2rem);line-height:1.02;letter-spacing:-.04em;margin:0}h2{line-height:1.08}.primary,.secondary{border:0;border-radius:20px;min-height:64px;padding:15px 27px;font-weight:900;font-size:1.15rem}.primary{background:linear-gradient(135deg,#075ecd,#0878ef);color:#fff;box-shadow:0 7px 0 #084aa0}.primary span{margin-left:16px;font-size:1.35em}.primary:active{transform:translateY(4px);box-shadow:0 3px 0 #084aa0}.secondary{background:#fff;border:3px solid var(--deep)}.center{width:min(1180px,100%);margin:auto;position:relative;z-index:2;text-align:center}
.welcome{padding:14px;background:#c9efff}.welcome:after{display:none}.welcome-card{flex:1;border:2px solid #72c2f6;border-radius:24px;background:url("assets/welcome-exterior-v1.png") center/cover no-repeat;position:relative;overflow:hidden}.welcome-card:after{display:none}.welcome-brand{position:absolute;z-index:4;left:44%;top:5%;transform:translateX(-50%);width:480px;display:flex;flex-direction:column;align-items:center}.welcome-logo{display:block}.welcome-brand .brand svg{width:128px;height:128px}.welcome-brand .brand b{font-size:52px}.welcome-brand p{font-size:.82rem;letter-spacing:.14em;font-weight:900;color:#1744a1;margin:12px 0 5px}.welcome-brand .primary{margin-top:17px}.welcome-sound{position:absolute;z-index:5;right:22px;top:20px;width:58px;height:58px;border:0;border-radius:50%;background:#0870e8;color:#fff;display:grid;place-items:center;box-shadow:0 7px 0 #0756b1}.welcome-sound svg{width:34px;height:34px}.sign{position:absolute;z-index:4;right:2.5%;bottom:17.5%;width:20%;display:flex;flex-direction:column;gap:19px;transform:rotate(-1deg)}.sign b{height:48px;display:grid;place-items:center;padding:2px 8px;background:transparent;border:0;color:#0d51a8;box-shadow:none;font-size:clamp(.62rem,1.05vw,.96rem);white-space:nowrap}.ambient.cloud{position:absolute;z-index:2;width:112px;height:34px;border-radius:99px;background:#fff;opacity:.68;animation:drift 15s ease-in-out infinite alternate;pointer-events:none}.ambient.cloud:before,.ambient.cloud:after{content:"";position:absolute;border-radius:50%;background:#fff}.ambient.cloud:before{width:46px;height:46px;left:16px;bottom:0}.ambient.cloud:after{width:58px;height:58px;left:48px;bottom:0}.cloud.one{left:31%;top:16%}.cloud.two{right:29%;top:31%;animation-direction:alternate-reverse}@keyframes drift{to{transform:translateX(24px)}}
.audio-choice h1{margin-bottom:40px}.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;width:min(740px,100%);margin:auto}.choice{height:105px;border:0;border-radius:22px;display:flex;align-items:center;justify-content:center;gap:18px;font-size:2rem;font-weight:900}.choice svg{width:52px;height:52px}.choice.yes{background:#086ee1;color:#fff;box-shadow:0 7px 0 #0756b1}.choice.no{background:#e0ecf6;color:#355a83}
.age-choice{margin:0 auto auto;padding-top:1vh}.age-choice h1{margin-bottom:24px}.age-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.age-card{height:315px;border:0;border-radius:22px;padding:0;overflow:hidden;background:color-mix(in srgb,var(--accent) 25%,white);box-shadow:var(--shadow);display:flex;flex-direction:column}.age-card img{width:100%;height:248px;object-fit:contain;object-position:center bottom}.age-card b{display:grid;place-items:center;min-height:67px;background:var(--accent);color:#fff;font-size:1.12rem;padding:7px}.age-card:first-child b{color:#103c86}.age-card:hover{transform:translateY(-5px)}
.house-screen{padding-bottom:18px;background:linear-gradient(#dff5ff,#f8fdff)}.house-screen:after{display:none}.visitor{position:relative;z-index:12;align-self:center;margin:-72px auto 8px;height:72px;display:flex;align-items:center;background:#fff;border:2px solid var(--line);border-radius:999px;padding:5px 22px 5px 7px;box-shadow:var(--shadow)}.visitor img{width:60px;height:60px;border-radius:50%;object-fit:contain;object-position:center bottom;background:#e7f6ff}.visitor span b,.visitor span small{display:block;text-align:left}.visitor span small{margin-top:4px;color:#315b9d}.house-map{position:relative;z-index:2;width:min(1310px,100%);margin:auto;border-radius:25px;overflow:hidden;border:6px solid #fff;box-shadow:var(--shadow);aspect-ratio:16/9}.house-art{width:100%;height:100%;object-fit:cover}.room-pin{position:absolute;transform:translate(-50%,-50%);border:3px solid #fff;background:#fff;border-radius:16px;min-height:58px;max-width:190px;padding:5px 11px 5px 5px;display:flex;align-items:center;gap:7px;box-shadow:0 7px 18px rgba(12,46,102,.3);font-size:.85rem}.room-pin img{width:46px;height:46px;object-fit:contain}.room-pin b{line-height:1.08}.room-pin:after{content:"";position:absolute;height:5px;left:8px;right:8px;bottom:-4px;border-radius:8px;background:var(--accent)}
.room-screen{background:linear-gradient(rgba(238,250,255,.76),rgba(255,255,255,.9)),url("assets/health-house-main-v3.png") center/cover}.room-screen:after{display:none}.room-heading{position:relative;z-index:2;align-self:center;margin:-68px auto 0;background:#fff;border-radius:28px;padding:9px 34px 9px 12px;display:flex;align-items:center;gap:15px;box-shadow:var(--shadow)}.room-heading img{width:86px;height:86px;object-fit:contain}.room-heading p{font-weight:900;color:#2370ca;margin:0 0 4px}.room-heading h1{font-size:2.25rem}.featured-card{position:relative;z-index:2;margin:auto;width:min(800px,100%);min-height:360px;background:linear-gradient(125deg,#fff 0 62%,#fff3bd 62%);border:6px solid var(--gold);border-radius:30px;padding:30px;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;box-shadow:var(--shadow)}.featured-card>img{width:100%;height:270px;object-fit:contain}.featured-card span:first-child{color:#1d62c2;font-size:.8rem;letter-spacing:.12em;font-weight:900}.featured-card h2{font-size:2.35rem;margin:8px 0}.featured-card p{font-size:1.08rem;line-height:1.45}.featured-card .primary{margin-top:5px}
.learn-screen:after{background:linear-gradient(12deg,#34b992,#80d95b)}.lesson{position:relative;z-index:2;width:min(1080px,100%);margin:auto}.lesson-title{display:flex;align-items:center;justify-content:center;gap:20px}.lesson-title img{width:125px;height:125px;object-fit:contain}.lesson-title p{font-size:.8rem;letter-spacing:.12em;font-weight:900;color:#1b67c6;margin:0 0 6px}.lesson-title h1{font-size:3rem}.lesson-title span{display:block;margin-top:8px;font-size:1.08rem}.lesson-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin:24px 0}.lesson-cards article{background:#fff;border:3px solid var(--line);border-radius:22px;padding:19px;box-shadow:var(--shadow)}.lesson-cards article>b{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;margin:auto;background:var(--deep);color:#fff;font-size:1.25rem}.lesson-cards h2{font-size:1.25rem;margin:12px 0 7px;text-align:center}.lesson-cards p{text-align:center;line-height:1.35;margin:0}.prompt{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#e9f7ff;border-radius:22px;padding:13px 15px 13px 22px}.prompt>b{font-size:1.08rem}
.activity-screen:after,.decision-screen:after,.feedback-screen:after,.complete-screen:after{display:none}.activity-screen{background:linear-gradient(rgba(236,249,255,.9),rgba(255,249,228,.94)),url("assets/health-house-main-v3.png") center/cover}.activity-screen .top{position:absolute;left:24px;right:24px}.activity-screen>h1{text-align:center;margin:58px 0 5px}.steps{display:flex;gap:25px;align-items:center;justify-content:center}.steps b{position:relative;width:35px;height:35px;border:3px solid #9bc8ef;border-radius:50%;display:grid;place-items:center;background:#fff}.steps b+b:before{content:"";position:absolute;right:100%;top:50%;width:28px;height:3px;background:#9bc8ef}.steps .active{background:var(--deep);border-color:var(--deep);color:#fff}.steps .done{background:var(--teal);border-color:var(--teal);color:#fff}.plate-layout{width:min(1180px,100%);margin:auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;align-items:center}.plate{width:min(430px,39vw);aspect-ratio:1;border:18px solid #d2e9fb;border-radius:50%;background:#fff;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;box-shadow:var(--shadow)}.plate>span{border:2px solid #c8e2f6;display:grid;place-items:center}.plate .food-art{width:100%;height:100%}.food-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.food-grid button{height:125px;border:3px solid #c8e4f8;background:#fff;border-radius:17px;padding:5px;display:flex;flex-direction:column;align-items:center;box-shadow:0 6px 17px rgba(30,77,183,.13)}.food-grid button.used{opacity:.4}.food-grid button b{font-size:.77rem}.food-art{display:block;width:88px;height:88px;background-image:url("assets/foods-v3.png");background-size:300% 300%;background-position:var(--pos);background-repeat:no-repeat}.instruction{text-align:center;font-weight:850;color:#1659b1;margin:4px}
.decision-screen{background:linear-gradient(#eaf8ff,#fff);min-height:100vh}.decision{width:min(940px,100%);margin:auto;text-align:center}.decision>img{width:170px;height:170px;object-fit:contain}.decision>p{color:#1465c5;font-weight:900;letter-spacing:.12em}.decision h1{margin:8px 0 25px}.decision>div{display:grid;grid-template-columns:1fr 1fr;gap:18px}.decision button{min-height:130px;border:4px solid #b9dcf7;background:#fff;border-radius:24px;padding:20px;font-size:1.22rem;font-weight:850;box-shadow:var(--shadow)}.decision button:hover{border-color:var(--blue)}.decision button.try-again{border-color:var(--gold);background:#fff7d8}
.feedback-screen,.complete-screen{justify-content:center;align-items:center;text-align:center;background:linear-gradient(#e8f7ff,#fff)}.feedback-screen .top,.complete-screen .top{position:absolute;left:24px;right:24px;top:18px}.feedback,.complete{position:relative;z-index:2;width:min(680px,100%)}.success-mark,.award{margin:0 auto 20px;width:135px;height:135px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--gold),#ff9f22);box-shadow:0 10px 0 #db8617,0 22px 35px rgba(30,77,183,.2);animation:pop .65s ease}.success-mark span,.award span{font-size:76px;color:#fff}.feedback p,.complete p{font-size:1.3rem;line-height:1.45}.feedback .primary{margin-top:14px}.takeaway{background:#eef9ff;border:3px solid var(--line);border-radius:22px;padding:13px 20px;display:flex;align-items:center;gap:14px;text-align:left;margin:18px 0}.takeaway img{width:75px;height:75px;object-fit:contain}.confetti{position:absolute;inset:0;pointer-events:none}.confetti i{position:absolute;width:12px;height:25px;border-radius:3px;background:var(--c);left:var(--x);top:-30px;animation:fall var(--d) linear infinite;animation-delay:var(--delay)}@keyframes fall{to{transform:translateY(110vh) rotate(720deg)}}@keyframes pop{50%{transform:scale(1.1)}}
.explore-screen:after{background:linear-gradient(12deg,#0da78e,#1bc09d)}.explore{position:relative;z-index:2;width:min(1000px,100%);margin:auto;display:grid;grid-template-columns:.75fr 1.2fr .75fr;gap:25px;align-items:center}.large-mark svg{width:230px;height:230px}.explore p{font-size:1.2rem}.explore>img{width:100%;max-height:340px;object-fit:contain;align-self:end;mix-blend-mode:multiply}
.modal-backdrop{position:fixed;inset:0;z-index:100;background:rgba(7,27,64,.74);display:grid;place-items:center;padding:20px}.idle-modal{position:relative;width:min(980px,100%);min-height:430px;background:url("assets/welcome-exterior-v1.png") center 61%/cover no-repeat;border:6px solid #fff;border-radius:30px;padding:72px 9% 26px;text-align:center;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.35)}.idle-modal:before{content:"";position:absolute;inset:0;background:rgba(244,252,255,.78);backdrop-filter:blur(1px)}.idle-modal>*{position:relative;z-index:2}.idle-dog{display:block;width:200px;height:108px;object-fit:contain;margin:-58px auto -2px}.idle-audio{position:absolute;z-index:4;right:18px;top:17px;width:52px;height:52px;border:0;border-radius:50%;display:grid;place-items:center;background:#0870e8;color:#fff}.idle-audio svg{width:30px;height:30px}.idle-modal h1{font-size:2.6rem;margin:0;color:#123f9d}.idle-modal p{font-size:1.1rem;margin:8px 0;color:#234f8f}.idle-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}.idle-modal small{display:block;color:#315b9d;font-weight:750}
@media(max-width:980px){.age-grid{grid-template-columns:repeat(3,1fr)}.age-card{height:235px}.age-card img{height:180px}.visitor{margin:-68px auto 7px;height:66px}.visitor img{width:54px;height:54px}.room-pin{font-size:.7rem;max-width:150px}.room-pin img{width:38px;height:38px}.plate-layout{gap:18px}.featured-card{margin-top:25px}}
@media(max-width:680px){.screen{padding:12px 14px 42px;overflow:auto}.top{height:70px}.brand svg{width:50px;height:50px}.brand b{font-size:16px}.nav-control b,.audio-control span,.reset{display:none}.nav-control,.audio-control{width:52px;padding:5px;justify-content:center}.welcome-card{background-position:37% center}.welcome-brand{left:50%;width:94%;top:7%}.welcome-brand .brand svg{width:100px;height:100px}.welcome-brand .brand b{font-size:36px}.sign{display:none}.welcome-sound{right:12px;top:12px;width:50px;height:50px}.cloud.one{left:4%;top:12%}.cloud.two{right:3%;top:33%}.choice-row,.lesson-cards,.decision>div,.plate-layout{grid-template-columns:1fr}.age-grid{display:flex;overflow-x:auto;padding:8px}.age-card{min-width:72%}.house-map{margin-top:20px;aspect-ratio:4/5}.house-art{object-fit:cover}.room-pin{position:relative!important;left:auto!important;top:auto!important;transform:none;width:100%;max-width:none}.house-map{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px}.house-art{grid-column:span 2;height:250px}.room-heading{margin:5px auto}.featured-card{grid-template-columns:1fr;text-align:center}.featured-card>img{height:150px}.lesson-title img{width:85px;height:85px}.prompt{flex-direction:column;text-align:center}.activity-screen .top{position:relative;left:auto;right:auto}.activity-screen>h1{margin-top:15px}.plate{width:280px;margin:auto}.food-grid button{height:105px}.food-art{width:70px;height:70px}.feedback-screen .top,.complete-screen .top{position:absolute}.explore{grid-template-columns:1fr;text-align:center}.large-mark,.explore>img{display:none}.idle-modal>div:nth-of-type(2){grid-template-columns:1fr}}
.round-label{text-align:center;margin:2px 0 8px;color:#2670bf;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.kids-plate .plate>span{position:relative}.kids-plate .plate>span>b{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#173e78}.kids-plate .plate>[data-group="fruit"]{background:#ffe5ed;border-color:#f48bab}.kids-plate .plate>[data-group="veg"]{background:#ddf5da;border-color:#65bd62}.kids-plate .plate>[data-group="grain"]{background:#fff0c7;border-color:#e7b649}.kids-plate .plate>[data-group="protein"]{background:#e5ddff;border-color:#9176e8}.food-grid button[data-group="fruit"]{border-color:#f48bab}.food-grid button[data-group="veg"]{border-color:#65bd62}.food-grid button[data-group="grain"]{border-color:#e7b649}.food-grid button[data-group="protein"]{border-color:#9176e8}.food-grid button.enough{opacity:1;background:#fff}.food-grid button.incorrect{position:relative;outline:5px solid #f3a42b;animation:shake .3s ease}.food-note{position:absolute;z-index:5;width:220px;right:calc(100% + 8px);top:50%;transform:translateY(-50%);background:#fff7d8;border:3px solid #f3a42b;border-radius:14px;padding:10px;font-size:.72rem;line-height:1.25;box-shadow:var(--shadow)}@keyframes shake{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.kitchen-choice .decision{width:min(1020px,100%)}.kitchen-choice .decision h1{font-size:2.7rem;margin:2px 0 6px}.kitchen-choice .decision h2{font-size:1.45rem;margin:4px 0 18px}.kitchen-choice .kitchen-visual{width:220px;height:150px;margin:auto;display:flex!important;align-items:center;justify-content:center;position:relative;background:#fff8d9;border:4px solid var(--gold);border-radius:26px}.kitchen-choice .kitchen-visual>img{width:132px;height:132px;object-fit:contain}.kitchen-choice .kitchen-visual .food-art{position:absolute;right:5px;bottom:2px;width:72px;height:72px;border-radius:50%;background-color:#fff}.kitchen-choice .decision>p{margin:8px 0 0}.kitchen-choice .decision>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:680px){.food-note{position:fixed;left:20px;right:20px;top:auto;bottom:20px;width:auto;transform:none}.kitchen-choice .decision>div:last-child{grid-template-columns:1fr}.kitchen-choice .kitchen-visual{width:180px;height:120px}.kitchen-choice .kitchen-visual>img{width:105px;height:105px}}
.kids-plate .plate{grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr 1fr}.kids-plate .plate>[data-group="dairy"]{grid-column:2/3;background:#dff2ff;border-color:#58aee5}.food-grid button[data-group="dairy"]{border-color:#58aee5}
.storyboard-screen{padding:14px;background:linear-gradient(145deg,#06275f,#07539e);display:grid;place-items:center}.storyboard-screen:after{display:none}.storyboard-shell{position:relative;width:min(1500px,calc(100vw - 28px));height:calc(100vh - 28px);display:grid;place-items:center;border-radius:28px;background:#f8f2e8;box-shadow:0 28px 70px rgba(0,20,65,.38);overflow:hidden}.storyboard-shell svg{display:block;width:100%;height:100%;background:#faf6ef}.storyboard-controls{position:absolute;z-index:3;left:18px;right:18px;bottom:15px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.storyboard-controls button{pointer-events:auto;min-width:150px;min-height:58px;padding:10px 24px;border:3px solid #fff;border-radius:999px;background:linear-gradient(#0872d6,#0752ad);color:#fff;font-size:1.08rem;font-weight:900;box-shadow:0 6px 14px rgba(0,38,91,.3)}.storyboard-controls button:active{transform:translateY(2px)}.storyboard-controls span{background:rgba(255,255,255,.92);border:2px solid #0d58ad;border-radius:999px;padding:8px 15px;color:#0d4c99;font-weight:900}.storyboard-next b{font-size:1.4em;margin-left:8px}@media(max-width:680px){.storyboard-screen{padding:6px}.storyboard-shell{width:calc(100vw - 12px);height:calc(100vh - 12px);border-radius:16px}.storyboard-controls{left:8px;right:8px;bottom:8px}.storyboard-controls button{min-width:105px;min-height:48px;padding:8px 15px;font-size:.9rem}.storyboard-controls span{font-size:.76rem;padding:6px 10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}
.storyboard-nav{position:absolute;z-index:4;right:18px;top:15px;display:flex;gap:8px}.storyboard-nav button{width:54px;height:54px;padding:5px;border:3px solid #fff;border-radius:50%;display:grid;place-items:center;background:#0867bf;color:#fff;box-shadow:0 5px 12px rgba(0,38,91,.28)}.storyboard-nav svg{width:34px;height:34px;background:transparent}@media(max-width:680px){.storyboard-nav{right:8px;top:8px}.storyboard-nav button{width:45px;height:45px}.storyboard-nav svg{width:28px;height:28px}}

/* Welcome and inactivity composition */
.welcome{height:100vh;min-height:620px;padding:14px 14px 62px;overflow:hidden}
.welcome-card{min-height:0}
.welcome .ambient.cloud{display:none}
.welcome-brand{left:50%;top:6%;width:min(500px,42vw)}
.welcome footer{left:0;right:0;bottom:0;height:50px;transform:none;display:grid;place-items:center;background:#0849a9;color:#fff;font-size:1rem}
.idle-modal{width:min(760px,calc(100vw - 40px));min-height:340px;padding:54px 70px 24px;background-position:center 58%}
.idle-dog{width:154px;height:82px;margin:-45px auto 2px}
.idle-modal h1{font-size:2.15rem}
.idle-modal p{font-size:1rem;margin:6px 0}
.idle-actions{margin:16px 0 14px}
.idle-actions .primary,.idle-actions .secondary{min-height:58px;padding:11px 18px;font-size:1.05rem}
.idle-audio{width:46px;height:46px;right:14px;top:14px}
@media(max-width:680px){.welcome{min-height:560px;padding:10px 10px 58px}.welcome-brand{left:50%;top:6%;width:88%}.welcome footer{height:46px;font-size:.82rem}.idle-modal{min-height:0;padding:48px 20px 22px}.idle-dog{width:130px;height:72px;margin:-39px auto 3px}.idle-modal h1{font-size:1.85rem}.idle-actions{grid-template-columns:1fr}.idle-audio{width:42px;height:42px}}

/* Centered kiosk welcome lockup */
.welcome-brand{left:50%;top:50%;transform:translate(-50%,-50%);width:min(660px,70vw)}
.welcome-brand .brand{gap:16px}
.welcome-brand .brand svg{width:180px;height:180px}
.welcome-brand .brand b{font-size:68px;letter-spacing:-2px}
.welcome-brand p{font-size:1rem;margin:20px 0 8px;text-shadow:0 2px 8px rgba(255,255,255,.9)}
.welcome-brand .primary{min-width:330px;min-height:82px;margin-top:22px;font-size:1.55rem;border-radius:25px;box-shadow:0 9px 0 #084aa0,0 18px 35px rgba(8,74,160,.3)}
@media(max-width:680px){.welcome-brand{top:50%;width:94%}.welcome-brand .brand{gap:10px}.welcome-brand .brand svg{width:120px;height:120px}.welcome-brand .brand b{font-size:43px;letter-spacing:-1px}.welcome-brand p{font-size:.72rem;margin-top:14px}.welcome-brand .primary{min-width:260px;min-height:72px;margin-top:16px;font-size:1.28rem}}
.welcome-card{background-image:url("assets/welcome-community-v2.png");background-position:center;background-size:cover}

.room-done{display:block;margin-top:4px;color:#08725c;font-size:.7rem}.source-note{text-align:center;font-size:.72rem;color:#526b88;margin:14px 0}.decision h1{font-size:clamp(1.8rem,3.6vw,3rem)}.decision-screen{padding-bottom:55px}.decision{position:relative;z-index:2}.lesson{padding-bottom:12px}@media(max-width:980px){.visitor{margin:0 auto 8px}.room-heading{margin:0 auto 15px}.lesson-title h1{font-size:2rem}}

/* Correct-answer celebration and illustrated kids learning */
.success-mark,.award{background:#e2f7e9;border:5px solid #3aa663;box-shadow:0 8px 0 #b7e4c5,0 18px 32px rgba(24,106,59,.14)}
.success-mark span,.award span{color:#168447;font-weight:900}
.answer-confetti{z-index:1;overflow:hidden}.answer-confetti i{animation-iteration-count:1;animation-fill-mode:both}
.learning-picture{display:block;width:100px;height:100px;margin:10px auto}
.lesson-cards .learning-picture{width:112px;height:112px}
.kids-decisions .decision>img{width:100px;height:100px}
.kids-decisions .decision button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:220px}
.kids-decisions .decision button .learning-picture{width:120px;height:120px;margin:0 auto}
.retry-hint{display:block;font-size:.85rem;margin-top:8px;color:#674909}
@media(max-width:680px){.kids-decisions .decision button{min-height:150px;flex-direction:row;text-align:left;padding:14px}.kids-decisions .decision button .learning-picture{width:85px;height:85px;flex-shrink:0}.kids-decisions .decision button .retry-hint{max-width:80px}.lesson-cards .learning-picture{width:100px;height:100px}}
@media(prefers-reduced-motion:reduce){.answer-confetti i{animation:none;top:var(--x);transform:rotate(25deg);opacity:.65}}

/* Food illustrations are shared between learning, choices, and the full five-part plate. */
.food-illustration{display:block;width:90px;height:90px;flex-shrink:0}.food-grid button .food-illustration{width:80px;height:80px}.food-grid button{height:125px;position:relative}.food-grid button b{font-size:.8rem}.food-grid .selected-food{background:#e5f7e9;outline:3px solid #168447}.food-grid .selected-food:after{content:"✓";position:absolute;right:5px;top:2px;color:#168447;font-weight:900;font-size:1.3rem}.power-plate{display:block;width:100%;max-width:440px;height:auto;margin:auto}.plate-display{width:100%}.kids-plate .plate-layout{grid-template-columns:1fr 1.2fr;gap:32px;margin:16px auto}.plate-controls{position:relative;z-index:2;display:flex;justify-content:center;align-items:center;gap:25px}.plate-controls .primary:disabled{background:#c9d9e7;color:#415e7c;box-shadow:none;cursor:default}.kitchen-lesson-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:32px;align-items:center;margin:18px 0}.kitchen-teaching article{border:2px solid var(--line);background:white;padding:12px 18px;border-radius:18px;margin-bottom:10px}.kitchen-teaching h2{margin:0 0 5px;font-size:1.25rem}.kitchen-teaching p{margin:0;line-height:1.4}.food-examples{display:flex;justify-content:space-evenly;margin:6px 0}.food-examples span{text-align:center;font-size:.8rem}.food-examples .food-illustration{width:74px;height:74px}.kids-kitchen-lesson .lesson-title img{width:90px;height:90px}.kids-kitchen-lesson .lesson-title h1{font-size:2.5rem}
@media(max-width:680px){.kids-plate .plate-layout,.kitchen-lesson-layout{grid-template-columns:1fr;gap:12px}.power-plate{max-width:310px}.food-grid button{height:112px}.food-grid button .food-illustration{width:65px;height:65px}.plate-controls{flex-direction:column;gap:12px}.kids-kitchen-lesson .lesson-title h1{font-size:1.8rem}.kids-plate .food-note{position:fixed}}

/* Kids path: original room illustrations, familiar symbols, and consistent blue controls. */
.food-emoji,.emoji-picture{font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-weight:400;line-height:1;display:flex;align-items:center;justify-content:center;font-size:64px}
.food-grid button .food-emoji{font-size:65px}.food-examples .food-emoji{font-size:53px}.emoji-picture{font-size:64px;gap:3px;background:#eff8ff;border-radius:25px;letter-spacing:-8px;padding-right:8px}.kids-decisions .decision button .emoji-picture{font-size:64px}.kids-decisions .decision button{font-size:1.12rem}.kids-room-banner{display:flex;align-items:center;justify-content:center;gap:22px}.kids-room-banner>img{width:160px;height:160px;object-fit:contain}.kids-room-banner h1{font-size:clamp(2rem,3.8vw,3rem)}.kids-room-banner p,.question-room{color:#1b67c6;font-size:.78rem;font-weight:900;letter-spacing:.06em}.kids-room-banner span{display:block;margin-top:8px}.kids-learning .lesson-cards p{font-size:1.05rem;line-height:1.5}.kids-learning .lesson-cards article{border-color:#cbe6fb;background:#fff}.question-room{display:block}.kids-progress{background:#f0f8ff;border:2px solid var(--line);border-radius:20px;padding:12px;margin:16px auto;max-width:530px}.kids-progress>span{font-size:.72rem;letter-spacing:.09em;font-weight:900;color:#376098}.kids-progress>b{display:block;margin-top:3px}.kids-progress>div{display:flex;justify-content:center;gap:10px;margin-top:7px}.kids-progress>div>span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#d5e6f5;color:#4a6b91;font-weight:900}.kids-progress .earned{background:#168447;color:#fff}.kids-complete{padding-top:120px}.kids-complete .award{width:90px;height:90px;margin-bottom:12px}.kids-complete .award span{font-size:55px}.kids-complete .takeaway p{font-size:1.05rem;line-height:1.45;margin:7px 0 0}.kids-complete .takeaway b{font-size:.72rem;color:#1b67c6}.kids-end-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:20px}.kids-end-actions button{font-size:1rem}.kids-passport{z-index:2;position:relative;width:min(1000px,100%);margin:15px auto;text-align:center}.kids-passport h1{font-size:2.4rem}.passport-kid{width:90px;height:90px;object-fit:contain}.passport-rooms{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.passport-rooms button{border:2px solid var(--line);border-radius:20px;background:white;padding:12px;display:grid;justify-items:center;gap:5px}.passport-rooms img{width:74px;height:74px;object-fit:contain}.passport-rooms small{color:#168447}.food-grid button.selected-food{border-color:#168447}
@media(max-width:680px){.food-grid button .food-emoji{font-size:52px}.kids-room-banner{gap:12px}.kids-room-banner>img{width:100px;height:100px}.kids-room-banner p{font-size:.65rem}.kids-decisions .decision button .emoji-picture{font-size:44px}.kids-progress>div{gap:6px}.kids-progress>div>span{width:22px;height:22px}.kids-complete{padding-top:110px}.passport-rooms{grid-template-columns:repeat(2,1fr)}.kids-passport h1{font-size:1.9rem}.kids-end-actions{flex-direction:column}.kids-complete .takeaway img{width:60px;height:60px}}

.passport-link{position:relative;z-index:3;align-self:center;margin:0 auto 10px;border:2px solid #b5d7f4;border-radius:999px;background:#fff;padding:8px 20px;font-weight:850;color:#1653a5}.feedback-plate{max-width:220px;margin:15px auto}.feedback-picture .learning-picture{width:85px;height:85px;font-size:46px}.feedback:has(.feedback-plate) .success-mark{width:75px;height:75px;margin-bottom:10px}.feedback:has(.feedback-plate) .success-mark span{font-size:48px}.feedback:has(.feedback-plate){padding-top:90px}.feedback:has(.feedback-plate) h1{font-size:2.6rem}.feedback:has(.feedback-plate) p{font-size:1.1rem}.feedback:has(.feedback-plate) .primary{margin-top:5px}

.food-emoji img{display:block;width:100%;height:100%;object-fit:contain}.emoji-credit{align-self:center;position:relative;z-index:2;font-size:.65rem;color:#526b88;margin:16px 0 0;text-decoration:underline}

.incorrect-mark{margin:0 auto 20px;width:135px;height:135px;border-radius:50%;display:grid;place-items:center;background:#ffe7e7;border:5px solid #cc4141;box-shadow:0 8px 0 #f0b8b8,0 18px 32px rgba(145,34,34,.14);animation:pop .4s ease}.incorrect-mark span{color:#c52d36;font-size:76px;font-weight:900}.incorrect-screen .feedback h1{font-size:clamp(2rem,4vw,3.5rem)}

.emoji-picture{gap:2px;letter-spacing:normal;padding:8px}.emoji-picture img{display:block;width:70%;height:70%;object-fit:contain;min-width:0}.emoji-picture img:only-child{width:78%;height:78%}.emoji-picture:has(img+img) img{width:48%;height:65%}.listen-card{display:inline-flex;align-items:center;gap:6px;margin:13px auto 0;padding:7px 12px;border:2px solid #cbe6fb;border-radius:999px;background:#f0f8ff;color:#1553a7;font-weight:800;font-size:.82rem;min-height:42px}.listen-card svg{width:22px;height:22px}.kids-learning .lesson-cards article{display:flex;flex-direction:column;align-items:center}.kids-learning .listen-card{margin-top:auto}.kids-learning .lesson-cards p{margin-bottom:14px}.replay-audio svg{width:27px;height:27px}h1[tabindex="-1"]:focus{outline:none}@media(max-width:680px){.top-actions{gap:5px}.replay-audio{width:44px}.replay-audio svg{width:25px;height:25px}}

.house-screen:has(.passport-link) .visitor{margin:0 auto 8px}.kids-room-screen .room-heading{margin:12px auto 20px}.kids-room-screen .featured-card{margin:15px auto auto}.kids-room-screen .room-heading h1{font-size:clamp(1.6rem,3vw,2.25rem)}
