/* ── Residencial Solaris — colour system ──────────────────────────────
   Six brand colours come straight from the Manual de Marca (page 6).
   Everything else is a tint/shade derived from them for interface use. */
:root{
  /* Brand core — exact manual values. Never re-mix these. */
  --solaris-teal:#005b68;    /* PANTONE 7715 C — RGB 0 91 104   */
  --solaris-aqua:#52bab2;    /* PANTONE 7472 C — RGB 82 186 178 */
  --solaris-orange:#f1893d;  /* PANTONE 715 C  — RGB 241 137 61 */
  --solaris-amber:#f7ab39;   /* PANTONE 143 C  — RGB 247 171 57 */
  --solaris-yellow:#ffdf4d;  /* PANTONE 121 C  — RGB 255 223 77 */
  --solaris-mint:#e0efe9;    /* PANTONE P 124-1 U — RGB 224 239 233 */

  /* Teal ramp */
  --teal-900:#00323a;
  --teal-800:#004650;
  --teal-700:var(--solaris-teal);
  --teal-600:#1a7280;
  --teal-500:#3a8b97;
  --teal-200:#b7d3d7;
  --teal-100:#dceaec;

  /* Aqua ramp */
  --aqua-700:#2e8f88;
  --aqua-600:#3ea79f;
  --aqua-500:var(--solaris-aqua);
  --aqua-300:#8ed3cd;
  --aqua-200:#b6e2de;
  --aqua-100:var(--solaris-mint);

  /* Sun ramp — orange → amber → yellow */
  --sun-700:#d1701f;
  --sun-600:#e07a2c;
  --sun-500:var(--solaris-orange);
  --sun-400:var(--solaris-amber);
  --sun-300:var(--solaris-yellow);
  --sun-200:#ffedaa;
  --sun-100:#fff8dd;

  /* Neutrals — very slightly teal-tinted, never pure grey */
  --white:#ffffff;
  --neutral-50:#f7faf9;
  --neutral-100:#eef3f2;
  --neutral-200:#dfe8e6;
  --neutral-300:#c6d5d2;
  --neutral-400:#9db1ae;
  --neutral-500:#748a88;
  --neutral-600:#54696a;
  --neutral-700:#3a4f52;
  --neutral-900:#12292d;

  /* ── Semantic aliases — use these in components ── */
  --text-primary:var(--solaris-teal);
  --text-strong:var(--teal-900);
  --text-secondary:var(--neutral-600);
  --text-muted:var(--neutral-500);
  --text-inverse:var(--white);
  --text-accent:var(--solaris-aqua);
  --text-on-sun:var(--solaris-teal);
  --text-link:var(--solaris-teal);
  --text-link-hover:var(--aqua-700);

  --surface-page:var(--white);
  --surface-muted:var(--neutral-50);
  --surface-card:var(--white);
  --surface-sand:var(--solaris-mint);
  --surface-accent:var(--solaris-aqua);
  --surface-accent-soft:var(--aqua-200);
  --surface-inverse:var(--solaris-teal);
  --surface-inverse-deep:var(--teal-900);
  --surface-sun:var(--solaris-amber);
  --surface-sun-soft:var(--sun-100);
  --surface-highlight:var(--solaris-yellow);

  --border-subtle:var(--neutral-200);
  --border-default:var(--neutral-300);
  --border-strong:var(--solaris-teal);
  --border-accent:var(--solaris-aqua);
  --border-on-inverse:rgba(255,255,255,.24);

  --action-primary:var(--solaris-teal);
  --action-primary-hover:var(--teal-800);
  --action-primary-press:var(--teal-900);
  --action-accent:var(--solaris-orange);
  --action-accent-hover:var(--sun-600);
  --action-accent-press:var(--sun-700);
  --action-quiet-hover:var(--neutral-100);
  --focus-ring:var(--solaris-aqua);

  /* Status — borrowed from the brand palette, no foreign hues */
  --status-success:var(--aqua-700);
  --status-success-soft:var(--aqua-200);
  --status-warning:var(--solaris-amber);
  --status-warning-soft:var(--sun-200);
  --status-info:var(--solaris-teal);
  --status-info-soft:var(--teal-100);
  --status-danger:#c2482b;
  --status-danger-soft:#f8ddd5;
}
