/* ====================================================================
   Mileto — "Minha Conta" (Customer Portal)
   Base: design system GNL (estilo ezCater) — rebrandizado p/ Mileto.
   Paleta: primary #1f1b16 (ink), accent #C09656 (dourado).
   ==================================================================== */
:root {
	--account-bg: #f6f5f3;
	--account-card-bg: #ffffff;
	--account-border: #ece7df;
	--account-border-strong: #d9d2c6;
	--account-text: #1f1b16;
	--account-text-soft: #6f675c;
	--account-text-muted: #a49b8d;
	--account-primary: #1f1b16;
	--account-primary-hover: #000000;
	--account-accent: #c09656;
	--account-accent-soft: rgba(192, 150, 86, .14);
	--account-gold: #dbb171;
	--account-error: #b23b3b;
	--account-success: #2e7d54;
	--account-radius: 14px;
	--account-radius-lg: 18px;
	--account-shadow-soft: 0 1px 2px rgba(31, 27, 22, .04), 0 1px 3px rgba(31, 27, 22, .05);
	--account-font: "Poppins", "Segoe UI", system-ui, -apple-system, sans-serif;
}

/* Hero escuro full-bleed (1º container) das páginas Woo — padrão do site:
   fundo #212121 + glow radial dourado; sobe atrás do header transparente. */
.woocommerce-account .ctheader:not(.elementor-sticky--effects),
.woocommerce-cart .ctheader:not(.elementor-sticky--effects),
.woocommerce-checkout .ctheader:not(.elementor-sticky--effects) { background: transparent !important; box-shadow: none !important; }

