:root {
    color-scheme: light;

    --font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", Inter, Segoe UI, sans-serif;
    --font-mono: "SF Mono", Consolas, monospace;

    --primary-000: #00272d;
    --primary-100: #00BA96;
    --primary-200: #5ED7BA;
    --primary-300: #B8F0E3;
    --secondary-100: #30D158;
    --secondary-200: #74E08E;
    --secondary-300: #C0F3CC;

    --bg-100: #F5F5F7;
    --bg-200: #FFFFFF;
    --bg-300: #E8E8ED;
    --surface-100: #FFFFFF;
    --surface-200: #F9FAFB;
    --text-100: #111827;
    --text-200: #4B5563;
    --text-300: #6B7280;
    --border-100: #D7DAE0;

    --success-100: #16A34A;
    --warning-100: #D97706;
    --danger-100: #DC2626;
    --info-100: #0EA5E9;
    --whatsapp-100: #25D366;
    --instagram-100: #E1306C;
    --instagram-200: #833AB4;

    --shadow-sm: 0 1px 2px rgba(17, 24, 39, 0.06);
    --shadow-md: 0 10px 28px rgba(17, 24, 39, 0.08);
    --shadow-focus: 0 0 0 4px color-mix(in srgb, var(--primary-100) 18%, transparent);

    --radius-sm: 6px;
    --radius-md: 8px;
    --radius-lg: 8px;

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

    --text-xs: 0.75rem;
    --text-sm: 0.875rem;
    --text-base: 1rem;
    --text-lg: 1.125rem;
    --text-xl: 1.35rem;
    --text-2xl: 1.7rem;
    --text-3xl: 2.35rem;

    --weight-regular: 400;
    --weight-medium: 500;
    --weight-semibold: 600;
    --weight-bold: 700;

    --transition-fast: 140ms ease;
    --transition-base: 220ms ease;
}

* {
    box-sizing: border-box;
}

html {
    min-height: 100%;
    background: var(--bg-100);
}

body {
    min-height: 100vh;
    margin: 0;
    background: var(--bg-100);
    color: var(--text-100);
    font-family: var(--font-sans);
    font-size: var(--text-base);
}

a {
    color: inherit;
    text-decoration: none;
}

button,
input,
select,
textarea {
    font: inherit;
}

img {
    display: block;
    max-width: 100%;
}

:focus-visible {
    outline: none;
    box-shadow: var(--shadow-focus);
}

.theme-dark {
    color-scheme: dark;
}
