:root{color-scheme:dark;--bg:#071a37;--panel:#102b4e;--panel2:#14395a;--sky:#5fcbef;--gold:#ffd45e;--green:#74e6ab;--text:#f5fbff;--muted:#bbd5e3;--outline:rgba(174,227,255,.22);--radius:24px;font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--text);background:radial-gradient(circle at 85% 7%,#15446b 0,transparent 31%),radial-gradient(circle at 7% 55%,#144d59 0,transparent 30%),var(--bg)}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,.waste-item:focus-visible{outline:3px solid var(--gold);outline-offset:4px}a{color:inherit}img{max-width:100%}.skip-link{position:absolute;top:-100px;left:10px;background:#fff;color:#002d44;padding:12px;z-index:99}.skip-link:focus{top:10px}.app-shell{max-width:1600px;margin:auto;min-height:100vh;display:flex;flex-direction:column}.site-header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px clamp(16px,4vw,55px);border-bottom:1px solid var(--outline);background:rgba(5,22,45,.76)}.brand{text-decoration:none;display:flex;align-items:center;gap:14px;min-width:0}.brand img{width:64px;height:64px;object-fit:contain;border:2px solid #ddae4c;border-radius:50%;background:#fff}.brand strong{display:block;font-size:clamp(.82rem,1.5vw,1.16rem)}.brand small{display:block;color:var(--muted);font-size:.79rem;margin-top:3px}.header-right{display:flex;align-items:center;gap:9px}.festival-chip{padding:10px 14px;background:#163858;border:1px solid #2f7897;border-radius:100px;color:#ffe093;font-size:.77rem;font-weight:800;letter-spacing:.07em}.icon-button{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;border:1px solid #66a5be;background:#153957;color:white;font-size:1.18rem}.icon-button:hover,.outline-btn:hover{background:#255476}.screen{display:none;width:100%;padding:26px clamp(16px,4vw,55px) 60px;animation:fadeUp .35s both}.screen.active{display:block}main{flex:1}.school-hero{height:168px;border-radius:20px;overflow:hidden;position:relative;border:1px solid #d3af59}.school-photo{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,30,59,.86) 0%,rgba(6,30,59,.51) 52%,rgba(5,30,45,.15) 100%),url('assets/school-bulding.jpeg') center 48%/cover}.school-hero-copy{position:absolute;left:5%;top:30%;display:grid;gap:8px}.eyebrow{letter-spacing:.14em;color:#fff1a9;font-size:clamp(.83rem,2.1vw,1.2rem);font-weight:900}.mini-label{font-weight:800;font-size:.75rem;letter-spacing:.12em;color:#dff8fb}.welcome-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(15px,4vw,60px);align-items:center;margin-top:25px;min-height:480px}.intro-copy{position:relative;z-index:1}.overline{font-size:.8rem;letter-spacing:.16em;color:var(--green);font-weight:900}.intro-copy h1{font-size:clamp(4rem,9vw,8.2rem);font-weight:1000;line-height:.98;letter-spacing:-.055em;margin:16px 0 0;text-shadow:0 7px 0 #003158}.intro-copy h1 span{color:var(--gold)}.intro-copy h2{color:var(--sky);font-size:clamp(1.6rem,3vw,3.1rem);margin:5px 0 15px}.tagline{font-weight:800;color:#fff;font-size:clamp(.92rem,1.6vw,1.16rem)}.tagline b{color:var(--gold);margin:0 4px}.lead{color:#d5e7f4;font-size:1.08rem;line-height:1.75;max-width:645px}.welcome-actions,.results-actions,.leader-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:25px 0}.primary-btn,.outline-btn{border-radius:14px;min-height:48px;padding:12px 23px;font-weight:900;border:2px solid transparent;transition:background .2s,transform .2s}.primary-btn{background:linear-gradient(180deg,#ffe581,#ffc543);color:#092645;box-shadow:0 5px 0 #a77921}.primary-btn:hover:not(:disabled){background:#ffedac;transform:translateY(-2px)}.primary-btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 2px 0 #a77921}.primary-btn.big{font-size:1.17rem;padding:16px 28px}.outline-btn{background:#0c3452;border-color:#508bac;color:#fff}.outline-btn.small{min-height:38px;padding:7px 12px;font-size:.82rem}.text-btn{border:0;background:transparent;color:var(--gold);text-decoration:underline;font-weight:800}.pill-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.pill-row span{padding:9px 12px;border-radius:100px;color:#c6eff5;background:#153a53;border:1px solid #2a6476;font-size:.83rem}.hero-art{height:490px;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 51% 44%,rgba(74,176,174,.24),transparent 60%);overflow:hidden}.orbit{position:absolute;width:82%;aspect-ratio:1;border:2px dashed #417f94;border-radius:50%;opacity:.65}.orbit-two{width:96%;transform:rotate(27deg);opacity:.25}.earth{position:relative;width:min(70%,340px);aspect-ratio:1;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 27% 25%,#8eeeff,#2d9ac9 54%,#12496e 91%);box-shadow:inset -25px -22px 44px #05436d,0 0 0 12px #43e2bd1d,0 0 75px #4fb7ce75;animation:float 6s ease-in-out infinite}.land{position:absolute;background:linear-gradient(110deg,#9bd86b,#197d5c);border-radius:60% 30% 70% 35%;filter:drop-shadow(0 4px 5px #115947)}.land-one{width:52%;height:44%;top:16%;left:2%;transform:rotate(25deg)}.land-two{width:44%;height:50%;top:44%;left:36%;transform:rotate(-28deg)}.land-three{width:30%;height:22%;top:6%;right:-4%;transform:rotate(60deg)}.float-item{position:absolute;font-size:3.3rem;filter:drop-shadow(0 8px 6px #0005);animation:float 5s ease-in-out infinite}.tree{top:3%;left:12%}.recycle{top:14%;right:2%}.solar{bottom:22%;left:0}.wind{bottom:10%;right:9%}.hero-caption{position:absolute;bottom:3px;color:#d2fbfb;background:#0a2d4dc9;border:1px solid #4696a7;padding:9px 15px;border-radius:30px;font-size:.8rem;font-weight:900;letter-spacing:.06em}.site-footer{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:14px;text-align:left;padding:20px;border-top:1px solid var(--outline);background:#07182e;font-size:.8rem}.site-footer img{width:44px;height:44px;border-radius:50%;background:white;object-fit:contain}.site-footer small{color:var(--muted);line-height:2}.section-heading{text-align:center;margin:14px auto 26px}.section-heading h2{font-size:clamp(2rem,4vw,3.2rem);margin:10px 0}.section-heading p{color:var(--muted);line-height:1.6}.player-form{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin:20px auto}.player-form label{font-weight:800}.player-form small{font-weight:400;color:var(--muted)}input{padding:13px 15px;border:1px solid #6aacc3;border-radius:12px;background:#0b2842;color:white;min-width:210px}.map-stats{margin:18px auto 25px;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.map-stats>span{border:1px solid #447c96;background:#102c47;border-radius:100px;padding:11px 17px}.map-stats b{color:var(--gold)}.mission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.mission-card{background:linear-gradient(180deg,#183c58,#0b2542);border:1px solid #36728e;border-radius:24px;overflow:hidden;box-shadow:0 13px 30px #0004}.mission-card.locked{filter:saturate(.55)}.mission-thumb{height:180px;position:relative;background-position:center;background-size:cover}.city-thumb{background-image:url('assets/city.svg')}.forest-thumb{background-image:url('assets/forest.svg')}.ocean-thumb{background-image:url('assets/ocean.svg')}.mission-num{position:absolute;top:12px;left:12px;background:#061c39df;color:var(--gold);font-weight:1000;padding:8px 13px;border-radius:12px}.mission-body{padding:23px}.mode-tag{font-size:.72rem;letter-spacing:.14em;color:#86e6c3;font-weight:900}.mission-body h3{font-size:1.5rem;margin:8px 0}.mission-body p{color:#cbdfe9;min-height:48px;line-height:1.5}.mission-status{display:block;color:var(--gold);font-size:.88rem;font-weight:700;margin:13px 0}.mission-launch{width:100%;font-size:.91rem}.map-footer{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:30px}.game-visual{height:215px;border-radius:20px;background:#20546f url('assets/city.svg') center/cover;display:flex;align-items:center;position:relative;overflow:hidden;border:1px solid #518e9f}.game-visual:before{content:"";inset:0;position:absolute;background:linear-gradient(90deg,#051d38ed,#051d38a6 48%,transparent)}.game-visual-text{position:relative;padding:27px}.game-visual h2{font-size:clamp(2rem,4vw,3.4rem);margin:8px 0}.game-visual p{font-size:1rem;color:#dff7ff}.game-hud{max-width:1050px;margin:20px auto 15px;display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}.game-hud>div{display:flex;flex-direction:column;gap:3px}.hud-label{color:#afd6df;font-size:.7rem;letter-spacing:.12em;font-weight:800}.game-hud strong{font-size:1.35rem}.progress-track{max-width:1050px;height:12px;margin:auto;border-radius:100px;background:#274865;overflow:hidden}.progress-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#56d3a7,#ffe076);transition:width .3s}.question-card{max-width:1050px;margin:19px auto;padding:clamp(20px,3.2vw,37px);border:1px solid #36758f;border-radius:24px;background:linear-gradient(145deg,#133b55,#0b2748);box-shadow:0 22px 40px #0003}.topic-chip{display:inline-block;color:#9af4b7;background:#144e59;padding:8px 12px;font-size:.73rem;font-weight:900;letter-spacing:.13em;border-radius:100px}.question-card h3{font-size:clamp(1.45rem,2.8vw,2.1rem);line-height:1.35;margin:16px 0 10px}.question-subtext{color:#c8dbe7;line-height:1.5}.waste-area{margin-top:22px}.waste-item{margin:10px auto 25px;width:min(100%,290px);padding:22px 15px;text-align:center;background:linear-gradient(145deg,#f5fff0,#d7f4e4);color:#113f4c;border-radius:20px;border:3px dashed #43b98f;box-shadow:0 9px 0 #146860;touch-action:manipulation}.waste-item.dragging{opacity:.5}.waste-item>span{display:block;font-size:4rem}.waste-item strong,.waste-item small{display:block}.waste-item small{font-size:.78rem;margin-top:7px;color:#365963}.bin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.bin-btn{border:2px solid #82bdc9;background:#163c56;color:white;padding:17px 9px;border-radius:17px;min-height:108px;display:grid;gap:6px;place-items:center;font-weight:800}.bin-btn .bin-icon{font-size:2.15rem}.bin-btn.drag-over{border-color:#fff09a;background:#2c6576;transform:scale(1.03)}.bin-btn.correct,.answer-btn.correct{border-color:#87fac1;background:#175d4d;color:#fff}.bin-btn.incorrect,.answer-btn.incorrect{border-color:#ff9e9e;background:#7a3342;color:#fff}.answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:27px}.answer-btn{border:2px solid #3e819c;background:#17425f;border-radius:16px;color:#fff;padding:18px;min-height:80px;text-align:left;display:flex;gap:14px;align-items:center;line-height:1.4;font-weight:750}.answer-btn .choice-letter{flex-shrink:0;width:32px;height:32px;border-radius:9px;background:#0b2e4d;color:#ffdf80;display:grid;place-items:center}.answer-btn:hover:not(:disabled),.bin-btn:hover:not(:disabled){border-color:#ffda67;background:#225a72}.feedback{background:#124d53;border:1px solid #65d4aa;border-radius:16px;padding:18px 21px;margin-top:23px}.feedback.bad{background:#5b3441;border-color:#faaa9f}.feedback strong{font-size:1.16rem}.feedback p{line-height:1.6;margin:8px 0}.feedback small{font-weight:850;color:#ffdf7c}.question-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin-top:22px;color:var(--muted);font-size:.85rem}.results-card{position:relative;max-width:850px;text-align:center;margin:35px auto;padding:clamp(22px,5vw,56px);background:linear-gradient(160deg,#17435c,#0b2745);border:1px solid #4792a8;border-radius:30px;overflow:hidden}.results-icon{font-size:4rem;margin-bottom:12px}.results-card h2{font-size:clamp(2rem,4vw,3.4rem);margin:9px 0}.stars{font-size:2.6rem;letter-spacing:8px;margin:18px 0}.results-message{color:#dcebf1;font-size:1.05rem;line-height:1.6}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0}.result-stats>div{border-radius:16px;border:1px solid #427f99;background:#092b49;padding:18px 8px}.result-stats strong{display:block;color:var(--gold);font-size:clamp(1.5rem,3vw,2.3rem)}.result-stats span{display:block;font-size:.8rem;margin-top:5px;color:#d3e5ea}.learn-box{margin:20px auto;padding:18px 20px;text-align:left;background:#113e53;border:1px solid #368c8e;border-radius:16px;line-height:1.65;color:#e2f4f6}.results-actions{justify-content:center}.badge-row{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px}.badge-row span{background:#194f58;border:1px solid #65c7ac;color:#d7fff3;border-radius:100px;padding:10px 14px;font-size:.89rem;font-weight:800}.leaderboard-card{max-width:780px;margin:auto;border:1px solid #3b8195;background:#0f2f49;border-radius:24px;overflow:hidden}.leader-list{margin:0;padding:0;list-style:none;counter-reset:rank}.leader-list li{display:grid;grid-template-columns:45px 1fr auto;gap:15px;align-items:center;padding:15px 20px;border-bottom:1px solid #345875}.leader-list li:before{counter-increment:rank;content:counter(rank) ".";color:var(--gold);font-weight:900}.leader-list li b{color:var(--gold)}.leader-list li small{display:block;color:#a9cfda;font-size:.76rem;margin-top:5px}.empty-state{text-align:center;padding:35px;color:#d6e5ef}.leader-actions{justify-content:center}.danger{border-color:#c68787;color:#ffe1e1}.help-dialog{max-width:570px;width:calc(100% - 28px);padding:25px;background:#0e2d4a;color:white;border:2px solid #68bdb7;border-radius:24px;box-shadow:0 30px 100px #000b}.help-dialog::backdrop{background:#041225d9}.help-dialog p,.help-dialog li{line-height:1.7;color:#d9edf2}.help-dialog li{margin:9px 0}.modal-top{display:flex;align-items:center;justify-content:space-between}.modal-top h2{margin:0}kbd{background:#204e67;padding:3px 6px;border-radius:4px}.confetti{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,#fbd562 2px,transparent 4px),radial-gradient(circle,#6ae3ba 2px,transparent 4px),radial-gradient(circle,#74bbfc 2px,transparent 4px);background-size:79px 95px,123px 102px,163px 110px;animation:confetti 5s linear infinite;opacity:.38}.final-card>*:not(.confetti){position:relative}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}@keyframes float{50%{transform:translateY(-12px)}}@keyframes fadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes confetti{to{background-position:0 700px,0 900px,0 600px}}@media(max-width:920px){.welcome-grid{grid-template-columns:1fr}.hero-art{height:355px;max-width:500px;width:100%;margin:auto}.mission-grid{grid-template-columns:1fr 1fr}.festival-chip{display:none}}@media(max-width:620px){.site-header{padding:10px 13px}.brand img{width:49px;height:49px}.brand strong{font-size:.78rem}.brand small{font-size:.65rem}.header-right{gap:5px}.icon-button{width:38px;height:38px}.screen{padding:17px 13px 40px}.school-hero{height:125px}.school-hero-copy{top:30%}.intro-copy h1{font-size:4.35rem}.hero-art{height:310px}.mission-grid,.answer-grid{grid-template-columns:1fr}.mission-thumb{height:135px}.bin-grid{grid-template-columns:1fr 1fr}.game-visual{height:170px}.game-hud{gap:12px}.game-hud strong{font-size:1.08rem}.question-card{padding:18px}.question-card h3{font-size:1.4rem}.result-stats{gap:6px}.result-stats>div{padding:13px 4px}.result-stats strong{font-size:1.42rem}.site-footer{font-size:.69rem}.site-footer img{width:34px;height:34px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.hero-school-logo{position:absolute;right:24px;top:20px;width:110px;height:110px;object-fit:contain;background:#fff;border:4px solid #f5ca55;border-radius:50%;box-shadow:0 8px 25px #0006}@media(max-width:620px){.hero-school-logo{width:70px;height:70px;right:14px;top:20px}.school-hero-copy{max-width:70%}}
