/* variables from theme configuration */
:root {
    --am_logo_link: 1;
--am_bg: #020215;
--am_bg_size: cover;
--am_bg_size_px: cover;
--am_bg_attachment: fixed;
--am_bg_repeat: no-repeat;
--am_color: #020215;
--am_color_c: #fdfdea;
--am_color_d: #000000;
--am_page_bg: unset;
--am_text_color: #d8d8df;
--am_label_color: #d8d8df;
--am_placeholder_color: #d8d8df;
--am_comment_color: #d8d8df;
--am_grid_desc_color: #d8d8df;
--am_helpdesk_text_color: #ffffff;
--am_helpdesk_link_color: #2f70e0;
--am_cart_status_color: #d8d8df;
--am_link_color: #f4b207;
--am_btn_color: #2f70e0;
--am_accent: #ea6e19;
--am_max_width: 1240;
--am_max_width_px: 1240px;
--am_font_size: 16;
--am_font_size_px: 16px;
--am_font_family: Poppins;
--am_content_shadow: none;
--am_border_radius: 12;
--am_border_radius_px: 12px;
--am_logo_align: left;
--am_logo_width: auto;
--am_logo_width_px: auto;
--am_header_bg_size: cover;
--am_header_bg_size_px: cover;
--am_header_bg_repeat: no-repeat;
--am_header_bg: none;
--am_header_menu_link_color: #d8d8df;
--am_header_menu_link2_color: #d8d8df;
--am_header_menu_bg_color: #0d0d2a;
--am_footer_bg: none;
--am_footer_text_color: #8f8fa3;
--am_footer_link_color: #d8d8df;
--am_menu_color: #2f70e0;
--am_menu_dashboard: text;
--am_dashboard_layout: two-col;
--am_identity_align: right;
--am_identity_location: header;
--am_identity_type: login;
--am_gravatar: 1;
--am_login_layout: layout.phtml;
--am_login_bg: none;
--am_login_bg_color: unset;
--am_login_shadow: none;
--am_login_footer_display: block;
--am_login_legend_bg: #0d0d2a;
--am_login_legend_padding_top: 1em;
--am_login_form_bg_color: #0d0d2a;
--am_login_text_color: #ffffff;
--am_login_header_display: block;
--am_login_type: am-page-login-no-label;
--am_modernsmart_header: 1;
--am_modernsmart_footer: 1;
--am_lang_in_header: 1;
--am_guest_header: 1;
--am_tickets_modern: 1;
--am_tickets_closed_max: 3;
--am_link_color_a99: #f4b20799;
--am_menu_dashboard_width: auto;

}
/* end: variables from theme configuration */

body, html {
    font-size: var(--am_font_size_px);
    background: none;
}

html {
    background: #020215;
}

