/* ========================================
   ACESSOS PRO - TEMA CUSTOMIZADO COMPLETO - CORES ATUALIZADAS
   ======================================== */

/* variables from theme configuration */
:root {
    --am_logo_link: 1;
--am_bg: #f1f5f9;
--am_color: #f1f5f9;
--am_link_color: #6FA8FF;
--am_btn_color: #2C2C2C;
--am_text_color: #303030;
--am_logo_align: left;
--am_max_width: 1600;
--am_max_width_px: 1600px;
--am_logo_width: auto;
--am_logo_width_px: auto;
--am_font_size: 16;
--am_font_size_px: 16px;
--am_font_family: Outfit;
--am_login_layout: layout.phtml;
--am_login_bg: none;
--am_login_bg_color: none;
--am_login_no_header: 1;
--am_login_legend_padding_top: calc(3em + 100px);
--am_login_header_display: none;
--am_login_type: am-page-login-no-label;
--am_menu_color: #2C2C2C;
--am_menu_dashboard: icon;
--am_dashboard_layout: one-col;
--am_identity_align: left;
--am_identity_type: full_name;
--am_sm_size: 18;
--am_sm_size_px: 18px;
--am_sm_color: #f1f5f9;
--am_footer: Acessos Pro © Todos os direitos reservados;
--am_login_logo: 77;
--am_form_theme: vertical,nolabels,nolines,noborder;
--am_body_finish_out: <script> 
jQuery(document).ready(function() {
    // Security measures
    document.addEventListener('contextmenu', e => e.preventDefault());
    document.addEventListener('dragstart', e => {
        if (e.target.nodeName === 'IMG') e.preventDefault();
    });
    document.addEventListener('keydown', e => {
        if (e.key === 'F12' || 
            (e.ctrlKey && e.shiftKey && e.key === 'I') || 
            (e.ctrlKey && e.key === 'U')) {
            e.preventDefault();
        }
    });
});
</script>;
--am_body_finish_in: <script> 
jQuery(document).ready(function() {
    // Security measures
    document.addEventListener('contextmenu', e => e.preventDefault());
    document.addEventListener('dragstart', e => {
        if (e.target.nodeName === 'IMG') e.preventDefault();
    });
    document.addEventListener('keydown', e => {
        if (e.key === 'F12' || 
            (e.ctrlKey && e.shiftKey && e.key === 'I') || 
            (e.ctrlKey && e.key === 'U')) {
            e.preventDefault();
        }
    });
});
</script>;
--am_login_logo_path: 6849e1e6112c0.png;
--am_login_legend_bg: url('/data/public/6849e1e6112c0.png') #141414 center 1em no-repeat;
--am_link_color_a99: #6FA8FF99;
--am_checkmark_background_image: url('/application/default/themes/black/public/img/checkmark.svg');

    
    /* Nova paleta de cores Acessos Pro - Ajustada */
    --ap-background: #121212;               /* Background das páginas */
    --ap-container: #1E1E1E;                /* AJUSTADO: Background de containers */
    --ap-accent: #A8A8A8;                   /* AJUSTADO: Elementos não-link (focos, etc) */
    
    /* Hierarquia de textos */
    --ap-text-primary: #F2F2F2;             /* Headlines, Títulos, texto de botões, ícones */
    --ap-text-secondary: #F2F2F2;           /* Subtítulos */
    --ap-text-tertiary: #A8A8A8;            /* Descrições e outros textos */
    
    /* Cores para botões e menus */
    --ap-button-bg: #2C2C2C;                /* Background dos botões */
    --ap-button-text: #F2F2F2;              /* Texto dos botões e menus */
    
    /* Hovers e interações */
    --ap-hover: #3D3D3D;                    /* AJUSTADO: Cor de hover geral */
    --ap-hover-fill: #3D3D3D;               /* AJUSTADO: Hover de preenchimento */
    --ap-active: rgba(168, 168, 168, 0.2);  /* AJUSTADO: Estado ativo */
    
    /* Links específicos */
    --ap-link: #6FA8FF;                     /* Cor específica para links */
    --ap-link-hover: #5A8EE6;               /* Hover específico para links */
    
    /* Containers e widgets */
    --widget-card: #1E1E1E;                 /* Cards e widgets */
    --widget-border: transparent;
    --widget-border-hover: rgba(168, 168, 168, 0.3);
    
    /* Inputs e formulários */
    --ap-input-bg: #1E1E1E;                 /* AJUSTADO: Background de inputs */
    --ap-input-text: #F2F2F2;               /* Texto de inputs */
    
    /* Cores de destaque */
    --ap-green: #3EDC81;                    /* Verde */
    --ap-orange: #FFB74D;                   /* Laranja */
    --ap-red: #FF4C4C;                      /* Vermelho */
    --ap-blue: #6FA8FF;                     /* Azul para links */
    --ap-yellow: #F1DD57;                   /* Amarelo */
    --ap-purple: #6B3DEF;
    
    /* Bordas e divisores */
    --ap-border: #3D3D3D;                   /* Bordas, divisores, linhas */
}
/* end: variables from theme configuration */

body, html {
    font-size: var(--am_font_size_px);
    background: var(--ap-background);
    color: var(--ap-text-tertiary);
}

html {
    background: var(--ap-background);
}

body.am-page-login {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: var(--ap-background);
}

body.am-page-login .am-layout {
    flex: 1;
}

body.am-page-login .am-footer {
    height: auto;
}

.am-common {
    font-family: var(--am_font_family), san-serif;
    color: var(--ap-text-tertiary);
}

.am-common legend {
    color: var(--ap-text-primary);
}

