/* =========================================
   THEPETGRID 2.0 — DESIGN TOKENS
   File: design/theme.css
   Version: 1.0
========================================= */

:root {

    /* =====================================
       BRAND COLORS
    ===================================== */

    --color-primary-50: #fff8eb;
    --color-primary-100: #ffedc6;
    --color-primary-200: #ffdc88;
    --color-primary-300: #ffc44a;
    --color-primary-400: #ffad1f;
    --color-primary-500: #f79400;
    --color-primary-600: #db7000;
    --color-primary-700: #b64d04;
    --color-primary-800: #943b0c;
    --color-primary-900: #79310e;

    --color-secondary-50: #eef9ff;
    --color-secondary-100: #d9f1ff;
    --color-secondary-200: #bce8ff;
    --color-secondary-300: #8edaff;
    --color-secondary-400: #59c2ff;
    --color-secondary-500: #32a5f5;
    --color-secondary-600: #1b84da;
    --color-secondary-700: #1969b0;
    --color-secondary-800: #1b5990;
    --color-secondary-900: #194a76;

    --color-success-50: #edfff4;
    --color-success-100: #d5ffe4;
    --color-success-200: #adffcb;
    --color-success-300: #70fca7;
    --color-success-400: #32ed7e;
    --color-success-500: #0dcc61;
    --color-success-600: #05a84e;
    --color-success-700: #08833f;
    --color-success-800: #0c6737;
    --color-success-900: #0c552f;

    --color-warning-50: #fffbea;
    --color-warning-100: #fff2c5;
    --color-warning-200: #ffe585;
    --color-warning-300: #ffd246;
    --color-warning-400: #ffbd1b;
    --color-warning-500: #f59e0b;
    --color-warning-600: #d97706;
    --color-warning-700: #b45309;
    --color-warning-800: #92400e;
    --color-warning-900: #78350f;

    --color-error-50: #fff1f2;
    --color-error-100: #ffe4e6;
    --color-error-200: #fecdd3;
    --color-error-300: #fda4af;
    --color-error-400: #fb7185;
    --color-error-500: #f43f5e;
    --color-error-600: #e11d48;
    --color-error-700: #be123c;
    --color-error-800: #9f1239;
    --color-error-900: #881337;


    /* =====================================
       NEUTRAL COLORS
    ===================================== */

    --color-white: #ffffff;
    --color-black: #111111;

    --color-neutral-50: #fafafa;
    --color-neutral-100: #f5f5f5;
    --color-neutral-200: #e5e5e5;
    --color-neutral-300: #d4d4d4;
    --color-neutral-400: #a3a3a3;
    --color-neutral-500: #737373;
    --color-neutral-600: #525252;
    --color-neutral-700: #404040;
    --color-neutral-800: #262626;
    --color-neutral-900: #171717;


    /* =====================================
       SEMANTIC COLORS
    ===================================== */

    --background-page: #fffaf3;
    --background-surface: #ffffff;
    --background-soft: #fff5e6;
    --background-muted: #f7f7f8;

    --text-primary: #222222;
    --text-secondary: #666666;
    --text-muted: #8b8b8b;
    --text-inverse: #ffffff;

    --border-light: #ececec;
    --border-medium: #d9d9d9;
    --border-strong: #b8b8b8;

    --color-link: var(--color-secondary-600);
    --color-focus: var(--color-secondary-400);


    /* =====================================
       TYPOGRAPHY
    ===================================== */

    --font-family-primary:
        "Outfit",
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;

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

    --font-weight-light: 300;
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;

    --line-height-tight: 1.15;
    --line-height-heading: 1.25;
    --line-height-body: 1.6;
    --line-height-relaxed: 1.75;

    --letter-spacing-tight: -0.03em;
    --letter-spacing-normal: 0;
    --letter-spacing-wide: 0.04em;


    /* =====================================
       SPACING
    ===================================== */

    --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;


    /* =====================================
       BORDER RADIUS
    ===================================== */

    --radius-none: 0;
    --radius-xs: 0.375rem;
    --radius-sm: 0.5rem;
    --radius-md: 1rem;
    --radius-lg: 1.5rem;
    --radius-xl: 2rem;
    --radius-pill: 999px;
    --radius-circle: 50%;


    /* =====================================
       SHADOWS
    ===================================== */

    --shadow-xs:
        0 1px 2px rgba(20, 20, 20, 0.05);

    --shadow-sm:
        0 4px 12px rgba(20, 20, 20, 0.06);

    --shadow-md:
        0 10px 30px rgba(20, 20, 20, 0.09);

    --shadow-lg:
        0 20px 50px rgba(20, 20, 20, 0.13);

    --shadow-primary:
        0 12px 30px rgba(247, 148, 0, 0.25);

    --shadow-focus:
        0 0 0 4px rgba(50, 165, 245, 0.22);


    /* =====================================
       LAYOUT
    ===================================== */

    --container-sm: 640px;
    --container-md: 768px;
    --container-lg: 1024px;
    --container-xl: 1200px;
    --container-2xl: 1400px;

    --header-height: 76px;
    --sidebar-width: 280px;

    --content-padding-mobile: 20px;
    --content-padding-tablet: 32px;
    --content-padding-desktop: 48px;


    /* =====================================
       COMPONENT SIZES
    ===================================== */

    --button-height-sm: 36px;
    --button-height-md: 44px;
    --button-height-lg: 52px;

    --input-height-sm: 40px;
    --input-height-md: 48px;
    --input-height-lg: 56px;

    --icon-size-sm: 16px;
    --icon-size-md: 20px;
    --icon-size-lg: 24px;

    --avatar-size-sm: 32px;
    --avatar-size-md: 48px;
    --avatar-size-lg: 72px;
    --avatar-size-xl: 112px;

    --touch-target-min: 44px;


    /* =====================================
       MOTION
    ===================================== */

    --duration-fast: 150ms;
    --duration-normal: 250ms;
    --duration-slow: 400ms;

    --ease-standard:
        cubic-bezier(0.2, 0, 0, 1);

    --ease-emphasized:
        cubic-bezier(0.2, 0.8, 0.2, 1);

    --transition-fast:
        var(--duration-fast) var(--ease-standard);

    --transition-normal:
        var(--duration-normal) var(--ease-standard);

    --transition-slow:
        var(--duration-slow) var(--ease-emphasized);


    /* =====================================
       Z-INDEX
    ===================================== */

    --z-base: 1;
    --z-dropdown: 100;
    --z-sticky: 200;
    --z-overlay: 500;
    --z-modal: 1000;
    --z-toast: 1500;
    --z-tooltip: 2000;
}