@import url("https://fonts.googleapis.com/css2?family=Baloo+2:wght@400;600;700;800&family=Nunito:wght@400;600;700;800;900&display=swap");:root{--saffron:#f93;--saffron-d:#e67e00;--white:#fff;--green:#138808;--green-d:#0d6606;--navy:navy;--gold:#ffd600;--ink:#16241a;--cream:#f7fbf3;--shadow:rgba(0,0,0,.18)}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{font-family:Nunito,sans-serif;color:var(--ink);background:radial-gradient(1200px 600px at 50% -10%,#fff7ec 0,transparent 60%),linear-gradient(180deg,#fff,#fff 33%,#f3fbef 0,#f3fbef 66%,#eef9ea 0,#eef9ea);min-height:100vh}a{color:inherit;text-decoration:none}button{font-family:inherit}.tricolor-strip{height:6px;display:flex}.tricolor-strip span{flex:1 1}.tricolor-strip .s1{background:var(--saffron)}.tricolor-strip .s2{background:#fff}.tricolor-strip .s3{background:var(--green)}.site-header{text-align:center;padding:24px 20px 6px}.logo-row{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:6px;flex-wrap:wrap}.gandhi{width:58px;height:30px;position:relative;flex-shrink:0}.gandhi .lens{position:absolute;top:0;width:24px;height:24px;border:3.5px solid var(--navy);border-radius:50%;background:rgba(0,0,128,.05)}.gandhi .lens.left{left:0}.gandhi .lens.right{right:0}.gandhi .bridge{position:absolute;top:9px;left:24px;width:10px;height:3.5px;background:var(--navy);border-radius:2px}.site-header h1{font-family:Baloo\ 2,cursive;font-size:clamp(1.7rem,4.5vw,2.9rem);font-weight:800;line-height:1.05;background:linear-gradient(90deg,var(--saffron) 0,var(--saffron-d) 30%,var(--green) 70%,var(--green-d) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.site-header .tagline{font-size:clamp(.9rem,2.2vw,1.15rem);font-weight:700;color:var(--green-d);margin-top:2px}.site-header .sub{font-size:.82rem;color:#6b7a68;margin-top:6px;font-weight:600}.pick-wrap{text-align:center;margin-top:14px}.pick-banner{font-family:Baloo\ 2,cursive;font-weight:700;font-size:1.02rem;color:var(--navy);background:#fff;padding:7px 22px;border-radius:50px;border:2px dashed var(--saffron)}.admin-link,.pick-banner{display:inline-block;box-shadow:0 3px 10px var(--shadow)}.admin-link{margin-left:10px;font-weight:800;font-size:.82rem;color:#fff;background:linear-gradient(135deg,var(--navy),#1a1a8a);padding:8px 16px;border-radius:50px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:20px;gap:20px;max-width:1200px;margin:22px auto;padding:0 22px 50px}.card{position:relative;border-radius:20px;overflow:hidden;cursor:pointer;background:#fff;box-shadow:0 8px 22px var(--shadow);border:3px solid transparent;transition:transform .18s ease,box-shadow .18s ease,border-color .18s;min-height:220px;display:flex;flex-direction:column}.card:hover{transform:translateY(-6px) scale(1.015);box-shadow:0 16px 34px rgba(0,0,0,.24)}.card.playable:hover{border-color:var(--green)}.card.locked{cursor:not-allowed}.card.locked:hover{transform:translateY(-2px)}.card-art{height:120px;display:flex;align-items:center;justify-content:center;font-size:3.8rem;position:relative;overflow:hidden}.card-art .emoji{filter:drop-shadow(2px 4px 6px rgba(0,0,0,.25));z-index:2}.card-art .deco{position:absolute;font-size:1.5rem;opacity:.35}.card-art .deco:first-child{top:14px;left:18px}.card-art .deco:nth-child(2){bottom:12px;right:20px}.card-art .deco:nth-child(3){top:20px;right:30px}.art-run{background:linear-gradient(135deg,#ffcc80,#ff9800)}.art-sort{background:linear-gradient(135deg,#a5d6a7,#4caf50)}.art-school{background:linear-gradient(135deg,#90caf9,#2196f3)}.art-park{background:linear-gradient(135deg,#a5d6a7,#43a047)}.art-road{background:linear-gradient(135deg,#b0bec5,#607d8b)}.art-class{background:linear-gradient(135deg,#ef9a9a,#ec407a)}.art-bin{background:linear-gradient(135deg,#ce93d8,#8e24aa)}.art-catch{background:linear-gradient(135deg,#80deea,#00acc1)}.art-compost{background:linear-gradient(135deg,#c5e1a5,#7cb342)}.art-river{background:linear-gradient(135deg,#81d4fa,#039be5)}.art-recycle{background:linear-gradient(135deg,#ffe082,#ffb300)}.art-quiz{background:linear-gradient(135deg,#b39ddb,#5e35b1)}.card-body{padding:13px 15px 16px;flex:1 1;display:flex;flex-direction:column}.card-body h3{font-family:Baloo\ 2,cursive;font-size:1.18rem;font-weight:800;margin-bottom:4px}.card-body p{font-size:.83rem;color:#5c6b59;font-weight:600;line-height:1.34;flex:1 1}.card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:11px;gap:8px}.points{font-weight:800;font-size:.8rem;color:var(--green-d);background:#e8f5e9;padding:4px 11px;border-radius:50px;white-space:nowrap}.play-pill{font-size:.86rem;color:#fff;background:linear-gradient(135deg,var(--green),var(--green-d));padding:7px 16px;box-shadow:0 4px 10px rgba(19,136,8,.35)}.play-pill,.soon-pill{font-family:Baloo\ 2,cursive;font-weight:800;border-radius:50px;white-space:nowrap}.soon-pill{font-size:.78rem;color:#8a6d3b;background:#fff3cd;padding:7px 14px}.num{top:10px;left:10px;width:30px;height:30px;background:hsla(0,0%,100%,.92);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.95rem;box-shadow:0 2px 6px rgba(0,0,0,.2)}.lock-ribbon,.num{position:absolute;font-family:Baloo\ 2,cursive;font-weight:800;z-index:3}.lock-ribbon{top:13px;right:-34px;transform:rotate(45deg);background:#f6a700;color:#fff;font-size:.66rem;padding:4px 40px;box-shadow:0 2px 6px rgba(0,0,0,.25);letter-spacing:.5px}footer.site-footer{text-align:center;padding:14px 20px 30px;font-size:.82rem;color:#6b7a68;font-weight:600}footer.site-footer b{color:var(--green-d)}.toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(140px);background:#222;color:#fff;padding:12px 24px;border-radius:50px;font-weight:700;font-size:.9rem;z-index:1200;box-shadow:0 6px 20px rgba(0,0,0,.35);transition:transform .35s cubic-bezier(.2,1.4,.4,1)}.toast.show{transform:translateX(-50%) translateY(0)}.play-shell{min-height:100vh;display:flex;flex-direction:column}.play-bar{height:50px;flex-shrink:0;background:linear-gradient(90deg,var(--saffron),var(--green));display:flex;align-items:center;justify-content:space-between;padding:0 14px;color:#fff}.play-bar .pb-title{font-family:Baloo\ 2,cursive;font-weight:800;font-size:1rem}.play-bar .pb-player{font-weight:800;font-size:.82rem;background:hsla(0,0%,100%,.2);padding:4px 12px;border-radius:50px}.linkbtn{font-family:Baloo\ 2,cursive;font-weight:800;font-size:.86rem;background:hsla(0,0%,100%,.92);color:var(--ink);border:none;border-radius:50px;padding:7px 16px;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.2);transition:transform .12s}.linkbtn:hover{transform:scale(1.05)}.center-wrap{flex:1 1;display:flex;align-items:center;justify-content:center;padding:24px 16px}.reg-card{background:#fff;border-radius:24px;max-width:460px;width:100%;padding:30px 32px;box-shadow:0 20px 50px rgba(0,0,0,.18);border-top:8px solid var(--saffron);border-bottom:8px solid var(--green)}.reg-card .reg-emoji{font-size:3rem;text-align:center}.reg-card h2{font-family:Baloo\ 2,cursive;font-size:1.7rem;font-weight:800;color:var(--green-d);text-align:center;margin:4px 0 2px}.reg-card .reg-sub{text-align:center;font-size:.9rem;color:#667;font-weight:700;margin-bottom:18px}.field{margin-bottom:14px}.field label{display:block;font-weight:800;font-size:.82rem;color:#3a4a3a;margin-bottom:5px}.field input,.field select{width:100%;padding:11px 13px;border:2px solid #d9e4d6;border-radius:12px;font-size:1rem;font-weight:600;font-family:Nunito,sans-serif;background:#fbfdfa;transition:border-color .15s}.field input:focus,.field select:focus{outline:none;border-color:var(--green)}.field .err{color:#d32f2f;font-size:.76rem;font-weight:700;margin-top:4px}.btn{font-family:Baloo\ 2,cursive;font-weight:800;font-size:1.15rem;color:#fff;border:none;border-radius:50px;padding:14px 36px;cursor:pointer;background:linear-gradient(135deg,#34b233,var(--green-d));box-shadow:0 7px 18px rgba(19,136,8,.4);transition:transform .14s,box-shadow .14s;width:100%}.btn:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(19,136,8,.45)}.btn:active{transform:translateY(0)}.btn.alt{background:linear-gradient(135deg,var(--navy),#1a1a8a);box-shadow:0 7px 18px rgba(0,0,80,.35)}.muted{font-size:.78rem;color:#8a978a;text-align:center;margin-top:12px;font-weight:600}.game-frame{flex:1 1;width:100%;border:none;background:#aee3ff}.admin-wrap{max-width:1200px;margin:0 auto;padding:18px 18px 60px}.admin-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px}.admin-head h1{font-family:Baloo\ 2,cursive;font-size:1.7rem;color:var(--green-d)}.stat-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px;margin-bottom:18px}.statc{background:#fff;border-radius:16px;padding:14px 18px;box-shadow:0 4px 14px var(--shadow);border-left:6px solid var(--green)}.statc .n{font-family:Baloo\ 2,cursive;font-size:1.9rem;font-weight:800;color:var(--green-d);line-height:1}.statc .l{font-size:.74rem;font-weight:800;color:#789;text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.filters{display:flex;flex-wrap:wrap;gap:10px;background:#fff;border-radius:16px;padding:14px;box-shadow:0 4px 14px var(--shadow);margin-bottom:16px;align-items:flex-end}.filters .field{margin:0;flex:1 1;min-width:140px}.filters .field input,.filters .field select{padding:9px 11px;font-size:.9rem}.table-wrap{background:#fff;border-radius:16px;box-shadow:0 4px 14px var(--shadow);overflow:auto}table.data{width:100%;border-collapse:collapse;font-size:.88rem}table.data th{position:-webkit-sticky;position:sticky;top:0;background:var(--green);color:#fff;text-align:left;padding:11px 14px;font-family:Baloo\ 2,cursive;font-weight:700;white-space:nowrap;font-size:.82rem;letter-spacing:.3px}table.data td{padding:10px 14px;border-bottom:1px solid #eef3ec;font-weight:600}table.data tr:nth-child(2n) td{background:#f9fcf7}table.data tr:hover td{background:#eefae9}.badge-score{background:#e8f5e9;color:var(--green-d);font-weight:800;padding:3px 10px;border-radius:50px;font-size:.82rem}.empty{padding:40px;text-align:center;color:#889;font-weight:700}.login-card{background:#fff;border-radius:24px;max-width:380px;width:100%;padding:30px 32px;box-shadow:0 20px 50px rgba(0,0,0,.18);border-top:8px solid var(--navy);text-align:center}.login-card h2{font-family:Baloo\ 2,cursive;color:var(--navy);font-size:1.6rem;margin-bottom:6px}@media (max-width:600px){.grid{gap:14px;padding:0 14px 40px}.filters .field{min-width:46%}}