/* Ink, warm paper and a yellow local train. Flat colour, quiet outlines, clear controls. */
:root{--ink:#252620;--muted:#5E6256;--paper:#F7F5ED;--cream:#F5EDCE;--teal:#4B6341;--red:#8BA66A;--red-dark:#964D38;--yellow:#F2C52D;--mint:#E5EBD9;--blue:#E5EBD9;--line:#D6D6C8;--white:#FFFDF6;--radius:9px;--pop:'Jaken Pop','Hiragino Maru Gothic ProN','Yu Gothic',Meiryo,sans-serif}
body{background:var(--paper);font-family:var(--pop);font-size:16px;line-height:1.85;font-weight:600;color:var(--ink)}
button,select,textarea{font-family:inherit}
h1,h2,h3,.stat-num,.score,.letter,.bingo-caption strong,.bingo-number,.gourmet-count,.collection-summary strong{font-family:var(--pop);font-weight:800;letter-spacing:0}
h1{line-height:1.5}p,.tiny,.source,.source-date,.storage-note,.quiz-help{color:var(--muted)}
.eyebrow{font-size:11px;letter-spacing:.055em;font-weight:700}
a:focus-visible,button:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--teal);outline-offset:5px}
.header{background:var(--white);border-bottom:2px solid var(--ink)}
.header-inner{max-width:1160px;min-height:97px;padding:14px 30px;gap:24px}
.logo{font-family:var(--pop);font-size:38px;font-weight:900;letter-spacing:-2px;transform:none}
.logo span{color:var(--red)}.logo small{font-size:9px;letter-spacing:.08em;margin-top:2px;text-align:center}
.header nav{gap:8px;font-size:13px;align-self:center}
.header nav a{padding:10px 14px;border:1.5px solid transparent;border-radius:9px;min-height:45px}
.header nav a.active{background:var(--yellow);border-color:var(--ink);box-shadow:none}
.header nav a.active:after{display:none}.header nav a:hover{background:var(--cream)}
.profile-chip{font-size:12px;gap:7px}.avatar{width:32px;height:32px;border:1.5px solid var(--ink);background:var(--blue);transform:none}
main{max-width:1080px;padding:30px 0 60px}footer{max-width:1080px;border-top:2px dashed #B8BBAA;padding-top:26px;gap:20px}.footer-logo{font-family:var(--pop);letter-spacing:-1px}
.page-kicker{margin-bottom:19px}.page-kicker .eyebrow{font-size:12px;color:var(--teal)}.date{font-size:12px}
.home-grid{display:flex;flex-direction:column;gap:18px}
.daily-card{grid-template-columns:43% 57%;min-height:440px;border:1.5px solid var(--ink);border-radius:9px;background:var(--white);box-shadow:none;overflow:hidden}
.daily-copy{padding:29px 22px 29px 32px;grid-column:1;grid-row:1}
.daily-copy h1{font-size:40px;line-height:1.5;margin:18px 0 15px;letter-spacing:-1px}
.daily-copy h1 em{color:var(--red-dark);box-shadow:none;font-style:normal}
.daily-copy p{max-width:none;font-size:14px;line-height:1.9}.daily-meta{font-size:12px;gap:14px;margin:21px 0 17px}
.daily-copy .pill{background:var(--yellow);border:1.5px solid var(--ink);color:var(--ink);padding:3px 12px;transform:none;font-size:11px}
.daily-art{top:auto;right:auto;grid-column:2;grid-row:1;background:var(--paper);border-left:2px solid var(--ink);display:flex;align-self:stretch;opacity:1;position:relative;width:auto;height:auto;min-width:0}
.daily-art img{width:100%;height:100%;max-width:100%;min-height:440px;object-fit:contain;object-position:center;mix-blend-mode:normal}
.art-caption{position:absolute;bottom:18px;left:18px;right:18px;text-align:center;font-size:11px;background:var(--yellow);color:var(--ink);border:1.5px solid var(--ink);border-radius:9px;padding:7px 14px;box-shadow:none;transform:none;line-height:1.6}
.daily-note{font-size:11px;margin-top:13px}.pill{font-size:11px;letter-spacing:.02em}
.primary,.secondary{border:1.5px solid var(--ink);border-radius:9px;min-height:54px;font-size:15px;letter-spacing:0;padding:12px 21px;box-shadow:none;transition:transform .15s,box-shadow .15s,background .15s}
.primary{background:var(--yellow);color:var(--ink)}.primary:hover{background:#F6D560;transform:translateY(-2px)}.primary:active,.secondary:active{transform:translateY(3px);box-shadow:none}
.secondary{background:var(--white)}.secondary:hover{background:var(--blue);transform:translateY(-2px)}.text-button{color:var(--teal);font-size:13px}
.passport{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:6px 30px;padding:22px 27px;border:1.5px solid var(--ink);border-radius:9px;background:var(--blue)}
.passport-top{grid-column:1;grid-row:1}.passport h2{grid-column:1;grid-row:2;text-align:left;font-size:20px}.passport .rank-medallion,.passport .text-button{display:none}
.xp-wrap{grid-column:2;grid-row:1/3;align-self:center}.xp-line{font-size:11px;margin:0 0 8px}.track{height:11px;border:1.5px solid var(--ink);background:var(--white);border-radius:9px}.track span{background:var(--red);border-radius:9px}
.passport-stats{grid-column:3;grid-row:1/3;align-self:center;margin:0;padding:0;border:0}.passport-stats div+div{border-color:#BDC6AB}.stat-num{font-size:28px}.tiny{font-size:12px}
.jaken-icon{display:block;width:100%;height:100%;flex-shrink:0}.draft-link{color:var(--teal)}
.play-links{gap:15px;margin:24px 0}.play-links a{border:1.5px solid var(--ink);border-radius:9px;background:var(--white);min-height:77px;padding:15px;gap:10px;font-size:14px;box-shadow:none;color:var(--ink)}
.play-links a:nth-child(1){background:#F5EDCE}.play-links a:nth-child(2){background:#F3F0E4}.play-links a:nth-child(3){background:#E5EBD9}.play-links a:hover{color:var(--ink);border-color:var(--ink);transform:translateY(-2px);box-shadow:none}
.play-links a>span{display:block;width:34px;height:34px;flex-shrink:0}.play-links b{background:var(--white);border:1.5px solid var(--ink);border-radius:9px;padding:0 8px;font-size:11px}
.next-stop{background:#E5EBD9;border:1.5px solid var(--ink);border-radius:9px;padding:24px 28px;gap:22px;margin:28px 0}.next-stop .eyebrow{color:var(--teal);font-size:11px}.next-stop h2{font-size:22px;line-height:1.6}.next-stop p{font-size:13px}
.gourmet-teaser{background:var(--yellow);color:var(--ink);border:1.5px solid var(--ink);border-radius:9px;padding:27px 30px;margin:28px 0;box-shadow:none}
.gourmet-teaser .eyebrow{color:var(--red-dark);font-size:11px}.gourmet-teaser h2{font-size:23px;line-height:1.6}.gourmet-teaser p{color:#4C513D;font-size:13px}.gourmet-count{color:var(--ink)}
.gourmet-gold,.primary.gourmet-gold{background:var(--white);color:var(--ink);border:1.5px solid var(--ink);box-shadow:none}.gourmet-gold:hover{background:var(--cream)}
.section-heading h2{font-size:25px;letter-spacing:0}.section-heading p{font-size:13px}.section-heading a{color:var(--teal);font-size:13px}
.topic-section{margin:40px 0}.topic-section .eyebrow{color:var(--muted);font-size:11px;letter-spacing:.04em}
.topic-grid{gap:18px}.topic-card{border:1.5px solid var(--ink);border-radius:9px;padding:25px;background:var(--white);box-shadow:none}.topic-card:hover{border-color:var(--ink);background:#FFFDF6;transform:translateY(-3px)}
.topic-top{margin-bottom:13px}.topic-top .eyebrow{font-size:12px;color:var(--teal);letter-spacing:0}
.topic-symbol{border:0;width:53px;height:53px;border-radius:0;background:transparent;padding:1px;transform:none}
.topic-card h3{font-size:23px;letter-spacing:0}.topic-card>p{font-size:14px}.topic-bottom{border-color:var(--line);font-size:11px}.topic-bottom b{color:var(--teal);font-size:12px}
.ribbon{background:#F3F0E4;border:0;border-radius:9px;padding:21px 24px;margin:28px 0 36px}.ribbon-icon{width:38px;height:38px;flex-shrink:0}.ribbon strong{font-size:15px}.ribbon p{font-size:13px;color:var(--muted)}
.area-card{display:block;border:1.5px solid var(--ink);border-radius:9px;padding:23px;background:var(--white);box-shadow:none}.area-card:hover{background:var(--paper);border-color:var(--ink)}
.area-number{display:inline;font-size:11px;letter-spacing:0}.area-symbol{font-family:var(--pop);border:1.5px solid var(--ink);border-radius:9px;transform:none;box-shadow:none}
.area-card h3{font-size:21px}.area-card-bottom{font-size:11px}.area-card-bottom span{display:inline}
.view-heading{margin-bottom:28px;padding:6px 0 12px;border:0}.view-heading .eyebrow{color:var(--teal)}.view-heading h1{font-size:36px;line-height:1.6;letter-spacing:0}.view-heading p{font-size:14px;line-height:1.9}.heading-phrase{display:inline-block;white-space:nowrap}
.quiz-wrap{max-width:750px}.quiz-top{font-size:13px}.quiz-card{border:1.5px solid var(--ink);border-radius:9px;padding:32px;box-shadow:none}.quiz-card h1{font-size:27px;line-height:1.75;letter-spacing:0}
.question-meta .pill{background:var(--cream);border:1px solid var(--ink)}.question-context{border-color:var(--yellow);font-size:12px}
progress{height:11px;border:1.5px solid var(--ink);border-radius:9px;overflow:hidden}progress::-webkit-progress-bar{background:var(--white)}progress::-webkit-progress-value{background:var(--red);border-radius:9px}
.answer{border:1.5px solid #989D8B;border-radius:9px;font-size:16px;min-height:64px;padding:16px 18px;gap:15px}.answer:not(:disabled):hover{border-color:var(--ink);background:var(--cream)}
.letter{background:var(--blue);border:1.5px solid var(--ink);border-radius:9px;flex-shrink:0;width:34px;height:34px;font-size:15px;color:var(--ink)}
.answer.correct{background:#E5EBD9;border-color:var(--teal);padding:16px 18px}.answer.correct .letter{background:var(--teal);border-color:var(--teal);color:white}.answer.wrong{padding:16px 18px;border-color:var(--red-dark);background:#F7EAE1}.answer.wrong .letter{background:var(--red-dark);color:white;border-color:var(--red-dark)}.answer-label{flex-shrink:0;font-size:11px}
.feedback{border-radius:9px;background:var(--cream);border:0;padding:22px}.feedback h2{color:var(--teal);font-size:21px}.feedback p{font-family:'Yu Gothic',Meiryo,sans-serif;font-size:15px;font-weight:500;color:var(--ink)}.source,.source-label,.source-check{color:var(--teal)}
.combo-meter{border:1.5px solid #CBC4A5;background:#F5EDCE;border-radius:9px;padding:16px}.combo-dots span{border:1.5px solid var(--ink);font-family:var(--pop);color:var(--ink)}.combo-dots .filled{background:var(--yellow);border-color:var(--ink)}.combo-ready{background:var(--yellow);border-color:var(--ink)}.combo-ready strong{color:var(--ink)}
.gourmet-heading{background:var(--yellow);color:var(--ink);border:1.5px solid var(--ink);border-radius:9px}.gourmet-heading .pill,.gourmet-heading em{color:var(--red-dark)}.gourmet-heading p{color:var(--muted)}.gourmet-question-title{font-size:27px;letter-spacing:0}
.gourmet-notebook{border:1.5px solid var(--ink);border-radius:9px;background:var(--cream)}.gourmet-venue{border:1.5px solid var(--ink);border-radius:9px}.gourmet-notebook .eyebrow{color:var(--red-dark)}
.result-card{border:1.5px solid var(--ink);border-radius:9px;background:var(--white);box-shadow:none}.result h1{font-size:30px}.score{color:var(--red-dark);font-size:91px;letter-spacing:-4px}.score small{font-size:30px}.xp-gain{border:1.5px solid var(--ink);background:var(--yellow);transform:none}
.challenge-comparison{border:1.5px solid var(--ink);background:var(--cream);border-radius:9px}.challenge-comparison small{color:var(--muted)}.challenge-run-note{background:var(--cream);border-radius:9px}
.collection-summary{background:var(--blue);color:var(--ink);border:1.5px solid var(--ink);border-radius:9px}.collection-summary strong{font-size:44px}.collection-summary p{color:var(--ink)}
.badge{border:1.5px solid var(--ink);border-radius:9px}.badge-seal{font-family:var(--pop);border-color:var(--ink);background:var(--yellow);box-shadow:none}.badge.locked{background:#F0EFE7;color:var(--muted);border:1.5px dashed #A7AC99}.locked .badge-seal{box-shadow:none}
.notebook details{border:1.5px solid #A7AC99;border-radius:9px}.notebook details p{font-family:'Yu Gothic',Meiryo,sans-serif;font-weight:500}.ng{color:var(--red-dark)}.ok{color:var(--teal)}
.mini-button{border:1.5px solid var(--ink);border-radius:9px;background:var(--white);color:var(--ink);min-height:44px;font-size:12px}.mini-button:hover{color:var(--ink);border-color:var(--ink);background:var(--cream)}.mini-button[aria-pressed=true]{background:#F3F0E4;color:var(--ink);border-color:var(--ink)}
.saved-card,.challenge-entry,.challenge-how{border:1.5px solid var(--ink);border-radius:9px;background:var(--white)}.gourmet-saved,.challenge-how{background:var(--cream)}.saved-card h3{font-size:20px}.challenge-preview h2{font-family:var(--pop)}
.challenge-entry textarea,.copy-details textarea,dialog select{border:1.5px solid #A7AC99;border-radius:9px;background:var(--white)}.form-error{color:var(--red-dark)}.empty{border-radius:9px;border:1.5px dashed #A7AC99;background:var(--white)}
dialog{border:1.5px solid var(--ink);border-radius:9px;background:var(--paper);box-shadow:none}dialog::backdrop{background:#252620B8}.share-card-preview{border:1.5px solid var(--ink);border-radius:9px;box-shadow:none}.share-heading .eyebrow{letter-spacing:.03em}
#toast{background:var(--ink);border:1.5px solid white;border-radius:9px;color:white;box-shadow:none}
.bingo-board{max-width:810px;border:1.5px solid var(--ink);border-radius:9px;background:#F5EDCE;padding:28px;box-shadow:none}.bingo-caption{margin-bottom:24px}.bingo-caption .eyebrow{font-size:12px;color:var(--ink);letter-spacing:.03em}.bingo-caption strong{font-size:49px;color:var(--red-dark);line-height:1.4}.bingo-caption small{font-size:15px;color:var(--ink)}
.bingo-seal{border:1.5px solid var(--ink);outline:0;border-radius:9px;background:var(--white);color:var(--ink);height:87px;width:87px;font-size:12px;box-shadow:none;transform:none}.bingo-seal.earned{background:#DEE7CF;border-color:var(--ink);color:var(--ink)}
.bingo-grid{gap:12px}.bingo-cell{position:relative;border:1.5px solid var(--ink);border-radius:9px;background:var(--white);min-height:231px;padding:17px;gap:11px;box-shadow:none;overflow:hidden}.bingo-cell:hover{border-color:var(--ink);background:#FFFDF6;transform:translateY(-2px)}
.bingo-number{font-size:11px;letter-spacing:0;opacity:1;color:var(--muted)}.mission-mark{position:absolute;top:12px;right:12px;width:36px;height:36px;pointer-events:none;opacity:1!important}
.bingo-cell strong{font-size:17px;line-height:1.65;letter-spacing:0;margin-top:13px;text-wrap:balance}.bingo-cell>span:not(.bingo-number):not(.mission-meter):not(.mission-mark){font-size:12px;line-height:1.85;opacity:1;color:var(--muted)}.bingo-cell b{font-size:12px;font-weight:700}
.mission-meter{height:7px;background:#E7E7DB;border-radius:9px}.mission-meter i{background:var(--teal)}
.bingo-cell.complete{background:#E5EBD9;color:var(--ink);border-color:var(--ink)}.bingo-cell.complete:after{display:none}.bingo-cell.complete .bingo-number{color:var(--teal)}.bingo-cell.complete .mission-meter i{background:var(--teal)}.bingo-note{color:#4C513D;font-size:12px;line-height:1.9}
@media(max-width:1160px){main,footer{margin-left:30px;margin-right:30px}.header-inner{gap:18px}.header nav{gap:3px}.header nav a{padding:10px}.daily-copy h1{font-size:36px}.daily-copy{padding-left:28px}.daily-meta{gap:10px}}
@media(max-width:900px){.header-inner{flex-wrap:wrap;padding:16px 25px;gap:14px}.header nav{order:3;flex-basis:100%;justify-content:center;padding-bottom:3px}.profile-chip{margin-left:auto}.daily-card{grid-template-columns:46% 54%}.daily-copy{padding:27px 20px}.daily-copy h1{font-size:33px}.daily-copy p{font-size:13px}.daily-meta{font-size:11px;gap:9px}.play-links a{font-size:12px;padding:13px 10px;gap:7px}.play-links a>span{width:28px;height:28px}.passport{gap:6px 20px;padding:20px}.passport h2{font-size:18px}.section-heading h2{font-size:23px}}
@media(max-width:680px){
 .header-inner{padding:15px 16px 14px;gap:12px}.logo{font-size:31px;letter-spacing:-2px}.logo small{font-size:8px}.profile-chip{font-size:11px}.header nav{gap:5px;justify-content:space-between;font-size:11px}.header nav a{padding:7px 8px;min-height:37px}.avatar{width:29px;height:29px}
 main{padding:23px 0 42px;margin:0 17px}footer{margin:0 17px;padding:23px 0 28px;gap:10px;flex-wrap:wrap;font-size:10px}.footer-logo{font-size:22px}
 .page-kicker{gap:9px;margin-bottom:16px}.page-kicker .eyebrow{font-size:10px;letter-spacing:0;max-width:215px}.date{font-size:10px;white-space:nowrap}
 .daily-card{display:flex;flex-direction:column;border-radius:9px;min-height:0;box-shadow:none}.daily-art{order:0;border:0;border-bottom:2px solid var(--ink);width:100%;aspect-ratio:3/2}.daily-art img{height:100%;min-height:0;object-fit:contain;aspect-ratio:3/2}.art-caption{bottom:12px;left:13px;right:13px;font-size:10px;padding:5px 10px}
 .daily-copy{order:1;padding:24px 23px 25px}.daily-copy h1{font-size:34px;line-height:1.45;margin:17px 0 14px;letter-spacing:-1px}.daily-copy h1 em{display:inline-block;white-space:nowrap}.daily-copy p{font-size:13px}.daily-meta{font-size:11px;gap:17px;margin:17px 0 15px}.daily-copy .primary{width:100%}.daily-note{text-align:center;font-size:11px}
 .passport{grid-template-columns:1fr 1fr;border-radius:9px;padding:19px 20px;gap:10px 16px}.passport-top{grid-column:1;grid-row:1}.passport h2{grid-column:1;grid-row:2;font-size:17px}.passport .eyebrow{font-size:10px}.passport .tiny{font-size:10px}.xp-wrap{grid-column:1/3;grid-row:3}.passport-stats{grid-column:2;grid-row:1/3}.stat-num{font-size:24px}.xp-line{font-size:10px;margin:3px 0 6px}
 .play-links{gap:8px;margin:22px 0}.play-links a{padding:13px 5px;gap:7px;min-height:110px;border-radius:9px;flex-direction:column;font-size:10px;line-height:1.7}.play-links a>span{width:31px;height:31px}.play-links b{margin-left:0;font-size:10px}
 .next-stop{padding:21px;border-radius:9px;gap:19px;margin:25px 0}.next-stop h2{font-size:20px;line-height:1.7}.next-stop p{font-size:13px}.next-stop>div{min-width:0;flex-basis:100%}.next-stop .primary{width:100%}.gourmet-teaser{padding:23px 21px;border-radius:9px;margin:25px 0}.gourmet-teaser h2{font-size:20px;line-height:1.8}.gourmet-teaser p{font-size:12px}.gourmet-count{font-size:23px}
 .section-heading{gap:13px;align-items:flex-end}.section-heading h2{font-size:22px;line-height:1.6}.section-heading p{font-size:12px}.section-heading a{font-size:11px}.topic-section{margin:32px 0}.topic-section h2{font-size:22px}.topic-grid{grid-template-columns:1fr;gap:17px}.topic-card{padding:22px;border-radius:9px}.topic-card h3{font-size:23px}.topic-card>p{font-size:13px}.topic-top .eyebrow{font-size:11px}.topic-symbol{width:48px;height:48px}.topic-bottom{font-size:10px;gap:6px}.topic-bottom b{font-size:11px}
 .ribbon{padding:19px;gap:12px}.ribbon-icon{width:31px;height:31px}.ribbon strong{font-size:14px}.ribbon p{font-size:12px}.ribbon .text-button{display:none}.area-grid{gap:14px;grid-template-columns:1fr}.area-card{padding:21px;border-radius:9px}.area-card h3{font-size:22px}.area-card-top{display:flex;margin-bottom:13px}.area-symbol{width:42px;height:42px;font-size:22px}.area-number{font-size:11px}.area-card-bottom{display:flex;margin-top:14px;font-size:11px}
 .view-heading h1{font-size:29px;line-height:1.6}.view-heading p{font-size:13px}.view-heading .eyebrow{font-size:10px}.view-heading{padding-top:0;margin-bottom:23px}.quiz-card{padding:23px 20px;border-radius:9px;margin-top:18px}.quiz-card h1{font-size:23px;line-height:1.8;margin:20px 0 24px}.question-meta .pill{font-size:10px}.quiz-top{font-size:12px}.question-context{font-size:11px}.answer{font-size:15px;padding:14px 12px;gap:11px;min-height:64px}.answer.correct,.answer.wrong{padding:14px 12px}.letter{width:31px;height:31px;font-size:13px}.answer-label{font-size:10px}.feedback{padding:20px 16px}.feedback p{font-size:14px}.feedback h2{font-size:19px}.next-row .primary{width:100%}.combo-meter{padding:13px;gap:11px}.combo-dots span{width:23px;height:23px;font-size:10px}.combo-meter strong{font-size:12px}.combo-meter p{font-size:11px}
 .gourmet-heading{padding:25px 22px}.gourmet-heading h1{font-size:29px}.gourmet-question-title{font-size:23px}.gourmet-notebook{padding:21px 16px}.gourmet-venue-grid{grid-template-columns:1fr}.gourmet-notebook h2{font-size:22px}.result-card{padding:29px 20px}.result h1{font-size:27px}.score{font-size:81px}.score small{font-size:26px}.result-message{font-size:14px}.result-actions .primary,.result-actions .secondary{font-size:13px}.collection-summary{padding:23px}.collection-summary p{font-size:12px}.collection-grid{grid-template-columns:repeat(2,1fr);gap:12px}.badge{padding:22px 12px}.badge h2{font-size:16px}.badge p{font-size:12px}
 .saved-columns,.challenge-layout{grid-template-columns:1fr}.saved-card,.challenge-entry,.challenge-how{padding:23px 20px}.share-layout{grid-template-columns:1fr;gap:20px}.wide-dialog{padding:21px}.share-heading h2{font-size:23px}.share-card-preview{max-width:310px}.share-controls .primary,.share-controls .secondary{width:100%}.challenge-preview h2{font-size:27px}
 .bingo-board{padding:23px 12px 21px;border-radius:9px;box-shadow:none}.bingo-caption{padding:0 6px;margin-bottom:21px}.bingo-caption strong{font-size:42px}.bingo-caption small{font-size:12px}.bingo-caption .eyebrow{font-size:10px}.bingo-seal{width:72px;height:72px;font-size:10px;border-radius:9px}.bingo-grid{gap:8px}.bingo-cell{padding:12px 8px;min-height:228px;gap:9px;border-radius:9px}.bingo-number{font-size:9px}.mission-mark{width:29px;height:29px;top:10px;right:7px}.bingo-cell strong{font-size:13px;line-height:1.65;margin-top:16px;letter-spacing:0}.bingo-cell>span:not(.bingo-number):not(.mission-meter):not(.mission-mark){font-size:10px;line-height:1.8}.bingo-cell b{font-size:10px}.bingo-note{font-size:11px;line-height:1.9;margin-top:21px}
}
@media(max-width:360px){main,footer{margin-left:12px;margin-right:12px}.header nav{gap:2px;font-size:10px}.header nav a{padding:7px 4px}.daily-copy{padding:21px 18px 23px}.daily-copy h1{font-size:29px}.daily-meta{gap:11px}.daily-copy p{font-size:12px}.passport{padding:17px 15px;gap:8px 10px}.passport h2{font-size:15px}.view-heading h1{font-size:25px}.section-heading h2{font-size:20px}.bingo-board{padding:20px 8px}.bingo-grid{gap:6px}.bingo-cell{padding:12px 7px;min-height:247px}.bingo-cell strong{font-size:12px;margin-top:20px}.mission-mark{width:26px;height:26px;right:5px;top:10px}.bingo-cell b{font-size:9px}.quiz-card{padding:21px 15px}.quiz-card h1{font-size:21px}.answer{font-size:14px}.gourmet-question-title{font-size:21px}.primary,.secondary{font-size:14px}.play-links a{font-size:9px}.topic-bottom{flex-wrap:wrap}}

/* Ink drawings keep their irregular contours; no sticker frame or rotation. */
.area-symbol{display:block;width:64px;height:64px;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent;transform:none;flex-shrink:0}
.topic-symbol{width:64px;height:64px;padding:0;transform:none}
.badge-seal{padding:10px;background:#FFFDF6;transform:none;box-sizing:border-box}
.badge-seal .jaken-icon{width:100%;height:100%}
.play-links a>span{width:40px;height:40px}
.ribbon-icon{width:44px;height:44px}
@media(max-width:680px){.area-symbol,.topic-symbol{width:56px;height:56px}.play-links a>span{width:36px;height:36px}.ribbon-icon{width:38px;height:38px}.mission-mark{width:32px;height:32px}}
@media(max-width:360px){.mission-mark{width:28px;height:28px}}

/* The illustration supplies the character; interface surfaces stay light and flat. */
.header{background:var(--paper)}
.logo{color:var(--ink)}.logo span{color:var(--ink)}
.header nav a{border-radius:6px}.header nav a.active{background:var(--yellow);box-shadow:none}
.avatar{background:var(--cream)}
.daily-card{grid-template-columns:40% 60%;background:#FAF9F3;border-radius:9px;box-shadow:none}
.daily-copy{padding:30px}.daily-copy h1{font-size:39px;line-height:1.45}
.daily-copy h1 em{color:var(--ink);box-shadow:inset 0 -8px 0 var(--yellow)}
.daily-copy .pill{background:transparent;border:0;border-bottom:2px solid var(--yellow);border-radius:0;padding:0 0 4px;color:var(--teal)}
.daily-art{border:0;background:transparent;align-self:center;display:block;padding:8px 12px 8px 0}
.daily-art img{display:block;width:100%;height:auto;min-height:0;aspect-ratio:1639/959;object-fit:contain}
.primary,.secondary{border-radius:6px;box-shadow:none}
.primary:hover,.secondary:hover,.play-links a:hover,.topic-card:hover,.bingo-cell:hover{transform:none;box-shadow:none}
.primary:active,.secondary:active{transform:translateY(1px);box-shadow:none}
.secondary:hover{background:var(--cream)}
.passport{background:var(--white);border-color:var(--line);border-top:3px solid #8BA66A}
.track span{background:#8BA66A}.track,.mission-meter,progress{border-radius:3px}
.play-links a:nth-child(n){background:var(--white)}.play-links a:hover{background:var(--cream)}
.next-stop{background:#E5EBD9;border-color:#ACB99A}
.gourmet-teaser{background:var(--cream);border-color:var(--ink)}
.gourmet-teaser .eyebrow,.gourmet-heading .pill,.gourmet-heading em,.gourmet-notebook .eyebrow{color:var(--teal)}
.ribbon{background:#E9EDDF;border-left:3px solid #8BA66A;border-radius:0}
.area-card,.topic-card{border-color:#A7AC99}.area-card:hover,.topic-card:hover{border-color:var(--ink);background:var(--white)}
.feedback{border-left:3px solid var(--teal);border-radius:0;background:#EDF0E4}
.answer{background:var(--white)}.letter{background:var(--cream);border-radius:4px}
.answer.correct .letter{background:var(--teal);color:var(--white)}
.answer.wrong .letter{background:var(--red-dark);color:var(--white)}
.collection-summary{background:var(--cream)}.collection-summary strong{white-space:nowrap}
.badge-seal{box-shadow:none}.badge.locked{border-color:#A7AC99}
.bingo-caption strong,.score{color:var(--ink)}
.bingo-seal{border-radius:50%;box-shadow:none;background:var(--white);transform:none}
.bingo-seal.earned{background:#DEE7CF}.bingo-cell.complete{background:#E5EBD9}
.share-card-preview{box-shadow:none;border-radius:6px}
.mini-button[aria-pressed=true]{background:var(--yellow)}
@media(max-width:900px){.daily-card{grid-template-columns:44% 56%}.daily-copy{padding:25px}.daily-copy h1{font-size:33px}}
@media(max-width:680px){
 .daily-card{border-radius:8px}.daily-art{width:100%;aspect-ratio:1639/959;padding:0;border:0;border-bottom:1.5px solid var(--ink);align-self:stretch}
 .daily-art img{height:auto;aspect-ratio:1639/959;min-height:0}.daily-copy{padding:23px}.daily-copy h1{font-size:32px;line-height:1.4}
 .play-links a{border-radius:7px}.bingo-board,.bingo-cell,.quiz-card,.result-card,.gourmet-heading,.gourmet-notebook,.badge,.saved-card,.challenge-entry,.challenge-how{border-radius:8px}
 .collection-summary{display:flex;flex-wrap:wrap;gap:12px 22px}.collection-summary strong{font-size:38px;white-space:nowrap}
}
@media(max-width:360px){.daily-copy{padding:21px 18px}.daily-copy h1{font-size:29px}}

/* Simple navigation and progressive disclosure: play, choose, keep. */
.header-inner{min-height:78px;justify-content:space-between;gap:30px;padding-top:10px;padding-bottom:10px}
.logo{font-size:33px;flex-shrink:0}.header nav{margin-left:auto;font-size:14px;gap:20px}
.header nav a{padding:10px 3px;border:0;border-bottom:2px solid transparent;border-radius:0;min-height:44px}
.header nav a.active{background:transparent;border-color:var(--ink);box-shadow:none}.header nav a:hover{background:transparent;color:var(--teal)}
main{padding-top:36px}main[data-view="home"]{max-width:1020px}main[data-view="explore"],main[data-view="areas"],main[data-view="topics"],main[data-view="collection"]{max-width:820px}
.simple-hero{border:0;border-radius:0;background:transparent;box-shadow:none;grid-template-columns:42% 58%;min-height:350px;align-items:center}
.simple-hero .daily-copy{padding:20px 30px 20px 0}.simple-hero h1{font-size:36px;line-height:1.5;margin:0 0 19px;letter-spacing:-1px}
.simple-hero h1 em{box-shadow:none;color:var(--ink)}.simple-hero .daily-copy>p{font-size:14px;line-height:1.8;margin:0 0 24px}
.simple-hero .daily-copy .daily-status{font-size:12px;color:var(--muted);margin:0 0 12px}
.simple-hero .daily-art{padding:0;border:0}.simple-hero .primary{min-width:245px}
.home-links{display:flex;gap:30px;margin:24px 0 0;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.home-links a{display:flex;align-items:center;gap:18px;color:var(--ink);font-size:14px;text-decoration:none;min-height:44px}
.home-links a:hover,.home-record a:hover{text-decoration:underline}
.home-record{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:24px;font-size:12px;color:var(--muted)}
.home-record a{color:var(--teal);padding:8px 0;white-space:nowrap;text-decoration:none}
.home-reward{font-size:12px;margin-top:16px;color:var(--muted)}
.compact-heading{margin-bottom:24px}.compact-heading h1,.record-heading h1{font-size:30px;line-height:1.5;margin:0 0 10px}
.choice-tabs{display:flex;gap:25px;border-bottom:1px solid var(--line);margin-bottom:12px}
.choice-tabs a{padding:12px 5px;text-decoration:none;color:var(--muted);border-bottom:2px solid transparent;font-size:14px}
.choice-tabs a[aria-current]{border-color:var(--ink);color:var(--ink)}
.quiz-choices{display:grid;grid-template-columns:1fr}
.choice-row{display:grid;grid-template-columns:56px minmax(0,1fr) 20px;align-items:center;gap:22px;width:100%;min-height:105px;text-align:left;padding:18px 8px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}
.choice-row:hover{background:var(--cream)}.choice-icon{display:block;width:52px;height:52px}.choice-copy{display:grid;gap:6px}.choice-copy strong{font-size:19px;line-height:1.5}.choice-copy>small{color:var(--muted);font-size:12px}.choice-arrow{font-size:19px}
.home-tag{font-size:10px;color:var(--teal);margin-left:6px}.choice-help{font-size:12px;margin:24px 0;line-height:1.8}
.record-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.record-heading h1{margin:0}.record-heading .text-button{font-size:12px;min-height:44px}
main[data-view="collection"] .passport{border:0;background:transparent;padding:0 0 24px;border-bottom:1px solid var(--line);border-radius:0}
.play-links.record-links{display:block;margin:12px 0 26px}
.play-links.record-links a{display:flex;flex-direction:row;min-height:62px;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;padding:12px 0;gap:12px;font-size:14px;text-align:left}
.play-links.record-links a:hover{background:var(--cream);transform:none}
.play-links.record-links b{background:transparent;border:0;font-size:12px;margin-left:auto;color:var(--muted);padding:0}
.play-links.record-links a>span{width:auto;height:auto;font-size:16px;margin-left:auto}.play-links.record-links b+span{margin-left:0}
.play-links.simple-back{display:block;margin-top:28px}.play-links.simple-back a{display:inline-flex;flex-direction:row;padding:10px 0;min-height:44px;background:transparent;border:0;box-shadow:none;font-size:13px}
.record-review{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:4px 0 22px;font-size:13px}.record-review button{min-height:44px}
.record-sections{border-top:1px solid var(--line)}.record-section{border-bottom:1px solid var(--line)}
.record-section>summary{display:flex;align-items:center;gap:16px;cursor:pointer;list-style:none;padding:21px 0;font-size:16px}
.record-section>summary::-webkit-details-marker{display:none}.record-section>summary small{margin-left:auto;font-size:12px;color:var(--muted)}
.record-section>summary:after{content:'＋';font-size:20px;font-weight:400;width:22px;text-align:center}.record-section[open]>summary:after{content:'−'}
.record-content{margin:0 0 24px}.record-content .gourmet-notebook{margin-top:0}.record-content.collection-grid{gap:12px}.record-content .badge{padding:22px 15px}
.simple-combo{display:flex;align-items:center;gap:8px;border:0;background:transparent;padding:9px 0;margin:0 0 12px;border-radius:0}
.simple-combo>span{display:block;width:25px;height:25px;flex-shrink:0}.simple-combo p{font-size:12px;margin:0;color:var(--muted)}.simple-combo.combo-ready p{color:var(--teal)}
.quiz-card .question-meta{font-size:11px}.quiz-card h1{font-size:25px}.quiz-card{box-shadow:none}
footer{border-top:1px solid var(--line);justify-content:space-between}.footer-logo{font-size:21px}
@media(max-width:900px){main[data-view="home"]{margin-left:25px;margin-right:25px}.simple-hero{grid-template-columns:44% 56%}.simple-hero h1{font-size:30px}.simple-hero .daily-copy{padding-right:16px}}
@media(max-width:680px){
 .header-inner{flex-wrap:nowrap;min-height:72px;padding:10px 17px;gap:15px}.logo{font-size:28px}.header nav{order:0;flex-basis:auto;gap:15px;justify-content:flex-end;font-size:12px;padding:0}.header nav a{padding:10px 0;min-height:44px;white-space:nowrap}
 main{padding-top:25px}main[data-view="home"]{margin-left:20px;margin-right:20px}.simple-hero{min-height:0}.simple-hero .daily-art{order:0;border:0;padding:0;margin:0 0 22px;aspect-ratio:1639/959}.simple-hero .daily-copy{padding:0;width:100%}.simple-hero h1{font-size:30px;margin:0 0 10px;line-height:1.45}.simple-hero .daily-copy>p{font-size:13px;margin-bottom:20px}.simple-hero .daily-copy .daily-status{font-size:11px;margin-bottom:10px}.simple-hero .primary{width:100%;min-height:52px}
 .home-links{display:block;margin-top:25px;padding:9px 0}.home-links a{font-size:13px;min-height:48px;justify-content:space-between}.home-record{font-size:11px;margin-top:14px;gap:10px}.home-reward{font-size:11px;margin-top:12px;line-height:1.8}
 .compact-heading h1,.record-heading h1{font-size:26px}.record-heading{margin-bottom:22px}.record-heading .text-button{font-size:11px}.choice-row{grid-template-columns:44px minmax(0,1fr) 16px;gap:14px;min-height:94px;padding:15px 0}.choice-icon{width:44px;height:44px}.choice-copy strong{font-size:17px}.choice-copy>small{font-size:11px}.choice-tabs a{font-size:13px}
 .record-review{font-size:12px}.record-section>summary{font-size:15px}.play-links.record-links a{font-size:13px}.record-content .badge h2{font-size:15px}.record-content .badge p{font-size:11px}.quiz-card h1{font-size:21px}
}
@media(max-width:360px){.header-inner{padding-left:12px;padding-right:12px;gap:10px}.logo{font-size:25px}.header nav{gap:12px;font-size:11px}main[data-view="home"]{margin-left:16px;margin-right:16px}.simple-hero h1{font-size:28px}.choice-copy strong{font-size:15px}.choice-copy>small{font-size:10px}.record-heading h1{font-size:23px}.record-heading .text-button{font-size:10px}}

/* Survival: one score and three clearly labelled lives. */
.survival-meter{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 0 10px;border-bottom:1px solid var(--line)}
.survival-meter>strong{font-size:32px;line-height:1.3}.survival-meter small{font-size:15px}.survival-meter>span{font-size:13px}.survival-meter b{letter-spacing:5px;color:var(--teal);font-size:21px}
.survival-help{font-size:12px;color:var(--muted);margin:10px 0 18px}.survival-best{font-size:14px;margin:16px 0 24px}.survival-best strong{margin-left:10px}
.course-actions{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;margin-bottom:26px}.course-actions .text-button{min-height:44px}
progress[hidden]{display:none}.result .score{overflow-wrap:anywhere}
@media(max-width:400px){.survival-meter>strong{font-size:29px}.survival-meter b{font-size:18px;letter-spacing:3px}.result .score{font-size:64px}}

/* An optional name entry; the score stays the focus. */
.ranking-entry{text-align:left;margin:24px 0 16px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ranking-entry summary{font-size:15px;cursor:pointer;line-height:1.7}.ranking-entry summary small{color:var(--muted);font-size:12px;display:inline-block;margin-left:8px}
.ranking-entry form{padding-top:18px}.ranking-entry label{font-size:14px;display:block;margin-bottom:8px}.ranking-entry input[type=text]{width:100%;padding:12px;font:inherit;background:var(--white);border:1px solid var(--line);border-radius:6px;font-size:16px}
.ranking-entry .ranking-consent{display:flex;align-items:flex-start;gap:10px;margin:20px 0;line-height:1.7}.ranking-consent input{width:19px;height:19px;flex-shrink:0;margin-top:3px;accent-color:var(--teal)}
.ranking-help{font-size:13px;line-height:1.8;color:var(--muted)}#ranking-status{color:var(--teal);min-height:1.8em}.ranking-result-link{display:inline-block;padding:8px 0;color:var(--teal);font-size:14px}
main[data-view=ranking]{max-width:820px}.ranking-toolbar{display:flex;justify-content:space-between;align-items:center;font-size:14px;margin-bottom:16px}.ranking-toolbar button{min-height:44px}
.ranking-mine{background:#E5EBD9;padding:16px;font-size:14px;line-height:1.8}.ranking-mine strong{margin:0 8px}.ranking-table{border-collapse:collapse;width:100%;table-layout:fixed}.ranking-table th{text-align:left;font-size:13px;font-weight:400;color:var(--muted);padding:16px 8px;border-bottom:1px solid var(--line)}
.ranking-table td{padding:18px 8px;border-bottom:1px solid var(--line);font-size:17px;overflow-wrap:anywhere}.ranking-table th:first-child{width:60px}.ranking-table th:last-child{width:100px;text-align:right}.ranking-table td:last-child{text-align:right;white-space:nowrap}.ranking-table td:nth-child(2)>small{display:block;margin-top:6px;font-size:12px;color:var(--muted)}.ranking-table small{font-size:12px}
.preview-note{border-left:3px solid var(--yellow);padding-left:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:400px){.ranking-table th:first-child{width:43px}.ranking-table th:last-child{width:74px}.ranking-table td{font-size:15px;padding:16px 5px}.ranking-entry summary{font-size:14px}}

/* Picture questions keep the full scene visible, including stairs and train. */
.question-illustration{margin:20px 0 24px}.question-illustration img{display:block;width:100%;height:auto;object-fit:contain;background:var(--white);border-radius:6px}
.question-illustration figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;font-size:12px;color:var(--muted)}.question-illustration .text-button{min-height:44px;flex-shrink:0;font-size:12px}.question-zoom{display:block;width:100%;height:auto}.source-note{font-size:12px;line-height:1.8;color:var(--muted);margin-top:16px}.image-error{font-size:14px;color:var(--red-dark)}.image-error[hidden]{display:none}
.review-item .question-illustration,.saved-card .question-illustration{margin:16px 0}.quiz-card:has(.question-illustration) h1{font-size:23px}
@media(max-width:680px){.quiz-card:has(.question-illustration){padding:20px 16px}.quiz-card:has(.question-illustration) h1{font-size:20px}.question-illustration{margin:16px -7px 20px}.question-illustration figcaption{font-size:11px;gap:5px}.question-illustration .text-button{font-size:11px}}
