Custom Horizon Theme

This patch is to propose the workflow of customizing Horizon theme
easily.

Currently Horizon relies on DjangoScssFilter to preprocess all the scss
files. The css styles such as color and font are mostly controlled by
the variables specified in the the scss files (_variables.scss). In
addition, Horizon mostly reuses bootstrap sass variables to define the
styles.

We leverage the current idea by injecting another level of variables to
overwrite the current bootstrap/horizon variables such that developer
can swap the theme easily.

This patch includes several areas of code changes:

1. Introduce another static file subdirectory for developer to store
   custom themes.
2. Add an additional configuration in the settings.py for developer to
   load the theme to use.
3. Add an example new custom theme.
4. Refactor the current Horizon sass files such that they don't hardcode
   the style but are controlled by the variables instead.

Implements: blueprint horizon-themes

Change-Id: Id915b95b66d9aba97cdb41cc100bf7dc1d75afcd
Co-Authored-By: Alan Fung <wingfung@cisco.com>
Co-Authored-By: Kahou Lei <kahou82@gmail.com>
Co-Authored-By: David Lyle <dklyle0@gmail.com>
This commit is contained in:
Kahou Lei 2015-02-27 15:50:27 -08:00
parent 28b65ea91c
commit 222e6d9ae0
9 changed files with 941 additions and 0 deletions

View File

@ -368,6 +368,19 @@ This example sorts flavors by vcpus in descending order::
'reverse': True,
}
``CUSTOM_THEME_PATH``
---------------------
.. versionadded:: 2015.1(Kilo)
Default: ``"static/themes/default"``
This setting allows Horizon to use a custom theme. The theme folder
should contains one _variables.scss file and one _styles.scss file.
_variables.scss contains all the bootstrap and horizon specific variables
which are used to style the GUI. Whereas _styles.scss contains extra styling.
For example themes, see: /horizon/openstack_dashboard/static/themes/
``DROPDOWN_MAX_ITEMS``
----------------------

View File

@ -320,6 +320,10 @@ TIME_ZONE = "UTC"
# TROVE_ADD_USER_PERMS = []
# TROVE_ADD_DATABASE_PERMS = []
# Change this patch to the appropriate static directory containing
# two files: _variables.scss and _styles.scss
#CUSTOM_THEME_PATH = 'static/themes/default'
LOGGING = {
'version': 1,
# When set to True this will disable all logging except

View File

@ -251,11 +251,21 @@ SECURITY_GROUP_RULES = {
}
ADD_INSTALLED_APPS = []
# STATIC directory for custom theme, set as default.
# It can be overridden in local_settings.py
CUSTOM_THEME_PATH = 'static/themes/default'
try:
from local.local_settings import * # noqa
except ImportError:
logging.warning("No local_settings file found.")
CUSTOM_THEME = os.path.join(ROOT_PATH, CUSTOM_THEME_PATH)
STATICFILES_DIRS.append(
('custom', CUSTOM_THEME),
)
if not WEBROOT.endswith('/'):
WEBROOT += '/'
if LOGIN_URL is None:

View File

@ -1,2 +1,8 @@
// Custom Theme Variables
@import "/custom/variables";
@import "scss/variables";
@import "launch-instance/launch-instance";
// Custom Style Variables
@import "/custom/styles";

View File

@ -2,6 +2,9 @@
@import "/horizon/lib/bootstrap_datepicker/datepicker3.css";
@import "/horizon/lib/rickshaw.css";
// Custom Theme Variables
@import "/custom/variables";
// Horizon Variables
@import "variables";
@ -1836,3 +1839,4 @@ textarea.key_text {
right: 0px !important;
}
}

View File

@ -0,0 +1,20 @@
// Blue
// ----
@mixin btn-shadow($color) {
@include gradient-vertical-three-colors(lighten($color, 3%), $color, 6%, darken($color, 3%));
filter: none;
border: 1px solid darken($color, 10%);
}
// Buttons ====================================================================
.btn-default,
.btn-default:hover {
@include btn-shadow($btn-default-bg);
}
.btn-primary,
.btn-primary:hover {
@include btn-shadow($btn-primary-bg);
}

