/*
Theme Name: BuddyX Bowling Community
Theme URI:
Description: A bowling community child theme for BuddyX with an orange and dark color scheme.
Author: Albert
Author URI:
Template: buddyx
Version: 1.0
*/

/* ===========================
   Orange & Dark Color Scheme
   =========================== */

:root {
    --bx-primary: #e87b35;
    --bx-primary-hover: #d46a28;
    --bx-primary-light: #f5a66a;
    --bx-dark: #1a1a1a;
    --bx-dark-mid: #2d2d2d;
    --bx-dark-light: #3a3a3a;
    --bx-text-on-dark: #f0ece6;
    --bx-text-muted: #b0a99f;
    --bx-accent: #f5deb3;
    --bx-border: #3a3a3a;
    --bx-success: #5cb85c;
    --bx-white: #ffffff;
}

/* === Body === */
html, body {
    background-color: var(--bx-dark) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === Header === */
.site-header,
#masthead,
.site-header-wrapper {
    background-color: var(--bx-dark-mid) !important;
    border-bottom: 1px solid var(--bx-border);
}

.site-title a,
.site-title a:hover {
    color: var(--bx-primary) !important;
}

.site-description {
    color: var(--bx-text-muted) !important;
}

/* === Hide Breadcrumbs === */
.buddyx-breadcrumbs {
    display: none !important;
}

/* === Logo === */
.site-logo-wrapper img,
.custom-logo {
    max-height: 80px;
    width: auto;
    padding: 0.25rem 0;
}

.site-branding .site-branding-inner,
.site-branding .site-title,
.site-branding .site-description,
#masthead .site-title,
#masthead .site-description {
    display: none !important;
}

.site-branding {
    margin-right: 2rem;
}

/* === Navigation === */
.primary-menu-container .menu > li > a,
.main-navigation a,
#site-navigation a {
    color: var(--bx-text-on-dark) !important;
}

.primary-menu-container .menu > li > a:hover,
.main-navigation a:hover,
#site-navigation a:hover,
.main-navigation .current-menu-item > a {
    color: var(--bx-primary) !important;
}

.main-navigation .sub-menu,
.primary-menu-container .sub-menu {
    background-color: var(--bx-dark-mid) !important;
    border: 1px solid var(--bx-border) !important;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    padding: 0.25rem 0;
}

.main-navigation .sub-menu a {
    color: var(--bx-text-on-dark) !important;
}

.main-navigation .sub-menu a:hover {
    background-color: var(--bx-dark-light) !important;
    color: var(--bx-primary) !important;
}

/* === Links === */
a {
    color: var(--bx-primary) !important;
}

a:hover {
    color: var(--bx-primary-light);
}

/* === Email Links === */
a[href^="mailto"] {
    color: var(--bx-primary) !important;
}

a[href^="mailto"]:hover {
    color: var(--bx-primary) !important;
}

/* === Buttons === */
button,
input[type="submit"],
input[type="button"],
.btn-primary,
a.btn-primary,
.buddyx-btn,
#buddypress .generic-button a,
#buddypress a.button,
#buddypress input[type="submit"],
#buddypress button[type="submit"],
.entry-content .wp-block-button__link {
    background-color: var(--bx-primary) !important;
    color: var(--bx-white) !important;
    border-color: var(--bx-primary) !important;
}

button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
.btn-primary:hover,
a.btn-primary:hover,
.buddyx-btn:hover,
#buddypress .generic-button a:hover,
#buddypress a.button:hover,
#buddypress input[type="submit"]:hover,
#buddypress button[type="submit"]:hover,
.entry-content .wp-block-button__link:hover {
    background-color: var(--bx-primary-hover) !important;
    color: var(--bx-white) !important;
    border-color: var(--bx-primary-hover) !important;
}

/* === Content Areas === */
.site-content-area,
.site-content,
#content,
#page,
.container {
    background-color: var(--bx-dark) !important;
    color: var(--bx-text-on-dark);
}

article,
.post,
.type-post,
.type-page,
.hentry,
.card,
.buddyx-article-wrp {
    background-color: var(--bx-dark) !important;
    color: var(--bx-text-on-dark);
    border: none !important;
    box-shadow: none !important;
}

