/* NovaMC Dark Theme — Semantic UI Override */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700;800;900&family=DM+Sans:wght@300;400;500;600;700&display=swap');

body, html { background: #070b14 !important; color: #eef2f7 !important; font-family: 'DM Sans', sans-serif !important; }
#wrapper, .pusher, .ui.container, main, .ui.segment, .page-content { background: #070b14 !important; }

/* Navbar */
.ui.menu, .ui.menu.fixed, .ui.inverted.menu, nav, .ui.secondary.menu { background: rgba(7,11,20,0.97) !important; border-bottom: 1px solid rgba(245,200,66,0.08) !important; box-shadow: 0 2px 20px rgba(0,0,0,0.4) !important; }
.ui.menu .item, .ui.menu a.item, .ui.secondary.menu .item { color: #9caab8 !important; font-family: 'DM Sans', sans-serif !important; }
.ui.menu .item:hover, .ui.menu a.item:hover, .ui.menu .active.item { color: #f5c842 !important; background: rgba(245,200,66,0.08) !important; }
.ui.menu .header.item, .navbar-brand { font-family: 'Playfair Display', serif !important; color: #f5c842 !important; font-weight: 800 !important; }

/* Cards and segments */
.ui.card, .ui.cards>.card, .ui.segment, .ui.segments, .ui.raised.segment, .ui.stacked.segment,
.ui.message, .card, .panel, .well, .forum-card, .front-page-module { 
  background: #0f1623 !important; color: #eef2f7 !important; 
  border: 1px solid rgba(245,200,66,0.15) !important; border-radius: 12px !important; 
  box-shadow: 0 4px 16px rgba(0,0,0,0.25) !important; 
}
.ui.card>.content, .ui.card>.extra, .ui.segment>.content { background: transparent !important; border-top-color: rgba(245,200,66,0.08) !important; }
.ui.card .header, .ui.card .meta, .ui.card .description { color: #eef2f7 !important; }

/* Headers */
h1, h2, h3, h4, h5, .ui.header, .ui.header .content, .card-header { 
  font-family: 'Playfair Display', serif !important; color: #eef2f7 !important; 
}

/* Banner / Hero area */
.ui.masthead, .banner, .jumbotron, .home-banner, header.masthead, 
div[style*="background-image"], .ui.inverted.segment.masthead {
  background: linear-gradient(180deg, rgba(7,11,20,0.5), #070b14), linear-gradient(135deg, rgba(245,200,66,0.03), rgba(0,200,240,0.03)) !important;
}

/* Buttons */
.ui.button, .ui.primary.button, .ui.positive.button, .ui.blue.button, button.ui.button {
  background: linear-gradient(135deg, #f5c842, #a88a2d) !important; color: #070b14 !important;
  font-family: 'DM Sans', sans-serif !important; font-weight: 700 !important;
  border: none !important; border-radius: 8px !important;
  box-shadow: 0 4px 16px rgba(245,200,66,0.2) !important;
}
.ui.button:hover { transform: translateY(-1px); box-shadow: 0 6px 24px rgba(245,200,66,0.3) !important; }
.ui.inverted.button, .ui.basic.button { background: transparent !important; color: #f5c842 !important; border: 1px solid rgba(245,200,66,0.25) !important; }
.ui.red.button, .ui.negative.button { background: linear-gradient(135deg, #ef4444, #dc2626) !important; color: #fff !important; }

/* Links */
a, .ui.link, a:visited { color: #f5c842 !important; }
a:hover { opacity: 0.85; }

/* Forms */
.ui.form input, .ui.form textarea, .ui.form select, .ui.input>input, .ui.selection.dropdown,
input[type="text"], input[type="email"], input[type="password"], textarea, select {
  background: #1a2438 !important; border: 1px solid rgba(245,200,66,0.15) !important;
  color: #eef2f7 !important; border-radius: 8px !important;
}
.ui.form input:focus, .ui.input>input:focus, textarea:focus { border-color: #f5c842 !important; box-shadow: 0 0 0 3px rgba(245,200,66,0.1) !important; }
.ui.form .field>label, label { color: #9caab8 !important; }

/* Dropdown */
.ui.dropdown .menu, .ui.selection.dropdown .menu { background: #0f1623 !important; border-color: rgba(245,200,66,0.15) !important; }
.ui.dropdown .menu>.item { color: #9caab8 !important; border-color: rgba(245,200,66,0.08) !important; }
.ui.dropdown .menu>.item:hover { background: #151d2e !important; color: #f5c842 !important; }

/* Tables */
.ui.table, table { background: #0f1623 !important; color: #eef2f7 !important; border-color: rgba(245,200,66,0.08) !important; }
.ui.table thead th { background: #1a2438 !important; color: #f5c842 !important; border-color: rgba(245,200,66,0.08) !important; font-family: 'DM Sans', sans-serif !important; text-transform: uppercase; font-size: 0.8rem; letter-spacing: 0.5px; }
.ui.table td { border-color: rgba(245,200,66,0.08) !important; color: #9caab8 !important; }
.ui.table tr:hover td { background: #151d2e !important; }
.ui.celled.table tr td, .ui.celled.table tr th { border-color: rgba(245,200,66,0.08) !important; }

/* Labels / Badges */
.ui.label { border-radius: 6px !important; }
.ui.blue.label { background: #f5c842 !important; color: #070b14 !important; }
.ui.green.label { background: #22c55e !important; }
.ui.red.label { background: #ef4444 !important; }
.ui.orange.label { background: #f97316 !important; }

/* Sidebar widgets */
.ui.sidebar, .sidebar, aside { background: transparent !important; }

/* Modal */
.ui.modal, .ui.modal>.content, .ui.modal>.header, .ui.modal>.actions {
  background: #0f1623 !important; color: #eef2f7 !important;
  border-color: rgba(245,200,66,0.15) !important;
}

/* Pagination */
.ui.pagination.menu .item { background: #0f1623 !important; color: #9caab8 !important; border-color: rgba(245,200,66,0.15) !important; }
.ui.pagination.menu .active.item { background: #f5c842 !important; color: #070b14 !important; }

/* Alerts / Messages */
.ui.info.message { background: rgba(0,200,240,0.1) !important; color: #00c8f0 !important; border-left: 4px solid #00c8f0 !important; box-shadow: none !important; }
.ui.success.message { background: rgba(34,197,94,0.1) !important; color: #22c55e !important; border-left: 4px solid #22c55e !important; box-shadow: none !important; }
.ui.error.message, .ui.negative.message { background: rgba(239,68,68,0.1) !important; color: #ef4444 !important; border-left: 4px solid #ef4444 !important; box-shadow: none !important; }
.ui.warning.message { background: rgba(245,200,66,0.1) !important; color: #f5c842 !important; border-left: 4px solid #f5c842 !important; box-shadow: none !important; }

/* Breadcrumb */
.ui.breadcrumb { background: transparent !important; }
.ui.breadcrumb a { color: #f5c842 !important; }
.ui.breadcrumb .active.section { color: #6b7a8d !important; }

/* Footer */
footer, .footer, #footer, .ui.inverted.vertical.segment { background: rgba(0,0,0,0.4) !important; border-top: 1px solid rgba(245,200,66,0.08) !important; }

/* Popup */
.ui.popup { background: #0f1623 !important; color: #eef2f7 !important; border-color: rgba(245,200,66,0.15) !important; }
.ui.popup::before { background: #0f1623 !important; }

/* Text colors */
.text-dark, .ui.text { color: #eef2f7 !important; }
.text-muted, .ui.disabled, .description, .meta { color: #6b7a8d !important; }
p, span, div, li { color: inherit; }

/* Cookie consent override */
.cc-banner, .cookie-consent, #cookie-consent { background: #0f1623 !important; border-top: 1px solid rgba(245,200,66,0.15) !important; }

/* Scrollbar */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #070b14; }
::-webkit-scrollbar-thumb { background: rgba(245,200,66,0.15); border-radius: 3px; }

/* Dividers */
.ui.divider, hr { border-color: rgba(245,200,66,0.08) !important; }

/* Selection */
::selection { background: rgba(245,200,66,0.25); color: #fff; }

/* IE warning hide */
.ui.message:has(> p:contains("Internet Explorer")) { display: none !important; }

/* Image styling */
.ui.avatar.image, img.avatar { border-radius: 10px !important; border: 2px solid rgba(245,200,66,0.15) !important; }

/* Forum specific */
.forum-topic:hover, .topic-row:hover { background: #151d2e !important; }
.ui.list .item, .ui.list>.item { border-color: rgba(245,200,66,0.08) !important; }

/* Loading dimmer */
.ui.dimmer { background: rgba(7,11,20,0.85) !important; }

/* Tabs */
.ui.tabular.menu .item { color: #6b7a8d !important; border-color: rgba(245,200,66,0.08) !important; }
.ui.tabular.menu .active.item { color: #f5c842 !important; background: #0f1623 !important; border-color: rgba(245,200,66,0.15) !important; }

/* Stats widget right sidebar fix */
.right.column .ui.segment, .sidebar .ui.segment { margin-bottom: 16px !important; }

/* Fix low contrast text */
.ui.segment p, .ui.segment span, .ui.segment div, .ui.card .content span,
.ui.list .item, .ui.statistic .label, .ui.statistic .value,
.online-staff span, .online-users span, .statistics span,
.ui.segment .content, .right.column span, .right.column div,
.sidebar span, .sidebar div, aside span, aside div {
  color: #9caab8 !important;
}
.ui.segment .header, .ui.segment h3, .ui.segment h4, .right.column .header {
  color: #eef2f7 !important;
}

/* Fix staff/users widget text */
.ui.segment .ui.list .content, .ui.segment .ui.list .description,
.ui.segment p, .ui.segment > div, .ui.segment small,
.ui.segment .sub, .ui.segment .meta {
  color: #eef2f7 !important;
}

/* ─── Contrast Fixes v2 ─────────────────────────────────── */
.ui.segment p, .ui.segment span, .ui.segment div,
.ui.list .item, .ui.list .content, .ui.list .description,
.ui.statistic .label, .ui.statistic .value,
.ui.segment .content, .right.column span, .right.column div,
.right.column p, aside p, aside span, aside div,
.sidebar span, .sidebar div, .sidebar p {
  color: #c8d0da !important;
}
.ui.segment .header, .ui.segment h3, .ui.segment h4,
.right.column .header, .right.column h3, .right.column h4 {
  color: #eef2f7 !important;
}
.ui.segment .ui.list .item .content a { color: #f5c842 !important; }
.ui.segment .sub.header, .ui.sub.header { color: #9caab8 !important; }
/* Topic list */
.topic-count, .post-count, .forum-description { color: #9caab8 !important; }
/* Admin panel fixes */
.ui.segment.padded, .ui.padded.segment { background: #0f1623 !important; }
.ui.grid .column { color: #c8d0da !important; }
/* Category headers */
.forum-category-title, .category-header { color: #f5c842 !important; }

/* Back to Home button in forum nav */

/* Add Home link to navbar - hide default then prepend */
.ui.secondary.menu .item:first-child::before,
.ui.menu .item[href="/forum/"]:first-of-type::before {
  content: '⚡ Main Site  |  ';
  color: #f5c842;
  font-weight: 600;
}

/* Hide server status banner on forum */
.ui.segment:has(> p > em), .server-status-banner,
.ui.segment p em { }
div[style*="text-align: center"] > p > em { display: none; }
.ui.padded.segment:first-of-type { display: none; }

/* Hide server status widget on forum homepage */
.ui.header + span[data-position] { display: none !important; }
h4.ui.header:has(+ span[data-position]) { display: none !important; }
