/*
 * "Contul meu": login, password recovery and the customer area (templates in woocommerce/myaccount/ and woocommerce/order/).
 * Loaded only on the account pages (inc/account.php), where WooCommerce's general/layout styles are switched off.
 */

/* The bottom space comes from the page rhythm in theme.css (.ap-main). */
.ap-account-page .ap-breadcrumbs { margin-bottom: 0; }
.ap-account-page .woocommerce { margin-top: 0; }
.ap-account-page .woocommerce :where(h1, h2, h3, h4, p, ul, ol, dl, dd, address, fieldset) { margin-block: 0; }
.ap-account-page .screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.ap-account-page .woocommerce a { text-underline-offset: 4px; }
.ap-account-page .woocommerce :focus-visible { outline: 2px solid var(--ap-moss); outline-offset: 4px; }

.ap-acc-svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; }
.ap-acc-icon {
	display: grid;
	place-items: center;
	flex-shrink: 0;
	width: 48px;
	height: 48px;
	border: 1px solid #d9e1cf;
	border-radius: 15px 15px 15px 3px;
	background: #e7edde;
	color: var(--ap-forest);
}

/* ---------- Page heading ---------- */

.ap-acc-head { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: 2.4rem 0 2.1rem; }
.ap-acc-head .is-style-eyebrow { font-size: 0.625rem; letter-spacing: 0.2em; }
.ap-acc-head h1 { margin: 0.95rem 0 !important; font-size: clamp(2.8rem, 5vw, 4.05rem); line-height: 1.1; letter-spacing: -0.043em; }
.ap-acc-head__lead { font-size: var(--wp--preset--font-size--x-small); color: var(--ap-muted); }
.ap-acc-head__mark { display: flex; align-items: center; gap: 1.45rem; }
.ap-acc-head__mark span { font-size: 0.56rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(--ap-muted); }
.ap-acc-head--compact { padding: 2rem 0 1.55rem; }
.ap-acc-head--compact h1 { margin-bottom: 0 !important; font-size: clamp(2.7rem, 4.2vw, 3.3rem); }

/* ---------- Fields (WooCommerce markup: p.form-row > label + input) ---------- */

