/* Flat Valorant-inspired theme layer. Loaded after site.css. */
body.page-home.game-shell {
  --bg: #ece8e1;
  --bg-deep: #d9d2c7;
  --surface: #ffffff;
  --surface-strong: #ffffff;
  --text: #0f1923;
  --muted: #52606a;
  --accent: #ff4655;
  --accent-strong: #d92f3d;
  --accent-soft: rgba(255, 70, 85, 0.1);
  --warning: #0f1923;
  --cyan: #0f1923;
  --line: rgba(15, 25, 35, 0.14);
  --line-strong: rgba(15, 25, 35, 0.32);
  --shadow-soft: 10px 10px 0 rgba(15, 25, 35, 0.08);
  --shadow-strong: 14px 14px 0 rgba(15, 25, 35, 0.12);
  --radius-lg: 0;
  --radius-md: 0;
  --radius-sm: 0;
  color: var(--text);
  background:
    linear-gradient(90deg, rgba(15, 25, 35, 0.055) 1px, transparent 1px),
    linear-gradient(rgba(15, 25, 35, 0.055) 1px, transparent 1px),
    linear-gradient(135deg, transparent 0 64%, rgba(255, 70, 85, 0.08) 64% 68%, transparent 68%),
    #ece8e1;
  background-size: 42px 42px, 42px 42px, 100% 760px, auto;
}

body.page-home.game-shell::before {
  background:
    linear-gradient(115deg, transparent 0 52%, rgba(255, 70, 85, 0.09) 52% 56%, transparent 56%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.5), transparent 52%);
  opacity: 1;
}

body.page-home.game-shell .nav-shell,
body.page-home.game-shell .card,
body.page-home.game-shell .project-card,
body.page-home.game-shell .contact-card,
body.page-home.game-shell .hero-panel,
body.page-home.game-shell .contact-link-card,
body.page-home.game-shell .project-detail,
body.page-home.game-shell .metric-card,
body.page-home.game-shell .player-card {
  border: 1px solid var(--line-strong);
  border-radius: 0;
  background: #ffffff;
  box-shadow: var(--shadow-soft);
}

body.page-home.game-shell .card::before,
body.page-home.game-shell .project-card::before,
body.page-home.game-shell .contact-card::before,
body.page-home.game-shell .hero-panel::before {
  height: 5px;
  background: var(--accent);
}

body.page-home.game-shell .card::after,
body.page-home.game-shell .project-card::after,
body.page-home.game-shell .contact-card::after,
body.page-home.game-shell .hero-panel::after {
  content: "";
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 36px;
  height: 36px;
  background: linear-gradient(135deg, transparent 0 50%, var(--accent) 50%);
  pointer-events: none;
}

body.page-home.game-shell .nav-shell {
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(12px);
}

