@charset "UTF-8";

:root {
  color-scheme: dark;
  --bg: #071326;
  --bg-deep: #050e1d;
  --surface: #0d1b30;
  --surface-raised: #12243c;
  --surface-soft: #162c47;
  --ink: #f5f7ff;
  --ink-soft: #c2ccdf;
  --muted: #8c9bb5;
  --border: rgba(164, 185, 224, .14);
  --purple: #885cf6;
  --purple-light: #a58aff;
  --green: #10b981;
  --pink: #f05e8b;
  --yellow: #f6ac3d;
  --blue: #4389ff;
  --shadow: 0 24px 80px rgba(0, 0, 0, .24);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--bg); color: var(--ink); line-height: 1.55; min-width: 0; }
body::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background: radial-gradient(ellipse at 14% 4%, rgba(62, 83, 163, .15), transparent 32%), radial-gradient(ellipse at 91% 37%, rgba(114, 53, 153, .1), transparent 28%); }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
button:focus-visible, a:focus-visible { outline: 3px solid #f7c967; outline-offset: 4px; }
.skip-link { position: fixed; z-index: 20; top: 8px; left: 8px; padding: 10px 14px; background: var(--ink); color: var(--bg); border-radius: 9px; transform: translateY(-150%); }
.skip-link:focus { transform: translateY(0); }
.section-wrap { width: min(1160px, calc(100% - 56px)); margin-inline: auto; }

.site-header { position: relative; z-index: 5; border-bottom: 1px solid var(--border); background: rgba(7, 19, 38, .84); backdrop-filter: blur(16px); }
.header-inner { width: min(1240px, calc(100% - 48px)); min-height: 76px; margin-inline: auto; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: inline-flex; align-items: center; gap: 8px; font-size: 20px; font-weight: 850; letter-spacing: -.065em; white-space: nowrap; }
.brand-mark { display: inline-grid; place-items: center; width: 31px; height: 31px; border-radius: 10px; background: linear-gradient(140deg, #ff6f91, #e34382); color: white; font-size: 23px; line-height: 1; box-shadow: 0 6px 20px rgba(240, 94, 139, .25); }
.brand-accent { color: #a990ff; }
.site-nav { display: flex; align-items: center; gap: clamp(16px, 2vw, 29px); }
.nav-link { color: var(--ink-soft); font-size: 13px; font-weight: 620; transition: color .2s ease; }
.nav-link:hover, .nav-link.is-active { color: white; }
.nav-link.is-active { position: relative; }
.nav-link.is-active::after { content: ""; position: absolute; left: 0; right: 0; bottom: -16px; height: 2px; background: var(--purple-light); border-radius: 3px; }
.theme-toggle { display: grid; place-items: center; width: 35px; height: 35px; border: 1px solid var(--border); color: #ffd66d; border-radius: 50%; background: var(--surface); cursor: pointer; font-size: 19px; transition: transform .2s ease, background .2s ease; }
.theme-toggle:hover { transform: rotate(25deg); background: var(--surface-soft); }
.menu-toggle { display: none; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; border: 0; border-radius: 12px; color: white; font-weight: 750; cursor: pointer; transition: transform .2s ease, filter .2s ease, box-shadow .2s ease; }
.button:hover:not(:disabled) { transform: translateY(-2px); filter: brightness(1.08); }
.button:disabled { cursor: not-allowed; }
.button-primary { background: linear-gradient(135deg, #986cff, #7547ec); box-shadow: 0 9px 25px rgba(119, 73, 234, .26); }
.button-primary:hover:not(:disabled) { box-shadow: 0 12px 30px rgba(119, 73, 234, .37); }
.button-small { padding: 10px 15px; font-size: 12px; border-radius: 10px; }
.button-large { min-height: 49px; padding: 0 22px; font-size: 14px; border-radius: 12px; }

.hero { position: relative; display: grid; grid-template-columns: 1.02fr .98fr; align-items: center; min-height: 505px; padding-block: 62px 45px; }
.hero-copy { position: relative; z-index: 1; max-width: 565px; }
.eyebrow { display: inline-flex; align-items: center; gap: 8px; color: #b4a0ff; font-size: 10px; font-weight: 850; letter-spacing: .14em; }
.eyebrow-dot { width: 7px; height: 7px; border-radius: 50%; background: #70e6b5; box-shadow: 0 0 12px rgba(112, 230, 181, .6); }
h1, h2, h3, p { margin-top: 0; }
.hero h1, .game-intro h1 { margin: 16px 0 17px; font-size: clamp(47px, 6vw, 72px); line-height: .99; letter-spacing: -.065em; font-weight: 850; }
.text-gradient { color: #ac92ff; background: linear-gradient(90deg, #a789ff, #ff82ad 85%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.hero-lead { max-width: 500px; color: var(--ink-soft); font-size: 16px; line-height: 1.72; }
.hero-actions { display: flex; align-items: center; gap: 24px; margin-top: 26px; }
.text-link { display: inline-flex; align-items: center; gap: 9px; color: var(--ink-soft); font-size: 13px; font-weight: 700; transition: color .18s ease; }
.text-link:hover { color: white; }
.hero-proof { display: flex; align-items: center; gap: 11px; margin-top: 37px; }
.avatar-stack { display: flex; padding-left: 2px; }
.avatar-stack span { display: grid; place-items: center; width: 29px; height: 29px; margin-left: -3px; border: 2px solid var(--bg); border-radius: 50%; background: #1b2d49; font-size: 13px; }
.avatar-stack span:nth-child(2) { background: #38245b; color: #ffd76d; }
.avatar-stack span:nth-child(3) { background: #174f4a; color: #72e3b5; }
.hero-proof p { margin: 0; font-size: 11px; line-height: 1.45; }
.hero-proof strong { color: var(--ink); font-size: 12px; }
.hero-proof p span { color: var(--muted); }
.hero-art { position: relative; min-height: 390px; display: grid; place-items: center; isolation: isolate; }
.hero-art::before { content: ""; position: absolute; z-index: -1; width: min(90%, 380px); aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle, rgba(119, 78, 231, .2), rgba(50, 66, 123, .1) 54%, transparent 70%); }
.art-orbit { position: absolute; width: 300px; height: 300px; border: 1px solid rgba(158, 143, 255, .12); border-radius: 50%; }
.orbit-two { width: 365px; height: 365px; border-style: dashed; opacity: .55; }
.mascot-wrap { position: relative; display: grid; place-items: center; width: min(100%, 360px); filter: drop-shadow(0 20px 25px rgba(0, 0, 0, .25)); animation: float 5s ease-in-out infinite; }
.mascot { width: 100%; overflow: visible; }
.sparkle { position: absolute; color: #ffc95c; text-shadow: 0 0 15px rgba(255, 205, 94, .75); }
.sparkle-one { top: 16%; left: 12%; font-size: 23px; }.sparkle-two { top: 30%; right: 8%; font-size: 27px; color: #bc9bff; }.sparkle-three { bottom: 19%; left: 8%; font-size: 18px; }
.art-caption { position: absolute; right: 0; bottom: 19px; display: flex; align-items: center; gap: 10px; padding: 12px 16px; border: 1px solid var(--border); border-radius: 13px; background: rgba(17, 35, 58, .9); box-shadow: var(--shadow); transform: rotate(-2deg); }
.caption-icon { color: #ffcf5f; font-size: 21px; }.art-caption strong, .art-caption small { display: block; }.art-caption strong { font-size: 12px; }.art-caption small { margin-top: 2px; color: var(--muted); font-size: 10px; }
@keyframes float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }

.game-section { padding-block: 33px 68px; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
.section-heading .eyebrow { font-size: 9px; }
.section-heading h2 { margin: 7px 0 0; font-size: clamp(23px, 3.2vw, 30px); line-height: 1.15; letter-spacing: -.04em; }
.section-note { margin-bottom: 3px; color: var(--muted); font-size: 12px; }
.game-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; }
.game-card { position: relative; overflow: hidden; min-height: 245px; padding: 21px; border: 1px solid rgba(185, 202, 239, .14); border-radius: 18px; background: linear-gradient(145deg, rgba(21, 48, 70, .96), rgba(12, 29, 47, .97)); box-shadow: 0 14px 35px rgba(0, 0, 0, .13); }
.game-memory { border-top: 2px solid #40e1a4; }.game-number { border-top: 2px solid #58a1ff; }.game-word { border-top: 2px solid #ffba47; }
.card-top { display: flex; align-items: center; justify-content: space-between; position: relative; z-index: 1; }
.game-icon { display: grid; place-items: center; width: 37px; height: 37px; color: #042b24; border-radius: 11px; background: linear-gradient(140deg, #54e4b0, #18bd8c); font-size: 23px; font-weight: 900; }
.game-number .game-icon { color: #10213c; background: linear-gradient(140deg, #72b5ff, #4488fa); }.game-word .game-icon { color: #37210d; background: linear-gradient(140deg, #ffd16d, #f3a728); }
.tag { display: inline-flex; align-items: center; gap: 6px; padding: 5px 8px; border-radius: 999px; font-size: 8px; font-weight: 850; letter-spacing: .08em; }
.tag-live { background: rgba(16, 185, 129, .12); color: #64e4b2; }.tag-live span, .live-pill span { width: 6px; height: 6px; border-radius: 50%; background: #36dd9b; box-shadow: 0 0 9px #36dd9b; }
.tag-soon { color: #a3b0c7; background: rgba(157, 177, 209, .1); }
.game-card h3 { position: relative; z-index: 1; margin: 18px 0 5px; font-size: 20px; letter-spacing: -.035em; }
.game-card p { position: relative; z-index: 1; max-width: 265px; min-height: 41px; margin-bottom: 17px; color: #a8b7ce; font-size: 12px; line-height: 1.55; }
.button-card { position: relative; z-index: 1; min-height: 37px; padding: 0 13px; color: #06251d; background: linear-gradient(110deg, #57e6b2, #1bc893); font-size: 11px; }
.game-number .button-card { color: #071831; background: linear-gradient(110deg, #7bbdff, #438afa); }.game-word .button-card { color: #38250e; background: linear-gradient(110deg, #ffd372, #f5ad37); }
.button-disabled { filter: saturate(.68); opacity: .66; }
.card-decoration { position: absolute; right: 24px; bottom: 18px; color: rgba(138, 227, 192, .14); font-weight: 850; pointer-events: none; }.decoration-grid { display: grid; grid-template-columns: repeat(2, 24px); gap: 5px; transform: rotate(-10deg); }.decoration-grid i { width: 24px; height: 24px; border: 2px solid currentColor; border-radius: 6px; }.decoration-grid i:first-child { background: currentColor; }.decoration-number { right: 14px; bottom: 26px; color: rgba(114, 177, 255, .19); font-size: 17px; }.decoration-letters { right: 15px; bottom: 22px; color: rgba(255, 199, 102, .17); font-size: 18px; letter-spacing: .13em; }
.about-strip { display: flex; align-items: center; gap: 16px; margin-bottom: 56px; padding: 18px 22px; border: 1px solid var(--border); border-radius: 16px; background: rgba(15, 31, 52, .65); }
.about-icon { display: grid; flex: 0 0 44px; place-items: center; width: 44px; height: 44px; color: #c0aaff; border-radius: 14px; background: rgba(136, 92, 246, .17); font-size: 26px; }
.about-strip div:nth-child(2) { flex: 1; }.about-strip h2 { margin: 0 0 3px; font-size: 14px; }.about-strip p { margin: 0; color: var(--muted); font-size: 11px; }
.button-quiet { padding: 10px 13px; color: #c4b4ff; background: rgba(136, 92, 246, .12); font-size: 11px; white-space: nowrap; }
.site-footer { border-top: 1px solid var(--border); background: rgba(5, 14, 29, .47); }
.footer-inner { display: flex; align-items: center; width: min(1160px, calc(100% - 56px)); min-height: 75px; margin-inline: auto; gap: 18px; }
.brand-footer { font-size: 15px; }.brand-footer .brand-mark { width: 24px; height: 24px; border-radius: 8px; font-size: 17px; }.footer-inner p { flex: 1; margin: 0; color: var(--muted); text-align: center; font-size: 11px; }.footer-inner p span { color: #ffca59; }.footer-inner small { color: #74839e; font-size: 10px; }

/* Memory game */
.memory-main { padding-top: 24px; padding-bottom: 55px; }
.breadcrumbs { display: flex; gap: 9px; margin-bottom: 24px; color: var(--muted); font-size: 11px; }.breadcrumbs a:hover { color: white; }
.game-layout { display: grid; grid-template-columns: minmax(0, .91fr) minmax(390px, 1.09fr); align-items: start; gap: clamp(34px, 7vw, 90px); }
.game-intro { padding-top: 26px; }.game-intro h1 { margin-top: 14px; margin-bottom: 18px; font-size: clamp(40px, 5vw, 61px); }.game-intro > p { max-width: 460px; margin-bottom: 23px; color: var(--ink-soft); font-size: 14px; line-height: 1.75; }
.game-facts { display: flex; flex-direction: column; gap: 9px; margin: 0 0 30px; padding: 0; list-style: none; color: #bdc8dc; font-size: 12px; }.game-facts li { display: flex; align-items: center; gap: 10px; }.game-facts li span { display: inline-grid; place-items: center; width: 21px; height: 21px; color: #ae94ff; border-radius: 7px; background: rgba(136, 92, 246, .14); font-size: 13px; }
.how-card { display: flex; gap: 12px; max-width: 465px; padding: 15px; border: 1px solid var(--border); border-radius: 14px; background: rgba(17, 35, 58, .6); }.how-icon { display: grid; flex: 0 0 28px; place-items: center; width: 28px; height: 28px; color: #c4b1ff; border-radius: 50%; background: rgba(136, 92, 246, .18); font-weight: 850; }.how-card h2 { margin: 1px 0 5px; font-size: 12px; }.how-card p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.play-panel { position: relative; overflow: hidden; padding: clamp(18px, 3vw, 28px); border: 1px solid rgba(176, 196, 233, .16); border-radius: 21px; background: linear-gradient(145deg, rgba(16, 34, 57, .99), rgba(9, 23, 41, .99)); box-shadow: var(--shadow); }.play-panel::before { content: ""; position: absolute; top: -140px; right: -90px; width: 260px; height: 260px; border-radius: 50%; background: rgba(109, 70, 223, .09); filter: blur(4px); pointer-events: none; }
.play-panel-head { position: relative; display: flex; align-items: center; justify-content: space-between; margin-bottom: 19px; }.panel-kicker { color: #9e88ed; font-size: 9px; font-weight: 850; letter-spacing: .14em; }.play-panel-head h2 { margin: 4px 0 0; font-size: 18px; letter-spacing: -.03em; }
.live-pill { display: flex; align-items: center; gap: 7px; padding: 7px 9px; color: #81e8bf; border: 1px solid rgba(67, 218, 162, .15); border-radius: 999px; background: rgba(16, 185, 129, .08); font-size: 8px; font-weight: 850; letter-spacing: .07em; }
.score-row { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-bottom: 14px; }.score-box { display: flex; min-width: 0; flex-direction: column; gap: 3px; padding: 9px 10px; border: 1px solid rgba(167, 190, 229, .1); border-radius: 10px; background: rgba(25, 45, 70, .55); }.score-label { color: #8fa0bb; font-size: 8px; font-weight: 800; letter-spacing: .09em; }.score-box strong { font-size: 17px; line-height: 1.3; }
.game-status { position: relative; display: flex; align-items: center; justify-content: center; min-height: 38px; margin: 0 0 12px; padding: 7px 11px; color: #dce5f7; border-radius: 9px; background: rgba(4, 13, 26, .45); text-align: center; font-size: 11px; font-weight: 650; }.game-status.is-success { color: #6de7b5; }.game-status.is-error { color: #ff91a2; }
.memory-board { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(7px, 1.2vw, 11px); width: min(100%, 390px); margin: 0 auto; padding: 4px; }
.memory-tile { position: relative; aspect-ratio: 1; min-width: 0; border: 1px solid rgba(141, 162, 255, .38); border-radius: clamp(8px, 1.3vw, 12px); background: linear-gradient(145deg, #273753, #192941); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035), 0 4px 8px rgba(0, 0, 0, .16); cursor: pointer; transition: background .16s ease, border .16s ease, transform .16s ease, box-shadow .16s ease; }
.memory-tile:disabled { cursor: default; }.memory-tile:not(:disabled):hover { transform: translateY(-2px); border-color: rgba(186, 168, 255, .72); }.memory-tile.is-lit { border-color: #71f2c1; background: linear-gradient(145deg, #31e6a4, #10b783); box-shadow: 0 0 22px rgba(16, 185, 129, .38), inset 0 1px 0 rgba(255, 255, 255, .27); transform: scale(.97); }.memory-tile.is-miss { border-color: #ff8295; background: linear-gradient(145deg, #ff708a, #d94161); box-shadow: 0 0 18px rgba(232, 68, 102, .32); }.memory-tile:focus-visible { outline-offset: 2px; }
.play-controls { display: flex; justify-content: center; gap: 10px; margin-top: 15px; }.start-button { min-width: 155px; }.button-outline { min-height: 45px; padding: 0 13px; border: 1px solid rgba(167, 190, 229, .19); color: #c6d2e7; background: rgba(25, 45, 70, .57); font-size: 10px; }.button-outline:hover:not(:disabled) { background: rgba(49, 68, 99, .75); }.button-outline:disabled { opacity: .5; }
.challenge-result-actions { display: flex; flex-wrap: wrap; gap: 8px; }.challenge-result-actions .button { flex: 1 1 150px; }
.save-note { margin: 12px 0 0; color: #7787a2; text-align: center; font-size: 9px; }.clear-record { padding: 0; border: 0; color: #a699ce; background: none; font: inherit; text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }.clear-record:hover { color: white; }
.next-step { display: flex; align-items: center; gap: 13px; margin-top: 25px; padding: 14px 18px; border: 1px solid var(--border); border-radius: 14px; background: rgba(15, 31, 52, .58); }.next-icon { display: grid; flex: 0 0 31px; place-items: center; width: 31px; height: 31px; color: #ffc85f; border-radius: 10px; background: rgba(245, 158, 11, .12); }.next-step p { flex: 1; margin: 0; color: var(--muted); font-size: 11px; }.next-step p strong { color: var(--ink); }.next-step .text-link { font-size: 10px; white-space: nowrap; }
.sr-only { position: absolute; overflow: hidden; width: 1px; height: 1px; padding: 0; border: 0; clip: rect(0, 0, 0, 0); white-space: nowrap; clip-path: inset(50%); }

/* Daily challenge */
.daily-main { padding-top: 24px; padding-bottom: 58px; }
.daily-heading { display: flex; align-items: end; justify-content: space-between; gap: 22px; margin: 16px 0 24px; }
.daily-heading h1 { margin: 7px 0 8px; font-size: clamp(43px, 6vw, 64px); line-height: 1; letter-spacing: -.06em; }
.daily-heading p { max-width: 555px; margin: 0; color: var(--ink-soft); font-size: 14px; }
.daily-streak { display: grid; grid-template-columns: auto auto; align-items: center; column-gap: 10px; min-width: 115px; padding: 13px 15px; border: 1px solid rgba(255, 155, 102, .18); border-radius: 15px; background: rgba(130, 55, 44, .12); }.daily-streak > span { grid-row: span 2; font-size: 28px; }.daily-streak strong { font-size: 21px; line-height: 1.1; }.daily-streak small { color: var(--muted); font-size: 9px; }
.challenge-panel { position: relative; overflow: hidden; max-width: 780px; margin: 0 auto; padding: clamp(20px, 4vw, 36px); border: 1px solid rgba(176, 196, 233, .16); border-radius: 22px; background: linear-gradient(145deg, rgba(16, 34, 57, .99), rgba(9, 23, 41, .99)); box-shadow: var(--shadow); }.challenge-panel::before { content: ""; position: absolute; top: -145px; right: -85px; width: 285px; height: 285px; border-radius: 50%; background: rgba(109, 70, 223, .1); pointer-events: none; }
.challenge-topline { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 15px; }.challenge-date { margin: 4px 0 0; color: var(--muted); font-size: 11px; text-transform: capitalize; }.challenge-cycle { margin: 2px 0 0; color: var(--muted); font-size: 9px; }.challenge-tags { display: flex; gap: 7px; }.challenge-tag { padding: 6px 10px; border: 1px solid rgba(146, 123, 255, .17); border-radius: 999px; color: #c0adff; background: rgba(136, 92, 246, .12); font-size: 9px; font-weight: 800; }.tag-level { border-color: rgba(90, 160, 255, .15); color: #90c5ff; background: rgba(67, 137, 255, .1); }
.challenge-question { position: relative; margin: 24px 0 20px; max-width: 680px; font-size: clamp(21px, 3vw, 29px); font-weight: 760; line-height: 1.38; letter-spacing: -.03em; }
.attempts-row { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; color: var(--muted); font-size: 10px; }.attempts-row strong { display: grid; place-items: center; width: 22px; height: 22px; color: #d3c5ff; border-radius: 7px; background: rgba(136, 92, 246, .16); font-size: 11px; }.attempts-row > span:last-child { margin-left: auto; color: #f8c15b; }
.answer-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }.answer-option { display: flex; align-items: center; min-height: 53px; padding: 10px 13px; border: 1px solid rgba(138, 164, 206, .22); border-radius: 12px; color: var(--ink-soft); background: rgba(25, 45, 70, .7); text-align: left; font-size: 12px; font-weight: 630; cursor: pointer; transition: border .18s ease, background .18s ease, transform .18s ease; }.answer-option:hover:not(:disabled) { transform: translateY(-1px); border-color: rgba(178, 156, 255, .7); background: rgba(45, 54, 90, .75); }.answer-option:disabled { cursor: default; }.answer-option.is-wrong { border-color: rgba(240, 94, 139, .42); color: #ff9aaf; background: rgba(156, 45, 75, .16); }.answer-option.is-answer { border-color: rgba(60, 223, 159, .55); color: #75ebbd; background: rgba(16, 185, 129, .13); }
.challenge-feedback { min-height: 28px; margin: 12px 0 0; color: var(--muted); font-size: 11px; }.challenge-feedback.has-feedback { color: #f7c47d; }
.challenge-result { display: flex; gap: 13px; margin-top: 8px; padding: 15px; border: 1px solid rgba(53, 222, 157, .2); border-radius: 13px; background: rgba(9, 103, 74, .15); }.challenge-result[hidden] { display: none; }.result-medal { display: grid; flex: 0 0 30px; place-items: center; width: 30px; height: 30px; color: #073424; border-radius: 50%; background: #44dfa6; font-weight: 900; }.result-copy { flex: 1; }.result-copy h3 { margin: 2px 0 5px; color: #77eabc; font-size: 14px; }.result-copy p { margin: 0; color: #bdd3ce; font-size: 11px; line-height: 1.6; }.result-points { margin-top: 7px; color: #9ab9b0; font-size: 10px; }.result-points strong { color: #7aefbd; font-size: 15px; }
.challenge-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 16px; }.challenge-footer .text-link { font-size: 11px; }.clock-note { max-width: 780px; margin: 12px auto 34px; color: #7688a4; font-size: 10px; }
.daily-more { display: flex; align-items: center; justify-content: space-between; gap: 20px; max-width: 780px; margin: 0 auto; padding: 19px 22px; border: 1px solid var(--border); border-radius: 15px; background: rgba(15, 31, 52, .6); }.daily-more .eyebrow { font-size: 8px; }.daily-more h2 { margin: 5px 0 3px; font-size: 17px; }.daily-more p { margin: 0; color: var(--muted); font-size: 10px; }.daily-more .button { min-height: 39px; padding-inline: 13px; font-size: 10px; white-space: nowrap; }
body[data-theme="light"] .challenge-panel { background: linear-gradient(145deg, #fff, #eef2fa); }.daily-more, body[data-theme="light"] .daily-more { background: rgba(255, 255, 255, .78); }.daily-streak { color: var(--ink); }

/* Numeric and word games */
.number-sequence { position: relative; margin: 14px 0 18px; color: var(--ink); text-align: center; font-size: clamp(22px, 3vw, 30px); font-weight: 820; letter-spacing: .025em; }
.number-answers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; max-width: 390px; margin: 0 auto; }.number-answer { min-height: 47px; border: 1px solid rgba(107, 173, 255, .34); border-radius: 10px; color: #e8f1ff; background: linear-gradient(135deg, rgba(41, 68, 100, .85), rgba(26, 46, 72, .85)); font-size: 15px; font-weight: 780; cursor: pointer; transition: transform .15s ease, background .15s ease, border .15s ease; }.number-answer:hover:not(:disabled) { transform: translateY(-2px); border-color: #83bcff; background: rgba(54, 92, 139, .8); }.number-answer:disabled { cursor: default; }.number-answer.is-wrong { border-color: rgba(240, 94, 139, .45); color: #ff95ad; background: rgba(156, 45, 75, .17); }.number-answer.is-answer { border-color: rgba(60, 223, 159, .55); color: #7aeabd; background: rgba(16, 185, 129, .14); }
.word-clue { display: grid; justify-items: center; gap: 4px; margin: 13px auto 16px; padding: 17px 12px; border: 1px solid rgba(245, 175, 55, .16); border-radius: 14px; background: rgba(93, 64, 30, .12); text-align: center; }.word-label { color: #e9b85e; font-size: 8px; font-weight: 850; letter-spacing: .13em; }.word-clue strong { color: #ffe1a2; font-size: clamp(24px, 3.2vw, 32px); font-weight: 850; letter-spacing: .23em; }.word-clue p { margin: 3px 0 0; color: var(--ink-soft); font-size: 11px; }
.word-form { max-width: 420px; margin: 0 auto; }.word-form > label { display: block; margin-bottom: 5px; color: var(--muted); font-size: 9px; font-weight: 750; }.word-entry { display: flex; gap: 8px; }.word-entry input { min-width: 0; flex: 1; height: 43px; padding: 0 12px; border: 1px solid rgba(138, 164, 206, .27); border-radius: 10px; color: var(--ink); caret-color: var(--ink); -webkit-text-fill-color: var(--ink); background: rgba(7, 19, 38, .55); font: inherit; font-size: 16px; }.word-entry input:focus { outline: 2px solid #a58aff; outline-offset: 2px; }.word-entry input::placeholder { color: #75839b; }.word-entry .button { flex: 0 0 auto; padding-inline: 12px; border-radius: 10px; font-size: 10px; }.word-entry .button:disabled { opacity: .55; }
body[data-theme="light"] .number-answer { color: #253550; background: linear-gradient(135deg, #eff3fb, #e1e8f6); }.number-answer:hover:not(:disabled) { color: #172541; }.word-entry input { color: #253550; caret-color: #253550; -webkit-text-fill-color: #253550; background: #fff; }

/* Personal statistics and the recent archive */
.stats-main, .archive-main { padding-top: 24px; padding-bottom: 58px; }
.page-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin: 16px 0 24px; }.page-heading h1 { margin: 6px 0 7px; font-size: clamp(39px, 5.6vw, 59px); line-height: 1.05; letter-spacing: -.06em; }.page-heading p { max-width: 550px; margin: 0; color: var(--ink-soft); font-size: 13px; }.local-badge { display: inline-flex; align-items: center; gap: 8px; padding: 9px 12px; border: 1px solid var(--border); border-radius: 999px; color: var(--muted); background: rgba(17, 35, 58, .6); font-size: 10px; white-space: nowrap; }.local-badge span { color: #a790ff; font-size: 13px; }
.stats-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }.stat-card { position: relative; display: grid; min-height: 142px; align-content: start; padding: 17px; border: 1px solid var(--border); border-top: 2px solid var(--purple); border-radius: 15px; background: linear-gradient(145deg, rgba(20, 40, 64, .9), rgba(11, 26, 45, .9)); }.stat-streak { border-top-color: #f2708b; }.stat-daily { border-top-color: #29d69a; }.stat-points { border-top-color: #a083ff; }.stat-best { border-top-color: #f2b240; }.stat-symbol { position: absolute; top: 13px; right: 15px; color: #ffd06c; font-size: 20px; }.stat-name { color: #91a2bd; font-size: 8px; font-weight: 850; letter-spacing: .11em; }.stat-card strong { margin-top: 12px; font-size: 31px; line-height: 1; letter-spacing: -.04em; }.stat-card small { margin-top: 7px; color: var(--muted); font-size: 10px; }
.best-games, .recent-daily { margin-top: 34px; }.best-games .section-heading, .recent-daily .section-heading { align-items: end; margin-bottom: 14px; }.best-games .section-heading h2, .recent-daily .section-heading h2 { font-size: 22px; }.records-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; }.record-card { display: flex; align-items: center; gap: 11px; min-width: 0; padding: 14px; border: 1px solid var(--border); border-radius: 14px; background: rgba(17, 35, 58, .63); }.record-icon { display: grid; flex: 0 0 36px; place-items: center; width: 36px; height: 36px; border-radius: 11px; font-size: 20px; font-weight: 850; }.record-memory { color: #053025; background: #43dda7; }.record-number { color: #08254b; background: #69aaff; }.record-word { color: #442b05; background: #ffd06c; }.record-card div { flex: 1; min-width: 0; }.record-card h3 { margin: 0 0 3px; font-size: 12px; }.record-card p { margin: 0; color: var(--muted); font-size: 9px; }.record-card p strong { color: var(--ink); font-size: 11px; }.record-link { color: #b9a7ff; font-size: 18px; }
.recent-daily .section-heading { display: flex; }.activity-list { overflow: hidden; border: 1px solid var(--border); border-radius: 14px; background: rgba(17, 35, 58, .55); }.activity-item { display: grid; grid-template-columns: 1fr minmax(100px, .45fr) 60px; align-items: center; gap: 12px; min-height: 48px; padding: 0 15px; border-bottom: 1px solid var(--border); }.activity-item:last-child { border-bottom: 0; }.activity-date { color: var(--ink-soft); font-size: 11px; text-transform: capitalize; }.activity-status { color: var(--muted); font-size: 10px; }.activity-item.is-complete .activity-status { color: #65e1b2; }.activity-points { color: var(--ink); text-align: right; font-size: 10px; }.local-note { margin: 19px 0 0; color: #798aa5; font-size: 10px; line-height: 1.6; }
.archive-main .page-heading .button { min-height: 40px; padding: 0 14px; font-size: 11px; white-space: nowrap; }.archive-filters { display: flex; align-items: end; gap: 12px; margin: 0 0 14px; padding: 13px; border: 1px solid var(--border); border-radius: 13px; background: rgba(17, 35, 58, .55); }.archive-filters label { display: grid; gap: 4px; color: var(--muted); font-size: 9px; }.archive-filters select { min-width: 155px; min-height: 34px; padding: 0 27px 0 9px; border: 1px solid var(--border); border-radius: 8px; color: var(--ink-soft); background: var(--surface-raised); font: inherit; font-size: 10px; }.archive-count { margin-left: auto; color: #9c8be1; font-size: 10px; }.archive-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }.archive-card { padding: 16px; border: 1px solid var(--border); border-radius: 14px; background: rgba(17, 35, 58, .58); }.archive-card-top { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }.archive-card time { color: var(--muted); font-size: 9px; text-transform: capitalize; }.archive-card .challenge-tag { padding: 4px 8px; font-size: 8px; }.archive-result { margin-left: auto; color: #7585a0; font-size: 8px; }.archive-card h2 { margin: 13px 0 9px; font-size: 14px; line-height: 1.5; }.archive-answer { margin: 0 0 4px; color: #7fe5bc; font-size: 10px; font-weight: 750; }.archive-explanation { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.6; }.archive-empty { grid-column: 1/-1; padding: 26px; color: var(--muted); text-align: center; }
body[data-theme="light"] .stat-card, body[data-theme="light"] .record-card, body[data-theme="light"] .activity-list, body[data-theme="light"] .archive-card, body[data-theme="light"] .archive-filters { background: rgba(255, 255, 255, .8); }.archive-filters select { background: var(--surface); }
.info-main { max-width: 900px; padding-top: 24px; padding-bottom: 58px; }.info-card { margin-top: 15px; padding: clamp(22px, 5vw, 42px); border: 1px solid var(--border); border-radius: 20px; background: linear-gradient(145deg, rgba(17, 35, 58, .92), rgba(9, 22, 39, .92)); box-shadow: var(--shadow); }.info-card h1 { margin: 8px 0 12px; font-size: clamp(39px, 5.6vw, 58px); line-height: 1; letter-spacing: -.06em; }.info-lead { margin: 0 0 28px; color: var(--ink-soft); font-size: 15px; line-height: 1.7; }.info-card section { margin-top: 24px; }.info-card h2 { margin: 0 0 8px; font-size: 17px; letter-spacing: -.02em; }.info-card p { color: var(--ink-soft); font-size: 12px; line-height: 1.8; }.inline-link { color: #bba7ff; font-weight: 730; text-decoration: underline; text-underline-offset: 3px; }.inline-link:hover { color: white; }.notice-card { display: flex; gap: 13px; padding: 17px; border: 1px solid rgba(240, 185, 89, .2); border-radius: 13px; background: rgba(112, 78, 26, .12); }.notice-icon { display: grid; flex: 0 0 29px; place-items: center; width: 29px; height: 29px; color: #4b340b; border-radius: 9px; background: #ffd073; font-weight: 900; }.notice-card h2 { margin-top: 2px; }.notice-card p { margin-bottom: 0; }
body[data-theme="light"] .info-card { background: linear-gradient(145deg, #fff, #f2f5fc); }.footer-links { display: flex; align-items: center; gap: 11px; }.footer-links a { color: #8594ad; font-size: 9px; white-space: nowrap; }.footer-links a:hover { color: var(--ink); }
.consent-banner { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 12px max(24px, calc((100% - 1160px) / 2)); border-bottom: 1px solid var(--border); background: #10243c; }.consent-banner p { flex: 1; margin: 0; color: #d4deef; font-size: 11px; }.consent-actions { display: flex; align-items: center; gap: 7px; }.button-consent { min-height: 35px; padding: 0 11px; border: 1px solid rgba(181, 199, 235, .35); color: #fff; background: rgba(41, 61, 91, .85); font-size: 9px; white-space: nowrap; }.button-consent:hover { border-color: #b9a5ff; background: rgba(89, 72, 140, .65); }.consent-details { padding: 6px; color: #c1b1ff; font-size: 9px; text-decoration: underline; text-underline-offset: 2px; white-space: nowrap; }.cookie-settings-button { min-height: 37px; padding-inline: 12px; font-size: 10px; }.cookie-settings-status { margin: 7px 0 0; color: #82e9ba !important; font-size: 10px !important; }
body[data-theme="light"] .consent-banner { background: #e9eef8; }.consent-banner p { color: var(--ink-soft); }

body[data-theme="light"] { --bg: #f4f6fc; --bg-deep: #e9edf7; --surface: #ffffff; --surface-raised: #edf1fa; --surface-soft: #e5eafb; --ink: #16223b; --ink-soft: #495773; --muted: #6d7b96; --border: rgba(50, 68, 107, .15); --shadow: 0 24px 70px rgba(28, 43, 77, .13); color-scheme: light; }
body[data-theme="light"]::before { background: radial-gradient(ellipse at 14% 4%, rgba(126, 103, 231, .1), transparent 32%), radial-gradient(ellipse at 91% 37%, rgba(246, 125, 166, .1), transparent 28%); }
body[data-theme="light"] .site-header { background: rgba(247, 248, 253, .89); }
body[data-theme="light"] .nav-link:hover, body[data-theme="light"] .nav-link.is-active, body[data-theme="light"] .text-link:hover { color: #192540; }
body[data-theme="light"] .game-card { background: linear-gradient(145deg, #fff, #f2f5fd); }
body[data-theme="light"] .game-card p { color: #5e6c86; }
body[data-theme="light"] .about-strip, body[data-theme="light"] .next-step { background: rgba(255, 255, 255, .75); }
body[data-theme="light"] .site-footer { background: rgba(255, 255, 255, .55); }
body[data-theme="light"] .play-panel { background: linear-gradient(145deg, #fff, #eef2fa); }
body[data-theme="light"] .score-box { background: rgba(232, 237, 248, .85); }
body[data-theme="light"] .game-status { color: #263650; background: rgba(226, 232, 244, .78); }
body[data-theme="light"] .memory-tile { border-color: rgba(94, 108, 166, .3); background: linear-gradient(145deg, #e2e7f5, #d7dfef); }
body[data-theme="light"] .how-card { background: rgba(255, 255, 255, .75); }
body[data-theme="light"] .footer-inner p { color: #5b6880; }

@media (max-width: 900px) {
  .site-nav { gap: 13px; }.nav-link { font-size: 11px; }.header-inner { width: min(100% - 36px, 1240px); }
  .hero { min-height: 460px; }.hero-art { min-height: 330px; }.mascot-wrap { max-width: 315px; }.art-orbit { width: 265px; height: 265px; }.orbit-two { width: 320px; height: 320px; }
  .game-layout { grid-template-columns: minmax(0, .9fr) minmax(360px, 1.1fr); gap: 30px; }
  .play-controls { align-items: stretch; flex-direction: column; }
  .play-controls .button { width: 100%; }
}
@media (max-width: 720px) {
  .section-wrap { width: min(100% - 36px, 560px); }
  .header-inner { min-height: 65px; width: calc(100% - 36px); }.menu-toggle { display: flex; flex-direction: column; gap: 4px; justify-content: center; width: 39px; height: 39px; border: 1px solid var(--border); border-radius: 11px; background: var(--surface); cursor: pointer; }.menu-toggle span { width: 16px; height: 2px; margin-inline: auto; border-radius: 2px; background: var(--ink); }
  .site-nav { display: none; position: absolute; top: calc(100% + 1px); left: 0; right: 0; flex-direction: column; align-items: stretch; gap: 0; padding: 8px 18px 17px; border-bottom: 1px solid var(--border); background: var(--bg); box-shadow: 0 15px 25px rgba(0, 0, 0, .15); }.site-nav.is-open { display: flex; }.site-nav .nav-link { padding: 12px 5px; font-size: 14px; }.nav-link.is-active::after { display: none; }.theme-toggle { position: absolute; right: 19px; bottom: 83px; }.nav-cta { margin-top: 7px; }
  .hero { grid-template-columns: 1fr; gap: 0; min-height: auto; padding-block: 52px 26px; }.hero-copy { max-width: 540px; }.hero h1 { max-width: 500px; font-size: clamp(49px, 12vw, 67px); }.hero-lead { max-width: 460px; font-size: 14px; }.hero-proof { margin-top: 24px; }.hero-art { min-height: 300px; margin-top: 1px; }.mascot-wrap { max-width: 275px; }.art-orbit { width: 235px; height: 235px; }.orbit-two { width: 280px; height: 280px; }.art-caption { right: 2%; bottom: 12px; }
  .game-section { padding-block: 28px 43px; }.section-heading { align-items: start; flex-direction: column; gap: 7px; }.section-note { font-size: 11px; }.game-grid { grid-template-columns: 1fr; gap: 12px; }.game-card { min-height: 222px; padding: 18px; }.game-card p { min-height: 0; }.about-strip { align-items: flex-start; margin-bottom: 35px; padding: 15px; gap: 11px; }.about-icon { flex-basis: 38px; width: 38px; height: 38px; }.about-strip h2 { font-size: 13px; }.about-strip p { line-height: 1.5; }.button-quiet { display: none; }
  .footer-inner { width: calc(100% - 36px); min-height: 67px; flex-wrap: wrap; gap: 5px 12px; padding-block: 13px; }.footer-inner p { display: none; }.footer-inner small { margin-left: auto; }
  .memory-main { padding-top: 18px; padding-bottom: 33px; }.breadcrumbs { margin-bottom: 18px; }.game-layout { grid-template-columns: 1fr; gap: 24px; }.game-intro { padding-top: 3px; }.game-intro h1 { font-size: clamp(42px, 10vw, 56px); }.game-intro > p { margin-bottom: 14px; font-size: 13px; }.game-facts { flex-direction: row; flex-wrap: wrap; gap: 8px 14px; margin-bottom: 15px; font-size: 10px; }.game-facts li { gap: 6px; }.game-facts li span { width: 19px; height: 19px; }.how-card { padding: 12px; }.play-panel { padding: 18px; border-radius: 17px; }.memory-board { width: min(100%, 360px); gap: 8px; }.memory-tile { border-radius: 10px; }.score-row { gap: 6px; }.score-box { padding: 8px; }.score-box strong { font-size: 15px; }.score-label { font-size: 7px; }.next-step { flex-wrap: wrap; padding: 12px; }.next-step .text-link { margin-left: 44px; }
  .daily-main { padding-top: 18px; padding-bottom: 35px; }.daily-heading { margin: 13px 0 18px; }.daily-heading p { font-size: 12px; }.challenge-panel { padding: 19px; border-radius: 17px; }.challenge-question { margin-top: 19px; }.answer-grid { gap: 8px; }.answer-option { min-height: 50px; padding: 9px; font-size: 11px; }.daily-more { align-items: flex-start; flex-direction: column; padding: 16px; }.daily-more .button { align-self: stretch; justify-content: center; }
  .number-answer { min-height: 43px; }.word-entry { align-items: stretch; flex-direction: column; }.word-entry input, .word-entry .button { width: 100%; min-height: 43px; }
  .stats-main, .archive-main { padding-top: 18px; padding-bottom: 35px; }.page-heading { align-items: flex-start; flex-direction: column; margin: 13px 0 18px; }.page-heading p { font-size: 12px; }.local-badge { align-self: flex-start; }.stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }.stat-card { min-height: 123px; padding: 13px; }.stat-card strong { font-size: 27px; }.stat-symbol { top: 9px; right: 11px; font-size: 16px; }.records-grid { grid-template-columns: 1fr; }.best-games, .recent-daily { margin-top: 26px; }.best-games .section-heading h2, .recent-daily .section-heading h2 { font-size: 18px; }.recent-daily .section-heading { align-items: flex-start; flex-direction: column; gap: 4px; }.activity-item { grid-template-columns: 1fr 85px 42px; gap: 6px; padding-inline: 10px; }.archive-main .page-heading .button { width: 100%; justify-content: center; }.archive-filters { align-items: stretch; flex-direction: column; }.archive-filters select { width: 100%; }.archive-count { margin: 0; }.archive-list { grid-template-columns: 1fr; }
  .info-main { padding-top: 18px; padding-bottom: 35px; }.info-card { padding: 20px; border-radius: 16px; }.info-card h2 { font-size: 15px; }.info-lead { font-size: 13px; }.footer-inner { justify-content: space-between; }.footer-links { order: 3; width: 100%; justify-content: center; flex-wrap: wrap; gap: 5px 13px; }.footer-inner small { font-size: 9px; }
  .consent-banner { align-items: flex-start; flex-direction: column; gap: 9px; padding: 12px 18px; }.consent-actions { width: 100%; flex-wrap: wrap; }.button-consent { flex: 1; min-width: 120px; }
}
@media (max-width: 600px) {
  .play-controls { align-items: stretch; flex-direction: column; }
  .play-controls .button { width: 100%; }
  .challenge-footer { align-items: stretch; flex-direction: column; }
  .challenge-footer .text-link { justify-content: center; }
  .challenge-result-actions { width: 100%; flex-direction: column; }
  .challenge-result-actions .button { width: 100%; }
  .archive-filters { align-items: stretch; flex-direction: column; }
  .archive-filters select { min-height: 44px; width: 100%; }
  .archive-count { margin-left: 0; }
}
@media (max-width: 390px) {
  .section-wrap { width: calc(100% - 28px); }.header-inner { width: calc(100% - 28px); }.hero-actions { align-items: flex-start; flex-direction: column; gap: 15px; }.hero-art { min-height: 270px; }.mascot-wrap { max-width: 240px; }.art-orbit { width: 205px; height: 205px; }.orbit-two { width: 250px; height: 250px; }.art-caption { right: -2px; }.footer-inner { width: calc(100% - 28px); }
  .play-controls { align-items: stretch; flex-direction: column; }.start-button { width: 100%; }.button-outline { min-height: 40px; }.memory-tile { border-radius: 8px; }
  .daily-heading { align-items: flex-start; }.daily-streak { min-width: 82px; padding: 10px; column-gap: 7px; }.daily-streak > span { font-size: 22px; }.daily-streak strong { font-size: 17px; }.daily-streak small { font-size: 8px; }.answer-grid { grid-template-columns: 1fr; }.challenge-topline { align-items: flex-start; }.challenge-tags { flex-direction: column; align-items: flex-end; }.challenge-footer { align-items: stretch; flex-direction: column; }.challenge-footer .button { width: 100%; }.challenge-footer .text-link { justify-content: center; }
}

.button { min-height: 44px; }
.button-quiet, .daily-more .button, .archive-main .page-heading .button { min-height: 44px; }
.word-entry input, .word-entry .button { min-height: 44px; }
.record-link { display: inline-grid; width: 44px; min-width: 44px; height: 44px; min-height: 44px; place-items: center; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }

/* Readability and touch targets for the public MVP. */
.brand { min-height: 44px; }
.nav-link { display: inline-flex; min-height: 44px; align-items: center; }
.theme-toggle { width: 44px; height: 44px; }
.button-small, .button-card, .button-consent, .cookie-settings-button { min-height: 44px; }
.text-link, .breadcrumbs a, .footer-links a { display: inline-flex; min-height: 44px; align-items: center; }
.footer-links { gap: 8px; flex-wrap: wrap; }
.footer-links a { padding-inline: 3px; color: #a5b2c8; font-size: 11px; }
.button-card { font-size: 12px; }
.save-note { font-size: 11px; }
.clear-record { display: inline-flex; min-height: 44px; align-items: center; padding-inline: 5px; font-size: 11px; }
.game-facts { font-size: 12px; }
.score-label { font-size: 9px; letter-spacing: .04em; }
.stat-name { font-size: 10px; }
.stat-card small, .activity-status, .activity-points, .local-note { font-size: 11px; }
.archive-filters label { font-size: 11px; }
.archive-filters select { min-height: 44px; font-size: 12px; }
.archive-card time, .archive-result { font-size: 10px; }
.archive-card h2 { font-size: 16px; }
.archive-answer, .archive-explanation { font-size: 12px; }
.button-consent { font-size: 11px; }
.consent-details { display: inline-flex; min-height: 44px; align-items: center; padding-inline: 8px; font-size: 11px; }
.consent-banner p { font-size: 12px; }

@media (max-width: 720px) {
  .footer-inner { min-height: 0; flex-wrap: wrap; gap: 4px 10px; padding-block: 13px; }
  .footer-inner p { min-width: 0; text-align: right; font-size: 10px; }
  .footer-inner small { order: 5; width: 100%; text-align: center; font-size: 10px; }
  .footer-links { order: 4; }
  .menu-toggle { width: 44px; height: 44px; }
  .site-nav .nav-link { min-height: 44px; }
  .site-nav .theme-toggle { width: 44px; height: 44px; }
  .game-facts { font-size: 12px; }
  .score-label { font-size: 9px; }
  .daily-streak small { font-size: 10px; }
  .footer-links { gap: 2px 9px; }
  .footer-links a { font-size: 11px; }
}

@media (max-width: 390px) {
  .button-outline { min-height: 44px; }
  .score-box { padding-inline: 6px; }
  .score-label { font-size: 8px; letter-spacing: .02em; }
  .info-card h1 { font-size: clamp(31px, 10vw, 39px); }
}


.language-switcher{display:inline-flex;align-items:center;gap:.15rem;margin-inline:.2rem;padding:.18rem .28rem;border:1px solid var(--line);border-radius:999px;background:var(--card);font-size:.72rem;font-weight:800;letter-spacing:.04em;white-space:nowrap}
.language-button{appearance:none;border:0;background:transparent;color:var(--muted);padding:.25rem .35rem;border-radius:999px;font:inherit;cursor:pointer}
.language-button[aria-pressed="true"]{background:var(--accent);color:#fff}
.language-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media (max-width: 760px){.language-switcher{margin:.45rem 0}.site-nav .language-switcher{align-self:flex-start}}
