/* ============================================================
   PC-Repair.gr — Dark Theme Override
   Matches landing page: #000 bg / #00d4ff accent / #7c3aed accent2
   ============================================================ */

:root {
  --pcr-accent:   #00d4ff;
  --pcr-accent2:  #7c3aed;
  --pcr-bg:       #000000;
  --pcr-surface:  #0a0a0f;
  --pcr-card:     rgba(255,255,255,0.04);
  --pcr-border:   rgba(255,255,255,0.08);
  --pcr-text:     #f0f0f0;
  --pcr-dim:      rgba(255,255,255,0.60);
}

/* ── BASE ── */
html, body, #neve_body {
  background-color: var(--pcr-bg) !important;
  color: var(--pcr-text) !important;
}
*, *::before, *::after { box-sizing: border-box; }

/* ── TYPOGRAPHY ── */
h1, h2, h3, h4, h5, h6,
.nv-page-title,
.blog-entry-title,
.entry-title,
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4 {
  color: var(--pcr-text) !important;
}
p, li, span, td, th, label, cite, blockquote,
.entry-content p,
.entry-content li,
.excerpt-wrap,
.nv-meta-list,
.entry-date,
.meta,
.author {
  color: var(--pcr-dim) !important;
}
a { color: var(--pcr-accent) !important; text-decoration: none !important; }
a:hover { color: #fff !important; }

/* ── HEADER ── */
.hfg_header,
.hfg_header .site-header,
.header--row,
.header--row-inner,
.header-main-inner,
.nv-navbar,
nav.header--row {
  background-color: rgba(0,0,0,0.95) !important;
  border-bottom: 1px solid var(--pcr-border) !important;
  backdrop-filter: blur(12px) !important;
  box-shadow: none !important;
}
.header--row.nv-navbar {
  background: rgba(0,0,0,0.92) !important;
}

/* Logo */
.site-logo a,
.nv-title-tagline-wrap a,
.brand .nv-title-tagline-wrap {
  color: var(--pcr-accent) !important;
}
.site-title { color: var(--pcr-accent) !important; font-weight: 800 !important; }
.site-description { color: var(--pcr-dim) !important; font-size: 0.8rem !important; }

/* Navigation links */
.primary-menu-ul > .menu-item > a,
.primary-menu-ul > li > a,
#primary-menu > li > a,
.nv-nav-wrap ul li a {
  color: var(--pcr-text) !important;
  font-weight: 500 !important;
  transition: color 0.2s !important;
}
.primary-menu-ul > .menu-item > a:hover,
.primary-menu-ul > .nv-active > a,
.nv-nav-wrap ul li.nv-active > a {
  color: var(--pcr-accent) !important;
}

/* Dropdown menus */
.sub-menu, .dropdown-menu {
  background: #0d0d14 !important;
  border: 1px solid var(--pcr-border) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.6) !important;
}
.sub-menu li a, .dropdown-menu li a {
  color: var(--pcr-dim) !important;
}
.sub-menu li a:hover { color: var(--pcr-accent) !important; background: rgba(0,212,255,0.06) !important; }

/* Mobile menu */
.header-menu-sidebar,
.header-menu-sidebar-inner {
  background: #050508 !important;
  border-left: 1px solid var(--pcr-border) !important;
}
.header-menu-sidebar-overlay { background: rgba(0,0,0,0.7) !important; }
.header-menu-sidebar ul li a { color: var(--pcr-text) !important; }
.nav-toggle-wrapper .menu-icon, .nav-toggle-wrapper .menu-icon::before, .nav-toggle-wrapper .menu-icon::after,
button.menu-mobile-toggle span { background: var(--pcr-text) !important; }

/* ── PAGE TITLE AREA ── */
.nv-page-title-wrap,
.nv-big-title {
  background: var(--pcr-bg) !important;
  border-bottom: 1px solid var(--pcr-border) !important;
  padding: 48px 0 32px !important;
}
.nv-page-title {
  color: var(--pcr-text) !important;
  font-size: clamp(1.8rem, 3.5vw, 2.8rem) !important;
  font-weight: 800 !important;
}

