/* =========================================================
   CONNECTED EXPERIENCE POLISH
   Landing paper world · Community Codex · My Codex ink cards
   · podium crowns · Book 1 board · Level Up arcade
   ========================================================= */

:root {
  --igtt-paper: #efe2c8;
  --igtt-paper-2: #e4d2b3;
  --igtt-paper-3: #f5ead4;
  --igtt-ink: #2b221b;
  --igtt-ink-soft: #6f5b48;
  --igtt-brown: #8e6847;
  --igtt-gold: #e8c9a0;
  --igtt-cream: #f5f0e8;
  --igtt-night: #080706;
}

/* =========================================================
   LANDING — make the first impression feel like opening a page
   ========================================================= */
body.landing-paper-world {
  background:
    radial-gradient(circle at 50% -10%, rgba(142,104,71,.22), transparent 42%),
    linear-gradient(180deg, #0b0907 0%, #070605 68%, #090704 100%);
}

body.landing-paper-world .landing-page {
  position: relative;
  width: min(980px, calc(100% - 28px));
  margin: 12px auto 86px;
  padding: clamp(28px, 5vw, 58px) clamp(18px, 5vw, 56px) clamp(38px, 6vw, 70px);
  border: 1px solid rgba(82,61,43,.24);
  border-radius: 28px 28px 22px 22px;
  color: var(--igtt-ink);
  background:
    radial-gradient(circle at 14% 10%, rgba(255,255,255,.40), transparent 26%),
    radial-gradient(circle at 82% 28%, rgba(128,88,54,.05), transparent 30%),
    repeating-linear-gradient(0deg, rgba(92,70,50,.018) 0 1px, transparent 1px 5px),
    linear-gradient(145deg, var(--igtt-paper-3), var(--igtt-paper) 52%, var(--igtt-paper-2));
  box-shadow:
    0 28px 70px rgba(0,0,0,.48),
    0 0 0 8px rgba(239,226,200,.035),
    inset 0 1px 0 rgba(255,255,255,.72),
    inset 12px 0 26px rgba(101,74,48,.06),
    inset -8px 0 20px rgba(101,74,48,.045);
  box-sizing: border-box;
  overflow: hidden;
}

body.landing-paper-world .landing-page::before,
body.landing-paper-world .landing-page::after {
  content: '';
  position: absolute;
  top: 18px;
  bottom: 18px;
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(86,62,43,.14) 10%, rgba(86,62,43,.10) 90%, transparent);
  pointer-events: none;
}
body.landing-paper-world .landing-page::before { left: 14px; }
body.landing-paper-world .landing-page::after { right: 14px; }

body.landing-paper-world .landing-v2-kicker,
body.landing-paper-world .landing-section-label,
body.landing-paper-world .landing-v2-book-tease .label {
  color: rgba(54,40,29,.52) !important;
}
body.landing-paper-world .landing-v2-title,
body.landing-paper-world .landing-v2-book-tease h2,
body.landing-paper-world .landing-codex-intro h2,
body.landing-paper-world .landing-community-story h2 {
  color: var(--igtt-ink) !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.55) !important;
}
body.landing-paper-world .landing-v2-sub,
body.landing-paper-world .landing-v2-book-tease p,
body.landing-paper-world .landing-codex-intro p,
body.landing-paper-world .landing-story-grid p {
  color: rgba(54,40,29,.68) !important;
}
body.landing-paper-world .landing-v2-book-tease {
  border-color: rgba(71,52,37,.15) !important;
}
body.landing-paper-world .landing-rule {
  background: var(--igtt-ink) !important;
  opacity: .16 !important;
}

