/*
 * Baby Bloom — "Mi cuenta" (WooCommerce).
 * TODO el CSS está acotado a body.bb-account-page para no afectar Shop, Cart,
 * Checkout, producto, blog ni admin. Reutiliza tokens.css y base.css. La franja
 * del hero usa el sistema .bbet-band. Sin scroll horizontal.
 */

/* ===================================================================== *
 * Iconografía lineal (máscaras SVG recolorables con currentColor)
 * ===================================================================== */
.bb-account-page .bb-account-ico {
	display: inline-block;
	width: 22px; height: 22px;
	flex: none;
	background-color: currentColor;
	-webkit-mask-position: center; mask-position: center;
	-webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
	-webkit-mask-size: contain; mask-size: contain;
}
.bb-account-page .bb-account-ico--dashboard { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1.5'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1.5'/%3E%3C/svg%3E"); }
.bb-account-page .bb-account-ico--orders { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z'/%3E%3Cpath d='M3.27 6.96 12 12.01l8.73-5.05'/%3E%3Cpath d='M12 22.08V12'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z'/%3E%3Cpath d='M3.27 6.96 12 12.01l8.73-5.05'/%3E%3Cpath d='M12 22.08V12'/%3E%3C/svg%3E"); }
.bb-account-page .bb-account-ico--downloads { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpath d='M7 10l5 5 5-5'/%3E%3Cpath d='M12 15V3'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpath d='M7 10l5 5 5-5'/%3E%3Cpath d='M12 15V3'/%3E%3C/svg%3E"); }
.bb-account-page .bb-account-ico--address { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E"); }
.bb-account-page .bb-account-ico--user { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.4'/%3E%3Cpath d='M5 20c0-3.7 3.1-6.2 7-6.2s7 2.5 7 6.2'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.4'/%3E%3Cpath d='M5 20c0-3.7 3.1-6.2 7-6.2s7 2.5 7 6.2'/%3E%3C/svg%3E"); }
.bb-account-page .bb-account-ico--payment { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2.5'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2.5'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E"); }
.bb-account-page .bb-account-ico--history { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 3-6.7L3 8'/%3E%3Cpath d='M3 3v5h5'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 3-6.7L3 8'/%3E%3Cpath d='M3 3v5h5'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E"); }
.bb-account-page .bb-account-ico--logout { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpath d='M16 17l5-5-5-5'/%3E%3Cpath d='M21 12H9'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpath d='M16 17l5-5-5-5'/%3E%3Cpath d='M21 12H9'/%3E%3C/svg%3E"); }

/* ===================================================================== *
 * Contenedor general + hero
 * ===================================================================== */
.bb-account-main { overflow-x: clip; padding-block: clamp(2.5rem, 5vw, 4rem); background: var(--bb-bg-page); }
.bb-account__container { width: 90%; max-width: 1120px; margin-inline: auto; }
@media (max-width: 600px) { .bb-account__container { width: calc(100% - 32px); } }

.bb-account-hero { background: var(--bb-creatividad-100); position: relative; overflow: hidden; }
.bb-account-hero__inner {
	width: 90%; max-width: 1120px; margin-inline: auto;
	padding-block: clamp(2.2rem, 4.5vw, 3.4rem);
	position: relative; z-index: 1;
}
@media (max-width: 600px) { .bb-account-hero__inner { width: calc(100% - 32px); } }
.bb-account-hero h1 { font-family: var(--bb-font-heading); font-size: var(--bb-text-3xl); color: var(--bb-ink); margin: .35rem 0 0; line-height: 1.15; }
.bb-account-hero .bb-kicker { display: block; }
.bb-account-hero__lead { color: var(--bb-text-default); margin: .7rem 0 0; max-width: 60ch; line-height: 1.6; }
.bb-account-hero__deco {
	position: absolute; right: -28px; top: -28px;
	width: 160px; height: 160px;
	color: var(--bb-creatividad);
	opacity: .22;
	background-color: currentColor;
}

/* ===================================================================== *
 * Avisos (error / éxito / info) — accesibles, no solo color
 * ===================================================================== */
.bb-account-page .woocommerce-error,
.bb-account-page .woocommerce-message,
.bb-account-page .woocommerce-info {
	border-radius: var(--bb-radius-md);
	border: 1px solid;
	padding: 1rem 1rem 1rem 3rem;
	position: relative;
	list-style: none;
	margin: 0 0 1.4rem;
	line-height: 1.5;
	font-size: .96rem;
}
.bb-account-page .woocommerce-error::before,
.bb-account-page .woocommerce-message::before,
.bb-account-page .woocommerce-info::before {
	position: absolute; left: 1rem; top: 1rem;
	width: 20px; height: 20px; content: ""; background-color: currentColor;
	-webkit-mask-position: center; mask-position: center; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain;
}
.bb-account-page .woocommerce-error { background: var(--bb-amor-100); border-color: #E4A0C2; color: var(--bb-amor-900); }
.bb-account-page .woocommerce-error::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 8v5'/%3E%3Cpath d='M12 16.5v.01'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 8v5'/%3E%3Cpath d='M12 16.5v.01'/%3E%3C/svg%3E"); }
.bb-account-page .woocommerce-message { background: var(--bb-equilibrio-100); border-color: var(--bb-equilibrio); color: var(--bb-equilibrio-700); }
.bb-account-page .woocommerce-message::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E"); }
.bb-account-page .woocommerce-info { background: var(--bb-calma-100); border-color: var(--bb-calma); color: var(--bb-confianza-700); }
.bb-account-page .woocommerce-info::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5'/%3E%3Cpath d='M12 7.5v.01'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5'/%3E%3Cpath d='M12 7.5v.01'/%3E%3C/svg%3E"); }
.bb-account-page .woocommerce-error a, .bb-account-page .woocommerce-message a, .bb-account-page .woocommerce-info a { color: inherit; text-decoration: underline; font-weight: 600; }
.bb-account-page .woocommerce-error .button, .bb-account-page .woocommerce-message .button, .bb-account-page .woocommerce-info .button { float: none; margin-left: .6rem; }

/* ===================================================================== *
 * Botones de marca dentro de la cuenta
 * ===================================================================== */
.bb-account-page .woocommerce .button,
.bb-account-page .woocommerce button[type="submit"],
.bb-account-page .woocommerce input[type="submit"] {
	display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
	background: var(--bb-action-primary); color: #fff;
	border: none; border-radius: var(--bb-radius-full);
	padding: .7rem 1.5rem; min-height: 44px; font-family: var(--bb-font-body); font-weight: 500; font-size: 1rem;
	cursor: pointer; text-decoration: none; transition: background .18s ease, transform .18s ease;
}
.bb-account-page .woocommerce .button:hover,
.bb-account-page .woocommerce button[type="submit"]:hover { background: var(--bb-action-primary-hover); color: #fff; transform: translateY(-1px); }
/* La acción "Ver" del pedido, en tono secundario (azul marino). */
.bb-account-page .woocommerce-orders-table__cell-order-actions .button { background: var(--bb-action-secondary); }
.bb-account-page .woocommerce-orders-table__cell-order-actions .button:hover { background: var(--bb-action-secondary-hover); }

/* ===================================================================== *
 * Campos de formulario
 * ===================================================================== */
.bb-account-page .woocommerce form .form-row label,
.bb-account-page .woocommerce-EditAccountForm label,
.bb-account-page .woocommerce-address-fields label {
	display: block; font-weight: 500; color: var(--bb-ink); margin-bottom: .35rem; font-size: .95rem;
}
.bb-account-page .woocommerce :where(input[type="text"], input[type="email"], input[type="password"], input[type="tel"], input[type="number"], input[type="search"], select, textarea) {
	width: 100%; min-height: 48px; box-sizing: border-box;
	border: 1px solid var(--bb-border-default); border-radius: var(--bb-radius-sm);
	padding: .6rem .85rem; font: inherit; color: var(--bb-ink); background: #fff;
}
.bb-account-page .woocommerce textarea { min-height: 96px; }
.bb-account-page .woocommerce :where(input, select, textarea):focus-visible {
	outline: 3px solid var(--bb-focus-ring); outline-offset: 1px; border-color: var(--bb-confianza);
}
.bb-account-page .woocommerce .required { color: var(--bb-amor-700); border: 0; }

/* ===================================================================== *
 * Estado SIN sesión — login + confianza
 * ===================================================================== */
.bb-account-page .bb-login { display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(1.4rem, 3vw, 2.4rem); align-items: stretch; }
.bb-account-page .bb-login__col--form {
	background: #fff; border: 1px solid var(--bb-border-subtle); border-radius: var(--bb-radius-lg);
	box-shadow: var(--bb-shadow-sm); padding: clamp(1.5rem, 3vw, 2.4rem);
}
.bb-account-page .bb-login__title { font-family: var(--bb-font-heading); font-size: var(--bb-text-xl); color: var(--bb-ink); margin: 0 0 .4rem; }
.bb-account-page .bb-login__sub { color: var(--bb-text-muted); margin: 0 0 1.5rem; }
.bb-account-page .woocommerce-form-login__submit { width: 100%; margin-top: .4rem; }
.bb-account-page .bb-login__row-remember { display: flex; flex-direction: column; gap: .9rem; }
.bb-account-page .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: .5rem; font-weight: 400; color: var(--bb-text-default); }
.bb-account-page .woocommerce-form-login__rememberme input { min-height: 0; width: auto; }
.bb-account-page .lost_password { margin: 1rem 0 0; }
.bb-account-page .lost_password a { color: var(--bb-text-link, var(--bb-confianza)); font-weight: 500; }
/* Columna de confianza */
.bb-account-page .bb-login__col--aside {
	background: var(--bb-calma-100); border-radius: var(--bb-radius-lg);
	padding: clamp(1.5rem, 3vw, 2.4rem); display: flex; flex-direction: column; justify-content: center;
}
.bb-account-page .bb-login__aside-title { font-family: var(--bb-font-heading); font-size: var(--bb-text-xl); color: var(--bb-confianza-900); margin: 0 0 1.2rem; }
.bb-account-page .bb-login__benefits { list-style: none; margin: 0; padding: 0; display: grid; gap: 1rem; }
.bb-account-page .bb-login__benefits li { display: flex; align-items: center; gap: .8rem; color: var(--bb-confianza-900); line-height: 1.45; }
.bb-account-page .bb-login__benefits .bb-account-ico { color: var(--bb-confianza); }

/* ===================================================================== *
 * Recuperar contraseña
 * ===================================================================== */
.bb-account-page .bb-lostpass { display: flex; justify-content: center; }
.bb-account-page .bb-lostpass__card {
	width: 100%; max-width: 560px; background: #fff;
	border: 1px solid var(--bb-border-subtle); border-radius: var(--bb-radius-lg);
	box-shadow: var(--bb-shadow-sm); padding: clamp(1.5rem, 3vw, 2.4rem);
}
.bb-account-page .bb-lostpass__title { font-family: var(--bb-font-heading); font-size: var(--bb-text-xl); color: var(--bb-ink); margin: 0 0 .6rem; }
.bb-account-page .bb-lostpass__intro { color: var(--bb-text-muted); margin: 0 0 1.4rem; line-height: 1.6; }
.bb-account-page .bb-lostpass__card .button { width: 100%; }
.bb-account-page .bb-lostpass__back { margin: 1.2rem 0 0; text-align: center; }
.bb-account-page .bb-lostpass__back a { color: var(--bb-confianza); font-weight: 500; }

/* ===================================================================== *
 * Estado CON sesión — layout navegación + contenido
 * ===================================================================== */
.bb-account-page.logged-in .woocommerce {
	display: grid;
	grid-template-columns: minmax(220px, 0.32fr) minmax(0, 1fr);
	gap: 32px;
	align-items: start;
}
/* Los avisos ocupan toda la fila, arriba del layout. */
.bb-account-page.logged-in .woocommerce > .woocommerce-notices-wrapper,
.bb-account-page.logged-in .woocommerce > .woocommerce-message,
.bb-account-page.logged-in .woocommerce > .woocommerce-error,
.bb-account-page.logged-in .woocommerce > .woocommerce-info { grid-column: 1 / -1; }

/* Navegación */
.bb-account-page .woocommerce-MyAccount-navigation {
	background: #fff; border: 1px solid var(--bb-border-subtle);
	border-radius: var(--bb-radius-lg); box-shadow: var(--bb-shadow-sm);
	padding: .6rem; position: sticky; top: 1.2rem;
}
.bb-account-page .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .15rem; }
.bb-account-page .woocommerce-MyAccount-navigation-link a {
	display: flex; align-items: center; gap: .7rem;
	padding: .7rem .85rem; min-height: 44px; border-radius: var(--bb-radius-md);
	color: var(--bb-text-default); text-decoration: none; font-weight: 500; line-height: 1.2;
	transition: background .15s ease, color .15s ease;
}
.bb-account-page .woocommerce-MyAccount-navigation-link a::before {
	content: ""; width: 20px; height: 20px; flex: none; background-color: currentColor;
	-webkit-mask-position: center; mask-position: center; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain;
}
.bb-account-page .woocommerce-MyAccount-navigation-link--dashboard a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1.5'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1.5'/%3E%3C/svg%3E"); }
.bb-account-page .woocommerce-MyAccount-navigation-link--orders a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z'/%3E%3Cpath d='M3.27 6.96 12 12.01l8.73-5.05'/%3E%3Cpath d='M12 22.08V12'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z'/%3E%3Cpath d='M3.27 6.96 12 12.01l8.73-5.05'/%3E%3Cpath d='M12 22.08V12'/%3E%3C/svg%3E"); }
.bb-account-page .woocommerce-MyAccount-navigation-link--downloads a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpath d='M7 10l5 5 5-5'/%3E%3Cpath d='M12 15V3'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpath d='M7 10l5 5 5-5'/%3E%3Cpath d='M12 15V3'/%3E%3C/svg%3E"); }
.bb-account-page .woocommerce-MyAccount-navigation-link--edit-address a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E"); }
.bb-account-page .woocommerce-MyAccount-navigation-link--payment-methods a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2.5'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='5' width='20' height='14' rx='2.5'/%3E%3Cpath d='M2 10h20'/%3E%3C/svg%3E"); }
.bb-account-page .woocommerce-MyAccount-navigation-link--edit-account a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.4'/%3E%3Cpath d='M5 20c0-3.7 3.1-6.2 7-6.2s7 2.5 7 6.2'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.4'/%3E%3Cpath d='M5 20c0-3.7 3.1-6.2 7-6.2s7 2.5 7 6.2'/%3E%3C/svg%3E"); }
.bb-account-page .woocommerce-MyAccount-navigation-link--customer-logout a::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpath d='M16 17l5-5-5-5'/%3E%3Cpath d='M21 12H9'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpath d='M16 17l5-5-5-5'/%3E%3Cpath d='M21 12H9'/%3E%3C/svg%3E"); }
.bb-account-page .woocommerce-MyAccount-navigation-link a:hover { background: var(--bb-calma-100); color: var(--bb-confianza-700); }
.bb-account-page .woocommerce-MyAccount-navigation-link.is-active a {
	background: var(--bb-amor-100); color: var(--bb-amor-900);
	box-shadow: inset 3px 0 0 var(--bb-amor-700);
}
/* Cerrar sesión: acción secundaria, separada del resto. */
.bb-account-page .woocommerce-MyAccount-navigation-link--customer-logout { margin-top: .4rem; border-top: 1px solid var(--bb-border-subtle); padding-top: .4rem; }
.bb-account-page .woocommerce-MyAccount-navigation-link--customer-logout a { color: var(--bb-text-muted); font-weight: 400; }
.bb-account-page .woocommerce-MyAccount-navigation-link--customer-logout a:hover { background: var(--bb-gris-100); color: var(--bb-ink); }

/* Contenido */
.bb-account-page .woocommerce-MyAccount-content {
	background: #fff; border: 1px solid var(--bb-border-subtle);
	border-radius: var(--bb-radius-lg); box-shadow: var(--bb-shadow-sm);
	padding: clamp(1.4rem, 3vw, 2.4rem); min-width: 0;
}
.bb-account-page .woocommerce-MyAccount-content > p:first-child { margin-top: 0; }
.bb-account-page .woocommerce-MyAccount-content h2,
.bb-account-page .woocommerce-MyAccount-content h3 { font-family: var(--bb-font-heading); color: var(--bb-ink); }

/* ===================================================================== *
 * Dashboard: accesos rápidos
 * ===================================================================== */
.bb-account-page .bb-account-quick { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1rem; margin-top: 1.6rem; }
.bb-account-page .bb-account-quick__card {
	display: grid; gap: .25rem; padding: 1.2rem 1.1rem;
	border: 1px solid var(--bb-border-subtle); border-radius: var(--bb-radius-md);
	background: var(--bb-bg-page); text-decoration: none; transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.bb-account-page .bb-account-quick__card:hover { transform: translateY(-3px); box-shadow: var(--bb-shadow-sm); border-color: var(--bb-amor); }
.bb-account-page .bb-account-quick__ico { color: var(--bb-amor-700); margin-bottom: .3rem; }
.bb-account-page .bb-account-quick__label { font-family: var(--bb-font-heading); font-weight: 700; color: var(--bb-ink); }
.bb-account-page .bb-account-quick__desc { color: var(--bb-text-muted); font-size: .9rem; }

/* ===================================================================== *
 * Pedidos: tabla + chips de estado
 * ===================================================================== */
.bb-account-page .woocommerce-orders-table { width: 100%; border-collapse: collapse; }
.bb-account-page .woocommerce-orders-table__header { background: var(--bb-confianza-900); color: #fff; text-align: left; padding: .85rem 1rem; font-family: var(--bb-font-heading); font-size: .9rem; }
.bb-account-page .woocommerce-orders-table__header:first-child { border-top-left-radius: var(--bb-radius-sm); }
.bb-account-page .woocommerce-orders-table__header:last-child { border-top-right-radius: var(--bb-radius-sm); }
.bb-account-page .woocommerce-orders-table__cell { padding: .85rem 1rem; border-bottom: 1px solid var(--bb-border-subtle); vertical-align: middle; }
.bb-account-page .woocommerce-orders-table__cell-order-actions { text-align: right; }
.bb-account-page .bb-order-status { display: inline-block; padding: .25rem .7rem; border-radius: var(--bb-radius-full); font-size: .82rem; font-weight: 600; background: var(--bb-gris-100); color: var(--bb-gris-700); }
.bb-account-page .bb-order-status--completed { background: var(--bb-equilibrio-100); color: var(--bb-equilibrio-700); }
.bb-account-page .bb-order-status--processing { background: var(--bb-calma-100); color: var(--bb-confianza-700); }
.bb-account-page .bb-order-status--on-hold { background: var(--bb-alegria-100); color: var(--bb-alegria-700); }
.bb-account-page .bb-order-status--pending { background: var(--bb-alegria-100); color: var(--bb-alegria-700); }
.bb-account-page .bb-order-status--cancelled,
.bb-account-page .bb-order-status--failed,
.bb-account-page .bb-order-status--refunded { background: var(--bb-amor-100); color: var(--bb-amor-900); }

/* Estado vacío */
.bb-account-page .bb-account-empty { text-align: center; padding: 1.5rem 1rem; }
.bb-account-page .bb-account-empty__ico { width: 48px; height: 48px; color: var(--bb-creatividad); margin: 0 auto .6rem; }
.bb-account-page .bb-account-empty__title { font-family: var(--bb-font-heading); font-size: var(--bb-text-xl); color: var(--bb-ink); margin: 0 0 .5rem; }
.bb-account-page .bb-account-empty__text { color: var(--bb-text-muted); max-width: 44ch; margin: 0 auto 1.4rem; line-height: 1.6; }

/* ===================================================================== *
 * Direcciones
 * ===================================================================== */
.bb-account-page .woocommerce-Addresses { display: grid; grid-template-columns: 1fr 1fr; gap: 1.4rem; margin-top: .5rem; }
.bb-account-page .woocommerce-Address { background: var(--bb-bg-page); border: 1px solid var(--bb-border-subtle); border-radius: var(--bb-radius-md); padding: 1.4rem; }
.bb-account-page .woocommerce-Address-title { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: .6rem; }
.bb-account-page .woocommerce-Address-title h2, .bb-account-page .woocommerce-Address-title h3 { margin: 0; font-size: var(--bb-text-xl); }
.bb-account-page .woocommerce-Address address { font-style: normal; color: var(--bb-text-default); line-height: 1.6; }

/* ===================================================================== *
 * Detalles de la cuenta: separar datos y contraseña
 * ===================================================================== */
.bb-account-page .woocommerce-EditAccountForm fieldset {
	margin: 2rem 0 0; padding: 1.4rem; border: 1px solid var(--bb-border-subtle); border-radius: var(--bb-radius-md);
}
.bb-account-page .woocommerce-EditAccountForm fieldset legend { font-family: var(--bb-font-heading); font-weight: 700; color: var(--bb-ink); padding: 0 .5rem; }
.bb-account-page .woocommerce-EditAccountForm .woocommerce-form-row--first,
.bb-account-page .woocommerce-address-fields .form-row-first { width: 100%; }
@media (min-width: 720px) {
	.bb-account-page .woocommerce-EditAccountForm > p.form-row-first,
	.bb-account-page .woocommerce-address-fields .form-row-first { float: none; display: inline-block; width: calc(50% - .6rem); margin-right: 1rem; }
	.bb-account-page .woocommerce-EditAccountForm > p.form-row-last,
	.bb-account-page .woocommerce-address-fields .form-row-last { float: none; display: inline-block; width: calc(50% - .6rem); }
}

/* ===================================================================== *
 * Responsive
 * ===================================================================== */
@media (max-width: 880px) {
	.bb-account-page .bb-login { grid-template-columns: 1fr; }
	.bb-account-page .bb-login__col--aside { order: 2; }
	.bb-account-page.logged-in .woocommerce { grid-template-columns: 1fr; }
	.bb-account-page .woocommerce-MyAccount-navigation { position: static; }
	/* Navegación como cuadrícula compacta (descubrible, sin scroll lateral). */
	.bb-account-page .woocommerce-MyAccount-navigation ul { grid-template-columns: 1fr 1fr; gap: .4rem; }
	.bb-account-page .woocommerce-MyAccount-navigation-link--customer-logout { grid-column: 1 / -1; border-top: 0; margin-top: 0; }
	.bb-account-page .woocommerce-Addresses { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
	.bb-account-page .woocommerce-MyAccount-navigation ul { grid-template-columns: 1fr; }
	/* Tabla de pedidos: filas en bloques, conservando etiquetas. */
	.bb-account-page .woocommerce-orders-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
	.bb-account-page .woocommerce-orders-table,
	.bb-account-page .woocommerce-orders-table tbody,
	.bb-account-page .woocommerce-orders-table tr,
	.bb-account-page .woocommerce-orders-table td,
	.bb-account-page .woocommerce-orders-table th { display: block; width: 100%; }
	.bb-account-page .woocommerce-orders-table__row { border: 1px solid var(--bb-border-subtle); border-radius: var(--bb-radius-md); margin-bottom: 1rem; padding: .4rem .2rem; }
	.bb-account-page .woocommerce-orders-table__cell { border-bottom: 1px solid var(--bb-border-subtle); display: flex; justify-content: space-between; gap: 1rem; text-align: right; }
	.bb-account-page .woocommerce-orders-table__cell:last-child { border-bottom: 0; }
	.bb-account-page .woocommerce-orders-table__cell::before { content: attr(data-title); font-weight: 600; color: var(--bb-ink); text-align: left; }
	.bb-account-page .woocommerce-orders-table__cell-order-actions { justify-content: flex-end; }
	.bb-account-page .woocommerce-orders-table__cell-order-actions::before { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	.bb-account-page .bb-account-quick__card,
	.bb-account-page .woocommerce .button { transition: none; }
}
