/* iChurch Kids Games 2.01 — full-viewport adventure shell, perspective worlds and level trails */
:root{--purple:#7058e8;--deep:#4e41ae;--ink:#232246;--page:#f4f5ff;--font:'Trebuchet MS','Segoe UI',system-ui,sans-serif}
body{background:#f4f5ff}
.brand-text strong{font-size:17px;letter-spacing:-.055em}
.brand-text small{font-size:8px;letter-spacing:.105em}
.brand-text em{color:#806df4}
.sidebar{background:#151932;border-right:1px solid #2e355c;color:#f3f3ff}
.sidebar-label{color:#818db7}
.sidebar .nav-link{color:#c5cceb}
.sidebar .nav-active{background:#715fec;color:#fff}
.sidebar .nav-link:hover{background:#303862;color:#fff}
.sidebar .brand-text small,.sidebar-credit{color:#9aa1c6}
.sidebar .player-switch{background:#242a4a;border-color:#434767;color:white}
.sidebar .player-switch small{color:#a7aed7}
.sidebar .v2-side-quest{background:#282d50;border-color:#454968;color:#fff}
.sidebar .v2-side-quest p{color:#adb6d7}
.sidebar .sidebar-head .icon-button{background:#30375f;border-color:#535b7e;color:white}
.app-topbar{background:#ffffffea;backdrop-filter:blur(14px)}
.main-content{max-width:1600px}
.inside-footer{color:#7c819e}
/* WELCOME WORLD */
.welcome-wrap{max-width:none;padding-inline:clamp(19px,5vw,86px);background:radial-gradient(ellipse at 70% 17%,#443c95 0,transparent 30%),linear-gradient(125deg,#111632,#202454 57%,#111c3c);color:white}
.welcome-wrap:before{content:'✧       ✦      ✧     ✦';position:absolute;top:9%;right:7%;letter-spacing:68px;color:#7d86d1;opacity:.55;transform:rotate(-9deg);font-size:20px}
.welcome-wrap .brand-text small,.welcome-footer{color:#aeb9e7}
.welcome-wrap .brand-text strong{font-size:21px}
.welcome-wrap .brand-text em{color:#ffdb82}
.welcome-wrap .safe-tag{background:#1b3b4c;border-color:#2f6c6b;color:#b4f9df}
.welcome-wrap .eyebrow{background:#43387d;color:#ffdd8d;border-color:#6e55ad}
.welcome-left{max-width:650px}
.welcome-left h1{font-size:clamp(47px,5.4vw,86px);letter-spacing:-.073em;text-shadow:0 6px 25px #110c42a8}
.welcome-left h1 .rainbow-word{color:#f9ce70}
.welcome-description{color:#d3d9f5;font-size:15px}
.welcome-features span{background:#2a2d59;border-color:#474878;color:#f3eeff}
.entry-card{background:#fff;color:#25264e;border-color:#fff;box-shadow:0 28px 60px #080d2da3;max-width:540px}
.entry-card .input-label{margin-top:8px}
.kg-age-options{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.kg-age-pill{border:2px solid #e4e3f4;background:#f5f3ff;color:#4e458e;min-height:46px;border-radius:12px;font-weight:1000;box-shadow:0 3px 0 #d9d7ef;transition:transform .15s,background .2s}
.kg-age-pill:hover{transform:translateY(-3px)}
.kg-age-pill.is-on{background:#7255e7;color:white;border-color:#4c36b8;box-shadow:0 3px 0 #4633ad}
.kg-age-copy{color:#787a94;line-height:1.5;font-size:11px;margin:12px 0 3px;min-height:32px}
.welcome-wrap .hero-aura{background:radial-gradient(circle at center,#504ba4 0 22%,#524a9b 22% 45%,#393a79 45% 61%,transparent 63%)}
.welcome-wrap .hero-card{border-color:#d6dafa;box-shadow:0 20px 60px #080c2f88}
.welcome-wrap .hero-sticker{box-shadow:0 20px 40px #02092c99}
/* HOME - game portal hub */
.kg-home{padding-bottom:15px}
.kg-home-banner{min-height:320px;border-radius:30px;display:flex;position:relative;overflow:hidden;padding:42px clamp(22px,4vw,58px);background:radial-gradient(circle at 82% 40%,#6252b6 0 13%,transparent 38%),linear-gradient(120deg,#101c45,#2d2d75 65%,#483a8c);color:#fff;box-shadow:0 16px 40px #171d4c3b}
.kg-home-banner:after{content:'';position:absolute;inset:0;background-image:radial-gradient(#ffffff85 1px,transparent 1px);background-size:43px 43px;opacity:.24;pointer-events:none}
.kg-hero-copy{max-width:560px;position:relative;z-index:2}
.kg-small-caps{font-size:11px;color:#facf77;font-weight:1000;letter-spacing:.2em;margin-bottom:15px}
.kg-hero-copy h1{font-size:clamp(36px,4.5vw,66px);line-height:.99;letter-spacing:-.07em;margin-bottom:14px}
.kg-hero-copy h1 em{font-style:normal;color:#ffdb7f;text-shadow:0 4px 0 #b86d5270}
.kg-hero-copy>p{font-size:13px;line-height:1.75;color:#d2d7ff;max-width:530px;margin-bottom:22px}
.kg-hero-actions{display:flex;gap:17px;align-items:center;flex-wrap:wrap}
.kg-hero-actions>span{max-width:210px;color:#cbd7ff;font-size:10px;line-height:1.7}
.kg-big-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;border:0;padding:15px 22px;border-radius:14px;background:linear-gradient(180deg,#ffdf6b,#ffb946);box-shadow:0 6px 0 #ab6e28,0 14px 28px #060c2755;color:#362447;font-weight:1000;letter-spacing:.06em;font-size:15px;transition:transform .2s}
.kg-big-button:hover{transform:translateY(-3px)}
.kg-big-button:active{transform:translateY(3px);box-shadow:0 3px 0 #ab6e28}
.kg-big-button span{font-size:24px;line-height:1}
.kg-hero-mascot{position:absolute;right:1%;top:3%;bottom:0;width:39%;display:grid;place-items:center;pointer-events:none}
.kg-mascot-glow{position:absolute;width:95%;aspect-ratio:1;border:3px dashed #e9d8ff70;border-radius:50%;transform:rotate(-19deg)}
.kg-hero-car{width:88%;max-width:450px;filter:drop-shadow(5px 17px 0 #161442a1);transform:rotate(-12deg);animation:kgfloat 4.4s ease-in-out infinite}
.kg-hero-spark,.kg-hero-bolt{position:absolute;color:#ffdc7c;text-shadow:0 10px 10px #120c51;font-size:35px}
.kg-hero-bolt{top:18%;left:6%;font-size:55px}
.kg-hero-spark.s1{right:12%;top:15%}.kg-hero-spark.s2{right:4%;bottom:25%}.kg-hero-spark.s3{bottom:11%;left:7%}
.kg-section-line{margin:30px 0 18px}
.kg-section-line .section-kicker{color:#6856ca}
.kg-section-line h2{font-size:clamp(24px,2.8vw,38px);margin:5px 0}
.kg-section-line h2 span{color:#ffbd50}
.kg-section-line>p{font-size:12px;color:#888ba9}
.kg-portals .v2-game-card{box-shadow:0 10px 0 #d8dced,0 15px 30px #20294e16;border:2px solid #e2e3fb;border-radius:24px;overflow:hidden}
.kg-portals .v2-game-card:hover{box-shadow:0 12px 0 #cbcbea,0 24px 42px #25294e27}
.kg-portals .v2-game-art{height:210px}
.kg-portals .v2-game-words .v2-game-art{background:radial-gradient(circle at 52% 17%,#7265b3,#171741)}
.kg-portals .v2-game-bible .v2-game-art{background:linear-gradient(170deg,#66d5dd 0 60%,#ffe3b2 60%)}
.kg-portals .v2-game-math .v2-game-art{background:linear-gradient(#77d5e7 0 58%,#8bcc8d 58% 75%,#282d59 75%)}
.kg-portals .v2-game-body h3{font-size:22px}
.kg-portals .v2-game-cta{font-size:12px}
/* THE LEVEL PATHS */
.kg-map-heading{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:13px 0 15px}
.kg-map-heading h1{font-size:clamp(30px,3.3vw,48px);margin:6px 0 8px}
.kg-map-heading p{max-width:690px;color:#777e9d;font-size:13px;margin:0}
.kg-map-trophy{display:grid;place-items:center;text-align:center;padding:12px 24px;border:1px solid #dedcf6;background:#fff;border-radius:19px;white-space:nowrap;box-shadow:0 6px 0 #dfdff0}
.kg-map-trophy span{font-size:25px}.kg-map-trophy b{font-size:18px;color:#6754da}.kg-map-trophy small{color:#7e84a3;font-size:9px;letter-spacing:.1em;font-weight:1000}
.kg-world-page .v2-mode-tabs{margin:14px 0 16px}
.kg-world-page .v2-mode-tab{border:2px solid #dadbf0;box-shadow:0 4px 0 #e0e0f0;background:#fff}
.kg-world-page .v2-mode-tab.is-active{background:#6857e4;color:white;box-shadow:0 4px 0 #493ab3;border-color:#4d3db5}
.kg-world-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:17px 0}
.kg-world-tab{background:linear-gradient(140deg,#fff,#f4f4ff);border:1px solid #dbdef2;border-bottom:5px solid #d8d8ee;border-radius:19px;padding:12px 6px;color:#44456a;display:flex;flex-direction:column;align-items:center;gap:1px;min-width:0;transition:transform .15s}
.kg-world-tab>span{font-size:28px;line-height:1.3}.kg-world-tab b{font-size:12px}.kg-world-tab small{font-size:9px;text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden;color:#7d809b}
.kg-world-tab.active{transform:translateY(-3px);background:#292a66;border-color:#47418d;border-bottom-color:#15154b;color:white}
.kg-world-tab.active small{color:#cfcaef}
.kg-world-tab:disabled{opacity:.45;filter:grayscale(.7)}
.kg-route-world{overflow:hidden;border-radius:26px;border:4px solid #ffffff;background:#252961;box-shadow:0 12px 0 #b2b6d2,0 24px 50px #23295233}
.kg-route-title{display:flex;gap:14px;align-items:center;padding:17px 24px;color:#fff;background:#141b3c;position:relative;z-index:4}
.kg-route-title>span{font-size:47px;background:#ffffff24;padding:6px 12px;border-radius:16px}
.kg-route-title>div{flex:1}.kg-route-title small{font-size:10px;color:#b7bce5;font-weight:900;letter-spacing:.11em}.kg-route-title h2{margin:3px 0;font-size:25px;color:#fff}.kg-route-title p{font-size:11px;color:#d8daee;margin:0}.kg-route-title strong{text-align:center;font-size:23px}.kg-route-title strong small{display:block}
.kg-route-scroll{overflow-x:auto;overflow-y:hidden;scrollbar-color:#b9bded #33416b;scrollbar-width:thin}
.kg-route-land{height:325px;min-width:850px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 70% 10%,#edc7a3aa,transparent 34%),linear-gradient(#477fb3,#5cbdc1 50%,#2c7458 51%,#2a5679 100%)}
.kg-route-words .kg-route-land{background:radial-gradient(ellipse at 72% 16%,#805db199,transparent 35%),linear-gradient(145deg,#0d153d,#373b94 62%,#25244b)}
.kg-route-bible .kg-route-land{background:radial-gradient(ellipse at 72% 15%,#ffe4b2,transparent 32%),linear-gradient(#51b7c5,#91ddbc 57%,#48a88d 57%,#277477)}
.kg-route-land:before{content:'';inset:0;position:absolute;background:repeating-linear-gradient(22deg,transparent 0 95px,#ffffff0a 95px 96px),radial-gradient(#ffffff78 1px,transparent 2px);background-size:auto,61px 61px;opacity:.7}
.kg-land-moon,.kg-land-a,.kg-land-b,.kg-land-c{position:absolute;filter:drop-shadow(0 8px 6px #18295566);pointer-events:none}.kg-land-moon{font-size:67px;top:6%;right:7%;opacity:.95}.kg-land-a{bottom:-17px;left:22%;font-size:105px}.kg-land-b{bottom:10px;right:16%;font-size:74px}.kg-land-c{top:16%;left:4%;font-size:60px}
.kg-route-line{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 12px 0 #080d2044)}
.kg-route-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:1px;background:none;border:none;padding:0;filter:drop-shadow(0 9px 4px #0c102657)}
.kg-node-inner{background:linear-gradient(150deg,#fff9cc,#ffcb57);border:4px solid white;box-shadow:inset 0 -7px 0 #e79b3a,0 4px 0 #a37035;border-radius:50%;width:60px;height:60px;display:grid;place-items:center;font-size:25px;color:#4a3173;font-weight:1000;transition:transform .2s}
.kg-route-node:hover:not(:disabled) .kg-node-inner{transform:scale(1.14)}
.kg-route-node small{background:#131b39dd;color:#fff;border-radius:20px;padding:3px 8px;white-space:nowrap;font-size:9px;font-weight:1000;letter-spacing:.05em}
.kg-route-node.selected .kg-node-inner{outline:5px solid #ffdf6b;outline-offset:5px;animation:kgpulse 1.5s ease-in-out infinite}
.kg-route-passed .kg-node-inner{background:linear-gradient(#e7ffec,#82e7b0);box-shadow:inset 0 -7px #3aa982,0 4px #24705d}
.kg-route-locked{opacity:.64;filter:grayscale(.65) drop-shadow(0 6px 5px #080c2340)}
.kg-route-locked .kg-node-inner{background:#dadce5;box-shadow:inset 0 -7px #9da0bd;border-color:#f0f1f6}
.kg-map-launch{display:flex;gap:15px;justify-content:space-between;align-items:center;background:linear-gradient(120deg,#222448,#383370);border:1px solid #464282;border-radius:22px;padding:20px 24px;margin:25px 0 14px;color:#fff;box-shadow:0 8px 0 #b2b5d9}
.kg-map-current{display:flex;gap:14px;align-items:center;min-width:0}.kg-map-play-icon{display:grid;place-items:center;width:60px;height:60px;flex-shrink:0;font-size:34px;background:#ffffff1b;border-radius:15px}
.kg-map-current small{font-size:9px;letter-spacing:.14em;color:#f8d77b;font-weight:900}.kg-map-current h2{font-size:18px;margin:3px 0 4px;color:#fff}.kg-map-current p{font-size:11px;margin:0;color:#c2c6e7}
.kg-map-hint{font-size:11px;text-align:center;color:#8b90ab}
/* IMMERSIVE FULL VIEWPORT GAMEPLAY */
.kg-play-screen{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;overflow:hidden;z-index:150;background:#132844;color:#fff;isolation:isolate}
.kg-canvas-wrap{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}
.kg-world-canvas{display:block;width:100%;height:100%}
.kg-canvas-wrap:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#060c24b8,transparent 24%,transparent 62%,#060c2355)}
.kg-world-loc{position:absolute;z-index:2;left:28px;top:129px;padding:7px 13px;background:#0a2145b8;border:1px solid #ffffff45;border-radius:30px;font-size:12px;font-weight:1000;letter-spacing:.1em;box-shadow:0 3px 10px #09132c55}
.kg-game-tagline{position:absolute;z-index:2;left:29px;bottom:115px;font-size:13px;font-weight:900;text-shadow:0 3px 6px #06102f;max-width:450px}
.kg-play-top{position:absolute;inset:0 0 auto 0;height:67px;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 24px;background:linear-gradient(#10142bc9,#171d3f9c);border-bottom:1px solid #ffffff33}
.kg-game-back,.kg-full-toggle{border:1px solid #ffffff42;background:#ffffff18;color:#fff;padding:10px 15px;border-radius:11px;font-size:12px;font-weight:1000;letter-spacing:.03em;display:flex;gap:7px;align-items:center;backdrop-filter:blur(8px)}
.kg-game-back:hover,.kg-full-toggle:hover{background:#ffffff31}
.kg-round-title{font-size:clamp(12px,1.25vw,17px);font-weight:1000;text-align:center;text-shadow:0 2px 5px #0007}.kg-round-title span{font-size:11px;color:#ffc76b}
.kg-score-strip{position:absolute;top:77px;left:23px;z-index:4;display:flex;flex-wrap:wrap;max-width:calc(100vw - 520px);gap:9px}
.kg-score-strip>span{background:#0c1a3dc9;padding:7px 11px;border-radius:11px;border:1px solid #ffffff40;font-size:11px;font-weight:800;white-space:nowrap;box-shadow:0 2px 8px #07102744}
.kg-score-strip b{font-size:14px;color:#ffe9ae}
.kg-destination{position:absolute;z-index:4;left:30px;bottom:52px;width:min(440px,40vw);padding:14px 17px;background:#0a1939c4;backdrop-filter:blur(10px);border:1px solid #ffffff55;border-radius:14px;font-size:11px;font-weight:1000;letter-spacing:.1em;box-shadow:0 5px 24px #070f2eaa}
.kg-destination>span{font-size:9px;color:#cddbf6}
.kg-drive-progress{height:11px;background:#ffffff41;border-radius:25px;overflow:hidden;margin:9px 0 4px;border:1px solid #ffffff4d}
.kg-drive-progress>div{height:100%;background:linear-gradient(90deg,#ffd16d,#6bf0c2);border-radius:25px;transition:width .5s ease;box-shadow:0 0 15px #ffe79b}
.kg-play-footer{position:absolute;left:28px;right:28px;bottom:12px;z-index:6;display:flex;justify-content:space-between;gap:10px;color:#e3e9ff;text-shadow:0 2px 5px #000b;font-size:10px;font-weight:900;letter-spacing:.08em;pointer-events:none}
.kg-game-panel{position:absolute;z-index:5;right:20px;top:84px;bottom:39px;width:clamp(360px,34vw,512px);overflow-y:auto;overflow-x:hidden;background:linear-gradient(#ffffff,#f9faff);border:3px solid #ffffffa8;border-radius:25px;color:#28284d;box-shadow:0 18px 60px #050a1a99,0 0 0 5px #17234c50;scrollbar-color:#b8b5e4 #f6f6fc}
.kg-game-panel .v2-question{box-shadow:none;border:0;background:none;border-radius:0;padding:22px 24px 24px;min-height:100%;display:flex;flex-direction:column;gap:0}
.kg-game-panel .v2-question-top{padding:0 0 13px;margin-bottom:12px;border-color:#e8e8f6}
.kg-game-panel .v2-question-top>span{background:#eef0fe;border-radius:8px;padding:6px 9px;color:#554ac2;font-size:11px;font-weight:1000;letter-spacing:.07em}
.kg-game-panel .v2-read{background:#e6effe;border-radius:9px;color:#4b5a9c;font-size:11px;padding:7px 10px}
.kg-game-panel .v2-question-type{font-size:10px;font-weight:1000;color:#7a5bd0;letter-spacing:.13em;margin-bottom:9px}
.kg-game-panel .v2-math-prompt{font-size:clamp(35px,3.5vw,62px);color:#272653;margin:3px 0 6px;min-height:0;line-height:1.14;overflow-wrap:anywhere}
.kg-game-panel .v2-math-prompt.is-story{font-size:clamp(20px,1.8vw,28px);line-height:1.36}
.kg-game-panel .v2-bible-prompt,.kg-game-panel .kg-english-question{font-size:clamp(21px,1.65vw,26px);line-height:1.32;color:#25264b;margin:5px 0 9px;min-height:0;overflow-wrap:anywhere}
.kg-game-panel .v2-question>p{margin:0 0 11px;font-size:11px;color:#8186a1;line-height:1.4}
.kg-game-panel .v2-book-emoji{display:none}
.kg-game-panel .v2-word-clue{margin:0 0 10px;gap:12px}
.kg-game-panel .v2-word-clue>span{width:50px;height:50px;font-size:30px;flex-shrink:0}
.kg-game-panel .v2-word-clue b{font-size:13px}
.kg-game-panel .v2-word-slots{margin:4px 0 10px;gap:8px}
.kg-game-panel .v2-word-slot{width:min(14vw,62px);height:63px;font-size:31px}
.kg-game-panel .v2-choose-label{font-size:10px;margin:8px 0 8px;letter-spacing:.12em}
.kg-game-panel .v2-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.kg-game-panel .v2-option{width:100%;min-width:0;min-height:61px;display:flex;text-align:left;align-items:center;gap:9px;border:2px solid #dfe2f1;border-bottom:5px solid #d5d9ed;border-radius:13px;padding:8px 9px;background:#f7f8ff;box-shadow:none;transition:transform .15s,border-color .15s}
.kg-game-panel .v2-option:hover:not(:disabled){transform:translateY(-2px);border-color:#a29bff;background:#f2efff}
.kg-game-panel .v2-option:active:not(:disabled){transform:translateY(3px)}
.kg-game-panel .v2-option span{background:#e6e6fb;color:#584cac;min-width:26px;width:26px;height:26px;border-radius:7px;display:grid;place-items:center;font-size:11px;font-weight:1000;flex-shrink:0}
.kg-game-panel .v2-option b{font-size:clamp(12px,1.02vw,15px);line-height:1.3;overflow-wrap:anywhere;min-width:0}
.kg-game-panel .v2-option.is-right{border-color:#49bf91;background:#e3fff1;border-bottom-color:#2d9b6f}
.kg-game-panel .v2-option.is-wrong{border-color:#ec94a1;background:#fff0f2;border-bottom-color:#d87c8c}
.kg-game-panel .v2-feedback{margin:14px 0 10px;padding:12px 13px;border-radius:11px;display:flex;align-items:flex-start;gap:10px;min-height:0}
.kg-game-panel .v2-feedback>span{font-size:21px}
.kg-game-panel .v2-feedback b{font-size:12px}
.kg-game-panel .v2-feedback p{font-size:11px;line-height:1.5;margin:4px 0 0}
.kg-game-panel .v2-feedback p span{font-weight:900;color:#6854c2}
.kg-game-panel .v2-hint-row{margin:12px 0 0;padding:0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.kg-game-panel .v2-hint-row small{font-size:9px;color:#a3a2ad}
.kg-game-panel .v2-hint-button{color:#7860ca;font-weight:900;font-size:11px;border:1px solid #e4e1f9;border-radius:10px;padding:9px 11px;background:#f0eeff}
.kg-game-panel .v2-hint-box{font-size:11px;padding:10px;line-height:1.5}
.kg-panel-next{display:block;width:100%;border:0;padding:14px 11px;background:linear-gradient(180deg,#7d66ed,#5a46c9);color:#fff;font-size:13px;font-weight:1000;letter-spacing:.06em;border-radius:12px;box-shadow:0 5px 0 #3b2da3;margin:4px 0 7px}
.kg-panel-next:hover{transform:translateY(-2px)}
.kg-mode-math .kg-game-panel{border-top:6px solid #ffca66}
.kg-mode-words .kg-game-panel{border-top:6px solid #ab9bff}
.kg-mode-bible .kg-game-panel{border-top:6px solid #84e8c5}
/* Other pages consistent with game-first redesign */
.v2-page-banner{box-shadow:0 8px 0 #d1d5ec,0 19px 25px #1b205029}
.v2-shop-item,.v2-badge,.v2-report-game{box-shadow:0 5px 0 #e1e3f0}
.v2-result-card{border-top:9px solid #ffd47d;box-shadow:0 15px 0 #deddf3,0 22px 48px #22254b18}
@keyframes kgfloat{0%,100%{transform:translateY(0) rotate(-12deg)}50%{transform:translateY(-12px) rotate(-9deg)}}
@keyframes kgpulse{0%,100%{outline-offset:5px}50%{outline-offset:11px}}
@media(max-width:1090px){.kg-home-banner{min-height:320px}.kg-hero-mascot{right:-5%;width:40%;opacity:.9}.kg-hero-copy{max-width:62%}.kg-world-loc{top:115px}.kg-score-strip{max-width:calc(100vw - 420px)}.kg-game-panel{width:clamp(345px,43vw,480px)}}
@media(max-width:760px){
 .welcome-wrap{padding:19px 18px}
 .welcome-wrap .welcome-content{padding-top:27px}
 .kg-home-banner{min-height:325px;padding:27px 23px}
 .kg-hero-copy{max-width:79%}
 .kg-hero-copy h1{font-size:clamp(33px,6.5vw,55px)}
 .kg-hero-mascot{opacity:.3;right:-11%;width:63%}
 .kg-hero-actions>span{max-width:250px}
 .kg-portals .v2-game-art{height:170px}
 .kg-map-heading h1{font-size:31px}
 .kg-world-tab small{font-size:8px}
 .kg-map-launch{flex-direction:column;align-items:stretch;gap:20px}
 .kg-route-title{padding:14px 17px}
 .kg-route-scroll{border-bottom:1px solid #ffffff60}
 .kg-play-screen{height:100vh;height:100dvh;overscroll-behavior:none}
 .kg-play-top{height:52px;padding:5px 11px;gap:5px}
 .kg-game-back,.kg-full-toggle{padding:7px 10px;font-size:17px;min-width:40px;justify-content:center}
 .kg-game-back span,.kg-full-toggle span{display:none}
 .kg-round-title{font-size:12px;line-height:1.1}
 .kg-round-title span{font-size:10px}
 .kg-score-strip{top:59px;left:8px;right:8px;max-width:none;gap:5px;justify-content:space-between}
 .kg-score-strip>span{font-size:9px;padding:4px 6px;border-radius:7px}
 .kg-score-strip b{font-size:11px}
 .kg-world-loc{top:90px;left:12px;font-size:9px;padding:5px 8px}
 .kg-game-tagline{left:11px;bottom:59.4%;max-width:75%;font-size:10px}
 .kg-destination{left:auto;right:10px;top:91px;bottom:auto;width:140px;max-width:40vw;padding:9px;border-radius:10px;font-size:8px;white-space:normal}
 .kg-drive-progress{height:7px;margin:6px 0 2px}
 .kg-game-panel{left:0;right:0;top:42%;bottom:0;width:100%;border:0;border-top:5px solid #fdc96b;border-radius:22px 22px 0 0;box-shadow:0 -12px 35px #08122c7a;overscroll-behavior:contain;scrollbar-width:thin}
 .kg-game-panel .v2-question{padding:13px 18px 24px;min-height:100%}
 .kg-game-panel .v2-question-top{padding-bottom:8px;margin-bottom:9px}
 .kg-game-panel .v2-question-type{margin-bottom:5px;font-size:9px}
 .kg-game-panel .v2-math-prompt{font-size:33px;margin:0 0 5px;min-height:0}
 .kg-game-panel .v2-math-prompt.is-story{font-size:19px}
 .kg-game-panel .v2-bible-prompt,.kg-game-panel .kg-english-question{font-size:clamp(17px,4.5vw,22px);line-height:1.3;margin:4px 0 7px}
 .kg-game-panel .v2-question>p{font-size:10px;margin:0 0 8px}
 .kg-game-panel .v2-choose-label{font-size:9px;margin:3px 0 8px}
 .kg-game-panel .v2-option{min-height:50px;border-radius:11px;padding:7px 8px;gap:6px}
 .kg-game-panel .v2-option span{width:22px;min-width:22px;height:22px;font-size:10px}
 .kg-game-panel .v2-option b{font-size:12px}
 .kg-game-panel .v2-options{gap:7px}
 .kg-game-panel .v2-word-clue{margin:3px 0 7px}
 .kg-game-panel .v2-word-clue>span{width:44px;height:44px;font-size:27px}
 .kg-game-panel .v2-word-slot{width:min(15vw,55px);height:53px;font-size:26px}
 .kg-play-footer{display:none}
 .kg-game-panel .v2-feedback{margin:11px 0 9px;padding:10px}
 .kg-game-panel .v2-feedback p{font-size:10px}
}
@media(max-width:510px){
 .welcome-left h1{font-size:clamp(40px,10vw,60px)}
 .welcome-wrap .entry-card{padding:16px 17px}
 .welcome-wrap .welcome-art{min-height:360px}
 .kg-home-banner{min-height:335px}
 .kg-hero-copy{max-width:100%}
 .kg-hero-copy h1{font-size:35px}
 .kg-hero-copy>p{font-size:12px}
 .kg-hero-mascot{right:-37%;opacity:.23}
 .kg-small-caps{font-size:9px}
 .kg-map-heading{align-items:flex-start}
 .kg-map-heading h1{font-size:25px}
 .kg-map-heading p{font-size:11px}
 .kg-map-trophy{padding:9px}.kg-map-trophy span{font-size:20px}.kg-map-trophy b{font-size:12px}
 .kg-world-tabs{gap:4px}
 .kg-world-tab{padding:9px 2px;border-radius:12px}.kg-world-tab>span{font-size:21px}.kg-world-tab b{font-size:9px}.kg-world-tab small{font-size:7px}
 .kg-route-land{min-width:830px}
 .kg-route-title>span{font-size:32px}
 .kg-route-title h2{font-size:18px}.kg-route-title strong{font-size:16px}
 .kg-map-current h2{font-size:15px}
 .kg-game-panel .v2-options{grid-template-columns:1fr 1fr}
 .kg-game-panel .v2-option{min-height:52px}
 .kg-game-panel .v2-question{padding:12px 13px 30px}
}
@media(max-width:380px){
 .kg-score-strip>span:nth-child(4){display:none}
 .kg-game-panel{top:40%}
 .kg-game-tagline{bottom:61%}
 .kg-game-panel .v2-option b{font-size:11px}
 .kg-game-panel .v2-math-prompt{font-size:29px}
 .kg-game-panel .v2-bible-prompt,.kg-game-panel .kg-english-question{font-size:17px}
}
@media(min-width:761px) and (max-height:680px){.kg-game-panel{top:70px;bottom:12px}.kg-game-panel .v2-question{padding:13px 17px}.kg-game-panel .v2-option{min-height:51px}.kg-score-strip{top:75px}}
@media(prefers-reduced-motion:reduce){.kg-hero-car,.kg-route-node.selected .kg-node-inner{animation:none!important} .kg-game-panel *, .kg-route-world *{scroll-behavior:auto!important;transition:none!important}}

/* Parents can secure a new installation before any child joins. */
.kg-parent-entry{margin:19px auto 7px;display:block;border:1px solid #6e78c6;background:#ffffff17;color:#e7e5ff;border-radius:12px;padding:13px 19px;font-size:12px;font-weight:900;line-height:1.5}
.kg-parent-entry:hover,.kg-parent-guest-back:hover{background:#ffffff2b}
.kg-parent-guest{min-height:100vh;min-height:100dvh;background:radial-gradient(circle at 80% 10%,#4e438f 0,transparent 35%),linear-gradient(135deg,#161b3a,#202650);padding:20px clamp(15px,4vw,72px);color:#f7f7ff}
.kg-parent-guest>header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;max-width:1400px;margin:0 auto;padding-bottom:12px;border-bottom:1px solid #ffffff33}
.kg-parent-guest .brand-text strong{color:white}.kg-parent-guest .brand-text small{color:#c9c9ef}.kg-parent-guest .brand-text em{color:#f8d17c}
.kg-parent-guest-back{border:1px solid #7d81bb;background:#ffffff1d;color:white;padding:11px 14px;border-radius:11px;font-weight:900;font-size:12px}
.kg-parent-guest>main{max-width:1120px;margin:0 auto;color:#27264b}
.kg-parent-guest>footer{text-align:center;margin:36px 0 8px;color:#bdbee9;font-size:11px}
.kg-parent-guest .v2-parent-page{background:#f6f6ff;padding:25px;border-radius:24px;margin-top:35px}
.kg-parent-guest .v2-parent-gate{margin:50px auto 25px}
@media(max-width:510px){.kg-parent-guest{padding:13px}.kg-parent-guest .v2-parent-page{padding:12px}.kg-parent-guest .v2-parent-gate{margin-top:22px}}
