/*
 * druma-plugins.css
 * Global style overrides for BuddyPress, bbPress, GamiPress, and WordPress core.
 * Ensures all plugin output adopts the Druma gold/obsidian aesthetic automatically.
 */

/* ── WORDPRESS CORE ──────────────────────────────────────────────────────────── */
a { color: var(--gold); text-decoration: none; transition: color 0.2s; }
a:hover { color: var(--gl); }
input, textarea, select {
  background: var(--o4); border: 1px solid var(--gbr); color: var(--iv);
  font-family: var(--fb); padding: 0.6rem 0.9rem; border-radius: var(--radius); outline: none;
}
input:focus, textarea:focus, select:focus { border-color: var(--gold); }
.page-numbers a, .page-numbers span {
  font-family: var(--fd); font-size: 0.6rem; font-weight: 700; letter-spacing: 0.12em;
  text-transform: uppercase; background: var(--o3); border: 1px solid var(--gbr);
  color: var(--ivd); padding: 0.5rem 0.9rem; margin: 0 2px; border-radius: var(--radius); display: inline-block; transition: all 0.2s;
}
.page-numbers a:hover { border-color: var(--gold); color: var(--gold); }
.page-numbers.current { background: var(--gold); border-color: var(--gold); color: var(--o1); }

/* ── BUDDYPRESS ──────────────────────────────────────────────────────────────── */
#buddypress { font-family: var(--fb); color: var(--iv); }
#buddypress a { color: var(--gold); }
#buddypress a:hover { color: var(--gl); }

/* Buttons */
#buddypress a.button,
#buddypress input[type=submit],
#buddypress button.bp-primary-action {
  font-family: var(--fd); font-size: 0.65rem; font-weight: 700; letter-spacing: 0.15em;
  text-transform: uppercase; background: var(--gold); border: 1px solid var(--gold);
  color: var(--o1); padding: 0.6rem 1.2rem; border-radius: var(--radius); cursor: pointer; transition: all 0.2s;
}
#buddypress a.button:hover, #buddypress input[type=submit]:hover { background: var(--gl); border-color: var(--gl); }
#buddypress a.button.secondary-button { background: transparent; border-color: var(--gbr); color: var(--gold); }
#buddypress a.button.secondary-button:hover { background: var(--gbg); border-color: var(--gold); }

/* Navigation tabs */
#buddypress div.item-list-tabs ul li a,
#buddypress #item-nav ul li a {
  font-family: var(--fd); font-size: 0.6rem; font-weight: 700; letter-spacing: 0.15em;
  text-transform: uppercase; color: var(--ivd); padding: 0.8rem 1rem; display: block; border-bottom: 2px solid transparent; transition: all 0.2s;
}
#buddypress div.item-list-tabs ul li.selected a,
#buddypress div.item-list-tabs ul li.current a,
#buddypress #item-nav ul li.current a { color: var(--gold); border-bottom-color: var(--gold); }
#buddypress div.item-list-tabs,
#buddypress #item-nav { background: var(--o3); border-bottom: 1px solid var(--gbr); }

/* Activity */
#buddypress div.activity-list .activity-item {
  background: var(--o3); border: 1px solid var(--gbr); border-radius: var(--radius); padding: 1rem 1.2rem; margin-bottom: 0.7rem;
}
#buddypress .activity-content .activity-inner { color: var(--ivd); font-family: var(--fb); }
#buddypress .activity-time-since { color: var(--ivf); font-style: italic; font-size: 0.85rem; }

/* Member list */
#buddypress ul.item-list li {
  background: var(--o3); border: 1px solid var(--gbr); border-radius: var(--radius); padding: 1rem; margin-bottom: 0.5rem; transition: border-color 0.2s;
}
#buddypress ul.item-list li:hover { border-color: var(--gold); }
#buddypress ul.item-list li .item-title { font-family: var(--fd); font-size: 0.85rem; font-weight: 700; color: var(--iv); }
#buddypress ul.item-list li .item-meta { color: var(--ivf); font-style: italic; font-size: 0.88rem; }

/* Forms */
#buddypress div.standard-form label {
  font-family: var(--fd); font-size: 0.55rem; font-weight: 700; letter-spacing: 0.15em; text-transform: uppercase; color: var(--gd);
}
#buddypress div.standard-form input[type=text],
#buddypress div.standard-form input[type=email],
#buddypress div.standard-form input[type=password],
#buddypress div.standard-form textarea,
#buddypress div.standard-form select {
  background: var(--o4); border: 1px solid var(--gbr); color: var(--iv); font-family: var(--fb); border-radius: var(--radius);
}

/* Messages */
#buddypress table.messages-notices tr,
#buddypress #message-threads li { background: var(--o3); border-color: var(--gbr); }
#buddypress table.messages-notices th { background: var(--o4); font-family: var(--fd); font-size: 0.55rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(--gd); }

/* Groups */
#buddypress ul.groups-list li { background: var(--o3); border: 1px solid var(--gbr); border-radius: var(--radius); }
#buddypress .group-title { font-family: var(--fd); color: var(--iv); }

