/**
 * Dark mode for the public Geology365 front site (geoheader / geofooter).
 * Applied when html has .theme-dark (cookie + nav toggle).
 */

html.theme-dark {
  color-scheme: dark;
}

html.theme-dark body.geo-front-site,
body.geo-front-site.theme-dark {
  background-color: #0f1419 !important;
  color: #cbd5e1 !important;
}

/* ----- Page loader ----- */
html.theme-dark .page-loader {
  background-color: #0f1419 !important;
}

html.theme-dark .cube-loader .loader-element {
  background-color: #5BC5C5 !important;
}

/* ----- Header chrome ----- */
html.theme-dark .geo-site-header {
  background: #1a222d !important;
  border-bottom-color: #2d3748 !important;
}

html.theme-dark .geo-site-header.is-scrolled {
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.35) !important;
}

html.theme-dark .geo-site-nav-toggle {
  color: #e2e8f0 !important;
}

html.theme-dark .geo-site-nav-list a {
  color: #cbd5e1 !important;
}

html.theme-dark .geo-site-nav-list a:hover,
html.theme-dark .geo-site-nav-list a:focus {
  color: #5BC5C5 !important;
  background: rgba(91, 197, 197, 0.12) !important;
}

html.theme-dark .geo-site-nav-list a.is-active {
  color: #5BC5C5 !important;
  background: rgba(91, 197, 197, 0.16) !important;
  box-shadow: inset 0 -2px 0 #5BC5C5 !important;
}

html.theme-dark .geo-site-nav-list a.is-active:hover,
html.theme-dark .geo-site-nav-list a.is-active:focus {
  color: #7dd8d8 !important;
  background: rgba(91, 197, 197, 0.2) !important;
}

html.theme-dark .geo-site-nav-list a.geo-nav-cta-login {
  border-color: #5BC5C5 !important;
  color: #5BC5C5 !important;
  background: transparent !important;
}

html.theme-dark .geo-site-nav-list a.geo-nav-cta-login:hover,
html.theme-dark .geo-site-nav-list a.geo-nav-cta-login:focus {
  background: rgba(91, 197, 197, 0.12) !important;
  color: #7dd8d8 !important;
}

html.theme-dark .geo-site-nav-list a.geo-nav-cta-login.is-active {
  background: rgba(91, 197, 197, 0.16) !important;
  color: #5BC5C5 !important;
}

html.theme-dark .geo-site-nav-utils {
  border-left-color: #2d3748 !important;
}

html.theme-dark .geo-site-nav-list a.geo-theme-toggle {
  border-color: #2d3748 !important;
  background: #141a22 !important;
  color: #e2e8f0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

html.theme-dark .geo-site-nav-list a.geo-theme-toggle:hover,
html.theme-dark .geo-site-nav-list a.geo-theme-toggle:focus {
  border-color: #5BC5C5 !important;
  background: rgba(91, 197, 197, 0.12) !important;
  color: #5BC5C5 !important;
  box-shadow: none !important;
}

html.theme-dark .geo-lang-trigger {
  border-color: #2d3748 !important;
  background: #141a22 !important;
  color: #e2e8f0 !important;
}

html.theme-dark .geo-lang-trigger:hover,
html.theme-dark .geo-lang-trigger:focus,
html.theme-dark .geo-lang-switcher.is-open .geo-lang-trigger {
  border-color: #5BC5C5 !important;
  background: rgba(91, 197, 197, 0.12) !important;
  color: #5BC5C5 !important;
}

html.theme-dark .geo-lang-panel {
  background: #1a222d !important;
  border-color: #2d3748 !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.45) !important;
}

html.theme-dark .geo-lang-panel-title {
  color: #94a3b8 !important;
}

html.theme-dark .geo-lang-option {
  color: #e2e8f0 !important;
}

html.theme-dark .geo-lang-option:hover,
html.theme-dark .geo-lang-option:focus {
  background: rgba(91, 197, 197, 0.12) !important;
  color: #5BC5C5 !important;
}

html.theme-dark .geo-lang-option.is-active {
  background: rgba(91, 197, 197, 0.16) !important;
  color: #5BC5C5 !important;
}

html.theme-dark .geo-lang-code {
  color: #94a3b8 !important;
}

html.theme-dark .geo-lang-option.is-active .geo-lang-code {
  color: #5BC5C5 !important;
}

@media (max-width: 1199px) {
  html.theme-dark .geo-site-nav {
    background: #1a222d !important;
    border-bottom-color: #2d3748 !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35) !important;
  }

  html.theme-dark .geo-site-nav-utils {
    border-top-color: #2d3748 !important;
  }
}

/* ----- Shared theme.php surfaces ----- */
html.theme-dark .section-title {
  color: #e2e8f0 !important;
}

html.theme-dark .section-text,
html.theme-dark .entity-text,
html.theme-dark p {
  color: #94a3b8;
}

html.theme-dark .section-bordered {
  background-color: #1a222d !important;
  border-color: #2d3748 !important;
}

html.theme-dark .section-dark {
  background: #141a22 !important;
}

html.theme-dark .section-darken {
  background: #0f1419 !important;
}

html.theme-dark .bg-w,
html.theme-dark .bg-white {
  background: #1a222d !important;
}

html.theme-dark .bg-lighten {
  background-color: #141a22 !important;
}

html.theme-dark .form-control,
html.theme-dark .input-group-text,
html.theme-dark select.form-control,
html.theme-dark textarea.form-control {
  background-color: #141a22 !important;
  border-color: #2d3748 !important;
  color: #e2e8f0 !important;
}

html.theme-dark .form-control:focus {
  border-color: #5BC5C5 !important;
  box-shadow: 0 0 0 0.15rem rgba(91, 197, 197, 0.25) !important;
}

html.theme-dark .form-control option {
  background: #1a222d;
  color: #e2e8f0;
}

html.theme-dark .btn-theme-gray {
  background-color: #232b36 !important;
  border-color: #2d3748 !important;
  color: #e2e8f0 !important;
}

html.theme-dark .btn-theme-gray:hover,
html.theme-dark .btn-theme-gray:focus {
  background-color: #159a9c !important;
  color: #fff !important;
}

html.theme-dark .table {
  color: #cbd5e1 !important;
}

html.theme-dark .table thead th,
html.theme-dark .table tbody td {
  border-color: #2d3748 !important;
}

html.theme-dark .table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.03) !important;
}

