:root, html[data-theme="light"], body[data-theme="light"] {
    --theme-bg: #FDFBF7;
    --theme-surface: #FFFFFF;
    --theme-header: #5A6B47;
    --theme-category: #E8E0D5;
    --theme-category-active: #1A1A1A;
    --theme-category-active-text: #FFFFFF;
    --theme-button: #5A6B47;
    --theme-button-text: #FFFFFF;
    --theme-button-hover: #5A6B47;
    --theme-button-hover-text: #FFFFFF;
    --theme-button-active: #5A6B47;
    --theme-button-active-text: #FFFFFF;
    --theme-button-secondary: #F5F5F5;
    --theme-button-secondary-text: #1A1A1A;
    --theme-button-secondary-hover: #E8E4DC;
    --theme-button-secondary-hover-text: #1A1A1A;
    --theme-button-danger: #C62828;
    --theme-button-danger-text: #FFFFFF;
    --theme-button-danger-hover: #9A1F1F;
    --theme-button-danger-hover-text: #FFFFFF;
    --theme-text: #333F2E;
    --theme-text-muted: #5C6B52;
    --theme-text-price: #8B7355;
    --theme-accent: #A07855;
    --theme-badge: #A09080;
    --theme-border: rgba(0,0,0,0.14);
    --theme-success: #4A7C59;
    --theme-warning: #A07855;
    --theme-error: #C62828;
    --theme-info: #0277BD;
    --theme-card: #FFFFFF;
    --pm-bg: #FDFBF7;
    --pm-surface: #FFFFFF;
    --pm-text: #1A1A1A;
    --pm-muted: #6B6B6B;
    --pm-accent: #A07855;
    --pm-border: rgba(0,0,0,0.14);
    --pm-beige: #E8E0D5;
    --pm-beige-deep: #E4EADF;
    --pm-divider: #A07855;
    --pm-header-bg: #FFFFFF;
    --pm-footer-bg: #E4EADF;
    --pm-category-active: #1A1A1A;
    --pm-category-active-text: #FFFFFF;
    --pm-button: #2C2C2C;
    --pm-button-text: #FFFFFF;
    --pm-badge: #A09080;
    --carta-bg: #FDFBF7;
    --carta-header: #FFFFFF;
    --carta-footer: #E4EADF;
    --carta-category: #E8E0D5;
    --carta-category-active: #1A1A1A;
    --carta-category-active-text: #FFFFFF;
    --carta-card: #FFFFFF;
    --carta-card-border: rgba(0,0,0,0.14);
    --carta-name: #1A1A1A;
    --carta-desc: #6B6B6B;
    --carta-price: #A07855;
    --carta-button: #2C2C2C;
    --carta-button-text: #FFFFFF;
    --carta-badge: #A09080;
    --theme-carta-bg: #FDFBF7;
    --theme-carta-header: #FFFFFF;
    --theme-carta-footer: #E4EADF;
    --theme-carta-category: #E8E0D5;
    --theme-carta-category-active: #1A1A1A;
    --theme-carta-category-active-text: #FFFFFF;
    --theme-carta-card: #FFFFFF;
    --theme-carta-card-border: rgba(0,0,0,0.14);
    --theme-carta-name: #1A1A1A;
    --theme-carta-desc: #6B6B6B;
    --theme-carta-price: #A07855;
    --theme-carta-button: #2C2C2C;
    --theme-carta-button-text: #FFFFFF;
    --theme-carta-badge: #A09080;
    --pos-bg: #FDFBF7;
    --pos-header: #5A6B47;
    --pos-text: #333F2E;
    --pos-text-muted: #5C6B52;
    --pos-tab: #2C2C2C;
    --pos-tab-text: #FFFFFF;
    --pos-tab-active: #FFFFFF;
    --pos-tab-active-text: #1A1A1A;
    --pos-category: #E8E0D5;
    --pos-category-active: #1A1A1A;
    --pos-category-active-text: #FFFFFF;
    --pos-card: #FFFFFF;
    --pos-card-border: rgba(0,0,0,0.14);
    --pos-card-text: #1A1A1A;
    --pos-card-price: #8B7355;
    --pos-cart-bg: #FFFFFF;
    --pos-total: #333F2E;
    --pos-button: #5A6B47;
    --pos-button-text: #FFFFFF;
    --pos-button-secondary: #F5F5F5;
    --pos-button-secondary-text: #1A1A1A;
    --pos-badge: #A09080;
    --pos-oo-bubble: #9A9A9A;
    --pos-oo-bubble-text: #FFFFFF;
    --color-bg: #FDFBF7;
    --color-surface: #FFFFFF;
    --color-surface-2: #E4EADF;
    --color-primary: #5A6B47;
    --color-primary-dark: #5A6B47;
    --color-accent: #8B7355;
    --color-text: #333F2E;
    --color-text-muted: #5C6B52;
    --color-border: rgba(0,0,0,0.14);
    --color-logo-navy: #5A6B47;
    --color-danger: #C62828;
    --pm-welcome-blur: 2px;
    --pm-welcome-veil: rgba(0, 0, 0, 0.22);
    --carta-welcome-blur: 2px;
    --carta-welcome-veil: rgba(0, 0, 0, 0.22);
}
body.mesero-page {
    background: var(--pos-bg, var(--theme-bg));
    color: var(--pos-text, var(--theme-text));
}
body.public-menu-page {
    background: var(--carta-bg, var(--pm-bg));
    color: var(--carta-name, var(--pm-text));
}

