:root {
  --bg-main: #fdfcf9;
  --bg-header: #ffffff;
  --card-bg: #ffffff;
  --card-secondary: #f8f8f5;
  --card-border: rgba(15, 23, 42, 0.1);

  /* Changed from green to yellow/gold theme */
  --accent-green: #e6a817;
  --accent-green-dark: #c9920f;
  --accent-green-soft: rgba(230, 168, 23, 0.12);
  --accent-orange: #ff7a2c;
  --accent-orange-deep: #de530c;
  --accent-orange-soft: rgba(255, 122, 44, 0.12);
  --accent-saffron: #ffbe3b;
  --accent-red: #dd4b25;
  --accent-blue: #e6a817;
  --accent-slate: #4a4a4a;
  
  /* Yellow-specific colors */
  --accent-yellow: #f5c518;
  --accent-yellow-dark: #d4a70a;
  --accent-yellow-soft: rgba(245, 197, 24, 0.15);
  --accent-gold: #daa520;

  --text-main: #0d1e16;
  --text-muted: #4e564f;
  --text-dark: #0a150f;
  --shadow-soft: 0 24px 55px rgba(139, 119, 42, 0.08);
  --shadow-card: 0 18px 35px rgba(139, 119, 42, 0.12);
  --radius-xl: 18px;
  --radius-lg: 14px;
}

html, body { height: 100%; }

body {
  font-family: Inter, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  color: var(--text-main);
  background: var(--bg-main);
}

.page-wrap { max-width: 1400px; margin: 0 auto; padding: 20px; }

.app-footer { text-align: center; padding: 12px 0 18px; margin-top: -10px; }
.footer-badge {
  display: inline;
  padding: 0;
  margin: 0;
  border: none;
  background: transparent;
  font-weight: 400;
  font-size: 0.8rem;
  color: var(--text-main);
  opacity: 0.7;
}
.footer-badge .footer-powered {
  color: var(--accent-green-dark);
}
.footer-badge .footer-bavya {
  color: var(--accent-orange);
}

/* Auth (moved from inline styles) */
.auth-shell {
  min-height: 70vh;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.auth-shell::before,
.auth-shell::after {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  z-index: 0;
  filter: blur(40px);
  opacity: 0.6;
}
.auth-shell::before { background: radial-gradient(circle at 30% 30%, rgba(245, 197, 24, 0.55), transparent 65%); top: -60px; left: 5%; }
.auth-shell::after { background: radial-gradient(circle at 70% 70%, rgba(255, 134, 44, 0.45), transparent 70%); bottom: -80px; right: 10%; }
.auth-panel { max-width: 480px; width: 100%; background: #ffffff; border-radius: 28px; padding: 36px; border: 1px solid rgba(0, 0, 0, 0.05); box-shadow: 0 30px 50px rgba(15, 23, 42, 0.12); position: relative; z-index: 1; }
.brand-mark { width: 96px; height: 96px; border-radius: 50%; border: 3px solid var(--accent-orange, #ff862c); display: flex; align-items: center; justify-content: center; margin: 0 auto 12px; }
.brand-mark img { width: 80px; height: 80px; object-fit: contain; }
.auth-input { border-radius: 999px; background: rgba(15, 23, 42, 0.04); border: 1px solid rgba(15, 23, 42, 0.12); padding: 0 20px; transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease; }
.auth-input:focus-within { border-color: #f5c518; background: #fff; box-shadow: 0 0 0 3px rgba(245, 197, 24, 0.12); }
.auth-input input { border: none; background: transparent; box-shadow: none; width: 100%; height: 48px; font-size: 1rem; }
.auth-input input:focus { outline: none; background: transparent; box-shadow: none; }
.btn-auth { border-radius: 999px; border: none; background: linear-gradient(135deg, #f5c518, #e6a817); color: #1a1a1a; font-weight: 700; font-size: 1rem; letter-spacing: 0.02em; transition: background 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease; }
.btn-auth:hover { background: linear-gradient(135deg, #e6a817, #c9920f); color: #1a1a1a; box-shadow: 0 8px 24px rgba(230, 168, 23, 0.35); transform: translateY(-1px); }

/* Small helpers */
.logo-circle { width: 140px; height: 140px; border-radius: 50%; border: 4px solid var(--accent-orange); background: #fff; display: flex; align-items: center; justify-content: center; box-shadow: 0 20px 45px rgba(12, 43, 29, 0.22); }
.logo-circle img { width: 110px; height: 110px; object-fit: contain; }

/* Cards */
.card { background: var(--card-bg); border-radius: 16px; padding: 18px; box-shadow: var(--shadow-soft); border: 1px solid var(--card-border); }

@media (max-width: 1150px) {.hero-layout { grid-template-columns: 1fr; } .hero-partners { align-items: flex-start; }}
