/* Route typography and UI colors for every private cabinet view.
   Passage statuses, award colors, figures, and responsive grids remain separate. */
@font-face{font-family:Manrope;src:url('/assets/fonts/Manrope-Variable.woff2') format('woff2');font-weight:200 800;font-display:swap}

:root{
  --cab-route-blue:var(--vz-blue);--cab-route-copy:var(--vz-copy);--cab-route-muted:var(--vz-muted);
  --cab-route-page:var(--vz-page);--cab-route-paper:var(--vz-card);--cab-route-soft:var(--vz-card-soft);--cab-route-line:var(--vz-line);
}
:root[data-theme]:has(>body:is(.cabinet-page,.page-season-themes,.page-my-passages)){
  background:var(--cab-route-page)!important;
}
:root[data-theme][data-design] body:is(.cabinet-page,.page-season-themes,.page-my-passages){
  background:var(--cab-route-page)!important;
  color:var(--cab-route-copy)!important;
  font-family:Manrope,"Segoe UI",Arial,sans-serif!important;
}
html body.cabinet-page,html body.cabinet-page main#app{
  --profile-bg:var(--cab-route-page)!important;
  --profile-card:var(--cab-route-paper)!important;
  --profile-card-2:var(--cab-route-soft)!important;
  --profile-soft:var(--cab-route-soft)!important;
  --profile-ink:var(--cab-route-copy)!important;
  --profile-muted:var(--cab-route-muted)!important;
  --profile-line:var(--cab-route-line)!important;
  --profile-sort:var(--cab-route-blue)!important;
  --profile-level:var(--cab-route-blue)!important;
  --profile-current-line:var(--cab-route-blue)!important;
  --profile-blue:var(--cab-route-blue)!important;
}
html body.page-season-themes,html body.page-season-themes .season-themes-page{
  --st-bg:var(--cab-route-page)!important;
  --st-page-bg:var(--cab-route-page)!important;
  --st-card:var(--cab-route-paper)!important;
  --st-card-2:var(--cab-route-soft)!important;
  --st-ink:var(--cab-route-copy)!important;
  --st-muted:var(--cab-route-muted)!important;
  --st-line:var(--cab-route-line)!important;
  --st-accent:var(--cab-route-blue)!important;
}
html body.page-my-passages,html body.page-my-passages .my-passages-page{
  --mp-bg:var(--cab-route-page)!important;
  --mp-card:var(--cab-route-paper)!important;
  --mp-card-2:var(--cab-route-soft)!important;
  --mp-ink:var(--cab-route-copy)!important;
  --mp-muted:var(--cab-route-muted)!important;
  --mp-line:var(--cab-route-line)!important;
  --mp-accent:var(--cab-route-blue)!important;
  --mp-ordered:var(--vz-warning)!important;
}
html body:is(.cabinet-page,.page-season-themes,.page-my-passages) :is(main,p,a,small,label,legend,input,select,textarea,button,th,td){
  font-family:Manrope,"Segoe UI",Arial,sans-serif!important;
}
html body:is(.cabinet-page,.page-season-themes,.page-my-passages) main#app :is(h1,h2,h3){
  font-family:"Times New Roman",Times,serif!important;
  color:var(--cab-route-blue)!important;
  letter-spacing:normal!important;
}
html body:is(.cabinet-page,.page-season-themes,.page-my-passages) main#app :is(p,a,small,label,legend,input,select,textarea,button,th,td,.label,.eyebrow,.profile-updated){
  font-family:Manrope,"Segoe UI",Arial,sans-serif!important;
}
html body.page-season-themes main#app :is(.season-themes-person strong,.season-theme-meta,.season-theme-date,.season-themes-updated),
html body.page-my-passages main#app :is(.my-passages-identity-copy strong,.my-passages-theme,.my-passages-badge-copy strong),
html body.cabinet-page main#app :is(.profile-title-line h1,.rating .label,.reward-copy b,.legendary-copy b,.season-achievement-text b,.achievement-history-row b){
  font-family:Manrope,"Segoe UI",Arial,sans-serif!important;
}
html body.page-season-themes :is(.season-themes-updated,.season-themes-updated time){color:var(--st-muted)}
html body:is(.cabinet-page,.page-season-themes,.page-my-passages) :is(a,button,input,select,textarea):focus-visible{
  outline-color:var(--cab-route-blue)!important;
}

/* Participant identity captions are metadata, independent of award actions. */
html body.cabinet-page main#app .profile-copy .eyebrow{color:var(--vz-muted)!important}
/* A generic page-card rule must not erase the award's own colored edge. */
html body.cabinet-page main#app .special-achievements .legendary{
  border-left-color:var(--award-color)!important;
}
:root[data-theme="light"] body.cabinet-page main#app .special-achievements .legendary{
  border-left-color:var(--award-light-color)!important;
}
html body.cabinet-page main#app .medal-rewards .reward{
  background:linear-gradient(110deg,color-mix(in srgb,var(--reward-color) 7%,var(--profile-card)),var(--profile-card))!important;
}
html body.cabinet-page main#app .season-achievement:not(.locked){
  border-color:color-mix(in srgb,var(--profile-sort) 70%,var(--profile-line))!important;
  background:color-mix(in srgb,var(--profile-sort) 5%,var(--profile-card))!important;
}
