/*
 * LEO Commerce UI — Minha Conta v0.1 SAFE
 * v0.5.6.10
 * Somente acabamento visual do markup nativo WooCommerce.
 */

body.woocommerce-account,
body.woocommerce-account #main,
body.woocommerce-account .site-main,
body.woocommerce-account .content-area,
body.woocommerce-account .site-content {
	background: #f4f5f6 !important;
}

body.woocommerce-account .woocommerce {
	width: 100%;
	max-width: 1120px;
	margin-left: auto;
	margin-right: auto;
}

/* Mensagens nativas do Woo continuam sendo a fonte de verdade. */
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error {
	margin: 0 0 18px !important;
	padding: 15px 18px !important;
	background: #fff !important;
	border: 1px solid #e1e4e8 !important;
	border-radius: 10px !important;
	box-sizing: border-box !important;
}

/* =========================================================
   LOGIN / CADASTRO / RECUPERAR SENHA
   ========================================================= */
body.woocommerce-account .u-columns.col2-set,
body.woocommerce-account .col2-set#customer_login {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px !important;
	width: 100% !important;
}

body.woocommerce-account .u-columns.col2-set > .u-column1,
body.woocommerce-account .u-columns.col2-set > .u-column2,
body.woocommerce-account #customer_login > .u-column1,
body.woocommerce-account #customer_login > .u-column2 {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.woocommerce-account form.woocommerce-form-login,
body.woocommerce-account form.woocommerce-form-register,
body.woocommerce-account form.lost_reset_password,
body.woocommerce-account form.woocommerce-ResetPassword,
body.woocommerce-account form.woocommerce-EditAccountForm,
body.woocommerce-account form.woocommerce-address-fields {
	margin: 0 !important;
	padding: 22px !important;
	background: #fff !important;
	border: 1px solid #e1e4e8 !important;
	border-radius: 12px !important;
	box-sizing: border-box !important;
}

body.woocommerce-account #customer_login h2,
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3 {
	margin-top: 0 !important;
	color: #111 !important;
}

body.woocommerce-account .form-row label,
body.woocommerce-account .woocommerce-form-row label {
	font-weight: 600 !important;
	line-height: 1.35 !important;
}

body.woocommerce-account input.input-text,
body.woocommerce-account input[type="text"],
body.woocommerce-account input[type="email"],
body.woocommerce-account input[type="password"],
body.woocommerce-account input[type="tel"],
body.woocommerce-account select,
body.woocommerce-account textarea {
	width: 100% !important;
	min-height: 46px !important;
	padding: 10px 13px !important;
	border: 1px solid #d7dce1 !important;
	border-radius: 8px !important;
	background: #fff !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
}

body.woocommerce-account textarea {
	min-height: 110px !important;
	resize: vertical;
}

body.woocommerce-account input.input-text:focus,
body.woocommerce-account input[type="text"]:focus,
body.woocommerce-account input[type="email"]:focus,
body.woocommerce-account input[type="password"]:focus,
body.woocommerce-account input[type="tel"]:focus,
body.woocommerce-account select:focus,
body.woocommerce-account textarea:focus {
	border-color: #ffc400 !important;
	box-shadow: 0 0 0 2px rgba(255,196,0,.12) !important;
	outline: none !important;
}

body.woocommerce-account button.button,
body.woocommerce-account a.button,
body.woocommerce-account input.button {
	min-height: 44px !important;
	padding: 10px 18px !important;
	border-radius: 8px !important;
	font-weight: 700 !important;
	box-sizing: border-box !important;
}

/* =========================================================
   ÁREA LOGADA — NAVEGAÇÃO + CONTEÚDO NATIVOS
   ========================================================= */