.entry-title,
.entry-title a {
    color: var(--bx-text-on-dark) !important;
}

.entry-title a:hover {
    color: var(--bx-primary) !important;
}

.entry-meta,
.entry-meta a,
.post-meta,
.post-date {
    color: var(--bx-text-muted) !important;
}

/* === Headings === */
body h1, body h2, body h3, body h4, body h5, body h6,
body .page-title,
body .entry-title,
body .entry-title a,
body .buddyx-article-wrp h1,
body .site-content h1,
body .site-content h2,
body .site-content h3,
#primary h1,
#primary h2 {
    color: var(--bx-text-on-dark) !important;
}

/* === General Text === */
body, body p, body li, body span, body td, body th, body dt, body dd, body label, body blockquote,
.site-content, .site-content p, .site-content span,
#primary, #primary p {
    color: var(--bx-text-on-dark) !important;
}

/* === Sidebar & Widgets === */
.widget,
.sidebar .widget {
    background-color: var(--bx-dark-mid);
    border: 1px solid var(--bx-border);
    border-radius: 8px;
}

.widget-title,
.widget .widget-title {
    color: var(--bx-primary) !important;
}

.widget a {
    color: var(--bx-text-on-dark);
}

.widget a:hover {
    color: var(--bx-primary);
}

/* === Forms & Inputs === */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="url"],
input[type="tel"],
input[type="date"],
input[type="number"],
textarea,
select {
    background-color: var(--bx-dark-light) !important;
    color: var(--bx-text-on-dark) !important;
    border: 1px solid var(--bx-border) !important;
    border-radius: 6px;
}

input:focus,
textarea:focus,
select:focus {
    border-color: var(--bx-primary) !important;
    outline: none;
    box-shadow: 0 0 0 2px rgba(232, 123, 53, 0.2) !important;
}

/* === BuddyPress Activity === */
#buddypress .activity-list li,
#buddypress .activity-list .activity-item {
    background-color: var(--bx-dark-mid);
    border: 1px solid var(--bx-border);
    border-radius: 8px;
}

#buddypress .activity-list .activity-header,
#buddypress .activity-list .activity-header a {
    color: var(--bx-text-on-dark);
}

#buddypress .activity-list .activity-header a:hover {
    color: var(--bx-primary);
}

#buddypress .activity-meta a {
    color: var(--bx-primary) !important;
}

#buddypress #whats-new-form,
#buddypress .activity-update-form {
    background-color: var(--bx-dark-mid);
    border: 1px solid var(--bx-border);
    border-radius: 8px;
}

/* === BuddyPress Members === */
#buddypress .bp-list li,
#buddypress #members-list li,
#buddypress .members-list li {
    background-color: var(--bx-dark-mid);
    border: 1px solid var(--bx-border);
    border-radius: 8px;
}

#buddypress .item-title a {
    color: var(--bx-text-on-dark) !important;
}

#buddypress .item-title a:hover {
    color: var(--bx-primary) !important;
}

#buddypress .item-meta,
#buddypress .activity {
    color: var(--bx-text-muted) !important;
}

/* === BuddyPress Navigation === */
#buddypress nav.bp-navs ul li a,
#buddypress .buddyx-bp-navs a {
    color: var(--bx-text-on-dark) !important;
}

#buddypress nav.bp-navs ul li.current a,
#buddypress nav.bp-navs ul li.selected a,
#buddypress nav.bp-navs ul li a:hover {
    color: var(--bx-primary) !important;
}

/* === Footer === */
.site-footer,
#colophon,
.site-footer-wrapper,
.site-info {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-muted) !important;
    border-top: 1px solid var(--bx-border);
}

.site-info .container {
    background-color: var(--bx-dark-mid) !important;
}

.site-info,
.site-info a,
.site-info span,
.site-info div,
.site-info p,
#colophon .site-info,
#colophon .site-info .container {
    color: var(--bx-text-on-dark) !important;
}

.site-footer a,
.site-info a {
    color: var(--bx-primary) !important;
}

.site-footer a:hover,
.site-info a:hover {
    color: var(--bx-primary-light) !important;
}

