:root{font-family:"Segoe UI",Arial,sans-serif;color:#29354c;background:#f5f3fc;font-synthesis:none;--purple:#7256dc;--ink:#29354c;--muted:#626e83;--shadow:0 12px 38px #34266f0d}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 0 25%,#e4f3fb 0,transparent 50%),radial-gradient(ellipse at 100% 0,#f0e6fc 0,transparent 40%)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:default}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:4px solid #ecb329;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2rem,4.5vw,3.55rem);line-height:1.1;letter-spacing:-1.5px}h2{font-size:1.7rem;line-height:1.3}p{line-height:1.6}img{max-width:100%}.topbar{max-width:1180px;margin:auto;padding:23px 32px;display:flex;justify-content:space-between;gap:20px;align-items:center}.brand{font-size:20px;text-decoration:none;font-weight:700}.brand span{background:white;display:inline-grid;place-items:center;width:44px;height:44px;border-radius:15px;margin-right:9px;box-shadow:var(--shadow)}.brand b{color:var(--purple)}.class-tag{font-size:13px;font-weight:700;border:1px solid #ded8ef;padding:9px 13px;border-radius:100px;white-space:nowrap}main{max-width:1116px;padding:12px 0 24px;margin:auto;min-height:72vh}.eyebrow{color:var(--purple);font-size:12px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:16px}.hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:34px;padding:38px 42px 25px}.hero p{font-size:18px;color:var(--muted);max-width:510px}.hero-art{position:relative;display:grid;place-items:center;min-height:300px}.hero-art img{width:340px;filter:drop-shadow(0 18px 25px #61509115)}.floating{position:absolute;padding:12px 18px;background:white;border-radius:16px;box-shadow:var(--shadow);font-size:14px;font-weight:700}.floating.one{top:26px;right:0;transform:rotate(5deg)}.floating.two{bottom:28px;left:0;transform:rotate(-5deg)}.button{border:0;background:var(--purple);color:white;border-radius:16px;padding:16px 25px;font-weight:750;font-size:17px;box-shadow:0 5px 0 #5941b7;transition:transform .15s,background .15s;min-height:50px}.button:hover{background:#6145ce;transform:translateY(-1px)}.button:active{transform:translateY(3px);box-shadow:0 2px 0 #5941b7}.button.light{background:#efecfa;color:#543aaf;box-shadow:none}.button.small{padding:10px 16px;font-size:14px;min-height:40px}.text-button{border:0;background:none;color:#5c6481;padding:10px;text-decoration:underline;font-size:14px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.start-note{font-size:13px!important;margin-top:20px;max-width:460px!important}.route-title{padding:8px 42px;font-size:18px}.route{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:0 42px 22px}.route-card{background:#fff;border:1px solid #e7e1f2;border-radius:22px;padding:20px;box-shadow:var(--shadow)}.route-card .icon{display:block;font-size:30px;margin-bottom:14px}.route-card h3{font-size:16px;margin-bottom:8px}.route-card p{font-size:13px;margin:0;color:var(--muted)}.rules{margin:0 42px;padding:20px 25px;background:#fff7df;border-radius:20px;font-size:15px}.rules b{color:#8d5d00}.rules p{margin:5px 0 0}.game-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:8px 0 15px}.mission-name{font-size:19px;font-weight:800}.stats{display:flex;gap:12px;align-items:center;font-size:14px;font-weight:750}.stars{background:#fff2cc;border-radius:100px;padding:10px 15px;color:#815a00}.progress{height:9px;border-radius:9px;background:#e3dff0;overflow:hidden}.progress>div{height:100%;background:linear-gradient(90deg,#9b7ff0,#7256dc);transition:width .3s}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0 23px;font-size:12px;color:#697389}.step{padding:6px 8px;border-radius:10px}.step.active{background:#e8e1fb;color:#5e3dbc;font-weight:800}.step.done{color:#25725a}.game-grid{display:grid;grid-template-columns:minmax(0,1fr) 258px;gap:22px}.question-card{background:white;border:1px solid #e6e1f0;border-radius:26px;padding:27px 32px;box-shadow:var(--shadow)}.scene{display:flex;gap:22px;align-items:center;background:#f7f6fc;border-radius:18px;padding:17px 20px;margin:16px 0 24px;border:1px solid #ebe7f4}.scene img{width:138px;height:132px;object-fit:contain;flex-shrink:0}.scene p{font-size:16px;line-height:1.65;margin:0}.question-label{font-size:12px;font-weight:750;color:#6b5d92;text-transform:uppercase;letter-spacing:.8px}.question-card h2{font-size:23px;margin-bottom:18px}.answers{display:grid;grid-template-columns:1fr 1fr;gap:12px}.answer{display:flex;align-items:center;gap:12px;text-align:left;background:#fff;border:2px solid #e4e4ef;border-radius:15px;min-height:80px;padding:15px;color:var(--ink);font-size:16px;line-height:1.45;transition:border-color .12s,background .12s}.letter{width:31px;height:31px;display:grid;place-items:center;background:#f0eef7;color:#716483;border-radius:10px;font-size:13px;font-weight:800;flex-shrink:0}.answer:not(:disabled):hover{background:#f7f4ff;border-color:#9b7ae5}.answer.right{border-color:#258961;background:#e9f7ef}.answer.right .letter{background:#258961;color:white}.answer.wrong{border-color:#bb6344;background:#fff0e9}.answer.wrong .letter{background:#bb6344;color:white}.answer:disabled{opacity:1}.feedback{margin-top:22px;padding:20px;border-radius:18px;background:#edf8f2;border:1px solid #bfe2cd}.feedback.wrong{background:#fff6e8;border-color:#ecd3a6}.feedback h3{font-size:18px;margin-bottom:8px}.feedback p{margin-bottom:15px;font-size:16px}.feedback .correct-answer{font-weight:750;color:#285c45;margin-bottom:7px}.helper{background:#fff;border-radius:22px;padding:20px;border:1px solid #e6e1f0;align-self:start}.helper img{width:94px;display:block;margin:0 auto 10px}.helper h3{font-size:16px;margin-bottom:8px}.helper p{font-size:14px;color:var(--muted);margin-bottom:15px}.helper details{font-size:14px;line-height:1.55;border-top:1px solid #eee9f6;padding-top:14px;margin-top:17px}.helper summary{cursor:pointer;font-weight:750;color:#5c458b}.helper ul{padding-left:18px;color:#606b7e}.hint{background:#fff6d9;color:#76541c;border-radius:14px;padding:14px;margin-top:15px;font-size:14px;line-height:1.6}.helper .text-button{display:block;margin:14px auto 0}.mission-banner{padding:13px 19px;border-radius:15px;background:#ece5ff;color:#543d93;margin-bottom:18px;font-size:15px;font-weight:650}.results{max-width:900px;margin:20px auto;padding:28px 36px;background:white;border-radius:28px;border:1px solid #e6e1f0;text-align:center;box-shadow:var(--shadow)}.results .badge-art{width:170px}.results h1{font-size:37px;margin:13px 0}.result-score{font-size:24px;font-weight:800;color:#795700;background:#fff2cc;display:inline-block;padding:13px 25px;border-radius:18px;margin:8px 0 20px}.result-map{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:22px 0}.result-map div{padding:17px 9px;border-radius:15px;background:#f5f3fc;font-size:14px;line-height:1.7}.result-map span{font-size:25px;display:block}.results .actions{justify-content:center}.recap{text-align:left;background:#eef7f5;padding:20px 24px;border-radius:18px;margin:25px 0}.recap li{margin:10px 0;line-height:1.5}.review{max-width:900px;margin:20px auto}.review h2{font-size:22px}.review details{background:white;padding:17px 22px;margin:10px 0;border-radius:16px;border:1px solid #e1dcef}.review summary{cursor:pointer;line-height:1.5;font-weight:700}.review p{margin:15px 0 0}.review .small-text{font-size:14px;color:var(--muted)}footer{text-align:center;padding:22px 15px 30px;font-size:12px;line-height:1.8;color:#657089}dialog{border:0;border-radius:24px;padding:30px;max-width:560px;width:calc(100% - 30px);color:var(--ink);box-shadow:0 20px 90px #20163566}dialog::backdrop{background:#261b4c88}dialog h2{font-size:23px}#storage-warning{position:sticky;bottom:0;background:#fff0c6;border-top:2px solid #d7a235;padding:12px;text-align:center;font-size:14px}.skip{position:fixed;left:12px;top:-70px;z-index:10;background:#fff;padding:12px}.skip:focus{top:12px}.mission-pop{animation:pop .35s ease-out}@keyframes pop{from{transform:translateY(9px);opacity:.5}to{transform:translateY(0);opacity:1}}@media(max-width:1180px){main{padding:12px 26px 24px}}@media(max-width:850px){.hero{padding:20px 12px;gap:10px}.hero-art img{width:250px}.hero-art{min-height:270px}.floating{font-size:12px;padding:10px}.route{padding:0 12px 20px;grid-template-columns:1fr 1fr}.route-title{padding:10px 12px}.rules{margin:0 12px}.game-grid{grid-template-columns:1fr}.helper{display:grid;grid-template-columns:80px 1fr;gap:0 16px}.helper img{grid-row:1/4;width:80px;margin:0}.helper details,.helper .hint{grid-column:1/-1}.helper .text-button{margin:12px 0 0;justify-self:start}.helper>p{margin-bottom:9px}.question-card{padding:23px}.result-map{grid-template-columns:1fr 1fr}}@media(max-width:570px){.topbar{padding:17px 18px;align-items:start}.brand{font-size:17px;max-width:200px}.brand span{width:35px;height:35px;margin-right:3px}.class-tag{font-size:11px;padding:7px}.hero{grid-template-columns:1fr;text-align:center}.hero p{font-size:16px}.hero .actions{justify-content:center}.hero-art{min-height:230px;grid-row:1}.hero-art img{width:225px}.floating.one{right:10px;top:10px}.floating.two{left:0;bottom:10px}h1{letter-spacing:-.5px}.start-note{margin-left:auto;margin-right:auto}.hero .eyebrow{margin-top:12px}.route-card{padding:16px}.route-card h3{font-size:14px}.route{gap:10px;padding:0 0 15px}.rules{margin:0;font-size:14px;padding:17px}main{padding:5px 15px 20px}.game-head{align-items:start;gap:8px}.mission-name{font-size:17px}.stats{gap:3px;font-size:12px;flex-wrap:wrap;justify-content:flex-end}.stars{padding:8px}.steps{font-size:10px;gap:3px;margin-bottom:12px}.step{padding:5px 3px}.question-card{padding:19px 16px;border-radius:22px}.scene{padding:14px;gap:12px;align-items:start;flex-direction:column}.scene img{width:105px;height:90px;align-self:center}.scene p{font-size:16px}.question-card h2{font-size:21px}.answers{grid-template-columns:1fr;gap:9px}.answer{min-height:64px;padding:12px}.mission-banner{font-size:13px;padding:12px}.feedback{padding:16px}.results{padding:23px 18px}.results h1{font-size:29px}.recap{padding:16px;font-size:14px}.recap ul{padding-left:20px}.button{font-size:16px}.results .actions{flex-direction:column}.result-map{gap:8px}.result-map div{font-size:12px}.review details{padding:14px}.review summary{font-size:14px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{.topbar,.helper,.actions,footer,.skip{display:none}body{background:white}.results,.review details{box-shadow:none;break-inside:avoid}.review details{display:block}.review details p{display:block}.result-map{grid-template-columns:repeat(4,1fr)}}