/* AJUSTADO: Headlines, títulos sempre #F2F2F2 */
.am-common h1, .am-common h2, .am-common h3, .am-common h4, .am-common h5, .am-common h6 {
    color: var(--ap-text-primary) !important;
}

/* AJUSTADO: Subtítulos sempre #F2F2F2 */
.am-common h1 + p, .am-common h2 + p, .am-common h3 + p {
    color: var(--ap-text-primary) !important;
}

/* AJUSTADO: Todos os links sempre com nova cor de link */
.am-common a {
    color: var(--ap-blue) !important;
    text-decoration: none;
    position: relative;
    transition: all 0.3s ease;
}

.am-common a:hover {
    color: var(--ap-blue) !important;
}

.ajax-link, .local-link, .local {
    color: var(--ap-blue) !important;
    text-decoration: none;
    position: relative;
}

.am-layout {
    min-height: initial;
    margin: 0;
    background: var(--ap-background);
}

.am-header {
    background: var(--ap-container);
    border-bottom: 1px solid var(--ap-border);
}

.am-header .am-header-content-wrapper {
    border: none;
    background: none;
}

.am-header-line {
    border: none;
    background: none;
}

/* AJUSTADO: TODOS os links com nova cor e hover específicos */
.am-header-menu-wrapper a,
ul.am-header-menu-narrow a,
ul.am-header-menu a,
.am-common a,
.ajax-link, 
.local-link, 
.local,
.am-signup-link a,
.am-footer .am-footer-content .am-footer-sm a,
.am-common .am-basket-preview-item-remove a {
    color: var(--ap-blue) !important;
    text-decoration: none;
    position: relative;
    transition: color 0.3s ease;
}

.am-header-menu-wrapper a:hover,
ul.am-header-menu-narrow a:hover,
ul.am-header-menu a:hover,
.am-common a:hover,
.ajax-link:hover, 
.local-link:hover, 
.local:hover,
.am-signup-link a:hover,
.am-footer .am-footer-content .am-footer-sm a:hover,
.am-common .am-basket-preview-item-remove a:hover {
    color: var(--ap-blue) !important;
}

/* Sublinhado gradual no hover de TODOS os links - LINHA MAIS FINA */
.am-header-menu-wrapper a::after,
ul.am-header-menu-narrow a::after,
ul.am-header-menu a::after,
.am-common a::after,
.ajax-link::after, 
.local-link::after, 
.local::after,
.am-signup-link a::after,
.am-footer .am-footer-content .am-footer-sm a::after,
.am-common .am-basket-preview-item-remove a::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 1px;
    background: var(--ap-border);
    transition: width 0.3s ease;
}

.am-header-menu-wrapper a:hover::after,
ul.am-header-menu-narrow a:hover::after,
ul.am-header-menu a:hover::after,
.am-common a:hover::after,
.ajax-link:hover::after, 
.local-link:hover::after, 
.local:hover::after,
.am-signup-link a:hover::after,
.am-footer .am-footer-content .am-footer-sm a:hover::after,
.am-common .am-basket-preview-item-remove a:hover::after {
    width: 100%;
}

ul.am-header-menu ul a {
    color: var(--ap-button-text);
}

ul.am-header-menu-narrow ul a {
    color: var(--ap-button-text);
}

ul.am-header-menu > li > a::after {
    background: var(--ap-border);
    opacity: .4;
}

/* ATUALIZADO: Dropdown com nova cor de container */
ul.am-header-menu li ul {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
    border-radius: 20px;
    position: relative;
    overflow: hidden;
}

ul.am-header-menu li ul::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.am-footer .am-footer-content-wrapper {
    background: var(--ap-container);
    color: var(--ap-text-tertiary);
    height: auto;
    border-top: 1px solid var(--ap-border);
}

.am-footer-content-content {
    padding: 1em 0;
}

.am-footer-text {
    text-align: center;
}

.am-footer .am-footer-content .am-footer-sm a {
    color: var(--ap-button-text) !important;
    font-size: var(--am_sm_size_px);
    text-decoration: none;
    position: relative;
}

.am-body {
    background: var(--ap-background);
}

.am-body .am-body-content-wrapper {
    border: none;
    box-shadow: none;
    border-radius: 0;
    background: var(--ap-background);
}

.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: var(--ap-text-tertiary);
    font-size: .8rem;
}

/* ATUALIZADO: Info com nova cor de container */
.am-info {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    color: var(--ap-text-primary);
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-info::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.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);
    background-color: var(--ap-container) !important;
    padding-top: 6.5em;
    padding-bottom: 1em;
}

/* ATUALIZADO: Formulário de login com nova cor */
.am-page-login .am-auth-form div.am-row {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
}

.am-auth-form form {
    border: none;
    overflow: hidden;
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.5);
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border-radius: 20px;
    position: relative;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-auth-form form::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.am-auth-form form legend {
    border: none;
    background: var(--ap-accent);
    background-color: var(--ap-hover) !important;
    color: var(--ap-button-text);
    padding: 1em 1em 1.5em;
    border-radius: 20px 20px 0 0;
    position: relative;
    z-index: 1;
}

.am-auth-form div.am-row div.element,
.am-auth-form div.am-row div.am-element-title {
    padding-right: 2em;
    padding-left: 2em;
    position: relative;
    z-index: 1;
}

/* ========================================
   CORREÇÃO DOS ÍCONES DE LOGIN - INTEGRADA
   ======================================== */

/* Ícone de usuário para campos de login/email */
.am-auth-form input[name=login],
.am-auth-form input[name=amember_login],
.am-auth-form div.am-row div.element input[type="email"],
.am-auth-form div.am-row div.element input[type="text"] {
    background-image: none;
    background-repeat: no-repeat !important;
    background-position: 18px center !important;
}

