/* =========================
   My Account
   File: /wp-content/themes/agri-lighting-child/assets/css/account.css
   ========================= */

main.agri-account{
  --agri-yellow:#F0FE06;
  --agri-text:#111;
  --agri-muted:#5b5b5b;
  --agri-bg:#f4f5f6;
  --agri-card:#fff;
  --agri-border:rgba(0,0,0,.10);
  --agri-shadow:0 12px 28px rgba(0,0,0,.12);
  --agri-radius:16px;

  width:100%;
  max-width:none;
  margin:0;
  padding:0 0 48px;
  background:var(--agri-bg);
  color:var(--agri-text);
}

main.agri-account .agri-wrap{
  width:min(1180px, calc(100% - 40px));
  margin-inline:auto;
}

/* ---------- Head ---------- */
main.agri-account .agri-acc-top{ padding:20px 0 6px; }

main.agri-account .agri-acc-crumbs{
  font-size:13px;
  color:var(--agri-muted);
  display:flex;
  gap:8px;
  align-items:center;
  margin-bottom:14px;
}
main.agri-account .agri-acc-crumbs a{ color:var(--agri-muted); text-decoration:none; }
main.agri-account .agri-acc-crumbs a:hover{ text-decoration:underline; }

main.agri-account .agri-acc-head{ margin:0 0 18px; }
main.agri-account .agri-acc-head__title{
  margin:0 0 6px;
  font-size:34px;
  line-height:1.1;
  letter-spacing:-.02em;
}
main.agri-account .agri-acc-head__sub{
  margin:0;
  color:var(--agri-muted);
  font-size:16px;
  max-width:62ch;
}

/* ---------- Layout ---------- */
main.agri-account .agri-acc-layout{
  display:grid;
  grid-template-columns:258px minmax(0, 1fr);
  gap:20px;
  align-items:start;
}
main.agri-account .agri-acc-guest{
  display:grid;
  grid-template-columns:minmax(0, 1fr) 380px;
  gap:20px;
  align-items:start;
}

/* ---------- Panels ---------- */
main.agri-account .agri-acc-panel{
  background:var(--agri-card);
  border:1px solid var(--agri-border);
  border-radius:var(--agri-radius);
  box-shadow:var(--agri-shadow);
  padding:24px;
}

/* ---------- Sidebar ---------- */
main.agri-account .agri-acc-nav{
  background:var(--agri-card);
  border:1px solid var(--agri-border);
  border-radius:var(--agri-radius);
  box-shadow:var(--agri-shadow);
  padding:8px;
  margin-bottom:16px;
}
main.agri-account .agri-acc-nav ul{ list-style:none; margin:0; padding:0; }
main.agri-account .agri-acc-nav li{ margin:0; }