body.page-home.game-shell .nav-links a {
  color: #34414b;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

body.page-home.game-shell .nav-links a:hover,
body.page-home.game-shell .logo span,
body.page-home.game-shell .eyebrow,
body.page-home.game-shell .section-number,
body.page-home.game-shell .mini-label,
body.page-home.game-shell .project-type,
body.page-home.game-shell .contact-link-card i {
  color: var(--accent);
}

body.page-home.game-shell .hero-title,
body.page-home.game-shell .section-title,
body.page-home.game-shell .project-title--large {
  color: #0f1923;
  text-transform: uppercase;
}

body.page-home.game-shell .hero-title {
  max-width: 13ch;
  font-size: clamp(2.9rem, 7vw, 6.2rem);
  line-height: 0.9;
}

body.page-home.game-shell .section-title {
  font-size: clamp(2.25rem, 5.4vw, 4.4rem);
}

body.page-home.game-shell .card-title,
body.page-home.game-shell .project-title,
body.page-home.game-shell .contact-card h3,
body.page-home.game-shell .skill-card h3,
body.page-home.game-shell .player-card h2,
body.page-home.game-shell .project-detail strong,
body.page-home.game-shell .contact-link-card strong,
body.page-home.game-shell .stack-item strong {
  color: #0f1923;
}

body.page-home.game-shell .hero-subtitle,
body.page-home.game-shell .section-copy,
body.page-home.game-shell .skill-card p,
body.page-home.game-shell .project-card p,
body.page-home.game-shell .mini-list li,
body.page-home.game-shell .project-detail span,
body.page-home.game-shell .contact-card p,
body.page-home.game-shell .contact-link-card span,
body.page-home.game-shell .stack-item span,
body.page-home.game-shell .metric-card span,
body.page-home.game-shell .player-card span {
  color: var(--muted);
}

body.page-home.game-shell .badge,
body.page-home.game-shell .status-pill {
  border: 1px solid rgba(15, 25, 35, 0.24);
  border-radius: 0;
  background: #f7f5f1;
  color: #0f1923;
}

body.page-home.game-shell .badge--soft,
body.page-home.game-shell .status-pill--live {
  border-color: var(--accent);
  background: var(--accent);
  color: #ffffff;
}

body.page-home.game-shell .status-pill--building {
  border-color: #0f1923;
  background: #0f1923;
  color: #ffffff;
}

body.page-home.game-shell .btn-primary,
body.page-home.game-shell .project-button,
body.page-home.game-shell .nav-cta {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid var(--accent);
  border-radius: 0;
  background: var(--accent);
  color: #ffffff;
  box-shadow: 6px 6px 0 rgba(15, 25, 35, 0.15);
}

body.page-home.game-shell .btn-primary::after,
body.page-home.game-shell .project-button::after,
body.page-home.game-shell .nav-cta::after {
  content: "";
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 18px;
  height: 18px;
  background: #0f1923;
  clip-path: polygon(100% 0, 100% 100%, 0 100%);
  z-index: -1;
}

body.page-home.game-shell .btn-secondary {
  border: 1px solid #0f1923;
  border-radius: 0;
  background: #ffffff;
  color: #0f1923;
  box-shadow: 6px 6px 0 rgba(15, 25, 35, 0.1);
}

body.page-home.game-shell .btn-primary:hover,
body.page-home.game-shell .btn-secondary:hover,
body.page-home.game-shell .project-button:hover,
body.page-home.game-shell .card:hover,
body.page-home.game-shell .project-card:hover,
body.page-home.game-shell .contact-card:hover,
body.page-home.game-shell .hero-panel:hover {
  transform: translate(-2px, -2px);
  box-shadow: var(--shadow-strong);
}

body.page-home.game-shell .panel-dot,
body.page-home.game-shell .mini-list li::before {
  border-radius: 0;
  background: var(--accent);
}

body.page-home.game-shell .panel-dot {
  box-shadow: 0 0 0 7px var(--accent-soft);
}

body.page-home.game-shell .avatar-frame {
  border: 1px solid #0f1923;
  border-radius: 0;
  background: #ece8e1;
  box-shadow: 6px 6px 0 rgba(255, 70, 85, 0.18);
}

body.page-home.game-shell .metric-card strong {
  color: var(--accent);
  font-weight: 800;
}

body.page-home.game-shell .footer-links a,
body.page-home.game-shell .nav-links.active {
  border-radius: 0;
  background: #ffffff;
}

body.page-resume,
body.page-book-project,
body.page-search-project {
  --bg-main: #ece8e1;
  --bg-surface: #ffffff;
  --bg-elevated: #0f1923;
  --primary: #ff4655;
  --primary-deep: #d92f3d;
  --primary-glow: #ff4655;
  --text-main: #0f1923;
  --text-muted: rgba(15, 25, 35, 0.68);
  --glass-border: rgba(15, 25, 35, 0.22);
  --glass-strong: rgba(15, 25, 35, 0.35);
  --glass-bg: #ffffff;
  --shadow-soft: 8px 8px 0 rgba(15, 25, 35, 0.08);
  --shadow-strong: 12px 12px 0 rgba(15, 25, 35, 0.12);
}

body.page-resume .cv-sheet,
body.page-book-project .case-card,
body.page-search-project .case-card,
body.page-book-project .sidebar-card,
body.page-search-project .sidebar-card,
body.page-book-project .navbar,
body.page-search-project .navbar {
  border-radius: 0;
  border-color: var(--glass-border);
  background: #ffffff;
  box-shadow: var(--shadow-soft);
}

body.page-resume .cv-banner,
body.page-book-project .btn-primary,
body.page-search-project .btn-primary {
  background: #ff4655;
  color: #ffffff;
}

body.page-book-project .badge,
body.page-search-project .badge {
  border-radius: 0;
}

@media (max-width: 820px) {
  body.page-home.game-shell .nav-links,
  body.page-home.game-shell .nav-links a {
    border-radius: 0;
  }
}
