/* ==========================================================================
   Propertech · Design Tokens
   Imported verbatim from the Propertech Design System (Claude Design):
   colors · typography · spacing/radii/layout · effects · base elements.
   Brand: Orange (#F59E1B) + Matte Black (#1A1A1A) + lots of white space.
   ========================================================================== */

/* ---------------------------------- COLORS -------------------------------- */
:root {
  /* Brand orange (signature marigold #F8B24A -> deeper action orange) */
  --orange-50:  #FFF8ED;
  --orange-100: #FEEBCB;
  --orange-200: #FCD592;
  --orange-300: #FABF5C;
  --orange-400: #F8B24A;   /* logo mark — brand signature amber */
  --orange-500: #F59E1B;   /* primary action */
  --orange-600: #E08706;   /* hover */
  --orange-700: #B86A05;   /* active / pressed */
  --orange-800: #8F5207;
  --orange-900: #6B3E0A;
  --orange-vivid: #FF8C00; /* "Orange Vivid" from brand guide — bold callouts */

  /* ProperNet red / danger */
  --red-50:  #FDECED;
  --red-100: #F9CFD2;
  --red-200: #EE979D;
  --red-300: #E2646C;
  --red-500: #C81E2C;
  --red-600: #B81828;      /* ProperNet accent */
  --red-700: #97131F;
  --red-800: #720E17;

  /* Ink / neutral (matte black #1A1A1A base) */
  --ink-950: #0E0E10;
  --ink-900: #1A1A1A;      /* matte black — brand */
  --ink-800: #2A2A2E;
  --ink-700: #3D3D42;
  --ink-600: #55555C;
  --ink-500: #71717A;
  --ink-400: #9A9AA3;
  --ink-300: #C4C4CC;
  --ink-200: #E4E4E9;
  --ink-100: #F0F0F2;
  --ink-50:  #F7F7F8;
  --white:   #FFFFFF;

  /* Supporting semantics */
  --green-50:  #E9F7EF;
  --green-500: #2E9E5B;
  --green-600: #24824A;
  --blue-50:   #EAF1FC;
  --blue-500:  #2563C9;
  --blue-600:  #1D4FA6;
  --amber-warn: #E08706;

  /* Semantic aliases */
  --color-primary:        var(--orange-500);
  --color-primary-hover:  var(--orange-600);
  --color-primary-active: var(--orange-700);
  --color-primary-soft:   var(--orange-50);
  --color-accent:         var(--orange-400);

  --text-strong:   var(--ink-900);
  --text-body:     var(--ink-700);
  --text-muted:    var(--ink-500);
  --text-subtle:   var(--ink-400);
  --text-inverse:  var(--white);
  --text-on-primary: var(--ink-900);
  --text-link:     var(--orange-700);

  --surface-page:    var(--white);
  --surface-subtle:  var(--ink-50);
  --surface-muted:   var(--ink-100);
  --surface-card:    var(--white);
  --surface-inverse: var(--ink-900);
  --surface-accent:  var(--orange-50);

  --border-subtle:  var(--ink-200);
  --border-default: var(--ink-300);
  --border-strong:  var(--ink-900);
  --border-accent:  var(--orange-400);

  --focus-ring:  var(--orange-500);

  --success: var(--green-500);
  --danger:  var(--red-600);
  --warning: var(--amber-warn);
  --info:    var(--blue-500);

  /* Product accents (the three divisions) */
  --product-propertech: var(--orange-500);
  --product-propernet:  var(--red-600);
  --product-properlink: var(--ink-900);

  /* ------------------------------ TYPOGRAPHY ---------------------------- */
  --font-display: 'Montserrat', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-sans:    'Hanken Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-script:  'Yellowtail', 'Brush Script MT', cursive;
  --font-mono:    'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
  --font-heading: var(--font-display);
  --font-body:    var(--font-sans);

  --text-xs:   0.75rem;
  --text-sm:   0.875rem;
  --text-base: 1rem;
  --text-md:   1.125rem;
  --text-lg:   1.25rem;
  --text-xl:   1.5rem;
  --text-2xl:  1.875rem;
  --text-3xl:  2.25rem;
  --text-4xl:  3rem;
  --text-5xl:  3.75rem;
  --text-6xl:  4.5rem;

  --weight-regular:  400;
  --weight-medium:   500;
  --weight-semibold: 600;
  --weight-bold:     700;
  --weight-extrabold:800;
  --weight-black:    900;

  --leading-none:    1;
  --leading-tight:   1.12;
  --leading-snug:    1.28;
  --leading-normal:  1.55;
  --leading-relaxed: 1.72;

  --tracking-tighter: -0.03em;
  --tracking-tight:   -0.015em;
  --tracking-normal:  0;
  --tracking-wide:    0.03em;
  --tracking-wider:   0.08em;
  --tracking-eyebrow: 0.16em;

  /* -------------------------- SPACING / RADII / LAYOUT ------------------ */
  --space-0:  0;
  --space-1:  0.25rem;
  --space-2:  0.5rem;
  --space-3:  0.75rem;
  --space-4:  1rem;
  --space-5:  1.25rem;
  --space-6:  1.5rem;
  --space-8:  2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;
  --space-32: 8rem;

  --radius-xs:   4px;
  --radius-sm:   6px;
  --radius-md:   10px;
  --radius-lg:   14px;
  --radius-xl:   20px;
  --radius-2xl:  28px;
  --radius-full: 9999px;

  --container-sm:  640px;
  --container-md:  860px;
  --container-lg:  1120px;
  --container-xl:  1280px;
  --gutter:        var(--space-6);
  --section-y:     var(--space-24);

  /* ------------------------------- EFFECTS ------------------------------ */
  --shadow-xs: 0 1px 2px rgba(16,16,20,0.06);
  --shadow-sm: 0 1px 3px rgba(16,16,20,0.08), 0 1px 2px rgba(16,16,20,0.04);
  --shadow-md: 0 6px 16px rgba(16,16,20,0.08), 0 2px 4px rgba(16,16,20,0.04);
  --shadow-lg: 0 14px 32px rgba(16,16,20,0.10), 0 4px 8px rgba(16,16,20,0.05);
  --shadow-xl: 0 28px 56px rgba(16,16,20,0.14), 0 8px 16px rgba(16,16,20,0.06);
  --shadow-amber: 0 10px 26px rgba(245,158,27,0.32);
  --shadow-amber-sm: 0 4px 12px rgba(245,158,27,0.28);

  --border-width: 1px;
  --border-width-thick: 2px;
  --border-hairline: 1px solid var(--border-subtle);

  --ring-width: 3px;
  --ring: 0 0 0 var(--ring-width) rgba(245,158,27,0.40);

  --ease-standard: cubic-bezier(0.2, 0.7, 0.3, 1);
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in: cubic-bezier(0.5, 0, 0.75, 0);
  --duration-fast: 120ms;
  --duration-base: 180ms;
  --duration-slow: 280ms;
  --transition-base: all var(--duration-base) var(--ease-standard);

  --z-base: 1;
  --z-dropdown: 100;
  --z-sticky: 200;
  --z-overlay: 300;
  --z-modal: 400;
  --z-toast: 500;
}