/* Ícone de cadeado para campos de senha */
.am-auth-form input[name=amember_pass],
.am-auth-form div.am-row div.element input[type="password"] {
    background-image: none;
    background-repeat: no-repeat !important;
    background-position: 18px center !important;
}

/* AJUSTADO: Inputs com cores personalizadas */
.am-auth-form div.am-row div.element input[type="text"],
.am-auth-form div.am-row div.element input[type="password"],
.am-auth-form div.am-row div.element input[type="email"] {
    width: 100% !important;
    padding: 12px 16px 12px 50px !important;
    color: var(--ap-input-text) !important;
    border: 2px solid var(--ap-border) !important;
    background-color: var(--ap-input-bg) !important;
    border-radius: 8px;
    transition: all 0.3s ease;
    position: relative;
    z-index: 1;
    font-family: var(--am_font_family), sans-serif;
    box-sizing: border-box;
}

/* AJUSTADO: Placeholders com cores personalizadas */
.am-auth-form div.am-row div.element input[type="text"]::placeholder,
.am-auth-form div.am-row div.element input[type="password"]::placeholder,
.am-auth-form div.am-row div.element input[type="email"]::placeholder {
    color: var(--ap-input-text) !important;
    background-color: var(--ap-input-bg) !important;
    opacity: 0.7;
}

/* NOVO: Placeholders APENAS em formulários de auth - campos de texto desabilitados */
.am-auth-form div.am-row div.element input[type="text"]:disabled::placeholder,
.am-auth-form div.am-row div.element input[type="password"]:disabled::placeholder,
.am-auth-form div.am-row div.element input[type="email"]:disabled::placeholder,
.am-auth-form div.am-row div.element input[type="text"]:read-only::placeholder,
.am-auth-form div.am-row div.element input[type="password"]:read-only::placeholder,
.am-auth-form div.am-row div.element input[type="email"]:read-only::placeholder {
    color: var(--ap-input-text) !important;
    background-color: var(--ap-input-bg) !important;
    opacity: 0.5;
}

/* Foco dos inputs - AJUSTADO para usar cor #A8A8A8 */
.am-auth-form div.am-row div.element input[type="text"]:focus,
.am-auth-form div.am-row div.element input[type="password"]:focus,
.am-auth-form div.am-row div.element input[type="email"]:focus {
    box-shadow: 0 0 0 3px rgba(168, 168, 168, 0.2) !important;
    border-color: var(--ap-accent) !important;
    background-color: var(--ap-input-bg) !important;
    outline: none !important;
}

/* Aumentar a largura dos formulários de login para dar mais espaço */
.am-auth-form form {
    min-width: 400px;
    max-width: 450px;
}

/* Responsivo para telas menores */
@media (max-width: 500px) {
    .am-auth-form form {
        min-width: 100%;
        max-width: 100%;
    }
    
    .am-auth-form input[name=login],
    .am-auth-form input[name=amember_login],
    .am-auth-form input[name=amember_pass],
    .am-auth-form div.am-row div.element input[type="text"],
    .am-auth-form div.am-row div.element input[type="password"],
    .am-auth-form div.am-row div.element input[type="email"] {
        background-position: 15px center !important;
        padding: 12px 16px 12px 45px !important;
    }
}

@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;
    }
}

/* ATUALIZADO: Popup com nova cor */
.am-popup {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-popup::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.am-popup .am-popup-header {
    background: var(--ap-hover);
    color: var(--ap-button-text);
    position: relative;
    z-index: 1;
}

.am-popup .am-popup-close-icon:after {
    color: var(--ap-text-primary);
}

.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: var(--ap-link);
}

.am-signup-link a {
    color: var(--ap-link) !important;
    text-decoration: none;
    position: relative;
}

.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;
    }
}

/* ATUALIZADO: Sidebar com nova cor */
.am-login-layout-with-sidebar .am-login-layout-with-sidebar_sidebar {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    padding: 1em 2em;
    max-width: 450px;
    box-sizing: border-box;
    box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3);
    color: var(--ap-text-tertiary);
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-login-layout-with-sidebar .am-login-layout-with-sidebar_sidebar::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.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(--ap-hover);
}

ul.am-tabs li.active > a,
ul.am-tabs li.normal > a:hover {
    border-color: var(--ap-hover);
    color: var(--ap-button-text);
}

/* ATUALIZADO: Tabs dropdown com nova cor */
ul.am-tabs .has-children ul {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
    border-radius: 20px;
    position: relative;
    overflow: hidden;
}

ul.am-tabs .has-children ul::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