html.theme-dark .table-hover tbody tr:hover {
  background-color: rgba(91, 197, 197, 0.08) !important;
}

html.theme-dark .modal-content {
  background-color: #1a222d !important;
  color: #e2e8f0 !important;
  border-color: #2d3748 !important;
}

html.theme-dark .modal-header,
html.theme-dark .modal-footer {
  border-color: #2d3748 !important;
}

html.theme-dark .modal-header .close {
  color: #e2e8f0 !important;
  text-shadow: none !important;
  opacity: 0.75;
}

html.theme-dark .alert-success {
  background-color: rgba(34, 197, 94, 0.15) !important;
  border-color: rgba(34, 197, 94, 0.35) !important;
  color: #86efac !important;
}

html.theme-dark .alert-danger,
html.theme-dark .alert-error {
  background-color: rgba(239, 68, 68, 0.15) !important;
  border-color: rgba(239, 68, 68, 0.35) !important;
  color: #fca5a5 !important;
}

html.theme-dark .alert-warning {
  background-color: rgba(245, 158, 11, 0.15) !important;
  border-color: rgba(245, 158, 11, 0.35) !important;
  color: #fcd34d !important;
}

html.theme-dark .alert-info {
  background-color: rgba(91, 197, 197, 0.15) !important;
  border-color: rgba(91, 197, 197, 0.35) !important;
  color: #7dd8d8 !important;
}

html.theme-dark a:not(.btn):not(.btn-modern):not(.cta-button):not(.geo-nav-cta):not(.geo-theme-toggle):not(.geo-lang-option):not(.geo-home-btn) {
  color: #5BC5C5;
}

html.theme-dark a:not(.btn):not(.btn-modern):not(.cta-button):not(.geo-nav-cta):not(.geo-theme-toggle):not(.geo-lang-option):not(.geo-home-btn):hover {
  color: #7dd8d8;
}

