/* GENERAL TAGS */

a, p {
    font-family: verdana, Arial, Helvetica, sans-serif;
}

a:link,
a:visited {
    color: #7b9902;
    text-decoration: underline;
}

* {
    outline: none;
}

body {
    font-size: 14px;
    color: #6c6868;
    background: url('../images/background.png') top left repeat;
    font-family: verdana, Arial, Helvetica, sans-serif;
    margin: 0;
}

header {
    font-size: 75%;
    background-color: #1f7691;
    margin: 0;
    width: 100%;
    z-index: 5;
    position: sticky;
    top: 0;
    left: 0;
}

header .wrapper {
    width: 90%;
    margin: 0 auto;
}

header .wrapper .navigation-left,
header .wrapper .navigation-right{
    font-size: 100%;
    color: #fff;
}

header .wrapper .navigation-left{
    width: 90%;
    float: left;
}

header .wrapper .navigation-right{
    width: 10%;
    float: right;
}

header .wrapper .navigation-left > ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

header .wrapper .navigation-left > ul > li {
    display: inline-block;
}

header .wrapper .navigation-left > ul > li a {
    display: block;
    padding: 13px 10px 14px;
}

header .wrapper .navigation-left > ul > li.with-submenu {
    position: relative;
}

header .wrapper .navigation-left > ul > li.with-submenu ul.submenu {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;

    opacity: 0;
    z-index: 1;
    background-color: #fff;
    border: 1px solid #ddd;
    border-top-width: 5px;
    transition: .3s ease;
    pointer-events: none;

    margin-top: -10px;
    padding: 5px;
    list-style-type: none;
    -webkit-box-shadow: 1px 1.732px 4px 0 rgba(0,0,0,0.11),inset 0 2px 0 0 #f9f9f9;
    box-shadow: 1px 1.732px 4px 0 rgba(0,0,0,0.11),inset 0 2px 0 0 #f9f9f9;
}

header .wrapper .navigation-left > ul > li.with-submenu:hover ul.submenu {
    opacity: 1;
    pointer-events: initial;

    margin-top: 1px;
}

header .wrapper .navigation-left > ul > li.with-submenu ul.submenu li:not(:last-child){
    border-bottom: 1px solid #ddd;
}

header .wrapper .navigation-left > ul > li.with-submenu ul.submenu li a{
    color: #1f7691;
    word-break: break-all;
}

header .wrapper .navigation-left > ul > li.with-submenu ul.submenu li a:hover{
    color: #7b9902;
}

header .wrapper .navigation-left a:link,
header .wrapper .navigation-left a:visited {
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
}

header .wrapper .navigation-left li.active a,
header .wrapper .navigation-left a:hover,
header .wrapper .navigation-left a:active {
    color: #bdfb02;
}

header .wrapper .navigation-right .cache-match-container {
    padding: 13px 0;
    text-align: right;
}

h1, h2, h3, h4 {
    color: #4A7189;
    font-family: arial;
    letter-spacing: -0.1em;
    margin: 0.5em 0;
    text-transform: uppercase;
}

input, select, textarea {
    border-radius: 3px;
    padding: 5px 10px;
    border: 1px solid #ccc;
    text-align: left;
}

h1 {
    font-size: 2.1em;
    line-height: 1.4;
}

#message {
    text-align: center;
    padding: 150px 0;
}

#content {
    width: 90%;
    margin: 0 auto;
    padding-top: 15px;
}

.content-box {
    border: 1px solid #ddd;
    border-top-width: 5px;
    text-align: center;
    padding: 10px 20px;
    margin-bottom: 1em;
    background-color: #FFF;
    position: relative;
}

.sidebar{
    width: 25%;
    padding: 0 15px;
    box-sizing: border-box;
}

.sidebar.left-sidebar {
    float: left;
}

.sidebar.right-sidebar {
    float: right;
}

.content-with-sidebar{
    float: left;
    width: 75%;
    padding: 0 15px;
    box-sizing: border-box;
}

.content-without-sidebar{
    padding: 0 15px;
}

.content-half{
    float: left;
    width: 50%;
    padding: 0 15px;
    box-sizing: border-box;
}

footer {
    border-top: 2px solid #ECECEC;
    margin: 40px 0 60px;
    position: relative;
    z-index: 1;
    font-size: 0.81em;
}

footer p {
    padding: 20px 0 0;
    text-align: center;
    font-size: 0.8em;
    color: #afafaf;
}