/* ATUALIZADO: Tabs com nova cor */
ul.am-tabs {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

ul.am-tabs::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

ul.am-tabs > li {
    background: transparent;
    position: relative;
    z-index: 1;
}

ul.am-tabs a {
    border-right: 1px solid var(--ap-border);
    color: var(--ap-button-text);
    transition: all 0.3s ease;
}

/* ATUALIZADO: Hover das tabs com nova cor */
ul.am-tabs a:hover {
    background: var(--ap-hover);
}

/* ATUALIZADO: Account toolbar mobile */
@media all and (max-width:500px) {
    .am-account-toolbar .am-account-toolbar-items {
        background: var(--ap-container);
        backdrop-filter: blur(20px);
        border: none;
        border-radius: 20px;
        position: relative;
        overflow: hidden;
    }
    
    .am-account-toolbar .am-account-toolbar-items::before {
        content: "";
        position: absolute;
        inset: 0;
        background: var(--ap-container);
        z-index: -1;
    }
}

/* ATUALIZADO: Active invoice com nova cor */
.am-active-invoice {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-active-invoice::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.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: var(--ap-text-primary);
}

/* ATUALIZADO: Form com nova cor */
.am-form form {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-form form::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: 0;
    pointer-events: none;
}

.am-form form > * {
    position: relative;
    z-index: 1;
}

/* ATUALIZADO: Form sidebar com nova cor */
.am-form-container .am-form-sidebar-sidebar {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    box-shadow: none;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-form-container .am-form-sidebar-sidebar::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.am-form fieldset legend {
    background: none;
    border-bottom: 1px solid var(--ap-border);
    color: var(--ap-text-primary);
}

/* AJUSTADO: Inputs, textareas, selects e botões com cores personalizadas */
.am-body-content input,
.am-body-content textarea,
.am-body-content select,
.am-popup input,
.am-popup textarea,
.am-popup select {
    font-family: var(--am_font_family), san-serif;
    color: var(--ap-input-text);
    background: var(--ap-input-bg);
}

/* AJUSTADO: Botões principais com cores personalizadas */
.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"] {
    color: var(--ap-button-text) !important;
    background: var(--ap-button-bg) !important;
    border-radius: 25px;
    border: 2px solid var(--ap-button-bg);
    padding: 12px 24px;
    font-weight: 500;
    transition: all 0.3s ease;
    cursor: pointer;
}

.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 {
    background: var(--ap-hover) !important;
    border: 1px solid var(--ap-border);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(61, 61, 61, 0.3);
}

/* Botões de sucesso/verde */
.am-body-content a.button.success,
.am-body-content button.success,
.am-body-content input[type="button"].success,
.am-body-content input[type="submit"].success {
    background: var(--ap-green);
    border-color: var(--ap-green);
}

.am-body-content a.button.success:hover,
.am-body-content button.success:hover,
.am-body-content input[type="button"].success:hover,
.am-body-content input[type="submit"].success:hover {
    background: var(--ap-green);
    border: 1px solid var(--ap-border);
}

/* Botões de alerta/laranja */
.am-body-content a.button.warning,
.am-body-content button.warning,
.am-body-content input[type="button"].warning,
.am-body-content input[type="submit"].warning {
    background: var(--ap-orange);
    border-color: var(--ap-orange);
}

.am-body-content a.button.warning:hover,
.am-body-content button.warning:hover,
.am-body-content input[type="button"].warning:hover,
.am-body-content input[type="submit"].warning:hover {
    background: var(--ap-orange);
    border: 1px solid var(--ap-border);
}

/* Botões de erro/vermelho */
.am-body-content a.button.error,
.am-body-content button.error,
.am-body-content input[type="button"].error,
.am-body-content input[type="submit"].error {
    background: var(--ap-red);
    border-color: var(--ap-red);
}

.am-body-content a.button.error:hover,
.am-body-content button.error:hover,
.am-body-content input[type="button"].error:hover,
.am-body-content input[type="submit"].error:hover {
    background: var(--ap-red);
    border: 1px solid var(--ap-border);
}

.upload-control .upload-control-upload.upload-control-upload-single {
    border-radius: 25px;
    color: var(--ap-button-text);
    background: var(--ap-button-bg);
    border: 2px solid var(--ap-button-bg);
    text-shadow: none;
    transition: all 0.3s ease;
}

.upload-control .upload-control-upload.upload-control-upload-single:hover {
    background: var(--ap-button-bg);
    border: 1px solid var(--ap-border);
    transform: translateY(-2px);
}

/* AJUSTADO: Input file com nova cor */
.input-file,
.input-file.hover {
    background: var(--ap-input-bg);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 8px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.input-file::before,
.input-file.hover::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-input-bg);
    z-index: -1;
}

.input-file .input-file-button,
.input-file.hover .input-file-button {
    border-radius: 0 8px 8px 0;
    color: var(--ap-button-text);
    background: var(--ap-button-bg);
    border: none;
    text-shadow: none;
    position: relative;
    z-index: 1;
}

.am-cta-signup {
    font-size: 1.2rem;
    padding: 0.5em 2.5em;
}

.am-pass-indicator-bar {
    background: var(--ap-text-tertiary);
}

/* Radio buttons customizados */
.am-form input[type=radio] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0 .2em 0 0;
    width: 1em;
    height: 1em;
    border: 2px solid var(--ap-border);
    background-color: var(--ap-input-bg);
    outline: 0;
    font-size: inherit;
    vertical-align: middle;
    cursor: pointer;
    border-radius: 50%;
    box-sizing: border-box;
    transition: all 0.3s ease;
}

.am-form input[type=radio]:checked {
    border-color: var(--ap-accent);
    border-width: .3em;
    background-color: var(--ap-container);
}

.am-form input[type=radio]:hover {
    border-color: var(--ap-accent);
}

/* Checkboxes customizados */
.am-form input[type=checkbox] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0 .2em 0 0;
    width: 1em;
    height: 1em;
    border: 2px solid var(--ap-border);
    background-color: var(--ap-input-bg);
    outline: 0;
    font-size: inherit;
    vertical-align: middle;
    cursor: pointer;
    border-radius: 4px;
    box-sizing: border-box;
    transition: all 0.3s ease;
}

.am-form input[type=checkbox]:checked {
    background-color: var(--ap-accent);
    border-color: var(--ap-accent);
    background-image: var(--am_checkmark_background_image);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
}

.am-form input[type=checkbox]:hover {
    border-color: var(--ap-accent);
}

/* AJUSTADO: Inputs de texto com cores personalizadas */
.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: var(--ap-input-text) !important;
    border: 2px solid var(--ap-border);
    background-color: var(--ap-input-bg) !important;
    border-radius: 8px;
    padding: 12px 16px;
    transition: all 0.3s ease;
}

