[hidden]{display:none!important}*{box-sizing:border-box}.fk-body{margin:0;background:#07548d;font-family:Nunito,Arial,sans-serif;color:#0b3972}.landing{position:relative;min-height:100dvh;background:#0a5e9d;overflow:hidden}.hero-image{position:absolute;inset:0;background:url("../img/firekids/landing-hero.jpg") center top/cover no-repeat}.audio-switches{position:absolute;right:3.2%;top:2.2%;display:flex;gap:9px}.audio-pill{border:2px solid #ffffff55;background:#062f61e8;color:white;border-radius:999px;padding:8px 15px;font-weight:900;box-shadow:0 3px 0 #05234b;cursor:pointer}.audio-pill span{margin:0 5px}.hero-buttons{position:absolute;left:42%;right:3.5%;bottom:4%;display:grid;grid-template-columns:1fr 1.08fr;gap:20px}.hero-btn{min-height:78px;border:4px solid white;border-radius:999px;display:flex;align-items:center;justify-content:center;gap:14px;cursor:pointer;box-shadow:0 7px 0 #06467a,0 12px 22px #002c5b55}.hero-btn.play{background:linear-gradient(#ffe941,#ffb812);color:#082f6b}.hero-btn.login{background:linear-gradient(#31bfff,#087edb);color:#fff}.round-icon{width:50px;height:50px;border-radius:50%;background:white;display:grid;place-items:center;font-size:1.6rem}.play .round-icon{background:#073b76;color:#ffd323}.hero-btn b{display:block;font-size:clamp(1rem,1.8vw,1.55rem);font-weight:1000}.hero-btn small{display:block;font-size:.85rem;font-weight:800}.hero-btn strong{font-size:2.8rem}.screen{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:25px;background:linear-gradient(#6dc6ef,#e9f7ff 68%,#fff0bd);overflow:auto}.panel{position:relative;width:min(400px,96vw);min-height:560px;padding:35px 25px 20px;border-radius:28px;background:linear-gradient(#f8fdff,#fff4cb);border:5px solid white;box-shadow:0 12px 0 #075792,0 25px 60px #053b6555;text-align:center}.panel-icon{font-size:3rem}.panel h2{font-size:1.8rem;margin:4px 0;color:#0b3972}.panel>p{margin:0 0 20px;color:#3e6792}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice{position:relative;min-height:220px;border:3px solid #a4f8df;border-radius:20px;color:#fff;padding:18px 12px;cursor:pointer;box-shadow:0 5px 0 #0b7e61}.choice.guest{background:linear-gradient(#25d39a,#12a66d)}.choice.account{background:linear-gradient(#24b8f7,#0b7ed9);border-color:#9beaff;box-shadow:0 5px 0 #075d9f}.choice>span{font-size:3.2rem}.choice b,.choice small{display:block}.choice b{font-size:1.12rem;margin:9px 0}.choice small{font-weight:700;line-height:1.35}.choice i{position:absolute;right:10px;bottom:7px;font-size:2rem}.safe{display:flex;text-align:left;gap:10px;align-items:center;margin:17px 5px 35px;padding:10px;border-radius:13px;background:#fff8dd;font-size:.72rem}.back{position:absolute;left:20px;bottom:16px;border:0;border-radius:999px;background:#165d8e;color:white;padding:9px 18px;font-weight:900;cursor:pointer}.field{display:flex;align-items:center;gap:8px;margin:10px 0;background:#fff;border:2px solid #cad8e7;border-radius:10px;padding:0 10px;text-align:left}.field input{width:100%;border:0;outline:0;padding:13px 4px;background:transparent;font:inherit;font-weight:700}.field button{border:0;background:none}.remember{display:block;text-align:left;font-size:.8rem}.error{min-height:22px;color:#c92837;font-weight:900;font-size:.78rem}.sign-in,.start{width:100%;border:0;border-radius:999px;background:linear-gradient(#ff5d62,#e52c3b);color:white;padding:14px;font-size:1.05rem;font-weight:1000;box-shadow:0 4px 0 #b61d2b;cursor:pointer}.or{margin:12px;color:#6f8397}.continue{border:2px solid #c7d5e4;border-radius:999px;padding:9px 28px;background:#f5f8fb;color:#2d5279;font-weight:800}.help{display:block;margin-top:13px;color:#55718c}.profile-panel{width:min(430px,96vw);text-align:left}.profile-panel .panel-icon,.profile-panel h2,.profile-panel>p{text-align:center}.profile-panel label{display:block;font-weight:1000;margin:10px 0 3px}.hint{display:block;text-align:center;color:#63809a}.avatars{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:8px 0 14px}.avatar-option{height:112px;padding:0;border:2px solid #acd1ec;border-radius:11px;background:#e9f6ff;overflow:hidden;cursor:pointer;position:relative}.avatar-option.selected{border:4px solid #087bd9}.avatar-option img{width:100%;height:86px;object-fit:cover;display:block}.avatar-option b{display:block;font-size:.67rem;color:#0b3972}.start{background:linear-gradient(#2bd17a,#0fa85d);box-shadow:0 4px 0 #087a42}.gamebar{min-height:92px;background:linear-gradient(#075c9d,#033d73);display:flex;align-items:center;gap:18px;padding:8px 20px;color:#fff}.game-logo img{width:190px;height:68px;object-fit:cover;object-position:left center}.gamebar nav{display:flex;flex:1;justify-content:center;gap:8px}.gamebar nav a{width:75px;height:70px;display:grid;place-items:center;align-content:center;color:#dcecff;text-decoration:none;border-radius:13px;font-size:1.4rem}.gamebar nav a.active{background:#087fe0;box-shadow:0 3px 0 #12bfff}.gamebar nav small{font-size:.65rem}.profile-chip{display:flex;align-items:center;gap:7px;background:#064a83;border:2px solid #1886cb;border-radius:17px;color:white;padding:5px 10px}.profile-chip>span{font-size:2.2rem}.profile-chip small{display:block}.profile-chip i{display:block;width:65px;height:8px;border-radius:999px;background:#ffc41e}.stats span{display:block}.gear{border:2px solid #1675b5;border-radius:50%;background:#064a83;color:#fff;font-size:1.5rem;width:45px;height:45px}footer{background:#05386b;color:#b9d6ef;text-align:center;padding:12px;font-size:.7rem}@media(max-width:800px){.hero-image{background-position:center top}.hero-buttons{left:4%;right:4%;grid-template-columns:1fr;bottom:3%}.hero-btn{min-height:62px}.audio-switches{right:2%}.audio-pill span{display:none}.choice-grid{grid-template-columns:1fr}.choice{min-height:145px}.panel{min-height:unset;padding-bottom:65px}.gamebar{flex-wrap:wrap}.gamebar nav{order:3;width:100%;overflow-x:auto}.game-logo img{width:120px}.profile-chip{margin-left:auto}}
/* V5 reliability fixes */
html,body{min-height:100%;width:100%}
.screen[hidden],#gameShell[hidden],#introLanding[hidden]{display:none!important}
button,input{font:inherit}
.avatar-option img{pointer-events:none}
@media(max-height:720px) and (min-width:801px){
 .panel{transform:scale(.88);transform-origin:center}
}

/* V5.1 hero loading fix — use a real IMG instead of CSS background */
.hero-image{display:none!important}
.hero-picture{position:absolute;inset:0;display:block;overflow:hidden;background:#1677b3}
.hero-picture img{width:100%;height:100%;display:block;object-fit:cover;object-position:center top}
.hero-load-error{position:absolute;left:50%;top:35%;transform:translate(-50%,-50%);z-index:5;
 background:#fff8;border:2px dashed #fff;color:#fff;padding:18px 24px;border-radius:16px;text-align:center}
.hero-load-error small{display:block;margin-top:5px}
@media(max-width:800px){.hero-picture img{object-position:center top}}
