/*
Theme Name: GeneratePress Child — LDG Gaming
Theme URI: https://lifeanddeathgame.com
Description: Dark gaming reskin for lifeanddeathgame.com (Phase 1). Survival green #3DDC84 + hazard orange #FF6B1A on near-black #0B0E13. Chakra Petch display + Inter body (fonts loaded by ldg-gaming MU plugin).
Author: LDG
Template: generatepress
Version: 1.0.0
Text Domain: ldg-gaming
*/

/* ============ DESIGN TOKENS ============ */
:root{
  --ldg-bg:#0B0E13;
  --ldg-bg2:#11151C;
  --ldg-surface:#161B24;
  --ldg-surface2:#1B2230;
  --ldg-border:#232B38;
  --ldg-text:#E8ECF1;
  --ldg-muted:#9AA4B2;
  --ldg-green:#3DDC84;
  --ldg-green-dim:rgba(61,220,132,.12);
  --ldg-orange:#FF6B1A;
  --ldg-orange-dim:rgba(255,107,26,.12);
  --ldg-red:#E5484D;
  --ldg-display:'Chakra Petch','Arial Narrow',sans-serif;
  --ldg-body:'Inter',system-ui,sans-serif;
  --ldg-radius:12px;
}

/* ============ GLOBAL DARK BASE ============ */
body{background:var(--ldg-bg);color:var(--ldg-text);font-family:var(--ldg-body);}
a{color:var(--ldg-green);}
a:hover{color:#5ce89a;}
h1,h2,h3,h4,h5,h6{font-family:var(--ldg-display);color:var(--ldg-text);letter-spacing:.01em;}

/* Header */
.site-header{background:rgba(11,14,19,.96);border-bottom:1px solid var(--ldg-border);backdrop-filter:blur(8px);}
.site-header .site-logo img{max-height:52px;width:auto;}
.main-navigation{background:transparent;}
.main-navigation .main-nav ul li a{color:var(--ldg-text);font-family:var(--ldg-display);font-weight:600;text-transform:uppercase;font-size:13px;letter-spacing:.06em;padding:14px 14px;}
.main-navigation .main-nav ul li a:hover,.main-navigation .main-nav ul li.current-menu-item a{color:var(--ldg-green);}
.main-navigation .main-nav ul ul{background:var(--ldg-surface);border:1px solid var(--ldg-border);border-radius:8px;box-shadow:0 12px 32px rgba(0,0,0,.5);}
.main-navigation .main-nav ul ul li a{color:var(--ldg-text);text-transform:none;font-size:14px;padding:10px 16px;}
.main-navigation .main-nav ul ul li a:hover{color:var(--ldg-green);background:var(--ldg-surface2);}
.menu-toggle{color:var(--ldg-text);}

/* Content / footer */
.site-content{background:var(--ldg-bg);}
.separate-containers .inside-article,.one-container .site-content,.inside-article{background:var(--ldg-surface);border:1px solid var(--ldg-border);border-radius:var(--ldg-radius);color:var(--ldg-text);}
.entry-title a{color:var(--ldg-text);}
.entry-title a:hover{color:var(--ldg-green);}
.entry-meta,.entry-meta a{color:var(--ldg-muted);}
.site-footer{background:#07090D;border-top:1px solid var(--ldg-border);color:var(--ldg-muted);}
.site-footer a{color:var(--ldg-muted);}
.site-footer a:hover{color:var(--ldg-green);}
.footer-widgets{background:#07090D;}
.site-info{background:#05070A;color:#5b6472;font-size:13px;}

/* Sidebar widgets */
.sidebar .widget{background:var(--ldg-surface);border:1px solid var(--ldg-border);border-radius:var(--ldg-radius);color:var(--ldg-text);}
.sidebar .widget .widget-title{font-family:var(--ldg-display);color:var(--ldg-text);text-transform:uppercase;font-size:14px;letter-spacing:.08em;border-bottom:2px solid var(--ldg-green);padding-bottom:8px;}

/* Buttons */
.button,.wp-block-button__link,input[type="submit"],button{font-family:var(--ldg-display);font-weight:700;text-transform:uppercase;letter-spacing:.05em;border-radius:8px;}
.button,.wp-block-button__link{background:var(--ldg-green);color:#06281a;border:none;padding:12px 24px;}
.button:hover,.wp-block-button__link:hover{background:#5ce89a;color:#06281a;}
.ldg-btn-orange{background:var(--ldg-orange);color:#2b1200;}
.ldg-btn-orange:hover{background:#ff8a4d;color:#2b1200;}
.ldg-btn-ghost{background:transparent;color:var(--ldg-text);border:1px solid var(--ldg-border);}
.ldg-btn-ghost:hover{border-color:var(--ldg-green);color:var(--ldg-green);background:transparent;}

/* Forms / search */
input[type="text"],input[type="email"],input[type="search"],textarea{background:var(--ldg-bg2);border:1px solid var(--ldg-border);color:var(--ldg-text);border-radius:8px;}
input:focus,textarea:focus{border-color:var(--ldg-green);outline:none;}

/* Breadcrumbs (MU plugin) */
.ldg-breadcrumbs{font-size:13px;color:var(--ldg-muted);margin-bottom:16px;}
.ldg-breadcrumbs a{color:var(--ldg-muted);}
.ldg-breadcrumbs a:hover{color:var(--ldg-green);}
.ldg-card-badges{display:flex;gap:8px;align-items:center;margin-bottom:8px;}
.ldg-cat-badge a{background:var(--ldg-green-dim);color:var(--ldg-green);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:4px 10px;border-radius:20px;text-decoration:none;}
.ldg-readtime{font-size:12px;color:var(--ldg-muted);}

/* Pagination */
.paging-navigation .nav-links a,.page-numbers{background:var(--ldg-surface);border:1px solid var(--ldg-border);color:var(--ldg-text);border-radius:8px;}
.paging-navigation .nav-links a:hover,.page-numbers.current{background:var(--ldg-green);color:#06281a;border-color:var(--ldg-green);}

/* ============ HOMEPAGE ============ */
.ldg-home{background:var(--ldg-bg);}
.ldg-wrap{max-width:1200px;margin:0 auto;padding:0 20px;}
.ldg-section{padding:56px 0;}
.ldg-section-title{font-family:var(--ldg-display);font-size:clamp(24px,3vw,34px);text-transform:uppercase;letter-spacing:.04em;margin:0 0 6px;display:flex;align-items:center;gap:12px;}
.ldg-section-title::before{content:"";width:6px;height:28px;background:var(--ldg-green);border-radius:3px;box-shadow:0 0 12px rgba(61,220,132,.6);}
.ldg-section-sub{color:var(--ldg-muted);margin:0 0 28px;}

/* Game switcher pills */
.ldg-pills{position:sticky;top:0;z-index:50;background:rgba(11,14,19,.95);border-bottom:1px solid var(--ldg-border);backdrop-filter:blur(8px);}
.ldg-pills-inner{max-width:1200px;margin:0 auto;padding:10px 20px;display:flex;gap:10px;align-items:center;overflow-x:auto;}
.ldg-pill{font-family:var(--ldg-display);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--ldg-muted);background:var(--ldg-surface);border:1px solid var(--ldg-border);border-radius:24px;padding:8px 18px;cursor:pointer;white-space:nowrap;text-decoration:none;}
.ldg-pill:hover{color:var(--ldg-text);border-color:var(--ldg-green);}
.ldg-pill.active{background:var(--ldg-green);border-color:var(--ldg-green);color:#06281a;}
.ldg-pill-spacer{flex:1;}
.ldg-tools-link{color:var(--ldg-orange);font-family:var(--ldg-display);font-weight:700;font-size:13px;text-transform:uppercase;white-space:nowrap;text-decoration:none;}
.ldg-tools-link:hover{color:#ff8a4d;}
.ldg-search{display:flex;}
.ldg-search input{background:var(--ldg-surface);border:1px solid var(--ldg-border);border-radius:20px;padding:7px 14px;font-size:13px;color:var(--ldg-text);width:150px;}

/* Hero */
.ldg-hero{background:radial-gradient(1200px 500px at 20% 0%,rgba(61,220,132,.08),transparent 60%),radial-gradient(900px 420px at 90% 20%,rgba(255,107,26,.07),transparent 60%),var(--ldg-bg);padding:64px 0 48px;border-bottom:1px solid var(--ldg-border);}
.ldg-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center;}
.ldg-hero-kicker{display:inline-block;font-family:var(--ldg-display);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ldg-green);background:var(--ldg-green-dim);border:1px solid rgba(61,220,132,.3);padding:6px 14px;border-radius:20px;margin-bottom:18px;}
.ldg-hero h1{font-size:clamp(34px,4.6vw,58px);line-height:1.05;text-transform:uppercase;margin:0 0 16px;}
.ldg-hero h1 .accent{color:var(--ldg-green);text-shadow:0 0 24px rgba(61,220,132,.45);}
.ldg-hero p.lead{color:var(--ldg-muted);font-size:17px;line-height:1.6;margin:0 0 28px;max-width:520px;}
.ldg-hero-ctas{display:flex;gap:14px;flex-wrap:wrap;}
.ldg-hero-ctas a{text-decoration:none;display:inline-block;}
.ldg-gamecards{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.ldg-gamecard{position:relative;border-radius:var(--ldg-radius);overflow:hidden;border:1px solid var(--ldg-border);aspect-ratio:16/10;display:block;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;background:var(--ldg-surface);}
.ldg-gamecard img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s;}
.ldg-gamecard:hover{transform:translateY(-4px);border-color:var(--ldg-green);box-shadow:0 14px 34px rgba(0,0,0,.55);}
.ldg-gamecard:hover img{transform:scale(1.05);}
.ldg-gamecard .gc-label{position:absolute;left:0;right:0;bottom:0;padding:28px 14px 12px;background:linear-gradient(transparent,rgba(0,0,0,.85));font-family:var(--ldg-display);font-weight:700;font-size:18px;text-transform:uppercase;letter-spacing:.06em;color:#fff;}
.ldg-gamecard .gc-tag{position:absolute;top:10px;left:10px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;background:rgba(11,14,19,.8);color:var(--ldg-green);padding:4px 10px;border-radius:12px;border:1px solid rgba(61,220,132,.4);}

/* Ticker */
.ldg-ticker{background:#07090D;border-bottom:1px solid var(--ldg-border);overflow:hidden;display:flex;align-items:center;}
.ldg-ticker-label{background:var(--ldg-orange);color:#1d0d00;font-family:var(--ldg-display);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.08em;padding:10px 16px;white-space:nowrap;z-index:2;}
.ldg-ticker-track{display:flex;gap:48px;white-space:nowrap;animation:ldg-ticker 36s linear infinite;padding:10px 0;}
.ldg-ticker:hover .ldg-ticker-track{animation-play-state:paused;}
.ldg-ticker-track a{color:var(--ldg-muted);font-size:14px;text-decoration:none;}
.ldg-ticker-track a:hover{color:var(--ldg-green);}
.ldg-ticker-track a::before{content:"▸";color:var(--ldg-orange);margin-right:8px;}
@keyframes ldg-ticker{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* Tools strip */
.ldg-tools{background:var(--ldg-bg2);border-top:1px solid var(--ldg-border);border-bottom:1px solid var(--ldg-border);}
.ldg-tools-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.ldg-tool-card{background:var(--ldg-surface);border:1px solid var(--ldg-border);border-radius:var(--ldg-radius);padding:22px;text-decoration:none;display:block;position:relative;transition:transform .2s,border-color .2s;}
.ldg-tool-card:hover{transform:translateY(-4px);border-color:var(--ldg-orange);}
.ldg-tool-card .tool-icon{font-size:30px;margin-bottom:12px;}
.ldg-tool-card h3{font-size:17px;margin:0 0 8px;color:var(--ldg-text);}
.ldg-tool-card p{font-size:14px;color:var(--ldg-muted);margin:0 0 12px;line-height:1.5;}
.ldg-tool-card .tool-cta{font-family:var(--ldg-display);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ldg-orange);}
.ldg-badge-soon{position:absolute;top:14px;right:14px;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;background:var(--ldg-orange-dim);color:var(--ldg-orange);border:1px solid rgba(255,107,26,.45);padding:4px 10px;border-radius:12px;}

/* Hub cards */
.ldg-hubs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.ldg-hub-card{position:relative;border-radius:var(--ldg-radius);overflow:hidden;border:1px solid var(--ldg-border);aspect-ratio:3/4;display:block;text-decoration:none;transition:transform .2s,border-color .2s;background:var(--ldg-surface);}
.ldg-hub-card img{width:100%;height:100%;object-fit:cover;transition:transform .3s;}
.ldg-hub-card:hover{transform:translateY(-4px);border-color:var(--ldg-green);}
.ldg-hub-card:hover img{transform:scale(1.06);}
.ldg-hub-card .hub-info{position:absolute;left:0;right:0;bottom:0;padding:40px 16px 16px;background:linear-gradient(transparent,rgba(0,0,0,.9));}
.ldg-hub-card .hub-info h3{margin:0 0 4px;font-size:20px;text-transform:uppercase;color:#fff;}
.ldg-hub-card .hub-info span{font-size:13px;color:var(--ldg-muted);}
.ldg-hub-card .hub-go{color:var(--ldg-green);font-family:var(--ldg-display);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;}

/* Guides grid */
.ldg-guides-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.ldg-guide-card{background:var(--ldg-surface);border:1px solid var(--ldg-border);border-radius:var(--ldg-radius);overflow:hidden;text-decoration:none;display:block;transition:transform .2s,border-color .2s;}
.ldg-guide-card:hover{transform:translateY(-4px);border-color:var(--ldg-green);}
.ldg-guide-card .gc-img{aspect-ratio:16/9;overflow:hidden;background:var(--ldg-bg2);}
.ldg-guide-card .gc-img img{width:100%;height:100%;object-fit:cover;}
.ldg-guide-card .gc-body{padding:14px 16px;}
.ldg-guide-card .gc-game{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--ldg-green);}
.ldg-guide-card h3{font-size:15px;line-height:1.35;margin:6px 0 8px;color:var(--ldg-text);font-family:var(--ldg-body);font-weight:600;}
.ldg-guide-card .gc-meta{font-size:12px;color:var(--ldg-muted);}
.ldg-filter-tabs{display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap;}
.ldg-guide-card.hidden{display:none;}

/* Tier spotlight */
.ldg-tier{background:var(--ldg-bg2);border-top:1px solid var(--ldg-border);border-bottom:1px solid var(--ldg-border);}
.ldg-tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}

/* News strip */
.ldg-news-list{display:grid;gap:0;border:1px solid var(--ldg-border);border-radius:var(--ldg-radius);overflow:hidden;}
.ldg-news-row{display:flex;gap:18px;align-items:center;background:var(--ldg-surface);padding:16px 20px;border-bottom:1px solid var(--ldg-border);text-decoration:none;transition:background .15s;}
.ldg-news-row:last-child{border-bottom:none;}
.ldg-news-row:hover{background:var(--ldg-surface2);}
.ldg-news-date{font-family:var(--ldg-display);font-size:12px;font-weight:700;color:var(--ldg-orange);text-transform:uppercase;white-space:nowrap;min-width:86px;}
.ldg-news-row h3{font-size:16px;margin:0;font-family:var(--ldg-body);font-weight:600;color:var(--ldg-text);}
.ldg-news-row:hover h3{color:var(--ldg-green);}

/* Newsletter */
.ldg-newsletter{background:linear-gradient(135deg,rgba(61,220,132,.1),rgba(255,107,26,.08)),var(--ldg-surface);border:1px solid var(--ldg-border);border-radius:16px;padding:44px;text-align:center;}
.ldg-newsletter h2{font-size:clamp(22px,3vw,30px);text-transform:uppercase;margin:0 0 10px;}
.ldg-newsletter p{color:var(--ldg-muted);margin:0 0 24px;}
.ldg-newsletter form{display:flex;gap:10px;max-width:480px;margin:0 auto;}
.ldg-newsletter input[type="email"]{flex:1;padding:13px 18px;font-size:15px;}
.ldg-newsletter .nl-msg{margin-top:14px;font-size:14px;color:var(--ldg-green);min-height:20px;}

/* ============ GAME HUB TEMPLATE ============ */
.ldg-hub-hero{position:relative;padding:90px 0 70px;overflow:hidden;border-bottom:1px solid var(--ldg-border);}
.ldg-hub-hero .hub-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.28;}
.ldg-hub-hero .hub-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,14,19,.55),var(--ldg-bg));}
.ldg-hub-hero .ldg-wrap{position:relative;z-index:2;}
.ldg-hub-hero h1{font-size:clamp(38px,5vw,64px);text-transform:uppercase;margin:0 0 12px;}
.ldg-hub-hero h1 .accent{color:var(--ldg-green);}
.ldg-hub-hero .hub-pitch{color:var(--ldg-muted);font-size:18px;max-width:640px;margin:0 0 24px;}
.ldg-hub-stats{display:flex;gap:28px;flex-wrap:wrap;}
.ldg-hub-stat .stat-num{font-family:var(--ldg-display);font-size:28px;font-weight:700;color:var(--ldg-green);}
.ldg-hub-stat .stat-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ldg-muted);}
.ldg-hub-tools-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.ldg-faq{max-width:800px;}
.ldg-faq details{background:var(--ldg-surface);border:1px solid var(--ldg-border);border-radius:10px;margin-bottom:10px;padding:16px 20px;}
.ldg-faq summary{font-family:var(--ldg-display);font-weight:700;cursor:pointer;color:var(--ldg-text);}
.ldg-faq summary:hover{color:var(--ldg-green);}
.ldg-faq details p{color:var(--ldg-muted);margin:10px 0 0;line-height:1.6;}

/* ============ MOBILE ============ */
@media (max-width:1020px){
  .ldg-hero-grid{grid-template-columns:1fr;}
  .ldg-tools-grid{grid-template-columns:repeat(2,1fr);}
  .ldg-hubs-grid{grid-template-columns:repeat(2,1fr);}
  .ldg-guides-grid{grid-template-columns:repeat(2,1fr);}
  .ldg-tier-grid{grid-template-columns:1fr;}
  .ldg-hub-tools-grid{grid-template-columns:1fr;}
}
@media (max-width:640px){
  .ldg-section{padding:40px 0;}
  .ldg-tools-grid{grid-template-columns:1fr;}
  .ldg-hubs-grid{grid-template-columns:1fr 1fr;}
  .ldg-hub-card{aspect-ratio:1/1;}
  .ldg-guides-grid{grid-template-columns:1fr;}
  .ldg-newsletter{padding:30px 20px;}
  .ldg-newsletter form{flex-direction:column;}
  .ldg-news-row{flex-direction:column;align-items:flex-start;gap:6px;}
  .ldg-pill{min-height:44px;display:inline-flex;align-items:center;}
  .main-navigation .main-nav ul li a{padding:14px;}
}