body.am-page-login {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

body.am-page-login .am-layout {
    flex: 1;
}
body.am-page-login .am-footer {
    height: auto;
}

.am-common {
    font-family: var(--am_font_family), "Poppins", system-ui, sans-serif;
    color: #d8d8df;
}

.am-common legend {
    color: #d8d8df;
}

.am-common a {
    color: var(--am_link_color);
    text-decoration-color: var(--am_link_color_a99);
}

.ajax-link, .local-link, .local {
    text-decoration-color: var(--am_link_color_a99);
}

.am-layout {
    min-height: initial;
    margin: 0;
    background: none;
}

.am-header {
    background: #0d0d2a;
}

.am-header .am-header-content-wrapper {
    border: none;
    background: none;
}

.am-header-line {
    border:none;
    background: none;
}

.am-header-menu-wrapper a,
ul.am-header-menu-narrow a,
ul.am-header-menu a {
    color: #d8d8df;
}

ul.am-header-menu ul a {
    color: #d8d8df;
}

ul.am-header-menu-narrow ul a {
    color: #d8d8df;
}

ul.am-header-menu > li > a::after {
    background: #d8d8df;
    opacity: .4;
}

ul.am-header-menu li ul {
    background: #1a1a35;
}

.am-footer .am-footer-content-wrapper {
    background: none;
    color: inherit;
    height: auto;
}

.am-footer-content-content {
    padding: 1em 0;
}

.am-footer-text {
    text-align: center;
}

.am-footer .am-footer-content .am-footer-sm a {
    color: var(--am_sm_color);
    font-size: var(--am_sm_size_px);
}

.am-body {
    background: none;
}

.am-body .am-body-content-wrapper {
    border: none;
    box-shadow: none;
    border-radius: 0;
    background: none;
}

.am-body-content {
    min-height: 300px;
}

.am-header-content-wrapper {
    padding: 0;
}

.am-header-content-content {
    display: none;
}

.am-header .am-header-content .am-header-content-logo {
    float: none;
    margin: 0;
}

.am-header .am-header-content {
    text-align: var(--am_logo_align);
}

.am-main {
    max-width: var(--am_max_width_px);
}

.am-header-content img {
    width: var(--am_logo_width);
}

.am-footer-actions {
    display:none;
}

.am-footer .am-footer-content-wrapper {
    color: #d8d8df;
    font-size:.8rem;
}

.am-info {
    background: #0d0d2a;
    border: 1px solid #2a2a45;
}

.am-user-identity-block {
    float: var(--am_identity_align);
}

.am-page-login .am-header {
    display: var(--am_login_header_display);
}

.am-page-login .am-auth-form legend {
    background: var(--am_login_legend_bg);
    padding-top: var(--am_login_legend_padding_top);
}

.am-page-login .am-auth-form div.am-row {
    background: #0d0d2a;
}

.am-auth-form form {
    border: none;
    overflow: hidden;
    box-shadow: 0px 0px 5px #eee;
    box-shadow: 0px 0px 5px #00000022;
}

.am-auth-form form legend {
    border: none;
    background: #0d0d2a;
    color: #ffffff;
    padding: 1em 1em 1.5em;
}

.am-auth-form div.am-row div.element,
.am-auth-form div.am-row div.am-element-title {
    padding-right: 2em;
    padding-left: 2em;
}

@media all and (min-width:500px) {

    .am-auth-form div.am-row div.am-element-title {
        padding-right: .5em;
    }
    .am-auth-form div.am-row div.am-element {
        padding-left: .5em;
    }
}

.am-popup {
    border-color: #020215;
}

.am-popup .am-popup-header {
    background: #020215;
    color: #d8d8df;
}

.am-popup .am-popup-close-icon:after {
    color: #d8d8df;
}

.am-fb-login-button-wrapper.am-fb-login-form-after:before,
.am-fb-login-button-wrapper.am-fb-login-form-before:after {
    background: var(--am_color);
}

.am-signup-link {
    color: #d8d8df;
}

.am-login-layout-with-sidebar {
    max-width: 800px;
    margin: 2em auto 0;
}

.am-login-layout-with-sidebar .am-login-form-wrapper,
.am-login-layout-with-sidebar .am-sendpass-form-wrapper {
    margin-top: 0;
}

.am-signup-link {
    max-width: 450px;
    margin: 1em auto 0;
}

@media all and (min-width: 800px) {
    .am-login-layout-with-sidebar .am-login-layout-with-sidebar_form {
        float: left;
        width: 65%;
    }
    .am-login-layout-with-sidebar .am-login-layout-with-sidebar_sidebar {
        display: block;
        width: 35%;
        float: right;
        padding-left: 20px;
        box-sizing: border-box;
    }
    .am-login-layout-with-sidebar .am-auth-form {
        margin: 0;
    }
    .am-login-layout-with-sidebar .am-signup-link {
        margin: 1em 0 0;
    }
}
.am-login-layout-with-sidebar .am-login-layout-with-sidebar_sidebar {
    border-radius: 3px;
    padding: 1em 2em;
    max-width: 450px;
    box-sizing: border-box;
    box-shadow: 0px 0px 5px #00000022;
    background: #0d0d2a;
    color: #d8d8df;
}
.am-login-layout-with-sidebar_clear {
    clear: both;
}

@media all and (max-width: 799px) {
    .am-login-layout-with-sidebar .am-login-layout-with-sidebar_sidebar {
        margin: 2em auto 0;
    }
}

ul.am-tabs li.active,
ul.am-tabs li.normal:hover {
    background: var(--am_menu_color);
}

ul.am-tabs li.active > a,
ul.am-tabs li.normal > a:hover {
    border-color: var(--am_menu_color);
}

ul.am-tabs .has-children ul {
    background: #0d0d2a;
    border: 1px solid #2a2a45;
    box-shadow: 0 0 3px 0 rgba(0,0,0,0.3),0 2px 3px 0 rgba(0,0,0,0.26),0 1px 4px 0 rgba(0,0,0,0.4);
}

ul.am-tabs {
    background: #0d0d2a;
    border: 1px solid #2a2a45;
}
ul.am-tabs > li {
    background: #0d0d2a;
}

ul.am-tabs a {
    border-right: 1px solid #2a2a45;
    color: white;
}

@media all and (max-width:500px) {
    .am-account-toolbar .am-account-toolbar-items {
        background: #0d0d2a;
    }
}

.am-active-invoice {
    border: 1px solid #2a2a45;
}

.am-page-login-no-label .am-auth-form,
.am-page-login-no-label .am-signup-link {
    max-width:350px;
}

.am-page-login-no-label .am-auth-form div.am-row div.am-element-title {
    display: none;
}

.am-page-login-no-label .am-auth-form div.am-row div.am-element {
    margin:0;
    padding:.6em 2em;
}

.am-page-login-no-label .am-auth-form div.am-row div.am-element input[type=submit],
.am-page-login-no-label .am-auth-form div.am-row div.am-element input[type=submit]:active,
.am-page-login-no-label .am-auth-form div.am-row div.am-element input[type=submit]:hover,
.am-page-login-no-label .am-auth-form div.am-row div.am-element input[type=submit]:disabled {
    width: 100%;
}

.am-page-login-no-label .am-auth-form .am-form-login-switch-wrapper {
    text-align: center;
    display: block;
    padding: 1.2em 2em .6em;
}

.am-page-login-no-label .am-auth-form .am-form-login-switch-wrapper  .am-form-login-switch {
    margin:0;
}

@media all and (max-width: 799px) {
    .am-page-login-no-label .am-login-layout-with-sidebar .am-login-layout-with-sidebar_sidebar {
        max-width:350px;
        margin: 2em auto 0;
    }
}

.am-credits {
    color: white;
}

.am-form form {
    background:#0d0d2a;
    border-color: #2a2a45;
}

.am-form-container .am-form-sidebar-sidebar {
    background:#0d0d2a;
    border: 1px solid #2a2a45;
    box-shadow: none;
}

.am-form fieldset legend {
    background: none;
    border-bottom: 1px solid #1a1a35;
}

.am-body-content input,
.am-body-content textarea,
.am-body-content select,
.am-body-content button,
.am-popup input,
.am-popup textarea,
.am-popup select,
.am-popup button {
    font-family: var(--am_font_family), "Poppins", system-ui, sans-serif;
}

.am-body-content a.button,
.am-body-content button,
.am-body-content input[type="button"],
.am-body-content input[type="submit"],
.am-popup a.button,
.am-popup button,
.am-popup input[type="button"],
.am-popup input[type="submit"],
.am-body-content a.button:hover,
.am-body-content button:hover,
.am-body-content input[type="button"]:hover,
.am-body-content input[type="submit"]:hover,
.am-popup a.button:hover,
.am-popup button:hover,
.am-popup input[type="button"]:hover,
.am-popup input[type="submit"]:hover {
    color: white;
    background: var(--am_btn_color);
    border-radius: 12px;
    border-color: var(--am_btn_color);
}

.upload-control .upload-control-upload.upload-control-upload-single {
    border-radius: 12px;
    color: white;
    background: var(--am_btn_color);
    border: none;
    text-shadow: none;
}

.input-file,
.input-file.hover {
    border: none;
    border-radius: 3px;
    background: #1a1a35;
}

.input-file .input-file-button,
.input-file.hover .input-file-button {
    border-radius: 0 3px 3px 0;
    color: white;
    background: var(--am_btn_color);
    border: none;
    text-shadow: none;
}

.am-cta-signup {
    font-size: 1.2rem;
    padding: 0.5em 2.5em;
}

.am-pass-indicator-bar {
    background: #d8d8df;
}

.am-form input[type=radio] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0 .2em 0 0;
    width: 1em;
    height: 1em;
    border: 1px solid #1a1a35;
    background-color: #0d0d2a;
    outline: 0;
    font-size: inherit;
    vertical-align: middle;
    cursor: pointer;
    border-radius: 50%;
    vertical-align: middle;
    box-sizing: border-box;
}
.am-form input[type=radio]:checked {
    border-color: var(--am_btn_color);
    border-width: .3em;
    background-color: #fff;
}

