.elementor-16 .elementor-element.elementor-element-789ec908{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;}.elementor-16 .elementor-element.elementor-element-77180c48{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-16 .elementor-element.elementor-element-65829cb7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-16 .elementor-element.elementor-element-673b682d{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;}.elementor-16 .elementor-element.elementor-element-271f83f6{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;}.elementor-16 .elementor-element.elementor-element-4644c773{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for container, class: .elementor-element-789ec908 *//* =========================================================
   Asili Furniture - Account Page
   File: asili-account.css
   Depends on: asili-base.css
   Purpose: Native WooCommerce My Account styling
   ========================================================= */

/* Page shell */

.af-account-page {
  width: 100%;
  padding: 36px 0 80px;
  background: var(--af-bg-soft);
  color: var(--af-text);
}

.af-account-page,
.af-account-page * {
  box-sizing: border-box;
}

.af-account-page a {
  color: var(--af-primary);
  text-decoration: none;
}

.af-account-page a:hover {
  color: var(--af-primary-dark);
}

/* Hero */

.af-account-page .af-account-hero {
  width: min(100% - 32px, 1240px);
  margin: 0 auto 32px;
}

.af-account-page .af-account-hero__inner {
  padding: 38px 42px;
  border: 1px solid var(--af-border);
  border-radius: 24px;
  background: #ffffff;
  box-shadow: var(--af-shadow-sm);
}

.af-account-page .af-account-title .elementor-heading-title,
.af-account-page .af-account-title {
  margin: 0;
  color: var(--af-primary-dark);
  font-size: clamp(36px, 4vw, 56px);
  font-weight: 950;
  line-height: 1;
  letter-spacing: -0.045em;
}

.af-account-page .af-account-subtitle,
.af-account-page .af-account-subtitle p {
  max-width: 720px;
  margin: 14px 0 0;
  color: var(--af-muted);
  font-size: 15.5px;
  font-weight: 650;
  line-height: 1.65;
}

/* Main panel */

.af-account-page .af-account-shell {
  width: min(100% - 32px, 1240px);
  margin: 0 auto;
}

.af-account-page .af-account-panel {
  width: 100%;
  padding: 30px;
  border: 1px solid var(--af-border);
  border-radius: 24px;
  background: #ffffff;
  box-shadow: var(--af-shadow-sm);
}

.af-account-page .af-account-widget,
.af-account-page .af-account-widget > .elementor-widget-container,
.af-account-page .af-account-widget .woocommerce {
  width: 100% !important;
  max-width: 100% !important;
}

/* =========================================================
   Logged-in account layout
   ========================================================= */

/* This is the important fix:
   do not rely on :has(); force the WooCommerce wrapper itself
   into a two-column grid. */
.af-account-page .af-account-widget .woocommerce {
  display: grid !important;
  grid-template-columns: 280px minmax(0, 1fr) !important;
  gap: 26px !important;
  align-items: start !important;
}

/* Reset WooCommerce floats and inherited widths */
.af-account-page .woocommerce-MyAccount-navigation,
.af-account-page .woocommerce-MyAccount-content {
  float: none !important;
  clear: none !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.af-account-page .woocommerce-MyAccount-navigation {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

.af-account-page .woocommerce-MyAccount-content {
  grid-column: 2 !important;
  grid-row: 1 !important;
}

/* Account nav */

.af-account-page .woocommerce-MyAccount-navigation {
  padding: 12px;
  border: 1px solid var(--af-border);
  border-radius: 20px;
  background: var(--af-primary-soft);
}

.af-account-page .woocommerce-MyAccount-navigation ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.af-account-page .woocommerce-MyAccount-navigation li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.af-account-page .woocommerce-MyAccount-navigation a {
  min-height: 48px;
  display: flex !important;
  align-items: center;
  padding: 13px 16px;
  border: 1px solid transparent;
  border-radius: 14px;
  color: var(--af-primary-dark);
  background: #ffffff;
  font-size: 14px;
  font-weight: 850;
  line-height: 1.25;
  text-decoration: none;
}

.af-account-page .woocommerce-MyAccount-navigation li.is-active a,
.af-account-page .woocommerce-MyAccount-navigation a:hover {
  color: #ffffff;
  background: var(--af-primary);
  border-color: var(--af-primary);
}

/* Account content */

.af-account-page .woocommerce-MyAccount-content {
  padding: 30px;
  border: 1px solid var(--af-border);
  border-radius: 20px;
  background: #ffffff;
}

.af-account-page .woocommerce-MyAccount-content p {
  margin: 0 0 16px;
  color: var(--af-muted);
  font-size: 15px;
  font-weight: 650;
  line-height: 1.75;
}

.af-account-page .woocommerce-MyAccount-content p:last-child {
  margin-bottom: 0;
}

.af-account-page .woocommerce-MyAccount-content strong {
  color: var(--af-primary-dark);
  font-weight: 900;
}

.af-account-page .woocommerce-MyAccount-content h2,
.af-account-page .woocommerce-MyAccount-content h3,
.af-account-page .woocommerce-Address-title h3 {
  margin: 0 0 18px;
  color: var(--af-primary-dark);
  font-size: 26px;
  font-weight: 950;
  line-height: 1.12;
  letter-spacing: -0.035em;
}

/* =========================================================
   Logged-out layout: login/register
   ========================================================= */

.af-account-page .af-account-widget .woocommerce:not(:has(.woocommerce-MyAccount-navigation)) {
  display: block !important;
}

.af-account-page .u-columns {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 26px;
}

.af-account-page .u-column1,
.af-account-page .u-column2,
.af-account-page .woocommerce-form-login,
.af-account-page .woocommerce-form-register {
  width: 100% !important;
  float: none !important;
}

.af-account-page .woocommerce-form-login,
.af-account-page .woocommerce-form-register {
  margin: 0 !important;
  padding: 30px !important;
  border: 1px solid var(--af-border) !important;
  border-radius: 20px !important;
  background: #ffffff !important;
}

.af-account-page .u-column1 h2,
.af-account-page .u-column2 h2 {
  margin: 0 0 18px;
  color: var(--af-primary-dark);
  font-size: 28px;
  font-weight: 950;
  letter-spacing: -0.035em;
}

/* =========================================================
   Forms
   ========================================================= */

.af-account-page form .form-row {
  width: 100%;
  margin: 0 0 16px !important;
  padding: 0 !important;
}

.af-account-page label {
  display: block;
  margin: 0 0 8px;
  color: var(--af-primary-dark);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}

.af-account-page abbr.required,
.af-account-page .required {
  color: #dc2626;
  text-decoration: none;
}

.af-account-page input.input-text,
.af-account-page input[type="text"],
.af-account-page input[type="email"],
.af-account-page input[type="password"],
.af-account-page input[type="tel"],
.af-account-page textarea,
.af-account-page select,
.af-account-page .select2-selection {
  width: 100%;
  max-width: 100%;
  min-height: 52px;
  padding: 0 16px;
  border: 1px solid var(--af-border);
  border-radius: 14px;
  background: #ffffff;
  color: var(--af-text);
  font-size: 14px;
  font-weight: 700;
  box-shadow: none;
  outline: none;
}

.af-account-page textarea {
  min-height: 130px;
  padding-top: 14px;
}

.af-account-page input:focus,
.af-account-page textarea:focus,
.af-account-page select:focus,
.af-account-page .select2-container--open .select2-selection {
  border-color: rgba(21, 94, 239, 0.55);
  box-shadow: 0 0 0 4px rgba(21, 94, 239, 0.1);
}

.af-account-page .password-input {
  width: 100%;
  display: block;
}

/* Buttons */

.af-account-page button.button,
.af-account-page .button,
.af-account-page a.button,
.af-account-page input.button {
  min-height: 48px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 0 22px !important;
  border: 1px solid var(--af-primary) !important;
  border-radius: 999px !important;
  background: var(--af-primary) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-align: center;
  text-decoration: none !important;
  box-shadow: 0 10px 24px rgba(21, 94, 239, 0.2);
  cursor: pointer;
}

.af-account-page button.button:hover,
.af-account-page .button:hover,
.af-account-page a.button:hover,
.af-account-page input.button:hover {
  background: var(--af-primary-dark) !important;
  border-color: var(--af-primary-dark) !important;
  color: #ffffff !important;
}

/* Remember me and lost password */

.af-account-page .woocommerce-form-login__rememberme {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  margin: 0 0 14px !important;
  color: var(--af-muted);
  font-size: 14px;
  font-weight: 650;
}

.af-account-page .lost_password {
  margin-top: 14px !important;
}

/* Notices */

.af-account-page .woocommerce-notices-wrapper {
  margin: 0 0 20px;
}

.af-account-page .woocommerce-message,
.af-account-page .woocommerce-info,
.af-account-page .woocommerce-error {
  position: relative;
  min-height: 56px;
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 18px;
  padding: 15px 18px 15px 54px;
  border: 1px solid var(--af-border);
  border-left: 4px solid var(--af-primary);
  border-radius: 16px;
  background: #ffffff;
  color: var(--af-text);
  box-shadow: none;
  font-size: 14.5px;
  font-weight: 750;
  line-height: 1.45;
}

.af-account-page .woocommerce-message::before,
.af-account-page .woocommerce-info::before,
.af-account-page .woocommerce-error::before {
  position: absolute;
  top: 50%;
  left: 18px;
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--af-primary);
  color: #ffffff;
  font-size: 13px;
  font-weight: 900;
  transform: translateY(-50%);
}

.af-account-page .woocommerce-message::before {
  content: "✓";
}

.af-account-page .woocommerce-info::before {
  content: "i";
}

.af-account-page .woocommerce-error {
  border-left-color: #b91c1c;
}

.af-account-page .woocommerce-error::before {
  content: "!";
  background: #b91c1c;
}

/* Tables */

.af-account-page table.shop_table,
.af-account-page .woocommerce-orders-table {
  width: 100%;
  margin: 0;
  border: 1px solid var(--af-border) !important;
  border-radius: 18px !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden;
  background: #ffffff;
}

.af-account-page table.shop_table th,
.af-account-page table.shop_table td,
.af-account-page .woocommerce-orders-table th,
.af-account-page .woocommerce-orders-table td {
  padding: 16px 14px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--af-border) !important;
  color: var(--af-primary-dark);
  font-size: 14px;
  font-weight: 750;
  line-height: 1.45;
  vertical-align: middle;
}

.af-account-page table.shop_table thead th,
.af-account-page .woocommerce-orders-table thead th {
  background: var(--af-primary-soft);
  font-size: 13px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.035em;
}

.af-account-page table.shop_table tr:last-child td,
.af-account-page table.shop_table tr:last-child th {
  border-bottom: 0 !important;
}

/* Address cards */

.af-account-page .woocommerce-Addresses {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.af-account-page .woocommerce-Address {
  width: 100% !important;
  margin: 0 !important;
  padding: 22px;
  border: 1px solid var(--af-border);
  border-radius: 18px;
  background: #ffffff;
}

.af-account-page .woocommerce-Address-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 16px;
}

.af-account-page .woocommerce-Address-title h3 {
  margin: 0;
  font-size: 22px;
}

.af-account-page address {
  color: var(--af-muted);
  font-size: 14.5px;
  font-weight: 650;
  line-height: 1.65;
  font-style: normal;
}

/* Edit account fieldsets */

.af-account-page fieldset {
  margin: 22px 0 0;
  padding: 22px;
  border: 1px solid var(--af-border);
  border-radius: 18px;
  background: var(--af-bg-soft);
}

.af-account-page legend {
  padding: 0 8px;
  color: var(--af-primary-dark);
  font-size: 16px;
  font-weight: 950;
}

/* Support cards */

.af-account-page .af-account-support {
  width: min(100% - 32px, 1240px);
  margin: 24px auto 0;
}

.af-account-page .af-account-support-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.af-account-page .af-account-support-item {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 18px;
  border: 1px solid var(--af-border);
  border-radius: 18px;
  background: #ffffff;
}

.af-account-page .af-account-support-icon {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--af-primary-soft);
  color: var(--af-primary);
  font-size: 17px;
  line-height: 1;
}

.af-account-page .af-account-support-item strong {
  display: block;
  margin: 0 0 4px;
  color: var(--af-primary-dark);
  font-size: 14px;
  font-weight: 900;
  line-height: 1.25;
}

.af-account-page .af-account-support-item span:not(.af-account-support-icon) {
  display: block;
  color: var(--af-muted);
  font-size: 13px;
  font-weight: 650;
  line-height: 1.5;
}

/* Responsive */

@media (max-width: 1024px) {
  .af-account-page {
    padding: 28px 0 64px;
  }

  .af-account-page .af-account-hero,
  .af-account-page .af-account-shell,
  .af-account-page .af-account-support {
    width: calc(100% - 28px);
  }

  .af-account-page .af-account-hero__inner {
    padding: 30px 28px;
  }

  .af-account-page .af-account-panel {
    padding: 22px;
  }

  .af-account-page .af-account-widget .woocommerce {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }

  .af-account-page .woocommerce-MyAccount-navigation,
  .af-account-page .woocommerce-MyAccount-content {
    grid-column: 1 !important;
  }

  .af-account-page .woocommerce-MyAccount-navigation {
    grid-row: 1 !important;
  }

  .af-account-page .woocommerce-MyAccount-content {
    grid-row: 2 !important;
  }

  .af-account-page .woocommerce-MyAccount-navigation ul {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .af-account-page .u-columns,
  .af-account-page .woocommerce-Addresses,
  .af-account-page .af-account-support-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .af-account-page {
    padding: 18px 0 48px;
  }

  .af-account-page .af-account-hero,
  .af-account-page .af-account-shell,
  .af-account-page .af-account-support {
    width: calc(100% - 18px);
  }

  .af-account-page .af-account-hero {
    margin-bottom: 18px;
  }

  .af-account-page .af-account-hero__inner {
    padding: 24px 18px;
    border-radius: 18px;
  }

  .af-account-page .af-account-title .elementor-heading-title,
  .af-account-page .af-account-title {
    font-size: 34px;
  }

  .af-account-page .af-account-subtitle,
  .af-account-page .af-account-subtitle p {
    font-size: 14px;
  }

  .af-account-page .af-account-panel {
    padding: 10px;
    border-radius: 18px;
  }

  .af-account-page .woocommerce-MyAccount-navigation {
    padding: 10px;
    border-radius: 16px;
  }

  .af-account-page .woocommerce-MyAccount-navigation ul {
    grid-template-columns: 1fr !important;
  }

  .af-account-page .woocommerce-MyAccount-navigation a {
    min-height: 44px;
    padding: 12px 14px;
  }

  .af-account-page .woocommerce-MyAccount-content,
  .af-account-page .woocommerce-form-login,
  .af-account-page .woocommerce-form-register {
    padding: 18px !important;
    border-radius: 16px !important;
  }

  .af-account-page .woocommerce-MyAccount-content h2,
  .af-account-page .woocommerce-MyAccount-content h3,
  .af-account-page .u-column1 h2,
  .af-account-page .u-column2 h2 {
    font-size: 24px;
  }

  .af-account-page .woocommerce-message,
  .af-account-page .woocommerce-info,
  .af-account-page .woocommerce-error {
    display: block;
    padding: 16px 16px 16px 52px;
    font-size: 14px;
  }

  .af-account-page .woocommerce-message .button,
  .af-account-page .woocommerce-info .button,
  .af-account-page .woocommerce-error .button {
    width: 100%;
    margin: 12px 0 0 !important;
  }

  .af-account-page table.shop_table,
  .af-account-page table.shop_table tbody,
  .af-account-page table.shop_table tr,
  .af-account-page table.shop_table td {
    display: block;
    width: 100%;
  }

  .af-account-page table.shop_table thead {
    display: none;
  }

  .af-account-page table.shop_table tr {
    padding: 14px;
    border-bottom: 1px solid var(--af-border);
  }

  .af-account-page table.shop_table td {
    padding: 8px 0 !important;
    border: 0 !important;
  }

  .af-account-page table.shop_table td::before {
    content: attr(data-title) ": ";
    color: var(--af-primary-dark);
    font-weight: 900;
  }

  .af-account-page button.button,
  .af-account-page .button,
  .af-account-page a.button,
  .af-account-page input.button {
    width: 100%;
  }

  .af-account-page .af-account-support-item {
    grid-template-columns: 34px minmax(0, 1fr);
    padding: 15px;
    border-radius: 15px;
  }

  .af-account-page .af-account-support-icon {
    width: 34px;
    height: 34px;
  }
}

@media (max-width: 380px) {
  .af-account-page .af-account-title .elementor-heading-title,
  .af-account-page .af-account-title {
    font-size: 31px;
  }
}


/* =========================================================
   Asili Account - V4 Address Tab Hard Fix
   Fixes diagonal Billing/Shipping address cards
   ========================================================= */

/* WooCommerce outputs addresses as col2-set/u-columns with old floats.
   Force those address cards into one clean grid. */
.af-account-page .woocommerce-MyAccount-content .woocommerce-Addresses,
.af-account-page .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set,
.af-account-page .woocommerce-MyAccount-content .woocommerce-Addresses.u-columns,
.af-account-page .woocommerce-MyAccount-content .addresses {
  width: 100% !important;
  max-width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
  margin: 24px 0 0 !important;
  padding: 0 !important;
}

/* Kill WooCommerce clearfix/floats */
.af-account-page .woocommerce-MyAccount-content .woocommerce-Addresses::before,
.af-account-page .woocommerce-MyAccount-content .woocommerce-Addresses::after,
.af-account-page .woocommerce-MyAccount-content .col2-set::before,
.af-account-page .woocommerce-MyAccount-content .col2-set::after {
  display: none !important;
  content: none !important;
}

/* Reset old col widths/floats */
.af-account-page .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address,
.af-account-page .woocommerce-MyAccount-content .woocommerce-Addresses .u-column1,
.af-account-page .woocommerce-MyAccount-content .woocommerce-Addresses .u-column2,
.af-account-page .woocommerce-MyAccount-content .woocommerce-Addresses .col-1,
.af-account-page .woocommerce-MyAccount-content .woocommerce-Addresses .col-2 {
  float: none !important;
  clear: none !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

/* Address card */
.af-account-page .woocommerce-MyAccount-content .woocommerce-Address {
  min-height: 210px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  padding: 26px !important;
  border: 1px solid var(--af-border) !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

/* Title row */
.af-account-page .woocommerce-MyAccount-content .woocommerce-Address-title {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 18px !important;
  align-items: center !important;
  margin: 0 0 18px !important;
}

.af-account-page .woocommerce-MyAccount-content .woocommerce-Address-title h3 {
  margin: 0 !important;
  color: var(--af-primary-dark) !important;
  font-size: 26px !important;
  font-weight: 950 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
  text-align: left !important;
}

/* Edit/Add button */
.af-account-page .woocommerce-MyAccount-content .woocommerce-Address-title a,
.af-account-page .woocommerce-MyAccount-content .woocommerce-Address-title .edit {
  min-height: 42px !important;
  width: auto !important;
  max-width: 170px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 16px !important;
  border: 1px solid var(--af-border) !important;
  border-radius: 999px !important;
  background: var(--af-primary-soft) !important;
  color: var(--af-primary) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  text-decoration: none !important;
}

.af-account-page .woocommerce-MyAccount-content .woocommerce-Address-title a:hover,
.af-account-page .woocommerce-MyAccount-content .woocommerce-Address-title .edit:hover {
  border-color: var(--af-primary) !important;
  background: var(--af-primary) !important;
  color: #ffffff !important;
}

.af-account-page .woocommerce-MyAccount-content address {
  margin: 0 !important;
  color: var(--af-muted) !important;
  font-size: 14.5px !important;
  font-weight: 650 !important;
  line-height: 1.65 !important;
  font-style: normal !important;
}

/* Keep intro text full width and clean */
.af-account-page .woocommerce-MyAccount-content > p:first-child {
  max-width: 760px !important;
  margin: 0 0 22px !important;
}

/* If WooCommerce still outputs old u-columns styling elsewhere, don't let it affect address cards */
.af-account-page .woocommerce-MyAccount-content .woocommerce-Addresses.u-columns {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

/* Mobile address cards */
@media (max-width: 767px) {
  .af-account-page .woocommerce-MyAccount-content .woocommerce-Addresses,
  .af-account-page .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set,
  .af-account-page .woocommerce-MyAccount-content .woocommerce-Addresses.u-columns,
  .af-account-page .woocommerce-MyAccount-content .addresses {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    margin-top: 18px !important;
  }

  .af-account-page .woocommerce-MyAccount-content .woocommerce-Address {
    min-height: 0 !important;
    padding: 20px !important;
    border-radius: 16px !important;
  }

  .af-account-page .woocommerce-MyAccount-content .woocommerce-Address-title {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .af-account-page .woocommerce-MyAccount-content .woocommerce-Address-title h3 {
    font-size: 23px !important;
  }

  .af-account-page .woocommerce-MyAccount-content .woocommerce-Address-title a,
  .af-account-page .woocommerce-MyAccount-content .woocommerce-Address-title .edit {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* =========================================================
   Asili Account - Account Details Form Polish
   ========================================================= */

.af-account-page .woocommerce-EditAccountForm {
  width: 100% !important;
  max-width: 100% !important;
}

.af-account-page .woocommerce-EditAccountForm .form-row {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  float: none !important;
  clear: both !important;
}

.af-account-page .woocommerce-EditAccountForm label {
  display: block !important;
  margin: 0 0 8px !important;
  color: var(--af-primary-dark) !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1.35 !important;
}

.af-account-page .woocommerce-EditAccountForm input.input-text,
.af-account-page .woocommerce-EditAccountForm input[type="text"],
.af-account-page .woocommerce-EditAccountForm input[type="email"],
.af-account-page .woocommerce-EditAccountForm input[type="password"] {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 52px !important;
  padding: 0 16px !important;
  border: 1px solid var(--af-border) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  color: var(--af-text) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  box-shadow: none !important;
  outline: none !important;
}

.af-account-page .woocommerce-EditAccountForm input.input-text:focus,
.af-account-page .woocommerce-EditAccountForm input[type="text"]:focus,
.af-account-page .woocommerce-EditAccountForm input[type="email"]:focus,
.af-account-page .woocommerce-EditAccountForm input[type="password"]:focus {
  border-color: rgba(21, 94, 239, 0.55) !important;
  box-shadow: 0 0 0 4px rgba(21, 94, 239, 0.1) !important;
}

.af-account-page .woocommerce-EditAccountForm em {
  display: block !important;
  margin-top: 8px !important;
  color: var(--af-muted) !important;
  font-size: 13px !important;
  font-weight: 650 !important;
  line-height: 1.5 !important;
}

/* Password section */
.af-account-page .woocommerce-EditAccountForm fieldset {
  margin: 28px 0 22px !important;
  padding: 28px !important;
  border: 1px solid var(--af-border) !important;
  border-radius: 20px !important;
  background: var(--af-bg-soft) !important;
}

.af-account-page .woocommerce-EditAccountForm fieldset legend {
  padding: 0 10px !important;
  color: var(--af-primary-dark) !important;
  font-size: 18px !important;
  font-weight: 950 !important;
  line-height: 1.2 !important;
}

/* Password show/hide icon */
.af-account-page .woocommerce-EditAccountForm .password-input {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}

.af-account-page .woocommerce-EditAccountForm .show-password-input {
  position: absolute !important;
  top: 50% !important;
  right: 16px !important;
  width: 28px !important;
  height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--af-muted) !important;
  transform: translateY(-50%) !important;
  cursor: pointer !important;
}

.af-account-page .woocommerce-EditAccountForm .password-input input {
  padding-right: 52px !important;
}

/* Save changes button */
.af-account-page .woocommerce-EditAccountForm button[type="submit"],
.af-account-page .woocommerce-EditAccountForm .woocommerce-Button {
  min-height: 52px !important;
  padding: 0 28px !important;
  border: 1px solid var(--af-primary) !important;
  border-radius: 999px !important;
  background: var(--af-primary) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 10px 24px rgba(21, 94, 239, 0.2) !important;
}

.af-account-page .woocommerce-EditAccountForm button[type="submit"]:hover,
.af-account-page .woocommerce-EditAccountForm .woocommerce-Button:hover {
  background: var(--af-primary-dark) !important;
  border-color: var(--af-primary-dark) !important;
  color: #ffffff !important;
}

/* Mobile */
@media (max-width: 767px) {
  .af-account-page .woocommerce-EditAccountForm fieldset {
    padding: 20px !important;
    border-radius: 16px !important;
  }

  .af-account-page .woocommerce-EditAccountForm button[type="submit"],
  .af-account-page .woocommerce-EditAccountForm .woocommerce-Button {
    width: 100% !important;
  }
}

/* =========================================================
   Asili Account - Orders / Downloads Empty State Polish
   ========================================================= */

.af-account-page .woocommerce-MyAccount-content .woocommerce-info {
  width: 100% !important;
  min-height: 76px !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 18px 22px 18px 58px !important;
  border: 1px solid var(--af-border) !important;
  border-left: 4px solid var(--af-primary) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  color: var(--af-primary-dark) !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  line-height: 1.45 !important;
}

.af-account-page .woocommerce-MyAccount-content .woocommerce-info::before {
  left: 22px !important;
  width: 24px !important;
  height: 24px !important;
  background: var(--af-primary) !important;
  color: #ffffff !important;
  font-size: 13px !important;
}

.af-account-page .woocommerce-MyAccount-content .woocommerce-info .button {
  margin-left: auto !important;
  min-width: 160px !important;
  min-height: 48px !important;
  padding: 0 22px !important;
}

/* Reduce excessive blank panel feel on simple account tabs */
.af-account-page .woocommerce-MyAccount-content:has(.woocommerce-info:only-child) {
  min-height: 190px !important;
  display: flex !important;
  align-items: center !important;
}

/* Fallback where :has support is inconsistent */
.af-account-page .woocommerce-MyAccount-content .woocommerce-info:first-child:last-child {
  margin-block: auto !important;
}

@media (max-width: 767px) {
  .af-account-page .woocommerce-MyAccount-content .woocommerce-info {
    display: block !important;
    min-height: 0 !important;
    padding: 18px 18px 18px 54px !important;
  }

  .af-account-page .woocommerce-MyAccount-content .woocommerce-info .button {
    width: 100% !important;
    margin: 14px 0 0 !important;
  }

  .af-account-page .woocommerce-MyAccount-content:has(.woocommerce-info:only-child) {
    min-height: 0 !important;
    display: block !important;
  }
}

/* =========================================================
   Asili Account - Logged Out Login/Register Form Polish
   ========================================================= */

.af-account-page .woocommerce-form-login,
.af-account-page .woocommerce-form-register {
  width: 100% !important;
  max-width: 100% !important;
  padding: 30px !important;
  border: 1px solid var(--af-border) !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.af-account-page .woocommerce-form-login .form-row,
.af-account-page .woocommerce-form-register .form-row {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  float: none !important;
  clear: both !important;
}

.af-account-page .woocommerce-form-login label,
.af-account-page .woocommerce-form-register label {
  display: block !important;
  margin: 0 0 8px !important;
  color: var(--af-primary-dark) !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1.35 !important;
}

.af-account-page .woocommerce-form-login input.input-text,
.af-account-page .woocommerce-form-register input.input-text,
.af-account-page .woocommerce-form-login input[type="text"],
.af-account-page .woocommerce-form-login input[type="email"],
.af-account-page .woocommerce-form-login input[type="password"],
.af-account-page .woocommerce-form-register input[type="text"],
.af-account-page .woocommerce-form-register input[type="email"],
.af-account-page .woocommerce-form-register input[type="password"] {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 52px !important;
  padding: 0 16px !important;
  border: 1px solid var(--af-border) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  color: var(--af-text) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  box-shadow: none !important;
  outline: none !important;
}

.af-account-page .woocommerce-form-login input.input-text:focus,
.af-account-page .woocommerce-form-register input.input-text:focus,
.af-account-page .woocommerce-form-login input[type="text"]:focus,
.af-account-page .woocommerce-form-login input[type="email"]:focus,
.af-account-page .woocommerce-form-login input[type="password"]:focus,
.af-account-page .woocommerce-form-register input[type="text"]:focus,
.af-account-page .woocommerce-form-register input[type="email"]:focus,
.af-account-page .woocommerce-form-register input[type="password"]:focus {
  border-color: rgba(21, 94, 239, 0.55) !important;
  box-shadow: 0 0 0 4px rgba(21, 94, 239, 0.1) !important;
}

/* Password show/hide icon */
.af-account-page .woocommerce-form-login .password-input,
.af-account-page .woocommerce-form-register .password-input {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}

.af-account-page .woocommerce-form-login .password-input input,
.af-account-page .woocommerce-form-register .password-input input {
  padding-right: 52px !important;
}

.af-account-page .woocommerce-form-login .show-password-input,
.af-account-page .woocommerce-form-register .show-password-input {
  position: absolute !important;
  top: 50% !important;
  right: 16px !important;
  width: 28px !important;
  height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--af-muted) !important;
  transform: translateY(-50%) !important;
  cursor: pointer !important;
}

/* Login button and remember row */
.af-account-page .woocommerce-form-login__submit,
.af-account-page .woocommerce-form-register__submit {
  min-height: 52px !important;
  padding: 0 28px !important;
  border: 1px solid var(--af-primary) !important;
  border-radius: 999px !important;
  background: var(--af-primary) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 10px 24px rgba(21, 94, 239, 0.2) !important;
}

.af-account-page .woocommerce-form-login__submit:hover,
.af-account-page .woocommerce-form-register__submit:hover {
  background: var(--af-primary-dark) !important;
  border-color: var(--af-primary-dark) !important;
  color: #ffffff !important;
}

.af-account-page .woocommerce-form-login .woocommerce-form-login__rememberme {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 0 0 12px !important;
  color: var(--af-muted) !important;
  font-size: 14px !important;
  font-weight: 750 !important;
}

.af-account-page .woocommerce-form-login .woocommerce-form-login__rememberme input {
  width: 16px !important;
  height: 16px !important;
  accent-color: var(--af-primary) !important;
}

.af-account-page .woocommerce-form-login .lost_password {
  margin: 18px 0 0 !important;
}

.af-account-page .woocommerce-form-login .lost_password a {
  color: var(--af-primary) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.af-account-page .woocommerce-form-login .lost_password a:hover {
  color: var(--af-primary-dark) !important;
}

/* Logged-out single form width */
.af-account-page .af-account-widget .woocommerce > h2,
.af-account-page .af-account-widget .woocommerce > .woocommerce-form-login {
  max-width: 100% !important;
}

.af-account-page .af-account-widget .woocommerce > h2 {
  margin: 0 0 18px !important;
  color: var(--af-primary-dark) !important;
  font-size: 32px !important;
  font-weight: 950 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.035em !important;
}

/* Mobile */
@media (max-width: 767px) {
  .af-account-page .woocommerce-form-login,
  .af-account-page .woocommerce-form-register {
    padding: 18px !important;
    border-radius: 16px !important;
  }

  .af-account-page .woocommerce-form-login__submit,
  .af-account-page .woocommerce-form-register__submit {
    width: 100% !important;
  }

  .af-account-page .woocommerce-form-login .woocommerce-form-login__rememberme {
    width: 100% !important;
    margin: 14px 0 0 !important;
  }

  .af-account-page .af-account-widget .woocommerce > h2 {
    font-size: 26px !important;
  }
}/* End custom CSS */