/* Base styles and CSS variables */

.material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
  line-height: 1;
}

:root {
  --neo-bg: #f0f2f5;
  --neo-surface: #ffffff;
  --neo-accent: #ffdf70;
  --neo-primary: #6366f1;
  --neo-text: #111827;
  --neo-text-muted: #6b7280;
  --neo-shadow-light: #ffffff;
  --neo-shadow-dark: #d1d9e6;
  --glass-bg: rgba(255, 255, 255, 0.15);
  --glass-border: rgba(0, 0, 0, 0.06);
  --radius-lg: 24px;
  --radius-xl: 32px;
  --font: "Inter", -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;

  /* Pricing colors */
  --color-primary: #F5A623;
  --color-primary-hover: #E09612;
  --color-accent-yellow: #FFC857;
  --color-success: #10b981;
  --color-warning: #f59e0b;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--font);
  background: linear-gradient(145deg, var(--neo-bg), #e6e9ef);
  color: var(--neo-text);
  min-height: 100vh;
  overflow-x: hidden;
}

/* Buttons */
.neo-button {
  background: var(--neo-bg);
  color: var(--neo-text);
  border: 0;
  border-radius: 16px;
  padding: 16px 32px;
  font-weight: 700;
  font-size: 1.05rem;
  cursor: pointer;
  box-shadow: 6px 6px 12px var(--neo-shadow-dark), -6px -6px 12px var(--neo-shadow-light);
  transition: all 0.3s ease;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  position: relative;
  overflow: hidden;
  will-change: transform;
}

.neo-button:hover {
  transform: translateY(-3px);
  box-shadow: 8px 8px 16px var(--neo-shadow-dark), -8px -8px 16px var(--neo-shadow-light);
}

.neo-button:active {
  transform: translateY(0) scale(0.98);
  box-shadow: inset 4px 4px 8px var(--neo-shadow-dark), inset -4px -4px 8px var(--neo-shadow-light);
}

.neo-button:focus-visible {
  outline: 3px solid rgba(99, 102, 241, 0.4);
  outline-offset: 3px;
}

.neo-button:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}

/* Primary Button (Conversion CTAs) */
.neo-button-primary {
  background: linear-gradient(145deg, var(--neo-accent), #ffa726);
  color: #1f2937;
  box-shadow: 8px 8px 16px var(--neo-shadow-dark), -8px -8px 16px var(--neo-shadow-light), 0 4px 12px rgba(255, 167, 38, 0.3);
}

.neo-button-primary:hover {
  background: linear-gradient(145deg, #ffe680, #ffb84d);
  box-shadow: 10px 10px 20px var(--neo-shadow-dark), -10px -10px 20px var(--neo-shadow-light), 0 6px 16px rgba(255, 167, 38, 0.4);
}

/* Secondary Button (Informational CTAs) */
.neo-button-secondary {
  background: transparent;
  border: 2px solid rgba(99, 102, 241, 0.3);
  color: var(--neo-primary);
  box-shadow: none;
}

.neo-button-secondary:hover {
  background: rgba(99, 102, 241, 0.05);
  border-color: rgba(99, 102, 241, 0.5);
  box-shadow: 0 4px 12px rgba(99, 102, 241, 0.15);
}

.neo-button-secondary:active {
  background: rgba(99, 102, 241, 0.1);
  transform: translateY(0) scale(0.98);
}

/* Button with icon */
.neo-button .btn-icon {
  font-size: 24px;
  transition: transform 0.3s ease;
}

.neo-button:hover .btn-icon {
  transform: translateX(3px);
  animation: iconBounce 0.5s ease;
}

.neo-button-secondary .btn-icon {
  transform: rotate(0deg);
}

.neo-button-secondary:hover .btn-icon {
  transform: translateY(3px) rotate(0deg);
  animation: iconBounceDown 0.5s ease;
}

/* Pulse animation for hero CTA (optional) */
.neo-button-pulse {
  animation: buttonPulse 2s ease-in-out infinite;
}

.neo-button-pulse:hover {
  animation: none;
}

/* Loading state */
.neo-button.loading {
  opacity: 0.6;
  cursor: wait;
}

.neo-button.loading .btn-icon {
  animation: spin 1s linear infinite;
}

/* Outline button (legacy support) */
.neo-button-outline {
  background: transparent;
  border: 2px solid rgba(99,102,241,0.25);
  box-shadow: none;
}
