/* GUULRAADRAAC v1588 — FONTS + COLORS ONLY
   STRICT SCOPE: typography family/weight and color palette only.
   No layout, sizing, spacing, positioning, geometry or functionality rules. */

@font-face{font-family:GuulUnified;src:url('/assets/hero-warm-v1581/nunito-sans-latin-400-normal.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:GuulUnified;src:url('/assets/hero-warm-v1581/nunito-sans-latin-900-normal.woff2') format('woff2');font-style:normal;font-weight:700 900;font-display:swap}

:root{
  --gr-bg:#f4f0e6;
  --gr-bg-soft:#fbf8f0;
  --gr-surface:#fffdf8;
  --gr-surface-soft:#eef5f0;
  --gr-ink:#17352d;
  --gr-heading:#102c25;
  --gr-muted:#6b7b75;
  --gr-line:#d9e4dd;
  --gr-primary:#0b7a68;
  --gr-primary-2:#12a98f;
  --gr-primary-deep:#075e52;
  --gr-gold:#dfa72c;
  --gr-gold-soft:#fff3cc;
  --gr-silver:#dce7f1;
  --gr-bronze:#f2d5c5;
  --gr-lavender:#756bd2;
  --ink:var(--gr-ink);
  --muted:var(--gr-muted);
  --purple:var(--gr-primary);
  --purple-dark:var(--gr-primary-deep);
  --line:var(--gr-line);
  --orange:var(--gr-gold);
  --v2-purple:var(--gr-primary);
  --v2-blue:var(--gr-primary-2);
  --v2-ink:var(--gr-ink);
  --v2-muted:var(--gr-muted);
  --v2-bg:var(--gr-bg);
  --v2-card:var(--gr-surface);
  --calm-accent:var(--gr-primary);
  --calm-accent-2:var(--gr-primary-2);
  --calm-accent-soft:#e4f4ee;
  --calm-warm:var(--gr-gold);
  --calm-violet:var(--gr-lavender);
  --calm-ink:var(--gr-ink);
  --calm-muted:var(--gr-muted);
  --calm-page:var(--gr-bg);
  --calm-page-2:var(--gr-bg-soft);
  --calm-surface:var(--gr-surface);
  --calm-surface-2:#f7f4ec;
  --calm-line:var(--gr-line);
}

html[data-guul-comfort-resolved="dark"]{
  --gr-bg:#0d1b17;
  --gr-bg-soft:#101f1a;
  --gr-surface:#172821;
  --gr-surface-soft:#1c332a;
  --gr-ink:#edf4ef;
  --gr-heading:#f7f6ee;
  --gr-muted:#a9b8b2;
  --gr-line:#2d473d;
  --gr-primary:#35d0b0;
  --gr-primary-2:#55ddc0;
  --gr-primary-deep:#20b898;
  --gr-gold:#f0bf4b;
  --gr-gold-soft:#3a321c;
  --gr-silver:#263844;
  --gr-bronze:#3b2921;
  --gr-lavender:#aaa1f2;
  --calm-accent:var(--gr-primary);
  --calm-accent-2:var(--gr-primary-2);
  --calm-accent-soft:#203b32;
  --calm-warm:var(--gr-gold);
  --calm-violet:var(--gr-lavender);
  --calm-ink:var(--gr-ink);
  --calm-muted:var(--gr-muted);
  --calm-page:var(--gr-bg);
  --calm-page-2:var(--gr-bg-soft);
  --calm-surface:var(--gr-surface);
  --calm-surface-2:#1c2f28;
  --calm-line:var(--gr-line);
}

/* Unified student typography — no font sizes changed. */
body:has(.v2Home),
.v2Home,.v2Home button,.v2Home input,
.p2App,.p2App button,.p2App input,.p2App select,
.pageView,.pageView button,.pageView input,.pageView select,
.leaderboardPage,.leaderboardPage button{
  font-family:GuulUnified,"Nunito Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;
}

.v2SectionHead h2,.v2ChallengeCopy h2,.v2ServiceCopy b,
.g1581Brand strong,.g1581Copy h1,.g1581MetaCard b,
.p2HeadCopy h2,.p2Top20HeroV69 h3,.p2LeaderboardHeroV136 h3,
.p2RankTitleV69 h3,.p2RankTitleV136 h3,
.p2Top3InfoV142 h3,.p2Top3NameV139 h3,
.rankingTable b,.podiumCard h3,.leaderboardPage h1{
  font-weight:900!important;
}

/* Home / page palette. */
body:has(.v2Home),.appShell:has(.v2Home),.appShell:has(.v2Home)>.content,.v2Home{
  background:var(--gr-bg)!important;
  color:var(--gr-ink)!important;
}
.v2Home{background:linear-gradient(180deg,var(--gr-bg-soft),var(--gr-bg),var(--gr-bg-soft))!important}
.v2SectionHead h2,.v2ChallengeCopy h2,.v2ServiceCopy b{color:var(--gr-heading)!important}
.v2ServiceCopy small,.v2ChallengeCopy p,.v2ChallengeCopy em{color:var(--gr-muted)!important}
.v2SectionHead button,.v2Chevron{color:var(--gr-primary)!important}

/* Hero keeps its exact layout; only its colors/fonts change. */
.g1581HeroShell{--hero-bg:var(--gr-bg-soft);--hero-ink:var(--gr-heading);--hero-muted:var(--gr-muted);--hero-card:var(--gr-surface)!important;color:var(--gr-ink)!important}
.g1581Hero{background:var(--gr-bg-soft)!important;color:var(--gr-ink)!important}
.g1581Brand strong,.g1581Copy h1,.g1581MetaCard b{color:var(--gr-heading)!important}
.g1581Brand small,.g1581Copy p,.g1581MetaCard small{color:var(--gr-muted)!important}
.g1581MetaCard,.g1581Search{background:var(--gr-surface)!important;border-color:var(--gr-line)!important;color:var(--gr-ink)!important}
.g1581Search input{color:var(--gr-ink)!important}
.g1581Search input::placeholder{color:var(--gr-muted)!important}
.g1581HeroShell .g1581Tool,.g1581HeroShell .g1581Theme{background:var(--gr-surface)!important;border-color:var(--gr-line)!important;color:var(--gr-ink)!important}

/* Weekly progress / challenge. */
.v2Challenge{background:var(--gr-surface)!important;border-color:var(--gr-line)!important;color:var(--gr-ink)!important}
.v2ChallengeCopy small,.v2ChallengeRing b,.v2ChallengeWin small{color:var(--gr-primary)!important}
.v2ChallengeBar{background:var(--gr-line)!important}
.v2ChallengeBar i{background:linear-gradient(90deg,var(--gr-primary),var(--gr-primary-2))!important}
.v2ChallengeWin{background:#e9f6f1!important;border-color:#cfe5dc!important;color:var(--gr-ink)!important}
html[data-guul-comfort-resolved="dark"] .v2ChallengeWin{background:#1d3a31!important;border-color:#315347!important}

/* Home service cards — geometry untouched. */
.v2ServiceCard,.v2ServiceCard.books,.v2ServiceCard.exams,.v2ServiceCard.english,.v2ServiceCard.lessons,.v2ServiceCard.game,.v2ServiceCard.gov{
  background:var(--gr-surface)!important;
  border-color:var(--gr-line)!important;
  color:var(--gr-ink)!important;
}
.v2ServiceIcon{background:var(--gr-surface-soft)!important;border-color:var(--gr-line)!important}
.v2ServiceCard.game .v2ServiceIcon{background:var(--gr-gold-soft)!important}
.v2ServiceCard.gov .v2ServiceIcon{background:#efedff!important}
html[data-guul-comfort-resolved="dark"] .v2ServiceCard.gov .v2ServiceIcon{background:#282642!important}

/* Bottom navigation colors only. */
.v2BottomNav{background:var(--gr-surface)!important;border-color:var(--gr-line)!important}
.v2BottomNav button{color:var(--gr-muted)!important}
.v2BottomNav button.active{background:#e6f5ef!important;color:var(--gr-primary)!important}
html[data-guul-comfort-resolved="dark"] .v2BottomNav button.active{background:#1d3b31!important;color:var(--gr-primary)!important}

/* Offline CTA colors only. */
.v2Home>.guulOfflineBelowHero .guulOfflineLauncher{background:linear-gradient(135deg,var(--gr-primary-2),var(--gr-primary))!important;border-color:#70d8c1!important;color:#fff!important}
.v2Home>.guulOfflineBelowHero .guulOfflineInstallIcon{background:#ffffff2b!important;color:#fff!important}

/* Phase 2 / leaderboard shell. */
.p2Overlay{background:#0b2c245c!important}
.p2App,.p2Body{background:var(--gr-bg)!important;color:var(--gr-ink)!important}
.p2Head{background:linear-gradient(125deg,#0a5f53,#0f806d,#279b83)!important;color:#fff!important}
.p2HeadCopy small{color:#ccefe5!important}
.p2HeadCopy p{color:#effbf7!important}
.p2Back,.p2Close{background:#ffffff20!important;color:#fff!important;border-color:#ffffff26!important}

/* Generic phase-2 surfaces/text. */
.p2Card,.p2Choice,.p2Stat,.p2Point,.p2PdfCard,.p2PdfPreview,.p2CourseCard,.p2CourseHero,.p2ProgressRow,.p2ScheduleRow{
  background:var(--gr-surface)!important;
  border-color:var(--gr-line)!important;
  color:var(--gr-ink)!important;
}
.p2Card small,.p2Choice small,.p2PdfCard small,.p2PdfPreview p,.p2CourseCard small,.p2CourseHero p,.p2ProgressRow small,.p2ScheduleRow small{color:var(--gr-muted)!important}
.p2PdfCard em,.p2CourseCard em,.p2CourseHero small{color:var(--gr-primary)!important}
.p2CourseAction{background:var(--gr-primary)!important;color:#fff!important}
.p2CourseAction.secondary{background:var(--gr-surface-soft)!important;color:var(--gr-ink)!important}
.p2CourseAction.quiz{background:var(--gr-primary-2)!important;color:#fff!important}

/* Leaderboard headline / summary colors only. */
.p2Top20HeroV69,.p2LeaderboardHeroV136{background:linear-gradient(135deg,var(--gr-surface),#fff7df)!important;border-color:#eadba7!important;color:var(--gr-ink)!important}
html[data-guul-comfort-resolved="dark"] .p2Top20HeroV69,
html[data-guul-comfort-resolved="dark"] .p2LeaderboardHeroV136{background:linear-gradient(135deg,var(--gr-surface),#2f2a18)!important;border-color:#5d512c!important}
.p2Top20HeroV69 small,.p2LeaderboardHeroV136 small{color:var(--gr-primary)!important}
.p2Top20HeroV69 h3,.p2LeaderboardHeroV136 h3{color:var(--gr-heading)!important}
.p2Top20HeroV69 p,.p2LeaderboardHeroV136 p{color:var(--gr-muted)!important}
.p2Top20HeroV69>span,.p2LeaderboardHeroV136>span{background:linear-gradient(145deg,#f3b82f,#dc961b)!important;color:#fff!important}

.p2RankSummary>div,.p2RankSummaryV135>div,.p2RankSummaryV136>div{background:var(--gr-surface)!important;border-color:var(--gr-line)!important;color:var(--gr-ink)!important}
.p2RankSummary small,.p2RankSummaryV135 small,.p2RankSummaryV136 small{color:var(--gr-muted)!important}

/* Top-3 palette only. */
.p2Top3InfoV142,.p2Top3NameV139,.podiumCard{background:var(--gr-surface)!important;border-color:var(--gr-line)!important;color:var(--gr-ink)!important}
.p2Top3CardV142.rank1 .p2Top3InfoV142,.p2Top3CardV139.rank1 .p2Top3NameV139,.podiumCard.place1{background:#fff7d9!important;border-color:#e8ce72!important}
.p2Top3CardV142.rank2 .p2Top3InfoV142,.p2Top3CardV139.rank2 .p2Top3NameV139,.podiumCard.place2{background:#eef4fb!important;border-color:#cbd9e8!important}
.p2Top3CardV142.rank3 .p2Top3InfoV142,.p2Top3CardV139.rank3 .p2Top3NameV139,.podiumCard.place3{background:#f9e7dc!important;border-color:#e4c2ae!important}
html[data-guul-comfort-resolved="dark"] .p2Top3CardV142.rank1 .p2Top3InfoV142,
html[data-guul-comfort-resolved="dark"] .p2Top3CardV139.rank1 .p2Top3NameV139,
html[data-guul-comfort-resolved="dark"] .podiumCard.place1{background:#352f18!important;border-color:#66592a!important}
html[data-guul-comfort-resolved="dark"] .p2Top3CardV142.rank2 .p2Top3InfoV142,
html[data-guul-comfort-resolved="dark"] .p2Top3CardV139.rank2 .p2Top3NameV139,
html[data-guul-comfort-resolved="dark"] .podiumCard.place2{background:#1b2c35!important;border-color:#35505f!important}
html[data-guul-comfort-resolved="dark"] .p2Top3CardV142.rank3 .p2Top3InfoV142,
html[data-guul-comfort-resolved="dark"] .p2Top3CardV139.rank3 .p2Top3NameV139,
html[data-guul-comfort-resolved="dark"] .podiumCard.place3{background:#35251f!important;border-color:#604234!important}
.p2Top3InfoV142 h3,.p2Top3NameV139 h3,.podiumCard h3{color:var(--gr-heading)!important}
.p2Top3InfoV142 strong,.p2Top3NameV139 strong,.podiumCard>b{color:var(--gr-primary)!important}
.p2Top3SchoolV142,.podiumCard p,.podiumCard>small{color:var(--gr-muted)!important}
.p2Top3CardV142.rank1 .p2Top3PodiumV142{background:linear-gradient(180deg,#f4bd32,#dea11d)!important;color:#fff!important}
.p2Top3CardV142.rank2 .p2Top3PodiumV142{background:linear-gradient(180deg,#9dbfe8,#bfd2eb)!important;color:#17352d!important}
.p2Top3CardV142.rank3 .p2Top3PodiumV142{background:linear-gradient(180deg,#e7a080,#efbea5)!important;color:#17352d!important}

/* Leaderboard rows / ranks. */
.p2RankRow,.p2RankRowV69,.p2RankCardV136,.rankingTable{background:var(--gr-surface)!important;border-color:var(--gr-line)!important;color:var(--gr-ink)!important}
.p2RankRow.me,.p2RankRowV69.me,.p2RankCardV136.me,.rankingTable .currentStudent{background:#eaf6f1!important;border-color:#abd8c9!important;color:var(--gr-ink)!important}
html[data-guul-comfort-resolved="dark"] .p2RankRow.me,
html[data-guul-comfort-resolved="dark"] .p2RankRowV69.me,
html[data-guul-comfort-resolved="dark"] .p2RankCardV136.me,
html[data-guul-comfort-resolved="dark"] .rankingTable .currentStudent{background:#1c3a30!important;border-color:#376354!important}
.p2RankRow .who small,.p2RankWho small,.p2RankPersonV136 small,.studentName small{color:var(--gr-muted)!important}
.p2RankPoints,.p2RankScoreV136,.rankingTable>div>b{color:var(--gr-heading)!important}
.rankingTable .rankingHead{background:var(--gr-surface-soft)!important;color:var(--gr-muted)!important}
.rankingTable>div{border-color:var(--gr-line)!important}
.rankingTable>div>strong{background:#e7f3ee!important;color:var(--gr-primary)!important}
html[data-guul-comfort-resolved="dark"] .rankingTable>div>strong{background:#203d33!important}

/* Own-rank / chips. */
.p2OwnRankCardV135,.p2OwnRankV136,.p2OwnRankV139,.yourRank{background:linear-gradient(135deg,var(--gr-primary-deep),var(--gr-primary))!important;border-color:var(--gr-primary)!important;color:#fff!important}
.p2OwnRankWhoV135 small,.p2OwnRankV136>div:nth-child(2) small,.p2OwnCopyV139 small,.yourRank small{color:#d5f4eb!important}
.p2MeChipV135{background:var(--gr-gold)!important;color:#243128!important}

/* Accent text that used the old purple. */
.eyebrow,.sectionTitle button,.bookCard>div>small,.documentShelf a>svg,.subjectFilters button.active{color:var(--gr-primary)!important}
.primary,.subjectFilters button.active{background:var(--gr-primary)!important;border-color:var(--gr-primary)!important;color:#fff!important}
