/* General */
body {
    padding-top: 60px;
    padding-bottom: 40px;
}

#sidebar-nav {
    padding: 9px 0;
    min-height: 500px;
    /*position: fixed;*/
}

@media (max-width: 1024px) {
    body {
        padding-top: 0;
    }
}

/* Helpers */
.grey {
    color: #666;
}

.small, .small *, small {
    font-size: 11px;
}

.smallgray {
    color: #999;
    font-size: 11px;
}

.clear {
    clear: both;
}

.center {
    text-align: center !important;
}

.left {
    text-align: left !important;
}

.align-right {
    text-align: right !important;
}

.padded-v {
    margin: 15px 0;
}

.negative * {
    color: red;
    font-weight: bold;
}

/* List Actions */
.list-actions {
    text-align: right;
}

/* Forms */
.error-message {
    color: #B94A48;
}

.input.date select, .input.time select, .input.datetime select {
    width: auto;
}

.form-horizontal .input.control-group.checkbox {
    margin-left: 145px;
}

.form-horizontal .input.control-group.checkbox .controls {
    margin-left: 0;
}

.form-horizontal .control-group {
    margin-bottom: 12px;
}

.sales-item {
    background-color: whiteSmoke;
    padding: 15px;
    margin-bottom: 10px;
}

.input.multiple-checkbox label.control-label {
    padding-top: 0;
}

/* jQuery UI */
.ui-menu .ui-menu-item a {
    font-size: 10px;
}

/* Tables */
td.title {
    font-weight: bold;
}

/* ToggleComponent */
a.toggle {

}

.toggle-target {
    display: none;
}

/* Glyphicons Selfmade */
.glyphsm {
    display: inline-block;
    background-image: url('/img/glyphicons-selfmade.png');
    background-repeat: no-repeat;
    width: 12px;
    height: 12px;
    margin-top: 4px;
}

.glyphsm-tick {
    background-position: -6px 0;
}

.glyphsm-cross {
    background-position: -28px 0;
}

.glyphsm-box {
    background-position: -50px 0;
}

.glyphsm-checkedbox {
    background-position: -70px 0;
}

.glyphsm-crossedbox {
    background-position: -90px 0;
}

.glyphsm-arrow-up {
    background-position: -125px 0;
}

.glyphsm-arrow-down {
    background-position: -108px 0;
}

/* Rating Bar */
.rating-bar {
    display: inline-block;
    background-image: url('/img/rating-bar.png');
    background-repeat: no-repeat;
    height: 12px;
    width: 0px;
    margin-top: 4px;
}

.rating-bar-inactive {
    background-image: url('/img/rating-bar-inactive.png');
}

/* Stars bar */
.stars-bar {
    display: inline-block;
    background-image: url('/img/stars-bar.png');
    background-repeat: repeat-x;
    height: 12px;
}

.stars-bar-inactive {
    background-image: url('/img/stars-bar-inactive.png');
}

.stars-bar-container {
    white-space: nowrap;
}

/* Products List */
#products-list ul {
    list-style: none;
    margin-left: 2em;
}

#products-list > ul {
    list-style: none;
    margin-left: 0;
}

#products-list ul li {
    border: 1px solid #ccc;
    margin: 5px 0;
    padding: 5px;
}

#products-list span.open {
    display: block;
    line-height: 11px;
    padding: 1px 0;
}

form.subscription-plan {
    padding-bottom: 0;
    margin: 0;
}

table.subscription-plans .control-group {
    margin: 5px 0 0 0;
}

table.subscription-plans table td {
    vertical-align: middle;
}

.sg-chooser a {
    cursor: pointer;
}

/* Song Group Chooser */
.song-groups-chooser {
    border: 1px solid #999;
}

/* Buttons */
.btn-small {
    line-height: 10px;
}

.btn-wide {
    width: 80%;
}

/* List Filter */
.list-filter {
    clear: both;
}

.list-filter .control-group,
.list-filter .control-group label {
    margin-bottom: 0;
}

.list-filter input,
.list-filter textarea,
.list-filter select,
.list-filter .uneditable-input {
    margin-bottom: 4px;
}

