/* Executive Theme - Premium, Sophisticated Design */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600&family=Playfair+Display:wght@500;600;700&display=swap');

[data-theme="executive"] {
  /* Core Variables */
  --executive-font-primary: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif;
  --executive-font-display: 'Playfair Display', Georgia, serif;
  --executive-primary: #1A1A1A;  /* Rich black */
  --executive-secondary: #2C2C2C;
  --executive-accent: #D4B88C;     /* Lighter warm gold */
  --executive-accent-hover: #C9A96E; /* Slightly darker for hover but still lighter than before */
  --executive-bg: #FFFFFF;
  --executive-surface: #F9F9F9;
  --executive-border: rgba(26, 26, 26, 0.1);
  --executive-text: #1A1A1A;
  --executive-text-light: #666666;
  --executive-card-bg: #FFFFFF;
  --executive-shadow: rgba(0, 0, 0, 0.08);
  --executive-light-gray: #F5F5F5;
}

/* Base Typography */
[data-theme="executive"] {
  font-family: var(--executive-font-primary);
  background-color: var(--executive-bg);
  color: var(--executive-text);
  letter-spacing: 0.01em;
}

[data-theme="executive"] h1,
[data-theme="executive"] h2,
[data-theme="executive"] h3,
[data-theme="executive"] h4 {
  font-family: var(--executive-font-display);
  letter-spacing: -0.02em;
  font-weight: 600;
}

/* Navigation */
[data-theme="executive"] .navbar {
  background: var(--executive-primary) !important;
  border-bottom: none;
}

@media (min-width: 768px) {
  [data-theme="executive"] .navbar {
    padding: 1.25rem 0;
  }
}

[data-theme="executive"] .navbar-brand,
[data-theme="executive"] #brand_name {
  color: #FFFFFF !important;
  font-family: 'Playfair Display', Georgia, serif;
}

/* Category Headers - Distinctive Style */
[data-theme="executive"] .category-header {
  margin: 0 0 2em 0;
  padding: 0.25em 0;
  background: transparent;
  border-top: 10px solid var(--executive-light-gray);
  border-bottom: 10px solid var(--executive-light-gray);
  font-family: 'Playfair Display', Georgia, serif;
}

/* Product Grid */
[data-theme="executive"] .product-item {
  background: var(--executive-card-bg);
  border: 1px solid var(--executive-border);
  border-radius: 0;
  box-shadow: none;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}

[data-theme="executive"] .product-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 24px var(--executive-shadow);
}

[data-theme="executive"] .product-item img {
  border-radius: 0;
  transition: all 0.5s ease;
}

[data-theme="executive"] .product-item:hover img {
  transform: scale(1.03);
}

[data-theme="executive"] .product-details {
  padding: 1.5rem;
  border-top: 1px solid var(--executive-border);
}

[data-theme="executive"] .product-title {
  font-family: var(--executive-font-display);
  font-size: 1.125rem;
  font-weight: 500;
  color: var(--executive-primary);
  margin-bottom: 0.75rem;
}

[data-theme="executive"] .product-price {
  font-family: var(--executive-font-primary);
  font-size: 1rem;
  font-weight: 600;
  color: var(--executive-accent);
}

/* Buttons */
[data-theme="executive"] .btn,
[data-theme="executive"] .btn-success,
[data-theme="executive"] .badge {
  border-radius: 0 !important;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

[data-theme="executive"] .btn-success,
[data-theme="executive"] #buy_now_top .btn-success {
  background: var(--executive-accent) !important;
  border: none !important;
  color: var(--executive-primary) !important;
}

[data-theme="executive"] .btn-success:hover {
  background: var(--executive-accent-hover) !important;
  transform: translateY(-2px);
}

/* Cards */
[data-theme="executive"] .card {
  border: 1px solid var(--executive-border) !important;
  border-radius: 0 !important;
  background: var(--executive-card-bg);
}

/* Footer */
[data-theme="executive"] footer#store_footer {
  background: var(--executive-primary);
  color: #FFFFFF;
  padding: 3rem 0;
  margin-top: 4rem !important;
  font-family: 'Playfair Display', Georgia, serif;
}

