/* Account styles are loaded only on WooCommerce account pages. */
body.woocommerce-account { background: #f5f7f2; }
.woocommerce-account .ts-main { max-width: 1160px; margin-inline: auto; padding-top: 40px; padding-bottom: 64px; }
.woocommerce-account .ts-main > .wp-block-post-title { margin-bottom: 28px; font-size: clamp(30px, 3vw, 40px); letter-spacing: -.04em; }
.woocommerce-account .ts-main .woocommerce { font-size: 14px; line-height: 1.65; }
.woocommerce-account .ts-main .woocommerce:has(> .woocommerce-MyAccount-navigation) {
  display: grid; grid-template-columns: 248px minmax(0, 1fr); gap: 28px; align-items: start;
}
.woocommerce-account .ts-main .woocommerce:has(> .woocommerce-MyAccount-navigation)::before,
.woocommerce-account .ts-main .woocommerce:has(> .woocommerce-MyAccount-navigation)::after { display: none; }
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }
.woocommerce-account .woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce .woocommerce-MyAccount-content { float: none; width: 100%; min-width: 0; margin: 0; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation {
  background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: 12px; padding: 20px 12px 12px;
}
.woocommerce-account .woocommerce .ts-account-nav-label { margin: 0 12px 14px; color: #66736c; font-size: 10px; font-weight: 600; letter-spacing: .12em; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul { padding: 0; margin: 0; border: 0; border-radius: 0; list-style: none; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li { padding: 0; margin: 4px 0 0; border: 0; list-style: none; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a {
  display: flex; align-items: center; gap: 12px; min-height: 48px; padding: 12px;
  border-radius: 8px; background: transparent; color: #53635a; font-size: 13px; font-weight: 500; line-height: 1.4; text-decoration: none;
}
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a:hover { background: #f1f5eb; color: #16382d; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li.is-active a { background: #16382d; color: #fff; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li.is-active svg { color: #c9ed92; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout { margin-top: 14px; padding-top: 12px; border-top: 1px solid #e3e7df; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-content { padding: 28px; border: 1px solid #e0e7dc; border-radius: 12px; background: #fff; }
.woocommerce-account .woocommerce .woocommerce-MyAccount-content:has(> .ts-account-dashboard) { border: 0; padding: 0; background: transparent; }
.woocommerce-account .woocommerce-MyAccount-content > p { margin: 0 0 22px; color: #66736c; }
.woocommerce-account .woocommerce-MyAccount-content h2 { font-size: 23px; margin: 0 0 22px; letter-spacing: -.03em; }
.woocommerce-account .woocommerce-MyAccount-content h3 { font-size: 19px; margin: 0 0 18px; }
.woocommerce-account .ts-account-welcome { position: relative; isolation: isolate; overflow: hidden; padding: 30px 32px; border-radius: 12px; background: #16382d; color: #fff; }
.woocommerce-account .ts-account-welcome .ts-account-eyebrow { margin: 0 0 12px; font-size: 10px; font-weight: 500; letter-spacing: .14em; color: #c9ed92; }
.woocommerce-account .ts-account-welcome h2 { margin: 0 0 12px; max-width: 90%; font-size: clamp(25px, 2.6vw, 32px); line-height: 1.2; color: #fff; overflow-wrap: anywhere; }
.woocommerce-account .ts-account-welcome p:not(.ts-account-eyebrow) { position: relative; max-width: 85%; margin: 0; color: #e0e9df; font-size: 13px; }
.woocommerce-account .ts-account-shop-link { display: inline-flex; align-items: center; gap: 22px; min-height: 42px; margin-top: 24px; padding: 10px 16px; border-radius: 7px; background: #c9ed92; color: #16382d; font-size: 12px; font-weight: 600; text-decoration: none; }
.woocommerce-account .ts-account-shop-link:hover { background: #d7f3ae; text-decoration: none; }
.woocommerce-account .ts-account-spark { position: absolute; z-index: -1; right: -12px; bottom: -48px; font-size: 225px; line-height: 1; color: #c9ed92; opacity: .13; pointer-events: none; }
.woocommerce-account .ts-account-shortcuts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 18px; }
.woocommerce-account .ts-account-shortcut { position: relative; display: block; min-width: 0; padding: 22px 20px; border: 1px solid #e0e7dc; border-radius: 12px; background: #fff; color: #16382d; text-decoration: none; transition: border-color .2s, box-shadow .2s; }
.woocommerce-account .ts-account-shortcut:hover { border-color: #9fb785; box-shadow: 0 5px 18px #16382d09; text-decoration: none; }
.woocommerce-account .ts-account-shortcut-icon { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; margin-bottom: 20px; border-radius: 10px; background: #eff5e6; }
.woocommerce-account .ts-account-shortcut h3 { margin: 0 0 9px; font-size: 16px; letter-spacing: -.02em; }
.woocommerce-account .ts-account-shortcut p { margin: 0; color: #66736c; font-size: 12px; line-height: 1.7; }
.woocommerce-account .ts-account-shortcut-arrow { position: absolute; top: 22px; right: 18px; color: #66736c; font-size: 17px; }
.woocommerce-account .ts-account-session { margin: 18px 0 0; padding: 0 2px; font-size: 12px; color: #66736c; overflow-wrap: anywhere; }
.woocommerce-account .ts-account-session a { margin-left: 5px; text-decoration: underline; text-underline-offset: 3px; }

/* Native account forms retain their original actions, fields and validation. */
.woocommerce-account .woocommerce form .form-row { padding: 0; margin: 0 0 20px; }
.woocommerce-account .woocommerce form .form-row label { display: block; margin-bottom: 8px; color: #344d40; font-size: 13px; font-weight: 500; line-height: 1.5; }
.woocommerce-account .woocommerce form .form-row input.input-text,
.woocommerce-account .woocommerce form .form-row textarea,
.woocommerce-account .woocommerce form .form-row select {
  width: 100%; min-height: 48px; padding: 12px 14px; border: 1px solid #cbd6c8; border-radius: 8px;
  background: #fff; color: #172b24; box-shadow: none; font: inherit; line-height: 1.5;
}
.woocommerce-account .woocommerce form .form-row input.input-text:focus,
.woocommerce-account .woocommerce form .form-row textarea:focus,
.woocommerce-account .woocommerce form .form-row select:focus { border-color: #345d47; outline: 0; box-shadow: 0 0 0 3px #c9ed9259; }
.woocommerce-account .woocommerce form .form-row .description,
.woocommerce-account #account_display_name_description { display: block; margin-top: 7px; color: #66736c; font-size: 12px; }
.woocommerce-account #account_display_name_description em { font-style: normal; }
.woocommerce-account .woocommerce form fieldset { margin: 28px 0 22px; padding: 24px 0 0; border: 0; border-top: 1px solid #e3e7df; }
.woocommerce-account .woocommerce form fieldset legend { padding: 0 12px 0 0; font-size: 18px; font-weight: 600; color: #16382d; }
.woocommerce-account .woocommerce form fieldset .form-row:last-child { margin-bottom: 0; }
.woocommerce-account .woocommerce .password-input { width: 100%; }
.woocommerce-account .woocommerce .password-input input { padding-right: 48px !important; }
.woocommerce-account .woocommerce .password-input .show-password-input { top: 50%; right: 10px; transform: translateY(-50%); }
.woocommerce-account .woocommerce a.button,
.woocommerce-account .woocommerce button.button,
.woocommerce-account .woocommerce input.button {
  display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 12px 20px;
  border: 1px solid #16382d; border-radius: 8px; background: #16382d; color: #fff; font: inherit; font-size: 13px; font-weight: 600; line-height: 1.4; text-decoration: none;
}
.woocommerce-account .woocommerce a.button:hover,
.woocommerce-account .woocommerce button.button:hover { background: #244c3b; color: #fff; }
.woocommerce-account .woocommerce button.button:disabled { opacity: .55; cursor: not-allowed; }
.woocommerce-account .woocommerce .select2-container .select2-selection--single { height: 48px; border-color: #cbd6c8; border-radius: 8px; }
.woocommerce-account .woocommerce .select2-selection--single .select2-selection__rendered { padding-left: 14px; line-height: 46px; color: #172b24; }
.woocommerce-account .woocommerce .select2-selection--single .select2-selection__arrow { height: 46px; right: 8px; }
.woocommerce-account .woocommerce .woocommerce-Addresses { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.woocommerce-account .woocommerce .woocommerce-Addresses::before,
.woocommerce-account .woocommerce .woocommerce-Addresses::after { display: none; }
.woocommerce-account .woocommerce .woocommerce-Address { float: none; width: 100%; padding: 22px; border: 1px solid #e3e7df; border-radius: 10px; background: #f8faf5; }
.woocommerce-account .woocommerce .woocommerce-Address-title { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
.woocommerce-account .woocommerce .woocommerce-Address-title h2 { float: none; margin: 0; font-size: 18px; }
.woocommerce-account .woocommerce .woocommerce-Address-title a.edit { float: none; font-size: 12px; text-decoration: underline; text-underline-offset: 3px; }
.woocommerce-account .woocommerce address { font-style: normal; line-height: 1.8; overflow-wrap: anywhere; }
.woocommerce-account .woocommerce table.shop_table { width: 100%; margin: 0 0 24px; border: 1px solid #e3e7df; border-spacing: 0; border-radius: 8px; overflow: hidden; font-size: 13px; }
.woocommerce-account .woocommerce table.shop_table th { background: #f4f7ee; font-size: 12px; font-weight: 600; color: #34513e; }
.woocommerce-account .woocommerce table.shop_table th,
.woocommerce-account .woocommerce table.shop_table td { padding: 14px 12px; border-color: #e3e7df; }
.woocommerce-account .woocommerce table.shop_table td { background: #fff; }
.woocommerce-account .woocommerce table.shop_table .button { min-height: 36px; padding: 8px 12px; margin: 3px; font-size: 12px; }
.woocommerce-account .woocommerce .woocommerce-pagination { display: flex; justify-content: space-between; gap: 12px; }
.woocommerce-account .woocommerce .woocommerce-message,
.woocommerce-account .woocommerce .woocommerce-info,
.woocommerce-account .woocommerce .woocommerce-error { margin: 0 0 22px; padding: 20px 20px 20px 48px; border: 1px solid #dbe4d4; border-radius: 9px; background: #f4f8ee; color: #344d40; font-size: 13px; }
.woocommerce-account .woocommerce .woocommerce-message::before,
.woocommerce-account .woocommerce .woocommerce-info::before { top: 20px; left: 20px; color: #527636; }
.woocommerce-account .woocommerce .woocommerce-error { border-color: #e7c8c2; background: #fff7f5; color: #923729; }
.woocommerce-account .woocommerce .woocommerce-error::before { top: 20px; left: 20px; color: #923729; }
.woocommerce-account .woocommerce .woocommerce-info .button { float: none; margin: 12px 0 0; display: flex; width: fit-content; }
.woocommerce-account .woocommerce .wc-block-components-notice-banner { margin: 0 0 22px; border-radius: 9px; font-family: inherit; font-size: 13px; }
.woocommerce-account .woocommerce .wc-block-components-notice-banner:is(.is-info, .is-success) { border-color: #dbe4d4; background: #f4f8ee; color: #344d40; }
.woocommerce-account .woocommerce .wc-block-components-notice-banner:is(.is-info, .is-success) > svg { background: #527636; }
.woocommerce-account .woocommerce .wc-block-components-notice-banner .wc-block-components-notice-banner__content { min-width: 0; }
.woocommerce-account .woocommerce .wc-block-components-notice-banner .wc-block-components-notice-banner__content .button { float: none; display: flex; width: fit-content; min-height: 40px; margin: 12px 0 0; padding: 9px 14px !important; border: 1px solid #b4c5a6 !important; border-radius: 7px; background: #fff !important; color: #16382d !important; font-size: 12px; font-weight: 600; line-height: 1.4; text-decoration: none; }
.woocommerce-account .woocommerce .woocommerce-customer-details address { padding: 20px; border: 1px solid #e3e7df; border-radius: 8px; }
.woocommerce-account .woocommerce form.login,
.woocommerce-account .woocommerce form.register,
.woocommerce-account .woocommerce form.lost_reset_password { margin: 0; padding: 28px; border: 1px solid #e0e7dc; border-radius: 12px; background: #fff; }
.woocommerce-account .woocommerce > form.login,
.woocommerce-account .woocommerce > form.lost_reset_password { max-width: 560px; }
.woocommerce-account .woocommerce #customer_login { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.woocommerce-account .woocommerce #customer_login::before,
.woocommerce-account .woocommerce #customer_login::after { display: none; }
.woocommerce-account .woocommerce #customer_login > div { float: none; width: 100%; }
.woocommerce-account .woocommerce #customer_login h2,
.woocommerce-account .woocommerce > h2 { font-size: 23px; }
.woocommerce-account .woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme { display: flex; align-items: center; gap: 8px; margin-bottom: 18px; }
.woocommerce-account .woocommerce input[type="checkbox"] { accent-color: #16382d; width: 16px; height: 16px; }

@media (max-width: 1000px) {
  .woocommerce-account .ts-main .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns: 218px minmax(0, 1fr); gap: 20px; }
  .woocommerce-account .ts-account-shortcuts { grid-template-columns: 1fr; }
  .woocommerce-account .ts-account-shortcut { padding-left: 82px; min-height: 106px; }
  .woocommerce-account .ts-account-shortcut-icon { position: absolute; top: 22px; left: 20px; margin: 0; }
  .woocommerce-account .ts-account-shortcut h3 { padding-right: 18px; }
}
@media (max-width: 782px) {
  .woocommerce-account .ts-main { padding-top: 28px; padding-bottom: 40px; }
  .woocommerce-account .ts-main > .wp-block-post-title { margin-bottom: 22px; }
  .woocommerce-account .ts-main .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation { padding: 14px 10px 10px; }
  .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li { margin: 0; }
  .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li a { height: 100%; min-height: 48px; gap: 8px; padding: 10px; font-size: 12px; }
  .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout { margin: 0; padding: 0; border: 0; }
  .woocommerce-account .woocommerce .woocommerce-MyAccount-content { padding: 22px 18px; }
  .woocommerce-account .ts-account-welcome { padding: 25px 22px; }
  .woocommerce-account .ts-account-welcome h2 { max-width: 100%; }
  .woocommerce-account .ts-account-welcome p:not(.ts-account-eyebrow) { max-width: 100%; }
  .woocommerce-account .woocommerce form .form-row-first,
  .woocommerce-account .woocommerce form .form-row-last { float: none; width: 100%; }
  .woocommerce-account .woocommerce form .form-row input.input-text,
  .woocommerce-account .woocommerce form .form-row select { font-size: 16px; }
  .woocommerce-account .woocommerce .woocommerce-Addresses,
  .woocommerce-account .woocommerce #customer_login { grid-template-columns: 1fr; }
  .woocommerce-account .woocommerce form.login,
  .woocommerce-account .woocommerce form.register,
  .woocommerce-account .woocommerce form.lost_reset_password { padding: 22px 18px; }
  .woocommerce-account .woocommerce table.shop_table_responsive thead { display: none; }
  .woocommerce-account .woocommerce table.shop_table_responsive tbody tr { display: block; padding: 8px 0; border-bottom: 1px solid #e3e7df; }
  .woocommerce-account .woocommerce table.shop_table_responsive tbody tr:last-child { border-bottom: 0; }
  .woocommerce-account .woocommerce table.shop_table_responsive tbody tr > * { display: block; text-align: right !important; padding: 10px 12px; border: 0; overflow-wrap: anywhere; }
  .woocommerce-account .woocommerce table.shop_table_responsive tbody tr > [data-title]::before { content: attr(data-title) ': '; float: left; font-weight: 600; margin-right: 12px; }
  .woocommerce-account .woocommerce table.shop_table_responsive td.woocommerce-orders-table__cell-order-actions::before { display: none; }
}
