:root{font-family:system-ui,-apple-system,sans-serif;color:#17294b;background:#f1f5ff}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(160deg,#17294b 0,#234c99 35%,#edf4ff 35.2%)}.shell{max-width:680px;margin:auto;padding:26px 18px 100px}.head{color:white;display:flex;align-items:center;justify-content:space-between;margin-bottom:34px}.head b{font-size:24px}.head small{display:block;opacity:.8}h1{font-size:clamp(29px,6vw,45px);line-height:1.1;margin:16px 0 8px}p{line-height:1.5}.intro{color:#fff}.intro p{opacity:.9;margin:0 0 28px}.card{background:white;border:1px solid #e1e7f5;border-radius:22px;padding:22px;box-shadow:0 14px 35px #12284c20}.profiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(136px,1fr));gap:14px}.child{border:2px solid #dbe7ff;border-radius:18px;background:#f8fbff;padding:20px 10px;min-height:145px;cursor:pointer;color:#142a50;font:inherit}.child:hover,.child:focus{border-color:#4177e5;background:#edf3ff}.child .avatar{font-size:45px;display:block;margin:6px}.child strong{font-size:19px}.btn{cursor:pointer;border:0;background:#2d62d7;color:#fff;font:inherit;font-weight:700;padding:14px 19px;border-radius:13px;min-height:50px}.btn.secondary{background:#edf2ff;color:#23437a}.link{background:none;border:0;text-decoration:underline;color:inherit;cursor:pointer;font:inherit}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}input{width:100%;border:1px solid #ccd7e7;border-radius:12px;padding:15px;font:inherit;min-width:0;margin:8px 0}.hidden{display:none!important}.msg{padding:12px;border-radius:10px;background:#fff6df;color:#795200;margin:13px 0}.muted{color:#5d6c82;font-size:13px}.foot{text-align:center;color:#64728e;margin-top:22px;font-size:12px}.switch{font-weight:700;font-size:13px;color:#fff}.link:hover{opacity:.75}@media(max-width:450px){.shell{padding:15px 12px 80px}.card{padding:17px}.head b{font-size:22px}.profiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.child{min-height:130px;padding:12px 7px}.child .avatar{font-size:38px}}

/* V5.4 RPG child profile picker — never expose parent billing on this screen. */
body{background:linear-gradient(153deg,#0d1e42 0%,#244b9e 40%,#e9f1ff 40.2%,#eff5ff 100%)}
.shell{max-width:1000px;padding:clamp(22px,3vw,46px) clamp(20px,4vw,54px) 72px}
.head{margin-bottom:30px}.head b{font-weight:850;letter-spacing:-.5px;font-size:clamp(25px,3vw,33px)}
.intro h1{font-size:clamp(32px,5vw,55px);margin-bottom:13px}.intro p{font-size:clamp(14px,1.8vw,18px);max-width:570px}
.card{max-width:900px;margin:0 auto;padding:clamp(22px,3vw,36px);box-shadow:0 22px 70px #0f2b642a}
.profiles{grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:18px}
.child{min-height:235px;position:relative;padding:12px 14px 23px;background:linear-gradient(180deg,#e7f2ff,#f8fbff);border:2px solid #d4e3ff;box-shadow:0 8px 0 #dce5f8;transition:transform .12s ease,border-color .12s ease}
.child:hover,.child:focus-visible{transform:translateY(-5px);border-color:#4679e6;box-shadow:0 13px 0 #dce5f8}
.child:active{transform:translateY(1px)}.child strong{display:block;font-size:clamp(18px,2.5vw,24px);margin:5px 0}
.kid-profile-art{display:grid;place-items:center;min-height:138px;max-height:148px;padding:0 8px}
.kid-profile-art img{width:clamp(105px,15vw,158px);height:145px;object-fit:contain;filter:drop-shadow(0 9px 4px #122a4b24)}
.child-subtitle{display:block;font-size:13px;font-weight:700;color:#2b5ac2;margin-top:5px}
#ready h2{font-size:clamp(21px,3vw,27px);margin:0}.foot{color:#425780}
@media (max-width:560px){.profiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.child{min-height:195px;padding:8px 7px 17px}.kid-profile-art{min-height:100px}.kid-profile-art img{height:105px;width:110px}.child strong{font-size:17px}.card{padding:18px}.shell{padding:18px 13px 65px}}
@media (prefers-reduced-motion:reduce){.child{transition:none}}

/* Installation helper shown only for links opened from Parent Dashboard */
.kids-install-landing{background:linear-gradient(145deg,#e6efff,#fff);border:1px solid #a8bff4;border-radius:18px;padding:17px;margin-bottom:17px;color:#24395e}
.kids-install-landing strong{font-size:18px}.kids-install-landing p{font-size:13px;line-height:1.5}
.kids-install-landing .btn{width:100%;margin-top:7px}.kids-install-instructions{font-size:13px;line-height:1.6;background:white;border-radius:12px;padding:12px;margin-top:12px}
.kids-install-continue{font-size:13px;font-weight:700;display:inline-block;margin-top:4px}