.clear {
    clear: both;
    display: block;
    overflow: hidden;
    visibility: hidden;
    width: 0;
    height: 0;
}

.title{
    margin-top: -45px;
}

.title.right{
    display: block;
    float: right;
    line-height: 30px;
}

.screen-options .screen-options-content{
    padding: 20px;
    margin-bottom: 15px;
    display: none;

    border: 1px solid #ddd;
    border-radius: 3px;

    text-align: left;
}

.screen-options .screen-options-content .options:after{
    content: '';
    display: block;
    clear: both;
}

.screen-options .screen-options-content .options label {
    display: inline-block;
    white-space: nowrap;
    width: 20%;
    float: left;
    min-width: 300px;
}

.screen-options .screen-options-content h4{
    text-align: left;
}

.screen-options .screen-options-toggle{
    position: absolute;
    right: -40px;
    top: -5px;

    border: 1px solid #ddd;
    border-top-width: 5px;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
}

.screen-options .screen-options-toggle a{
    display: block;
    padding: 10px 13px;
    line-height: 1;
    font-weight: 700;
    color: #6c6868;
    background-color: #fff;
    text-decoration: none;
}

.screen-options .screen-options-toggle a:hover{
    transition: all ease 0.3s;
    background-color: #eee;
}

.filter-row {
    border: 1px solid #ddd;
    border-radius: 3px;
    padding: 20px;
}

.filter-row:after {
    display: block;
    clear: both;
    content: '';
}

.filters {
    text-align: left;
}

.filters.left {
    float: left;
}

.filters.right {
    float: right;
}

.button {
    cursor: pointer;
    background: #e0e0e0;
    border: 1px solid #c0c0c0;
    padding: 5px 10px;
    border-radius: 5px;
    transition: all 0.3s ease;
    text-decoration: none!important;
    color: #6c6868!important;
}
.button:hover {
    background: #f0f0f0;
    transition: all 0.3s ease;
}

.line {
    margin-top: 15px;
}

.line.right-aligned {
    text-align: right;
}

.line:first-child {
    margin-top: 0;
}

.filters #from {
    width: 200px;
    box-sizing: border-box;
}

.report-daily .filters #from {
    margin-left: 19px;
}

.report-monthly .filters #from,
.report-locations .filters #from{
    margin-left: 55px;
}

.home .filters #from {
    margin-left: 55px;
}

.filters #to {
    width: 200px;
    box-sizing: border-box;
}

.filters #s2id_show_only_renews {
    display: inline-block!important;
    width: 200px;
}

.data {
    margin-top: 20px;
    overflow-x: auto;
}

.flag {
    text-indent: -9999px;
    display: inline-block;
    width: 14px;
    height: 11px;
}

.flag-en_US {
    background: url(../images/locale/en.png) center no-repeat;
}

.flag-it_IT {
    background: url(../images/locale/it.png) center no-repeat;
}

/* SELECT 2 */

.select2-container .select2-choice {
    padding: 3px 15px;
    text-align: left;
}

.select2-container .select2-choices {
    border-radius: 3px;
}

.select2-default {
    color: #000000 !important;
    padding: 3px 15px;
}

/* TOOLTIP */

[data-tip] {
    display: inline-block;
    position: relative;
    cursor: pointer;
}

[data-tip]:hover:after {
    content: attr(data-tip);
    display: block;
    position: absolute;
    padding: 2px;
    border-radius: 2px;
    background: #434343;
    color: #fff;
    width: 120px;
    left: calc(50% - 60px);
    top: -25px;
    text-align: center;
}

[data-tip]:hover:before {
    background: transparent !important;
    border: 5px solid transparent;
    border-top: 5px solid #434343;
    content: "";
    display: block;
    height: 0;
    left: 50%;
    position: absolute;
    top: -10px;
    width: 0;
}

/* BLOCKUI */

@-webkit-keyframes spin {
    100% {
        -webkit-transform: rotate(360deg)
    }
}

@-moz-keyframes spin {
    100% {
        -moz-transform: rotate(360deg)
    }
}