.ap-account-page .form-row { margin: 0 0 1.4rem; padding: 0; min-width: 0; }
.ap-account-page .form-row label:not(.woocommerce-form__label-for-checkbox, .checkbox) { display: block; margin-bottom: 0.5rem; font-size: var(--wp--preset--font-size--xx-small); font-weight: 600; line-height: 1.4; color: var(--ap-ink); }
.ap-account-page .form-row :is(.required, abbr.required) { border: 0; text-decoration: none; color: inherit; }
.ap-account-page .form-row .optional { font-weight: 400; color: var(--ap-muted); }
.ap-account-page .woocommerce-input-wrapper { display: block; }
.ap-account-page .form-row :is(input.input-text, select, textarea) {
	box-sizing: border-box;
	display: block;
	width: 100%;
	min-width: 0;
	height: 50px;
	margin: 0;
	padding: 0.75rem 0.9rem;
	border: 1px solid #d6ddcd;
	border-radius: var(--ap-radius-control);
	background: #fcfcf7;
	font: inherit;
	font-size: var(--wp--preset--font-size--small);
	color: var(--ap-ink);
}
.ap-account-page .form-row textarea { height: auto; min-height: 110px; }
.ap-account-page .form-row :is(input.input-text, select, textarea):focus { outline: 2px solid var(--ap-moss); outline-offset: 2px; background: #fff; }
.ap-account-page .form-row.woocommerce-invalid :is(input.input-text, select) { border-color: #a14535; }

/* Country / county selects (selectWoo) */
.ap-account-page .select2-container .select2-selection--single { height: 50px; border: 1px solid #d6ddcd; border-radius: var(--ap-radius-control); background: #fcfcf7; }
.ap-account-page .select2-container .select2-selection--single .select2-selection__rendered { padding: 0 2.5rem 0 0.9rem; line-height: 48px; font-size: var(--wp--preset--font-size--small); color: var(--ap-ink); }
.ap-account-page .select2-container .select2-selection--single .select2-selection__arrow { height: 48px; right: 0.5rem; }
.ap-account-page .select2-container--focus .select2-selection--single,
.ap-account-page .select2-container--open .select2-selection--single { outline: 2px solid var(--ap-moss); outline-offset: 2px; }
.select2-dropdown { border-color: #d6ddcd; font-size: var(--wp--preset--font-size--small); }
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] { background: var(--ap-forest); }

/* Show/hide password: the button is added by WooCommerce's script */
.ap-account-page .password-input { position: relative; display: block; }
.ap-account-page .password-input input.input-text { padding-right: 3.3rem; }
.ap-account-page .show-password-input {
	position: absolute;
	top: 3px;
	right: 3px;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	border-radius: var(--ap-radius-control);
	background: transparent;
	color: var(--ap-moss);
	cursor: pointer;
}
.ap-account-page .show-password-input::before,
.ap-account-page .show-password-input::after { content: none; }
.ap-account-page .show-password-input::before {
	content: "";
	position: absolute;
	inset: 11px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s4-7 10-7 10 7 10 7-4 7-10 7S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s4-7 10-7 10 7 10 7-4 7-10 7S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat;
}
.ap-account-page .show-password-input.display-password { background: #e5eadc; }
.ap-account-page .show-password-input.display-password::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='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s4-7 10-7 10 7 10 7-4 7-10 7S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='m4 4 16 16'/%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='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s4-7 10-7 10 7 10 7-4 7-10 7S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='m4 4 16 16'/%3E%3C/svg%3E");
}

/* Password strength meter (WooCommerce script) */
.ap-account-page .woocommerce-password-strength { margin-top: 0.5rem; padding: 0.45rem 0.75rem; border-radius: var(--ap-radius-control); font-size: var(--wp--preset--font-size--xx-small); font-weight: 600; color: var(--ap-ink); }
.ap-account-page .woocommerce-password-strength.short { background: #f4d8d1; }
.ap-account-page .woocommerce-password-strength.bad { background: #f7e0c8; }
.ap-account-page .woocommerce-password-strength.good { background: #f3ead0; }
.ap-account-page .woocommerce-password-strength.strong { background: #dce8d2; }
.ap-account-page .woocommerce-password-hint { display: block; margin-top: 0.45rem; font-size: 0.69rem; line-height: 1.7; color: var(--ap-muted); }

.ap-acc-hint { display: block; margin-top: 0.45rem; font-size: 0.69rem; line-height: 1.7; color: var(--ap-muted); }

/* Buttons */
.ap-account-page .woocommerce .button { border-radius: var(--ap-radius-control); cursor: pointer; text-decoration: none; }
.ap-acc-submit.button,
.ap-acc-button.button {
	box-sizing: border-box; /* the empty-state link, like the form buttons: 52px with the padding */
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.9rem;
	width: 100%;
	min-height: 52px;
	padding: 0.9rem 1.45rem;
	font-size: var(--wp--preset--font-size--xx-small);
}
.ap-acc-button.button { display: inline-flex; width: auto; }
:is(.ap-acc-submit, .ap-acc-button) span { font-size: 1.2rem; line-height: 1; }

.ap-acc-link {
	display: inline-block;
	padding: 0.3rem 0;
	border-bottom: 1px solid currentColor;
	font-size: var(--wp--preset--font-size--xx-small);
	font-weight: 600;
	white-space: nowrap;
	text-decoration: none;
	color: var(--ap-ink);
}
.ap-acc-link span[aria-hidden] { margin-left: 1.25rem; }
.ap-acc-link--back span[aria-hidden] { margin: 0 1.25rem 0 0; }
.ap-acc-link:hover { color: var(--ap-moss); }
.ap-acc-back { display: inline-block; margin-top: 1.45rem; font-size: 0.69rem; color: var(--ap-muted); text-decoration: underline; }
.ap-acc-back:hover { color: var(--ap-forest); }

/* Notices: styled for every page in theme.css */

/* ---------- Login + registration ---------- */

.ap-acc-auth { display: grid; grid-template-columns: 1.1fr 1fr; gap: 1.25rem; align-items: stretch; margin-bottom: 3.4rem; }
.ap-acc-auth--single { grid-template-columns: minmax(0, 640px); }

.ap-acc-card { border-radius: var(--ap-radius-panel); min-width: 0; padding: 2.7rem 3.6rem; border: 1px solid var(--ap-line); background: var(--ap-paper); }
.ap-acc-card__head { display: flex; align-items: center; gap: 1.1rem; margin-bottom: 1.8rem; }
.ap-acc-card__head .is-style-eyebrow { font-size: 0.5rem; letter-spacing: 0.19em; }
.ap-acc-card__head h2 { margin-top: 0.4rem !important; font-size: 2rem; letter-spacing: -0.03em; }
.ap-acc-card__text { margin-bottom: 0.5rem !important; font-size: var(--wp--preset--font-size--x-small); line-height: 1.9; color: var(--ap-muted); }

.ap-acc-options { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin: -0.1rem 0 1.6rem; font-size: 0.69rem; }
.ap-acc-options label { display: flex; align-items: center; gap: 0.5rem; cursor: pointer; }
.ap-acc-options input[type="checkbox"] { width: 17px; height: 17px; margin: 0; accent-color: var(--ap-forest); }
.ap-acc-options a { color: var(--ap-ink); text-decoration: underline; }

.ap-acc-register { position: relative; min-width: 0; padding: 2.55rem 3.05rem; border-radius: var(--ap-radius-panel); background: var(--ap-forest); color: var(--ap-paper); }
.ap-acc-register__head { position: relative; }
.ap-acc-register__head img { position: absolute; top: 0; right: 0; opacity: 0.5; }
.ap-acc-register .is-style-eyebrow { font-size: 0.5rem; letter-spacing: 0.19em; color: #c4d4b3; }
.ap-acc-register h2 { margin: 0.75rem 0 0.95rem !important; padding-right: 3.5rem; font-size: 2.375rem; line-height: 1.2; letter-spacing: -0.026em; color: var(--ap-ivory); }
.ap-acc-register__head > p:last-child { max-width: 20rem; font-size: var(--wp--preset--font-size--xx-small); line-height: 1.8; color: #d9e2d0; }
.ap-acc-benefits { display: grid; gap: 0.6rem; margin: 1.25rem 0 1.5rem !important; padding: 0; list-style: none; font-size: 0.69rem; color: #e0e7d9; }
.ap-acc-benefits li { display: flex; align-items: center; gap: 0.7rem; }
.ap-acc-benefits .ap-acc-svg { width: 19px; height: 19px; color: #c9d8b7; }
.ap-acc-register .form-row { margin-bottom: 0.6rem; }
.ap-acc-register .form-row label:not(.woocommerce-form__label-for-checkbox) { color: var(--ap-ivory); }
.ap-acc-register .form-row input.input-text { border-color: #e3e7d6; background: #fffef8; }
.ap-acc-register :focus-visible,
.ap-acc-register .form-row input.input-text:focus { outline-color: #a5c187; }
.ap-acc-register__note,
.ap-acc-register .woocommerce-privacy-policy-text { font-size: 0.625rem; line-height: 1.8; color: #d7e1cc; }
.ap-acc-register .woocommerce-privacy-policy-text { margin: 1.1rem 0 1.25rem; }
.ap-acc-register .woocommerce-privacy-policy-text a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.ap-acc-register .ap-acc-submit.button { border-color: #e7eddb; background: #e7eddb; color: var(--ap-forest); }
.ap-acc-register .ap-acc-submit.button:hover { border-color: #f8faee; background: #f8faee; color: var(--ap-forest); }
.ap-acc-register .wc-block-components-notice-banner { color: var(--ap-ink); }

/* ---------- Help band + trust strip under every account page ---------- */

.ap-acc-help.wp-block-group { gap: 1.25rem; margin-bottom: 0; padding: 1.75rem 0 var(--ap-half); border-top: 1px solid var(--ap-line); }
.ap-acc-help::before {
	content: "";
	width: 50px;
	height: 50px;
	flex-shrink: 0;
	border-radius: 50%;
	background: #e8eddf url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23203f32' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21v-2a8 8 0 0 1 16 0v2'/%3E%3C/svg%3E") center / 22px no-repeat;
}
.ap-acc-help__copy > * { margin: 0; }
.ap-acc-help h2 { margin-bottom: 0.25rem; font-size: 1.5rem; letter-spacing: -0.02em; }
.ap-acc-help p:not(.ap-arrow-link) { font-size: 0.69rem; color: var(--ap-muted); }
.ap-acc-help .ap-arrow-link { margin: 0 0 0 auto; flex-shrink: 0; }
.ap-acc-help .ap-arrow-link a { font-size: 0.69rem; }

/* ---------- Password recovery ---------- */

.ap-acc-recovery { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 5.6rem; padding: 4rem 0 4.4rem; }
.ap-acc-recovery__copy .is-style-eyebrow { font-size: 0.625rem; letter-spacing: 0.2em; }
.ap-acc-recovery__copy h1 { margin: 1.2rem 0 1.5rem !important; font-size: clamp(2.8rem, 4.4vw, 3.6rem); line-height: 1.14; letter-spacing: -0.035em; }
.ap-acc-recovery__lead { max-width: 440px; font-size: var(--wp--preset--font-size--x-small); line-height: 1.9; color: var(--ap-muted); }
.ap-acc-recovery__copy img { display: block; margin-top: 1.55rem; }
.ap-acc-recovery .ap-acc-card { padding: 2.5rem; border-radius: var(--ap-radius-panel); }
.ap-acc-recovery .ap-acc-card__head h2 { font-size: 1.8rem; }

/* ---------- Customer area ---------- */

.ap-acc-workspace { display: grid; grid-template-columns: 255px minmax(0, 1fr); align-items: start; gap: 2.4rem; margin-bottom: 3rem; }
.ap-acc-workspace .woocommerce-MyAccount-content { min-width: 0; }

.ap-acc-sidebar { overflow: hidden; border: 1px solid var(--ap-line); border-radius: var(--ap-radius-card); background: #eeefe5; }
.ap-acc-profile { display: flex; align-items: center; gap: 0.8rem; padding: 1.5rem 1.25rem; border-bottom: 1px solid var(--ap-line); }
.ap-acc-profile > span { display: grid; place-items: center; flex-shrink: 0; width: 40px; height: 40px; border-radius: 50%; background: #dce5ce; font-size: var(--wp--preset--font-size--xx-small); color: var(--ap-forest); }
.ap-acc-profile > div { min-width: 0; }
.ap-acc-profile strong { display: block; overflow: hidden; font-size: var(--wp--preset--font-size--x-small); font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.ap-acc-profile small { display: block; margin-top: 0.2rem; font-size: 0.53rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--ap-muted); }

.ap-account-page .woocommerce-MyAccount-navigation { float: none; width: auto; }
.woocommerce-MyAccount-navigation ul { margin: 0.75rem 0 !important; padding: 0; list-style: none; }
.woocommerce-MyAccount-navigation li { margin: 0; }
.woocommerce-MyAccount-navigation a {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.8rem 1.25rem;
	border-left: 3px solid transparent;
	font-size: var(--wp--preset--font-size--x-small);
	text-decoration: none;
	color: var(--ap-ink);
	transition: background-color 0.2s;
}
.woocommerce-MyAccount-navigation .ap-acc-svg { width: 19px; height: 19px; }
.ap-acc-nav__arrow { margin-left: auto; opacity: 0; }
.woocommerce-MyAccount-navigation a:hover { background: #e4e9db; color: var(--ap-ink); }
.woocommerce-MyAccount-navigation a[aria-current] { border-left-color: var(--ap-forest); background: #dde6d2; font-weight: 650; }
.woocommerce-MyAccount-navigation a[aria-current] .ap-acc-nav__arrow { opacity: 1; }
.woocommerce-MyAccount-navigation-link--customer-logout { margin-top: 0.75rem !important; padding-top: 0.5rem; border-top: 1px solid var(--ap-line); }
.woocommerce-MyAccount-navigation-link--customer-logout a { color: var(--ap-muted); }

.ap-acc-sidebar__help { padding: 1.25rem; border-top: 1px solid var(--ap-line); background: #e6eadc; }
.ap-acc-sidebar__help p { margin: 0; font-size: 0.69rem; color: var(--ap-muted); }
.ap-acc-sidebar__help a { display: block; margin: 0.3rem 0; font-size: 1.06rem; font-weight: 600; text-decoration: none; color: var(--ap-forest); }
.ap-acc-sidebar__help small { font-size: 0.625rem; color: var(--ap-muted); }

/* Section heading */
.ap-acc-title { margin-bottom: 1.6rem; }
.ap-acc-title .is-style-eyebrow { margin-bottom: 0.7rem !important; font-size: 0.56rem; letter-spacing: 0.2em; }
.ap-acc-title h2 { font-size: 2.3rem; letter-spacing: -0.03em; }
.ap-acc-title__lead { margin-top: 0.75rem !important; font-size: var(--wp--preset--font-size--x-small); color: var(--ap-muted); }
.ap-acc-title .ap-acc-back { margin: 0 0 1rem; }

.ap-acc-panel { min-width: 0; padding: 1.55rem 1.75rem; border: 1px solid var(--ap-line); border-radius: var(--ap-radius-card); background: var(--ap-paper); }
.ap-acc-panel h3 { font-size: 1.56rem; letter-spacing: -0.028em; }
.ap-acc-panel__head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.3rem; }
.ap-acc-panel__empty { font-size: var(--wp--preset--font-size--x-small); color: var(--ap-muted); }
.ap-acc-panel__empty a { margin-left: 0.3rem; font-weight: 600; color: var(--ap-forest); }

/* Dashboard */
.ap-acc-welcome { display: flex; align-items: center; justify-content: space-between; gap: 1.6rem; padding: 1.75rem 2.1rem; border-radius: var(--ap-radius-panel); background: #e6ecd9; }
.ap-acc-welcome .is-style-eyebrow { font-size: 0.56rem; letter-spacing: 0.2em; }
.ap-acc-welcome h2 { margin: 0.7rem 0 0.8rem !important; font-size: 2.7rem; letter-spacing: -0.035em; }
.ap-acc-welcome p:not(.is-style-eyebrow) { font-size: var(--wp--preset--font-size--small); line-height: 1.7; color: var(--ap-muted); }
.ap-acc-welcome img { width: 105px; margin-right: 0.95rem; }

.ap-acc-shortcuts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin: 1.4rem 0; }
.ap-acc-shortcuts a { position: relative; padding: 1.4rem; border: 1px solid var(--ap-line); border-radius: var(--ap-radius-card); background: var(--ap-paper); text-decoration: none; color: var(--ap-ink); transition: background-color 0.2s; }
.ap-acc-shortcuts a:hover { background: #edf0e4; color: var(--ap-ink); }
.ap-acc-shortcuts .ap-acc-icon { width: 40px; height: 40px; margin-bottom: 1rem; border-radius: 12px 12px 12px 3px; }
.ap-acc-shortcuts strong { display: block; font-size: var(--wp--preset--font-size--small); font-weight: 600; }
.ap-acc-shortcuts__text { display: block; max-width: 210px; margin-top: 0.4rem; font-size: var(--wp--preset--font-size--xx-small); line-height: 1.8; color: var(--ap-muted); }
.ap-acc-shortcuts__arrow { position: absolute; top: 1.3rem; right: 1.2rem; font-size: 1.25rem; color: var(--ap-moss); }

.ap-acc-note { display: flex; align-items: center; gap: 0.95rem; margin-top: 1.55rem; }
.ap-acc-note img { width: 50px; }
.ap-acc-note p { font-size: var(--wp--preset--font-size--x-small); color: var(--ap-muted); }
.ap-acc-note a { display: block; margin-top: 0.2rem; font-size: var(--wp--preset--font-size--xx-small); text-decoration: none; color: var(--ap-forest); }
.ap-acc-note a:hover { text-decoration: underline; }

/* Orders table */
.ap-acc-table-wrap { min-width: 0; }
.ap-acc-orders { width: 100%; margin: 0; border: 0; border-collapse: collapse; font-size: var(--wp--preset--font-size--x-small); text-align: left; }
.ap-acc-orders thead { background: #eff1e7; color: var(--ap-muted); }
.ap-acc-orders thead th:first-child { border-radius: var(--ap-radius-control) 0 0 var(--ap-radius-control); }
.ap-acc-orders thead th:last-child { border-radius: 0 var(--ap-radius-control) var(--ap-radius-control) 0; }
.ap-acc-orders :is(th, td) { padding: 0.8rem 0.75rem; border: 0; vertical-align: middle; }
.ap-acc-orders thead th { font-size: 0.69rem; font-weight: 500; }
.ap-acc-orders tbody tr { border-bottom: 1px solid var(--ap-line); }
.ap-acc-orders tbody th { font-size: var(--wp--preset--font-size--x-small); font-weight: 600; }
.ap-acc-orders tbody th a { text-decoration: none; color: var(--ap-ink); }
.ap-acc-orders tbody th a:hover { text-decoration: underline; }
.ap-acc-orders td small { display: block; font-size: 0.69rem; color: var(--ap-muted); }
.ap-acc-orders .woocommerce-orders-table__cell-order-actions { text-align: right; white-space: nowrap; }
.ap-acc-orders .ap-acc-link { font-size: var(--wp--preset--font-size--xx-small); }
/* Actions ("Plătește", "Vezi comanda", "Anulează") in any order: the space goes between them, not only before the buttons. */
.ap-acc-orders .woocommerce-orders-table__cell-order-actions .button { margin: 0; padding: 0.55rem 1.1rem; font-size: var(--wp--preset--font-size--xx-small); }
.ap-acc-orders .woocommerce-orders-table__cell-order-actions > :not(:first-child) { margin-left: 1rem; }
.ap-acc-orders .ap-acc-link span[aria-hidden] { margin-left: 0.4rem; }
.ap-acc-orders .button,
.ap-order__actions .button,
.ap-order .order-again .button { display: inline-block; margin: 0 0 0 0.6rem; padding: 0.45rem 0.8rem; font-size: 0.625rem; }
.ap-acc-orders .button.cancel,
.ap-order__actions .button.cancel { border-color: var(--ap-line); background: transparent; color: var(--ap-ink); }

.ap-acc-status { display: inline-block; padding: 0.3rem 0.65rem; border-radius: 20px; background: #e9eddc; font-size: 0.69rem; font-weight: 500; white-space: nowrap; color: #51623f; }
.ap-acc-status--completed { background: #dce6d2; color: var(--ap-forest); }
.ap-acc-status--pending,
.ap-acc-status--on-hold { background: #f3ead9; color: #7a5627; }
.ap-acc-status--cancelled,
.ap-acc-status--failed,
.ap-acc-status--refunded { background: #f5e4df; color: #8a3b2c; }

.ap-acc-pagination { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: 1.25rem; font-size: var(--wp--preset--font-size--xx-small); color: var(--ap-muted); }
.ap-acc-pagination > span:only-child,
.ap-acc-pagination > span:first-child { margin-right: auto; }
.ap-acc-help-line { margin-top: 1.5rem !important; font-size: var(--wp--preset--font-size--xx-small); color: var(--ap-muted); }
.ap-acc-help-line a { color: var(--ap-ink); text-decoration: underline; }

/* Empty states */
.ap-acc-empty { padding: 3.4rem 1.9rem; border: 1px solid var(--ap-line); border-radius: var(--ap-radius-card); background: var(--ap-paper); text-align: center; }
.ap-acc-empty .ap-acc-icon { margin: 0 auto 1.5rem; }
.ap-acc-empty h3 { font-size: 1.8rem; letter-spacing: -0.028em; }
.ap-acc-empty p { max-width: 370px; margin: 0.9rem auto 1.55rem !important; font-size: var(--wp--preset--font-size--xx-small); line-height: 1.8; color: var(--ap-muted); }

/* Addresses */
.ap-acc-addresses { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
.ap-acc-addresses .ap-acc-icon { margin-bottom: 1.25rem; }
.ap-acc-addresses h3 { font-size: 1.625rem; }
.ap-acc-addresses address { margin: 0.9rem 0 1.5rem !important; font-size: var(--wp--preset--font-size--xx-small); font-style: normal; line-height: 1.8; color: var(--ap-muted); }

/* Edit forms: WooCommerce puts form-row-first / form-row-last side by side, the rest full width */
.ap-acc-form { max-width: 800px; box-sizing: border-box; }
.ap-acc-form.woocommerce-EditAccountForm,
.ap-acc-form .woocommerce-address-fields__field-wrapper,
.ap-acc-form fieldset { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 1.25rem; }
:is(.ap-acc-form.woocommerce-EditAccountForm, .ap-acc-form .woocommerce-address-fields__field-wrapper, .ap-acc-form fieldset) > :not(.form-row-first, .form-row-last, legend) { grid-column: 1 / -1; }
.ap-acc-form .woocommerce-address-fields__field-wrapper > :is([id$="_city_field"], [id$="_state_field"]) { grid-column: auto; }
.ap-acc-form .woocommerce-address-fields__field-wrapper > [id$="_state_field"][style*="none"] + * { grid-column: 1 / -1; }
.ap-acc-form fieldset { min-width: 0; margin: 0.6rem 0 0.5rem !important; padding: 0; border: 0; }
.ap-acc-form legend { display: flex; align-items: center; gap: 1rem; width: 100%; margin-bottom: 1.25rem; padding: 0; font-family: var(--ap-serif); font-size: 1.56rem; letter-spacing: -0.02em; color: var(--ap-forest); }
.ap-acc-form legend::after { content: ""; flex: 1; height: 1px; background: var(--ap-line); }
.ap-acc-form fieldset > .ap-acc-hint { margin: -0.4rem 0 1.25rem; }
.ap-acc-form .ap-acc-submit.button { width: auto; min-width: 235px; justify-self: start; margin-top: 0.4rem; }

/* ---------- One order ---------- */

.ap-acc-title__lead .ap-acc-status { margin-left: 0.2rem; vertical-align: 0.05rem; }
.ap-acc-updates { margin-bottom: 1.25rem; }
.ap-acc-updates h3 { margin-bottom: 1rem !important; font-size: 1.3rem; }
.ap-acc-updates ol { padding: 0; list-style: none; }
.ap-acc-updates li { margin: 0; padding: 0.3rem 0 0.9rem 1rem; border-left: 2px solid var(--ap-sage); }
.ap-acc-updates .meta { font-size: 0.625rem; color: var(--ap-muted); }
.ap-acc-updates .description { font-size: var(--wp--preset--font-size--x-small); }
.ap-acc-updates .description p { margin: 0.2rem 0 0; }

.ap-order { padding: 1.9rem 1.75rem 1.75rem; border: 1px solid var(--ap-line); border-radius: var(--ap-radius-card); background: var(--ap-paper); }
.ap-order > h3 { margin-bottom: 0.6rem !important; font-size: 1.56rem; letter-spacing: -0.028em; }
.ap-order__items { margin: 0; padding: 0; list-style: none; }
.ap-order__item { display: grid; grid-template-columns: 80px minmax(0, 1fr) auto; align-items: center; gap: 1.25rem; margin: 0; padding: 1.25rem 0; border-bottom: 1px solid var(--ap-line); }
.ap-order__thumb img { display: block; width: 70px; height: 90px; object-fit: contain; mix-blend-mode: multiply; }
.ap-order__product { font-size: 0.69rem; color: var(--ap-muted); }
.ap-order__product > a { display: block; margin-bottom: 0.4rem; font-size: var(--wp--preset--font-size--small); font-weight: 600; text-decoration: none; color: var(--ap-ink); }
.ap-order__product > a:hover { text-decoration: underline; }
.ap-order__product .product-quantity { display: block; }
.ap-order__product .wc-item-meta { margin: 0.35rem 0 0; padding: 0; list-style: none; }
.ap-order__product .wc-item-meta :is(li, p) { display: inline; margin: 0; }
.ap-order__price { font-size: var(--wp--preset--font-size--small); font-weight: 600; white-space: nowrap; }
.ap-order__purchase-note { grid-column: 2 / -1; font-size: 0.69rem; color: var(--ap-muted); }

.ap-order__totals { max-width: 390px; margin: 1.25rem 0 0 auto !important; }
.ap-order__total { display: flex; justify-content: space-between; gap: 1.25rem; padding: 0.6rem 0; font-size: var(--wp--preset--font-size--xx-small); }
.ap-order__total dt { color: var(--ap-muted); }
.ap-order__total dd { margin: 0; text-align: right; }
.ap-order__total dd small { display: block; color: var(--ap-muted); }
.ap-order__total--order_total { margin-top: 0.45rem; padding-top: 0.95rem; border-top: 1px solid var(--ap-line); font-size: 1.06rem; font-weight: 650; }
.ap-order__total--order_total dt { color: var(--ap-ink); }

.ap-order__note { margin-top: 1.4rem; padding: 1rem 1.1rem; border-radius: var(--ap-radius-control); background: #f3f5ec; font-size: var(--wp--preset--font-size--xx-small); }
.ap-order__note h4 { margin-bottom: 0.3rem !important; font-family: var(--ap-sans); font-size: 0.625rem; font-weight: 650; letter-spacing: 0.14em; text-transform: uppercase; }
.ap-order__actions,
.ap-order .order-again { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0.6rem; margin-top: 1.4rem !important; }
.ap-order__actions .button,
.ap-order .order-again .button { margin: 0; }

.ap-order-addresses { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; padding: 1.25rem 0 0; }
.ap-order-addresses > .woocommerce-column { min-width: 0; padding: 1.55rem 1.75rem; border: 1px solid var(--ap-line); border-radius: var(--ap-radius-card); background: var(--ap-paper); }
.ap-order-addresses--single { grid-template-columns: 1fr; }
.ap-order-addresses h3 { margin-bottom: 0.6rem !important; font-size: 1.56rem; letter-spacing: -0.028em; }
.ap-order-addresses address { font-size: var(--wp--preset--font-size--xx-small); font-style: normal; line-height: 1.8; color: var(--ap-muted); overflow-wrap: anywhere; }
.ap-order-addresses address p { margin: 0; }

/* Downloads table (woocommerce/order/order-downloads.php, unchanged) */
.ap-account-page .woocommerce-table--order-downloads { width: 100%; border-collapse: collapse; font-size: var(--wp--preset--font-size--xx-small); text-align: left; }
.ap-account-page .woocommerce-table--order-downloads :is(th, td) { padding: 0.8rem 0.75rem; border-bottom: 1px solid var(--ap-line); }
.ap-account-page .woocommerce-table--order-downloads thead { background: #eff1e7; color: var(--ap-muted); }

/* ---------- Responsive ---------- */

@media (max-width: 1100px) {
	.ap-acc-card { padding: 2rem; }
	.ap-acc-register { padding: 2.1rem; }
	.ap-acc-workspace { grid-template-columns: 225px minmax(0, 1fr); gap: 1.5rem; }
	.ap-acc-shortcuts { gap: 0.6rem; }
	.ap-acc-shortcuts a { padding: 1.05rem; }
	.ap-acc-panel, .ap-order, .ap-order-addresses > .woocommerce-column { padding: 1.4rem 1.2rem; }
	.ap-acc-orders :is(th, td) { padding: 0.75rem 0.45rem; }
	.ap-acc-recovery { gap: 2.2rem; }
	.ap-acc-recovery .ap-acc-card { padding: 1.7rem; }
	.ap-acc-recovery .ap-acc-card__head { gap: 0.75rem; }
	.ap-acc-recovery .ap-acc-card__head h2 { font-size: 1.625rem; }
}

@media (max-width: 850px) {
	.ap-acc-head__mark span { display: none; }
	.ap-acc-card, .ap-acc-register { padding: 1.75rem 1.5rem; }
	.ap-acc-card__head { gap: 0.75rem; }
	.ap-acc-card__head h2 { font-size: 1.7rem; }
	.ap-acc-card__head .ap-acc-icon { width: 38px; height: 38px; }
	.ap-acc-register h2 { font-size: 2rem; }
	.ap-acc-register__head img { width: 32px; }
	.ap-acc-options { gap: 0.45rem; font-size: 0.625rem; }
	.ap-acc-help h2 { font-size: 1.3rem; }

	.ap-acc-workspace { grid-template-columns: 1fr; }
	.ap-acc-profile { padding: 0.95rem 1.25rem; }
	.ap-acc-profile small { display: none; }
	.ap-acc-profile > span { width: 32px; height: 32px; }
	.ap-acc-sidebar__help { display: none; }
	.woocommerce-MyAccount-navigation ul { display: flex; flex-wrap: wrap; margin: 0 !important; padding: 0.3rem 0.5rem; }
	.woocommerce-MyAccount-navigation a { padding: 0.75rem; border-left: 0; border-bottom: 2px solid transparent; font-size: 0.69rem; }
	.woocommerce-MyAccount-navigation a[aria-current] { border-bottom-color: var(--ap-forest); }
	.ap-acc-nav__arrow { display: none; }
	.woocommerce-MyAccount-navigation-link--customer-logout { margin: 0 !important; padding: 0; border: 0; }

	.ap-acc-recovery { grid-template-columns: 1fr; gap: 1.9rem; padding-top: 2.5rem; }
	.ap-acc-recovery__copy img { display: none; }
	.ap-acc-recovery .ap-acc-card { max-width: 650px; }
}

@media (max-width: 600px) {
	.ap-acc-head { gap: 1rem; padding: 1.9rem 0 1.7rem; }
	.ap-acc-head h1 { margin: 0.9rem 0 0.75rem !important; font-size: 2.8rem; letter-spacing: -0.04em; }
	.ap-acc-head__lead { max-width: 270px; font-size: var(--wp--preset--font-size--xx-small); }
	.ap-acc-head__mark { display: none; }
	.ap-acc-head--compact { padding: 1.6rem 0 1.4rem; }
	.ap-acc-head--compact h1 { font-size: 2.7rem; }

	.ap-account-page .form-row :is(input.input-text, select, textarea) { font-size: 16px; } /* 16px: iOS does not zoom into the field */

	.ap-acc-auth { grid-template-columns: 1fr; margin-bottom: 2.1rem; }
	.ap-acc-card { padding: 1.75rem 1.4rem; }
	.ap-acc-card__head { margin-bottom: 1.7rem; }
	.ap-acc-card__head .is-style-eyebrow { font-size: 0.44rem; }
	.ap-acc-card__head h2 { font-size: 1.75rem; }
	.ap-acc-options { gap: 0.6rem; font-size: 0.69rem; }
	.ap-acc-register { padding: 1.95rem 1.55rem; border-radius: var(--ap-radius-panel); }
	.ap-acc-register h2 { font-size: 2.2rem; }
	.ap-acc-register__head img { width: 37px; }
	.ap-acc-register__note, .ap-acc-register .woocommerce-privacy-policy-text { font-size: 0.69rem; }

	.ap-acc-help.wp-block-group { flex-wrap: wrap !important; gap: 0.9rem; margin-bottom: 1.45rem; padding: 1.45rem 0 1.5rem; }
	.ap-acc-help::before { width: 40px; height: 40px; background-size: 19px; }
	.ap-acc-help__copy { flex: 1 1 calc(100% - 60px); min-width: 0; }
	.ap-acc-help h2 { font-size: 1.375rem; line-height: 1.2; }
	.ap-acc-help p:not(.ap-arrow-link) { margin-top: 0.45rem; }
	.ap-acc-help .ap-arrow-link { margin-left: 3.4rem; }

	.ap-acc-workspace { gap: 1.4rem; margin-bottom: 1.9rem; }
	.woocommerce-MyAccount-navigation a { gap: 0.45rem; padding: 0.7rem 0.6rem; font-size: 0.69rem; }
	.woocommerce-MyAccount-navigation .ap-acc-svg { width: 16px; height: 16px; }

	.ap-acc-welcome { gap: 0.6rem; padding: 1.5rem 1.3rem; }
	.ap-acc-welcome h2 { font-size: 2.25rem; }
	.ap-acc-welcome p:not(.is-style-eyebrow) { font-size: var(--wp--preset--font-size--x-small); }
	.ap-acc-welcome img { width: 64px; margin: 0; }
	.ap-acc-shortcuts { grid-template-columns: 1fr; gap: 0.6rem; margin: 1rem 0; }
	.ap-acc-shortcuts a { padding: 1.05rem 2.8rem 1.05rem 4.4rem; }
	.ap-acc-shortcuts .ap-acc-icon { position: absolute; top: 1.1rem; left: 1.05rem; width: 36px; height: 36px; margin: 0; }
	.ap-acc-shortcuts__text { max-width: none; margin-top: 0.25rem; }
	.ap-acc-shortcuts__arrow { top: 1.4rem; right: 1rem; }

	.ap-acc-panel, .ap-order, .ap-order-addresses > .woocommerce-column { padding: 1.4rem 1.2rem; }
	.ap-acc-panel__head { display: block; margin-bottom: 1.1rem; }
	.ap-acc-panel__head .ap-acc-link { margin-top: 0.55rem; }

	.ap-acc-orders thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
	.ap-acc-orders :is(tbody, tr) { display: block; }
	.ap-acc-orders tbody tr { border-bottom: 1px solid var(--ap-line); }
	.ap-acc-orders :is(th, td) { display: flex; align-items: center; justify-content: space-between; gap: 0.6rem; padding: 0.6rem 0; border-top: 1px solid #e7eadf; font-size: var(--wp--preset--font-size--x-small); }
	.ap-acc-orders :is(th, td)[data-label]::before { content: attr(data-label); margin-right: auto; font-size: 0.69rem; font-weight: 400; color: var(--ap-muted); }
	.ap-acc-orders td small { display: none; }
	.ap-acc-orders .woocommerce-orders-table__cell-order-actions { justify-content: flex-end; flex-wrap: wrap; gap: 0.6rem 1rem; }
	.ap-acc-orders .woocommerce-orders-table__cell-order-actions > :not(:first-child) { margin-left: 0; }

	.ap-acc-title h2 { font-size: 2.05rem; }
	.ap-acc-addresses { grid-template-columns: 1fr; gap: 1rem; }
	.ap-acc-form.woocommerce-EditAccountForm,
	.ap-acc-form .woocommerce-address-fields__field-wrapper,
	.ap-acc-form fieldset { grid-template-columns: minmax(0, 1fr); }
	.ap-acc-form .ap-acc-submit.button { width: 100%; min-width: 0; }
	.ap-acc-empty { padding: 2.2rem 1.4rem; }
	.ap-acc-empty h3 { font-size: 1.7rem; }

	.ap-order__item { grid-template-columns: 47px minmax(0, 1fr) auto; gap: 0.75rem; }
	.ap-order__thumb img { width: 47px; height: 78px; }
	.ap-order__product > a, .ap-order__price { font-size: var(--wp--preset--font-size--xx-small); }
	.ap-order-addresses { grid-template-columns: 1fr; }

	.ap-acc-recovery { padding: 2rem 0 2.5rem; }
	.ap-acc-recovery__copy h1 { font-size: 2.95rem; }
	.ap-acc-recovery__lead { font-size: var(--wp--preset--font-size--xx-small); }
	.ap-acc-recovery .ap-acc-card { padding: 1.6rem 1.4rem; }
	.ap-acc-recovery .ap-acc-card__head h2 { font-size: 1.625rem; }
}