.list-filter .submit-group {
    margin-top: 10px;
}

.list-filter .submit-group a.btn {
    margin-top: -4px;
}

.list-filter form {
    margin-bottom: 0;
}

.list-filter hr {
    margin: 8px 0;
}

.list-filter.closed .content {
    display: none;
}

.list-filter.closed {
    padding-top: 3px;
    padding-bottom: 6px;
}

.list-filter.closed hr {
    display: none;
}

.list-filter.closed h3 {
    font-size: 14px;
    line-height: 24px;
}

.fulltext-search {
    padding: 8px 19px;
    clear: both;
    margin-bottom: 10px;
}

.fulltext-search form {
    margin: 0;
}

.fulltext-search form .control-group {
    margin: 0;
}

.fulltext-search h3 {
    font-size: 14px;
    line-height: 28px;
}

/* Box */
.box {
    padding: 10px 15px;
}

.box .top {
    margin-bottom: 8px;
}

.box .content {
    clear: both;
}

.box table {
    margin-bottom: 8px;
}

td.caption {
    color: #666;
    width: 130px;
}

table.hide-more tr.more {
    display: none;
}

/* Dialog */

/* Dialog - General */
.modal {
    z-index: 3001;
}

/* Dialog - Content */
.modal > .modal-body {
    min-height: 250px;
}

.modal form {
    margin: 0;
}

.modal > .content {
    min-height: 50px;
}

/* Dialog - Loading State */
.dialog.loading > .blockUI.blockElement {
    background-color: transparent;
    border: none;
    color: #fff;
    width: 53px;
    height: 53px;
    display: block;
}

.dialog > .blockUI.blockOverlay {
    background: #fff;
}

.dialog .form-actions {
    padding-top: 5px;
    padding-bottom: 5px;
    margin-top: 10px;
}

/* Debugging */
pre {
    color: #000;
    background: #f0f0f0;
    padding: 1em;
}

pre.cake-debug {
    background: #ffcc00;
    font-size: 120%;
    line-height: 18px;
    margin: 4px 2px;
    overflow: auto;
    position: relative;
}

div.cake-stack-trace {
    background: #fff;
    color: #333;
    margin: 4px 2px;
    padding: 4px;
    font-size: 120%;
    line-height: 18px;
    overflow: auto;
    position: relative;
}

div.cake-code-dump pre {
    position: relative;
    overflow: auto;
}

div.cake-stack-trace pre, div.cake-code-dump pre {
    color: #000000;
    background-color: #F0F0F0;
    border: 1px dotted #606060;
    margin: 4px 2px;
    padding: 4px;
    overflow: auto;
}

div.cake-code-dump pre, div.cake-code-dump pre code {
    clear: both;
    font-size: 12px;
    line-height: 5px;
    margin: 4px 2px;
    padding: 4px;
    overflow: auto;
}

div.cake-code-dump span.code-highlight {
    background-color: #FFFF00;
}

/* Jingles */
#JingleSongName {
    padding-left: 30px;
}

/* Invoices */
.invoice-previews {
    margin-top: 30px;
}

.invoice-previews .preview textarea {
    width: 95%;
    height: 50px;
}

/* Home */
.home-links {
    padding-top: 8px;
    padding-bottom: 8px;
    text-align: center;
}

.customer-count-box {
    background: #222;
}

.customer-count {
    text-align: center;
}

.customer-count h1 {
    margin: 0 auto !important;
    background: #222;
    color: #fff;
    font-size: 80px;
    letter-spacing: 8px;
    line-height: 120px;
    margin: 0;
    line-height: 80px;
}

/* Station Inspector */
#station-list-filter {
    margin-bottom: 20px;
}

#station-list-filter .input-medium {
    width: 360px;
}

.choose-station {
    height: 745px;
    overflow-y: auto;
    overflow-x: hidden;
}

.choose-station .station {
    display: block;
    float: left;
}

.choose-station .station img, .choose-station .station-icon {
    width: 120px;
    height: 120px;
    margin-right: 10px;
    margin-bottom: 10px;
}

