/* iChurch Kids Arcade v2 — five worlds, 150 stages, rewards, reports */
:root{--purple:#6758ed;--ink:#292a51;--v2-shadow:0 12px 32px rgba(65,57,118,.065)}
.v2-main{padding-bottom:50px}
.v2-main h1{letter-spacing:-.055em}
.v2-main button{touch-action:manipulation}
.topbar-coin{display:flex;align-items:center;gap:6px;white-space:nowrap;padding:9px 12px;background:#fff6dd;border:1px solid #ffedba;border-radius:13px;font-size:19px}
.topbar-coin b{font-size:16px;color:#8c601b}
.v2-side-quest{background:#f2efff;border:1px solid #e6e2ff;border-radius:18px;text-align:center;padding:19px 14px 15px;margin-bottom:13px}
.v2-side-big{font-size:42px;line-height:1.2;margin-bottom:7px}
.v2-side-quest b{font-size:14px}
.v2-side-quest p{color:#8887aa;font-size:10px;margin:7px 0 0}
.v2-side-quest .v2-progress{margin-top:11px}
.v2-progress{height:9px;border-radius:20px;background:#e8e7f6;overflow:hidden}
.v2-progress>div{height:100%;background:linear-gradient(90deg,#80dfbc,#8070f5);border-radius:20px;transition:width .45s ease}
.v2-game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.v2-game-card{background:#fff;text-align:left;border:1px solid #e9e8f8;border-radius:23px;overflow:hidden;box-shadow:var(--v2-shadow);min-width:0;padding:0;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s}
.v2-game-card:hover{transform:translateY(-5px);box-shadow:0 22px 38px #2d245d1c;border-color:#cfc6ff}
.v2-game-art{height:175px;position:relative;overflow:hidden}
.v2-game-math .v2-game-art{background:linear-gradient(#d9f6ff 0 57%,#9edab9 57% 79%,#777d9f 79%)}
.v2-game-words .v2-game-art{background:radial-gradient(circle at 65% 23%,#8074e4,#4b3ea1)}
.v2-game-bible .v2-game-art{background:linear-gradient(160deg,#a3eee1 0 57%,#f3e0aa 58% 100%)}
.v2-game-pill{position:absolute;z-index:5;top:15px;left:15px;border-radius:30px;background:#ffffffeb;color:#6254cf;font-size:9px;font-weight:1000;letter-spacing:.12em;padding:7px 11px}
.v2-card-hill{width:120%;height:43px;background:#9edbb8;border-radius:50% 50% 0 0;position:absolute;left:-10%;bottom:33px}
.v2-card-road{position:absolute;bottom:11px;width:100%;height:5px;background:repeating-linear-gradient(90deg,#fff 0 22px,transparent 22px 43px)}
.v2-card-car{position:absolute;bottom:22px;left:19%;width:58%;transform:rotate(-2deg);filter:drop-shadow(0 6px 2px #43445b33)}
.v2-art-floating{position:absolute;right:15%;top:21px;font-size:36px}
.v2-game-words .v2-art-floating{top:39px;right:12%;font-size:43px}
.v2-game-bible .v2-art-floating{left:18%;top:22px}
.v2-card-stars{position:absolute;top:35px;left:10%;font-size:30px;color:#fff4a4}
.v2-card-rocket{position:absolute;height:145px;width:100px;left:45%;top:40px;transform:rotate(28deg)}
.v2-card-island{position:absolute;bottom:-25px;right:7%;font-size:105px}
.v2-card-diamond{position:absolute;left:24%;top:75px;font-size:67px}
.v2-game-body{padding:18px 20px 19px;flex:1;display:flex;flex-direction:column}
.v2-card-icon{font-size:24px}
.v2-game-body h3{font-size:21px;margin:6px 0}
.v2-game-body p{font-size:12px;color:var(--muted);line-height:1.65;min-height:42px;margin-bottom:18px}
.v2-card-progress-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#8a8ba6;font-weight:800;margin-top:auto;margin-bottom:7px}
.v2-card-progress-top b{color:#6b5be8}
.v2-game-cta{display:flex;align-items:center;justify-content:space-between;margin-top:15px;padding-top:13px;border-top:1px solid #eeedf8;color:#6759ed;font-size:11px;font-weight:1000;letter-spacing:.055em}
.v2-home-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:25px}
.v2-home-note{padding:20px;border:1px solid #ddd7ff;background:#f1efff;border-radius:20px;display:flex;gap:17px;font-size:37px;align-items:flex-start}
.v2-home-note.is-mint{background:#f2fff9;border-color:#cfeede}
.v2-home-note b{font-size:16px}
.v2-home-note p{font-size:12px;color:#8184a0;line-height:1.65;margin:6px 0 10px}
.v2-home-note .text-link{font-size:13px;line-height:1.4;letter-spacing:0;display:inline-flex;align-items:center;gap:6px;max-width:100%;white-space:normal;text-align:left}
/* STAGE MAP */
.v2-world-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px}
.v2-world-top .section-kicker{color:#7a63e6;margin-bottom:8px}
.v2-world-top h1{font-size:clamp(30px,3.4vw,44px);margin:0 0 8px}
.v2-world-top p{color:#8486a2;font-size:13px;margin:0;max-width:550px}
.v2-world-progress{text-align:center;background:#efebff;border:1px solid #e1ddff;padding:16px 22px;border-radius:18px;flex-shrink:0}
.v2-world-progress strong{font-size:32px;line-height:1;color:#6252dd;display:block}
.v2-world-progress small{font-size:15px;color:#9993d6}
.v2-world-progress span{font-size:10px;color:#777e9a;font-weight:900}
.v2-mode-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 26px}
.v2-mode-tab{border:1px solid #e2e1f2;background:#fff;color:#70728e;padding:12px 18px;border-radius:14px;font-weight:900;font-size:13px;display:flex;align-items:center;gap:8px}
.v2-mode-tab:hover{background:#f5f3ff}
.v2-mode-tab.is-active{background:#6959ed;color:white;border-color:#6959ed;box-shadow:0 5px 0 #d7d0ff}
.v2-world-list{display:grid;gap:17px}
.v2-world-block{background:#fff;border:1px solid #e8e9f2;box-shadow:var(--v2-shadow);border-radius:21px;overflow:hidden}
.v2-world-header{display:flex;align-items:center;gap:16px;padding:17px 20px;background:linear-gradient(100deg,var(--world-bg,#f5f2ff),#fff);border-bottom:1px solid #f1f0f7}
.v2-world-header>div:nth-child(2){flex:1;min-width:0}
.v2-world-emoji{width:69px;height:69px;border-radius:18px;background:#ffffffad;display:grid;place-items:center;font-size:39px;box-shadow:0 5px 12px #27204712;flex-shrink:0}
.v2-world-overline{color:#7773b0;font-size:10px;font-weight:1000;letter-spacing:.12em}
.v2-world-header h2{font-size:21px;margin:5px 0 2px}
.v2-world-header p{font-size:11px;color:#878ca1;margin:0}
.v2-world-count{font-weight:1000;font-size:19px;color:#5e56af;text-align:center;white-space:nowrap}
.v2-world-count small{display:block;font-size:9px;color:#a6a3bc}
.v2-theme-sunny,.v2-theme-garden,.v2-theme-cove{--world-bg:#fff1dd}
.v2-theme-rainbow,.v2-theme-cloud,.v2-theme-valley{--world-bg:#eeedff}
.v2-theme-mountain,.v2-theme-moon,.v2-theme-wisdom{--world-bg:#e8f5ff}
.v2-theme-city,.v2-theme-planet,.v2-theme-jesus{--world-bg:#e5fff5}
.v2-theme-galaxy,.v2-theme-stars,.v2-theme-kingdom{--world-bg:#f5eaff}
.v2-stages{padding:20px;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:9px}
.v2-stage{position:relative;min-width:0;aspect-ratio:.93;min-height:63px;padding:7px 2px;background:#f6f6fd;color:#45476d;border:2px solid #e5e4f3;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;transition:transform .15s,background .15s,border-color .15s}
.v2-stage:hover:not(:disabled){transform:translateY(-3px);background:#f0ebff}
.v2-stage-number{font-size:21px;font-weight:1000;line-height:1}
.v2-stage small{font-size:9px;letter-spacing:.055em;font-weight:1000;color:#a29cba;line-height:1}
.v2-stage-passed{background:#eefff7;border-color:#bdebd7}
.v2-stage-passed small{color:#dfa841;font-size:13px;white-space:nowrap}
.v2-stage-open{background:#eeeaff;border-color:#b9a8ff;color:#654cda}
.v2-stage-open small{color:#8a72e8}
.v2-stage-retry{background:#fff6e5;border-color:#ffd693}
.v2-stage-locked{opacity:.56;cursor:not-allowed;background:#f6f6f9}
.v2-stage-locked .v2-stage-number{font-size:15px}
.v2-stage.is-selected{outline:3px solid #6c5ced;outline-offset:1px;box-shadow:0 5px 13px #6c5ced22}
.v2-stage-launch{display:flex;align-items:center;gap:18px;background:#262657;color:#fff;border-radius:22px;padding:22px 27px;margin:25px 0 12px;box-shadow:0 16px 25px #2924541e}
.v2-launch-emoji{font-size:46px;background:#ffffff1b;border-radius:15px;width:73px;height:73px;flex-shrink:0;display:grid;place-items:center}
.v2-stage-launch>div:nth-child(2){flex:1;min-width:0}
.v2-stage-launch>div:nth-child(2)>span{font-size:10px;letter-spacing:.13em;color:#d1cafe;font-weight:900}
.v2-stage-launch h2{font-size:22px;margin:5px 0}
.v2-stage-launch p{color:#c3c1df;font-size:11px;margin:0}
.v2-stage-launch .btn{white-space:nowrap}
.v2-world-footnote{font-size:11px;color:#9295ac;text-align:center;line-height:1.6}
/* PLAY HUD */
.v2-back-row{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:13px}
.v2-back-row>span{font-weight:800;color:#9295a9;font-size:11px;text-align:right}
.v2-hud{background:#fff;border-radius:19px;border:1px solid #e8e8f1;padding:15px 17px;display:flex;align-items:center;gap:26px;justify-content:space-between;margin-bottom:18px}
.v2-hud-who{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.v2-hud-who>span{width:45px;height:45px;display:grid;place-items:center;border-radius:13px;background:#eeeaff;font-size:28px}
.v2-hud-who>div{display:flex;flex-direction:column}
.v2-hud-who b{font-size:13px}
.v2-hud-who small{font-size:10px;color:#9d9eba}
.v2-hud-progress{flex:1;max-width:350px;min-width:90px}
.v2-hud-progress>div:first-child{display:flex;justify-content:space-between;font-size:10px;font-weight:1000;color:#999ab2;margin-bottom:8px}
.v2-hud-progress b{color:#6858e8}
.v2-hud-scores{display:flex;gap:13px}
.v2-hud-scores>span{white-space:nowrap;display:flex;align-items:center;gap:5px;font-size:15px}
.v2-hud-scores b{font-size:21px}
.v2-hud-scores small{font-size:9px;color:#9598b3}
.v2-play-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.06fr);gap:18px;align-items:start}
.v2-play-praise{background:#f0effd;border-radius:13px;padding:11px;font-size:12px;font-weight:800;color:#737296;text-align:center;margin:10px 0 0}
.v2-game-foot{text-align:center;font-size:11px;color:#acabbf;margin-top:16px}
/* SCENES */
.v2-scene{height:350px;border-radius:22px;overflow:hidden;position:relative;border:1px solid #eeedf8;background:var(--world-bg);box-shadow:var(--v2-shadow)}
.v2-scene-label{position:absolute;z-index:6;top:15px;left:15px;background:#ffffffd9;padding:8px 12px;border-radius:30px;font-weight:1000;color:#5959a4;font-size:10px;letter-spacing:.08em}
.v2-scene-footer{position:absolute;bottom:0;height:39px;left:0;right:0;text-align:center;background:#fff8;color:#686b90;font-size:10px;font-weight:900;display:grid;place-items:center;padding:3px 7px;z-index:4}
.v2-scene-math{background:linear-gradient(180deg,#dcf7ff 0 45%,#a2d9b5 45% 60%,#717a9e 60% 89%,#f7f9ff 89%)}
.v2-scene-math.v2-theme-rainbow{background:linear-gradient(180deg,#e6f0ff 0 45%,#b6abea 45% 60%,#7880a3 60% 89%,#f7f9ff 89%)}
.v2-scene-math.v2-theme-mountain{background:linear-gradient(180deg,#c9e8fc 0 45%,#90b6cf 45% 60%,#657898 60% 89%,#f7f9ff 89%)}
.v2-scene-math.v2-theme-city{background:linear-gradient(180deg,#fbe0bf 0 45%,#a6bcca 45% 60%,#626785 60% 89%,#f7f9ff 89%)}
.v2-scene-math.v2-theme-galaxy{background:linear-gradient(180deg,#514a9e 0 45%,#9f75be 45% 60%,#545575 60% 89%,#f7f9ff 89%)}
.v2-race-cloud{position:absolute;top:20%;left:23%;font-size:48px;opacity:.8;animation:drift 14s linear infinite}
.v2-race-sun{position:absolute;top:17%;right:19%;font-size:45px}
.v2-race-hills{position:absolute;height:55px;width:100%;bottom:36%;background:radial-gradient(ellipse at 22% 95%,#70bdab 0 30%,transparent 31%),radial-gradient(ellipse at 80% 100%,#89caa6 0 30%,transparent 31%)}
.v2-race-track{position:absolute;top:60%;bottom:11%;left:0;right:0;overflow:hidden}
.v2-track-lines{position:absolute;top:49%;left:0;right:0;height:5px;background:repeating-linear-gradient(90deg,#fefefe 0 25px,transparent 25px 55px);animation:road 2s linear infinite}
.v2-finish-line{position:absolute;right:4%;width:12px;top:0;bottom:0;background:conic-gradient(#383754 25%,#fff 0 50%,#383754 0 75%,#fff 0);background-size:12px 12px;opacity:.8}
.v2-lane-tag{position:absolute;z-index:1;left:13px;font-size:9px;color:#e4e2ff;font-weight:1000;letter-spacing:.1em}
.v2-lane-tag.lane-one{top:0}
.v2-lane-tag.lane-two{top:52%}
.v2-player-car,.v2-rival-car{position:absolute;width:111px;transition:left .55s cubic-bezier(.1,.7,.25,1);filter:drop-shadow(0 8px 3px #34355055)}
.v2-player-car{top:2%}
.v2-rival-car{top:52%}
.v2-player-car.v2-boost:after{content:'💨';font-size:24px;position:absolute;right:95%;top:13%;animation:zoom .4s ease}
.v2-scene-words{background:radial-gradient(ellipse at 70% 20%,#7e72ca,#463a90 75%,#322b77)}
.v2-scene-words.v2-theme-cloud{background:radial-gradient(ellipse at 70% 20%,#6d9bc9,#5e58a3 75%,#342e78)}
.v2-scene-words.v2-theme-moon{background:radial-gradient(ellipse at 70% 20%,#525baf,#3a417c 75%,#25284e)}
.v2-scene-words.v2-theme-planet{background:radial-gradient(ellipse at 70% 20%,#8c5fcb,#4b3b8d 75%,#262251)}
.v2-scene-words.v2-theme-stars{background:radial-gradient(ellipse at 70% 20%,#b469c1,#574487 75%,#252253)}
.v2-stars{font-size:29px;color:#fff3b8;position:absolute;top:20%;left:20%;letter-spacing:1.4rem;white-space:nowrap;opacity:.8;animation:twinkle 4s ease infinite}
.v2-planet{position:absolute;right:12%;top:16%;font-size:82px}
.v2-rocket-trail{position:absolute;bottom:11%;left:calc(38% + 45px);width:9px;border-radius:40px;background:linear-gradient(#ffffff00,#fff9b7,#fead69);opacity:.65;transition:height .55s}
.v2-rocket-fly{position:absolute;left:31%;width:99px;height:159px;transform:rotate(17deg);filter:drop-shadow(0 13px 10px #15105170);transition:bottom .55s}
.v2-rocket-meter{position:absolute;right:15px;bottom:45px;background:#ffffff29;border:1px solid #ffffff44;color:#fff;padding:11px;border-radius:15px;font-size:25px;font-weight:1000;text-align:center}
.v2-rocket-meter small{display:block;font-size:9px;color:#ddd4ff}
.v2-scene-bible{background:linear-gradient(166deg,#b7f2e6 0 57%,#f9e5b1 58% 88%,#e1f6fa 89%)}
.v2-scene-bible.v2-theme-valley{background:linear-gradient(165deg,#d2f4ff 0 58%,#cfdea8 59% 88%,#fff6df 89%)}
.v2-scene-bible.v2-theme-wisdom{background:linear-gradient(165deg,#d6dcfa 0 58%,#dbdaa4 59% 88%,#eaf2f2 89%)}
.v2-scene-bible.v2-theme-jesus{background:linear-gradient(165deg,#c7f4f1 0 58%,#e6dcb2 59% 88%,#edf8e8 89%)}
.v2-scene-bible.v2-theme-kingdom{background:linear-gradient(165deg,#e6ddfa 0 58%,#e9d29c 59% 88%,#e6eefa 89%)}
.v2-island-sun{position:absolute;right:25%;top:13%;font-size:57px}
.v2-island-palm{position:absolute;right:6%;bottom:7%;font-size:107px;transform:rotate(6deg);z-index:2}
.v2-treasure-path{position:absolute;left:7%;top:63%;width:75%;border-top:8px dotted #cca567;transform:rotate(-24deg);opacity:.78}
.v2-chest{position:absolute;right:20%;top:40%;font-size:65px;z-index:2;filter:drop-shadow(0 7px 5px #8b793c4a)}
.v2-treasure-player{position:absolute;z-index:3;font-size:43px;background:#ffffffb5;width:56px;height:56px;border:4px solid #ffffffb5;border-radius:18px;display:grid;place-items:center;transition:left .6s,bottom .6s;box-shadow:0 8px 10px #40341d29}
.v2-island-steps{display:flex;gap:12px;position:absolute;top:22%;left:6%;color:#b5b3c5;font-size:18px}
.v2-island-steps .is-found{color:#ffbe55}
/* QUESTION AREA */
.v2-question{background:#fff;border:1px solid #e7e8f2;border-radius:23px;box-shadow:var(--v2-shadow);padding:23px 25px;min-height:390px}
.v2-question-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:17px;border-bottom:1px solid #eeeef8;color:#8d90a8;font-size:10px;font-weight:1000;letter-spacing:.1em}
.v2-read{display:flex;align-items:center;gap:6px;background:#f1eeff;border:0;color:#6757d8;padding:8px 10px;border-radius:10px;font-size:11px;font-weight:900;letter-spacing:0}
.v2-question-type{font-weight:1000;font-size:10px;letter-spacing:.13em;color:#8f89d0;margin:20px 0 10px}
.v2-math-prompt{font-size:clamp(29px,3.5vw,49px);letter-spacing:-.06em;line-height:1.2;font-weight:1000;color:#2d2d59;min-height:62px;display:flex;align-items:center;overflow-wrap:anywhere}
.v2-math-prompt.is-story{font-size:23px;line-height:1.4;min-height:88px;letter-spacing:-.03em}
.v2-question>p{font-size:12px;color:#999bb3;margin:9px 0 20px}
.v2-book-emoji{text-align:center;font-size:48px;margin-top:12px}
.v2-bible-prompt{text-align:center;font-size:25px;margin:8px 0 11px;line-height:1.3;letter-spacing:-.03em;min-height:83px;display:grid;place-items:center}
.v2-word-clue{display:flex;align-items:center;gap:15px;margin-bottom:19px}
.v2-word-clue>span{width:75px;height:75px;border-radius:20px;background:#f6f2ff;display:grid;place-items:center;font-size:44px;flex:0 0 auto}
.v2-word-clue>div{min-width:0;display:flex;flex-direction:column;gap:5px}
.v2-word-clue small{font-size:9px;font-weight:1000;color:#9a93b8;letter-spacing:.15em}
.v2-word-clue b{font-size:15px;line-height:1.45;color:#474669}
.v2-word-slots{display:flex;justify-content:center;gap:8px;margin:10px 0 20px}
.v2-word-slot{display:grid;place-items:center;width:clamp(47px,6.7vw,71px);height:70px;background:#f4f6fb;border:2px solid #e6e7f0;border-radius:14px;font-size:35px;font-weight:1000}
.v2-word-slot.is-blank{border-color:#a5a0ef;background:#f0edff;color:#6a5cde}
.v2-word-slot.is-current{outline:3px solid #e4dfff;outline-offset:3px;animation:twinkle 3s ease-in-out infinite}
.v2-word-slot.is-filled{background:#e6fff4;border-color:#b5efd4;color:#3c9c79}
.v2-choose-label{font-size:10px;letter-spacing:.14em;color:#a2a3b7;font-weight:1000;margin-bottom:9px}
.v2-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.v2-option{min-height:68px;display:flex;align-items:center;gap:10px;background:#fafaff;border:2px solid #ededf8;border-radius:14px;padding:12px 14px;color:#393c67;text-align:left;transition:transform .1s,border-color .1s,background .1s}
.v2-option:hover:not(:disabled){background:#f1efff;border-color:#bfb5ff;transform:translateY(-2px)}
.v2-option>span{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;background:#f0eefc;color:#aba4d5;font-size:10px;font-weight:1000;flex-shrink:0}
.v2-option b{font-size:17px;line-height:1.25;overflow-wrap:anywhere}
.v2-option.is-right{background:#e4fff0;border-color:#8fdbb7;color:#2c8864}
.v2-option.is-wrong{background:#fff0ee;border-color:#f9b7b2;color:#b25f5d}
.v2-option:disabled{cursor:default}
.v2-hint-row{margin-top:15px;min-height:28px;display:flex;align-items:center;justify-content:space-between;gap:9px;flex-wrap:wrap}
.v2-hint-button{background:transparent;color:#6758e9;border:0;font-size:11px;font-weight:900;padding:8px 0}
.v2-hint-row small{color:#aaaac0;font-size:10px}
.v2-hint-box{font-size:12px;color:#82621e;background:#fff7dc;border-radius:10px;padding:10px 13px;flex:1;min-width:210px}
.v2-feedback{display:flex;gap:10px;background:#eafff4;border:1px solid #c2eeda;border-radius:13px;padding:11px;margin-top:14px;align-items:flex-start}
.v2-feedback.is-learning{background:#fff7ed;border-color:#ffe3b8}
.v2-feedback>span{font-size:25px}
.v2-feedback b{font-size:12px;color:#355e4b}
.v2-feedback.is-learning b{color:#976f33}
.v2-feedback p{color:#648073;font-size:11px;line-height:1.6;margin:3px 0 0}
.v2-feedback p>span{color:#8671d4;font-weight:900}
.v2-next{width:100%;margin-top:15px}
/* RESULT */
.v2-result-page{max-width:810px;margin:0 auto}
.v2-result-card{background:#fff;border:1px solid #e7e6f6;box-shadow:0 20px 60px #4b39780e;border-radius:28px;text-align:center;padding:34px 34px 29px}
.v2-result-overline{font-size:10px;font-weight:1000;letter-spacing:.13em;color:#7b6dca}
.v2-result-icon{font-size:75px;line-height:1.1;margin:17px 0}
.v2-result-card h1{font-size:clamp(30px,4vw,43px);margin:12px 0}
.v2-result-card>p{font-size:13px;color:#8589a7;line-height:1.65;max-width:500px;margin:0 auto 14px}
.v2-result-stars{display:flex;justify-content:center;gap:8px;font-size:64px;color:#e8e6ed;letter-spacing:-.08em;filter:drop-shadow(0 4px 0 #00000008)}
.v2-result-stars .has-star{color:#ffc54e;text-shadow:0 4px 0 #ffc54e44}
.v2-result-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:24px 0 13px}
.v2-result-metrics .mini-stat{margin:0;justify-content:center;padding:12px 6px}
.v2-result-metrics .mini-stat strong{font-size:22px}
.v2-save-status{background:#edfdf5;color:#528874;font-size:11px;border-radius:10px;padding:11px;margin-bottom:20px;display:flex;align-items:center;justify-content:center;gap:7px}
.v2-result-actions{display:flex;justify-content:center;gap:11px;flex-wrap:wrap}
.v2-result-actions .btn{font-size:13px;min-height:48px;padding:11px 15px}
.v2-result-message{margin:20px auto 0!important;font-weight:800}
.v2-final-celebrate{background:#fff5d7;color:#93681d;padding:13px;border-radius:12px;margin-bottom:17px;font-weight:900}
/* PAGE BANNERS + REWARDS + JOURNEY */
.v2-page-banner{border-radius:24px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px 34px;color:#fff;margin-bottom:22px;position:relative;overflow:hidden}
.v2-page-banner:after{content:'✦';position:absolute;font-size:140px;opacity:.12;right:25%;bottom:-75px}
.v2-page-banner .section-kicker{color:#ffffffbd}
.v2-page-banner h1{font-size:clamp(27px,3.4vw,39px);max-width:640px;margin:9px 0}
.v2-page-banner p{color:#ffffffd1;font-size:13px;max-width:570px;line-height:1.6;margin:0}
.v2-banner-rewards{background:linear-gradient(110deg,#6d55d9,#a17ae9)}
.v2-banner-journey{background:linear-gradient(120deg,#6355db,#837bfb)}
.v2-banner-leaders{background:linear-gradient(115deg,#d99443,#ebb768)}
.v2-banner-side{display:flex;flex-direction:column;align-items:center;gap:5px;font-size:32px;min-width:120px;border-radius:18px;padding:15px;background:#ffffff2c;z-index:1}
.v2-banner-side b{font-size:29px}
.v2-banner-side small{font-size:9px;letter-spacing:.13em;font-weight:1000}
.v2-banner-avatar,.v2-banner-art{font-size:100px;z-index:1}
.v2-reward-tip,.v2-leader-note{background:#fff9e8;border:1px solid #ffefd0;padding:13px 17px;color:#86683b;font-size:12px;font-weight:700;border-radius:13px;margin-bottom:25px;line-height:1.6}
.v2-rewards-section{margin:28px 0 32px}
.v2-shop-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.v2-shop-item{min-width:0;background:#fff;border:1px solid #eae8f5;border-radius:20px;overflow:hidden;text-align:center;padding-bottom:13px;box-shadow:var(--v2-shadow)}
.v2-shop-item.is-equipped{border-color:#9ee5c4;background:#fafffc}
.v2-shop-art{height:115px;background:linear-gradient(#f0edff,#f9f6ff);display:flex;align-items:center;justify-content:center;padding:15px}
.v2-shop-art svg{width:100%;max-width:135px;height:auto;max-height:105px}
.v2-shop-art .rocket-svg{max-width:82px;max-height:103px}
.v2-shop-art>span{font-size:60px}
.v2-shop-item h3{font-size:13px;margin:13px 7px 5px;letter-spacing:-.03em}
.v2-shop-item p{font-size:10px;color:#989ab0;margin:0 6px 11px}
.v2-shop-button{background:#6858e9;border:0;color:white;padding:9px 10px;min-height:38px;width:calc(100% - 18px);border-radius:10px;font-size:11px;font-weight:900}
.v2-shop-button:disabled{background:#ecebf5;color:#9e9db4;cursor:default}
.v2-shop-button.is-equipped:disabled{background:#d9fbe9;color:#409e75}
.v2-offline-banner{border:1px solid #ffe0ad;color:#9c6b24;border-radius:12px;padding:12px;background:#fff9eb;font-size:12px}
.v2-journey-skills{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:31px}
.v2-skill-card{background:#fff;border:1px solid #e9e8f4;border-radius:17px;padding:20px;text-align:left;box-shadow:var(--v2-shadow)}
.v2-skill-top{display:flex;align-items:center;gap:9px;margin-bottom:18px}
.v2-skill-top>span{font-size:31px;background:#f3eeff;padding:8px;border-radius:13px}
.v2-skill-top>div{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}
.v2-skill-top b{font-size:14px}
.v2-skill-top small{color:#9295af;font-size:10px}
.v2-skill-top strong{font-size:13px;color:#7260de}
.v2-skill-card>p{margin:10px 0 0;font-size:11px;color:#8b8ba8}
.v2-badges{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:31px}
.v2-badge{text-align:center;border:1px solid #e9e7f3;background:#fff;border-radius:17px;padding:17px 11px;min-width:0}
.v2-badge>div{font-size:42px;width:66px;height:66px;display:grid;place-items:center;border-radius:17px;background:#fff6e4;margin:0 auto 13px}
.v2-badge h3{font-size:14px;margin:0 0 4px}
.v2-badge p{font-size:10px;color:#999aad;line-height:1.5;min-height:30px;margin:0}
.v2-badge>span{font-size:9px;color:#4daa86;font-weight:1000;letter-spacing:.04em}
.v2-badge.is-locked{opacity:.59;filter:saturate(.3)}
.v2-badge.is-locked>span{color:#9d9caf}
.v2-history{background:#fff;border:1px solid #ebebf5;border-radius:20px;overflow:hidden}
.v2-history-item{display:flex;align-items:center;gap:14px;padding:13px 17px;border-bottom:1px solid #eeeefa}
.v2-history-item:last-child{border-bottom:0}
.v2-history-item>span{font-size:27px;width:46px;height:46px;background:#f4f2ff;border-radius:12px;display:grid;place-items:center}
.v2-history-item>div{flex:1;display:flex;flex-direction:column;gap:3px}
.v2-history-item>div b{font-size:13px}
.v2-history-item>div small{font-size:10px;color:#a4a4b7}
.v2-history-item>strong{font-size:15px;white-space:nowrap}
.v2-history-empty,.v2-leader-empty,.v2-parent-empty{padding:35px 17px;text-align:center;color:#8888aa;font-size:13px}
.v2-leader-table{overflow:hidden;border:1px solid #e9e9f4;border-radius:20px;background:#fff}
.v2-leader-head,.v2-leader-row{display:grid;grid-template-columns:75px minmax(0,1.8fr) minmax(70px,.65fr) minmax(75px,.6fr);align-items:center;gap:10px;padding:13px 19px}
.v2-leader-head{background:#f4f3fc;color:#9293a9;font-size:10px;font-weight:1000;letter-spacing:.08em}
.v2-leader-row{border-top:1px solid #f0eff9;font-size:14px}
.v2-leader-row.is-you{background:#f0edff}
.v2-leader-row>span:nth-child(2){display:flex;align-items:center;gap:9px;min-width:0}
.v2-leader-row b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v2-leader-row i{font-style:normal;background:#e1daff;border-radius:6px;padding:3px 5px;font-size:8px;color:#6b5edd;font-weight:1000}
.v2-leader-row>strong{font-size:14px}
/* PARENT DASHBOARD */
.v2-parent-gate{margin:45px auto 25px;max-width:495px;background:#fff;border:1px solid #e8e7f4;padding:34px;border-radius:24px;text-align:center;box-shadow:var(--v2-shadow)}
.v2-parent-lock{font-size:56px;line-height:1.2;background:#f1edff;border-radius:20px;width:100px;height:100px;display:grid;place-items:center;margin:0 auto 23px}
.v2-parent-gate h1{font-size:34px;margin:10px 0}
.v2-parent-gate>p{font-size:13px;color:#8e90ab;line-height:1.65}
.v2-parent-form{display:flex;flex-direction:column;text-align:left;gap:10px;margin:25px 0}
.v2-parent-form label,.v2-change-pin label{font-size:11px;font-weight:1000;letter-spacing:.08em;color:#9293b0}
.v2-parent-form input,.v2-change-pin input,.v2-parent-controls select{min-height:48px;border:1px solid #dadaed;border-radius:11px;background:#fafaff;padding:10px 14px;min-width:0;color:#2e2e53;font:inherit}
.v2-parent-form input{font-size:22px;text-align:center;letter-spacing:.2em}
.v2-parent-note{background:#fff9e8;border-radius:11px;padding:11px;font-size:11px!important;color:#a07c3d!important}
.v2-parent-gate>.text-link{font-size:12px}
.v2-parent-hero{display:flex;justify-content:space-between;align-items:start;gap:10px;margin:0 0 21px}
.v2-parent-hero h1{font-size:32px;margin:9px 0}
.v2-parent-hero p{font-size:13px;color:#888aa7;max-width:630px}
.v2-parent-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:25px 0 15px}
.v2-parent-bar h2{font-size:22px;margin:0}
.v2-parent-controls{display:flex;align-items:center;gap:8px}
.v2-parent-controls label{font-size:10px;font-weight:1000;color:#8586a3}
.v2-parent-controls select{min-height:42px;max-width:190px;font-size:13px}
.v2-child-report{background:#fff;border:1px solid #e9eaf4;border-radius:21px;padding:20px}
.v2-child-header{display:flex;align-items:center;gap:13px;margin-bottom:20px}
.v2-child-avatar{width:61px;height:61px;background:#eeeaff;display:grid;place-items:center;border-radius:17px;font-size:35px}
.v2-child-header>div:nth-child(2){flex:1}
.v2-child-header h3{font-size:20px;margin:0 0 4px}
.v2-child-header p{color:#9999b0;font-size:11px;margin:0}
.v2-child-accuracy{text-align:center;background:#f1fffa;border-radius:12px;padding:10px 13px}
.v2-child-accuracy b{font-size:23px;color:#42aa81;display:block}
.v2-child-accuracy span{font-size:9px;color:#818ba5}
.v2-report-games{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.v2-report-game{border:1px solid #eaeaf4;border-radius:17px;padding:14px 15px;min-width:0}
.v2-report-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:11px}
.v2-report-title b{font-size:12px}
.v2-report-title span{color:#8578df;font-size:11px;font-weight:1000}
.v2-report-facts{display:flex;justify-content:space-between;gap:7px;margin:13px 0;font-size:10px;color:#9599b3;flex-wrap:wrap}
.v2-report-facts b{display:block;color:#484970;font-size:15px}
.v2-report-game>p{font-size:11px;color:#9294b1;line-height:1.5;margin:5px 0 0}
/* Individual child history in the parent dashboard */
.v2-parent-history{margin-top:17px;border:1px solid #eceaf8;border-radius:15px;padding:15px 17px;background:#fcfbff}
.v2-parent-history h3{font-size:14px;margin:0 0 10px;color:#333357}
.v2-parent-history>p{color:#9292aa;font-size:12px}
.v2-parent-history-row{display:grid;grid-template-columns:minmax(0,1fr) 68px 75px;gap:10px;align-items:center;padding:9px 0;border-top:1px solid #eeecfa;font-size:12px;color:#615f88}
.v2-parent-history-row span{min-width:0}.v2-parent-history-row b{font-size:12px}.v2-parent-history-row strong{color:#6656de;text-align:center}.v2-parent-history-row small{font-size:10px;text-align:right;color:#a09fb9}
@media(max-width:380px){.v2-parent-history{padding:12px}.v2-parent-history-row{grid-template-columns:minmax(0,1fr) 45px 55px;gap:4px}.v2-parent-history-row b{font-size:10px}.v2-parent-history-row small{font-size:9px}}
.v2-parent-insight{background:#f0edff;border-radius:13px;padding:17px;margin-top:17px}
.v2-parent-insight h3{font-size:15px;margin:0 0 6px}
.v2-parent-insight p{font-size:12px;color:#777c99;margin:0;line-height:1.65}
.v2-parent-settings{margin-top:22px;background:#fff;border:1px solid #e9e8f4;border-radius:19px;padding:22px}
.v2-parent-settings h2{font-size:22px;margin:0 0 4px}
.v2-parent-settings>div:first-child p{font-size:12px;color:#a0a0b6;margin:0 0 15px}
.v2-switch{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;font-weight:800;border:1px solid #e6e4f4;background:#fdfdff;padding:12px 14px;border-radius:11px;margin:8px 0;cursor:pointer}
.v2-switch input{width:19px;height:19px;accent-color:#6758ed;cursor:pointer}
.v2-change-pin{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:17px 0}
.v2-change-pin label{width:100%;margin-bottom:-5px}
.v2-change-pin input{max-width:250px;min-height:43px;font-size:12px}
.v2-parent-small{color:#9496ae;font-size:11px;line-height:1.6;margin-top:13px}
/* AUDIO MODAL */
.v2-modal-scrim{position:fixed;inset:0;background:#23204467;z-index:80}
.v2-audio-popup{position:fixed;z-index:90;right:28px;top:86px;width:min(410px,calc(100% - 24px));border-radius:21px;background:#fff;box-shadow:0 20px 80px #1f184562;padding:22px}
.v2-audio-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.v2-audio-head h3{font-size:20px;margin:0}
.v2-audio-popup>p{font-size:12px;color:#8e8fa7;line-height:1.6}
.v2-audio-popup>small{font-size:10px;color:#a0a0b7;display:block;margin-top:11px;line-height:1.6}
.v2-volume{font-size:12px;font-weight:900;color:#737596;display:flex;justify-content:space-between;margin-top:20px}
.v2-audio-popup input[type=range]{width:100%;accent-color:#6859e8;cursor:pointer}
/* RESPONSIVE */
@media(max-width:1250px){
 .v2-shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .v2-stages{grid-template-columns:repeat(5,minmax(0,1fr))}
 .v2-game-grid{gap:12px}
 .v2-game-body{padding:15px}
 .v2-game-body h3{font-size:18px}
 .v2-report-games{grid-template-columns:1fr}
}
@media(max-width:1010px){
 .v2-game-grid{grid-template-columns:1fr 1fr}
 .v2-game-card:last-child{grid-column:span 2}
 .v2-play-grid{grid-template-columns:1fr}
 .v2-scene{height:305px}
 .v2-journey-skills{grid-template-columns:1fr}
 .v2-badges{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:850px){
 .v2-game-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .v2-game-card:last-child{grid-column:auto}
 .v2-world-list{gap:11px}
 .v2-shop-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media(max-width:730px){
 .v2-game-grid{grid-template-columns:1fr 1fr}
 .v2-game-card:last-child{grid-column:span 2}
 .v2-home-row{grid-template-columns:1fr}
 .v2-shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .v2-badges{grid-template-columns:repeat(2,minmax(0,1fr))}
 .v2-stage-launch{flex-wrap:wrap}
 .v2-stage-launch .btn{width:100%}
 .v2-parent-bar{align-items:stretch;flex-direction:column}
 .v2-parent-controls{flex-wrap:wrap}
}
@media(max-width:660px){
 .topbar-right .topbar-coin{padding:7px 8px;font-size:14px}
 .topbar-coin b{font-size:12px}
 .app-topbar .icon-button{width:36px;height:36px;border-radius:11px}
 .v2-game-grid{grid-template-columns:1fr;gap:14px}
 .v2-game-card:last-child{grid-column:auto}
 .v2-game-art{height:165px}
 .v2-game-body{padding:15px 18px}
 .v2-game-body p{min-height:0;margin-bottom:12px}
 .v2-world-top{align-items:start}
 .v2-world-top h1{font-size:29px}
 .v2-world-top p{font-size:11px}
 .v2-world-progress{padding:12px}
 .v2-world-progress strong{font-size:22px}
 .v2-world-progress span{font-size:8px}
 .v2-mode-tabs{gap:5px;margin:10px 0 17px}
 .v2-mode-tab{padding:9px 10px;font-size:11px}
 .v2-world-header{padding:11px 12px;gap:10px}
 .v2-world-emoji{width:48px;height:48px;border-radius:13px;font-size:28px}
 .v2-world-header h2{font-size:17px}
 .v2-world-header p{font-size:10px}
 .v2-world-overline{font-size:8px}
 .v2-world-count{font-size:14px}
 .v2-world-count small{font-size:8px}
 .v2-stages{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding:12px}
 .v2-stage{min-height:56px;border-radius:11px}
 .v2-stage-number{font-size:19px}
 .v2-stage small{font-size:8px}
 .v2-stage-passed small{font-size:10px}
 .v2-stage-launch{padding:16px;gap:11px}
 .v2-launch-emoji{width:54px;height:54px;font-size:33px}
 .v2-stage-launch h2{font-size:17px}
 .v2-stage-launch>div:nth-child(2)>span{font-size:8px}
 .v2-back-row>span{font-size:9px}
 .v2-hud{display:grid;grid-template-columns:1fr auto;gap:10px;padding:11px 13px;border-radius:14px;margin-bottom:12px}
 .v2-hud-who>span{height:39px;width:39px;font-size:24px}
 .v2-hud-who b{font-size:12px}
 .v2-hud-scores{gap:10px}
 .v2-hud-scores>span{font-size:13px}
 .v2-hud-scores b{font-size:17px}
 .v2-hud-scores small{display:none}
 .v2-hud-progress{grid-row:2;grid-column:1/3;max-width:none}
 .v2-play-grid{gap:11px}
 .v2-scene{height:242px;border-radius:17px}
 .v2-race-cloud{font-size:33px}
 .v2-race-sun{font-size:36px}
 .v2-player-car,.v2-rival-car{width:95px}
 .v2-rocket-fly{height:115px;width:70px}
 .v2-planet{font-size:56px}
 .v2-island-palm{font-size:67px}
 .v2-chest{font-size:43px}
 .v2-treasure-player{width:42px;height:42px;font-size:29px}
 .v2-rocket-meter{font-size:17px;bottom:43px}
 .v2-scene-footer{font-size:9px}
 .v2-question{padding:19px 15px;border-radius:18px;min-height:0}
 .v2-question-top{padding-bottom:11px}
 .v2-word-clue>span{width:58px;height:58px;font-size:36px}
 .v2-word-clue b{font-size:13px}
 .v2-math-prompt{font-size:clamp(32px,9vw,47px);min-height:52px}
 .v2-math-prompt.is-story{font-size:22px}
 .v2-bible-prompt{font-size:22px;min-height:50px}
 .v2-book-emoji{font-size:36px}
 .v2-word-slot{height:65px;width:min(16vw,62px);font-size:30px}
 .v2-option{min-height:65px;padding:11px;gap:7px}
 .v2-option b{font-size:15px}
 .v2-result-card{padding:24px 15px;border-radius:19px}
 .v2-result-icon{font-size:62px}
 .v2-result-stars{font-size:55px}
 .v2-result-metrics{gap:5px}
 .v2-result-metrics .mini-stat{flex-direction:column;padding:12px 4px;gap:3px}
 .v2-result-metrics .mini-stat strong{font-size:20px}
 .v2-result-metrics .mini-stat small{font-size:9px}
 .v2-result-actions{flex-direction:column}
 .v2-result-actions .btn{width:100%}
 .v2-page-banner{padding:25px 17px;gap:8px}
 .v2-page-banner h1{font-size:27px}
 .v2-page-banner p{font-size:11px}
 .v2-banner-side{min-width:75px;font-size:25px;padding:12px 5px}
 .v2-banner-side b{font-size:22px}
 .v2-banner-side small{font-size:8px}
 .v2-banner-avatar,.v2-banner-art{font-size:67px}
 .v2-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .v2-shop-art{height:116px}
 .v2-skill-card{padding:13px}
 .v2-badge{padding:13px 7px}
 .v2-badge h3{font-size:12px}
 .v2-badge>div{font-size:35px;width:52px;height:52px}
 .v2-leader-head,.v2-leader-row{grid-template-columns:42px minmax(0,1.8fr) 44px 62px;gap:5px;padding:10px 9px}
 .v2-leader-head{font-size:9px}
 .v2-leader-row>span:nth-child(2){gap:4px}
 .v2-leader-row b{font-size:11px}
 .v2-leader-row>strong{font-size:12px}
 .v2-leader-row i{display:none}
 .v2-parent-gate{margin:10px auto;padding:22px 17px}
 .v2-parent-gate h1{font-size:28px}
 .v2-parent-hero{flex-direction:column}
 .v2-parent-hero h1{font-size:27px}
 .v2-child-report{padding:13px}
 .v2-child-avatar{width:50px;height:50px;font-size:28px}
 .v2-child-header h3{font-size:15px}
 .v2-child-accuracy b{font-size:19px}
 .v2-parent-settings{padding:14px}
 .v2-audio-popup{right:12px;top:75px}
}
@media(max-width:380px){
 .topbar-star{padding:5px 6px}
 .topbar-coin{gap:2px}
 .v2-stages{gap:5px;padding:10px}
 .v2-stage{min-height:50px}
 .v2-stage-number{font-size:16px}
 .v2-world-count{display:none}
 .v2-word-slots{gap:5px}
 .v2-word-slot{width:min(17vw,51px);height:58px}
 .v2-page-banner{padding:20px 13px}
 .v2-page-banner h1{font-size:24px}
}
@media(prefers-reduced-motion:reduce){.v2-scene *,.v2-progress>div,.v2-stage,.v2-game-card{animation:none!important;transition:none!important}}

/* Keep titles legible even when a child chooses a long nickname. */
.topbar-left>div:last-child{min-width:0}
@media(max-width:660px){.topbar-left{flex:1;min-width:0}.topbar-left>div:last-child{min-width:0;max-width:100%}.topbar-heading{max-width:none;font-size:14px}.topbar-greeting{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
