/**
 * Maestrav Theme - Base CSS
 * 
 * This file contains:
 * 1. CSS variables for theming
 * 2. Styles to hide Frappe/ERPNext branding
 * 3. Common overrides for all tenants
 * 
 * Tenant-specific colors are loaded dynamically by tenant-loader.js
 */

/* =============================================================================
   CSS VARIABLES - Default Theme
   ============================================================================= */

:root {
  /* Primary brand color (overridden per tenant) */
  --maestrav-primary: #3B82F6;
  --maestrav-primary-hover: #2563EB;
  --maestrav-primary-rgb: 59, 130, 246;
  
  /* Accent color */
  --maestrav-accent: #10B981;
  --maestrav-accent-hover: #059669;
  
  /* Gradient */
  --maestrav-gradient-from: #3B82F6;
  --maestrav-gradient-to: #2563EB;
  
  /* Background and text */
  --maestrav-bg: #FFFFFF;
  --maestrav-bg-muted: #F3F4F6;
  --maestrav-text: #1F2937;
  --maestrav-text-muted: #6B7280;
  
  /* Sidebar */
  --maestrav-sidebar-bg: #1F2937;
  --maestrav-sidebar-text: #F9FAFB;
  --maestrav-sidebar-active: var(--maestrav-primary);
}

/* =============================================================================
   HIDE FRAPPE/ERPNEXT BRANDING
   ============================================================================= */

/* -------------------------
   Desk Footer Links
   ------------------------- */

/* Hide "Powered by Frappe" in desk footer */
.desk-sidebar .frappe-control[data-fieldname="powered_by"],
footer .powered-by,
.page-container footer .powered-by,
.web-footer .powered-by,
.website-footer .powered-by {
  display: none !important;
}

/* Hide Frappe/ERPNext links in footer */
a[href*="frappe.io"],
a[href*="erpnext.com"],
a[href*="frappeframework.com"] {
  display: none !important;
}

/* -------------------------
   Help Menu Links
   ------------------------- */

/* Hide Frappe documentation and community links in help dropdown */
.dropdown-menu a[href*="frappe.io"],
.dropdown-menu a[href*="discuss.frappe"],
.dropdown-menu a[href*="github.com/frappe"],
.dropdown-menu a[href*="erpnext.com/docs"],
.dropdown-menu a[href*="erpnext.com/support"] {
  display: none !important;
}

/* Hide specific help menu items */
.dropdown-help a[href*="frappe"],
.dropdown-help a[href*="erpnext"],
#toolbar-help a[href*="frappe"],
#toolbar-help a[href*="erpnext"] {
  display: none !important;
}

/* -------------------------
   Navbar/Toolbar
   ------------------------- */

/* Hide "Report Issue" and "Documentation" links that point to Frappe */
.navbar-nav a[href*="github.com/frappe"],
.navbar a[href*="docs.erpnext"],
.btn-help[href*="frappe"],
.btn-help[href*="erpnext"] {
  display: none !important;
}

/* -------------------------
   Login Page
   ------------------------- */

/* Hide Frappe logo on login page */
.login-content .brand-logo[src*="frappe"],
.login-content img[src*="erpnext-logo"] {
  display: none !important;
}

/* Hide "Powered by Frappe" text on login */
.login-footer .powered-by,
.login-content .text-muted a[href*="frappe"] {
  display: none !important;
}

/* -------------------------
   Setup Wizard
   ------------------------- */

/* Hide Frappe/ERPNext branding in setup wizard */
.setup-wizard-slide .brand-logo[src*="frappe"],
.setup-wizard-slide .brand-logo[src*="erpnext"],
.setup-wizard .text-muted a[href*="frappe"] {
  display: none !important;
}

/* -------------------------
   About Dialog
   ------------------------- */

/* Clean up about dialog */
.modal-dialog .frappe-list a[href*="frappe.io"],
.modal-dialog .frappe-list a[href*="erpnext.com"] {
  display: none !important;
}