@keyframes spin {
    100% {
        -webkit-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.blockUI.blockOverlay {
    position: relative;
}

.blockUI.blockOverlay:before,
.loader:before {
    height: 1em;
    width: 1em;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -.5em;
    margin-top: -.5em;
    display: block;
    content: "";
    -webkit-animation: spin 1s ease-in-out infinite;
    -moz-animation: spin 1s ease-in-out infinite;
    animation: spin 1s ease-in-out infinite;
    background: url(../images/loader.svg) center center;
    background-size: cover;
    line-height: 1;
    text-align: center;
    font-size: 2em;
    color: rgba(0,0,0,.75);
}

/* DATEPICKER */

.ui-datepicker-div{
    z-index: 1010!important;
}

/* DATA TABLES */

#daily_report_table,
#monthly_report_table,
#churn_rate_report_table,
#locations_report_table,
#summary_report_table,
#membership_home_stats_table,
#membership_home_compacted_table,
#membership_projection_table,
#subscription_home_stats_table,
#subscription_home_compacted_table,
#subscription_projection_table,
#tickets_quality_report_table,
#tickets_profitability_report_table {
    visibility: hidden;
    width: 98%;
}

table.dataTable{
    max-width: 100%;
}

table.dataTable thead th,
table.dataTable tfoot th {
    border-color: #ddd;
}

table.dataTable tfoot td:not(:first-child){
    text-align: center;
}

table.dataTable tfoot td:nth-child(2),
table.dataTable tfoot td:nth-child(3){
    text-align: right;
    padding-right: 60px;
}

table.dataTable .total-label {
    text-align: right!important;
    font-weight: 700;
}

table.dataTable tbody tr.odd {
    background-color: #f9f9f9;
}

table.dataTable tbody tr:hover,
table.dataTable tbody tr.hovered {
    background-color: #fffcd1;
}

table.dataTable tbody tr.highlight {
    background-color: #d9f3ff;
}

table.dataTable tbody tr.highlight.odd {
    background-color: #ccefff;
}

table.dataTable thead th,
table.dataTable tfoot th{
    padding: 10px 18px;
}

table.dataTable tbody td[data-compare-id],
table.dataTable tbody td[data-compare-value]{
    padding-right: 80px;
    position: relative;
}

.home table.dataTable tbody td {
    white-space: nowrap;
}

.dataTables_wrapper .DTFC_ScrollWrapper {
    margin-bottom: 20px;
}

.dataTables_wrapper.no-footer .dataTables_scrollBody {
    border-bottom-color: #ebebeb;
}

.dataTables_paginate {
    vertical-align: middle;
    margin-bottom: 30px;
}

.dataTables_paginate input,
.dataTables_paginate span {
    vertical-align: middle;
    margin: 0 2px;
}

.dataTables_paginate .paginate_enabled_previous,
.dataTables_paginate .paginate_disabled_previous,
.dataTables_paginate .paginate_enabled_next,
.dataTables_paginate .paginate_disabled_next {
    display: inline-block;
    width: 7px;
    border: 1px solid #ddd;
    padding: 3px 10px 6px;
    font-size: 16px;
    line-height: 1;
    font-weight: 400;
    text-align: center;
    border-radius: 3px;
    cursor: pointer;
}

.dataTables_paginate .paginate_disabled_previous,
.dataTables_paginate .paginate_disabled_next {
    color: #ddd;
    pointer-events: none;
}

.dataTables_paginate .paginate_enabled_previous:hover,
.dataTables_paginate .paginate_enabled_next:hover {
    background-color: #f6f6f6;
}

.report-daily table.dataTable tr[data-is_refund="1"]{
    color: #c0261b;
}

.report-daily table.dataTable tr[data-is_refunded="1"]{
    color: #cdcdcd;
}

.report-daily table.dataTable th.column-product,
.report-daily table.dataTable td.column-product,
.report-daily table.dataTable th.column-date,
.report-daily table.dataTable td.column-date {
    text-align: left;
}

.report-daily table.dataTable th.column-price,
.report-daily table.dataTable td.column-price,
.report-daily table.dataTable th.column-tax,
.report-daily table.dataTable td.column-tax{
    text-align: right;
    padding-right: 60px;
}

.report-daily table.dataTable td.column-product a,
.report-daily table.dataTable td.column-order a{
    color: inherit;
    text-decoration: none;
}

.report-daily table.dataTable td.column-product a:hover,
.report-daily table.dataTable td.column-order a:hover{
    color: #7b9902;
    text-decoration: underline;
}

.report-daily table.dataTable td.column-renew .is_a_renew-icon{
    display: block;
    float: right;
    height: 22px;
    width: 28px;
    background: url(../images/renew_order.svg) no-repeat;
    background-size: 28px 22px;
}

.report-churn_rate table.dataTable,
.report-monthly table.dataTable,
.report-locations table.dataTable,
.report-tickets table.dataTable,
.report-growth table.dataTable {
    font-size: 0.8em !important;
}

.report-churn_rate table.dataTable th,
.report-monthly table.dataTable th,
.report-locations table.dataTable th,
.report-tickets table.dataTable th{
    border-top: 1px solid #ebebeb;
}

.report-monthly table.dataTable th .row-expectations,
.report-locations table.dataTable th .row-expectations{
    font-weight: 400;
    margin-top: 15px;
}

.report-churn_rate table.dataTable th.column-id,
.report-churn_rate table.dataTable td.column-id,
.report-monthly table.dataTable th.column-id,
.report-monthly table.dataTable td.column-id,
.report-locations table.dataTable th.column-id,
.report-locations table.dataTable td.column-id,
.report-tickets table.dataTable th.column-id,
.report-tickets table.dataTable td.column-id {
    text-align: left;
}

.report-churn_rate table.dataTable th.column-product,
.report-churn_rate table.dataTable td.column-product,
.report-monthly table.dataTable th.column-product,
.report-monthly table.dataTable td.column-product,
.report-locations table.dataTable th.column-product,
.report-locations table.dataTable td.column-product,
.report-tickets table.dataTable th.column-product,
.report-tickets table.dataTable td.column-product {
    min-width: 250px;
    border-right: 3px solid #cdcdcd;
    text-align: left;
}

.report-monthly table.dataTable td.column-product a,
.report-locations table.dataTable td.column-product a,
.report-tickets table.dataTable td.column-product a{
    color: inherit;
    text-decoration: none;
}

.report-monthly table.dataTable td.column-product a:hover,
.report-locations table.dataTable td.column-product a:hover,
.report-tickets table.dataTable td.column-product a:hover{
    color: #7b9902;
    text-decoration: underline;
}

.report-monthly table.dataTable th.column-total,
.report-locations table.dataTable th.column-total,
.report-tickets table.dataTable th.column-total{
    padding: 8px 10px;
}

.report-churn_rate table.dataTable th.column-header,
.report-churn_rate table.dataTable th.column-rate,
.report-churn_rate table.dataTable td.column-rate,
.report-monthly table.dataTable th.column-daily,
.report-monthly table.dataTable td.column-daily,
.report-monthly table.dataTable th.column-header,
.report-locations table.dataTable th.column-weight,
.report-locations table.dataTable td.column-weight,
.report-locations table.dataTable th.column-header,
.report-tickets table.dataTable th.column-quality,
.report-tickets table.dataTable td.column-quality,
.report-tickets table.dataTable th.column-profitability,
.report-tickets table.dataTable td.column-profitability,
.report-tickets table.dataTable th.column-header {
    border-right: 1px solid #cdcdcd;
}

.report-monthly table.dataTable td.column-daily,
.report-monthly table.dataTable th.column-daily,
.report-monthly table.dataTable td.column-sales,
.report-monthly table.dataTable th.column-sales,
.report-locations table.dataTable td.column-sales,
.report-locations table.dataTable th.column-sales,
.report-locations table.dataTable td.column-profitability,
.report-locations table.dataTable th.column-profitability{
    text-align: right;
}

.report-monthly table.dataTable th.column-income,
.report-monthly table.dataTable td.column-income,
.report-tickets table.dataTable th.column-income,
.report-tickets table.dataTable td.column-income{
    min-width: 90px!important;
    text-align: right;
}

.report-churn_rate table.dataTable td.column-rate {
    font-weight: bold;
    padding-right: 20px;
    position: relative;
}

.report-churn_rate table.dataTable td.column-rate::after {
    display: inline-block;
    margin-left: 5px;
    position: absolute;
}

.report-churn_rate table.dataTable td.column-rate.lower {
    color: #0eca6e;
}

.report-churn_rate table.dataTable td.column-rate.lower:after {
    content: '↓';
}

.report-churn_rate table.dataTable td.column-rate.higher {
    color: lightcoral;
}

.report-churn_rate table.dataTable td.column-rate.higher:after {
    content: '↑';
}

.report-locations table.dataTable td.column-sales,
.report-locations table.dataTable th.column-sales{
    min-width: 80px!important;
}

.report-locations table.dataTable th.column-total-sales{
    text-align: center;
    border-right: 1px solid #cdcdcd;
}

.report-churn_rate table.dataTable th.column-total,
.report-monthly table.dataTable th.column-total,
.report-locations table.dataTable th.column-total,
.report-tickets table.dataTable th.column-total{
    font-weight: 700;
    border-top: 0;
    background-color: #cddecd;
}

.home table.dataTable {
    font-size: 0.85em;
}

.home table.dataTable th{
    text-align: center;
}

.home table.dataTable td{
    text-align: right;
}

.home table.dataTable th,
.home table.dataTable td {
    padding: 13px 5px 13px 5px;
}

table.dataTable th.column-interval,
table.dataTable td.column-interval {
    text-align: left;
    border-right: 3px solid #cdcdcd;
}

table.dataTable td.column-interval a{
    color: inherit;
    text-decoration: none;
}

table.dataTable td.column-interval a:hover{
    color: #7b9902;
    text-decoration: underline;
}

.home table.dataTable.no-footer{
    border-bottom: 1px solid #cdcdcd;
    margin-bottom: 20px;
}

.home table.dataTable td.column-global-total,
.home table.dataTable td.column-global-per-day {
    font-weight: 700;
}

.home table.dataTable td.column-refund-total,
.home table.dataTable td.column-refund-per-day {
    color: #c0261b;
    font-weight: 700;
}

.report-membership table.dataTable,
.report-subscription table.dataTable{
    font-size: 0.85em;
}

.report-membership table.dataTable th,
.report-membership table.dataTable td,
.report-subscription table.dataTable th,
.report-subscription table.dataTable td{
    text-align: center;
}

.report-membership table.dataTable th.column-interval,
.report-membership table.dataTable td.column-interval,
.report-subscription table.dataTable th.column-interval,
.report-subscription table.dataTable td.column-interval{
    text-align: left;
    padding: 13px 20px 13px 10px;
    border-right: 3px solid #cdcdcd;
}

.report-membership table.dataTable td.column-interval a,
.report-subscription table.dataTable td.column-interval a {
    color: inherit;
    text-decoration: none;
}

.report-membership table.dataTable td.column-interval a:hover,
.report-subscription table.dataTable td.column-interval a:hover{
    color: #7b9902;
    text-decoration: underline;
}

.report-membership .stats table.dataTable th,
.report-membership .stats table.dataTable td,
.report-subscription .stats table.dataTable th,
.report-subscription .stats table.dataTable td{
    text-align: center;
    padding: 15px;
}

.report-membership .stats table.dataTable th:first-child,
.report-membership .stats table.dataTable td:first-child,
.report-subscription .stats table.dataTable th:first-child,
.report-subscription .stats table.dataTable td:first-child{
    border-right: 1px solid #cdcdcd;
    font-weight: 700;
}

.report-membership.home .stats table.dataTable td:last-child,
.report-subscription .stats table.dataTable td:last-child{
    border-left: 1px solid #cdcdcd;
}

.report-membership .stats table.dataTable tfoot th,
.report-membership .stats table.dataTable tfoot td,
.report-subscription .stats table.dataTable tfoot th,
.report-subscription .stats table.dataTable tfoot td{
    border-top: 2px solid #cdcdcd;
}

.report-membership .stats table.dataTable tfoot th,
.report-subscriptio .stats table.dataTable tfoot th{
    border-right: none!important;
    text-align: right;
    padding-right: 40px;
}

.report-membership table.dataTable.compacted ,
.report-membership.projection table.dataTable {
    font-size: 0.85em;
    border-bottom: none;
    margin-bottom: 15px;
}

.report-membership.projection table.dataTable{
    font-size: 0.75em;
}

.report-membership table.dataTable.compacted tr.current,
.report-membership.projection table.dataTable tr.current,
.report-subscription table.dataTable.compacted tr.current,
.report-subscription.projection table.dataTable tr.current{
    background-color: #ccefff;
}

.report-membership.projection table.dataTable th.column-subset,
.report-membership.projection table.dataTable th.column-subset{
    text-transform: uppercase;
}

.report-membership table.dataTable.compacted th.column-create:not(.column-totals),
.report-membership table.dataTable.compacted th.column-renew:not(.column-totals),
.report-membership table.dataTable.compacted th.column-cancel:not(.column-totals),
.report-membership table.dataTable.compacted th.column-earnings:not(.column-totals),
.report-subscription table.dataTable.compacted th.column-create:not(.column-totals),
.report-subscription table.dataTable.compacted th.column-renew:not(.column-totals),
.report-subscription table.dataTable.compacted th.column-cancel:not(.column-totals),
.report-subscription table.dataTable.compacted th.column-earnings:not(.column-totals){
    border-bottom: none;
    padding-top: 7px;
    padding-bottom: 7px;
}

.report-membership table.dataTable.compacted tfoot th.column-create:not(.column-totals),
.report-membership table.dataTable.compacted tfoot th.column-renew:not(.column-totals),
.report-membership table.dataTable.compacted tfoot th.column-cancel:not(.column-totals),
.report-membership table.dataTable.compacted tfoot th.column-earnings:not(.column-totals),
.report-subscription table.dataTable.compacted tfoot th.column-create:not(.column-totals),
.report-subscription table.dataTable.compacted tfoot th.column-renew:not(.column-totals),
.report-subscription table.dataTable.compacted tfoot th.column-cancel:not(.column-totals),
.report-subscription table.dataTable.compacted tfoot th.column-earnings:not(.column-totals){
    border-top: none;
    padding-top: 7px;
    padding-bottom: 7px;
}

.report-membership table.dataTable.compacted thead th.column-earnings,
.report-membership table.dataTable.compacted thead th.column-cancel,
.report-subscription table.dataTable.compacted thead th.column-earnings,
.report-subscription table.dataTable.compacted thead th.column-cancel{
    border-bottom: 1px solid #ddd!important;
}

.report-membership table.dataTable.compacted tfoot th.column-earnings,
.report-membership table.dataTable.compacted tfoot th.column-cancel,
.report-subscription table.dataTable.compacted tfoot th.column-earnings,
.report-subscription table.dataTable.compacted tfoot th.column-cancel{
    border-top: 1px solid #ddd!important;
}

.report-membership table.dataTable.compacted th.column-create-real,
.report-membership table.dataTable.compacted th.column-create-earnings-real,
.report-membership table.dataTable.compacted th.column-renew-real,
.report-membership table.dataTable.compacted th.column-renew-earnings-real,
.report-membership table.dataTable.compacted th.column-cancel-real,
.report-membership table.dataTable.compacted th.column-cancel-expected,
.report-membership table.dataTable.compacted th.column-cancel-earnings-real,
.report-membership.projection table.dataTable th.column-create-real,
.report-membership.projection table.dataTable th.column-create-expected,
.report-membership.projection table.dataTable th.column-renew-real,
.report-membership.projection table.dataTable th.column-renew-expected,
.report-membership.projection table.dataTable th.column-cancel-real,
.report-membership.projection table.dataTable th.column-cancel-expected,
.report-subscription table.dataTable th.column-create-real,
.report-subscription table.dataTable th.column-create-earnings-real,
.report-subscription table.dataTable th.column-renew-real,
.report-subscription table.dataTable th.column-renew-earnings-real,
.report-subscription table.dataTable th.column-cancel-real{
    font-weight: 400;
    padding-top: 7px;
    padding-bottom: 7px;
}

.report-membership table.dataTable.compacted .row-expectations,
.report-subscription table.dataTable.compacted .row-expectations{
    font-weight: 400;
}

.report-membership table.dataTable.compacted .row-expectations:first-child,
.report-subscription table.dataTable.compacted .row-expectations:first-child{
    margin-top: 10px;
}

.report-membership table.dataTable.compacted .row-expectations small{
    color: #6c6868!important;
    display: inline-block;
}

.report-membership table.dataTable.compacted tbody td,
.report-membership.projection table.dataTable tbody td{
    padding: 8px 10px;
    white-space: nowrap;
    position: relative;

}
.report-membership.projection table.dataTable tbody td{
    padding-top: 3px;
    padding-bottom: 20px;
}

.report-membership.projection table.dataTable tbody td.column-interval{
    padding-bottom: 3px;
}

.report-membership table.dataTable.compacted th small,
.report-membership table.dataTable.compacted td small,
.report-membership.projection table.dataTable th small,
.report-membership.projection table.dataTable td small,
.report-subscription table.dataTable td small{
    display: block;
    color: #bbb;
    margin-top: 2px;
}

.report-membership.projection table.dataTable th span.cancel-rate,
.report-membership.projection table.dataTable td span.cancel-rate{
    font-size: smaller;
    line-height: 14px;
    display: block;
    color: lightcoral;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 4px;
}

.report-membership table.dataTable.compacted th.last:not(:last-child),
.report-membership table.dataTable.compacted th.column-annual.column-cancel-expected,
.report-membership table.dataTable.compacted td.last:not(:last-child),
.report-membership table.dataTable.compacted th.column-renew-earnings-real,
.report-membership table.dataTable.compacted tfoot th.column-renew,
.report-membership.projection table.dataTable th.last:not(:last-child),
.report-membership.projection table.dataTable th.column-annual.column-cancel-expected,
.report-membership.projection table.dataTable td.last:not(:last-child){
    border-right: 1px solid #cdcdcd;
}

.report-subscription table.dataTable.compacted th.last:not(:last-child),
.report-subscription table.dataTable.compacted td.last:not(:last-child),
.report-subscription table.dataTable.compacted th.column-renew-earnings-real,
.report-subscription table.dataTable.compacted th.column-renew {
    border-right: 1px solid #cdcdcd;
}

.report-membership table.dataTable.compacted th.border-emphasis:not(:last-child),
.report-membership table.dataTable.compacted td.border-emphasis:not(:last-child),
.report-membership.projection table.dataTable th.border-emphasis:not(:last-child),
.report-membership.projection table.dataTable td.border-emphasis:not(:last-child),
.report-subscription table.dataTable.compacted th.border-emphasis:not(:last-child),
.report-subscription table.dataTable.compacted td.border-emphasis:not(:last-child),
.report-subscription.projection table.dataTable th.border-emphasis:not(:last-child),
.report-subscription.projection table.dataTable td.border-emphasis:not(:last-child){
    border-right-width: 3px;
}

.report-membership table.dataTable.compacted th.background-emphasis,
.report-membership table.dataTable.compacted td.background-emphasis,
.report-membership.projection table.dataTable th.background-emphasis,
.report-membership.projection table.dataTable td.background-emphasis{
    background-color: #f9f9f9;
}

.report-membership table.dataTable.compacted th.column-interval,
.report-membership table.dataTable.compacted td.column-interval,
.report-membership.projection table.dataTable th.column-interval,
.report-membership.projection table.dataTable td.column-interval{
    border-right: 3px solid #cdcdcd;
}

.report-membership table.dataTable.compacted td.column-earnings-real,
.report-membership.projection table.dataTable td.column-earnings-real,
.report-membership table.dataTable.compacted td.column-earnings-expected,
.report-membership.projection table.dataTable td.column-earnings-expected{
    padding-bottom: 3px;
}

.report-membership table.dataTable.compacted td.column-earnings-expected,
.report-membership.projection table.dataTable td.column-earnings-expected{
    font-weight: 700;
}

.report-membership table.dataTable.compacted td.column-interval a,
.report-membership.projection table.dataTable td.column-interval a{
    color: inherit;
    text-decoration: none;
}

.report-membership table.dataTable.compacted td.column-interval a:hover,
.report-membership.projection table.dataTable td.column-interval a:hover{
    color: #7b9902;
    text-decoration: underline;
}

.report-subscription table#subscription_home_compacted_table th.column-disable > small{
	display: block;
	font-weight: 400;
}