body.woocommerce-account .woocommerce-MyAccount-navigation {
	float: left !important;
	width: 238px !important;
	margin: 0 22px 22px 0 !important;
	padding: 10px !important;
	background: #fff !important;
	border: 1px solid #e1e4e8 !important;
	border-radius: 12px !important;
	box-sizing: border-box !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li + li {
	border-top: 1px solid #eef0f2 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a {
	display: block !important;
	padding: 12px 13px !important;
	border-radius: 8px !important;
	color: #333 !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	text-decoration: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active > a {
	background: #fff8dc !important;
	color: #111 !important;
	box-shadow: inset 3px 0 0 #ffc400 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
	background: #f7f8f9 !important;
	color: #111 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content {
	float: right !important;
	width: calc(100% - 260px) !important;
	min-height: 240px;
	margin: 0 0 22px !important;
	padding: 24px !important;
	background: #fff !important;
	border: 1px solid #e1e4e8 !important;
	border-radius: 12px !important;
	box-sizing: border-box !important;
}

body.woocommerce-account .woocommerce-MyAccount-content > :first-child {
	margin-top: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-content > :last-child {
	margin-bottom: 0 !important;
}

/* =========================================================
   PEDIDOS / DETALHES DO PEDIDO
   ========================================================= */
body.woocommerce-account table.shop_table,
body.woocommerce-account table.woocommerce-orders-table,
body.woocommerce-account table.woocommerce-table--order-details {
	width: 100% !important;
	margin: 0 !important;
	border: 1px solid #eceff2 !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	border-radius: 10px !important;
	background: #fff !important;
	overflow: hidden;
}

body.woocommerce-account table.shop_table th,
body.woocommerce-account table.shop_table td,
body.woocommerce-account table.woocommerce-orders-table th,
body.woocommerce-account table.woocommerce-orders-table td,
body.woocommerce-account table.woocommerce-table--order-details th,
body.woocommerce-account table.woocommerce-table--order-details td {
	padding: 13px 12px !important;
	border: 0 !important;
	border-bottom: 1px solid #eceff2 !important;
	vertical-align: middle !important;
}

body.woocommerce-account table.shop_table thead th,
body.woocommerce-account table.woocommerce-orders-table thead th,
body.woocommerce-account table.woocommerce-table--order-details thead th {
	background: #fafafa !important;
	color: #333 !important;
	font-size: 13px !important;
	font-weight: 700 !important;
}

body.woocommerce-account table.shop_table tr:last-child th,
body.woocommerce-account table.shop_table tr:last-child td,
body.woocommerce-account table.woocommerce-orders-table tr:last-child th,
body.woocommerce-account table.woocommerce-orders-table tr:last-child td,
body.woocommerce-account table.woocommerce-table--order-details tr:last-child th,
body.woocommerce-account table.woocommerce-table--order-details tr:last-child td {
	border-bottom: 0 !important;
}

body.woocommerce-account .woocommerce-order-details,
body.woocommerce-account .woocommerce-customer-details,
body.woocommerce-account .woocommerce-order-downloads {
	margin: 20px 0 0 !important;
	padding: 20px !important;
	border: 1px solid #eceff2 !important;
	border-radius: 10px !important;
	background: #fafafa !important;
	box-sizing: border-box !important;
}

body.woocommerce-account .woocommerce-order-details__title,
body.woocommerce-account .woocommerce-column__title,
body.woocommerce-account .woocommerce-order-downloads__title {
	margin: 0 0 16px !important;
	font-size: 19px !important;
	line-height: 1.3 !important;
}

body.woocommerce-account .woocommerce-columns--addresses {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px !important;
}

body.woocommerce-account .woocommerce-columns--addresses > .woocommerce-column {
	float: none !important;
	width: 100% !important;
}

body.woocommerce-account .woocommerce-customer-details address,
body.woocommerce-account .woocommerce-Address address {
	padding: 15px !important;
	background: #fff !important;
	border: 1px solid #eceff2 !important;
	border-radius: 8px !important;
	font-style: normal !important;
	line-height: 1.65 !important;
	box-sizing: border-box !important;
}

/* =========================================================
   ENDEREÇOS
   ========================================================= */
body.woocommerce-account .woocommerce-Addresses {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px !important;
}

body.woocommerce-account .woocommerce-Addresses .woocommerce-Address {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 18px !important;
	background: #fafafa !important;
	border: 1px solid #eceff2 !important;
	border-radius: 10px !important;
	box-sizing: border-box !important;
}

body.woocommerce-account .woocommerce-Address-title {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	margin-bottom: 12px !important;
}

body.woocommerce-account .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-Address-title h3 {
	float: none !important;
	min-width: 0 !important;
	margin: 0 !important;
	font-size: 18px !important;
	line-height: 1.3 !important;
}

body.woocommerce-account .woocommerce-Address-title .edit {
	float: none !important;
	flex: 0 0 auto !important;
	margin: 0 !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	white-space: nowrap !important;
}

/* =========================================================
   TABLET
   ========================================================= */
@media (min-width: 768px) and (max-width: 1024px) {
	body.woocommerce-account .woocommerce {
		max-width: 760px;
	}

	body.woocommerce-account .woocommerce-MyAccount-navigation {
		width: 210px !important;
		margin-right: 18px !important;
	}

	body.woocommerce-account .woocommerce-MyAccount-content {
		width: calc(100% - 228px) !important;
		padding: 20px !important;
	}

	body.woocommerce-account .woocommerce-MyAccount-navigation a {
		padding: 11px 10px !important;
		font-size: 14px !important;
	}
}

/* =========================================================
   CELULAR
   ========================================================= */
@media (max-width: 767px) {
	body.woocommerce-account .ct-container,
	body.woocommerce-account .site-main > .ct-container,
	body.woocommerce-account .content-area > .ct-container {
		padding-left: 12px !important;
		padding-right: 12px !important;
	}

	body.woocommerce-account .u-columns.col2-set,
	body.woocommerce-account .col2-set#customer_login {
		grid-template-columns: 1fr !important;
	}

	body.woocommerce-account form.woocommerce-form-login,
	body.woocommerce-account form.woocommerce-form-register,
	body.woocommerce-account form.lost_reset_password,
	body.woocommerce-account form.woocommerce-ResetPassword,
	body.woocommerce-account form.woocommerce-EditAccountForm,
	body.woocommerce-account form.woocommerce-address-fields {
		padding: 18px 16px !important;
	}

	body.woocommerce-account .woocommerce-MyAccount-navigation,
	body.woocommerce-account .woocommerce-MyAccount-content {
		float: none !important;
		width: 100% !important;
	}

	body.woocommerce-account .woocommerce-MyAccount-navigation {
		margin: 0 0 14px !important;
		padding: 8px !important;
	}

	body.woocommerce-account .woocommerce-MyAccount-navigation ul {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 6px !important;
	}

	body.woocommerce-account .woocommerce-MyAccount-navigation li,
	body.woocommerce-account .woocommerce-MyAccount-navigation li + li {
		border: 0 !important;
	}

	body.woocommerce-account .woocommerce-MyAccount-navigation a {
		height: 100% !important;
		padding: 10px !important;
		background: #fafafa !important;
		border: 1px solid #eceff2 !important;
		font-size: 13px !important;
		box-sizing: border-box !important;
	}

	body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active > a {
		background: #fff8dc !important;
		border-color: #f0d56c !important;
		box-shadow: none !important;
	}

	body.woocommerce-account .woocommerce-MyAccount-content {
		padding: 18px 16px !important;
		min-height: 0;
	}

	body.woocommerce-account input.input-text,
	body.woocommerce-account input[type="text"],
	body.woocommerce-account input[type="email"],
	body.woocommerce-account input[type="password"],
	body.woocommerce-account input[type="tel"],
	body.woocommerce-account select,
	body.woocommerce-account textarea {
		font-size: 16px !important;
	}

	body.woocommerce-account .woocommerce-Addresses,
	body.woocommerce-account .woocommerce-columns--addresses {
		grid-template-columns: 1fr !important;
	}

	body.woocommerce-account .woocommerce-order-details,
	body.woocommerce-account .woocommerce-customer-details,
	body.woocommerce-account .woocommerce-order-downloads {
		padding: 16px !important;
	}

	/* Não desmonta a responsividade nativa do Woo nas tabelas de pedidos. */
	body.woocommerce-account table.shop_table th,
	body.woocommerce-account table.shop_table td,
	body.woocommerce-account table.woocommerce-orders-table th,
	body.woocommerce-account table.woocommerce-orders-table td,
	body.woocommerce-account table.woocommerce-table--order-details th,
	body.woocommerce-account table.woocommerce-table--order-details td {
		padding: 11px 8px !important;
	}
}

/* =========================================================
   v0.5.5.1 — DOWNLOADS / AVISO / FOTO DO PERFIL
   ========================================================= */

/* Alguns temas adicionam um pseudo-ícone às mensagens do Woo; nesta área ele
   sobrepunha o texto. A mensagem continua 100% nativa, apenas sem o desenho. */
body.woocommerce-account .woocommerce-message::before,
body.woocommerce-account .woocommerce-info::before,
body.woocommerce-account .woocommerce-error::before {
	display: none !important;
	content: none !important;
}

body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error {
	padding-left: 18px !important;
}

/* v0.5.6.10 — O Blocksy pode manter texto claro nos notices de erro.
   Como nossa camada usa fundo branco, travamos somente a legibilidade do erro. */
body.woocommerce-account .woocommerce-error,
body.woocommerce-account .woocommerce-error li,
body.woocommerce-account .woocommerce-error strong,
body.woocommerce-account .woocommerce-error a {
	color: #7f1d1d !important;
}

body.woocommerce-account .woocommerce-error a {
	text-decoration: underline !important;
}

body.woocommerce-account .leo-account-avatar {
	display: grid;
	grid-template-columns: 88px minmax(0, 1fr);
	gap: 18px;
	align-items: center;
	margin: 0 0 18px;
	padding: 18px;
	background: #fff;
	border: 1px solid #e1e4e8;
	border-radius: 12px;
	box-sizing: border-box;
}

body.woocommerce-account .leo-account-avatar__preview {
	width: 88px;
	height: 88px;
	overflow: hidden;
	border-radius: 50%;
	border: 2px solid #f0f1f2;
	background: #f4f5f6;
	box-sizing: border-box;
}

body.woocommerce-account .leo-account-avatar__preview img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	object-fit: cover !important;
	object-position: center !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: transparent !important;
}

