/*
  Reside Global Design System Tokens
  Version: 20260813-ds1

  Shared visual foundation only. This file must never contain employee/client
  navigation, permissions, routing, authentication, data access or workflow
  logic. Load a copy inside each portal environment.
*/

:root {
  --rgds-navy-950: #060d18;
  --rgds-navy-900: #0a1628;
  --rgds-navy-800: #13243a;
  --rgds-gold-600: #c9a227;
  --rgds-gold-500: #d7b64a;
  --rgds-gold-100: #f7edca;
  --rgds-gold-050: #fbf7e8;
  --rgds-paper: #f6f4ee;
  --rgds-surface: #ffffff;
  --rgds-ink: #0a1628;
  --rgds-muted: #667085;
  --rgds-muted-2: #98a2b3;
  --rgds-border: rgba(10, 22, 40, 0.1);
  --rgds-border-strong: rgba(10, 22, 40, 0.18);
  --rgds-success: #0f9d6b;
  --rgds-success-bg: #dff8ee;
  --rgds-warning: #b7791f;
  --rgds-warning-bg: #fff4d6;
  --rgds-danger: #b42318;
  --rgds-danger-bg: #fee4e2;
  --rgds-info: #2563eb;
  --rgds-info-bg: #dbeafe;

  --rgds-font-ui: "Inter Tight", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --rgds-font-display: Fraunces, "DM Serif Display", Georgia, serif;
  --rgds-font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;

  --rgds-text-xs: 0.72rem;
  --rgds-text-sm: 0.84rem;
  --rgds-text-md: 0.95rem;
  --rgds-text-lg: 1.08rem;
  --rgds-text-xl: 1.35rem;
  --rgds-text-2xl: 1.85rem;

  --rgds-space-1: 0.25rem;
  --rgds-space-2: 0.5rem;
  --rgds-space-3: 0.75rem;
  --rgds-space-4: 1rem;
  --rgds-space-5: 1.25rem;
  --rgds-space-6: 1.5rem;
  --rgds-space-8: 2rem;

  --rgds-radius-sm: 6px;
  --rgds-radius-md: 8px;
  --rgds-radius-lg: 12px;
  --rgds-radius-xl: 16px;
  --rgds-shadow-sm: 0 1px 2px rgba(10, 22, 40, 0.06);
  --rgds-shadow-md: 0 10px 28px rgba(10, 22, 40, 0.1);
  --rgds-shadow-lg: 0 22px 60px rgba(10, 22, 40, 0.18);

  --rgds-focus: 0 0 0 3px rgba(201, 162, 39, 0.3);
  --rgds-motion-fast: 120ms;
  --rgds-motion-base: 180ms;
  --rgds-motion-slow: 260ms;

  --rgds-z-sticky: 40;
  --rgds-z-drawer: 800;
  --rgds-z-modal: 1000;
  --rgds-z-toast: 1200;
  --rgds-z-tooltip: 1400;

  --rgds-safe-top: env(safe-area-inset-top, 0px);
  --rgds-safe-right: env(safe-area-inset-right, 0px);
  --rgds-safe-bottom: env(safe-area-inset-bottom, 0px);
  --rgds-safe-left: env(safe-area-inset-left, 0px);
}

.rgds-card {
  background: var(--rgds-surface);
  border: 1px solid var(--rgds-border);
  border-radius: var(--rgds-radius-md);
  box-shadow: var(--rgds-shadow-sm);
}

.rgds-button {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--rgds-space-2);
  border: 1px solid var(--rgds-border-strong);
  border-radius: var(--rgds-radius-sm);
  background: var(--rgds-surface);
  color: var(--rgds-ink);
  font-family: var(--rgds-font-ui);
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
  transition: background-color var(--rgds-motion-fast) ease, border-color var(--rgds-motion-fast) ease, transform var(--rgds-motion-fast) ease;
}

.rgds-button:hover {
  border-color: var(--rgds-gold-600);
  background: var(--rgds-gold-050);
}

.rgds-button:active {
  transform: translateY(1px);
}

.rgds-button:focus-visible,
.rgds-input:focus-visible {
  outline: none;
  box-shadow: var(--rgds-focus);
}

.rgds-button-primary {
  border-color: var(--rgds-gold-600);
  background: var(--rgds-gold-600);
  color: var(--rgds-navy-900);
}

.rgds-input {
  min-height: 42px;
  width: 100%;
  border: 1px solid var(--rgds-border);
  border-radius: var(--rgds-radius-sm);
  background: var(--rgds-surface);
  color: var(--rgds-ink);
  font-family: var(--rgds-font-ui);
}

.rgds-badge {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 0 var(--rgds-space-2);
  border-radius: 999px;
  font-size: var(--rgds-text-xs);
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.rgds-badge-success {
  background: var(--rgds-success-bg);
  color: var(--rgds-success);
}

.rgds-badge-warning {
  background: var(--rgds-warning-bg);
  color: var(--rgds-warning);
}

.rgds-badge-danger {
  background: var(--rgds-danger-bg);
  color: var(--rgds-danger);
}

.rgds-badge-info {
  background: var(--rgds-info-bg);
  color: var(--rgds-info);
}

.rgds-safe-shell {
  padding-top: var(--rgds-safe-top);
  padding-right: var(--rgds-safe-right);
  padding-bottom: var(--rgds-safe-bottom);
  padding-left: var(--rgds-safe-left);
}

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