.report-subscription.retention table#subscription_home_retention_table td{
    padding-top: 10px;
    padding-bottom: 10px;
}

.report-subscription.retention table#subscription_home_retention_table td.target-1{
    color: #fff;
    /*background-color: rgba(31, 118, 145, 0.7);*/
    background-color: #586ada;
}

.report-subscription.retention table#subscription_home_retention_table td.target-2{
    color: #fff;
    /*background-color: rgba(31, 118, 145, 0.5);*/
    background-color: #688ef1;
}

.report-subscription.retention table#subscription_home_retention_table td.target-3{
    color: #fff;
    /*background-color: rgba(31, 118, 145, 0.3);*/
    background-color: #73b3ff;
}

.report-subscription.retention table#subscription_home_retention_table td.target-4{
    color: #fff;
    /*background-color: rgba(31, 118, 145, 0.1);*/
    background-color: #9dceff;
}

.report-subscription.retention table#subscription_home_retention_table td.target-5{
    color: #fff;
    /*background-color: rgba(31, 118, 145, 0.1);*/
    background-color: #c8ecff;
}

.report-subscription.retention table#subscription_home_retention_table td.target-6{
    /*background-color: rgba(31, 118, 145, 0.1);*/
    background-color: #e3f3ff;
}

.report-subscription.retention table#subscription_home_retention_table th.column-month,
.report-subscription.retention table#subscription_home_retention_table td.column-month {
    border-right: 3px solid #ddd;
}

