@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@500;700;800;900&display=swap');
:root{--ink:#17233d;--muted:#6f7890;--paper:#f7f8fc;--card:#fff;--blue:#4355db;--violet:#7d48e8;--gold:#ffbd3d;--line:#e6e8f1;--shadow:0 18px 50px #26335a18}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Nunito,system-ui,sans-serif}a{color:inherit;text-decoration:none}main{min-height:calc(100vh - 145px)}
.site-header{height:74px;padding:0 max(24px,calc((100% - 1120px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}.site-header nav{display:flex;align-items:center;gap:24px;font-weight:800}.site-header nav form{display:inline}.brand{font-size:21px;font-weight:900;letter-spacing:.05em}.brand span{display:inline-grid;place-items:center;width:36px;height:36px;background:linear-gradient(135deg,var(--blue),var(--violet));color:white;border-radius:11px}.xp-pill,.tag{background:#eef0ff;color:var(--blue);padding:8px 13px;border-radius:99px;font-size:13px}.link-button{border:0;background:none;font:inherit;color:var(--muted);cursor:pointer}.button{display:inline-block;border:0;border-radius:12px;background:linear-gradient(135deg,var(--blue),var(--violet));color:#fff;padding:14px 22px;font:800 15px Nunito;box-shadow:0 9px 22px #4c50cf35;cursor:pointer}.button.small{padding:10px 16px}.button.secondary{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none}.button.full{width:100%}.eyebrow{font-size:12px;font-weight:900;letter-spacing:.2em;color:var(--blue)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(34px,5vw,62px);line-height:1.03;margin-bottom:20px}h1 em{font-style:normal;color:var(--violet)}.lead{font-size:20px;line-height:1.6;color:var(--muted);max-width:600px}.hero{max-width:1120px;margin:auto;min-height:570px;display:grid;grid-template-columns:1.3fr .7fr;align-items:center;padding:60px 24px}.actions{display:flex;gap:12px;margin-top:32px}.hero-orbit{width:320px;height:320px;display:grid;place-items:center;border:2px dashed #bfc5ea;border-radius:50%;font-size:30px;position:relative}.hero-orbit strong{font-size:100px;color:var(--violet)}.hero-orbit span,.hero-orbit i{position:absolute;background:#fff;border-radius:18px;padding:16px;box-shadow:var(--shadow);font-style:normal}.hero-orbit span{left:-10px;top:30px}.hero-orbit i{right:-10px;bottom:35px}.features{max-width:1120px;margin:0 auto 70px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:0 24px}.features article,.profile-grid article,.medals article{background:var(--card);padding:28px;border:1px solid var(--line);border-radius:20px}.features b{font-size:28px}.features p,.page-title>p,.quest p,.medals p{color:var(--muted)}
.auth-card{max-width:620px;margin:55px auto;padding:40px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.auth-card.compact{max-width:480px}.auth-card h1{font-size:38px}.auth-card form>label{display:block;font-weight:800;margin:20px 0}.auth-card input:not([type=radio]){display:block;width:100%;margin-top:8px;padding:14px;border:2px solid var(--line);border-radius:11px;font:inherit}.avatars{border:0;padding:0;margin:25px 0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.avatars legend{font-weight:800;margin-bottom:10px}.avatars label{text-align:center;cursor:pointer}.avatars input{position:absolute;opacity:0}.avatar{display:grid;place-items:center;margin:auto;width:68px;height:68px;border-radius:22px;background:linear-gradient(145deg,#596bfa,#863fe0);color:#fff;font-size:30px;border:4px solid transparent}.avatar.leo{background:linear-gradient(145deg,#ff9e42,#ef4d64)}.avatar.maya{background:linear-gradient(145deg,#24bca2,#3572d8)}.avatar.atlas{background:linear-gradient(145deg,#6542d8,#ca4fad)}.avatars input:checked+.avatar{border-color:#ffc44e;box-shadow:0 0 0 3px var(--blue)}.avatars small{display:block;margin-top:5px}.center{text-align:center;margin:22px 0 0}.flash{max-width:600px;margin:16px auto;padding:12px 18px;background:#fff2f2;color:#a52b2b;border-radius:10px}
.page-title{max-width:900px;margin:55px auto 35px;text-align:center;padding:0 24px}.page-title h1{font-size:45px}.back{display:inline-block;color:var(--muted);font-weight:800;margin-bottom:20px}.world-map,.quest-path{max-width:900px;margin:0 auto 70px;padding:0 24px}.realm{display:flex;align-items:center;gap:24px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;margin:18px 0}.realm>span{width:72px;height:72px;display:grid;place-items:center;border-radius:50%;background:#edf0ff;color:var(--blue);font-size:30px;font-weight:900}.realm div{flex:1}.realm h2,.quest h2{margin:3px 0 5px}.realm p{margin:0;color:var(--muted)}.realm.active{border-color:#a6adf4;box-shadow:var(--shadow)}.realm.active>b{color:var(--blue)}.realm.locked{opacity:.55}.realm small,.quest small,.game-top small{font-weight:900;letter-spacing:.14em;color:var(--violet)}
.quest-path{max-width:760px}.quest{position:relative;display:flex;align-items:center;gap:25px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;margin:24px 0}.quest>div:nth-child(2){flex:1}.quest>.node{flex:0 0 auto;width:68px;height:68px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--violet));color:#fff;font-size:25px;font-weight:900}.quest.completed>.node{background:#2cb68e}.quest.locked{opacity:.55}.quest.locked>.node{background:#a5a9b7}.quest>strong{color:var(--violet)}
.profile-head{max-width:850px;margin:65px auto 30px;display:flex;align-items:center;gap:28px;padding:0 24px}.avatar.large{width:120px;height:120px;font-size:54px;flex:0 0 auto}.profile-head h1{font-size:46px;margin-bottom:14px}.profile-head>div{flex:1}.progress{height:12px;border-radius:99px;background:#e2e5f1;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--violet))}.profile-grid,.medals{max-width:850px;margin:20px auto;display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:0 24px}.profile-grid strong{font-size:34px;color:var(--violet)}.medals{display:block;margin-bottom:70px}.medals article{display:flex;align-items:center;gap:20px}.medals article>span{font-size:45px}.medals h3,.medals article p{margin-bottom:3px}
.game-shell{max-width:980px;margin:35px auto;padding:0 20px}.game-top{display:flex;justify-content:space-between;align-items:center}.game-top h1{font-size:30px}.game-top>span{font-weight:900;color:var(--violet)}#game-frame{width:100%;height:590px;border:0;border-radius:22px;background:#11162e;box-shadow:var(--shadow)}footer{text-align:center;color:var(--muted);padding:24px;border-top:1px solid var(--line)}
@media(max-width:720px){.site-header nav>a:not(.button),.xp-pill{display:none}.hero{grid-template-columns:1fr;min-height:auto}.hero-orbit{display:none}.features{grid-template-columns:1fr}.avatars{grid-template-columns:repeat(2,1fr)}.realm,.quest{align-items:flex-start}.realm>span,.quest>.node{width:50px;height:50px}.quest>strong{display:none}.profile-head{align-items:flex-start}.game-top>span{display:none}}

/* Plataforma de aula */
.brand i{font-style:normal}.hero-visual{max-width:1240px;min-height:680px;margin:28px auto 70px;border-radius:32px;background:linear-gradient(90deg,#101737f2 0%,#16204bd9 36%,#11183426 67%),url('../assets/fermath-world-hero.png') center/cover;color:#fff;overflow:hidden;padding:70px}.hero-copy{max-width:590px}.hero-visual h1{font-size:clamp(44px,5vw,72px);letter-spacing:-.045em}.hero-visual h1 em{color:#ffcb70}.hero-visual .lead{color:#dfe3ff;font-size:19px}.hero-badge{display:inline-flex;background:#ffffff16;border:1px solid #ffffff35;border-radius:99px;padding:9px 14px;font-size:11px;font-weight:900;letter-spacing:.12em;margin-bottom:24px}.trust-row{display:flex;gap:18px;flex-wrap:wrap;margin-top:30px;font-size:13px;color:#dce2ff;font-weight:800}.features{max-width:1120px}.features article{box-shadow:0 12px 35px #27305a0c}.features small{display:block;font-size:10px;letter-spacing:.14em;color:var(--muted);font-weight:900;margin:18px 0 7px}.feature-icon,.metric-icon{display:grid!important;place-items:center;width:48px;height:48px;border-radius:14px;font-size:22px!important}.violet{--accent:#7654e8;--accent-soft:#eeeaff}.blue{--accent:#3678e8;--accent-soft:#e8f2ff}.coral{--accent:#ef6d67;--accent-soft:#fff0ed}.green{--accent:#28a783;--accent-soft:#e6f8f2}.feature-icon.violet,.metric-icon.violet{background:#eeeaff;color:#7654e8}.feature-icon.blue,.metric-icon.blue{background:#e8f2ff;color:#3678e8}.feature-icon.coral,.metric-icon.coral{background:#fff0ed;color:#ef6d67}.home-showcase{max-width:1080px;margin:40px auto 90px;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:0 24px}.home-showcase h2{font-size:38px;line-height:1.1}.home-showcase>div>p:not(.eyebrow){color:var(--muted);font-size:18px;line-height:1.6}.mini-dashboard{background:#fff;border:1px solid var(--line);border-radius:24px;padding:25px;box-shadow:var(--shadow)}.mini-top,.mini-metrics{display:flex;justify-content:space-between}.mini-top span{font-weight:900}.mini-top b{font-size:12px;color:var(--violet)}.mini-chart{height:180px;display:flex;align-items:flex-end;gap:18px;padding:20px 10px;border-bottom:1px solid var(--line);background:linear-gradient(#fff 95%,#eef0f7 95%);background-size:100% 40px}.mini-chart i{flex:1;border-radius:9px 9px 3px 3px;background:linear-gradient(#8062ee,#4c5bdd)}.mini-metrics{padding-top:18px;color:var(--muted);font-size:12px}.mini-metrics b{display:block;color:var(--ink);font-size:21px}
.role-picker{border:0;padding:0;margin:0 0 24px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.role-picker legend,.color-picker legend{font-weight:800;margin-bottom:10px}.role-picker input,.color-picker input{position:absolute;opacity:0}.role-picker span{display:block;padding:16px;border:2px solid var(--line);border-radius:14px;cursor:pointer}.role-picker b,.role-picker small{display:block}.role-picker small{color:var(--muted);margin-top:4px}.role-picker input:checked+span{border-color:var(--blue);background:#f2f3ff}.flash{display:flex;align-items:center;gap:10px;position:relative;z-index:5;box-shadow:var(--shadow)}.flash>span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:currentColor;color:#fff}.flash.success{color:#167c5d;background:#eafaf5}
.dashboard-wrap,.student-dashboard{max-width:1180px;margin:0 auto;padding:48px 28px 90px}.dashboard-welcome,.student-welcome,.report-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.dashboard-welcome h1,.student-welcome h1,.report-head h1{font-size:42px;margin:5px 0 8px;letter-spacing:-.035em}.dashboard-welcome h1 span{font-size:34px}.dashboard-welcome p,.student-welcome p,.report-head p{color:var(--muted);margin:0}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:25px 0 45px}.metric-grid article{display:flex;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);padding:23px;border-radius:19px}.metric-grid small,.report-summary small{font-size:10px;font-weight:900;letter-spacing:.12em;color:var(--muted)}.metric-grid strong{display:block;font-size:28px}.metric-grid p{font-size:12px;margin:0;color:var(--muted)}.section-heading h2,.panel-head h2{font-size:27px;margin:4px 0}.class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.class-card,.empty-card{min-height:250px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:25px;transition:.2s;box-shadow:0 14px 35px #28345d0d}.class-card:hover,.empty-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.class-card{border-top:5px solid var(--accent)}.class-card-top{display:flex;justify-content:space-between}.class-card-top>span{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--accent-soft);color:var(--accent);font-size:24px;font-weight:900}.class-card h3{font-size:22px;margin:24px 0 2px}.class-card p{color:var(--muted)}.class-stats{display:flex;gap:22px;font-size:12px;color:var(--muted)}.class-stats b{color:var(--ink)}.class-card footer{display:flex;justify-content:space-between;border:0;padding:18px 0 0;margin-top:20px;border-top:1px solid var(--line);font-size:11px;text-align:left}.class-card footer>b{color:var(--accent)}.empty-card{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-style:dashed}.empty-card>span{font-size:34px;color:var(--blue)}.empty-card p{color:var(--muted)}
.form-page{max-width:740px;margin:45px auto;padding:0 24px}.form-card{background:#fff;border:1px solid var(--line);border-radius:25px;overflow:hidden;box-shadow:var(--shadow)}.form-intro{padding:35px 40px 25px;background:linear-gradient(135deg,#f2efff,#edf4ff)}.form-intro>span{float:right;font-size:60px;color:#6e58dd}.form-intro h1{font-size:34px}.form-intro>p:last-child{color:var(--muted)}.form-card form,.composer form{padding:28px 40px}.form-card label,.composer label{display:block;font-weight:800;margin-bottom:18px}.form-card input,.composer input,.composer select,.composer textarea,.inline-form input,.panel textarea,.join-panel input{display:block;width:100%;margin-top:8px;padding:13px 14px;border:2px solid var(--line);background:#fff;border-radius:11px;font:inherit;color:var(--ink)}.color-picker{border:0;padding:0;margin:10px 0 25px;display:flex;gap:12px}.color-picker span{display:block;width:34px;height:34px;border-radius:50%;background:var(--accent);cursor:pointer}.color-picker input:checked+span{box-shadow:0 0 0 4px white,0 0 0 7px var(--accent)}
.classroom-hero{display:flex;justify-content:space-between;align-items:center;padding:34px 38px;border-radius:24px;background:linear-gradient(135deg,var(--accent-soft),#fff);border:1px solid var(--accent-soft);border-left:6px solid var(--accent)}.classroom-hero h1{font-size:40px;margin:5px 0}.classroom-hero p{margin:0;color:var(--muted)}.invite-code{min-width:250px;background:#fff;border:1px dashed var(--accent);border-radius:17px;padding:17px;text-align:center}.invite-code small,.invite-code span{display:block;color:var(--muted);font-size:10px}.invite-code strong{display:block;color:var(--accent);font-size:28px;letter-spacing:.14em}.local-tabs{display:flex;gap:28px;margin:18px 0 24px;border-bottom:1px solid var(--line)}.local-tabs a{padding:15px 5px;font-weight:800;color:var(--muted)}.local-tabs a:first-child{color:var(--blue);border-bottom:3px solid var(--blue)}.classroom-columns,.student-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:20px}.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:25px;margin-bottom:20px}.panel-head{display:flex;align-items:center;justify-content:space-between}.count-badge{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#eef0ff;color:var(--blue);font-weight:900}.inline-form{display:flex;gap:10px;margin:14px 0 18px}.inline-form input{margin:0}.student-list>a{display:grid;grid-template-columns:auto 1fr 130px 42px;gap:14px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.avatar.mini{width:42px;height:42px;border-radius:13px;font-size:18px;border:0}.student-list small,.assignment-row small,.my-class small,.student-assignment small,.report-table small{display:block;color:var(--muted)}.list-progress,.table-progress{height:7px;background:#e8eaf3;border-radius:99px;overflow:hidden}.list-progress i,.table-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--violet))}.empty-state{text-align:center;padding:28px;color:var(--muted)}.empty-state>span{font-size:34px}.empty-state h3{color:var(--ink);margin:8px}.empty-state.small{padding:15px}.assignment-row,.announcement,.my-class,.student-assignment{display:flex;align-items:center;gap:13px;padding:14px 0;border-top:1px solid var(--line)}.assignment-row>span{display:grid;place-items:center;width:35px;height:35px;background:#eafaf4;color:#1c9c76;border-radius:10px}.composer{margin-top:15px;border-top:1px solid var(--line)}.composer summary{padding-top:18px;font-weight:900;color:var(--blue);cursor:pointer}.composer form{padding:20px 0 0}.composer textarea,.panel textarea{min-height:90px;resize:vertical}.announcement{display:block}.announcement p{margin:0 0 5px}.announcement small{color:var(--muted)}.report-cta{display:flex;align-items:center;gap:12px;padding:18px;background:linear-gradient(135deg,#4658da,#7651e6);color:#fff;border-radius:17px}.report-cta>span{font-size:27px}.report-cta div{flex:1}.report-cta small{display:block;color:#dfe2ff}
.report-head{align-items:flex-end}.report-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.report-summary article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:23px}.report-summary strong{display:block;font-size:34px;color:var(--violet)}.report-summary span{font-size:12px;color:var(--muted)}.report-table-wrap{overflow:auto}.report-table{width:100%;border-collapse:collapse;min-width:980px}.report-table th{text-align:left;font-size:10px;letter-spacing:.1em;color:var(--muted);padding:13px;border-bottom:1px solid var(--line)}.report-table td{padding:16px 13px;border-bottom:1px solid var(--line)}.student-name{display:flex;align-items:center;gap:10px}.avatar.tiny{width:36px;height:36px;border-radius:11px;font-size:15px;border:0}.table-progress{width:120px;margin-bottom:5px}.accuracy-pill{display:inline-block;padding:6px 10px;border-radius:99px;background:#e6f8f2;color:#168567;font-weight:900;margin-bottom:4px}.empty-cell{text-align:center;color:var(--muted);padding:40px!important}.insight-card{display:flex;gap:20px;background:#eeeaff;border:1px solid #d9d0ff;padding:25px;border-radius:18px}.insight-card>span{font-size:35px;color:var(--violet)}.insight-card h3{margin:3px 0}.insight-card p:last-child{color:var(--muted);margin:0}
.student-welcome>div:first-child{display:flex;align-items:center;gap:22px}.level-card{min-width:260px;background:#fff;padding:18px;border:1px solid var(--line);border-radius:17px}.level-card>span{display:block;font-size:11px;font-weight:900;color:var(--violet);margin-bottom:8px}.mission-banner{min-height:300px;display:flex;align-items:center;padding:40px;border-radius:23px;color:#fff;background:linear-gradient(90deg,#17224ee8,#31226a9e),url('../assets/fermath-world-hero.png') center/cover;margin-bottom:20px}.mission-banner>div{max-width:430px}.mission-banner h2{font-size:35px;margin:6px 0}.mission-banner p{color:#dfe2ff}.join-panel{text-align:center}.join-panel>span{font-size:40px;color:var(--violet)}.join-panel input{text-align:center;font-size:20px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.my-class>span{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:var(--accent-soft);color:var(--accent)}.student-assignment>div{flex:1}.student-assignment>a{font-weight:900;color:var(--blue)}.status-dot{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#eef0f6;color:#7f8799}.status-dot.done{background:#e2f8f0;color:#15956e}.muted{color:var(--muted)}
@media(max-width:850px){.hero-visual{margin:15px;border-radius:24px;padding:45px 28px;background-position:62% center}.home-showcase,.classroom-columns,.student-layout{grid-template-columns:1fr}.metric-grid,.class-grid,.report-summary{grid-template-columns:1fr 1fr}.classroom-hero,.student-welcome,.report-head{align-items:flex-start;gap:20px}.invite-code{min-width:210px}.student-list>a{grid-template-columns:auto 1fr 40px}.student-list .list-progress{display:none}}
@media(max-width:600px){.hero-visual{min-height:620px;background:linear-gradient(0deg,#101737f5 15%,#16204bb8 65%,#11183426),url('../assets/fermath-world-hero.png') 66% center/cover;align-items:flex-end}.hero-visual h1{font-size:42px}.home-showcase,.metric-grid,.class-grid,.report-summary{grid-template-columns:1fr}.dashboard-wrap,.student-dashboard{padding:32px 16px 70px}.dashboard-welcome,.classroom-hero,.student-welcome,.report-head{display:block}.dashboard-welcome .button,.report-head .button{margin-top:18px}.invite-code,.level-card{margin-top:20px;width:100%}.local-tabs{overflow:auto}.classroom-hero{padding:25px}.role-picker{grid-template-columns:1fr}.auth-card{margin:25px 14px;padding:28px 20px}.form-intro,.form-card form{padding:28px 22px}}
