
:root {
  --bg-body: #F5F5F7;
  --bg-card: #FFFFFF;
  --text-primary: #1D1D1F;
  --text-secondary: #86868B;
  --accent-blue: #0071E3;
  --accent-hover: #0077ED;
  --danger: #FF3B30;
  --success: #34C759;
}

body {
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  background-color: var(--bg-body);
  color: var(--text-primary);
  -webkit-font-smoothing: antialiased;
  letter-spacing: -0.01em;
}

/* --- Apple Buttons (Rounded Pill Shape) --- */
.apple-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 28px;
  border-radius: 9999px; /* Full rounded (Pill) */
  font-weight: 700;
  font-size: 15px;
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  cursor: pointer;
  border: none;
  outline: none;
}

.apple-btn:active {
  transform: scale(0.95);
}

.apple-btn-primary {
  background-color: #1D1D1F;
  color: white;
  box-shadow: 0 4px 15px rgba(0,0,0,0.15);
  border-radius: 9999px;
}

.apple-btn-primary:hover {
  background-color: #000000;
  box-shadow: 0 8px 25px rgba(0,0,0,0.25);
  transform: translateY(-2px);
}

.apple-btn-blue {
  background-color: var(--accent-blue);
  color: white;
  box-shadow: 0 4px 15px rgba(0, 113, 227, 0.3);
  border-radius: 9999px;
}

.apple-btn-blue:hover {
  background-color: var(--accent-hover);
  box-shadow: 0 8px 25px rgba(0, 113, 227, 0.45);
  transform: translateY(-2px);
}

.apple-btn-secondary {
  background-color: #FFFFFF;
  color: #1D1D1F;
  border: 1px solid rgba(0,0,0,0.08);
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
  border-radius: 9999px;
}

.apple-btn-secondary:hover {
  background-color: #F9F9FB;
  border-color: rgba(0,0,0,0.12);
  transform: translateY(-1px);
}

/* --- Inputs --- */
.apple-input {
  width: 100%;
  padding: 16px 20px;
  background: #FFFFFF;
  border: 1px solid #E5E5EA;
  border-radius: 20px; /* Rounded Inputs */
  color: var(--text-primary);
  font-size: 16px;
  transition: all 0.3s ease;
  font-weight: 600;
}

.apple-input:focus {
  border-color: var(--accent-blue);
  box-shadow: 0 0 0 4px rgba(0, 113, 227, 0.15);
  outline: none;
}

.apple-input::placeholder {
  color: #86868B;
  font-weight: 500;
}

/* --- Cards --- */
.apple-card {
  background: #FFFFFF;
  border-radius: 32px; /* Super rounded cards */
  box-shadow: 0 10px 30px rgba(0,0,0,0.04);
  border: 1px solid rgba(0,0,0,0.02);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  overflow: hidden;
}

.apple-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 40px rgba(0,0,0,0.08);
}

.squircle {
  border-radius: 32px; /* iOS style smooth corners */
}

/* --- Navigation --- */
.glass-nav {
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: saturate(180%) blur(20px);
  border-bottom: 1px solid rgba(0,0,0,0.05);
}

/* Typography Helpers */
.text-hero {
  letter-spacing: -0.04em;
  line-height: 1.05;
}

/* Animations */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to { opacity: 1; transform: translateY(0); }
}

.animate-fade-up {
  animation: fadeInUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.animate-spring {
  animation: spring 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes spring {
  from { transform: scale(0.96); opacity: 0; }
  to { transform: scale(1); opacity: 1; }
}

/* Scrollbar */
.ios-scroll::-webkit-scrollbar {
  width: 0px;
  background: transparent;
}

/* Mobile Adjustments */
@media (max-width: 768px) {
  .apple-btn { width: 100%; }
}