.report-subscription.retention table#subscription_home_retention_table th.column-count,
.report-subscription.retention table#subscription_home_retention_table td.column-count {
    border-right: 3px solid #ddd;
}

.report-subscription.expected table#subscription_expected_table th.border-emphasis,
.report-subscription.expected table#subscription_expected_table td.border-emphasis {
    border-right: 1px solid #cdcdcd;
}

.report-subscription.expected table#subscription_expected_table tfoot td{
    padding-right: 18px;
    text-align: center;
}

.report-subscription.expected table#subscription_expected_table tfoot td.column-renewed-percentage,
.report-subscription.expected table#subscription_expected_table tfoot td.column-failed-percentage{
    font-weight: 700;
}

.report-customers table#customers_report_table .column-new,
.report-customers table#customers_report_table .column-new-percentage,
.report-customers table#customers_report_table .column-ret,
.report-customers table#customers_report_table .column-ret-percentage {
    border-right: 3px solid #ddd;
}

.report-growth table.growth-table .column-growth,
.report-growth table.growth-table .column-renewals,
.report-growth table.growth-table .column-growth-total,
.report-growth table.growth-table .column-renewals-total {
    border-right: 3px solid #ddd;
}

.report-growth table.growth-table .prev {
    color: #cdcdcd;
}


