/* Petty's My Account and classic forms (layer 4): the account page is the [woocommerce_my_account] shortcode, so this is CSS only.
   Token variables only. */

.woocommerce::before, .woocommerce::after { display: none !important; }
.woocommerce:has(> .woocommerce-MyAccount-navigation) { display: grid; gap: var(--wp--preset--spacing--50); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 782px) { .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns: var(--wp--custom--layout--sidebar) minmax(0, 1fr); align-items: start; } }
.woocommerce-MyAccount-navigation, .woocommerce-MyAccount-content { float: none !important; width: auto !important; margin: 0; }
.woocommerce-MyAccount-navigation ul { display: grid; gap: var(--wp--preset--spacing--20); list-style: none; margin: 0; padding: 0; }
.woocommerce-MyAccount-navigation a { display: flex; align-items: center; min-height: var(--wp--custom--control--min); padding: 0 var(--wp--preset--spacing--40); border-radius: var(--wp--custom--radius--button); color: var(--wp--preset--color--contrast); text-decoration: none; font-weight: var(--wp--custom--font-weight--semibold); }
.woocommerce-MyAccount-navigation a:hover { background: var(--wp--preset--color--accent-5); }
.woocommerce-MyAccount-navigation .is-active a { background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--on-contrast); }
.woocommerce-MyAccount-content { box-sizing: border-box; min-width: 0; padding: var(--wp--preset--spacing--50); border-radius: var(--wp--custom--radius--card); background: var(--wp--preset--color--surface); border: var(--wp--custom--border--hairline) solid var(--wp--preset--color--accent-6); }
.woocommerce-MyAccount-content > :first-child { margin-top: 0; }
.woocommerce-MyAccount-content p { margin-block: 0 var(--wp--preset--spacing--30); }
.woocommerce-Addresses { display: grid; gap: var(--wp--preset--spacing--40); }
@media (min-width: 782px) { .woocommerce-Addresses { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.woocommerce-Addresses .col-1, .woocommerce-Addresses .col-2, .woocommerce-Address { float: none; width: auto; padding: var(--wp--preset--spacing--40); border-radius: var(--wp--custom--radius--input); background: var(--wp--preset--color--accent-5); }
.woocommerce-Address-title h2, .woocommerce-Address-title h3 { font-size: var(--wp--preset--font-size--large); margin: 0 0 var(--wp--preset--spacing--30); }
.woocommerce-orders-table .button { min-height: var(--wp--custom--control--button-height-small); }
.woocommerce-orders-table__cell-order-status mark, .woocommerce mark.order-status { background: var(--wp--preset--color--accent-5); color: var(--wp--preset--color--contrast); padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30); border-radius: var(--wp--custom--radius--badge); font-size: var(--wp--preset--font-size--x-small); font-weight: var(--wp--custom--font-weight--semibold); }

/* The default page template is constrained to the content width: let the account page use the wide width. */
.woocommerce-account .wp-block-post-title, .woocommerce-account .wp-block-post-content > .woocommerce { max-width: var(--wp--custom--layout--wide) !important; margin-inline: auto !important; padding-inline: 0; box-sizing: border-box; }
/* the page template uses TT5's root padding: set the root padding to the store gutter on phones (alignfull children use the same variable) so the title, nav and card line up with the header */
@media (max-width: 781px) { body { --wp--style--root--padding-left: var(--wp--custom--layout--gutter-mobile); --wp--style--root--padding-right: var(--wp--custom--layout--gutter-mobile); } }
.woocommerce .woocommerce-MyAccount-navigation li.is-active a:not(.button):not(.wc-block-components-button) { background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--on-contrast); }
.woocommerce .woocommerce-MyAccount-navigation li a:not(.button):not(.wc-block-components-button) { color: var(--wp--preset--color--contrast); }
.woocommerce .woocommerce-MyAccount-navigation li.is-active a:hover { background: var(--wp--preset--color--accent-3); }