.choose-station .station .active {
    display: none;
}

.choose-station .station:hover .active {
    display: block;
}

.choose-station .station:hover .inactive {
    display: none;
}

.datagrid .page-input {
    height: 30px !important;
}

.fuelux .datagrid thead tr th[data-property=release] i,
.fuelux .datagrid thead tr th[data-property=ratings] i,
.fuelux .datagrid thead tr th[data-property=excluded] i,
.fuelux .datagrid thead tr th[data-property=deleted] i {
    display: none;
}

.player-frame {
    height: 256px;
    width: 256px;
    border: none;
    overflow: hidden;
    margin: 0 auto;
}

#songs-grid tr td {
    padding: 2px 8px;
    cursor: pointer;
    border-left: none;
    border-right: none;
}

#songs-grid tr.playing {
    color: #3A4176;
    font-style: italic;
}

#songs-grid tr.playing td a {
    visibility: visible;
}

#songs-grid tr.active td {
    background-color: #ccc;
    font-weight: bold;
}

#songs-grid .play-button {
    visibility: hidden;
    width: 20px;
    height: 20px;
    display: block;
    background-image: url('/img/play-icon.png');
    background-repeat: no-repeat;
}

#songs-grid tr:hover {
    font-weight: bold;
}

#songs-grid tr:hover .play-button,
#songs-grid .play-button.playing {
    visibility: visible;
}

#songs-grid .deletion-button {
    visibility: hidden;
}

#songs-grid tr:hover .deletion-button,
#songs-grid .deletion-button.deleted {
    visibility: visible;
}

#songs-grid .exclusion-button,
#songs-grid .deletion-button {
    width: 12px;
    display: block;
    margin: 0 auto;
}

.station-inspector .song-groups-chooser {
    height: 800px;
    border: 0;
}

.station-inspector .jstree-apple > ul {
    background: transparent;
}

.station-inspector .jstree-apple div.input-container {
    cursor: pointer;
}

.station-inspector .jstree-apple div.input-container.active {
    background-color: #ccc;
}

.station-inspector .nav-tabs {
    margin: 3px auto 10px auto;
}

.station-inspector .nav-tabs > li a {
    cursor: pointer;
    color: #999999;
}

.station-inspector .nav-tabs > li.active a {
    color: #3A4176;
}

.station-inspector .songs-grid-container {
    height: 800px;
}

.station-inspector.mode-all .songs-grid-container {
    height: 846px;
}

.station-inspector .player {
    background: #f2f2f2;
    display: block;
}

.station-inspector .player table {
    width: 100%;
}

.station-inspector .player table td {
    vertical-align: top;
}

.station-inspector .player table .meta-left {
    width: 100px;
    background-color: white;
    border: 1px solid #f2f2f2;
}

.station-inspector .player .mini-cover {
    background-color: white;
}

.station-inspector .player .song-meta {
    height: 49px;
    text-align: center;
    color: #7c7c7c;
    cursor: pointer;
}

.station-inspector .player .song-meta:hover {
    color: #3A4176;
}

.station-inspector .player .song-back-button {
    width: 20px;
    height: 20px;
    display: inline-block;
    margin-bottom: -5px;
    background-image: url('/img/song-back-icon.png');
}

.station-inspector .player .song-meta:hover .song-back-button {
    background-image: url('/img/song-back-icon-hover.png');
}

.station-inspector .fuelux .btn {
    color: #7c7c7c;
}

.station-inspector .player .song-meta span {
    padding-top: 15px;
    display: inline-block;
}

.station-inspector.musicplanner th[data-property=rating] {
    display: none;
}
.station-inspector.musicplanner td.rating {
    display: none;
}

.fuelux .datagrid-stretch-header thead tr th {
    font-size: 11px !important;
}

.station-inspector .player {
    display: none;
    margin-bottom: 20px;
}

.audiojs {
    width: 100%;
}

.audiojs .scrubber {
    width: 414px;
}

div.station-icon {
    width: 150px;
    height: 150px;
    position: relative;
    overflow: hidden;
    display: block;
}