.report-growth table.growth-table .total {
    font-weight: 700!important;
}

.report-growth table.growth-table .column-income-ref {
    font-size: .9em;
    white-space: nowrap;
}

.dataTable.fixedHeader-floating{
    padding-top: 40px;
    position: fixed!important;
    margin-bottom: 0!important;
    background: none;
}

.dataTable.fixedHeader-floating thead,
.dataTable.fixedHeader-floating tfoot{
    background: #fff
}

.difference{
    font-size: 0.8em;
    position: absolute;
    right: 10px;
    font-weight: 400;
}

.difference.positive{
    color: #0ECA6E;
}

.difference.negative{
    color: lightcoral;
}

.difference.unvaried{
    color: lightgrey;
}

#expectations {
    width: 70%;
    margin: 0 auto;
    border-spacing: 0;
}

#expectations td{
    padding: 10px 8px;
    vertical-align: bottom;
}

#expectations th{
    font-size: 80%;
    font-weight: normal;
}

#expectations td,
#expectations th{
    border-right: 1px solid #cdcdcd;
    white-space: nowrap;
}

#expectations td:last-child,
#expectations th:last-child{
    border: none;
    background-color: #ebebeb;
    font-size: 100%;
    padding: 10px;
}

#expectations td:last-child{
    font-weight: 700;
}

