[data-site="babamosoly-com"] {
    /* ═══════════════════════════════════════════════════════════════════
     BABAMOSOLY.COM THEME: Mint + Warm Yellow (Figma tokens)
     ═══════════════════════════════════════════════════════════════════ */

    /* Primary - Mint */
    --mint-50: 240 250 247;
    --mint-100: 212 241 232;
    --mint-200: 184 230 213;
    --mint-300: 168 220 209;
    --mint-400: 127 168 156;
    --mint-500: 90 125 115;
    --mint-600: 44 95 80;

    /* Primary - Yellow */
    --yellow-50: 255 252 245;
    --yellow-100: 255 248 230;
    --yellow-200: 255 230 143;
    --yellow-300: 247 229 161;
    --yellow-400: 244 211 94;
    --yellow-500: 230 192 78;
    --yellow-600: 201 166 66;

    /* Neutral */
    --white: 255 255 255;
    --cream-50: 249 245 240;
    --cream-100: 242 230 216;
    --cream-200: 230 217 200;

    --gray-50: 250 250 250;
    --gray-100: 245 245 245;
    --gray-200: 230 230 230;
    --gray-300: 209 209 209;
    --gray-400: 163 163 163;
    --gray-500: 115 115 115;
    --gray-600: 74 74 74;
    --gray-700: 38 38 38;

    /* Accent */
    --coral-50: 255 245 242;
    --coral-100: 255 223 212;
    --coral-200: 255 191 163;
    --coral-300: 255 155 122;

    --blush-50: 255 248 249;
    --blush-100: 250 212 216;

    --sky-50: 245 250 255;
    --sky-100: 207 232 255;

    /* Semantic */
    --semantic-success: 127 168 156;
    --semantic-warning: 244 211 94;
    --semantic-error: 229 115 115;
    --semantic-info: 100 181 246;

    /* Text */
    --text-primary: 38 38 38;
    --text-secondary: 115 115 115;
    --text-tertiary: 163 163 163;
    --text-on-mint: 44 95 80;
    --text-on-yellow: 90 125 115;
    --text-on-dark: 255 255 255;

    /* Background */
    --background-primary: 255 255 255;
    --background-secondary: 249 245 240;
    --background-tertiary: 240 250 247;
    --background-card: 255 255 255;
    --background-overlay: 0 0 0;

    /* Border */
    --border-light: 230 230 230;
    --border-medium: 209 209 209;
    --border-dark: 163 163 163;
    --border-mint: 168 220 209;

    /* Button tokens */
    --button-primary-bg: 247 229 161;
    --button-primary-text: 90 125 115;
    --button-primary-hover: 244 211 94;
    --button-primary-active: 230 192 78;

    --button-secondary-bg: 184 230 213;
    --button-secondary-text: 44 95 80;
    --button-secondary-hover: 168 220 209;
    --button-secondary-active: 127 168 156;

    --button-outline-border: 168 220 209;
    --button-outline-text: 90 125 115;
    --button-outline-hover-bg: 240 250 247;

    --button-disabled-bg: 230 230 230;
    --button-disabled-text: 163 163 163;

    /* Radius tokens */
    --radius-none: 0px;
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-xl: 16px;
    --radius-2xl: 24px;
    --radius-full: 9999px;

    /* Spacing tokens */
    --space-xs: 4px;
    --space-sm: 8px;
    --space-md: 16px;
    --space-lg: 24px;
    --space-xl: 32px;
    --space-2xl: 48px;
    --space-3xl: 64px;

    /* Shadow tokens */
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);

    /* App-level mapped tokens */
    --color-primary: var(--mint-500);
    --color-primary-rgb: 90, 125, 115;
    --color-primary-foreground: var(--text-on-dark);

    --color-accent: var(--yellow-400);
    --color-accent-foreground: var(--text-on-yellow);

    --color-background: var(--background-primary);
    --color-foreground: var(--text-primary);
    --color-muted: var(--text-secondary);
    --color-muted-foreground: var(--text-secondary);

    --color-card: var(--background-card);
    --color-card-foreground: var(--text-primary);
    --color-border: var(--border-light);

    --color-success: var(--semantic-success);
    --color-warning: var(--semantic-warning);
    --color-error: var(--semantic-error);

    --font-sans: 'Outfit', system-ui, sans-serif;
    --font-heading: 'Outfit', sans-serif;

    --radius: 12px;
}

/* PrimeReact + common component token wiring */
[data-site="babamosoly-com"] .p-button {
    background: rgb(var(--button-primary-bg));
    border-color: rgb(var(--button-primary-bg));
    color: rgb(var(--button-primary-text));
}

[data-site="babamosoly-com"] .p-button:hover {
    background: rgb(var(--button-primary-hover));
    border-color: rgb(var(--button-primary-hover));
}

[data-site="babamosoly-com"] .p-button:active {
    background: rgb(var(--button-primary-active));
    border-color: rgb(var(--button-primary-active));
}

[data-site="babamosoly-com"] .p-button.p-button-text {
    background: transparent;
    border-color: transparent;
    color: rgb(var(--button-secondary-text));
}

[data-site="babamosoly-com"] .p-button.p-button-text:hover {
    background: rgb(var(--button-outline-hover-bg));
    color: rgb(var(--button-secondary-text));
}

[data-site="babamosoly-com"] .p-datatable .p-datatable-thead > tr > th {
    background: rgb(var(--background-secondary));
    color: rgb(var(--text-primary));
    border-color: rgb(var(--border-light));
}

[data-site="babamosoly-com"] .p-datatable .p-datatable-tbody > tr {
    background: rgb(var(--background-card));
    color: rgb(var(--text-primary));
}

[data-site="babamosoly-com"] .p-datatable .p-datatable-tbody > tr > td {
    border-color: rgb(var(--border-light));
}

[data-site="babamosoly-com"] .p-paginator {
    background: rgb(var(--background-primary));
    color: rgb(var(--text-secondary));
    border-color: rgb(var(--border-light));
}

[data-site="babamosoly-com"] .p-paginator .p-paginator-page.p-highlight {
    background: rgb(var(--mint-200));
    color: rgb(var(--text-on-mint));
}

[data-site="babamosoly-com"] .p-checkbox .p-checkbox-box {
    border-color: rgb(var(--button-outline-border));
}

[data-site="babamosoly-com"] .p-checkbox .p-checkbox-box.p-highlight {
    background: rgb(var(--button-secondary-bg));
    border-color: rgb(var(--button-secondary-bg));
    color: rgb(var(--button-secondary-text));
}