div.station-icon img {
    max-width: 100%;
}

div.station-icon span {
    position: absolute;
    bottom: 10px;
    right: 10px;
    font-size: 12px;
    display: block;
    width: 100px;
    color: #fff;
    text-transform: uppercase;
    text-align: right;
    overflow: hidden;
}

table.song-info td.caption {
    width: 65px;
}

table.song-info {
    margin-bottom: 17px;
}

table.song-info tbody tr td ul {
    list-style-position: inside;
    margin-left: 10px;
}

table.song-info.closed tbody tr td ul {
    height: 20px;
    overflow: hidden;
}

table.song-info.closed tbody tr td.song-info-content-row {
    padding-bottom: 0;
}

table.song-info tbody tr td.song-info-content-row ul {
    margin-bottom: 0;
}

.details-view {
    position: relative;
}

.details-view a.close {
    position: absolute;
    right: 0;
    top: 0;
    color: #666;
    background-color: #fff;
    border: 1px solid #000;
    opacity: 1;
    width: 20px;
    text-align: center;
    height: 20px;
    padding-top: 0;
    line-height: 15px;
}

.details-view a.close:hover {
    color: #000;
}

.details-view .toggle-metadata-button {
    height: 18px;
    width: 160px;
    margin: 0 auto;
    text-align: center;
}

.details-view .toggle-metadata-button.active {
    cursor: pointer;
}

.details-view .toggle-metadata-content {
    display: none;
}

.details-view .toggle-metadata-button .arrow {
    margin-top: 0;
}

.details-view .metadata-list {
    display: none;
    margin: 15px 0;
}

.song-comment-form {
    margin-bottom: 0;
}

.song-comment-form textarea {
    width: 90%;
}

.song-comment-form .input.textarea {
    margin-bottom: 0;
}

.song-comment-form .submit {
    display: none;
}

.calendar-small {
    margin-top: 93px;
}

/* System Status */
.cubes-status .online-1 {
    background: green !important;
}

.cubes-status .online-0 {
    background: red !important;
}

#cube-view-switch .controls * {
    float: left;
}

#cube-view-switch .controls label {
    width: 100px;
}

#cube-view-switch .controls, #cube-view-switch strong {
    float: left;
}

#cube-view-switch strong {
    width: 100px;
}

.cube-list table td {
    padding: 0 5px;
    font-size: 12px;
}

.cube-list.detailed table td, .cube-list table tr.hover td {
    padding: 8px;
    font-size: 13px;
}

.cube-list.detailed .compact, .cube-list table tr.hover td .compact {
    display: none;
}

.cube-list.only-online tr.offline {
    display: none;
}

.cube-list.only-offline tr.online {
    display: none;
}

.cube-list.online-last-7-days tr.not-online-last-7-days {
    display: none;
}

.cube-list.not-online-last-7-days tr.online-last-7-days {
    display: none;
}

.cube-list .details {
    display: none;
}

.cube-list.detailed .details, .cube-list table tr.hover .details {
    display: block;
}

#CubeEditForm .ip-configuration {
    margin-top: 50px;
}

#CubeEditForm .ip-configuration .input.control-group.select {
    display: inline-block;
}

#CubeEditForm .ip-configuration legend .input.control-group.select .controls {
    margin-left: 15px;
}

#CubeEditForm .ip-configuration .input.control-group.select .controls .cube-network-manager-enabled {
    width: 85px;
}

.table tbody tr:hover td, .table tbody tr:hover th {
    background-color: transparent;
}

.plyr__controls svg[class^="icon--"] {
    background: none;
}

:root {
    --plyr-color-main: #3A4176;
}

.flash-success {
    background: #e5f8e0;
    color: #1e7e34;
    border: 1px solid #85d396;
    padding: 10px;
    margin-bottom: 15px;
    border-radius: 5px;
}
.flash-error {
    background: #f8e5e5;
    color: #b50d0d;
    border: 1px solid #e08b8b;
    padding: 10px;
    margin-bottom: 15px;
    border-radius: 5px;
}
