:root{--ink:#202225;--cream:#fffaf0;--yellow:#ffd83d;--pink:#ff6e83;--blue:#4b70e8;--mint:#9ee5ca;--line:#202225;--shadow:6px 6px 0 var(--ink)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"Nunito","Noto Sans SC",sans-serif}button,a{font:inherit}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);border-bottom:2px solid var(--ink);background:#fffdf8;position:sticky;top:0;z-index:20}.brand{display:flex;gap:10px;align-items:center;font-weight:900;font-size:20px;text-decoration:none;color:var(--ink)}.brand-mark{display:grid;place-items:center;width:39px;height:39px;background:var(--yellow);border:2px solid var(--ink);border-radius:10px;transform:rotate(-4deg);font-size:23px}.brand-mark span{color:var(--pink)}nav{display:flex;gap:34px;height:100%;align-items:center}nav a{color:#666;text-decoration:none;font-weight:800;position:relative}nav a.active,nav a:hover{color:var(--ink)}nav a.active:after{content:"";height:4px;background:var(--pink);position:absolute;left:0;right:0;bottom:-27px;border-radius:3px}.streak{border:2px solid var(--ink);border-radius:99px;background:white;padding:8px 15px;font-weight:800}.streak span{margin-right:5px}.hero{min-height:610px;padding:82px max(7vw,30px);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;overflow:hidden;background:radial-gradient(circle at 88% 12%,#ffe999 0 4%,transparent 4.2%),linear-gradient(115deg,#fffaf0 0 59%,#f1eaff 59%)}.eyebrow{font-size:13px;font-weight:900;letter-spacing:2.2px;color:var(--blue);text-transform:uppercase}.hero h1{font-size:clamp(54px,7vw,88px);line-height:.98;margin:18px 0 25px;letter-spacing:-4px}.hero h1 em{font-style:normal;position:relative;z-index:1}.hero h1 em:after{content:"";position:absolute;height:16px;background:var(--yellow);bottom:5px;left:-3px;right:-7px;z-index:-1;transform:rotate(-1deg)}.hero-desc{font-family:"Noto Sans SC";font-size:18px;line-height:1.8;max-width:560px;color:#555}.hero-actions{display:flex;gap:22px;align-items:center;margin-top:34px}.primary{border:2px solid var(--ink);background:var(--pink);color:#fff;padding:15px 24px;border-radius:10px;box-shadow:4px 4px 0 var(--ink);font-weight:900;cursor:pointer;transition:.15s}.primary:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.primary span{font-size:22px;margin-left:8px}.time-pill{font-weight:800;color:#666}.hero-visual{height:430px;position:relative;display:grid;place-items:center}.orbit{position:absolute;border:2px dashed #c5b6dc;border-radius:50%;width:390px;height:390px}.orbit-two{width:300px;height:300px;border-style:solid;border-color:#ddd2ec}.mascot{position:relative;width:230px;height:220px;background:var(--blue);border:3px solid var(--ink);border-radius:50% 50% 43% 43%;box-shadow:10px 10px 0 rgba(32,34,37,.15)}.ear{position:absolute;width:68px;height:84px;background:var(--blue);border:3px solid var(--ink);top:-31px;z-index:-1}.ear.left{left:9px;border-radius:80% 20% 20% 20%;transform:rotate(-16deg)}.ear.right{right:9px;border-radius:20% 80% 20% 20%;transform:rotate(16deg)}.face{position:absolute;background:#fff5df;width:170px;height:120px;left:27px;top:28px;border:3px solid var(--ink);border-radius:48%}.face i{position:absolute;width:9px;height:14px;background:var(--ink);border-radius:50%;top:44px}.face i:first-child{left:44px}.face i:nth-child(2){right:44px}.face b{position:absolute;left:76px;top:61px;font-size:22px}.book{position:absolute;bottom:-8px;left:26px;width:180px;height:100px;background:var(--yellow);border:3px solid var(--ink);border-radius:7px 7px 16px 16px;text-align:center;font-size:33px;padding-top:10px;font-weight:900}.book small{display:block;font-size:11px;letter-spacing:2px}.float-card{position:absolute;background:white;border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);padding:9px 14px;border-radius:9px;font-weight:900;z-index:2}.card-a{top:25px;left:9%;transform:rotate(-8deg);background:var(--mint)}.card-b{right:4%;top:92px;transform:rotate(7deg);background:var(--yellow)}.card-c{left:4%;bottom:83px;color:var(--pink)}.card-d{right:8%;bottom:25px;color:var(--blue);transform:rotate(-6deg)}.lesson{display:grid;grid-template-columns:230px minmax(0,830px);gap:55px;padding:100px max(7vw,30px);justify-content:center;background:#fff}.lesson-nav{position:sticky;top:110px;height:max-content}.lesson-nav>p{font-weight:900;font-size:13px;letter-spacing:1px;color:#999}.step{display:flex;text-align:left;gap:12px;width:100%;border:0;border-left:3px solid #ddd;background:transparent;padding:17px 12px;cursor:pointer;color:#aaa}.step b{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;border:2px solid currentColor}.step span{font-weight:900;font-size:15px}.step small{display:block;font-weight:600;margin-top:3px}.step.active{color:var(--blue);border-left-color:var(--blue);background:#f4f6ff}.lesson-content{display:grid;gap:55px}.panel{scroll-margin-top:110px}.panel-label{font-weight:900;color:var(--pink);letter-spacing:1.5px;font-size:13px}.panel h2,.section-heading h2,.summary-section h2{font-size:36px;margin:10px 0 22px}.lead{font-family:"Noto Sans SC";font-size:18px;line-height:1.9}.use-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0}.use-card{display:flex;gap:16px;border:2px solid var(--ink);border-radius:14px;padding:22px;box-shadow:4px 4px 0 var(--ink)}.use-card.yellow{background:#fff8d2}.use-card.blue{background:#edf2ff}.use-card>span{font-size:28px}.use-card b{font-size:18px}.use-card p{margin:7px 0 2px;font-weight:900}.use-card small{color:#777}.rule-box{border:2px solid var(--ink);background:#f5edff;padding:28px;border-radius:14px;position:relative;margin-top:35px}.pin{position:absolute;top:-15px;left:25px;padding:5px 14px;background:var(--pink);color:white;border:2px solid var(--ink);transform:rotate(-2deg);font-weight:900}.rule-box p{font-family:"Noto Sans SC";font-size:17px}.rule-box mark{background:var(--yellow);font-weight:900}.formula{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:20px;flex-wrap:wrap}.formula span,.formula strong{padding:8px 12px;background:white;border:2px solid var(--ink);border-radius:7px}.formula strong{background:var(--yellow)}.formula i{font-weight:900;color:var(--pink)}.sentence-pair{border:2px solid var(--ink);border-radius:14px;overflow:hidden}.sentence-pair>div{padding:24px;font-size:20px;font-weight:800}.sentence-pair>div+div{border-top:2px dashed #bbb}.sentence-pair small{display:block;color:#888;margin-top:9px;font-size:13px}.sentence-pair b{color:var(--pink);font-size:24px}.subject{background:#dbe6ff;color:var(--blue);padding:3px 9px;border-radius:5px}.subject.pink{background:#ffe0e5;color:#d94562}.tip{display:flex;gap:14px;background:#fff8d2;border-left:5px solid var(--yellow);padding:18px 22px;margin-top:20px}.tip span{font-size:25px}.tip p{margin:0}.progress-row{display:flex;align-items:center;gap:14px;font-size:13px;font-weight:900;margin:28px 0}.progress-track{height:10px;flex:1;background:#eee;border-radius:10px;overflow:hidden}.progress-track i{display:block;height:100%;width:0;background:var(--pink);transition:.3s}.question-card{border:2px solid var(--ink);border-radius:14px;padding:26px;background:#fff;box-shadow:5px 5px 0 #e8e8e8}.question-number{color:var(--blue);font-weight:900;font-size:13px}.question-card h3{font-size:22px;margin:10px 0 20px}.options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.option{background:#fff;border:2px solid #d9d9d9;border-radius:9px;padding:13px;text-align:left;font-weight:800;cursor:pointer}.option:hover{border-color:var(--blue);background:#f3f6ff}.option.correct{border-color:#239b71;background:#dff8ed}.option.wrong{border-color:#db4963;background:#ffe6ea}.feedback{min-height:25px;margin:15px 0 0;font-family:"Noto Sans SC";font-size:14px;color:#666}.next-btn{display:none;margin:18px 0 0 auto;border:0;background:var(--ink);color:white;padding:11px 18px;border-radius:7px;font-weight:900;cursor:pointer}.result{text-align:center;padding:35px;border:2px solid var(--ink);border-radius:14px;background:#fff8d2}.result-star{font-size:60px}.result h3{font-size:28px;margin:8px}.map-section{padding:90px max(7vw,30px);background:#f1eaff;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}.section-heading{display:flex;justify-content:space-between;align-items:end;max-width:1100px;margin:auto}.section-heading>p{color:#777;font-weight:700}.day-map{max-width:1100px;margin:35px auto 0;display:grid;grid-template-columns:repeat(7,1fr);gap:16px}.day-card{min-height:150px;background:#fff;border:2px solid var(--ink);border-radius:12px;padding:16px;position:relative}.day-card.done{background:#ddf5ea}.day-card.current{background:var(--yellow);box-shadow:5px 5px 0 var(--ink);transform:translateY(-5px)}.day-card.locked{opacity:.6}.day-card small{font-weight:900;color:#777}.day-card h3{font-size:16px;margin:20px 0 8px}.day-card span{position:absolute;right:12px;top:10px}.summary-section{padding:90px max(7vw,30px);display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;max-width:1100px;margin:auto}.summary-copy>p:last-child{font-family:"Noto Sans SC";line-height:1.8;color:#666}.summary-card{background:#fff7c9;border:2px solid var(--ink);padding:35px 40px;box-shadow:8px 8px 0 var(--ink);transform:rotate(1deg);position:relative}.summary-card .tape{position:absolute;width:90px;height:25px;background:rgba(255,255,255,.65);top:-13px;left:calc(50% - 45px)}.summary-card h3{font-size:26px;border-bottom:2px dashed var(--ink);padding-bottom:15px}.summary-card li{margin:13px 0;line-height:1.5}.summary-card button{border:0;background:transparent;color:var(--blue);font-weight:900;cursor:pointer;padding:7px 0}footer{padding:45px max(5vw,24px);display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:white}footer .brand-mark{color:var(--ink)}footer p{font-weight:800}footer small{color:#aaa}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,100px);background:var(--ink);color:white;padding:12px 22px;border-radius:99px;z-index:50;transition:.3s;font-weight:800}.toast.show{transform:translate(-50%,0)}
@media(max-width:850px){nav{display:none}.hero{grid-template-columns:1fr;padding-top:55px}.hero-visual{height:380px}.lesson{grid-template-columns:1fr}.lesson-nav{position:static;display:flex;overflow:auto}.lesson-nav>p{display:none}.step{min-width:150px;border-left:0;border-bottom:3px solid #ddd}.day-map{grid-template-columns:repeat(2,1fr)}.summary-section{grid-template-columns:1fr}.use-grid{grid-template-columns:1fr}.section-heading{align-items:start;flex-direction:column}.hero h1{font-size:58px}.hero h1 em:after{height:12px}.summary-card{transform:none}footer{gap:25px;flex-direction:column;text-align:center}}@media(max-width:520px){.topbar{height:66px}.brand{font-size:17px}.streak{padding:7px 10px}.hero{padding:45px 20px}.hero h1{font-size:46px;letter-spacing:-2px}.hero-desc{font-size:15px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-visual{height:330px;transform:scale(.82);margin:-20px}.lesson,.map-section,.summary-section{padding:65px 20px}.lesson-nav{margin:0 -20px;padding:0 20px}.panel h2,.section-heading h2,.summary-section h2{font-size:29px}.formula{justify-content:flex-start}.options{grid-template-columns:1fr}.day-map{grid-template-columns:1fr 1fr}.day-card{min-height:125px;padding:13px}.day-card h3{margin-top:14px}.summary-card{padding:28px 25px}}
