/* LC Account — overrides voor Elementor's Mijn account-widget (hogere specificiteit) */

/* Layout: nav links, inhoud rechts */
body.lc-account .woocommerce:has(> .woocommerce-MyAccount-navigation) {
	display: grid !important;
	grid-template-columns: 260px minmax(0, 1fr) !important;
	gap: 32px !important;
	align-items: start !important;
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	padding: 40px 20px 72px !important;
}

body.lc-account .elementor-widget-woocommerce-my-account,
body.lc-account .elementor-widget-woocommerce-my-account .elementor-widget-container {
	width: 100% !important;
}

/* Navigatie */
body.lc-account .woocommerce-MyAccount-navigation {
	float: none !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 8px !important;
	background: #fff !important;
	border: 1px solid var(--lca-line) !important;
	border-radius: var(--lca-radius) !important;
	box-shadow: var(--lca-shadow) !important;
	position: sticky;
	top: 24px;
}

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

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

body.lc-account .woocommerce-MyAccount-navigation ul li a {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	width: 100% !important;
	box-sizing: border-box !important;
	padding: 12px 14px !important;
	background: transparent !important;
	border: 0 !important;
	border-left: 3px solid transparent !important;
	border-radius: var(--lca-radius) !important;
	font: 600 14px/1.2 'Montserrat', sans-serif !important;
	color: var(--lca-ink) !important;
	text-decoration: none !important;
}

body.lc-account .woocommerce-MyAccount-navigation ul li a::before {
	content: '' !important;
	display: block !important;
	width: 18px !important;
	height: 18px !important;
	flex: 0 0 18px !important;
	margin: 0 !important;
	background-color: currentColor !important;
	-webkit-mask-image: var(--lca-icon) !important;
	mask-image: var(--lca-icon) !important;
	-webkit-mask-repeat: no-repeat !important;
	mask-repeat: no-repeat !important;
	-webkit-mask-position: center !important;
	mask-position: center !important;
	-webkit-mask-size: contain !important;
	mask-size: contain !important;
	opacity: .7;
	font-family: inherit !important;
}

body.lc-account .woocommerce-MyAccount-navigation ul li a:hover {
	background: var(--lca-bg) !important;
	color: var(--lca-accent) !important;
}

body.lc-account .woocommerce-MyAccount-navigation ul li.is-active a {
	background: color-mix(in srgb, var(--lca-accent) 8%, #fff) !important;
	color: var(--lca-accent) !important;
	border-left-color: var(--lca-accent) !important;
}

body.lc-account .woocommerce-MyAccount-navigation ul li.is-active a::before,
body.lc-account .woocommerce-MyAccount-navigation ul li a:hover::before { opacity: 1; }

body.lc-account .woocommerce-MyAccount-navigation-link--customer-logout {
	margin-top: 6px !important;
	padding-top: 6px !important;
	border-top: 1px solid var(--lca-line) !important;
}
body.lc-account .woocommerce-MyAccount-navigation-link--customer-logout a {
	color: var(--lca-muted) !important;
	font-weight: 500 !important;
}

/* Iconen voor de extra endpoints */
body.lc-account .woocommerce-MyAccount-navigation-link--points-and-rewards a {
	--lca-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l3 6.5 7 .9-5.1 4.8 1.3 7L12 17.8 5.8 21.2l1.3-7L2 9.4l7-.9z'/%3E%3C/svg%3E");
}
body.lc-account .woocommerce-MyAccount-navigation-link--receipts a {
	--lca-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 2h14v20l-3-2-2 2-2-2-2 2-2-2-3 2zm3 5v2h8V7zm0 4v2h8v-2zm0 4v2h5v-2z'/%3E%3C/svg%3E");
}

/* Inhoud: één kaart, geen Elementor-rand of dubbele box */
body.lc-account .woocommerce-MyAccount-content {
	float: none !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 32px !important;
	background: #fff !important;
	border: 1px solid var(--lca-line) !important;
	border-radius: var(--lca-radius) !important;
	box-shadow: var(--lca-shadow) !important;
	box-sizing: border-box !important;
}

body.lc-account .woocommerce-MyAccount-content-wrapper {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
}

/* Dashboard: standaard WooCommerce-begroeting verbergen, ons welkomstblok vervangt die */
body.lc-account .woocommerce-MyAccount-content-wrapper:has(> .lca-welcome) > p {
	display: none !important;
}

body.lc-account .lca-welcome {
	margin: 0 0 8px !important;
	padding: 0 0 24px !important;
	border-bottom: 0 !important;
}
body.lc-account .lca-welcome__title { margin: 0 0 6px !important; }
body.lc-account .lca-welcome__text { margin: 0 0 20px !important; }

/* Links in de inhoud (dashboard-links waren al blauw, houd dat rustig) */
body.lc-account .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-button):not(.lca-tile) {
	color: var(--lca-accent);
}

