html {
    /* Open Schedule - JConf Dominicana Theme */

    /* Base & Text */
    --lumo-base-color: #F8FAFC;
    --lumo-body-text-color: #1E293B;
    --lumo-heading-text-color: #0F172A;
    --lumo-secondary-text-color: #475569;
    --lumo-tertiary-text-color: #64748B;
    --lumo-disabled-text-color: #64748B66;

    /* Primary - JConf Red */
    --lumo-primary-color: #CE1126;
    --lumo-primary-color-10pct: #ce11261a;
    --lumo-primary-color-50pct: #ce112680;
    --lumo-primary-contrast-color: #FFFFFF;
    --lumo-primary-text-color: #A10E1E;

    /* Success */
    --lumo-success-color: #16A34A;
    --lumo-success-color-10pct: #16a34a1a;
    --lumo-success-color-50pct: #16a34a80;
    --lumo-success-contrast-color: #ffffff;
    --lumo-success-text-color: #15803D;

    /* Warning */
    --lumo-warning-color: #FACC15;
    --lumo-warning-color-10pct: #facc1533;
    --lumo-warning-text-color: #854D0E;
    --lumo-warning-contrast-color: #1E293B;

    /* Error */
    --lumo-error-color: #DC2626;
    --lumo-error-color-10pct: #dc26261a;
    --lumo-error-color-50pct: #dc262680;
    --lumo-error-contrast-color: #ffffff;
    --lumo-error-text-color: #991B1B;

    /* Contrast */
    --lumo-contrast: #1E293B;
    --lumo-contrast-5pct: #1e293b0d;
    --lumo-contrast-10pct: #1e293b1a;
    --lumo-contrast-20pct: #1e293b29;
    --lumo-contrast-30pct: #1e293b42;
    --lumo-contrast-40pct: #1e293b61;
    --lumo-contrast-50pct: #1e293b80;
    --lumo-contrast-60pct: #1e293b99;
    --lumo-contrast-70pct: #1e293bb3;
    --lumo-contrast-80pct: #1e293bd1;
    --lumo-contrast-90pct: #1e293bf0;

    /* UI Elements */
    --vaadin-input-field-background: #FFFFFF;
    --vaadin-input-field-hover-highlight: var(--lumo-contrast-10pct);
    --vaadin-input-field-border-width: 1px;
    --vaadin-input-field-border-color: var(--lumo-contrast-20pct);
    --vaadin-button-background: #ffffff;
    --vaadin-button-border: 1px solid var(--lumo-primary-color-50pct);

    /* Radius / spacing */
    --lumo-border-radius-s: 0.35rem;
    --lumo-border-radius-m: 0.65rem;
    --lumo-border-radius-l: 1.25rem;
    --lumo-space-xxl: 48px;

    /* Custom */
    --light-background-color: #FFFFFF;
    --lumo-user-holiday: #EF4444;

    /* Open Schedule design tokens */
    --os-primary: #001B3D;
    --os-primary-strong: #000F25;

    /* Secondary - Dominican Blue */
    --os-secondary: #002D62;
    --os-secondary-soft: #1E4F8F;

    /* Accent */
    --os-tertiary: #CE1126;
    --os-tertiary-soft: #FAD1D6;

    --os-surface: #FFFFFF;
    --os-surface-soft: #F8FAFC;

    --os-border: rgba(0, 45, 98, 0.18);
    --os-border-soft: rgba(0, 45, 98, 0.08);

    /* Shadows */
    --os-shadow-sm: 0 2px 8px rgba(15, 23, 42, 0.06);
    --os-shadow-md: 0 14px 35px rgba(15, 23, 42, 0.08);
    --os-shadow-lg: 0 30px 80px rgba(15, 23, 42, 0.16);

    /* Radii */
    --os-radius-xl: 28px;
    --os-radius-lg: 20px;
    --os-radius-md: 14px;
    --os-radius-sm: 10px;

    /* Font */
    --lumo-font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont,
    'Segoe UI', Roboto, sans-serif;
}
