/*
Theme Name: AI Game Dev - Epic Style
Theme URI: https://theaigamedev.com
Description: Dark developer community theme inspired by Epic Dev Community. Custom built for theaigamedev.com.
Author: AeternusVita
Author URI: https://aeternusvita.io
Template: kadence
Version: 1.0.0
Text Domain: aigamedev-epic
*/

:root {
  --epic-bg-primary: #0d1117;
  --epic-bg-secondary: #161b22;
  --epic-bg-tertiary: #21262d;
  --epic-bg-card: #1c2028;
  --epic-border: #30363d;
  --epic-text-primary: #e6edf3;
  --epic-text-secondary: #8b949e;
  --epic-text-muted: #6e7681;
  --epic-accent-blue: #58a6ff;
  --epic-accent-cyan: #3fb8af;
  --epic-accent-purple: #bc8cff;
  --epic-accent-green: #3fb950;
  --epic-link: #58a6ff;
  --epic-hover: #1f6feb;
  --epic-radius: 8px;
  --epic-radius-lg: 12px;
}

body, html {
  background: var(--epic-bg-primary) !important;
  color: var(--epic-text-primary) !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif !important;
  -webkit-font-smoothing: antialiased;
}
a { color: var(--epic-link); text-decoration: none; transition: color 0.15s; }
a:hover { color: var(--epic-accent-cyan); }
.site { background: var(--epic-bg-primary) !important; }
.site-header-wrap, .site-header { background: var(--epic-bg-secondary) !important; border-bottom: 1px solid var(--epic-border) !important; }
.site-header .site-branding a, .site-header .site-title a, .header-navigation a, .header-menu-container a {
  color: var(--epic-text-primary) !important; font-weight: 500; font-size: 14px;
}
.header-navigation a:hover, .header-menu-container a:hover { color: var(--epic-accent-blue) !important; }
.site-branding .site-title { font-size: 18px !important; font-weight: 700 !important; }
.header-search-wrap .search-field {
  background: var(--epic-bg-tertiary) !important; border: 1px solid var(--epic-border) !important;
  color: var(--epic-text-primary) !important; border-radius: 20px !important; padding: 8px 16px !important;
}
.site-container, .content-wrap, .site-main { background: var(--epic-bg-primary) !important; }
.entry-content, .entry-summary { color: var(--epic-text-primary) !important; }
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4 { color: var(--epic-text-primary) !important; }
.widget-area, .sidebar { background: var(--epic-bg-secondary) !important; padding: 20px !important; }
.widget { background: var(--epic-bg-card) !important; border: 1px solid var(--epic-border) !important; border-radius: var(--epic-radius) !important; padding: 16px !important; margin-bottom: 16px !important; }
.widget-title { color: var(--epic-text-secondary) !important; font-size: 12px !important; font-weight: 600 !important; text-transform: uppercase !important; letter-spacing: 0.08em !important; }
.entry.post { background: var(--epic-bg-card) !important; border: 1px solid var(--epic-border) !important; border-radius: var(--epic-radius-lg) !important; overflow: hidden; transition: border-color 0.2s, transform 0.15s; }
.entry.post:hover { border-color: var(--epic-accent-blue) !important; transform: translateY(-2px); }
.entry-title a { color: var(--epic-text-primary) !important; font-weight: 600 !important; }
.entry-title a:hover { color: var(--epic-accent-blue) !important; }
.entry-meta, .entry-meta a, .post-date, .entry-author { color: var(--epic-text-muted) !important; font-size: 13px !important; }
.entry-taxonomies a, .post-categories a, .cat-links a {
  background: var(--epic-bg-tertiary) !important; color: var(--epic-accent-cyan) !important;
  padding: 4px 10px !important; border-radius: 12px !important; font-size: 12px !important; font-weight: 500 !important;
  border: 1px solid var(--epic-border) !important; display: inline-block; margin: 2px 4px 2px 0; transition: all 0.15s;
}
.entry-taxonomies a:hover, .post-categories a:hover, .cat-links a:hover {
  background: var(--epic-accent-blue) !important; color: #fff !important; border-color: var(--epic-accent-blue) !important;
}
.wp-block-button__link, button, .button, input[type="submit"] {
  background: var(--epic-accent-blue) !important; color: #fff !important; border: none !important;
  border-radius: var(--epic-radius) !important; padding: 10px 20px !important; font-weight: 600 !important; transition: background 0.15s !important;
}
.wp-block-button__link:hover, button:hover, .button:hover, input[type="submit"]:hover { background: var(--epic-hover) !important; }
.site-footer-wrap, .site-footer { background: var(--epic-bg-secondary) !important; border-top: 1px solid var(--epic-border) !important; color: var(--epic-text-secondary) !important; }
.site-footer a { color: var(--epic-text-secondary) !important; }
.site-footer a:hover { color: var(--epic-accent-blue) !important; }
.single .entry-content { max-width: 800px; line-height: 1.7; font-size: 16px; }
.single .entry-content code { background: var(--epic-bg-tertiary); color: var(--epic-accent-cyan); padding: 2px 6px; border-radius: 4px; }
.single .entry-content pre { background: var(--epic-bg-tertiary) !important; border: 1px solid var(--epic-border) !important; border-radius: var(--epic-radius) !important; padding: 16px !important; }
.single .entry-content blockquote { border-left: 3px solid var(--epic-accent-blue); padding-left: 16px; color: var(--epic-text-secondary); }
.single .entry-content img { border-radius: var(--epic-radius); border: 1px solid var(--epic-border); }
.single .entry-content th { background: var(--epic-bg-tertiary); color: var(--epic-text-primary); padding: 10px 12px; font-weight: 600; border-bottom: 2px solid var(--epic-border); }
.single .entry-content td { padding: 10px 12px; border-bottom: 1px solid var(--epic-border); color: var(--epic-text-secondary); }
.kadence-breadcrumbs, .breadcrumb { color: var(--epic-text-muted) !important; font-size: 13px !important; }
.kadence-breadcrumbs a { color: var(--epic-text-secondary) !important; }
.kadence-breadcrumbs a:hover { color: var(--epic-accent-blue) !important; }
.pagination a, .nav-links a { background: var(--epic-bg-tertiary) !important; color: var(--epic-text-primary) !important; border: 1px solid var(--epic-border) !important; border-radius: var(--epic-radius) !important; }
.pagination .current, .nav-links .current { background: var(--epic-accent-blue) !important; color: #fff !important; }
.comments-area, #bbpress-forums { background: var(--epic-bg-secondary) !important; border-radius: var(--epic-radius-lg) !important; padding: 24px !important; }
.comment, .bbp-body .bbp-reply-content { background: var(--epic-bg-card) !important; border: 1px solid var(--epic-border) !important; border-radius: var(--epic-radius) !important; padding: 16px !important; margin-bottom: 12px !important; }
#bbpress-forums li.bbp-body ul.forum, #bbpress-forums li.bbp-body ul.topic { background: var(--epic-bg-card) !important; border-bottom: 1px solid var(--epic-border) !important; }
.epic-engine-pills { display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; margin: 20px 0; }
.epic-engine-pill { display: inline-flex; align-items: center; gap: 6px; background: var(--epic-bg-tertiary); border: 1px solid var(--epic-border); border-radius: 20px; padding: 8px 16px; color: var(--epic-text-primary); font-size: 14px; font-weight: 500; cursor: pointer; transition: all 0.15s; text-decoration: none; }
.epic-engine-pill:hover, .epic-engine-pill.active { background: var(--epic-accent-blue); border-color: var(--epic-accent-blue); color: #fff; }
.epic-engine-pill .pill-count { color: var(--epic-text-muted); font-size: 12px; }
.epic-engine-pill.active .pill-count { color: rgba(255,255,255,0.7); }
.epic-feature-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin: 24px 0; }
.epic-feature-card { background: var(--epic-bg-card); border: 1px solid var(--epic-border); border-radius: var(--epic-radius-lg); padding: 24px; transition: border-color 0.2s, transform 0.15s; }
.epic-feature-card:hover { border-color: var(--epic-accent-blue); transform: translateY(-2px); }
.epic-feature-card .card-icon { width: 48px; height: 48px; background: var(--epic-bg-tertiary); border-radius: 10px; display: flex; align-items: center; justify-content: center; margin-bottom: 16px; font-size: 24px; }
.epic-feature-card .card-title { font-size: 16px; font-weight: 700; color: var(--epic-text-primary); margin-bottom: 8px; }
.epic-feature-card .card-desc { font-size: 14px; color: var(--epic-text-secondary); line-height: 1.5; }
.epic-hero { text-align: center; padding: 48px 24px 32px; background: linear-gradient(180deg, var(--epic-bg-secondary) 0%, var(--epic-bg-primary) 100%); border-bottom: 1px solid var(--epic-border); }
.epic-hero h1 { font-size: 28px; font-weight: 800; letter-spacing: -0.03em; margin-bottom: 8px; color: var(--epic-text-primary); }
.epic-hero h1 span { color: var(--epic-accent-blue); }
.epic-hero .hero-sub { color: var(--epic-text-secondary); font-size: 16px; max-width: 600px; margin: 0 auto; }
.epic-layout { display: grid; grid-template-columns: 1fr 320px; gap: 24px; max-width: 1280px; margin: 0 auto; padding: 24px; }
@media (max-width: 1024px) { .epic-layout { grid-template-columns: 1fr; } .epic-feature-cards { grid-template-columns: 1fr; } }
@media (max-width: 768px) { .epic-engine-pills { overflow-x: auto; flex-wrap: nowrap; } .epic-engine-pill { white-space: nowrap; } }
.epic-section-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; }
.epic-section-header h2 { font-size: 16px; font-weight: 700; color: var(--epic-text-primary); display: flex; align-items: center; gap: 8px; }
.epic-section-header .view-all { font-size: 13px; color: var(--epic-accent-blue); font-weight: 500; }
.epic-post-list { background: var(--epic-bg-secondary); border: 1px solid var(--epic-border); border-radius: var(--epic-radius-lg); overflow: hidden; }
.epic-post-row { display: flex; align-items: center; padding: 14px 20px; border-bottom: 1px solid var(--epic-border); transition: background 0.15s; gap: 16px; }
.epic-post-row:hover { background: var(--epic-bg-tertiary); }
.epic-post-row:last-child { border-bottom: none; }
.epic-post-row .post-info { flex: 1; }
.epic-post-row .post-title { font-size: 14px; font-weight: 600; color: var(--epic-text-primary); margin-bottom: 4px; }
.epic-post-row .post-meta { font-size: 12px; color: var(--epic-text-muted); }
.epic-post-row .post-category { font-size: 12px; background: var(--epic-bg-tertiary); color: var(--epic-accent-cyan); padding: 3px 8px; border-radius: 10px; border: 1px solid var(--epic-border); }
.epic-category-table { width: 100%; background: var(--epic-bg-secondary); border: 1px solid var(--epic-border); border-radius: var(--epic-radius-lg); overflow: hidden; }
.epic-cat-row { display: flex; align-items: center; padding: 14px 20px; border-bottom: 1px solid var(--epic-border); transition: background 0.15s; }
.epic-cat-row:hover { background: var(--epic-bg-tertiary); }
.epic-cat-row:last-child { border-bottom: none; }
.epic-cat-row a { color: var(--epic-text-primary); font-weight: 600; font-size: 15px; flex: 1; }
.epic-cat-row .cat-count { color: var(--epic-text-muted); font-size: 13px; margin-left: 16px; }
.epic-cat-row .cat-latest { color: var(--epic-text-secondary); font-size: 13px; max-width: 280px; margin-left: 24px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.epic-announcements { background: var(--epic-bg-card); border: 1px solid var(--epic-border); border-radius: var(--epic-radius-lg); padding: 20px; margin-bottom: 20px; }
.epic-announcements .section-label { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; color: var(--epic-text-muted); margin-bottom: 16px; }
.epic-ann-item { display: flex; gap: 12px; margin-bottom: 16px; padding-bottom: 16px; border-bottom: 1px solid var(--epic-border); }
.epic-ann-item:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }
.epic-ann-item .ann-title { font-size: 14px; font-weight: 600; color: var(--epic-text-primary); line-height: 1.4; }
.epic-cross-promo { background: linear-gradient(135deg, #1a1a2e, #16213e); border: 1px solid var(--epic-border); border-radius: var(--epic-radius-lg); padding: 20px 24px; display: flex; align-items: center; justify-content: space-between; margin: 24px 0; }
.epic-cross-promo .promo-text { font-size: 14px; color: var(--epic-text-secondary); }
.epic-cross-promo .promo-text strong { color: var(--epic-text-primary); }
.epic-cross-promo .promo-btn { background: var(--epic-accent-cyan); color: #000; padding: 8px 16px; border-radius: var(--epic-radius); font-weight: 600; font-size: 13px; display: inline-block; }
input, textarea, select { background: var(--epic-bg-tertiary) !important; border: 1px solid var(--epic-border) !important; color: var(--epic-text-primary) !important; border-radius: var(--epic-radius) !important; }
.kadence-pro-navigation-link a, .kadence-navigation a { color: var(--epic-text-primary) !important; }
.wp-block-cover, .wp-block-group { background: var(--epic-bg-secondary) !important; }
.has-theme-palette-1-background-color { background: var(--epic-bg-secondary) !important; }
.has-theme-palette-1-color { color: var(--epic-text-primary) !important; }
