/* Minha Conta — padrão Forte (menu em árvore + estilo via CSS vars). */

/* O grid de 2 colunas (menu 260px + conteúdo) só vale quando o MENU DE
   FATO EXISTE — ou seja, com usuário logado: `Frontend::render_nav()` está
   pendurado em `woocommerce_account_navigation`, hook que o Woo só dispara
   pra quem está autenticado.

   Sem esse gate, o mesmo grid caía sobre a tela de LOGIN (deslogado o
   wrapper `.woocommerce` carrega o bloco de entrar/cadastrar, não o par
   menu+conteúdo): o formulário inteiro era espremido na trilha de 260px e
   os grids aninhados do tema colapsavam em cascata — medido 25px de
   largura no painel de login, com o texto quebrando uma palavra por linha
   e a tela ficando inutilizável pra logar.

   `:has()` aqui segue o mesmo idioma que este arquivo já usa nas 3 linhas
   abaixo (posição do menu) — nenhuma dependência de browser nova. */
.woocommerce-account .woocommerce:has(.forte-acct-nav) {
	display: grid;
	grid-template-columns: 260px 1fr;
	gap: 28px;
	align-items: start;
	max-width: 1120px;
	margin: 0 auto;
}
/* O WooCommerce core desenha esta tela com o layout ANTIGO, de float:
   `woocommerce-layout.css` dá `float:left; width:30%` ao menu e
   `float:right; width:68%` ao conteúdo, e ainda pendura um clearfix
   (`.woocommerce::before/::after { content:" "; display:table }`).

   Num container grid o `float` é ignorado, mas o resto NÃO:

   1. Os dois pseudo-elementos do clearfix viram ITENS DE GRID e comem
      células — medido: `::before` ficava em (col 1, linha 1), empurrando o
      MENU para a coluna 2 e o CONTEÚDO para a linha 2, coluna 1. O painel
      aparecia com o menu à direita e o conteúdo embaixo, na coluna estreita.
   2. As larguras percentuais resolvem contra a TRILHA, não contra o
      container: o menu virava 30% de 832px (=249.6px) e o conteúdo 68% de
      260px (=176.8px) — exatamente invertido.

   As duas regras abaixo devolvem o controle ao grid. Só dentro desta tela;
   o clearfix e as larguras do core seguem valendo em todo o resto do Woo. */
.woocommerce-account .woocommerce:has(.forte-acct-nav)::before,
.woocommerce-account .woocommerce:has(.forte-acct-nav)::after {
	display: none;
}
.woocommerce-account .woocommerce:has(.forte-acct-nav) > .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce:has(.forte-acct-nav) > .woocommerce-MyAccount-content {
	float: none;
	width: auto;
	min-width: 0;
}

.woocommerce-account .woocommerce:has(.forte-acct-pos-right) { grid-template-columns: 1fr 260px; }
.woocommerce-account .woocommerce:has(.forte-acct-pos-right) .forte-acct-nav { order: 2; }
.woocommerce-account .woocommerce:has(.forte-acct-pos-horizontal) { grid-template-columns: 1fr; }
@media (max-width: 768px) {
	/* O colapso PRECISA do :has(): sem ele fica em (0,2,0) e perde para o
	   grid desktop de :17/:53 em (0,3,0) — media query não soma especificidade
	   (REV-B3-002: toda a conta renderizava a coluna de conteúdo com 70px). */
	.woocommerce-account .woocommerce,
	.woocommerce-account .woocommerce:has(.forte-acct-nav),
	.woocommerce-account .woocommerce:has(.forte-acct-pos-right) { grid-template-columns: 1fr; }
}