main.agri-account .agri-acc-nav__link{
  display:flex;
  align-items:center;
  gap:10px;
  padding:11px 12px;
  border-radius:10px;
  text-decoration:none;
  color:var(--agri-text);
  font-weight:600;
  font-size:15px;
  line-height:1.2;
}
main.agri-account .agri-acc-nav__link:hover{ background:rgba(0,0,0,.05); }
main.agri-account .agri-acc-nav__link.is-current{
  background:var(--agri-yellow);
  border:1px solid rgba(0,0,0,.18);
  font-weight:800;
}
main.agri-account .agri-acc-nav__link--out{ color:#8a1c1c; }
main.agri-account .agri-acc__icon{ width:19px; height:19px; flex:0 0 auto; }

/* ---------- Help card ---------- */
main.agri-account .agri-acc-help{
  background:var(--agri-card);
  border:1px solid var(--agri-border);
  border-radius:var(--agri-radius);
  box-shadow:var(--agri-shadow);
  padding:18px;
}
main.agri-account .agri-acc-help--aside{ margin-top:16px; }
main.agri-account .agri-acc-help__title{ margin:0 0 6px; font-weight:800; font-size:16px; }
main.agri-account .agri-acc-help__text{ margin:0 0 10px; color:var(--agri-muted); font-size:14px; line-height:1.45; }
main.agri-account .agri-acc-help__row{ margin:0 0 4px; font-size:15px; font-weight:700; }
main.agri-account .agri-acc-help__row a{ color:var(--agri-text); text-decoration:none; }
main.agri-account .agri-acc-help__row a:hover{ text-decoration:underline; }
main.agri-account .agri-acc-help__link{
  display:inline-block;
  margin-top:10px;
  font-size:14px;
  font-weight:700;
  color:var(--agri-text);
}

/* ---------- Guest aside ---------- */
main.agri-account .agri-acc-aside{
  background:var(--agri-card);
  border:1px solid var(--agri-border);
  border-radius:var(--agri-radius);
  box-shadow:var(--agri-shadow);
  padding:24px;
}
main.agri-account .agri-acc-aside__title{ margin:0 0 14px; font-size:20px; letter-spacing:-.01em; }
main.agri-account .agri-acc-benefits{ list-style:none; margin:0 0 16px; padding:0; display:grid; gap:12px; }
main.agri-account .agri-acc-benefits li{
  display:grid;
  grid-template-columns:22px minmax(0,1fr);
  gap:10px;
  font-size:15px;
  line-height:1.45;
  color:var(--agri-muted);
}
main.agri-account .agri-acc-benefits strong{ color:var(--agri-text); }
main.agri-account .agri-acc-benefits__mark{
  width:20px; height:20px; border-radius:50%;
  background:var(--agri-yellow);
  border:1px solid rgba(0,0,0,.18);
  position:relative;
  margin-top:2px;
}
main.agri-account .agri-acc-benefits__mark::after{
  content:"";
  position:absolute;
  left:6px; top:4px;
  width:5px; height:9px;
  border:solid #111;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}
main.agri-account .agri-acc-aside__note{
  background:var(--agri-bg);
  border:1px solid var(--agri-border);
  border-radius:12px;
  padding:14px;
  font-size:14px;
  line-height:1.5;
  color:var(--agri-muted);
}
main.agri-account .agri-acc-aside__note p{ margin:0; }
main.agri-account .agri-acc-aside__note strong{ color:var(--agri-text); }

/* =========================================================
   WooCommerce internals, restyled to match the site
   ========================================================= */

/* Woo prints its own account nav; ours replaces it. */
main.agri-account .woocommerce-MyAccount-navigation{ display:none; }
main.agri-account .woocommerce-MyAccount-content{ width:100%; float:none; margin:0; }
main.agri-account .woocommerce{ margin:0; }

main.agri-account .woocommerce-MyAccount-content > p:first-child{ margin-top:0; }
main.agri-account .woocommerce-MyAccount-content a{ color:#0b5cab; }

/* Forms */
main.agri-account .woocommerce form .form-row{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin:0 0 14px;
  padding:0;
}
main.agri-account .woocommerce form .form-row label{
  font-weight:700;
  font-size:14px;
}
main.agri-account .woocommerce form .form-row .required{ color:#8a1c1c; text-decoration:none; }

main.agri-account .woocommerce form .input-text,
main.agri-account .woocommerce form input[type="text"],
main.agri-account .woocommerce form input[type="email"],
main.agri-account .woocommerce form input[type="tel"],
main.agri-account .woocommerce form input[type="password"],
main.agri-account .woocommerce form select{
  width:100%;
  height:44px;
  padding:0 12px;
  border:1px solid rgba(0,0,0,.22);
  border-radius:10px;
  background:#fff;
  font-size:15px;
  color:var(--agri-text);
  box-sizing:border-box;
}
main.agri-account .woocommerce form textarea{
  width:100%;
  min-height:90px;
  padding:10px 12px;
  border:1px solid rgba(0,0,0,.22);
  border-radius:10px;
  font-size:15px;
  box-sizing:border-box;
}
main.agri-account .woocommerce form .input-text:focus,
main.agri-account .woocommerce form select:focus,
main.agri-account .woocommerce form textarea:focus{
  outline:3px solid rgba(0,0,0,.15);
  outline-offset:1px;
  border-color:#111;
}

/* Buttons */
main.agri-account .woocommerce .button,
main.agri-account .woocommerce button.button,
main.agri-account .woocommerce input.button,
main.agri-account .woocommerce a.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:11px 18px;
  min-height:44px;
  border-radius:10px;
  background:var(--agri-yellow);
  color:#000;
  border:1px solid rgba(0,0,0,.20);
  box-shadow:0 8px 18px rgba(0,0,0,.15);
  font-weight:800;
  font-size:15px;
  line-height:1;
  text-decoration:none;
  cursor:pointer;
}
main.agri-account .woocommerce .button:hover{ filter:brightness(.95); }
main.agri-account .woocommerce a.button.wc-forward{ white-space:nowrap; }

/* Login / register pair.
   WooCommerce clearfixes these wrappers with ::before / ::after, and a
   grid container counts those pseudo-elements as grid items, which pushed
   the login box into the second column and register onto a second row.
   Switching them off puts the real children back in the right cells. */
main.agri-account .u-columns.col2-set,
main.agri-account .woocommerce .col2-set{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:24px;
}
main.agri-account .woocommerce .col2-set::before,
main.agri-account .woocommerce .col2-set::after,
main.agri-account .u-columns.col2-set::before,
main.agri-account .u-columns.col2-set::after,
main.agri-account .woocommerce-Addresses::before,
main.agri-account .woocommerce-Addresses::after,
main.agri-account .woocommerce-MyAccount-content::before,
main.agri-account .woocommerce-MyAccount-content::after{
  content:none !important;
  display:none !important;
}
main.agri-account .woocommerce .col2-set .col-1,
main.agri-account .woocommerce .col2-set .col-2{
  width:100%;
  float:none;
  margin:0;
}
main.agri-account .agri-acc-panel--form h2{
  margin:0 0 14px;
  font-size:20px;
  letter-spacing:-.01em;
}
main.agri-account .woocommerce form.login,
main.agri-account .woocommerce form.register{
  border:0;
  padding:0;
  margin:0;
  border-radius:0;
}
main.agri-account .woocommerce-form__label-for-checkbox{
  display:flex;
  align-items:center;
  gap:8px;
  font-weight:600;
  font-size:14px;
}
main.agri-account .woocommerce-form__label-for-checkbox input{ margin:0; }
main.agri-account .woocommerce-LostPassword{ margin:10px 0 0; font-size:14px; }

/* Orders table */
main.agri-account .woocommerce table.shop_table{
  width:100%;
  border-collapse:collapse;
  border:1px solid var(--agri-border);
  border-radius:12px;
  overflow:hidden;
  font-size:15px;
}
main.agri-account .woocommerce table.shop_table th{
  text-align:left;
  background:var(--agri-bg);
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:var(--agri-muted);
  padding:12px 14px;
  border-bottom:1px solid var(--agri-border);
}
main.agri-account .woocommerce table.shop_table td{
  padding:14px;
  border-bottom:1px solid var(--agri-border);
  vertical-align:middle;
}
main.agri-account .woocommerce table.shop_table tr:last-child td{ border-bottom:0; }

/* Addresses */
main.agri-account .woocommerce-Addresses{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:20px;
}
main.agri-account .woocommerce-Address{ width:100%; float:none; }
main.agri-account .woocommerce-Address-title{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  margin-bottom:8px;
}
main.agri-account .woocommerce-Address-title h2,
main.agri-account .woocommerce-Address-title h3{ margin:0; font-size:17px; }
main.agri-account .woocommerce-Address address{
  font-style:normal;
  line-height:1.55;
  color:var(--agri-muted);
  background:var(--agri-bg);
  border:1px solid var(--agri-border);
  border-radius:12px;
  padding:14px;
}

/* Notices */
main.agri-account .woocommerce-message,
main.agri-account .woocommerce-info,
main.agri-account .woocommerce-error{
  list-style:none;
  margin:0 0 16px;
  padding:14px 16px;
  border-radius:12px;
  border:1px solid var(--agri-border);
  background:var(--agri-bg);
  font-size:15px;
  line-height:1.45;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  justify-content:space-between;
}
main.agri-account .woocommerce-error{
  background:#fdeceb;
  border-color:#f3bdb8;
  color:#7a1a12;
}
main.agri-account .woocommerce-error li{ margin:0; }

/* Empty states */
main.agri-account .woocommerce-info .button{ margin-left:auto; }

/* ---------- Responsive ---------- */
@media (max-width: 1000px){
  main.agri-account .agri-acc-guest{ grid-template-columns:minmax(0,1fr); }
  main.agri-account .agri-acc-layout{ grid-template-columns:minmax(0,1fr); }
  main.agri-account .agri-acc-side{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:16px;
  }
  main.agri-account .agri-acc-nav{ margin-bottom:0; }
}

@media (max-width: 720px){
  main.agri-account .agri-acc-head__title{ font-size:27px; }
  main.agri-account .agri-acc-panel,
  main.agri-account .agri-acc-aside{ padding:18px; }
  main.agri-account .woocommerce .col2-set,
  main.agri-account .woocommerce-Addresses{ grid-template-columns:minmax(0,1fr); }

  /* Orders table collapses to stacked rows */
  main.agri-account .woocommerce table.shop_table thead{
    position:absolute;
    width:1px; height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    white-space:nowrap;
  }
  main.agri-account .woocommerce table.shop_table tr{
    display:block;
    border:1px solid var(--agri-border);
    border-radius:12px;
    padding:6px 0;
    margin-bottom:12px;
  }
  main.agri-account .woocommerce table.shop_table td{
    display:flex;
    justify-content:space-between;
    gap:14px;
    padding:8px 14px;
    border-bottom:0;
    text-align:right;
  }
  main.agri-account .woocommerce table.shop_table td::before{
    content:attr(data-title);
    font-weight:700;
    color:var(--agri-muted);
    text-align:left;
  }
}