/* Rotating teaser becomes a little stack of real paper notes. */
body.landing-paper-world .hero-book-page {
  border-color: rgba(77,55,38,.20) !important;
  background:
    repeating-linear-gradient(0deg, rgba(78,57,41,.025) 0 1px, transparent 1px 5px),
    linear-gradient(145deg, #f9eed9, #ead8b8) !important;
  box-shadow: 0 14px 30px rgba(74,51,31,.14), inset 0 1px 0 rgba(255,255,255,.72) !important;
}
body.landing-paper-world .hero-book-page-num { color: rgba(75,53,37,.58) !important; }
body.landing-paper-world .hero-book-page p { color: rgba(43,34,27,.88) !important; }

/* Keep action cards dark: paper outside, ink cards inside. */
body.landing-paper-world .landing-v2-choice,
body.landing-paper-world .landing-story-grid > div,
body.landing-paper-world .landing-v2-first-thought.thought-content-card {
  box-shadow: 0 16px 32px rgba(67,45,28,.17), inset 0 1px 0 rgba(255,255,255,.04) !important;
}
body.landing-paper-world .landing-v2-codex-link {
  color: rgba(52,38,27,.62) !important;
}

/* Landing Codex pages match the shared paper language. */
body.landing-paper-world .landing-codex-section .book-page-inner.codex-page-inner {
  background:
    repeating-linear-gradient(0deg, rgba(75,53,36,.025) 0 1px, transparent 1px 5px),
    linear-gradient(145deg, #f8ecd5, #e8d5b3) !important;
  color: var(--igtt-ink) !important;
  box-shadow: inset 0 0 0 1px rgba(74,52,36,.16), inset 8px 0 20px rgba(95,67,44,.08), 0 10px 28px rgba(76,50,31,.13) !important;
}
body.landing-paper-world .landing-codex-section .codex-page-head {
  background: linear-gradient(180deg, rgba(248,236,213,.98) 74%, rgba(248,236,213,0)) !important;
}
body.landing-paper-world .landing-codex-section .book-page-chapter,
body.landing-paper-world .landing-codex-section .codex-page-unlocked,
body.landing-paper-world .landing-codex-section .codex-unlocked-by,
body.landing-paper-world .landing-codex-section .codex-q-num { color: #7c5839 !important; }
body.landing-paper-world .landing-codex-section .codex-page-name,
body.landing-paper-world .landing-codex-section .codex-q-text,
body.landing-paper-world .landing-codex-section .codex-answer-name,
body.landing-paper-world .landing-codex-section .codex-answer-text { color: var(--igtt-ink) !important; }
body.landing-paper-world .landing-codex-section .book-page-range,
body.landing-paper-world .landing-codex-section .codex-page-range { color: rgba(55,40,29,.50) !important; }
body.landing-paper-world .landing-codex-section .codex-answer {
  border-color: rgba(71,51,36,.12) !important;
  background: rgba(255,255,255,.30) !important;
}
body.landing-paper-world .landing-codex-section .codex-answer:hover { background: rgba(255,255,255,.50) !important; }
body.landing-paper-world .landing-codex-section .codex-question-block.is-locked {
  border-color: rgba(71,51,36,.17) !important;
  background: rgba(91,65,43,.035) !important;
}
body.landing-paper-world .landing-codex-section .codex-q-locked-text { color: rgba(43,34,27,.62) !important; }
body.landing-paper-world .landing-codex-section .codex-q-locked-copy { color: rgba(43,34,27,.46) !important; }

/* Landing book controls: this is the reference sizing used by Codex too. */
body.landing-paper-world .landing-codex-section .tier-book-controls {
  width: min(100%, 560px) !important;
  margin: 28px auto 0 !important;
  gap: 18px !important;
}
body.landing-paper-world .landing-codex-section .book-nav-btn {
  border-color: rgba(58,42,30,.18) !important;
  background: rgba(255,255,255,.28) !important;
  color: rgba(43,34,27,.74) !important;
  box-shadow: 0 6px 14px rgba(75,51,31,.08) !important;
}
body.landing-paper-world .landing-codex-section .book-nav-btn:hover:not(:disabled) {
  background: rgba(255,255,255,.50) !important;
  border-color: rgba(118,82,50,.32) !important;
  color: #704d31 !important;
}
body.landing-paper-world .landing-codex-section .book-dot {
  border-color: rgba(58,42,30,.32) !important;
}
body.landing-paper-world .landing-codex-section .book-dot.is-active {
  background: #7f593a !important;
  border-color: #7f593a !important;
  box-shadow: 0 0 0 3px rgba(127,89,58,.13) !important;
}
body.landing-paper-world .landing-codex-section .tier-book-caption,
body.landing-paper-world .landing-codex-section .codex-entry-note {
  color: rgba(55,40,29,.52) !important;
}

/* =========================================================
   COMMUNITY CODEX — shared paper world
   ========================================================= */
body.codex-paper-world {
  color: var(--igtt-ink);
  background:
    radial-gradient(circle at 50% 0%, rgba(142,104,71,.18), transparent 35%),
    linear-gradient(180deg, #0b0907 0%, #070605 100%);
}
.codex-world-shell {
  width: min(1040px, calc(100% - 28px));
  margin: 12px auto 94px;
}
.codex-paper-sheet {
  position: relative;
  width: 100%;
  padding: clamp(30px,5vw,58px) clamp(18px,5vw,58px) clamp(44px,6vw,72px);
  border: 1px solid rgba(83,61,42,.22);
  border-radius: 28px 28px 22px 22px;
  background:
    radial-gradient(circle at 15% 8%, rgba(255,255,255,.40), transparent 27%),
    radial-gradient(circle at 82% 18%, rgba(105,72,45,.045), transparent 27%),
    repeating-linear-gradient(0deg, rgba(77,57,42,.018) 0 1px, transparent 1px 5px),
    linear-gradient(145deg, var(--igtt-paper-3), var(--igtt-paper) 52%, var(--igtt-paper-2));
  box-shadow: 0 28px 70px rgba(0,0,0,.48), 0 0 0 8px rgba(239,226,200,.035), inset 0 1px 0 rgba(255,255,255,.70);
  box-sizing: border-box;
  overflow: hidden;
}
.codex-paper-sheet::before,
.codex-paper-sheet::after {
  content:'';
  position:absolute;
  top:20px;
  bottom:20px;
  width:1px;
  background:linear-gradient(180deg,transparent,rgba(75,52,35,.13) 12%,rgba(75,52,35,.08) 88%,transparent);
  pointer-events:none;
}
.codex-paper-sheet::before{left:14px}.codex-paper-sheet::after{right:14px}

.codex-world-head { text-align:center; max-width:720px; margin:0 auto; }
.codex-world-kicker,
.codex-panel-intro > span {
  display:block;
  font:700 .61rem/1 'Geist Mono', monospace;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(59,42,29,.50);
}
.codex-world-head h1 {
  margin:12px 0 10px;
  font:400 clamp(2.8rem,7vw,5.8rem)/.92 'Jua',sans-serif;
  color:var(--igtt-ink);
  text-shadow:0 1px 0 rgba(255,255,255,.55);
}
.codex-world-head p,
.codex-panel-intro p {
  margin:0 auto;
  max-width:620px;
  font:400 .96rem/1.65 'DM Sans',sans-serif;
  color:rgba(55,40,29,.62);
}
.codex-ink-rule { width:min(380px,70%); height:10px; margin:22px auto 0; position:relative; }
.codex-ink-rule::before,.codex-ink-rule::after,.codex-ink-rule span{content:'';position:absolute;top:4px;height:1px;background:rgba(64,46,32,.18)}
.codex-ink-rule::before{left:0;right:54%}.codex-ink-rule::after{left:54%;right:0}.codex-ink-rule span{width:8px;height:8px;top:0;left:50%;transform:translateX(-50%) rotate(45deg);background:rgba(112,77,49,.35)}

.codex-main-tabs {
  width:min(560px,100%);
  margin:28px auto 34px;
  padding:5px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:5px;
  border:1px solid rgba(64,46,32,.16);
  border-radius:999px;
  background:rgba(255,255,255,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45);
}
.codex-main-tab {
  appearance:none;
  border:0;
  border-radius:999px;
  padding:11px 12px;
  background:transparent;
  color:rgba(43,34,27,.56);
  font:700 .60rem/1 'DM Sans',sans-serif;
  letter-spacing:.10em;
  cursor:pointer;
  transition:.16s ease;
}
.codex-main-tab:hover { color:var(--igtt-ink); background:rgba(255,255,255,.26); }
.codex-main-tab.is-active {
  color:#f7f0e6;
  background:linear-gradient(145deg,#6f4d33,#3f2d20);
  box-shadow:0 7px 16px rgba(64,42,26,.16), inset 0 1px 0 rgba(255,255,255,.12);
}
.codex-tab-panel { animation:codexPanelIn .28s ease both; }
@keyframes codexPanelIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.codex-panel-intro { text-align:center; max-width:700px; margin:0 auto 24px; }
.codex-panel-intro h2 {
  margin:9px 0 8px;
  font:400 clamp(1.8rem,4vw,2.8rem)/1.08 'Jua',sans-serif;
  color:var(--igtt-ink);
}
.codex-today-note,
.codex-entry-note {
  margin:14px auto 0;
  text-align:center;
  font:700 .56rem/1.5 'Geist Mono',monospace;
  letter-spacing:.10em;
  color:rgba(66,47,32,.50);
  text-transform:uppercase;
}

/* Paper book inside the Codex. */
.codex-paper-book-shell { width:min(560px,100%) !important; margin:22px auto 0 !important; }
body.codex-paper-world .book-page.codex-page::after {
  background:linear-gradient(90deg,#d2bb98 0%,#ead7b6 12%,#d8c3a3 100%) !important;
  box-shadow:inset 0 0 0 1px rgba(66,46,31,.10) !important;
}
body.codex-paper-world .book-page-inner.codex-page-inner {
  background:
    repeating-linear-gradient(0deg, rgba(75,53,36,.025) 0 1px, transparent 1px 5px),
    linear-gradient(145deg,#f9eed9,#ead7b7) !important;
  color:var(--igtt-ink) !important;
  box-shadow:inset 0 0 0 1px rgba(73,52,37,.16),inset 8px 0 20px rgba(95,67,44,.09),0 12px 30px rgba(73,49,30,.13) !important;
}
body.codex-paper-world .codex-page-head {
  background:linear-gradient(180deg,rgba(249,238,217,.98) 74%,rgba(249,238,217,0)) !important;
}
body.codex-paper-world .codex-page-head .book-page-chapter,
body.codex-paper-world .codex-q-num,
body.codex-paper-world .codex-unlocked-by,
body.codex-paper-world .codex-page-unlocked { color:#795436 !important; }
body.codex-paper-world .codex-page-name,
body.codex-paper-world .codex-q-text,
body.codex-paper-world .codex-answer-name,
body.codex-paper-world .codex-answer-text { color:var(--igtt-ink) !important; }
body.codex-paper-world .codex-page-range { color:rgba(55,40,29,.50) !important; }
body.codex-paper-world .codex-page-unlocked {
  border-color:rgba(108,75,48,.20) !important;
  background:rgba(117,79,48,.04) !important;
}
body.codex-paper-world .codex-answer {
  border-color:rgba(69,49,35,.12) !important;
  background:rgba(255,255,255,.30) !important;
  box-shadow:0 5px 12px rgba(82,56,34,.045);
}
body.codex-paper-world .codex-answer:hover,
body.codex-paper-world .codex-answer:focus-visible {
  background:rgba(255,255,255,.52) !important;
  border-color:rgba(91,62,40,.22) !important;
}
body.codex-paper-world .codex-answer-first { color:#f7efe4 !important; background:#745033 !important; }
body.codex-paper-world .codex-question-block.is-locked {
  border-color:rgba(70,50,35,.18) !important;
  background:rgba(92,65,43,.035) !important;
}
body.codex-paper-world .codex-q-locked-text { color:rgba(43,34,27,.62) !important; }
body.codex-paper-world .codex-q-locked-copy { color:rgba(43,34,27,.45) !important; }
body.codex-paper-world .codex-unlock-btn {
  border-color:rgba(107,74,46,.24) !important;
  background:rgba(255,255,255,.24) !important;
  color:#6e4c31 !important;
}
body.codex-paper-world .codex-divider { border-color:rgba(72,52,37,.12) !important; }

/* Exactly match landing Codex control geometry. */
.codex-paper-controls {
  width:min(100%,560px) !important;
  margin:28px auto 0 !important;
  gap:18px !important;
  justify-content:center !important;
}
body.codex-paper-world .codex-paper-controls .book-nav-btn {
  border-color:rgba(58,42,30,.18) !important;
  background:rgba(255,255,255,.28) !important;
  color:rgba(43,34,27,.74) !important;
  box-shadow:0 6px 14px rgba(75,51,31,.08) !important;
}
body.codex-paper-world .codex-paper-controls .book-nav-btn:hover:not(:disabled) {
  background:rgba(255,255,255,.50) !important;
  border-color:rgba(118,82,50,.32) !important;
  color:#704d31 !important;
}
body.codex-paper-world .codex-paper-controls .book-dot { border-color:rgba(58,42,30,.32) !important; }
body.codex-paper-world .codex-paper-controls .book-dot.is-active {
  background:#7f593a !important;
  border-color:#7f593a !important;
  box-shadow:0 0 0 3px rgba(127,89,58,.13) !important;
}
.codex-paper-caption { margin:12px auto 0 !important; color:rgba(55,40,29,.48) !important; }
.codex-paper-caption #codexCaptionName { color:#795436 !important; }

/* =========================================================
   MY CODEX — dark ink collection restored, white text restored
   ========================================================= */
#codexPanelMine {
  width:min(920px,100%);
  margin:0 auto;
  padding:clamp(22px,4vw,34px);
  border:1px solid rgba(255,255,255,.08);
  border-radius:28px;
  color:#fff;
  background:
    radial-gradient(circle at 82% 0%,rgba(232,201,160,.08),transparent 34%),
    linear-gradient(145deg,rgba(18,18,18,.985),rgba(5,5,5,.97));
  box-shadow:0 18px 42px rgba(55,37,23,.20),inset 0 1px 0 rgba(255,255,255,.035);
  box-sizing:border-box;
}
#codexPanelMine .codex-panel-intro > span { color:rgba(232,201,160,.66); }
#codexPanelMine .codex-panel-intro h2,
#codexPanelMine .thought-tier-header h2,
#codexPanelMine .thought-question-card h3,
#codexPanelMine .thoughts-collection-head strong,
#codexPanelMine .codex-my-stats strong { color:#fff !important; }
#codexPanelMine .codex-panel-intro p,
#codexPanelMine .thought-tier-header span,
#codexPanelMine .your-thoughts-status { color:rgba(245,240,232,.62) !important; }

.codex-my-summary {
  margin:8px 0 32px !important;
  padding:18px !important;
  border:1px solid rgba(232,201,160,.15) !important;
  border-radius:20px !important;
  background:linear-gradient(145deg,rgba(33,27,22,.94),rgba(8,8,8,.94)) !important;
  color:#fff !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 10px 26px rgba(0,0,0,.20);
}
#codexPanelMine .thoughts-collection-head span { color:rgba(245,240,232,.58) !important; }
#codexPanelMine .thoughts-collection-track { background:rgba(255,255,255,.08) !important; }
#codexPanelMine .thoughts-collection-track > span {
  background:linear-gradient(90deg,#8d6442,#e8c9a0,#f0d060) !important;
  box-shadow:0 0 14px rgba(232,201,160,.20);
}
.codex-my-stats {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-top:16px;
}
.codex-my-stats > div {
  min-width:0;
  padding:12px 8px;
  text-align:center;
  border:1px solid rgba(255,255,255,.07);
  border-radius:13px;
  background:rgba(255,255,255,.025);
}
.codex-my-stats strong { display:block; font:400 1.25rem/1 'Jua',sans-serif; }
.codex-my-stats span { display:block; margin-top:5px; font:700 .48rem/1.25 'Geist Mono',monospace; letter-spacing:.08em; color:rgba(245,240,232,.42) !important; }

#codexPanelMine .thoughts-archive { gap:34px !important; }
#codexPanelMine .thought-tier-header {
  border-bottom-color:rgba(255,255,255,.13) !important;
  color:#fff !important;
}
#codexPanelMine .thought-question-card {
  color:#fff !important;
  border-color:rgba(255,255,255,.12) !important;
  background:
    radial-gradient(circle at 92% 6%,rgba(232,201,160,.055),transparent 30%),
    linear-gradient(145deg,rgba(20,20,20,.96),rgba(5,5,5,.90)) !important;
  box-shadow:0 9px 24px rgba(0,0,0,.26) !important;
}
#codexPanelMine .thought-question-card.is-clickable:hover,
#codexPanelMine .thought-question-card.is-clickable:focus-visible {
  border-color:rgba(232,201,160,.32) !important;
  box-shadow:0 14px 32px rgba(0,0,0,.38),0 0 0 1px rgba(232,201,160,.05) !important;
}
#codexPanelMine .thought-number { color:rgba(245,240,232,.52) !important; opacity:1 !important; }
#codexPanelMine .thought-recorded { color:#b8e6bd !important; }
#codexPanelMine .thought-unanswered,
#codexPanelMine .thought-lock,
#codexPanelMine .thought-date { color:rgba(245,240,232,.50) !important; opacity:1 !important; }
#codexPanelMine .your-thought-level { color:#e8c9a0 !important; }
#codexPanelMine .locked-line { background:#fff !important; }
#codexPanelMine .highlight-thought-btn {
  color:#fff !important;
  border-color:rgba(255,255,255,.20) !important;
  background:rgba(255,255,255,.055) !important;
}
#codexPanelMine .highlight-thought-btn.is-highlighted {
  border-color:rgba(232,201,160,.48) !important;
  background:rgba(232,201,160,.12) !important;
  color:#f6dfbd !important;
}

/* =========================================================
   CODEX WEEKLY RANKINGS — podium restored with floating crown
   ========================================================= */
#codexPanelRankings { width:min(900px,100%); margin:0 auto; }
.codex-ranking-tabs {
  display:flex;
  gap:8px;
  overflow-x:auto;
  scrollbar-width:none;
  margin:0 auto 16px;
  padding:4px 1px;
}
.codex-ranking-tabs::-webkit-scrollbar{display:none}
.codex-ranking-tab {
  flex:0 0 auto;
  appearance:none;
  padding:10px 14px;
  border:1px solid rgba(73,52,36,.16);
  border-radius:999px;
  background:rgba(255,255,255,.25);
  color:rgba(43,34,27,.62);
  font:700 .58rem/1 'DM Sans',sans-serif;
  letter-spacing:.08em;
  cursor:pointer;
}
.codex-ranking-tab.is-active {
  color:#fff8ed;
  border-color:#725035;
  background:linear-gradient(145deg,#765337,#3f2e21);
  box-shadow:0 7px 16px rgba(64,43,28,.13);
}
.codex-ranking-meter,
.codex-ranking-you {
  margin:12px 0;
  padding:16px 18px;
  border:1px solid rgba(72,51,35,.14);
  border-radius:18px;
  background:rgba(255,255,255,.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.42);
}
.codex-ranking-meter-head { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; }
.codex-ranking-meter-head > div:last-child { text-align:right; }
.codex-ranking-meter-head span,
.codex-ranking-you > span { display:block; font:700 .54rem/1 'Geist Mono',monospace; letter-spacing:.10em; color:rgba(63,45,31,.52); }
.codex-ranking-meter-head strong,
.codex-ranking-you strong { display:block; margin-top:6px; font:400 1.15rem/1 'Jua',sans-serif; color:var(--igtt-ink); }
.codex-ranking-meter-head small,
.codex-ranking-you small { display:block; margin-top:5px; font:500 .66rem/1.35 'DM Sans',sans-serif; color:rgba(55,40,29,.55); }
.codex-ranking-meter-track { height:9px; margin-top:12px; border-radius:999px; background:rgba(74,52,35,.10); overflow:hidden; }
.codex-ranking-meter-track span { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#886043,#c99d67,#e8c9a0); }
.codex-ranking-meter p { margin:10px 0 0; font:400 .72rem/1.5 'DM Sans',sans-serif; color:rgba(55,40,29,.55); }
.codex-ranking-you { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.codex-ranking-you > * { min-width:0; }
.codex-ranking-status { padding:28px 8px; text-align:center; font:600 .68rem/1.5 'DM Sans',sans-serif; color:rgba(55,40,29,.48); }

.codex-ranking-podium {
  display:grid;
  grid-template-columns:1fr 1.16fr 1fr;
  grid-template-areas:'second first third';
  align-items:end;
  gap:12px;
  margin:54px 0 24px;
  overflow:visible;
}
.codex-rank-podium-card {
  position:relative;
  min-width:0;
  min-height:188px;
  padding:22px 15px 16px;
  border:1px solid rgba(70,50,35,.15);
  border-radius:20px;
  text-align:center;
  background:linear-gradient(155deg,rgba(255,255,255,.48),rgba(232,214,184,.60));
  box-shadow:0 12px 28px rgba(74,50,30,.10),inset 0 1px 0 rgba(255,255,255,.55);
  box-sizing:border-box;
}
.codex-rank-podium-card.rank-1 {
  grid-area:first;
  min-height:228px;
  transform:translateY(-20px);
  border-color:rgba(166,118,58,.38);
  background:
    radial-gradient(circle at 50% 0%,rgba(240,208,96,.24),transparent 48%),
    linear-gradient(155deg,#f7e6bf,#e8c890 100%);
  box-shadow:0 18px 36px rgba(98,65,31,.18),0 0 0 1px rgba(240,208,96,.09),inset 0 1px 0 rgba(255,255,255,.68);
  z-index:2;
}
.codex-rank-podium-card.rank-2 { grid-area:second; }
.codex-rank-podium-card.rank-3 { grid-area:third; }
.codex-rank-podium-card.rank-1::before {
  content:'♛';
  position:absolute;
  left:50%;
  top:-40px;
  transform:translateX(-50%);
  font-size:31px;
  line-height:1;
  color:#b17a2f;
  text-shadow:0 7px 14px rgba(94,59,20,.24),0 0 12px rgba(240,208,96,.26);
  animation:igttCrownFloat 2.8s ease-in-out infinite;
}
@keyframes igttCrownFloat { 0%,100%{transform:translate(-50%,0) rotate(-2deg)}50%{transform:translate(-50%,-6px) rotate(2deg)} }
.codex-rank-medal { display:block; height:18px; font:700 .58rem/1 'Geist Mono',monospace; color:rgba(74,50,31,.48); }
.codex-rank-podium-card > small { display:block; margin:4px 0 9px; font:700 .54rem/1 'Geist Mono',monospace; letter-spacing:.08em; color:rgba(63,45,31,.48); }
.codex-rank-podium-card h3 { margin:0; overflow:hidden; text-overflow:ellipsis; font:400 clamp(.95rem,2vw,1.28rem)/1.1 'Jua',sans-serif; color:var(--igtt-ink); }
.codex-rank-podium-card > strong { display:block; margin-top:10px; font:700 .80rem/1.25 'DM Sans',sans-serif; color:#5f432f; }
.codex-rank-podium-card > em { display:block; margin-top:6px; font:600 .58rem/1.25 'DM Sans',sans-serif; color:#8a633d; font-style:normal; }
.codex-rank-podium-card p { margin:12px 0 0; font:400 .72rem/1.38 'DM Sans',sans-serif; color:rgba(43,34,27,.62); display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; }
.codex-rank-podium-card a { display:inline-block; margin-top:8px; font:700 .51rem/1 'DM Sans',sans-serif; letter-spacing:.06em; color:#765136; text-decoration:none; }
.codex-rank-podium-card.is-you { outline:2px solid rgba(124,86,48,.25); outline-offset:2px; }

.codex-ranking-list { display:grid; gap:7px; }
.codex-ranking-row {
  display:grid;
  grid-template-columns:48px minmax(0,1fr) minmax(118px,auto);
  gap:10px;
  align-items:center;
  min-height:62px;
  padding:9px 12px;
  border:1px solid rgba(71,51,36,.12);
  border-radius:14px;
  background:rgba(255,255,255,.25);
  color:var(--igtt-ink);
  text-decoration:none;
  box-sizing:border-box;
}
.codex-ranking-row.is-you { border-color:rgba(134,92,50,.34); background:rgba(255,255,255,.42); }
.codex-ranking-number { font:700 .72rem/1 'Geist Mono',monospace; color:rgba(63,45,31,.46); }
.codex-ranking-person { min-width:0; }
.codex-ranking-person strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font:600 .86rem/1.2 'DM Sans',sans-serif; color:var(--igtt-ink); }
.codex-ranking-person small { display:block; margin-top:4px; font:700 .48rem/1.25 'Geist Mono',monospace; letter-spacing:.05em; color:rgba(63,45,31,.46); }
.codex-ranking-score { min-width:0; text-align:right; }
.codex-ranking-score strong { display:block; font:700 .84rem/1 'DM Sans',sans-serif; color:#694930; }
.codex-ranking-score small { display:block; margin-top:5px; font:600 .54rem/1.25 'DM Sans',sans-serif; color:rgba(63,45,31,.52); white-space:normal; }
.codex-ranking-more {
  display:block;
  margin:18px auto 0;
  padding:10px 16px;
  border:1px solid rgba(72,51,35,.17);
  border-radius:999px;
  background:rgba(255,255,255,.28);
  color:#67472f;
  font:700 .57rem/1 'DM Sans',sans-serif;
  letter-spacing:.08em;
  cursor:pointer;
}
.codex-ranking-foot { display:flex; justify-content:space-between; gap:16px; margin-top:24px; padding-top:16px; border-top:1px solid rgba(72,51,35,.13); font:500 .62rem/1.45 'DM Sans',sans-serif; color:rgba(55,40,29,.48); }
.codex-ranking-foot a { color:#6c4b32; font-weight:700; text-decoration:none; }

/* =========================================================
   BOOK 1 LEADERBOARD — dark ledger, book-long standings
   ========================================================= */
body.book1-board-world {
  background:
    radial-gradient(circle at 50% -5%,rgba(178,135,97,.18),transparent 38%),
    linear-gradient(180deg,#0b0907,#060504 100%);
  color:var(--igtt-cream);
}
.book1-board-shell { width:min(980px,calc(100% - 28px)); margin:8px auto 96px; }
.book1-board-head { max-width:760px; margin:0 auto 30px; text-align:center; }
.book1-board-back { display:inline-block; margin-bottom:20px; color:rgba(232,201,160,.68); font:700 .58rem/1 'DM Sans',sans-serif; letter-spacing:.10em; text-decoration:none; }
.book1-board-kicker { font:700 .59rem/1 'Geist Mono',monospace; letter-spacing:.16em; color:rgba(232,201,160,.52); }
.book1-board-head h1 { margin:12px 0 10px; font:400 clamp(2.8rem,7vw,5.5rem)/.92 'Jua',sans-serif; color:#f5f0e8; }
.book1-board-head p { max-width:650px; margin:0 auto; font:400 .94rem/1.65 'DM Sans',sans-serif; color:rgba(245,240,232,.56); }
.book1-board-principle { display:flex; align-items:center; justify-content:center; gap:10px; flex-wrap:wrap; margin:20px auto 0; color:rgba(232,201,160,.64); font:700 .52rem/1.3 'Geist Mono',monospace; letter-spacing:.06em; }
.book1-board-principle b { color:rgba(245,240,232,.26); }
.book1-board-status { padding:34px 10px; text-align:center; color:rgba(245,240,232,.46); font:600 .72rem/1.5 'DM Sans',sans-serif; }
.book1-board-you {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,1fr) auto;
  gap:18px;
  align-items:center;
  margin:0 auto 24px;
  padding:16px 18px;
  border:1px solid rgba(232,201,160,.24);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(47,37,27,.88),rgba(11,9,7,.94));
  box-shadow:0 12px 28px rgba(0,0,0,.26),inset 0 1px 0 rgba(255,255,255,.04);
}
.book1-board-you span { display:block; font:700 .52rem/1 'Geist Mono',monospace; letter-spacing:.11em; color:rgba(232,201,160,.60); }
.book1-board-you strong { display:block; margin-top:6px; font:400 1.18rem/1 'Jua',sans-serif; color:#fff; }
.book1-board-you small { display:block; margin-top:5px; font:500 .67rem/1.4 'DM Sans',sans-serif; color:rgba(245,240,232,.48); }
.book1-board-you-progress { height:9px; border-radius:999px; overflow:hidden; background:rgba(255,255,255,.08); }
.book1-board-you-progress span { height:100%; background:linear-gradient(90deg,#825b3c,#e8c9a0,#f0d060); }
.book1-board-you a { color:#e8c9a0; font:700 .58rem/1 'DM Sans',sans-serif; letter-spacing:.08em; text-decoration:none; white-space:nowrap; }

.book1-board-podium {
  display:grid;
  grid-template-columns:1fr 1.18fr 1fr;
  grid-template-areas:'second first third';
  gap:12px;
  align-items:end;
  margin:62px 0 28px;
  overflow:visible;
}
.book1-podium-card {
  position:relative;
  min-width:0;
  min-height:210px;
  padding:22px 16px 17px;
  text-align:center;
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px;
  background:linear-gradient(155deg,rgba(30,27,24,.97),rgba(8,7,6,.97));
  box-shadow:0 15px 34px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.035);
}
.book1-podium-card.rank-1 {
  grid-area:first;
  min-height:260px;
  transform:translateY(-24px);
  border-color:rgba(240,208,96,.38);
  background:radial-gradient(circle at 50% 0%,rgba(240,208,96,.17),transparent 45%),linear-gradient(155deg,rgba(52,42,18,.96),rgba(10,8,5,.98));
  box-shadow:0 20px 42px rgba(0,0,0,.38),0 0 28px rgba(240,208,96,.08),inset 0 1px 0 rgba(255,255,255,.055);
  z-index:2;
}
.book1-podium-card.rank-2{grid-area:second}.book1-podium-card.rank-3{grid-area:third}
.book1-podium-card.rank-1::before {
  content:'♛';
  position:absolute;
  top:-42px;
  left:50%;
  transform:translateX(-50%);
  font-size:33px;
  color:#f0d060;
  text-shadow:0 0 18px rgba(240,208,96,.24),0 8px 18px rgba(0,0,0,.35);
  animation:igttCrownFloat 2.8s ease-in-out infinite;
}
.book1-podium-mark { min-height:18px; font:700 .57rem/1 'Geist Mono',monospace; color:rgba(232,201,160,.56); }
.book1-podium-card > span { display:block; margin-top:5px; font:700 .55rem/1 'Geist Mono',monospace; color:rgba(245,240,232,.42); }
.book1-podium-card h2 { margin:10px 0 0; overflow:hidden; text-overflow:ellipsis; font:400 clamp(1rem,2vw,1.35rem)/1.1 'Jua',sans-serif; color:#fff; }
.book1-podium-card > strong { display:block; margin-top:12px; font:400 clamp(1.6rem,4vw,2.35rem)/1 'Jua',sans-serif; color:#e8c9a0; }
.book1-podium-card > em { display:block; margin-top:5px; font:700 .52rem/1 'Geist Mono',monospace; letter-spacing:.08em; color:rgba(245,240,232,.44); font-style:normal; }
.book1-podium-xp { margin-top:13px; font:700 .72rem/1 'DM Sans',sans-serif; color:rgba(245,240,232,.70); }
.book1-podium-track { height:7px; margin-top:10px; border-radius:999px; overflow:hidden; background:rgba(255,255,255,.07); }
.book1-podium-track i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#7f593a,#e8c9a0); }
.book1-podium-card small { display:block; margin-top:8px; font:500 .58rem/1.35 'DM Sans',sans-serif; color:rgba(245,240,232,.42); }
.book1-podium-card.is-you { outline:2px solid rgba(232,201,160,.18); outline-offset:2px; }

.book1-board-ledger { border:1px solid rgba(255,255,255,.08); border-radius:20px; overflow:hidden; background:linear-gradient(145deg,rgba(21,18,15,.96),rgba(7,6,5,.95)); box-shadow:0 15px 34px rgba(0,0,0,.24); }
.book1-board-ledger-head,
.book1-board-row { display:grid; grid-template-columns:80px minmax(0,1fr) minmax(230px,1.2fr); gap:12px; align-items:center; }
.book1-board-ledger-head { padding:12px 16px; background:rgba(232,201,160,.055); color:rgba(232,201,160,.50); font:700 .50rem/1 'Geist Mono',monospace; letter-spacing:.09em; }
.book1-board-row { min-height:70px; padding:12px 16px; border-top:1px solid rgba(255,255,255,.055); }
.book1-board-row.is-you { background:rgba(232,201,160,.055); }
.book1-row-rank { font:700 .72rem/1 'Geist Mono',monospace; color:rgba(245,240,232,.42); }
.book1-row-person strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font:600 .88rem/1.2 'DM Sans',sans-serif; color:#f5f0e8; }
.book1-row-person small { display:block; margin-top:4px; font:700 .48rem/1 'Geist Mono',monospace; letter-spacing:.07em; color:rgba(232,201,160,.48); }
.book1-row-progress > div:first-child { display:flex; justify-content:space-between; gap:10px; font:600 .70rem/1 'DM Sans',sans-serif; }
.book1-row-progress strong { color:#e8c9a0; }.book1-row-progress span{color:rgba(245,240,232,.52)}
.book1-row-track { height:6px; margin-top:7px; border-radius:999px; overflow:hidden; background:rgba(255,255,255,.07); }
.book1-row-track i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#805a3c,#e8c9a0); }
.book1-row-progress > small { display:block; margin-top:5px; font:600 .47rem/1 'Geist Mono',monospace; letter-spacing:.05em; color:rgba(245,240,232,.34); }
.book1-board-more { display:block; margin:18px auto; padding:10px 16px; border:1px solid rgba(232,201,160,.18); border-radius:999px; background:rgba(232,201,160,.06); color:#e8c9a0; font:700 .56rem/1 'DM Sans',sans-serif; letter-spacing:.08em; cursor:pointer; }
.book1-board-actions { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:22px; padding:20px 22px; border:1px solid rgba(232,201,160,.16); border-radius:20px; background:linear-gradient(145deg,rgba(45,34,24,.72),rgba(8,7,6,.92)); }
.book1-board-actions span { font:700 .51rem/1 'Geist Mono',monospace; letter-spacing:.10em; color:rgba(232,201,160,.52); }
.book1-board-actions strong { display:block; margin-top:7px; font:400 1.2rem/1.1 'Jua',sans-serif; color:#fff; }
.book1-board-actions p { margin:6px 0 0; font:400 .72rem/1.45 'DM Sans',sans-serif; color:rgba(245,240,232,.46); }
.book1-board-actions a { flex:0 0 auto; padding:12px 16px; border:1px solid rgba(232,201,160,.26); border-radius:999px; background:rgba(232,201,160,.10); color:#f2d3a9; font:700 .58rem/1 'DM Sans',sans-serif; letter-spacing:.08em; text-decoration:none; }
.book1-board-foot { display:flex; justify-content:space-between; gap:16px; margin-top:18px; font:500 .62rem/1.4 'DM Sans',sans-serif; color:rgba(245,240,232,.38); }
.book1-board-foot a { color:rgba(232,201,160,.65); text-decoration:none; font-weight:700; }

/* =========================================================
   LEVEL UP — playful Book 1 arcade refinement
   ========================================================= */
body.level-up-world {
  background:
    radial-gradient(circle at 50% -8%,rgba(178,135,97,.20),transparent 34%),
    radial-gradient(circle at 15% 55%,rgba(34,137,182,.055),transparent 28%),
    linear-gradient(180deg,#0c0907,#060504 72%,#080604 100%);
}
.levelup-world-intro {
  max-width:760px;
  margin:4px auto 26px;
  text-align:center;
}
.levelup-world-intro .levelup-kicker { font:700 .57rem/1 'Geist Mono',monospace; letter-spacing:.16em; color:rgba(232,201,160,.58); }
.levelup-world-intro h1 { margin:10px 0 8px; font:400 clamp(2.7rem,7vw,5rem)/.92 'Jua',sans-serif; color:#f5f0e8; text-shadow:0 8px 26px rgba(0,0,0,.35); }
.levelup-world-intro p { max-width:600px; margin:0 auto; font:400 .9rem/1.6 'DM Sans',sans-serif; color:rgba(245,240,232,.52); }
.levelup-loop {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-top:16px;
  color:rgba(232,201,160,.64);
  font:700 .49rem/1.3 'Geist Mono',monospace;
  letter-spacing:.07em;
}
.levelup-loop b { color:rgba(245,240,232,.24); }

body.level-up-world .arcade-shell { margin-top:16px; }
body.level-up-world .arcade-panel {
  background:
    radial-gradient(circle at 90% -10%,rgba(232,201,160,.08),transparent 40%),
    linear-gradient(150deg,rgba(29,23,18,.97),rgba(8,7,6,.97)) !important;
  border-color:rgba(232,201,160,.18) !important;
  box-shadow:0 18px 40px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.045) !important;
}
body.level-up-world .arcade-panel-head { padding-bottom:11px; border-bottom:1px dashed rgba(232,201,160,.13); }
body.level-up-world .arcade-panel .eyebrow { color:rgba(232,201,160,.54) !important; }
body.level-up-world .arcade-panel h2 { color:#fff8ed !important; }
body.level-up-world .arcade-board-cta {
  margin-top:13px;
  border-color:rgba(232,201,160,.18) !important;
  background:rgba(232,201,160,.055) !important;
}
body.level-up-world .arcade-board-cta:hover { background:rgba(232,201,160,.10) !important; border-color:rgba(232,201,160,.32) !important; }

body.level-up-world .wheel-stage {
  overflow:visible !important;
  padding-top:18px !important;
  background:
    radial-gradient(95% 65% at 50% 0%,rgba(232,201,160,.17),transparent 58%),
    radial-gradient(80% 55% at 50% 100%,rgba(34,137,182,.055),transparent 54%),
    linear-gradient(165deg,rgba(28,21,16,.985),rgba(7,6,5,.99)) !important;
  border-color:rgba(232,201,160,.27) !important;
  box-shadow:0 28px 65px rgba(0,0,0,.47),0 0 0 1px rgba(255,255,255,.025),inset 0 1px 0 rgba(255,255,255,.07) !important;
}
body.level-up-world .wheel-stage::before {
  content:'BOOK 1 · LEVEL UP WHEEL';
  position:absolute;
  left:50%;
  top:-14px;
  transform:translateX(-50%);
  padding:7px 14px;
  border:1px solid rgba(232,201,160,.24);
  border-radius:999px;
  background:linear-gradient(145deg,#2b2118,#100d0a);
  color:#e8c9a0;
  font:700 .48rem/1 'Geist Mono',monospace;
  letter-spacing:.10em;
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.04);
  z-index:5;
}
body.level-up-world .arcade-stage-badge {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:7px auto 14px;
  padding:7px 11px;
  border:1px solid rgba(232,201,160,.13);
  border-radius:999px;
  background:rgba(255,255,255,.025);
  color:rgba(232,201,160,.62);
  font:700 .46rem/1 'Geist Mono',monospace;
  letter-spacing:.10em;
}
body.level-up-world .arcade-dot { width:4px;height:4px;border-radius:50%;background:#e8c9a0;box-shadow:0 0 8px rgba(232,201,160,.45); }
body.level-up-world .wc-chapter-row { border-bottom-color:rgba(232,201,160,.16) !important; }
body.level-up-world .wc-chapter-art-wrap { box-shadow:0 0 0 2px rgba(232,201,160,.25),0 0 0 6px rgba(255,255,255,.018),0 10px 22px rgba(0,0,0,.36) !important; }
body.level-up-world .wc-stat { background:linear-gradient(145deg,rgba(232,201,160,.095),rgba(255,255,255,.018)) !important; border-color:rgba(232,201,160,.14) !important; }
body.level-up-world .wheel-ring::before {
  width:calc(var(--wheel-size,320px) + 44px) !important;
  height:calc(var(--wheel-size,320px) + 44px) !important;
  background:radial-gradient(circle,rgba(240,208,96,.18) 0%,rgba(232,201,160,.065) 42%,transparent 69%) !important;
  animation:wheelFunPulse 2.8s ease-in-out infinite !important;
}
@keyframes wheelFunPulse {0%,100%{opacity:.52;transform:translate(-50%,-50%) scale(.97)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.025)}}
body.level-up-world .wheel-coin-flavor {
  margin-top:8px !important;
  padding:7px 12px;
  border:1px dashed rgba(232,201,160,.19);
  border-radius:10px;
  background:rgba(232,201,160,.04);
  color:#e8c9a0 !important;
  animation:ticketPulse 2.6s ease-in-out infinite !important;
}
@keyframes ticketPulse{0%,100%{opacity:.64}50%{opacity:1}}
body.level-up-world .spin-button { filter:drop-shadow(0 12px 22px rgba(0,0,0,.40)) drop-shadow(0 0 10px rgba(232,201,160,.08)) !important; }
body.level-up-world .spin-button:hover:not(.disabled) { transform:translateY(-2px) scale(1.065) !important; filter:brightness(1.06) drop-shadow(0 15px 26px rgba(0,0,0,.44)) drop-shadow(0 0 16px rgba(232,201,160,.14)) !important; }
body.level-up-world .arcade-champion { position:relative; overflow:visible !important; transform:translateY(-2px); }
body.level-up-world .arcade-champion::before {
  content:'♛';
  position:absolute;
  left:5px;
  top:-10px;
  font-size:14px;
  color:#f0d060;
  text-shadow:0 0 12px rgba(240,208,96,.24);
  animation:miniCrownFloat 2.6s ease-in-out infinite;
}
@keyframes miniCrownFloat{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-3px) rotate(4deg)}}
body.level-up-world .arcade-champion .arcade-rank::before { display:none !important; }

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width:760px) {
  body.landing-paper-world .landing-page,
  .codex-world-shell,
  .book1-board-shell { width:calc(100% - 18px); }
  body.landing-paper-world .landing-page,
  .codex-paper-sheet { border-radius:20px; padding-left:16px; padding-right:16px; }

  .codex-main-tabs { margin-top:22px; }
  .codex-main-tab { padding:10px 7px; font-size:.54rem; }
  .codex-paper-book-shell { width:min(100%,420px) !important; }
  .codex-paper-controls {
    width:min(100%,420px) !important;
    gap:12px !important;
    margin-top:28px !important;
  }
  .codex-paper-controls .book-nav-btn { padding:9px 12px !important; font-size:.58rem !important; }
  .codex-paper-controls .book-page-dots { gap:9px; }

  #codexPanelMine { padding:20px 14px; border-radius:22px; }
  .codex-my-stats { grid-template-columns:1fr 1fr; }
  #codexPanelMine .thought-card-footer { flex-wrap:wrap; align-items:flex-start; }
  #codexPanelMine .thought-card-actions { width:100%; justify-content:space-between; }

  .codex-ranking-podium,
  .book1-board-podium { gap:7px; margin-top:52px; }
  .codex-rank-podium-card { min-height:160px; padding:18px 7px 12px; border-radius:15px; }
  .codex-rank-podium-card.rank-1 { min-height:194px; transform:translateY(-15px); }
  .codex-rank-podium-card.rank-1::before { top:-34px; font-size:27px; }
  .codex-rank-podium-card p,
  .codex-rank-podium-card a { display:none; }
  .codex-rank-podium-card h3 { font-size:.82rem; }
  .codex-rank-podium-card > strong { font-size:.65rem; }
  .codex-rank-podium-card > em { font-size:.50rem; }

  .codex-ranking-row { grid-template-columns:40px minmax(0,1fr) 96px; gap:7px; padding:9px 8px; }
  .codex-ranking-person strong { font-size:.78rem; }
  .codex-ranking-score strong { font-size:.75rem; }
  .codex-ranking-score small { font-size:.49rem; overflow-wrap:anywhere; }
  .codex-ranking-meter-head { gap:8px; }
  .codex-ranking-meter-head strong { font-size:.96rem; }
  .codex-ranking-foot { flex-direction:column; }

  .book1-board-you { grid-template-columns:1fr; gap:11px; }
  .book1-board-podium { grid-template-columns:1fr 1.14fr 1fr; }
  .book1-podium-card { min-height:178px; padding:18px 8px 12px; border-radius:16px; }
  .book1-podium-card.rank-1 { min-height:216px; transform:translateY(-18px); }
  .book1-podium-card.rank-1::before { top:-35px; font-size:28px; }
  .book1-podium-card > strong { font-size:1.5rem; }
  .book1-podium-xp { font-size:.61rem; }
  .book1-podium-card small { font-size:.49rem; }
  .book1-board-ledger-head { display:none; }
  .book1-board-row { grid-template-columns:42px minmax(0,1fr); gap:8px; padding:12px; }
  .book1-row-progress { grid-column:2; }
  .book1-board-actions { flex-direction:column; align-items:flex-start; }
  .book1-board-foot { flex-direction:column; }

  .levelup-world-intro { padding:0 16px; margin-bottom:28px; }
  .levelup-world-intro h1 { font-size:clamp(2.5rem,12vw,4rem); }
  body.level-up-world .wheel-stage { overflow:hidden !important; padding-top:22px !important; }
  body.level-up-world .wheel-stage::before { top:8px; font-size:.43rem; }
  body.level-up-world .arcade-stage-badge { margin-top:20px; }
}

@media (max-width:390px) {
  .codex-paper-sheet { padding-left:12px; padding-right:12px; }
  .codex-main-tab { font-size:.50rem; letter-spacing:.06em; }
  .codex-paper-controls { gap:8px !important; }
  .codex-paper-controls .book-nav-btn { padding:8px 9px !important; }
  .codex-paper-controls .book-page-dots { gap:7px; }
  .codex-rank-podium-card { padding-left:5px; padding-right:5px; }
  .codex-rank-podium-card h3 { font-size:.75rem; }
  .book1-podium-card h2 { font-size:.78rem; }
  .book1-podium-card > strong { font-size:1.28rem; }
}

@media (prefers-reduced-motion:reduce) {
  .codex-rank-podium-card.rank-1::before,
  .book1-podium-card.rank-1::before,
  body.level-up-world .wheel-ring::before,
  body.level-up-world .wheel-coin-flavor,
  body.level-up-world .arcade-champion::before { animation:none !important; }
  .codex-tab-panel { animation:none !important; }
}

/* Small structural corrections after cross-checking the generated markup. */
.book1-board-you-progress > span { display:block; height:100%; }
.codex-ranking-you { display:block; }
.codex-ranking-you > span { margin-bottom:6px; }
.codex-ranking-you > strong { margin-top:0; }
.codex-ranking-you > small { margin-top:6px; }

/* Paper page-turn backs/edges stay paper on both public entry points. */
body.landing-paper-world .landing-codex-section .book-page.codex-page::after,
body.codex-paper-world .book-page.codex-page::after {
  background: linear-gradient(90deg,#d2bb98 0%,#ead7b6 12%,#d8c3a3 100%) !important;
}
body.landing-paper-world .landing-codex-section .book-page-edge,
body.codex-paper-world .book-page.codex-page .book-page-edge {
  background: linear-gradient(90deg,rgba(88,61,40,.18),transparent 40%),repeating-linear-gradient(180deg,#dec9a7 0 2px,#ead8ba 2px 4px) !important;
  box-shadow:2px 0 6px rgba(83,55,34,.12) !important;
}

/* =========================================================
   2026-09-09 REFINEMENT PASS
   Landing stays dark; only the Community Codex becomes paper.
   Book 1 board mirrors the weekly ranking visual language.
   Luckiest Thoughts list keeps the actual Thought visible.
   ========================================================= */

/* ---------- LANDING: dark world, paper book ---------- */
body.landing-entry-world {
  background:
    radial-gradient(ellipse 78% 38% at 50% -6%, rgba(178,135,97,.22) 0%, rgba(178,135,97,.08) 38%, transparent 70%),
    radial-gradient(circle at 10% 40%, rgba(232,201,160,.035) 0%, transparent 30%),
    radial-gradient(circle at 92% 72%, rgba(126,83,51,.05) 0%, transparent 34%),
    linear-gradient(180deg,#17110d 0%,#100d0a 27%,#0b0907 66%,#080706 100%);
  color:var(--igtt-cream);
}
body.landing-entry-world .landing-page {
  width:min(980px,calc(100% - 28px));
  margin:0 auto 90px;
  padding:0;
  color:var(--igtt-cream);
  background:none;
  border:0;
  box-shadow:none;
  overflow:visible;
}
body.landing-entry-world .landing-v2-hero { padding-top:34px; }
body.landing-entry-world .landing-v2-kicker,
body.landing-entry-world .landing-section-label,
body.landing-entry-world .landing-v2-book-tease .label { color:rgba(232,201,160,.58) !important; }
body.landing-entry-world .landing-v2-title,
body.landing-entry-world .landing-v2-book-tease h2,
body.landing-entry-world .landing-codex-intro h2 { color:#f7f1e8 !important; text-shadow:0 4px 24px rgba(0,0,0,.42) !important; }
body.landing-entry-world .landing-v2-sub,
body.landing-entry-world .landing-v2-book-tease p,
body.landing-entry-world .landing-codex-intro p { color:rgba(245,240,232,.62) !important; }
body.landing-entry-world .landing-v2-book-tease { border-color:rgba(255,255,255,.08) !important; }
body.landing-entry-world .landing-rule { background:#f5f0e8 !important; opacity:.14 !important; }

.landing-hero-meta {
  display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;
  margin:18px auto 0;
  font:700 .56rem/1.2 'Geist Mono',monospace;letter-spacing:.12em;
  color:rgba(232,201,160,.55);text-transform:uppercase;
}
.landing-hero-meta i { color:rgba(245,240,232,.20); font-style:normal; }
.landing-hero-actions {
  display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;
  margin:22px auto 0;
}
.landing-hero-action {
  display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;
  border:1px solid rgba(255,255,255,.12);border-radius:999px;
  background:rgba(255,255,255,.035);color:rgba(245,240,232,.76);text-decoration:none;
  font:700 .60rem/1 'DM Sans',sans-serif;letter-spacing:.09em;text-transform:uppercase;
  transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease;
}
.landing-hero-action:hover,.landing-hero-action:focus-visible { transform:translateY(-2px);border-color:rgba(232,201,160,.34);color:#fff;outline:none; }
.landing-hero-action.is-primary { background:linear-gradient(145deg,rgba(178,135,97,.30),rgba(111,78,50,.24));border-color:rgba(232,201,160,.38);color:#fff2df;box-shadow:0 9px 22px rgba(0,0,0,.22); }

/* Hero teaser returns to an ink-card feeling. */
body.landing-entry-world .hero-book-page {
  border-color:rgba(232,201,160,.18) !important;
  background:linear-gradient(145deg,rgba(31,25,20,.96),rgba(7,7,7,.95)) !important;
  box-shadow:0 15px 34px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.035) !important;
}
body.landing-entry-world .hero-book-page-num { color:rgba(232,201,160,.62) !important; }
body.landing-entry-world .hero-book-page p { color:rgba(245,240,232,.82) !important; }

/* The Codex section stays in the dark world; the physical book is the paper object. */
body.landing-entry-world .landing-codex-section {
  position:relative;
  margin-top:82px;
  padding:0 0 16px;
}
body.landing-entry-world .landing-codex-intro { margin-bottom:30px; }
body.landing-entry-world .landing-codex-book-shell {
  width:min(580px,100%);
  margin-top:26px;
  padding:12px 10px 12px 20px;
  border:1px solid rgba(178,135,97,.30);
  border-radius:12px 22px 22px 12px;
  background:
    linear-gradient(90deg,rgba(58,40,27,.97),rgba(97,67,43,.90) 3%,rgba(37,27,20,.98) 7%,rgba(24,20,17,.98) 100%);
  box-shadow:0 28px 58px rgba(0,0,0,.46),0 0 0 1px rgba(232,201,160,.035),inset 0 1px 0 rgba(255,255,255,.04);
  box-sizing:border-box;
}
body.landing-entry-world .landing-codex-book-shell .tier-book { width:100% !important; }
body.landing-entry-world .landing-codex-book-shell .tier-book-spine {
  left:-3px;background:linear-gradient(180deg,#a27954,#67472f 45%,#8d6747 72%,#5c3e2a);
  box-shadow:inset -2px 0 4px rgba(50,30,18,.35),2px 0 10px rgba(0,0,0,.22);
}
body.landing-entry-world .landing-codex-section .book-page-inner.codex-page-inner {
  background:
    radial-gradient(circle at 14% 10%,rgba(255,255,255,.36),transparent 28%),
    repeating-linear-gradient(0deg,rgba(75,53,36,.025) 0 1px,transparent 1px 5px),
    linear-gradient(145deg,#f7ecd6,#e7d3b1) !important;
  color:var(--igtt-ink) !important;
  box-shadow:inset 0 0 0 1px rgba(74,52,36,.16),inset 10px 0 24px rgba(95,67,44,.09),0 10px 28px rgba(0,0,0,.18) !important;
}
body.landing-entry-world .landing-codex-section .book-page.codex-page::after {
  background:linear-gradient(90deg,#dfc9a6,#f1dfc1 15%,#e5d0ad) !important;
}
body.landing-entry-world .landing-codex-section .book-page-edge {
  background:repeating-linear-gradient(180deg,#ead9bb 0 2px,#d8c09a 2px 4px) !important;
}
body.landing-entry-world .landing-codex-section .codex-page-head {
  background:linear-gradient(180deg,rgba(247,236,214,.985) 74%,rgba(247,236,214,0)) !important;
}
body.landing-entry-world .landing-codex-section .book-page-chapter,
body.landing-entry-world .landing-codex-section .codex-page-unlocked,
body.landing-entry-world .landing-codex-section .codex-unlocked-by,
body.landing-entry-world .landing-codex-section .codex-q-num { color:#795436 !important; }
body.landing-entry-world .landing-codex-section .codex-page-name,
body.landing-entry-world .landing-codex-section .codex-q-text,
body.landing-entry-world .landing-codex-section .codex-answer-name,
body.landing-entry-world .landing-codex-section .codex-answer-text { color:var(--igtt-ink) !important; }
body.landing-entry-world .landing-codex-section .book-page-range,
body.landing-entry-world .landing-codex-section .codex-page-range { color:rgba(55,40,29,.50) !important; }
body.landing-entry-world .landing-codex-section .codex-answer { border-color:rgba(71,51,36,.12) !important;background:rgba(255,255,255,.30) !important; }
body.landing-entry-world .landing-codex-section .codex-answer:hover { background:rgba(255,255,255,.50) !important; }
body.landing-entry-world .landing-codex-section .codex-question-block.is-locked { border-color:rgba(71,51,36,.17) !important;background:rgba(91,65,43,.035) !important; }
body.landing-entry-world .landing-codex-section .codex-q-locked-text { color:rgba(43,34,27,.62) !important; }
body.landing-entry-world .landing-codex-section .codex-q-locked-copy { color:rgba(43,34,27,.46) !important; }

/* Controls sit outside the book on the dark page, so keep them high-contrast and balanced. */
body.landing-entry-world .landing-codex-section .tier-book-controls {
  width:min(560px,100%) !important;margin:24px auto 0 !important;gap:18px !important;
}
body.landing-entry-world .landing-codex-section .book-nav-btn {
  border-color:rgba(232,201,160,.22) !important;background:rgba(232,201,160,.065) !important;color:#f0d7b7 !important;
}
body.landing-entry-world .landing-codex-section .book-nav-btn:hover:not(:disabled) { background:rgba(232,201,160,.12) !important;border-color:rgba(232,201,160,.38) !important; }
body.landing-entry-world .landing-codex-section .book-dot { border-color:rgba(232,201,160,.32) !important; }
body.landing-entry-world .landing-codex-section .book-dot.is-active { background:#e8c9a0 !important;border-color:#e8c9a0 !important;box-shadow:0 0 0 3px rgba(232,201,160,.10) !important; }
body.landing-entry-world .landing-codex-section .tier-book-caption,
body.landing-entry-world .landing-codex-section .codex-entry-note { color:rgba(245,240,232,.45) !important; }
body.landing-entry-world .landing-v2-codex-link { color:rgba(232,201,160,.72) !important; }

/* ---------- BOOK 1: same leaderboard language as weekly Codex boards ---------- */
body.book1-board-world {
  background:
    radial-gradient(circle at 50% -5%,rgba(178,135,97,.18),transparent 36%),
    linear-gradient(180deg,#0b0907,#060504 100%);
  color:var(--igtt-cream);
}
.book1-ranking-shell { width:min(980px,calc(100% - 28px));margin:6px auto 100px; }
.book1-ranking-paper {
  width:min(900px,100%);margin:0 auto;padding:clamp(24px,4vw,40px);
  border:1px solid rgba(82,61,43,.24);border-radius:26px;
  background:
    radial-gradient(circle at 12% 8%,rgba(255,255,255,.40),transparent 26%),
    repeating-linear-gradient(0deg,rgba(92,70,50,.018) 0 1px,transparent 1px 5px),
    linear-gradient(145deg,var(--igtt-paper-3),var(--igtt-paper) 52%,var(--igtt-paper-2));
  color:var(--igtt-ink);box-shadow:0 26px 62px rgba(0,0,0,.40),inset 0 1px 0 rgba(255,255,255,.72);box-sizing:border-box;
}
.book1-ranking-back { display:inline-block;margin-bottom:24px;color:#765136;text-decoration:none;font:700 .56rem/1 'DM Sans',sans-serif;letter-spacing:.08em; }
.book1-ranking-intro { text-align:center;max-width:690px;margin:0 auto 22px; }
.book1-ranking-intro > span { color:rgba(63,45,31,.50) !important; }
.book1-ranking-intro h1 { margin:8px 0 10px;font:400 clamp(2.4rem,6vw,4.7rem)/.96 'Jua',sans-serif;color:var(--igtt-ink); }
.book1-ranking-intro p { margin:0 auto;color:rgba(55,40,29,.62);font:400 .94rem/1.65 'DM Sans',sans-serif; }
.book1-board-chip {
  width:max-content;max-width:100%;margin:0 auto 14px;padding:10px 14px;border:1px solid #725035;border-radius:999px;
  background:linear-gradient(145deg,#765337,#3f2e21);color:#fff8ed;box-shadow:0 7px 16px rgba(64,43,28,.13);
  font:700 .58rem/1 'DM Sans',sans-serif;letter-spacing:.08em;box-sizing:border-box;
}
.book1-board-context {
  display:flex;align-items:flex-start;justify-content:space-between;gap:18px;
  margin:12px 0;padding:16px 18px;border:1px solid rgba(72,51,35,.14);border-radius:18px;
  background:rgba(255,255,255,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.42);
}
.book1-board-context span { display:block;font:700 .54rem/1 'Geist Mono',monospace;letter-spacing:.10em;color:rgba(63,45,31,.52); }
.book1-board-context strong { display:block;margin-top:6px;font:400 1rem/1.2 'Jua',sans-serif;color:var(--igtt-ink); }
.book1-board-context small { max-width:310px;font:500 .66rem/1.45 'DM Sans',sans-serif;color:rgba(55,40,29,.55);text-align:right; }
.book1-ranking-podium { margin-top:54px !important; }
.book1-ranking-row .codex-ranking-score strong { color:#694930; }
.book1-ranking-actions { display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:22px; }
.book1-ranking-actions a {
  display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border:1px solid rgba(72,51,35,.17);border-radius:999px;
  background:rgba(255,255,255,.26);color:#67472f;text-decoration:none;font:700 .56rem/1 'DM Sans',sans-serif;letter-spacing:.07em;
}
.book1-ranking-actions a.book1-ranking-primary { background:linear-gradient(145deg,#765337,#3f2e21);color:#fff8ed;border-color:#725035; }
.book1-ranking-foot { margin-top:20px; }

/* ---------- BOOK: leaderboard is discoverable where progress lives ---------- */
.questions-hub-journey-bottom { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px; }
.questions-hub-journey-bottom #hubJourneyHint { margin:0 !important; }
.questions-hub-journey-bottom a {
  flex:0 0 auto;color:#f0d2aa;text-decoration:none;font:700 .52rem/1 'Geist Mono',monospace;letter-spacing:.06em;
  padding:7px 10px;border:1px solid rgba(232,201,160,.20);border-radius:999px;background:rgba(232,201,160,.055);
}

/* ---------- LUCKIEST THOUGHTS: show the Thought throughout the ranking ---------- */
.codex-ranking-row.is-thought {
  grid-template-columns:48px minmax(120px,.78fr) minmax(0,1.5fr) minmax(118px,auto);
  min-height:82px;
}
.codex-ranking-thought-preview {
  min-width:0;margin:0;padding:0 8px 0 2px;
  color:rgba(43,34,27,.74);font:500 .76rem/1.42 'DM Sans',sans-serif;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}
.codex-ranking-row.is-thought:hover .codex-ranking-thought-preview { color:var(--igtt-ink); }

/* Keep top-three Thought copy visible on phones instead of removing the core content. */
@media (max-width:700px) {
  body.landing-entry-world .landing-page { width:min(100% - 20px,620px); }
  body.landing-entry-world .landing-v2-hero { padding-top:20px; }
  .landing-hero-meta { gap:7px;font-size:.50rem; }
  .landing-hero-actions { display:grid;grid-template-columns:1fr;gap:8px;width:min(100%,360px); }
  .landing-hero-action { width:100%;box-sizing:border-box; }
  body.landing-entry-world .landing-codex-section { margin-top:56px; }
  body.landing-entry-world .landing-codex-book-shell {
    width:min(360px,calc(100vw - 16px)) !important;max-width:calc(100vw - 16px) !important;
    padding:9px 7px 9px 16px !important;border-radius:9px 17px 17px 9px;
  }
  body.landing-entry-world .landing-codex-book-shell .tier-book { width:100% !important; }
  body.landing-entry-world .landing-codex-section .tier-book-controls {
    width:min(340px,calc(100vw - 24px)) !important;max-width:calc(100vw - 24px) !important;
    display:grid !important;grid-template-columns:minmax(70px,1fr) auto minmax(70px,1fr) !important;gap:8px !important;margin-top:20px !important;
  }
  body.landing-entry-world .landing-codex-section .book-nav-btn { padding:9px 10px !important;font-size:.56rem !important; }
  body.landing-entry-world .landing-codex-section .book-page-dots { gap:8px !important; }

  .book1-ranking-shell { width:min(100% - 18px,620px);margin-bottom:88px; }
  .book1-ranking-paper { padding:22px 12px 26px;border-radius:20px; }
  .book1-ranking-intro h1 { font-size:clamp(2.2rem,12vw,3.5rem); }
  .book1-board-context { flex-direction:column;gap:8px;padding:14px; }
  .book1-board-context small { max-width:none;text-align:left; }
  .book1-ranking-actions { display:grid;grid-template-columns:1fr;width:100%; }
  .book1-ranking-actions a { width:100%;box-sizing:border-box; }
  .questions-hub-journey-bottom { align-items:flex-start;flex-direction:column; }

  .codex-rank-podium-card p { display:-webkit-box !important;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.60rem;line-height:1.35;margin-top:9px; }
  .codex-rank-podium-card a { display:inline-block !important;font-size:.46rem;margin-top:6px; }
  .codex-rank-podium-card.rank-1 { min-height:220px !important; }

  .codex-ranking-row.is-thought {
    grid-template-columns:38px minmax(0,1fr) 94px;
    grid-template-areas:'rank person score' '. thought thought';
    gap:7px 8px;min-height:94px;padding:10px 9px;
  }
  .codex-ranking-row.is-thought .codex-ranking-number { grid-area:rank; }
  .codex-ranking-row.is-thought .codex-ranking-person { grid-area:person; }
  .codex-ranking-row.is-thought .codex-ranking-score { grid-area:score; }
  .codex-ranking-row.is-thought .codex-ranking-thought-preview {
    grid-area:thought;padding:7px 0 1px;margin:0;border-top:1px solid rgba(71,51,36,.09);font-size:.70rem;line-height:1.40;-webkit-line-clamp:3;
  }
}

@media (max-width:380px) {
  body.landing-entry-world .landing-codex-section .tier-book-controls { grid-template-columns:minmax(62px,1fr) auto minmax(62px,1fr) !important;gap:5px !important; }
  body.landing-entry-world .landing-codex-section .book-nav-btn { padding-left:7px !important;padding-right:7px !important; }
  .book1-ranking-paper { padding-left:9px;padding-right:9px; }
  .codex-ranking-podium { gap:7px; }
  .codex-rank-podium-card { padding-left:6px !important;padding-right:6px !important; }
  .codex-rank-podium-card p { font-size:.55rem; }
  .codex-ranking-row.is-thought { grid-template-columns:34px minmax(0,1fr) 88px; }
}

/* Landing: explain the fun loop without turning the page into onboarding copy. */
.landing-play-loop {
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;
  width:min(100%,760px);margin:22px auto 0;text-align:left;
}
.landing-play-loop > div {
  min-width:0;padding:15px 16px;border:1px solid rgba(255,255,255,.075);border-radius:16px;
  background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.landing-play-loop span { display:block;font:700 .50rem/1 'Geist Mono',monospace;letter-spacing:.12em;color:rgba(232,201,160,.48); }
.landing-play-loop strong { display:block;margin-top:7px;font:400 .96rem/1.1 'Jua',sans-serif;color:#f5f0e8; }
.landing-play-loop small { display:block;margin-top:6px;font:400 .70rem/1.45 'DM Sans',sans-serif;color:rgba(245,240,232,.46); }
body.landing-entry-world .landing-v2-codex-link {
  display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;margin-top:18px;
  border:1px solid rgba(232,201,160,.24);border-radius:999px;background:rgba(232,201,160,.07);
  color:#f0d5b2 !important;text-decoration:none !important;font:700 .57rem/1 'DM Sans',sans-serif;letter-spacing:.07em;text-transform:uppercase;
}
body.landing-entry-world .landing-v2-codex-link:hover { background:rgba(232,201,160,.12);border-color:rgba(232,201,160,.38); }
@media(max-width:700px){
  .landing-play-loop{grid-template-columns:1fr;gap:8px;width:min(100%,380px)}
  .landing-play-loop>div{padding:13px 14px}
}

/* =========================================================
   LEVEL UP V3 + MOBILE CODEX/RANKING POLISH — 2026-09-09
   ========================================================= */
body.level-up-world{
  --levelup-ink-1:#172126;
  --levelup-ink-2:#0a1013;
  --levelup-ink-3:#05080a;
  --levelup-edge:rgba(199,221,227,.12);
  --levelup-gold:#e8c9a0;
  --levelup-paper:#eadfc9;
  --levelup-paper-deep:#d4bc96;
  background-color:#0b0907 !important;
  background-image:
    radial-gradient(ellipse 78% 36% at 50% -7%,rgba(178,135,97,.20),rgba(178,135,97,.06) 42%,transparent 74%),
    radial-gradient(circle at 86% 28%,rgba(34,137,182,.035),transparent 28%),
    linear-gradient(180deg,#19120e 0%,#100d0a 36%,#0b0907 72%,#080706 100%) !important;
  color:#f5f0e8;
}
.levelup-v3{
  width:min(1120px,calc(100vw - 32px));
  align-self:stretch;
  margin:4px auto 96px;
  color:#f5f0e8;
}
.levelup-v3-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:28px;
  margin:14px 0 24px;
  padding:0 6px;
}
.levelup-v3-kicker,
.levelup-v3-id-copy>span,
.levelup-v3-level-head span,
.levelup-v3-why>span,
.levelup-v3-machine-head>div>span,
.levelup-v3-ticket span,
.levelup-v3-races-head span,
.levelup-v3-race-title span{
  display:block;
  font:700 .56rem/1 'Geist Mono',monospace;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:rgba(232,201,160,.60);
}
.levelup-v3-hero h1{
  margin:10px 0 10px;
  font:400 clamp(3rem,7vw,6.4rem)/.82 'Jua',sans-serif;
  letter-spacing:-.035em;
  color:#fff8ee;
  text-shadow:0 10px 35px rgba(0,0,0,.28);
}
.levelup-v3-hero-copy>p{
  max-width:650px;
  margin:0;
  font:400 clamp(.86rem,1.7vw,1rem)/1.65 'DM Sans',sans-serif;
  color:rgba(245,240,232,.60);
}
.levelup-v3-loop{
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
  margin-top:17px;
  font:700 .52rem/1 'Geist Mono',monospace;
  letter-spacing:.09em;
  color:rgba(245,240,232,.48);
}
.levelup-v3-loop span{
  padding:7px 9px;
  border:1px solid rgba(232,201,160,.16);
  border-radius:999px;
  background:rgba(232,201,160,.045);
}
.levelup-v3-loop b{color:rgba(232,201,160,.28)}
.levelup-v3-wallet{
  min-width:164px;
  padding:14px 17px 13px;
  border:1px solid rgba(255,247,230,.50);
  border-radius:18px;
  background:
    repeating-linear-gradient(0deg,rgba(91,68,45,.022) 0 1px,transparent 1px 5px),
    linear-gradient(145deg,var(--levelup-paper),var(--levelup-paper-deep));
  color:#211910;
  box-shadow:0 15px 32px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.65);
  transform:rotate(1deg);
}
.levelup-v3-wallet>span,.levelup-v3-wallet>small{
  display:block;
  font:700 .48rem/1.2 'Geist Mono',monospace;
  letter-spacing:.10em;
  color:rgba(45,34,24,.58);
}
.levelup-v3-wallet>strong{
  display:flex;
  align-items:center;
  gap:8px;
  margin:7px 0 5px;
  font:400 2rem/1 'Jua',sans-serif;
  color:#211910;
}
.levelup-v3-wallet i{font-style:normal;font-size:1.1rem}

.levelup-v3-playfield{
  display:grid;
  grid-template-columns:minmax(280px,.72fr) minmax(430px,1.28fr);
  gap:18px;
  align-items:stretch;
}
.levelup-v3-identity,
.levelup-v3-machine,
.levelup-v3-race-card{
  position:relative;
  min-width:0;
  border:1px solid var(--levelup-edge);
  background:
    radial-gradient(circle at 88% 0%,rgba(196,220,226,.045),transparent 38%),
    linear-gradient(152deg,var(--levelup-ink-1),var(--levelup-ink-2) 58%,var(--levelup-ink-3));
  box-shadow:0 22px 54px rgba(0,0,0,.37),inset 0 1px 0 rgba(221,238,242,.035);
}
.levelup-v3-identity{
  padding:24px;
  border-radius:26px;
  display:flex;
  flex-direction:column;
}
.levelup-v3-id-top{display:flex;align-items:center;gap:16px;padding-bottom:18px;border-bottom:1px solid rgba(232,201,160,.12)}
.levelup-v3-art-shell{
  position:relative;
  flex:0 0 auto;
  width:104px;
  height:104px;
  border-radius:50%;
  padding:7px;
  box-sizing:border-box;
  background:linear-gradient(145deg,rgba(232,201,160,.28),rgba(255,255,255,.035));
  box-shadow:0 15px 28px rgba(0,0,0,.30),0 0 0 1px rgba(232,201,160,.16);
}
.levelup-v3-art-shell::after{
  content:'';
  position:absolute;
  inset:12px;
  border-radius:50%;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
  pointer-events:none;
}
.levelup-v3-chapter-art{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover}
.levelup-v3-art-orbit{
  position:absolute;
  inset:-7px;
  border:1px dashed rgba(232,201,160,.22);
  border-radius:50%;
  animation:levelupOrbit 20s linear infinite;
}
.levelup-v3-art-orbit::before{content:'✦';position:absolute;top:-5px;left:50%;transform:translateX(-50%);color:#e8c9a0;font-size:9px}
@keyframes levelupOrbit{to{transform:rotate(360deg)}}
.levelup-v3-id-copy{min-width:0}
.levelup-v3-id-copy h2{margin:7px 0 3px;font:400 clamp(1.7rem,3vw,2.4rem)/1 'Jua',sans-serif;color:#fff}
.levelup-v3-id-copy p{margin:0;font:600 .62rem/1.3 'DM Sans',sans-serif;color:rgba(245,240,232,.50)}
.levelup-v3-level-card{
  margin-top:18px;
  padding:16px;
  border:1px solid rgba(232,201,160,.14);
  border-radius:18px;
  background:rgba(232,201,160,.045);
}
.levelup-v3-level-head{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}
.levelup-v3-level-head strong{display:block;margin-top:6px;font:400 1.35rem/1 'Jua',sans-serif;color:#fff}
.levelup-v3-xp{text-align:right}
.levelup-v3-level-card #progressLabel{margin:13px 0 7px;font:500 .66rem/1.3 'DM Sans',sans-serif;color:rgba(245,240,232,.48)}
.levelup-v3-progress{width:100%;margin:0 !important}
.levelup-v3-progress .progress-outer{height:9px;background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.07)}
.levelup-v3-progress .progress-inner{background:linear-gradient(90deg,#8d6442,#e8c9a0,#f0d060);box-shadow:0 0 12px rgba(232,201,160,.18)}
.levelup-v3-why{display:grid;gap:8px;margin-top:18px}
.levelup-v3-why>span{margin-bottom:2px}
.levelup-v3-why>div{display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:center;padding:9px 0;border-top:1px solid rgba(255,255,255,.055)}
.levelup-v3-why>div b{font:700 .52rem/1 'Geist Mono',monospace;color:rgba(232,201,160,.44)}
.levelup-v3-why p{margin:0;font:500 .72rem/1.42 'DM Sans',sans-serif;color:rgba(245,240,232,.57)}
.levelup-v3-text-link{margin-top:auto;padding-top:18px;color:rgba(232,201,160,.60);text-decoration:none;font:700 .52rem/1 'Geist Mono',monospace;letter-spacing:.08em}

.levelup-v3-machine{
  overflow:hidden;
  padding:24px 28px 22px;
  border-radius:30px;
  border-color:rgba(232,201,160,.20);
  background:
    radial-gradient(circle at 50% 24%,rgba(232,201,160,.10),transparent 38%),
    radial-gradient(circle at 88% 0%,rgba(34,137,182,.065),transparent 34%),
    linear-gradient(155deg,#152025 0%,#0a1114 54%,#05090b 100%);
}
.levelup-v3-machine::before{
  content:'LEVEL UP';
  position:absolute;
  right:-12px;
  bottom:-12px;
  font:400 5.6rem/1 'Jua',sans-serif;
  letter-spacing:-.05em;
  color:rgba(255,255,255,.018);
  pointer-events:none;
}
.levelup-v3-machine-head{position:relative;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:15px;border-bottom:1px solid rgba(232,201,160,.12)}
.levelup-v3-machine-head h2{margin:6px 0 0;font:400 clamp(1.7rem,3vw,2.4rem)/1 'Jua',sans-serif;color:#fff8ed}
.levelup-v3-live{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid rgba(184,230,189,.18);border-radius:999px;background:rgba(184,230,189,.055);font:700 .48rem/1 'Geist Mono',monospace;letter-spacing:.08em;color:#b8e6bd}
.levelup-v3-live i{width:5px;height:5px;border-radius:50%;background:#b8e6bd;box-shadow:0 0 8px rgba(184,230,189,.50)}
.levelup-v3-ticket{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:14px auto 0;
  padding:9px 12px;
  border:1px dashed rgba(232,201,160,.22);
  border-radius:11px;
  background:rgba(232,201,160,.055);
}
.levelup-v3-ticket strong{font:700 .56rem/1.2 'Geist Mono',monospace;letter-spacing:.06em;color:#f1d7b4;text-align:right}
.levelup-v3-wheel-zone{position:relative;z-index:1;display:flex;justify-content:center;align-items:center;min-height:380px;padding:12px 0 0}
.levelup-v3-wheel-zone::before{
  content:'';
  position:absolute;
  width:min(410px,82%);
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(232,201,160,.10),rgba(34,137,182,.035) 42%,transparent 70%);
  filter:blur(1px);
  pointer-events:none;
}
body.level-up-world .levelup-v3-wheel-ring::before{content:none !important;display:none !important}
.levelup-v3-wheel-ring{position:relative;display:flex;align-items:center;justify-content:center;z-index:2}
body.level-up-world .levelup-v3-wheel-ring .spinner-container{width:330px;height:330px;margin:0;max-width:100%;max-height:none}
body.level-up-world .levelup-v3-wheel-ring .wheel{width:100%;height:100%}
.levelup-v3-spin-wrap{position:relative;z-index:3;margin:0 !important;display:flex;justify-content:center}
body.level-up-world .levelup-v3-spin-wrap .spin-button{width:min(168px,50vw);filter:drop-shadow(0 13px 22px rgba(0,0,0,.40)) drop-shadow(0 0 12px rgba(232,201,160,.10));transition:transform .16s ease,filter .16s ease,opacity .16s ease}
body.level-up-world .levelup-v3-spin-wrap .spin-button:hover:not(.disabled){transform:translateY(-2px) scale(1.055);filter:brightness(1.06) drop-shadow(0 16px 25px rgba(0,0,0,.45)) drop-shadow(0 0 18px rgba(232,201,160,.16))}
.levelup-v3-cost{position:relative;z-index:3;display:flex;align-items:center;justify-content:center;gap:8px;margin:10px auto 0;color:rgba(245,240,232,.56)}
.levelup-v3-cost>span{font-size:.95rem}.levelup-v3-cost strong,.levelup-v3-cost small{font:700 .50rem/1 'Geist Mono',monospace;letter-spacing:.08em}.levelup-v3-cost small{color:rgba(245,240,232,.33)}

.levelup-v3-races{margin-top:22px;padding:24px 0 0}
.levelup-v3-races-head{display:flex;align-items:end;justify-content:space-between;gap:28px;padding:0 6px 14px}
.levelup-v3-races-head h2{margin:7px 0 0;font:400 clamp(1.8rem,4vw,3rem)/.95 'Jua',sans-serif;color:#fff}
.levelup-v3-races-head p{max-width:430px;margin:0;font:400 .78rem/1.55 'DM Sans',sans-serif;color:rgba(245,240,232,.48);text-align:right}
.levelup-v3-race-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.levelup-v3-race-card{padding:20px;border-radius:22px}
.levelup-v3-race-card-weekly{border-color:rgba(142,203,214,.16)}
.levelup-v3-race-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.065)}
.levelup-v3-race-title h3{margin:6px 0 0;font:400 1.25rem/1 'Jua',sans-serif;color:#fff}
.levelup-v3-race-title>b{flex:0 0 auto;padding:6px 8px;border:1px solid rgba(232,201,160,.14);border-radius:999px;background:rgba(232,201,160,.04);font:700 .43rem/1 'Geist Mono',monospace;letter-spacing:.07em;color:rgba(232,201,160,.50)}
.levelup-v3-board{display:grid;gap:7px}
.levelup-v3-board .arcade-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:48px;padding:7px 10px;border:1px solid rgba(200,221,226,.075);border-radius:12px;background:rgba(255,255,255,.022)}
.levelup-v3-board .arcade-row:nth-child(1){border-color:rgba(240,208,96,.22);background:linear-gradient(90deg,rgba(240,208,96,.075),rgba(255,255,255,.018));transform:translateY(-1px)}
.levelup-v3-board .arcade-row:nth-child(2){border-color:rgba(192,200,208,.13)}
.levelup-v3-board .arcade-row:nth-child(3){border-color:rgba(212,149,106,.14)}
.levelup-v3-board .arcade-rank{font:400 1rem/1 'Jua',sans-serif;color:#e8c9a0;text-align:center}
.levelup-v3-board .arcade-name{font:700 .76rem/1.15 'DM Sans',sans-serif;color:#f7f1e9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.levelup-v3-board .arcade-meta{display:block;margin-top:3px;font:600 .45rem/1 'Geist Mono',monospace;letter-spacing:.07em;color:rgba(245,240,232,.35)}
.levelup-v3-board .arcade-score{font:700 .68rem/1 'DM Sans',sans-serif;color:#e8c9a0;white-space:nowrap;text-align:right}
.levelup-v3-board .arcade-loading,.levelup-v3-board .arcade-empty{padding:20px 10px;text-align:center;font:600 .56rem/1.4 'Geist Mono',monospace;letter-spacing:.06em;color:rgba(245,240,232,.38)}
.levelup-v3-race-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:42px;margin-top:12px;padding:0 12px;border:1px solid rgba(232,201,160,.14);border-radius:12px;background:rgba(232,201,160,.045);color:#f0d6b3;text-decoration:none;font:700 .52rem/1 'Geist Mono',monospace;letter-spacing:.08em;transition:.16s ease}
.levelup-v3-race-cta:hover{transform:translateY(-1px);border-color:rgba(232,201,160,.28);background:rgba(232,201,160,.085)}
.levelup-v3-race-cta b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#eadfc9;color:#211910}

/* -------- Weekly + Book 1 podiums: mobile hierarchy, never squeezed -------- */
@media(max-width:700px){
  .codex-ranking-podium,
  .book1-ranking-podium{
    grid-template-columns:1fr 1fr !important;
    grid-template-areas:'first first' 'second third' !important;
    align-items:stretch !important;
    gap:10px !important;
    margin:50px 0 22px !important;
  }
  .codex-rank-podium-card{
    min-height:0 !important;
    padding:17px 12px 14px !important;
    border-radius:17px !important;
  }
  .codex-rank-podium-card.rank-1{
    min-height:184px !important;
    transform:translateY(-10px) !important;
    padding:22px 18px 17px !important;
  }
  .codex-rank-podium-card.rank-2,.codex-rank-podium-card.rank-3{min-height:155px !important}
  .codex-rank-podium-card.rank-1::before{top:-35px;font-size:28px}
  .codex-rank-podium-card h3{font-size:1.02rem !important;white-space:normal;overflow-wrap:anywhere}
  .codex-rank-podium-card>strong{font-size:.76rem !important}
  .codex-rank-podium-card>em{font-size:.53rem !important}
  .codex-rank-podium-card p{font-size:.65rem !important;line-height:1.38 !important;-webkit-line-clamp:3 !important}
}
@media(max-width:350px){
  .codex-ranking-podium,
  .book1-ranking-podium{
    grid-template-columns:1fr !important;
    grid-template-areas:'first' 'second' 'third' !important;
    gap:9px !important;
  }
  .codex-rank-podium-card.rank-1{transform:none !important;margin-top:6px}
  .codex-rank-podium-card.rank-2,.codex-rank-podium-card.rank-3{min-height:132px !important}
}

/* -------- Community Codex: deliberate mobile page geometry -------- */
@media(max-width:700px){
  .codex-world-shell{width:min(100% - 14px,620px) !important;margin-top:6px !important;margin-bottom:82px !important}
  .codex-paper-sheet{padding:22px 10px 30px !important;border-radius:20px 20px 16px 16px !important;overflow:hidden}
  .codex-paper-sheet::before{left:6px !important}.codex-paper-sheet::after{right:6px !important}
  .codex-world-head{padding:0 8px}
  .codex-world-head h1{font-size:clamp(2.45rem,13vw,3.8rem) !important;line-height:.90 !important;margin-top:10px !important}
  .codex-world-head p,.codex-panel-intro p{font-size:.82rem !important;line-height:1.55 !important}
  .codex-ink-rule{margin-top:17px !important}
  .codex-main-tabs{width:100% !important;margin:20px auto 26px !important;padding:4px !important;gap:4px !important}
  .codex-main-tab{min-width:0;padding:10px 5px !important;font-size:.52rem !important;letter-spacing:.07em !important}
  .codex-panel-intro{padding:0 8px;margin-bottom:18px !important}
  .codex-panel-intro h2{font-size:clamp(1.55rem,7.5vw,2.15rem) !important}
  .codex-paper-book-shell{width:min(100%,360px) !important;max-width:100% !important;margin-top:16px !important}
  body.codex-paper-world .codex-paper-book-shell .tier-book{width:100% !important;max-width:100% !important}
  body.codex-paper-world .codex-page-inner{padding-left:13px !important;padding-right:11px !important}
  body.codex-paper-world .codex-page-head{padding-left:0 !important;padding-right:0 !important}
  .codex-page-title-row{gap:9px !important}
  .codex-chapter-art{width:52px !important;height:52px !important;flex-basis:52px !important}
  .codex-page-title-line{gap:6px !important;flex-wrap:wrap}
  .codex-page-name{font-size:1.2rem !important}
  .codex-page-range,.codex-page-unlocked{font-size:.47rem !important;letter-spacing:.06em !important}
  .codex-questions{padding-right:1px !important}
  .codex-question-block{padding:12px 9px !important;border-radius:12px !important}
  .codex-q-text{font-size:.82rem !important;line-height:1.42 !important}
  .codex-answer{padding:10px 9px !important;border-radius:10px !important}
  .codex-answer-head{gap:7px !important}
  .codex-answer-name{font-size:.72rem !important;overflow-wrap:anywhere}
  .codex-answer-text{font-size:.74rem !important;line-height:1.45 !important}
  .codex-paper-controls{
    width:min(100%,340px) !important;
    display:grid !important;
    grid-template-columns:minmax(72px,1fr) auto minmax(72px,1fr) !important;
    align-items:center !important;
    gap:8px !important;
    margin:20px auto 0 !important;
  }
  .codex-paper-controls .book-nav-btn{width:100%;min-width:0;padding:9px 8px !important;font-size:.53rem !important;box-sizing:border-box}
  .codex-paper-controls .book-page-dots{gap:7px !important;justify-content:center}
  .codex-paper-caption{font-size:.50rem !important;letter-spacing:.07em !important;text-align:center}
  .codex-entry-note{padding:0 9px;font-size:.49rem !important;line-height:1.5 !important}
  #codexPanelMine{padding:19px 11px !important;border-radius:20px !important}
  .codex-my-summary{padding:14px 11px !important;margin-bottom:24px !important}
  .codex-my-stats{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:7px !important}
  #codexPanelMine .thought-question-card{padding-left:12px !important;padding-right:12px !important}
  .codex-ranking-tabs{margin-left:-2px !important;margin-right:-2px !important;padding:4px 2px 8px !important;scroll-snap-type:x proximity}
  .codex-ranking-tab{scroll-snap-align:start;padding:10px 12px !important;font-size:.52rem !important}
  .codex-ranking-meter,.codex-ranking-you{padding:14px 12px !important;border-radius:15px !important}
  .codex-ranking-meter-head{gap:10px !important}
  .codex-ranking-meter-head strong{font-size:.96rem !important}
  .codex-ranking-meter-head small{font-size:.53rem !important}
  .codex-ranking-you{display:block !important}
  .codex-ranking-foot{gap:9px !important}
}
@media(max-width:380px){
  .codex-paper-sheet{padding-left:8px !important;padding-right:8px !important}
  .codex-main-tab{font-size:.49rem !important;letter-spacing:.045em !important;padding-left:3px !important;padding-right:3px !important}
  .codex-paper-book-shell{width:min(100%,342px) !important}
  .codex-paper-controls{grid-template-columns:minmax(64px,1fr) auto minmax(64px,1fr) !important;gap:5px !important}
  .codex-paper-controls .book-page-dots{gap:5px !important}
}

/* -------- Level Up responsive composition -------- */
@media(max-width:920px){
  .levelup-v3-playfield{grid-template-columns:1fr}
  .levelup-v3-identity{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:16px}
  .levelup-v3-id-top{grid-column:1/-1}
  .levelup-v3-level-card,.levelup-v3-why{margin-top:0}
  .levelup-v3-text-link{grid-column:1/-1;padding-top:0}
}
@media(max-width:700px){
  .levelup-v3{width:min(calc(100vw - 18px),620px);margin-bottom:82px}
  .levelup-v3-hero{grid-template-columns:1fr;gap:16px;margin-top:6px;padding:0 4px}
  .levelup-v3-hero h1{font-size:clamp(2.8rem,16vw,4.7rem);line-height:.84}
  .levelup-v3-hero-copy>p{font-size:.82rem;line-height:1.55}
  .levelup-v3-loop{gap:6px;margin-top:13px}
  .levelup-v3-loop span{padding:6px 8px;font-size:.47rem}
  .levelup-v3-wallet{width:100%;min-width:0;box-sizing:border-box;display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 12px;transform:none;padding:12px 14px}
  .levelup-v3-wallet>strong{grid-row:1/3;grid-column:2;margin:0;font-size:1.6rem}
  .levelup-v3-playfield{gap:12px}
  .levelup-v3-identity{display:flex;padding:18px 15px;border-radius:22px}
  .levelup-v3-id-top{gap:13px;padding-bottom:15px}
  .levelup-v3-art-shell{width:82px;height:82px;padding:5px}
  .levelup-v3-id-copy h2{font-size:1.65rem}
  .levelup-v3-level-card{margin-top:14px;padding:13px;border-radius:15px}
  .levelup-v3-level-head strong{font-size:1.12rem}
  .levelup-v3-why{margin-top:14px}
  .levelup-v3-why>div{padding:8px 0}
  .levelup-v3-machine{padding:18px 12px 18px;border-radius:24px}
  .levelup-v3-machine-head{padding:0 3px 12px}
  .levelup-v3-machine-head h2{font-size:1.7rem}
  .levelup-v3-ticket{display:grid;grid-template-columns:1fr;text-align:center;gap:5px;margin-top:11px}
  .levelup-v3-ticket strong{text-align:center;font-size:.49rem;line-height:1.35}
  .levelup-v3-wheel-zone{min-height:300px;padding-top:5px}
  body.level-up-world .levelup-v3-wheel-ring .spinner-container{width:min(260px,calc(100vw - 72px));height:min(260px,calc(100vw - 72px));margin:0 !important}
  body.level-up-world .levelup-v3-spin-wrap .spin-button{width:min(148px,46vw)}
  .levelup-v3-races{margin-top:18px;padding-top:14px}
  .levelup-v3-races-head{display:block;padding:0 4px 12px}
  .levelup-v3-races-head h2{font-size:2rem}
  .levelup-v3-races-head p{margin-top:8px;text-align:left;font-size:.72rem}
  .levelup-v3-race-grid{grid-template-columns:1fr;gap:11px}
  .levelup-v3-race-card{padding:15px 12px;border-radius:19px}
  .levelup-v3-race-title{gap:8px}
  .levelup-v3-race-title h3{font-size:1.1rem}
  .levelup-v3-board .arcade-row{grid-template-columns:30px minmax(0,1fr) auto;gap:7px;min-height:44px;padding:6px 8px}
  .levelup-v3-board .arcade-name{font-size:.71rem}
  .levelup-v3-board .arcade-score{font-size:.63rem}
}
@media(max-width:380px){
  .levelup-v3{width:calc(100vw - 14px)}
  .levelup-v3-identity{padding-left:12px;padding-right:12px}
  .levelup-v3-art-shell{width:74px;height:74px}
  .levelup-v3-id-copy h2{font-size:1.5rem}
  .levelup-v3-level-head{grid-template-columns:1fr;align-items:start}
  .levelup-v3-xp{text-align:left}
  .levelup-v3-wheel-zone{min-height:272px}
  body.level-up-world .levelup-v3-wheel-ring .spinner-container{width:min(238px,calc(100vw - 66px));height:min(238px,calc(100vw - 66px))}
}
@media(prefers-reduced-motion:reduce){
  .levelup-v3-art-orbit{animation:none}
  .codex-rank-podium-card.rank-1::before{animation:none !important}
}
/* Keep wheel label geometry calibrated to the rendered V3 wheel size. */
body.level-up-world .levelup-v3-wheel-ring .spinner-container{--wheel-size:330px}
@media(max-width:700px){body.level-up-world .levelup-v3-wheel-ring .spinner-container{--wheel-size:min(260px,calc(100vw - 72px))}}
@media(max-width:380px){body.level-up-world .levelup-v3-wheel-ring .spinner-container{--wheel-size:min(238px,calc(100vw - 66px))}}
@media(max-width:700px){
  .codex-ranking-tabs{
    display:flex !important;
    flex-wrap:nowrap !important;
    justify-content:flex-start !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .codex-ranking-tabs::-webkit-scrollbar{display:none}
  .codex-ranking-tab{flex:0 0 auto !important}
}

/* Phones get readable podium cards instead of two narrow runners-up columns. */
@media(max-width:520px){
  .codex-ranking-podium,
  .book1-ranking-podium{
    grid-template-columns:1fr !important;
    grid-template-areas:'first' 'second' 'third' !important;
    gap:9px !important;
    margin-top:48px !important;
  }
  .codex-rank-podium-card.rank-1{
    transform:translateY(-8px) !important;
    min-height:178px !important;
  }
  .codex-rank-podium-card.rank-2,
  .codex-rank-podium-card.rank-3{
    min-height:136px !important;
    display:grid;
    grid-template-columns:44px minmax(0,1fr) auto;
    grid-template-areas:'medal name score' 'rank meta score' 'copy copy copy' 'link link link';
    align-items:center;
    column-gap:9px;
    text-align:left;
    padding:14px !important;
  }
  .codex-rank-podium-card.rank-2 .codex-rank-medal,
  .codex-rank-podium-card.rank-3 .codex-rank-medal{grid-area:medal;margin:0;height:auto}
  .codex-rank-podium-card.rank-2>small,
  .codex-rank-podium-card.rank-3>small{grid-area:rank;margin:2px 0 0}
  .codex-rank-podium-card.rank-2 h3,
  .codex-rank-podium-card.rank-3 h3{grid-area:name;margin:0 !important;text-align:left}
  .codex-rank-podium-card.rank-2>strong,
  .codex-rank-podium-card.rank-3>strong{grid-area:score;margin:0 !important;text-align:right;align-self:start}
  .codex-rank-podium-card.rank-2>em,
  .codex-rank-podium-card.rank-3>em{grid-area:meta;margin:3px 0 0 !important;text-align:left}
  .codex-rank-podium-card.rank-2>p,
  .codex-rank-podium-card.rank-3>p{grid-area:copy;margin:10px 0 0 !important;padding-top:9px;border-top:1px solid rgba(71,51,36,.10);text-align:left;-webkit-line-clamp:2 !important}
  .codex-rank-podium-card.rank-2>a,
  .codex-rank-podium-card.rank-3>a{grid-area:link;margin-top:7px !important;text-align:left}

  /* All three ranking choices remain visible at once on a phone. */
  .codex-ranking-tabs{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:5px !important;
    overflow:visible !important;
    padding:4px !important;
    margin:0 auto 16px !important;
  }
  .codex-ranking-tab{
    min-width:0 !important;
    width:100% !important;
    padding:9px 5px !important;
    font-size:.46rem !important;
    line-height:1.25 !important;
    letter-spacing:.035em !important;
    white-space:normal !important;
    text-align:center;
  }
}

/* ================================================================
   DARK ESPRESSO + NEUTRAL INK CARRY-FORWARD — 2026-09-09
   Restores the original Codex book/spine while preserving neutral
   ink-black Level Up surfaces and the deeper site background.
   ================================================================ */
body.landing-entry-world,
body.codex-paper-world,
body.level-up-world,
body.book1-board-world{
  background-color:#0b0907 !important;
  background-image:
    radial-gradient(ellipse 78% 38% at 50% -6%,rgba(178,135,97,.20) 0%,rgba(178,135,97,.07) 38%,transparent 70%),
    radial-gradient(circle at 8% 34%,rgba(232,201,160,.035) 0%,transparent 32%),
    radial-gradient(circle at 92% 70%,rgba(126,83,51,.045) 0%,transparent 34%),
    linear-gradient(180deg,#17110d 0%,#100d0a 26%,#0b0907 66%,#080706 100%) !important;
  background-repeat:no-repeat !important;
  background-position:top center !important;
  background-size:100% 100% !important;
}

/* Level Up keeps the redesigned composition but loses the blue cast. */
body.level-up-world{
  --levelup-ink-1:#171716;
  --levelup-ink-2:#0f0f0e;
  --levelup-ink-3:#080807;
  --levelup-edge:rgba(255,255,255,.10);
}
.levelup-v3-identity,
.levelup-v3-machine,
.levelup-v3-race-card{
  border-color:rgba(255,255,255,.10) !important;
}
.levelup-v3-machine{
  background:
    radial-gradient(circle at 50% 24%,rgba(232,201,160,.08),transparent 38%),
    linear-gradient(155deg,#171716 0%,#0f0f0e 54%,#080807 100%) !important;
}
.levelup-v3-identity,
.levelup-v3-race-card{
  background:
    radial-gradient(circle at 88% 0%,rgba(232,201,160,.035),transparent 38%),
    linear-gradient(152deg,#171716 0%,#0f0f0e 58%,#080807 100%) !important;
}
.levelup-v3-wheel-zone::before{
  background:radial-gradient(circle,rgba(232,201,160,.11),rgba(178,135,97,.025) 42%,transparent 70%) !important;
}
.levelup-v3-board .arcade-row{
  background:rgba(255,255,255,.022) !important;
  border-color:rgba(255,255,255,.075) !important;
}

/* Codex: keep the physical parchment book and its spine, surrounded by the same espresso world. */
body.codex-paper-world .codex-paper-book-shell .tier-book-spine{display:block !important;}


/* ================================================================
   LEVEL UP BLACK SURFACES + CODEX-STYLE LEADERBOARDS — 2026-09-09
   Keep the playful Level Up composition, but use the same neutral
   black card system and typographic/ranking language as Codex.
   ================================================================ */
body.level-up-world{
  --levelup-ink-1:#171716;
  --levelup-ink-2:#0f0f0e;
  --levelup-ink-3:#080807;
  --levelup-edge:rgba(255,255,255,.105);
}
.levelup-v3-identity,
.levelup-v3-machine,
.levelup-v3-race-card,
.levelup-v3-level-card{
  border-color:rgba(255,255,255,.105) !important;
}
.levelup-v3-identity,
.levelup-v3-race-card{
  background:
    radial-gradient(circle at 88% 0%,rgba(232,201,160,.035),transparent 38%),
    linear-gradient(152deg,#171716 0%,#0f0f0e 60%,#080807 100%) !important;
  box-shadow:0 22px 54px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.032) !important;
}
.levelup-v3-machine{
  background:
    radial-gradient(circle at 50% 24%,rgba(232,201,160,.085),transparent 38%),
    linear-gradient(155deg,#171716 0%,#0f0f0e 55%,#080807 100%) !important;
  box-shadow:0 24px 58px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.032) !important;
}
.levelup-v3-level-card{
  background:#0d0d0c !important;
}
.levelup-v3-race-card-weekly{border-color:rgba(255,255,255,.105) !important;}
.levelup-v3-wheel-zone::before{
  background:radial-gradient(circle,rgba(232,201,160,.11),rgba(178,135,97,.024) 42%,transparent 70%) !important;
}

/* Codex leaderboard language inside the Level Up race cards. */
.levelup-v3-race-title{
  margin-bottom:4px !important;
  padding-bottom:14px !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
}
.levelup-v3-race-title h3{
  font:400 1.32rem/1.05 'Jua',sans-serif !important;
  color:#f7f1e9 !important;
}
.levelup-v3-race-title>b{
  border-color:rgba(232,201,160,.17) !important;
  background:rgba(232,201,160,.05) !important;
  color:rgba(232,201,160,.64) !important;
}
.levelup-v3-board{
  display:block !important;
  border-top:0 !important;
}
.levelup-v3-board .arcade-row{
  position:relative;
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:12px !important;
  min-height:64px !important;
  padding:11px 6px !important;
  border:0 !important;
  border-bottom:1px solid rgba(255,255,255,.075) !important;
  border-radius:0 !important;
  background:transparent !important;
  transform:none !important;
  box-shadow:none !important;
}
.levelup-v3-board .arcade-row:last-child{border-bottom:0 !important;}
.levelup-v3-board .arcade-row.is-you{
  margin:0 -5px;
  padding-left:11px !important;
  padding-right:11px !important;
  border-radius:12px !important;
  background:rgba(232,201,160,.065) !important;
  border-bottom-color:transparent !important;
  box-shadow:inset 0 0 0 1px rgba(232,201,160,.09) !important;
}
.levelup-v3-board .arcade-rank{
  font:700 .66rem/1 'Geist Mono',monospace !important;
  color:rgba(245,240,232,.44) !important;
  text-align:center !important;
}
.levelup-v3-board .arcade-name{
  font:500 1rem/1.18 'Jua',sans-serif !important;
  color:#f7f1e9 !important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.levelup-v3-board .arcade-meta{
  display:block;
  margin-top:4px !important;
  font:650 .50rem/1 'Geist Mono',monospace !important;
  letter-spacing:.06em !important;
  color:rgba(245,240,232,.40) !important;
}
.levelup-v3-board .arcade-score{
  text-align:right !important;
  white-space:nowrap;
}
.levelup-v3-board .arcade-score-number{
  display:block !important;
  font:500 .92rem/1 'Jua',sans-serif !important;
  color:#f0d6b3 !important;
}
.levelup-v3-board .arcade-score-label{
  display:block !important;
  margin-top:4px !important;
  font:650 .48rem/1 'Geist Mono',monospace !important;
  letter-spacing:.06em !important;
  color:rgba(245,240,232,.44) !important;
}

/* Top-three hierarchy echoes the Codex podium without turning the compact
   Level Up cards into a second full leaderboard page. */
.levelup-v3-board .arcade-row.rank-1{
  margin:6px 0 2px;
  padding:14px 10px !important;
  border:1px solid rgba(232,201,160,.24) !important;
  border-radius:15px !important;
  background:
    radial-gradient(circle at 92% 0%,rgba(240,208,96,.075),transparent 45%),
    rgba(232,201,160,.045) !important;
}
.levelup-v3-board .arcade-row.rank-1::before{
  content:'♛';
  position:absolute;
  top:-10px;
  left:15px;
  padding:2px 5px;
  border-radius:999px;
  background:#0f0f0e;
  color:#f0d060;
  font:400 .72rem/1 'Jua',sans-serif;
}
.levelup-v3-board .arcade-row.rank-1 .arcade-rank,
.levelup-v3-board .arcade-row.rank-1 .arcade-score-number{color:#f0d060 !important;}
.levelup-v3-board .arcade-row.rank-2 .arcade-rank{color:#c4c9ce !important;}
.levelup-v3-board .arcade-row.rank-3 .arcade-rank{color:#d39b74 !important;}
.levelup-v3-race-cta{
  margin-top:14px !important;
  border-color:rgba(232,201,160,.16) !important;
  background:rgba(232,201,160,.045) !important;
  color:#f0d6b3 !important;
}
.levelup-v3-race-cta:hover{
  border-color:rgba(232,201,160,.30) !important;
  background:rgba(232,201,160,.08) !important;
}

@media(max-width:700px){
  .levelup-v3-race-card{padding:18px 15px !important;}
  .levelup-v3-board .arcade-row{
    grid-template-columns:36px minmax(0,1fr) auto !important;
    gap:9px !important;
    min-height:61px !important;
    padding:10px 4px !important;
  }
  .levelup-v3-board .arcade-row.rank-1{padding:13px 9px !important;}
  .levelup-v3-board .arcade-name{font-size:.95rem !important;}
  .levelup-v3-board .arcade-score-number{font-size:.88rem !important;}
}
@media(max-width:360px){
  .levelup-v3-race-card{padding:16px 12px !important;}
  .levelup-v3-board .arcade-row{
    grid-template-columns:31px minmax(0,1fr) auto !important;
    gap:7px !important;
  }
  .levelup-v3-board .arcade-name{font-size:.88rem !important;}
  .levelup-v3-board .arcade-meta{font-size:.46rem !important;}
  .levelup-v3-board .arcade-score-number{font-size:.82rem !important;}
  .levelup-v3-board .arcade-score-label{font-size:.44rem !important;}
}


/* 2026-09-11 — Weekly Community Pot explanation.
   Make the shared mechanic readable at a glance: board XP builds the
   Community Level, the level unlocks the shared pot, then rank splits it. */
.codex-ranking-pot {
  min-width: 150px;
  padding: 10px 12px;
  border: 1px solid rgba(111,76,46,.16);
  border-radius: 13px;
  background: rgba(255,255,255,.28);
}
.codex-ranking-pot > span { color: rgba(91,60,38,.58) !important; }
.codex-ranking-pot > strong { font-size: 1.34rem !important; color: #6f482e !important; }
.codex-ranking-pot > small { max-width: 190px; margin-left: auto; }
.codex-ranking-community-flow {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
  align-items: center;
  gap: 7px;
  margin: 12px 0 10px;
}
.codex-ranking-community-flow span {
  min-width: 0;
  padding: 8px 9px;
  border: 1px solid rgba(83,57,38,.10);
  border-radius: 10px;
  background: rgba(255,255,255,.20);
  font: 700 .48rem/1.28 'Geist Mono',monospace;
  letter-spacing: .055em;
  color: rgba(62,43,30,.62);
  text-align: center;
}
.codex-ranking-community-flow span b {
  display: inline-grid;
  width: 17px;
  height: 17px;
  margin-right: 3px;
  place-items: center;
  border-radius: 50%;
  background: rgba(111,72,43,.10);
  color: #6f482e;
  font-size: .46rem;
}
.codex-ranking-community-flow i {
  font: 700 .66rem/1 'Geist Mono',monospace;
  color: rgba(91,60,38,.32);
  font-style: normal;
}
.codex-ranking-meter > p strong { color: #5f402d; font-weight: 700; }
@media (max-width: 680px) {
  .codex-ranking-meter-head { align-items: stretch !important; flex-direction: column; }
  .codex-ranking-meter-head > div:last-child { text-align: left !important; }
  .codex-ranking-pot { width: 100%; min-width: 0; }
  .codex-ranking-pot > small { max-width: none; margin-left: 0; }
  .codex-ranking-community-flow { grid-template-columns: 1fr 1fr; gap: 7px; }
  .codex-ranking-community-flow i { display: none; }
  .codex-ranking-community-flow span { text-align: left; padding: 9px 10px; }
}


/* ================================================================
   COMMUNITY CODEX — MOBILE READER + LEADERBOARD FLOW, 2026-09-11
   Give the book the phone screen instead of nesting it inside margins.
   Rankings read as: shared goal -> your impact -> front runners -> chase.
   ================================================================ */
.codex-ranking-section-label{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  margin:28px 2px 12px;padding-bottom:9px;border-bottom:1px solid rgba(73,51,35,.12);
}
.codex-ranking-section-label>span{font:700 .58rem/1 'Geist Mono',monospace;letter-spacing:.13em;color:rgba(63,45,31,.56)}
.codex-ranking-section-label>small{font:600 .62rem/1.3 'DM Sans',sans-serif;color:rgba(55,40,29,.44)}
.codex-ranking-chase-label{margin-top:24px}
.codex-ranking-you-main{min-width:0}
.codex-ranking-contribution{margin-top:14px;padding-top:13px;border-top:1px solid rgba(74,52,35,.10)}
.codex-ranking-contribution>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:end}
.codex-ranking-contribution>div:first-child span{font:700 .50rem/1 'Geist Mono',monospace;letter-spacing:.09em;color:rgba(63,45,31,.48)}
.codex-ranking-contribution>div:first-child strong{font:400 1rem/1 'Jua',sans-serif;color:#6b4931}
.codex-ranking-contribution-track{height:6px;margin-top:7px;border-radius:999px;background:rgba(74,52,35,.09);overflow:hidden}
.codex-ranking-contribution-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8b6040,#d2a46d)}
.codex-ranking-contribution>small{display:block;margin-top:6px;font:500 .59rem/1.4 'DM Sans',sans-serif;color:rgba(55,40,29,.50)}

/* A stronger desktop podium hierarchy, while keeping the paper-world tone. */
.codex-rank-podium-card{overflow:visible}
.codex-rank-podium-card.rank-1{
  border-color:rgba(134,91,48,.28) !important;
  background:linear-gradient(160deg,rgba(255,253,246,.86),rgba(232,201,160,.34)) !important;
  box-shadow:0 18px 36px rgba(93,60,32,.13),inset 0 1px 0 rgba(255,255,255,.75) !important;
}
.codex-rank-podium-card.rank-2,.codex-rank-podium-card.rank-3{
  background:linear-gradient(160deg,rgba(255,255,255,.44),rgba(239,223,196,.25)) !important;
}
.codex-rank-podium-card.rank-1 .codex-rank-medal{
  width:38px;height:38px;margin:-2px auto 7px;display:grid;place-items:center;border-radius:50%;
  color:#fff;background:linear-gradient(145deg,#9c6d42,#644229);box-shadow:0 8px 18px rgba(87,55,31,.22);
}
.codex-rank-podium-card.rank-2 .codex-rank-medal,.codex-rank-podium-card.rank-3 .codex-rank-medal{
  width:30px;height:30px;margin:0 auto 5px;display:grid;place-items:center;border:1px solid rgba(81,55,35,.16);border-radius:50%;background:rgba(255,255,255,.32);
}

@media(max-width:700px){
  /* The outer parchment becomes framing, not a second narrow container. */
  .codex-world-shell{width:calc(100% - 6px) !important;margin-top:3px !important}
  .codex-paper-sheet{padding:18px 5px 28px !important;border-radius:18px 18px 14px 14px !important}
  .codex-paper-sheet::before{left:3px !important}.codex-paper-sheet::after{right:3px !important}
  .codex-world-head{padding:0 14px !important}
  .codex-world-head h1{font-size:clamp(2.25rem,12vw,3.35rem) !important}
  .codex-world-head p{max-width:31em;font-size:.80rem !important}
  .codex-main-tabs{width:calc(100% - 16px) !important;margin:18px auto 22px !important}
  .codex-panel-intro{padding:0 14px !important;margin-bottom:15px !important}
  .codex-panel-intro p{max-width:33em}

  #codexPanelDiscover{margin-left:-1px;margin-right:-1px}
  .codex-paper-book-shell{
    width:calc(100% - 2px) !important;max-width:430px !important;padding-left:11px !important;margin-top:14px !important;
  }
  body.codex-paper-world .codex-paper-book-shell .tier-book{
    width:calc(100% - 11px) !important;aspect-ratio:3 / 4.65 !important;max-height:min(620px,73dvh) !important;
  }
  body.codex-paper-world .codex-page-inner{
    padding:18px 14px 18px 18px !important;
  }
  body.codex-paper-world .codex-page-head{
    top:-18px !important;margin:-18px -14px 14px -18px !important;padding:18px 14px 13px 18px !important;
  }
  .codex-page-title-row{gap:10px !important;align-items:center !important}
  .codex-chapter-art{width:46px !important;height:46px !important;flex-basis:46px !important}
  .codex-page-title-line{display:block !important}
  .codex-page-title-line .book-page-chapter{display:block;margin-bottom:4px}
  .codex-page-name{font-size:1.35rem !important;line-height:1 !important;padding:0 !important}
  .codex-page-range{margin-top:5px !important}
  .codex-page-unlocked{margin-top:7px !important;padding:4px 8px !important}
  .codex-question-block{margin-bottom:20px !important;padding:10px 4px !important}
  .codex-question-block.is-locked{padding:15px 11px !important}
  .codex-q-head{gap:9px !important;margin-bottom:10px !important}
  .codex-q-num{padding:5px 8px !important;font-size:.55rem !important}
  .codex-q-text{font-size:.91rem !important;line-height:1.46 !important}
  .codex-unlocked-by{font-size:.51rem !important;line-height:1.35 !important}
  .codex-answers{gap:8px !important}
  .codex-answer{padding:11px 10px !important;border-radius:12px !important}
  .codex-answer-text{font-size:.82rem !important;line-height:1.47 !important;-webkit-line-clamp:5 !important}
  .codex-divider{margin-bottom:17px !important}
  .codex-paper-controls{width:calc(100% - 20px) !important;max-width:390px !important;margin-top:18px !important}
  .codex-entry-note{padding:0 13px !important}

  /* Ranking mode selector: readable swipe strip, not three squeezed labels. */
  .codex-ranking-tabs{
    display:flex !important;grid-template-columns:none !important;overflow-x:auto !important;overscroll-behavior-x:contain;
    gap:7px !important;margin:0 -1px 16px !important;padding:4px 1px 8px !important;scroll-snap-type:x mandatory !important;
    scrollbar-width:none;-webkit-overflow-scrolling:touch;
  }
  .codex-ranking-tabs::-webkit-scrollbar{display:none}
  .codex-ranking-tab{
    flex:0 0 auto !important;width:auto !important;min-width:154px !important;min-height:46px;
    padding:10px 13px !important;font-size:.52rem !important;line-height:1.25 !important;letter-spacing:.055em !important;
    white-space:normal !important;scroll-snap-align:start;text-align:center;
  }
  .codex-ranking-tab.is-active{box-shadow:0 7px 15px rgba(75,49,29,.14)}

  .codex-ranking-meter,.codex-ranking-you{margin-left:3px;margin-right:3px;padding:15px 13px !important;border-radius:16px !important}
  .codex-ranking-meter-head{display:grid !important;grid-template-columns:minmax(0,1fr) auto;gap:12px !important}
  .codex-ranking-pot{min-width:104px}
  .codex-ranking-pot>strong{font-size:1.15rem !important}
  .codex-ranking-meter>p{font-size:.68rem !important;line-height:1.46 !important}
  .codex-ranking-community-flow{
    display:grid !important;grid-template-columns:1fr 1fr !important;gap:6px !important;margin-top:11px !important;
  }
  .codex-ranking-community-flow span{min-height:40px;padding:8px 7px !important;justify-content:flex-start !important;font-size:.46rem !important;line-height:1.28 !important}
  .codex-ranking-community-flow i{display:none !important}
  .codex-ranking-contribution{margin-top:12px;padding-top:11px}

  .codex-ranking-section-label{margin:24px 5px 10px;padding-bottom:8px}
  .codex-ranking-section-label>span{font-size:.54rem}
  .codex-ranking-section-label>small{font-size:.57rem}

  /* One clear winner, then #2 and #3 as readable compact cards. */
  .codex-ranking-podium,.book1-ranking-podium{
    display:grid !important;grid-template-columns:1fr !important;grid-template-areas:'first' 'second' 'third' !important;
    gap:8px !important;margin:0 3px !important;
  }
  .codex-rank-podium-card{min-height:0 !important;border-radius:16px !important}
  .codex-rank-podium-card.rank-1{
    grid-area:first;transform:none !important;margin:0 !important;padding:19px 16px 16px !important;min-height:174px !important;text-align:center;
  }
  .codex-rank-podium-card.rank-1::before{top:-22px !important;font-size:25px !important}
  .codex-rank-podium-card.rank-1 .codex-rank-medal{width:40px;height:40px;margin:0 auto 7px !important}
  .codex-rank-podium-card.rank-1 h3{font-size:1.24rem !important}
  .codex-rank-podium-card.rank-1>strong{font-size:.90rem !important;margin-top:8px !important}
  .codex-rank-podium-card.rank-1>em{font-size:.58rem !important}
  .codex-rank-podium-card.rank-1 p{font-size:.70rem !important;line-height:1.4 !important;-webkit-line-clamp:3 !important}
  .codex-rank-podium-card.rank-1 a{display:inline-block !important}
  .codex-rank-podium-card.rank-2,.codex-rank-podium-card.rank-3{
    display:grid !important;grid-template-columns:38px minmax(0,1fr) auto !important;
    grid-template-areas:'medal name score' 'medal rank score' 'copy copy copy' 'link link link' !important;
    gap:2px 10px !important;align-items:center !important;min-height:92px !important;padding:13px 13px !important;text-align:left !important;
  }
  .codex-rank-podium-card.rank-2 .codex-rank-medal,.codex-rank-podium-card.rank-3 .codex-rank-medal{
    grid-area:medal !important;width:34px;height:34px;margin:0 !important;
  }
  .codex-rank-podium-card.rank-2>small,.codex-rank-podium-card.rank-3>small{grid-area:rank !important;margin:2px 0 0 !important;font-size:.48rem !important}
  .codex-rank-podium-card.rank-2 h3,.codex-rank-podium-card.rank-3 h3{grid-area:name !important;margin:0 !important;font-size:.95rem !important;text-align:left !important}
  .codex-rank-podium-card.rank-2>strong,.codex-rank-podium-card.rank-3>strong{grid-area:score !important;margin:0 !important;font-size:.70rem !important;text-align:right !important}
  .codex-rank-podium-card.rank-2>em,.codex-rank-podium-card.rank-3>em{grid-area:score !important;margin:22px 0 0 !important;font-size:.48rem !important;text-align:right !important;align-self:start}
  .codex-rank-podium-card.rank-2>p,.codex-rank-podium-card.rank-3>p{grid-area:copy !important;margin:9px 0 0 !important;padding-top:8px;border-top:1px solid rgba(71,51,36,.10);font-size:.63rem !important;-webkit-line-clamp:2 !important}
  .codex-rank-podium-card.rank-2>a,.codex-rank-podium-card.rank-3>a{grid-area:link !important;margin-top:5px !important;font-size:.47rem !important}

  /* The chase becomes a vertical ledger with no microscopic columns. */
  .codex-ranking-list{gap:7px !important;margin:0 3px}
  .codex-ranking-row{
    grid-template-columns:36px minmax(0,1fr) auto !important;gap:8px !important;padding:11px 10px !important;border-radius:13px !important;
  }
  .codex-ranking-number{font-size:.64rem !important}
  .codex-ranking-person strong{font-size:.80rem !important}
  .codex-ranking-person small{font-size:.46rem !important;line-height:1.35 !important}
  .codex-ranking-score{min-width:72px}
  .codex-ranking-score strong{font-size:.78rem !important}
  .codex-ranking-score small{font-size:.48rem !important;line-height:1.3 !important}
  .codex-ranking-row.is-thought{grid-template-columns:36px minmax(0,1fr) auto !important}
  .codex-ranking-row.is-thought .codex-ranking-thought-preview{grid-column:2 / 4 !important;font-size:.65rem !important;line-height:1.4 !important;margin-top:5px !important}
  .codex-ranking-more{width:calc(100% - 6px);margin-left:3px;margin-right:3px}
  .codex-ranking-foot{margin-left:5px;margin-right:5px}
}

@media(max-width:380px){
  .codex-paper-sheet{padding-left:3px !important;padding-right:3px !important}
  .codex-world-head,.codex-panel-intro{padding-left:12px !important;padding-right:12px !important}
  .codex-main-tabs{width:calc(100% - 12px) !important}
  .codex-ranking-tab{min-width:145px !important}
  .codex-ranking-meter-head{grid-template-columns:1fr !important}
  .codex-ranking-pot{text-align:left !important;min-width:0}
  .codex-ranking-pot>small{margin-left:0 !important}
  .codex-ranking-row{grid-template-columns:32px minmax(0,1fr) auto !important;padding-left:8px !important;padding-right:8px !important}
  .codex-ranking-row.is-thought{grid-template-columns:32px minmax(0,1fr) auto !important}
}

/* Book 1 standings use the same mobile ranking rhythm as the Codex. */
@media(max-width:700px){
  .book1-ranking-shell{width:calc(100% - 6px) !important;margin-top:3px !important}
  .book1-ranking-paper{padding:19px 7px 27px !important;border-radius:18px !important}
  .book1-ranking-back{margin-left:7px !important}
  .book1-ranking-intro{padding:0 10px !important;margin-bottom:17px !important}
  .book1-ranking-intro p{font-size:.80rem !important;line-height:1.55 !important}
  .book1-board-chip{margin-left:3px !important;margin-right:3px !important}
  .book1-board-context{margin-left:3px !important;margin-right:3px !important;padding:13px 12px !important}
  .book1-ranking-actions{padding:0 3px !important}
  .book1-ranking-foot{padding:0 5px !important}
}