:root {
    --pm-text-cover-title: #111111;
    --pm-weight-cover-title: 400;
    --pm-shadow-cover-title: 0 1px 2px rgba(255, 255, 255, 0.35), 0 0 10px rgba(255, 255, 255, 0.18);
    --pm-text-cover-descriptor: #111111;
    --pm-weight-cover-descriptor: 400;
    --pm-shadow-cover-descriptor: 0 1px 2px rgba(255, 255, 255, 0.35), 0 0 10px rgba(255, 255, 255, 0.18);
    --pm-text-cover-welcome: #111111;
    --pm-weight-cover-welcome: 400;
    --pm-shadow-cover-welcome: 0 1px 2px rgba(255, 255, 255, 0.35), 0 0 10px rgba(255, 255, 255, 0.18);
    --pm-text-cover-enter: #FFFFFF;
    --pm-weight-cover-enter: 400;
    --pm-shadow-cover-enter: 0 1px 2px rgba(0, 0, 0, 0.55), 0 2px 12px rgba(0, 0, 0, 0.35);
    --pm-text-header-title: #111111;
    --pm-weight-header-title: 400;
    --pm-shadow-header-title: 0 1px 2px rgba(255, 255, 255, 0.35), 0 0 10px rgba(255, 255, 255, 0.18);
    --pm-text-header-descriptor: #111111;
    --pm-weight-header-descriptor: 400;
    --pm-shadow-header-descriptor: 0 1px 2px rgba(255, 255, 255, 0.35), 0 0 10px rgba(255, 255, 255, 0.18);
    --pm-text-header-subtitle: #111111;
    --pm-weight-header-subtitle: 400;
    --pm-shadow-header-subtitle: 0 1px 2px rgba(255, 255, 255, 0.35), 0 0 10px rgba(255, 255, 255, 0.18);
}
.pm-welcome-name {
    color: var(--pm-text-cover-title, inherit);
    font-weight: var(--pm-weight-cover-title, 700);
    text-shadow: var(--pm-shadow-cover-title, none);
}
.pm-welcome-descriptor {
    color: var(--pm-text-cover-descriptor, inherit);
    font-weight: var(--pm-weight-cover-descriptor, 700);
    text-shadow: var(--pm-shadow-cover-descriptor, none);
}
.pm-welcome-tagline {
    color: var(--pm-text-cover-welcome, inherit);
    font-weight: var(--pm-weight-cover-welcome, 500);
    text-shadow: var(--pm-shadow-cover-welcome, none);
}
.pm-welcome-enter {
    font-weight: var(--pm-weight-cover-enter, 700);
}
.pm-welcome-enter[data-text-style-color="1"] {
    color: var(--pm-text-cover-enter, var(--pm-button-text));
}
.pm-title {
    color: var(--pm-text-header-title, var(--pm-header-text, inherit));
    font-weight: var(--pm-weight-header-title, 700);
    text-shadow: var(--pm-shadow-header-title, none);
}
.pm-header-descriptor {
    color: var(--pm-text-header-descriptor, var(--pm-header-text, inherit));
    font-weight: var(--pm-weight-header-descriptor, 400);
    text-shadow: var(--pm-shadow-header-descriptor, none);
}
.pm-subtitle {
    color: var(--pm-text-header-subtitle, var(--pm-header-text, inherit));
    font-weight: var(--pm-weight-header-subtitle, 400);
    text-shadow: var(--pm-shadow-header-subtitle, none);
}
