
:root{
  --bg:#070914;--bg2:#121931;--panel:rgba(255,255,255,.075);--panel2:rgba(255,255,255,.045);
  --line:rgba(255,255,255,.13);--text:#f6f7ff;--muted:#a9b0c8;--accent:#9da7ff;--accent2:#6f7cff;
  --danger:#ff7f92;--ok:#85e5bb;--gold:#ffd786;--shadow:0 28px 80px rgba(0,0,0,.36);
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Yu Gothic UI","Noto Sans",sans-serif}body{overflow-x:hidden}
body:before{content:"";position:fixed;inset:-20%;z-index:-3;background:radial-gradient(circle at 15% 15%,rgba(113,94,255,.22),transparent 28%),radial-gradient(circle at 85% 70%,rgba(27,207,255,.12),transparent 25%),linear-gradient(145deg,var(--bg2),var(--bg) 60%);animation:bgFloat 15s ease-in-out infinite alternate}
body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:999;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.5),transparent 80%)}
@keyframes bgFloat{to{transform:translate3d(2%,-1%,0) scale(1.03)}}
button,select,input{font:inherit}button{color:inherit}.hidden{display:none!important}.noSelect{user-select:none}.app{width:min(1180px,100%);margin:auto;padding:16px 16px 48px}.screen{min-height:calc(100vh - 32px)}
.glass{background:var(--panel);border:1px solid var(--line);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:var(--shadow)}
.pill{border:1px solid var(--line);background:var(--panel2);padding:8px 12px;border-radius:999px;color:var(--muted)}
.btn{border:1px solid var(--line);background:var(--panel);border-radius:15px;padding:12px 16px;cursor:pointer;transition:.2s ease}.btn:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.26);background:rgba(255,255,255,.11)}
.btn.primary{border:0;color:#101222;font-weight:800;background:linear-gradient(135deg,var(--accent),#d6d9ff);box-shadow:0 12px 35px rgba(130,140,255,.25)}.btn.danger{border-color:rgba(255,127,146,.4)}
.iconBtn{width:42px;height:42px;border-radius:13px;border:1px solid var(--line);background:var(--panel2);display:grid;place-items:center;cursor:pointer}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.brand{letter-spacing:.25em;font-size:12px;color:var(--muted)}.topActions{display:flex;gap:8px;align-items:center}.stats{display:flex;gap:8px;flex-wrap:wrap}.stat{font-size:12px}.stat b{color:var(--text);font-weight:800}
.hero{min-height:calc(100vh - 70px);display:grid;grid-template-columns:1.05fr .95fr;gap:26px;align-items:center}.hero h1{font-size:clamp(46px,7vw,86px);line-height:.98;margin:10px 0 18px;letter-spacing:-.045em}.hero .lead{color:var(--muted);font-size:17px;line-height:1.85;max-width:650px}.eyebrow{color:var(--accent);font-size:13px;letter-spacing:.16em;text-transform:uppercase}
.onboard{border-radius:28px;padding:22px}.fieldLabel{font-size:12px;color:var(--muted);margin:18px 0 9px}.choices{display:flex;gap:8px;flex-wrap:wrap}.choice{border:1px solid var(--line);background:rgba(255,255,255,.045);padding:10px 13px;border-radius:999px;cursor:pointer;transition:.2s}.choice:hover,.choice.active{border-color:var(--accent);box-shadow:0 0 0 3px rgba(157,167,255,.08),0 0 26px rgba(157,167,255,.15);transform:translateY(-1px)}.languageGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.languageGrid button{padding:10px 8px;border-radius:13px;border:1px solid var(--line);background:var(--panel2);cursor:pointer}.languageGrid button.active{border-color:var(--accent);background:rgba(157,167,255,.12)}
.doorWrap{position:relative;min-height:560px;display:grid;place-items:center}.halo{position:absolute;width:390px;height:390px;border-radius:50%;background:radial-gradient(circle,rgba(154,165,255,.24),transparent 65%);filter:blur(10px);animation:pulse 3s ease-in-out infinite}.door{position:relative;width:min(320px,76vw);height:470px;border-radius:160px 160px 20px 20px;background:linear-gradient(165deg,rgba(255,255,255,.12),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 0 50px rgba(255,255,255,.04),0 40px 100px rgba(0,0,0,.48);overflow:hidden}.door:before{content:"";position:absolute;inset:18px;border-radius:145px 145px 16px 16px;border:1px solid rgba(255,255,255,.08)}.sigil{position:absolute;inset:0;display:grid;place-items:center;font-size:78px;text-shadow:0 0 35px var(--accent);animation:sigilBreath 2.4s ease-in-out infinite}.doorHint{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);white-space:nowrap;color:var(--muted);font-size:12px}.spark{position:absolute;width:3px;height:3px;background:white;border-radius:50%;box-shadow:0 0 12px white;opacity:.45;animation:rise 5s linear infinite}.spark.s2{left:25%;animation-delay:1.2s}.spark.s3{left:75%;animation-delay:2.6s}.spark.s4{left:58%;animation-delay:3.8s}@keyframes rise{from{bottom:-5%;transform:translateX(0)}to{bottom:105%;transform:translateX(25px)}}@keyframes pulse{50%{transform:scale(1.08);opacity:.75}}@keyframes sigilBreath{50%{transform:scale(1.05);opacity:.72}}
.hubGrid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.7fr);gap:18px}.storyPanel{border-radius:26px;padding:22px;min-height:185px;position:relative;overflow:hidden}.storyPanel:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-75px;top:-90px;background:radial-gradient(circle,rgba(157,167,255,.25),transparent 68%)}.chapter{font-size:12px;letter-spacing:.15em;color:var(--accent)}.storyPanel h2{font-size:32px;margin:8px 0}.storyPanel p{color:var(--muted);line-height:1.7;max-width:700px}.companion{border-radius:26px;padding:18px;display:flex;gap:14px;align-items:center}.orb{width:58px;height:58px;flex:0 0 auto;border-radius:50%;position:relative;background:radial-gradient(circle at 34% 28%,#fff 0 8%,var(--accent) 18%,rgba(157,167,255,.15) 60%,transparent 70%);box-shadow:0 0 40px rgba(157,167,255,.34);animation:orbFloat 2.7s ease-in-out infinite}.orb:after{content:"";position:absolute;inset:15px;border:1px solid rgba(255,255,255,.5);border-radius:50%}.companionText{line-height:1.65;color:#e9ebff}.companionText small{display:block;margin-top:5px;color:var(--muted)}@keyframes orbFloat{50%{transform:translateY(-5px) rotate(4deg)}}
.sectionHead{display:flex;justify-content:space-between;align-items:end;margin:24px 0 12px}.sectionHead h3{font-size:21px;margin:0}.sectionHead p{margin:0;color:var(--muted);font-size:13px}.challengeGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.challenge{position:relative;overflow:hidden;min-height:185px;border-radius:22px;padding:17px;cursor:pointer;transition:.2s ease}.challenge:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.24)}.challenge .emoji{font-size:34px}.challenge h4{margin:14px 0 6px;font-size:18px}.challenge p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.challenge .tag{position:absolute;right:12px;top:12px;font-size:10px;padding:5px 8px;border-radius:99px;background:rgba(0,0,0,.25);color:var(--muted)}.challenge .miniBar{height:4px;background:rgba(255,255,255,.08);border-radius:99px;margin-top:16px;overflow:hidden}.challenge .miniBar i{display:block;height:100%;background:var(--accent);width:18%}.challenge.locked{opacity:.7}.challenge.master{background:linear-gradient(145deg,rgba(255,215,134,.08),rgba(255,255,255,.045));border-color:rgba(255,215,134,.24)}
.sideCard{border-radius:23px;padding:17px;margin-bottom:12px}.sideCard h4{margin:0 0 12px}.skillRow{display:flex;gap:8px;flex-wrap:wrap}.skill{padding:7px 9px;border-radius:999px;font-size:11px;color:#6f768e;border:1px solid rgba(255,255,255,.06)}.skill.on{color:var(--text);border-color:rgba(157,167,255,.55);box-shadow:0 0 18px rgba(157,167,255,.1)}.meter{height:7px;background:rgba(255,255,255,.07);border-radius:99px;overflow:hidden;margin-top:8px}.meter i{display:block;height:100%;width:35%;background:linear-gradient(90deg,var(--accent2),var(--accent));border-radius:99px}.small{font-size:12px;color:var(--muted);line-height:1.55}.daily{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.daily div{padding:9px 6px;text-align:center;background:rgba(255,255,255,.035);border-radius:12px;color:var(--muted);font-size:11px}.daily div.on{color:var(--text);border:1px solid rgba(157,167,255,.28)}
.hopePanel{margin-top:14px;border-radius:24px;padding:18px;position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(157,167,255,.11),rgba(255,215,134,.055));border-color:rgba(157,167,255,.2)}
.hopePanel:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-60px;bottom:-90px;background:radial-gradient(circle,rgba(157,167,255,.25),transparent 70%);pointer-events:none}.hopeTop{display:flex;justify-content:space-between;gap:14px;align-items:center}.hopeTop h3{margin:0 0 4px;font-size:20px}.hopeTop p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.hopeStats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.hopeStat{padding:11px;background:rgba(0,0,0,.15);border:1px solid rgba(255,255,255,.07);border-radius:14px}.hopeStat b{display:block;font-size:18px;margin-bottom:3px}.hopeStat span{font-size:11px;color:var(--muted);line-height:1.45}.hopeFoot{margin-top:10px;font-size:11px;color:var(--muted);line-height:1.55}.journeyBadge{display:inline-flex;align-items:center;gap:7px;margin-top:8px;padding:6px 9px;border-radius:999px;background:rgba(157,167,255,.1);border:1px solid rgba(157,167,255,.2);font-size:11px;color:#dfe2ff}.journeyBadge i{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}.nextDoor{margin:14px auto 0;padding:10px 12px;max-width:360px;border-radius:14px;background:rgba(255,255,255,.045);font-size:12px;color:var(--muted)}.checkpoint{text-align:center}.checkpoint .ring{width:92px;height:92px;margin:4px auto 14px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--accent) 0 86%,rgba(255,255,255,.08) 86%);box-shadow:0 0 38px rgba(157,167,255,.2)}.checkpoint .ring:before{content:"";position:absolute}.checkpoint .ring span{width:70px;height:70px;border-radius:50%;background:var(--bg2);display:grid;place-items:center;font-size:24px;font-weight:800}.checkpointStats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.checkpointStats div{padding:11px;border-radius:13px;background:rgba(255,255,255,.045)}.checkpointStats b{display:block;font-size:17px}.checkpointStats small{color:var(--muted)}.btn.secondary{background:rgba(255,255,255,.045)}

.overlay{position:fixed;inset:0;z-index:50;background:rgba(3,5,11,.86);backdrop-filter:blur(17px);-webkit-backdrop-filter:blur(17px);display:grid;place-items:center;padding:18px}.modal{width:min(760px,96vw);max-height:92vh;overflow:auto;border-radius:28px;padding:22px}.modal.large{width:min(1000px,97vw)}.modalHead{display:flex;justify-content:space-between;align-items:start;gap:16px}.modalHead h2{margin:6px 0 5px;font-size:28px}.modalHead p{margin:0;color:var(--muted)}.gameArea{margin-top:20px}.countdown{text-align:center;font-size:13px;color:var(--muted);margin:10px 0}.timebar{height:5px;background:rgba(255,255,255,.08);border-radius:99px;overflow:hidden}.timebar i{display:block;height:100%;width:100%;background:var(--accent);transition:width .08s linear}
.maze{display:grid;gap:5px;width:min(600px,88vw);aspect-ratio:1;margin:16px auto}.cell{border-radius:8px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.035);position:relative;transition:.12s}.cell.path.preview{background:rgba(133,229,187,.48)}.cell.trap.preview{background:rgba(255,127,146,.5)}.cell.goal:after{content:"✦";position:absolute;inset:0;display:grid;place-items:center;font-size:18px}.cell.player:before{content:"●";position:absolute;inset:0;display:grid;place-items:center;color:#fff;text-shadow:0 0 10px #fff;z-index:2}.cell.live{cursor:pointer}.cell.live:hover{background:rgba(255,255,255,.12)}
.gridFlash{display:grid;gap:7px;width:min(500px,86vw);margin:18px auto}.tile{aspect-ratio:1;border-radius:10px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.05);cursor:pointer;transition:.12s}.tile.lit{background:var(--accent);box-shadow:0 0 18px rgba(157,167,255,.28)}.tile.selected{background:rgba(133,229,187,.64)}.tile.wrong{background:rgba(255,127,146,.65)}
.objectGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;width:min(590px,90vw);margin:18px auto}.obj{aspect-ratio:1;border-radius:18px;background:rgba(255,255,255,.055);border:1px solid var(--line);display:grid;place-items:center;font-size:40px;cursor:pointer;position:relative}.obj small{position:absolute;bottom:5px;font-size:9px;color:var(--muted)}.obj:hover{transform:scale(1.02)}
.echoGrid{display:grid;grid-template-columns:repeat(2,140px);gap:12px;justify-content:center;margin:28px auto}.echoBtn{height:140px;border-radius:25px;border:1px solid var(--line);background:rgba(255,255,255,.055);cursor:pointer;font-size:35px}.echoBtn.flash{background:var(--accent);box-shadow:0 0 38px rgba(157,167,255,.35);transform:scale(.97)}
.palace{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:700px;margin:15px auto}.locus{min-height:128px;border-radius:20px;background:rgba(255,255,255,.045);border:1px solid var(--line);padding:10px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer}.locus .place{color:var(--muted);font-size:11px}.locus .item{font-size:37px;text-align:center}.locus.answer:hover{border-color:var(--accent)}
.codeBox{text-align:center;padding:35px 12px}.code{font-size:clamp(36px,8vw,72px);font-weight:800;letter-spacing:.12em;font-variant-numeric:tabular-nums}.code .group{display:inline-block;margin:0 .09em;padding:.03em .09em;border-radius:10px;background:rgba(157,167,255,.08)}.codeInput{display:flex;justify-content:center;gap:8px;margin:18px 0}.codeInput input{width:min(520px,90vw);padding:14px;border-radius:14px;background:rgba(0,0,0,.22);border:1px solid var(--line);color:var(--text);text-align:center;font-size:24px;letter-spacing:.12em;outline:none}.codeInput input:focus{border-color:var(--accent)}
.detectiveScene{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.suspect{border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.045);padding:13px;text-align:center}.suspect .face{font-size:42px}.suspect ul{list-style:none;margin:8px 0 0;padding:0;color:var(--muted);font-size:11px;line-height:1.55}.answerGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:14px}.answerBtn{border:1px solid var(--line);background:rgba(255,255,255,.05);border-radius:14px;padding:12px;cursor:pointer}.answerBtn:hover{border-color:var(--accent)}
.reward{text-align:center}.reward .big{font-size:72px;filter:drop-shadow(0 0 20px rgba(157,167,255,.35));animation:rewardPop .35s cubic-bezier(.2,.8,.2,1)}.reward h2{font-size:30px;margin:5px 0}.reward p{color:var(--muted);line-height:1.7}.confetti{position:fixed;inset:0;pointer-events:none;overflow:hidden}.confetti i{position:absolute;top:-20px;width:6px;height:12px;background:var(--accent);animation:fall 1.9s linear forwards}@keyframes fall{to{transform:translateY(110vh) rotate(540deg);opacity:.2}}@keyframes rewardPop{from{transform:scale(.7);opacity:0}}
.settingsGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.setting{padding:13px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid var(--line)}.setting label{display:block;color:var(--muted);font-size:11px;margin-bottom:7px}.setting select{width:100%;background:#151a2d;color:var(--text);border:1px solid var(--line);border-radius:10px;padding:9px}.methodGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:14px}.method{border:1px solid var(--line);border-radius:16px;padding:12px;background:rgba(255,255,255,.035)}.method b{font-size:13px}.method p{font-size:11px;color:var(--muted);line-height:1.5;margin:6px 0 0}.devNote{border-left:3px solid var(--gold);padding:10px 12px;background:rgba(255,215,134,.06);color:#e9dfc6;font-size:12px;line-height:1.6;margin-top:12px}
.toast{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);z-index:100;background:rgba(10,13,25,.92);border:1px solid var(--line);box-shadow:var(--shadow);padding:10px 14px;border-radius:999px;color:#e9ebff;font-size:12px;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,-8px)}
@media(max-width:900px){.hero{grid-template-columns:1fr}.doorWrap{min-height:390px}.door{height:360px;width:240px}.challengeGrid{grid-template-columns:repeat(2,1fr)}.hubGrid{grid-template-columns:1fr}.detectiveScene{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.app{padding:10px 10px 36px}.hero h1{font-size:47px}.onboard{padding:16px}.languageGrid{grid-template-columns:repeat(2,1fr)}.challengeGrid{grid-template-columns:1fr}.challenge{min-height:155px}.stats .stat:nth-child(3){display:none}.storyPanel h2{font-size:26px}.objectGrid{grid-template-columns:repeat(4,1fr)}.obj{font-size:31px}.echoGrid{grid-template-columns:repeat(2,110px)}.echoBtn{height:110px}.palace{grid-template-columns:repeat(2,1fr)}.detectiveScene{grid-template-columns:repeat(2,1fr)}.settingsGrid,.methodGrid{grid-template-columns:1fr}.modal{padding:16px}.daily{grid-template-columns:repeat(2,1fr)}.hopeTop{align-items:flex-start;flex-direction:column}.hopeStats{grid-template-columns:1fr}.checkpointStats{grid-template-columns:1fr 1fr 1fr}}

/* commercial candidate v3 */
.commercialBadge{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid rgba(133,229,187,.24);background:rgba(133,229,187,.07);border-radius:999px;font-size:10px;color:#bfead8;letter-spacing:.08em}
.todayCard{margin-top:14px;border-radius:24px;padding:18px;background:linear-gradient(135deg,rgba(133,229,187,.08),rgba(157,167,255,.07));border:1px solid rgba(133,229,187,.18)}
.todayTop{display:flex;align-items:center;justify-content:space-between;gap:12px}.todayTop h3{margin:0 0 5px}.todayTop p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}
.todayStats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:13px}.todayStat{padding:10px;border-radius:13px;border:1px solid rgba(255,255,255,.07);background:rgba(0,0,0,.13)}.todayStat b{display:block;font-size:16px}.todayStat span{font-size:10px;color:var(--muted)}
.journeyRail{display:flex;gap:5px;margin-top:12px}.journeyRail i{height:5px;flex:1;border-radius:99px;background:rgba(255,255,255,.075)}.journeyRail i.on{background:var(--accent);box-shadow:0 0 12px rgba(157,167,255,.35)}
.threat{display:inline-flex;gap:6px;align-items:center;color:#ffc1ca;font-size:11px;padding:5px 8px;border-radius:99px;background:rgba(255,127,146,.08);border:1px solid rgba(255,127,146,.18)}
.patrolGrid,.floorGrid{display:grid;gap:7px;width:min(88vw,520px);margin:20px auto}.patrolCell,.floorCell{aspect-ratio:1;border-radius:11px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.07);display:grid;place-items:center;font-size:20px;transition:.12s}.floorCell.previewSafe{background:rgba(133,229,187,.32);box-shadow:0 0 15px rgba(133,229,187,.15)}.floorCell.live{cursor:pointer}.floorCell.player{outline:2px solid white;box-shadow:0 0 20px rgba(255,255,255,.26)}.floorCell.failTile{background:rgba(255,127,146,.55)}
.patrolScene{padding:18px;border-radius:20px;background:rgba(0,0,0,.16);border:1px solid var(--line)}.patrolRow{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.patrolLane{height:80px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.04);display:grid;place-items:center;font-size:31px;position:relative}.patrolLane.guard{background:rgba(255,127,146,.12);box-shadow:inset 0 0 25px rgba(255,127,146,.1)}
.crowd{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:18px auto;max-width:620px}.personCard{padding:13px 8px;border-radius:15px;border:1px solid var(--line);background:rgba(255,255,255,.045);text-align:center}.personCard .face{font-size:36px}.personCard small{display:block;color:var(--muted);margin-top:6px;line-height:1.4}.personCard.choicePerson{cursor:pointer}.personCard.choicePerson:hover{border-color:var(--accent);transform:translateY(-2px)}
.updateStream{display:flex;justify-content:center;align-items:center;min-height:220px}.streamToken{font-size:76px;text-shadow:0 0 28px var(--accent)}
.confidenceRow{display:flex;gap:8px;justify-content:center;margin-top:13px}.confidenceRow button{min-width:90px}
.legalLinks{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.legalBox{font-size:12px;line-height:1.7;color:var(--muted);padding:13px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.03)}
.reducedMotion *, .reducedMotion *:before, .reducedMotion *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
@media(max-width:700px){.todayStats{grid-template-columns:repeat(2,1fr)}.todayTop{align-items:flex-start;flex-direction:column}.crowd{grid-template-columns:repeat(2,1fr)}}


.missionStrip{margin:10px 0 16px;padding:11px 13px;border-radius:14px;background:linear-gradient(135deg,rgba(255,127,146,.10),rgba(157,167,255,.09));border:1px solid rgba(255,255,255,.10);color:#eef0ff;font-size:13px;line-height:1.55}
.openingSymbol{font-size:84px;text-align:center;text-shadow:0 0 40px var(--accent);margin:12px 0 6px;animation:sigilBreath 1.7s ease-in-out infinite}.openingCopy{text-align:center;color:var(--muted);line-height:1.7}.entryHint{margin-top:12px;padding:10px 12px;border-radius:12px;background:rgba(157,167,255,.08);border:1px solid rgba(157,167,255,.16);font-size:12px;color:var(--muted);line-height:1.55}

/* Guided v5: retain v4's glass/lavender world, remove ambiguous tiny instructions. */
html{color-scheme:dark}body{line-height:1.6}button,input,select,textarea{font:inherit}button{touch-action:manipulation}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}select,input,textarea{max-width:100%;background:#1c2135;color:var(--text);border:1px solid var(--line);border-radius:12px;padding:10px 12px}select{cursor:pointer}a{color:var(--accent)}p{overflow-wrap:anywhere}.btn,.choice{min-height:44px}.btn.quiet{background:transparent;border-color:transparent;box-shadow:none;color:var(--muted)}.btn.compact{min-height:38px;padding:6px 10px;font-size:12px}.wide{display:block;width:100%;margin-top:12px}.smallButton{font-size:12px}.centerText{text-align:center}.brandButton{border:0;background:none;color:var(--text);font-weight:800;letter-spacing:.22em;text-align:left;padding:8px 0;cursor:pointer}.brandButton span{display:block;font-size:10px;color:var(--muted);font-weight:400;letter-spacing:.04em;margin-top:2px}.topActions select{min-width:100px;font-size:13px}.topActions .btn{font-size:13px}.v5Hero{min-height:700px;gap:44px;align-items:start;padding-top:26px}.v5Hero h1{font-size:clamp(38px,4.6vw,67px);line-height:1.14;font-weight:760}.v5Hero .onboard{padding:22px}.v5Hero .fieldLabel{margin-top:13px}.v5Hero .small{font-size:12px}.v5Hero .choice{padding:8px 12px}.heroLeft{position:relative}.littleWorld{height:245px;position:relative;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 80%,rgba(166,172,255,.2),transparent 65%);overflow:hidden;margin:12px auto}.worldDoor{width:136px;height:193px;border-radius:80px 80px 14px 14px;border:2px solid var(--accent);box-shadow:0 0 60px #9da7ff22,inset 0 0 25px #9da7ff22;display:grid;place-items:center;position:relative}.worldDoor:before{content:'';inset:10px;border:1px solid var(--line);border-radius:80px 80px 10px 10px;position:absolute}.worldDoor span{font-size:76px;filter:drop-shadow(0 8px 20px #0006);animation:orbFloat 3s ease-in-out infinite}.worldMoon{position:absolute;right:20%;top:8px;color:var(--gold);font-size:48px;transform:rotate(-20deg)}.worldGrass{position:absolute;bottom:9px;letter-spacing:32px;color:var(--accent);font-size:19px}.voiceIntro{display:grid;gap:8px;margin-top:18px}.voiceIntro .small{padding:0 2px}.guideBuddy{display:flex;align-items:center;gap:15px;padding:16px 18px;border:1px solid var(--line);border-radius:21px;background:linear-gradient(135deg,rgba(157,167,255,.11),rgba(255,255,255,.035));margin:14px 0}.guideBuddy p{margin:0;font-size:15px;line-height:1.65}.buddyAvatar{position:relative;flex-shrink:0;display:grid;place-items:center;width:62px;height:62px;border-radius:20px;background:rgba(255,255,255,.07);font-size:40px}.buddyAvatar i{position:absolute;right:-3px;top:-7px;font-style:normal;color:var(--gold);font-size:19px;animation:sigilBreath 2s ease-in-out infinite}.buddyName{color:var(--accent);font-size:10px;letter-spacing:.18em;margin-bottom:2px}.homeActions{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin:14px 0}.storyPanel h2{font-size:29px;line-height:1.32}.storyPanel:after{pointer-events:none}.todayCaption{padding-top:10px}.sectionHead{gap:16px}.sectionHead h1{font-size:36px;line-height:1.25}.sectionHead .small{max-width:50%;text-align:right}.challenge{text-align:left;width:100%;font:inherit}.challenge h4{line-height:1.3}.challenge p{font-size:13px}.constellation{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;color:#505575;opacity:.9}.constellation .on{color:var(--gold);text-shadow:0 0 15px #ffd78666}.starTotal{font-size:36px;margin:4px 0 12px;color:var(--gold)}.bigNumber{font-size:32px}.hubGrid aside .guideBuddy{margin-top:0}.hubGrid aside .homeActions .btn{font-size:12px}.modal{border:1px solid var(--line);padding:24px;scrollbar-width:thin;max-height:94dvh;overscroll-behavior:contain;outline:none!important}.modal.large{width:min(880px,97vw)}.modalHead h2{line-height:1.25;font-size:30px}.modalHead p{font-size:13px}.modalTools{display:flex;align-items:center;gap:8px}.modalTools select{font-size:12px;padding:8px;max-width:115px;min-height:40px}.modalTools .iconBtn{flex-shrink:0}.sceneRibbon{display:inline-block;font-size:11px;letter-spacing:.05em;color:var(--accent);padding:6px 11px;border:1px solid var(--line);border-radius:20px;margin-top:12px}.guideSteps{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-top:15px}.guideSteps>div{background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:17px;padding:13px 14px}.guideSteps span{display:inline-grid;place-items:center;border-radius:50%;width:25px;height:25px;background:var(--accent);color:var(--bg);font-size:12px;font-weight:bold;margin-right:8px}.guideSteps b{font-size:14px}.guideSteps p{font-size:14px;color:var(--muted);line-height:1.65;margin:9px 0 0}.demoPreview{display:flex;align-items:center;justify-content:center;gap:20px;background:rgba(0,0,0,.12);border-radius:20px;margin:16px 0 10px;padding:16px}.demoPreview>span{font-size:36px}.demoPreview>i{color:var(--accent);font-style:normal}.previewLocus{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5px 12px;font-size:30px;min-width:110px}.previewLocus b{font-size:13px;color:var(--muted);grid-column:1 / -1;grid-row:2;text-align:center;max-width:250px}.previewLocus span{font-size:32px}.guideActions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:18px}.guideActions .primary{min-width:190px}.assistLabel{font-size:12px;text-align:center;color:var(--gold);padding:8px;border-radius:12px;background:#ffd7860c}.phaseRail{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:16px 0}.phaseRail span{font-size:12px;color:var(--muted);border-bottom:3px solid rgba(255,255,255,.09);padding-bottom:6px;text-align:center}.phaseRail span.active{color:var(--text);border-color:var(--accent)}.instructionCard{display:flex;gap:12px;align-items:center;background:linear-gradient(100deg,rgba(157,167,255,.13),rgba(255,255,255,.03));border:1px solid rgba(157,167,255,.3);border-radius:18px;padding:13px 16px}.instructionIcon{font-size:32px;flex-shrink:0}.instructionCard p{font-size:17px;line-height:1.6;margin:0;color:var(--text);font-weight:500}.roundToolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px}.roundToolbar>div{display:flex;gap:7px}.clockLine{display:flex;align-items:center;gap:12px;margin:10px 0 16px;min-height:20px}.clockLine .timebar{flex:1}.clockLine>span{min-width:65px;text-align:right}.timebar i{transition:none}.gameArea{margin-top:10px}.safePreview{background:rgba(133,229,187,.32)!important;border-color:#85e5bb77!important;color:#ddfff0}.maze{width:min(520px,100%);gap:6px}.cell{aspect-ratio:1;min-height:0;font-size:clamp(15px,2vw,24px);color:var(--text);cursor:pointer}.cell.traveller{border:2px solid var(--text);background:rgba(255,255,255,.12);text-shadow:0 0 16px white}.cell.exitTile{color:var(--gold);border-color:var(--gold)}.river{background:linear-gradient(180deg,#123b5544,#1c576b66);border-radius:24px;padding:8px 20px 18px;max-width:510px;margin:auto;position:relative}.riverExit{text-align:center;color:var(--gold);font-size:24px}.riverRow{display:grid;grid-template-columns:24px repeat(3,1fr);gap:12px;padding:5px 8px;align-items:center;border:1px solid transparent;border-radius:16px}.riverRow>b{font-size:11px;color:var(--muted)}.riverRow.currentRow{border-color:var(--accent);background:#9da7ff14}.riverStone{height:45px;border-radius:40%;border:1px solid var(--line);background:#464d604d;color:var(--text);cursor:pointer}.scenicPalace{max-width:690px;gap:12px}.scenicPalace .locus{min-height:146px;padding:12px;background:linear-gradient(140deg,rgba(255,255,255,.065),rgba(157,167,255,.06));box-shadow:inset 0 -20px 30px #0001}.scenicPalace .place{display:flex;align-items:center;gap:9px;font-size:14px}.scenicPalace .place>span{font-size:23px}.scenicPalace .place b{font-weight:500;color:var(--text)}.scenicPalace .locus .item{font-size:46px;line-height:1.2;margin:7px 0}.scenicPalace .locus small{font-size:12px;color:var(--muted);text-align:center}.questionObject{text-align:center;font-size:58px;line-height:1.2;margin:15px 0 6px}.correctChoice{outline:2px solid var(--ok);background:#85e5bb22!important}.incorrectChoice{outline:2px solid var(--danger)}.feedbackLine{text-align:center;border-radius:13px;background:#b4e9c314;padding:11px;color:var(--text)}.objectGrid{width:min(590px,100%);gap:9px}.obj{color:var(--text);padding:12px 4px 27px;min-width:0}.obj:disabled:hover{transform:none}.obj small{font-size:11px;bottom:7px;max-width:95%;line-height:1.2}.remainingObjects{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;max-width:600px;margin:12px auto;padding:14px;border:1px dashed var(--line);border-radius:16px}.remainingObjects span{font-size:32px}.personChoice{background:none;border:1px solid var(--line);border-radius:18px;color:var(--text);padding:0;cursor:pointer}.personChoice:hover{border-color:var(--accent)}.personChoice .personCard{border:0;background:rgba(255,255,255,.03)}.personCard{padding:12px}.personCard b{font-size:14px}.personCard small{font-size:12px}.personObject{font-size:27px;margin-top:6px}.targetFocus{max-width:220px;margin:22px auto}.targetFocus .face{font-size:65px}.targetFocus .personObject{font-size:42px}.sequenceProgress{text-align:center;color:var(--muted);font-size:13px;padding:10px}.echoBtn{position:relative;color:var(--text)}.echoBtn small{display:block;font-size:12px;color:var(--muted)}.echoBtn.flash small{color:var(--bg)}.patrolLane{width:100%;color:var(--text);margin:8px 0}.patrolLane.free{background:#85e5bb44;color:var(--ok);border-color:var(--ok)}.gridFlash{width:min(470px,100%)}.tile{color:var(--text)}.chosenStrip{text-align:center;background:rgba(255,255,255,.045);border-radius:15px;padding:10px;min-height:68px}.chosenStrip>div{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.chosenStrip span:not(.small){font-size:28px}.wrappedCode{font-size:clamp(25px,5vw,52px);overflow-wrap:anywhere}.codeInput input{width:100%;font-size:22px;letter-spacing:.13em}.storyPair{display:flex;align-items:center;justify-content:center;gap:40px;margin:30px auto;font-size:75px}.storyPair span:first-child{animation:orbFloat 2s infinite}.storyPair i{font-style:normal;color:var(--accent);font-size:32px}.storyCopy{text-align:center;font-size:19px;line-height:1.7;max-width:590px;margin:auto}.claimFace{display:block;font-size:35px;margin-bottom:6px}.answerBtn{font-size:14px;line-height:1.65}.starPause{display:grid;place-items:center;padding:45px}.starButton{border:0;background:none;font-size:110px;color:var(--gold);filter:drop-shadow(0 0 20px #ffd78688);cursor:pointer}.resultScene{height:120px;display:flex;justify-content:center;align-items:center;gap:25px;margin:14px auto}.resultDoor{border:2px solid var(--line);border-radius:80px 80px 10px 10px;height:110px;width:80px;text-align:center;display:grid;place-items:center;font-size:40px;color:var(--muted)}.resultScene.won .resultDoor{border-color:var(--accent);color:var(--gold);box-shadow:0 0 40px #9da7ff33;animation:rewardPop .45s ease-out}.resultBuddy{font-size:67px;animation:orbFloat 3s infinite}.resultNumbers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:15px 0}.resultNumbers>div{padding:12px 8px;text-align:center;background:rgba(255,255,255,.035);border-radius:16px}.resultNumbers b{font-size:19px;display:block}.resultNumbers small{display:block;color:var(--muted);font-size:11px}.answerReview{margin-top:16px;background:rgba(255,255,255,.025);border:1px solid var(--line);border-radius:14px;padding:12px}.answerReview summary{cursor:pointer}.reviewTable{margin-top:12px}.reviewTable>div{display:grid;grid-template-columns:30px 1fr 1fr;gap:9px;font-size:12px;padding:9px 4px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.reviewTable .mismatch{background:#ff7f9210}.reviewTable .mismatch span:last-child{color:var(--danger)}.arenaGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.arenaCard{text-align:left;border:1px solid var(--line);background:var(--panel);border-radius:21px;min-height:122px;padding:18px;color:var(--text);cursor:pointer}.arenaCard.active{border-color:var(--accent);box-shadow:0 0 0 3px #9da7ff14}.arenaCard b{display:block;font-size:16px}.arenaIcon{display:block;font-size:33px;margin-bottom:6px}.arenaConfig{padding:21px;border:1px solid var(--line);background:var(--panel)}.settingsGrid label{display:flex;flex-direction:column;gap:10px;font-size:13px;color:var(--muted)}.settingsGrid label select{width:100%;font-size:15px;color:var(--text)}.selectedDrill{display:flex;gap:16px;align-items:center;padding:10px;color:var(--muted)}.selectedDrill b{font-size:40px;color:var(--accent)}.drillBoard{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:18px 0}.drillTile{min-height:88px;display:flex;align-items:center;justify-content:center;flex-direction:column;position:relative;border:1px solid var(--line);background:rgba(255,255,255,.045);border-radius:14px;padding:20px 8px 10px;overflow-wrap:anywhere;min-width:0}.drillTile small{position:absolute;top:4px;left:8px;color:var(--muted);font-size:10px}.drillTile strong{font-size:16px;text-align:center}.drillTile .drillImage{font-size:38px}.digitBoard{grid-template-columns:repeat(10,1fr);gap:6px}.digitBoard .drillTile{min-height:64px;padding:20px 2px 9px}.digitBoard .drillTile strong{font-size:27px}.playingCard{display:inline-flex;flex-direction:column;justify-content:space-between;align-items:flex-start;width:66px;height:89px;background:#f4f1e8;color:#181923;border-radius:8px;padding:6px 9px;box-shadow:0 3px 9px #0003;line-height:1}.playingCard b{font-size:20px}.playingCard i{font-size:36px;align-self:flex-end;font-style:normal}.playingCard.redSuit{color:#bb2b50}.drillInput{width:100%;font-family:inherit;font-size:24px;letter-spacing:.08em;min-height:145px;resize:vertical;margin:10px 0}.wordInput{font-size:18px;letter-spacing:normal;min-height:280px;line-height:1.75}.nameRecall{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.nameRecall label{display:flex;gap:12px;align-items:center;background:rgba(255,255,255,.03);border-radius:14px;padding:10px}.nameRecall span{font-size:36px}.nameRecall input{width:100%;min-width:0}.drillBank{display:grid;grid-template-columns:repeat(8,1fr);gap:6px;margin:15px 0}.bankCard{padding:4px;border:1px solid var(--line);background:rgba(255,255,255,.02);border-radius:10px;color:var(--text);min-height:60px;cursor:pointer}.bankCard:disabled{opacity:.24}.bankCard .playingCard{width:100%;height:72px;min-width:0;padding:5px}.bankCard .drillImage{font-size:35px}.miniCards>span{background:#fff1;border:1px solid var(--line);border-radius:8px;padding:4px 7px;font-size:20px!important;line-height:1.2}.miniCards small{display:block;color:var(--muted);font-size:9px}.codebookTools{display:flex;gap:14px;align-items:center;margin:22px 0}.codebookGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.codebookGrid label{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:12px;display:flex;flex-direction:column;gap:6px}.codebookGrid b{color:var(--accent);font-size:19px}.codebookGrid input{width:100%;font-size:13px}.codeReviewPrompt{text-align:center;font-size:90px;margin:35px 0 20px}.codeReviewPrompt .playingCard{width:100px;height:140px;margin:auto}.codeReviewPrompt .playingCard b{font-size:30px}.codeReviewPrompt .playingCard i{font-size:58px}.settingsPanel{padding:20px;background:var(--panel);border-radius:23px;border:1px solid var(--line);gap:20px}.voiceStatus{font-size:13px;color:var(--accent)}.planGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.planGrid .sideCard{padding:24px;position:relative;background:var(--panel);border:1px solid var(--line);overflow:hidden}.planGrid h3{max-width:85%;font-size:18px}.planNumber{font-size:42px;color:var(--accent)}.planIcon{font-size:50px;position:absolute;bottom:8px;right:18px;opacity:.65}.comparisonGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.comparisonGrid .sideCard{border:1px solid var(--line);margin:0}.historyList{margin:25px 0;border:1px solid var(--line);border-radius:18px;overflow:hidden}.historyList>div{display:grid;grid-template-columns:1fr 65px 1fr;gap:12px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line);font-size:13px}.historyList span small{display:block;font-size:11px;color:var(--muted)}.historyList>div>span:last-child{font-size:11px;color:var(--muted)}.legalBox{font-size:13px}.largeText{font-size:18px}.largeText .small,.largeText .fieldLabel{font-size:14px}.largeText .instructionCard p,.largeText .guideSteps p{font-size:19px}.largeText .locus .place,.largeText .scenicPalace .locus small{font-size:16px}.kid .littleWorld{background:radial-gradient(ellipse at 50% 80%,#8debba22,transparent 75%)}.kid .worldDoor{background:linear-gradient(#7b88a611,#6da28744)}.kid .guideBuddy{background:linear-gradient(135deg,#92d4b918,rgba(157,167,255,.13))}.kid .buddyAvatar{background:#e3ce921b}.kid .locus{border-radius:25px}.kid .cell{border-radius:12px}.kid .worldGrass{color:#a9e2bf}.toast{max-width:90vw;border-radius:15px;text-align:center;font-size:13px}.modal .brand{font-size:10px}.largeText .modal .brand{font-size:12px}
@media(max-width:900px){.v5Hero{grid-template-columns:1fr;gap:25px;padding-top:12px}.heroLeft{text-align:center}.heroLeft .lead{margin:auto}.littleWorld{height:190px;max-width:400px;margin:10px auto}.worldDoor{height:155px;width:110px}.worldDoor span{font-size:65px}.v5Hero .guideBuddy{text-align:left;max-width:620px;margin:12px auto}.hubGrid aside{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hubGrid aside .guideBuddy{grid-column:1 / -1}.modal.large{width:97vw}}
@media(max-width:600px){.topbar{align-items:center;gap:8px;margin-bottom:12px}.brandButton{font-size:13px;letter-spacing:.17em}.brandButton span{font-size:9px;max-width:155px}.topActions{gap:5px}.topActions select{min-width:78px;max-width:110px;padding:8px;font-size:12px}.topActions .btn{font-size:0;padding:8px;min-width:42px}.topActions .btn:first-letter{font-size:18px}.v5Hero h1{font-size:38px}.v5Hero .lead{font-size:15px;line-height:1.7}.v5Hero .onboard{padding:17px}.guideBuddy{padding:13px;gap:11px}.guideBuddy p{font-size:14px}.buddyAvatar{width:48px;height:48px;font-size:32px;border-radius:15px}.heroLeft .guideBuddy{margin-bottom:0}.modal{padding:16px;max-height:94dvh;border-radius:23px}.overlay{padding:10px}.modalHead{gap:10px}.modalHead h2{font-size:25px}.modalTools{gap:6px}.modalTools select{max-width:89px;font-size:11px;padding:5px}.modalTools .iconBtn{width:36px;height:38px}.guideSteps{grid-template-columns:1fr;gap:7px;margin-top:11px}.guideSteps>div{padding:11px 13px}.guideSteps p{margin:4px 0 0;font-size:14px}.guideSteps span{width:22px;height:22px}.demoPreview{padding:12px;gap:10px;margin:12px 0}.previewLocus b{max-width:125px;font-size:11px}.previewLocus{font-size:26px;min-width:80px}.guideActions{gap:8px}.guideActions .btn{flex:1;font-size:13px;padding:11px 8px;min-width:0}.guideActions .primary{flex-basis:100%;min-width:100%}.roundToolbar{align-items:flex-start}.roundToolbar>div{gap:5px}.roundToolbar .btn{font-size:11px;padding:6px 8px}.instructionCard{padding:12px;gap:9px}.instructionCard p{font-size:15px}.instructionIcon{font-size:25px}.phaseRail{gap:5px}.phaseRail span{font-size:11px}.scenicPalace{grid-template-columns:repeat(2,1fr)}.scenicPalace .locus{min-height:129px;padding:10px}.scenicPalace .place{gap:6px;font-size:13px}.scenicPalace .locus .item{font-size:39px}.objectGrid{grid-template-columns:repeat(3,1fr)}.obj small{font-size:11px}.obj{font-size:34px;min-height:97px}.maze{gap:5px}.river{padding:8px}.riverRow{gap:8px;padding:4px}.riverStone{height:40px}.crowd{grid-template-columns:repeat(2,1fr)}.personCard .face{font-size:36px}.patrolRow{gap:5px}.patrolLane{height:70px}.storyPair{font-size:57px;gap:22px}.storyCopy{font-size:17px}.resultNumbers{gap:6px}.resultNumbers b{font-size:15px}.resultNumbers small{font-size:10px}.arenaGrid{grid-template-columns:repeat(2,1fr);gap:8px}.arenaCard{padding:13px;min-height:105px}.arenaCard b{font-size:14px}.arenaConfig{padding:15px}.arenaConfig .settingsGrid{grid-template-columns:1fr 1fr;gap:12px}.settingsGrid label{font-size:12px}.settingsGrid label select{font-size:13px;padding:8px}.drillBoard{grid-template-columns:repeat(4,1fr);gap:6px}.drillTile{padding:20px 4px 8px}.drillTile strong{font-size:13px}.digitBoard{grid-template-columns:repeat(8,1fr);gap:4px}.digitBoard .drillTile{min-height:58px;border-radius:8px}.digitBoard .drillTile strong{font-size:22px}.playingCard{width:51px;height:74px;padding:6px}.playingCard b{font-size:17px}.playingCard i{font-size:30px}.drillBank{grid-template-columns:repeat(6,1fr);gap:4px}.bankCard{min-height:49px;padding:3px}.bankCard .playingCard{height:61px;padding:4px}.bankCard .playingCard i{font-size:27px}.bankCard .playingCard b{font-size:14px}.bankCard .drillImage{font-size:27px}.nameRecall{grid-template-columns:1fr}.codebookGrid{grid-template-columns:repeat(2,1fr);gap:7px}.codebookGrid label{padding:10px}.codebookGrid input{padding:8px;font-size:12px}.hubGrid aside{grid-template-columns:1fr}.hubGrid .challengeGrid{grid-template-columns:repeat(2,1fr);gap:8px}.challenge{padding:14px;min-height:190px}.challenge h4{font-size:16px;margin:10px 0 5px}.challenge p{font-size:12px}.challenge .tag{font-size:10px}.sectionHead{align-items:start;flex-direction:column;gap:4px}.sectionHead .small{max-width:100%;text-align:left}.planGrid,.comparisonGrid{grid-template-columns:1fr}.historyList>div{grid-template-columns:1fr 45px 1fr;padding:12px;font-size:12px}.resultScene{height:110px}.settingsPanel{gap:17px;padding:17px}.largeText .modalHead h2{font-size:27px}.largeText .guideSteps p,.largeText .instructionCard p{font-size:17px}.codeBox{padding:22px 0}.legalBox{font-size:13px}.answerGrid{grid-template-columns:1fr 1fr}.answerBtn{font-size:13px;padding:10px}.topbar:has(#globalLang){min-height:48px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}} 

body.modalOpen{overflow:hidden}.btn:hover,.choice:hover,.challenge:hover{transform:none}

.demoTarget{outline:3px solid var(--gold)!important;outline-offset:2px;background-color:#ffd7861c!important;box-shadow:0 0 22px #ffd78633!important}.demoHint{padding:12px;text-align:center;border-radius:14px;border:1px solid #ffd78644;background:#ffd7860d;color:#fff2cb;font-size:14px}.modalOpen .toast{bottom:18px}

/* v6 mobile and release refinements; no remote assets or libraries */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{overscroll-behavior-y:none}.app{padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(36px,env(safe-area-inset-bottom));padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
button,select,summary{touch-action:manipulation;min-height:44px}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:3px}input,textarea,select{font-size:16px!important}
.overlay{padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom))}.modal{max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overscroll-behavior:contain}.modalHead{position:relative}.modalTools select{max-width:124px}
.releaseHome{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.releaseHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text)}.releaseHeader b{font-size:22px;color:var(--accent)}.miniRoute{display:grid;grid-template-columns:repeat(15,1fr);gap:5px;margin:13px 0 18px}.miniRoute i{height:6px;background:var(--line);border-radius:4px}.miniRoute .done{background:var(--accent)}.resumeCard{border:1px solid var(--line);border-radius:18px;padding:12px;margin-top:14px;background:var(--panel2)}.resumeCard p{margin:0 0 10px;font-size:13px}.dueCard{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-top:16px;border-radius:15px;padding:10px;background:rgba(157,167,255,.08)}
.routeMap{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:26px 0}.routeChapter{padding:22px;border:1px solid var(--line);border-radius:25px;background:linear-gradient(150deg,var(--panel),transparent)}.chapterHeading{display:flex;gap:16px;align-items:flex-start}.chapterHeading>span{font-size:40px;color:var(--accent)}.chapterHeading h2{font-size:21px;margin:0 0 8px}.chapterHeading p{font-size:13px;line-height:1.7;color:var(--muted);margin:0;min-height:50px}.routeStops{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:22px}.routeStop{min-height:83px;border:1px solid var(--line);border-radius:15px;background:var(--panel2);padding:10px 4px;cursor:pointer}.routeStop b{display:block;font-size:24px;color:var(--accent);margin-bottom:6px}.routeStop small{font-size:10px;line-height:1.35;display:block;color:var(--muted)}.routeStop.finished{background:rgba(133,229,187,.10);border-color:rgba(133,229,187,.38)}
.mistakeGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0}.mistakeCard .emoji{font-size:35px}.compactGuide>div:last-child{display:none}.compactGuide{grid-template-columns:1fr 1fr}.releaseSettings{margin-top:22px}.restOrb{font-size:90px;text-align:center;color:var(--accent);padding:20px}.holding{box-shadow:inset 0 -6px 0 var(--accent)}.abstractPattern{width:100%;max-width:110px;min-width:40px;height:auto;color:var(--text);display:block;margin:auto}.miniCards .abstractPattern{width:36px}.eventName{font-size:13px;line-height:1.7;display:block;word-break:break-word}.eventYear{font-size:25px;margin-top:12px;color:var(--accent)}.dateRecall label{display:block}.dateRecall input{width:100%;max-width:150px;margin-top:10px}.recoveryBar{position:fixed;z-index:9999;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--danger);padding:16px;background:var(--bg);border-radius:18px}.recoveryBar span{font-size:13px}
.mazeArrows{display:grid;grid-template-columns:repeat(3,52px);gap:8px;justify-content:center;margin:12px auto}.mazeArrows .btn{font-size:22px;min-height:52px}.mazeArrows .up{grid-column:2}.mazeArrows .left{grid-column:1;grid-row:2}.mazeArrows .down{grid-column:2;grid-row:2}.mazeArrows .right{grid-column:3;grid-row:2}
@media(max-width:780px){.routeMap{grid-template-columns:1fr}.mistakeGrid{grid-template-columns:1fr 1fr}.routeChapter{padding:18px}}
@media(max-width:430px){.topActions{gap:5px}.brandButton{font-size:11px}.brandButton span{font-size:9px}.modal{padding:14px}.modalHead h2{font-size:22px}.modalTools{gap:5px}.modalTools select{max-width:99px;font-size:13px!important}.modalTools .iconBtn{width:38px}.guideActions{display:flex;flex-wrap:wrap}.guideActions .btn{flex:1 1 44%;min-width:0}.guideActions .primary{flex-basis:100%}.mistakeGrid{grid-template-columns:1fr}.dueCard{flex-wrap:wrap}.eventName{font-size:12px}.routeStop small{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

.routeStop small{font-size:12px;line-height:1.35}

/* Touch targets, keyboard navigation and release support. No external fonts/assets. */
button,select{touch-action:manipulation}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button:disabled{cursor:default;opacity:.55}input,textarea{font-size:16px}.supportPanel{max-width:920px;margin:20px auto}.supportGrid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.supportPanel h2{font-size:18px;margin-top:20px}.supportPanel p{line-height:1.8}.supportEmail{font-size:20px;overflow-wrap:anywhere;user-select:text}.versionChip{color:var(--accent);font-variant-numeric:tabular-nums}.supportSettings{margin-top:18px}.adultQuestion{font-size:20px;line-height:1.7}.adultAnswer{display:grid;gap:12px}.adultAnswer input{width:min(100%,320px);border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--panel);color:var(--text);font-size:22px}.previewNoCharge{padding:16px;line-height:1.8;border-left:4px solid var(--accent);background:var(--panel)}.completedJourneyNote{border-top:1px solid var(--line);padding-top:16px;line-height:1.7}.supportPanel .homeActions .btn{min-height:44px}.supportGrid section{min-width:0}#adultError{color:var(--gold);min-height:1.5em;line-height:1.6}
@media(max-width:680px){.supportGrid{grid-template-columns:1fr}.supportPanel{padding:16px}.supportEmail{font-size:18px}.adultQuestion{font-size:18px}.guideActions{flex-wrap:wrap}.guideActions .btn{min-height:48px}}

/* Keep the three guide actions visible on short mobile screens. Only the instructions scroll. */
.modal.guideModal{display:flex;flex-direction:column;overflow:hidden}.guideModal>.modalHead{flex:0 0 auto}.guideModal>.guideBody{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 2px 4px;flex:1 1 auto}.guideModal>.guideActions{flex:0 0 auto;margin:10px 0 0;padding-top:10px;border-top:1px solid var(--line)}

/* Original vector media layer. Training contrast and target sizes take priority. */
.artIcon{display:inline-block;width:1.35em;height:1.35em;object-fit:contain;vertical-align:middle;pointer-events:none;max-width:100%;}
.buddyArt{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;}
.buddyAvatar{width:92px!important;height:92px!important;flex:0 0 92px!important;background:none!important;border:0!important;border-radius:0!important;overflow:visible!important;box-shadow:none!important;}
.buddyAvatar .buddyArt{filter:drop-shadow(0 6px 7px #0002);animation:artHover 4s ease-in-out infinite;}
.buddyAvatar:before,.buddyAvatar:after{display:none!important}
.portraitArt{display:inline-block;width:86px;height:86px;max-width:100%;object-fit:contain;vertical-align:middle;pointer-events:none;}
.instructionIcon{width:58px!important;height:58px!important;flex:0 0 58px!important;background:none!important;padding:0!important;}
[data-buddy] .artIcon{height:44px;width:44px;margin-right:4px;}
.obj .artIcon{width:74px;height:74px}.obj{min-height:110px;}.obj small{font-size:12px!important;padding:3px;}
.place .artIcon{width:34px;height:34px}.place .placeArt{width:34px;height:34px}
.locus .item .artIcon{height:70px;width:70px}.locus{min-height:161px;}
.questionObject .artIcon{height:93px;width:93px}
.remainingObjects .artIcon{height:55px;width:55px}
.personObject .artIcon{height:52px;width:52px}.personCard .face{height:90px;}
.streamToken .artIcon{width:154px;height:154px}.storyPair .artIcon{width:125px;height:125px}
.chosenStrip .artIcon,.miniCards .artIcon{width:39px;height:39px}
.drillImage .artIcon,.drillImage .portraitArt{width:65px;height:65px}
.sceneArt{position:relative;overflow:hidden;border-radius:20px;isolation:isolate;pointer-events:none;}
.sceneImage{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;}
.sceneVignette{position:absolute;inset:0;background:linear-gradient(0deg,#0b1b2b77,transparent 60%);pointer-events:none;}
.artHero{position:relative;height:380px;max-width:620px;margin:20px 0 14px;border-radius:32px;overflow:hidden;box-shadow:0 24px 80px #0004;border:1px solid #e0d3b833;}
.artHero>.sceneArt{position:absolute;inset:0;border-radius:0}.artHero .sceneImage{object-position:50% 47%}.heroBuddy{position:absolute;width:200px;height:200px;bottom:-7px;left:calc(50% - 100px);filter:drop-shadow(0 10px 13px #0007);animation:artHover 4s ease-in-out infinite;}
.heroLight{position:absolute;width:200px;height:120px;left:calc(50% - 100px);top:55px;border-radius:50%;background:#d9edbd11;filter:blur(18px);pointer-events:none}
.artStoryPanel{padding-top:160px!important;overflow:hidden;}
.artStoryPanel .homeScene{position:absolute;inset:0 0 auto;height:260px;z-index:-1;border-radius:0;}
.artStoryPanel .homeScene .sceneVignette{background:linear-gradient(0deg,var(--bg2),#14253633 75%)}
.artStoryPanel:after{display:none!important}.artStoryPanel h2,.artStoryPanel p{max-width:740px}
.illustratedChallenge{padding-top:132px!important;min-height:272px;isolation:isolate;background:#152636!important;}
.illustratedChallenge .cardScene{position:absolute;inset:0 0 auto;height:165px;z-index:-1;border-radius:0;}
.cardScene .sceneVignette{background:linear-gradient(0deg,#152636,transparent 72%)}
.illustratedChallenge .tag{background:#132437de;z-index:2}.illustratedChallenge .emoji{position:absolute;left:16px;top:83px;font-size:39px!important}
.illustratedChallenge .emoji .artIcon{width:60px;height:60px;filter:drop-shadow(0 3px 5px #0005)}
.illustratedChallenge h4{margin-top:10px!important}.illustratedChallenge p{color:#c6d1da!important}
.artRoute{position:relative;overflow:hidden;isolation:isolate;padding-top:138px!important;}
.artRoute .routeScene{position:absolute;inset:0 0 auto;height:220px;z-index:-1;border-radius:0;}
.artRoute .sceneVignette{background:linear-gradient(0deg,var(--bg2),#12233322 80%)}
.artModal{position:relative;isolation:isolate;background:linear-gradient(#111b2def,#101a29f7)!important;}
.artModal:before{content:'';position:absolute;inset:0;z-index:-1;background-image:var(--scene-image);background-size:cover;background-position:center;opacity:.08;pointer-events:none;}
.guideLandscape{height:96px;position:relative;margin:0 0 12px;border-radius:18px;overflow:hidden;border:1px solid #d8d0b633;}
.guideLandscape .sceneArt{height:100%;border-radius:0;}.guideLandscape .sceneImage{object-position:50% 42%}
.guideLandscape>span{position:absolute;inset:8px auto 8px 14px}.guideSeal{width:80px;height:80px;filter:drop-shadow(0 3px 8px #0006)}
.illustratedResult{position:relative;height:215px!important;overflow:hidden;border-radius:24px;isolation:isolate;border:1px solid #e8d6b044;}
.illustratedResult>.sceneArt{position:absolute;inset:0;z-index:-1;border-radius:0}
.resultScene.illustratedResult .resultDoor{display:none;}
.resultScene.illustratedResult .resultBuddy{width:195px;height:195px;position:absolute;left:calc(50% - 98px);bottom:-5px;transform:none!important;filter:drop-shadow(0 5px 12px #0005);}
.illustratedResult.won:after{content:'✧';position:absolute;right:18%;top:12%;font-size:37px;color:#f3e0b0;animation:artHover 3s ease-in-out infinite;pointer-events:none}
.artGalleryHead{padding:12px 0 20px}.artGalleryHead h1{font-size:clamp(32px,5vw,56px);margin:8px 0}.artGalleryHead p{max-width:850px;line-height:1.7;color:var(--muted)}
.buddyShowcase{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}.buddyShowcase .sideCard{text-align:center;background:linear-gradient(160deg,#29465e,#1c2e40);}
.studioBuddy{width:100%;height:245px}.moodTabs{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;}.moodTabs .selected{border-color:var(--accent);background:#8aa6c533}
.sceneShowcase{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.sceneShowcase .sideCard{padding:0;overflow:hidden}.sceneShowcase .sceneArt{height:auto;aspect-ratio:16/9;border-radius:0;}.sceneLabel{padding:12px;display:flex;gap:8px;align-items:center;justify-content:space-between}.sceneLabel h3{font-size:16px;margin:0;}
.studioItems{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:9px}.studioItems>div{border:1px solid var(--line);background:#aab9c512;border-radius:16px;padding:9px 4px;text-align:center;}.studioItems .artIcon,.studioItems .portraitArt{display:block;width:80px;height:80px;margin:auto;max-width:100%}.studioItems small{display:block;font-size:12px;line-height:1.4;margin-top:6px;overflow-wrap:anywhere;color:#cfdae1;}
.effectSamples{display:flex;gap:8px;flex-wrap:wrap}.effectSamples .btn{font-size:13px}
body[data-art-focus=true] .buddyArt,body[data-art-focus=true] .heroBuddy,body[data-art-focus=true] .sceneArt{animation:none!important;}
body[data-art-focus=true] .artModal:before{opacity:.035}
body[data-art-focus=true] .guideBuddy{animation:none!important}
.reducedMotion .buddyAvatar .buddyArt,.reducedMotion .heroBuddy,.reducedMotion .illustratedResult:after{animation:none!important}
@keyframes artHover{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@media(max-width:700px){.artHero{height:290px}.heroBuddy{width:157px;height:157px;left:calc(50% - 78px)}.buddyShowcase{grid-template-columns:1fr}.studioBuddy{height:220px}.sceneShowcase{grid-template-columns:1fr}.studioItems{grid-template-columns:repeat(4,minmax(0,1fr));}.buddyAvatar{width:76px!important;height:76px!important;flex-basis:76px!important}.obj .artIcon{width:55px;height:55px}.obj{min-height:87px}.locus .item .artIcon{width:60px;height:60px}.locus{min-height:155px}.guideLandscape{height:82px}.guideSeal{width:64px;height:64px}.portraitArt{width:70px;height:70px}.personCard .face{height:76px}.storyPair .artIcon{width:84px;height:84px}.artStoryPanel{padding-top:130px!important}.resultScene.illustratedResult{height:185px!important}.resultScene.illustratedResult .resultBuddy{width:171px;height:171px;left:calc(50% - 85px)}.sceneLabel h3{font-size:14px}.artSettings{padding-bottom:20px;}}
@media(max-width:360px){.obj .artIcon{width:45px;height:45px}.obj small{font-size:10px!important}.objectGrid{gap:5px}.buddyAvatar{width:62px!important;height:62px!important;flex-basis:62px!important}.studioItems{gap:5px}.instructionIcon{flex-basis:45px!important;width:45px!important;height:45px!important}}
/* Memorization panels are deliberately disabled as controls, not visually disabled. */
.resultFeedback{padding:12px 14px;border:2px solid var(--accent);border-radius:14px;background:#294638;color:#f4fff5;font-size:17px;line-height:1.5;font-weight:750;text-align:center;animation:resultArrival .55s ease-out both}
.resultFeedback.comfort{border-color:var(--gold);background:#ffd78612}
.practiceCardPanel{border-top:1px solid var(--line);margin-top:12px;padding:8px 0}.practiceCardPanel canvas{display:block;width:100%;max-width:320px;height:auto;margin:8px auto;border-radius:12px}
@keyframes resultArrival{0%{opacity:0;transform:translateY(16px) scale(.94)}65%{opacity:1;transform:translateY(-2px) scale(1.01)}100%{opacity:1;transform:translateY(0) scale(1)}}
.reducedMotion .resultFeedback{animation:none}
@media(max-width:700px){
 .modal.resultModal{display:flex;flex-direction:column;overflow:hidden;max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}
 .resultModal>.modalHead,.resultFooter{flex:0 0 auto}
 .resultBody{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 2px}
 .resultFooter{padding-top:8px;border-top:1px solid var(--line)}
 .resultFooter .guideActions{margin:0;gap:6px}
 .resultFooter .btn{min-height:44px}
 .resultFooter>.wide{margin-top:6px}
 .resultBody .resultScene.illustratedResult{height:120px!important}
 .resultBody .resultScene.illustratedResult .resultBuddy{width:125px;height:125px;left:calc(50% - 62px)}
 .resultBody .guideBuddy{margin:8px 0;padding:8px 10px}
 .resultBody .resultNumbers{margin:8px 0}
 .resultFeedback{margin:4px 0 8px}
}
.artModal[data-art-focus=true] #gameArea button:disabled{opacity:1!important;color:var(--text)}
.artModal[data-art-focus=true] .locus{background:#203344!important;border-color:#657b8855}
.artModal[data-art-focus=true] .locus .place b,.artModal[data-art-focus=true] .locus small{color:#e7edf0}
.artModal[data-art-focus=true] .obj{background:#213244!important}
.modalOpen #root{visibility:hidden}