/* ── CONTENT AREAS ── */
.container,
.nv-content-wrap,
.nv-single-page-wrap,
.single-page-container,
.entry-content,
#content,
.site-main,
main {
  background-color: var(--pcr-bg) !important;
}
.entry-content { color: var(--pcr-dim) !important; }

/* Gutenberg blocks — paragraphs etc */
.wp-block-group,
.wp-block-cover,
.wp-block-columns {
  color: var(--pcr-text) !important;
}
.wp-block-group__inner-container { background: transparent !important; }

/* Tables */
.wp-block-table table,
.entry-content table {
  background: var(--pcr-card) !important;
  border-color: var(--pcr-border) !important;
  color: var(--pcr-text) !important;
}
.wp-block-table td, .wp-block-table th,
.entry-content td, .entry-content th {
  border-color: var(--pcr-border) !important;
  color: var(--pcr-dim) !important;
}
.wp-block-table thead th { color: var(--pcr-text) !important; background: rgba(0,212,255,0.07) !important; }

/* Lists */
.entry-content ul li, .entry-content ol li { color: var(--pcr-dim) !important; }

/* Separators */
hr, .wp-block-separator { border-color: var(--pcr-border) !important; }

/* Pullquotes / Blockquotes */
blockquote, .wp-block-pullquote {
  border-left: 3px solid var(--pcr-accent) !important;
  background: rgba(0,212,255,0.04) !important;
  color: var(--pcr-dim) !important;
}

/* ── BLOG LISTING ── */
.nv-index-posts,
.blog-posts-wrap { background: var(--pcr-bg) !important; }

.nv-non-grid-article,
article.post,
.nv-ft-wrap,
.alternative-post {
  background: var(--pcr-card) !important;
  border: 1px solid var(--pcr-border) !important;
  border-radius: 12px !important;
  margin-bottom: 24px !important;
  transition: border-color 0.3s, transform 0.3s !important;
  overflow: hidden !important;
}
.nv-non-grid-article:hover,
article.post:hover {
  border-color: rgba(0,212,255,0.35) !important;
  transform: translateY(-2px) !important;
}
.article-content-col,
.nv-ft-wrap .article-content-col {
  background: transparent !important;
  padding: 24px !important;
}
.blog-entry-title a,
.entry-title a {
  color: var(--pcr-text) !important;
  font-weight: 700 !important;
}
.blog-entry-title a:hover, .entry-title a:hover { color: var(--pcr-accent) !important; }
.excerpt-wrap p { color: var(--pcr-dim) !important; }
.nv-meta-list, .nv-meta-list li, .nv-meta-list a,
.entry-date, .byline, .meta { color: rgba(255,255,255,0.4) !important; font-size: 0.82rem !important; }
.nv-meta-list a:hover { color: var(--pcr-accent) !important; }

/* Read more */
.read-more-link, a.more-link {
  color: var(--pcr-accent) !important;
  font-weight: 600 !important;
}
.read-more-link:hover { color: #fff !important; }

/* ── SINGLE POST ── */
.single-post article,
.page article {
  background: var(--pcr-bg) !important;
}
.entry-header { margin-bottom: 32px !important; }
.entry-content strong { color: var(--pcr-text) !important; }
.entry-content em { color: rgba(255,255,255,0.75) !important; }

/* Post navigation */
.post-navigation { border-top: 1px solid var(--pcr-border) !important; }
.post-navigation a { color: var(--pcr-accent) !important; }
.nav-previous, .nav-next { background: var(--pcr-card) !important; border-radius: 8px !important; padding: 12px 20px !important; }

/* ── BUTTONS ── */
.wp-block-button__link,
.wp-block-button .wp-element-button,
a.wp-block-button__link,
button, .button, input[type="submit"],
.nv-btn, .btn {
  background: linear-gradient(135deg, var(--pcr-accent), var(--pcr-accent2)) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 12px 28px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: opacity 0.2s, transform 0.2s !important;
}
.wp-block-button__link:hover, button:hover, input[type="submit"]:hover {
  opacity: 0.88 !important;
  transform: translateY(-1px) !important;
  color: #fff !important;
}
/* Outlined button variant */
.wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent !important;
  border: 2px solid var(--pcr-accent) !important;
  color: var(--pcr-accent) !important;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: var(--pcr-accent) !important;
  color: #000 !important;
}

