@font-face {
  font-family: 'Jua';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/font-0.woff2) format('woff2');
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/font-1.woff2) format('woff2');
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/font-2.woff2) format('woff2');
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/font-3.woff2) format('woff2');
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/font-4.woff2) format('woff2');
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/fonts/font-5.woff2) format('woff2');
}
@font-face {
  font-family: 'Noto Sans KR';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(assets/fonts/font-6.woff2) format('woff2');
}

:root{--blue:#1965dc;--navy:#133965;--yellow:#ffdb57;--paper:#f1f8ff;--muted:#56718d;--line:#dce8f2;--shadow:0 8px 0 #d9e7f0; font-family:'Noto Sans KR',sans-serif;color:var(--navy);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:4px solid #eb9310;outline-offset:5px}button{touch-action:manipulation}a{color:#155cca}h1,h2,h3,p{margin:0}h1,h2,h3,.fun{font-family:'Jua','Noto Sans KR',sans-serif;font-weight:400}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.app-shell{max-width:1440px;margin:auto;padding:26px 42px 20px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.brand{border:0;background:none;display:flex;align-items:center;gap:12px;text-align:left;padding:0}.brand-icon{background:var(--blue);color:white;border-radius:16px;width:48px;height:48px;display:grid;place-items:center;box-shadow:0 4px 0 #0f4dae}.brand-name{font-family:Jua,sans-serif;font-size:23px}.brand-sub{display:block;font-family:inherit;font-size:12px;font-weight:800;letter-spacing:2px;color:#5b86ae;margin-top:3px}.top-actions{display:flex;gap:10px;align-items:center}.pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:white;border-radius:50px;padding:10px 16px;font-size:14px;font-weight:700}.icon-btn{width:44px;height:44px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff}.layout{display:grid;grid-template-columns:1fr 280px;gap:24px;align-items:start}.scene{position:relative;min-height:500px;border-radius:30px;overflow:hidden;background:#6dccf2;isolation:isolate;box-shadow:var(--shadow)}.scene-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 45%;z-index:-2}.scene:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(215,247,255,.98),rgba(222,247,255,.82) 31%,rgba(222,247,255,0) 65%)}.scene-copy{padding:50px 40px;max-width:58%}.eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:800;letter-spacing:1px;background:rgba(255,255,255,.75);border:1px solid white;border-radius:30px;padding:8px 13px;margin-bottom:20px}.scene h1{font-size:clamp(38px,4.2vw,61px);line-height:1.18;letter-spacing:-1.5px}.scene h1 em{font-style:normal;color:var(--blue)}.scene p{font-size:16px;line-height:1.9;margin:20px 0 27px;max-width:280px}.primary,.secondary{border:0;border-radius:16px;min-height:56px;padding:15px 24px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-size:17px}.primary{background:var(--blue);color:white;box-shadow:0 5px 0 #10499d}.primary:hover{background:#0e56c7;transform:translateY(-1px)}.primary:active{transform:translateY(3px);box-shadow:none}.secondary{background:white;border:1px solid var(--line);box-shadow:0 4px 0 #deebf4}.yellow{background:var(--yellow);color:var(--navy);box-shadow:0 5px 0 #e0b633}.scene .small{font-size:13px;margin-top:17px;color:#426c8c}.side-panel{background:white;border:1px solid #dbe7f1;border-radius:26px;box-shadow:var(--shadow);padding:25px 22px}.side-heading{font-size:22px;display:flex;align-items:center;gap:9px}.display{background:#102c4c;border:5px solid #e5edf4;border-radius:18px;color:#ffdf6a;text-align:center;padding:20px 10px;margin-top:20px;box-shadow:inset 0 3px 10px #00142c}.display small{display:block;color:#bdcfe0;font-size:12px;font-weight:700;letter-spacing:3px;margin-bottom:5px}.display b{font-family:Jua,sans-serif;font-size:64px;font-weight:400;line-height:1.2}.display b span{font-family:inherit;font-size:26px;margin-left:5px}.display .arrow{font-size:25px;margin-right:10px;color:#83ebb1}.floor-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:17px}.floor-dot{background:#eff4f8;border:1px solid #dce6ef;border-radius:50%;aspect-ratio:1;display:grid;place-items:center;font-size:18px;font-weight:700;color:#8194aa;box-shadow:0 3px 0 #e2eaf1}.floor-dot.done{background:#e8f2ff;color:#1965dc;border-color:#c4dafe}.floor-dot.current{background:var(--yellow);border-color:#ecc74e;color:var(--navy);box-shadow:0 3px 0 #d5b343}.tower-goal{font-size:13px;line-height:1.6;text-align:center;margin-top:20px;color:var(--muted)}.progress-track{height:8px;background:#e9f0f7;border-radius:8px;overflow:hidden;margin:12px 0}.progress-track>i{display:block;height:100%;background:var(--blue);border-radius:8px}.observatory-button{margin-top:14px;width:100%;background:#fff8df;border:1px solid #f3dfa0;border-radius:12px;padding:12px 6px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:700}.section-label{display:flex;justify-content:space-between;align-items:center;margin:30px 0 16px}.section-label h2{font-size:25px}.section-label span{font-size:13px;color:var(--muted)}.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.mode-card{background:#fff;border:1px solid var(--line);box-shadow:0 5px 0 #e1ecf5;border-radius:21px;padding:20px;text-align:left;display:flex;gap:13px;align-items:center;transition:transform .2s}.mode-card:hover{transform:translateY(-4px)}.mode-icon{border-radius:16px;display:grid;place-items:center;width:49px;height:53px;background:#e6f2ff;color:#2671db;flex-shrink:0}.mode-card:nth-child(2) .mode-icon{background:#e9f7ed;color:#3b9169}.mode-card:nth-child(3) .mode-icon{background:#fff2d0;color:#b18a19}.mode-title{display:block;font-family:Jua,sans-serif;font-size:20px;margin-bottom:5px}.mode-note{font-size:12px;color:var(--muted);line-height:1.5}.footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:30px;color:#68819a;font-size:12px}.text-button{background:none;border:0;color:var(--muted);text-decoration:underline;font-size:13px;padding:8px}.game-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.game-top h1{font-size:27px}.game-content{background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);padding:26px;position:relative;overflow:hidden;min-height:500px}.question-bar{display:flex;align-items:center;justify-content:space-between;gap:15px}.question-count{font-size:13px;font-weight:800;color:#587797;letter-spacing:1px}.question-title{font-size:32px;text-align:center;margin:22px 0;line-height:1.4}.quiz-photo{height:245px;max-width:520px;margin:auto;border-radius:20px;overflow:hidden;position:relative;background:#e7f2fb}.quiz-photo img{width:100%;height:100%;object-fit:cover}.quiz-photo .photo-label{position:absolute;bottom:0;left:0;right:0;padding:35px 20px 17px;background:linear-gradient(transparent,#09203cd9);color:white}.photo-label strong{font-family:Jua,sans-serif;font-size:25px;font-weight:400}.photo-label span{display:block;font-size:12px;margin-top:5px;opacity:.85}.answers{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;max-width:640px;margin:22px auto 0}.answer{background:#f3f8fe;border:2px solid #d7e6f5;border-radius:17px;min-height:75px;font-family:Jua,sans-serif;font-size:27px;box-shadow:0 4px 0 #dce8f4;padding:15px}.answer:hover:not(:disabled){border-color:var(--blue);background:#e7f1ff}.answer.wrong{background:#fff3d4;border-color:#e6c261}.answer.correct{background:#e4f9e9;border-color:#56b978;color:#1f7949}.feedback{min-height:32px;text-align:center;font-size:15px;font-weight:700;margin-top:18px;color:#326b4e}.feedback.hint{color:#806020}.quiz-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:16px;gap:10px}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.compare-choice{border:2px solid var(--line);background:#f5f9ff;border-radius:22px;padding:0;overflow:hidden;box-shadow:0 4px 0 #dfebf4}.compare-choice img{width:100%;height:260px;object-fit:cover;display:block}.compare-choice .compare-name{padding:18px 10px;font-family:Jua,sans-serif;font-size:23px}.compare-choice.correct{border-color:#43aa6e;background:#e4f9e9}.compare-choice.wrong{border-color:#e6ba4d;background:#fff5d8}.door{position:absolute;top:0;bottom:0;width:50%;background:linear-gradient(90deg,#afc8df,#e8f4ff,#b3cce1);z-index:5;pointer-events:none;transition:transform .45s ease-in-out;display:flex;align-items:center;justify-content:center;border:2px solid #94b1ca}.door:after{content:'';width:8px;height:80px;border-radius:10px;background:#678aa8;box-shadow:2px 0 1px white}.door.left{left:0;transform:translateX(-102%)}.door.right{right:0;transform:translateX(102%)}.moving .door{transform:translateX(0)}.door-text{position:absolute;top:44%;left:50%;transform:translate(-50%,-50%);color:var(--navy);font-family:Jua;font-size:35px;z-index:6;opacity:0;pointer-events:none}.moving .door-text{opacity:1}.collection-header{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-bottom:22px}.collection-header h1{font-size:32px}.tabs{display:flex;gap:7px;flex-wrap:wrap}.tab{border:1px solid var(--line);border-radius:30px;background:white;padding:11px 18px;font-size:14px;font-weight:700}.tab.active{background:var(--blue);color:white;border-color:var(--blue)}.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.collect-card{background:white;border:1px solid var(--line);border-radius:22px;overflow:hidden;text-align:left;padding:0;box-shadow:0 5px 0 #dfeaf3;transition:transform .2s}.collect-card:hover{transform:translateY(-4px)}.collect-card img{width:100%;height:185px;object-fit:cover;display:block;background:#dceefb}.collect-info{padding:17px}.collect-info h3{font-size:21px;line-height:1.3}.collect-info p{font-size:13px;color:var(--muted);margin-top:7px}.collect-info b{font-size:16px;display:block;margin-top:13px;color:var(--blue)}.collected{display:inline-block;color:#2a8052;font-size:12px;margin-top:10px}.modal-backdrop{position:fixed;inset:0;background:#0c244e80;backdrop-filter:blur(6px);z-index:30;display:grid;place-items:center;padding:24px}.modal{background:white;width:min(620px,100%);max-height:90dvh;overflow:auto;border-radius:28px;padding:30px;box-shadow:0 25px 100px #05244b55}.modal-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.modal-top h2{font-size:28px}.modal p{line-height:1.8;font-size:15px}.detail-image{width:100%;height:260px;object-fit:cover;border-radius:18px;margin-bottom:20px}.detail-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.stat{background:#eff6ff;border-radius:15px;padding:17px}.stat small{display:block;color:var(--muted);font-size:12px;margin-bottom:7px}.stat b{font-family:Jua;font-size:28px;font-weight:400}.credits{font-size:12px!important;color:var(--muted);overflow-wrap:anywhere;margin-top:20px}.setting-row{margin:20px 0}.setting-row label{display:flex;justify-content:space-between;font-weight:700;font-size:15px;margin-bottom:12px}.setting-row input{width:100%;accent-color:var(--blue)}.setting-row select{border:1px solid var(--line);border-radius:10px;padding:10px;width:100%;background:#f6faff;color:var(--navy)}.observatory{position:relative;isolation:isolate;text-align:center;min-height:650px;border-radius:30px;overflow:hidden;background:#cdefff;padding:55px 25px}.observatory>.scene-art{opacity:.7}.observatory:after{content:'';inset:0;position:absolute;background:linear-gradient(#e5f9ffdd,#e8f6ff80);z-index:-1}.observatory h1{font-size:clamp(38px,5vw,67px);line-height:1.25}.observatory .badge{display:inline-flex;padding:12px 23px;border-radius:40px;background:#fff;color:var(--blue);font-size:15px;font-weight:800;margin-bottom:25px}.observatory p{margin:20px auto;line-height:1.9;font-size:17px}.observatory .exploration-floor{font-family:Jua;font-size:150px;line-height:1.2;color:var(--yellow);text-shadow:0 5px 0 #d9a731,0 9px 22px #2c69a366}.observatory-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:25px}.summary{text-align:center;padding:45px 20px}.summary h1{font-size:40px;margin:20px 0}.summary p{font-size:17px;line-height:1.9;margin-bottom:25px}.summary .big-floor{font-family:Jua;font-size:90px;color:var(--blue)}.audio-indicator{color:#378167}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.empty{padding:30px;text-align:center;font-size:16px}.offline-status{max-width:55%}.status-line{font-size:13px;color:var(--muted);line-height:1.7;margin:13px 0}.modal .primary{width:100%;margin-top:15px}
@media(min-width:1500px){.app-shell{padding-top:40px}.scene{min-height:550px}.scene-copy{padding-top:70px}}@media(max-width:1100px){.app-shell{padding:22px}.layout{grid-template-columns:1fr 235px;gap:18px}.scene-copy{padding:35px 26px;max-width:62%}.scene{min-height:470px}.scene h1{font-size:44px}.side-panel{padding:20px 16px}.mode-card{padding:16px 12px;gap:8px}.mode-icon{width:40px}.mode-title{font-size:18px}.card-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.app-shell{padding:17px 15px}.brand-name{font-size:20px}.brand-sub{font-size:10px;letter-spacing:1px}.top-actions .pill{display:none}.layout{display:flex;flex-direction:column}.main-area,.side-panel{width:100%}.side-panel{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:0 18px;padding:18px}.side-heading{font-size:19px}.display{grid-column:2;grid-row:1/4;margin:0;padding:8px}.display b{font-size:49px}.floor-buttons{display:none}.tower-goal{grid-column:1;text-align:left;margin-top:8px}.observatory-button{grid-column:1/3;margin-top:13px}.scene{min-height:440px}.scene-copy{padding:32px 25px;max-width:68%}.scene h1{font-size:43px}.scene p{font-size:15px;margin:17px 0 23px}.scene-art{object-position:65% center}.scene:after{background:linear-gradient(90deg,#d7f7fff2,#def7ffb3 45%,#def7ff00 85%)}.eyebrow{font-size:11px;margin-bottom:17px}.mode-grid{gap:9px}.mode-card{display:block;padding:14px 12px}.mode-icon{height:40px;margin-bottom:11px}.mode-title{font-size:18px}.mode-note{font-size:11px}.section-label{margin-top:27px}.section-label h2{font-size:23px}.section-label span{font-size:11px}.footer{font-size:11px;align-items:flex-start}.question-title{font-size:26px}.game-content{padding:20px 15px;min-height:450px}.game-top h1{font-size:23px}.quiz-photo{height:210px}.answer{font-size:25px;min-height:68px}.compare-choice img{height:190px}.compare-choice .compare-name{font-size:20px}.card-grid{grid-template-columns:repeat(2,1fr);gap:12px}.collect-card img{height:170px}.collect-info{padding:13px}.collect-info h3{font-size:19px}.collection-header{align-items:flex-start;flex-direction:column}.collection-header h1{font-size:29px}.modal{padding:22px}.observatory{min-height:640px}.observatory p{font-size:15px}.topbar{gap:10px}.brand-icon{width:41px;height:43px}.icon-btn{width:40px;height:40px}.primary,.secondary{padding:14px 19px;font-size:16px}.question-count{font-size:12px}.quiz-bottom{flex-wrap:wrap}.offline-status{max-width:65%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}}

.measurement-note{text-align:center;font-size:13px;color:#56718d;margin:-10px 0 20px;line-height:1.6}

.quiz-photo img.photo-building,.compare-choice img.photo-building,.collect-card img.photo-building,.detail-image.photo-building{object-fit:contain;background:linear-gradient(135deg,#dbeeff,#eef7ff)}

/* Functional elevator destination controls */
.floor-dot{min-height:60px;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:5px;transition:background .15s,transform .15s,box-shadow .15s}
.floor-dot small{font-size:12px;line-height:1.2;font-weight:600}
.floor-dot:hover:not(:disabled){background:#dcecff;border-color:#89b7f5;color:#155fbe}
.floor-dot:active:not(:disabled){transform:translateY(3px);box-shadow:none}
.floor-dot.current:hover{background:var(--yellow);color:var(--navy)}
.floor-dot:disabled{opacity:.65}
.floor-help{font-size:12px;line-height:1.6;text-align:center;color:var(--muted);margin-top:12px}
@media(max-width:760px){.floor-buttons{display:grid;grid-column:1/3;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:18px}.floor-dot{aspect-ratio:auto;border-radius:15px;min-height:56px;font-size:18px}.floor-help{grid-column:1/3}.tower-goal{grid-row:2/4}.display{grid-row:1/4}}
@media(max-width:380px){.floor-buttons{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* World countries, capitals and flags */
.world-invite{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:28px;background:#e2efff;border:1px solid #c8ddf7;border-radius:26px;padding:30px;overflow:hidden}
.world-invite .eyebrow{margin-bottom:13px}.world-invite h2{font-size:32px}.world-invite p{font-size:15px;line-height:1.7;margin:12px 0 20px}.flag-preview{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;flex:0 0 170px;transform:rotate(7deg)}.flag-preview img{width:76px;height:51px;object-fit:contain;background:white;padding:5px;border-radius:7px;box-shadow:0 4px 10px #35629424}
.world-welcome{position:relative;background:linear-gradient(120deg,#d7edff,#e8f5ff);border:1px solid #c9e0f8;border-radius:26px;padding:32px}.world-welcome h2{font-size:40px;line-height:1.3}.world-welcome p{font-size:16px;line-height:1.8;margin-top:15px}.world-flag-line{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.world-flag-line .country-flag{width:65px;height:46px;background:white;border-radius:5px;padding:4px;box-shadow:0 3px 8px #194d7715}.country-flag{object-fit:contain;display:block}.world-modes{display:grid;gap:14px;margin-top:22px}.world-modes .mode-card{padding:20px 22px}.world-modes .mode-card>svg{margin-left:auto}
.country-card-photo{position:relative}.country-card-photo>.country-flag{position:absolute;width:60px;height:44px;right:13px;bottom:12px;object-fit:contain;border-radius:6px;padding:4px;background:white;box-shadow:0 2px 10px #0002}.country-figure{margin:0 0 18px}.country-figure .detail-image{margin-bottom:0}.country-figure figcaption{font-size:12px;color:var(--muted);margin-top:7px;line-height:1.6}.country-title-row{display:flex;align-items:center;gap:18px}.country-title-row>.country-flag{width:95px;height:65px;border:1px solid #dce6ef;background:#f7faff;padding:4px;border-radius:8px}.country-title-row h3{font-size:24px;margin-top:5px}.country-facts{display:grid;gap:18px;margin:22px 0;padding:20px;background:#f0f7ff;border-radius:18px}.country-facts h3{font-size:21px;margin-bottom:7px}.country-credits{margin-top:24px;font-size:13px;color:var(--muted)}.country-credits summary{cursor:pointer;padding:10px 0}.country-credits .credits{margin-top:5px}
.flag-question{display:grid;place-items:center;min-height:220px;border-radius:20px;background:#eff6ff;border:1px solid #dbe8f6;margin:0 auto;max-width:540px;padding:30px}.flag-question .country-flag{width:100%;max-width:290px;height:170px;filter:drop-shadow(0 3px 4px #16476920)}.capital-question-banner{display:flex;align-items:center;justify-content:center;gap:22px;background:#eff6ff;border-radius:20px;padding:28px}.capital-question-banner .country-flag{width:135px;height:90px}.capital-question-banner h3{font-size:32px}.capital-question-banner p{font-size:14px;color:var(--muted);margin-top:7px}.choice-help{font-size:13px;color:var(--muted);text-align:center;margin:20px 0 12px}.country-answers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.country-option{display:flex;align-items:stretch;gap:7px;min-width:0}.country-option .answer{flex:1;min-width:0;font-size:23px;display:flex;align-items:center;justify-content:center;gap:9px;padding:13px 8px;overflow-wrap:anywhere}.country-option .answer small{font:700 12px 'Noto Sans KR',sans-serif;color:#597da6}.country-option .choice-voice{align-self:center;width:42px;height:42px;flex-shrink:0}.country-reveal{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.country-reveal .country-figure{margin:0}.country-reveal .country-figure>img{width:100%;height:275px;object-fit:cover;border-radius:18px}.country-reveal-info>.country-flag{width:80px;height:55px;margin-bottom:14px}.country-reveal-info h3{font-size:23px;margin:15px 0 8px}.country-reveal-info p{font-size:15px;line-height:1.8}.country-next{display:flex;margin:18px auto 0}.country-quiz .question-title{font-size:29px}
@media(max-width:760px){.world-invite{padding:22px;gap:12px}.world-invite h2{font-size:27px}.world-invite p{font-size:14px}.flag-preview{flex-basis:108px;gap:10px}.flag-preview img{width:49px;height:36px;padding:3px}.world-welcome{padding:24px}.world-welcome h2{font-size:34px}.world-modes .mode-card{display:flex;gap:14px}.world-modes .mode-icon{margin-bottom:0;flex-shrink:0}.country-quiz .question-title{font-size:25px}.country-answers{grid-template-columns:1fr}.country-option .answer{min-height:63px;font-size:24px}.flag-question{min-height:180px;padding:20px}.flag-question .country-flag{height:140px}.country-reveal{grid-template-columns:1fr}.country-reveal .country-figure>img{height:200px}.country-reveal-info{position:relative}.country-reveal-info>.country-flag{float:right;margin:8px 0 10px 15px;width:68px;height:46px}.capital-question-banner{padding:20px;gap:16px}.capital-question-banner .country-flag{width:105px;height:70px}.capital-question-banner h3{font-size:28px}.world-flag-line{gap:9px}.world-flag-line .country-flag{width:53px;height:39px}}
@media(max-width:390px){.world-invite{display:block}.flag-preview{grid-template-columns:repeat(6,1fr);transform:none;margin-top:22px;gap:7px}.flag-preview img{width:100%;height:30px}}

.country-reveal-info p,.country-facts p,.world-invite p{word-break:keep-all;overflow-wrap:anywhere}

/* Bible story exploration: warm paper, large listening choices. */
.floor-dot[data-floor="13"]{grid-column:1/-1;aspect-ratio:auto;min-height:48px;border-radius:14px;display:flex;justify-content:center;gap:8px;background:#e8f5ef;color:#267455}.floor-dot[data-floor="13"].current{background:var(--yellow);color:var(--navy)}
.bible-invite{background:#eaf6eb;border-color:#c9e5cb}.bible-invite-art{width:40%;max-width:290px;aspect-ratio:3/2;object-fit:cover;border-radius:20px}.bible-welcome{background:#fff5d7;border:1px solid #ebddb1;border-radius:26px;padding:28px}.bible-welcome h2{font-size:36px;line-height:1.3}.bible-welcome p{font-size:16px;line-height:1.8;margin-top:14px}.bible-paths{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.bible-path{display:grid;grid-template-columns:1fr auto;overflow:hidden;padding:0;border:1px solid var(--line);border-radius:23px;background:white;text-align:left;box-shadow:var(--shadow)}.bible-path>img{width:100%;aspect-ratio:3/2;object-fit:cover;grid-column:1/-1}.bible-path>span{padding:19px 14px}.bible-path strong{display:block;font-family:Jua;font-weight:400;font-size:25px}.bible-path small{display:block;color:var(--muted);line-height:1.7;margin-top:6px}.bible-path>svg{align-self:center;margin-right:15px}.bible-atlas-link{width:100%;margin-top:23px}.bible-atlas-link>svg{margin-left:auto}.bible-card-heading{background:#fff0c9;padding:22px;min-height:140px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px}.bible-card.new .bible-card-heading{background:#def3e8}.bible-card-heading>span{font-size:13px;font-weight:700}.bible-card-heading>strong{font-family:Jua;font-weight:400;font-size:39px;grid-column:1/-1}.bible-card .collect-info{min-height:140px}.bible-story-text{background:#fff8e9;border:1px solid #f1e3be;padding:25px;border-radius:20px;margin:15px 0 22px}.bible-story-text .eyebrow{margin-bottom:13px}.bible-story-text h3{font-size:28px;margin-bottom:16px}.bible-story-text p{font-size:18px;line-height:1.9;word-break:keep-all;overflow-wrap:anywhere}.bible-thought{background:#e8f4ed;border-radius:14px;padding:17px;margin-top:22px}.bible-thought h4{font-size:14px;color:#2b7151;margin:0 0 6px}.bible-story-text .bible-reference{font-size:12px;color:var(--muted);margin-top:20px}.bible-story-image{width:100%;max-height:320px;object-fit:contain;border-radius:18px;background:#f0f8f1}.bible-quiz-label{display:flex;align-items:center;justify-content:center;gap:10px;padding:18px;background:#edf7f1;border-radius:16px;color:#397452;font-size:15px}.bible-quiz .question-title{word-break:keep-all;overflow-wrap:anywhere}.bible-answers .answer{font-size:23px;word-break:keep-all;overflow-wrap:anywhere;line-height:1.5}.bible-answers .country-option{min-width:0}.bible-answers{grid-template-columns:1fr}.bible-answers .answer{min-height:65px}
@media(max-width:760px){.bible-invite{display:block}.bible-invite-art{width:100%;max-width:none;margin-top:22px;max-height:200px;object-position:center 40%}.bible-paths{gap:12px}.bible-path>span{padding:14px 12px}.bible-path strong{font-size:23px}.bible-path small{font-size:12px}.bible-path>svg{display:none}.bible-path{grid-template-columns:1fr}.bible-welcome{padding:23px}.bible-welcome h2{font-size:31px}.bible-story-text{padding:20px}.bible-story-text p{font-size:17px}.bible-story-text h3{font-size:25px}.bible-quiz .question-title{font-size:26px}.bible-answers .answer{font-size:22px}.bible-card-heading{padding:16px;min-height:120px}.bible-atlas-link{display:flex}.bible-atlas-link .mode-icon{margin-bottom:0}}

.observatory .exploration-floor{font-size:clamp(64px,12vw,140px);overflow-wrap:anywhere}.exploration-floor span{font-size:32px;margin-left:9px}

/* Earned rewards and cosmetic tower themes. */
:root[data-theme="ocean"]{--blue:#087c9c;--paper:#edfaff;--navy:#123c55}:root[data-theme="forest"]{--blue:#257348;--paper:#eff9f0;--navy:#183f32}:root[data-theme="sunset"]{--blue:#b6522d;--paper:#fff4ed;--navy:#603a2b}:root[data-theme="cosmic"]{--blue:#7042b3;--paper:#f4efff;--navy:#382553}
:root[data-theme="ocean"] .display{background:#073f58}:root[data-theme="forest"] .display{background:#163f2b}:root[data-theme="sunset"] .display{background:#693518}:root[data-theme="cosmic"] .display{background:#30205f}
:root[data-theme]:not([data-theme="sky"]) .primary:hover{background:var(--blue);filter:brightness(1.1)}
.wallet-button{display:inline-flex;gap:7px;align-items:center;border:1px solid #e9c458;border-radius:24px;padding:10px 14px;background:#fff2bb;color:#755013;font-weight:800;min-height:44px}.wallet-button svg{fill:#f5cd4c;width:22px}.wallet-button:disabled{opacity:.65}.reward-ribbon{width:100%;display:flex;align-items:center;gap:14px;padding:16px 19px;border:1px solid #ead18a;border-radius:19px;background:#fff7d9;margin-bottom:18px;text-align:left}.ribbon-medal{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:#ffdf68;color:#8a5710;flex-shrink:0}.ribbon-medal svg{fill:#fff0a6}.reward-ribbon strong{font-family:Jua;font-size:23px;font-weight:400;display:block}.reward-ribbon small{display:block;font-size:13px;line-height:1.6;margin-top:4px;color:#786336}.ribbon-stars{margin-left:auto;display:flex;align-items:center;gap:10px;font-weight:800;font-size:16px;white-space:nowrap}.reward-side{display:block;width:100%;border:1px solid #e9d48e;background:#fff9e6;border-radius:14px;padding:13px 10px;margin-top:17px;text-align:left}.reward-side strong{display:block;font-size:15px}.reward-side span{display:block;font-size:12px;margin-top:6px;color:#756132}.reward-notice{display:flex;gap:10px;align-items:center;background:#fff3c4;border:1px solid #efd787;border-radius:16px;padding:14px 16px;margin:17px 0;color:#705111}.reward-notice strong{display:flex;align-items:center;gap:5px;font-family:Jua;font-size:24px;white-space:nowrap;font-weight:400}.reward-notice span{font-size:14px;line-height:1.7;word-break:keep-all}.reward-notice svg{fill:#f1c739}.result-stars{display:flex;justify-content:center;gap:17px;margin:8px 0 20px}.result-stars svg{width:50px;height:50px;color:#c88c13;fill:#ffdf68}.round-loot{display:flex;align-items:center;justify-content:center;gap:12px;background:#fff4c6;border-radius:18px;padding:20px;margin:10px 0 18px;font-size:18px}.round-loot strong{font-size:30px;color:#91680a}.summary-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.summary .win-rule{font-size:15px;color:var(--muted);margin:15px 0 25px}.reward-modal{width:min(1000px,100%)}.reward-room-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff5cf;border-radius:22px;padding:25px}.reward-room-hero h3{font-size:30px}.reward-room-hero .eyebrow{margin-bottom:12px}.reward-room-hero p{margin-top:8px;font-size:15px}.big-wallet{text-align:center;min-width:130px}.big-wallet svg{width:32px;height:32px;fill:#f5ce50;color:#ac7a09;display:inline-block}.big-wallet strong{display:block;font-family:Jua;font-size:53px;color:#80581c;font-weight:400}.big-wallet span{font-size:13px;color:#78632e}.reward-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:15px}.reward-stats span{display:block;background:#f0f6ff;border-radius:15px;text-align:center;padding:14px 6px;font-size:13px}.reward-stats b{display:block;font-family:Jua;font-weight:400;font-size:26px;margin-top:5px}.reward-section{margin-top:30px}.reward-section>h3{font-size:26px;margin-bottom:9px}.reward-section>p{font-size:14px;color:var(--muted);margin-bottom:17px}.mission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.mission{border:1px solid var(--line);border-radius:17px;padding:17px;background:#f7fbff}.mission strong{display:block;font-size:16px}.mission span,.mission small{display:block;font-size:13px;line-height:1.7;margin-top:8px}.mission progress{width:100%;height:10px;accent-color:var(--blue);display:block;margin:11px 0}.theme-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.theme-choice{border:2px solid var(--line);border-radius:18px;padding:13px;background:#fff;text-align:center;min-width:0}.theme-choice.selected{border-color:var(--blue);background:#edf5ff}.theme-choice:disabled{opacity:.6}.theme-swatch{height:68px;display:grid;place-items:center;color:white;border-radius:12px;margin-bottom:12px}.theme-swatch svg{height:34px;width:34px}.theme-choice strong{display:block;font-size:15px}.theme-choice small{display:block;line-height:1.6;margin-top:7px;font-size:12px}.theme-message{min-height:24px;font-size:15px!important;margin-top:10px}.badge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.achievement{display:flex;gap:12px;padding:16px 13px;border:1px solid var(--line);border-radius:18px;background:#f6f8fb;align-items:flex-start}.achievement.earned{background:#fffae4;border-color:#e9d289}.badge-symbol{width:33px;height:33px;border-radius:50%;display:grid;place-items:center;background:#e0e9f1;flex-shrink:0}.earned .badge-symbol{background:#ffdf68;color:#8b5e12}.earned .badge-symbol svg{fill:#fff2a8}.achievement h4{font-family:Jua;font-weight:400;font-size:19px;margin:0 0 6px}.achievement p{font-size:13px;line-height:1.6}.achievement small{display:block;font-size:12px;margin-top:8px;color:var(--muted)}.reward-rules{margin-top:24px;padding:18px;border:1px solid var(--line);border-radius:15px;font-size:14px;line-height:1.8}.reward-rules li{margin:9px 0}
@media(max-width:1000px){.top-actions>.pill{display:none}.badge-grid{grid-template-columns:repeat(2,1fr)}.theme-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.reward-side{grid-column:1/3}.reward-ribbon{padding:14px;gap:10px}.reward-ribbon strong{font-size:21px}.ribbon-stars{font-size:14px}.reward-notice{flex-direction:column;align-items:flex-start}.reward-modal{padding:21px 17px}.reward-room-hero{padding:18px;gap:13px}.reward-room-hero h3{font-size:25px}.big-wallet{min-width:85px}.big-wallet strong{font-size:42px}.reward-stats{grid-template-columns:repeat(2,1fr)}.mission-grid{grid-template-columns:1fr}.theme-grid{grid-template-columns:repeat(2,1fr)}.badge-grid{grid-template-columns:1fr}.summary .round-loot{flex-wrap:wrap;font-size:16px}.summary-actions>.primary,.summary-actions>.secondary{width:100%}.reward-ribbon small{font-size:12px}.ribbon-stars>svg{display:none}}
@media(max-width:480px){.brand-name{font-size:17px}.brand-sub{font-size:9px;letter-spacing:.3px}.brand{gap:8px}.brand-icon{width:34px;height:39px;border-radius:12px}.top-actions{gap:5px}.wallet-button{padding:8px;gap:4px;font-size:13px}.wallet-button svg{width:17px}.topbar{gap:6px}.top-actions .icon-btn{width:36px;height:38px}.ribbon-stars{display:none}.reward-room-hero{align-items:flex-start}.reward-room-hero .eyebrow{font-size:10px;padding:6px 8px}}
/* Guardian profiles reuse the game's large, friendly controls. */
.member-strip{display:flex;justify-content:space-between;gap:12px;max-width:1320px;margin:0 auto;padding:4px 24px 12px;font-size:14px;color:#42647a}.member-strip [data-member-label]{font-weight:800}.member-button{font-size:22px}.member-modal{max-width:720px}.member-intro{display:flex;align-items:center;gap:16px;background:#e9f5ff;border-radius:20px;padding:20px;margin:16px 0}.member-intro h3{margin:0 0 8px}.member-intro p{margin:0;font-size:14px}.member-avatar{font-size:40px}.member-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.member-card{border:1px solid #d5e3eb;border-radius:18px;padding:18px;margin:14px 0}.member-card.active{border:2px solid #2c8dab;background:#f3fbff}.member-card strong{font-size:18px}.member-card small{display:block;margin:8px 0 14px;font-size:14px}.member-card .primary,.member-card .secondary{font-size:14px;padding:12px 16px;min-height:44px}.member-form{border-top:1px solid #d5e3eb;margin-top:22px;padding-top:10px;display:grid;gap:12px}.member-form h3{margin-bottom:0}.member-form input:not([type=checkbox]),.member-form select{width:100%;font:inherit;border:1px solid #a5bac8;background:#fff;border-radius:12px;padding:12px;box-sizing:border-box;color:#173849}.member-form label{font-weight:700}.member-import{display:flex;gap:10px;align-items:center;font-size:14px}.member-import input{width:20px;height:20px;flex-shrink:0}.member-conflict{background:#fff4da;padding:16px;border-radius:12px;margin-top:16px}.member-conflict p,.member-privacy p{font-size:14px;line-height:1.7}.member-conflict button{margin:5px}.member-privacy{margin:20px 0}.google-login{width:100%}#member-message{color:#9c421f;font-size:15px;line-height:1.6}.member-modal button:disabled{opacity:.55;cursor:default}@media(max-width:480px){.topbar{flex-wrap:wrap}.top-actions{gap:6px}.member-strip{padding:4px 14px 12px;flex-direction:column;gap:3px}.member-card{padding:14px}.member-modal{padding:20px}.member-actions .primary{width:100%}}