/* Bloco do usuário */
.forte-acct-user {
	display: flex;
	align-items: center;
	gap: 12px;
	background: radial-gradient(120% 160% at 90% 0%, #0e3e92, #0b2750 70%, #091b36);
	color: #fff;
	border-radius: 14px;
	padding: 16px;
	margin-bottom: 14px;
}
.forte-acct-user__avatar {
	width: var(--forte-acct-avatar, 56px);
	height: var(--forte-acct-avatar, 56px);
	border-radius: var(--forte-acct-avatar-radius, 50%);
	border: 2px solid rgba(255, 255, 255, 0.25);
	object-fit: cover;
}
.forte-acct-user__info { display: flex; flex-direction: column; min-width: 0; }
.forte-acct-user__info strong { font-size: 14.5px; font-weight: 800; }
.forte-acct-user__info span { font-size: 12px; color: #b9c9e2; overflow: hidden; text-overflow: ellipsis; }
.forte-acct-avatarwrap { position: relative; display: inline-block; cursor: pointer; line-height: 0; flex-shrink: 0; }
.forte-acct-avataredit {
	position: absolute;
	right: -3px;
	bottom: -3px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--forte-acct-accent, #5b3df0);
	color: #fff;
	display: grid;
	place-items: center;
	border: 2px solid #0b2750;
}
.forte-acct-avatarwrap.is-loading { opacity: 0.55; pointer-events: none; }

/* Navegação */
.forte-acct-nav { background: var(--forte-acct-bg, #fff); border: 1px solid #e6eaf1; border-radius: 14px; padding: 8px; }
.forte-acct-menu { list-style: none; margin: 0; padding: 0; }
.forte-acct-item { margin: 0; }
.forte-acct-item a,
.forte-acct-grouptoggle {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 11px 14px;
	border: none;
	background: none;
	border-radius: 9px;
	font-size: var(--forte-acct-font, 14px);
	font-weight: 600;
	color: var(--forte-acct-text, #5c6e82);
	text-decoration: none;
	cursor: pointer;
	transition: background 0.15s, color 0.15s;
	font-family: inherit;
	text-align: left;
}
.forte-acct-item a:hover,
.forte-acct-grouptoggle:hover { background: #f3f6fb; color: #14233a; }
.forte-acct-item.is-active a {
	background: color-mix(in srgb, var(--forte-acct-accent, #5b3df0) 12%, #fff);
	color: var(--forte-acct-accent, #5b3df0);
	box-shadow: inset 3px 0 0 var(--forte-acct-accent, #5b3df0);
}
.forte-acct-ic { display: inline-flex; flex-shrink: 0; }
.forte-acct-ic svg { display: block; }

/* Grupos */
.forte-acct-caret {
	margin-left: auto;
	width: 8px;
	height: 8px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform 0.15s;
	opacity: 0.6;
}
.forte-acct-group.is-open .forte-acct-caret { transform: rotate(-135deg); }
.forte-acct-submenu { list-style: none; margin: 0; padding: 0 0 0 12px; max-height: 0; overflow: hidden; transition: max-height 0.2s; }
.forte-acct-group.is-open .forte-acct-submenu { max-height: 600px; }
.forte-acct-submenu .forte-acct-item a { padding-left: 22px; font-weight: 500; }

.forte-acct-item--logout a { color: #b91c1c; }
.forte-acct-item--logout a:hover { background: #fdecec; color: #b91c1c; }

/* Layout: modern / simple */
.forte-acct-layout-modern .forte-acct-item a { box-shadow: 0 1px 2px rgba(20, 40, 80, 0.05); margin-bottom: 4px; }
.forte-acct-layout-simple { border: none; background: none; padding: 0; }
.forte-acct-layout-simple .forte-acct-item a { border-radius: 0; border-bottom: 1px solid #eef1f6; }

/* Posição horizontal */
.forte-acct-pos-horizontal { padding: 6px; }
.forte-acct-pos-horizontal .forte-acct-user { display: none; }
.forte-acct-pos-horizontal .forte-acct-menu { display: flex; flex-wrap: wrap; gap: 4px; }
.forte-acct-pos-horizontal .forte-acct-item a { padding: 10px 14px; }
.forte-acct-pos-horizontal .forte-acct-item.is-active a { box-shadow: inset 0 -3px 0 var(--forte-acct-accent, #5b3df0); }

/* Conteúdo */
.woocommerce-MyAccount-content {
	background: #fff;
	border: 1px solid #e6eaf1;
	border-radius: 14px;
	padding: 26px 28px;
	min-width: 0;
}
.forte-acct-welcome {
	background: #f3f8ff;
	border: 1px solid #d9e8fd;
	border-radius: 12px;
	padding: 16px 18px;
	margin-bottom: 20px;
	color: #2c3a4d;
	font-size: 14px;
}
.forte-acct-welcome p:last-child,
.forte-acct-content p:last-child { margin-bottom: 0; }
