/* nudge - livealittle.app */
/* Apple iOS 26+ Native */

/* Quicksand fallback for non-Apple devices */

:root {
  /* Colors - Pure */
  --black: #000000;
  --white: #ffffff;
  --text-primary: #ffffff;
  --text-secondary: rgba(255, 255, 255, 0.72);
  --text-muted: rgba(255, 255, 255, 0.48);
  --color-primary: #ffffff;
  --color-secondary: rgba(255, 255, 255, 0.72);
  --color-tertiary: rgba(255, 255, 255, 0.48);
  --color-accent: #5856d6;
  --color-success: #34c759;

  /* Glass - iOS 26 Liquid Glass */
  --glass-bg: rgba(255, 255, 255, 0.08);
  --glass-bg-hover: rgba(255, 255, 255, 0.14);
  --glass-border: rgba(255, 255, 255, 0.18);
  --glass-glow: rgba(255, 255, 255, 0.06);

  /* Typography - SF Pro Rounded → Quicksand fallback */
  --font-rounded: 'SF Pro Rounded', ui-rounded, 'Quicksand', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-display: 'SF Pro Display', -apple-system, BlinkMacSystemFont, 'Quicksand', sans-serif;
  --font-text: 'SF Pro Text', -apple-system, BlinkMacSystemFont, 'Quicksand', sans-serif;

  /* iOS Timing - Spring physics */
  --spring: cubic-bezier(0.175, 0.885, 0.32, 1.275);
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-out-quint: cubic-bezier(0.22, 1, 0.36, 1);
}

/* Reset */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-snap-type: y proximity;
  scroll-behavior: smooth;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: var(--black);
  /* Fill safe areas with background */
  min-height: 100%;
  /* Smoother scroll physics */
  overscroll-behavior-y: contain;
}

body {
  font-family: var(--font-rounded);
  background: var(--black);
  color: var(--text-primary);
  line-height: 1.5;
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
  min-height: 100dvh;
}

/* Selection */
::selection {
  background: rgba(255, 255, 255, 0.24);
  color: var(--white);
}

/* Focus - iOS style */
:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.4);
  outline-offset: 3px;
  border-radius: 8px;
}

/* Links */
a {
  color: inherit;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

/* Buttons */
button {
  font-family: inherit;
  cursor: pointer;
  border: none;
  background: none;
  color: inherit;
  -webkit-tap-highlight-color: transparent;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-snap-type: none;
    scroll-behavior: auto;
  }

  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