.mileto-page-hero {
	position: relative;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-top: -110px;
	background: #212121;
	color: #fff;
	text-align: center;
	padding: 268px 20px 84px;
	margin-bottom: 40px;
	overflow: hidden;
}
.mileto-page-hero::before {
	content: "";
	position: absolute; top: 0; left: 0; width: 100%; height: 100%;
	background: radial-gradient(60.41% 170.4% at 50% 198.48%, #DBB171 0%, rgba(219, 177, 113, 0) 100%);
	pointer-events: none; z-index: 0;
}
.mileto-page-hero-inner { position: relative; z-index: 1; max-width: 900px; margin: 0 auto; }
.mileto-page-hero-pill {
	display: inline-block; margin-bottom: 16px; padding: 7px 18px; border-radius: 8px;
	background: rgba(255,255,255,.06); border: 1px solid rgba(219,177,113,.35);
	color: var(--account-gold); font-size: 13px; font-weight: 500; letter-spacing: .02em;
}
.mileto-page-hero h1 { color: #fff; font-size: 42px; font-weight: 700; margin: 0; letter-spacing: -.01em; }
@media (max-width: 800px) {
	.mileto-page-hero { padding: 150px 18px 52px; }
	.mileto-page-hero h1 { font-size: 30px; }
}

/* esconde o título duplicado do tema (usamos o hero escuro no lugar) */
.woocommerce-account .page-header,
.woocommerce-cart .page-header,
.woocommerce-checkout .page-header,
.woocommerce-page .page-header,
.post-type-archive-product .page-header,
.tax-product_cat .page-header { display: none !important; }

/* Fundo cinza em toda a área da conta */
body.woocommerce-account { background: var(--account-bg); }
.woocommerce-account .woocommerce { font-family: var(--account-font); color: var(--account-text); }
/* neutraliza restrições de largura do tema para a conta */
.woocommerce-account .site-main,
.woocommerce-account .entry-content,
.woocommerce-account .page-content,
.woocommerce-account .elementor-widget-container { max-width: none !important; }

/* -------------------- Botões -------------------- */
.account-shell .btn, .account-auth .btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	padding: 12px 22px; border-radius: 999px; border: 1px solid transparent;
	font-weight: 600; font-size: 15px; line-height: 1; text-decoration: none; cursor: pointer;
	transition: background .15s ease, color .15s ease, transform .05s ease;
}
.account-shell .btn-primary, .account-auth .btn-primary { background: var(--account-primary); color: #fff; }
.account-shell .btn-primary:hover, .account-auth .btn-primary:hover { background: var(--account-primary-hover); }
.account-shell .btn-primary:active, .account-auth .btn-primary:active { transform: translateY(1px); }
.account-shell .btn-ghost { background: transparent; color: var(--account-primary); border-color: var(--account-border-strong); }
.account-shell .btn-ghost:hover { background: rgba(31, 27, 22, .05); }
.account-shell .btn-block, .account-auth .btn-block { width: 100%; }
.account-shell .btn-small { padding: 8px 14px; font-size: 13px; }

/* -------------------- Auth (login / cadastro) -------------------- */
.account-auth { min-height: 0; display: flex; align-items: flex-start; justify-content: center; padding: 8px 16px 72px; }
.account-auth-card {
	width: 100%; max-width: 460px; background: var(--account-card-bg);
	border-radius: var(--account-radius-lg); padding: 38px 34px;
	box-shadow: 0 6px 24px rgba(31, 27, 22, .06); border: 1px solid var(--account-border);
}
.account-auth-brand { text-align: center; margin-bottom: 22px; }
.account-auth-brand img { height: 40px; width: auto; }
.account-auth-tabs { display: flex; gap: 4px; background: var(--account-bg); border-radius: 999px; padding: 4px; margin-bottom: 24px; }
.account-auth-tabs button {
	flex: 1; border: 0; background: transparent; padding: 10px; border-radius: 999px;
	font-weight: 600; font-size: 14px; color: var(--account-text-soft); cursor: pointer; font-family: inherit;
	transition: background .15s, color .15s;
}
.account-auth-tabs button.is-active { background: var(--account-primary); color: #fff; }
.account-auth-header { margin-bottom: 20px; }
.account-auth-header h1 { font-size: 21px; font-weight: 700; margin: 0 0 6px; color: var(--account-text); }
.account-auth-header p { font-size: 14px; color: var(--account-text-soft); margin: 0; line-height: 1.5; }
.account-auth-pane { display: none; }
.account-auth-pane.is-active { display: block; }

.account-form { display: flex; flex-direction: column; gap: 4px; }
.account-form .row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.account-form label { font-size: 13px; font-weight: 500; color: var(--account-text-soft); margin-top: 14px; }
.account-form input[type="email"], .account-form input[type="text"],
.account-form input[type="tel"], .account-form input[type="password"] {
	width: 100%; border: 1px solid var(--account-border-strong); border-radius: 10px;
	padding: 12px 14px; font-size: 15px; color: var(--account-text); background: #fff; font-family: inherit;
	transition: border-color .15s ease, box-shadow .15s ease;
}
.account-form input:focus { outline: none; border-color: var(--account-accent); box-shadow: 0 0 0 3px var(--account-accent-soft); }
.account-form .btn-primary { margin-top: 20px; }
.account-checkbox { display: flex; align-items: center; gap: 10px; margin: 16px 0 4px; font-size: 14px; color: var(--account-text-soft); }
.account-checkbox input { width: 18px; height: 18px; accent-color: var(--account-primary); }
.account-auth-footer { text-align: center; margin-top: 22px; font-size: 13px; color: var(--account-text-muted); }
.account-auth-footer a { color: var(--account-primary); font-weight: 500; text-decoration: underline; }

/* -------------------- Shell (grid principal) -------------------- */
.account-shell {
	display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 36px;
	max-width: 1240px; margin: 0 auto; padding: 28px 24px 96px;
}
.account-sidebar {
	background: var(--account-card-bg); border-radius: var(--account-radius); padding: 22px 14px;
	border: 1px solid var(--account-border); align-self: start; position: sticky; top: 16px;
	box-shadow: var(--account-shadow-soft);
}
.account-sidebar-user { display: flex; align-items: center; gap: 12px; padding: 6px 6px 18px; border-bottom: 1px solid var(--account-border); }
.account-avatar {
	width: 44px; height: 44px; border-radius: 50%;
	background: linear-gradient(135deg, var(--account-gold), var(--account-accent));
	color: #1f1b16; display: flex; align-items: center; justify-content: center;
	font-weight: 700; font-size: 16px; flex-shrink: 0;
}
.account-user-meta { display: flex; flex-direction: column; overflow: hidden; }
.account-user-meta strong { color: var(--account-text); font-size: 14px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.account-user-meta span { color: var(--account-text-soft); font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.account-nav { display: flex; flex-direction: column; gap: 2px; margin-top: 14px; }
.account-nav a {
	display: flex; align-items: center; gap: 12px; padding: 11px 12px; border-radius: 10px;
	font-size: 14px; color: var(--account-text); text-decoration: none; transition: background .15s, color .15s;
}
.account-nav a:hover { background: rgba(31, 27, 22, .05); }
.account-nav a.is-active { background: var(--account-accent-soft); color: var(--account-primary); font-weight: 600; }
.account-nav-icon { width: 18px; height: 18px; flex-shrink: 0; color: currentColor; stroke-width: 1.75; }
.account-nav-label { flex: 1; min-width: 0; }
.account-nav-logout { margin-top: 8px; padding-top: 12px !important; border-top: 1px solid var(--account-border); color: var(--account-text-soft) !important; }

/* -------------------- Main / header -------------------- */
.woocommerce-account .woocommerce-MyAccount-content.account-main { width: 100%; float: none; min-width: 0; }
.account-page-header { margin-bottom: 26px; }
.account-page-header h1 { font-size: 25px; font-weight: 700; margin: 0 0 6px; color: var(--account-text); letter-spacing: -.01em; }
.account-page-header p { color: var(--account-text-soft); margin: 0; font-size: 14px; }

/* -------------------- Card -------------------- */
.account-card {
	background: var(--account-card-bg); border-radius: var(--account-radius); border: 1px solid var(--account-border);
	padding: 24px; margin-bottom: 20px; box-shadow: var(--account-shadow-soft);
}
.account-card-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.account-card-head h2 { margin: 0; font-size: 17px; font-weight: 700; color: var(--account-text); }
.account-link { color: var(--account-primary); font-size: 13px; text-decoration: none; font-weight: 500; }
.account-link:hover { text-decoration: underline; }
.account-empty { text-align: center; padding: 56px 24px; }
.account-empty-illo { font-size: 52px; line-height: 1; margin-bottom: 14px; }
.account-empty h2 { font-size: 18px; margin: 0 0 6px; color: var(--account-text); }
.account-empty p { color: var(--account-text-soft); margin: 0 0 18px; }

/* -------------------- Stats -------------------- */
.account-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-bottom: 20px; }
.account-stat { background: var(--account-card-bg); border-radius: var(--account-radius); border: 1px solid var(--account-border); padding: 20px; box-shadow: var(--account-shadow-soft); }
.account-stat-label { display: block; font-size: 12px; text-transform: uppercase; letter-spacing: .5px; color: var(--account-text-muted); margin-bottom: 6px; }
.account-stat-value { font-size: 22px; font-weight: 700; color: var(--account-text); }

/* -------------------- Abas horizontais -------------------- */
.account-tabs { display: flex; gap: 8px; border-bottom: 1px solid var(--account-border); margin-bottom: 22px; overflow-x: auto; }
.account-tabs a { padding: 14px 4px; margin-right: 22px; color: var(--account-text-soft); text-decoration: none; border-bottom: 2px solid transparent; font-size: 14px; font-weight: 500; white-space: nowrap; transition: color .15s, border-color .15s; }
.account-tabs a:hover { color: var(--account-text); }
.account-tabs a.is-active { color: var(--account-primary); border-bottom-color: var(--account-accent); font-weight: 600; }
.account-tab-count { background: var(--account-border); color: var(--account-text-soft); border-radius: 999px; padding: 2px 8px; font-size: 11px; font-weight: 600; margin-left: 6px; }

/* -------------------- Lista de pedidos -------------------- */
.account-orders { list-style: none; padding: 0; margin: 0; background: var(--account-card-bg); border-radius: var(--account-radius); border: 1px solid var(--account-border); overflow: hidden; box-shadow: var(--account-shadow-soft); }
.account-order-row { display: grid; grid-template-columns: minmax(0, 1fr) 160px 120px 20px; align-items: center; gap: 16px; padding: 18px 22px; color: var(--account-text); text-decoration: none; border-bottom: 1px solid var(--account-border); transition: background .15s; }
.account-orders li:last-child .account-order-row { border-bottom: 0; }
.account-order-row:hover { background: rgba(31, 27, 22, .03); }
.account-order-meta { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.account-order-meta strong { font-size: 14px; font-weight: 600; }
.account-order-date { font-size: 12px; color: var(--account-text-muted); }
.account-order-items { font-size: 12px; color: var(--account-text-soft); }
.account-order-total { text-align: right; font-weight: 600; }
.account-order-chevron { color: var(--account-text-muted); font-size: 22px; line-height: 1; }
.account-order-status { display: flex; align-items: center; justify-content: flex-end; }

/* Pills de status */
.status-pill { display: inline-block; padding: 5px 12px; border-radius: 999px; font-size: 11px; text-transform: uppercase; letter-spacing: .3px; font-weight: 600; white-space: nowrap; border: 1px solid transparent; }
.status-pill.is-pending, .status-pill.is-on-hold { background: #fbf3dd; color: #8a6a13; border-color: #f0e0b6; }
.status-pill.is-processing, .status-pill.is-preparing { background: #e8f4ec; color: var(--account-success); border-color: #bfe3cd; }
.status-pill.is-shipped { background: #eaf1fb; color: #245ea8; border-color: #c6dbf5; }
.status-pill.is-completed { background: var(--account-primary); color: #fff; }
.status-pill.is-cancelled, .status-pill.is-failed, .status-pill.is-refunded { background: #fbe9e9; color: var(--account-error); border-color: #f2cccc; }

/* -------------------- Stepper de acompanhamento -------------------- */
.mileto-tracker { border: 1px solid var(--account-border); border-radius: var(--account-radius); padding: 24px 22px 12px; margin-bottom: 22px; background: var(--account-card-bg); box-shadow: var(--account-shadow-soft); }
.mileto-tracker-title { display: flex; align-items: center; gap: 10px; font-weight: 700; margin-bottom: 22px; font-size: 15px; }
.mileto-steps { display: flex; justify-content: space-between; position: relative; }
.mileto-steps::before { content: ""; position: absolute; top: 19px; left: 7%; right: 7%; height: 2px; background: var(--account-border); z-index: 0; }
.mileto-step { position: relative; z-index: 1; flex: 1; text-align: center; }
.mileto-step .dot { width: 40px; height: 40px; border-radius: 50%; margin: 0 auto 10px; background: #fff; border: 2px solid var(--account-border-strong); display: grid; place-items: center; color: var(--account-text-muted); }
.mileto-step .dot svg { width: 18px; height: 18px; }
.mileto-step .lbl { font-size: 12.5px; color: var(--account-text-muted); line-height: 1.25; }
.mileto-step.done .dot { background: var(--account-primary); border-color: var(--account-primary); color: #fff; }
.mileto-step.done .lbl { color: var(--account-text); font-weight: 500; }
.mileto-step.active .dot { border-color: var(--account-accent); color: var(--account-accent); box-shadow: 0 0 0 4px var(--account-accent-soft); }
.mileto-step.active .lbl { color: var(--account-primary); font-weight: 600; }
.mileto-cancelled-note { color: var(--account-error); font-weight: 600; padding: 4px 0 14px; }

/* -------------------- Formulários (edit-account / address) -------------------- */
.woocommerce-account .woocommerce-MyAccount-content form { max-width: 640px; }
.woocommerce-account .woocommerce-EditAccountForm,
.woocommerce-account .woocommerce-address-fields,
.woocommerce-account form.edit-account {
	background: var(--account-card-bg); border: 1px solid var(--account-border); border-radius: var(--account-radius);
	padding: 26px; box-shadow: var(--account-shadow-soft);
}
.woocommerce-account .woocommerce-MyAccount-content .form-row label,
.woocommerce-account .woocommerce-MyAccount-content form label { font-size: 13px; font-weight: 500; color: var(--account-text-soft); display: block; margin-bottom: 6px; }
.woocommerce-account .woocommerce-MyAccount-content .form-row { margin-bottom: 16px; }
.woocommerce-account .woocommerce-MyAccount-content input.input-text,
.woocommerce-account .woocommerce-MyAccount-content input[type="password"],
.woocommerce-account .woocommerce-MyAccount-content select,
.woocommerce-account .woocommerce-MyAccount-content .select2-selection {
	width: 100%; border: 1px solid var(--account-border-strong); border-radius: 10px; padding: 12px 14px;
	font-size: 14px; color: var(--account-text); background: #fff; font-family: inherit;
}
.woocommerce-account .woocommerce-MyAccount-content input:focus { outline: none; border-color: var(--account-accent); box-shadow: 0 0 0 3px var(--account-accent-soft); }
.woocommerce-account .woocommerce-MyAccount-content button.button,
.woocommerce-account .woocommerce-MyAccount-content .button {
	display: inline-flex; align-items: center; justify-content: center; background: var(--account-primary) !important;
	color: #fff !important; border: none !important; border-radius: 999px !important; padding: 12px 24px !important;
	font-weight: 600 !important; font-size: 14px !important; cursor: pointer; transition: background .15s;
}
.woocommerce-account .woocommerce-MyAccount-content button.button:hover { background: var(--account-primary-hover) !important; }
.woocommerce-account .addresses .woocommerce-Address { background: var(--account-card-bg); border: 1px solid var(--account-border); border-radius: var(--account-radius); padding: 22px; box-shadow: var(--account-shadow-soft); }
.woocommerce-account fieldset { border: 1px solid var(--account-border); border-radius: 10px; padding: 16px 18px; margin-top: 18px; }
.woocommerce-account fieldset legend { padding: 0 6px; font-weight: 600; font-size: 13px; }

/* -------------------- Avisos / notices -------------------- */
.woocommerce-account .woocommerce-message, .woocommerce-account .woocommerce-error, .woocommerce-account .woocommerce-info {
	border-radius: 10px; border: 1px solid var(--account-border); background: #fff; padding: 14px 16px; box-shadow: var(--account-shadow-soft);
	list-style: none; margin-bottom: 18px;
}
.woocommerce-account .woocommerce-error { border-color: #f2cccc; background: #fbe9e9; color: var(--account-error); }
.woocommerce-account .woocommerce-message { border-color: #bfe3cd; background: #e8f4ec; color: var(--account-success); }

/* -------------------- Order details (view-order) -------------------- */
.woocommerce-account .woocommerce-order-details, .woocommerce-account .woocommerce-customer-details, .woocommerce-account .woocommerce-order-details__title { margin-top: 8px; }
.woocommerce-account .woocommerce-table--order-details, .woocommerce-account .shop_table { border: 1px solid var(--account-border); border-radius: var(--account-radius); overflow: hidden; box-shadow: var(--account-shadow-soft); border-collapse: separate; border-spacing: 0; width: 100%; background: #fff; }
.woocommerce-account .shop_table th, .woocommerce-account .shop_table td { padding: 14px 16px; border-bottom: 1px solid var(--account-border); font-size: 14px; text-align: left; }

/* ==================== Carrinho & Checkout (custom, sem tabelas) ==================== */
body.woocommerce-cart, body.woocommerce-checkout { background: var(--account-bg); }
.woocommerce-cart .woocommerce, .woocommerce-checkout .woocommerce { font-family: var(--account-font); color: var(--account-text); }
.woocommerce-cart .woocommerce-notices-wrapper, .woocommerce-checkout .woocommerce-notices-wrapper { max-width: 1200px; margin: 0 auto; padding: 0 20px; box-sizing: border-box; }

/* Botões */
.mileto-btn-primary { display: inline-flex; align-items: center; justify-content: center; gap: 8px; background: var(--account-primary); color: #fff !important; border: none; border-radius: 999px; padding: 15px 26px; font-weight: 500; font-size: 15px; text-decoration: none; cursor: pointer; width: 100%; transition: background .16s, transform .06s; }
.mileto-btn-primary:hover { background: var(--account-primary-hover); }
.mileto-btn-primary:active { transform: translateY(1px); }
.mileto-btn-ghost { display: inline-flex; align-items: center; justify-content: center; background: #fff; color: var(--account-text); border: 1px solid var(--account-border-strong); border-radius: 999px; padding: 11px 20px; font-weight: 500; font-size: 13.5px; cursor: pointer; transition: border-color .16s, background .16s; }
.mileto-btn-ghost:hover { border-color: var(--account-primary); background: var(--account-soft); }
/* garante o estilo Mileto sobre o padrão do Woo/tema */
.woocommerce-cart button.mileto-btn-ghost,
.woocommerce-checkout button.mileto-btn-ghost {
	background: #fff !important; color: var(--account-text-soft) !important;
	border: 1px solid var(--account-border-strong) !important; border-radius: 999px !important;
	padding: 11px 24px !important; font-weight: 500 !important; font-size: 13px !important;
	letter-spacing: normal !important; text-transform: none !important; text-decoration: none !important;
	box-shadow: none !important; line-height: 1.2 !important; min-height: 0 !important; text-shadow: none !important;
}
.woocommerce-cart button.mileto-btn-ghost:hover,
.woocommerce-checkout button.mileto-btn-ghost:hover {
	background: var(--account-soft) !important; color: var(--account-text) !important; border-color: var(--account-primary) !important;
}
.mileto-btn-primary, .mileto-btn-ghost, .mileto-continue-link, .mci-name, .mri-name, #place_order, .mileto-go-checkout { text-decoration: none !important; }
.mci-name:hover { color: var(--account-bronze); text-decoration: none !important; }

/* Grid comum */
.mileto-cart-grid, .mileto-checkout-grid { display: grid; grid-template-columns: minmax(0,1fr) 360px; gap: 28px; align-items: start; max-width: 1200px; margin: 0 auto 90px; padding: 0 20px; box-sizing: border-box; }
/* Checkout: colunas 50/50 (dados | pedido+pagamento) */
.mileto-checkout-grid { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }

/* Itens do carrinho */
.mileto-cart-items { background: #fff; border: 1px solid var(--account-border); border-radius: var(--account-radius); box-shadow: var(--account-shadow-soft); overflow: hidden; }
.mileto-cart-head { display: grid; grid-template-columns: 1fr 90px 110px 90px 28px; gap: 14px; padding: 15px 22px; border-bottom: 1px solid var(--account-border); font-size: 11px; text-transform: uppercase; letter-spacing: .06em; color: var(--account-text-muted); }
.mileto-cart-head span:nth-child(2), .mileto-cart-head span:nth-child(4) { text-align: right; }
.mileto-cart-head span:nth-child(3) { text-align: center; }
.mileto-cart-head { font-weight: 400; }
.mileto-cart-item { display: grid; grid-template-columns: 1fr 90px 110px 90px 28px; gap: 14px; align-items: center; padding: 18px 22px; border-bottom: 1px solid var(--account-border); position: relative; }
.mileto-cart-item:last-of-type { border-bottom: 0; }
.mci-product { display: flex; align-items: center; gap: 14px; min-width: 0; }
.mci-thumb { width: 64px; height: 64px; flex: 0 0 64px; overflow: hidden; border-radius: 10px; }
.mci-thumb img { width: 64px !important; height: 64px !important; object-fit: cover; display: block; }
.mci-name { font-weight: 500; color: var(--account-text); text-decoration: none; font-size: 14.5px; line-height: 1.3; display: block; }
.mci-name:hover { color: var(--account-bronze); }
.mci-meta, .mci-meta p { color: var(--account-text-muted); font-size: 12.5px; margin: 4px 0 0; }
.mci-price { text-align: right; color: var(--account-text-soft); font-size: 14px; }
.mci-subtotal { text-align: right; font-weight: 500; font-size: 14px; color: var(--account-text); }
.mci-qty { display: flex; justify-content: center; }
.mci-qty .quantity input.qty { width: 60px; height: 40px; text-align: center; border: 1px solid var(--account-border-strong); border-radius: 10px; background: #fff; color: var(--account-text); font-size: 14px; }
.mci-remove { color: var(--account-text-muted); font-size: 22px; line-height: 1; text-decoration: none; text-align: center; transition: color .15s; }
.mci-remove:hover { color: var(--account-danger); }
.mileto-cart-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; padding: 18px 22px; background: var(--account-soft); }
.mileto-coupon { display: flex; gap: 8px; flex: 1; min-width: 220px; }
.mileto-coupon input { flex: 1; border: 1px solid var(--account-border-strong); border-radius: 999px; padding: 10px 16px; font-size: 13.5px; background: #fff; color: var(--account-text); }
.mileto-update-cart { margin-left: auto; }

/* Resumo (sticky) */
.mileto-cart-summary, .mileto-checkout-right { background: #fff; border: 1px solid var(--account-border); border-radius: var(--account-radius); box-shadow: var(--account-shadow-soft); padding: 24px; position: sticky; top: 20px; }
.mileto-cart-summary h3, .mileto-checkout-right h3 { margin: 0 0 18px; font-size: 16px; font-weight: 500; color: var(--account-text); }
.mileto-sum-row { display: flex; justify-content: space-between; align-items: center; padding: 9px 0; font-size: 13.5px; color: var(--account-text-soft); }
.mileto-sum-row.discount { color: var(--account-success); }
.mileto-sum-row.total { border-top: 1px solid var(--account-border); margin-top: 8px; padding-top: 16px; color: var(--account-text); font-weight: 500; font-size: 14.5px; }
.mileto-sum-row.total span:last-child { font-size: 17px; font-weight: 500; }
.mileto-go-checkout { margin-top: 18px; }
.mileto-continue-link { display: block; text-align: center; margin-top: 14px; color: var(--account-text-soft); font-size: 13.5px; text-decoration: none; }
.mileto-continue-link:hover { color: var(--account-primary); }

/* Checkout: coluna esquerda (form) */
.mileto-checkout-left #customer_details, .mileto-checkout-left .col2-set { display: block; }
.mileto-checkout-left .col-1, .mileto-checkout-left .col-2 { width: 100% !important; float: none !important; margin: 0 0 20px !important; padding: 0 !important; }
.woocommerce-billing-fields, .woocommerce-additional-fields { background: #fff; border: 1px solid var(--account-border); border-radius: var(--account-radius); padding: 24px 24px 8px; box-shadow: var(--account-shadow-soft); }
.woocommerce-shipping-fields { display: none; }
.woocommerce-account-fields { margin: 0 0 20px; }
.woocommerce-checkout h3 { color: var(--account-text); font-weight: 500; font-size: 16px; margin: 0 0 16px; }

/* Labels + inputs (billing) */
.woocommerce-checkout .form-row { margin: 0 0 14px; padding: 0; }
.woocommerce-checkout .form-row label { display: block; color: var(--account-text); font-size: 13px; font-weight: 500; margin-bottom: 6px; }
.woocommerce-checkout .input-text, .woocommerce-checkout textarea, .woocommerce-checkout select, .woocommerce-checkout .select2-selection { width: 100% !important; border: 1px solid var(--account-border-strong) !important; border-radius: 10px !important; padding: 12px 14px !important; font-size: 14px !important; color: var(--account-text) !important; background: #fff !important; min-height: 46px; box-shadow: none !important; font-family: inherit; }
.woocommerce-checkout .select2-selection__rendered { line-height: 22px !important; padding: 0 !important; color: var(--account-text) !important; }
.woocommerce-checkout .select2-selection__arrow { top: 10px !important; }
.woocommerce-checkout .input-text:focus, .woocommerce-checkout textarea:focus, .woocommerce-checkout select:focus { outline: none; border-color: var(--account-accent) !important; box-shadow: 0 0 0 3px var(--account-accent-soft) !important; }
.woocommerce-checkout .required { color: var(--account-accent); border: 0; }
.woocommerce-checkout .woocommerce-input-wrapper { display: block; width: 100%; }
.woocommerce-form-coupon-toggle { margin-bottom: 16px; }

/* Review (itens + totais) */
.mileto-review-item { display: flex; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--account-border); }
.mri-thumb { position: relative; flex: 0 0 auto; }
.mri-thumb img { width: 52px; height: 52px; object-fit: cover; border-radius: 8px; display: block; }
.mri-qty { position: absolute; top: -8px; right: -8px; min-width: 20px; height: 20px; padding: 0 5px; background: var(--account-primary); color: #fff; border-radius: 999px; font-size: 11px; font-weight: 600; display: flex; align-items: center; justify-content: center; }
.mri-name { flex: 1; font-size: 13.5px; font-weight: 500; color: var(--account-text); line-height: 1.3; }
.mri-meta { display: block; font-weight: 400; color: var(--account-text-muted); font-size: 12px; margin-top: 2px; }
.mri-meta p { margin: 0; }
.mri-total { font-weight: 400; font-size: 13px; color: var(--account-text-soft); white-space: nowrap; }
.mileto-review-totals { padding-top: 12px; }

/* Pagamento */
#payment { background: var(--account-soft) !important; border: 1px solid var(--account-border) !important; border-radius: 12px !important; padding: 8px 16px !important; margin-top: 16px !important; }
#payment ul.payment_methods { border: none !important; background: none !important; padding: 6px 0 !important; margin: 0 !important; }
#payment .place-order { padding: 12px 0 6px !important; margin: 0 !important; }
#place_order { background: var(--account-primary) !important; color: #fff !important; border: none !important; border-radius: 999px !important; padding: 15px 26px !important; font-weight: 500 !important; font-size: 15px !important; width: 100%; float: none; cursor: pointer; }
#place_order:hover { background: var(--account-primary-hover) !important; }
.woocommerce-checkout #payment .woocommerce-privacy-policy-text p { font-size: 12px; color: var(--account-text-muted); }

/* Notices minimalistas */
.woocommerce-cart .woocommerce-message, .woocommerce-checkout .woocommerce-message, .woocommerce-cart .woocommerce-info, .woocommerce-checkout .woocommerce-info, .woocommerce-cart .woocommerce-error, .woocommerce-checkout .woocommerce-error { border: 1px solid var(--account-border); background: #fff; border-radius: 12px; padding: 14px 18px; box-shadow: var(--account-shadow-soft); color: var(--account-text-soft); font-size: 14px; list-style: none; display: flex; align-items: center; gap: 10px; margin: 0 auto 18px; max-width: 1200px; padding: 14px 20px; box-sizing: border-box; }
.woocommerce-cart .woocommerce-message, .woocommerce-checkout .woocommerce-message { border-left: 3px solid var(--account-success) !important; }
.woocommerce-cart .woocommerce-info, .woocommerce-checkout .woocommerce-info { border-left: 3px solid var(--account-accent) !important; }
.woocommerce-cart .woocommerce-error, .woocommerce-checkout .woocommerce-error { border-left: 3px solid var(--account-danger) !important; background: #fff !important; }
.woocommerce-cart .woocommerce-message::before, .woocommerce-checkout .woocommerce-message::before, .woocommerce-cart .woocommerce-info::before, .woocommerce-checkout .woocommerce-info::before, .woocommerce-cart .woocommerce-error::before, .woocommerce-checkout .woocommerce-error::before { position: static !important; font-size: 15px !important; color: inherit !important; margin: 0 !important; top: auto !important; left: auto !important; }
.woocommerce-cart .woocommerce-message .button, .woocommerce-checkout .woocommerce-message .button, .woocommerce-cart .woocommerce-info .button { background: var(--account-primary) !important; color: #fff !important; border-radius: 999px !important; padding: 8px 18px !important; font-size: 13px !important; margin-left: auto; float: none; }

/* Estado vazio */
.mileto-empty { text-align: center; max-width: 460px; margin: 20px auto 60px; background: #fff; border: 1px solid var(--account-border); border-radius: var(--account-radius); padding: 48px 32px; box-shadow: var(--account-shadow-soft); }
.mileto-empty-illo { width: 60px; height: 60px; margin: 0 auto 18px; color: var(--account-accent); }
.mileto-empty-illo svg { width: 100%; height: 100%; }
.mileto-empty h2 { font-size: 20px; font-weight: 700; color: var(--account-text); margin: 0 0 8px; }
.mileto-empty p { color: var(--account-text-soft); margin: 0 0 22px; }
.mileto-empty .mileto-btn-primary { width: auto; padding: 13px 28px; }

/* Responsivo carrinho/checkout */
@media (max-width: 900px) {
	.mileto-cart-grid, .mileto-checkout-grid { grid-template-columns: 1fr; }
	.mileto-cart-summary, .mileto-checkout-right { position: static; }
	.mileto-cart-head { display: none; }
	.mileto-cart-item { grid-template-columns: 1fr auto; gap: 6px 14px; }
	.mci-product { grid-column: 1 / -1; }
	.mci-price, .mci-qty, .mci-subtotal { text-align: left; justify-content: flex-start; }
	.mci-price::before, .mci-subtotal::before { content: attr(data-label) ": "; color: var(--account-text-muted); font-size: 12px; }
	.mci-remove { position: absolute; top: 14px; right: 14px; }
}

/* -------------------- Tablet -------------------- */
@media (max-width: 1080px) {
	.account-shell { grid-template-columns: 220px minmax(0, 1fr); gap: 24px; padding: 24px 20px 72px; }
}
/* -------------------- Mobile -------------------- */
@media (max-width: 800px) {
	.account-shell { grid-template-columns: minmax(0, 1fr); gap: 16px; padding: 16px 14px 64px; }
	.account-sidebar { position: relative; top: auto; padding: 16px 12px; }
	.account-nav { margin-top: 10px; flex-direction: row; flex-wrap: wrap; gap: 4px; }
	.account-nav a { flex: 1 1 calc(50% - 4px); padding: 10px; font-size: 13px; }
	.account-nav-logout { flex: 1 1 100%; margin-top: 6px; }
	.account-stats { grid-template-columns: minmax(0, 1fr); }
	.account-order-row { grid-template-columns: minmax(0, 1fr) 92px 18px; padding: 14px 16px; gap: 12px; }
	.account-order-status { grid-row: 2; grid-column: 1 / -1; justify-content: flex-start; }
	.mileto-steps { flex-wrap: wrap; gap: 14px; } .mileto-steps::before { display: none; } .mileto-step { flex: 1 1 40%; }
	.account-page-header h1 { font-size: 22px; }
	.account-form .row2 { grid-template-columns: 1fr; }
}

/* links das mensagens do Woo (cupom etc.) no padrão Mileto, sem vermelho */
.woocommerce-cart .woocommerce-info a, .woocommerce-checkout .woocommerce-info a,
.woocommerce-cart .woocommerce-message a, .woocommerce-checkout .woocommerce-message a,
.woocommerce-checkout .woocommerce-form-coupon-toggle a { color: var(--account-bronze) !important; text-decoration: underline; }
.woocommerce-cart .woocommerce-info a:hover, .woocommerce-checkout .woocommerce-info a:hover { color: var(--account-accent) !important; }
/* link da política de privacidade no checkout (sem vermelho) */
.woocommerce-checkout .woocommerce-privacy-policy-text a,
.woocommerce-checkout a.woocommerce-privacy-policy-link { color: var(--account-bronze) !important; text-decoration: underline; }

/* ===== Carrinho WooCommerce na página de Orçamento (/checkout/) ===== */
.mileto-wc-oncart { width: 100vw; margin-left: calc(50% - 50vw); margin-top: -110px; background: #212121; padding: 150px 20px 46px; position: relative; overflow: hidden; }
.mileto-wc-oncart::before { content: ""; position: absolute; inset: 0; background: radial-gradient(60% 150% at 50% 188%, rgba(219,177,113,.30), transparent 72%); pointer-events: none; }
.mileto-wc-oncart-card { max-width: 900px; margin: 8px 0; background: #fff; border: 1px solid var(--account-border); border-radius: var(--account-radius); box-shadow: 0 6px 20px rgba(0,0,0,.10); padding: 24px 26px; box-sizing: border-box; }
.mileto-wc-oncart-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.mileto-wc-oncart-head h2 { margin: 0; font-size: 17px; font-weight: 500; color: var(--account-text); }
.mileto-wc-oncart-head span { font-size: 13px; color: var(--account-text-muted); }
.mileto-wc-oncart-items { list-style: none; margin: 0; padding: 0; }
.mileto-wc-oncart-items li { display: flex; align-items: center; gap: 14px; padding: 12px 0; border-bottom: 1px solid var(--account-border); }
.mileto-wc-oncart-items li:last-child { border-bottom: 0; }
.mileto-wc-oncart-items .thumb { width: 52px; height: 52px; flex: 0 0 52px; border-radius: 8px; overflow: hidden; }
.mileto-wc-oncart-items .thumb img { width: 52px !important; height: 52px !important; object-fit: cover; display: block; }
.mileto-wc-oncart-items .info { flex: 1; min-width: 0; }
.mileto-wc-oncart-items .nm { display: block; font-size: 14px; color: var(--account-text); }
.mileto-wc-oncart-items .meta { display: block; font-size: 12px; color: var(--account-text-muted); }
.mileto-wc-oncart-items .meta p { margin: 0; }
.mileto-wc-oncart-items .qty { color: var(--account-text-soft); font-size: 13px; }
.mileto-wc-oncart-items .sub { font-size: 14px; color: var(--account-text); white-space: nowrap; }
.mileto-wc-oncart-foot { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--account-border); }
.mileto-wc-oncart-foot .tot { font-size: 14px; color: var(--account-text-soft); }
.mileto-wc-oncart-foot .tot span { color: var(--account-text); font-size: 18px; margin-left: 6px; }
.mileto-wc-oncart-foot .acts { display: flex; gap: 10px; }
.mileto-wc-oncart-foot .mileto-btn-primary { width: auto; padding: 12px 26px; }
.mileto-wc-oncart-foot .mileto-btn-ghost { padding: 12px 22px; }
@media (max-width: 640px) { .mileto-wc-oncart-foot { flex-direction: column; align-items: stretch; } .mileto-wc-oncart-foot .acts { flex-direction: column; } .mileto-wc-oncart-foot .mileto-btn-primary, .mileto-wc-oncart-foot .mileto-btn-ghost { width: 100%; } }

/* mensagem "adicionado ao carrinho" — minimalista (sem caixa, botão só texto) */
.woocommerce-cart .woocommerce-message, .woocommerce-checkout .woocommerce-message {
	border: none !important; border-left: none !important; background: transparent !important; box-shadow: none !important; border-radius: 0 !important;
	padding: 2px 20px !important; margin: 0 auto 6px !important; max-width: 1200px; font-size: 13px !important; color: var(--account-text-soft) !important; gap: 8px;
}
.woocommerce-cart .woocommerce-message::before, .woocommerce-checkout .woocommerce-message::before { color: var(--account-success) !important; font-size: 14px !important; }
.woocommerce-cart .woocommerce-message .button, .woocommerce-checkout .woocommerce-message .button {
	background: none !important; color: var(--account-bronze) !important; border: none !important; padding: 0 !important; margin-left: auto;
	font-weight: 500 !important; font-size: 13px !important; text-decoration: underline !important; box-shadow: none !important; min-height: 0 !important;
}

/* ===== Carrinho WC injetado na página de Orçamento (estilo idêntico ao orçamento) ===== */
#orcamento-checkout-list.has-wc-items .empty-message, #orcamento-checkout-list.has-wc-items .loading-message { display: none !important; }
.mileto-wc-card .mileto-wc-remove { background: none; border: none; color: #b0a99d; display: inline-flex; align-items: center; align-self: center; cursor: pointer; padding: 6px; text-decoration: none; }
.mileto-wc-card .mileto-wc-remove:hover { color: var(--account-danger); }
.mileto-wc-card .mileto-wc-remove svg { fill: currentColor; }
.mileto-wc-card .mileto-wc-qty { color: var(--account-text-muted); font-style: normal; font-size: .9em; margin-left: 4px; }
.mileto-wc-card .mileto-wc-qtd { display: inline-flex; align-items: center; width: fit-content; margin-top: 10px; border: 1px solid rgba(255,255,255,.18); border-radius: 9px; overflow: hidden; }
.mileto-wc-card .mileto-qtd-btn { width: 34px; height: 34px; border: 0; background: transparent !important; color: #fff !important; font-size: 18px; line-height: 1; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background .15s ease; box-shadow: none !important; outline: none !important; -webkit-appearance: none; appearance: none; -webkit-tap-highlight-color: transparent; }
.mileto-wc-card .mileto-qtd-btn:hover, .mileto-wc-card .mileto-qtd-btn:focus, .mileto-wc-card .mileto-qtd-btn:active, .mileto-wc-card .mileto-qtd-btn:focus-visible { background: rgba(255,255,255,.12) !important; color: #fff !important; box-shadow: none !important; outline: none !important; }
.mileto-wc-card .mileto-qtd-val { min-width: 38px; text-align: center; font-size: 14px; font-weight: 500; color: #fff; }
.mileto-wc-card.is-updating { opacity: .55; pointer-events: none; }
.mileto-wc-orc-summary { background: transparent; border: none; box-shadow: none; padding: 8px 4px; width: 100%; margin: 0; color: #fff; }
.mileto-wc-orc-summary h3 { color: #fff; font-weight: 500; font-size: 20px; margin: 0 0 20px; text-align: center; }
.mileto-wc-orc-summary .mileto-sum-row { color: rgba(255,255,255,.72); padding: 12px 0; border-bottom: none; }
.mileto-wc-orc-summary .mileto-sum-row.total { color: #fff; border-bottom: none; border-top: 1px solid rgba(255,255,255,.16); margin-top: 6px; padding-top: 16px; }
.mileto-wc-orc-summary .mileto-sum-row.total span:last-child { color: #fff; }
.mileto-wc-orc-summary .mileto-btn-primary { margin-top: 22px; background: var(--account-gold) !important; color: #1f1b16 !important; }
.mileto-wc-orc-summary .mileto-btn-primary:hover { background: var(--account-accent) !important; }
.mileto-wc-orc-summary .mileto-continue-link { display: block; text-align: center; margin-top: 12px; color: rgba(255,255,255,.6); font-size: 13px; text-decoration: none; }
.mileto-wc-orc-summary .mileto-continue-link:hover { color: #fff; }

/* conflito: itens de orçamento junto com itens de compra */
.mileto-orc-conflict { margin: 0 0 18px; padding: 13px 16px; border-radius: 10px; background: rgba(219,177,113,.10); border: 1px solid rgba(219,177,113,.32); color: #e8c99a; font-size: 13px; line-height: 1.45; }
#orcamento-checkout-list .orcamento-item-card.mileto-dim { opacity: .45; }
.mileto-item-note { display: block; margin-top: 6px; font-size: 12px; color: #e0a56b; }

/* ===== /checkout/ (orçamento) no MOBILE — compacto e sem estouro horizontal ===== */
@media (max-width: 782px) {
	#orcamento-checkout-list { max-width: 100% !important; box-sizing: border-box !important; }
	#orcamento-checkout-list .mileto-wc-card {
		display: grid !important;
		grid-template-columns: 74px minmax(0, 1fr) auto !important;
		grid-template-areas: "img info remove" !important;
		align-items: start !important;
		column-gap: 12px !important; row-gap: 6px !important;
		width: 100% !important; box-sizing: border-box !important;
	}
	#orcamento-checkout-list .mileto-wc-card .item-image {
		grid-area: img !important; width: 74px !important; height: 74px !important;
		min-width: 74px !important; margin: 0 !important; border-radius: 12px !important;
	}
	#orcamento-checkout-list .mileto-wc-card .item-info { grid-area: info !important; min-width: 0 !important; margin: 0 !important; }
	#orcamento-checkout-list .mileto-wc-card .item-title { font-size: 15px !important; }
	#orcamento-checkout-list .mileto-wc-card .item-attributes { display: flex !important; flex-wrap: wrap !important; gap: 6px !important; }
	#orcamento-checkout-list .mileto-wc-card .attribute-box { min-width: 0 !important; padding: 4px 9px !important; }
	#orcamento-checkout-list .mileto-wc-card .mileto-wc-remove { grid-area: remove !important; align-self: start !important; padding: 2px 0 0 !important; }
	/* a coluna Elementor pai é larga no mobile; limita lista/cards/resumo ao viewport
	   e corta o excesso da coluna (sem depender de achar o seletor exato da coluna). */
	body.mileto-oncart-page { overflow-x: hidden; }
	.mileto-oncart-page #orcamento-checkout-list,
	.mileto-oncart-page #orcamento-checkout-list > .orcamento-item-card,
	.mileto-oncart-page .mileto-wc-orc-summary {
		max-width: calc(100vw - 34px) !important; box-sizing: border-box !important;
	}
	.mileto-wc-orc-summary { padding: 8px 2px !important; }
}
.mileto-wc-orc-summary .mileto-btn-primary.is-disabled { opacity: .4; pointer-events: none; cursor: not-allowed; }

/* ===== Rede: form de cartão de crédito no padrão Mileto ===== */
#payment .payment_box.payment_method_rede_credit { background: transparent !important; border: none !important; box-shadow: none !important; margin: 10px 0 0 !important; padding: 0 !important; color: var(--account-text) !important; }
#payment .payment_box.payment_method_rede_credit::before { display: none !important; }
#payment .payment_box.payment_method_rede_credit > p:first-child { display: none !important; } /* descrição duplicada */
#rede-credit-payment-form.rede-payment-form { background: transparent !important; border: none !important; padding: 0 !important; margin: 0 !important; min-width: 0; }
#rede-credit-payment-form .payment-method-description { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin: 0 0 18px; padding: 0; }
#rede-credit-payment-form .payment-method-description p { margin: 0; font-size: 13px; color: var(--account-text-soft); }
#rede-credit-payment-form #logo-rede { width: 52px; height: auto; flex: 0 0 auto; }
/* esconde o cartão animado e os ícones azuis (visual minimalista) */
#rede-card-animation, #rede-credit-payment-form .card-animation { display: none !important; }
#rede-credit-payment-form .icon-rede-input { display: none !important; }
#rede-credit-payment-form .rede-credit-fields-wrapper { background: transparent !important; border: none !important; padding: 0 !important; display: block !important; }
#rede-credit-payment-form .wc-payment-rede-form-fields { background: transparent !important; padding: 0 !important; width: 100% !important; float: none !important; }
#rede-credit-payment-form .form-row { float: none !important; width: 100% !important; padding: 0 !important; margin: 0 0 14px !important; box-sizing: border-box; }
#rede-credit-payment-form label { display: block !important; font-size: 12px !important; font-weight: 500 !important; color: var(--account-text) !important; margin: 0 0 6px !important; text-transform: none !important; letter-spacing: 0 !important; }
#rede-credit-payment-form label .required { color: var(--account-danger); border: none !important; text-decoration: none; }
#rede-credit-payment-form input.input-text, #rede-credit-payment-form select { width: 100% !important; height: 46px !important; box-sizing: border-box !important; background: #fff !important; border: 1px solid var(--account-border) !important; border-radius: 10px !important; padding: 0 14px !important; margin: 0 !important; font-size: 15px !important; color: var(--account-text) !important; box-shadow: none !important; }
#rede-credit-payment-form input.input-text:focus, #rede-credit-payment-form select:focus { border-color: var(--account-gold) !important; box-shadow: 0 0 0 3px rgba(219,177,113,.15) !important; outline: none !important; }
#rede-credit-payment-form input.input-text::placeholder { color: var(--account-text-muted) !important; font-size: 14px !important; opacity: 1; }
#rede-credit-payment-form select { appearance: none; -webkit-appearance: none; background-image: url('data:image/svg+xml;charset=US-ASCII,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4 5"><path fill="%23999" d="M2 0L0 2h4zm0 5L0 3h4z"/></svg>') !important; background-repeat: no-repeat !important; background-position: right 14px center !important; background-size: 10px !important; padding-right: 34px !important; }
#rede-credit-payment-form .clear { clear: both; }

/* "Payment: Cash payment" removido na origem (review-order.php, sem after_order_total) */
/* Checkout minimalista: oculta o card "Tem um cupom?" */
.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout .checkout_coupon { display: none !important; }

/* ===== Página de agradecimento (order-received) ===== */
.mileto-thankyou { max-width: 820px; margin: 0 auto 90px; padding: 0 20px; }
.mileto-ty-head { text-align: center; margin: 0 auto 30px; max-width: 560px; }
.mileto-ty-check { width: 58px; height: 58px; margin: 0 auto 18px; border-radius: 50%; background: rgba(46,125,84,.12); color: var(--account-success); display: flex; align-items: center; justify-content: center; }
.mileto-ty-head h2 { font-size: 24px; font-weight: 600; color: var(--account-text); margin: 0 0 10px; letter-spacing: -.01em; }
.mileto-ty-head p { color: var(--account-text-soft); font-size: 15px; line-height: 1.6; margin: 0; }
.mileto-ty-overview { list-style: none; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--account-border); border: 1px solid var(--account-border); border-radius: var(--account-radius); overflow: hidden; margin: 0 0 28px; padding: 0; box-shadow: var(--account-shadow-soft); }
.mileto-ty-overview li { background: #fff; padding: 16px 18px; display: flex; flex-direction: column; gap: 5px; margin: 0; }
.mileto-ty-overview li span { font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--account-text-muted); }
.mileto-ty-overview li strong { font-size: 14.5px; font-weight: 500; color: var(--account-text); }
.mileto-ty-overview li strong .amount { font-weight: 500; }
.mileto-ty-actions { display: flex; flex-direction: column; align-items: center; gap: 14px; margin-top: 34px; }
.mileto-ty-actions .mileto-btn-primary { width: auto; padding: 14px 34px; }
.mileto-ty-actions .mileto-continue-link { margin: 0; }
@media (max-width: 640px) { .mileto-ty-overview { grid-template-columns: 1fr 1fr; } }

/* ===== Minha Conta: minimalista (pesos leves + links da marca) ===== */
.mileto-page-hero h1 { font-weight: 600; }
.account-page-header h1, .account-card-head h2, .account-stat-value,
.mileto-tracker-title, .mileto-empty h2, .account-auth-header h1,
.account-order-meta strong, .account-order-total, .account-user-meta strong,
.mileto-ty-head h2 { font-weight: 500; }
/* neutraliza o bold pesado dos templates default do Woo dentro da conta */
.woocommerce-MyAccount-content strong,
.woocommerce-MyAccount-content b,
.woocommerce-MyAccount-content legend,
.woocommerce-MyAccount-content h1,
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 { font-weight: 500 !important; }
/* links no tom da marca (sem roxo/azul default) */
.woocommerce-MyAccount-content .woocommerce-Address a,
.woocommerce-MyAccount-content .woocommerce-order-details a,
.woocommerce-MyAccount-content .woocommerce-customer-details a,
.woocommerce-MyAccount-content form a,
.woocommerce-MyAccount-content .addresses a,
.woocommerce-MyAccount-content .mileto-vieworder a,
.woocommerce-MyAccount-content p a,
.woocommerce-account .woocommerce-MyAccount-content a.edit { color: var(--account-accent) !important; text-decoration: none; }
.woocommerce-MyAccount-content .woocommerce-Address a:hover,
.woocommerce-MyAccount-content p a:hover,
.woocommerce-account .woocommerce-MyAccount-content a.edit:hover { color: var(--account-primary) !important; text-decoration: underline; }

/* ===== Ver pedido (view-order) ===== */
.mileto-vieworder .account-card-head { margin-bottom: 6px; }
.mileto-vo-items { list-style: none; margin: 0; padding: 0; }
.mileto-vo-item { display: grid; grid-template-columns: 56px minmax(0,1fr) auto; align-items: center; gap: 14px; padding: 14px 0; border-bottom: 1px solid var(--account-border); }
.mileto-vo-item:last-child { border-bottom: none; }
.mileto-vo-item .mri-thumb { position: relative; width: 56px; height: 56px; }
.mileto-vo-item .mri-thumb img { width: 56px; height: 56px; object-fit: cover; border-radius: 10px; display: block; }
.mileto-vo-name { font-size: 14px; color: var(--account-text); line-height: 1.35; }
.mileto-vo-total { font-size: 14px; color: var(--account-text); white-space: nowrap; }
.mileto-vo-totals { margin-top: 16px; padding-top: 6px; }
.mileto-vo-totals .mileto-sum-row { border: none; }
.mileto-vo-totals .mileto-sum-row.total { border-top: 1px solid var(--account-border); margin-top: 6px; padding-top: 14px; color: var(--account-text); }
.mileto-vo-totals .mileto-sum-row.total span:last-child { font-size: 16px; }
.mileto-vo-notes { list-style: none; margin: 0; padding: 0; }
.mileto-vo-notes li { padding: 12px 0; border-bottom: 1px solid var(--account-border); }
.mileto-vo-notes li:last-child { border-bottom: none; }
.mileto-vo-note-date { display: block; font-size: 12px; color: var(--account-text-muted); margin-bottom: 4px; }
.mileto-vo-note-text p { margin: 0; font-size: 14px; color: var(--account-text-soft); }

/* ===== Editar conta / endereço ===== */
.mileto-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.mileto-field-hint { display: block; margin-top: 6px; font-size: 12px; color: var(--account-text-muted); }
.mileto-form-actions { margin-top: 22px; }
.mileto-address-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 18px; }
.mileto-address-grid .woocommerce-Address { margin: 0; }
.mileto-address-grid address { font-style: normal; font-size: 14px; line-height: 1.6; color: var(--account-text-soft); }
/* wrapper de campos de endereço em 2 colunas */
.woocommerce-address-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 16px; }
.woocommerce-address-fields__field-wrapper .form-row-wide, 
.woocommerce-address-fields__field-wrapper .form-row-first, 
.woocommerce-address-fields__field-wrapper .form-row-last { grid-column: auto; }
@media (max-width: 560px) { .mileto-form-grid, .woocommerce-address-fields__field-wrapper { grid-template-columns: 1fr; } }

/* ===== Refino minimalista da conta (sem underline, bordas claras, menos espaço) ===== */
.woocommerce-MyAccount-content a,
.woocommerce-MyAccount-content a:hover,
.account-link, .account-link:hover,
.account-auth-footer a,
.mileto-continue-link, .mileto-continue-link:hover { text-decoration: none !important; }

/* inputs/selects: bordas claras, cantos suaves, espaçamento menor */
.woocommerce-account .woocommerce-MyAccount-content .form-row { margin-bottom: 12px; }
.woocommerce-account .woocommerce-MyAccount-content input.input-text,
.woocommerce-account .woocommerce-MyAccount-content input[type="text"],
.woocommerce-account .woocommerce-MyAccount-content input[type="email"],
.woocommerce-account .woocommerce-MyAccount-content input[type="tel"],
.woocommerce-account .woocommerce-MyAccount-content input[type="password"],
.woocommerce-account .woocommerce-MyAccount-content select,
.woocommerce-account .woocommerce-MyAccount-content .select2-selection {
	border: 1px solid var(--account-border) !important; border-radius: 10px !important;
	padding: 10px 13px !important; font-size: 14px !important; background: #fff !important;
	min-height: 44px; box-shadow: none !important; color: var(--account-text) !important; line-height: 1.4;
}
.woocommerce-account .woocommerce-MyAccount-content input:focus,
.woocommerce-account .woocommerce-MyAccount-content select:focus { border-color: var(--account-accent) !important; box-shadow: 0 0 0 3px var(--account-accent-soft) !important; }
.woocommerce-account .woocommerce-MyAccount-content .select2-container { width: 100% !important; }
.woocommerce-account .woocommerce-MyAccount-content .select2-selection__rendered { line-height: 22px !important; padding: 0 !important; color: var(--account-text) !important; }
.woocommerce-account .woocommerce-MyAccount-content .select2-selection__arrow { top: 9px !important; right: 8px; }
.woocommerce-account .woocommerce-MyAccount-content label { margin-bottom: 5px; }

/* fieldset "alterar senha" mais leve */
.woocommerce-account fieldset { border: 1px solid var(--account-border); border-radius: 12px; padding: 18px 18px 4px; margin-top: 20px; background: #fbfaf8; }
.woocommerce-account fieldset legend { color: var(--account-text-soft); font-size: 12.5px; }

/* card de pedidos: mais respiro + alinhamento */
.account-order-row { grid-template-columns: minmax(0,1fr) auto auto 18px; gap: 20px; padding: 20px 24px; }
.account-order-meta { gap: 4px; }
.account-order-status { min-width: 116px; }
.account-order-total { min-width: 90px; }
.account-order-chevron { color: var(--account-text-muted); }
.account-tabs a.is-active { color: var(--account-text); }

/* sem underline em qualquer link da conta (inclui menu lateral) */
.account-shell a, .account-nav a, .account-card-head a, .account-sidebar a { text-decoration: none !important; }

/* ===== Auth (login / cadastro / recuperar senha): refino minimalista ===== */
/* remove a "caixa extra com borda" padrão do WooCommerce em form.login/register/lost */
.account-auth form.login,
.account-auth form.register,
.account-auth form.lost_reset_password,
.account-auth .account-form { border: none !important; padding: 0 !important; margin: 0 !important; border-radius: 0 !important; background: transparent !important; }

/* card mais largo */
.account-auth-card { max-width: 600px; padding: 40px 40px; }

/* botões: hover sem vermelho (força a cor da marca) */
.account-auth .btn-primary, .account-auth button.btn-primary { background: var(--account-primary) !important; color: #fff !important; }
.account-auth .btn-primary:hover, .account-auth .btn-primary:focus, .account-auth button.btn-primary:hover { background: var(--account-primary-hover) !important; color: #fff !important; }

/* abas Entrar/Criar conta: hover sem vermelho */
.account-auth-tabs button:hover { background: rgba(31,27,22,.06) !important; color: var(--account-text) !important; }
.account-auth-tabs button.is-active, .account-auth-tabs button.is-active:hover { background: var(--account-primary) !important; color: #fff !important; }

/* texto de política de privacidade no cadastro */
.account-auth .woocommerce-privacy-policy-text { font-size: 12px; line-height: 1.55; color: var(--account-text-muted); margin: 14px 0 0; }
.account-auth .woocommerce-privacy-policy-text a { color: var(--account-accent); text-decoration: none; }
.account-auth .woocommerce-form-login__rememberme, .account-auth .woocommerce-form-register__submit { margin: 0; }

/* ===== Notices (erro/sucesso) na conta: box limpo, sem ícone quebrado ===== */
.woocommerce-account .woocommerce-error::before,
.woocommerce-account .woocommerce-message::before,
.woocommerce-account .woocommerce-info::before,
.woocommerce-account .woocommerce-error li::before,
.woocommerce-account .woocommerce-message li::before,
.woocommerce-account .woocommerce-info li::before { display: none !important; content: none !important; }
.woocommerce-account .woocommerce-error, .woocommerce-account .woocommerce-message, .woocommerce-account .woocommerce-info {
	padding: 14px 18px !important; position: relative; font-size: 14px; line-height: 1.5;
}
.woocommerce-account .woocommerce-error li, .woocommerce-account .woocommerce-message li, .woocommerce-account .woocommerce-info li { list-style: none !important; margin: 0; padding: 0; }
.woocommerce-account .woocommerce-error a, .woocommerce-account .woocommerce-message a { color: inherit; text-decoration: underline; }
/* nas telas de auth (login/senha) a notice acompanha a largura do card */
.woocommerce-account .woocommerce-notices-wrapper { max-width: 600px; margin: 0 auto; padding: 0 16px; }
