:root{--ink:#26352e;--muted:#68756c;--paper:#f8f3e9;--white:#fffefa;--green:#416e55;--lime:#d8e7a8;--orange:#f1a36e;--line:#e5e2d6;--shadow:0 12px 34px #26352e0e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,'Noto Sans Devanagari',sans-serif;font-size:16px;line-height:1.6}a{color:inherit}.top{position:sticky;z-index:10;top:0;display:flex;align-items:center;gap:30px;padding:12px max(5vw,20px);background:#f8f3e9ed;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;font-size:18px;line-height:1.2}.brand small{display:block;font-size:10px;font-weight:600;color:var(--muted);letter-spacing:.04em}.brandmark{width:38px;height:38px;border-radius:13px;background:var(--green);color:white;display:grid;place-items:center;font-size:22px}.top nav{display:flex;gap:24px;margin-left:auto}.top nav a{text-decoration:none;font-size:13px;font-weight:700;color:#58675d}.top nav a:hover{color:var(--green)}.language{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700}.language select{font:inherit;border:1px solid var(--line);border-radius:9px;padding:8px;background:var(--white);color:var(--ink)}.menu{display:none;border:0;background:none;font-size:24px}main{overflow:hidden}.hero{min-height:520px;padding:70px max(7vw,24px) 60px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:6vw;background:linear-gradient(130deg,#f8f3e9 48%,#f1ead7)}.hero-copy{max-width:610px}.eyebrow{font-size:11px;letter-spacing:.15em;font-weight:800;color:var(--green);margin:0 0 12px}.hero h1{font-size:clamp(42px,5.6vw,72px);line-height:1.04;letter-spacing:-.055em;margin:0 0 20px;max-width:650px}.lead{font-size:18px;color:var(--muted);max-width:550px}.hero-actions{display:flex;gap:12px;margin:28px 0}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:12px;padding:12px 18px;text-decoration:none;font:700 14px inherit;cursor:pointer;transition:transform .15s,background .15s}.button:hover{transform:translateY(-2px)}.primary{background:var(--green);color:#fff}.ghost{background:transparent;border-color:#cbd4c8;color:var(--green)}.trust{display:flex;gap:17px;flex-wrap:wrap;color:#607166;font-size:12px;font-weight:600}.hero-art{height:350px;position:relative;max-width:480px;width:100%;margin:auto}.sun{position:absolute;right:45px;top:4px;background:#f0bd75;width:115px;height:115px;border-radius:50%}.hill{position:absolute;bottom:0;left:-25px;right:-18px;height:165px;background:#b4cf9b;border-radius:58% 52% 0 0/42% 46% 0 0;transform:rotate(-4deg)}.art-card{position:absolute;z-index:2;border:1px solid #e8e3d6;border-radius:18px;background:var(--white);box-shadow:var(--shadow);padding:16px 19px;font-size:23px}.art-card span{display:block;font-size:13px;font-weight:700;color:var(--green)}.card-one{top:38px;left:5px;transform:rotate(-5deg)}.card-two{top:122px;right:0;transform:rotate(4deg)}.card-two b{display:block;font-size:23px;margin-top:4px}.card-three{bottom:40px;left:67px;transform:rotate(-2deg)}.section{padding:76px max(7vw,24px);max-width:1440px;margin:auto}.welcome{display:grid;grid-template-columns:1.2fr .8fr;gap:9vw;align-items:center;padding-top:52px;padding-bottom:52px}.welcome h2,.section h2,.closing h2{font-size:clamp(30px,3.5vw,46px);line-height:1.12;letter-spacing:-.04em;margin:0 0 15px}.welcome p:not(.eyebrow),.section-head p:not(.eyebrow),.tech>div>p:not(.eyebrow){color:var(--muted);max-width:680px}.welcome blockquote{margin:0;background:#eaeedb;padding:25px 28px;border-radius:18px;font-size:20px;font-weight:700;color:#3c5746}.welcome cite{display:block;margin-top:12px;font-style:normal;font-size:12px}.welcome cite small{display:block;color:#758075;font-weight:400;font-size:10px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:28px}.section-head h2{margin-bottom:6px}.score{min-width:105px;padding:12px 15px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:15px}.score span{font-size:19px}.score b{font-size:20px}.score small{display:block;color:var(--muted);font-size:9px;line-height:1.3}.game-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.game-card,.lesson-card,.paper-card,.plan{background:var(--white);border:1px solid var(--line);border-radius:17px;padding:20px;box-shadow:var(--shadow)}.game-card{min-height:190px;display:flex;flex-direction:column;align-items:flex-start}.game-icon{font-size:30px}.game-card h3,.lesson-card h3,.plan h3{margin:8px 0 4px;font-size:17px;line-height:1.3}.game-card p,.lesson-card p,.plan p{font-size:13px;color:var(--muted);margin:4px 0 15px}.game-card button{margin-top:auto;border:0;background:#eaf0dc;color:#36533e;border-radius:9px;padding:9px 12px;font-weight:800;cursor:pointer}.tinted{background:#f0eddf;max-width:none;padding-left:max(7vw,24px);padding-right:max(7vw,24px)}.tinted>*{max-width:1300px;margin-left:auto;margin-right:auto}.lesson-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.lesson-card .grade{font-size:10px;color:var(--green);letter-spacing:.1em;font-weight:800}.lesson-card details{font-size:13px;color:#46544b}.lesson-card summary{cursor:pointer;color:var(--green);font-weight:700;margin-top:10px}.lesson-card li{margin:7px 0}.paper-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.paper-card .paper-meta{font-size:11px;color:var(--green);font-weight:800;letter-spacing:.06em}.paper-card h3{margin:8px 0;font-size:17px}.paper-card p{color:var(--muted);font-size:14px}.paper-card details{border-top:1px solid var(--line);padding-top:10px}.paper-card summary{cursor:pointer;color:var(--green);font-weight:700}.paper-card li{margin:7px 0;font-size:13px}.paper-card a{display:inline-block;margin-top:9px;color:var(--green);font-size:12px;font-weight:700}.fineprint{font-size:11px;color:#7f887e}.tech{display:grid;grid-template-columns:1fr .9fr;gap:7vw;align-items:center;background:#dfe9d4;max-width:none}.tech>div{max-width:590px}.tech>div:first-child{margin-left:max(7vw,24px)}.tech-steps{margin-right:max(7vw,24px);display:grid;gap:10px}.tech-steps span{background:#f9f8ee;border:1px solid #d1dec8;padding:14px 18px;border-radius:12px;font-size:14px;font-weight:700}.plans{padding-bottom:45px}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.plan b{font-size:22px;color:var(--green)}.plan b small{font-size:11px;color:var(--muted)}.closing{text-align:center;background:#4b765b;color:white;padding:55px 24px}.closing>span{font-size:30px}.closing p{opacity:.85}footer{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:22px max(5vw,20px);font-size:11px;color:var(--muted)}footer a{color:var(--green)}.playbox{background:#fffefa;border:2px solid #d6e0c4;border-radius:18px;padding:24px;margin-top:20px;box-shadow:var(--shadow)}.playbox h3{font-size:21px}.playbox .question{font-size:19px;font-weight:700}.choices{display:flex;gap:10px;flex-wrap:wrap}.choices button{background:#f2f1e8;border:1px solid #deded1;color:var(--ink);border-radius:10px;padding:12px 17px;font:700 15px inherit;cursor:pointer}.choices button:hover{background:#e5edda}.choices button.selected{background:#d8e7a8;border-color:#8fa76a}.feedback{margin-top:14px;padding:12px;border-radius:10px;background:#f2f3e9}.feedback.good{background:#e5f2dc}.feedback.bad{background:#fff0df}.play-actions{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}.play-actions button{border:0;background:#e8efdc;color:var(--green);padding:10px 14px;border-radius:9px;font-weight:800;cursor:pointer}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%,20px);opacity:0;background:#26352e;color:white;padding:10px 16px;border-radius:10px;transition:.2s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}:focus-visible{outline:3px solid #df9d60;outline-offset:3px}
@media(max-width:1000px){.game-grid{grid-template-columns:repeat(3,1fr)}.top{gap:15px}.top nav{gap:13px}.top nav a{font-size:12px}}
@media(max-width:720px){.top{flex-wrap:wrap;padding:10px 18px}.brand{margin-right:auto}.menu{display:block}.top nav{display:none;order:3;width:100%;flex-wrap:wrap;margin:0;padding:8px 0}.top nav.open{display:flex}.language{font-size:0}.language select{font-size:12px}.hero{grid-template-columns:1fr;padding-top:45px;gap:5px}.hero h1{font-size:48px}.hero-art{height:270px;max-width:400px}.sun{width:90px;height:90px}.hill{height:115px}.welcome,.tech{grid-template-columns:1fr}.account-area{flex-direction:column}.welcome{gap:25px}.section{padding-top:55px;padding-bottom:55px}.section-head{align-items:start}.game-grid{grid-template-columns:repeat(2,1fr)}.lesson-grid,.paper-list,.plan-grid{grid-template-columns:1fr}.tech>div:first-child,.tech-steps{margin:0}.trust{gap:8px}.trust span{font-size:10px}}
@media(max-width:420px){.game-grid{grid-template-columns:1fr 1fr;gap:8px}.game-card{padding:14px;min-height:175px}.game-card h3{font-size:14px}.game-card p{font-size:11px}.hero h1{font-size:42px}.hero-art{transform:scale(.92);transform-origin:top center;height:250px}.section-head{display:block}.score{display:inline-block;margin-top:10px}.trust{display:grid;gap:5px}}
.button,.choices button{font-family:inherit;font-size:14px;font-weight:700}.level-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;margin-top:auto}.game-card .level-buttons button{margin:0;padding:10px 6px;font-size:11px;line-height:1.25;min-width:0}.signed-in{border:1px solid var(--line);background:#fffefa;border-radius:12px;padding:13px;margin-bottom:12px;font-size:13px}.signed-in .button{font-size:12px;padding:8px 11px}
.quote-stack{display:grid;gap:10px}.quote-stack blockquote{margin:0;background:#eaeedb;padding:18px 22px;border-radius:16px;font-size:16px;font-weight:700;color:#3c5746}.quote-stack cite{display:block;margin-top:8px;font-style:normal;font-size:11px}.quote-stack cite a{display:inline-block;margin-left:7px;color:#416e55;font-size:10px;font-weight:700}.quote-stack blockquote:nth-child(2){background:#f1e7d7}.quote-stack blockquote:nth-child(3){background:#e0eadb}

.account-area{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:22px 0;border-top:1px solid var(--line);margin-top:24px}.account-area>div{flex:1}.account-area h3{margin:0 0 6px}.account-area p{font-size:13px;color:var(--muted)}.account-note{margin:12px 0}.account-note a{color:var(--green);font-weight:700}

/* Daily puzzle, topic library and roadmaps */
.daily-card,.topic-view,.rm-card,.topic-card{background:var(--white);border:1px solid var(--line);border-radius:17px;padding:20px;box-shadow:var(--shadow)}
.daily-card{max-width:760px}.daily-card h3{font-size:20px;line-height:1.4;margin:6px 0 16px}
.opts{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.opt{font:600 15px inherit;text-align:left;padding:13px 15px;border-radius:12px;border:1.5px solid var(--line);background:#fff;color:var(--ink);cursor:pointer}
.opt:hover:not(:disabled){border-color:var(--green)}.opt.selected{border-color:var(--green);background:#eaf0dc}
.opt.right{border-color:#2e8b57;background:#dff3e6}.opt.wrong{border-color:#c0504d;background:#fbe4e2}.opt:disabled{cursor:default}
.daily-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0 8px}
.daily-actions .button:disabled{opacity:.5;cursor:not-allowed}
.locked-badge{font-weight:800;color:var(--green)}.streak{margin-left:auto;font-size:13px;color:var(--muted)}.streak b{font-size:18px;color:var(--ink)}
.feedback{border-radius:12px;padding:12px 14px;background:#f4efe1;margin-top:10px;font-size:14px}.feedback.good{background:#e4f2dc}.feedback p{margin:6px 0 0}
.lib-bar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-bottom:14px}
#lib-search{flex:1 1 260px;font:inherit;padding:12px 14px;border-radius:12px;border:1.5px solid var(--line);background:#fff;color:var(--ink)}
.lib-progress{font-size:13px;color:var(--muted)}.lib-progress b{color:var(--ink);font-size:16px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.chip{font:700 13px inherit;padding:8px 13px;border-radius:999px;border:1.5px solid var(--line);background:transparent;color:#46544b;cursor:pointer}
.chip.on{background:var(--green);border-color:var(--green);color:#fff}.chip.aud{border-style:dashed}
.topic-grid,.rm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}
.topic-card{display:flex;flex-direction:column;gap:6px}.topic-card.done{border-color:#9bc3a8;background:#f6fbf3}
.tc-top{display:flex;justify-content:space-between;align-items:center}.tc-icon{font-size:26px}
.tc-tag,.tc-cat{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--green);font-weight:800}
.topic-card h3,.rm-card h3{margin:2px 0;font-size:17px;line-height:1.3}.topic-card p,.rm-card p{margin:0;font-size:13px;color:var(--muted)}
.tc-foot{margin-top:auto;padding-top:10px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.button.small{padding:8px 12px;font-size:13px}
.topic-view{max-width:860px;margin:0 auto}.topic-view h3{font-size:clamp(24px,3vw,34px);line-height:1.15;margin:6px 0}
.topic-view h4{margin:22px 0 8px;font-size:15px;letter-spacing:.06em;text-transform:uppercase;color:var(--green)}
.tv-sum{color:var(--muted)}.tv-points{padding-left:20px}.tv-points li{margin:8px 0}
.lang-note{background:#f4efe1;border-radius:10px;padding:10px 12px;font-size:13px}
.code{margin:10px 0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.code figcaption{font-size:12px;font-weight:700;color:var(--green);padding:8px 12px;background:#eef2e3}
.code pre{margin:0;padding:12px;overflow-x:auto;font:13px/1.55 ui-monospace,Consolas,monospace}
.tv-qa details{border-top:1px solid var(--line);padding:10px 0}.tv-qa summary{cursor:pointer;font-weight:700}.tv-qa p{margin:8px 0 0;color:#46544b}
.tv-actions{margin-top:20px}
.rm-card{display:flex;flex-direction:column;gap:8px}.bar{height:8px;border-radius:99px;background:#e8e6d8;overflow:hidden}.bar i{display:block;height:100%;background:var(--green)}
.rm-steps{padding-left:20px;margin:10px 0 0;font-size:14px}.rm-steps li{margin:6px 0}
.linkbtn{font:inherit;background:none;border:0;padding:0;color:var(--green);text-decoration:underline;cursor:pointer;text-align:left}.linkbtn.done{color:#2e8b57;font-weight:700}
.rm-card summary{cursor:pointer;color:var(--green);font-weight:700}
@media(max-width:900px){.topic-grid,.rm-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.topic-grid,.rm-grid,.opts{grid-template-columns:1fr}.streak{margin-left:0}}

/* Product strip under the hero */
.strip{background:var(--white);border-block:1px solid var(--line);padding:22px max(7vw,24px)}
.strip-inner{max-width:1300px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.strip-inner>div{display:grid;gap:2px;min-width:0}
.strip b{font-size:clamp(26px,3vw,34px);color:var(--green);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.strip span{font-size:13px;color:var(--muted)}
@media(max-width:760px){.strip-inner{grid-template-columns:repeat(2,1fr)}}

/* Spin wheel for the daily puzzle */
.spin-wrap{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:32px;align-items:center;max-width:860px}
.spin-wrap>*{min-width:0}
.wheel-box{position:relative;width:100%;max-width:300px;aspect-ratio:1;margin:0 auto}
.wheel{width:100%;height:100%;transform:rotate(0deg);will-change:transform}
.wheel-svg{width:100%;height:100%;display:block;filter:drop-shadow(0 10px 22px rgba(38,53,46,.18))}
.wheel-pointer{position:absolute;top:-6px;left:50%;transform:translateX(-50%);z-index:2;width:0;height:0;border-left:13px solid transparent;border-right:13px solid transparent;border-top:24px solid var(--margin,#c0504d)}
.spin-info h3{font-size:22px;line-height:1.25;margin:6px 0 8px}
.spin-info p{color:var(--muted);margin:0 0 14px}
.spin-info .button:disabled{opacity:.55;cursor:wait}
.spin-legend{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:14px}
.spin-legend .swatch{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:middle}
.spun-note{font-size:12px;color:var(--muted);margin:0 0 6px}
@media(max-width:760px){.spin-wrap{grid-template-columns:1fr;gap:20px}.spin-legend{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.wheel{transition:none!important}}

/* About, legal pages, footer */
.about-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.about-card{background:var(--white);border:1px solid var(--line);border-radius:17px;padding:22px;box-shadow:var(--shadow);min-width:0}
.about-card h3{margin:0 0 8px;font-size:18px}
.about-card p,.about-card li{color:#46544b;font-size:14px}
.about-card ul{padding-left:18px;margin:8px 0 0}.about-card li{margin:8px 0}
.about-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:10px 0 12px}
.about-stats b{display:block;font-size:26px;color:var(--green);font-variant-numeric:tabular-nums}
.about-stats span{font-size:12px;color:var(--muted)}
.about-mail{font-weight:800;color:var(--green);font-size:18px;word-break:break-all}
.legal .paper-card{max-width:820px;margin:0 0 14px}.legal h1{font-size:clamp(30px,4vw,44px);margin:0 0 10px}
.legal .paper-card h2{margin:0 0 8px;font-size:20px}.legal .paper-card li{margin:6px 0}
footer .foot-main{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;justify-content:space-between}
footer .foot-main a{color:var(--green)}
.copyright{margin:10px 0 0;font-size:12px;color:var(--muted)}
@media(max-width:760px){.about-grid{grid-template-columns:1fr}.about-stats{grid-template-columns:repeat(2,1fr)}}

/* About values and feedback form */
.about-values{list-style:none;margin:0 0 18px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.about-values li{border:1.5px solid var(--line);border-radius:999px;padding:7px 14px;font-size:13px;font-weight:700;color:var(--green);background:var(--white)}
.fb-form{display:grid;gap:8px;max-width:640px;background:var(--white);border:1px solid var(--line);border-radius:17px;padding:22px;box-shadow:var(--shadow)}
.fb-form label{font-size:13px;font-weight:700;margin-top:6px}
.fb-form select,.fb-form textarea,.fb-form input{font:inherit;font-size:15px;padding:11px 12px;border-radius:10px;border:1.5px solid var(--line);background:#fff;color:var(--ink);width:100%;min-width:0}
.fb-form textarea{resize:vertical;min-height:120px}
.fb-count{justify-self:end;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.fb-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.fb-actions a[aria-disabled="true"]{opacity:.55}

/* Medium widths: collapse the nav into the menu button so the header never overflows */
@media(min-width:721px) and (max-width:1020px){.top{flex-wrap:wrap;padding:10px 18px}.brand{margin-right:auto}.menu{display:block}.top nav{display:none;order:3;width:100%;flex-wrap:wrap;margin:0;padding:8px 0}.top nav.open{display:flex}}