View File

@ -0,0 +1,884 @@
// Blue Theme
// Colors
$gray: #2751DB !default;
$gray-darker: #94A5F2 !default;
$gray-dark: #0C0CED !default;
$gray-light: #C7CFF2 !default;
$gray-lighter: #DCE1F5 !default;
$brand-primary: #375A7F !default;
$brand-success: #00bc8c !default;
$brand-info: #34DB98 !default;
$brand-warning: #F39C12 !default;
$brand-danger: #E74C3C !default;
//== Scaffolding
//
//## Settings for some of the most global styles.
//** Background color for `<body>`.
$body-bg: $gray-darker !default;
//** Global text color on `<body>`.
$text-color: #0F089C !default;
//** Global textual link color.
$link-color: desaturate(lighten($brand-success, 10%),10%) !default;
//** Link hover color set via `darken()` function.
$link-hover-color: $link-color !default;
//== Typography
//
//## Font, line-height, and color for body text, headings, and more.
$web-font: "//fonts.googleapis.com/css?family=Lato:400,700,400italic";
$font-family-sans-serif: Helvetica, Arial, sans-serif !default;
$font-family-serif: Georgia, "Times New Roman", Times, serif !default;
//** Default monospace fonts for `<code>`, `<kbd>`, and `<pre>`.
$font-family-monospace: Menlo, Monaco, Consolas, "Courier New", monospace !default;
$font-family-base: $font-family-serif !default;
$font-size-base: 15px !default;
$font-size-large: ceil(($font-size-base * 1.25)) !default; // ~18px
$font-size-small: ceil(($font-size-base * 0.85)) !default; // ~12px
$font-size-h1: floor(($font-size-base * 2.6)) !default; // ~36px
$font-size-h2: floor(($font-size-base * 2.15)) !default; // ~30px
$font-size-h3: ceil(($font-size-base * 1.7)) !default; // ~24px
$font-size-h4: ceil(($font-size-base * 1.25)) !default; // ~18px
$font-size-h5: $font-size-base !default;
$font-size-h6: ceil(($font-size-base * 0.85)) !default; // ~12px
//** Unit-less `line-height` for use in components like buttons.
$line-height-base: 1.428571429 !default; // 20/14
//** Computed "line-height" (`font-size` * `line-height`) for use with `margin`, `padding`, etc.
$line-height-computed: floor(($font-size-base * $line-height-base)) !default; // ~20px
//** By default, this inherits from the `<body>`.
$headings-font-family: $font-family-base !default;
$headings-font-weight: 400 !default;
$headings-line-height: 1.1 !default;
$headings-color: inherit !default;
//== Iconography
//
//## Specify custom location and filename of the included Glyphicons icon font. Useful for those including Bootstrap via Bower.
//** Load fonts from this directory.
//** File name for all font files.
$icon-font-name: "glyphicons-halflings-regular" !default;
//** Element ID within SVG icon file.
$icon-font-svg-id: "glyphicons_halflingsregular" !default;
//== Components
//
//## Define common padding and border radius sizes and more. Values based on 14px text and 1.428 line-height (~20px to start).
$padding-base-vertical: 10px !default;
$padding-base-horizontal: 15px !default;
$padding-large-vertical: 18px !default;
$padding-large-horizontal: 27px !default;
$padding-small-vertical: 6px !default;
$padding-small-horizontal: 9px !default;
$padding-xs-vertical: 1px !default;
$padding-xs-horizontal: 5px !default;
$line-height-large: 1.33 !default;
$line-height-small: 1.5 !default;
$border-radius-base: 4px !default;
$border-radius-large: 6px !default;
$border-radius-small: 3px !default;
//** Global color for active items (e.g., navs or dropdowns).
$component-active-color: #fff !default;
//** Global background color for active items (e.g., navs or dropdowns).
$component-active-bg: $brand-success !default;
//** Width of the `border` for generating carets that indicator dropdowns.
$caret-width-base: 4px !default;
//** Carets increase slightly in size for larger components.
$caret-width-large: 5px !default;
//== Tables
//
//## Customizes the `.table` component with basic values, each used across all table variations.
//** Padding for `<th>`s and `<td>`s.
$table-cell-padding: 8px !default;
//** Padding for cells in `.table-condensed`.
$table-condensed-cell-padding: 5px !default;
//** Default background color used for all tables.
$table-bg: transparent !default;
//** Background color used for `.table-striped`.
$table-bg-accent: $gray-dark !default;
//** Background color used for `.table-hover`.
$table-bg-hover: $gray !default;
$table-bg-active: $table-bg-hover !default;
//** Border color for table and cell borders.
$table-border-color: $gray !default;
//== Buttons
//
//## For each of Bootstrap's buttons, define text, background and border color.
$btn-font-weight: normal !default;
$btn-default-color: $text-color !default;
$btn-default-bg: $gray !default;
$btn-default-border: $btn-default-bg !default;
$btn-primary-color: #fff !default;
$btn-primary-bg: $brand-primary !default;
$btn-primary-border: $btn-primary-bg !default;
$btn-success-color: $btn-primary-color !default;
$btn-success-bg: $brand-success !default;
$btn-success-border: $btn-success-bg !default;
$btn-info-color: $btn-success-color !default;
$btn-info-bg: $brand-info !default;
$btn-info-border: $btn-info-bg !default;
$btn-warning-color: $btn-success-color !default;
$btn-warning-bg: $brand-warning !default;
$btn-warning-border: $btn-warning-bg !default;
$btn-danger-color: $btn-success-color !default;
$btn-danger-bg: $brand-danger !default;
$btn-danger-border: $btn-danger-bg !default;
$btn-link-disabled-color: $gray-light !default;
//== Forms
//
//##
//** `<input>` background color
$input-bg: #fff !default;
//** `<input disabled>` background color
$input-bg-disabled: $gray-lighter !default;
//** Text color for `<input>`s
$input-color: $gray !default;
//** `<input>` border color
$input-border: #f1f1f1 !default;
//** `<input>` border radius
$input-border-radius: $border-radius-base !default;
//** Border color for inputs on focus
$input-border-focus: #fff !default;
//** Placeholder text color
$input-color-placeholder: $gray-light !default;
//** Default `.form-control` height
$input-height-base: ($line-height-computed + ($padding-base-vertical * 2) + 2) !default;
//** Large `.form-control` height
$input-height-large: (ceil($font-size-large * $line-height-large) + ($padding-large-vertical * 2) + 2) !default;
//** Small `.form-control` height
$input-height-small: (floor($font-size-small * $line-height-small) + ($padding-small-vertical * 2) + 2) !default;
$legend-color: $text-color !default;
$legend-border-color: transparent !default;
//** Background color for textual input addons
$input-group-addon-bg: $gray-dark !default;
//** Border color for textual input addons
$input-group-addon-border-color: transparent !default;
//== Type
//
//##
//** Horizontal offset for forms and lists.
$component-offset-horizontal: 180px !default;
//** Text muted color
$text-muted: $gray-light !default;
//** Abbreviations and acronyms border color
$abbr-border-color: $gray-light !default;
//** Headings small color
$headings-small-color: $gray-light !default;
//** Blockquote small color
$blockquote-small-color: $gray-light !default;
//** Blockquote font size
$blockquote-font-size: ($font-size-base * 1.25) !default;
//** Blockquote border color
$blockquote-border-color: $gray !default;
//** Page header border color
$page-header-border-color: transparent !default;
//** Width of horizontal description list titles
$dl-horizontal-offset: $component-offset-horizontal !default;
//** Horizontal line color.
$hr-border: $gray !default;
//== Dropdowns
//
//## Dropdown menu container and contents.
//** Background for the dropdown menu.
$dropdown-bg: #fff !default;
//** Dropdown menu `border-color`.
$dropdown-border: rgba(0,0,0,.15) !default;
//** Dropdown menu `border-color` **for IE8**.
$dropdown-fallback-border: #ccc !default;
//** Divider color for between dropdown items.
$dropdown-divider-bg: #e5e5e5 !default;
//** Active dropdown menu item background color.
$dropdown-link-active-bg: $component-active-bg !default;
//** Dropdown link text color.
$dropdown-link-color: $brand-primary !default;
//** Hover color for dropdown links.
$dropdown-link-hover-color: #fff !default;
//** Hover background for dropdown links.
$dropdown-link-hover-bg: $dropdown-link-active-bg !default;
//** Active dropdown menu item text color.
$dropdown-link-active-color: #fff !default;
//** Disabled dropdown menu item background color.
$dropdown-link-disabled-color: $text-muted !default;
//** Text color for headers within dropdown menus.
$dropdown-header-color: $text-muted !default;
//** Deprecated `@dropdown-caret-color` as of v3.1.0
$dropdown-caret-color: #000 !default;
//-- Z-index master list
//
// Warning: Avoid customizing these values. They're used for a bird's eye view
// of components dependent on the z-axis and are designed to all work together.
//
// Note: These variables are not generated into the Customizer.
$zindex-navbar: 1000 !default;
$zindex-dropdown: 1000 !default;
$zindex-popover: 1060 !default;
$zindex-tooltip: 1070 !default;
$zindex-navbar-fixed: 1030 !default;
$zindex-modal-background: 1040 !default;
$zindex-modal: 1050 !default;
//== Media queries breakpoints
//
//## Define the breakpoints at which your layout will change, adapting to different screen sizes.
// Extra small screen / phone
//** Deprecated `@screen-xs` as of v3.0.1
$screen-xs: 480px !default;
//** Deprecated `@screen-xs-min` as of v3.2.0
$screen-xs-min: $screen-xs !default;
//** Deprecated `@screen-phone` as of v3.0.1
$screen-phone: $screen-xs-min !default;
// Small screen / tablet
//** Deprecated `@screen-sm` as of v3.0.1
$screen-sm: 768px !default;
$screen-sm-min: $screen-sm !default;
//** Deprecated `@screen-tablet` as of v3.0.1
$screen-tablet: $screen-sm-min !default;
// Medium screen / desktop
//** Deprecated `@screen-md` as of v3.0.1
$screen-md: 992px !default;
$screen-md-min: $screen-md !default;
//** Deprecated `@screen-desktop` as of v3.0.1
$screen-desktop: $screen-md-min !default;
// Large screen / wide desktop
//** Deprecated `@screen-lg` as of v3.0.1
$screen-lg: 1200px !default;
$screen-lg-min: $screen-lg !default;
//** Deprecated `@screen-lg-desktop` as of v3.0.1
$screen-lg-desktop: $screen-lg-min !default;
// So media queries don't overlap when required, provide a maximum
$screen-xs-max: ($screen-sm-min - 1) !default;
$screen-sm-max: ($screen-md-min - 1) !default;
$screen-md-max: ($screen-lg-min - 1) !default;
//== Grid system
//
//## Define your custom responsive grid.
//** Number of columns in the grid.
$grid-columns: 12 !default;
//** Padding between columns. Gets divided in half for the left and right.
$grid-gutter-width: 30px !default;
// Navbar collapse
//** Point at which the navbar becomes uncollapsed.
$grid-float-breakpoint: $screen-sm-min !default;
//** Point at which the navbar begins collapsing.
$grid-float-breakpoint-max: ($grid-float-breakpoint - 1) !default;
//== Container sizes
//
//## Define the maximum width of `.container` for different screen sizes.
// Small screen / tablet
$container-tablet: ((720px + $grid-gutter-width)) !default;
//** For `@screen-sm-min` and up.
$container-sm: $container-tablet !default;
// Medium screen / desktop
$container-desktop: ((940px + $grid-gutter-width)) !default;
//** For `@screen-md-min` and up.
$container-md: $container-desktop !default;
// Large screen / wide desktop
$container-large-desktop: ((1140px + $grid-gutter-width)) !default;
//** For `@screen-lg-min` and up.
$container-lg: $container-large-desktop !default;
//== Navbar
//
//##
// Basics of a navbar
$navbar-height: 60px !default;
$navbar-margin-bottom: $line-height-computed !default;
$navbar-border-radius: $border-radius-base !default;
$navbar-padding-horizontal: floor(($grid-gutter-width / 2)) !default;
$navbar-padding-vertical: (($navbar-height - $line-height-computed) / 2) !default;
$navbar-collapse-max-height: 340px !default;
$navbar-default-color: #777 !default;
$navbar-default-bg: $brand-primary !default;
$navbar-default-border: transparent !default;
// Navbar links
$navbar-default-link-color: #fff !default;
$navbar-default-link-hover-color: $brand-success !default;
$navbar-default-link-hover-bg: transparent !default;
$navbar-default-link-active-color: #fff !default;
$navbar-default-link-active-bg: darken($navbar-default-bg, 10%) !default;
$navbar-default-link-disabled-color: #ccc !default;
$navbar-default-link-disabled-bg: transparent !default;
// Navbar brand label
$navbar-default-brand-color: $navbar-default-link-color !default;
$navbar-default-brand-hover-color: $navbar-default-link-hover-color !default;
$navbar-default-brand-hover-bg: transparent !default;
// Navbar toggle
$navbar-default-toggle-hover-bg: darken($navbar-default-bg, 10%) !default;
$navbar-default-toggle-icon-bar-bg: #fff !default;
$navbar-default-toggle-border-color: darken($navbar-default-bg, 10%) !default;
// Inverted navbar
// Reset inverted navbar basics
$navbar-inverse-color: #fff !default;
$navbar-inverse-bg: $brand-success !default;
$navbar-inverse-border: transparent !default;
// Inverted navbar links
$navbar-inverse-link-color: $navbar-inverse-color !default;
$navbar-inverse-link-hover-color: $brand-primary !default;
$navbar-inverse-link-hover-bg: transparent !default;
$navbar-inverse-link-active-color: $navbar-inverse-color !default;
$navbar-inverse-link-active-bg: darken($navbar-inverse-bg, 5%) !default;
$navbar-inverse-link-disabled-color: #aaa !default;
$navbar-inverse-link-disabled-bg: transparent !default;
// Navbar brand label
$navbar-default-brand-color: $navbar-default-link-color !default;
$navbar-default-brand-hover-color: $navbar-default-link-hover-color !default;
$navbar-default-brand-hover-bg: transparent !default;
// Navbar toggle
$navbar-default-toggle-hover-bg: darken($navbar-default-bg, 10%) !default;
$navbar-default-toggle-icon-bar-bg: #fff !default;
$navbar-default-toggle-border-color: darken($navbar-default-bg, 10%) !default;
// Inverted navbar
// Reset inverted navbar basics
$navbar-inverse-color: #fff !default;
$navbar-inverse-bg: $brand-success !default;
$navbar-inverse-border: transparent !default;
// Inverted navbar links
$navbar-inverse-link-color: $navbar-inverse-color !default;
$navbar-inverse-link-hover-color: $brand-primary !default;
$navbar-inverse-link-hover-bg: transparent !default;
$navbar-inverse-link-active-color: $navbar-inverse-color !default;
$navbar-inverse-link-active-bg: darken($navbar-inverse-bg, 5%) !default;
$navbar-inverse-link-disabled-color: #aaa !default;
$navbar-inverse-link-disabled-bg: transparent !default;
// Inverted navbar brand label
$navbar-inverse-brand-color: $navbar-inverse-link-color !default;
$navbar-inverse-brand-hover-color: $navbar-inverse-link-hover-color !default;
$navbar-inverse-brand-hover-bg: transparent !default;
// Inverted navbar toggle
$navbar-inverse-toggle-hover-bg: darken($navbar-inverse-bg, 10%) !default;
$navbar-inverse-toggle-icon-bar-bg: #fff !default;
$navbar-inverse-toggle-border-color: darken($navbar-inverse-bg, 10%) !default;
//== Navs
//
//##
//=== Shared nav styles
$nav-link-padding: 10px 15px !default;
$nav-link-hover-bg: $gray-dark !default;
$nav-disabled-link-color: lighten($gray, 10%) !default;
$nav-disabled-link-hover-color: lighten($gray, 10%) !default;
$nav-open-link-hover-color: #fff !default;
//== Tabs
$nav-tabs-border-color: $gray !default;
$nav-tabs-link-hover-border-color: $gray !default;
$nav-tabs-active-link-hover-bg: $body-bg !default;
$nav-tabs-active-link-hover-color: $brand-success !default;
$nav-tabs-active-link-hover-border-color: $nav-tabs-link-hover-border-color !default;
$nav-tabs-justified-link-border-color: $gray-lighter !default;
$nav-tabs-justified-active-link-border-color: $body-bg !default;
//== Pills
$nav-pills-border-radius: $border-radius-base !default;
$nav-pills-active-link-hover-bg: $component-active-bg !default;
$nav-pills-active-link-hover-color: $component-active-color !default;
//== Pagination
//
//##
$pagination-color: #fff !default;
$pagination-bg: $brand-success !default;
$pagination-border: transparent !default;
$pagination-hover-color: #fff !default;
$pagination-hover-bg: lighten($brand-success, 6%) !default;
$pagination-hover-border: transparent !default;
$pagination-active-color: #fff !default;
$pagination-active-bg: lighten($brand-success, 6%) !default;
$pagination-active-border: transparent !default;
$pagination-disabled-color: #fff !default;
$pagination-disabled-bg: darken($brand-success, 15%) !default;
$pagination-disabled-border: transparent !default;
//== Pager
//
//##
$pager-bg: $pagination-bg !default;
$pager-border: $pagination-border !default;
$pager-border-radius: 15px !default;
$pager-hover-bg: $pagination-hover-bg !default;
$pager-active-bg: $pagination-active-bg !default;
$pager-active-color: $pagination-active-color !default;
$pager-disabled-color: #ddd !default;
//== Jumbotron
//
//##
$jumbotron-padding: 30px !default;
$jumbotron-color: inherit !default;
$jumbotron-bg: $gray-dark !default;
$jumbotron-heading-color: inherit !default;
$jumbotron-font-size: ceil(($font-size-base * 1.5)) !default;
//== Form states and alerts
//
//## Define colors for form feedback states and, by default, alerts.
$state-success-text: #fff !default;
$state-success-bg: $brand-success !default;
$state-success-border: $brand-success !default;
$state-info-text: #fff !default;
$state-info-bg: $brand-info !default;
$state-info-border: $brand-info !default;
$state-warning-text: #fff !default;
$state-warning-bg: $brand-warning !default;
$state-warning-border: $brand-warning !default;
$state-danger-text: #fff !default;
$state-danger-bg: $brand-danger !default;
$state-danger-border: $brand-danger !default;
//== Tooltips
//
//##
//** Tooltip max width
$tooltip-max-width: 200px !default;
//** Tooltip text color
$tooltip-color: #fff !default;
//** Tooltip background color
$tooltip-bg: rgba(0,0,0,.9) !default;
$tooltip-opacity: .9 !default;
//** Tooltip arrow width
$tooltip-arrow-width: 5px !default;
//** Tooltip arrow color
$tooltip-arrow-color: $tooltip-bg !default;
//== Popovers
//
//##
//** Popover body background color
$popover-bg: $gray-dark !default;
//** Popover maximum width
$popover-max-width: 276px !default;
//** Popover border color
$popover-border-color: rgba(0,0,0,.2) !default;
//** Popover fallback border color
$popover-fallback-border-color: #999 !default;
//** Popover title background color
$popover-title-bg: darken($popover-bg, 3%) !default;
//** Popover arrow width
$popover-arrow-width: 10px !default;
//** Popover arrow color
$popover-arrow-color: $popover-bg !default;
//** Popover outer arrow width
$popover-arrow-outer-width: ($popover-arrow-width + 1) !default;
//** Popover outer arrow color
$popover-arrow-outer-color: fadein($popover-border-color, 5%) !default;
//** Popover outer arrow fallback color
$popover-arrow-outer-fallback-color: darken($popover-fallback-border-color, 20%) !default;
//== Labels
//
//##
//** Default label background color
$label-default-bg: $gray !default;
//** Primary label background color
$label-primary-bg: $brand-primary !default;
//** Success label background color
$label-success-bg: $brand-success !default;
//** Info label background color
$label-info-bg: $brand-info !default;
//** Warning label background color
$label-warning-bg: $brand-warning !default;
//** Danger label background color
$label-danger-bg: $brand-danger !default;
//** Default label text color
$label-color: #fff !default;
//** Default text color of a linked label
$label-link-hover-color: #fff !default;
//== Modals
//
//##
//** Padding applied to the modal body
$modal-inner-padding: 20px !default;
//** Padding applied to the modal title
$modal-title-padding: 15px !default;
//** Modal title line-height
$modal-title-line-height: $line-height-base !default;
//** Background color of modal content area
$modal-content-bg: $gray-dark !default;
//** Modal content border color
$modal-content-border-color: rgba(0,0,0,.2) !default;
//** Modal content border color **for IE8**
$modal-content-fallback-border-color: #999 !default;
//** Modal backdrop background color
$modal-backdrop-bg: #000 !default;
//** Modal backdrop opacity
$modal-backdrop-opacity: .7 !default;
//** Modal header border color
$modal-header-border-color: $gray !default;
//** Modal footer border color
$modal-footer-border-color: $modal-header-border-color !default;
$modal-lg: 900px !default;
$modal-md: 600px !default;
$modal-sm: 300px !default;
//== Alerts
//
//## Define alert colors, border radius, and padding.
$alert-padding: 15px !default;
$alert-border-radius: $border-radius-base !default;
$alert-link-font-weight: bold !default;
$alert-success-bg: $state-success-bg !default;
$alert-success-text: $state-success-text !default;
$alert-success-border: $state-success-border !default;
$alert-info-bg: $state-info-bg !default;
$alert-info-text: $state-info-text !default;
$alert-info-border: $state-info-border !default;
$alert-warning-bg: $state-warning-bg !default;
$alert-warning-text: $state-warning-text !default;
$alert-warning-border: $state-warning-border !default;
$alert-danger-bg: $state-danger-bg !default;
$alert-danger-text: $state-danger-text !default;
$alert-danger-border: $state-danger-border !default;
//== Progress bars
//
//##
//** Background color of the whole progress component
$progress-bg: $gray-lighter !default;
//** Progress bar text color
$progress-bar-color: #fff !default;
//** Default progress bar color
$progress-bar-bg: $brand-primary !default;
//** Success progress bar color
$progress-bar-success-bg: $brand-success !default;
//** Warning progress bar color
$progress-bar-warning-bg: $brand-warning !default;
//** Danger progress bar color
$progress-bar-danger-bg: $brand-danger !default;
//** Info progress bar color
$progress-bar-info-bg: $brand-info !default;
//== List group
//
//##
//** Background color on `.list-group-item`
$list-group-bg: $gray-dark !default;
//** `.list-group-item` border color
$list-group-border: $gray !default;
//** List group border radius
$list-group-border-radius: $border-radius-base !default;
//** Background color of single list items on hover
$list-group-hover-bg: transparent !default;
//** Text color of active list items
$list-group-active-color: $component-active-color !default;
//** Background color of active list items
$list-group-active-bg: $component-active-bg !default;
//** Border color of active list elements
$list-group-active-border: $list-group-active-bg !default;
//** Text color for content within active list items
$list-group-active-text-color: lighten($list-group-active-bg, 40%) !default;
//** Text color of disabled list items
$list-group-disabled-color: $gray-light !default;
//** Background color of disabled list items
$list-group-disabled-bg: $gray-lighter !default;
//** Text color for content within disabled list items
$list-group-disabled-text-color: $list-group-disabled-color !default;
$list-group-link-color: $link-color !default;
$list-group-link-hover-color: $list-group-link-color !default;
$list-group-link-heading-color: darken($link-color, 5%) !default;
//== Panels
//
//##
$panel-bg: $gray-dark !default;
$panel-body-padding: 15px !default;
$panel-heading-padding: 10px 15px !default;
$panel-footer-padding: $panel-heading-padding !default;
$panel-border-radius: $border-radius-base !default;
//** Border color for elements within panels
$panel-inner-border: $gray !default;
$panel-footer-bg: $gray !default;
$panel-default-text: $text-color !default;
$panel-default-border: $gray !default;
$panel-default-heading-bg: $gray-dark !default;
$panel-primary-text: #fff !default;
$panel-primary-border: $brand-primary !default;
$panel-primary-heading-bg: $brand-primary !default;
$panel-success-text: $state-success-text !default;
$panel-success-border: $state-success-border !default;
$panel-success-heading-bg: $state-success-bg !default;
$panel-info-text: $state-info-text !default;
$panel-info-border: $state-info-border !default;
$panel-info-heading-bg: $state-info-bg !default;
$panel-warning-text: $state-warning-text !default;
$panel-warning-border: $state-warning-border !default;
$panel-warning-heading-bg: $state-warning-bg !default;
$panel-danger-text: $state-danger-text !default;
$panel-danger-border: $state-danger-border !default;
$panel-danger-heading-bg: $state-danger-bg !default;
//== Thumbnails
//
//##
//** Padding around the thumbnail image
$thumbnail-padding: 2px !default;
//** Thumbnail background color
$thumbnail-bg: $body-bg !default;
//** Thumbnail border color
$thumbnail-border: $gray !default;
//** Thumbnail border radius
$thumbnail-border-radius: $border-radius-base !default;
//** Custom text color for thumbnail captions
$thumbnail-caption-color: $text-color !default;
//** Padding around the thumbnail caption
$thumbnail-caption-padding: 9px !default;
//== Wells
//
//##
$well-bg: $gray-dark !default;
$well-border: transparent !default;
//== Badges
//
//##
$badge-color: #fff !default;
//** Linked badge text color on hover
$badge-link-hover-color: #fff !default;
$badge-bg: $gray !default;
//** Badge text color in active nav link
$badge-active-color: $brand-primary !default;
//** Badge background color in active nav link
$badge-active-bg: #fff !default;
$badge-font-weight: bold !default;
$badge-line-height: 1 !default;
$badge-border-radius: 10px !default;
//== Breadcrumbs
//
//##
$breadcrumb-padding-vertical: 8px !default;
$breadcrumb-padding-horizontal: 15px !default;
//** Breadcrumb background color
$breadcrumb-bg: $gray !default;
//** Breadcrumb text color
$breadcrumb-color: $text-color !default;
//** Text color of current page in the breadcrumb
$breadcrumb-active-color: $gray-light !default;
//** Textual separator for between breadcrumb elements
$breadcrumb-separator: "/" !default;
//== Carousel
//
//##
$carousel-text-shadow: 0 1px 2px rgba(0,0,0,.6) !default;
$carousel-control-color: #fff !default;
$carousel-control-width: 15% !default;
$carousel-control-opacity: .5 !default;
$carousel-control-font-size: 20px !default;
$carousel-indicator-active-bg: #fff !default;
$carousel-indicator-border-color: #fff !default;
$carousel-caption-color: #fff !default;
//== Close
//
//##
$close-font-weight: bold !default;
$close-color: #fff !default;
$close-text-shadow: none !default;
//== Code
//
//##
$code-color: #c7254e !default;
$code-bg: #f9f2f4 !default;
$kbd-color: #fff !default;
$kbd-bg: #333 !default;
$pre-bg: $gray-lighter !default;
$pre-color: $gray-dark !default;
$pre-border-color: #ccc !default;
$pre-scrollable-max-height: 340px !default;
// Horizon custom variables
$sidebar-background-color: $body-bg;
$border-color: #dddddd;
// Table
$table-bg-odd: $body-bg;
$table-stripe-bgcolor: $body-bg;
$table-border-color: #cccccc;
// Resource Browser
$rbrowser-body-background-color: $body-bg;
$rbrowser-header-background-color: $body-bg;
$rbrowser-footer-background-color: $body-bg;
// Accordion Nav
$accordionBaseFontColor: #002EFC;
$accordionBorderColor: #cccccc;
$accordianBoxShadowColor: #c7c7c7;
$accordionHighlightColor: #0000FF;
$accordianHeaderActiveColor: $gray-dark;
$accordianHeaderBorderColor: $body-bg;
$accordionItemActiveBgColor: #ffffff;
$accordionItemFontColor: #002EFC;
$accordionSubBorderColor: #c0c1c2;
$accordionSubHeaderFontColor: #002EFC;