html.theme-dark a.btn-modern,
html.theme-dark .btn-modern {
  background: linear-gradient(135deg, #5BC5C5 0%, #159a9c 100%) !important;
  color: #fff !important;
}

html.theme-dark a.btn-modern:hover,
html.theme-dark .btn-modern:hover {
  background: linear-gradient(135deg, #4ab3b3 0%, #127a7c 100%) !important;
  color: #fff !important;
}

html.theme-dark h1,
html.theme-dark h2,
html.theme-dark h3,
html.theme-dark h4,
html.theme-dark h5,
html.theme-dark h6 {
  color: #e2e8f0;
}

html.theme-dark .entity-title,
html.theme-dark .entity-subtitle {
  color: #e2e8f0;
}

html.theme-dark .scroll-top {
  background: #1a222d !important;
  color: #5BC5C5 !important;
  border: 1px solid #2d3748;
}

html.theme-dark .searchBox input[type=text] {
  background: #141a22 !important;
  border-color: #2d3748 !important;
  color: #e2e8f0 !important;
}

/* ----- Specimen search ----- */
html.theme-dark .sticky-search-wrapper,
html.theme-dark .sticky-search-wrapper.stuck {
  background: #141a22 !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.35) !important;
}

html.theme-dark .search-input-wrapper {
  background: #1a222d !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35) !important;
  border: 1px solid #2d3748;
}

html.theme-dark .search-input-wrapper:focus-within {
  box-shadow: 0 6px 30px rgba(91, 197, 197, 0.2) !important;
  border-color: #5BC5C5;
}

html.theme-dark .modern-search-input {
  background: transparent !important;
  color: #e2e8f0 !important;
}

html.theme-dark .modern-search-input::placeholder {
  color: #64748b !important;
}

html.theme-dark .modern-search-section,
html.theme-dark .modern-search-section .section-background,
html.theme-dark .modern-search-section .bg-white,
html.theme-dark .section-solid.modern-search-section {
  background: #0f1419 !important;
  background-color: #0f1419 !important;
}

html.theme-dark .specimenImage,
html.theme-dark .specimenImage:hover {
  background: #1a222d !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.35) !important;
}

html.theme-dark .specimenImg {
  background: #141a22 !important;
}

html.theme-dark .specimenTitle,
html.theme-dark .specimenTitle h4 {
  color: #e2e8f0 !important;
}

html.theme-dark .specimenLocality {
  color: #94a3b8 !important;
}

html.theme-dark .specimenLocalitySearch,
html.theme-dark .specimenMineralsSearch,
html.theme-dark .specimenLocalitySearch a,
html.theme-dark .specimenMineralsSearch a,
html.theme-dark .mindatLocality a {
  color: #5BC5C5 !important;
}

html.theme-dark .specimenLocalitySearch a:hover,
html.theme-dark .specimenMineralsSearch a:hover,
html.theme-dark .mindatLocality a:hover {
  color: #7dd8d8 !important;
}

html.theme-dark .mindatLocality {
  border-top-color: #2d3748 !important;
}

html.theme-dark .thumbnail-item {
  background: #141a22 !important;
  border-color: #2d3748 !important;
}

html.theme-dark .thumbnail-item:hover,
html.theme-dark .thumbnail-item.active {
  border-color: #5BC5C5 !important;
}

html.theme-dark .noMatches,
html.theme-dark .loading-indicator {
  color: #94a3b8 !important;
}

html.theme-dark .btn-modern-load-more {
  background: #1a222d !important;
  border-color: #2d3748 !important;
  color: #e2e8f0 !important;
}

html.theme-dark .btn-modern-load-more:hover {
  background: #159a9c !important;
  border-color: #159a9c !important;
  color: #fff !important;
}

/* ----- Footer (already dark; minor polish) ----- */
html.theme-dark .geo-footer {
  background: #141a22 !important;
  border-top: 1px solid #2d3748;
}

html.theme-dark .geo-footer-copy {
  background: #0f1419 !important;
}

/* ----- Home ----- */
html.theme-dark .geo-home-section-alt {
  background: #141a22 !important;
}

html.theme-dark .geo-home-section-dark {
  background: #0f1419 !important;
}

html.theme-dark .geo-home-head h2 {
  color: #e2e8f0 !important;
}

html.theme-dark .geo-home-head p {
  color: #94a3b8 !important;
}

html.theme-dark .geo-home-panel,
html.theme-dark .geo-home-battle-card,
html.theme-dark .geo-home-feature-card,
html.theme-dark .geo-home-article-card {
  background: #1a222d !important;
  border-color: #2d3748 !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35) !important;
}

html.theme-dark .geo-home-split h3,
html.theme-dark .geo-home-battle-body h3,
html.theme-dark .geo-home-feature-body h3,
html.theme-dark .geo-home-feature-body h3 a,
html.theme-dark .geo-home-article-body h4 a {
  color: #e2e8f0 !important;
}

html.theme-dark .geo-home-feature-body h3 a:hover,
html.theme-dark .geo-home-article-body h4 a:hover {
  color: #5BC5C5 !important;
}

html.theme-dark .geo-home-split p,
html.theme-dark .geo-home-battle-meta,
html.theme-dark .geo-home-feature-body p,
html.theme-dark .geo-home-article-body p {
  color: #94a3b8 !important;
}

html.theme-dark .geo-home-battle-img {
  background: #232b36 !important;
  color: #64748b !important;
}

html.theme-dark .geo-home-btn-outline {
  color: #5BC5C5 !important;
  border-color: #5BC5C5 !important;
  background: transparent !important;
}

html.theme-dark .geo-home-btn-outline:hover,
html.theme-dark .geo-home-btn-outline:focus {
  background: rgba(91, 197, 197, 0.12) !important;
  color: #7dd8d8 !important;
}

html.theme-dark .geo-home-state-chip {
  background: #1a222d !important;
  border-color: #2d3748 !important;
  color: #cbd5e1 !important;
}

html.theme-dark .geo-home-state-chip:hover {
  background: rgba(91, 197, 197, 0.12) !important;
  border-color: #5BC5C5 !important;
  color: #5BC5C5 !important;
}

html.theme-dark .geo-home-battle-card:hover,
html.theme-dark .geo-home-feature-card:hover {
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.45) !important;
}

/* ----- Club / museum directories ----- */
html.theme-dark .club-directory-container,
html.theme-dark .museum-directory-container {
  background: #0f1419 !important;
}

html.theme-dark .club-directory-intro h2,
html.theme-dark .museum-directory-intro h2 {
  color: #e2e8f0 !important;
}

html.theme-dark .club-directory-intro p,
html.theme-dark .museum-directory-intro p {
  color: #94a3b8 !important;
}

html.theme-dark .directory-crosslink,
html.theme-dark .club-filter-bar,
html.theme-dark .museum-filter-bar,
html.theme-dark .club-card,
html.theme-dark .museum-card {
  background: #1a222d !important;
  border-color: #2d3748 !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.3) !important;
  color: #94a3b8 !important;
}

html.theme-dark .directory-crosslink a {
  color: #5BC5C5 !important;
}

html.theme-dark .directory-crosslink a:hover {
  color: #7dd8d8 !important;
}

html.theme-dark .club-filter-label,
html.theme-dark .museum-filter-label,
html.theme-dark .club-result-count strong,
html.theme-dark .museum-result-count strong,
html.theme-dark .club-name,
html.theme-dark .museum-name {
  color: #e2e8f0 !important;
}

html.theme-dark .club-state-select,
html.theme-dark .museum-state-select {
  background: #141a22 !important;
  border-color: #2d3748 !important;
  color: #e2e8f0 !important;
}

html.theme-dark .club-filter-clear,
html.theme-dark .museum-filter-clear {
  background: #232b36 !important;
  color: #e2e8f0 !important;
}

html.theme-dark .club-filter-clear:hover,
html.theme-dark .museum-filter-clear:hover {
  background: #5BC5C5 !important;
  color: #fff !important;
}

html.theme-dark .club-result-count,
html.theme-dark .museum-result-count,
html.theme-dark .club-location,
html.theme-dark .museum-location,
html.theme-dark .club-empty,
html.theme-dark .museum-empty {
  color: #94a3b8 !important;
}

html.theme-dark .club-image-wrapper,
html.theme-dark .museum-image-wrapper {
  background: #232b36 !important;
}

html.theme-dark .club-card:hover .club-name,
html.theme-dark .museum-card:hover .museum-name {
  color: #5BC5C5 !important;
}

/* ----- Club / museum profiles ----- */
html.theme-dark .club-profile-container,
html.theme-dark .museum-profile-container {
  background: #0f1419 !important;
}

html.theme-dark .club-header-section,
html.theme-dark .museum-header-section,
html.theme-dark .info-card {
  background: #1a222d !important;
  border-color: #2d3748 !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.3) !important;
}

html.theme-dark .club-name-main,
html.theme-dark .info-item-label,
html.theme-dark .dues-item-label {
  color: #e2e8f0 !important;
}

html.theme-dark .info-item-value,
html.theme-dark .info-item {
  color: #94a3b8 !important;
  border-color: #2d3748 !important;
}

html.theme-dark .club-logo-wrapper img {
  background: #232b36 !important;
  border-color: #2d3748 !important;
}

html.theme-dark .address-block,
html.theme-dark .dues-item {
  background: #141a22 !important;
  color: #e2e8f0 !important;
}

html.theme-dark .btn-modern-secondary {
  background: transparent !important;
  color: #5BC5C5 !important;
  border-color: #5BC5C5 !important;
}

html.theme-dark .btn-modern-secondary:hover {
  background: #5BC5C5 !important;
  color: #fff !important;
}

html.theme-dark .claim-section {
  background: linear-gradient(135deg, #159a9c 0%, #127a7c 100%) !important;
  border: none !important;
  color: #fff !important;
}

html.theme-dark .claim-section h2,
html.theme-dark .claim-section p,
html.theme-dark .claim-section ol,
html.theme-dark .claim-section li,
html.theme-dark .claim-section a {
  color: #fff !important;
}

html.theme-dark .club-profile-container .cta-section,
html.theme-dark .museum-profile-container .cta-section {
  background: #1a222d !important;
  border: 1px solid #2d3748 !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.3) !important;
  color: #cbd5e1 !important;
}

html.theme-dark .club-profile-container .cta-section h2,
html.theme-dark .museum-profile-container .cta-section h2 {
  color: #e2e8f0 !important;
}

html.theme-dark .club-profile-container .cta-section p,
html.theme-dark .museum-profile-container .cta-section p {
  color: #cbd5e1 !important;
}

html.theme-dark .club-profile-container .cta-button,
html.theme-dark .museum-profile-container .cta-button {
  background: linear-gradient(135deg, #5BC5C5 0%, #159a9c 100%) !important;
  color: #fff !important;
  border: none !important;
}

html.theme-dark .club-profile-container .cta-button:hover,
html.theme-dark .museum-profile-container .cta-button:hover {
  background: linear-gradient(135deg, #4ab3b3 0%, #127a7c 100%) !important;
  color: #fff !important;
}

html.theme-dark .social-links a {
  background: rgba(91, 197, 197, 0.15) !important;
  color: #5BC5C5 !important;
}

html.theme-dark .social-links a:hover {
  background: #5BC5C5 !important;
  color: #fff !important;
}

/* ----- Collection / club management ----- */
html.theme-dark .collection-management-container,
html.theme-dark .club-management-container {
  background: #0f1419 !important;
}

html.theme-dark .collection-management-container .intro-section,
html.theme-dark .club-management-container .intro-section,
html.theme-dark .collection-management-container .features-section,
html.theme-dark .club-management-container .features-section,
html.theme-dark .collection-management-container .image-showcase,
html.theme-dark .club-management-container .image-showcase {
  background: #1a222d !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.3) !important;
  color: #cbd5e1 !important;
}

html.theme-dark .collection-management-container .intro-section h2,
html.theme-dark .club-management-container .intro-section h2,
html.theme-dark .section-header h2,
html.theme-dark .section-header h3,
html.theme-dark .feature-card h3,
html.theme-dark .feature-card h4,
html.theme-dark .feature-card strong {
  color: #e2e8f0 !important;
}

html.theme-dark .collection-management-container .intro-section p,
html.theme-dark .club-management-container .intro-section p,
html.theme-dark .section-header p,
html.theme-dark .feature-card p,
html.theme-dark .feature-card ul {
  color: #cbd5e1 !important;
}

html.theme-dark .feature-card {
  background: #141a22 !important;
  border-color: #2d3748 !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.3) !important;
}

html.theme-dark .feature-icon {
  background: rgba(91, 197, 197, 0.15) !important;
  color: #5BC5C5 !important;
}

html.theme-dark .premium-notice {
  background: rgba(245, 158, 11, 0.12) !important;
  border-color: rgba(245, 158, 11, 0.35) !important;
}

html.theme-dark .premium-notice p {
  color: #fcd34d !important;
}

html.theme-dark .collection-management-container .cta-section,
html.theme-dark .club-management-container .cta-section {
  color: #fff !important;
}

html.theme-dark .collection-management-container .cta-section h3,
html.theme-dark .collection-management-container .cta-section p,
html.theme-dark .club-management-container .cta-section h3,
html.theme-dark .club-management-container .cta-section p {
  color: #fff !important;
  opacity: 1 !important;
}

html.theme-dark .collection-management-container .cta-button,
html.theme-dark .club-management-container .cta-button {
  background: #0f1419 !important;
  color: #5BC5C5 !important;
  border-color: #5BC5C5 !important;
}

html.theme-dark .collection-management-container .cta-button:hover,
html.theme-dark .club-management-container .cta-button:hover {
  background: #fff !important;
  color: #159a9c !important;
}

html.theme-dark .free-badge {
  background: rgba(91, 197, 197, 0.2) !important;
  color: #5BC5C5 !important;
}

html.theme-dark .premium-badge {
  background: rgba(245, 158, 11, 0.2) !important;
  color: #fcd34d !important;
}

/* ----- Upgrade / pricing comparison ----- */
html.theme-dark .upgrade-container {
  background: #0f1419 !important;
}

html.theme-dark .comparison-section h3 {
  color: #e2e8f0 !important;
}

html.theme-dark .comparison-table {
  background: #1a222d !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.3) !important;
}

html.theme-dark .comparison-table thead {
  background: #141a22 !important;
}

html.theme-dark .comparison-table th,
html.theme-dark .comparison-table td:first-child {
  color: #e2e8f0 !important;
}

html.theme-dark .comparison-table td {
  border-color: #2d3748 !important;
  color: #94a3b8 !important;
}

html.theme-dark .comparison-table tbody tr:hover {
  background-color: rgba(91, 197, 197, 0.08) !important;
}

html.theme-dark .coming-soon-badge {
  background: rgba(245, 158, 11, 0.2) !important;
  color: #fcd34d !important;
}

html.theme-dark .cta-box {
  background: #1a222d !important;
  border-color: #2d3748 !important;
}

/* ----- Club admin instructions / article pages ----- */
html.theme-dark .instructions-container {
  background: #0f1419 !important;
}

html.theme-dark .table-of-contents,
html.theme-dark .main-content {
  background: #1a222d !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.3) !important;
  color: #cbd5e1 !important;
}

html.theme-dark .table-of-contents h3 {
  color: #e2e8f0 !important;
  border-bottom-color: #5BC5C5 !important;
}

html.theme-dark .table-of-contents a {
  color: #cbd5e1 !important;
}

html.theme-dark .table-of-contents a:hover {
  color: #5BC5C5 !important;
  background: rgba(91, 197, 197, 0.12) !important;
}

html.theme-dark .instructions-container .intro-section {
  background: linear-gradient(135deg, #159a9c 0%, #127a7c 100%) !important;
  color: #fff !important;
}

html.theme-dark .instructions-container .intro-section h2,
html.theme-dark .instructions-container .intro-section p,
html.theme-dark .instructions-container .intro-section a {
  color: #fff !important;
}

html.theme-dark .content-section {
  border-bottom-color: #2d3748 !important;
}

html.theme-dark .content-section h4,
html.theme-dark .content-section h5,
html.theme-dark .content-section strong {
  color: #e2e8f0 !important;
}

html.theme-dark .content-section p,
html.theme-dark .content-section ul li {
  color: #cbd5e1 !important;
}

html.theme-dark .content-section code {
  background: #141a22 !important;
  color: #5BC5C5 !important;
}

html.theme-dark .info-box {
  background: rgba(245, 158, 11, 0.12) !important;
  border-left-color: #f59e0b !important;
}

html.theme-dark .info-box p {
  color: #fcd34d !important;
}

html.theme-dark .quick-links {
  background: #141a22 !important;
}

html.theme-dark .quick-links h5 {
  color: #e2e8f0 !important;
}

/* ----- Website tips ----- */
html.theme-dark .website-tips-content {
  background: #0f1419 !important;
}

html.theme-dark .website-tips-lead,
html.theme-dark .website-tips-toc,
html.theme-dark .website-tips-section {
  background: #1a222d !important;
  border-color: #2d3748 !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.3) !important;
}

html.theme-dark .wwwh-card,
html.theme-dark .tips-list li {
  background: #141a22 !important;
  border-color: #2d3748 !important;
  color: #cbd5e1 !important;
}

html.theme-dark .wwwh-card h3 {
  color: #e2e8f0 !important;
}

html.theme-dark .wwwh-card p {
  color: #94a3b8 !important;
}

html.theme-dark .website-tips-lead p,
html.theme-dark .website-tips-toc h2 {
  color: #94a3b8 !important;
}

html.theme-dark .website-tips-toc a,
html.theme-dark .website-tips-section h2 {
  color: #e2e8f0 !important;
}

html.theme-dark .website-tips-toc a:hover,
html.theme-dark .website-tips-lead a {
  color: #5BC5C5 !important;
}

html.theme-dark .website-tips-cta {
  background: linear-gradient(135deg, #141a22 0%, #1a222d 100%) !important;
  border: 1px solid #2d3748;
}

/* ----- Rock Battles list ----- */
html.theme-dark .rb-page {
  --rb-ink: #e2e8f0;
  --rb-muted: #94a3b8;
  --rb-line: #2d3748;
  background: #0f1419 !important;
}

html.theme-dark .rb-intro,
html.theme-dark .rb-card,
html.theme-dark .rb-empty,
html.theme-dark .rb-sponsor-cta {
  background: #1a222d !important;
  border-color: #2d3748 !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35) !important;
}

html.theme-dark .rb-card:hover {
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.45) !important;
}

html.theme-dark .rb-card-img {
  background: #232b36 !important;
}

html.theme-dark .rb-card-img.is-empty {
  color: #64748b !important;
}

/* ----- Rock Battles view ----- */
html.theme-dark .rbv-page,
html.theme-dark #rbvVoteModal,
html.theme-dark #rbvLightbox,
html.theme-dark #rbvChampionModal {
  --rb-ink: #e2e8f0;
  --rb-muted: #94a3b8;
  --rb-line: #2d3748;
}

html.theme-dark .rbv-page {
  background:
    radial-gradient(1000px 480px at 8% -8%, rgba(91, 197, 197, 0.12), transparent 58%),
    radial-gradient(820px 420px at 100% 12%, rgba(217, 119, 6, 0.06), transparent 52%),
    linear-gradient(180deg, #0f1419 0%, #141a22 38%, #0f1419 100%) !important;
}

html.theme-dark .rbv-hero,
html.theme-dark .rbv-crossindex,
html.theme-dark .rbv-how,
html.theme-dark .rbv-arena,
html.theme-dark .rbv-matchup,
html.theme-dark .rbv-spec,
html.theme-dark .rbv-champion,
html.theme-dark .rbv-rules,
html.theme-dark .rbv-sponsor,
html.theme-dark .rbv-login-prompt-card,
html.theme-dark .rbv-champion-modal-card {
  background: #1a222d !important;
  border-color: #2d3748 !important;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.4) !important;
  color: #cbd5e1 !important;
}

html.theme-dark .rbv-arena {
  background:
    radial-gradient(720px 260px at 15% 0%, rgba(91, 197, 197, 0.1), transparent 58%),
    #1a222d !important;
}

html.theme-dark .rbv-bracket {
  background: transparent !important;
  box-shadow: none !important;
  border-color: transparent !important;
}

html.theme-dark .rbv-bracket::before {
  background-image:
    linear-gradient(180deg, rgba(26, 34, 45, 0.86) 0%, rgba(16, 22, 30, 0.93) 100%),
    var(--rbv-bracket-bg);
  background-size: cover;
  background-position: center;
}

html.theme-dark .rbv-crossindex-card {
  background: #141a22 !important;
  border-color: #2d3748 !important;
}

html.theme-dark .rbv-crossindex-arrow {
  background: #141a22 !important;
  border-color: #2d3748 !important;
  color: #e2e8f0 !important;
}

html.theme-dark .rbv-crossindex-arrow:hover:not(:disabled) {
  background: rgba(91, 197, 197, 0.12) !important;
  border-color: #5BC5C5 !important;
  color: #5BC5C5 !important;
}

html.theme-dark .rbv-crossindex-name {
  color: #e2e8f0 !important;
}

html.theme-dark .rbv-crossindex-meta {
  color: #94a3b8 !important;
}

html.theme-dark .rbv-crossindex-status.is-voting {
  background: rgba(194, 65, 12, 0.18) !important;
  color: #fdba74 !important;
}

html.theme-dark .rbv-crossindex-status.is-open {
  background: rgba(15, 118, 110, 0.22) !important;
  color: #5eead4 !important;
}

html.theme-dark .rbv-back,
html.theme-dark .rbv-section-title,
html.theme-dark .rbv-spec-title,
html.theme-dark .rbv-champion-modal-title,
html.theme-dark .rbv-sponsor-title,
html.theme-dark .rbv-sponsor-name {
  color: #e2e8f0 !important;
}

html.theme-dark .rbv-hint,
html.theme-dark .rbv-spec-meta,
html.theme-dark .rbv-login-note,
html.theme-dark .rbv-rules-intro,
html.theme-dark .rbv-sponsor-lead,
html.theme-dark .rbv-sponsor-shipping,
html.theme-dark .rbv-champion-modal-sub,
html.theme-dark .rbv-champion-modal-meta,
html.theme-dark .rbv-champion-modal-owner,
html.theme-dark .rbv-modal-note {
  color: #94a3b8 !important;
}

html.theme-dark .rbv-chip,
html.theme-dark .rbv-tag {
  background: #232b36 !important;
  color: #cbd5e1 !important;
  border-color: #2d3748 !important;
}

html.theme-dark .rbv-img-wrap {
  background: #141a22 !important;
  border-color: #2d3748 !important;
}

html.theme-dark .rbv-node {
  background: #141a22 !important;
  border-color: #2d3748 !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35) !important;
}

html.theme-dark .rbv-node--placeholder {
  background: #121820 !important;
  border-color: #2d3748 !important;
  box-shadow: none !important;
}

html.theme-dark .rbv-node--placeholder .rbv-node-side {
  background: #1a222d !important;
}

html.theme-dark .rbv-node-tbd,
html.theme-dark .rbv-node-bye {
  background: #232b36 !important;
  color: #94a3b8 !important;
}

html.theme-dark .rbv-node--votable {
  border-color: #5BC5C5 !important;
  box-shadow: 0 0 0 1px rgba(91, 197, 197, 0.35) !important;
}

html.theme-dark .rbv-node-side.is-voted {
  background: rgba(91, 197, 197, 0.12) !important;
}

html.theme-dark .rbv-node-vote-check,
html.theme-dark .rbv-node-winner-badge {
  box-shadow: 0 0 0 2px #141a22 !important;
}

html.theme-dark .rbv-round-label {
  color: #94a3b8 !important;
}

html.theme-dark .rbv-round-col.is-current .rbv-round-label {
  color: #5BC5C5 !important;
}

html.theme-dark .rbv-round-live {
  background: rgba(194, 65, 12, 0.18) !important;
  color: #fdba74 !important;
  border-color: rgba(251, 146, 60, 0.35) !important;
}

html.theme-dark .rbv-round-countdown {
  color: #fdba74 !important;
}

html.theme-dark .rbv-bar-mid {
  background: rgba(255, 255, 255, 0.85) !important;
}

html.theme-dark .rbv-view-toggle .btn {
  background: #141a22 !important;
  border-color: #2d3748 !important;
  color: #e2e8f0 !important;
}

html.theme-dark .rbv-view-toggle .btn:hover,
html.theme-dark .rbv-view-toggle .btn-primary {
  background: rgba(91, 197, 197, 0.15) !important;
  border-color: #5BC5C5 !important;
  color: #5BC5C5 !important;
}

html.theme-dark .rbv-spec.is-selected,
html.theme-dark .rbv-modal-spec.is-selected {
  background: rgba(91, 197, 197, 0.12) !important;
  border-color: #5BC5C5 !important;
}

html.theme-dark #rbvVoteModal .modal-content {
  background: #1a222d !important;
  color: #cbd5e1 !important;
}

html.theme-dark #rbvVoteModal .modal-header {
  border-bottom-color: #2d3748 !important;
}

html.theme-dark #rbvVoteModal .modal-title,
html.theme-dark #rbvVoteModal .modal-header .close {
  color: #e2e8f0 !important;
}

html.theme-dark .rbv-vote-counts .rbv-vc-total {
  color: #e2e8f0 !important;
}

html.theme-dark .rbv-lightbox {
  background: rgba(0, 0, 0, 0.9) !important;
}

html.theme-dark .rbv-login-prompt,
html.theme-dark .rbv-champion-modal {
  background: rgba(0, 0, 0, 0.7) !important;
}

html.theme-dark .rbv-modal-spec {
  background: #141a22 !important;
  border-color: #2d3748 !important;
}

html.theme-dark .rbv-zoom-btn,
html.theme-dark .rbv-lightbox-close,
html.theme-dark .rbv-login-prompt-close,
html.theme-dark .rbv-champion-modal-close {
  background: #1a222d !important;
  color: #e2e8f0 !important;
  border-color: #2d3748 !important;
}

html.theme-dark .rbv-sponsor-cta {
  background: #141a22 !important;
  border-color: rgba(91, 197, 197, 0.35) !important;
  color: #94a3b8 !important;
}

html.theme-dark .rbv-sponsor-cta a {
  color: #5BC5C5 !important;
}

html.theme-dark .rbv-submit-panel {
  background:
    radial-gradient(640px 220px at 0% 0%, rgba(91, 197, 197, 0.1), transparent 60%),
    #1a222d !important;
  border-color: rgba(91, 197, 197, 0.28) !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.35) !important;
}

html.theme-dark .rbv-submit-kicker {
  color: #5eead4 !important;
}

html.theme-dark .rbv-submit-title {
  color: #e2e8f0 !important;
}

html.theme-dark .rbv-submit-meta,
html.theme-dark .rbv-submit-hint,
html.theme-dark .rbv-submit-loading {
  color: #94a3b8 !important;
}

html.theme-dark .rbv-submit-form {
  border-top-color: rgba(91, 197, 197, 0.18) !important;
}

html.theme-dark .rbv-submit-tip {
  background: rgba(15, 118, 110, 0.15) !important;
  border-color: rgba(91, 197, 197, 0.28) !important;
  color: #99f6e4 !important;
}

html.theme-dark .rbv-submit-empty {
  background: rgba(194, 65, 12, 0.12) !important;
  border-color: rgba(251, 146, 60, 0.35) !important;
  color: #fdba74 !important;
}

html.theme-dark .rbv-submit-empty a {
  color: #5eead4 !important;
}

html.theme-dark .rbv-submit-item {
  background: #141a22 !important;
  border-color: #2d3748 !important;
}

html.theme-dark .rbv-submit-item-title {
  color: #e2e8f0 !important;
}

html.theme-dark .rbv-submit-item-meta {
  color: #94a3b8 !important;
}

html.theme-dark .rbv-submit-item-actions .btn-default {
  background: #232b36 !important;
  border-color: #2d3748 !important;
  color: #e2e8f0 !important;
}

html.theme-dark .rbv-submit-entered {
  background: rgba(4, 120, 87, 0.18) !important;
  color: #6ee7b7 !important;
}

html.theme-dark .rbv-submit-search-input {
  background-color: #141a22 !important;
  border-color: #2d3748 !important;
  color: #e2e8f0 !important;
}

html.theme-dark .rbv-submit-item-private {
  color: #fdba74 !important;
}

html.theme-dark .geo-home-note {
  background: rgba(245, 158, 11, 0.12) !important;
  border-left-color: #f59e0b !important;
  color: #fcd34d !important;
}

/* ----- Contact / legal / misc content pages ----- */
html.theme-dark .top-block-page + .section,
html.theme-dark .section-solid {
  background-color: transparent;
}

html.theme-dark .card,
html.theme-dark .panel,
html.theme-dark .well {
  background-color: #1a222d !important;
  border-color: #2d3748 !important;
  color: #cbd5e1 !important;
}

html.theme-dark .list-group-item {
  background-color: #1a222d !important;
  border-color: #2d3748 !important;
  color: #cbd5e1 !important;
}

html.theme-dark .breadcrumb {
  background-color: #1a222d !important;
}

html.theme-dark .breadcrumb > li + li:before {
  color: #64748b !important;
}

html.theme-dark hr {
  border-top-color: #2d3748 !important;
}

html.theme-dark .text-muted {
  color: #94a3b8 !important;
}

html.theme-dark .text-dark {
  color: #e2e8f0 !important;
}

html.theme-dark .bg-light {
  background-color: #141a22 !important;
}

html.theme-dark .border,
html.theme-dark .border-top,
html.theme-dark .border-bottom,
html.theme-dark .border-left,
html.theme-dark .border-right {
  border-color: #2d3748 !important;
}

/* Magnific popup */
html.theme-dark .mfp-bg {
  background: #0a0e12 !important;
}

html.theme-dark .mfp-content {
  color: #e2e8f0;
}
