/* The illustrated book of Mila: local artwork, readable stories and touch controls. */
.quest-page{--quest-cream:#fff6e5;--quest-gold:#aa7938;max-width:1000px;width:100%;min-width:0;margin:0 auto;padding:28px 28px 42px;color:var(--ink)}
:root[data-theme=dark] .quest-page{--quest-cream:#3b342b;--quest-gold:#dfb87c}
.quest-intro{display:block;margin:0 0 24px;max-width:760px}.quest-intro>.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:750;color:var(--green);margin:0 0 10px;line-height:1.6}.quest-intro h1{font-size:clamp(31px,4.5vw,43px);line-height:1.14;letter-spacing:-1.4px;font-weight:700;margin:0 0 12px}.quest-intro>p:last-child{color:var(--muted);font-size:15px;line-height:1.8;margin:0;max-width:670px}
.quest-worlds{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin:0 0 28px}.quest-world-card{min-width:0;overflow:hidden;padding:0;background:var(--paper);border:2px solid var(--line);border-radius:16px;text-align:left;display:flex;flex-direction:column;box-shadow:0 4px 0 var(--line);transition:transform .15s,border-color .15s,box-shadow .15s;touch-action:manipulation}.quest-world-card:hover:not(:disabled){transform:translateY(-3px);border-color:var(--green);background:var(--paper);box-shadow:0 7px 0 var(--line)}.quest-world-card[aria-pressed=true]{border-color:var(--green);box-shadow:0 4px 0 var(--green);background:var(--green-bg)}.quest-world-card>img{display:block;width:100%;aspect-ratio:8/5;object-fit:cover;object-position:center 55%;background:var(--green-bg)}.quest-world-card>span{padding:13px 14px;display:flex;justify-content:space-between;align-items:center;gap:9px;flex-wrap:wrap;min-width:0}.quest-world-card strong{font-size:17px;font-weight:700;line-height:1.3;color:var(--ink)}.quest-world-card small{color:var(--muted);font-size:11px;line-height:1.4;font-variant-numeric:tabular-nums}
.quest-world-heading{margin:0 0 14px}.quest-world-heading h2{font-size:29px;line-height:1.25;letter-spacing:-.7px;font-weight:650;margin:0 0 8px;color:var(--green)}.quest-world-heading p{font-size:14px;line-height:1.8;color:var(--muted);max-width:750px;margin:0}
.quest-options{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin:20px 0}.quest-ages{display:flex;align-items:center;gap:8px}.quest-ages button{min-height:44px;min-width:76px;font-size:13px;padding:10px 15px;border-radius:10px;touch-action:manipulation}.quest-ages button[aria-pressed=true]{background:var(--green-bg);color:var(--green);border-color:var(--green);font-weight:650}.quest-options>.quiet{min-height:44px;font-size:12px;color:var(--green);padding:10px 12px}
.quest-route{border:1px solid var(--line);border-radius:17px;background:linear-gradient(135deg,var(--paper),var(--quest-cream));padding:18px 20px 20px;margin:0 0 25px}.quest-route-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:21px;flex-wrap:wrap}.quest-route-heading>strong{font-size:14px;font-weight:650;line-height:1.5}.quest-route-heading>span{font-size:11px;font-weight:650;color:var(--quest-gold);padding:5px 9px;border:1px solid var(--line);border-radius:16px;background:var(--paper);font-variant-numeric:tabular-nums}
.quest-map{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));list-style:none;padding:0;margin:0;gap:11px}.quest-map>li{position:relative;isolation:isolate;text-align:center;min-width:0;display:flex;flex-direction:column;align-items:center;gap:7px;color:var(--muted)}.quest-map>li:not(:last-child)::after{content:"";position:absolute;left:72%;top:21px;width:72%;border-top:2px dashed var(--line);z-index:-1}.quest-stop-marker{width:44px;height:44px;flex:none;display:flex;align-items:center;justify-content:center;border:2px solid var(--line);background:var(--paper);border-radius:50%;font-size:16px;font-weight:700;line-height:1}.quest-map>li>span:nth-child(2){font-size:12px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.quest-map>li>small{font-size:10px;line-height:1.4}.quest-stop-done .quest-stop-marker{color:var(--paper);border-color:var(--quest-gold);background:var(--quest-gold)}.quest-map>.quest-stop-done{color:var(--quest-gold)}.quest-stop-current .quest-stop-marker{color:var(--green);border-color:var(--green);background:var(--paper);box-shadow:0 0 0 5px var(--green-bg)}.quest-map>.quest-stop-current{color:var(--green)}
.quest-chapter{background:var(--paper);border:1px solid var(--line);border-radius:21px;overflow:hidden;scroll-margin-top:22px;box-shadow:0 10px 35px #3548390a;min-width:0}.quest-chapter:focus,.quest-finale:focus,.quest-hints:focus{outline:none}.quest-scene{position:relative;background:var(--green-bg)}.quest-scene>img,.quest-scene>svg{display:block;width:100%;height:auto}.quest-scene>span{position:absolute;left:20px;bottom:19px;max-width:calc(100% - 40px);background:#fffaeef0;color:#365943;border:1px solid #ffffff99;box-shadow:0 3px 15px #263d3320;padding:9px 15px;border-radius:22px;font-size:12px;font-weight:650;line-height:1.4}
.quest-story{display:block;background:linear-gradient(120deg,var(--green-bg),var(--paper));border-bottom:1px solid var(--line);padding:27px 31px}.quest-story .eyebrow{font-size:10px;letter-spacing:1.1px;font-weight:700;color:var(--green);margin:0 0 11px;line-height:1.5}.quest-story h2{font-size:28px;font-weight:680;letter-spacing:-.6px;line-height:1.3;margin:0 0 13px}.quest-story p:last-child{font-size:15px;line-height:1.9;margin:0;color:var(--ink);max-width:780px}
.quest-question{padding:29px 31px 30px;min-width:0}.quest-question>h3{font-size:24px;line-height:1.55;font-weight:650;text-align:center;margin:0 auto 24px;max-width:780px;letter-spacing:-.3px}.quest-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:680px;margin:23px auto 0}.quest-choice{min-width:0;min-height:108px;border:2px solid var(--line);border-radius:15px;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:16px 12px;box-shadow:0 4px 0 var(--line);touch-action:manipulation;overflow-wrap:anywhere;text-align:center;line-height:1.4}.quest-choice:hover:not(:disabled){border-color:var(--green);background:var(--green-bg);transform:translateY(-2px)}.quest-choice strong{font-size:37px;line-height:1.2;font-weight:650;color:var(--green);font-variant-numeric:tabular-nums;max-width:100%}.quest-choice.quest-choice-word strong{font-size:20px;line-height:1.5;letter-spacing:-.2px}.quest-choice>svg{display:block;width:100%;max-width:145px;height:125px}.quest-choice>span{font-size:15px;font-weight:600;line-height:1.4;max-width:100%}.quest-choice-selected{border-color:var(--accent)}.quest-choice.quest-choice-right:disabled{opacity:1;background:var(--green-bg);border-color:var(--green);color:var(--green);box-shadow:0 4px 0 var(--green)}.quest-choice:disabled:not(.quest-choice-right){opacity:.48}
.quest-count,.quest-sequence{display:flex;justify-content:center;align-items:center;gap:11px;flex-wrap:wrap;margin:12px auto 22px;max-width:560px}.quest-count>span,.quest-sequence>span{width:62px;height:70px;flex:none;display:flex;align-items:center;justify-content:center}.quest-count svg,.quest-sequence svg{display:block;width:100%;height:100%}.quest-missing{font-size:42px;color:var(--green);background:var(--green-bg);border:2px dashed var(--green);border-radius:11px}.quest-groups{display:flex;align-items:center;justify-content:center;gap:17px;margin:10px auto 24px;max-width:600px}.quest-groups>.quest-count{flex:1;min-width:0;max-width:44%;margin:0;padding:12px 8px;background:var(--peer);border:1px dashed var(--line);border-radius:13px;gap:5px}.quest-groups>b{font-size:29px;color:var(--green);font-weight:600;flex:none}
.quest-feedback{font-size:14px;line-height:1.85;padding:17px 19px;border:1px solid var(--line);border-radius:11px;background:var(--peer);margin-top:25px;color:var(--muted);overflow-wrap:anywhere}.quest-feedback-good{background:var(--green-bg);border-color:var(--green-bg);color:var(--green);font-weight:500}.quest-hints{background:var(--quest-cream);border:1px solid var(--line);border-left:4px solid var(--quest-gold);border-radius:11px;padding:17px 18px;margin-top:17px;font-size:13px;line-height:1.8}.quest-hints>strong{font-size:13px;color:var(--quest-gold)}.quest-hints ol{padding-left:20px;margin:9px 0 7px}.quest-hints li{padding-left:4px;margin:6px 0}.quest-hints>.quiet{min-height:44px;font-size:12px;color:var(--quest-gold);margin-left:-7px}
.quest-reward{display:flex;gap:15px;align-items:center;background:var(--quest-cream);border:1px solid var(--quest-gold);border-radius:12px;padding:17px 19px;margin-top:18px}.quest-reward>span{font-size:38px;line-height:1;color:var(--quest-gold);flex:none}.quest-reward strong{font-size:15px;font-weight:650;color:var(--quest-gold)}.quest-reward p{font-size:13px;line-height:1.7;margin:4px 0 0;color:var(--ink)}
.quest-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px}.quest-actions>.quiet{display:flex;align-items:center;gap:9px;font-size:13px;min-height:48px;padding:7px 10px}.quest-actions svg{width:39px;height:39px;flex:none;display:block}.quest-actions>.primary{min-height:48px;padding:12px 18px;font-size:14px;line-height:1.4;border-radius:10px}.quest-footnote{font-size:11px;color:var(--muted);text-align:center;line-height:1.8;margin:22px auto 8px;max-width:720px}.quest-restart{display:block;min-height:44px;margin:0 auto;font-size:11px;line-height:1.6}.quest-audio-status{font-size:12px;line-height:1.8;color:var(--muted);background:var(--peer);border:1px solid var(--line);padding:12px 15px;border-radius:10px;margin:0 0 19px}
.quest-finale{background:var(--paper);border:1px solid var(--line);border-radius:21px;padding:0 30px 30px;text-align:center;overflow:hidden;scroll-margin-top:22px;box-shadow:0 10px 35px #3548390a}.quest-finale-art{display:block;width:calc(100% + 60px);max-width:none;margin:0 -30px 26px}.quest-finale-art>svg,.quest-finale-art>img{display:block;width:100%;height:auto}.quest-finale>.eyebrow{font-size:10px;letter-spacing:1.3px;color:var(--quest-gold);font-weight:700;line-height:1.6;margin-bottom:12px}.quest-finale h2{font-size:34px;font-weight:680;line-height:1.25;letter-spacing:-.7px;color:var(--green);margin:12px 0 17px}.quest-finale>p:not(.eyebrow){font-size:15px;line-height:1.9;max-width:730px;margin:15px auto}.quest-medals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;list-style:none;padding:0;margin:24px auto;max-width:760px}.quest-medals li{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:12px;background:var(--quest-cream);color:var(--quest-gold);font-size:12px;font-weight:600;line-height:1.6;min-height:85px;padding:12px 10px;overflow-wrap:anywhere}.quest-medals li>span{font-size:24px;line-height:1}.quest-success{background:var(--green-bg);padding:15px 18px;border-radius:11px;color:var(--green)}.quest-finale>.primary{margin-top:11px;min-height:48px;font-size:14px;padding:12px 20px}
.quest-reset-confirm{padding:22px 23px;margin:0 0 24px;border:2px solid var(--quest-gold);border-radius:15px;background:var(--quest-cream)}.quest-reset-confirm h3{font-size:21px;line-height:1.4;margin:0 0 10px;color:var(--quest-gold)}.quest-reset-confirm p{font-size:14px;line-height:1.8;margin:0 0 17px}.quest-reset-confirm>div{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.quest-reset-confirm button{min-height:46px;font-size:13px;padding:10px 14px}
@media(max-width:720px){
 .quest-page{padding:20px 15px 32px}.quest-intro{margin-bottom:20px}.quest-intro>.eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:8px}.quest-intro h1{font-size:31px;letter-spacing:-1px}.quest-intro>p:last-child{font-size:13px;line-height:1.75}
 .quest-worlds{gap:8px;margin-bottom:24px}.quest-world-card{border-radius:12px;box-shadow:0 3px 0 var(--line)}.quest-world-card[aria-pressed=true]{box-shadow:0 3px 0 var(--green)}.quest-world-card>img{aspect-ratio:1.2;object-position:center 55%}.quest-world-card>span{padding:10px 8px;display:block}.quest-world-card strong{font-size:13px;display:block;margin-bottom:4px}.quest-world-card small{font-size:10px;display:block}
 .quest-world-heading h2{font-size:25px;letter-spacing:-.5px}.quest-world-heading p{font-size:12px;line-height:1.8}.quest-options{gap:9px;margin:17px 0 19px}.quest-ages{gap:6px}.quest-ages button{font-size:12px;min-width:70px;padding:10px 12px;min-height:44px}.quest-options>.quiet{font-size:11px;min-height:44px;padding:9px 8px}
 .quest-route{padding:16px 13px;border-radius:13px;margin-bottom:20px}.quest-route-heading{gap:8px;margin-bottom:18px}.quest-route-heading>strong{font-size:12px}.quest-route-heading>span{font-size:10px}.quest-map{grid-template-columns:repeat(3,minmax(0,1fr));gap:19px 8px}.quest-stop-marker{width:36px;height:36px;font-size:14px}.quest-map>li{gap:5px}.quest-map>li>span:nth-child(2){font-size:11px}.quest-map>li>small{font-size:9px}.quest-map>li:not(:last-child)::after{top:17px;left:73%;width:72%}.quest-map>li:nth-child(3)::after{display:none}
 .quest-chapter{border-radius:16px;scroll-margin-top:14px}.quest-scene>span{font-size:10px;left:12px;bottom:12px;padding:7px 11px;max-width:calc(100% - 24px)}.quest-story{padding:20px 18px}.quest-story .eyebrow{font-size:8px;letter-spacing:.7px;margin-bottom:9px}.quest-story h2{font-size:24px;line-height:1.3;letter-spacing:-.5px;margin-bottom:12px}.quest-story p:last-child{font-size:13px;line-height:1.9}
 .quest-question{padding:23px 17px}.quest-question>h3{font-size:20px;line-height:1.55;margin-bottom:21px}.quest-choices{gap:9px;margin-top:20px}.quest-choice{min-height:95px;padding:13px 8px;gap:7px;border-radius:12px;box-shadow:0 3px 0 var(--line)}.quest-choice strong{font-size:31px}.quest-choice.quest-choice-word strong{font-size:17px;line-height:1.5}.quest-choice>svg{height:95px}.quest-choice>span{font-size:13px;line-height:1.4}
 .quest-count,.quest-sequence{gap:6px;margin-bottom:19px}.quest-count>span,.quest-sequence>span{width:48px;height:56px}.quest-missing{font-size:35px}.quest-groups{gap:10px}.quest-groups>.quest-count{padding:9px 5px;gap:3px}.quest-groups>.quest-count>span{width:40px;height:45px}.quest-groups>b{font-size:24px}
 .quest-feedback{font-size:13px;line-height:1.8;padding:14px 15px;margin-top:23px}.quest-hints{padding:14px 15px;font-size:12px;line-height:1.8}.quest-hints>strong{font-size:12px}.quest-hints>.quiet{font-size:11px}.quest-reward{padding:15px;gap:12px}.quest-reward>span{font-size:32px}.quest-reward strong{font-size:14px}.quest-reward p{font-size:12px}
 .quest-actions{gap:9px;margin-top:16px}.quest-actions>.quiet{font-size:12px;padding:6px;min-height:46px}.quest-actions svg{width:34px;height:34px}.quest-actions>.primary{font-size:13px;min-height:46px;padding:11px 14px}.quest-footnote{font-size:10px;margin-top:18px}.quest-restart{font-size:10px}.quest-audio-status{font-size:11px;line-height:1.8;padding:11px 13px}
 .quest-finale{padding:0 19px 24px;border-radius:16px;scroll-margin-top:14px}.quest-finale-art{width:calc(100% + 38px);margin:0 -19px 23px}.quest-finale>.eyebrow{font-size:8px}.quest-finale h2{font-size:28px;line-height:1.3}.quest-finale>p:not(.eyebrow){font-size:13px;line-height:1.9}.quest-medals{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:21px auto}.quest-medals li{font-size:11px;min-height:80px;padding:11px 8px}.quest-finale>.primary{font-size:13px;min-height:46px}.quest-reset-confirm{padding:18px 17px;border-radius:12px}.quest-reset-confirm h3{font-size:20px}.quest-reset-confirm p{font-size:12px;line-height:1.8}.quest-reset-confirm button{font-size:12px;min-height:46px}
}
@media(max-width:440px){
 .quest-page{padding:18px 12px 30px}.quest-intro h1{font-size:29px}.quest-intro>p:last-child{font-size:12px}.quest-worlds{gap:7px}.quest-world-card>span{padding:9px 6px}.quest-world-card strong{font-size:12px;line-height:1.35}.quest-world-card small{font-size:9px}.quest-world-heading h2{font-size:23px}.quest-options{display:grid;grid-template-columns:minmax(0,1fr);gap:4px}.quest-ages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.quest-ages button{min-width:0;font-size:12px;padding:10px 7px}.quest-options>.quiet{justify-self:end;padding:9px 7px;font-size:11px}
 .quest-route{padding:14px 11px}.quest-map{gap:17px 7px}.quest-map>li>span:nth-child(2){font-size:10px}.quest-map>li>small{font-size:8px}.quest-story{padding:19px 14px}.quest-story h2{font-size:22px}.quest-story p:last-child{font-size:13px}.quest-question{padding:21px 12px}.quest-question>h3{font-size:19px}.quest-choices{gap:7px}.quest-choice{min-height:87px;padding:11px 5px;border-radius:11px}.quest-choice strong{font-size:28px}.quest-choice.quest-choice-word strong{font-size:15px;line-height:1.45}.quest-choice>svg{height:79px}.quest-choice>span{font-size:11px;line-height:1.45}.quest-count,.quest-sequence{gap:4px}.quest-count>span,.quest-sequence>span{width:41px;height:49px}.quest-groups>.quest-count>span{width:34px;height:40px}.quest-feedback{font-size:12px;padding:13px;line-height:1.85}.quest-actions{display:flex;flex-direction:column;align-items:stretch}.quest-actions>.quiet{justify-content:center;min-height:46px;font-size:11px}.quest-actions>.primary{width:100%;min-height:46px;font-size:13px}.quest-hints{padding:13px 12px;font-size:12px}.quest-reward{padding:13px;gap:10px}.quest-finale h2{font-size:26px}.quest-reset-confirm>div{display:grid;grid-template-columns:1fr}.quest-reset-confirm button{min-height:46px}
}
@media(prefers-reduced-motion:reduce){.quest-world-card,.quest-choice{transition:none}.quest-world-card:hover:not(:disabled),.quest-choice:hover:not(:disabled){transform:none}}
@media print{.quest-page{display:none}}