/* 2026 aerospace polish: precise, restrained, cockpit-like */

:root {
  --ios-bg: #edf2f7;
  --ios-surface: rgba(255, 255, 255, 0.86);
  --ios-surface-alt: rgba(248, 250, 252, 0.96);
  --ios-glass-bg: rgba(255, 255, 255, 0.72);
  --ios-border: rgba(15, 23, 42, 0.10);
  --ios-border-light: rgba(15, 23, 42, 0.06);
  --ios-text: #0f172a;
  --ios-text-secondary: rgba(15, 23, 42, 0.68);
  --ios-text-tertiary: rgba(15, 23, 42, 0.42);
  --ios-accent: #0f4c81;
  --ios-accent-dim: rgba(15, 76, 129, 0.75);
  --ios-tab-bg: rgba(237, 242, 247, 0.92);
  --ios-tab-active: rgba(15, 76, 129, 0.12);
  --ios-tab-hover: rgba(15, 23, 42, 0.05);
  --ios-glass-blur: 18px;
  --ios-radius-sm: 10px;
  --ios-radius-md: 14px;
  --ios-radius-lg: 16px;
  --ios-radius-xl: 20px;
}

@media (prefers-color-scheme: dark) {
  :root {
    --ios-bg: #08111b;
    --ios-surface: rgba(13, 20, 31, 0.86);
    --ios-surface-alt: rgba(20, 30, 44, 0.96);
    --ios-glass-bg: rgba(13, 20, 31, 0.72);
    --ios-border: rgba(226, 232, 240, 0.10);
    --ios-border-light: rgba(226, 232, 240, 0.06);
    --ios-text: #f8fafc;
    --ios-text-secondary: rgba(248, 250, 252, 0.72);
    --ios-text-tertiary: rgba(248, 250, 252, 0.44);
    --ios-accent: #5cc8ff;
    --ios-accent-dim: rgba(92, 200, 255, 0.78);
    --ios-tab-bg: rgba(8, 17, 27, 0.88);
    --ios-tab-active: rgba(92, 200, 255, 0.14);
    --ios-tab-hover: rgba(255, 255, 255, 0.06);
  }
}

body {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.12), transparent 28%),
    var(--ios-bg);
  color: var(--ios-text);
}

body::before {
  background-image:
    linear-gradient(rgba(15, 23, 42, 0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(15, 23, 42, 0.06) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.56), transparent 76%);
}

@media (prefers-color-scheme: dark) {
  body::before {
    background-image:
      linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px);
  }
}

.ios-tab-bar {
  background: var(--ios-tab-bg);
  backdrop-filter: blur(var(--ios-glass-blur));
  -webkit-backdrop-filter: blur(var(--ios-glass-blur));
  border-bottom: 1px solid var(--ios-border);
}

.ios-tab-item {
  border-radius: 10px;
  color: var(--ios-text-tertiary);
}

.ios-tab-item:hover {
  background: var(--ios-tab-hover);
  color: var(--ios-text-secondary);
}

.ios-tab-item.active {
  background: var(--ios-tab-active);
  color: var(--ios-text);
}

.ios-card,
.aero-panel,
.aero-panel-strong {
  background: var(--ios-surface);
  border: 1px solid var(--ios-border);
  border-radius: var(--ios-radius-lg);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.08);
}

.aero-panel {
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.aero-panel-strong {
  background: var(--ios-surface-alt);
}

.ios-card:hover,
.aero-panel:hover,
.aero-panel-strong:hover {
  border-color: rgba(15, 76, 129, 0.28);
}

.ios-btn {
  background: var(--ios-accent);
  color: #fff;
  border-radius: 999px;
  box-shadow: 0 14px 30px rgba(15, 76, 129, 0.18);
}

.ios-btn:hover {
  background: var(--ios-accent-dim);
  opacity: 1;
}

.ios-btn-secondary,
.ios-btn-ghost {
  border: 1px solid var(--ios-border);
  color: var(--ios-text-secondary);
}

.ios-btn-secondary:hover,
.ios-btn-ghost:hover {
  background: var(--ios-surface-alt);
  color: var(--ios-text);
}

.ios-tag {
  background: var(--ios-surface);
  border: 1px solid var(--ios-border);
  color: var(--ios-text-secondary);
  border-radius: 999px;
}

.ios-tag:hover,
.ios-tag-active {
  border-color: rgba(15, 76, 129, 0.28);
  color: var(--ios-text);
  background: rgba(15, 76, 129, 0.06);
}

.ios-title,
.ios-title-large,
.ios-subtitle,
.ios-caption,
.ios-stat,
.ios-input,
.ios-footer {
  letter-spacing: 0;
}

.ios-title-large {
  color: var(--ios-text);
  line-height: 0.96;
  font-weight: 900;
}

.ios-title {
  color: var(--ios-text);
}

.ios-subtitle {
  color: var(--ios-text-secondary);
}

.ios-caption {
  color: var(--ios-text-tertiary);
}

.ios-stat {
  background: var(--ios-surface);
  border: 1px solid var(--ios-border);
}

.ios-input {
  background: var(--ios-surface);
  border: 1px solid var(--ios-border);
  color: var(--ios-text);
}

.ios-input:focus {
  border-color: rgba(15, 76, 129, 0.42);
}

.ios-footer {
  border-top: 1px solid var(--ios-border-light);
}

.aero-kicker {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.4rem 0.75rem;
  border: 1px solid var(--ios-border);
  border-radius: 999px;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ios-text-secondary);
  background: rgba(255,255,255,0.35);
}

.aero-meta {
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ios-text-tertiary);
}

.aero-metric {
  padding: 0.9rem 1rem;
  border: 1px solid var(--ios-border);
  border-radius: 14px;
  background: var(--ios-surface);
}

.aero-metric-label {
  display: block;
  margin-bottom: 0.35rem;
  font-size: 0.72rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ios-text-tertiary);
}

.aero-metric-value {
  display: block;
  font-size: 0.95rem;
  font-weight: 650;
  color: var(--ios-text);
}

.aero-divider {
  border-top: 1px solid var(--ios-border);
}

.text-balance {
  text-wrap: balance;
}

@media (max-width: 640px) {
  .ios-tab-item {
    padding: 0.4rem 0.55rem;
    font-size: 0.75rem;
  }

  .ios-card,
  .aero-panel,
  .aero-panel-strong {
    border-radius: 14px;
  }

  .aero-kicker {
    font-size: 0.68rem;
    padding: 0.34rem 0.64rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