/* === Search === */
.search-form .search-field {
    background-color: var(--bx-dark-light) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === Scroll to Top === */
.back-to-top {
    background-color: var(--bx-primary) !important;
    color: var(--bx-white) !important;
}

/* === Tables === */
table {
    border-color: var(--bx-border);
}

table th {
    background-color: var(--bx-dark-light);
    color: var(--bx-text-on-dark);
}

table td {
    border-color: var(--bx-border);
    color: var(--bx-text-on-dark);
}

/* === Comments === */
.comments-area,
.comment-body {
    background-color: var(--bx-dark-mid);
    color: var(--bx-text-on-dark);
}

/* === Pagination === */
.pagination .page-numbers,
.buddypress-wrap .bp-pagination .page-numbers {
    color: var(--bx-text-on-dark);
    background-color: var(--bx-dark-light);
    border-color: var(--bx-border);
}

.pagination .page-numbers.current,
.buddypress-wrap .bp-pagination .page-numbers.current {
    background-color: var(--bx-primary) !important;
    color: var(--bx-white) !important;
}

/* === Mobile Menu === */
.menu-toggle,
.hamburger-menu {
    color: var(--bx-text-on-dark);
}

@media (max-width: 768px) {
    .main-navigation,
    .primary-menu-container {
        background-color: var(--bx-dark-mid) !important;
    }
}

/* === User Profile Dropdown === */
.user-link-wrap {
    position: relative;
}

.user-link-wrap .user-profile-menu {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    min-width: 160px;
    background-color: var(--bx-dark-mid) !important;
    border: 1px solid var(--bx-border) !important;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    list-style: none;
    padding: 0.5rem 0;
    margin: 0;
    z-index: 1001;
}

.user-link-wrap:hover .user-profile-menu {
    display: block;
}

.user-link-wrap .user-profile-menu li {
    margin: 0;
}

.user-link-wrap .user-profile-menu li a {
    display: block;
    padding: 0.5rem 1rem;
    color: var(--bx-text-on-dark) !important;
    text-decoration: none;
    font-size: 0.9rem;
    white-space: nowrap;
    transition: background 0.2s;
}

.user-link-wrap .user-profile-menu li a:hover {
    background-color: var(--bx-dark-light) !important;
    color: var(--bx-primary) !important;
}

/* === BuddyPress Header Dropdowns === */
.bp-header-submenu,
.bp-dropdown {
    background-color: var(--bx-dark-mid) !important;
    border: 1px solid var(--bx-border) !important;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.bp-dropdown .dropdown-item {
    color: var(--bx-text-on-dark) !important;
}

.bp-dropdown .dropdown-footer {
    border-top: 1px solid var(--bx-border) !important;
}

/* === Member Location === */
.member-location {
    display: block;
    font-size: 0.85rem;
    color: var(--bx-text-muted);
    margin-top: 0.25rem;
}

.member-location::before {
    content: "\1F4CD ";
}

/* === Global Dark Overrides === */
html,
body,
#page,
#page.site,
.site-wrapper,
.site,
.site-header-wrapper,
.site-content-area,
.site-content,
#content,
#primary,
#secondary,
.content-area,
.widget-area,
.site-main,
main,
.container,
.buddyx-content,
.entry-content,
.page-content {
    background-color: var(--bx-dark) !important;
    color: var(--bx-text-on-dark);
}

/* === Page/Post Content Wrappers === */
.buddyx-article-wrp,
.single-post-main-wrapper,
.single-post-main-wrapper .buddyx-section-half.has-featured-image,
.page .entry-content,
.single .entry-content {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === BuddyPress Wrappers === */
#buddypress,
.buddypress,
.buddypress-wrap,
#buddypress .buddypress-wrap,
.bp-wrap,
body.buddypress #buddypress {
    background-color: var(--bx-dark) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === BuddyPress Profile Header === */
#buddypress #header-cover-image,
#buddypress .bp-profile-header,
#buddypress #item-header,
#buddypress #item-header-cover-image,
.buddypress-wrap .item-header-wrap,
#buddypress .item-header-content,
.member-header-wrapper,
.buddyx-cover-img-block,
.buddyx-profile-header-wrap,
.buddyx-profile-header,
.bp-header-cover-image,
#cover-image-container,
.header-cover-image {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === BuddyPress Profile Body === */
#buddypress #item-body,
#buddypress #item-nav,
#buddypress .item-body,
.buddypress-wrap .bp-dir-hori-nav,
.buddypress-wrap .main-navs,
.buddypress-wrap .bp-navs,
#buddypress nav.bp-navs,
.buddyx-profile-navs,
.buddyx-profile-content {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === BuddyPress Sidebar / Member Nav === */
.bp-sidebar,
.bp-navs.vertical,
.bp-navs.vertical ul,
#buddypress .bp-navs.vertical li,
.buddypress-wrap .bp-navs.vertical,
.buddyx-profile-navs-wrapper,
#item-body .bp-sidebar {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === BuddyPress What's New Form === */
#buddypress #whats-new-form,
#buddypress .activity-update-form,
#buddypress #whats-new-form #whats-new-content,
#buddypress #whats-new,
#buddypress textarea#whats-new {
    background-color: var(--bx-dark-light) !important;
    color: var(--bx-text-on-dark) !important;
    border-color: var(--bx-border) !important;
}

/* === BuddyPress Alerts & Info Boxes === */
#buddypress .bp-feedback,
#buddypress .bp-template-notice,
.buddypress-wrap .bp-feedback,
.bp-feedback.info,
.bp-feedback.error,
.bp-feedback.success,
#buddypress div.info,
#buddypress div#message,
.buddypress-wrap .alert {
    background-color: var(--bx-dark-light) !important;
    color: var(--bx-text-muted) !important;
    border: 1px solid var(--bx-border) !important;
}

#buddypress .bp-feedback .bp-icon,
.buddypress-wrap .bp-feedback .bp-icon {
    background-color: var(--bx-dark-mid) !important;
}

/* === BuddyPress Profile Specific Wrappers === */
.item-header-cover-image-wrapper,
#item-header-cover-image,
#item-header-avatar,
#item-header-content,
.member-header-actions-wrap,
.avatar-wrap,
.buddyx-badge {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-on-dark) !important;
}

#cover-image-container,
#header-cover-image {
    background-color: var(--bx-dark-light) !important;
}

/* === Activity Username Links === */
#buddypress .activity-header a,
.activity-list .activity-header a,
.buddypress-wrap .activity-header a {
    color: var(--bx-primary) !important;
}

#buddypress .activity-header a:hover,
.activity-list .activity-header a:hover,
.buddypress-wrap .activity-header a:hover {
    color: var(--bx-white) !important;
}

/* === BuddyPress Member Username & Meta === */
#buddypress .user-nicename,
#buddypress .activity-header .user-nicename,
#buddypress #item-header-content .user-nicename,
#buddypress .item-header-content span.activity,
.buddypress-wrap .item-header-content .activity,
.buddypress-wrap .member-header-actions,
.buddyx-profile-header .item-meta {
    color: var(--bx-text-muted) !important;
}

/* === BuddyPress Subnav & Filters === */
.buddypress-wrap ul.subnav,
.buddypress-wrap .bp-navs.bp-subnavs,
.buddypress-wrap .grid-filters {
    background-color: var(--bx-dark-mid) !important;
}

.buddypress-wrap .bp-navs li a,
.buddypress-wrap .bp-subnavs li a {
    color: var(--bx-text-on-dark) !important;
}

.buddypress-wrap .bp-navs li.current a,
.buddypress-wrap .bp-navs li.selected a,
.buddypress-wrap .bp-navs li a:hover,
.buddypress-wrap .bp-subnavs li.current a,
.buddypress-wrap .bp-subnavs li a:hover {
    color: var(--bx-primary) !important;
}

/* === BuddyPress Selects & Dropdowns === */
.buddypress-wrap .select-wrap,
.buddypress-wrap select,
#buddypress.buddypress-wrap form#whats-new-form #whats-new-options select,
select {
    background-color: var(--bx-dark-light) !important;
    color: var(--bx-text-on-dark) !important;
    border-color: var(--bx-border) !important;
}

/* === BuddyPress Profile Edit === */
.buddypress-wrap .standard-form.profile-edit input:focus {
    background-color: var(--bx-dark-light) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === BuddyPress Editor Tabs === */
body.buddypress #buddypress.buddypress-wrap .wp-editor-tabs button,
.standard-form .wp-editor-container button,
body.buddypress #buddypress.buddypress-wrap .tmce-active button.switch-tmce,
body.buddypress #buddypress.buddypress-wrap .html-active button.switch-html {
    background-color: var(--bx-dark-light) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === BuddyPress Invites === */
.buddypress .bp-invites-content ul.item-list > li {
    background-color: var(--bx-dark-mid) !important;
    border-color: var(--bx-border) !important;
}

/* === BuddyPress Search === */
body.bp-search .bp-search-ac,
body.bp-search .bp-search-ac > li:not(.bbls-view_all_type-type),
body .select2-container .select2-dropdown.bb-compose-input {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-on-dark) !important;
    border-color: var(--bx-border) !important;
}

/* === Navigation Search === */
.menu-icons-wrapper #searchform {
    background-color: var(--bx-dark-mid) !important;
}

/* === Mobile Navigation === */
@media (max-width: 768px) {
    .buddypress-wrap:not(.bp-single-vert-nav) .bp-navs:not(.bp-subnavs) li {
        background-color: var(--bx-dark-light) !important;
    }
}

/* === bbPress Forums === */
#bbpress-forums div.odd,
#bbpress-forums ul.odd {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-on-dark) !important;
}