/* ── FORMS (Contact) ── */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="search"],
input[type="number"],
textarea,
select {
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid var(--pcr-border) !important;
  border-radius: 6px !important;
  color: var(--pcr-text) !important;
  padding: 12px 16px !important;
  width: 100% !important;
  transition: border-color 0.2s !important;
}
input:focus, textarea:focus, select:focus {
  border-color: var(--pcr-accent) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(0,212,255,0.12) !important;
}
input::placeholder, textarea::placeholder { color: rgba(255,255,255,0.3) !important; }
label { color: var(--pcr-dim) !important; font-size: 0.9rem !important; margin-bottom: 6px !important; display: block !important; }

/* WPForms / CF7 */
.wpforms-container, .wpcf7 { color: var(--pcr-text) !important; }
.wpforms-form .wpforms-field-label { color: var(--pcr-dim) !important; }
.wpcf7-form p { color: var(--pcr-dim) !important; }

/* ── SIDEBAR ── */
.nv-sidebar-wrap,
.sidebar, aside {
  background: var(--pcr-bg) !important;
}
.widget { 
  background: var(--pcr-card) !important; 
  border: 1px solid var(--pcr-border) !important; 
  border-radius: 10px !important; 
  padding: 24px !important;
  margin-bottom: 20px !important;
}
.widget-title { color: var(--pcr-text) !important; font-size: 0.75rem !important; text-transform: uppercase !important; letter-spacing: 2px !important; color: var(--pcr-accent) !important; margin-bottom: 16px !important; }
.widget ul li a { color: var(--pcr-dim) !important; }
.widget ul li a:hover { color: var(--pcr-accent) !important; }

