$dark_base_color: #272a34!default;

// The main accent color and the matching text value
@define-color accent_bg_color #{$selected_bg_color};
@define-color accent_fg_color #{$selected_fg_color};
@define-color accent_color @accent_bg_color;

// destructive-action buttons
@define-color destructive_bg_color #{if($variant == 'dark', "@red_4", "@red_3")};
@define-color destructive_fg_color white;
@define-color destructive_color #{if($variant == 'dark', #ff7b63, "@red_4")};

// Levelbars, entries, labels and infobars. These don't need text colors
@define-color success_bg_color #{if($variant == 'dark', "@green_5", "@green_4")};
@define-color success_fg_color white;
@define-color success_color #{if($variant == 'dark', "@green_1", "#1b8553")};

@define-color warning_bg_color #{if($variant == 'dark', #cd9309, "@yellow_5")};
@define-color warning_fg_color #{transparentize(black, .2)};
@define-color warning_color #{if($variant == 'dark', "@yellow_2", #9c6e03)};

@define-color error_bg_color #{if($variant == 'dark', "@red_4", "@red_3")};
@define-color error_fg_color white;
@define-color error_color #{if($variant == 'dark', #ff7b63, "@red_4")};

// Window
@define-color window_bg_color #{if($variant == 'light', #fafafa, darken($dark_base_color, 2%)))};
@define-color window_fg_color #{if($variant == 'light', transparentize(black, .2), white)};

// Views - e.g. text view or tree view
@define-color view_bg_color #{if($variant == 'light', #ffffff, $dark_base_color)};
@define-color view_fg_color #{if($variant == 'light', transparentize(black, .2), white)};

// Header bar, search bar, tab bar
@define-color headerbar_bg_color #{if($variant == 'light', #ebebeb, darken($dark_base_color, 6%))};
@define-color headerbar_fg_color #{if($variant == 'light', transparentize(black, .2), white)};
@define-color headerbar_border_color #{if($variant == 'light', transparentize(black, .2), white)};
@define-color headerbar_backdrop_color @view_bg_color;
@define-color headerbar_shade_color #{if($variant == 'light', transparentize(black, .88), transparentize(black, .64))};
@define-color headerbar_darker_shade_color #{if($variant == 'light', transparentize(black, .88), transparentize(black, .1))};

// Split pane views
@define-color sidebar_bg_color #{if($variant == 'light', #ebebeb, darken($dark_base_color, 6%))};
@define-color sidebar_fg_color #{if($variant == 'light', transparentize(black, .2), white)};
@define-color sidebar_backdrop_color mix(@sidebar_bg_color, @window_bg_color, .5);
@define-color sidebar_shade_color #{if($variant == 'light', transparentize(black, .93), transparentize(black, .75))};
@define-color sidebar_border_color #{if($variant == 'light', transparentize(black, .93), transparentize(black, .64))};

@define-color secondary_sidebar_bg_color mix(@sidebar_bg_color, @window_bg_color, .5);
@define-color secondary_sidebar_fg_color #{if($variant == 'light', transparentize(black, .2), white)};
@define-color secondary_sidebar_backdrop_color mix(@secondary_sidebar_bg_color, @window_bg_color, .5);
@define-color secondary_sidebar_shade_color #{if($variant == 'light', transparentize(black, .93), transparentize(black, .75))};
@define-color secondary_sidebar_border_color #{if($variant == 'light', transparentize(black, .93), transparentize(black, .64))};

// Cards, boxed lists
@define-color card_bg_color #{if($variant == 'light', #ffffff, transparentize(white, .95))};
@define-color card_fg_color #{if($variant == 'light', transparentize(black, .2), white)};
@define-color card_shade_color #{if($variant == 'light', transparentize(black, .93), transparentize(black, .64))};

// Dialogs
@define-color dialog_bg_color #{if($variant == 'light', #ffffff, lighten($dark_base_color, 4%))};
@define-color dialog_fg_color #{if($variant == 'light', transparentize(black, .2), white)};

// Popovers
@define-color popover_bg_color #{if($variant == 'light', #ffffff, lighten($dark_base_color, 4%))};
@define-color popover_fg_color #{if($variant == 'light', transparentize(black, .2), white)};
@define-color popover_shade_color #{if($variant == 'light', transparentize(black, .93), transparentize(black, .75))};

// Thumbnails
@define-color thumbnail_bg_color #{if($variant == 'light', #ffffff, lighten($dark_base_color, 4%))};
@define-color thumbnail_fg_color #{if($variant == 'light', transparentize(black, .2), white)};

// Miscellaneous
@define-color shade_color #{if($variant == 'light', transparentize(black, .93), transparentize(black, .75))};
@define-color scrollbar_outline_color #{if($variant == 'light', white, transparentize(black, .5))};
