:root{--rose:#e11d48;--amber:#f5a623;--blue:#2563eb;--green:#16a34a;--cream:#fff4e6;--ink:#1f1a17;--radius-lg:28px;--radius-md:18px;--shadow-pop:0 10px 0 #1f1a17e6}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--cream);color:var(--ink);margin:0;font-family:Trebuchet MS,Segoe UI,system-ui,sans-serif}h1,h2,h3{letter-spacing:-.02em;font-weight:900;line-height:1.05}a{color:inherit;text-decoration:none}.container{max-width:1120px;margin:0 auto;padding:0 24px}.navbar{z-index:50;background:var(--cream);border-bottom:4px solid var(--ink);position:sticky;top:0}.navbar-inner{justify-content:space-between;align-items:center;max-width:1120px;margin:0 auto;padding:16px 24px;display:flex}.logo{gap:2px;font-size:1.5rem;font-weight:900;display:flex}.logo span:first-child{color:var(--rose)}.logo span:nth-child(2){color:var(--amber)}.logo span:nth-child(3){color:var(--blue)}.nav-links{align-items:center;gap:8px;display:flex}.btn{border:3px solid var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:12px 24px;font-size:1rem;font-weight:800;transition:transform .12s;display:inline-flex}.btn:active{transform:translateY(3px)}.btn-primary{background:var(--rose);color:#fff;box-shadow:var(--shadow-pop)}.btn-primary:hover{background:#c81a40}.btn-ghost{color:var(--ink);background:0 0}.btn-ghost:hover{background:#1f1a1714}.btn-sm{padding:8px 16px;font-size:.85rem}.hero{padding:72px 0 96px;position:relative;overflow:hidden}.hero-grid{grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;display:grid}.hero h1{margin:0 0 16px;font-size:3.4rem}.hero h1 .hl{color:var(--rose)}.hero p{opacity:.85;max-width:460px;margin:0 0 28px;font-size:1.2rem}.hero-actions{flex-wrap:wrap;gap:14px;display:flex}.blob{filter:blur();opacity:.9;border-radius:50%;position:absolute}.hero-art{height:380px;position:relative}.hero-card{border-radius:var(--radius-md);border:3px solid var(--ink);box-shadow:var(--shadow-pop);justify-content:center;align-items:center;font-size:2.6rem;display:flex;position:absolute}.section{padding:64px 0}.section-title{text-align:center;margin-bottom:8px;font-size:2.2rem}.section-sub{text-align:center;opacity:.75;margin-bottom:40px;font-size:1.05rem}.subject-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.subject-card{border-radius:var(--radius-lg);border:3px solid var(--ink);box-shadow:var(--shadow-pop);color:#fff;cursor:pointer;padding:28px 22px;transition:transform .15s}.subject-card:hover{transform:translateY(-6px)}.subject-card .emoji{margin-bottom:12px;font-size:2.6rem;display:block}.subject-card h3{margin:0 0 6px;font-size:1.3rem}.subject-card p{opacity:.92;margin:0;font-size:.92rem}.steps-row{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.step-box{border:3px solid var(--ink);border-radius:var(--radius-md);text-align:center;background:#fff;padding:24px}.step-num{background:var(--blue);color:#fff;border:3px solid var(--ink);border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 14px;font-size:1.3rem;font-weight:900;display:flex}.cta-banner{background:var(--ink);color:#fff;border-radius:var(--radius-lg);text-align:center;margin:0 24px;padding:48px 40px}.cta-banner h2{color:var(--amber);margin-bottom:10px;font-size:2rem}.cta-banner p{opacity:.85;margin-bottom:24px}.dash-header{padding:40px 0 28px}.dash-header h1{margin:0 0 18px;font-size:2.2rem}.search-wrap{flex-wrap:wrap;gap:12px;margin-bottom:18px;display:flex}.search-input{border:3px solid var(--ink);background:#fff;border-radius:999px;flex:1;min-width:240px;padding:14px 20px;font-size:1rem}.search-input:focus{outline:3px solid var(--blue)}.pill-row{flex-wrap:wrap;gap:10px;display:flex}.pill{border:3px solid var(--ink);cursor:pointer;background:#fff;border-radius:999px;padding:8px 18px;font-size:.9rem;font-weight:700}.pill.active{color:#fff}.lesson-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;padding-bottom:64px;display:grid}.lesson-card{border:3px solid var(--ink);border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-pop);background:#fff;padding:20px;transition:transform .12s;display:block}.lesson-card:hover{transform:translateY(-4px)}.lesson-badge{color:#fff;border-radius:999px;margin-bottom:10px;padding:4px 12px;font-size:.75rem;font-weight:800;display:inline-block}.lesson-card h3{margin:0 0 8px;font-size:1.15rem}.lesson-card p{opacity:.8;margin:0 0 12px;font-size:.9rem}.lesson-meta{opacity:.65;gap:8px;font-size:.78rem;display:flex}.empty-state{text-align:center;opacity:.7;padding:60px 20px}.modal-overlay{z-index:100;background:#1f1a178c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--cream);border:4px solid var(--ink);border-radius:var(--radius-lg);width:100%;max-width:520px;box-shadow:var(--shadow-pop);padding:32px;position:relative}.modal-close{background:var(--ink);color:#fff;cursor:pointer;border:none;border-radius:50%;width:34px;height:34px;font-size:1.1rem;position:absolute;top:16px;right:16px}.modal h2{margin:6px 0 4px}.modal-steps{margin:20px 0;padding:0;list-style:none}.modal-steps li{border-bottom:2px dashed #1f1a1733;gap:12px;padding:12px 0;display:flex}.modal-steps li:last-child{border-bottom:none}.step-dot{background:var(--rose);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;min-width:28px;height:28px;font-size:.85rem;font-weight:800;display:flex}.modal-note{border:2px solid var(--blue);border-radius:var(--radius-md);background:#2563eb1a;margin-top:10px;padding:12px 16px;font-size:.85rem}@media (width<=860px){.hero-grid{grid-template-columns:1fr}.subject-grid{grid-template-columns:repeat(2,1fr)}.steps-row{grid-template-columns:1fr}.hero h1{font-size:2.4rem}}
