/*
Theme Name: RS Cube 2022 Theme
Theme URI: https://wider.ro/
Description: This is a custom theme for the RS Cube website. Based on a child theme for Barberry.
Author: Wider
Author URI: https://wider.ro
Template: barberry
Version: 1.0
Text domain: wdr
*/

/* Global variables */
:root {
    --color-dark: #1b1b1b;
    --color-dark-gray: #616161;
    --color-light-gray: #b1b1b1;
    --color-light: #ffffff;
    --color-light-box: #f4f4f4;
    --color-darker-box: #e9e9e9;
    --color-accent-box: #e9fbf7; /* D2F6EE BCF2E6 A6EEDE 8FEAD5 */
    --color-accent-green: #09d0a3;
    --color-light-green: #a6eede;
    --color-lightest-green: #e9fbf7;
    --color-accent-blue: #1b68d2;
    --color-accent-yellow: #ffa30b;
    --color-light-yellow: #ffdea6;
    --color-accent-red: #f80b30;
    --color-light-red: #fee9ec;
    --color-background-overlay: rgba(255, 255, 255, 0.8);
}

/* Animations */
.wdr-loader {
    display: inline-block;
    position: relative;
    width: 80px;
    height: 50px;
}
.wdr-loader div {
    position: absolute;
    top: 33px;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: var(--color-accent-green);
    animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.wdr-loader div:nth-child(1) {
    left: 8px;
    animation: wdr-loader1 0.6s infinite;
}
.wdr-loader div:nth-child(2) {
    left: 8px;
    animation: wdr-loader2 0.6s infinite;
}
.wdr-loader div:nth-child(3) {
    left: 32px;
    animation: wdr-loader2 0.6s infinite;
}
.wdr-loader div:nth-child(4) {
    left: 56px;
    animation: wdr-loader3 0.6s infinite;
}
@keyframes wdr-loader1 {
    0% {
        transform: scale(0);
    }
    100% {
        transform: scale(1);
    }
}
@keyframes wdr-loader3 {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(0);
    }
}
@keyframes wdr-loader2 {
    0% {
        transform: translate(0, 0);
    }
    100% {
        transform: translate(24px, 0);
    }
}

/* RSCUBE custom pages and styles for My Account */
.wider .rscube-credits-container {
    position: relative;
    margin-top: 60px;
}
.wider .rscube-user-history-container {
    position: relative;
    margin-top: 60px;
}
.wider .rscube-request-list-container {
    position: relative;
    margin-top: 60px;
}
.wider .rscube-request-container {
    position: relative;
    margin-top: 60px;
}
.wider .rscube-detail-container {
    margin-top: 30px;
}

.wider h1.rscube-title {
    font-size: 50px;
}
.wider h1.rscube-title span {
    font-weight: 400;
}

.wider .rscube-info-box {
    background: var(--color-light-box);
    padding: 30px;
    border-radius: 10px;
    margin-bottom: 30px;
    position: relative;
}
.wider .rscube-info-box.has-errors {
    background: var(--color-light-red);
}
.wider .rscube-error-info {
    color: var(--color-accent-red) !important;
    font-size: 14px !important;
    display: none;
}
.wider .has-errors .rscube-error-info {
    display: block;
}
.wider .rscube-info-box h4 {
    margin-bottom: 15px;
}
.wider .rscube-spacer-20 {
    height: 20px;
    display: block;
}
.wider .rscube-spacer-30 {
    height: 30px;
    display: block;
}
.wider p.rscube-extra-info {
    font-size: 14px !important;
    color: #777 !important;
}
.wider .rscube-credits-container label,
.wider .rscube-user-history-container label,
.wider .rscube-request-list-container label,
.wider .rscube-request-container label,
.wider .rscube-detail-container label {
    min-width: 100px;
}
.wider .rscube-credits-container label span,
.wider .rscube-user-history-container label span,
.wider .rscube-request-list-container label span,
.wider .rscube-request-container label span,
.wider .rscube-detail-container label span {
    color: var(--color-dark-gray);
    margin-left: 10px;
    font-size: 14px;
    font-weight: 500;
}
.wider .rscube-credits-container label span b,
.wider .rscube-user-history-container label span b,
.wider .rscube-request-list-container label span b,
.wider .rscube-request-container label span b,
.wider .rscube-detail-container label span b {
    color: var(--color-dark-gray);
    margin-left: 10px;
    font-size: 14px;
    font-weight: 500;
}
.wider .rscube-checkout {
    background: var(--color-accent-box);
}
.wider .rscube-loading-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--color-background-overlay);
    /* display: flex; */
    justify-content: center;
    align-items: center;
    display: none;
    flex-direction: column;
}
#rscube-loading-main {
    z-index: 999999999;
}
#rscube-loading-main span {
    display: block;
    color: var(--color-accent-green);
}
.rscube-file-download {
    padding: 3px 14px;
    border-radius: 40px;
    margin-right: 10px;
    font-size: 15px !important;
    margin-bottom: 10px;
    display: inline-block;
    font-weight: 400 !important;
    color: var(--color-dark) !important;
    background: var(--color-darker-box) !important;
    width: 100%;
}
.rscube-file-download:hover {
    color: var(--color-dark) !important;
    background: var(--color-light-yellow) !important;
    text-decoration: none;
}
.rscube-file-download.type-ecu,
.rscube-file-download.type-tcu {
}
.rscube-file-download.type-other {
}

