/* Albion account: Orders (grouped cards) and View order (detail). */
/* Type scale: the Elementor kit's global typography presets (heading-2xl … text-xs),
   so account pages match the rest of the site at every breakpoint. Fallbacks are the
   kit's desktop values for pages rendered without the kit. */
body.woocommerce-account { overflow-x: clip; }

/* Same font token as albion-checkout.css (SF Pro Display). */
:root {
	--albion-font: "San Francisco", "SF Pro Display", -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.albion-account-shell,
.albion-account {
	--albion-fs-2xl: var(--e-global-typography-4448e50-font-size, clamp(3.1875rem, 2.773rem + 1.8421vw, 4.0625rem));
	--albion-fs-xl: var(--e-global-typography-4554872-font-size, clamp(2.625rem, 2.3289rem + 1.3158vw, 3.25rem));
	--albion-fs-lg: var(--e-global-typography-b42048d-font-size, clamp(2.1875rem, 1.9803rem + 0.9211vw, 2.625rem));
	--albion-fs-md: var(--e-global-typography-51d578a-font-size, clamp(1.8125rem, 1.6941rem + 0.5263vw, 2.0625rem));
	--albion-fs-sm: var(--e-global-typography-44c7211-font-size, clamp(1.5rem, 1.4112rem + 0.3947vw, 1.6875rem));
	--albion-fs-xs: var(--e-global-typography-ac03395-font-size, clamp(1.25rem, 1.2204rem + 0.1316vw, 1.3125rem));
	--albion-text-lg: var(--e-global-typography-1b082d3-font-size, 1.125rem);
	--albion-text-base: var(--e-global-typography-ade6490-font-size, 1rem);
	--albion-text-small: var(--e-global-typography-312b8c9-font-size, 0.875rem);
	--albion-text-xs: var(--e-global-typography-ca512df-font-size, 0.8125rem);
}

.albion-account {
	--albion-ink: #1d1d1f;
	--albion-ink-2: #424245;
	--albion-muted: #6e6e73;
	--albion-line: #e6e6e8;
	--albion-line-soft: #e6e6e8;
	--albion-panel: #f5f5f7;
	--albion-blue: #0079f3;
	--albion-link: #0079f3;
	--albion-green: #1e8e4e;
	--albion-amber-bg: #fff8e8;
	--albion-amber-line: #f0c36d;
	--albion-amber-ink: #6b4500;
	color: var(--albion-ink);
	font-family: var(--albion-font);
	font-size: var(--albion-text-base);
	line-height: 1.45;
	-webkit-font-smoothing: antialiased;
}
.albion-account *, .albion-account *::before, .albion-account *::after { box-sizing: border-box; }
.albion-account p { margin: 0; }
.albion-account a { color: var(--albion-link); text-decoration: none; }
.albion-account a:hover { text-decoration: underline; }
.albion-account a:focus-visible { outline: 2px solid var(--albion-blue); outline-offset: 2px; border-radius: 4px; }
.albion-account h2, .albion-account h3, .albion-account h4 { color: var(--albion-ink); font-family: inherit; letter-spacing: -.2px; }
.albion-account address { font-style: normal; }
.albion-account .screen-reader-text { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.albion-account-muted { color: var(--albion-muted); }

.albion-account__title { margin: 0; font-size: var(--albion-fs-xl); line-height: 1.08; font-weight: 600; letter-spacing: -.5px; }
.albion-account__lede { margin-top: 10px !important; font-size: var(--albion-text-lg); color: var(--albion-muted); }

/* Shell: replaces WooCommerce's sidebar layout. Backgrounds bleed to the
   viewport edges without widening the page (no horizontal scroll). */
.albion-account-shell {
	--albion-shell-bg: #fff;
	position: relative;
	clear: both;
	background: var(--albion-shell-bg);
	box-shadow: 0 0 0 100vmax var(--albion-shell-bg);
	clip-path: inset(0 -100vmax);
	color: #1d1d1f;
	font-family: var(--albion-font);
	-webkit-font-smoothing: antialiased;
}
.woocommerce-account .albion-account-shell .woocommerce-MyAccount-content { float: none; width: auto; margin: 0; padding: 0; }
.albion-account-shell__main { max-width: 1260px; margin: 0 auto; padding: 64px 0 96px; box-sizing: content-box; }
/* Orders and order detail own their top spacing so a notice band can sit flush under the site header. */
.albion-account-shell--orders .albion-account-shell__main,
.albion-account-shell--view-order .albion-account-shell__main { padding-top: 0; }
.albion-account-orders { padding-top: 64px; }
.albion-account-order { padding-top: 48px; }

/* Account bar: greeting + Sign out, full-bleed white with a bottom border. */
.albion-account-bar { position: relative; background: #fff; box-shadow: 0 0 0 100vmax #fff; clip-path: inset(0 -100vmax); }
.albion-account-bar::after { content: ""; position: absolute; left: -100vmax; right: -100vmax; bottom: 0; height: 1px; background: #e6e6e8; }
.albion-account-bar__inner { display: flex; align-items: center; justify-content: space-between; gap: 16px; max-width: 1260px; min-height: 60px; margin: 0 auto; }
.albion-account-bar__hello { margin: 0; font-size: var(--albion-text-base); font-weight: 600; color: #1d1d1f; }
.albion-account-shell .albion-account-bar__signout { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 0 14px; border: 1px solid #e6e6e8; border-radius: 980px; color: #1d1d1f; font-size: var(--albion-text-small); font-weight: 500; text-decoration: none; transition: border-color .15s ease, background .15s ease; }
.albion-account-shell .albion-account-bar__signout:hover { border-color: #d2d2d7; background: #f5f5f7; text-decoration: none; }
.albion-account-shell .albion-account-bar__signout:focus-visible { outline: 2px solid #0079f3; outline-offset: 2px; }

.albion-account-bar__nav { display: flex; gap: 28px; min-width: 0; overflow-x: auto; scrollbar-width: none; }
.albion-account-bar__nav::-webkit-scrollbar { display: none; }
.albion-account-shell .albion-account-bar__link { flex-shrink: 0; padding: 19px 0; color: #6e6e73; font-size: var(--albion-text-small); font-weight: 500; line-height: 22px; text-decoration: none; }
.albion-account-shell .albion-account-bar__link:hover { color: #1d1d1f; text-decoration: none; }
.albion-account-shell .albion-account-bar__link.is-current { color: #1d1d1f; font-weight: 600; box-shadow: inset 0 -2px 0 #1d1d1f; }
.albion-account-shell .albion-account-bar__link:focus-visible { outline: 2px solid #0079f3; outline-offset: -2px; border-radius: 4px; }
.albion-account-bar__end { display: flex; flex-shrink: 0; align-items: center; gap: 16px; }

/* Account details: WooCommerce's own edit-account form, restyled. */
.albion-account-page-head { max-width: 880px; margin: 0 auto; padding-bottom: 48px; text-align: center; }
.albion-account-page-head .albion-account__title { font-size: var(--albion-fs-2xl); line-height: 1.05; letter-spacing: -1px; }
.albion-account-page-head .albion-account__lede { margin-top: 16px !important; font-size: var(--albion-fs-md); font-weight: 600; line-height: 1.2; color: var(--albion-ink); }
.albion-account-details .woocommerce-EditAccountForm { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 16px; max-width: 680px; margin: 0 auto; }
.albion-account-details .woocommerce-EditAccountForm > * { grid-column: 1 / -1; }
.albion-account-details .woocommerce-EditAccountForm > .form-row-first { grid-column: 1; }
.albion-account-details .woocommerce-EditAccountForm > .form-row-last { grid-column: 2; }
.albion-account-details .woocommerce-EditAccountForm .form-row:has(#account_display_name) { display: none; }
.albion-account-details .woocommerce-EditAccountForm .clear { display: none; }
.albion-account-details .woocommerce-EditAccountForm .form-row { float: none; width: auto; margin: 0; padding: 0; }
.albion-account-details .woocommerce-EditAccountForm label { display: block; margin: 0 0 8px; font-size: var(--albion-text-small); font-weight: 600; color: var(--albion-ink); }
.albion-account-details .woocommerce-EditAccountForm .required { color: var(--albion-muted); text-decoration: none; border: 0; }
.albion-account-details .woocommerce-EditAccountForm input.input-text,
.albion-account-details .woocommerce-EditAccountForm input[type="text"],
.albion-account-details .woocommerce-EditAccountForm input[type="email"],
.albion-account-details .woocommerce-EditAccountForm input[type="password"] { width: 100%; height: 52px; margin: 0; padding: 0 16px; border: 1px solid #d2d2d7; border-radius: 12px; background: #fff; box-shadow: none; color: var(--albion-ink); font: inherit; font-size: var(--albion-text-lg); line-height: 1.2; }
.albion-account-details .woocommerce-EditAccountForm input:focus { outline: 2px solid var(--albion-blue); outline-offset: 1px; border-color: var(--albion-blue); }
.albion-account-details .woocommerce-EditAccountForm span em { display: block; margin-top: 8px; font-size: var(--albion-text-xs); font-style: normal; color: var(--albion-muted); }
.albion-account-details .password-input { position: relative; display: block; }
.albion-account-details .password-input input { padding-right: 52px; }
.albion-account-details .show-password-input { position: absolute; top: 50%; right: 8px; width: 40px; height: 40px; margin: 0; padding: 0; border: 0; border-radius: 10px; background-color: transparent; transform: translateY(-50%); cursor: pointer; }
.albion-account-details .show-password-input:hover { background-color: var(--albion-panel); }
.albion-account-details .woocommerce-EditAccountForm fieldset { display: grid; gap: 24px; margin: 24px 0 0; padding: 40px 0 0; border: 0; border-top: 1px solid var(--albion-line); }
.albion-account-details .woocommerce-EditAccountForm legend { float: left; width: 100%; margin: 0 0 4px; padding: 0; font-size: var(--albion-fs-xs); font-weight: 600; letter-spacing: -.2px; color: var(--albion-ink); }
.albion-account-details .woocommerce-EditAccountForm legend + * { clear: both; }
.albion-account-details .woocommerce-EditAccountForm > p:last-of-type { margin-top: 16px; }
.albion-account-details .woocommerce-EditAccountForm .woocommerce-Button,
.albion-account-details .woocommerce-EditAccountForm button[type="submit"] { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 28px; border: 0; border-radius: 980px; background: var(--albion-blue); color: #fff; font: inherit; font-size: var(--albion-text-lg); font-weight: 500; cursor: pointer; }
.albion-account-details .woocommerce-EditAccountForm .woocommerce-Button:hover,
.albion-account-details .woocommerce-EditAccountForm button[type="submit"]:hover { background: #006ad8; }
.albion-account-details .woocommerce-EditAccountForm .woocommerce-Button:focus-visible { outline: 2px solid var(--albion-blue); outline-offset: 3px; }

/* WooCommerce billing and shipping address management. */
.albion-account-addresses > p:first-of-type { display: none; }
.albion-account-addresses > h3 { max-width: 680px; margin: 0 auto 24px; font-size: var(--albion-fs-sm); font-weight: 600; }
.albion-account-shell--edit-address .albion-account-addresses .woocommerce-Addresses { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; align-items: stretch; gap: 20px; width: 100% !important; max-width: 1200px; margin: 0 auto !important; }
.albion-account-shell--edit-address .albion-account-addresses .woocommerce-Addresses::before,
.albion-account-shell--edit-address .albion-account-addresses .woocommerce-Addresses::after { display: none !important; content: none !important; }
.albion-account-shell--edit-address .albion-account-addresses .woocommerce-Address { position: static !important; left: auto !important; right: auto !important; display: flex; flex-direction: column; box-sizing: border-box; float: none !important; clear: none !important; width: 100% !important; max-width: none !important; min-width: 0; height: 100%; margin: 0 !important; padding: 28px; border: 1px solid var(--albion-line); border-radius: 18px; background: #fff; }
.albion-account-shell--edit-address .woocommerce-Address-title { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.albion-account-shell--edit-address .woocommerce-Address-title h2 { margin: 0; font-size: var(--albion-fs-xs); font-weight: 600; }
.albion-account-shell--edit-address .woocommerce-Address-title .edit { float: none; color: var(--albion-blue); font-size: var(--albion-text-small); font-weight: 500; }
.albion-account-shell--edit-address .woocommerce-Address address { margin: 20px 0 0; color: var(--albion-ink-2); font-style: normal; line-height: 1.6; }
.albion-account-shell--edit-address .woocommerce-address-fields { max-width: 680px; margin: 0 auto; }
.albion-account-shell--edit-address .woocommerce-address-fields__field-wrapper { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.albion-account-shell--edit-address .woocommerce-address-fields .form-row { float: none; width: auto; margin: 0; padding: 0; }
.albion-account-shell--edit-address .woocommerce-address-fields .form-row-wide { grid-column: 1 / -1; }
.albion-account-shell--edit-address .woocommerce-address-fields label { display: block; margin: 0 0 8px; font-size: var(--albion-text-small); font-weight: 600; }
.albion-account-shell--edit-address .woocommerce-address-fields input.input-text,
.albion-account-shell--edit-address .woocommerce-address-fields select { box-sizing: border-box; width: 100%; height: 52px; margin: 0; padding: 0 16px; border: 1px solid #d2d2d7; border-radius: 12px; background: #fff; color: var(--albion-ink); font: inherit; }
.albion-account-shell--edit-address .woocommerce-address-fields button[type="submit"] { min-height: 48px; margin-top: 24px; padding: 0 28px; border: 0; border-radius: 980px; background: var(--albion-blue); color: #fff; font: inherit; font-weight: 500; cursor: pointer; }

/* Signed out: sign in, register, password pages. Same fields and buttons as Account details. */
.albion-account-shell--auth .albion-account-shell__main { padding-top: 64px; }
/* Albion fields beat WooCommerce's own form styles (boxed forms, square inputs, red asterisks). */
.albion-account-shell .albion-account-auth form.woocommerce-form,
.albion-account-shell .albion-account-auth form.lost_reset_password { display: grid; gap: 20px; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; }
.albion-account-shell .albion-account-auth form .form-row { float: none; width: auto; margin: 0; padding: 0; }
.albion-account-shell .albion-account-auth form .form-row label,
.albion-account-shell .albion-account-auth form > p > label { display: block; margin: 0 0 8px; color: var(--albion-ink); font-size: var(--albion-text-small); font-weight: 600; line-height: 1.4; }
.albion-account-shell .albion-account-auth form .required { display: none; }
.albion-account-shell .albion-account-auth form .form-row input.input-text,
.albion-account-shell .albion-account-auth form .form-row input[type="email"],
.albion-account-shell .albion-account-auth form .form-row input[type="password"] { box-sizing: border-box; width: 100%; height: 52px; margin: 0; padding: 0 16px; border: 1px solid #d2d2d7; border-radius: 12px; background: #fff; box-shadow: none; color: var(--albion-ink); font: inherit; font-size: var(--albion-text-lg); line-height: 1.2; transition: border-color .15s ease, box-shadow .15s ease; }
.albion-account-shell .albion-account-auth form .form-row input.input-text:hover { border-color: #a1a1a6; }
.albion-account-shell .albion-account-auth form .form-row input.input-text:focus { border-color: var(--albion-blue); outline: 0; box-shadow: 0 0 0 4px rgba(0, 121, 243, .18); }
.albion-account-shell .albion-account-auth form .password-input input.input-text { padding-right: 52px; }
.albion-account-shell .albion-account-auth form .show-password-input { top: 50%; right: 8px; width: 40px; height: 40px; border-radius: 10px; transform: translateY(-50%); }
.albion-account-shell .albion-account-auth form .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-size: var(--albion-text-small); font-weight: 400; }
.albion-account-shell .albion-account-auth form .woocommerce-form-login__rememberme input { width: 18px; height: 18px; margin: 0; accent-color: var(--albion-blue); }
.albion-account-shell .albion-account-auth form .form-row-first,
.albion-account-shell .albion-account-auth form .form-row-last { width: 100%; }
.albion-account-shell .albion-account-auth form .clear { display: none; }

/* Spacing inside the sign-in column and the register panel. These beat the
   account-wide paragraph reset, which otherwise zeroes their margins. */
.albion-account-auth .albion-account-auth__display { margin: 0; }
.albion-account-auth .albion-account-auth__intro { margin: 12px 0 40px; }
.albion-account-auth .albion-account-auth__panel-title { margin: 0 0 32px; }
.albion-account-shell .albion-account-auth .albion-account-auth__panel form.woocommerce-form { display: block; }
.albion-account-shell .albion-account-auth .albion-account-auth__panel form.woocommerce-form > * { margin: 0; }
.albion-account-shell .albion-account-auth .albion-account-auth__panel form.woocommerce-form > :empty:not(input) { display: none; }
.albion-account-shell .albion-account-auth .albion-account-auth__panel form.woocommerce-form > .form-row + .form-row { margin-top: 20px; }
.albion-account-auth .albion-account-auth__panel .albion-account-auth__hint { margin: 8px 0 0; }
.albion-account-auth .albion-account-auth__panel .woocommerce-privacy-policy-text { margin: 16px 0 0; }
.albion-account-shell .albion-account-auth .albion-account-auth__panel form.woocommerce-form > .form-row:last-of-type { margin-top: 24px; }

/* Forgotten / reset password: the sign-in column on its own. */
.albion-account-auth__split--single .albion-account-auth__signin { padding: 32px 0; }
.albion-account-auth__password > p:not([class]) { margin: 0 0 24px; color: var(--albion-ink-2); font-size: var(--albion-text-base); line-height: 1.5; }
.albion-account-auth__password .albion-account-auth__back { margin-top: 32px !important; text-align: left; }

/* Sign in (left) and the grey "New to Albion?" panel with registration (right). */
.albion-account-auth__split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: stretch; }
.albion-account-auth__split--single { grid-template-columns: minmax(0, 560px); justify-content: center; }
.albion-account-auth__signin { display: flex; flex-direction: column; justify-content: center; padding: 72px 96px; }
.albion-account-auth__display { margin: 0; font-size: var(--albion-fs-xl); line-height: 1.1; font-weight: 600; letter-spacing: -.8px; }
.albion-account-auth__intro { margin: 12px 0 40px; color: var(--albion-muted); font-size: var(--albion-text-lg); }
.albion-account-auth__panel { display: flex; flex-direction: column; justify-content: center; padding: 72px 80px; border-radius: 22px; background: var(--albion-panel); }
.albion-account-auth__panel-title { margin: 0 0 32px; font-size: var(--albion-fs-md); line-height: 1.15; font-weight: 600; letter-spacing: -.3px; }
.albion-account-auth__benefits { display: flex; flex-direction: column; gap: 24px; margin: 0 0 40px; padding: 0; list-style: none; }
.albion-account-auth__benefits li { display: flex; gap: 16px; margin: 0; color: var(--albion-ink-2); font-size: var(--albion-text-small); line-height: 1.5; }
.albion-account-auth__benefits strong { display: block; color: var(--albion-ink); font-size: var(--albion-text-lg); font-weight: 600; }
.albion-account-auth__benefit-icon { display: flex; flex-shrink: 0; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; background: #fff; color: var(--albion-blue); }
.albion-account-shell .albion-account-auth .albion-account-auth__panel form button.albion-account-auth__secondary { width: 100%; min-height: 52px; border: 1px solid var(--albion-blue); background: transparent; color: var(--albion-blue); }
.albion-account-shell .albion-account-auth .albion-account-auth__panel form button.albion-account-auth__secondary:hover { background: var(--albion-blue); color: #fff; }
.albion-account-auth__card { padding: 40px; border: 1px solid var(--albion-line); border-radius: 18px; background: #fff; }
.albion-account-auth__text { margin: 0 0 24px; color: var(--albion-ink-2); font-size: var(--albion-text-base); line-height: 1.5; }
.albion-account-auth__hint { margin: 0; color: var(--albion-muted); font-size: var(--albion-text-small); line-height: 1.5; }
.albion-account-auth form { display: grid; gap: 20px; margin: 0; }
.albion-account-auth form .form-row { float: none; width: auto; margin: 0; padding: 0; }
.albion-account-auth form > p:empty { display: none; }
.albion-account-auth form label { display: block; margin: 0 0 8px; font-size: var(--albion-text-small); font-weight: 600; color: var(--albion-ink); }
.albion-account-auth form .required { color: var(--albion-muted); text-decoration: none; border: 0; }
.albion-account-auth form input.input-text,
.albion-account-auth form input[type="text"],
.albion-account-auth form input[type="email"],
.albion-account-auth form input[type="password"] { width: 100%; height: 52px; margin: 0; padding: 0 16px; border: 1px solid #d2d2d7; border-radius: 12px; background: #fff; box-shadow: none; color: var(--albion-ink); font: inherit; font-size: var(--albion-text-lg); line-height: 1.2; }
.albion-account-auth form input:focus { outline: 2px solid var(--albion-blue); outline-offset: 1px; border-color: var(--albion-blue); }
.albion-account-auth .password-input { position: relative; display: block; }
.albion-account-auth .password-input input { padding-right: 52px; }
.albion-account-auth .show-password-input { position: absolute; top: 50%; right: 8px; width: 40px; height: 40px; margin: 0; padding: 0; border: 0; border-radius: 10px; background-color: transparent; transform: translateY(-50%); cursor: pointer; }
.albion-account-auth .show-password-input:hover { background-color: var(--albion-panel); }
.albion-account-auth__row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.albion-account-auth form .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-weight: 400; }
.albion-account-auth form input[type="checkbox"] { width: 18px; height: 18px; margin: 0; accent-color: var(--albion-blue); }
.albion-account-auth .lost_password { font-size: var(--albion-text-small); }
.albion-account-auth .woocommerce-privacy-policy-text { color: var(--albion-muted); font-size: var(--albion-text-xs); line-height: 1.5; }
.albion-account-auth .woocommerce-privacy-policy-text p { margin: 0; }
.albion-account-auth form button[type="submit"],
.albion-account-auth form .woocommerce-Button,
.albion-account-auth .albion-account-auth__cta { display: inline-flex; align-items: center; justify-content: center; width: 100%; min-height: 52px; margin: 0; padding: 0 28px; border: 0; border-radius: 980px; background: var(--albion-blue); color: #fff; font: inherit; font-size: var(--albion-text-lg); font-weight: 500; text-decoration: none; cursor: pointer; }
.albion-account-auth form button[type="submit"]:hover,
.albion-account-auth form .woocommerce-Button:hover,
.albion-account-auth .albion-account-auth__cta:hover { background: var(--albion-blue-hover); color: #fff; text-decoration: none; }
.albion-account-auth form button[type="submit"]:focus-visible,
.albion-account-auth .albion-account-auth__cta:focus-visible { outline: 2px solid var(--albion-blue); outline-offset: 3px; }
.albion-account-auth__done { max-width: 560px; margin: 0 auto; text-align: center; }
.albion-account-auth__title { margin: 20px 0 12px; font-size: var(--albion-fs-sm); font-weight: 600; letter-spacing: -.2px; }
.albion-account-auth__done .albion-account-auth__text { margin-bottom: 12px; }
.albion-account-auth__done .albion-account-auth__hint { margin-bottom: 28px; }
.albion-account-auth__done .albion-account-auth__cta { width: auto; min-width: 200px; }
.albion-account-auth__back { margin-top: 24px !important; text-align: center; font-size: var(--albion-text-small); }
.albion-account-auth .woocommerce-error,
.albion-account-auth .woocommerce-message { max-width: 960px; margin: 0 auto 24px; }

/* WooCommerce notices inside the shell. */
.albion-account-shell .woocommerce-notices-wrapper:empty { display: none; }
.albion-account-shell .woocommerce-message,
.albion-account-shell .woocommerce-error { margin: 32px 0 0; border: 1px solid #e6e6e8; border-radius: 14px; background: #fff; color: #1d1d1f; font-size: var(--albion-text-base); }
.albion-account-shell .woocommerce-error {
	box-sizing: border-box !important;
	width: 100% !important;
	margin: 32px 0 24px !important;
	padding: 20px 24px 20px 56px !important;
	border: 1px solid rgba(215, 0, 21, .24) !important;
	border-radius: 14px !important;
	background: #fff5f5 !important;
	box-shadow: none !important;
	color: #1d1d1f !important;
	font-size: var(--albion-text-base) !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	list-style: none !important;
}
.albion-account-shell .woocommerce-error::before { top: 20px !important; left: 24px !important; color: #d70015 !important; }
.albion-account-shell .woocommerce-error li { margin: 0 !important; padding: 0 !important; }
.albion-account-shell .woocommerce-error a { color: #b80012 !important; font-weight: 600 !important; text-decoration: underline !important; text-underline-offset: 3px !important; }

/* Info notices (e.g. "Confirm your email address…") become a full-width blue band. */
.albion-account-shell .woocommerce-info,
.albion-account-shell .wc-block-components-notice-banner.is-info {
	display: block;
	position: relative;
	margin: 0;
	padding: 22px 0;
	border: 0;
	border-radius: 0;
	background: #0079f3;
	box-shadow: 0 0 0 100vmax #0079f3;
	clip-path: inset(0 -100vmax);
	color: #fff;
	font-size: var(--albion-text-lg);
	font-weight: 600;
	line-height: 1.4;
	text-align: center;
}
.albion-account-shell .woocommerce-info::before,
.albion-account-shell .wc-block-components-notice-banner.is-info > svg { display: none; }
.albion-account-shell .wc-block-components-notice-banner.is-info > .wc-block-components-notice-banner__content { display: inline; }
.albion-account-shell .woocommerce-info a,
.albion-account-shell .woocommerce-info .button,
.albion-account-shell .woocommerce-info button,
.albion-account-shell .wc-block-components-notice-banner.is-info a,
.albion-account-shell .wc-block-components-notice-banner.is-info .button,
.albion-account-shell .wc-block-components-notice-banner.is-info button {
	display: inline;
	float: none;
	margin: 0 0 0 6px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
	color: #fff;
	font: inherit;
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}
.albion-account-shell .woocommerce-info a:hover,
.albion-account-shell .woocommerce-info .button:hover,
.albion-account-shell .woocommerce-info button:hover,
.albion-account-shell .wc-block-components-notice-banner.is-info a:hover,
.albion-account-shell .wc-block-components-notice-banner.is-info .button:hover,
.albion-account-shell .wc-block-components-notice-banner.is-info button:hover { background: none; color: #fff; text-decoration-thickness: 2px; }
.albion-account-shell .woocommerce-info :focus-visible,
.albion-account-shell .wc-block-components-notice-banner.is-info :focus-visible { outline: 2px solid #fff; outline-offset: 3px; }

/* Hugeicons (stroke, rounded): inline with text, coloured by the surrounding text. */
.albion-account-icon { display: inline-block; flex-shrink: 0; vertical-align: -.2em; }
.albion-account a .albion-account-icon { margin: 0 2px; }
.albion-account-back .albion-account-icon { margin: 0 2px 0 -4px; }

/* Image placeholder when a product has no image at all. */
.albion-account-placeholder { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; box-sizing: border-box; border: 1px solid #e6e6e8; border-radius: 22px; background: #f5f5f7; color: #1d1d1f; font-size: var(--albion-fs-sm); font-style: italic; font-weight: 600; letter-spacing: -.3px; line-height: 1; }
.albion-account-line__thumb .albion-account-placeholder { font-size: var(--albion-text-xs); letter-spacing: 0; }

/* Buttons */
.albion-account-shell .albion-account .albion-account-btn { display: inline-flex !important; align-items: center !important; min-height: 40px !important; padding: 9px 18px !important; border: 1px solid var(--albion-blue) !important; border-radius: 980px !important; background: var(--albion-blue) !important; box-shadow: none !important; color: #fff !important; font-size: var(--albion-text-small) !important; font-weight: 500 !important; line-height: 1.2 !important; text-decoration: none !important; text-shadow: none !important; cursor: pointer !important; }
.albion-account-shell .albion-account .albion-account-btn:hover,
.albion-account-shell .albion-account .albion-account-btn:focus,
.albion-account-shell .albion-account .albion-account-btn:active { background: #006ad8 !important; color: #fff !important; text-decoration: none !important; }
.albion-account-shell .albion-account .albion-account-btn--secondary,
.albion-account-shell .albion-account .albion-account-btn--secondary:visited { background: transparent !important; color: var(--albion-blue) !important; }
.albion-account-shell .albion-account .albion-account-btn--secondary:hover,
.albion-account-shell .albion-account .albion-account-btn--secondary:focus,
.albion-account-shell .albion-account .albion-account-btn--secondary:active { background: var(--albion-blue) !important; color: #fff !important; }
.albion-account-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.albion-account-shell .albion-account .albion-account-btn--danger { border-color: #d70015 !important; background: #d70015 !important; color: #fff !important; }
.albion-account-shell .albion-account .albion-account-btn--danger:hover,
.albion-account-shell .albion-account .albion-account-btn--danger:focus,
.albion-account-shell .albion-account .albion-account-btn--danger:active { background: #b80012 !important; color: #fff !important; }
.albion-account .albion-account-btn.is-busy { opacity: .6; pointer-events: none; }
.albion-account-cancel { margin-top: 24px; }
.albion-account-cancel--requested { max-width: 640px; color: var(--albion-ink-2); font-size: var(--albion-text-small); }
.albion-account-cancel summary { width: fit-content; color: var(--albion-muted); font-size: var(--albion-text-small); text-decoration: underline; cursor: pointer; }
.albion-account-cancel summary:hover { color: var(--albion-ink); }
.albion-account-cancel__form { box-sizing: border-box; max-width: 640px; margin-top: 12px; padding: 20px; border: 1px solid var(--albion-line); border-radius: 12px; background: var(--albion-panel); }
.albion-account-cancel__form p { margin: 0 0 16px; color: var(--albion-ink-2); }

/* Orders list */
.albion-account-orders__head { max-width: 880px; margin: 0 auto; padding-bottom: 48px; text-align: center; }
.albion-account-orders__head .albion-account__title { font-size: var(--albion-fs-2xl); line-height: 1.05; letter-spacing: -1px; }
.albion-account-orders__head .albion-account__lede { margin-top: 16px !important; font-size: var(--albion-fs-md); font-weight: 600; line-height: 1.2; color: var(--albion-ink); }
.albion-account-filters { display: flex; width: max-content; margin: 48px auto 32px; padding: 3px; border-radius: 980px; background: var(--albion-line-soft); }
.albion-account .albion-account-filters__tab { padding: 9px 20px; border-radius: 980px; color: var(--albion-ink); font-size: var(--albion-text-small); font-weight: 500; }
.albion-account .albion-account-filters__tab:hover { text-decoration: none; background: rgba(255, 255, 255, .6); }
.albion-account .albion-account-filters__tab.is-active { background: #fff; font-weight: 600; box-shadow: 0 1px 4px rgba(0, 0, 0, .12); }
.albion-account-empty { max-width: 640px; margin: 0 auto; padding: 48px 40px; border: 1px solid var(--albion-line); border-radius: 18px; background: #fff; text-align: center; }
.albion-account-empty__icon { display: inline-flex; align-items: center; justify-content: center; width: 64px; height: 64px; border-radius: 50%; background: var(--albion-panel); color: var(--albion-ink); }
.albion-account-empty__title { margin: 20px 0 8px; font-size: var(--albion-fs-xs); font-weight: 600; }
.albion-account-empty__lede { color: var(--albion-muted); font-size: var(--albion-text-base); }
.albion-account-empty__checks { display: flex; flex-direction: column; gap: 12px; margin: 24px 0 0; padding: 0; list-style: none; text-align: left; }
.albion-account-empty__checks li { display: flex; gap: 14px; margin: 0; padding: 16px 18px; border-radius: 14px; background: var(--albion-panel); font-size: var(--albion-text-small); line-height: 1.5; color: var(--albion-ink-2); }
.albion-account-empty__checks .albion-account-icon { margin-top: 1px; color: var(--albion-blue); }
.albion-account-empty__checks strong { display: block; margin-bottom: 2px; font-size: var(--albion-text-base); font-weight: 600; color: var(--albion-ink); }

.albion-account-order-list { display: flex; flex-direction: column; gap: 16px; }
.albion-account-order-card { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 32px; padding: 28px 32px; border: 1px solid var(--albion-line); border-radius: 18px; background: #fff; }
.albion-account-order-card__meta { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px !important; font-size: var(--albion-text-xs); color: var(--albion-muted); }
.albion-account-order-card__meta strong { color: var(--albion-ink); font-weight: 600; }
.albion-account-lines { display: flex; flex-direction: column; gap: 14px; margin: 0; padding: 0; list-style: none; }
.albion-account-line { display: flex; align-items: center; gap: 16px; margin: 0; }
/* Images fill their square: the photo's own white/grey background is the tile; rounded corners + a grey border frame it. */
.albion-account-line__thumb { display: flex; flex-shrink: 0; width: 64px; height: 64px; }
.albion-account-shell .albion-account .albion-account-line__thumb img.albion-account-image { display: block; width: 100%; height: 100%; object-fit: cover; box-sizing: border-box; border: 1px solid #e6e6e8 !important; border-radius: 22px !important; }
.albion-account-line__thumb .albion-account-placeholder { border-radius: 22px; }
.albion-account-line__text { display: flex; flex-direction: column; flex-grow: 1; min-width: 0; }
.albion-account-line__name { font-weight: 600; }
.albion-account-line__sub { margin-top: 2px; font-size: var(--albion-text-xs); color: var(--albion-muted); }
.albion-account-lines__more { margin-top: 12px !important; padding-left: 80px; font-size: var(--albion-text-xs); color: var(--albion-muted); }

.albion-account-order-card__status { display: flex; flex-direction: column; gap: 8px; padding-left: 32px; border-left: 1px solid var(--albion-line-soft); }
.albion-account-status { display: flex; align-items: center; gap: 8px; font-size: var(--albion-fs-xs); font-weight: 600; letter-spacing: -.2px; line-height: 1.2; }
.albion-account-status__dot { width: 8px; height: 8px; flex-shrink: 0; border-radius: 50%; background: var(--albion-blue); }
.albion-account-status.is-done .albion-account-status__dot { background: var(--albion-green); }
.albion-account-status.is-attention .albion-account-status__dot { background: #c25e00; }
.albion-account-status.is-muted .albion-account-status__dot { background: #86868b; }
.albion-account-status__text { font-size: var(--albion-text-small); color: var(--albion-muted); }
.albion-account-flag { align-self: flex-start; padding: 4px 10px; border: 1px solid var(--albion-amber-line); border-radius: 980px; background: var(--albion-amber-bg); color: var(--albion-amber-ink); font-size: var(--albion-text-xs); font-weight: 600; }
.albion-account-track { display: flex; flex-direction: column; margin-top: 4px; padding: 12px 14px; border-radius: 12px; background: var(--albion-panel); font-size: var(--albion-text-xs); }
.albion-account-track span { color: var(--albion-muted); }
.albion-account-track a { font-weight: 500; }
.albion-account-order-card__status .albion-account-actions { margin-top: auto; padding-top: 12px; }

.albion-account-pagination { display: flex; justify-content: center; align-items: center; gap: 24px; margin-top: 32px; font-size: var(--albion-text-base); }
.albion-account-pagination .is-disabled { color: #86868b; }
.albion-account-pagination__count { color: var(--albion-muted); }

.albion-account-help { max-width: 760px; margin-top: 64px; }
.albion-account-help h3 { margin: 0 0 16px; font-size: var(--albion-fs-sm); font-weight: 600; }
.albion-account-help p { margin-bottom: 14px; font-size: var(--albion-text-lg); }
.albion-account-help__account { margin-top: 28px !important; }
.albion-account-help__note { color: var(--albion-ink-2); }
.albion-account-help__link-orders { margin-top: 20px; }
.albion-account-help__link-orders .albion-account-btn { cursor: pointer; }

/* View order */
.albion-account-order { margin: 0 auto; }
.albion-account-back { display: inline-block; font-size: var(--albion-text-small); }
.albion-account-order__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; gap: 24px; margin: 20px 0 48px; }
.albion-account-order__head .albion-account__title { font-size: var(--albion-fs-lg); }
.albion-account-order__ref { margin: 0; font-size: var(--albion-text-small); line-height: 1.6; text-align: right; }
.albion-account-order__ref dt, .albion-account-order__ref dd { display: inline; margin: 0; font-weight: 400; }

.albion-account-line-card__row--collection { align-items: start; }
.albion-account-line-card__row--collection .albion-account-card__title { align-self: start; }
.albion-account-collection-store { font-weight: 500; }
.albion-account-collector { position: relative; margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--albion-line-soft); }
.albion-account-collector__title { display: block; font-size: var(--albion-text-small); font-weight: 600; }
.albion-account-collector > .albion-account-muted { margin: 4px 0 14px !important; font-size: var(--albion-text-small); }
.albion-account-collector__label { display: block; font-size: var(--albion-text-xs); color: var(--albion-muted); }
.albion-account-collector__name { display: block; margin-top: 2px; font-weight: 500; }
.albion-account-collector__actions { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 8px; margin-top: 10px; }
.albion-account-collector__change { display: inline-flex; align-items: center; min-height: 32px; color: var(--albion-blue); font-size: var(--albion-text-xs); font-weight: 500; line-height: 1.2; text-decoration: none; }
.albion-account-collector__change:hover { color: var(--albion-blue-hover); text-decoration: underline; }
.albion-account-collector__editor { box-sizing: border-box; }
.albion-account-collector__reset { margin: 0; }
.albion-account .albion-account-collector__reset .albion-account-btn { min-height: 32px; padding: 5px 12px; background: var(--albion-blue); color: #fff; font-size: var(--albion-text-xs); line-height: 1.2; cursor: pointer; }
.albion-account .albion-account-collector__reset .albion-account-btn:hover { background: #006ad8; color: #fff; }
.albion-account-collector label { display: block; margin-bottom: 4px; font-size: var(--albion-text-small); font-weight: 600; }
.albion-account-collector form > .albion-account-muted { margin: 0 0 12px !important; font-size: var(--albion-text-xs); }
.albion-account-collector__fields { display: flex; justify-content: flex-end; gap: 10px; margin-top: 20px; }
.albion-account-collector input[type="text"] { width: 100%; min-width: 0; height: 44px; padding: 0 14px; border: 1px solid #d2d2d7; border-radius: 12px; background: #fff; color: var(--albion-ink); font: inherit; box-sizing: border-box; }
.albion-account-collector input[type="text"]:focus { border-color: var(--albion-blue); outline: 0; box-shadow: 0 0 0 4px rgba(0, 121, 243, .18); }

.albion-account-hero { display: grid; grid-template-columns: minmax(0, 240px) minmax(0, 1fr); gap: 40px; align-items: center; }
.albion-account-hero__media { display: flex; width: 240px; height: 240px; }
.albion-account-shell .albion-account .albion-account-hero__media img.albion-account-image { display: block; width: 100%; height: 100%; object-fit: cover; box-sizing: border-box; border: 1px solid #e6e6e8 !important; border-radius: 22px !important; }
.albion-account-hero__summary { display: flex; justify-content: space-between; align-items: center; gap: 32px; }
.albion-account-hero__copy { min-width: 0; }
.albion-account-hero__kicker { margin-bottom: 6px !important; font-size: var(--albion-text-small); }
.albion-account-hero__state { margin: 0; font-size: var(--albion-fs-sm); font-weight: 600; letter-spacing: -.3px; }
.albion-account-hero__text { margin-top: 6px !important; color: var(--albion-muted); }
.albion-account-hero__tracking { display: flex; justify-content: flex-end; align-items: center; gap: 16px; flex-shrink: 0; }
.albion-account-hero__tracking-meta { display: flex; flex-direction: column; min-width: 0; text-align: right; }
.albion-account-hero__tracking-meta strong { font-size: var(--albion-text-small); font-weight: 600; }
.albion-account-hero__tracking-meta span { color: var(--albion-muted); font-size: var(--albion-text-xs); overflow-wrap: anywhere; }
.albion-account-hero__tracking .albion-account-btn { flex-shrink: 0; gap: 6px; }

.albion-account-progress { margin-top: 22px; }
.albion-account-progress__bar { position: relative; height: 4px; border-radius: 4px; background: var(--albion-line); overflow: hidden; }
.albion-account-progress__bar span { position: absolute; inset: 0 auto 0 0; width: var(--albion-progress, 0%); border-radius: 4px; background: var(--albion-blue); }
.albion-account-progress__steps { display: grid; grid-template-columns: repeat(var(--albion-steps, 3), minmax(0, 1fr)); gap: 8px; margin: 12px 0 0; padding: 0; list-style: none; font-size: var(--albion-text-small); color: var(--albion-muted); }
.albion-account-progress__steps li { margin: 0; text-align: center; }
.albion-account-progress__steps li:first-child { text-align: left; }
.albion-account-progress__steps li:last-child { text-align: right; }
.albion-account-progress__steps li.is-done { color: var(--albion-ink-2); }
.albion-account-progress__steps li.is-current { color: var(--albion-ink); font-weight: 600; }

.albion-account-update { display: flex; gap: 14px; align-items: flex-start; margin-top: 32px; padding: 24px 28px; border: 1px solid var(--albion-amber-line); border-radius: 18px; background: var(--albion-amber-bg); }
.albion-account-update__icon { flex-shrink: 0; margin-top: 2px; color: var(--albion-amber-ink); }
.albion-account-update__kicker { font-size: var(--albion-text-xs); font-weight: 600; letter-spacing: .4px; text-transform: uppercase; color: var(--albion-amber-ink); }
.albion-account-update h3, .albion-account-update h4 { margin: 6px 0 8px; font-size: var(--albion-fs-xs); font-weight: 600; letter-spacing: -.2px; }
.albion-account-update__message p { margin-bottom: 8px; }
.albion-account-update__meta { font-size: var(--albion-text-small); color: var(--albion-amber-ink); }

/* The lower order details mirror the Thank You page's expandable summary. */
.albion-account-confirmation { margin: 64px 0 0; }
.albion-account-accordion { border-top: 1px solid var(--albion-line); }
.albion-account-accordion:last-child { border-bottom: 1px solid var(--albion-line); }
.albion-account-accordion summary { display: flex; align-items: center; gap: 16px; padding: 22px 0; font-size: var(--albion-fs-xs); font-weight: 600; letter-spacing: -.3px; line-height: 1.2; cursor: pointer; list-style: none; }
.albion-account-accordion summary::-webkit-details-marker { display: none; }
.albion-account-accordion summary::after { content: ""; width: 12px; height: 12px; margin: 0 6px 6px 0; border-right: 2px solid var(--albion-muted); border-bottom: 2px solid var(--albion-muted); transform: rotate(45deg); flex-shrink: 0; }
.albion-account-accordion[open] summary::after { margin-bottom: -6px; transform: rotate(-135deg); }
.albion-account-accordion summary > span:first-child { margin-right: auto; }
.albion-account-accordion summary small { margin-left: auto; font-size: var(--albion-text-small); font-weight: 400; letter-spacing: normal; color: var(--albion-muted); font-variant-numeric: tabular-nums; }
.albion-account-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) minmax(0, 1.3fr); gap: 32px; padding-bottom: 28px; }
.albion-account-summary__col h3, .albion-account-tracking-list h3 { margin: 0 0 6px; font-size: var(--albion-text-small); font-weight: 600; letter-spacing: 0; }
.albion-account-summary__col h3:not(:first-child) { margin-top: 20px; }
.albion-account-summary__col > p { color: var(--albion-muted); font-size: var(--albion-text-small); line-height: 1.55; white-space: pre-line; overflow-wrap: anywhere; }
.albion-account-contact__line { display: block; }
.albion-account-summary__totals { grid-column: -2 / -1; }
.albion-account-summary__line { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 10px; font-size: var(--albion-text-small); line-height: 1.4; font-variant-numeric: tabular-nums; }
.albion-account-summary__line span:first-child { color: var(--albion-muted); }
.albion-account-summary__line span:last-child { flex-shrink: 0; text-align: right; }
.albion-account-summary__line.is-total { margin: 14px 0 0; padding-top: 14px; border-top: 1px solid var(--albion-line-soft); font-size: var(--albion-text-lg); font-weight: 600; }
.albion-account-summary__line.is-total span:first-child { color: var(--albion-ink); }
.albion-account-summary__line small, .albion-account-summary__line .includes_tax { display: block; font-size: var(--albion-text-xs); font-weight: 400; color: var(--albion-muted); white-space: normal; }
.albion-account-collection-details summary small { max-width: 52%; overflow-wrap: anywhere; text-align: right; }
.albion-account-collector--dedicated { max-width: 620px; margin: 0; padding: 28px 0 32px; border-top: 0; }
.albion-account-collector__dialog { width: min(520px, calc(100% - 32px)); max-width: none; padding: 0; border: 0; border-radius: 18px; background: #fff; color: var(--albion-ink); box-shadow: 0 24px 80px rgba(0, 0, 0, .24); }
.albion-account-collector__dialog::backdrop { background: rgba(0, 0, 0, .42); }
.albion-account-collector__dialog .albion-account-collector__editor { padding: 28px; }
.albion-account-collector__dialog-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 8px; }
.albion-account-collector__dialog-head h3 { margin: 0; font-size: var(--albion-fs-xs); font-weight: 600; }
.albion-account-collector__dialog .albion-account-muted { margin: 0 0 22px !important; font-size: var(--albion-text-small); line-height: 1.5; }
.albion-account-shell .albion-account .albion-account-collector__dialog button.albion-account-collector__close {
	-webkit-appearance: none !important;
	appearance: none !important;
	display: inline-flex !important;
	flex: 0 0 34px !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
	min-height: 34px !important;
	max-width: 34px !important;
	max-height: 34px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: var(--albion-panel) !important;
	box-shadow: none !important;
	color: var(--albion-ink) !important;
	font: inherit;
	font-size: 24px !important;
	font-weight: 400 !important;
	line-height: 1 !important;
	text-shadow: none !important;
	cursor: pointer !important;
}
.albion-account-shell .albion-account .albion-account-collector__dialog button.albion-account-collector__close:hover,
.albion-account-shell .albion-account .albion-account-collector__dialog button.albion-account-collector__close:focus {
	background: #e8e8ed !important;
	color: var(--albion-ink) !important;
}
.albion-account-shell .albion-account .albion-account-collector__dialog button.albion-account-collector__close:focus-visible {
	outline: 2px solid var(--albion-blue);
	outline-offset: 2px;
}
.albion-account-tracking-list { display: grid; gap: 24px; padding-bottom: 28px; }
.albion-account-tracking-list section + section { padding-top: 24px; border-top: 1px solid var(--albion-line-soft); }
.albion-account-tracking-list section > p { font-size: var(--albion-text-small); line-height: 1.55; }
.albion-account-notes-list { display: grid; gap: 20px; margin: 0; padding: 0 0 28px; list-style: none; }
.albion-account-notes-list li { margin: 0; }
.albion-account-notes-list li > p { font-size: var(--albion-text-small); line-height: 1.55; }

/* One block per order line: image + status + progress, then item / delivers / tracking. */
.albion-account-order__note { margin: -24px 0 32px !important; color: var(--albion-muted); }
.albion-account-line-block + .albion-account-line-block { margin-top: 48px; padding-top: 48px; border-top: 1px solid var(--albion-line); }
/* One card per item: the item on top, then Delivery and Tracking as labelled rows. */
.albion-account-line-card { margin-top: 32px; font-size: var(--albion-text-base); line-height: 1.5; }
.albion-account-line-card__item { padding: 0 0 24px; }
.albion-account-line-card__row { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 24px; padding: 20px 0; border-top: 1px solid var(--albion-line); }
.albion-account-line-card .albion-account-card__title { display: flex; align-items: center; gap: 10px; margin: 0; font-size: var(--albion-text-base); font-weight: 600; line-height: 1.5; letter-spacing: 0; }
.albion-account-line-card__value { min-width: 0; }
.albion-account-line-card__value p { overflow-wrap: anywhere; }
.albion-account-card__address { display: flex; flex-direction: column; gap: 2px; margin: 0; font-style: normal; }
.albion-account-card__name { font-weight: 500; }
.albion-account-card__meta { margin-top: 6px !important; font-size: var(--albion-text-small); color: var(--albion-muted); }
.albion-account-line-card__row--first { border-top: 0; }
.albion-account-payment-card { margin-top: 0; }
.albion-account-payment-card .albion-account-totals { margin: 0; padding: 20px 0 0; border-top: 1px solid var(--albion-line); }
.albion-account-payment-card .albion-account-totals__row { max-width: 420px; margin-left: auto; }
.albion-account-line-card .albion-account-cover { margin-top: 16px; padding: 14px 16px 14px 42px; border-radius: 12px; background: var(--albion-panel); }
.albion-account-line-card .albion-account-cover__icon { top: 16px; left: 16px; }
.albion-account-tracking__note { margin: 0 0 8px !important; }

/* Lower sections share one column grid so Items/Delivers/Tracking line up with
   Paid with/Bills to/Contact, and totals' right edge lines up with item prices. */
.albion-account-rule { height: 0; margin: 40px 0; border: 0; border-top: 1px solid var(--albion-line); background: none; }
.albion-account-row { display: flex; justify-content: space-between; align-items: baseline; gap: 24px; }
.albion-account-row strong { font-weight: 600; }
.albion-account-row__price { flex-shrink: 0; margin: 0; text-align: right; white-space: nowrap; }
.albion-account-small { margin-top: 2px !important; font-size: var(--albion-text-xs); color: var(--albion-muted); }
.albion-account-item__attrs { margin: 2px 0 0; padding: 0; list-style: none; font-size: var(--albion-text-xs); color: var(--albion-muted); }
.albion-account-item__attrs li, .albion-account-item__attrs p { display: inline; margin: 0; }
.albion-account-item__attrs strong { font-weight: 400; }
.albion-account-cover { position: relative; margin-top: 14px; padding-left: 26px; }
.albion-account-cover__icon { position: absolute; top: 3px; left: 0; color: var(--albion-blue); }

.albion-account-shipments { display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0; list-style: none; }
.albion-account-shipment { display: flex; flex-direction: column; margin: 0; padding: 12px 14px; border-radius: 12px; background: var(--albion-panel); font-size: var(--albion-text-xs); }
.albion-account-shipment strong { font-size: var(--albion-text-small); font-weight: 600; }
.albion-account-shipment span { color: var(--albion-muted); }

.albion-account-payment__title { margin: 0 0 16px; font-size: var(--albion-fs-xs); font-weight: 600; }
.albion-account-totals { padding-top: 8px; }
.albion-account-totals__row { padding: 4px 0; }
.albion-account-totals__row dt { margin: 0; font-weight: 400; }
.albion-account-totals__row .shipped_via { display: none; }
.albion-account-totals__row.is-total { margin-top: 12px; padding-top: 16px; border-top: 1px solid var(--albion-line); font-size: var(--albion-text-lg); font-weight: 600; }
.albion-account-totals__row.is-total dt { font-weight: 600; }
.albion-account-totals__row small, .albion-account-totals__row .includes_tax { display: block; margin-top: 4px; font-size: var(--albion-text-xs); font-weight: 400; color: var(--albion-muted); white-space: normal; }

.albion-account-section { margin-top: 56px; }
.albion-account-section__title { margin: 0 0 16px; font-size: var(--albion-fs-xs); font-weight: 600; }
.albion-account-notes ol { margin: 0; padding: 0; list-style: none; }
.albion-account-notes li { margin: 0 0 12px; padding: 16px 20px; border: 1px solid var(--albion-line); border-radius: 14px; }

.albion-account-support { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 20px; margin: 56px 0 0; padding: 44px 0; border-top: 1px solid var(--albion-line); }
.albion-account-support h3 { margin: 0 0 4px; font-size: var(--albion-fs-xs); font-weight: 600; }
.albion-account-support p { color: var(--albion-ink-2); }
.albion-account-support strong { color: var(--albion-ink); font-weight: 600; }

@media (max-width: 1100px) {
	.albion-account-auth__signin { padding: 48px 32px; }
	.albion-account-auth__panel { padding: 48px 40px; }
}
@media (max-width: 1308px) {
	.albion-account-shell__main, .albion-account-bar__inner { padding-left: 24px; padding-right: 24px; }
}
@media (max-width: 760px) {
	.albion-account-shell--auth .albion-account-shell__main { padding-top: 32px; }
	.albion-account-auth__card { padding: 28px 20px; }
	.albion-account-auth__split { grid-template-columns: minmax(0, 1fr); }
	.albion-account-auth__signin { padding: 8px 0 24px; }
	.albion-account-auth__panel { padding: 32px 20px; }
	.albion-account-collector__fields { align-items: stretch; flex-direction: column; }
	.albion-account-empty { padding: 32px 20px; }
	.albion-account-shell__main { padding: 32px 16px 64px; }
	.albion-account-bar__inner { min-height: 52px; padding-left: 16px; padding-right: 16px; }
	.albion-account-bar__hello { display: none; }
	.albion-account-bar__nav { gap: 20px; }
	.albion-account-details .woocommerce-EditAccountForm > .form-row-first, .albion-account-details .woocommerce-EditAccountForm > .form-row-last { grid-column: 1 / -1; }
	.albion-account-details .woocommerce-EditAccountForm .woocommerce-Button { width: 100%; }
	.albion-account-shell--edit-address .albion-account-addresses .woocommerce-Addresses, .albion-account-shell--edit-address .woocommerce-address-fields__field-wrapper { grid-template-columns: minmax(0, 1fr) !important; }
	.albion-account-shell--edit-address .woocommerce-address-fields .form-row { grid-column: 1 / -1; }
	.albion-account-orders, .albion-account-order { padding-top: 32px; }
	.albion-account-shell .woocommerce-info, .albion-account-shell .wc-block-components-notice-banner.is-info { padding: 16px 0; font-size: var(--albion-text-base); }
	.albion-account-order-card { grid-template-columns: minmax(0, 1fr); gap: 20px; padding: 22px 20px; }
	.albion-account-order-card__status { padding: 20px 0 0; border-left: 0; border-top: 1px solid var(--albion-line-soft); }
	.albion-account-lines__more { padding-left: 0; }
	.albion-account-line__thumb { width: 56px; height: 56px; }
	.albion-account-order__ref { text-align: left; }
	.albion-account-hero { grid-template-columns: minmax(0, 1fr); gap: 16px; }
	.albion-account-hero__media { width: 180px; height: 180px; }
	.albion-account-hero__summary { align-items: flex-start; flex-direction: column; gap: 20px; }
	.albion-account-hero__tracking { align-self: flex-end; align-items: flex-end; flex-direction: column; }
	.albion-account-hero__tracking-meta { text-align: right; }
	.albion-account-rule { margin: 32px 0; }
	.albion-account-line-block + .albion-account-line-block { margin-top: 32px; padding-top: 32px; }
	.albion-account-line-card { margin-top: 24px; }
	.albion-account-line-card__row { grid-template-columns: minmax(0, 1fr); gap: 8px; }
	.albion-account-payment-card .albion-account-totals { padding-top: 18px; }
	.albion-account-payment-card .albion-account-totals__row { max-width: none; }
	.albion-account-progress__steps { font-size: var(--albion-text-xs); }
	.albion-account-confirmation { margin-top: 48px; }
	.albion-account-accordion summary { font-size: var(--albion-fs-xs); }
	.albion-account-summary { grid-template-columns: minmax(0, 1fr); gap: 22px; }
	.albion-account-summary__totals { grid-column: 1; }
	.albion-account-collection-details summary small { display: none; }
	.albion-account-support { padding: 22px 20px; }
	.albion-account-support .albion-account-actions, .albion-account-support .albion-account-btn { width: 100%; justify-content: center; }
}