/* ── BBPRESS ─────────────────────────────────────────────────────────────────── */
#bbpress-forums { font-family: var(--fb); color: var(--iv); }
#bbpress-forums a { color: var(--gold); }
#bbpress-forums a:hover { color: var(--gl); }

/* Forum/topic lists */
#bbpress-forums ul.bbp-forums,
#bbpress-forums ul.bbp-topics,
#bbpress-forums ul.bbp-replies { border: 1px solid var(--gbr); border-radius: var(--radius); }
#bbpress-forums ul.bbp-forums li,
#bbpress-forums ul.bbp-topics li,
#bbpress-forums ul.bbp-replies li {
  background: var(--o3); border-bottom: 1px solid var(--gbr); padding: 1rem 1.2rem;
}
#bbpress-forums ul.bbp-forums li:last-child,
#bbpress-forums ul.bbp-topics li:last-child,
#bbpress-forums ul.bbp-replies li:last-child { border-bottom: none; }
#bbpress-forums ul.bbp-forums li:hover,
#bbpress-forums ul.bbp-topics li:hover { background: var(--o4); }
#bbpress-forums div.bbp-forum-header,
#bbpress-forums div.bbp-topic-header,
#bbpress-forums div.bbp-reply-header {
  background: var(--o3); border: 1px solid var(--gbr); border-radius: var(--radius) var(--radius) 0 0; padding: 0.8rem 1.2rem;
}
#bbpress-forums li.bbp-forum-info,
#bbpress-forums li.bbp-topic-title { font-family: var(--fd); font-size: 0.95rem; font-weight: 700; color: var(--iv); }
#bbpress-forums span.bbp-forum-topic-count,
#bbpress-forums span.bbp-forum-reply-count,
#bbpress-forums span.bbp-topic-reply-count { font-family: var(--fd); font-weight: 700; color: var(--gold); }
#bbpress-forums p.bbp-topic-meta,
#bbpress-forums p.bbp-reply-meta { font-style: italic; color: var(--ivf); font-size: 0.88rem; }

/* Breadcrumbs */
#bbpress-forums div.bbp-breadcrumb { font-family: var(--fd); font-size: 0.55rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--ivf); padding: 0.8rem 0; }
#bbpress-forums div.bbp-breadcrumb a { color: var(--gd); }

/* Reply/topic forms */
#bbpress-forums div#new-post,
#bbpress-forums div#bbp-topic-form,
#bbpress-forums div#bbp-reply-form { background: var(--o3); border: 1px solid var(--gbr); padding: 1.5rem; border-radius: var(--radius); margin-top: 1.5rem; }
#bbpress-forums input[type=text],
#bbpress-forums textarea { background: var(--o4); border: 1px solid var(--gbr); color: var(--iv); font-family: var(--fb); border-radius: var(--radius); padding: 0.7rem 1rem; }
#bbpress-forums input[type=text]:focus,
#bbpress-forums textarea:focus { border-color: var(--gold); }
#bbpress-forums input[type=submit],
#bbpress-forums button[type=submit] {
  font-family: var(--fd); font-size: 0.65rem; font-weight: 700; letter-spacing: 0.15em;
  text-transform: uppercase; background: var(--gold); border: 1px solid var(--gold);
  color: var(--o1); padding: 0.7rem 1.4rem; border-radius: var(--radius); cursor: pointer; transition: all 0.2s;
}
#bbpress-forums input[type=submit]:hover { background: var(--gl); }
#bbpress-forums label { font-family: var(--fd); font-size: 0.55rem; font-weight: 700; letter-spacing: 0.15em; text-transform: uppercase; color: var(--gd); }

/* ── GAMIPRESS ───────────────────────────────────────────────────────────────── */
.gamipress-achievement,
.gamipress-rank,
.gamipress-points-type {
  background: var(--o3); border: 1px solid var(--gbr); border-radius: var(--radius); padding: 1rem 1.2rem; margin-bottom: 0.6rem; transition: border-color 0.2s;
}
.gamipress-achievement:hover,
.gamipress-rank:hover { border-color: var(--gold); }
.gamipress-achievement-title,
.gamipress-rank-title {
  font-family: var(--fd); font-size: 0.85rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--iv); margin-bottom: 0.3rem;
}
.gamipress-achievement-excerpt,
.gamipress-rank-excerpt { font-family: var(--fb); font-style: italic; color: var(--ivd); font-size: 0.92rem; }
.gamipress-points { font-family: var(--fd); font-weight: 700; color: var(--gold); font-size: 1.2rem; }
.gamipress-user-points-label { font-family: var(--fd); font-size: 0.55rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(--ivf); }
.gamipress-achievement-earned { border-color: var(--gold); }
.gamipress-achievement-earned .gamipress-achievement-title { color: var(--gold); }

/* ── WP ADMIN BAR ────────────────────────────────────────────────────────────── */
#wpadminbar { background: var(--o1) !important; border-bottom: 1px solid var(--gbr) !important; }
#wpadminbar a, #wpadminbar .ab-item { color: var(--ivd) !important; font-family: var(--fd) !important; }
#wpadminbar a:hover { color: var(--gold) !important; }
