@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Space+Grotesk:wght@500;600&display=swap');
:root {
  --industrial-dark: #0F172A;
  --brand-mint: #99D3AD;
  --brand-green: #5ABD84;
  --brand-teal: #4EB57E;
  --brand-dark: #2D7A56;
  --brand-hover: #3D9468;
  --brand-black: #0A0A0A;
}
body { font-family: 'Inter', system-ui, sans-serif; }
.heading-font { font-family: 'Space Grotesk', 'Inter', system-ui, sans-serif; font-weight: 600; letter-spacing: -0.025em; }
.section-header { font-size: 2.25rem; line-height: 1.05; font-weight: 700; letter-spacing: -0.04em; }
.nav-link { transition: color 0.1s ease; }
.nav-link:hover, .nav-active { color: var(--brand-teal); font-weight: 600; }
.industrial-card { transition: transform .2s, box-shadow .2s; border: 1px solid #E2E8F0; }
.industrial-card:hover { transform: translateY(-1px); box-shadow: 0 10px 15px -3px rgb(15 23 42 / .1); }
.operator-quote { border-left: 4px solid var(--brand-green); }
.rugged-button { transition: all .1s ease; font-weight: 600; }
.rugged-button:hover { transform: translateY(-1px); }
.text-brand { color: var(--brand-teal); }
.text-brand-mint { color: var(--brand-mint); }
.text-brand-dark { color: var(--brand-dark); }
.bg-brand { background-color: var(--brand-green); }
.bg-brand-dark { background-color: var(--brand-dark); }
.bg-brand-black { background-color: var(--brand-black); }
.bg-brand-light { background-color: #E8F7EF; }
.bg-brand-mint { background-color: var(--brand-mint); }
.border-brand { border-color: var(--brand-green); }
.brand-cta { background: linear-gradient(180deg, var(--brand-mint) 0%, var(--brand-teal) 100%); color: var(--brand-black); }
.brand-cta:hover { background: linear-gradient(180deg, #8ACDA4 0%, var(--brand-hover) 100%); }
.control-room { box-shadow: inset 0 0 0 1px rgba(15,23,42,.08); }
.plant-photo { filter: contrast(1.05) saturate(.95); }
.prose-content h2 { font-size: 1.35rem; font-weight: 700; margin: 2rem 0 .75rem; color: #0f172a; }
.prose-content h3 { font-size: 1.1rem; font-weight: 600; margin: 1.5rem 0 .5rem; color: #1e293b; }
.prose-content p, .prose-content li { color: #475569; line-height: 1.65; font-size: .95rem; }
.prose-content ul { margin: .75rem 0 1rem 1.25rem; list-style: disc; }
.prose-content table { width: 100%; border-collapse: collapse; font-size: .85rem; margin: 1rem 0; }
.prose-content th, .prose-content td { border: 1px solid #e2e8f0; padding: .6rem .75rem; text-align: left; }
.prose-content th { background: #f8fafc; font-weight: 600; }
.breadcrumb { font-size: .75rem; color: #64748b; }
.breadcrumb a { color: var(--brand-dark); }
.hub-tab { padding: .65rem 1.25rem; border-radius: .5rem; font-size: .875rem; font-weight: 600; color: #475569; border: 1px solid #e2e8f0; background: #fff; transition: all .15s ease; }
.hub-tab:hover { border-color: var(--brand-green); color: var(--brand-dark); }
.hub-tab.active { background: var(--brand-dark); color: #fff; border-color: var(--brand-dark); }
.module-pane { display: none; }
.module-pane.active { display: block; }
.lb-rank-1 { background: linear-gradient(90deg, #fef3c7, #fff); }
.lb-rank-2 { background: linear-gradient(90deg, #f1f5f9, #fff); }
.lb-rank-3 { background: linear-gradient(90deg, #ffedd5, #fff); }
.af-game-shell { background: linear-gradient(165deg, #0f172a 0%, #1e293b 50%, #0f172a 100%); border: 1px solid rgba(153,211,173,0.2); box-shadow: 0 20px 50px rgba(15,23,42,0.35); }
.af-game-toolbar { background: rgba(15,23,42,0.6); border: 1px solid rgba(148,163,184,0.15); backdrop-filter: blur(8px); }
.af-stat-pill { background: rgba(30,41,59,0.8); border: 1px solid rgba(153,211,173,0.2); }
.af-frame-wrap { box-shadow: inset 0 0 0 1px rgba(153,211,173,0.12), 0 0 40px rgba(90,189,132,0.08); }
.sos-icon { border: 4px solid #0a0a0a; border-radius: 22%; box-shadow: 0 8px 24px rgba(0,0,0,0.2); }
.news-card { transition: transform .15s ease, box-shadow .15s ease; }
.news-card:hover { transform: translateY(-2px); box-shadow: 0 12px 24px rgba(15,23,42,0.08); }
.sos-hero-bg { background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #422006 100%); }
.sos-badge { background: linear-gradient(180deg, #fde047, #eab308); color: #0a0a0a; }
