.site-footer{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e4e8f3;background:#0e1328;border-top:1px solid #29325a;grid-column:2;margin-top:3rem}.site-footer-inner{grid-template-columns:minmax(14rem,1.4fr) repeat(4,minmax(0,1fr));gap:2rem;max-width:1200px;margin:0 auto;padding:2.5rem 1.5rem;display:grid}.site-footer-brand{flex-direction:column;gap:.6rem;min-width:0;display:flex}.site-footer-brand-name{font:600 1.1rem var(--font-ui);color:#fff}.site-footer-about{font:400 .88rem/1.6 var(--font-ui);color:#9ba4c0;margin:0}.site-footer-credit{font:500 .84rem/1.6 var(--font-ui);color:#9ba4c0;margin:0}.site-footer-col{flex-direction:column;gap:.15rem;min-width:0;display:flex}.site-footer-col-title{font:600 .78rem/1.4 var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:#9ba4c0;margin-bottom:.5rem}.site-footer-col a{font:500 .88rem/1.5 var(--font-ui);color:#d8ddec;padding:.28rem 0;text-decoration:none}.site-footer-col a:hover{color:#fff;text-decoration:underline}@media (max-width:900px){.site-footer{grid-column:1}.site-footer-inner{padding:2rem 1.2rem calc(2rem + var(--nav-h) + env(safe-area-inset-bottom,0px));grid-template-columns:1fr 1fr;gap:1.4rem}.site-footer-brand{grid-column:1/-1}}@media (max-width:520px){.site-footer-inner{grid-template-columns:1fr}}
.game-root{--g-ink:#1f2a44;--g-muted:#5b6785;--g-grape:#7b5cff;--g-grapeD:#5a3fd6;--g-sun:#ffc93c;--g-sunD:#d9a21a;--g-coral:#ff6b6b;--g-mint:#2ec4b6;--g-sky:#4da8ff;--g-line:#d5e3f2;--g-bg:#eaf6ff;color:var(--g-ink);font-size:17px;line-height:1.35}.game-root,.game-root *{box-sizing:border-box}.game-stage{aspect-ratio:16/10;touch-action:none;background:#cfeeff;border:3px solid #fff;border-radius:22px;width:100%;position:relative;overflow:hidden;box-shadow:0 8px 24px #1f2a442e}.game-stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.game-hud{border:2px solid var(--g-line);background:#fff;border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;padding:6px 14px;font-weight:700;display:flex}.game-hud .grp{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.game-hud .brand{color:var(--g-grape);font-size:20px}.game-hud .hearts{letter-spacing:2px;font-size:20px}.game-hud .combo{color:var(--g-coral)}.game-panel{border:2px solid var(--g-line);background:#fff;border-radius:20px;flex-direction:column;gap:10px;padding:12px 16px;display:flex}.game-goal{font-size:18px;font-weight:600}.game-live{color:var(--g-grapeD);min-height:30px;font-size:20px;font-weight:600;font-family:"Baloo 2", var(--font-ui), system-ui, sans-serif}.game-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.game-actions .dots{color:var(--g-muted);letter-spacing:3px;margin-left:auto;font-weight:700}.game-ctl{grid-template-columns:minmax(120px,190px) minmax(0,1fr) 60px;align-items:center;gap:10px;min-height:44px;display:grid}.game-ctl label,.game-ctl .clabel{font-weight:700}.game-ctl input[type=range]{width:100%;accent-color:var(--g-grape);height:28px}.game-ctl output{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.game-ctl.choice{grid-template-columns:minmax(0,1fr)}.game-ctl.text{grid-template-columns:minmax(120px,190px) minmax(0,1fr)}.game-ctl input[type=text]{font:700 20px "Baloo 2", var(--font-ui), system-ui, sans-serif;border:2px solid var(--g-line);width:100%;max-width:260px;min-height:46px;color:var(--g-ink);background:#fff;border-radius:12px;padding:6px 12px}.game-choices{flex-wrap:wrap;gap:8px;display:flex}.game-btn{font:700 18px "Baloo 2", var(--font-ui), system-ui, sans-serif;background:var(--g-grape);color:#fff;box-shadow:0 4px 0 var(--g-grapeD);cursor:pointer;border:0;border-radius:16px;min-height:48px;padding:10px 24px}.game-btn:active{box-shadow:0 1px 0 var(--g-grapeD);transform:translateY(3px)}.game-btn.sun{background:var(--g-sun);color:var(--g-ink);box-shadow:0 4px 0 var(--g-sunD)}.game-btn.sun:active{box-shadow:0 1px 0 var(--g-sunD);transform:translateY(3px)}.game-btn.ghost,.game-btn.opt{color:var(--g-ink);border:2px solid var(--g-line);box-shadow:0 3px 0 var(--g-line);background:#fff}.game-btn.ghost:active,.game-btn.opt:active{box-shadow:0 1px 0 var(--g-line);transform:translateY(2px)}.game-btn.opt{text-align:left}.game-btn[disabled]{opacity:.5;pointer-events:none}.game-ibtn{border:2px solid var(--g-line);cursor:pointer;min-width:44px;min-height:44px;color:var(--g-ink);background:#fff;border-radius:12px;padding:0 10px;font:700 17px inherit}.game-ibtn:active{transform:translateY(2px)}.game-ibtn[disabled]{opacity:.5;pointer-events:none}.game-chip{border:2px solid var(--g-line);font:700 16px "Baloo 2", var(--font-ui), system-ui, sans-serif;cursor:pointer;min-height:46px;color:var(--g-ink);background:#fff;border-radius:14px;padding:6px 14px}.game-chip[aria-pressed=true]{background:var(--g-grape);color:#fff;border-color:var(--g-grapeD)}.game-chip[disabled]{opacity:.5;pointer-events:none}.knowledge-chips{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.knowledge-chips .kc-label{color:var(--g-muted);font-size:14px;font-weight:700}.kc-chip{border:2px solid var(--g-mint);color:var(--g-ink);font:700 15px "Baloo 2", var(--font-ui), system-ui, sans-serif;cursor:pointer;background:#e9fbf8;border-radius:999px;min-height:40px;padding:4px 14px}.kc-chip:hover{background:var(--g-mint);color:#fff}.game-toast{opacity:0;color:var(--g-ink);border:2px solid var(--g-line);pointer-events:none;text-align:center;z-index:5;background:#fff;border-radius:16px;max-width:92%;padding:6px 16px;font-weight:700;transition:all .25s;position:absolute;top:12px;left:50%;transform:translate(-50%,-24px);box-shadow:0 4px #00000014}.game-toast.show{opacity:1;transform:translate(-50%)}.game-toast.good{border-color:var(--g-mint);background:#e3f7f4}.game-toast.bad{border-color:var(--g-coral);background:#ffeded}.game-overlay{z-index:60;background:#1f2a448c;place-items:center;padding:14px;display:grid;position:fixed;inset:0}.game-overlay[hidden]{display:none}.game-card{width:100%;max-width:580px;max-height:92vh;color:var(--g-ink);background:#fff;border-radius:24px;padding:22px 24px;overflow:auto;box-shadow:0 10px #0000001a}.game-card h2{color:var(--g-grapeD);margin:0 0 6px;font-size:28px}.game-card h3{margin:12px 0 4px;font-size:18px}.game-card p{margin:6px 0}.game-card .btns{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.game-card .btns.col{flex-direction:column}.game-card .btns.col .game-btn{width:100%}.game-card .big{letter-spacing:6px;text-align:center;margin:4px 0;font-size:44px}.game-card .tipbox{border:2px solid var(--g-sun);background:#fff6da;border-radius:16px;margin:8px 0;padding:10px 14px}.game-card .tipbox b.t{margin-bottom:2px;display:block}.game-card .formula{background:#efeaff;border-radius:12px;margin:6px 0;padding:8px 12px;font:600 20px Georgia,Times New Roman,serif;display:block}.game-card .fact{background:#e3f7f4;border-radius:14px;margin-top:10px;padding:8px 12px}.game-card .sol{background:#f4f6fa;border-radius:14px;margin-top:8px;padding:8px 12px}.game-card details summary{cursor:pointer;min-height:32px;font-weight:700}.game-card table.nb{border-collapse:collapse;width:100%;font-size:15px}.game-card table.nb th,.game-card table.nb td{border-bottom:1px solid var(--g-line);text-align:center;padding:4px 6px}.game-card .bars{align-items:flex-end;gap:8px;height:90px;margin:10px 0 26px;display:flex}.game-card .bars div{background:var(--g-sun);min-height:6px;box-shadow:inset 0 -4px 0 var(--g-sunD);border-radius:8px 8px 0 0;flex:1;position:relative}.game-card .bars span{text-align:center;color:var(--g-muted);font-size:13px;position:absolute;bottom:-20px;left:0;right:0}.game-card sup{font-size:.7em}.games-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-top:12px;display:grid}.game-branch{margin-top:22px}.game-branch-title{font:700 20px "Baloo 2", var(--font-ui), system-ui, sans-serif;color:var(--g-ink);align-items:center;gap:10px;margin:0;display:flex}.game-branch-count{font:700 13px var(--font-ui);color:var(--g-grapeD);background:#efeaff;border-radius:999px;padding:2px 10px}.game-card-tile{border:2px solid var(--g-line);color:var(--g-ink);background:#fff;border-radius:20px;flex-direction:column;gap:8px;padding:14px 16px 16px;text-decoration:none;transition:transform .15s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px #0000000f}.game-card-tile:before{content:"";background:var(--gt-acc,var(--g-grape));height:5px;margin:-14px -16px 2px;display:block}.game-card-tile:hover{border-color:var(--gt-acc,var(--g-grape));transform:translateY(-3px)}.acc-grape{--gt-acc:var(--g-grape)}.acc-sun{--gt-acc:var(--g-sun)}.acc-coral{--gt-acc:var(--g-coral)}.acc-mint{--gt-acc:var(--g-mint)}.acc-sky{--gt-acc:var(--g-sky)}.game-card-tile .gt-top{align-items:center;gap:10px;display:flex}.game-card-tile .gt-icon{font-size:30px;line-height:1}.game-card-tile .gt-title{font:700 18px "Baloo 2", var(--font-ui), system-ui, sans-serif;color:var(--g-ink)}.game-card-tile .gt-desc{color:var(--g-muted);font-size:14px}.game-card-tile .gt-meta{flex-wrap:wrap;gap:6px;margin-top:auto;display:flex}.gt-badge{font:700 12px var(--font-ui);color:var(--g-grapeD);background:#efeaff;border-radius:999px;padding:3px 10px}.gt-topic{font:600 12px var(--font-ui);color:#1e9a8f;background:#e3f7f4;border-radius:999px;padding:3px 10px}@media (max-width:640px){.game-ctl{grid-template-columns:minmax(0,1fr) 56px}.game-ctl label{grid-column:1/-1}.game-ctl.text{grid-template-columns:1fr}.game-goal{font-size:16px}.game-btn{padding:10px 18px}}@media (prefers-reduced-motion:reduce){.game-root *,.game-card *{transition:none!important}}