.am-form input[type=checkbox] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0 .2em 0 0;
    width: 1em;
    height: 1em;
    border: 1px solid #1a1a35;
    background-color: #0d0d2a;
    outline: 0;
    font-size: inherit;
    vertical-align: middle;
    cursor: pointer;
    border-radius: 3px;
    vertical-align: middle;
    box-sizing: border-box;
}
.am-form input[type=checkbox]:checked {
    background-color: var(--am_btn_color);
    border-color: var(--am_btn_color);
    background-image: var(--am_checkmark_background_image);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
}

.am-body-content select,
.am-body-content textarea,
.am-body-content input[type="text"],
.am-body-content input[type="password"],
.am-popup select,
.am-popup textarea,
.am-popup input[type="text"],
.am-popup input[type="password"] {
    color: #ffffff;
    border: 1px solid #2a2a45;
    border-radius: 10px;
    background-color: #1a1a35;
}

.am-body-content select,
.am-popup select {
    height: auto;
}

.am-body-content textarea::placeholder,
.am-body-content input[type="text"]::placeholder,
.am-body-content input[type="password"]::placeholder,
.am-popup textarea::placeholder,
.am-popup input[type="text"]::placeholder,
.am-popup input[type="password"]::placeholder {
    color: var(--am_placeholder_color, #8f8fa3);
    opacity: 1;
}

.am-body-content textarea:focus,
.am-body-content input[type="text"]:focus,
.am-body-content input[type="password"]:focus,
.am-body-content select:focus,
.am-popup textarea:focus,
.am-popup input[type="text"]:focus,
.am-popup input[type="password"]:focus,
.am-popup select:focus {
    box-shadow: 0 0 0 3px rgba(47,112,224,.25) !important;
    border: 1px solid #2a2a45;
    background-color: #1a1a35;
}

.am-popup {
    background-color:#0d0d2a;
}

.am-popup .am-form form {
    background: none;
}

.am-block {
    background:#0d0d2a;
    border-color: #2a2a45;
    box-shadow: none;
}

.am-layout-two-coll .am-layout-two-coll-top,
.am-layout-two-coll .am-layout-two-coll-bottom {
    display:none;
}

.am-layout-two-coll {
    background: none;
    box-shadow: none;
    border: none;
    overflow: hidden;
    margin-top:2em;
}

.am-layout-two-coll .am-coll-left .am-coll-content,
.am-layout-two-coll .am-coll-right .am-coll-content  {
    margin: 0;
}

@media all and (min-width:750px) {
    .am-layout-two-coll .am-coll-left .am-coll-content {
        margin: 0 1em 0 0;
    }

    .am-layout-two-coll .am-coll-right .am-coll-content {
        margin: 0 0 0 1em;
    }
}

.am-grid-container {
    box-shadow: none;
    border: 1px solid #2a2a45;
}
.am-grid th,
.am-grid th:last-child {
    background: #0d0d2a;
    border: none;
}

.am-grid th,
.am-grid th a {
    color: #8f8fa3;
}

.am-grid th a.sorted-asc,
.am-grid th a.sorted-desc {
    color: #8f8fa3;
}

.am-grid tr.am-grid-row > td {
    background: #2a2a45;
}
.am-grid tr.am-grid-row.odd td {
    background-color: #14142e;
}

.am-filter-wrap {
    border: 1px solid #2a2a45;
    background: #14142e;
    color: #d8d8df;
}

.am-filter-wrap form.filter input,
.am-filter-wrap form.filter select,
.am-filter-wrap form.filter .select2-container--default .select2-selection--single {
    background-color: #1a1a35;
}

.am-filter-wrap .filter-button input.gridFilterButton {
    border: none;
}

.am-filter-wrap form.filter input[type="text"] {
    background-color: #1a1a35;
}

.am-filter-wrap .filter-button input[type="submit"]:hover,
.am-filter-wrap .filter-button input[type="submit"]:active {
    background-color: #0d0d2a;
}

.am-input-filter-wrapper {
    border: 1px solid #2a2a45;
}
.am-input-filter-wrapper.am-input-filter-wrapper_focus {
    box-shadow: 0 0 4px #00000022;
    background: #2a2a45;
}
.am-input-filter-wrapper .am-input-filter-inner-wrapper {
    background-color: transparent;
}

.am-input-filter-wrapper input[type=text].am-input-filter:focus {
    box-shadow: none!important;
    background-color: transparent;
    color:white;
}

.am-tabs-narrow-dashboard::before,
.am-tabs-narrow-switch::before,
.am-lang-choice .am-lang-val-code {
    color: #d8d8df;
}

div.am-errors ul, ul.am-error, ul.am-errors {
    background: none;
    border: none;
    border-radius: 0;
}

.am-receipt {
    box-shadow: none;
    border: 1px solid #2a2a45;
    background: #0d0d2a;
}
.am-receipt td {
    background: none;
    border: none;
}
.am-receipt td.am-receipt-total {
    background: none;
}

.am-invoice-summary .am-invoice-summary-item {
    border-bottom: 1px solid #2a2a45;
}

.am-body-content input[type="button"]:disabled,
.am-body-content input[type="submit"]:disabled,
.am-body-content button:disabled,
.am-body-content button:disabled:hover,
.am-popup input[type="button"]:disabled,
.am-popup input[type="submit"]:disabled,
.am-popup button:disabled,
.am-popup button:disabled:hover {
    border: none;
    color: #40494f;
    background: #202b33;
}

.am-flash-content-lock {
    background-color: #7c7c7c;
    color: black;
    border: none;
}
.am-flash-mask {
    background: #2a2a45;
}

.am-form .StripeElement {
    box-sizing: border-box;
    padding: .5em .75em;
    border: none;
    border-radius: 3px;
    background-color: #e8e8ef;
}

.am-form .StripeElement--focus {
    background-color: #e8e8ef;
    box-shadow: 0 0 0 3px rgba(47,112,224,.25) !important;
}

.am-invoice-summary .am-invoice-summary-item-num {
    color: #d8d8df;
}

.am-invoice-summary {
    box-shadow: none;
    background: #0d0d2a;
    border: 1px solid #2a2a45;
}

.am-common hr,
.am-invoice-summary tr.am-invoice-summary-delimeter hr {
    background: #2a2a45;
}

.am-block-nodata {
    background: #0d0d2a;
}

/* Helpdesk */

.am-helpdesk-message.am-helpdesk-message-outbound {
    background: none;
}
.am-helpdesk-message {
    box-shadow: none;
    border: #2a2a45 1px solid;
}
.am-helpdesk-ticket-actions-container {
    border: #2a2a45 1px solid;
}
.am-helpdesk-reply-panel {
    background: #14142e;
}
.am-helpdesk-ticket-action.am-helpdesk-action-active {
    background-color: #2a2a45;
}
.am-helpdesk-reply-panel-content .am-form div.am-row.am-no-label .am-element textarea:focus {
    background: #1a1a35;
    box-shadow: none !important;
}

.am-helpdesk-message.am-helpdesk-message-inbound {
    background: #0d0d2a;
}

.am-helpdesk-message-action.am-helpdesk-action-active {
    background: #2a2a45;
}

/* Affiliate */
.am-aff-banner-preview {
    box-shadow: none;
    background: #0d0d2a;
    border: 1px solid #2a2a45;
}
.am-copy-to-clipboard-highlight {
    background: #1a1a35;
}

.am-aff-banner-preview-info textarea,
.am-aff-banner-preview-info textarea:focus {
    border-radius: 0;
    box-shadow: none;
    background: #1a1a35;
    color: white;
}

/* Shopping Cart */

.am-cart .am-cart-product .am-cart-product-content-details .am-cart-product-content-desc .am-cart-product-content-desc-img-wrapper {
    background: #14142e;
}

.am-cart .am-cart-product .am-cart-product-content-terms {
    font-weight: normal;
}

.am-cart .am-cart-product.am-cart-product-brief,
.am-cart .am-cart-product.am-cart-product-brief:hover {
    box-shadow: none!important;
    border: solid 1px #2a2a45;
    background: #0d0d2a;
}
.am-cart .am-cart-product .am-cart-product-content-add-container {
    background: #14142e;
}

.am-cart .am-cart-product .am-cart-product-content-buttons input,
.am-cart .am-cart-product .am-cart-product-content-buttons input:hover,
.am-cart .am-cart-product .am-cart-product-content-buttons input:active {
    font-size: 1rem;
    border-radius: 3px;
    padding: 0.4em 0.5em;
}

#cart-basket {
    background-color: #0d0d2a;
    border-color: #2a2a45;
}