.wider .rscube-status-wrapper {
    display: flex;
    align-items: flex-start;
    align-content: flex-start;
    flex-direction: row;
    margin-bottom: 30px;
}
.wider .rscube-status {
    padding: 3px 14px;
    border-radius: 40px;
    margin-right: 10px;
    font-size: 15px !important;
}
.wider .rscube-status.rscube-status-date {
    color: var(--color-dark) !important;
    background: var(--color-light-box) !important;
}
.wider .rscube-status.rscube-status-new {
    color: var(--color-light) !important;
    background: var(--color-accent-blue) !important;
}
.wider .rscube-status.rscube-status-prog {
    color: var(--color-light) !important;
    background: var(--color-accent-yellow) !important;
}
.wider .rscube-status.rscube-status-ready {
    color: var(--color-light) !important;
    background: var(--color-accent-green) !important;
}
.wider .rscube-status.rscube-status-user {
    color: var(--color-light) !important;
    background: var(--color-accent-red) !important;
}
.wider .rscube-status.rscube-status-closed {
    color: var(--color-light) !important;
    background: var(--color-dark-gray) !important;
}
.wider .rscube-content-wrapper {
    display: flex;
    align-items: flex-start;
    align-content: flex-start;
    flex-direction: row;
}
.wider .rscube-column-large {
    width: 70%;
    margin-right: 30px;
}
.wider .rscube-column-small {
    width: 30%;
}

.wider .rscube-info {
    font-size: 16px !important;
    margin-bottom: 5px;
}
.wider .rscube-info span {
    font-weight: 600;
}

.wider .rscube-label {
    padding: 3px 14px;
    border-radius: 40px;
    margin-right: 10px;
    font-size: 15px !important;
    margin-bottom: 10px;
    display: inline-block;
    font-weight: 400 !important;
    color: var(--color-dark) !important;
    background: var(--color-light-box) !important;
}
.wider .rscube-label.type,
.wider .rscube-label.tool {
    background: var(--color-light-green) !important;
}
.wider .rscube-label.tuning-pack {
    background: var(--color-accent-yellow) !important;
}
.wider .rscube-label.tuning-option {
    background: var(--color-light-yellow) !important;
}
#rscube-comment-form {
    background: var(--color-darker-box);
    margin: 0 -30px -30px -30px;
    padding: 30px;
    border-radius: 0 0 10px 10px;
}
#rscube-comment-file {
    min-height: 50px;
    margin: 30px 0;
}
#rscube-comment-file .dz-message {
    margin: 20px 0;
}
.wider .rscube-grid {
    display: grid;
    grid-template-columns: 50px 1fr;
    grid-auto-rows: auto;
    gap: 20px;
    max-width: 750px;
    width: 100%;
    margin: 0 auto;
}
.wider .rscube-grid-icon {
    position: relative;
}
.wider .rscube-grid-icon .user-icon {
    width: 50px;
    height: 50px;
    background: var(--color-darker-box);
    border-radius: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    color: var(--color-light-gray);
}
.wider .rscube-grid-icon .rs-icon {
    width: 50px;
    height: 50px;
    background: var(--color-darker-box);
    border-radius: 50px;
    background-image: url("https://rs-cube.com/wp-content/uploads/2022/02/cropped-rs-cube-icon-512.png");
    background-size: 30px;
    background-repeat: no-repeat;
    background-position: 10px;
}
.wider .rscube-grid-icon::before {
    content: "";
    position: absolute;
    background-color: var(--color-darker-box);
    width: 2px;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: calc(-1 * 30px);
    bottom: 100%;
}
.wider .rscube-grid-icon::after {
    content: "";
    position: absolute;
    background-color: var(--color-darker-box);
    width: 2px;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: 50px;
    bottom: 0;
}
.wider .rscube-grid-icon:nth-last-child(2)::after {
    display: none;
}
.wider .rscube-grid-content {
    background: var(--color-light-box);
    padding: 20px 20px 10px 20px;
    border-radius: 10px;
}
.wider .rscube-user-date {
    color: var(--color-dark-gray) !important;
    font-size: 13px !important;
    margin-bottom: 10px;
}
.wider .rscube-comment-content {
    color: var(--color-dark) !important;
    font-size: 16px !important;
    margin-bottom: 10px;
}
.wider .rscube-button {
    padding: 13px 30px;
    border-radius: 30px;
}
#rscube-status-form .dropdown.bootstrap-select {
    top: -2px;
}
#rscube-status-form .btn.dropdown-toggle {
    font-size: 15px;
    padding: 1.75px .75rem;
}
#rscube-status-form .rscube-button {
    margin-left: 10px;
    padding: 5.5px 20px;
    font-size: 15px;
    top: -1px;
}
.wider .rscube-required::before {
    content: "●";
    margin-right: 10px;
    color: var(--color-accent-red);
}
.wider .is-validated .rscube-required::before {
    content: "●";
    margin-right: 10px;
    color: var(--color-accent-green);
}

