:root {
    /* Semantic colors */
    --bf-primary:              var(--color-sf-primary, #0078d4);
    --bf-primary-soft:         rgba(0, 120, 212, 0.8);
    --bf-primary-hover:        rgba(0, 120, 212, 0.08);
    --bf-success:              #107c10;
    --bf-success-soft:         rgba(16, 124, 16, 0.8);
    --bf-success-hover:        rgba(16, 124, 16, 0.08);
    --bf-danger:               #d13438;
    --bf-danger-soft:          rgba(220, 38, 38, 0.8);
    --bf-danger-hover:         rgba(220, 38, 38, 0.08);
    --bf-warning:              #ffd600;
    --bf-warning-bg:           #fff3cd;
    --bf-warning-text:         #664d03;

    /* Text */
    --bf-text:                 #2f3a48;
    --bf-text-muted:           #465566;
    --bf-icon-unchecked:       #b0b8c4;
    --bf-icon-cancel:          #605e5c;
    --bf-muted-gray:           #c0c0c0;

    /* Surfaces */
    --bf-surface:              #ffffff;
    --bf-surface-tinted:       #f0f6ff;
    --bf-surface-hover:        #f5f5f5;
    --bf-surface-card-hover:   #eff6ff;

    /* Borders */
    --bf-border:               var(--e-border-color, #d6d6d6);
    --bf-border-light:         #e8e8e8;
    --bf-border-input:         #e8edf4;
    --bf-border-input-hover:   #dce5f0;

    /* Grid */
    --bf-grid-header-bg:       #eef4fb;
    --bf-grid-border:          #d7e2f0;
    --bf-grid-alt-row:         #f4f8fd;
    --bf-grid-row-hover:       #eaf2fb;

    /* Nav */
    --bf-nav-text:             #1a2b3c;
    --bf-nav-active:           #0f5a99;
    --bf-nav-hover-bg:         #eaf1fa;
    --bf-nav-hover-border:     #dce6f2;
    --bf-nav-active-bg:        #e3eefc;
    --bf-nav-active-border:    #c4d9f0;
    --bf-nav-active-press:     #dbe7f5;

    /* Check toggle (pedidos) */
    --bf-check-on:             #81c784;
    --bf-check-on-bg:          #f1f8e9;
    --bf-check-off:            #e0e0e0;
    --bf-check-off-bg:         #f7f7f7;

    /* Gender */
    --bf-male:                 #1976d2;
    --bf-female:               #f06292;

    /* Type scale */
    --bf-font-2xs:             0.62rem;   /* labels, captions, section titles */
    --bf-font-xs:              0.72rem;   /* card details, toggle labels */
    --bf-font-sm:              0.8rem;    /* grid cells, secondary text */
    --bf-font-base:            0.85rem;   /* body text, detail values */
    --bf-font-md:              1rem;      /* layout icons */
    --bf-font-lg:              1.05rem;   /* section titles (Home) */

    /* Misc */
    --bf-today:                #2196F3;
    --bf-toast-success:        #1b5e20;
    --bf-toast-danger:         #7f1d1d;
    --bf-calendar-dot:         #e53935;
}