.am-basket .am-basket-img {
    border: 1px solid #d8d8df;
}

.am-basket-preview-item {
    color: inherit;
}
.am-common .am-basket-preview-item-remove a {
    color: inherit;
}

.am-basket .am-basket-row-head {
    border-bottom: 2px solid #2a2a45;
}

.am-basket .am-basket-row {
    border-bottom: 1px solid #2a2a45;
}

.am-cart-qty-el {
    border: 1px solid var(--am_btn_color);
}

.am-body-content .am-cart-qty-el input[type="text"].am-cart-qty-el-val:focus {
    box-shadow: none !important;
}

.am-cart-checkout .am-cart-checkout-paysys {
    border-top: #2a2a45 solid 1px;
}

.am-cart-checkout .am-cart-checkout-paysys .am-cart-checkout-paysys-item {
    border-bottom: #2a2a45 solid 1px;
}

.am-cart-checkout .am-cart-checkout-c {
    border-bottom: #2a2a45 solid 1px;
}

.am-cart-checkout .am-cart-checkout-paysys div.active {
    background-color: #0d0d2a;
    border-left: #2a2a45 solid 1px;
    border-right: #2a2a45 solid 1px;
}

.am-cart-checkout .am-cart-checkout-paysys div:hover {
    background-color: #0d0d2a;
}

