:root{--ink:#273e34;--muted:#73796e;--paper:#faf9f5;--line:#e4e5dc;--green:#344e40;--sage:#e8ede4;--gold:#b89458;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #b88d46;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.18}h1{font-size:clamp(36px,4vw,57px)}h2{font-size:34px}h3{font-size:23px}p{color:#687065}small{font-size:16px}svg{flex-shrink:0;vertical-align:middle}.site-header{max-width:1320px;margin:auto;height:100px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:0 42px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;font-family:var(--serif);font-size:27px;line-height:1.25;letter-spacing:-1px}.brand-mark{display:grid;place-items:center;background:var(--green);color:#f5edda;border-radius:11px;width:44px;height:46px}.brand-light{font-weight:400;color:#68775d}.brand small{display:block;font-family:var(--sans);font-size:14px;letter-spacing:1.55px;margin-top:7px;color:#727b6d}.site-header nav{display:flex;align-items:center;gap:29px;font-size:16px}.site-header nav a{position:relative;padding:37px 0;color:#727669}.site-header nav a.active{color:var(--green)}.site-header nav a.active:after{content:'';position:absolute;bottom:23px;left:0;right:0;height:2px;background:var(--green)}.header-account{display:flex;gap:22px;align-items:center;font-size:16px}.header-account form{margin:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:19px;background:var(--green);color:#fffdf6;border:1px solid var(--green);border-radius:7px;padding:14px 22px;font-weight:500;font-size:16px;transition:background .2s,transform .2s}.button:hover:not(:disabled){background:#263d31;transform:translateY(-1px)}.button.small{padding:9px 15px;font-size:16px;gap:11px}.button.secondary{background:transparent;color:var(--green);border-color:#cdd4c7}.button.secondary:hover:not(:disabled){background:#edf0e7}.button.full{width:100%;margin-top:26px}.text-button{border:0;background:none;padding:5px;color:var(--green);font-size:16px}.text-button:hover{text-decoration:underline}.eyebrow{display:block;font-size:14px;font-weight:600;letter-spacing:1.8px;line-height:1.6;color:#76806c;margin-bottom:17px}.hero{max-width:1320px;margin:auto;padding:52px 42px 46px;display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center}.hero-copy{padding:18px 0}.hero-copy h1{font-size:clamp(38px,4.1vw,58px);margin:23px 0}.hero-copy h1 em{font-weight:400;color:#738367}.hero-copy p{font-size:17px;max-width:430px;line-height:1.9;margin:0 0 26px}.tiny-star{font-size:21px;margin-right:9px;color:var(--gold)}.hero-features{display:flex;gap:19px;margin-top:24px;font-size:14px;color:#747b6e}.hero-features span{display:flex;align-items:center;gap:5px}.hero-art{height:379px;position:relative;border-radius:180px 180px 14px 14px;background:#e6dac5;overflow:hidden}.hero-art>.illustration{height:100%;width:100%;object-fit:cover}.art-label{position:absolute;bottom:35px;left:34px;display:flex;align-items:center;gap:12px;border:1px solid #ffffffb0;background:#faf6e8e8;border-radius:9px;box-shadow:0 6px 24px #68513015;padding:14px 19px;font-family:var(--serif);font-size:16px}.art-label small{display:block;color:#72765f;font-family:var(--sans);font-size:14px;margin-top:3px}.round-icon{display:inline-flex;justify-content:center;align-items:center;width:43px;height:43px;border-radius:50%;background:#edf0e4;color:#5b7150;flex-shrink:0}.art-note{position:absolute;right:17px;bottom:10px;font-size:14px;letter-spacing:1.6px;color:#5d644f}.translation-bar{max-width:1236px;margin:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;display:flex;align-items:center;gap:13px;font-size:14px;color:#7c8075}.translation-bar strong{font-size:14px;font-weight:500;color:#52654e}.translation-bar a{margin-left:auto;color:#58674f;font-size:14px}.mini-book{color:#7c8c6e}.games-section{max-width:1320px;margin:auto;padding:54px 42px 30px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.section-heading .eyebrow{margin-bottom:10px}.section-heading h2{font-size:31px;margin-bottom:0}.subtle{color:#8b8e80;font-size:16px}.difficulty-bar{display:flex;gap:22px;align-items:center;margin:27px 0 25px;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px}.level-options{display:flex;gap:6px}.level{background:transparent;border:1px solid transparent;border-radius:6px;color:#767e6c;padding:8px 14px;font-size:14px}.level.selected{background:#e7ece1;color:#415738;border-color:#dbe2d4}.level-dots{margin-right:5px;letter-spacing:1px}.level-help{margin-left:auto;color:#939689;font-size:14px}.game-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.game-card{display:block;border:1px solid #e1e3d8;border-radius:11px;background:#fffefa;overflow:hidden;transition:transform .2s,box-shadow .2s}.game-card:hover{transform:translateY(-4px);box-shadow:0 14px 35px #243d3310}.card-art{position:relative;height:161px;overflow:hidden;background:#ede5d1}.card-art .illustration{width:100%;height:100%;object-fit:cover;transition:transform .4s}.game-card:hover .illustration{transform:scale(1.035)}.card-count{position:absolute;right:12px;top:12px;background:#fdfbf0e0;border-radius:20px;font-size:14px;letter-spacing:.2px;padding:3px 9px;color:#687159}.card-copy{padding:19px 22px 14px;position:relative}.card-icon{display:inline-grid;place-items:center;width:37px;height:37px;border:3px solid #fffefa;border-radius:10px;background:#e6ecdf;color:#526a47;position:absolute;right:20px;top:-21px}.clay .card-icon{background:#f1e5da;color:#a17454}.gold .card-icon{background:#f2e9cf;color:#a68949}.blue .card-icon{background:#e4eceb;color:#5c7c82}.card-copy h3{font-size:23px;letter-spacing:-.6px;margin:0 0 9px}.card-copy p{font-size:14px;line-height:1.7;min-height:37px;margin-bottom:13px}.card-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid #eceee5;color:#7e8773;font-size:14px}.circle-arrow{display:grid;place-items:center;border-radius:50%;width:29px;height:29px;background:#f0f3eb;color:#677b59}.learning-note{display:flex;align-items:center;gap:30px;max-width:1236px;margin:24px auto 62px;background:#edf0e7;border:1px solid #e2e7d9;border-radius:12px;padding:32px 37px}.large-star{font-size:70px;color:#a0ad83}.learning-note h2{font-size:27px;margin-bottom:10px}.learning-note p{font-size:16px;line-height:1.8;max-width:655px;margin-bottom:0}.learning-note .eyebrow{margin-bottom:8px;font-size:14px}.learning-note .button{flex-shrink:0;margin-left:auto;font-size:14px}.site-footer{border-top:1px solid var(--line);max-width:1236px;margin:0 auto;padding:27px 0;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:14px;color:#8a8f80}.site-footer .brand{font-size:20px;color:#6a795f;gap:9px;letter-spacing:-.5px}.illustration{display:block;width:100%;height:100%}.discover-layout{max-width:1236px;margin:60px auto 80px;display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.discover-art{position:relative;height:640px;overflow:hidden;border-radius:180px 180px 13px 13px}.illustration-credit{position:absolute;bottom:12px;left:20px;font-size:14px;color:#f9f4e3}.discover-copy .eyebrow{margin-top:25px}.discover-copy h1{font-size:46px;margin-bottom:17px}.lead{font-size:17px;line-height:1.8}.back-link{font-size:16px;color:#7b816f}.level-picker{padding:0;border:0;margin:26px 0}.level-picker legend{font-size:16px;font-weight:600;margin-bottom:12px}.level-choice{position:relative;display:block;width:100%;text-align:left;background:#fffefa;border:1px solid var(--line);border-radius:8px;padding:12px 16px;margin:8px 0;color:var(--ink)}.level-choice strong{font-size:16px;font-weight:500}.level-choice small{display:block;font-size:14px;color:#868b7b}.level-choice>span{position:absolute;right:20px;top:22px;letter-spacing:3px;color:#7e906e}.level-choice.selected{border-color:#7c9070;background:#ecf0e5}.round-details{display:flex;flex-wrap:wrap;gap:17px;font-size:14px;color:#7e8774;margin-bottom:22px}.round-details svg{margin-right:5px}.small-text{font-size:16px;margin-top:15px}.small-text a,.account-switch a,.privacy-note a{color:var(--green);text-decoration:underline;text-underline-offset:3px}.empty-state{text-align:center;max-width:700px;margin:80px auto;padding:30px}.empty-state.compact{max-width:100%;margin:20px 0 35px;padding:40px;background:#f0f2e9;border-radius:12px}.empty-state h1{font-size:38px}.empty-state h3{margin-top:18px}.account-layout{max-width:1140px;display:grid;grid-template-columns:1fr 1fr;margin:55px auto 80px;gap:75px;align-items:center}.account-art{height:650px;position:relative;overflow:hidden;border-radius:180px 180px 12px 12px;background:#294553}.account-art .illustration{height:60%;position:absolute;bottom:0}.account-art:after{content:'';position:absolute;inset:0;background:linear-gradient(#223f4b 3%,#223f4b 34%,transparent 60%);pointer-events:none}.account-art>div{position:relative;z-index:1;padding:94px 40px;color:#f6eddb}.account-art h1{font-size:40px;color:#f6eddb}.account-art .eyebrow{color:#c4cbb6;font-size:14px}.account-art p{font-size:16px;color:#d8decf}.account-form{padding:12px 0}.account-form .eyebrow{margin-top:32px}.account-form h2{font-size:37px}.account-form>p{font-size:16px}.account-form label{display:block;font-size:16px;font-weight:500;margin:18px 0 7px}.account-form input{width:100%;padding:12px 14px;border:1px solid #dce1d3;background:#fffefa;border-radius:6px;color:var(--ink);font-size:16px}.account-form form>small{display:block;font-size:14px;color:#828c76;margin-top:7px}.account-switch{text-align:center;margin-top:20px}.account-form .privacy-note{font-size:14px;line-height:1.8;color:#919785;border-top:1px solid var(--line);padding-top:22px;margin-top:22px}.message{padding:15px 20px;border-radius:8px;font-size:16px}.message.error{background:#faede6;border:1px solid #e1bfb0;color:#9a503f}.progress-page{max-width:1050px;margin:60px auto 80px}.progress-page h1{font-size:43px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:35px 0 45px}.stats-grid>div{display:flex;flex-direction:column;align-items:flex-start;border:1px solid var(--line);border-radius:10px;padding:25px 30px;background:#fffefa}.stats-grid svg{color:#8b9a76;margin-bottom:7px}.stats-grid strong{font-family:var(--serif);font-size:38px;font-weight:400}.stats-grid strong small{font-size:21px;color:#909681}.stats-grid span{font-size:14px;color:#89927f}.progress-page h2{font-size:28px;margin-top:32px}.saved-game{display:flex;align-items:center;gap:20px;background:#fffefa;padding:20px;border:1px solid var(--line);border-radius:10px;margin-bottom:13px}.saved-game>div{flex:1}.saved-game strong{font-weight:500;font-size:16px}.saved-game small{display:block;color:#8e9485;margin-top:5px;font-size:14px}.saved-game:hover{border-color:#9dab8f}.prose{max-width:760px;margin:65px auto 85px}.prose h1{font-size:46px}.prose h2{font-size:27px;margin:36px 0 14px}.prose p{font-size:16px;line-height:1.9}.play-page{max-width:870px;margin:35px auto 75px}.play-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px}.save-state{font-size:14px;color:#8c9680;display:flex;align-items:center;gap:7px}.save-state>span{width:6px;height:6px;border-radius:50%;background:#8ca174}.play-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}.play-heading .eyebrow{font-size:14px;margin-bottom:9px}.play-heading h1{font-size:37px;margin:0}.score-chip{display:flex;gap:7px;align-items:center;font-size:21px;background:#eeefdf;border:1px solid #e2e5cf;border-radius:30px;padding:9px 18px;color:#7c885c}.score-chip>span{font-size:14px}.progress-label{display:flex;justify-content:space-between;font-size:14px;color:#969c8a;margin-bottom:8px}.progress-track{height:5px;background:#e7eadf;border-radius:3px;margin-bottom:27px;overflow:hidden}.progress-track>div{height:100%;background:#81936b;transition:width .3s}.question-panel{border:1px solid #e2e6d8;background:#fffefa;border-radius:14px;padding:35px 38px}.question-panel h2{font-size:28px;margin-bottom:25px;letter-spacing:-.4px;line-height:1.4}.answers{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}.answer{display:flex;align-items:center;gap:13px;text-align:left;color:#536249;background:#fcfcf7;border:1px solid #dfe5d5;border-radius:8px;padding:16px;font-size:16px;min-height:67px;transition:background .2s}.answer.chosen{background:#eaf0e2;border-color:#6b8755}.answer.correct{border-color:#649060;background:#e7f0e0}.answer:disabled{opacity:1}.answer-letter{background:#eef0e7;border:1px solid #e2e6d9;width:27px;height:27px;border-radius:6px;font-size:14px;display:grid;place-items:center;flex-shrink:0}.answer.chosen .answer-letter{background:#668354;color:#fff;border-color:#668354}.answer>svg{margin-left:auto}.question-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e7eadf;padding-top:22px;margin-top:27px;gap:20px}.question-footer>span{font-size:14px;color:#919b82;display:flex;align-items:center;gap:7px}.question-footer .button{min-width:155px}.source-card{position:relative;border-left:3px solid #b79b61;background:#f1eddf;padding:15px 20px;margin-bottom:25px}.source-card>span{display:block;font-size:14px;letter-spacing:1.4px;color:#998457}.source-card strong{font-family:var(--serif);font-size:23px;font-weight:400}.source-card svg{position:absolute;right:25px;top:25px;color:#b69a66}.hint-list{display:flex;flex-direction:column;gap:10px}.hint{display:flex;align-items:center;gap:15px;padding:14px 18px;background:#f1f2e9;border-radius:7px;font-size:16px}.hint>span{border:1px solid #d5dec8;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-size:14px}.hint.locked{color:#a9ad9d;background:#f6f7ef;border:1px dashed #e4e7dc}.hint-button{margin-top:12px}.hint-button small{display:inline-block;margin-left:10px;color:#a09a7d;font-size:14px}.picture-caption{text-align:right;font-size:14px;color:#9c9e8a;margin-top:7px;margin-bottom:13px}.sequence-list{display:flex;flex-direction:column;gap:11px}.sequence-item{display:flex;align-items:center;gap:13px;border:1px solid #dfe5d5;border-radius:9px;padding:13px 16px;background:#f7f8f0}.sequence-item strong{font-size:16px;font-weight:400;flex:1}.sequence-number{font-family:var(--serif);font-size:24px;color:#94a07e;min-width:24px}.move-button{border:1px solid #d7dfcc;background:#fffef8;color:#62734f;border-radius:5px;width:30px;height:30px}.matching-board{display:grid;grid-template-columns:1fr 1fr;gap:30px}.matching-board>div{display:flex;flex-direction:column;gap:12px}.match-item{display:flex;align-items:center;text-align:left;gap:13px;min-height:80px;padding:15px;border:1px solid #e0e5d6;border-radius:8px;background:#f9faf3;color:#5d6a51;font-size:16px}.match-item small{display:block;font-size:14px;color:#9aa38e;margin-top:4px}.match-item.active{outline:2px solid #869e6d;outline-offset:1px}.match-item.connected{background:#edf2e4;border-color:#c0d0ac}.match-item.right{justify-content:space-between}.pair-letter{flex-shrink:0;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#dde7cd;color:#627748;font-size:14px}.map-puzzle{position:relative;height:380px;overflow:hidden;border:1px solid #d4dbca;border-radius:10px}.map-puzzle>svg{width:100%;height:100%}.map-sea{position:absolute;left:4%;top:40%;font-size:14px;letter-spacing:2px;color:#6d9597;writing-mode:vertical-lr}.map-north{position:absolute;right:20px;top:16px;color:#859279;font-size:16px}.map-pin{position:absolute;display:flex;align-items:center;gap:5px;background:#fffef2e8;border:1px solid #c1c6ab;border-radius:15px;padding:4px 9px 4px 5px;font-size:14px;color:#62684e;transform:translate(-7px,-50%);box-shadow:0 2px 5px #70643e14}.map-pin>span{display:block;width:9px;height:9px;border-radius:50%;background:#a18351}.map-pin.chosen{background:#4d6844;color:white;border-color:#4d6844}.map-pin.chosen>span{background:#e9e5c4}.map-pin:disabled{opacity:1}.feedback{margin-top:25px;border:1px solid #d6e1c9;background:#edf3e4;border-radius:9px;padding:25px}.feedback.learn{background:#f7f0df;border-color:#e5d9b7}.feedback .eyebrow{font-size:14px;margin-bottom:10px;color:#78915d}.feedback.learn .eyebrow{color:#a68a4e}.feedback h3{font-size:25px;margin-bottom:12px}.feedback p{font-size:16px;margin-bottom:13px;color:#69775a}.feedback a{font-size:14px;text-decoration:underline;text-underline-offset:3px}.reference-connection{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px 0;margin:10px 0;border-top:1px solid #dce5cf;border-bottom:1px solid #dce5cf;font-size:14px}.reference-connection small{display:block;width:100%;font-size:14px;color:#949d82}.feedback blockquote{font-family:var(--serif);font-size:20px;margin:22px 0;border-left:2px solid #a5b78b;padding-left:15px}.feedback blockquote footer{font:14px var(--sans);margin-top:12px}.result-hero{text-align:center;background:#f0f3e8;border:1px solid #dfe5d4;border-radius:15px;padding:45px 30px}.result-badge{display:grid;place-items:center;margin:0 auto 23px;width:90px;height:90px;border-radius:50%;color:#a68c51;background:#e9e9d3}.result-hero h1{font-size:45px}.result-hero p{font-size:16px}.result-score{font:64px var(--serif);color:#6e8355;margin:20px 0}.result-score span{display:block;font:14px var(--sans);color:#8b957a;margin-top:3px}.button-row{display:flex;justify-content:center;gap:13px;margin-top:25px}.review-list{margin-top:35px}.review-list h2{font-size:26px}.review-list details{border:1px solid #e0e5d6;border-radius:8px;padding:18px 22px;background:#fffefa;margin-bottom:12px;font-size:16px}.review-list summary{cursor:pointer;font-weight:500}.review-list details p{margin-top:15px}.review-list details a{text-decoration:underline;font-size:14px}#blazor-error-ui{display:none;position:fixed;bottom:0;left:0;right:0;background:#f9e8d1;padding:15px 25px;z-index:1000;font-size:16px}#blazor-error-ui a{text-decoration:underline}h1:focus{outline:none}
@media(min-width:1500px){.hero-copy h1{font-size:62px}.hero-art{height:410px}.card-art{height:178px}}
@media(max-width:1100px){.site-header{padding:0 25px}.site-header nav{gap:19px}.header-account{gap:14px}.hero{padding:40px 28px;gap:25px}.hero-copy h1{font-size:44px}.hero-art{height:350px}.hero-features{gap:11px;font-size:14px}.translation-bar,.site-footer{margin-left:28px;margin-right:28px}.games-section{padding:40px 28px}.learning-note{margin:15px 28px 50px;padding:25px;gap:20px}.learning-note .button{max-width:190px}.level-help{display:none}.game-grid{gap:18px}.card-copy{padding:20px 16px 12px}.card-copy h3{font-size:21px}.card-art{height:145px}.discover-layout,.account-layout{margin:45px 30px;gap:40px}.discover-art{height:600px}.progress-page,.play-page,.prose{margin-left:35px;margin-right:35px}.account-art>div{padding:90px 30px}.account-art h1{font-size:34px}}
@media(max-width:760px){.site-header{height:auto;min-height:85px;flex-wrap:wrap;padding:19px 20px 0;gap:15px}.brand{font-size:24px}.brand small{font-size:14px;letter-spacing:1px}.brand-mark{height:40px;width:38px}.site-header nav{order:3;width:100%;justify-content:center;border-top:1px solid var(--line);gap:30px}.site-header nav a{padding:12px 0;font-size:16px}.site-header nav a.active:after{bottom:3px}.login-link,.account-name{display:none}.header-account .button{padding:9px 12px}.hero{padding:30px 22px 25px;grid-template-columns:1fr;gap:20px}.hero-copy{text-align:center;padding:0}.hero .eyebrow{font-size:14px;letter-spacing:1.4px}.hero-copy h1{font-size:46px;line-height:1.15;margin:15px 0 20px}.hero-copy p{font-size:16px;margin-left:auto;margin-right:auto}.hero-features{justify-content:center;margin-top:22px;font-size:14px;gap:13px}.hero-art{height:290px;max-width:480px;width:100%;margin:auto;border-radius:130px 130px 12px 12px}.art-label{left:23px;bottom:25px;font-size:17px;padding:10px 15px}.translation-bar{margin:0 22px;flex-wrap:wrap;gap:8px;font-size:14px;padding:14px 0}.translation-bar>span:not(.mini-book){width:100%;padding-left:27px;font-size:14px}.translation-bar a{display:none}.games-section{padding:32px 22px 20px}.section-heading h2{font-size:29px}.section-heading>.subtle{display:none}.section-heading .eyebrow{font-size:14px}.difficulty-bar{display:block;margin-top:17px}.difficulty-bar>span:first-child{display:none}.level-options{justify-content:space-between;gap:3px}.level{font-size:14px;padding:8px 7px;flex:1}.level-dots{display:block;margin:0;font-size:14px;line-height:1.3}.game-grid{grid-template-columns:1fr 1fr;gap:14px}.card-art{height:125px}.card-copy{padding:20px 13px 12px}.card-copy h3{font-size:21px}.card-copy p{font-size:14px;min-height:48px}.card-count{top:8px;right:8px;font-size:14px}.card-icon{right:11px;width:32px;height:32px;top:-18px}.card-icon svg{width:20px}.card-bottom{font-size:14px}.learning-note{margin:13px 22px 32px;padding:25px;flex-wrap:wrap;gap:13px}.large-star{display:none}.learning-note h2{font-size:26px}.learning-note .button{margin:0;max-width:none}.site-footer{margin:0 22px;flex-wrap:wrap;gap:13px;padding:23px 0}.site-footer>span{display:none}.site-footer>a:last-child{font-size:14px}.discover-layout,.account-layout{grid-template-columns:1fr;margin:25px 22px 45px;gap:25px}.discover-art{height:240px;order:2;border-radius:12px}.discover-copy h1{font-size:39px}.discover-copy .lead{font-size:16px}.discover-copy>p{font-size:16px}.account-art{display:none}.account-form{max-width:480px;width:100%;margin:auto}.account-form h2{font-size:33px}.progress-page,.play-page,.prose{margin:30px 20px 45px}.progress-page h1{font-size:33px}.progress-page>.lead{font-size:16px}.stats-grid{gap:10px;margin:24px 0 30px}.stats-grid>div{padding:18px 13px}.stats-grid strong{font-size:30px}.stats-grid span{font-size:14px}.stats-grid strong small{font-size:16px}.saved-game{gap:12px;padding:15px}.saved-game strong{font-size:16px}.saved-game small{font-size:14px}.saved-game>.button{font-size:0;padding:9px;gap:0}.saved-game>.round-icon{width:34px;height:34px}.saved-game>strong{font-size:14px}.play-top{margin-bottom:25px}.save-state{font-size:14px}.back-link{font-size:14px}.play-heading h1{font-size:29px}.play-heading .eyebrow{font-size:14px;letter-spacing:1px}.score-chip{font-size:17px;gap:5px;padding:7px 10px}.score-chip>span{font-size:14px}.question-panel{padding:23px 18px}.question-panel h2{font-size:24px}.answers{grid-template-columns:1fr;gap:10px}.answer{padding:12px;font-size:16px;min-height:58px}.question-footer{gap:10px}.question-footer .button{font-size:14px;padding:12px 14px;min-width:0;gap:9px}.question-footer>span{font-size:14px;gap:4px}.question-footer>span svg{width:12px}.hint{font-size:16px;padding:12px}.hint-button small{display:block;text-align:left;margin:5px 0}.matching-board{gap:13px}.match-item{padding:10px;font-size:14px;gap:7px;min-height:90px}.match-item small{font-size:14px}.pair-letter{width:21px;height:21px;font-size:14px}.sequence-item{gap:8px;padding:12px 10px}.sequence-item strong{font-size:16px}.sequence-number{font-size:21px;min-width:18px}.move-button{width:27px;height:30px;flex-shrink:0}.map-puzzle{height:330px}.map-pin{font-size:14px;padding:3px 6px 3px 4px}.feedback{padding:20px}.feedback h3{font-size:23px}.feedback p{font-size:16px}.result-hero{padding:35px 20px}.result-hero h1{font-size:37px}.button-row{flex-wrap:wrap}.prose h1{font-size:37px}.prose h2{font-size:25px}.prose p{font-size:16px}}
@media(max-width:390px){.hero-copy h1{font-size:39px}.hero-features{font-size:14px;gap:10px}.card-copy h3{font-size:19px}.game-grid{gap:11px}.card-copy{padding-left:10px;padding-right:10px}.level{font-size:14px}.site-header nav{gap:22px}.header-account .button{font-size:14px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.guest-badge{display:inline-block;padding:.55rem .8rem;border-radius:2rem;background:#edf2e8;color:#304b3f;font-size:.78rem;white-space:nowrap}.guest-note{background:#edf2e8;border-left:3px solid #597451;padding:1rem 1.2rem;border-radius:0 .6rem .6rem 0;line-height:1.65;margin:1rem 0 1.5rem}.guest-note p{margin:.5rem 0 1rem}.card-copy h3{overflow-wrap:break-word}.card-copy{display:flex;flex-direction:column}.card-copy .card-bottom{margin-top:auto;padding-top:1rem}.site-header{gap:1rem}.site-header nav{flex-wrap:wrap;justify-content:center}.brand small{font-size:.7rem}
body{background-color:#faf9f5;background-image:url('images/page-background.svg');background-position:center top;background-size:1600px 1400px;background-repeat:repeat-y}.site-header{background:rgba(250,249,245,.58)}.translation-bar{background:rgba(250,249,245,.78)}.game-card{display:flex;flex-direction:column}.card-art{flex-shrink:0}.card-copy{flex:1}.question-panel,.account-form{background:#fffefa}@media(max-width:700px){body{background-size:1000px 875px;background-position:center top}}.team-setup{border:1px solid var(--line);border-radius:14px;padding:20px;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.team-setup legend{font-weight:600;padding:0 8px}.team-setup label{align-self:center}.team-setup input,.team-setup select{min-width:0;max-width:100%;padding:10px;border:1px solid #cdd4c6;border-radius:8px;background:#fffefa;font:inherit}.team-setup small{grid-column:1/-1;line-height:1.6;color:#687467}.team-panel{padding:22px;margin:20px 0;background:#f0f2e8;border:1px solid #d5ddc8;border-radius:15px}.team-scores{display:flex;flex-wrap:wrap;gap:12px}.team-score{flex:1;min-width:130px;padding:13px;border-radius:10px;background:#fffefa;border:2px solid transparent;display:flex;flex-direction:column;gap:4px}.team-score.active{border-color:#65805d}.team-score span{font-size:.9rem;color:#687467}.team-discussion{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:20px}.team-discussion p{margin:7px 0 14px;color:#687467}.team-clock{font-size:1.7rem;font-variant-numeric:tabular-nums;white-space:nowrap}.team-winner{margin-bottom:0;font-size:1.2rem}.header-account{flex-wrap:wrap}
@media(max-width:700px){.team-setup{grid-template-columns:1fr}.team-panel{padding:16px}.team-score{min-width:110px}.team-discussion{align-items:flex-start}.team-clock{font-size:1.4rem}.team-setup small{grid-column:1}.header-account .guest-badge{display:none}}
/* Small editorial links and accessible native modal dialogs. */
.question-comment { margin:1.25rem 0 .5rem; font-size:.85rem; }
.question-comment .text-button { color:var(--muted,#696e67); text-decoration:underline; text-underline-offset:3px; }
.quiz-dialog { width:min(560px,calc(100% - 2rem)); max-height:85dvh; overflow:auto; border:1px solid #e0d8c8; border-radius:20px; padding:1.7rem; color:#283c32; background:#fffcf5; box-shadow:0 24px 80px #203b3140; }
.quiz-dialog::backdrop { background:#192e2ab0; backdrop-filter:blur(3px); }
.dialog-heading { display:flex; gap:1rem; align-items:start; justify-content:space-between; }
.dialog-heading h2 { margin:0 0 1.2rem; font-size:1.5rem; }
.dialog-close { font-size:1.7rem; line-height:1; }
.quiz-dialog form { display:grid; gap:.6rem; }
.quiz-dialog label { font-weight:600; font-size:.9rem; }
.quiz-dialog input:not([type=checkbox]),.quiz-dialog select,.quiz-dialog textarea { width:100%; padding:.8rem; border:1px solid #c9cebf; border-radius:9px; background:white; font:inherit; color:inherit; }
.quiz-dialog textarea { resize:vertical; }
.quiz-dialog .button-row { margin-top:.8rem; flex-wrap:wrap; }
.quiz-dialog .consent { display:flex; align-items:start; gap:.6rem; font-weight:400; }
.consent input { margin-top:.2rem; }
.comment-context { background:#eeeadd; border-radius:8px; padding:1rem; font-size:.9rem; }
.site-footer { flex-wrap:wrap; }
/* Shared online rooms: warm cards on the existing olive courtyard. */
.online-page,.online-choice{width:min(1180px,calc(100% - 48px));margin:50px auto 90px;position:relative;z-index:1}
.online-page h1,.online-choice h1{font-size:clamp(2rem,4vw,3.4rem);line-height:1.12;margin:18px 0}
.online-page>.lead,.online-choice>.lead{max-width:760px;margin-bottom:32px}
.online-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:28px 0}
.online-card{display:block;padding:28px;border:1px solid #cdbb8c;border-radius:15px;background:#f3ebd7;color:#283d2e;box-shadow:0 12px 28px #07190d1c;min-width:0;text-decoration:none}
.online-card h2,.online-card h3{color:#283d2e;margin:0 0 16px}.online-card p{color:#465342}.online-options>a:hover{border-color:#f0c878;transform:translateY(-2px)}
.online-card input:not([type=checkbox]),.online-card select,.online-card textarea{display:block;width:100%;box-sizing:border-box;background:#fffaf0;color:#263c2d;border:1px solid #b7b696;border-radius:8px;padding:12px;margin:7px 0 17px;font:inherit}
.online-card label{display:block;font-weight:600}.online-card .online-check{display:flex;align-items:center;gap:10px;font-weight:400;margin:12px 0}.online-check input{width:18px;height:18px;accent-color:#486340}
.online-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.online-create{margin-top:36px}.online-card fieldset{border:1px solid #c7bea2;border-radius:9px;padding:16px;margin:20px 0}.online-card .button{margin:8px 10px 8px 0}.online-card .text-button{color:#315137;padding:8px}.online-card a:not(.button){color:#315137}
.online-room-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:start}.online-main{display:grid;gap:24px;min-width:0}.online-participants ul{padding:0;margin:0;list-style:none}.online-participants li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:13px 0;border-top:1px solid #d7ccb0}.online-participants li small{display:block;font-weight:400;font-size:.78rem}.online-mail,.online-member-actions{width:100%;font-size:.78rem}.online-member-actions{display:flex;flex-wrap:wrap}.online-chat{position:sticky;top:24px;padding:22px}.online-chat-messages{max-height:400px;overflow:auto;display:flex;flex-direction:column;gap:10px;margin:20px 0;overflow-anchor:auto}.online-chat-messages article{background:#fffaf0;border-radius:8px;padding:12px;border:1px solid #ded4b8}.online-chat-messages time{float:right;font-size:.72rem;color:#63705e}.online-chat-messages p{margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.9rem}.online-chat label{font-size:.85rem}
.online-question-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.8rem;margin-bottom:20px}.online-timer{font-size:1.5rem;color:#375536;white-space:nowrap}.online-solution{background:#e0e8ce;border-radius:9px;padding:20px;margin:24px 0}.online-results{display:grid;gap:10px;margin:16px 0}.online-results article{border-bottom:1px solid #cabf9f;padding:12px 0}.online-results strong{display:flex;justify-content:space-between;gap:12px}.online-results p{margin:8px 0;overflow-wrap:anywhere}.online-ranking{padding-left:25px}.online-ranking li{padding:12px 0}.online-ranking span{float:right}.online-presence{font-size:.78rem;white-space:nowrap}.online-badge{border-radius:50%;background:#e5bd70;color:#203928;padding:2px 7px;margin-left:5px}.online-cancel{padding:10px;color:inherit}
@media(max-width:960px){.online-room-grid{grid-template-columns:minmax(0,1fr)}.online-chat{position:static}.online-chat-messages{max-height:260px}}
@media(max-width:640px){.online-page,.online-choice{width:calc(100% - 28px);margin-top:30px}.online-options,.online-fields{grid-template-columns:minmax(0,1fr)}.online-card{padding:20px}.online-question .answers{grid-template-columns:minmax(0,1fr)}.online-card .button{max-width:100%;white-space:normal}}

/* Separate labels from exact city points, including nearby Jerusalem-area locations. */
.map-connectors{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.map-connectors line{stroke:#6b5c3d;stroke-width:1.4;vector-effect:non-scaling-stroke}.map-dot{position:absolute;width:10px;height:10px;transform:translate(-50%,-50%);border:2px solid #fff6da;border-radius:50%;background:#4a5940;box-shadow:0 0 0 1px #536044}.map-dot.chosen{background:#c58b34;box-shadow:0 0 0 2px #344e40}.map-label{position:absolute;width:27%;min-height:38px;padding:5px 3px;transform:translateY(-50%);font:600 13px/1.25 var(--sans);border:1px solid #a9956a;border-radius:7px;background:#fff7e2;color:#273e34;overflow-wrap:anywhere;box-shadow:0 2px 6px #473a2820}.map-label.chosen{background:#344e40;color:#fff7e2;border-color:#344e40}.map-label:disabled{opacity:1}.map-label:focus-visible{outline:3px solid #866026;outline-offset:2px}

/* Private, optional account details shared by registration and profile editing. */
.optional-profile-fields{min-width:0;border:1px solid var(--line,#d6ddcf);border-radius:12px;padding:22px;margin:28px 0;background:var(--soft)}
.optional-profile-fields legend{padding:0 10px;font-size:1.2rem;font-weight:700;color:var(--green,#214b3e)}
.optional-profile-note{font-size:.95rem;line-height:1.6;margin:0 0 20px}
.optional-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.optional-profile-wide{grid-column:1/-1}
.optional-profile-fields label{display:block;font-size:.95rem;font-weight:600;margin:0 0 7px}
.optional-profile-fields input:not([type=checkbox]),.optional-profile-fields select{display:block;box-sizing:border-box;width:100%;min-width:0;padding:11px 12px;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--ink);font:inherit;margin:0}
.optional-profile-fields small{display:block;font-size:.85rem;line-height:1.55;color:var(--muted);margin-top:7px}
.optional-profile-fields .optional-profile-check{display:flex;align-items:flex-start;gap:11px;font-weight:400;line-height:1.55;margin:15px 0 0}
.optional-profile-fields .optional-profile-check input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;margin:4px 0 0;padding:0;accent-color:var(--accent);min-height:18px;max-height:18px}
.optional-profile-fields .optional-profile-interest{border-top:1px solid var(--border);padding-top:18px;margin-top:22px}
.optional-profile-privacy{font-size:.85rem;margin:14px 0 0;text-decoration:underline}
.profile-editor{max-width:780px;margin:40px auto 70px;padding:0 24px}
.profile-editor .eyebrow{display:block;margin:24px 0 12px}.profile-editor h1{font-size:2.5rem}
.profile-editor-actions{display:flex;gap:12px;flex-wrap:wrap}
@media(max-width:520px){.optional-profile-fields{padding:16px}.optional-profile-grid{grid-template-columns:1fr}.profile-editor-actions .button{width:100%}}

/* Primary progression actions across all BibleClue designs. */
:root .page-content .button.round-action{min-height:58px;padding:15px 28px;gap:18px;background:#e8c579;color:#183428;border:2px solid #f5db9e;border-radius:12px;font-size:18px;font-weight:800;line-height:1.35;box-shadow:0 4px 0 #8d692c,0 7px 18px #0003;text-align:center;justify-content:center;text-decoration:none}
:root .page-content .button.round-action:hover:not(:disabled){background:#f5dba0;color:#122a1b;border-color:#fff0c6;box-shadow:0 4px 0 #8d692c,0 8px 22px #0004}
:root .page-content .button.round-action:focus-visible{outline:3px solid #fff;outline-offset:5px;box-shadow:0 0 0 8px #28442e}
:root .page-content .button.round-action:disabled{opacity:.55;box-shadow:none;cursor:wait}
@media(max-width:600px){:root .page-content .button.round-action{width:100%;min-height:58px;white-space:normal}}

/* Devanagari marks must not be clipped by Latin display typography. */
html[lang="hi"] body,html[lang="hi"] button,html[lang="hi"] input,html[lang="hi"] select,html[lang="hi"] textarea{font-family:"Nirmala UI","Noto Sans Devanagari",Mangal,system-ui,sans-serif}
html[lang="hi"] h1,html[lang="hi"] h2,html[lang="hi"] h3,html[lang="hi"] .eyebrow{font-family:inherit;line-height:1.5;letter-spacing:normal;text-transform:none}
html[lang="hi"] .language-switch a[lang="hi"]{min-width:3rem;width:auto;line-height:1.5}