/* NOVO: APENAS inputs de texto/email/senha desabilitados (não botões) */
.am-body-content input[type="text"]:disabled,
.am-body-content input[type="password"]:disabled,
.am-body-content input[type="email"]:disabled,
.am-body-content textarea:disabled,
.am-body-content select:disabled,
.am-body-content input[type="text"]:read-only,
.am-body-content input[type="password"]:read-only,
.am-body-content input[type="email"]:read-only,
.am-body-content textarea:read-only,
.am-popup input[type="text"]:disabled,
.am-popup input[type="password"]:disabled,
.am-popup input[type="email"]:disabled,
.am-popup textarea:disabled,
.am-popup select:disabled,
.am-popup input[type="text"]:read-only,
.am-popup input[type="password"]:read-only,
.am-popup input[type="email"]:read-only,
.am-popup textarea:read-only {
    background-color: var(--ap-input-bg) !important;
    color: var(--ap-input-text) !important;
    border: 2px solid var(--ap-border) !important;
    opacity: 0.7;
    cursor: not-allowed;
}

/* NOVO: Formulários de autenticação - APENAS inputs de texto desabilitados */
.am-auth-form input[type="text"]:disabled,
.am-auth-form input[type="password"]:disabled,
.am-auth-form input[type="email"]:disabled,
.am-auth-form input[type="text"]:read-only,
.am-auth-form input[type="password"]:read-only,
.am-auth-form input[type="email"]:read-only {
    background-color: var(--ap-input-bg) !important;
    color: var(--ap-input-text) !important;
    border: 2px solid var(--ap-border) !important;
    opacity: 0.7;
    cursor: not-allowed;
}

.am-body-content select,
.am-popup select {
    height: auto;
}

/* AJUSTADO: Placeholders com cores personalizadas */
.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 {
    opacity: .5;
    color: var(--ap-input-text) !important;
    background-color: var(--ap-input-bg) !important;
}

/* NOVO: Placeholders APENAS em campos de texto desabilitados */
.am-body-content input[type="text"]:disabled::placeholder,
.am-body-content input[type="password"]:disabled::placeholder,
.am-body-content input[type="email"]:disabled::placeholder,
.am-body-content textarea:disabled::placeholder,
.am-body-content input[type="text"]:read-only::placeholder,
.am-body-content input[type="password"]:read-only::placeholder,
.am-body-content input[type="email"]:read-only::placeholder,
.am-body-content textarea:read-only::placeholder,
.am-popup input[type="text"]:disabled::placeholder,
.am-popup input[type="password"]:disabled::placeholder,
.am-popup input[type="email"]:disabled::placeholder,
.am-popup textarea:disabled::placeholder,
.am-popup input[type="text"]:read-only::placeholder,
.am-popup input[type="password"]:read-only::placeholder,
.am-popup input[type="email"]:read-only::placeholder,
.am-popup textarea:read-only::placeholder {
    color: var(--ap-input-text) !important;
    background-color: var(--ap-input-bg) !important;
    opacity: 0.5;
}

.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(111, 168, 255, 0.2) !important;
    border-color: var(--ap-accent);
    background-color: var(--ap-input-bg) !important;
    outline: none;
}

.am-popup {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border-radius: 20px;
}

.am-popup .am-form form {
    background: none;
}

/* ATUALIZADO: Block com nova cor */
.am-block {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    box-shadow: none;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-block::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.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;
    }
}

/* ATUALIZADO: Grid container APENAS COM BORDA - SEM BACKGROUND */
.am-grid-container {
    box-shadow: none;
    background: transparent;
    border: 1px solid var(--ap-border);
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-grid th,
.am-grid th:last-child {
    background: var(--ap-container);
    border: none;
    color: var(--ap-text-primary) !important;
    position: relative;
    z-index: 1;
}

.am-grid th,
.am-grid th a {
    color: var(--ap-text-primary) !important;
}

.am-grid th a.sorted-asc,
.am-grid th a.sorted-desc {
    color: var(--ap-accent);
}

.am-grid tr.am-grid-row > td {
    background: var(--ap-background);
    border-bottom: 1px solid var(--ap-border);
    color: var(--ap-text-tertiary) !important;
    position: relative;
    z-index: 1;
}

.am-grid tr.am-grid-row.odd td {
    background-color: var(--ap-container);
}

/* ATUALIZADO: Grid row hover com nova cor de preenchimento */
.am-grid tr.am-grid-row:hover td {
    background-color: var(--ap-hover-fill);
    color: var(--ap-text-primary) !important;
}

/* ATUALIZADO: Filter wrap APENAS COM BORDA - SEM BACKGROUND */
.am-filter-wrap {
    background: transparent;
    border: 1px solid var(--ap-border);
    color: var(--ap-text-primary) !important;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.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: var(--ap-input-bg) !important;
    color: var(--ap-input-text) !important;
    border: 1px solid var(--ap-border);
    position: relative;
    z-index: 1;
}

.am-filter-wrap .filter-button input.gridFilterButton {
    border: none;
}

.am-filter-wrap form.filter input[type="text"] {
    background-color: var(--ap-input-bg) !important;
}

.am-filter-wrap .filter-button input[type="submit"]:hover,
.am-filter-wrap .filter-button input[type="submit"]:active {
    background-color: var(--ap-accent);
}

/* AJUSTADO: Input filter wrapper com nova cor */
.am-input-filter-wrapper {
    background: var(--ap-input-bg);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 8px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-input-filter-wrapper::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-input-bg);
    z-index: -1;
}

.am-input-filter-wrapper.am-input-filter-wrapper_focus {
    box-shadow: 0 0 0 3px rgba(111, 168, 255, 0.2);
    background: var(--ap-input-bg);
}

.am-input-filter-wrapper .am-input-filter-inner-wrapper {
    background-color: var(--ap-input-bg);
    position: relative;
    z-index: 1;
    color: var(--ap-input-text);
}