#expectations td:nth-last-child(2),
#expectations th:nth-last-child(2){
    border: none;
}

#expectations td.column-label{
    text-align: left;
}

#expectations td small{
    display: block;
    font-size: 10px;
    margin-top: 2px;
}

#cancellation_rate{
    padding: 14px 54px;
}

#cancellation_rate th,
#cancellation_rate td{
    border-left: none;
    border-right: none;
    white-space: initial;
}

#cancellation_rate tr:hover{
    background-color: inherit;
}

#cancellation_rate th{
    padding-bottom: 8px;
}

#cancellation_rate td{
    font-weight: normal;
    font-size: 1.5em;
    padding-top: 7px;
}

#cancellation_rate tr:not(:last-child) td{
    border-bottom: 1px solid #cdcdcd;
}

@media (max-width: 1200px) {
    header .wrapper{
        width: 90vw;
    }

    .filters.left,
    .filters.right {
        float: none;
    }

    .filters.left {
        margin-bottom: 15px;
    }

    #content{
        width: 90vw;
    }

    #expectations {
        width: 100%;
    }

    .title.right {
        float: none;
        margin: 10px 0;
    }
}

@media (max-width: 768px) {
    .filter-row {
        padding: 10px;
    }

    .filters label {
        display: block;
        margin: 6px 0;
    }

    .filters input,
    .filters select,
    .filters .select2-container{
        width: 100%!important;
        margin-left: 0!important;
    }

    .filters.left {
        margin-bottom: 0;
    }

    .filters .second-line {
        margin-top: 0;
    }

    .content-box {
        padding: 10px;
    }
}


#daily-weightings-report form {
    display: flex;
    align-items: flex-end;
    text-align: left;
}

#daily-weightings-report form > * {
    margin: 10px 10px 10px 0;
}

#daily-weightings-report form > label {
    flex: 0 1 200px;
}

#daily-weightings-report form > label > span {
    display: block;
    margin-bottom: 5px;
}