:root{
  --zpa-blue:#2563EB;
  --zpa-blue-d:#1D4ED8;
  --zpa-blue-soft:#EEF3FF;
  --zpa-ink:#1e1e2e;
  --zpa-grey:#6b7280;
  --zpa-line:#eceef3;
  --zpa-card-sh:0 4px 18px rgba(20,30,60,.06);
}

.zpa-wrap{
  display:grid;
  grid-template-columns:320px 1fr;
  gap:24px;
  max-width:1280px;
  margin:24px auto;
  padding:0 16px;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--zpa-ink);
  align-items:start;
}

/* ---------------- SIDEBAR ---------------- */
.zpa-side{display:flex;flex-direction:column;gap:18px;}

.zpa-card{
  background:#fff;
  border-radius:16px;
  box-shadow:var(--zpa-card-sh);
  padding:18px;
}

.zpa-welcome{display:flex;align-items:center;gap:14px;padding:22px 18px;}
.zpa-avatar{flex:0 0 auto;}
.zpa-avatar-img,.zpa-avatar img{
  width:56px;height:56px;border-radius:50%;object-fit:cover;
  background:#d9dde6;display:block;
}
.zpa-welcome-txt{display:flex;flex-direction:column;line-height:1.3;}
.zpa-hi{font-size:14px;color:var(--zpa-grey);}
.zpa-name{font-size:16px;font-weight:800;color:var(--zpa-ink);}

.zpa-menu{padding:16px 14px;}
.zpa-menu-title{
  margin:4px 6px 12px;font-size:18px;font-weight:800;color:var(--zpa-ink);
}
.zpa-link{
  display:flex;align-items:center;gap:12px;
  padding:12px 14px;border-radius:12px;
  color:#374151;font-size:15px;font-weight:600;
  text-decoration:none;transition:.18s;cursor:pointer;
}
.zpa-link .zpa-ico{font-size:18px;width:22px;text-align:center;opacity:.85;}
.zpa-link:hover{background:var(--zpa-blue-soft);color:var(--zpa-blue);}
.zpa-link.is-active{
  background:var(--zpa-blue-soft);
  color:var(--zpa-blue);
  font-weight:800;
}
.zpa-logout{color:#dc2626;}
.zpa-logout:hover{background:#fef2f2;color:#dc2626;}

/* ---------------- CONTENT ---------------- */
.zpa-content{
  background:#fff;border-radius:18px;box-shadow:var(--zpa-card-sh);
  min-height:520px;padding:34px;
}
.zpa-pane{display:none;}
.zpa-pane.is-active{display:block;animation:zpaFade .25s ease;}
@keyframes zpaFade{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}

.zpa-pane-title{font-size:22px;font-weight:800;margin:0 0 22px;}

/* Empty state (reference) */
.zpa-empty,.zpa-guest{
  text-align:center;max-width:520px;margin:40px auto;
  display:flex;flex-direction:column;align-items:center;
}
.zpa-empty-ico,.zpa-guest-ico{font-size:64px;line-height:1;margin-bottom:18px;opacity:.55;}
.zpa-empty-illus{width:200px;max-width:60%;margin:0 auto 22px;}
.zpa-empty-illus svg{width:100%;height:auto;display:block;}
.zpa-empty-title{font-size:26px;font-weight:800;margin:0 0 10px;color:var(--zpa-ink);}
.zpa-empty-text{font-size:15px;color:var(--zpa-grey);margin:0 0 26px;}
.zpa-shop-btn{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--zpa-blue);color:#fff;text-decoration:none;
  font-weight:800;font-size:14px;letter-spacing:.4px;
  padding:14px 30px;border-radius:10px;transition:.2s;
}
.zpa-shop-btn:hover{background:var(--zpa-blue-d);transform:translateY(-1px);}

/* Orders list */
.zpa-orders{display:flex;flex-direction:column;gap:14px;}
.zpa-order{
  border:1px solid var(--zpa-line);border-radius:14px;padding:18px;
  transition:.18s;
}
.zpa-order:hover{box-shadow:var(--zpa-card-sh);border-color:#dbe3f5;}
.zpa-order-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
.zpa-order-id{font-weight:800;font-size:16px;}
.zpa-badge{
  font-size:12px;font-weight:700;padding:5px 12px;border-radius:30px;
  background:var(--zpa-blue-soft);color:var(--zpa-blue);text-transform:capitalize;
}
.zpa-st-completed{background:#e8f7ee;color:#15803d;}
.zpa-st-processing{background:#fff4e5;color:#b45309;}
.zpa-st-cancelled,.zpa-st-failed{background:#fef2f2;color:#dc2626;}
.zpa-order-meta{display:flex;gap:18px;flex-wrap:wrap;color:var(--zpa-grey);font-size:14px;margin-bottom:12px;}
.zpa-order-total{font-weight:700;color:var(--zpa-ink);}
.zpa-order-view{
  color:var(--zpa-blue);font-weight:700;font-size:14px;text-decoration:none;
}
.zpa-order-view:hover{text-decoration:underline;}

/* Box wrapper for woo shortcodes */
.zpa-box{font-size:15px;}
.zpa-muted{color:var(--zpa-grey);}
.zpa-saved{
  background:#e8f7ee;color:#15803d;padding:12px 16px;border-radius:10px;
  font-weight:600;margin-bottom:18px;font-size:14px;
}

/* Profile form */
.zpa-form{max-width:480px;display:flex;flex-direction:column;}
.zpa-form label{font-weight:700;font-size:13px;margin:14px 0 6px;color:#374151;}
.zpa-form input{
  padding:13px 15px;border:1px solid var(--zpa-line);border-radius:10px;
  font-size:15px;outline:none;transition:.15s;
}
.zpa-form input:focus{border-color:var(--zpa-blue);box-shadow:0 0 0 3px rgba(37,99,235,.12);}
.zpa-form input:disabled{background:#f6f7f9;color:#9ca3af;}
.zpa-save-btn{
  margin-top:22px;background:var(--zpa-blue);color:#fff;border:none;
  padding:14px 30px;border-radius:10px;font-weight:800;font-size:14px;
  cursor:pointer;align-self:flex-start;transition:.2s;
}
.zpa-save-btn:hover{background:var(--zpa-blue-d);}

/* Woo edit-address theming */
.zpa-box .woocommerce-Address{margin-bottom:24px;}
.zpa-box .button,.zpa-box button{
  background:var(--zpa-blue)!important;color:#fff!important;border:none!important;
  border-radius:10px!important;padding:13px 26px!important;font-weight:700!important;
}
.zpa-box .button:hover,.zpa-box button:hover{background:var(--zpa-blue-d)!important;}

/* ---------------- RESPONSIVE ---------------- */
@media(max-width:880px){
  .zpa-wrap{grid-template-columns:1fr;}
  .zpa-content{padding:24px 18px;min-height:auto;}
  .zpa-side{flex-direction:column;}
}
