/* ADMIN BAR */

@media(min-width:1px) and (max-width:5768px) { 
	
	*:focus {
 		 outline: none;
	}


::root{
		--size:1px;
	}
.custom-select {
  min-width: 100%;
  position: relative;
}

body{ max-width:100vw; overflow-x:hidden; font-family: "Inter",sans-serif !important;  }
.fantasma{ pointer-events:none !important; }
.custom-select select {
  appearance: none;
  width: 100%;
  font-size: 1rem;
  padding: 0.65em 6em 0.65em 1em;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius:5px;
  color: #707070;
  cursor: pointer;
	
}

.custom-select::before,
.custom-select::after {
  --size: 0.3rem;
  content: "";
  position: absolute;
  right: 1rem;
  pointer-events: none;
}

.custom-select::before {
  border-left: var(--size) solid transparent;
  border-right: var(--size) solid transparent;
  border-bottom: var(--size) solid black;
  top: 40%;
}

.custom-select::after {
  border-left: var(--size) solid transparent;
  border-right: var(--size) solid transparent;
  border-top: var(--size) solid black;
  top: 55%;
}

.elementor-shortcode .custom-select select{ text-transform:uppercase !important; }
.custom-input::placeholder{ color:#ccc; }
.custom-input{ 
  width: 100%;
  font-size: 1rem;
  padding: 0.65em 6em 0.65em 1em !important;
  background-color: #F5F5F5;
  border: 0 !important;
  border-radius:5rem !important;
  color: #707070;
  cursor: pointer;
}

	@media(max-width:768px){

		.woocommerce-form.woocommerce-form-login.login{
			padding:1rem !important;		
		}

		.woocommerce .woocommerce-ResetPassword {
			padding: 1rem !important;
		}
		
	}



/* site */


/* GERAR ROTEIRO */

    #gpt-formulario-wrapper h3{ margin:0rem 0 2rem 0 !important; color:#000; border-bottom:1px solid #ccc; padding-bottom:.75rem; font-family:Inter, sans-serif; }
    
    .form-grid {
        display: flex;
        flex-wrap: wrap;
        gap: 1rem;
        margin-bottom: 1rem;
    }

    .form-grid .form-row {
        flex: 1 1 100%;
    }

    .form-section{ position:sticky; top:50px; background:#f9f9f9; padding:2rem; margin-bottom:2rem; border:1px solid #f0f0f0; box-shadow:0 20px 25px -20px rgba(0,0,0,.05);  min-height:500px; margin-bottom:5rem; font-family:Inter, sans-serif; }
    @media(max-width:780px){
		.form-section{ position:initial !important; top:initial !important; margin-bottom:0; border=bottom:1px solid #eee;  }
	}
    .form-section:nth-child(0){ top:50px; z-index:1; }
    .form-section:nth-child(1){ top:100px; z-index:2; }
    .form-section:nth-child(2){ top:110px; z-index:3; }
    .form-section:nth-child(3){ top:120px; z-index:4; }
    .form-section:nth-child(4){ top:130px; z-index:5; }
    .form-section:nth-child(5){ top:140px; z-index:6; }
    .form-section:nth-child(6){ top:150px; z-index:7; }
    .form-section:nth-child(7){ top:160px; z-index:8; }
    .form-section:nth-child(8){ top:170px; z-index:9; }
    .form-section:nth-child(9){ top:180px; z-index:10; }
    .bar-submit{
        /*
		position: sticky;
        bottom: 0px;
        left: 0;
		*/
		position: relative;
        background: #fff;
        z-index: 99;
        width: 100%;
        text-align: center;
        padding: 1rem;
        height: auto;
        border: 1px solid #f2f2f2;
        
    }
    


    .form-grid .col-1 { flex: 1 1 100%; }
    .form-grid .col-2 { flex: 1 1 48%; }
    .form-grid .col-3 { flex: 1 1 31%; }
    .form-grid .col-4 { flex: 1 1 23%; }

    
    .form-grid label {
        display: block;
        font-weight: 600;
        margin-bottom: 4px;
        color:#003366;
        line-height: 1.5;
    }

    .form-grid input,
    .form-grid textarea {
        width: 100%;
        padding: 12px 12px !important;
        border: 1px solid #ddd !important;
        border-radius: 5px;
        font-size: 1rem;
        background: #fff; 
        font-family:Inter, sans-serif;
    }

	.form-grid input[type="checkbox"]{ width:30px !important;}
	
    .form-grid textarea {
        resize: vertical;
    }

    .form-grid .custom-select select {
        width: 100%;
        padding: 12px 10px;
        font-size: 1rem;
        
    }

    #gpt-submit-btn,.woocommerce-Button.button,.button.woocommerce-form-login__submit {
        padding: 1rem 3rem !important;
        background: #FF566B !important;
        
        color: white !important;
        border: none !important;
        border-radius: 5rem !important;
        font-weight: 500 !important;
        text-transform: uppercase !important;
        cursor: pointer !important;
        font-size: 1rem !important;
        font-family: Inter, Sans-Serif !important;
    }

	#gpt-submit-btn:hover,.woocommerce-Button.button:hover,.button.woocommerce-form-login__submit:hover {
		background:#00B3A6 !important;
	}

    #gpt-result {
        background: #f8f8f8;
        padding: 1rem;
        border-radius: 6px;
        margin-top: 1rem;
    }
	.content-result,#gpt-loading{ display:none; }
    #gpt-prompt-form{ padding:0;} 
    #gpt-prompt-form form{ padding:0;} 



    #gpt-result{ xposition:fixed; background:#fff; padding:2rem; }
    #gpt-loading{ padding:2rem; text-align:center; display:none; align-items:center; 
    min-height:400px; justify-content:center; flex-direction:column; gap:1rem; color:#909090; }
    .content-result h2{ text-align:center; color:#00B3A6; }
    #gpt-resposta{ border:1px solid #eee; padding:2rem; border-radius:1rem; height:500px; max-height:500px; overflow:auto; background:white; }
    .btns-actions{ display:flex; gap:2rem; justify-content:center; margin-top:1rem; }
    .btns-actions a{ display:inline-block; border:2px solid #FF566B; padding:10px 32px; border-radius:5rem; color:#FF566B; font-size:.9rem; font-weight:500; }
    .btns-actions a:first-of-type{  }    
    .btns-actions a:last-of-type{ background:#00B3A6; border-color:#00B3A6; color:#fff; }
    .btns-actions a:hover{ background:#FF566B; color:#fff; border-color:#FF566B; }







.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme {

    margin-top: 12px;
}
.woocommerce form.login, .woocommerce form.register {

	margin-top:0 !important;
    max-width: 500px;

}

/* My Acccount */
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-MyAccount-content p:last-of-type {
  /*  display:none !important; */
}
a.gpt-novo-roteiro{ padding:.75rem 2rem !important; background:black !important; color:#fff !important; font-weight:700 !important; border-radius:5rem !important; display:inline-block; }
.custom-credits{ text-align:right; }
.custom-credits { color:#00B3A6; }
.custom-credits label{ color:#bbb; display:block; text-align:right; }
.custom-credits strong{ color:#003366; font-weight:700;  }
.custom-credits img{ position: relative; right: 2px; bottom: -4px; }

table.gpt-historico-tabela {
    margin-top: 4rem;
    padding-top: 1rem;
    display: table;
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    border-collapse: collapse;
    box-shadow: 0;
    font-family: 'Inter', sans-serif;
}

table.gpt-historico-tabela thead {
    background: initial;
}

table.gpt-historico-tabela thead tr {
    background: white !important;
    padding: 0;
    border-bottom: 1px solid #003366 !important;
    line-height: 1 !important;
}

table.gpt-historico-tabela thead tr th {
    font-size: .9rem;
    padding: 10px;
    color: #003366 !important;
    line-height: 1 !important;
    height: auto;
    vertical-align: middle;
    text-align: left;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.01em;
    transition: background-color 0.3s ease;
	padding-left: 6px !important;
}

table.gpt-historico-tabela thead tr th:first-of-type {
    border-radius: 5rem 0 0 5rem;
}

table.gpt-historico-tabela thead tr th:last-of-type {
    border-radius: 0 5rem 5rem 0;
}

table.gpt-historico-tabela tbody tr {
    transition: background-color 0.3s ease, transform 0.2s ease;
}

table.gpt-historico-tabela tbody tr:hover {
    background: #e6e6e6 !important;
}

table.gpt-historico-tabela tbody tr td {
    font-size: 0.8rem !important;
    font-weight: 300 !important;
    background: #f9f9f9 !important;
    padding: 10px;
    color: #003366 !important;
    border-bottom: 1px solid #e0e0e0 !important;
    vertical-align: middle;
    transition: color 0.3s ease;
}

table.gpt-historico-tabela tbody tr td:hover {
    color: #005588 !important;
 border-bottom: 1px solid #e0e0e0 !important;
}

/* Alternating row colors for better readability */
table.gpt-historico-tabela tbody tr:nth-child(even) td {
    background: #fafafa !important;
}

	
	
/* Assinatura */


/* Container Styling */
.woocommerce-MyAccount-content {

}

/* Tables Styling */
.shop_table {
    width: 100%;
    border-collapse: collapse;
    background-color: #fff;
    border-radius: 12px;
    margin-bottom: 30px;
    overflow: hidden;
}
table.shop_table{ border-top:0px !important; }
.shop_table th,
.shop_table td {
    padding: 8px !important;
    text-align: left;
    border-bottom: 1px solid #e9ecef;
}

.shop_table th {
    color: #003366 !important;
    font-weight: 600 !important;
    text-transform: uppercase;
    font-size: 14px;
}

.shop_table td {
    color: #003366 !important;
    font-size: 16px;
}
.shop_table .button,.woocommerce-MyAccount-content-wrapper .button,.btn-download{
    background: transparent !important;
    border-color: #003366 !important;
    border-radius: 4px !important;
    border-style: solid !important;
    border-width: 1px !important;
    color: #003366 !important;
    padding: 8px 16px !important;
    vertical-align: middle;
}

.shop_table .button:hover, .woocommerce-MyAccount-content-wrapper .button:hover,.btn-download:hover {
	background: #003366 !important;
	border-color: #fff !important;
	color:#fff !important;
}
.shop_table .button.cancel {
    background:  #003366 !important;
    border-color: #003366 !important;
    border-radius: 4px !important;
    border-style: solid !important;
    border-width: 1px !important;
    color: #fff !important;
    padding: 8px 16px !important;
    vertical-align: middle;
}

.shop_table .button.cancel:hover {
	background: transparent !important;
	border-color: #003366 !important;
	color:#003366 !important;
}


/* Specific Table Adjustments */
.subscription_details tr:last-child td,
.order_details tr:last-child td,
.my_account_orders tr:last-child td {
    border-bottom: none;
}




.woocommerce-button.button.cancel {
    background-color: #6c757d !important;
}

.woocommerce-button.button.cancel:hover {
    background-color: #5a6268 !important;
}

/* Headings */
.woocommerce-MyAccount-content h2 {
    color: #003366 !important;
    font-size: 24px;
    font-weight: 600 !important;
    margin: 40px 0 20px !important;
    position: relative;
}



/* Price and Currency Styling */
.woocommerce-Price-amount {
    color: #003366 !important;
    font-weight: 600 !important;
}

.woocommerce-Price-currencySymbol {
    font-size: 14px;
}

/* Address Section */
.woocommerce-customer-details address {
    background-color: #fff;
    padding: 20px !important;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    font-style: normal;
    color: #003366 !important;
    line-height: 1.8;
}

.woocommerce-customer-details--phone,
.woocommerce-customer-details--email {
    margin-top: 10px;
    color: #003366 !important;
}

/* Responsive Design */
@media (max-width: 768px) {
    .shop_table {
        display: block;
        overflow-x: auto;
    }

    .shop_table th,
    .shop_table td {
        padding: 15px !important;
        font-size: 14px;
    }

    .woocommerce-button.button {
        padding: 10px 20px !important;
        font-size: 14px;
    }

    .woocommerce-MyAccount-content h2 {
        font-size: 20px;
    }

    .woocommerce-MyAccount-content {
        padding: 20px 15px !important;
    }

    .woocommerce-customer-details address {
        height: auto !important;
        padding: 15px !important;
    }
}

@media (max-width: 480px) {
    .shop_table th,
    .shop_table td {
        padding: 10px !important;
        font-size: 12px;
    }

    .woocommerce-button.button {
        display: block;
        margin-bottom: 10px;
        text-align: center;
    }

   .woocommerce-MyAccount-content h2 {
        font-size: 18px;
    }
}



/* CHECK OUT */
@media (min-width: 1px) and (max-width: 5768px) {
    .e-checkout__column {
        padding: 0px !important;
    }
}
.button.wc-forward{ display:none !important; }


.elementor-widget-woocommerce-checkout-page .woocommerce-checkout #payment .payment_methods .payment_box {
    background-color: white !important;
    padding: 0 0 0 0 !important;
    border: 0 !important;
}

#wc-stripe-upe-form{ padding: 0 0 0 0 !important; border:0 !important; }

	/* Força form-row-last visualmente no checkout */
@media(min-width:800px){
		
		#billing_address_2_field {
			float: right !important;
			width: 48% !important;
			clear: none !important;
			margin-right: 0 !important;
			padding-top: 31px !important;
		}

		/* Força form-row-wide visualmente */
		#billing_neighborhood_field {
			width: 100% !important;
			clear: both !important;
			float: none !important;
		}

}

/* Media query para dispositivos móveis (1 coluna) */
@media (max-width: 768px) {
    .form-row,
    .form-row-first,
    .form-row-last,
    #billing_number_field,
    #billing_neighborhood_field,
    #billing_address_2_field {
        width: 100% !important;
        min-width: 100% !important;
    }

    .woocommerce-billing-fields__field-wrapper {
        gap: 10px !important;
    }

    .col2-set .col-1,
    .col2-set .col-2 {
        width: 100% !important;
        float: none !important;
    }
}

/* Ajuste para o contêiner principal do checkout */
.e-checkout__column {
    max-width: 100% !important;
    padding: 20px !important;
}

/* Garantindo que o layout do select2 seja responsivo */
.select2-selection__rendered {
    line-height: 40px !important;
    padding-left: 10px !important;
}

/* Melhorando a aparência do campo de observações */
#order_comments_field textarea {
    min-height: 100px !important;
}



/* Responsive adjustments */
@media (max-width: 768px) {
    table.gpt-historico-tabela {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }

    table.gpt-historico-tabela thead tr th,
    table.gpt-historico-tabela tbody tr td {
        font-size: 0.85rem !important;
        padding: 8px;
    }

    table.gpt-historico-tabela thead tr th:first-of-type,
    table.gpt-historico-tabela thead tr th:last-of-type {
        border-radius: 0;
    }
}

/* Accessibility improvements */
table.gpt-historico-tabela:focus {
    outline: 2px solid #003366 !important;
    outline-offset: 2px;
}





/* plugin translate */

.trp-language-switcher { height: auto !important; }
.elementor-shortcode .trp-ls-shortcode-current-language, .elementor-shortcode .trp-ls-shortcode-language {
    width: 80px !important;
    max-width: 80px !important;
	font-family:"Tenko", sans-serif !important; 
}
.trp-language-switcher .trp-ls-shortcode-language {
    max-height: 80px !important;
	font-family:"Tenko", sans-serif !important; 
}
.trp-language-switcher > div {
    padding:0 0 0 0 !important;
    border: 0 !important;
    border-radius: 4px !important;
    background-repeat: no-repeat !important;
    background-position: calc(100% - 20px) calc(1em + 1px), calc(100% - 5px) calc(1em + 0px) !important;
    background-size: 8px 8px, 8px 8px  !important;
    background-repeat: no-repeat  !important;
    background-color: #fff  !important;
    font-family:Tenko, sans-serif !important; 
	
}

.trp-language-switcher > div > a.trp-ls-shortcode-disabled-language,.trp-language-switcher > div > a {
   font-family:"Tenko", sans-serif !important; 
}

.trp-language-switcher > div > a {  padding: 7px 12px !important; }

.trp-language-switcher > div { background-color: white !important; }

@media screen and (max-width: 782px) {
    #trp-floater-ls.trp-top-right, #trp-floater-ls.trp-top-left {
        top: 116px !important;
        right: 40px !important;
        box-shadow: 0 2px 3px rgba(0,0,0,.07) !important;
    }
}

/* @media screen and (orientation:landscape) and (max-width:1150px){
	body,html{ zoom: 80% !important;  max-width: 100% !important; width: 100% !important;  }	
	.elementor-location-header > div{  max-width: 100% !important; width: 100% !important;  }
	.elementor-location-header > div > .e-con-inner{  max-width: 100% !important; width: 100% !important;  }
}
 @media screen and (orientation:landscape) and (max-width:780px){
	body,html{ zoom: 60% !important; max-width: 100% !important; width: 100% !important;  }	
	.elementor-location-header > div{  max-width: 100% !important; width: 100% !important;  }
	.elementor-location-header > div > .e-con-inner{  max-width: 100% !important; width: 100% !important;  }
	 
} */
@media screen and (min-width: 783px) {

	#trp-floater-ls.trp-top-right,#trp-floater-ls.trp-top-left {
		top: 0 !important;
	}
	#trp-floater-ls.trp-top-right {
		bottom: auto;
		top: 0 !important;
		right: 20px !important;
	}
	
}
#trp-floater-ls.trp-color-light {
    background: #f2f2f2 !important;
}