/* Public pages share the homepage's cool blue, charcoal and glass materials. */
:root {
  --color-paper: #181818; --color-paper-2: #272727;
  --color-surface: #1f1f1f; --color-surface-raised: #272727;
  --color-ink: #edf3fa; --color-ink-2: #b8c5d4; --color-muted: #99a9bc;
  --color-rule: #b5d5ff26; --color-rule-strong: #b5d5ff55;
  --color-accent: #93c5fd; --color-accent-hover: #bfdbfe;
  --color-accent-soft: #93c5fd14; --color-accent-ink: #142135;
  --color-focus: #93c5fd; --surface-soft: #272727;
  --radius-control: 12px; --radius-card: 16px;
}
.site-header, .home-page .site-header {
  --blue: #93c5fd; --color-accent: #93c5fd; --color-accent-hover: #bfdbfe;
  --muted: #b8c5d4; --line: #b5d5ff26;
  max-width: 1280px; width: calc(100% - 48px); top: 16px; margin: 16px auto 0;
  background: #181818d9; color: #edf3fa; border: 1px solid #b5d5ff26;
  border-radius: 16px; backdrop-filter: blur(24px); box-shadow: 0 8px 32px #0003;
}
.site-header .wordmark, .home-page .site-header .wordmark { color: #a8c9f3; }
.site-header .masthead-tools > .button { border-color: #b5d5ff55; }
.site-header .masthead-tools > .button:hover { border-color: #93c5fd; }
body:not(.home-page) .page-heading .context-line,
:is(.career-card,.compact-card) .story-meta .topic-pill,
:is(.career-card,.compact-card) .career-details > summary,
.resource-subnav a[aria-current] { color: var(--color-accent); }
body:not(.home-page) .page-heading > p, .resource-subnav a { color: var(--color-ink-2); }
.topics a.active, .topics a[aria-current] {
  background: var(--color-accent); color: var(--color-accent-ink); border-color: var(--color-accent);
}
button, .button { border-radius: 12px; }
.button.secondary { border-color: #b5d5ff55; }
:is(.search,.auth-card,.playbook-card,.project-card,.vip-connect-card) {
  background: var(--color-surface); border: 1px solid var(--color-rule); border-radius: 16px;
  box-shadow: 0 8px 32px #0002;
}
:is(.career-card,.compact-card,.leaderboard-card) { border-color: var(--color-rule); }
.coding-guide-card { border: 1px solid var(--color-rule); }
.vip-connect-card h2 { font-size: 24px; line-height: 32px; font-weight: 600; }
.vip-intro h1 { font-size: 48px; line-height: 48px; font-weight: 600; }
.auth-card { padding: 40px; }
.auth-card h1 { font-size: 36px; line-height: 40px; }
.vip-pass { border: 1px solid var(--color-rule); border-radius: 16px; }
body:not(.home-page) footer {
  max-width: 1280px; width: calc(100% - 48px); margin: 48px auto 24px; padding: 32px;
  border: 1px solid var(--color-rule); border-radius: 16px; background: #181818d9;
}
@media (hover: hover) and (pointer: fine) {
  :is(.career-card,.compact-card,.playbook-card):hover { border-color: #93c5fd66; }
}
@media (max-width:760px) {
  .site-header, .home-page .site-header {
    width: calc(100% - 24px); top: 8px; margin-top: 8px; border-radius: 12px;
  }
  body:not(.home-page) footer { width: calc(100% - 24px); padding: 24px; margin-top: 32px; }
  .vip-intro h1 { font-size: 36px; line-height: 40px; }
  .auth-card { padding: 24px; }
}