/* ── PAGINATION ── */
.nav-links a,
.page-numbers a,
.page-numbers span {
  background: var(--pcr-card) !important;
  border: 1px solid var(--pcr-border) !important;
  color: var(--pcr-text) !important;
  border-radius: 6px !important;
  padding: 8px 14px !important;
}
.page-numbers.current, .page-numbers a:hover { background: var(--pcr-accent) !important; color: #000 !important; border-color: var(--pcr-accent) !important; }

/* ── BREADCRUMBS ── */
.nv-breadcrumbs, .breadcrumbs, .rank-math-breadcrumb {
  background: transparent !important;
  color: var(--pcr-dim) !important;
}
.rank-math-breadcrumb a { color: var(--pcr-accent) !important; }
.rank-math-breadcrumb .separator { color: var(--pcr-border) !important; }

/* ── FOOTER ── */
.hfg_footer,
.footer--row,
.footer--row-inner,
.nv-footer-content,
.footer-content-wrap,
.site-footer {
  background-color: #000 !important;
  border-top: 1px solid var(--pcr-border) !important;
  color: var(--pcr-dim) !important;
}
.hfg_footer a { color: var(--pcr-dim) !important; }
.hfg_footer a:hover { color: var(--pcr-accent) !important; }
.footer--row-inner p, .footer--row-inner span { color: var(--pcr-dim) !important; }
.footer-credit { color: rgba(255,255,255,0.3) !important; font-size: 0.82rem !important; }

/* ── MISCELLANEOUS ── */
/* Tags and categories */
.post-tags a, .cat-links a, .tags-links a,
.wp-block-post-terms a {
  background: rgba(0,212,255,0.08) !important;
  border: 1px solid rgba(0,212,255,0.2) !important;
  color: var(--pcr-accent) !important;
  border-radius: 20px !important;
  padding: 3px 12px !important;
  font-size: 0.8rem !important;
  display: inline-block !important;
}
.post-tags a:hover, .cat-links a:hover { background: rgba(0,212,255,0.18) !important; color: #fff !important; }

/* Search */
.nv-search-form-wrap, .search-form { background: var(--pcr-card) !important; border: 1px solid var(--pcr-border) !important; border-radius: 6px !important; }

/* Images */
.nv-post-thumbnail-wrap img, .wp-post-image { border-radius: 8px !important; }

/* Utility: gradient text for important headings */
.nv-page-title { 
  background: linear-gradient(135deg, #fff 40%, var(--pcr-accent) 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}

/* Scrollbar */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #000; }
::-webkit-scrollbar-thumb { background: rgba(0,212,255,0.3); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--pcr-accent); }

/* ── MOBILE POLISH (service pages) ── */
@media (max-width: 768px) {
  .nv-page-title { font-size: clamp(1.5rem,6vw,2.2rem) !important; }
  .nv-page-title-wrap { padding: 24px 16px 20px !important; }
  .nv-content-wrap, .entry-content { padding: 0 4px !important; }
  .wp-block-table { overflow-x: auto; display: block; }
  .wp-block-table table { min-width: 500px; }
  .nv-non-grid-article { border-radius: 10px !important; }
  .article-content-col { padding: 16px !important; }
  .nav-previous, .nav-next { padding: 10px 14px !important; font-size: 0.85rem; }
  .trust-card { flex-direction: column; gap: 12px; padding: 20px !important; }
  /* ensure no horizontal overflow */
  body { overflow-x: hidden; }
  img { max-width: 100% !important; height: auto !important; }
}

/* ── COMMENTS SECTION ── */
#comments,
.comments-area,
.comment-respond,
#respond {
  background: var(--pcr-card) !important;
  border: 1px solid var(--pcr-border) !important;
  border-radius: 10px !important;
  padding: 24px !important;
  margin-top: 32px !important;
  color: var(--pcr-text) !important;
}

/* Comments title */
#comments h2,
.comments-title,
#reply-title,
.comment-reply-title {
  color: var(--pcr-text) !important;
  font-size: 1.2rem !important;
  margin-bottom: 20px !important;
}
.comment-reply-title small a {
  color: var(--pcr-accent) !important;
  font-size: 0.8rem !important;
}

/* Comment list items */
.comment-list,
.comment-list li,
.comment-body,
.comment-meta {
  background: transparent !important;
  color: var(--pcr-dim) !important;
}
.comment-author .fn,
.comment-author .fn a {
  color: var(--pcr-text) !important;
}
.comment-metadata a,
.comment-metadata time {
  color: rgba(255,255,255,0.35) !important;
  font-size: 0.8rem !important;
}
.comment-content p {
  color: var(--pcr-dim) !important;
}
.reply a {
  color: var(--pcr-accent) !important;
  font-size: 0.85rem !important;
}

/* Avatar */
.comment-author img.avatar {
  border-radius: 50% !important;
  border: 2px solid var(--pcr-border) !important;
}

/* Comment form inputs */
.comment-form #comment,
.comment-form #author,
.comment-form #email,
.comment-form #url,
#respond input[type="text"],
#respond input[type="email"],
#respond input[type="url"],
#respond textarea {
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid var(--pcr-border) !important;
  border-radius: 6px !important;
  color: var(--pcr-text) !important;
  width: 100% !important;
  padding: 10px 14px !important;
}
#respond input[type="text"]:focus,
#respond input[type="email"]:focus,
#respond input[type="url"]:focus,
#respond textarea:focus,
.comment-form #comment:focus {
  border-color: var(--pcr-accent) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(0,212,255,0.12) !important;
}

