:root {
  --tp-primary: #0D9488;
  --tp-primary-dark: #0F766E;
  --tp-primary-light: #14B8A6;
  --tp-accent: #F59E0B;
  --tp-primary-rgb: 13, 148, 136;
  --tp-primary-muted: rgba(13, 148, 136, 0.12);
  --tp-primary-muted-light: rgba(13, 148, 136, 0.05);
  --tp-primary-muted-strong: rgba(13, 148, 136, 0.10);
  --tp-section-heading-bg: linear-gradient(135deg, rgba(13, 148, 136, 0.12) 0%, rgba(13, 148, 136, 0.05) 100%);
  --tp-surface: #F8FAFC;
  --tp-card: #FFFFFF;
  --tp-text: #1E293B;
  --tp-text-muted: #64748B;
  --tp-border: #E2E8F0;
  --tp-danger: #DC2626;
  --tp-success: #16A34A;
  --tp-bottom-nav-h: 56px;
  --tp-bottom-nav-offset: var(--tp-bottom-nav-h);
  --tp-mobile-scroll-extra: 2rem;
  --tp-viewport-h: 100vh;
  --tp-viewport-h-min: 100vh;
  --tp-sidebar-w-desktop: 240px;
  --tp-sidebar-w-tablet: 200px;
  --tp-sidebar-w-collapsed: 72px;
  --tp-topbar-h: 56px;
  --tp-touch-min: 44px;
  --tp-radius: 12px;
  --tp-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
  --tp-shadow-lg: 0 4px 12px rgba(0, 0, 0, 0.1);
  --tp-font-size-base: 1rem;
  --tp-font-size-md: 0.9375rem;
  --tp-font-size-sm: 0.875rem;
  --tp-font-size-xs: 0.8125rem;
  --tp-line-height: 1.5;
}

/* Modern mobile viewports - iOS Safari URL bar at bottom uses the small/dynamic height */
@supports (height: 100dvh) {
  :root {
    --tp-viewport-h: 100dvh;
    --tp-viewport-h-min: 100svh;
  }
}