#bbpress-forums div.even,
#bbpress-forums ul.even {
    background-color: var(--bx-dark) !important;
    color: var(--bx-text-on-dark) !important;
}

#bbpress-forums div.bbp-the-content-wrapper {
    background-color: var(--bx-dark-mid) !important;
}

#bbpress-forums li {
    border-color: var(--bx-border) !important;
}

/* === Gallery Arrows === */
.gallery .slick-next,
.gallery .slick-prev {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === Idea Stream === */
#wp-idea-stream ul.idea-list > li {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === WooCommerce === */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    background-color: var(--bx-dark-light) !important;
    color: var(--bx-text-on-dark) !important;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-on-dark) !important;
    border-color: var(--bx-border) !important;
}

/* === Upload Zones === */
.dropzone .dz-default {
    background-color: var(--bx-dark-light) !important;
    color: var(--bx-text-muted) !important;
}

/* === Gamification === */
.single-rank,
button.gamipress-achievement-unlock-with-points-cancel-button {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === RTMedia === */
button.rtmedia-comment-media-upload {
    background-color: var(--bx-dark-light) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === Job Manager === */
ul.job_listings li.job_listing {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-on-dark) !important;
    border-color: var(--bx-border) !important;
}

/* === Block Overrides === */
.has-base-background-color,
.has-white-background-color {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === Calendar Widget === */
.widget_calendar td,
.widget_calendar th {
    background-color: var(--bx-dark-mid) !important;
    color: var(--bx-text-on-dark) !important;
    border-color: var(--bx-border) !important;
}

/* === Text Highlights === */
ins {
    background-color: rgba(232, 123, 53, 0.2) !important;
    color: var(--bx-primary-light) !important;
    text-decoration: none;
}

/* === Breadcrumbs / Sub-header === */
.site-sub-header,
.buddyx-breadcrumbs,
.entry-header,
.site-sub-header .entry-header,
.site-sub-header .page-header {
    background-color: var(--bx-dark) !important;
    color: var(--bx-text-on-dark) !important;
    border: none !important;
    box-shadow: none !important;
}

.breadcrumb a,
.buddyx-breadcrumbs a {
    color: var(--bx-primary) !important;
}

/* === Misc Borders & Separators === */
hr {
    border-color: var(--bx-border);
}

blockquote {
    border-left-color: var(--bx-primary);
    color: var(--bx-text-muted);
}

code, pre {
    background-color: var(--bx-dark-light) !important;
    color: var(--bx-primary-light);
}

/* === WordPress Login Link in Header === */
.bp-login-form,
.buddyx-login-popup,
.buddyx-login-form {
    background-color: var(--bx-dark-mid) !important;
    border-color: var(--bx-border) !important;
    color: var(--bx-text-on-dark) !important;
}

/* === Selection Highlight === */
::selection {
    background-color: var(--bx-primary);
    color: var(--bx-white);
}
