@import url('https://fonts.googleapis.com/css2?family=Cairo:wght@300;400;500;600;700;800;900&family=Questrial&display=swap');

:root {
  --font-primary: 'Century Gothic', CenturyGothic, AppleGothic, 'Questrial', sans-serif;
  --font-arabic: 'Cairo', 'Century Gothic', sans-serif;
  
  /* Brand Colors */
  --primary-yellow: #FCD15A;
  --primary-yellow-hover: #E5BC50;
  
  /* Backgrounds */
  --bg-gradient-start: #F4F1EB;
  --bg-gradient-end: #EAE6DF;
  --bg-card: #FFFFFF;
  --bg-input: rgba(255, 255, 255, 0.7);
  
  /* Text */
  --text-main: #2D3748;
  --text-muted: #718096;
  --text-placeholder: #A0AEC0;
}

body {
  font-family: var(--font-primary) !important;
  color: var(--text-main) !important;
  background: linear-gradient(135deg, var(--bg-gradient-start), var(--bg-gradient-end)) !important;
  -webkit-font-smoothing: antialiased;
  font-size: 14px;
}

[dir="rtl"] body {
  font-family: var(--font-arabic) !important;
}

/* Typography Limits */
h1, .page-header-title {
  font-size: 24px !important;
  font-weight: 600 !important;
  color: var(--text-main) !important;
  line-height: 1.4 !important;
}

h2, .section-title {
  font-size: 18px !important;
  font-weight: 500 !important;
  color: var(--text-main) !important;
  line-height: 1.4 !important;
}

h3, h4, h5, h6 {
  font-weight: 500 !important;
  color: var(--text-main) !important;
}

p, span, td, th, label {
  font-size: 14px;
}

.text-xs, small, .small-text, .badge {
  font-size: 12px !important;
}

/* Strict Container and Card Rules */
.card, .dashboard-card, .data-card {
  border-radius: 10px !important;
  border: 1px solid #E5E7EB !important;
  padding: 8px 10px !important; /* STRICT: 8px vertical, 10px horizontal */
  background: var(--bg-card) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04) !important;
  margin-bottom: 14px !important;
}

.card-header {
  padding: 6px 4px !important;
  background: transparent !important;
  border-bottom: 1px solid #F3F4F6 !important;
}

.card-body {
  padding: 6px 4px !important;
}

/* Buttons */
.btn-primary, .btn-brand {
  background-color: var(--primary-yellow) !important;
  border-color: var(--primary-yellow) !important;
  color: #000000 !important;
  font-weight: 600 !important;
  border-radius: 9999px !important;
  padding: 8px 18px !important;
  font-size: 13px !important;
  box-shadow: 0 2px 6px rgba(252, 209, 90, 0.3) !important;
  transition: all 0.2s ease !important;
}

.btn-primary:hover, .btn-brand:hover {
  background-color: var(--primary-yellow-hover) !important;
  border-color: var(--primary-yellow-hover) !important;
  color: #000000 !important;
  transform: translateY(-1px);
}

.btn-secondary, .btn-outline-custom {
  background: transparent !important;
  border: 1px solid #D1D5DB !important;
  color: var(--text-main) !important;
  border-radius: 9999px !important;
  padding: 8px 16px !important;
  font-size: 13px !important;
}

.btn-sm {
  padding: 4px 12px !important;
  font-size: 12px !important;
  border-radius: 9999px !important;
}

/* Form Inputs */
.form-control, .form-select {
  background-color: var(--bg-input) !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 9999px !important;
  font-size: 13px !important;
  color: var(--text-main) !important;
  padding: 8px 14px !important;
  height: auto !important;
  transition: border-color 0.2s ease;
}

textarea.form-control {
  border-radius: 14px !important;
}

.form-control:focus, .form-select:focus {
  border-color: var(--primary-yellow) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(252, 209, 90, 0.25) !important;
}

.form-label {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: var(--text-muted) !important;
  margin-bottom: 4px !important;
}

/* Auto-Translate AJAX Button */
.btn-auto-translate {
  background: #FFFBEB !important;
  border: 1px solid var(--primary-yellow) !important;
  color: #92400E !important;
  border-radius: 9999px !important;
  padding: 3px 10px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
}

.btn-auto-translate:hover {
  background: var(--primary-yellow) !important;
  color: #000000 !important;
}

/* Badges */
.badge-commission {
  background-color: #FEF3C7 !important;
  color: #92400E !important;
  border: 1px solid #FCD34D !important;
  border-radius: 9999px !important;
  padding: 4px 10px !important;
  font-weight: 600 !important;
}

.badge-subscription {
  background-color: #E0E7FF !important;
  color: #3730A3 !important;
  border: 1px solid #C7D2FE !important;
  border-radius: 9999px !important;
  padding: 4px 10px !important;
  font-weight: 600 !important;
}

.badge-active {
  background-color: #D1FAE5 !important;
  color: #065F46 !important;
  border-radius: 9999px !important;
  padding: 4px 10px !important;
}

.badge-pending {
  background-color: #FEF3C7 !important;
  color: #B45309 !important;
  border-radius: 9999px !important;
  padding: 4px 10px !important;
}

/* Metric / Stat Tiles */
.stat-tile {
  background: #FFFFFF;
  border: 1px solid #E5E7EB;
  border-radius: 10px;
  padding: 8px 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.stat-val {
  font-size: 22px;
  font-weight: 700;
  color: var(--text-main);
  line-height: 1.2;
}

.stat-lbl {
  font-size: 12px;
  color: var(--text-muted);
}
