Панель управления сверстанная и с встроенным jQuery.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

1733 lines
31 KiB

/* ------------------------------------------------------------------------------
*
* # jQuery UI Widgets
*
* Styles for jQuery UI widgets
*
* Version: 1.2
* Latest update: Aug 10, 2016
*
* ---------------------------------------------------------------------------- */
// Accordion
// -------------------------
// Base
.ui-accordion {
// Header
.ui-accordion-header {
display: block;
cursor: pointer;
margin: 0;
outline: 0;
position: relative;
background-color: @panel-bg;
padding: @panel-heading-padding;
border: 1px solid @panel-default-border;
margin-top: 5px;
border-radius: @panel-border-radius;
// Remove top margin from the first item
&:first-child {
margin-top: 0;
}
// Border radius correction
&.ui-accordion-header-active {
.border-bottom-radius(0);
}
// Icons
.ui-accordion-header-icon {
position: absolute;
top: 50%;
right: @content-padding-large;
margin-top: -(@icon-font-size / 2);
// Iconll
&:before {
content: '\e9b8';
font-family: 'Icomoon';
display: block;
width: @icon-font-size;
font-size: @icon-font-size;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
}
}
// Change icon in active header
.ui-accordion-header-active {
.ui-accordion-header-icon:before {
content: '\e9b7';
}
}
// Icons
.ui-accordion-icons {
padding-right: (@content-padding-large + @content-padding-small + @icon-font-size);
}
// Content
.ui-accordion-content {
padding: @panel-body-padding;
background-color: @panel-bg;
border: 1px solid @panel-default-border;
border-top: 0;
overflow: auto;
.border-bottom-radius(@panel-border-radius);
}
}
// Sortable vertical spacing
.accordion-sortable-group {
& + & {
margin-top: 5px;
}
}
// Autocomplete
// -------------------------
// Base
.ui-autocomplete {
position: absolute;
display: none;
padding: @list-spacing 0;
z-index: @zindex-dropdown;
max-height: 250px;
overflow-y: auto;
overflow-x: hidden;
// Category title
.ui-autocomplete-category {
padding: (@padding-base-vertical + 1) @padding-base-horizontal;
font-size: @font-size-mini;
line-height: @line-height-mini;
text-transform: uppercase;
font-weight: 700;
margin-top: 2px;
margin-bottom: 2px;
// Optgroup items have double horizontal spacing
~ .ui-menu-item {
padding-left: (@padding-base-horizontal * 2);
}
}
}
// Animated processing icon
.ui-autocomplete-processing:after {
content: '\eb51';
font-family: 'Icomoon';
display: inline-block;
position: absolute;
top: 50%;
right: @padding-base-horizontal;
width: @icon-font-size;
text-align: right;
margin-top: -(@icon-font-size / 2);
font-size: @icon-font-size;
line-height: 1;
color: inherit;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
.animation(rotation 1s linear infinite);
}
// Inside input group, remove border and border radius from the last element
.input-group {
.ui-autocomplete-input {
+ .input-group-btn,
+ .input-addon {
> .btn {
border-left: 0;
.border-left-radius(0);
}
}
}
}
// Buttons
// -------------------------
// Base
.ui-button {
display: inline-block;
position: relative;
touch-action: manipulation;
margin-bottom: 0;
padding: @padding-base-vertical @padding-base-horizontal;
border-radius: @border-radius-base;
cursor: pointer;
vertical-align: middle;
text-align: center;
background-color: @btn-default-bg;
border: 1px solid @btn-default-border;
color: @btn-default-color;
// Hover and focus states
&.ui-state-hover,
&.ui-state-focus {
color: @btn-default-color;
.box-shadow(0 0 0 100px fade(#000, 1%) inset);
}
// Active state
&.ui-state-active {
.box-shadow(0 0 0 100px fade(#000, 3%) inset);
}
// Disabled
&.ui-state-disabled {
cursor: @cursor-disabled;
.opacity(.65);
.box-shadow(none);
}
// Colored button
&[class*=bg-] {
&.ui-state-hover,
&.ui-state-focus {
color: #fff;
.box-shadow(0 0 0 100px fade(#000, 5%) inset);
}
&.ui-state-active {
.box-shadow(0 0 0 100px fade(#000, 10%) inset);
}
}
// Transparent button
&.ui-button-link {
background-color: transparent;
border-color: transparent;
// Change link color on hover and focus
&.ui-state-hover,
&.ui-state-focus {
color: @link-hover-color;
}
// Remove box shadow
&.ui-state-hover,
&.ui-state-focus,
&.ui-state-active {
.box-shadow(none);
}
}
// Reset extra padding in Firefox
&::-moz-focus-inner {
border: 0;
padding: 0;
}
}
//
// Buttons with icons
//
// Primary icon
.ui-button-icon-primary {
.ui-button-text-icon-primary &,
.ui-button-text-icons &,
.ui-button-icons-only {
margin-right: @element-horizontal-spacing;
}
}
// Secondary icon
.ui-button-icon-secondary {
.ui-button-text-icon-secondary &,
.ui-button-text-icons &,
.ui-button-icons-only & {
margin-left: @element-horizontal-spacing;
}
}
// Icon only
.ui-button-icon-only {
padding-left: ((@line-height-computed - @icon-font-size + @padding-base-vertical - 1) - 1);
padding-right: ((@line-height-computed - @icon-font-size + @padding-base-vertical - 1) - 1);
}
// Hide text in button with icons only
.ui-button-text {
.ui-button-icon-only &,
.ui-button-icons-only & {
display: none;
}
}
//
// Button sets
//
// Base
.ui-buttonset {
display: inline-block;
vertical-align: middle;
position: relative;
// Child buttons
.ui-button {
border-radius: 0;
margin-left: -1px;
float: left;
}
// Remove left margin for first childs
.ui-button:first-child,
.ui-helper-hidden-accessible:first-child + .ui-button {
margin-left: 0;
}
// Add border radius for the first button
.ui-button:first-child,
.ui-helper-hidden-accessible:first-child + .ui-button:not(:last-child) {
.border-left-radius(@border-radius-base);
}
// Add border radius for the last button
.ui-button:last-child {
.border-right-radius(@border-radius-base);
}
}
// Split button
.ui-buttonset-split {
position: relative;
display: inline-block;
> ul {
position: absolute;
text-align: left;
min-width: 180px;
}
}
// Datepicker
// ------------------------------
// Base
.ui-datepicker {
min-width: 270px;
background-color: @dropdown-bg;
padding: (@list-spacing * 2);
display: none;
border: 1px solid @dropdown-border;
border-radius: @border-radius-base;
z-index: 190;
.box-shadow(0 1px 3px fade(#000, 10%));
// Make it flexible in sidebar
.sidebar & {
min-width: 0;
}
// Header
// ------------------------------
// Base
.ui-datepicker-header {
position: relative;
}
// Title
.ui-datepicker-title {
margin: 0 40px;
padding-top: @content-padding-base;
padding-bottom: @content-padding-base;
font-size: @font-size-h6;
text-align: center;
line-height: 1;
// Show month
.ui-datepicker-month {
font-weight: 500;
}
// Show year
.ui-datepicker-year {
font-size: @font-size-small;
color: @text-muted;
margin-left: 5px;
}
// Date select
select {
outline: 0;
height: (@icon-font-size + (@padding-base-vertical * 2));
border-color: @input-border;
&.ui-datepicker-month,
&.ui-datepicker-year {
width: 48%;
font-size: @font-size-base;
font-weight: 400;
color: @text-color;
}
}
}
// Nav buttons
// ------------------------------
// Base
.ui-datepicker-prev,
.ui-datepicker-next {
position: absolute;
top: 50%;
margin-top: -((@icon-font-size / 2) + @padding-base-vertical);
line-height: 1;
color: @text-color;
padding: @padding-base-vertical;
border-radius: @border-radius-small;
// Icon base
&:after {
font-family: 'icomoon';
display: block;
font-size: @icon-font-size;
width: @icon-font-size;
text-align: center;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
// Hide text
span {
display: none;
}
}
// Prev button icon
.ui-datepicker-prev {
left: 0;
&:after {
content: '\e9c8';
}
}
// Next btn icon
.ui-datepicker-next {
right: 0;
&:after {
content: '\e9cb';
}
}
// Hover state
.ui-datepicker-prev-hover,
.ui-datepicker-next-hover {
background-color: @dropdown-link-hover-bg;
}
// Components
// ------------------------------
// Table
table {
width: 100%;
border-collapse: collapse;
margin: 0;
// Header cells
th {
text-align: center;
font-weight: 400;
border: 0;
padding-top: @content-padding-small;
padding-bottom: @content-padding-small;
font-size: @font-size-small;
color: @text-muted;
}
// Body cells
td {
border: 0;
padding: 1px;
position: relative;
// Day element
span,
a {
display: block;
padding: 6px;
text-align: center;
text-decoration: none;
border-radius: @border-radius-base;
color: @text-color;
min-width: 34px;
}
// Hover state
.ui-state-hover {
background-color: @dropdown-link-hover-bg;
}
&.ui-state-disabled span {
color: #ccc;
}
// Week column
&.ui-datepicker-week-col {
padding: 6px;
color: @text-muted;
}
// Active day
&.ui-datepicker-current-day .ui-state-active {
background-color: @color-teal-400;
color: #fff;
}
// Today
&.ui-datepicker-today .ui-state-highlight {
background-color: @brand-primary;
color: #fff;
&:after {
content: "";
position: absolute;
top: 3px;
right: 3px;
width: 0;
height: 0;
border-top: 6px solid #fff;
border-left: 6px solid transparent;
}
}
a.ui-priority-secondary {
.opacity(0.6);
}
}
}
// Button panel
.ui-datepicker-buttonpane {
button {
float: right;
border: 1px solid @btn-default-border;
background-color: @btn-default-bg;
font-weight: 400;
margin-top: (@list-spacing * 2);
cursor: pointer;
padding: @padding-base-vertical @padding-base-horizontal;
width: auto;
overflow: visible;
outline: 0;
border-radius: @border-radius-base;
// Hover state
&.ui-state-hover {
.box-shadow(0 0 0 100px fade(#000, 1%) inset);
}
// Current date
&.ui-datepicker-current {
float: left;
}
// Active state
&:active {
.box-shadow(0 0 0 100px fade(#000, 3%) inset);
}
}
}
// Multiple calendars
&.ui-datepicker-multi {
width: auto!important;
}
}
// Inline datepicker
.datepicker-inline {
width: 264px;
max-width: 100%;
overflow-x: auto;
.full-width&,
.sidebar &,
.popover & {
width: 100%;
}
}
// Trigger
.ui-datepicker-trigger {
position: absolute;
top: 4px;
right: 5px;
z-index: 4;
padding: 6px;
cursor: pointer;
}
// Clearfix
.ui-datepicker-row-break {
clear: both;
width: 100%;
font-size: 0;
}
// Multiple datepickers
.ui-datepicker-multi {
.ui-datepicker-group {
float: left;
+ .ui-datepicker-group {
padding-left: 15px;
}
}
.ui-datepicker-group-last {
.ui-datepicker-header {
border-left-width: 0;
}
}
.ui-datepicker-buttonpane {
clear: left;
}
}
.ui-datepicker-multi-2 .ui-datepicker-group {
width: 46%;
}
.ui-datepicker-multi-3 .ui-datepicker-group {
width: 33.3%;
}
.ui-datepicker-multi-4 .ui-datepicker-group {
width: 25%;
}
// Dialog
// ------------------------------
// Base
.ui-dialog {
position: fixed;
top: 0;
left: 0;
background-color: @modal-content-bg;
border-radius: @border-radius-base;
border: 1px solid @modal-content-border-color;
outline: 0;
overflow: hidden;
.box-shadow(0 1px 4px rgba(0,0,0,.2));
// Make it full width on mobiles
@media (max-width: @screen-xs-max) {
width: 90%!important;
}
}
//
// Dialog header
//
// Header
.ui-dialog-titlebar {
position: relative;
padding: @modal-title-padding;
padding-bottom: 0;
// Draggable cursor
.ui-draggable & {
cursor: move;
}
}
// Title
.ui-dialog-title {
float: left;
font-size: @font-size-h6;
white-space: nowrap;
width: 90%;
overflow: hidden;
text-overflow: ellipsis;
}
// Close button
.ui-dialog-titlebar-close {
position: absolute;
background-color: transparent;
border: 0;
right: @content-padding-large;
top: 50%;
padding: 0;
margin-top: ((@line-height-computed - @icon-font-size) / 2);
// Cross icon
&:after {
content: '\ed6b';
font-family: 'Icomoon';
display: block;
width: @icon-font-size;
font-size: @icon-font-size;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
// Remove default button shadows
&.ui-state-hover,
&.ui-state-focus {
.box-shadow(none);
}
}
//
// Dialog content
//
// Content itself
.ui-dialog-content {
position: relative;
border: 0;
padding: @modal-inner-padding;
background: none;
overflow: auto;
// Remove bottom margin from last childs
.form-group:last-child,
p:last-child {
margin-bottom: 0;
}
}
// Buttons
.ui-dialog-buttonpane {
padding: @modal-inner-padding;
padding-top: 0;
.ui-dialog-buttonset {
float: right;
}
button + button {
margin-left: 5px;
cursor: pointer;
}
}
// Menu
// ------------------------------
// Base
.ui-menu {
list-style: none;
padding: @list-spacing 0;
margin: 0;
display: block;
outline: none;
min-width: 180px;
white-space: nowrap;
background-color: @dropdown-bg;
border: 1px solid @input-border;
border-radius: @border-radius-base;
z-index: @zindex-dropdown;
.box-shadow(0 1px 3px fade(#000, 10%));
// Nested menu
.ui-menu {
position: absolute;
top: -(@list-spacing + 1)!important;
}
// Menu item
.ui-menu-item {
position: relative;
margin: 0;
cursor: pointer;
padding: (@padding-base-vertical + 1) @content-padding-base;
min-height: 0;
outline: 0;
// Links
> a {
display: block;
color: @text-color;
}
// Icons
> i {
margin-right: @element-horizontal-spacing;
}
// Submenu arrow icon
> .ui-menu-icon {
position: absolute;
top: 50%;
margin-top: -(@icon-font-size / 2);
right: @content-padding-base;
&:after {
content: '\e9c7';
font-family: 'icomoon';
font-size: @icon-font-size;
font-weight: 400;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
.opacity(0.8);
}
}
// Disabled state
&.ui-state-disabled {
&,
a {
color: @text-muted;
cursor: @cursor-disabled;
}
}
}
// Header
.ui-menu-header {
padding: (@padding-base-vertical + 1) @content-padding-base;
font-size: @font-size-mini;
line-height: @line-height-mini;
text-transform: uppercase;
color: @text-muted;
margin-top: @list-spacing;
// Highlighted header
&.highlight {
margin-top: 0;
background-color: @dropdown-annotation-bg;
color: @gray-light;
// ... but remove from the first one
&:first-child {
margin-top: 0;
}
}
}
.ui-menu-item + .highlight,
.highlight + .ui-menu-item {
margin-top: @list-spacing;
}
// Icons
.ui-menu-item > a,
.ui-menu-header {
> i[class*=icon-] {
margin-top: ((@line-height-computed - @icon-font-size) / 2);
float: left;
margin-right: @content-padding-small;
top: 0;
// Right icon
&.pull-right {
margin-right: 0;
margin-left: @content-padding-small;
}
}
}
// Divider
.ui-menu-divider {
margin: @list-spacing 0;
height: 0;
font-size: 0;
line-height: 0;
border-top: 1px solid @dropdown-divider-bg;
}
// States
.ui-state-focus,
.ui-state-active {
color: @dropdown-link-hover-color;
background-color: @dropdown-link-hover-bg;
}
// Disabled state
&.ui-state-disabled {
&,
.ui-menu-item,
a {
color: @text-muted;
cursor: @cursor-disabled;
}
}
}
// Progress bar
// ------------------------------
// Base
.ui-progressbar {
height: @progress-base-height;
overflow: hidden;
position: relative;
background-color: @progress-bg;
border-radius: @progress-border-radius;
.box-shadow(inset 0 1px 1px fade(#000, 10%));
}
// Value
.ui-progressbar-value {
float: left;
width: 0%;
height: 100%;
background-color: @progress-bar-bg;
color: #fff;
overflow: hidden;
.transition(width .6s ease);
}
// Overlay
.ui-progressbar-value,
.ui-progressbar-overlay {
height: 100%;
background-size: 40px 40px;
}
// Stripes
.ui-progressbar-striped {
.ui-progressbar-value,
.ui-progressbar-overlay {
#gradient > .striped();
}
}
// Stripes for overlay
.ui-progressbar-overlay {
#gradient > .striped();
}
// Animated stripes
.ui-progressbar-active .ui-progressbar-value,
.ui-progressbar-overlay {
.animation(progress-bar-stripes 2s linear infinite);
}
// Remove stripes in indeterminate mode
.ui-progressbar-indeterminate .ui-progressbar-value {
background-image: none;
}
// Select menu
// ------------------------------
// Base
.ui-selectmenu-menu {
padding: 0;
margin: 0;
position: absolute;
top: 0;
left: 0;
display: none;
// Set max width for menu
.ui-menu {
max-height: 250px;
overflow-y: auto;
overflow-x: hidden;
// Optgroups
.ui-selectmenu-optgroup {
font-size: @font-size-mini;
font-weight: 700;
line-height: @line-height-mini;
padding: @padding-base-vertical @padding-base-horizontal;
margin: 2px 0;
text-transform: uppercase;
height: auto;
border: 0;
// Add double horizontal padding for items
~ .ui-menu-item {
padding-left: (@padding-base-horizontal * 2);
}
}
}
}
// Display if opened
.ui-selectmenu-open {
display: block;
}
// Select button
.ui-selectmenu-button {
display: inline-block;
position: relative;
text-decoration: none;
cursor: pointer;
height: @input-height-base;
padding: @padding-base-vertical @padding-base-horizontal;
padding-right: ((@padding-base-horizontal * 2) + @content-padding-small);
background-color: @input-bg;
border: 1px solid @input-border;
border-radius: @input-border-radius;
outline: 0;
// Darken on hover and focus
&.ui-state-hover,
&.ui-state-focus {
.box-shadow(0 0 0 100px fade(#000, 1%) inset);
}
// Down arrow
&:after {
content: '\e9c5';
font-family: 'Icomoon';
display: inline-block;
position: absolute;
top: 50%;
right: @padding-base-horizontal;
text-align: right;
margin-top: -(@icon-font-size / 2);
font-size: @icon-font-size;
line-height: 1;
color: inherit;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
// Button text
.ui-selectmenu-text {
display: block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
}
// Disabled menu
.ui-selectmenu-disabled {
cursor: @cursor-disabled;
background-color: @input-bg-disabled;
color: @gray-light;
&.ui-state-hover,
&.ui-state-focus {
.box-shadow(none);
}
}
//
// Optional sizing to match form controls
//
// Large
.ui-selectmenu-lg {
.ui-selectmenu-button {
height: @input-height-large;
.ui-selectmenu-text {
padding: @padding-large-vertical @padding-large-horizontal;
padding-right: ((@padding-large-horizontal * 2) + @content-padding-small);
}
}
}
// Small
.ui-selectmenu-sm {
.ui-selectmenu-button {
height: @input-height-small;
.ui-selectmenu-text {
padding: @padding-small-vertical @padding-base-horizontal;
padding-right: ((@padding-small-horizontal * 2) + @content-padding-small);
font-size: @font-size-small;
line-height: @line-height-small;
}
}
}
// Mini
.ui-selectmenu-xs {
.ui-selectmenu-button {
height: @input-height-mini;
.ui-selectmenu-text {
padding: @padding-xs-vertical @padding-xs-horizontal;
padding-right: ((@padding-xs-horizontal * 2) + @content-padding-small);
font-size: @font-size-small;
line-height: @line-height-small;
}
}
}
//
// Images
//
.ui-selectmenu-images {
// Image base
.ui-menu-item > span {
display: inline-block;
margin-right: @content-padding-small;
border-radius: @border-radius-small;
width: @line-height-computed;
height: @line-height-computed;
background-size: @line-height-computed @line-height-computed;
float: left;
}
// Demo images, replace with your own
.demo-img-amazon {
background: url('../images/brands/amazon.png') no-repeat;
}
.demo-img-youtube {
background: url('../images/brands/youtube.png') no-repeat;
}
.demo-img-twitter {
background: url('../images/brands/twitter.png') no-repeat;
}
.demo-img-bing {
background: url('../images/brands/bing.png') no-repeat;
}
.demo-img-spotify {
background: url('../images/brands/spotify.png') no-repeat;
}
}
// Sliders
// ------------------------------
.ui-slider {
position: relative;
text-align: left;
background-color: @gray-lighter;
border-radius: 100px;
.box-shadow(inset 0 1px 1px fade(#000, 10%));
// Handle
.ui-slider-handle {
position: absolute;
z-index: 2;
width: (@slider-base-size * 3);
height: (@slider-base-size * 3);
cursor: pointer;
border-radius: 50%;
background-color: #fcfcfc;
border: 1px solid #bbb;
outline: 0;
// Hover color
&.ui-state-hover,
&.ui-state-focus {
background-color: #f8f8f8;
// Mute circle
&:after {
.opacity(0.9);
}
}
// Active color
&.ui-state-active {
background-color: #fefefe;
// Mute circle
&:after {
.opacity(0.9);
}
}
// Inner circle
&:after {
content: '';
display: inline-block;
width: @slider-base-size;
height: @slider-base-size;
position: absolute;
top: 50%;
left: 50%;
margin-top: -(@slider-base-size / 2);
margin-left: -(@slider-base-size / 2);
background-color: @color-slate-600;
border-radius: 50%;
}
}
// Range
.ui-slider-range {
position: absolute;
z-index: 1;
display: block;
border: 0;
background-color: @color-slate-500;
border-radius: 100px;
}
// Disabled state
&.ui-slider-disabled {
.opacity(0.6);
}
}
//
// Orientations
//
// Horizontal
.ui-slider-horizontal {
height: @slider-base-size;
// Handle
.ui-slider-handle {
top: -(@slider-base-size * 1.5) + (@slider-base-size / 2);
margin-left: -(@slider-base-size * 1.5);
}
// Ranges
.ui-slider-range {
top: 0;
height: 100%;
}
.ui-slider-range-min {
left: 0;
}
.ui-slider-range-max {
right: 0;
}
}
// Vertical
.ui-slider-vertical {
width: @slider-base-size;
height: 150px;
display: inline-block;
margin: 0 10px;
// Handle
.ui-slider-handle {
left: -(@slider-base-size * 1.5) + (@slider-base-size / 2);
margin-bottom: -(@slider-base-size * 1.5);
}
// Ranges
.ui-slider-range {
left: 0;
width: 100%;
}
.ui-slider-range-min {
bottom: 0;
}
.ui-slider-range-max {
top: 0;
}
}
//
// Handles
//
// Slider with solid handle
.ui-slider-solid {
.ui-slider-handle {
background-color: @gray-light;
border-color: @gray-light;
.box-shadow(none);
&:after {
background-color: #fff;
.transition(opacity ease-in-out 0.2s);
}
&.ui-state-hover:after,
&.ui-state-active:after {
background-color: #fff;
.opacity(0.75);
}
}
}
// White handle
.ui-handle-white .ui-slider-handle:after {
content: none;
}
//
// Sizing
//
// Large
.ui-slider-lg {
// Handle
.ui-slider-handle {
width: (@slider-large-size * 3);
height: (@slider-large-size * 3);
// Inner circle
&:after {
width: @slider-large-size;
height: @slider-large-size;
margin-top: -(@slider-large-size / 2);
margin-left: -(@slider-large-size / 2);
}
}
// In horizontal orientation
&.ui-slider-horizontal {
height: @slider-large-size;
.ui-slider-handle {
top: -(@slider-large-size * 1.5) + (@slider-large-size / 2);
margin-left: -(@slider-large-size * 1.5);
}
}
// In vertical orientation
&.ui-slider-vertical {
width: @slider-large-size;
.ui-slider-handle {
left: -(@slider-large-size * 1.5) + (@slider-large-size / 2);
margin-bottom: -(@slider-large-size * 1.5);
}
}
}
// Small and mini have the same handle size
.ui-slider-sm,
.ui-slider-xs {
.ui-slider-handle {
width: (@slider-small-size * 3);
height: (@slider-small-size * 3);
// Inner circle
&:after {
width: @slider-small-size;
height: @slider-small-size;
margin-top: -(@slider-small-size / 2);
margin-left: -(@slider-small-size / 2);
}
}
}
// Small
.ui-slider-sm {
// In horizontal orientation
&.ui-slider-horizontal {
height: @slider-small-size;
.ui-slider-handle {
top: -(@slider-small-size * 1.5) + (@slider-small-size / 2);
margin-left: -(@slider-small-size * 1.5);
}
}
// In vertical orientation
&.ui-slider-vertical {
width: @slider-small-size;
.ui-slider-handle {
left: -(@slider-small-size * 1.5) + (@slider-small-size / 2);
margin-bottom: -(@slider-small-size * 1.5);
}
}
}
// Mini
.ui-slider-xs {
// In horizontal orientation
&.ui-slider-horizontal {
height: @slider-mini-size;
.ui-slider-handle {
top: -(@slider-small-size * 1.5) + (@slider-mini-size / 2);
margin-left: -(@slider-small-size * 1.5);
}
}
// In vertical orientation
&.ui-slider-vertical {
width: @slider-mini-size;
.ui-slider-handle {
left: -(@slider-small-size * 1.5) + (@slider-mini-size / 2);
margin-bottom: -(@slider-small-size * 1.5);
}
}
}
//
// Contextual colors
//
.ui-slider-primary .ui-slider-range,
.ui-slider-solid.ui-slider-primary .ui-slider-handle {
background-color: @brand-primary;
border-color: @brand-primary;
}
.ui-slider-danger .ui-slider-range,
.ui-slider-solid.ui-slider-danger .ui-slider-handle {
background-color: @brand-danger;
border-color: @brand-danger;
}
.ui-slider-success .ui-slider-range,
.ui-slider-solid.ui-slider-success .ui-slider-handle {
background-color: @brand-success;
border-color: @brand-success;
}
.ui-slider-warning .ui-slider-range,
.ui-slider-solid.ui-slider-warning .ui-slider-handle {
background-color: @brand-warning;
border-color: @brand-warning;
}
.ui-slider-info .ui-slider-range,
.ui-slider-solid.ui-slider-info .ui-slider-handle {
background-color: @brand-info;
border-color: @brand-info;
}
// Spinner
// ------------------------------
// Base
.ui-spinner {
position: relative;
display: table;
}
// Input
.ui-spinner-input {
padding-right: (@padding-base-vertical * 2) + @icon-font-size;
display: table-cell;
width: 100%;
border-radius: @input-border-radius 0 0 @input-border-radius;
border-right: 0;
}
//
// Buttons
//
// Button base
.ui-spinner-button {
font-size: 0;
color: @text-color;
cursor: pointer;
background-color: @input-bg;
border: 1px solid @input-border;
border-radius: 0;
display: table-cell;
width: 1%;
padding: 0 @padding-base-vertical;
// Button icons base
&:after {
font-family: 'Icomoon';
display: inline-block;
width: @icon-font-size;
font-size: @icon-font-size;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
// Remove left border from 2ns button
& + & {
border-left: 0;
}
// Hide button text
.ui-button-text {
display: none;
}
// Hover/focus states
&.ui-state-hover,
&.ui-state-focus {
color: @text-color;
}
// Disabled state
&.ui-state-disabled {
background-color: @input-bg-disabled;
color: @text-muted;
cursor: @cursor-disabled;
.box-shadow(none);
}
}
// Up button icon
.ui-spinner-up {
&:after {
content: '\e9f7';
}
}
// Down button icon
.ui-spinner-down {
&:after {
content: '\e9e2';
}
.border-right-radius(@input-border-radius);
}
// Tabs
// ------------------------------
.ui-tabs {
position: relative;
// Tabs navigation
.ui-tabs-nav {
margin-bottom: @line-height-computed;
border-bottom: 1px solid @nav-tabs-border-color;
// Items
li {
list-style: none;
position: relative;
padding: 0;
white-space: nowrap;
margin-bottom: -1px;
// Setup desktop view
@media (min-width: @screen-sm-min) {
float: left;
}
}
// Links
.ui-tabs-anchor {
display: block;
color: @color-grey-400;
padding: @nav-link-padding;
border: 1px solid transparent;
border-top-width: 2px;
}
// Hover/focus states
.ui-state-hover,
.ui-state-focus {
.ui-tabs-anchor:not(.ui-state-disabled) {
color: @text-color;
}
}
// Active item
.ui-tabs-active {
.ui-tabs-anchor {
color: @nav-tabs-active-link-hover-color;
background-color: @nav-tabs-active-link-hover-bg;
cursor: default;
border-color: @brand-primary @nav-tabs-active-link-hover-border-color transparent;
}
}
// Disabled item
.ui-state-disabled {
color: @nav-disabled-link-color;
cursor: @cursor-disabled;
.opacity(0.75);
}
// Add bottom border and bg to sortable helper
.ui-sortable-helper:not(.ui-tabs-active) {
.ui-tabs-anchor {
background-color: #fff;
border-bottom-color: @nav-tabs-border-color;
}
}
// Setup mobile view
@media (max-width: @screen-xs-max) {
border-bottom: 0;
position: relative;
background-color: #fff;
padding: @list-spacing 0;
border: 1px solid @panel-default-border;
border-radius: @border-radius-base;
// Tab nav item
li {
margin-bottom: 0;
// Add 1px spacing between items
& + li {
margin-top: 1px;
}
}
// Add permanent link styles
.ui-tabs-anchor {
border-width: 0 0 0 2px;
border-left-color: transparent;
}
// Background color for hover/focus states
.ui-state-hover,
.ui-state-focus {
.ui-tabs-anchor {
background-color: @nav-tabs-mobile-link-hover-bg;
}
}
// Left border and bg colors for active link
.ui-state-active {
.ui-tabs-anchor {
border-left-color: @brand-primary;
background-color: @nav-tabs-mobile-link-active-bg;
}
}
// Add text header to the tabs section
&:before {
content: 'Contents';
color: inherit;
font-size: @font-size-small;
line-height: @line-height-small;
font-weight: 500;
margin-top: (@content-padding-base - @list-spacing);
margin-left: @content-padding-base;
margin-bottom: @content-padding-base;
text-transform: uppercase;
.opacity(0.5);
}
}
}
// Display tabs panel
.ui-tabs-panel {
display: block;
}
}
// Tooltip
// ------------------------------
.ui-tooltip {
position: absolute;
z-index: @zindex-tooltip;
max-width: @tooltip-max-width;
padding: 3px 8px;
color: @tooltip-color;
text-align: center;
background-color: @tooltip-bg;
border-radius: @border-radius-base;
}
// Misc
// ------------------------------
// Overlay
.ui-widget-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: @modal-backdrop-bg;
.opacity(@modal-backdrop-opacity);
}
//
// Layout helpers
//
// Hide element
.ui-helper-hidden {
display: none;
}
// Accessible element
.ui-helper-hidden-accessible {
border: 0;
clip: rect(0 0 0 0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
}
// Reset
.ui-helper-reset {
margin: 0;
padding: 0;
border: 0;
outline: 0;
list-style: none;
}
// Clearfix
.ui-helper-clearfix {
&:before,
&:after {
content: "";
display: table;
border-collapse: collapse;
}
&:after {
clear: both;
}
}
// iFrame fix
.ui-helper-zfix {
width: 100%;
height: 100%;
top: 0;
left: 0;
position: absolute;
.opacity(0);
}
// Overlay z-index
.ui-front {
z-index: @zindex-modal-background;
}