/* Mobiel */
@media (max-width: 880px) {
	body.lc-account .woocommerce:has(> .woocommerce-MyAccount-navigation) {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 20px !important;
		padding: 20px 14px 48px !important;
	}
	body.lc-account .woocommerce-MyAccount-navigation { position: static; padding: 6px !important; }
	body.lc-account .woocommerce-MyAccount-navigation ul {
		display: flex !important;
		gap: 4px;
		overflow-x: auto;
		scrollbar-width: none;
	}
	body.lc-account .woocommerce-MyAccount-navigation ul li a {
		width: auto !important;
		white-space: nowrap !important;
		border-left: 0 !important;
		border-bottom: 3px solid transparent !important;
		padding: 11px 12px !important;
	}
	body.lc-account .woocommerce-MyAccount-navigation ul li.is-active a { border-bottom-color: var(--lca-accent) !important; }
	body.lc-account .woocommerce-MyAccount-navigation-link--customer-logout { margin: 0 !important; padding: 0 !important; border: 0 !important; }
	body.lc-account .woocommerce-MyAccount-content { padding: 20px 16px !important; }
}

/* ===== 1.0.2 ===== */

/* Voorkom dat brede inhoud (menu-tabs, tabellen) de pagina breder maakt dan het scherm */
body.lc-account .woocommerce-MyAccount-navigation,
body.lc-account .woocommerce-MyAccount-content {
	min-width: 0 !important;
	max-width: 100% !important;
}
body.lc-account .woocommerce-MyAccount-content { overflow-x: auto; }
body.lc-account .woocommerce-MyAccount-navigation ul { max-width: 100%; }

/* Icoon-override voor Punten en Kassabonnen (wint van de fallback) */
body.lc-account .woocommerce-MyAccount-navigation-link--points-and-rewards a {
	--lca-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l3 6.5 7 .9-5.1 4.8 1.3 7L12 17.8 5.8 21.2l1.3-7L2 9.4l7-.9z'/%3E%3C/svg%3E") !important;
}
body.lc-account .woocommerce-MyAccount-navigation-link--receipts a {
	--lca-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 2h14v20l-3-2-2 2-2-2-2 2-2-2-3 2zm3 5v2h8V7zm0 4v2h8v-2zm0 4v2h5v-2z'/%3E%3C/svg%3E") !important;
}

/* Koppen */
body.lc-account .woocommerce-MyAccount-content h2,
body.lc-account .woocommerce-MyAccount-content h3 {
	font: 700 20px/1.25 'Montserrat', sans-serif !important;
	color: var(--lca-ink) !important;
	margin: 0 0 16px !important;
	text-transform: none !important;
}