/* Prévia local robusta: o JS usa o wrapper como canvas visual para não
   disputar com lazy-load/srcset do tema/cache. Nada é persistido até Salvar. */
body.woocommerce-account .leo-account-avatar__preview.is-local-preview {
	position: relative;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	border-color: #ffc400 !important;
	box-shadow: 0 0 0 3px rgba(255,196,0,.14);
}

body.woocommerce-account .leo-account-avatar__preview.is-local-preview img {
	opacity: 0 !important;
}

body.woocommerce-account .leo-account-avatar__preview.is-local-preview::after {
	content: "Prévia";
	position: absolute;
	right: 50%;
	bottom: 5px;
	transform: translateX(50%);
	padding: 2px 6px;
	border-radius: 999px;
	background: rgba(17,17,17,.82);
	color: #fff;
	font-size: 9px;
	font-weight: 700;
	line-height: 1.3;
	pointer-events: none;
}

body.woocommerce-account .leo-account-avatar__body h3 {
	margin: 0 0 4px !important;
	font-size: 18px !important;
}

body.woocommerce-account .leo-account-avatar__body > p {
	margin: 0 0 12px !important;
	color: #666;
	font-size: 14px;
}

body.woocommerce-account .leo-account-avatar__form {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

body.woocommerce-account .leo-account-avatar__file {
	display: block;
	margin-bottom: 10px;
}

body.woocommerce-account .leo-account-avatar__file > span {
	display: block;
	margin-bottom: 6px;
	font-weight: 700;
}

body.woocommerce-account .leo-account-avatar__file input[type="file"] {
	display: block;
	width: 100%;
	max-width: 420px;
	padding: 9px;
	border: 1px solid #d7dce1;
	border-radius: 8px;
	background: #fafafa;
	box-sizing: border-box;
}

body.woocommerce-account .leo-account-avatar__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

body.woocommerce-account .leo-account-avatar__remove {
	background: #fff !important;
	color: #333 !important;
	border: 1px solid #d7dce1 !important;
}

@media (max-width: 767px) {
	body.woocommerce-account .leo-account-avatar {
		grid-template-columns: 72px minmax(0, 1fr);
		gap: 14px;
		padding: 16px;
	}

	body.woocommerce-account .leo-account-avatar__preview {
		width: 72px;
		height: 72px;
	}

	body.woocommerce-account .leo-account-avatar__actions .button {
		width: 100%;
	}
}


body.woocommerce-account .leo-account-avatar__pending {
	margin: -2px 0 10px !important;
	font-size: 13px !important;
	color: #555 !important;
}
