/* ==========================================================================
   Donna Alxia — shop surfaces (archive, product, cart, checkout)
   ========================================================================== */

/* ---- Sticky mobile buy bar ---- */
.da-stickybuy{
  position:fixed;
  inset-inline:0;
  inset-block-end:0;
  z-index:8800;
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-top:1px solid var(--da-border);
  box-shadow:0 -8px 30px rgba(13,13,13,.13);
  transform:translateY(110%);
  transition:transform var(--da-t-slow);
  padding-bottom:env(safe-area-inset-bottom);
}
.da-stickybuy.is-on{transform:none}
.da-stickybuy__in{
  max-width:var(--da-max);
  margin-inline:auto;
  padding:10px var(--da-4);
  display:flex;align-items:center;gap:var(--da-4);
}
.da-stickybuy__meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.da-stickybuy__name{
  font-size:var(--da-fs-sm);font-weight:800;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.da-stickybuy .da-price__now{font-size:var(--da-fs-base)}
.da-stickybuy .da-btn{flex:0 0 auto;min-height:46px;padding-inline:22px;width:auto}

/* Only on phones — desktop keeps the real buy box in view. */
@media(min-width:861px){
  .da-stickybuy{display:none}
}

/* ==========================================================================
   Archive / category
   ========================================================================== */

.dashop{background:var(--da-bg)}

.dashop-hero{
  background:var(--da-bg-warm);
  border-bottom:1px solid var(--da-border);
  padding-block:var(--da-6) var(--da-7);
}
.dashop-hero__in{
  max-width:var(--da-max);
  margin-inline:auto;
  padding-inline:var(--da-gutter);
}

.dashop-crumbs{
  display:flex;align-items:center;gap:7px;flex-wrap:wrap;
  font-size:var(--da-fs-xs);
  color:var(--da-text-3);
  margin-bottom:var(--da-4);
}
.dashop-crumbs a{transition:color var(--da-t)}
.dashop-crumbs a:hover{color:var(--da-gold-text)}
.dashop-crumbs .da-ico{width:12px;height:12px;opacity:.55}
.dashop-crumbs [aria-current]{color:var(--da-ink);font-weight:700}

.dashop-hero .da-h1{margin-bottom:var(--da-3);max-width:20ch}
.dashop-hero__desc{
  font-size:var(--da-fs-base);
  line-height:1.8;
  color:var(--da-text-2);
  max-width:66ch;
  margin:0 0 var(--da-5);
}

.dashop-hero__trust{margin-top:var(--da-5)}

/* Subcategory pills */
.dashop-subcats{
  display:flex;gap:var(--da-2);flex-wrap:wrap;
  margin-top:var(--da-5);
}
.dashop-subcat{
  display:inline-flex;align-items:center;gap:7px;
  min-height:42px;
  padding:0 16px;
  background:#fff;
  border:1px solid var(--da-border);
  border-radius:var(--da-r-pill);
  font-size:var(--da-fs-sm);
  font-weight:700;
  transition:border-color var(--da-t),color var(--da-t),box-shadow var(--da-t);
}
.dashop-subcat:hover{border-color:var(--da-gold);color:var(--da-gold-text);box-shadow:var(--da-sh-sm)}
.dashop-subcat.is-active{background:var(--da-ink);color:#fff;border-color:var(--da-ink)}
.dashop-subcat__n{
  font-size:var(--da-fs-xs);
  color:var(--da-text-3);
  background:var(--da-bg-warm);
  padding:1px 8px;border-radius:var(--da-r-pill);
}
.dashop-subcat.is-active .dashop-subcat__n{background:rgba(255,255,255,.16);color:#fff}

/* Toolbar */
.dashop-toolbar{
  position:sticky;
  top:var(--da-header-h);
  z-index:20;
  background:rgba(255,255,255,.95);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--da-border);
  padding-block:var(--da-3);
}
body.admin-bar .dashop-toolbar{top:calc(var(--da-header-h) + 32px)}
.dashop-toolbar__in{
  max-width:var(--da-max);
  margin-inline:auto;
  padding-inline:var(--da-gutter);
  display:flex;align-items:center;justify-content:space-between;
  gap:var(--da-4);flex-wrap:wrap;
}
.dashop-count{font-size:var(--da-fs-sm);color:var(--da-text-2);margin:0}
.dashop-count strong{color:var(--da-ink);font-weight:800}

.dashop-sort{display:flex;align-items:center;gap:var(--da-2)}
.dashop-sort label{font-size:var(--da-fs-sm);color:var(--da-text-3)}
.dashop-sort select{
  min-height:44px;
  padding:0 var(--da-3);
  border:1px solid var(--da-border-strong);
  border-radius:var(--da-r-md);
  background:#fff;
  font-family:inherit;font-size:var(--da-fs-sm);font-weight:700;
  color:var(--da-ink);
  cursor:pointer;
}
.dashop-sort select:focus{border-color:var(--da-gold);outline:none;box-shadow:0 0 0 3px rgba(200,146,42,.18)}

/* Grid */
.dashop-grid{padding-block:var(--da-6) var(--da-8)}
.dashop-grid__in{
  max-width:var(--da-max);
  margin-inline:auto;
  padding-inline:var(--da-gutter);
}

.dashop-empty{
  text-align:center;
  padding:var(--da-9) var(--da-4);
}
.dashop-empty .da-ico{width:44px;height:44px;color:var(--da-text-3);margin-bottom:var(--da-4)}

/* Assurance row */
.dashop-assure{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:var(--da-5);
}
.dashop-assure > div{
  background:#fff;
  border:1px solid var(--da-border);
  border-radius:var(--da-r-lg);
  padding:var(--da-5);
}
.dashop-assure .da-h3{margin:var(--da-3) 0 var(--da-2);font-size:var(--da-fs-base)}
.dashop-assure p{margin:0;font-size:var(--da-fs-sm);color:var(--da-text-3);line-height:1.7}

/* Pagination */
.dashop-pager{
  display:flex;align-items:center;justify-content:center;gap:6px;
  margin-top:var(--da-7);
  flex-wrap:wrap;
}
.dashop-pager .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:46px;height:46px;
  padding:0 12px;
  border:1px solid var(--da-border);
  border-radius:var(--da-r-md);
  font-size:var(--da-fs-sm);font-weight:800;
  color:var(--da-ink);
  background:#fff;
  transition:border-color var(--da-t),color var(--da-t),background var(--da-t);
}
.dashop-pager .page-numbers:hover{border-color:var(--da-gold);color:var(--da-gold-text)}
.dashop-pager .page-numbers.current{background:var(--da-ink);color:#fff;border-color:var(--da-ink)}
.dashop-pager .page-numbers.dots{border:0;background:transparent}

/* ==========================================================================
   Cart
   ========================================================================== */

.dacart{padding-block:var(--da-6) var(--da-8);background:var(--da-bg)}
.dacart__in{
  max-width:var(--da-max);
  margin-inline:auto;
  padding-inline:var(--da-gutter);
}
.dacart__head{margin-bottom:var(--da-5)}
.dacart__layout{
  display:grid;
  grid-template-columns:1fr 380px;
  gap:var(--da-6);
  align-items:start;
}
.dacart__ship{margin-bottom:var(--da-5)}

.dacart-items{
  border:1px solid var(--da-border);
  border-radius:var(--da-r-lg);
  overflow:hidden;
  background:#fff;
}
.dacart-item{
  display:grid;
  grid-template-columns:96px 1fr auto;
  gap:var(--da-4);
  align-items:center;
  padding:var(--da-4);
  border-bottom:1px solid var(--da-border);
}
.dacart-item:last-child{border-bottom:0}
.dacart-item__img{
  width:96px;height:96px;
  border-radius:var(--da-r-md);
  overflow:hidden;
  background:var(--da-bg-warm);
  border:1px solid var(--da-border);
}
.dacart-item__img img{width:100%;height:100%;object-fit:cover}
.dacart-item__body{min-width:0;display:flex;flex-direction:column;gap:6px}
.dacart-item__name{
  font-size:var(--da-fs-base);font-weight:800;line-height:1.4;
  color:var(--da-ink);
}
.dacart-item__name:hover{color:var(--da-gold-text)}
.dacart-item__meta{font-size:var(--da-fs-xs);color:var(--da-text-3)}
.dacart-item__side{
  display:flex;flex-direction:column;align-items:flex-end;gap:var(--da-3);
}
.dacart-item__price{font-size:var(--da-fs-lg);font-weight:900}

.dacart-qty{
  display:inline-flex;align-items:center;
  border:1px solid var(--da-border-strong);
  border-radius:var(--da-r-pill);
  overflow:hidden;
}
.dacart-qty button{
  width:40px;height:40px;
  display:flex;align-items:center;justify-content:center;
  background:#fff;border:0;color:var(--da-ink);
  transition:background var(--da-t);
}
.dacart-qty button:hover{background:var(--da-bg-warm)}
.dacart-qty input{
  width:44px;height:40px;
  border:0;
  text-align:center;
  font-family:inherit;font-size:var(--da-fs-sm);font-weight:800;
  -moz-appearance:textfield;
}
.dacart-qty input::-webkit-outer-spin-button,
.dacart-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

.dacart-remove{
  display:inline-flex;align-items:center;gap:5px;
  background:none;border:0;
  font-size:var(--da-fs-xs);
  color:var(--da-text-3);
  transition:color var(--da-t);
}
.dacart-remove:hover{color:var(--da-sale)}
.dacart-remove .da-ico{width:14px;height:14px}

.dacart-summary{
  position:sticky;
  top:calc(var(--da-header-h) + 16px);
  background:var(--da-bg-warm);
  border:1px solid var(--da-border);
  border-radius:var(--da-r-lg);
  padding:var(--da-5);
}
.dacart-summary__title{
  font-size:var(--da-fs-lg);font-weight:800;
  margin:0 0 var(--da-4);
  padding-bottom:var(--da-3);
  border-bottom:1px solid var(--da-border);
}
.dacart-summary__row{
  display:flex;align-items:center;justify-content:space-between;
  gap:var(--da-3);
  padding-block:8px;
  font-size:var(--da-fs-sm);
  color:var(--da-text-2);
}
.dacart-summary__row--total{
  margin-top:var(--da-3);
  padding-top:var(--da-4);
  border-top:2px solid var(--da-ink);
  font-size:var(--da-fs-xl);
  font-weight:900;
  color:var(--da-ink);
}
.dacart-summary .da-btn{margin-top:var(--da-4)}
.dacart-summary .da-paylogos{justify-content:center;margin-top:var(--da-4)}

.dacart-empty{
  text-align:center;
  padding:var(--da-9) var(--da-4);
  border:1px dashed var(--da-border-strong);
  border-radius:var(--da-r-lg);
  background:var(--da-bg-warm);
}
.dacart-empty .da-ico{width:48px;height:48px;color:var(--da-text-3);margin-bottom:var(--da-4)}

.dacart-suggest{margin-top:var(--da-7)}
.dacart-suggest .da-h3{margin-bottom:var(--da-4)}

/* Cart actions */
.dacart-actions{
  display:flex;align-items:center;justify-content:space-between;
  gap:var(--da-4);flex-wrap:wrap;
  margin-top:var(--da-4);
}
.dacart-coupon{display:flex;gap:var(--da-2);flex:1;min-width:260px}
.dacart-coupon input{
  flex:1;min-width:0;min-height:50px;
  padding:0 var(--da-3);
  border:1px solid var(--da-border-strong);
  border-radius:var(--da-r-md);
  font-family:inherit;font-size:var(--da-fs-sm);
  background:#fff;
}
.dacart-coupon input:focus{border-color:var(--da-gold);outline:none;box-shadow:0 0 0 3px rgba(200,146,42,.18)}
.dacart-coupon .da-btn{min-height:50px;padding-inline:22px}

.dacart-update{
  display:inline-flex;align-items:center;gap:7px;
  min-height:50px;padding:0 20px;
  background:transparent;
  border:1px solid var(--da-border-strong);
  border-radius:var(--da-r-pill);
  font-size:var(--da-fs-sm);font-weight:700;
  color:var(--da-text-2);
  transition:border-color var(--da-t),color var(--da-t);
}
.dacart-update:hover{border-color:var(--da-ink);color:var(--da-ink)}
.dacart-update .da-ico{width:15px;height:15px}

.dacart-continue{
  display:inline-flex;align-items:center;gap:7px;
  min-height:44px;
  margin-top:var(--da-5);
  font-size:var(--da-fs-sm);font-weight:800;
  color:var(--da-gold-text);
}
.dacart-continue .da-ico{width:15px;height:15px;transition:transform var(--da-t)}
.dacart-continue:hover .da-ico{transform:translateX(-4px)}

/* Summary extras */
.dacart-summary__row--coupon strong{color:var(--da-success)}
.dacart-summary .woocommerce-shipping-totals,
.dacart-summary .shipping{
  display:flex;align-items:flex-start;justify-content:space-between;
  gap:var(--da-3);
  padding-block:8px;
  font-size:var(--da-fs-sm);
  color:var(--da-text-2);
  border:0;
}
.dacart-summary .woocommerce-shipping-methods{list-style:none;margin:0;padding:0;text-align:end}
.dacart-summary .woocommerce-Price-amount{font-weight:800;color:var(--da-ink)}
.dacart-summary .woocommerce-shipping-destination{
  font-size:var(--da-fs-xs);color:var(--da-text-3);margin:4px 0 0;
}
.dacart-summary .shipping-calculator-button{font-size:var(--da-fs-xs);color:var(--da-gold-text)}

.dacart-assure{
  list-style:none;margin:var(--da-4) 0 0;padding:var(--da-4) 0 0;
  border-top:1px solid var(--da-border);
  display:flex;flex-direction:column;gap:10px;
}
.dacart-assure li{
  display:flex;align-items:center;gap:8px;
  font-size:var(--da-fs-xs);
  color:var(--da-text-2);
}
.dacart-assure .da-ico{width:15px;height:15px;color:var(--da-gold-text);flex:0 0 auto}

/* WooCommerce notices inside our surfaces */
.da-scope .woocommerce-message,
.da-scope .woocommerce-info,
.da-scope .woocommerce-error{
  list-style:none;
  margin:0 0 var(--da-4);
  padding:var(--da-3) var(--da-4);
  border-radius:var(--da-r-md);
  font-size:var(--da-fs-sm);
  border:1px solid transparent;
}
.da-scope .woocommerce-message{background:var(--da-success-bg);color:#14532d;border-color:#bfe6cc}
.da-scope .woocommerce-info{background:var(--da-bg-warm);color:var(--da-text-2);border-color:var(--da-border)}
.da-scope .woocommerce-error{background:var(--da-sale-bg);color:#7f1d1d;border-color:#f3c7c4}
.da-scope .woocommerce-message .button,
.da-scope .woocommerce-error .button{
  display:inline-flex;align-items:center;
  min-height:38px;padding:0 16px;margin-inline-start:var(--da-3);
  border-radius:var(--da-r-pill);
  background:var(--da-ink);color:#fff;
  font-size:var(--da-fs-xs);font-weight:800;
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media(max-width:960px){
  .dacart__layout{grid-template-columns:1fr}
  .dacart-summary{position:static}
}
@media(max-width:860px){
  .dashop-toolbar{top:0}
  body.admin-bar .dashop-toolbar{top:46px}
  .dashop-assure{grid-template-columns:1fr}
}
@media(max-width:560px){
  .dacart-item{
    grid-template-columns:76px 1fr;
    gap:var(--da-3);
  }
  .dacart-item__img{width:76px;height:76px}
  .dacart-item__side{
    grid-column:1 / -1;
    flex-direction:row;align-items:center;justify-content:space-between;
    width:100%;
  }
  .dashop-toolbar__in{gap:var(--da-2)}
  .dashop-sort{width:100%}
  .dashop-sort select{flex:1}
}