/* Knoppen: altijd themablauw, witte tekst */
body.lc-account .woocommerce-MyAccount-content a.button,
body.lc-account .woocommerce-MyAccount-content a.woocommerce-button,
body.lc-account .woocommerce-MyAccount-content .woocommerce-Button,
body.lc-account .woocommerce-MyAccount-content button.button,
body.lc-account .woocommerce-MyAccount-content button[type="submit"],
body.lc-account .woocommerce-MyAccount-content input[type="submit"],
body.lc-account .woocommerce-MyAccount-content .button,
body.lc-account .woocommerce-form-login__submit,
body.lc-account .woocommerce-form-register__submit {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 6px 6px 0 !important;
	padding: 11px 18px !important;
	background: var(--lca-accent) !important;
	background-image: none !important;
	color: #fff !important;
	border: 1px solid var(--lca-accent) !important;
	border-radius: var(--lca-radius) !important;
	box-shadow: none !important;
	font: 600 13px/1.2 'Montserrat', sans-serif !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-decoration: none !important;
	cursor: pointer;
}
body.lc-account .woocommerce-MyAccount-content a.button:hover,
body.lc-account .woocommerce-MyAccount-content a.woocommerce-button:hover,
body.lc-account .woocommerce-MyAccount-content .woocommerce-Button:hover,
body.lc-account .woocommerce-MyAccount-content button.button:hover,
body.lc-account .woocommerce-MyAccount-content button[type="submit"]:hover,
body.lc-account .woocommerce-MyAccount-content input[type="submit"]:hover,
body.lc-account .woocommerce-MyAccount-content .button:hover,
body.lc-account .woocommerce-form-login__submit:hover,
body.lc-account .woocommerce-form-register__submit:hover {
	background: color-mix(in srgb, var(--lca-accent) 85%, #000) !important;
	border-color: color-mix(in srgb, var(--lca-accent) 85%, #000) !important;
	color: #fff !important;
}

/* Tabellen */
body.lc-account .woocommerce-MyAccount-content table {
	width: 100% !important;
	margin: 0 0 20px !important;
	background: #fff !important;
	border: 1px solid var(--lca-line) !important;
	border-radius: var(--lca-radius) !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	font: 400 14px/1.4 'Montserrat', sans-serif !important;
}
body.lc-account .woocommerce-MyAccount-content table th,
body.lc-account .woocommerce-MyAccount-content table td {
	padding: 14px !important;
	background: #fff !important;
	border: 0 !important;
	border-bottom: 1px solid var(--lca-line) !important;
	color: var(--lca-ink) !important;
	text-align: left !important;
	vertical-align: middle !important;
	font: 400 14px/1.4 'Montserrat', sans-serif !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}
body.lc-account .woocommerce-MyAccount-content table tbody th,
body.lc-account .woocommerce-MyAccount-content table tfoot th { font-weight: 600 !important; }
body.lc-account .woocommerce-MyAccount-content table thead th {
	background: var(--lca-bg) !important;
	color: var(--lca-muted) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: .04em !important;
}
body.lc-account .woocommerce-MyAccount-content table tbody tr:last-child th,
body.lc-account .woocommerce-MyAccount-content table tbody tr:last-child td { border-bottom: 0 !important; }
body.lc-account .woocommerce-MyAccount-content table a:not(.button):not(.woocommerce-button) {
	color: var(--lca-accent) !important;
	font-weight: 600 !important;
}
body.lc-account .woocommerce-orders-table__cell-order-number,
body.lc-account .woocommerce-orders-table__cell-order-date,
body.lc-account .woocommerce-orders-table__cell-order-status { white-space: nowrap; }

/* Adressen */
body.lc-account .woocommerce-Addresses {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 16px !important;
	margin: 0 !important;
	width: 100% !important;
}
body.lc-account .woocommerce-Addresses .woocommerce-Address {
	float: none !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 20px !important;
	background: #fff !important;
	border: 1px solid var(--lca-line) !important;
	border-radius: var(--lca-radius) !important;
	box-shadow: none !important;
}
body.lc-account .woocommerce-Addresses .u-column1 { grid-column: 1 !important; grid-row: 1 !important; }
body.lc-account .woocommerce-Addresses .u-column2 { grid-column: 2 !important; grid-row: 1 !important; }
body.lc-account .woocommerce-Address-title {
	display: flex !important;
	flex-direction: row !important;
	justify-content: space-between !important;
	align-items: baseline !important;
	gap: 12px !important;
	width: auto !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	border: 0 !important;
	text-align: left !important;
}
body.lc-account .woocommerce-Address-title h2,
body.lc-account .woocommerce-Address-title h3 {
	order: 1 !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: left !important;
	font: 700 16px/1.3 'Montserrat', sans-serif !important;
}
body.lc-account .woocommerce-Address-title a.edit {
	order: 2 !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: right !important;
	font: 600 13px/1.3 'Montserrat', sans-serif !important;
	color: var(--lca-accent) !important;
}
body.lc-account .woocommerce-MyAccount-content address {
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	font: 400 15px/1.7 'Lora', Georgia, serif !important;
	font-style: normal !important;
	color: var(--lca-ink) !important;
}
/* adressen op de bestelpagina (view-order) */
body.lc-account .woocommerce-customer-details address {
	padding: 16px !important;
	border: 1px solid var(--lca-line) !important;
	border-radius: var(--lca-radius) !important;
}

/* Formulieren */
body.lc-account .woocommerce-MyAccount-content input[type="text"],
body.lc-account .woocommerce-MyAccount-content input[type="email"],
body.lc-account .woocommerce-MyAccount-content input[type="password"],
body.lc-account .woocommerce-MyAccount-content input[type="tel"],
body.lc-account .woocommerce-MyAccount-content input[type="number"],
body.lc-account .woocommerce-MyAccount-content select {
	height: 46px !important;
	padding: 0 14px !important;
	background: #fff !important;
	border: 1px solid var(--lca-line) !important;
	border-radius: var(--lca-radius) !important;
	box-shadow: none !important;
	font: 400 15px 'Montserrat', sans-serif !important;
	color: var(--lca-ink) !important;
}
body.lc-account .woocommerce-MyAccount-content textarea {
	padding: 12px 14px !important;
	border: 1px solid var(--lca-line) !important;
	border-radius: var(--lca-radius) !important;
	box-shadow: none !important;
}
body.lc-account .woocommerce-MyAccount-content input:focus,
body.lc-account .woocommerce-MyAccount-content select:focus,
body.lc-account .woocommerce-MyAccount-content textarea:focus {
	border-color: var(--lca-accent) !important;
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--lca-accent) 18%, transparent) !important;
	outline: 0 !important;
}
body.lc-account .select2-container .select2-selection--single {
	height: 46px !important;
	border: 1px solid var(--lca-line) !important;
	border-radius: var(--lca-radius) !important;
}
body.lc-account .select2-container .select2-selection--single .select2-selection__rendered { line-height: 44px !important; padding-left: 14px !important; }
body.lc-account .select2-container .select2-selection--single .select2-selection__arrow { height: 44px !important; }
body.lc-account .woocommerce-MyAccount-content label {
	font: 600 13px/1.3 'Montserrat', sans-serif !important;
	color: var(--lca-ink) !important;
}