/* Self Service */

.am-ss-product:hover {
    box-shadow: none;
    border: solid 1px #2a2a45;
}

.am-ss-product {
    box-shadow: none;
    border: solid 1px #2a2a45;
    background: #0d0d2a;
}

.am-ss-product-add-container {
    background: #14142e;
}

#EmailCode {
    color: black;
}

/* =======================================================================
   modernsmart Frontend Sync — synced horizontal header bar + dropdowns
   (recolored to OTT dark)
   ======================================================================= */
.am-header .am-header-menu-wrapper { width: 100%; }
ul.am-header-menu { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 1.4em; }
ul.am-header-menu > li { position: relative; }
ul.am-header-menu > li > a { display: inline-block; padding: .4em 0; font-weight: 500; text-decoration: none; color: #d8d8df; }
ul.am-header-menu > li > a:hover { opacity: .85; }
ul.am-header-menu > li.active > a { color: #ea6e19; }
ul.am-header-menu li.modernsmart-has-children > ul {
    position: absolute; left: 0; top: 100%; min-width: 200px; list-style: none; margin: 0; padding: .4em;
    background: #0d0d2a; border: 1px solid #2a2a45;
    border-radius: 10px; box-shadow: 0 20px 40px rgba(0,0,0,.4);
    opacity: 0; visibility: hidden; transform: translateY(6px);
    transition: opacity .15s ease, transform .15s ease, visibility .15s; z-index: 1001;
}
ul.am-header-menu li.modernsmart-has-children:hover > ul { opacity: 1; visibility: visible; transform: translateY(0); }
ul.am-header-menu li.modernsmart-has-children > ul li a { display: block; padding: .5em .75em; border-radius: 6px; text-decoration: none; color: #d8d8df; }
ul.am-header-menu li.modernsmart-has-children > ul li a:hover { background: rgba(255,255,255,.06); color: #ea6e19; }

/* generic footer link states (was flagged missing) */
.am-footer a, .am-footer a:visited { color: var(--am_footer_link_color, #d8d8df); text-decoration: none; }
.am-footer a:hover, .am-footer a:active { color: #ffffff; }

/* =======================================================================
   modernsmart Frontend Sync — full OTT footer (payments, apps, columns,
   support, legal) — matches the OTT-Website footer layout
   ======================================================================= */
.modernsmart-footer { max-width: 1100px; margin: 0 auto; padding: 1.5em 1em .5em; font-family: var(--am_font_family), "Poppins", system-ui, sans-serif; }
.modernsmart-footer-inner {
    display: grid; grid-template-columns: 1fr 1fr; gap: 3em;
    padding-bottom: 2em; border-bottom: 1px solid #2a2a45;
}
.modernsmart-footer-left { display: flex; flex-direction: column; gap: 1.6em; }
.modernsmart-footer-right { display: flex; flex-wrap: wrap; gap: 2.5em; }
.modernsmart-footer-block { min-width: 150px; }
.modernsmart-footer-col { min-width: 150px; }
.modernsmart-footer-title { font-weight: 600; color: #ffffff; margin-bottom: .8em; font-size: .95rem; }
.modernsmart-footer-badges { display: flex; flex-wrap: wrap; align-items: center; gap: .75em; }
.modernsmart-footer-badges img { height: 40px; width: auto; display: block; }
.modernsmart-footer-badges a { display: inline-flex; }
.modernsmart-footer-col ul { list-style: none; margin: 0; padding: 0; }
.modernsmart-footer-col li { margin: .55em 0; }
.modernsmart-footer-col a { color: #d8d8df; text-decoration: none; font-size: .9rem; transition: color .15s ease; }
.modernsmart-footer-col a:hover { color: #ffffff; }
.modernsmart-footer-col a.modernsmart-footer-phone { color: #ffffff; font-weight: 600; }
.modernsmart-footer-legal {
    display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1em;
    max-width: 1100px; margin: 0 auto; padding: 1.4em 1em; color: #8f8fa3; font-size: .8rem;
}
.modernsmart-footer-legal-links { display: flex; flex-wrap: wrap; gap: 1em; }
.modernsmart-footer-legal-links a { color: #8f8fa3; text-decoration: none; }
.modernsmart-footer-legal-links a:hover { color: #ffffff; }
@media (max-width: 768px) {
    .modernsmart-footer-inner { grid-template-columns: 1fr; gap: 2em; }
    .modernsmart-footer-legal { justify-content: center; text-align: center; }
}

/* =======================================================================
   TV Smart overrides — modern User Menu + content color fixes
   ======================================================================= */

/* ---- Modern User Menu: rounded pill tabs (was 1 solid square bar) ---- */
ul.am-tabs {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    display: flex !important;
    flex-wrap: wrap;
    gap: .55em;
    padding: 0 !important;
    margin: 0 0 1.6em !important;
    overflow: visible !important;
}
ul.am-tabs > li {
    background: transparent !important;
    border: none !important;
    margin: 0 !important;
    overflow: visible !important;
}
ul.am-tabs > li > a {
    display: inline-flex;
    align-items: center;
    gap: .5em;
    border: 1px solid #2a2a45 !important;
    border-radius: 12px !important;
    background: #0d0d2a !important;
    color: #d8d8df !important;
    padding: .6em 1.15em !important;
    font-weight: 500;
    line-height: 1.2;
    text-decoration: none;
    transition: background-color .15s ease, color .15s ease, border-color .15s ease;
}
ul.am-tabs > li > a:hover {
    background: #1a1a35 !important;
    color: #ffffff !important;
    border-color: #2f70e0 !important;
}
ul.am-tabs li.active > a,
ul.am-tabs li.active > a:hover,
ul.am-tabs li.normal > a:hover {
    background: var(--am_menu_color, #2f70e0) !important;
    border-color: var(--am_menu_color, #2f70e0) !important;
    color: #ffffff !important;
}
/* neutralise the old "solid bar" highlight on the LI itself */
ul.am-tabs li.active,
ul.am-tabs li.normal:hover { background: transparent !important; }
/* keep the dashboard dropdown panel as a dark rounded card */
ul.am-tabs .has-children ul {
    background: #0d0d2a !important;
    border: 1px solid #2a2a45 !important;
    border-radius: 12px !important;
    padding: .4em !important;
    margin-top: .4em;
}
ul.am-tabs .has-children ul li a { border: none !important; border-radius: 8px !important; }

/* ---- Content text color fixes (were unreadable / unthemeable) ---- */
.am-body-content .os-wrap h1,
.os-wrap h1,
#os-wrap h1 { color: #ffffff !important; }
.am-body-content .os-wrap h2,
.os-wrap h2 { color: #ffffff; }
.am-body-content .am-cart-product-status,
.am-cart-product-status { color: #d8d8df !important; }
/* generic safety net: headings inside dark panels stay light */
.am-body-content h1,
.am-body-content h2,
.am-body-content h3 { color: #ffffff; }

/* ---- Login form — driven by the Login Page settings (editable) ---- */
.am-page-login .am-auth-form form,
.am-auth-form form,
.am-login-form-form,
.am-login-form-form form {
    background: var(--am_login_form_bg_color, #0d0d2a) !important;
    border-color: #2a2a45 !important;
}
.am-page-login .am-auth-form legend,
.am-auth-form form legend,
.am-login-form-form legend,
.am-login-form legend,
.am-login-form-form .am-form fieldset legend {
    background: var(--am_login_legend_bg, var(--am_login_form_bg_color, #0d0d2a)) !important;
    color: var(--am_login_text_color, #ffffff) !important;
    border-bottom: none !important;
}
.am-page-login .am-auth-form div.am-row,
.am-login-form-form div.am-row {
    background: var(--am_login_form_bg_color, #0d0d2a) !important;
}
/* login text + labels + links colour */
.am-page-login .am-auth-form,
.am-page-login .am-auth-form label,
.am-page-login .am-auth-form .am-element-title,
.am-page-login .am-auth-form .am-element-title label,
.am-login-form-form label,
.am-login-form-form .am-element-title label {
    color: var(--am_login_text_color, #ffffff) !important;
}
.am-page-login .am-auth-form .am-form-login-switch-wrapper a,
.am-page-login .am-signup-link a { color: var(--am_link_color, #2f70e0) !important; }

/* Remove Header / Footer on the login page (built-in chrome) */
body.am-page-login .modernsmart-site-header { display: var(--am_login_header_display, block) !important; }
body.am-page-login .modernsmart-footer { display: var(--am_login_footer_display, block) !important; }

/* ---- Flash messages: grey-on-white was invisible ---- */
.am-flash,
.am-flash .am-flash-content,
.am-flash-content {
    background: #0d0d2a !important;
    color: #ffffff !important;
    border: 1px solid #2a2a45 !important;
    border-radius: 12px !important;
}
.am-flash a, .am-flash-content a { color: #5890ef !important; }
.am-flash-mask { background: rgba(2,2,21,.7) !important; }
.am-flash-content-lock { background: #1a1a35 !important; color: #ffffff !important; border: 1px solid #2a2a45 !important; }

/* ---- Normalise ALL action buttons to one shape/size ---- */
.am-body-content input[type="submit"],
.am-body-content input[type="button"],
.am-body-content button,
.am-body-content a.button,
.am-body-content .am-cart-button,
.am-body-content .am-cart-button-add,
.am-body-content .am-cart .am-cart-product-content-buttons input,
.am-cart-button-add,
#row-_submit_-0 input,
.row-buttons input,
.row-buttons a.button {
    border-radius: 12px !important;
    padding: 0 1.3em !important;
    height: 44px !important;
    min-height: 44px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}
.am-body-content .am-cart-button-add,
.am-cart-button-add,
.am-body-content .am-cart .am-cart-product-content-buttons input {
    background: #2f70e0 !important;
    color: #fff !important;
    border: 1px solid transparent !important;
}
.am-body-content .am-cart-button-add:hover,
.am-cart-button-add:hover { background: #3776e1 !important; }

/* =======================================================================
   OneStream addon (.os-*) — re-skin its inline light styles to OTT dark
   (its own <style> loads inline, so !important is required)
   ======================================================================= */
.os-card {
    background: #0d0d2a !important;
    border: 1px solid #2a2a45 !important;
    border-radius: 16px !important;
    color: #d8d8df !important;
    font-family: var(--am_font_family), "Poppins", system-ui, sans-serif !important;
}
.os-card h1, .os-card h2, .os-card h3, #os-wrap h1, .os-wrap h1 { color: #ffffff !important; }
.os-card, .os-card * { font-family: var(--am_font_family), "Poppins", system-ui, sans-serif !important; }
.os-row label { color: #8f8fa3 !important; }
.os-pwd, .os-pwd-display { color: #ffffff !important; }
.os-pwd-mask { color: #8f8fa3 !important; }
.os-localtime, .os-timeleft { color: #d8d8df !important; }

/* OneStream buttons → match theme buttons */
.os-btn {
    border-radius: 12px !important;
    padding: .7em 1.3em !important;
    min-height: 44px !important;
    font-weight: 600 !important;
    font-family: var(--am_font_family), "Poppins", sans-serif !important;
    background: #1a1a35 !important;
    color: #d8d8df !important;
    border: 1px solid #2a2a45 !important;
}
.os-btn:hover { background: #2a2a45 !important; color: #fff !important; }
.os-btn-primary { background: #2f70e0 !important; color: #fff !important; border-color: transparent !important; }
.os-btn-primary:hover { background: #3776e1 !important; }
.os-btn-danger { background: rgba(227,68,68,.15) !important; color: #ff6b6b !important; border-color: rgba(227,68,68,.4) !important; }
.os-btn-danger:hover { background: rgba(227,68,68,.28) !important; }

/* OneStream banners → dark tinted (kept readable) */
.os-banner { border-radius: 12px !important; color: #ffffff !important; }
.os-banner.warning  { background: rgba(244,178,7,.12) !important; border: 1px solid #f4b207 !important; color: #f4d479 !important; }
.os-banner.urgent   { background: rgba(234,110,25,.14) !important; border: 1px solid #ea6e19 !important; color: #f0a060 !important; }
.os-banner.critical { background: rgba(227,68,68,.12) !important; border: 1px solid #e34444 !important; color: #ff8a8a !important; }
.os-banner.grace    { background: rgba(47,112,224,.12) !important; border: 1px solid #5890ef !important; color: #9cc0f5 !important; }
.os-warn-icon { color: #f4b207 !important; }

/* OneStream table + statuses */
.os-conn-table th { background: #11112a !important; color: #8f8fa3 !important; border-color: #2a2a45 !important; }
.os-conn-table td { border-color: #2a2a45 !important; color: #d8d8df !important; }
.os-status-online { color: #47d26b !important; }
.os-status-offline { color: #8f8fa3 !important; }
.os-status-conflict { color: #e34444 !important; }

/* =======================================================================
   Built-in OTT site header (static, baked into the theme)
   ======================================================================= */
.modernsmart-site-header {
    position: sticky; top: 0; z-index: 1000;
    width: 100%; background: #020215;
    border-bottom: 1px solid #14142e;
    font-family: var(--am_font_family), "Poppins", system-ui, sans-serif;
}
.modernsmart-sh-inner {
    max-width: 1200px; margin: 0 auto;
    display: flex; align-items: center; justify-content: space-between; gap: 1.5em;
    min-height: 72px; padding: 0 20px;
}
.modernsmart-logo {
    display: inline-flex; align-items: center;
    font-size: 24px; font-weight: 700; letter-spacing: -.02em;
    color: #fff !important; text-decoration: none !important; white-space: nowrap;
}
.modernsmart-logo .modernsmart-dot {
    display: inline-block; width: 8px; height: 8px; margin: 0 2px; border-radius: 9999px;
    background: linear-gradient(135deg, #ea6e19 0%, #f4b207 100%);
}
.modernsmart-nav { display: flex; flex-wrap: wrap; align-items: center; gap: 1.6em; flex: 1; justify-content: center; }
.modernsmart-nav a { color: #fff !important; font-size: 15px; font-weight: 400; text-decoration: none !important; transition: color .15s ease; }
.modernsmart-nav a:hover { color: rgba(255,255,255,.75) !important; }
.modernsmart-cta { display: flex; align-items: center; gap: 1em; }
.modernsmart-cta-login { color: #fff !important; font-size: 15px; font-weight: 500; text-decoration: none !important; white-space: nowrap; }
.modernsmart-cta-login:hover { color: rgba(255,255,255,.8) !important; }
.modernsmart-cta-signup {
    display: inline-flex; align-items: center; justify-content: center;
    background: #2f70e0 !important; color: #fff !important;
    padding: .6em 1.2em; border-radius: 10px; font-size: 14px; font-weight: 600;
    text-decoration: none !important; white-space: nowrap; transition: background .15s ease;
}
.modernsmart-cta-signup:hover { background: #3776e1 !important; }
@media (max-width: 860px) {
    .modernsmart-sh-inner { flex-wrap: wrap; min-height: 0; padding: 12px 16px; gap: .8em; }
    .modernsmart-nav { order: 3; width: 100%; justify-content: flex-start; gap: 1em; }
    .modernsmart-cta-signup { padding: .5em 1em; }
}

/* =======================================================================
   Configurable font colours: form labels, placeholders, grid title/desc
   ======================================================================= */
.am-body-content .am-element-title label,
.am-body-content label.am-label,
.am-body-content .am-row > label,
.am-body-content .am-form label,
.am-popup .am-element-title label {
    color: var(--am_label_color, #d8d8df) !important;
}
.am-body-content input::placeholder,
.am-body-content textarea::placeholder,
.am-popup input::placeholder,
.am-popup textarea::placeholder {
    color: var(--am_placeholder_color, #8f8fa3) !important;
    opacity: 1;
}
.am-grid-title-desc,
.am-grid-title .am-grid-title-desc,
.am-body-content .am-grid-title-desc {
    color: var(--am_grid_desc_color, #8f8fa3) !important;
}
/* form comment / help text — broad scope so it matches wherever aMember puts it */
.am-layout .am-element-title .comment,
.am-layout .am-element-title .comment *,
.am-layout .am-element-title div.comment,
.am-layout .am-row .comment,
.am-layout div.comment,
.am-layout .am-comment,
.am-layout .am-element-comment,
.am-popup .am-element-title .comment {
    color: var(--am_comment_color, #8f8fa3) !important;
}

/* Helpdesk message text — was dark-on-dark; follow main Text Color (light) */
.am-layout .am-helpdesk-grid-msg,
.am-layout .am-helpdesk-message-content,
.am-layout .am-helpdesk-message-content *,
.am-layout .am-helpdesk-message,
.am-layout .am-helpdesk-message-text,
.am-layout .am-helpdesk-message-text * {
    color: var(--am_text_color, #ffffff) !important;
}