.am-input-filter-wrapper input[type=text].am-input-filter:focus {
    box-shadow: none !important;
    background-color: var(--ap-input-bg);
    color: var(--ap-input-text);
}

/* Navegação */
.am-tabs-narrow-dashboard::before,
.am-tabs-narrow-switch::before,
.am-lang-choice .am-lang-val-code {
    color: var(--ap-text-tertiary);
}

/* Mensagens de erro */
div.am-errors ul, ul.am-error, ul.am-errors {
    background: rgba(255, 76, 76, 0.1);
    border: 1px solid rgba(255, 76, 76, 0.3);
    border-radius: 8px;
    color: var(--ap-red);
}

/* Mensagens de sucesso */
div.am-success ul, ul.am-success, .am-success {
    background: rgba(62, 220, 129, 0.1);
    border: 1px solid rgba(62, 220, 129, 0.3);
    border-radius: 8px;
    color: var(--ap-green);
}

/* Mensagens de aviso */
div.am-warning ul, ul.am-warning, .am-warning {
    background: rgba(255, 183, 77, 0.1);
    border: 1px solid rgba(255, 183, 77, 0.3);
    border-radius: 8px;
    color: var(--ap-orange);
}

/* ATUALIZADO: Receipt com nova cor */
.am-receipt {
    box-shadow: none;
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-receipt::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.am-receipt td {
    background: none;
    border: none;
    color: var(--ap-text-tertiary);
    position: relative;
    z-index: 1;
}

/* ATUALIZADO: Receipt total hover com nova cor */
.am-receipt td.am-receipt-total {
    background: var(--ap-hover-fill);
    font-weight: 600;
    color: var(--ap-text-primary) !important;
}

.am-invoice-summary .am-invoice-summary-item {
    border-bottom: 1px solid var(--ap-border);
}

/* Botões desabilitados */
.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: 2px solid var(--ap-border);
    color: var(--ap-text-tertiary);
    background: var(--ap-background);
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.am-flash-content-lock {
    background-color: var(--ap-accent);
    color: white;
    border: none;
    border-radius: 8px;
}

.am-flash-mask {
    background: rgba(18, 18, 18, 0.8);
}

/* Stripe Elements */
.am-form .StripeElement {
    box-sizing: border-box;
    padding: 12px 16px;
    border: 2px solid var(--ap-border);
    border-radius: 8px;
    background-color: var(--ap-input-bg);
    color: var(--ap-input-text);
}

.am-form .StripeElement--focus {
    background-color: var(--ap-input-bg);
    box-shadow: 0 0 0 3px rgba(111, 168, 255, 0.2) !important;
    border-color: var(--ap-accent);
}

.am-invoice-summary .am-invoice-summary-item-num {
    color: var(--ap-text-tertiary);
}

/* ATUALIZADO: Invoice summary com nova cor */
.am-invoice-summary {
    box-shadow: none;
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-invoice-summary::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.am-common hr,
.am-invoice-summary tr.am-invoice-summary-delimeter hr {
    background: var(--ap-border);
    border: none;
    height: 1px;
}

/* ATUALIZADO: Block nodata APENAS COM BORDA - SEM BACKGROUND */
.am-block-nodata {
    background: transparent;
    border: 1px solid var(--ap-border);
    color: var(--ap-text-tertiary);
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

/* === HELPDESK === */
/* ATUALIZADO: Message outbound com nova cor de hover */
.am-helpdesk-message.am-helpdesk-message-outbound {
    background: var(--ap-hover-fill);
    border-radius: 20px;
}

/* ATUALIZADO: Helpdesk message com nova cor */
.am-helpdesk-message {
    box-shadow: none;
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-helpdesk-message::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.am-helpdesk-message:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

/* ATUALIZADO: Ticket actions container com nova cor */
.am-helpdesk-ticket-actions-container {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-helpdesk-ticket-actions-container::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.am-helpdesk-ticket-actions-container:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

/* ATUALIZADO: Reply panel com nova cor */
.am-helpdesk-reply-panel {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-helpdesk-reply-panel::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.am-helpdesk-reply-panel:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.am-helpdesk-ticket-action.am-helpdesk-action-active {
    background-color: var(--ap-accent);
    color: white;
}

.am-helpdesk-reply-panel-content .am-form div.am-row.am-no-label .am-element textarea:focus {
    background: var(--ap-input-bg);
    box-shadow: 0 0 0 3px rgba(111, 168, 255, 0.2) !important;
    border-color: var(--ap-accent);
}

/* ATUALIZADO: Message inbound com nova cor */
.am-helpdesk-message.am-helpdesk-message-inbound {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
}

.am-helpdesk-message-action.am-helpdesk-action-active {
    background: var(--ap-accent);
    color: white;
}

/* === AFFILIATE === */
/* ATUALIZADO: Banner preview com nova cor */
.am-aff-banner-preview {
    box-shadow: none;
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.am-aff-banner-preview::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

/* ATUALIZADO: Copy highlight com nova cor */
.am-copy-to-clipboard-highlight {
    background: var(--ap-hover-fill);
    border-radius: 4px;
}

.am-aff-banner-preview-info textarea,
.am-aff-banner-preview-info textarea:focus {
    border-radius: 8px;
    box-shadow: none;
    background: var(--ap-input-bg);
    color: var(--ap-input-text);
    border: 2px solid var(--ap-border);
    position: relative;
    z-index: 1;
}

.am-aff-banner-preview-info textarea:focus {
    border-color: var(--ap-accent);
    box-shadow: 0 0 0 3px rgba(111, 168, 255, 0.2);
}

/* === 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: var(--ap-background);
    border-radius: 8px;
}

.am-cart .am-cart-product .am-cart-product-content-terms {
    font-weight: normal;
    color: var(--ap-text-tertiary) !important;
}

/* ATUALIZADO: Cart product com nova cor */
.am-cart .am-cart-product.am-cart-product-brief,
.am-cart .am-cart-product.am-cart-product-brief:hover {
    box-shadow: none !important;
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
    overflow: hidden;
}

.am-cart .am-cart-product.am-cart-product-brief::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.am-cart .am-cart-product.am-cart-product-brief:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15) !important;
}

.am-cart .am-cart-product .am-cart-product-content-add-container {
    background: var(--ap-background);
    border-radius: 8px;
}

.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: 25px;
    padding: 0.4em 0.5em;
}

/* ATUALIZADO: Cart basket com nova cor */
#cart-basket {
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

#cart-basket::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

#cart-basket:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.am-basket .am-basket-img {
    border: 1px solid var(--ap-border);
    border-radius: 8px;
}

.am-basket-preview-item {
    color: var(--ap-text-tertiary) !important;
    position: relative;
    z-index: 1;
}

.am-common .am-basket-preview-item-remove a {
    color: var(--ap-accent);
}

/* ATUALIZADO: Basket row head com nova cor */
.am-basket .am-basket-row-head {
    border-bottom: 2px solid var(--ap-border);
    background: var(--ap-hover-fill);
    position: relative;
    z-index: 1;
}

.am-basket .am-basket-row {
    border-bottom: 1px solid var(--ap-border);
    position: relative;
    z-index: 1;
}

.am-cart-qty-el {
    border: 1px solid var(--ap-accent);
    border-radius: 8px;
}

.am-body-content .am-cart-qty-el input[type="text"].am-cart-qty-el-val:focus {
    box-shadow: 0 0 0 3px rgba(111, 168, 255, 0.2) !important;
}

.am-cart-checkout .am-cart-checkout-paysys {
    border-top: 1px solid var(--ap-border);
}

.am-cart-checkout .am-cart-checkout-paysys .am-cart-checkout-paysys-item {
    border-bottom: 1px solid var(--ap-border);
    transition: all 0.3s ease;
}

.am-cart-checkout .am-cart-checkout-c {
    border-bottom: 1px solid var(--ap-border);
}

/* ATUALIZADO: Cart checkout active e hover com novas cores */
.am-cart-checkout .am-cart-checkout-paysys div.active {
    background-color: var(--ap-hover-fill);
    border-left: 1px solid var(--ap-accent);
    border-right: 1px solid var(--ap-accent);
}

.am-cart-checkout .am-cart-checkout-paysys div:hover {
    background-color: var(--ap-hover-fill);
}

/* === SELF SERVICE === */
/* ATUALIZADO: SS Product com nova cor */
.am-ss-product {
    box-shadow: none;
    background: var(--ap-container);
    backdrop-filter: blur(20px);
    border: none;
    border-radius: 20px;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
    overflow: hidden;
}

.am-ss-product::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--ap-container);
    z-index: -1;
}

.am-ss-product-add-container {
    background: var(--ap-background);
    border-radius: 8px;
    position: relative;
    z-index: 1;
}

#EmailCode {
    color: var(--ap-text-primary) !important;
}