[data-theme="executive"] footer#store_footer p,
[data-theme="executive"] footer#store_footer #powered_by {
  font-family: 'Playfair Display', Georgia, serif;
}

[data-theme="executive"] footer#store_footer a {
  color: var(--executive-accent) !important;
  text-decoration: none;
  transition: color 0.2s ease;
  font-family: 'Playfair Display', Georgia, serif;
}

[data-theme="executive"] footer#store_footer a:hover {
  color: var(--executive-accent-hover) !important;
}

/* Copyright year color */
[data-theme="executive"] footer#store_footer .fs-6 {
  color: rgba(255, 255, 255, 0.7);
}

/* Badges */
[data-theme="executive"] .badge {
  margin: 0.25em 0;
  padding: 0.5em !important;
}

/* Form Elements */
[data-theme="executive"] .form-control,
[data-theme="executive"] .ts-control {
  border: 1px solid var(--executive-border) !important;
  border-radius: 0 !important;
  padding: 0.75rem 1rem;
  font-size: 0.875rem;
}

/* Dropdowns */
[data-theme="executive"] .dropdown-menu,
[data-theme="executive"] .hs-sub-menu {
  background: var(--executive-primary);
  border-radius: 0 !important;
  border: none;
  padding: 0.5rem 0;
}

[data-theme="executive"] .dropdown-item,
[data-theme="executive"] .hs-sub-menu *,
[data-theme="executive"] .dropdown-menu * {
  font-family: 'Playfair Display', Georgia, serif;
  color: #FFFFFF !important;
}

[data-theme="executive"] .dropdown-item:hover {
  background: rgba(255, 255, 255, 0.1);
}

/* Soft Background Elements */
[data-theme="executive"] .bg-soft-secondary,
[data-theme="executive"] .bg-soft-primary,
[data-theme="executive"] .bg-soft-info {
  background: var(--executive-surface) !important;
  color: var(--executive-text);
}

/* Header Styling */
[data-theme="executive"] #header {
  background: var(--executive-primary) !important;
}

[data-theme="executive"] #header .navbar-brand,
[data-theme="executive"] #header .nav-link {
  color: #FFFFFF !important;
}

/* Tom Select Customization */
[data-theme="executive"] .tom-select-custom .ts-control {
  border-radius: 0 !important;
  border: 1px solid var(--executive-border);
  height: 38px !important;
}

[data-theme="executive"] .tom-select-custom .ts-dropdown {
  border-radius: 0;
  border: 1px solid var(--executive-border);
  box-shadow: 0 4px 12px var(--executive-shadow);
}

/* Fix for page content height */
[data-theme="executive"] main#content.not-iframe {
  min-height: calc(100vh - 200px);
  display: flex;
  flex-direction: column;
}

[data-theme="executive"] .content {
  flex: 1;
}

/* Remove all rounded corners globally */
[data-theme="executive"] * {
  border-radius: 0 !important;
}

/* Additional overrides for specific components */
[data-theme="executive"] .form-control,
[data-theme="executive"] .form-select,
[data-theme="executive"] .input-group-text,
[data-theme="executive"] .modal-content,
[data-theme="executive"] .offcanvas,
[data-theme="executive"] .card {
  border-radius: 0 !important;
}

/* Product title featured styling */
[data-theme="executive"] .product-title-featured {
  font-family: 'Playfair Display', Georgia, serif;
  bottom: 1em;
  right: 1em;
  text-shadow: 1px 1px 0 white, -1px -1px 0 white, 1px -1px 0 white, -1px 1px 0 white;
}

/* Change blue accents to brown */
[data-theme="executive"] div#product_page_tabs .nav-link.active {
  color: var(--executive-primary) !important;
  border: none !important;
  border-bottom: 2px solid var(--executive-primary) !important;
}

/* Form check styling */
[data-theme="executive"] .form-check-label-highlighter .form-check-input:checked ~ .form-check-label {
  border-color: var(--executive-primary) !important;
}