/* Comment form labels */
.comment-form label,
#respond label {
  color: var(--pcr-dim) !important;
  font-size: 0.85rem !important;
  margin-bottom: 4px !important;
  display: block !important;
}

/* Submit button */
.comment-form #submit,
#respond input[type="submit"] {
  background: linear-gradient(135deg, var(--pcr-accent), var(--pcr-accent2)) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 12px 28px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: opacity 0.2s !important;
}
.comment-form #submit:hover,
#respond input[type="submit"]:hover {
  opacity: 0.88 !important;
}

/* Must log in notice */
.must-log-in,
.logged-in-as {
  color: var(--pcr-dim) !important;
}
.logged-in-as a,
.must-log-in a {
  color: var(--pcr-accent) !important;
}

/* Comment form notes */
.comment-notes {
  color: rgba(255,255,255,0.35) !important;
  font-size: 0.8rem !important;
}

/* ── COMMENTS SECTION ── */
#comments,
.comments-area,
.comment-respond,
#respond {
  background: var(--pcr-card) !important;
  border: 1px solid var(--pcr-border) !important;
  border-radius: 10px !important;
  padding: 24px !important;
  margin-top: 32px !important;
  color: var(--pcr-text) !important;
}

/* Comments title */
#comments h2,
.comments-title,
#reply-title,
.comment-reply-title {
  color: var(--pcr-text) !important;
  font-size: 1.2rem !important;
  margin-bottom: 20px !important;
}
.comment-reply-title small a {
  color: var(--pcr-accent) !important;
  font-size: 0.8rem !important;
}

/* Comment list items */
.comment-list,
.comment-list li,
.comment-body,
.comment-meta {
  background: transparent !important;
  color: var(--pcr-dim) !important;
}
.comment-author .fn,
.comment-author .fn a {
  color: var(--pcr-text) !important;
}
.comment-metadata a,
.comment-metadata time {
  color: rgba(255,255,255,0.35) !important;
  font-size: 0.8rem !important;
}
.comment-content p {
  color: var(--pcr-dim) !important;
}
.reply a {
  color: var(--pcr-accent) !important;
  font-size: 0.85rem !important;
}

/* Avatar */
.comment-author img.avatar {
  border-radius: 50% !important;
  border: 2px solid var(--pcr-border) !important;
}

/* Comment form inputs */
.comment-form #comment,
.comment-form #author,
.comment-form #email,
.comment-form #url,
#respond input[type="text"],
#respond input[type="email"],
#respond input[type="url"],
#respond textarea {
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid var(--pcr-border) !important;
  border-radius: 6px !important;
  color: var(--pcr-text) !important;
  width: 100% !important;
  padding: 10px 14px !important;
}
#respond input[type="text"]:focus,
#respond input[type="email"]:focus,
#respond input[type="url"]:focus,
#respond textarea:focus,
.comment-form #comment:focus {
  border-color: var(--pcr-accent) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(0,212,255,0.12) !important;
}

/* Comment form labels */
.comment-form label,
#respond label {
  color: var(--pcr-dim) !important;
  font-size: 0.85rem !important;
  margin-bottom: 4px !important;
  display: block !important;
}

/* Submit button */
.comment-form #submit,
#respond input[type="submit"] {
  background: linear-gradient(135deg, var(--pcr-accent), var(--pcr-accent2)) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 12px 28px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: opacity 0.2s !important;
}
.comment-form #submit:hover,
#respond input[type="submit"]:hover {
  opacity: 0.88 !important;
}

/* Must log in notice */
.must-log-in,
.logged-in-as {
  color: var(--pcr-dim) !important;
}
.logged-in-as a,
.must-log-in a {
  color: var(--pcr-accent) !important;
}

/* Comment form notes */
.comment-notes {
  color: rgba(255,255,255,0.35) !important;
  font-size: 0.8rem !important;
}