/* NOVO: Campos específicos com email pré-preenchido */
input[type="text"][value]:disabled,
input[type="email"][value]:disabled,
input[type="text"][value]:read-only,
input[type="email"][value]:read-only {
    background-color: var(--ap-input-bg) !important;
    color: var(--ap-input-text) !important;
    border: 2px solid var(--ap-border) !important;
    opacity: 0.7;
    cursor: not-allowed;
}

/* === SCROLLBARS === */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: var(--ap-background);
}

::-webkit-scrollbar-thumb {
    background: var(--ap-accent);
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: rgba(111, 168, 255, 0.8);
}

/* === ANIMAÇÕES E TRANSIÇÕES === */
* {
    transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
}

/* === MELHORIAS VISUAIS === */
.am-form {
    backdrop-filter: blur(10px);
}

.am-popup {
    backdrop-filter: blur(20px);
}

/* Links com hover suave */
a {
    transition: all 0.3s ease;
}

a:hover {
    text-decoration: none;
}

/* Foco visível para acessibilidade */
button:focus,
input:focus,
select:focus,
textarea:focus {
    outline: 2px solid var(--ap-accent);
    outline-offset: 2px;
}

/* Garantir que todos os elementos dentro dos containers tenham z-index correto */
.am-block > *,
.am-form form > *,
.am-popup > *,
.am-grid-container > *,
.am-filter-wrap > *,
.am-receipt > *,
.am-invoice-summary > *,
.am-helpdesk-message > *,
.am-helpdesk-ticket-actions-container > *,
.am-helpdesk-reply-panel > *,
.am-aff-banner-preview > *,
#cart-basket > *,
.am-ss-product > *,
.am-active-invoice > *,
.am-block-nodata > *,
.am-input-filter-wrapper > *,
.am-form-container .am-form-sidebar-sidebar > *,
.am-login-layout-with-sidebar .am-login-layout-with-sidebar_sidebar > * {
    position: relative;
    z-index: 1;
}

/* === CORES DE DESTAQUE ESPECÍFICAS === */
/* Status de sucesso */
.success, .am-success {
    color: var(--ap-green) !important;
}

/* Status de aviso */
.warning, .am-warning {
    color: var(--ap-orange) !important;
}

/* Status de erro */
.error, .am-error {
    color: var(--ap-red) !important;
}

/* Links especiais */
.purple-link {
    color: var(--ap-purple) !important;
}

/* Status amarelo */
.yellow, .am-yellow {
    color: var(--ap-yellow) !important;
}

