:root{--ink:#29243e;--muted:#7f7990;--purple:#6556e9;--purple-dark:#4d3dc8;--purple-pale:#eeeaff;--coral:#ff7769;--gold:#ffc757;--aqua:#70cfbe;--mint:#ddf8ed;--paper:#fffaf2;--white:#fff;--line:#eee9e6;--shadow:0 14px 40px rgba(42,30,93,.075);--radius:27px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Nunito','DM Sans',system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f3b544;outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.45}button{touch-action:manipulation}.bg-scribble{position:fixed;z-index:-1;pointer-events:none;opacity:.22;font-size:90px}.bg-scribble-one{left:-35px;top:43%;color:#eed48e}.bg-scribble-two{right:0;top:72%;color:#d6c8ff}
.header{height:85px;position:sticky;top:0;z-index:40;background:rgba(255,250,242,.91);backdrop-filter:blur(16px);border-bottom:1px solid rgba(205,194,177,.3)}.header-inner{max-width:1200px;margin:auto;display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 30px;gap:16px}.logo{border:0;background:none;display:flex;align-items:center;gap:10px;font-size:29px;font-weight:1000;letter-spacing:-1.5px;color:var(--ink);padding:0;white-space:nowrap}.logo-period{color:var(--coral)}.logo-mark{display:flex;align-items:center;justify-content:center;position:relative;background:var(--purple);width:44px;height:44px;color:white;border-radius:16px 16px 17px 8px;font-size:27px;letter-spacing:-2px;transform:rotate(-8deg);box-shadow:0 5px 0 #4d3dba}.logo-mark::first-letter{transform:rotate(8deg)}.logo-spark{position:absolute;color:var(--gold);top:-10px;right:-9px;font-size:19px}.desktop-nav{display:flex;align-items:center;background:#fff;border-radius:40px;padding:6px;gap:2px;border:1px solid #efecf1}.nav-button{border:0;background:transparent;border-radius:35px;padding:10px 17px;font-size:14px;font-weight:900;color:#858095;transition:.18s}.nav-button span{font-size:17px;margin-right:5px}.nav-button:hover{background:#f5f2ff;color:var(--purple)}.nav-button.active{color:var(--purple);background:#f0edff}.header-stats{display:flex;align-items:center;gap:11px}.head-stat{display:inline-flex;align-items:center;gap:7px;background:white;border:1px solid #efebed;border-radius:22px;padding:8px 13px;font-weight:900;font-size:15px}.head-stat span{font-size:17px}.head-stat.coin{color:#d18b16}.round-btn{border:none;background:var(--purple-pale);color:var(--purple);font-size:23px;font-weight:900;border-radius:50%;width:43px;height:43px}.mobile-nav{display:none}
.shell{max-width:1150px;margin:0 auto;padding:34px 26px 85px}.home-hero{display:grid;grid-template-columns:1.07fr .93fr;gap:26px;min-height:398px}.hero-copy{padding:32px 12px 28px 4px;position:relative}.eyebrow{display:inline-flex;align-items:center;gap:8px;font-weight:900;font-size:12px;letter-spacing:1.6px;color:var(--purple);text-transform:uppercase}.eyebrow .star{font-size:20px}.hero-copy h1{font-size:clamp(43px,5vw,73px);line-height:1.04;letter-spacing:-2.7px;margin:24px 0 18px;font-weight:1000;max-width:630px}.scribble-underline{position:relative;color:var(--purple);white-space:nowrap}.scribble-underline:after{position:absolute;left:2%;right:0;bottom:-7px;border-bottom:6px solid var(--gold);border-radius:50%;content:'';transform:rotate(-2deg)}.hero-copy p{font-size:17px;line-height:1.7;max-width:460px;color:#777085;font-weight:700;margin:0 0 24px}.cta-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.button{border:0;padding:15px 24px;border-radius:17px;font-weight:1000;font-size:15px;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:transform .12s,box-shadow .12s;text-decoration:none}.button:hover:not(:disabled){transform:translateY(-2px)}.button.primary{background:var(--purple);color:#fff;box-shadow:0 5px 0 #4a3bbb}.button.primary:hover{box-shadow:0 7px 0 #4a3bbb}.button.white{background:white;color:var(--ink);border:2px solid #e8e2de;box-shadow:0 4px 0 #e8e2de}.button.coral{background:var(--coral);color:#fff;box-shadow:0 5px 0 #db5c51}.button.small{font-size:13px;padding:11px 16px;border-radius:13px}.button.ghost{background:#f3f0fa;color:var(--purple)}.button.wide{width:100%}.button:active:not(:disabled){transform:translateY(3px);box-shadow:0 2px 0 rgba(51,39,117,.5)}
.hero-art{background:#e8e5ff;border-radius:38px;position:relative;overflow:hidden;min-height:400px;border:1px solid #dbd7f4}.art-swirl{position:absolute;border:3px solid rgba(255,255,255,.5);height:400px;width:400px;border-radius:50%;top:-160px;right:-120px}.art-swirl.two{top:190px;left:-220px;right:auto;height:380px;width:380px}.math-chip{position:absolute;padding:12px 18px;box-shadow:0 8px 0 rgba(51,31,100,.07);background:#fff;color:var(--purple);font-weight:1000;font-size:21px;border-radius:17px;transform:rotate(-12deg);top:60px;left:40px}.math-chip.second{right:25px;top:95px;left:auto;background:#ffd779;color:#8b5e1c;transform:rotate(12deg)}.math-chip.third{left:38px;top:auto;bottom:65px;background:#fff;color:#fe6e61;transform:rotate(11deg)}.mascot{width:223px;height:236px;position:absolute;top:47%;left:51%;transform:translate(-50%,-42%) rotate(-7deg);filter:drop-shadow(0 19px 2px rgba(86,68,166,.12))}.mascot-body{position:absolute;inset:25px 15px 10px;border-radius:45% 55% 39% 44% / 48% 49% 50% 51%;background:var(--purple);transform:rotate(10deg);border:7px solid #fff;box-shadow:0 4px 0 #4837b9}.mascot-body:after{content:'';position:absolute;left:30px;bottom:-18px;width:42px;height:36px;background:var(--purple);border:6px solid white;border-radius:20px;transform:rotate(-20deg)}.mascot-body:before{content:'';position:absolute;right:22px;bottom:-17px;width:42px;height:36px;background:var(--purple);border:6px solid white;border-radius:20px;transform:rotate(24deg)}.eyes{position:absolute;left:56px;top:74px;display:flex;gap:46px}.eyes i{width:14px;height:21px;border-radius:50%;background:white;display:block;transform:rotate(5deg)}.smile{position:absolute;top:110px;left:77px;width:43px;height:30px;border-bottom:6px solid white;border-radius:0 0 50% 50%;transform:rotate(5deg)}.mascot-spark{position:absolute;top:0;right:14px;font-size:48px;color:var(--gold)}.orb{position:absolute;width:25px;height:25px;background:#ff9175;border-radius:50%;right:90px;bottom:50px}.art-note{position:absolute;right:24px;bottom:30px;background:#fff;color:#77708a;font-size:12px;font-weight:1000;padding:11px 18px;border-radius:14px;transform:rotate(-8deg)}
.daily-strip{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:14px;margin:12px 0 46px}.daily-panel{background:white;border:2px solid #f0ebe9;border-radius:23px;padding:17px 21px;display:flex;align-items:center;gap:14px}.daily-panel-icon{height:48px;width:48px;border-radius:16px;background:#fff4df;display:grid;place-items:center;font-size:25px;flex-shrink:0}.daily-panel-icon.lilac{background:#f1edff}.daily-panel-icon.mint{background:#e4f8f1}.daily-panel strong{font-size:16px;display:block}.daily-panel small{font-size:12px;color:var(--muted);font-weight:800}.daily-meter{height:8px;background:#f1eefa;border-radius:8px;margin-top:8px;overflow:hidden}.daily-meter>div{background:var(--coral);height:100%;border-radius:8px;transition:width .25s}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:38px 0 20px}.section-head h2{font-size:30px;line-height:1.2;letter-spacing:-.8px;margin:7px 0;font-weight:1000}.section-head p{color:var(--muted);font-size:14px;font-weight:700;margin:3px 0}.plain-link{border:0;background:transparent;font-weight:1000;font-size:14px;color:var(--purple)}.adventure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.adventure-card{position:relative;border:0;border-radius:30px;padding:27px 25px;min-height:223px;text-align:left;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;transition:transform .16s}.adventure-card:hover{transform:translateY(-5px)}.adventure-card.purple{background:#eae5ff;color:#40329e}.adventure-card.yellow{background:#fff0c8;color:#84600e}.adventure-card.green{background:#dff5ee;color:#206b5e}.adventure-card .adventure-icon{font-size:40px;line-height:1;background:#ffffff90;border-radius:19px;padding:12px}.adventure-card h3{font-weight:1000;font-size:24px;letter-spacing:-.7px;margin:24px 0 7px}.adventure-card p{font-size:13px;line-height:1.45;font-weight:800;opacity:.8;margin:0;max-width:235px}.adventure-card .card-arrow{position:absolute;top:26px;right:23px;background:#fff9;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;font-size:23px}.adventure-card .corner-shape{position:absolute;font-size:112px;font-weight:1000;right:-6px;bottom:-37px;opacity:.1;transform:rotate(-20deg)}
.stage-banner{padding:22px 25px;border-radius:25px;margin-top:22px;display:flex;gap:16px;align-items:center;justify-content:space-between;background:#fff;border:2px dashed #e4dafa}.stage-banner .banner-glyph{font-size:34px}.stage-banner h3{margin:0 0 5px;font-size:18px}.stage-banner p{margin:0;color:var(--muted);font-size:13px;font-weight:700}
.page-head{text-align:center;padding:35px 10px 6px}.page-head h1{font-size:clamp(34px,5vw,53px);letter-spacing:-2px;line-height:1.08;margin:12px 0;font-weight:1000}.page-head p{color:var(--muted);font-size:15px;font-weight:700;max-width:570px;margin:0 auto;line-height:1.6}.pill-label{display:inline-block;border-radius:99px;padding:8px 13px;font-size:12px;font-weight:1000;letter-spacing:.5px;background:#eeeaff;color:var(--purple)}
.world-tabs{display:flex;gap:8px;justify-content:center;margin:26px 0 0;flex-wrap:wrap}.world-tabs button{border:2px solid #ece6e6;border-radius:40px;padding:11px 17px;background:white;color:#777085;font-weight:900}.world-tabs button.active{background:var(--purple);border-color:var(--purple);color:white}.world{max-width:750px;margin:30px auto}.world-head{border-radius:29px;padding:27px 27px;display:flex;align-items:center;gap:18px;position:relative;overflow:hidden}.world-head.math{background:#e7e2ff;color:#3e3595}.world-head.brain{background:#fff0c8;color:#825e13}.world-head.physics{background:#d8f4ec;color:#216a5c}.world-head .world-symbol{background:#fff9;width:66px;height:66px;display:grid;place-items:center;border-radius:24px;font-size:34px;flex-shrink:0}.world-head h2{font-weight:1000;margin:0 0 2px;font-size:24px}.world-head p{margin:0;font-size:13px;font-weight:800;opacity:.8}.trail-list{position:relative;padding:22px 0 28px}.trail-list:before{content:'';position:absolute;top:28px;bottom:42px;width:8px;background:repeating-linear-gradient(180deg,#e0d9ff 0px,#e0d9ff 14px,transparent 14px,transparent 23px);left:48px;border-radius:15px}.trail-row{display:flex;align-items:center;gap:22px;position:relative;padding:9px 2px;margin:6px 0}.trail-dot{flex-shrink:0;width:95px;height:95px;border:0;border-radius:31px;background:#fff;color:var(--purple);font-size:40px;border:5px solid var(--paper);box-shadow:0 7px 0 #dcd5f2,0 10px 23px rgba(70,49,141,.1);position:relative;z-index:2;transition:transform .14s}.trail-dot:hover{transform:rotate(-7deg) translateY(-2px)}.trail-row:nth-child(even) .trail-dot{background:#fff0cf;color:#ad730f;box-shadow:0 7px 0 #e6d6b1}.trail-row:nth-child(3n) .trail-dot{background:#dff8ec;color:#1f836f;box-shadow:0 7px 0 #b0dfd0}.trail-row.done .trail-dot{background:#6556e9!important;color:white!important;box-shadow:0 7px 0 #4f42bb}.trail-info{background:white;border:2px solid #eee9f1;border-radius:22px;padding:17px 20px;min-height:91px;flex:1;display:flex;align-items:center;justify-content:space-between;gap:10px}.trail-info strong{font-size:17px;display:block}.trail-info small{font-weight:700;color:var(--muted);font-size:12px}.trail-info .mini-status{font-size:12px;font-weight:1000;color:var(--purple)}.trail-info .tag{display:inline-block;margin-top:6px;background:#f5f2ff;color:#7467c5;font-size:10px;letter-spacing:.4px;font-weight:1000;padding:4px 9px;border-radius:10px}
.arcade-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:950px;margin:35px auto}.game-card{border:2px solid #eee7ed;border-radius:29px;background:white;padding:28px;position:relative;overflow:hidden}.game-card .game-icon{font-size:46px;margin-bottom:11px}.game-card h3{font-size:24px;margin:0 0 8px;letter-spacing:-.5px}.game-card p{min-height:46px;margin:0 0 23px;color:var(--muted);font-size:14px;font-weight:700;line-height:1.5}.game-card .best{background:#faf5ed;color:#936e34;border-radius:12px;padding:7px 10px;display:inline-block;margin-bottom:17px;font-weight:1000;font-size:12px}.game-card.purple{background:#eeebff}.game-card.yellow{background:#fff1cc}.game-card.green{background:#e1f7ee}.game-card.pink{background:#ffe9e3}
.lesson-page{max-width:730px;margin:0 auto;padding:25px 22px 110px}.lesson-top{display:flex;align-items:center;gap:16px;margin-bottom:22px}.close-lesson{border:0;background:white;border-radius:15px;min-height:42px;min-width:42px;font-size:24px;color:#878198;font-weight:900}.lesson-bar{height:13px;flex:1;background:#ebe7f0;border-radius:15px;overflow:hidden}.lesson-fill{height:100%;background:var(--purple);border-radius:15px;transition:width .2s}.hearts{white-space:nowrap;font-weight:1000;color:var(--coral);font-size:15px}.question-panel{padding:38px 24px 28px;min-height:345px}.question-label{display:inline-block;border-radius:18px;background:#eeeaff;color:var(--purple);padding:7px 14px;font-size:11px;font-weight:1000;letter-spacing:1px;text-transform:uppercase}.question-label.physics{background:#e1f7ee;color:#23826a}.question-title{font-size:clamp(29px,5vw,46px);line-height:1.22;font-weight:1000;letter-spacing:-1.35px;margin:28px 0 14px}.question-title.numeric{font-size:clamp(51px,9vw,83px);letter-spacing:-2px;text-align:center}.question-sub{text-align:center;color:var(--muted);font-size:14px;font-weight:800;margin:0}.answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px auto 0;max-width:650px}.answer-option{position:relative;min-height:86px;padding:15px;border:2px solid #e8e2ec;border-bottom:5px solid #e8e2ec;background:white;border-radius:20px;color:var(--ink);font-size:20px;font-weight:1000;line-height:1.3;transition:background .12s,transform .12s}.answer-option small{position:absolute;top:8px;left:13px;font-size:11px;color:#bbb2c6}.answer-option:hover:not(:disabled){transform:translateY(-2px);border-color:#b6aafe;background:#faf9ff}.answer-option.chosen.correct{background:#e0f7ec;border-color:#5fc9a0;color:#208b6d}.answer-option.chosen.wrong{background:#fff0e9;border-color:#f18b78;color:#c7574b}.answer-option.reveal{background:#e6f7ed;border-color:#6bc9a7;color:#208b6d}.answer-option.locked{opacity:.75}.answer-form{max-width:400px;margin:25px auto 0}.answer-input{height:73px;text-align:center;width:100%;border:3px solid #e2dbea;outline:none;background:white;color:var(--ink);font-weight:1000;border-radius:18px;font-size:35px;letter-spacing:2px}.answer-input:focus{border-color:var(--purple)}.number-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:13px auto 0;max-width:320px}.number-pad button{background:white;border:2px solid #ece7ef;border-bottom:4px solid #e4dce9;border-radius:13px;height:57px;font-size:22px;font-weight:1000;color:var(--ink)}.number-pad button:hover{background:var(--purple-pale)}.number-pad button.pad-control{font-size:16px;color:var(--purple)}.submit-row{display:flex;align-items:center;gap:14px;margin-top:22px}.submit-row .button{flex:1;min-height:55px}.hint-button{border:0;background:none;color:var(--purple);font-weight:1000;padding:12px 0;font-size:14px}.hint-card{background:#fff2d5;border-radius:18px;margin-top:18px;padding:17px 20px;font-weight:800;font-size:14px;color:#7f5b21;line-height:1.55}.feedback-panel{margin:20px auto 0;border-radius:24px;padding:22px 24px;animation:popIn .22s ease}.feedback-panel.correct{background:#dff8ed;color:#176c59}.feedback-panel.wrong{background:#fff0e6;color:#a34c40}.feedback-panel h3{font-size:21px;margin:0 0 7px}.feedback-panel p{margin:0 0 14px;line-height:1.6;font-weight:700;font-size:14px}.feedback-panel .button{max-width:300px}.lesson-intro{background:white;border:2px solid #f0eaf0;border-radius:32px;padding:32px 35px;margin:12px auto}.intro-icon{font-size:55px;background:#eeeaff;width:94px;height:94px;border-radius:26px;display:grid;place-items:center;margin-bottom:21px}.lesson-intro h1{font-size:37px;line-height:1.2;letter-spacing:-1.3px;margin:14px 0}.lesson-intro>p{font-weight:800;color:var(--muted);line-height:1.65}.strategy{background:#f6f3ff;border-radius:22px;padding:20px 24px;margin:20px 0}.strategy span{font-size:11px;font-weight:1000;color:var(--purple);letter-spacing:1px}.strategy strong{display:block;font-size:22px;margin:8px 0;color:#5146b5}.strategy p{color:#6c6589;font-size:14px;font-weight:800;line-height:1.55;margin:0}.lesson-intro .button{margin-top:8px}.intro-steps{display:flex;gap:10px;margin:22px 0;flex-wrap:wrap}.intro-steps span{background:#f4f1f6;border-radius:12px;padding:8px 13px;color:#787184;font-weight:900;font-size:12px}
.end-panel{background:white;text-align:center;padding:52px 33px;border:2px solid #f1eaef;border-radius:35px;margin:28px auto;max-width:650px}.end-art{font-size:81px;line-height:1.5}.end-panel h1{font-size:38px;letter-spacing:-1.5px;margin:8px 0}.end-panel p{font-size:15px;font-weight:700;color:var(--muted);line-height:1.6}.end-stats{display:flex;justify-content:center;gap:14px;margin:25px auto;flex-wrap:wrap}.end-stats span{background:#f5f2ff;border-radius:18px;padding:16px 20px;min-width:115px;font-weight:1000;color:var(--purple);font-size:22px}.end-stats span small{font-size:11px;display:block;color:#756d8e}.end-panel .cta-row{justify-content:center}
.review-empty{text-align:center;background:#fff;border:2px dashed #e6deed;border-radius:32px;padding:51px 26px;margin:32px auto;max-width:700px}.review-empty .big-emoji{font-size:62px}.review-empty h2{font-size:25px;margin:15px 0 6px}.review-empty p{font-size:14px;color:var(--muted);font-weight:800;line-height:1.6}.review-items{display:grid;gap:12px;max-width:760px;margin:27px auto}.review-item{background:white;border:2px solid #eee9f0;border-radius:23px;padding:20px;display:flex;justify-content:space-between;gap:15px;align-items:center}.review-item strong{display:block;font-size:16px}.review-item small{color:var(--muted);font-size:12px;font-weight:800}.review-item .due{color:#d17b53;font-weight:1000}.profile-layout{max-width:850px;margin:30px auto;display:grid;grid-template-columns:1fr 1fr;gap:17px}.profile-card{border:2px solid #efe9ed;border-radius:27px;background:white;padding:25px}.profile-card h2{margin:0 0 17px;font-size:20px}.profile-number{font-size:42px;color:var(--purple);font-weight:1000;line-height:1}.profile-number small{display:block;font-size:12px;color:var(--muted);letter-spacing:0;margin-top:7px}.profile-row{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:900;gap:12px;padding:12px 0;border-bottom:1px solid #eeeaf0}.profile-row:last-child{border:0}.profile-row span:last-child{color:var(--purple)}.profile-card .button{margin:5px 0}.profile-card.full{grid-column:1/-1}.topic-bars{display:flex;flex-direction:column;gap:14px}.topic-line{display:grid;grid-template-columns:170px 1fr 45px;gap:12px;align-items:center;font-size:13px;font-weight:900}.topic-line .mini-meter{background:#efecf1;height:9px;border-radius:7px;overflow:hidden}.topic-line .mini-meter>div{height:100%;border-radius:9px;background:var(--purple)}.topic-line strong{text-align:right;color:var(--purple)}
.sprint-clock{background:#fff0ca;color:#af7726;border-radius:999px;display:inline-block;padding:12px 19px;font-size:23px;font-weight:1000;margin:10px auto}.rastro-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:460px;margin:25px auto}.rastro-cell{height:76px;border-radius:19px;background:white;border:2px solid #ded4ec;border-bottom:5px solid #d6c9e5;color:var(--ink);font-size:28px;font-weight:1000;transition:.12s}.rastro-cell.selected{background:#eeeaff;border-color:var(--purple);transform:translateY(2px)}.rastro-cell.matched{background:#dcf8eb;border-color:#a3dbbf;animation:popIn .25s ease}.rastro-head{font-size:19px;text-align:center;font-weight:900;margin:20px 0 0}.rastro-head strong{color:var(--purple);font-size:27px}
.toast{position:fixed;z-index:100;bottom:92px;left:50%;transform:translateX(-50%);padding:12px 22px;background:#302b48;color:white;border-radius:99px;font-weight:900;box-shadow:0 12px 35px #302b4826;max-width:90vw;text-align:center}.toast[hidden]{display:none}.muted-note{font-size:12px;color:var(--muted);line-height:1.6;font-weight:800}.mini-caption{font-size:12px;color:var(--muted);font-weight:1000;text-transform:uppercase;letter-spacing:.7px}.footer-note{color:var(--muted);font-size:12px;text-align:center;font-weight:800;margin:45px auto 10px}.spacer-sm{height:13px}
@keyframes popIn{from{transform:scale(.98);opacity:.3}to{transform:scale(1);opacity:1}}
@media(max-width:950px){.desktop-nav{gap:0}.nav-button{padding:9px 11px}.nav-button span{margin-right:0}.home-hero{gap:13px}.hero-art{min-height:380px}.hero-copy h1{font-size:57px}.header-inner{padding:0 20px}}
@media(max-width:760px){.header{height:68px}.header-inner{padding:0 17px}.logo{font-size:25px}.logo-mark{width:38px;height:38px;font-size:23px}.desktop-nav{display:none}.header-stats{gap:6px}.head-stat{padding:6px 10px;font-size:13px}.round-btn{display:none}.mobile-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;align-items:center;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);z-index:45;border-top:1px solid #eee5ea;padding:9px 5px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -7px 20px rgba(55,42,83,.04)}.mobile-nav button{background:none;border:0;display:flex;gap:2px;flex-direction:column;align-items:center;color:#978e9b;min-width:55px;font-weight:1000}.mobile-nav button span{font-size:23px;line-height:25px}.mobile-nav button small{font-size:10px}.mobile-nav button.active{color:var(--purple)}.shell{padding:19px 16px 118px}.home-hero{grid-template-columns:1fr;gap:8px}.hero-copy{padding:22px 5px 12px}.hero-copy h1{font-size:clamp(41px,11vw,61px);letter-spacing:-1.8px;margin:17px 0}.hero-copy p{font-size:15px;line-height:1.6;margin:0 0 22px}.hero-art{min-height:290px;border-radius:29px}.mascot{transform:translate(-50%,-48%) scale(.77) rotate(-7deg)}.math-chip{top:23px;left:23px;font-size:17px}.math-chip.second{top:42px;right:19px}.math-chip.third{bottom:34px}.art-note{bottom:18px;font-size:10px}.daily-strip{grid-template-columns:1fr 1fr;gap:9px;margin:15px 0 28px}.daily-panel{padding:13px;gap:9px;border-radius:19px}.daily-panel:first-child{grid-column:1/-1}.daily-panel-icon{height:42px;width:42px;font-size:22px}.daily-panel strong{font-size:14px}.daily-panel small{font-size:11px}.section-head{margin:25px 0 15px}.section-head h2{font-size:25px}.adventure-grid{grid-template-columns:1fr;gap:11px}.adventure-card{min-height:155px;padding:18px;display:grid;grid-template-columns:64px 1fr 35px;grid-template-rows:1fr auto;column-gap:14px;align-items:center}.adventure-card .adventure-icon{font-size:30px;padding:10px;grid-row:1/3}.adventure-card h3{font-size:20px;margin:0 0 6px;grid-column:2}.adventure-card p{grid-column:2;grid-row:2;font-size:12px}.adventure-card .card-arrow{position:static;grid-row:1/3;grid-column:3;width:30px;height:30px;font-size:19px}.adventure-card .corner-shape{display:none}.stage-banner{align-items:flex-start;flex-direction:column;padding:19px;gap:10px}.stage-banner .button{width:100%}.page-head{padding:20px 4px 4px}.page-head h1{font-size:39px}.arcade-grid{grid-template-columns:1fr;gap:13px;margin:23px auto}.game-card{padding:22px}.game-card p{min-height:0}.world{margin-top:21px}.world-head{padding:19px}.world-head .world-symbol{width:54px;height:54px;font-size:27px}.world-head h2{font-size:20px}.trail-dot{width:76px;height:76px;font-size:34px;border-radius:24px}.trail-list:before{left:37px}.trail-row{gap:10px}.trail-info{padding:12px 15px;min-height:76px;border-radius:19px}.trail-info strong{font-size:14px}.trail-info small{font-size:11px}.trail-info .mini-status{font-size:10px}.lesson-page{padding:20px 14px 105px}.lesson-top{gap:8px}.question-panel{padding:25px 5px 20px;min-height:290px}.question-title{font-size:29px;letter-spacing:-.65px}.question-title.numeric{font-size:clamp(43px,11vw,66px)}.answer-grid{gap:9px}.answer-option{font-size:17px;padding:15px 9px;min-height:81px}.answer-form{margin-top:19px}.answer-input{height:66px}.number-pad{max-width:300px}.number-pad button{height:51px}.lesson-intro{padding:24px 20px;border-radius:26px}.lesson-intro h1{font-size:31px}.feedback-panel{padding:18px}.end-panel{padding:40px 18px}.end-panel h1{font-size:32px}.profile-layout{grid-template-columns:1fr}.profile-card.full{grid-column:auto}.topic-line{grid-template-columns:110px 1fr 36px;gap:9px;font-size:11px}.rastro-grid{gap:6px}.rastro-cell{height:65px;font-size:23px}.footer-note{margin-top:27px}}
@media(max-width:360px){.head-stat.coin{display:none}.hero-copy h1{font-size:41px}.world-tabs button{padding:9px 11px;font-size:12px}.trail-info .tag{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Númio 0.4 — foco na resolução, resposta sempre acessível sem rolar até o fim. */
.skip-link{position:fixed;top:-90px;left:12px;z-index:300;background:var(--purple);color:white;padding:13px 17px;border-radius:12px;font-weight:900}
.skip-link:focus{top:12px}
body.immersive .mobile-nav{display:none!important}
body.immersive .lesson-page{max-width:850px;padding-top:14px;padding-bottom:32px}
body.immersive .lesson-top{position:sticky;top:85px;z-index:25;padding:11px 3px 15px;margin-bottom:0;background:var(--paper)}
body.immersive .question-panel{padding-top:17px;min-height:0;text-align:center}
body.immersive .question-title{margin-top:17px;margin-bottom:11px;font-size:clamp(27px,3.6vw,43px);line-height:1.2;letter-spacing:-.8px}
body.immersive .question-title.numeric{font-size:clamp(45px,6vw,72px)}
body.immersive .answer-grid{gap:12px;margin-top:22px}
body.immersive .answer-option{min-height:74px;padding:16px 16px 13px;font-size:clamp(14px,1.65vw,18px)}
body.immersive .answer-grid.long-answers .answer-option{font-size:15px;line-height:1.35}
body.immersive .answer-input{height:69px}
body.immersive .question-sub{font-size:13px}
body.immersive .hint-card{text-align:left}
body.immersive .submit-row{justify-content:center}
body.immersive .number-pad{max-width:288px}
body.show-feedback .question-panel{padding-bottom:205px}
body.show-feedback .feedback-panel{
 position:fixed;left:50%;bottom:max(14px,env(safe-area-inset-bottom));transform:translateX(-50%);
 z-index:95;width:min(920px,calc(100vw - 30px));max-height:min(230px,44vh);
 display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,210px);align-items:center;gap:25px;
 margin:0;padding:20px 25px;border:2px solid rgba(68,36,79,.12);box-shadow:0 18px 60px rgba(34,22,71,.18);overflow:auto;
}
body.show-feedback .feedback-panel .feedback-copy{text-align:left;min-width:0}
body.show-feedback .feedback-panel p{margin:0;font-size:14px;line-height:1.45;font-weight:750}
body.show-feedback .feedback-panel h3{font-size:20px;margin:0 0 8px}
body.show-feedback .feedback-panel .button{min-height:56px;width:100%;max-width:none;margin:0;white-space:nowrap}
body.show-feedback .feedback-panel.correct{background:#e2faee}
body.show-feedback .feedback-panel.wrong{background:#fff0e6}
.account-box{order:-1;background:linear-gradient(125deg,#fff 0%,#f5f0ff 100%);border-color:#ded7fb}
.account-box p{color:var(--muted);line-height:1.5}
.account-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}
.account-tabs button{padding:12px;border:2px solid #e7e0f4;background:white;border-radius:13px;font-weight:950;color:#6d6081}
.account-tabs button.selected{background:var(--purple);border-color:var(--purple);color:white}
.account-form{display:grid;gap:9px;max-width:440px}
.account-form label{font-weight:950;font-size:13px}
.account-form input{padding:12px 14px;border:2px solid #e6def0;border-radius:13px;background:white;font-size:16px;color:var(--ink);width:100%}
.account-form .button{margin-top:10px;width:100%}
.account-actions{display:flex;flex-wrap:wrap;gap:10px;margin:15px 0}
.account-actions .button{margin:0}
.sync-state{padding:11px 14px;background:#f5f0ff;border-radius:12px;font-size:13px;font-weight:850;line-height:1.5;color:#5849a5}
.text-action{background:none;border:0;text-decoration:underline;color:var(--purple);padding:12px 0;font-weight:900}
@media(min-width:900px) and (pointer:fine){
 body.immersive .number-pad{display:none}
 body.immersive .answer-form{max-width:390px}
 body.immersive .answer-input{margin-top:3px}
 body.immersive .submit-row{margin-top:13px}
}
@media(max-width:760px){
 body.immersive .lesson-top{top:68px}
 body.immersive .lesson-page{padding:10px 12px 24px}
 body.immersive .question-panel{padding:12px 3px}
 body.immersive .question-title{font-size:clamp(24px,6.8vw,33px);margin:13px 0}
 body.immersive .question-title.numeric{font-size:clamp(42px,12vw,64px)}
 body.immersive .answer-option{min-height:69px}
 body.show-feedback .question-panel{padding-bottom:270px}
 body.show-feedback .feedback-panel{bottom:max(8px,env(safe-area-inset-bottom));max-height:min(310px,48vh);width:calc(100vw - 20px);border-radius:21px;display:flex;flex-direction:column;gap:12px;align-items:stretch;padding:15px 16px}
 body.show-feedback .feedback-panel .button{position:sticky;bottom:0;flex-shrink:0;min-height:52px}
 body.show-feedback .feedback-panel p{font-size:12px}
 body.show-feedback .feedback-panel h3{font-size:17px}
 .account-actions{flex-direction:column}
 .account-actions .button{width:100%}
}
@media(max-height:720px) and (min-width:761px){
 body.immersive .header{height:62px}
 body.immersive .lesson-top{top:62px}
 body.immersive .question-title{margin:10px 0;font-size:clamp(26px,3.2vw,36px)}
 body.immersive .question-title.numeric{font-size:clamp(43px,5.8vw,62px)}
 body.immersive .answer-grid{margin-top:13px}
 body.immersive .answer-option{min-height:60px}
 body.show-feedback .feedback-panel{max-height:175px;padding:14px 22px}
 body.show-feedback .feedback-panel h3{font-size:17px;margin-bottom:5px}
 body.show-feedback .feedback-panel p{font-size:12px}
}
body.show-feedback .feedback-panel{animation:none;}

body.show-feedback .number-pad{display:none!important}
body.show-feedback .answer-form .submit-row{display:none!important}