[data-theme="executive"] .alert-soft-info {
  background-color: rgba(26, 26, 26, 0.1) !important;
  border-color: rgba(26, 26, 26, 0.1) !important;
  color: var(--executive-text) !important;
}

/* Fix paid.html footer */
[data-theme="executive"] #cart_paid {
  min-height: calc(100vh - 400px);
}

/* Additional overrides for blue accents */
[data-theme="executive"] .text-primary,
[data-theme="executive"] .btn-primary,
[data-theme="executive"] .bg-primary {
  color: var(--executive-primary) !important;
}

[data-theme="executive"] .btn-outline-primary {
  border-color: var(--executive-primary) !important;
  color: var(--executive-primary) !important;
}

[data-theme="executive"] .btn-outline-primary:hover {
  background-color: var(--executive-primary) !important;
  color: #FFFFFF !important;
}

/* Override any remaining Bootstrap blue colors */
[data-theme="executive"] .alert-soft-info i.bi-tag-fill {
  color: var(--executive-primary) !important;
}

[data-theme="executive"] .form-check-input:checked {
  background-color: var(--executive-primary) !important;
  border-color: var(--executive-primary) !important;
}

[data-theme="executive"] div#tags .badge {
  background: rgba(201, 169, 110, 0.1) !important;
  color: var(--executive-accent) !important;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

/* Update button styles */
[data-theme="executive"] .btn-success,
[data-theme="executive"] .btn-primary,
[data-theme="executive"] #buy_now_top .btn-success,
[data-theme="executive"] .btn-outline-primary:hover {
  color: white !important;  /* Force white text */
}

/* Cart page buttons */
[data-theme="executive"] .cart-page .btn-primary,
[data-theme="executive"] .cart-page .btn-outline-primary:hover {
  color: white !important;
}

/* Any other button variations */
[data-theme="executive"] .btn[class*="btn-"]:not(.btn-ghost-secondary):not(.btn-outline-primary):not(.btn-white) {
  color: white !important;
}

[data-theme="executive"] li#buy_now_top {
  margin-right: 1em !important;
}

[data-theme="executive"] span#cart_count {
  border-radius: 50% !important;  /* Force circular shape */
  color: white !important;
  background: var(--executive-accent) !important;
}

[data-theme="executive"] div#cart_dropdown select,
[data-theme="executive"] div#cart_dropdown .ts-control {
  color: var(--executive-text-light) !important;  /* Using the theme's light gray */
  background: white !important;
}
[data-theme="executive"] div#cart_dropdown .ts-dropdown * {
  color: var(--executive-text-light) !important;
}

[data-theme="executive"] .form-check-input {
  border-radius: 4px !important;  /* Override the no-border-radius rule */
}

[data-theme="executive"] div#cart_col * {
  font-family: var(--executive-font-display) !important;
}

[data-theme="executive"] div#cart_col select,
[data-theme="executive"] div#cart_col .form-select,
[data-theme="executive"] div#cart_col .ts-control {
  font-family: var(--executive-font-display) !important;
}

[data-theme="executive"] .cart-item * {
  font-family: var(--executive-font-display) !important;
}

[data-theme="executive"] .cart-item select,
[data-theme="executive"] .cart-item .form-select {
  font-family: var(--executive-font-display) !important;
}

[data-theme="executive"] select option {
  color: var(--executive-text-light) !important;
  background-color: white !important;
}

[data-theme="executive"] select option:hover,
[data-theme="executive"] select option:checked {
  color: var(--executive-text) !important;
  background-color: var(--executive-surface) !important;
}

[data-theme="executive"] .cart-item-variant option {
  color: var(--executive-text-light) !important;
  background-color: white !important;
}

[data-theme="executive"] .cart-item-variant {
  color: var(--executive-text-light) !important;
  background-color: white !important;
}

[data-theme="executive"] div#buyer_div .card-body * {
  font-family: var(--executive-font-display) !important;
}

[data-theme="executive"] .btn-white {
  color: var(--executive-text-light) !important;
}

@media (max-width: 991.98px) {
  [data-theme="executive"] nav#store_navbar {
    background: var(--executive-secondary) !important;
  }
}