/* AJUSTADO: Títulos principais sempre #F2F2F2 */
h1, h2, h3, legend, .am-grid th {
    color: var(--ap-text-primary) !important;
}

/* AJUSTADO: Subtítulos sempre #F2F2F2 */
h4, h5, h6, .subtitle {
    color: var(--ap-text-primary) !important;
}

/* AJUSTADO: Texto descritivo sempre #A8A8A8 */
p, span, .description, .am-grid td {
    color: var(--ap-text-tertiary) !important;
}

/* ATUALIZADO: Listas com novo hover de preenchimento (exceto botões) */
ul li:hover, ol li:hover, .am-grid tr:hover {
    background-color: var(--ap-hover-fill) !important;
}

/* === ELEMENTOS DE TABELA ESPECIAIS === */
/* Cabeçalhos de tabela sempre com background */
.am-grid thead th,
.am-grid thead td,
table thead th,
table thead td {
    background: var(--ap-container) !important;
    color: var(--ap-text-primary) !important;
}

/* Linhas de tabela alternadas */
.am-grid tbody tr:nth-child(even) td,
table tbody tr:nth-child(even) td {
    background: var(--ap-container) !important;
}

.am-grid tbody tr:nth-child(odd) td,
table tbody tr:nth-child(odd) td {
    background: var(--ap-background) !important;
}

/* === ELEMENTOS DE NAVEGAÇÃO === */
/* Breadcrumbs */
.am-breadcrumb {
    color: var(--ap-text-tertiary);
}

.am-breadcrumb a {
    color: var(--ap-blue) !important;
}

.am-breadcrumb .separator {
    color: var(--ap-border);
}

/* Paginação */
.am-pagination {
    border: 1px solid var(--ap-border);
    border-radius: 8px;
    background: transparent;
}

.am-pagination a,
.am-pagination span {
    color: var(--ap-text-primary);
    border-right: 1px solid var(--ap-border);
}

.am-pagination a:hover {
    background: var(--ap-hover-fill);
    color: var(--ap-text-primary);
}

.am-pagination .current {
    background: var(--ap-accent);
    color: white;
}

/* === ELEMENTOS DE FORMULÁRIO AVANÇADOS === */
/* Select2 Customization */
.select2-container--default .select2-selection--single {
    background-color: var(--ap-input-bg) !important;
    border: 2px solid var(--ap-border) !important;
    border-radius: 8px !important;
    color: var(--ap-input-text) !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--ap-input-text) !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    border-color: var(--ap-border) transparent transparent transparent;
}

.select2-dropdown {
    background-color: var(--ap-container) !important;
    border: 1px solid var(--ap-border) !important;
    border-radius: 8px !important;
}

.select2-container--default .select2-results__option {
    background-color: var(--ap-container) !important;
    color: var(--ap-text-primary) !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: var(--ap-hover-fill) !important;
    color: var(--ap-text-primary) !important;
}

.select2-container--default .select2-results__option[aria-selected=true] {
    background-color: var(--ap-accent) !important;
    color: white !important;
}

/* Datepicker Customization */
.ui-datepicker {
    background: var(--ap-container) !important;
    border: 1px solid var(--ap-border) !important;
    border-radius: 8px !important;
    color: var(--ap-text-primary) !important;
}

.ui-datepicker .ui-datepicker-header {
    background: var(--ap-accent) !important;
    color: white !important;
    border: none !important;
}

.ui-datepicker .ui-datepicker-calendar td {
    background: var(--ap-container) !important;
    border: 1px solid var(--ap-border) !important;
}

.ui-datepicker .ui-datepicker-calendar td a {
    color: var(--ap-text-primary) !important;
    background: transparent !important;
}

.ui-datepicker .ui-datepicker-calendar td a:hover {
    background: var(--ap-hover-fill) !important;
    color: var(--ap-text-primary) !important;
}

.ui-datepicker .ui-datepicker-calendar td.ui-datepicker-today a {
    background: var(--ap-accent) !important;
    color: white !important;
}

/* === ELEMENTOS DE DASHBOARD === */
/* Widget cards específicos do dashboard */
.dashboard-widget {
    background: var(--ap-container);
    border: none;
    border-radius: 20px;
    padding: 1.5rem;
    transition: all 0.3s ease;
}

.dashboard-widget:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.dashboard-widget h3 {
    color: var(--ap-text-primary) !important;
    margin-bottom: 1rem;
}

.dashboard-widget p {
    color: var(--ap-text-tertiary) !important;
}

/* Stats cards */
.stats-card {
    background: var(--ap-container);
    border: none;
    border-radius: 16px;
    padding: 1.5rem;
    text-align: center;
    transition: all 0.3s ease;
}

.stats-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.stats-card .stats-number {
    font-size: 2rem;
    font-weight: bold;
    color: var(--ap-text-primary) !important;
    margin-bottom: 0.5rem;
}

.stats-card .stats-label {
    color: var(--ap-text-tertiary) !important;
    font-size: 0.9rem;
}

/* === RESPONSIVIDADE APRIMORADA === */
@media (max-width: 768px) {
    .am-grid-container {
        border-radius: 12px;
    }
    
    .am-block {
        border-radius: 12px;
        margin-bottom: 1rem;
    }
    
    .am-form form {
        border-radius: 12px;
        padding: 1rem;
    }
    
    .dashboard-widget,
    .stats-card {
        border-radius: 12px;
        padding: 1rem;
        margin-bottom: 1rem;
    }
}

@media (max-width: 480px) {
    .am-grid-container,
    .am-block,
    .am-form form,
    .dashboard-widget,
    .stats-card {
        border-radius: 8px;
    }
    
    .stats-card .stats-number {
        font-size: 1.5rem;
    }
}