/* Site-wide readability overrides — load last */
:root{
  --muted:#c4c4c8;
  --muted-deep:#9d9da3;
}

/* Dark UI: grayscale AA — default subpixel AA looks jagged on black */
html,body{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
/* Large display type (home + all subpages) */
.page-hero h1,
.page-hero::after,
.section-title,
.hero-title,
.hero-title span,
.about-statement h3,
.service-panel h2,
.shop-copy h2,
.gwangju .city-copy h3,
.city-copy h2,
.lobby-head h3,
.battle-title h2,
.news-row h3,
.qa-head h2,
.creator-lane-title,
.board-article-title,
[data-team-board] h2,
[data-team-board] h3,
[data-team-board] .te-caption strong,
[data-team-board] .tb-member-info h3,
[data-team-board] .card-body h3,
[data-team-board] .tc-pick strong,
[data-team-board] .td-identity strong{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:geometricPrecision;
}

.nav-links a{font-size:13px!important;color:#d6d6d9!important}
.footer-brand p{color:var(--muted)!important;font-size:13px!important;line-height:1.65!important}
.footer-col h4{font-size:12px!important;color:var(--muted-deep)!important}
.footer-col a{font-size:13px!important;color:var(--muted)!important}
.footer-bottom{font-size:12px!important;color:var(--muted-deep)!important}
.to-top{font-size:12px!important;color:var(--muted)!important}
.page-hero p,
.section-copy,
.news-head-side p,
.qa-head-side p,
.business-main p,
.business-callout p,
.city-copy p,
.gwangju .city-copy p,
.shop-copy-bottom p,
.about-statement p,
.ci-card p,
.service-panel p,
.creator-lane-copy{
  color:var(--muted)!important;
  font-size:clamp(15px,1.35vw,18px)!important;
  line-height:1.7!important;
}

/* Meta / labels that were 8–11px */
.breadcrumb,
.filter,
.kicker,
.text-link,
.drop-no,
.card-body small,
.battle-title small,
.news-card time,
.service-panel small,
.about-statement small,
.about-facts small,
.creator-role,
.news-source,
.creator-lane-copy,
.site-login-kicker,
.site-login label,
.qa-tabs button,
.qa-form-grid label span,
.qa-note,
.qa-secret,
.qa-form-message{
  font-size:12px!important;
  letter-spacing:.06em;
}
.page-section .news-card time{
  font-size:13px!important;
  letter-spacing:.02em!important;
  text-align:right!important;
  color:#b0b0b5!important;
}
.page-section .news-card .card-body > p:not(.news-source){
  font-size:13px!important;
  line-height:1.65!important;
  color:#a8a8ae!important;
}
.page-section .news-card .news-source{
  font-size:13px!important;
  letter-spacing:0!important;
}
.breadcrumb{color:var(--muted-deep)!important}
.filter{color:var(--muted)!important;font-size:12px!important;padding:11px 15px!important}
.filter.active{color:#fff!important}
.text-link{font-size:13px!important;letter-spacing:.1em!important}
.card-body small,
.battle-title small,
.drop-no,
.service-panel small,
.about-statement small{font-size:12px!important}

/* Cards / lists */
.card-body p,
.creator-card .creator-role,
.battle-title p,
.battle-meta,
.battle-schedule-card footer,
.value-card p,
.sponsor-card small,
.news-source{
  color:var(--muted)!important;
  font-size:13px!important;
  line-height:1.65!important;
}
.card-body h3{font-size:clamp(20px,1.6vw,24px)!important}
.creator-social a,
.creator-links a,
.roster-links a{
  font-size:11px!important;
  color:#e4e4e7!important;
}
.news-index,
.news-row-arrow{color:var(--muted-deep)!important}
.news-row h3{font-size:clamp(18px,1.5vw,24px)!important}
.news-meta,
.news-meta span,
.news-meta time{
  color:var(--muted)!important;
  font-size:12px!important;
}

/* Team / creator boards */
.team-switch button{color:var(--muted-deep)!important;font-size:14px!important}
.team-switch button.active{color:#fff!important}
.team-tournament-chip{color:rgba(255,255,255,.45)!important}
.team-tournament-chip.active{color:#fff!important}
.player-info small{font-size:11px!important;letter-spacing:.12em}
.player-info b{font-size:clamp(18px,2vw,28px)!important}
.player-info span{color:var(--muted)!important;font-size:12px!important}
.roster-meta p{color:var(--muted)!important;font-size:15px!important;line-height:1.65!important}
.roster-meta .league{font-size:12px!important}

/* Match / lobby */
.match-top,
.lobby-head p,
.lobby-index,
.lobby-name span,
.result-row span:last-child,
.hero-match-brand span,
.hero-match-rank small,
.hero-match-extra small,
.hero-match-main span,
.hero-match-tab em,
.hero-match-tab b,
.hero-match-link{
  color:var(--muted)!important;
}
.match-top{font-size:12px!important}
.lobby-head p{font-size:12px!important}
.lobby-index{font-size:11px!important}
.lobby-name b{font-size:16px!important}
.lobby-name span{font-size:11px!important}
.result-row b{font-size:13px!important}
.result-row span:last-child{font-size:11px!important}
.hero-match-brand small{font-size:12px!important}
.hero-match-brand strong{font-size:15px!important}
.hero-match-brand span{font-size:12px!important;color:var(--muted)!important}
.hero-match-tab em{font-size:11px!important}
.hero-match-tab b{font-size:13px!important;color:inherit!important}
.hero-match-rank small{font-size:11px!important}
.hero-match-main small{font-size:13px!important}
.hero-match-main b{font-size:17px!important}
.hero-match-main span{font-size:12px!important}
.hero-match-extra small{font-size:11px!important}
.hero-match-extra b{font-size:14px!important}
.hero-match-extra span{font-size:12px!important;color:var(--muted)!important}
.hero-match-link{font-size:12px!important;color:#f0f0f2!important}

/* Partners / business — fix low-contrast blocks */
.partner-logo{color:var(--muted-deep)!important;font-size:14px!important}
.business-main{color:var(--text)}
.business-main h3{color:#f6f6f3!important}
.business-main p{color:var(--muted)!important}
.business-list b{font-size:14px!important;color:#f0f0f2!important}
.business-list span{font-size:12px!important}
.business-list div{color:var(--muted)}
.gwangju .route-card small{font-size:12px!important}
.gwangju .route-card b{font-size:18px!important}
.gwangju .route-card p{font-size:13px!important;color:var(--muted)!important;line-height:1.55!important}
.gwangju .route-node span{color:var(--muted)!important;font-size:11px!important}

/* Shop */
.shop-item small,
.shop-card small,
[class*="shop"] .price,
.shop-section .price{font-size:14px!important}
.news-feature-copy p{color:var(--muted)!important;font-size:15px!important;line-height:1.7!important}
.news-feature-copy h3{font-size:clamp(24px,2.4vw,36px)!important}

/* Forms / Q&A */
.qa-tabs button{font-size:11px!important;padding:11px 14px!important;color:var(--muted)!important}
.qa-tabs button.active{color:#fff!important}
.qa-form-grid label span{color:var(--muted)!important;font-size:12px!important}
.qa-form-grid input,
.qa-form-grid select,
.qa-form-grid textarea{font-size:15px!important;padding:14px 15px!important}
.qa-note{color:var(--muted-deep)!important;font-size:11px!important}
.qa-secret,
.qa-form-message{font-size:12px!important;color:var(--muted)!important}
.site-login label{font-size:12px!important;color:var(--muted)!important}
.site-login input,
.site-login button{font-size:14px!important}
.site-login-back{font-size:13px!important;color:var(--muted)!important}

/* About / values */
.value-card p{font-size:14px!important;color:var(--muted)!important}
.about-facts strong{font-size:18px!important}
.about-facts small{font-size:11px!important;color:var(--muted)!important}
.sponsor-card span{color:var(--muted)!important}
.sponsor-card small{color:var(--muted-deep)!important;font-size:12px!important}

/* Schedule */
.battle-entrants b{font-size:13px!important}
.battle-entrants small{font-size:10px!important;color:var(--muted-deep)!important;letter-spacing:.08em}
.battle-schedule-card footer b{color:var(--muted)!important}

@media(max-width:720px){
  .page-hero p,
  .section-copy,
  .news-head-side p,
  .qa-head-side p{font-size:15px!important}
  .nav-links a,
  .mobile-menu a{font-size:15px!important}
  .filter{font-size:12px!important}
  .card-body p,
  .creator-card .creator-role{font-size:13px!important}
}

/* SNS selection: consistent white hover and keyboard focus across card designs. */
:root :is(.roster-links, .creator-social, .creator-links, .person-social, .tb-social, .tc-social, .td-social, .te-social) a:is(:hover, :focus-visible){
  color:#fff!important;
  border-color:#fff;
  background-color:rgba(255,255,255,.1);
}
:root :is(.roster-links, .creator-social, .creator-links, .person-social, .tb-social, .tc-social, .td-social, .te-social) a:is(:hover, :focus-visible) img{
  filter:brightness(0) invert(1);
  opacity:1;
}
.team-c .tc-social a:is(:hover, :focus-visible){
  background-color:#18181b;
}