/* =============================================================================
   PRIMARY COLOR OVERRIDES
   ============================================================================= */

/* Primary buttons */
.btn-primary,
.btn-primary-dark,
.page-actions .btn-primary {
  background-color: var(--maestrav-primary) !important;
  border-color: var(--maestrav-primary) !important;
}

.btn-primary:hover,
.btn-primary-dark:hover,
.page-actions .btn-primary:hover {
  background-color: var(--maestrav-primary-hover) !important;
  border-color: var(--maestrav-primary-hover) !important;
}

/* Links */
a:not(.btn):not(.nav-link):not(.dropdown-item) {
  color: var(--maestrav-primary);
}

a:not(.btn):not(.nav-link):not(.dropdown-item):hover {
  color: var(--maestrav-primary-hover);
}

/* Focus rings */
.form-control:focus,
.frappe-control input:focus,
.frappe-control select:focus,
.frappe-control textarea:focus {
  border-color: var(--maestrav-primary) !important;
  box-shadow: 0 0 0 0.2rem rgba(var(--maestrav-primary-rgb), 0.25) !important;
}

/* Active/selected states */
.nav-link.active,
.sidebar-menu .active,
.desk-sidebar .active {
  color: var(--maestrav-primary) !important;
  border-left-color: var(--maestrav-primary) !important;
}

/* Progress bars */
.progress-bar {
  background-color: var(--maestrav-primary) !important;
}

/* Checkboxes and radios */
input[type="checkbox"]:checked,
input[type="radio"]:checked {
  accent-color: var(--maestrav-primary);
}

/* =============================================================================
   DESK/ADMIN INTERFACE
   ============================================================================= */

/* Navbar gradient */
.navbar-expand {
  background: linear-gradient(135deg, var(--maestrav-gradient-from), var(--maestrav-gradient-to)) !important;
}

/* Sidebar active indicator */
.desk-sidebar .standard-sidebar-section .sidebar-item.active::before {
  background-color: var(--maestrav-primary) !important;
}

/* Module icons */
.module-icon {
  background-color: var(--maestrav-bg-muted);
}

/* Card headers */
.card-header,
.frappe-card .card-header {
  background: linear-gradient(135deg, var(--maestrav-gradient-from), var(--maestrav-gradient-to));
  color: white;
}

/* =============================================================================
   LOGIN PAGE STYLING
   ============================================================================= */

.login-content {
  background: linear-gradient(135deg, var(--maestrav-gradient-from) 0%, var(--maestrav-gradient-to) 100%);
}

.login-content .card,
.login-content .login-card {
  border-radius: 12px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
}

.login-content .btn-primary {
  background: linear-gradient(135deg, var(--maestrav-gradient-from), var(--maestrav-gradient-to)) !important;
  border: none !important;
}

/* =============================================================================
   PRINT STYLES
   ============================================================================= */

@media print {
  /* Hide branding in print */
  .powered-by,
  a[href*="frappe"],
  a[href*="erpnext"] {
    display: none !important;
  }
}

/* =============================================================================
   TENANT DATA ATTRIBUTE SUPPORT
   ============================================================================= */

/* Tenant-specific styling via data attribute (set by JS) */
[data-tenant="exodus"] {
  --maestrav-primary: #6D28D9;
  --maestrav-primary-hover: #5B21B6;
  --maestrav-primary-rgb: 109, 40, 217;
  --maestrav-accent: #F59E0B;
  --maestrav-gradient-from: #6D28D9;
  --maestrav-gradient-to: #4F46E5;
}

[data-tenant="tenderbabe"] {
  --maestrav-primary: #EC4899;
  --maestrav-primary-hover: #DB2777;
  --maestrav-primary-rgb: 236, 72, 153;
  --maestrav-accent: #00D4FF;
  --maestrav-gradient-from: #BE185D;
  --maestrav-gradient-to: #DB2777;
}