/* ---------- classic login, register, lost password ---------- */
.woocommerce form.woocommerce-form-login, .woocommerce form.woocommerce-form-register, .woocommerce form.lost_reset_password, .woocommerce form.edit-account, .woocommerce form.woocommerce-EditAccountForm { display: grid; gap: var(--wp--preset--spacing--40); max-width: var(--wp--custom--layout--content); padding: var(--wp--preset--spacing--50); border: var(--wp--custom--border--hairline) solid var(--wp--preset--color--accent-6); border-radius: var(--wp--custom--radius--card); background: var(--wp--preset--color--surface); margin: 0; }
.woocommerce form .form-row { float: none; width: 100%; margin: 0; padding: 0; display: grid; gap: var(--wp--preset--spacing--20); }
.woocommerce form .form-row-first, .woocommerce form .form-row-last { width: 100%; }
.woocommerce form .form-row::before, .woocommerce form .form-row::after { display: none; }
.woocommerce form.woocommerce-form-login .form-row:last-of-type, .woocommerce form .woocommerce-form-login__submit { display: flex; align-items: center; gap: var(--wp--preset--spacing--40); flex-wrap: wrap; }
.woocommerce form.woocommerce-form-login .form-row::before { display: none; }
.woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: var(--wp--preset--spacing--30); min-height: var(--wp--custom--control--min); }
.woocommerce .password-input { position: relative; display: block; }
.woocommerce .show-password-input { position: absolute; right: 0; top: 0; width: var(--wp--custom--control--height); height: var(--wp--custom--control--height); border: 0; background: transparent; cursor: pointer; padding: 0; }
.woocommerce .show-password-input::after { content: ""; position: absolute; inset: 0; margin: auto; width: var(--wp--custom--icon--sm); height: var(--wp--custom--icon--sm); background: var(--wp--preset--color--contrast); -webkit-mask: url(../icons/wp/eye.svg) center / contain no-repeat; mask: url(../icons/wp/eye.svg) center / contain no-repeat; }
.woocommerce .show-password-input.display-password::after { -webkit-mask-image: url(../icons/wp/eye-slash.svg); mask-image: url(../icons/wp/eye-slash.svg); }
.woocommerce form.lost_reset_password .form-row-first { width: 100%; }
.woocommerce-password-strength { padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40); border-radius: var(--wp--custom--radius--input); font-size: var(--wp--preset--font-size--small); background: var(--wp--preset--color--accent-5); }
.woocommerce-password-strength.good { background: var(--wp--preset--color--success-surface); color: var(--wp--preset--color--success); }
.woocommerce-password-strength.bad, .woocommerce-password-strength.short { background: var(--wp--preset--color--error-surface); color: var(--wp--preset--color--error); }
.woocommerce .u-columns { display: grid; gap: var(--wp--preset--spacing--50); }
@media (min-width: 782px) { .woocommerce .u-columns.col2-set { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.woocommerce .u-columns .u-column1, .woocommerce .u-columns .u-column2 { float: none; width: auto; }

/* ---------- My Account, kit revision (kit: account) ---------- */
/* nav: icon + label pills, current item ink */
.woocommerce-MyAccount-navigation li a::before { content: ""; width: var(--wp--custom--icon--sm); height: var(--wp--custom--icon--sm); flex: none; margin-right: var(--wp--preset--spacing--30); background: currentColor; -webkit-mask: var(--pty-nav-icon, var(--wp--custom--icon-url--brand-mark)) center / contain no-repeat; mask: var(--pty-nav-icon, var(--wp--custom--icon-url--brand-mark)) center / contain no-repeat; }
.woocommerce-MyAccount-navigation-link--dashboard { --pty-nav-icon: url(../icons/wp/house.svg); }
.woocommerce-MyAccount-navigation-link--orders { --pty-nav-icon: url(../icons/wp/package.svg); }
.woocommerce-MyAccount-navigation-link--edit-address { --pty-nav-icon: url(../icons/wp/map-pin.svg); }
.woocommerce-MyAccount-navigation-link--payment-methods { --pty-nav-icon: url(../icons/wp/credit-card.svg); }
.woocommerce-MyAccount-navigation-link--edit-account { --pty-nav-icon: url(../icons/wp/user.svg); }
.woocommerce-MyAccount-navigation-link--customer-logout { --pty-nav-icon: url(../icons/wp/arrow-right.svg); margin-top: var(--wp--preset--spacing--30); padding-top: var(--wp--preset--spacing--30); border-top: var(--wp--custom--border--hairline) solid var(--wp--preset--color--accent-6); }
.woocommerce .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a:not(.button) { color: var(--wp--preset--color--accent-4); }
@media (min-width: 782px) { .woocommerce-MyAccount-navigation { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--wp--custom--layout--header-height) + var(--wp--preset--spacing--40)); } }
/* dashboard */
.pty-dash { display: grid; gap: var(--wp--preset--spacing--50); }
.pty-dash > * { margin: 0; }
.pty-dash__hello { display: grid; gap: var(--wp--preset--spacing--20); }
.pty-dash__title { margin: 0; font-size: var(--wp--preset--font-size--xx-large); font-weight: var(--wp--custom--font-weight--black); letter-spacing: var(--wp--custom--letter-spacing--heading); line-height: var(--wp--custom--line-height--heading); }
.woocommerce-MyAccount-content .pty-dash__meta { margin: 0; color: var(--wp--preset--color--accent-4); font-size: var(--wp--preset--font-size--small); }
.pty-dash__links { display: grid; gap: var(--wp--preset--spacing--30); margin: 0; padding: 0; list-style: none; }
@media (min-width: 600px) { .pty-dash__links { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.pty-dash__link { position: relative; display: grid; gap: var(--wp--preset--spacing--20); align-content: start; min-height: 100%; box-sizing: border-box; padding: var(--wp--preset--spacing--40); padding-top: calc(var(--wp--preset--spacing--40) + var(--wp--custom--icon--xl) + var(--wp--preset--spacing--30)); border-radius: var(--wp--custom--radius--card); background: var(--wp--preset--color--accent-5); color: var(--wp--preset--color--contrast); text-decoration: none; transition: transform var(--wp--custom--transition--base), box-shadow var(--wp--custom--transition--base); }
.pty-dash__link::before { content: ""; position: absolute; top: var(--wp--preset--spacing--40); left: var(--wp--preset--spacing--40); width: var(--wp--custom--icon--xl); height: var(--wp--custom--icon--xl); border-radius: var(--wp--custom--radius--glass); background: var(--wp--preset--color--surface); }
.pty-dash__link::after { content: ""; position: absolute; top: calc(var(--wp--preset--spacing--40) + (var(--wp--custom--icon--xl) - var(--wp--custom--icon--md)) / 2); left: calc(var(--wp--preset--spacing--40) + (var(--wp--custom--icon--xl) - var(--wp--custom--icon--md)) / 2); width: var(--wp--custom--icon--md); height: var(--wp--custom--icon--md); background: var(--wp--preset--color--contrast); -webkit-mask: var(--pty-nav-icon) center / contain no-repeat; mask: var(--pty-nav-icon) center / contain no-repeat; }
.pty-dash__link--package { --pty-nav-icon: url(../icons/wp/package.svg); }
.pty-dash__link--map-pin { --pty-nav-icon: url(../icons/wp/map-pin.svg); }
.pty-dash__link--user { --pty-nav-icon: url(../icons/wp/user.svg); }
.pty-dash__link:hover { transform: translateY(-3px); box-shadow: var(--wp--preset--shadow--md); }
.pty-dash__link:focus-visible { outline: var(--wp--custom--border--focus) solid var(--wp--preset--color--focus); outline-offset: var(--wp--custom--border--focus-offset); }
.pty-dash__link-title { font-weight: var(--wp--custom--font-weight--bold); font-size: var(--wp--preset--font-size--medium); }
.pty-dash__link-text { font-size: var(--wp--preset--font-size--small); color: var(--wp--preset--color--accent-4); }
.pty-dash__subtitle { margin: 0 0 var(--wp--preset--spacing--30); font-size: var(--wp--preset--font-size--small); font-weight: var(--wp--custom--font-weight--bold); letter-spacing: var(--wp--custom--letter-spacing--eyebrow); text-transform: uppercase; }
/* tables (kit: table): accent-5 header, hairline rows; used by the dashboard and the orders list */
.pty-dash__table, .woocommerce-MyAccount-content table.shop_table { width: 100%; border: 0; border-collapse: separate; border-spacing: 0; border-radius: var(--wp--custom--radius--input); overflow: clip; font-size: var(--wp--preset--font-size--small); }
.pty-dash__table th, .woocommerce-MyAccount-content table.shop_table thead th { padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40); background: var(--wp--preset--color--accent-5); text-align: left; font-weight: var(--wp--custom--font-weight--bold); border: 0; }
.pty-dash__table td, .woocommerce-MyAccount-content table.shop_table td, .woocommerce-MyAccount-content table.shop_table tbody th { padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40); border: 0; border-bottom: var(--wp--custom--border--hairline) solid var(--wp--preset--color--accent-6); vertical-align: middle; }
.pty-dash__table a { font-weight: var(--wp--custom--font-weight--bold); }
.woocommerce-MyAccount-content .pty-dash__all { margin: var(--wp--preset--spacing--30) 0 0; }
/* order status badges */
.pty-status, .woocommerce-orders-table__cell-order-status { font-weight: var(--wp--custom--font-weight--bold); }
.pty-status { display: inline-flex; align-items: center; min-height: var(--wp--custom--icon--md); padding: 0 var(--wp--preset--spacing--30); border-radius: var(--wp--custom--radius--badge); background: var(--wp--preset--color--accent-5); color: var(--wp--preset--color--contrast); font-size: var(--wp--preset--font-size--x-small); white-space: nowrap; }
.pty-status--processing { background: var(--wp--preset--color--soft); }
.pty-status--completed { background: var(--wp--preset--color--success-surface); color: var(--wp--preset--color--success); }
.pty-status--pending, .pty-status--on-hold { background: var(--wp--preset--color--warning-surface); color: var(--wp--preset--color--warning); }
.pty-status--cancelled, .pty-status--failed, .pty-status--refunded { background: var(--wp--preset--color--error-surface); color: var(--wp--preset--color--error); }
/* no orders: the kit empty state */
.pty-dash__empty { display: grid; justify-items: start; gap: var(--wp--preset--spacing--30); padding: var(--wp--preset--spacing--50); border-radius: var(--wp--custom--radius--card); border: var(--wp--custom--border--hairline) solid var(--wp--preset--color--accent-6); background: var(--wp--preset--color--base); }
.woocommerce-MyAccount-content .pty-dash__empty p { margin: 0; color: var(--wp--preset--color--accent-4); }
.woocommerce-MyAccount-content .pty-dash__empty .pty-dash__empty-title { color: var(--wp--preset--color--contrast); font-size: var(--wp--preset--font-size--large); font-weight: var(--wp--custom--font-weight--black); }
.pty-dash__button { display: inline-flex; align-items: center; min-height: var(--wp--custom--control--button-height-small); padding: 0 var(--wp--custom--control--padding-x-small); border-radius: var(--wp--custom--radius--button); background: var(--wp--preset--color--contrast); color: var(--wp--preset--color--on-contrast) !important; font-weight: var(--wp--custom--font-weight--bold); text-decoration: none; box-shadow: var(--wp--preset--shadow--cta); }
.pty-dash__button:hover { background: var(--wp--preset--color--accent-3); }
.woocommerce .woocommerce-MyAccount-navigation li a:not(.button) { text-decoration: none; }
.woocommerce-MyAccount-navigation ul { gap: var(--wp--preset--spacing--20) !important; }
.woocommerce-MyAccount-navigation li { margin: 0; }
/* WooCommerce's block-theme CSS pads every item (about 18px above and below): one 44px row per item, 8px apart */
.woocommerce .woocommerce-MyAccount-navigation ul li { padding: 0; }
.woocommerce .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout { margin-top: var(--wp--preset--spacing--20); padding-top: var(--wp--preset--spacing--30); }
/* phones: keep the dashboard inside its card (the table scrolls in place) and show the tiles as compact rows */
.pty-dash { grid-template-columns: minmax(0, 1fr); }
.pty-dash__orders { min-width: 0; overflow-x: auto; }
@media (max-width: 599px) {
	.pty-dash__link { padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40) var(--wp--preset--spacing--30) calc(var(--wp--preset--spacing--40) + var(--wp--custom--icon--xl) + var(--wp--preset--spacing--30)); min-height: calc(var(--wp--custom--icon--xl) + 2 * var(--wp--preset--spacing--30)); align-content: center; gap: 0; }
	.pty-dash__link::before { top: 50%; transform: translateY(-50%); }
	.pty-dash__link::after { top: 50%; transform: translateY(-50%); }
	.pty-dash__table th:nth-child(2), .pty-dash__table td:nth-child(2) { display: none; }
}