/* Meldingen */
body.lc-account .woocommerce-message,
body.lc-account .woocommerce-info,
body.lc-account .woocommerce-error {
	background: #fff !important;
	border: 1px solid var(--lca-line) !important;
	border-left: 3px solid var(--lca-accent) !important;
	border-radius: var(--lca-radius) !important;
	color: var(--lca-ink) !important;
}
body.lc-account .woocommerce-error { border-left-color: #c0392b !important; }

/* Mobiel: bestellingen en downloads als gestapelde kaarten */
@media (max-width: 640px) {
	body.lc-account .woocommerce-MyAccount-content { padding: 16px 14px !important; }

	body.lc-account .woocommerce-MyAccount-content table.woocommerce-orders-table,
	body.lc-account .woocommerce-MyAccount-content table.woocommerce-table--order-downloads {
		border: 0 !important;
		background: transparent !important;
	}
	body.lc-account .woocommerce-orders-table thead,
	body.lc-account .woocommerce-table--order-downloads thead { display: none !important; }
	body.lc-account .woocommerce-orders-table tbody,
	body.lc-account .woocommerce-table--order-downloads tbody { display: block !important; }
	body.lc-account .woocommerce-orders-table tr,
	body.lc-account .woocommerce-table--order-downloads tr {
		display: block !important;
		margin: 0 0 12px !important;
		padding: 4px 0 !important;
		background: #fff !important;
		border: 1px solid var(--lca-line) !important;
		border-radius: var(--lca-radius) !important;
	}
	body.lc-account .woocommerce-orders-table tbody th,
	body.lc-account .woocommerce-orders-table tbody td,
	body.lc-account .woocommerce-table--order-downloads tbody td {
		display: flex !important;
		justify-content: space-between !important;
		align-items: center !important;
		gap: 16px !important;
		padding: 8px 14px !important;
		border: 0 !important;
		text-align: right !important;
		white-space: normal !important;
	}
	body.lc-account .woocommerce-orders-table tbody th::before,
	body.lc-account .woocommerce-orders-table tbody td::before,
	body.lc-account .woocommerce-table--order-downloads tbody td::before {
		content: attr(data-title) !important;
		float: none !important;
		flex: none;
		font: 600 12px/1.2 'Montserrat', sans-serif !important;
		text-transform: uppercase !important;
		letter-spacing: .04em !important;
		color: var(--lca-muted) !important;
		text-align: left !important;
	}
	body.lc-account .woocommerce-orders-table__cell-order-actions {
		flex-wrap: wrap !important;
		justify-content: flex-end !important;
	}
	body.lc-account .woocommerce-Addresses { grid-template-columns: minmax(0, 1fr) !important; }
	body.lc-account .woocommerce-Addresses .u-column1,
	body.lc-account .woocommerce-Addresses .u-column2 { grid-column: 1 !important; grid-row: auto !important; }
	body.lc-account .woocommerce-Address-title { flex-wrap: wrap !important; }
}

/* ===== Spaarpunten-uitleg ===== */
body.lc-account .lca-points {
	margin: 0 0 28px;
	padding: 0 0 28px;
	border-bottom: 1px solid var(--lca-line);
}
body.lc-account .woocommerce-MyAccount-content h2.lca-points__title {
	font-size: 24px !important;
	margin: 0 0 12px !important;
}
body.lc-account .lca-points__text p {
	margin: 0 0 12px;
	max-width: 62ch;
	font: 400 16px/1.7 'Lora', Georgia, serif;
	color: var(--lca-ink);
}
body.lc-account .lca-facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin-top: 20px;
}
body.lc-account .lca-fact {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 16px;
	background: color-mix(in srgb, var(--lca-accent) 6%, #fff);
	border: 1px solid color-mix(in srgb, var(--lca-accent) 22%, #fff);
	border-radius: var(--lca-radius);
}
body.lc-account .lca-fact strong {
	font: 700 16px/1.3 'Montserrat', sans-serif;
	color: var(--lca-accent);
}
body.lc-account .lca-fact span {
	font: 400 13px/1.4 'Montserrat', sans-serif;
	color: var(--lca-muted);
}
@media (max-width: 640px) {
	body.lc-account .lca-facts { grid-template-columns: minmax(0, 1fr); }
}
