.pl section{padding:60px 24px;max-width:1050px;margin:0 auto}
.pl h2{font:800 clamp(30px,4.2vw,48px)/1.05 'Baloo 2';margin:0 0 14px;color:var(--ink)}
.pl-hero{padding-top:50px!important}.pl-hero.small{padding-bottom:10px!important}
.pl-hero h1{font:800 clamp(42px,6.6vw,84px)/.95 'Baloo 2';color:#fff;-webkit-text-stroke:9px var(--ink);paint-order:stroke fill;text-shadow:0 7px 0 var(--ink);margin:8px 0 18px}.pl-hero h1 span{color:var(--pip)}
.pl .kick{font-weight:800;background:var(--cream);display:inline-block;border:3px solid var(--ink);border-radius:99px;padding:5px 14px;margin:0;font-size:15px}
.pl .lead{font-size:clamp(18px,2vw,23px);font-weight:800;max-width:680px;text-shadow:0 0 14px #fff,0 0 4px #fff}
.pl-cta{display:flex;gap:14px;flex-wrap:wrap;margin:22px 0}
.btn-big{display:inline-block;background:var(--pip);color:var(--ink);font:800 22px 'Baloo 2';text-decoration:none;border:4px solid var(--ink);border-radius:16px;padding:12px 28px;box-shadow:0 6px 0 var(--ink)}
.btn-ghost{display:inline-block;background:var(--cream);color:var(--ink);font:800 20px 'Baloo 2';text-decoration:none;border:4px solid var(--ink);border-radius:16px;padding:10px 24px;box-shadow:0 5px 0 var(--ink)}
.pl .big-p{font-size:clamp(18px,2vw,22px);font-weight:700;max-width:760px;background:var(--cream);border:4px solid var(--ink);border-radius:22px;padding:20px 24px;box-shadow:0 6px 0 var(--ink)}
.pl-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.pl-card{background:var(--cream);border:4px solid var(--ink);border-radius:20px;padding:18px;box-shadow:0 6px 0 var(--ink)}.pl-card h3{font:800 22px 'Baloo 2';margin:0 0 6px}.pl-card p{margin:0;font-weight:700}
.pl-plans{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:640px}
.plan{background:var(--pip);border:4px solid var(--ink);border-radius:22px;padding:22px;box-shadow:0 7px 0 var(--ink)}.plan.alt{background:var(--cream)}
.plan h3{font:800 24px 'Baloo 2';margin:0}.amt{font:800 46px 'Baloo 2';margin:0}.amt small{font-size:20px}.plan p{font-weight:700}
.pl-table{width:100%;max-width:640px;border-collapse:separate;border-spacing:0;background:var(--cream);border:4px solid var(--ink);border-radius:20px;overflow:hidden;box-shadow:0 6px 0 var(--ink);font-weight:800}
.pl-table th,.pl-table td{text-align:left;padding:12px 18px;border-bottom:2px dashed #d9c9a8}.pl-table th{background:var(--pip);font:800 18px 'Baloo 2'}.pl-table tr:last-child td{border:0}
.pl .small-note{font-weight:700;max-width:640px;margin-top:16px;text-shadow:0 0 10px #fff}
.pl-faq details{background:var(--cream);border:3px solid var(--ink);border-radius:16px;padding:14px 18px;margin:10px 0;box-shadow:0 4px 0 var(--ink);max-width:760px}.pl-faq summary{font:800 20px 'Baloo 2';cursor:pointer}.pl-faq p{margin:8px 0 0;font-weight:700}
.toggle{display:flex;gap:0;max-width:520px;margin:0 auto 24px;background:var(--cream);border:4px solid var(--ink);border-radius:99px;padding:5px;box-shadow:0 5px 0 var(--ink)}
.toggle button{flex:1;font:800 20px 'Baloo 2';color:var(--ink);background:transparent;border:0;border-radius:99px;padding:10px 12px;cursor:pointer}.toggle button.on{background:var(--pip);box-shadow:0 0 0 3px var(--ink) inset}
.su{max-width:640px!important}.steps{list-style:none;counter-reset:s;margin:0;padding:0}
.steps li{counter-increment:s;position:relative;background:var(--cream);border:3px solid var(--ink);border-radius:18px;padding:14px 16px 14px 70px;margin:12px 0;box-shadow:0 4px 0 var(--ink)}
.steps li:before{content:counter(s);position:absolute;left:14px;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;background:var(--hat);color:#fff;border:3px solid var(--ink);font:800 22px/36px 'Baloo 2';text-align:center}
.steps b{display:block;font:800 21px 'Baloo 2'}.steps span{font-weight:700}
.su-note{margin-top:20px;background:var(--cream);border:4px solid var(--ink);border-radius:20px;padding:16px 20px;box-shadow:0 6px 0 var(--ink)}.su-note p{margin:0 0 12px;font-weight:700}
@media(max-width:800px){.pl-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.pl section{padding:40px 16px}.pl-grid,.pl-plans{grid-template-columns:1fr}.pl-hero h1{-webkit-text-stroke:7px var(--ink)}.toggle button{font-size:17px}}
.fm{display:grid;gap:14px;max-width:420px;margin:0 auto;text-align:left}
.fm label{display:grid;gap:6px;font-weight:800;color:#1d3a4a}
.fm input,.fm select{font:inherit;padding:12px 14px;border:3px solid #1d3a4a;border-radius:14px;background:#fff;color:#1d3a4a}
.fm .btn{cursor:pointer;border:3px solid #1d3a4a;font:inherit;font-weight:800}
.fmsg{padding:10px 14px;border-radius:12px;font-weight:700;margin:0}.fmsg.err{background:#ffe3df;color:#8a1d12}.fmsg.ok{background:#dff6e4;color:#14532d}
.fine-print{font-size:.9rem;opacity:.85;margin:0}.lnk{background:none;border:0;color:#1d6fa5;text-decoration:underline;cursor:pointer;font:inherit;padding:0}
.kids{list-style:none;padding:0;display:grid;gap:8px}.kids li{background:#fff8ec;border:3px solid #1d3a4a;border-radius:14px;padding:10px 14px;font-weight:800}
#account h2{font-family:'Baloo 2',sans-serif}
.cur-toggle{display:inline-flex;gap:4px;margin:0 0 16px;padding:4px;border-radius:999px;background:#eef3ff}
.cur-toggle button{border:0;border-radius:999px;padding:8px 16px;background:transparent;font:inherit;font-weight:700;cursor:pointer}
.cur-toggle button[aria-pressed="true"]{background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.15)}
.pro-card{padding:20px;border-radius:20px;background:#fff8d6;margin:0 0 20px}
.fm [hidden]{display:none!important}
.fm .btn{background:var(--pip,#ffd91a);color:#1d3a4a;border-radius:999px;padding:14px 22px;box-shadow:0 5px 0 #1d3a4a}
.legal{max-width:820px;margin:0 auto;text-align:left;line-height:1.6;color:#1d3a4a}
.legal h2{font:800 26px/1.1 'Baloo 2';margin:32px 0 8px}.legal ul{padding-left:22px}.legal li{margin:6px 0}
.legal a{color:#1d3a4a;font-weight:800}
.legal-table{width:100%;border-collapse:collapse;margin:12px 0;font-size:15px}
.legal-table th,.legal-table td{border:2px solid #1d3a4a;padding:10px 12px;text-align:left;vertical-align:top;background:#fffaf0}
.legal-table th{background:#ffe000}
.legal code{background:#eef3ff;padding:2px 6px;border-radius:6px}
@media(max-width:640px){.legal-table{display:block;overflow-x:auto}}

.ac-h{margin:0 0 12px}.ac-h small{font-size:.6em;opacity:.7}
.kids{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.kid{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;padding:14px 10px!important}
.kid-av{width:96px;height:100px}.kid-av svg,.ac-av svg{width:100%;height:100%;display:block}
.kid-t{display:flex;flex-direction:column;margin-bottom:4px}.kid-t span{font-weight:700;font-size:14px;opacity:.7}
.ac-new{display:grid;grid-template-columns:200px 1fr;gap:20px;align-items:center;background:var(--cream);border:4px solid var(--ink);border-radius:22px;padding:20px;box-shadow:0 6px 0 var(--ink);margin-bottom:28px}
.ac-pick{display:flex;flex-direction:column;align-items:center;gap:12px}.ac-av{width:160px;height:168px}
.ac-av.pop{animation:acpop .35s cubic-bezier(.3,1.6,.5,1)}@keyframes acpop{from{transform:scale(.7) rotate(-8deg)}}
@media(max-width:560px){.ac-new{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.ac-av.pop{animation:none}}
.ac-foot{margin-top:40px;padding-top:16px;border-top:3px dashed rgba(29,58,74,.3)}
#ac-privacy summary{cursor:pointer;font-weight:800;margin:8px 0}
.ac-new[hidden]{display:none}
form.fm.ac-new{max-width:none;width:100%;margin:0 0 28px;box-sizing:border-box;grid-template-columns:200px minmax(0,1fr)}
.ac-new .ac-fields{display:grid;gap:14px;min-width:0}
.ac-new input,.ac-new select{width:100%;box-sizing:border-box;min-width:0}
.ac-new .btn{justify-self:start}
@media(max-width:560px){form.fm.ac-new{grid-template-columns:minmax(0,1fr)}}
.ac-up{background:var(--cream);border:4px solid var(--ink);border-radius:22px;padding:20px;box-shadow:0 6px 0 var(--ink);margin-bottom:28px;text-align:center}
.ac-up h2{margin:0 0 6px;color:var(--ink)}.ac-up[hidden]{display:none}
.ac-up .btn-big,.ac-up .btn-ghost{margin:6px}
.ac-up .msg{min-height:1.2em;margin:8px 0 0;font-weight:700;color:#8a1d12}
/* dashboard */
.dashw{max-width:1280px;margin:0 auto;padding:110px 24px 120px}
.dash{display:grid;grid-template-columns:340px minmax(0,1fr);gap:28px;align-items:start}
.dash[hidden]{display:none}
.dash-side{display:grid;gap:16px;position:sticky;top:96px}
.dash-side .ac-h{margin:0;color:#fff;text-shadow:0 2px 0 rgba(29,58,74,.35)}
.dash-side .kids{display:grid;grid-template-columns:1fr;gap:10px}
.kid{display:grid;grid-template-columns:1fr;gap:0;text-align:left;padding:0;background:var(--cream);border:4px solid var(--ink);border-radius:20px;box-shadow:0 5px 0 var(--ink);overflow:hidden}
.kid.sel{background:#fff6c2;outline:4px solid #ffe000;outline-offset:2px}
.kid-pick{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:12px;padding:10px 14px;cursor:pointer;width:100%}
.kid-pick:focus-visible{outline:3px solid #2d9cf2;outline-offset:-3px}
.kid-pick .kid-av{width:64px;height:68px;flex:none}
.kid-t{display:grid}.kid-t b{font:800 20px 'Baloo 2';color:var(--ink)}.kid-t span{font-weight:700;color:#4c6272;font-size:14px}
.kid-act{display:flex;gap:14px;padding:0 14px 10px 90px}
.ac-addbtn{justify-self:start}
.dash-side .ac-up{margin:0;padding:16px}.dash-side .ac-up h2{font-size:22px}
.dash-side .ac-up .btn-big{display:block;margin:8px 0;font-size:19px;text-align:center}.dash-side .ac-up .btn-ghost{display:block;width:100%;margin:8px 0}
.ac-up.flash{animation:flash .5s ease 3}@keyframes flash{50%{box-shadow:0 0 0 8px #ffe000,0 6px 0 var(--ink)}}
.dash-side .pro-card,.dash-side #ac-school,.dash-side .ac-foot{background:var(--cream);border:4px solid var(--ink);border-radius:20px;padding:14px;margin:0}
.dash-main{background:var(--cream);border:4px solid var(--ink);border-radius:28px;box-shadow:0 8px 0 var(--ink);padding:24px;min-height:520px}
.dash-head{display:flex;align-items:center;gap:20px;margin-bottom:18px}
.dh-av{width:110px;height:116px;flex:none}.dh-av svg{width:100%;height:100%}
.dash-head h1{font:800 clamp(30px,4vw,46px)/1 'Baloo 2';margin:0;color:var(--ink)}
.dash-head .kick{margin:0;font-weight:800;color:#4c6272}.dh-s{margin:6px 0 0;font-weight:700;color:#4c6272}.dh-s b{color:var(--ink)}
.dh-empty{padding:40px 0}
.gfilter{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:#eef3ff;margin-bottom:18px}
.gfilter button{border:0;border-radius:999px;padding:8px 18px;background:transparent;font:inherit;font-weight:800;cursor:pointer;color:var(--ink)}
.gfilter button.on{background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.18)}
.games{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px}
.gc{display:grid;gap:4px;text-decoration:none;color:var(--ink);background:#fff;border:3px solid var(--ink);border-radius:18px;padding:8px 8px 12px;box-shadow:0 4px 0 var(--ink);transition:transform .12s}
.gc:hover{transform:translateY(-3px)}.gc:focus-visible{outline:3px solid #2d9cf2;outline-offset:3px}
.gc-art{position:relative;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:linear-gradient(135deg,hsl(var(--h) 80% 70%),hsl(calc(var(--h) + 40) 75% 55%));display:grid;place-items:center}
.gc-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.gc-i{font:800 54px 'Baloo 2';color:rgba(255,255,255,.9);text-shadow:0 3px 0 rgba(29,58,74,.3)}
.gc-art img+.gc-i{display:none}
.gc-b{position:absolute;top:8px;right:8px;font:800 12px Nunito,sans-serif;font-style:normal;background:var(--ink);color:#fff;border-radius:999px;padding:3px 10px}.gc-b.free{background:#2dc26b}
.gc-n{font:800 18px 'Baloo 2';padding:0 4px}.gc-s{font-weight:700;font-size:13px;color:#4c6272;padding:0 4px}
.gc.lock .gc-art{filter:saturate(.4) brightness(.92)}.gc.lock .gc-n{opacity:.8}
.ac-dlg{border:4px solid var(--ink);border-radius:24px;background:var(--cream);padding:24px;max-width:640px;width:calc(100% - 32px);box-shadow:0 8px 0 var(--ink)}
.ac-dlg::backdrop{background:rgba(29,58,74,.55)}.ac-dlg .ac-new{border:0;box-shadow:none;padding:0;margin:0}
.ac-x{position:absolute;top:10px;right:14px;border:0;background:none;font-size:32px;cursor:pointer;color:var(--ink)}
@media(max-width:960px){.dash{grid-template-columns:1fr}.dash-side{position:static}.dash-side .kids{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.dashw{padding-top:90px}}