.wider .verified .rscube-required::before {
    content: "•";
    margin-right: 10px;
    color: var(--color-accent-green);
}

/* Bootstrap style changes */
.wider .btn {
    border: 2px solid transparent;
    border-top-color: transparent;
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-left-color: transparent;
    border-radius: 3rem;
}
.wider .btn-light {
    color: var(--color-dark);
    background-color: var(--color-light);
    border-color: #e4e4e4;
}
.wider .btn-light:not(:disabled):not(.disabled):hover {
    color: #1b1b1b;
    background-color: #f8f8f8;
    border-color: var(--color-accent-green);
}
.wider .btn-light:not(:disabled):not(.disabled).active,
.wider .btn-light:not(:disabled):not(.disabled):active,
.wider .show > .btn-light.dropdown-toggle {
    color: var(--color-dark);
    background-color: #f8f8f8;
    border-color: var(--color-accent-green);
}
.wider .bootstrap-select .dropdown-toggle:focus,
.wider .bootstrap-select > select.mobile-device:focus + .dropdown-toggle {
    outline: thin dotted var(--color-accent-green) !important;
    outline: 5px auto -webkit-focus-ring-color !important;
    outline-offset: -1px;
}
.wider .bootstrap-select > .dropdown-toggle.bs-placeholder,
.wider .bootstrap-select > .dropdown-toggle.bs-placeholder:active,
.wider .bootstrap-select > .dropdown-toggle.bs-placeholder:focus,
.wider .bootstrap-select > .dropdown-toggle.bs-placeholder:hover {
    color: #a8a8a8;
}
.wider .btn-light.disabled,
.wider .btn-light:disabled {
    color: #a8a8a8;
    background-color: #f4f4f4;
    border-color: #e4e4e4;
}
.wider .dropdown-item:focus,
.wider .dropdown-item:hover {
    color: var(--color-dark);
    background-color: var(--color-accent-box);
}
.wider .form-check-input {
    margin-top: .55rem;
}
.wider .dropdown-menu {
    color: var(--color-dark);
    background-color: var(--color-light);
    border: 2px solid #e4e4e4;
    border-radius: 10px;
}
.wider .form-control:focus {
    color: var(--color-dark);
    background-color: var(--color-light);
    border-color: var(--color-accent-green);
    box-shadow: 0 0 0 .2rem rgba(125, 125, 125, .25);
}
.wider .dropdown-item.active,
.wider .dropdown-item:active {
    color: var(--color-light);
    background-color: var(--color-accent-green);
}
.wider .form-control {
    color: var(--color-dark);
    background-color: var(--color-light);
    border: 2px solid #e4e4e4;
    border-radius: 10px;
}

/* WCS Styles */
.wcs-credit-display {
    display: inline-block;
    color: var(--color-light);
    margin-left: 30px;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0px;
    text-transform: uppercase;
    position: relative;
    padding-right: 20px;
    transition: color 1s ease;
}
.wcs-credit-display::after {
    content: " ";
    background-image: url("img/rscube-coin-gold.png");
    background-size: 15px;
    width: 15px;
    height: 15px;
    background-repeat: no-repeat;
    top: 6px;
    position: absolute;
    right: 0;
}
.rs-buy-credits-tb {
    color: #777;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: bold;
    border: 2px solid #777;
    border-radius: 30px;
    padding: 2px 10px 3px 10px;
    margin-left: 10px;
    text-decoration: none;
}
.rs-buy-credits-tb:hover {
    color: var(--color-accent-green);
    border: 2px solid var(--color-accent-green);
    text-decoration: none;
}

