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

* { -webkit-tap-highlight-color: transparent; }

body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  background: #F5F5F5;
  color: #0A0A0A;
}

.num { font-variant-numeric: tabular-nums; }

/* Bottom nav safe area */
.pb-nav { padding-bottom: calc(72px + env(safe-area-inset-bottom)); }

/* Bottom nav */
.bottom-nav {
  position: fixed;
  bottom: 0; left: 0; right: 0;
  background: #fff;
  border-top: 1px solid #E8E8E8;
  padding-bottom: env(safe-area-inset-bottom);
  z-index: 50;
}

/* Cards */
.card {
  background: #fff;
  border-radius: 16px;
}

/* Stat label */
.stat-label {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #4B5563;
}

/* Divider list */
.divide-list > * + * {
  border-top: 1px solid #F0F0F0;
}

/* Form inputs — high contrast */
.input {
  width: 100%;
  background: #fff;
  border: 1.5px solid #E5E7EB;
  border-radius: 14px;
  padding: 14px 16px;
  font-size: 15px;
  font-weight: 500;
  color: #0A0A0A;
  outline: none;
  transition: all 0.15s ease;
}
.input::placeholder { color: #6B7280; font-weight: 400; }
.input:focus { border-color: #0A0A0A; background: #fff; }
.input:hover:not(:focus) { border-color: #9CA3AF; }
.input.error { border-color: #EF4444; }
.input-label {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: #111827;
  margin-bottom: 8px;
}
.input-label .hint {
  font-weight: 500;
  color: #6B7280;
  font-size: 12px;
}

[x-cloak] { display: none !important; }
