:root{--navy:#080b35;--purple:#51207a;--pink:#ff4fc3;--lav:#e5a8ff;--gold:#ffd84d;--cyan:#45e8ff;--ink:#f8f6ff}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:radial-gradient(circle at 50% 20%,#35246f,#080b35 60%,#05061c);color:var(--ink);min-height:100vh}.screen{display:none;min-height:100vh}.screen.active{display:block}button{border:2px solid #9c72ff;background:#15134d;color:white;border-radius:12px;padding:12px 18px;font-weight:800;cursor:pointer;box-shadow:0 4px 0 #070722}button:hover{filter:brightness(1.15)}button.primary{background:linear-gradient(90deg,#9d24dc,#ff3ab7);border-color:#ff9ee5;font-size:20px}.hero-card{width:min(760px,92vw);margin:6vh auto;padding:42px;text-align:center;border:4px solid var(--lav);border-radius:28px;background:linear-gradient(180deg,rgba(19,17,74,.94),rgba(61,24,92,.95));box-shadow:0 0 40px #d24cff55}.hero-card:before{content:'⚛  ✦  🧬  ✦  🔭';display:block;font-size:36px;letter-spacing:14px}.eyebrow{color:var(--cyan);font-weight:900;letter-spacing:2px}.hero-card h1{font-size:clamp(70px,12vw,130px);line-height:.8;margin:38px 0 0;color:#fff;text-shadow:5px 5px 0 #d62f9e,9px 9px 0 #31144f}.hero-card h2{font-size:clamp(26px,5vw,48px);margin:12px 0;color:#ff73c9}.hero-card p{font-size:18px}.hero-card button{display:block;width:min(360px,90%);margin:14px auto}.mini{margin-top:25px;color:#d7c9ff}header{height:72px;padding:10px 18px;display:flex;align-items:center;justify-content:space-between;background:#0a0d3d;border-bottom:3px solid #8658ff}header small{color:#bfc5ff}.backMenu{margin-right:15px}#levelGrid{padding:24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;max-width:1200px;margin:auto}.level{min-height:190px;padding:20px;border:3px solid #7f63ff;border-radius:18px;background:linear-gradient(150deg,#17255e,#4b1f6c);position:relative;overflow:hidden}.level.locked{filter:grayscale(.8);opacity:.58}.level h3{font-size:24px;margin:0 0 8px;color:#fff}.level .num{font-size:54px;font-weight:1000;color:#ffffff22;position:absolute;right:14px;top:0}.level .tag{color:#ff91d5;font-weight:800}.level button{position:absolute;bottom:16px;right:16px}.hud{font-size:18px}.canvasWrap{position:relative;width:min(100vw,1280px);margin:auto;background:#050622}canvas{display:block;width:100%;height:auto;max-height:calc(100vh - 72px);touch-action:none;image-rendering:pixelated}#touch{display:none;position:absolute;inset:auto 0 10px 0;padding:0 14px;justify-content:space-between;pointer-events:none}#touch button{pointer-events:auto;width:72px;height:62px;font-size:24px;opacity:.78}#touch button:nth-child(2){margin-right:auto;margin-left:8px}@media(max-width:800px),(pointer:coarse){#touch{display:flex}}.modal{position:fixed;z-index:10;inset:0;background:#02031cdd;display:flex;align-items:center;justify-content:center;padding:18px}.modal.hidden{display:none}.modalCard{width:min(760px,96vw);max-height:90vh;overflow:auto;background:linear-gradient(180deg,#161650,#28164c);border:4px solid #d982ff;border-radius:22px;padding:28px;box-shadow:0 0 40px #ff4fc355;position:relative}.x{position:absolute;right:12px;top:12px;padding:6px 12px}.question h2{color:#ff80d0}.answers{display:grid;grid-template-columns:1fr 1fr;gap:12px}.answers button{text-align:left}.feedback{margin-top:16px;padding:14px;border-radius:12px;background:#0d2850;border-left:5px solid var(--cyan)}.scientist{border-left:5px solid var(--pink);padding:12px 15px;background:#32164b;border-radius:10px}.badge{display:inline-block;padding:4px 8px;border-radius:8px;background:#ff4fc322;border:1px solid #ff4fc3;color:#ffc1e8;font-weight:800}@media(max-width:600px){.answers{grid-template-columns:1fr}.hero-card{padding:24px 16px}.hero-card:before{font-size:24px}.hud{font-size:13px;padding:8px}.hud button{padding:8px}}
/* V2 additions */
.secondaryGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:10px}.hero-card .v2{font-size:12px;opacity:.8;margin-top:12px}.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;max-height:65vh;overflow:auto}.scientistCard{background:#ffffff0d;border:1px solid #ffffff24;border-radius:14px;padding:14px}.scientistCard h3{margin:5px 0;color:#ffd84d}.progressBar{height:10px;background:#ffffff18;border-radius:10px;overflow:hidden}.progressBar i{display:block;height:100%;background:linear-gradient(90deg,#ff55d5,#ffd84d)}
/* V3 */
.badgeShelf{display:flex;gap:10px;flex-wrap:wrap}.badgeShelf span{padding:10px 14px;border-radius:12px;background:#ffffff12;border:1px solid #ffffff2b}.secondaryGrid{grid-template-columns:1fr 1fr!important}.secondaryGrid button{min-height:48px}.v2{letter-spacing:.12em}.modalCard{max-height:88vh;overflow:auto}

.authBar{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:10px 0}.hidden{display:none!important}.modalCard input{width:100%;box-sizing:border-box;padding:13px;margin:7px 0;border-radius:10px;border:1px solid #ffffff44;background:#100f38;color:#fff;font-size:16px}.rankList>div{display:grid;grid-template-columns:50px 1fr auto;gap:8px;align-items:center;padding:11px;border-bottom:1px solid #ffffff22}.rankList small{grid-column:2/4;opacity:.75}.rankList strong{color:#ffd84d}
.teacherStats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}.teacherStats>div{padding:14px;border:1px solid #ffffff25;border-radius:14px;background:#ffffff0b;text-align:center}.teacherStats b{display:block;font-size:1.5rem}.teacherStats span{font-size:.78rem;opacity:.8}.phaseList{display:grid;gap:7px}.phaseList>div{display:flex;justify-content:space-between;padding:10px 12px;border-radius:10px;background:#ffffff0b}@media(max-width:600px){.teacherStats{grid-template-columns:1fr}}

/* V8 gameplay polish */
.canvasWrap{overflow:hidden;border-bottom:2px solid #8658ff}#game .hud{position:relative;z-index:3}.level:not(.locked):hover{transform:translateY(-3px);box-shadow:0 12px 30px #0005;transition:.18s}.level button:disabled{cursor:not-allowed}.modalCard h2{padding-right:42px}@media(max-width:600px){#touch button{width:78px;height:68px}.secondaryGrid{grid-template-columns:1fr!important}}

/* V9 visual worlds */
#canvas{background:#090b2f}.hud{backdrop-filter:blur(8px)}.canvasWrap:after{content:"LUMINA • EXPEDIÇÃO CIENTÍFICA";position:absolute;right:16px;bottom:8px;font-size:10px;letter-spacing:.15em;color:#ffffff77;pointer-events:none}.level{transition:transform .2s,box-shadow .2s}.level:nth-child(1){border-color:#78d96d}.level:nth-child(2){border-color:#5bd5df}.level:nth-child(3){border-color:#ef8b83}.level:nth-child(4){border-color:#a98cff}.level:nth-child(5){border-color:#48d4b2}.level:nth-child(6){border-color:#d6b6ff}@media(max-width:600px){.canvasWrap:after{display:none}}

/* V10 */
#soundBtn{width:auto!important;min-width:140px;font-size:12px!important;margin:8px auto!important}.missionGoals{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}.missionGoals span{padding:11px;border:1px solid #ffffff2b;border-radius:10px;background:#ffffff0c}.spotlight{display:grid;grid-template-columns:86px 1fr;gap:16px;align-items:center;margin:16px 0;padding:16px;border:1px solid #ff72cc55;border-radius:16px;background:linear-gradient(120deg,#ff4fc315,#45e8ff10)}.portrait{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;font-size:38px;background:radial-gradient(circle,#ff7ad8,#5b2fa1);border:3px solid #ffd1f0}.spotlight h2{margin:5px 0;color:#ffd84d}.spotlight p{margin:5px 0;line-height:1.45}.missionSummary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:15px 0}.missionSummary div{padding:13px;text-align:center;border-radius:12px;background:#ffffff0d;border:1px solid #ffffff20}.missionSummary b{display:block;font-size:1.45rem;color:#ffd84d}.missionSummary span{font-size:.75rem;opacity:.75}@media(max-width:600px){.missionGoals{grid-template-columns:1fr}.spotlight{grid-template-columns:1fr;text-align:center}.portrait{margin:auto}.missionSummary{grid-template-columns:repeat(3,1fr)}.modalCard{padding:20px 16px}.modalCard h2{font-size:1.35rem}}

/* V11 — acabamento e acessibilidade */
.a11yGrid{display:grid;gap:10px;margin:18px 0}.a11yGrid button{min-height:48px}.high-contrast{filter:contrast(1.22)}.high-contrast button{outline:2px solid #fff}.reduced-motion *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
button:focus-visible{outline:3px solid #45e8ff;outline-offset:3px}.primary:focus-visible{outline-color:#fff}
@media(max-width:640px){.modalCard{max-height:86vh;overflow:auto}.hero-card{padding:22px 16px}.hero-card h1{font-size:clamp(42px,15vw,72px)}#touch button{min-width:72px;min-height:64px;font-size:28px}.hud{font-size:12px;gap:6px}}

/* V12 */
.buildBadge{position:fixed;right:8px;bottom:8px;z-index:50;font:700 10px system-ui;padding:5px 8px;border-radius:10px;background:#120820cc;color:#bff7ff;border:1px solid #ffffff22;pointer-events:none}.high-contrast .buildBadge{background:#000;color:#fff;border-color:#fff}