.header--stick .wcs-credit-display {
    color: var(--color-dark);
    transition: color 1s ease;
}

/* Customize Buy Credits page */
.wider.woocommerce-buy-credits .woocommerce-MyAccount-content .cell.large-12 {
    padding: 0;
}

/* Customize File Detail page */
.wider.woocommerce-file-detail .woocommerce-MyAccount-content .cell.large-12 {
    padding: 0;
}

/* Data Tables Style changes */
.wider .rscube-user-history-container .dataTable thead th {
    font-weight: normal;
}

.wider .rscube-user-history-container .dataTable tbody tr td a {
    font-weight: normal;
}

/* Theme changes */
.wider.woocommerce-account .account-nav-top .title-wrapper .page-title-wrapper h1 {
    font-size: 50px;
}
.wider.woocommerce-account .account-cells .account-intro .account-intro-wrapper {
    justify-content: flex-start;
}
.wider.woocommerce-account .account-cells .account-content .woocommerce-MyAccount-content {
    padding-top: 46px;
}
.wider footer#site-footer .copyright-section .footer_text {
    font-size: 14px;
}
.wider footer#site-footer .rscube-underfooter {
    font-size: 11px;
    opacity: 0.5;
}
.wider #customer_details .col-1,
.wider #customer_details .col-2 {
    max-width: 100%;
}
@media print, screen and (min-width: 64.0625em) {
    .wider.woocommerce-account #content .grid-x .woocommerce .large-4 {
        width: 27%;
    }
    .wider.woocommerce-account #content .grid-x .woocommerce .large-8 {
        width: 73%;
    }
}
.wider .woocommerce-checkout .form-row {
    display: block;
    margin-right: 0;
    margin-left: 0;
}
body.wider.woocommerce-checkout .checkout-cells .cell.checkout-billing {
    padding-top: 50px;
}
body.wider.woocommerce-checkout .checkout-billing .backto-cart {
    top: 0;
    left: 15px;
}
body.wider.woocommerce-checkout .checkout-billing .checkout-links {
    position: absolute;
    top: 0;
    right: 145px;
}
.wider .header-mobiles-account-menu ul > li > a {
    font-family: "Montserrat", sans-serif;
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 500;
}
.wider .menu.nested {
    margin-right: 0;
    margin-left: 0;
}
.wider.offcanvas_left .header-mobiles-account-menu {
    margin-left: -100px;
    margin-right: -100px;
    padding-left: 100px;
    padding-right: 100px;
    background: var(--color-lightest-green);
    padding-top: 40px;
    padding-bottom: 40px;
}
.wider .header-mobiles-primary-menu ul > li > a:hover, 
.wider .header-mobiles-account-menu ul > li > a:hover {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    filter: alpha(opacity=100);
    text-decoration: none;
    color: var(--color-accent-green);
}
.wider .rscube-menu-info {
    color: var(--color-dark-gray);
    font-size: 14px;
    margin-top: 10px;
    margin-bottom: 0;
}

/* GDPR Cookie Consent Styling */
.wider #cookie-law-info-bar {
    box-shadow: 0 -1px 10px 0 rgb(27, 27, 27);
}
.wider .cli-plugin-button,
.wider .cli-plugin-button:visited,
.wider .medium.cli-plugin-button,
.wider .medium.cli-plugin-button:visited {
    font-weight: 500;
    font-family: "Montserrat", sans-serif;
    border-radius: 30px;
}
.wider .cli-modal-content {
    border-radius: 10px;
    padding: 30px;
}
.wider .cli-tab-footer .wt-cli-privacy-accept-btn {
    border-radius: 30px;
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
}
.wider .cli-tab-header {
    border-radius: 50px;
}
.wider span.cli-necessary-caption {
    margin-top: 3px;
}
.wider .cli-switch {
    padding-left: 43px;
    margin-top: 3px;
}
.wider .cli-tab-container h4 {
    font-family: "Montserrat", sans-serif;
    font-size: 20px;
    font-weight: 500;
}


/* Styling changes */
body.woocommerce-account.wider .login-cells .login-content .login-content-inner {
    text-align: center;
}
.wider .login .woocommerce-Input--text,
.wider .register .woocommerce-Input--text {
    border-radius: 50px;
    width: 100%;
}
.wider .login .form-actions,
.wider .register .form-actions {
    text-align: center;
}
.wider .login button[type="submit"],
.wider .register button[type="submit"] {
    border-radius: 50px;
    padding: 12px 28px;
    width: auto;
}
.wider .login .password-input,
.wider .register .password-input {
    width: 100%;
}
body.woocommerce-account.wider .login-cells .login-content .login-content-inner #bb-show-register-button,
body.woocommerce-account.wider .login-cells .login-content .login-content-inner #bb-show-login-button {
    width: auto !important;
    padding: 12px 28px;
    border-radius: 50px;
    border-width: 2px;
    border-color: var(--color-accent-blue);
}
body.woocommerce-account.wider .login-cells .login-content .login-content-inner #bb-register-wrap .woocommerce-privacy-policy-text p,
body.woocommerce-account.wider .login-cells .login-content .login-content-inner #bb-register-wrap .woocommerce-privacy-policy-text p a {
    font-size: 14px;
    color: var(--color-dark-gray);
}
body.woocommerce-account.wider .login-cells .login-content .login-content-inner #bb-register-wrap .woocommerce-form-register p:nth-child(2) {
    margin-bottom: 5px;
}

/* Credit transactions table */
.wider .rscube-title.rscube-creditlog {
    margin-bottom: 0 !important;
}
.wider .rscube-creditlog-creditdisplay {
    margin-bottom: 2.5rem;
    font-size: 20px;
}
.wider .rscube-creditlog-creditdisplay span.credit-icon::after {
    content: " ";
    background-image: url("img/rscube-coin-gold.png");
    background-size: 18px;
    width: 18px;
    height: 18px;
    background-repeat: no-repeat;
    position: relative;
    padding-right: 20px;
    padding-top: -4px;
    top: 5px;
    left: 2px;
}
.wider .rscube-creditlog-creditdisplay a {
    font-size: 20px;
    font-weight: bold;
    color: var(--color-accent-green);
    text-decoration: none;
}
.wider .rscube-creditlog-creditdisplay a:hover {
    text-decoration: underline;
    opacity: 0.6;
}
.wider .rscube-credit-log-wrapper table.dataTable thead {
    background: transparent;
}
.wider .rscube-credit-log-wrapper table.dataTable thead th, 
.wider .rscube-credit-log-wrapper table.dataTable thead td {
    padding: 0 15px 20px 0;
    border-bottom: 6px solid #1b1b1b;
    font-weight: 400;
    font-size: 20px;
}
.wider .rscube-credit-log-wrapper table.dataTable tbody td {
    padding: 25px 15px 25px 0;
    border-bottom: 1px solid #dbdbdb;
    font-weight: 400;
    font-size: 18px;
}
.wider .rscube-credit-log-wrapper table.dataTable tbody td .rs-pos {
    color: var(--color-accent-green);
    font-weight: bold;
}
.wider .rscube-credit-log-wrapper table.dataTable tbody td .rs-neg {
    color: var(--color-accent-red);
    font-weight: bold;
}
.wider .rscube-credit-log-wrapper table.dataTable.no-footer {
    border-bottom: none;
}

.wider .rscube-credit-log-wrapper .dataTables_wrapper .dataTables_info {
    padding-top: 15px;
    font-size: 16px;
}
.wider .rscube-credit-log-wrapper .dataTables_wrapper .dataTables_paginate {
    padding-top: 15px;
}
.wider .rscube-credit-log-wrapper .dataTables_wrapper .dataTables_paginate .paginate_button.disabled, 
.wider .rscube-credit-log-wrapper .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, 
.wider .rscube-credit-log-wrapper .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
    color: #dbdbdb !important;
    border: 1px solid transparent;
    background: transparent;
    box-shadow: none;
}
.wider .rscube-credit-log-wrapper .dataTables_wrapper .dataTables_paginate .paginate_button {
    min-width: 32px;
    padding: 1px 10px 1px 10px;
    margin-left: 2px;
    text-align: center;
    color: #333 !important;
    border: 1px solid transparent;
    background: transparent;
    border-radius: 16px;
    font-size: 16px;
    min-height: 32px;
}
.wider .rscube-credit-log-wrapper .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    color: #fff !important;
    border: 1px solid var(--color-accent-blue);
    background: var(--color-accent-blue);
}
.wider .rscube-credit-log-wrapper .dataTables_wrapper .dataTables_paginate .paginate_button.current,
.wider .rscube-credit-log-wrapper .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    color: #fff !important;
    border: 1px solid var(--color-accent-blue);
    background: var(--color-accent-blue);
}