.zuva-checkout-shell,.zuva-orders-shell,.zuva-order-success{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:clamp(140px,15vw,200px) 0 110px}.zuva-checkout-heading,.zuva-orders-heading{text-align:center;margin-bottom:38px}.zuva-checkout-heading h1,.zuva-orders-heading h1,.zuva-order-success h1{font-family:"Cormorant Garamond",Georgia,serif;font-size:clamp(48px,7vw,78px);font-weight:400;line-height:.95;margin:8px 0}.zuva-app-checkout-form{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:40px}.zuva-fulfillment-options{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0;padding:0;border:0}.zuva-fulfillment-options legend{width:100%;margin-bottom:10px;font-family:Cinzel,Georgia,serif;font-size:12px;letter-spacing:.18em;text-transform:uppercase}.zuva-fulfillment-options label{display:block;cursor:pointer}.zuva-fulfillment-options input{position:absolute;opacity:0}.zuva-fulfillment-options label span{display:flex;flex-direction:column;gap:6px;min-height:90px;padding:20px;border:1px solid rgba(33,26,22,.18);background:#fff}.zuva-fulfillment-options label b{font-family:Cinzel,Georgia,serif;font-size:14px;letter-spacing:.13em;text-transform:uppercase}.zuva-fulfillment-options label small{color:#786e64}.zuva-fulfillment-options input:checked+span{color:#fff;background:#181411;border-color:#181411}.zuva-checkout-grid{display:grid;gap:18px}.zuva-checkout-grid label{display:grid;gap:7px}.zuva-checkout-grid label>span{font-family:Cinzel,Georgia,serif;font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}.zuva-checkout-grid input,.zuva-checkout-grid select,.zuva-checkout-grid textarea{box-sizing:border-box;width:100%;min-height:54px;padding:14px 16px;border:1px solid rgba(33,26,22,.18);border-radius:0;background:#fff;font:16px Inter,sans-serif}.zuva-delivery-fields{display:grid;gap:18px}.zuva-delivery-fields[hidden]{display:none}.zuva-checkout-summary{align-self:start;padding:28px;background:#fff;border:1px solid rgba(33,26,22,.12)}.zuva-checkout-summary h2{font-family:"Cormorant Garamond",Georgia,serif;font-size:34px;font-weight:400;margin:0 0 20px}.zuva-checkout-summary p{display:flex;justify-content:space-between;gap:20px;padding:11px 0;margin:0;border-bottom:1px solid rgba(33,26,22,.1)}.zuva-checkout-summary .zuva-checkout-total{font-size:18px;border:0;padding-top:20px}.zuva-app-checkout-form>.zuva-form-message,.zuva-app-checkout-form>.zuva-primary-action{grid-column:1}.zuva-app-checkout-form>.zuva-primary-action{width:100%;border:0;cursor:pointer}.zuva-orders-heading button{padding:10px 16px;border:1px solid rgba(33,26,22,.2);background:transparent;font-family:Cinzel,Georgia,serif;letter-spacing:.12em;text-transform:uppercase}.zuva-orders-list{display:grid;gap:18px}.zuva-order-card{padding:24px;background:#fff;border:1px solid rgba(33,26,22,.12)}.zuva-order-card header{display:flex;justify-content:space-between;gap:20px}.zuva-order-card header span{font-family:Cinzel,Georgia,serif;font-size:11px;letter-spacing:.15em;text-transform:uppercase}.zuva-order-card h3{font-family:"Cormorant Garamond",Georgia,serif;font-size:34px;font-weight:400;margin:4px 0}.zuva-order-meta,.zuva-order-items{color:#786e64}.zuva-order-progress{display:flex;list-style:none;padding:20px 0 10px;margin:0;overflow:auto}.zuva-order-progress li{position:relative;flex:1;min-width:92px;text-align:center;color:#9d958d;font-size:11px}.zuva-order-progress li:before{content:"";position:absolute;top:8px;left:-50%;width:100%;height:2px;background:#ded7cf}.zuva-order-progress li:first-child:before{display:none}.zuva-order-progress i{position:relative;z-index:1;display:block;width:18px;height:18px;margin:0 auto 8px;border-radius:50%;background:#ded7cf}.zuva-order-progress li.is-complete{color:#ad4c2d}.zuva-order-progress li.is-complete:before,.zuva-order-progress li.is-complete i{background:#ad4c2d}.zuva-order-success{text-align:center}.zuva-order-success>span{display:grid;place-items:center;width:82px;height:82px;margin:0 auto 22px;border-radius:50%;color:#fff;background:#4f6b45;font-size:42px}.zuva-order-success .zuva-primary-action{display:inline-flex;margin-top:20px}.zuva-admin-card{box-sizing:border-box}
@media(max-width:782px){.zuva-checkout-shell,.zuva-orders-shell,.zuva-order-success{width:min(100% - 28px,720px);padding-top:130px;padding-bottom:100px}.zuva-app-checkout-form{grid-template-columns:1fr;gap:24px}.zuva-fulfillment-options{grid-template-columns:1fr}.zuva-checkout-summary{grid-row:auto}.zuva-app-checkout-form>.zuva-form-message,.zuva-app-checkout-form>.zuva-primary-action{grid-column:1}.zuva-order-card{padding:18px}.zuva-order-card h3{font-size:29px}}


/* ZUVA 4.1 — stable mobile order tracking and confirmation */
.zuva-orders-shell{box-sizing:border-box;overflow-x:hidden}
.zuva-orders-list,.zuva-order-card{box-sizing:border-box;width:100%;max-width:100%;min-width:0}
.zuva-order-card header{align-items:flex-start}
.zuva-order-success{
  box-sizing:border-box;
  max-width:760px;
  min-height:calc(100vh - 160px);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.zuva-order-success-icon{
  display:grid!important;
  place-items:center;
  width:86px!important;
  height:86px!important;
  margin:0 auto 24px!important;
  border-radius:50%;
  color:#fff;
  background:#4f6b45;
  font-size:44px;
  box-shadow:0 18px 45px rgba(79,107,69,.22);
}
.zuva-order-success>p{max-width:560px;margin:10px auto;color:#786e64;font-size:17px;line-height:1.7}
.zuva-success-summary{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  width:min(520px,100%);
  margin:28px auto 0;
  border:1px solid rgba(33,26,22,.12);
  background:#fff;
}
.zuva-success-summary span{display:grid;gap:6px;padding:18px}
.zuva-success-summary span+span{border-left:1px solid rgba(33,26,22,.1)}
.zuva-success-summary small{color:#786e64;font-family:Cinzel,Georgia,serif;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.zuva-success-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:26px}
.zuva-success-actions .zuva-primary-action,.zuva-success-actions .zuva-secondary-action{min-width:190px}

@media(max-width:782px){
  .zuva-orders-shell{width:calc(100% - 28px)!important;margin:0 auto!important;padding-top:130px!important;padding-bottom:110px!important}
  .zuva-orders-heading{margin-bottom:24px}
  .zuva-orders-heading h1{font-size:48px!important}
  .zuva-order-card{padding:18px 16px!important;overflow:hidden}
  .zuva-order-card header{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:10px}
  .zuva-order-card header span{white-space:nowrap}
  .zuva-order-progress{display:flex!important;width:100%;overflow:hidden!important}
  .zuva-order-progress li{min-width:0!important;padding:0 2px;font-size:9px!important;overflow-wrap:anywhere}
  .zuva-order-progress i{width:16px;height:16px}
  .zuva-order-success{width:calc(100% - 28px)!important;min-height:calc(100dvh - 160px);padding-top:130px!important;padding-bottom:120px!important}
  .zuva-order-success h1{font-size:48px!important}
  .zuva-order-success>p{font-size:15px}
  .zuva-success-summary{grid-template-columns:1fr}
  .zuva-success-summary span+span{border-left:0;border-top:1px solid rgba(33,26,22,.1)}
  .zuva-success-actions{width:100%}
  .zuva-success-actions a{width:100%}
}

/* ========================================================================
   ZUVA Mobile API 4.2 — professional orders and confirmation on phones
   ======================================================================== */
body,
.wp-site-blocks,
.zuva-orders-shell,
.zuva-order-success {
  max-width: 100%;
  overflow-x: clip;
}

.zuva-orders-shell {
  box-sizing: border-box;
  width: min(840px, calc(100% - 32px));
  max-width: 840px;
  margin: 0 auto;
  padding: calc(var(--zuva-live-header-height, 94px) + 54px) 0 120px;
}
.zuva-orders-heading {
  margin: 0 0 24px;
  padding: clamp(26px, 5vw, 44px);
  text-align: center;
  background: linear-gradient(145deg, rgba(255,255,255,.7), rgba(255,255,255,.4));
  border: 1px solid rgba(33,26,22,.1);
  box-shadow: 0 20px 60px rgba(25,18,12,.05);
}
.zuva-orders-heading h1 {
  margin: 5px 0 18px;
  font-size: clamp(48px, 8vw, 72px);
  line-height: .95;
}
.zuva-orders-heading button {
  min-height: 44px;
  padding: 0 18px;
  color: #211a16;
  background: transparent;
  border: 1px solid rgba(33,26,22,.25);
  cursor: pointer;
}

.zuva-orders-list {
  display: grid;
  gap: 16px;
  width: 100%;
  min-width: 0;
}
.zuva-order-card {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  padding: clamp(20px, 4vw, 30px);
  background: rgba(255,255,255,.8);
  border: 1px solid rgba(33,26,22,.11);
  box-shadow: 0 18px 50px rgba(25,18,12,.05);
  overflow: hidden;
}
.zuva-order-card-header {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: start;
  gap: 14px;
}
.zuva-order-card-title {
  min-width: 0;
}
.zuva-order-card-title > span {
  display: block;
  color: #ad4c2d;
  font-family: Cinzel, Georgia, serif;
  font-size: 10px;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.zuva-order-card h3 {
  margin: 5px 0 6px;
  font-size: 34px;
  line-height: 1;
}
.zuva-order-meta {
  margin: 0;
  color: #786e64;
  font-size: 13px;
}
.zuva-order-total {
  white-space: nowrap;
  color: #211a16;
  font-size: 15px;
}

.zuva-order-progress {
  --zuva-step-count: 5;
  --zuva-progress: 0%;
  position: relative;
  display: grid !important;
  grid-template-columns: repeat(var(--zuva-step-count), minmax(0,1fr));
  gap: 0;
  width: 100%;
  margin: 24px 0 16px;
  padding: 0;
  list-style: none;
  overflow: visible !important;
}
.zuva-order-progress::before,
.zuva-order-progress::after {
  content: "";
  position: absolute;
  top: 9px;
  left: calc(50% / var(--zuva-step-count));
  height: 2px;
}
.zuva-order-progress::before {
  right: calc(50% / var(--zuva-step-count));
  background: #ddd6ce;
}
.zuva-order-progress::after {
  width: calc((100% - (100% / var(--zuva-step-count))) * var(--zuva-progress) / 100);
  max-width: calc(100% - (100% / var(--zuva-step-count)));
  background: #ad4c2d;
}
.zuva-order-progress li {
  position: relative;
  z-index: 1;
  min-width: 0 !important;
  padding: 0 2px;
  color: #a39a91;
  font-size: 10px;
  line-height: 1.25;
  text-align: center;
  overflow-wrap: anywhere;
}
.zuva-order-progress li::before {
  display: none !important;
}
.zuva-order-progress i {
  display: block;
  width: 18px;
  height: 18px;
  margin: 0 auto 9px;
  background: #ddd6ce;
  border: 3px solid rgba(255,255,255,.95);
  border-radius: 50%;
  box-shadow: 0 0 0 1px #ddd6ce;
}
.zuva-order-progress li.is-complete {
  color: #ad4c2d;
}
.zuva-order-progress li.is-complete i {
  background: #ad4c2d;
  box-shadow: 0 0 0 1px #ad4c2d;
}
.zuva-order-progress li.is-current i {
  box-shadow: 0 0 0 4px rgba(173,76,45,.16), 0 0 0 1px #ad4c2d;
}
.zuva-order-items {
  color: #655c54;
  font-size: 13px;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.zuva-order-success {
  box-sizing: border-box;
  width: min(720px, calc(100% - 32px));
  min-height: calc(100dvh - 140px);
  margin: 0 auto;
  padding: calc(var(--zuva-live-header-height, 94px) + 40px) 0 120px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.zuva-order-success-icon {
  display: grid !important;
  place-items: center;
  width: 92px !important;
  height: 92px !important;
  margin: 0 auto 24px !important;
  color: #fff;
  background: #4f6b45;
  border-radius: 50%;
  font-size: 46px;
  box-shadow: 0 20px 55px rgba(79,107,69,.24);
  animation: zuva-confirm-pop .7s cubic-bezier(.22,1,.36,1) both;
}
.zuva-order-success h1 {
  margin: 5px 0 12px;
  font-size: clamp(48px, 8vw, 72px);
  line-height: .95;
}
.zuva-order-success > p:not(.zuva-account-eyebrow) {
  max-width: 570px;
  color: #786e64;
  font-size: 16px;
  line-height: 1.7;
}
.zuva-success-summary {
  width: min(520px,100%);
}
@keyframes zuva-confirm-pop {
  from { opacity: 0; transform: scale(.72); }
  to { opacity: 1; transform: scale(1); }
}

@media (max-width: 782px) {
  .zuva-orders-shell {
    width: 100% !important;
    max-width: 100% !important;
    padding: calc(var(--zuva-live-header-height, 92px) + 20px) 14px 112px !important;
  }
  .zuva-orders-heading {
    padding: 28px 18px;
  }
  .zuva-orders-heading h1 {
    font-size: 48px !important;
  }
  .zuva-order-card {
    padding: 18px 15px !important;
  }
  .zuva-order-card-header {
    grid-template-columns: minmax(0,1fr) auto !important;
  }
  .zuva-order-card h3 {
    font-size: 30px !important;
  }
  .zuva-order-total {
    font-size: 13px;
  }
  .zuva-order-progress {
    margin-top: 22px;
  }
  .zuva-order-progress li {
    font-size: 8.5px !important;
  }
  .zuva-order-progress i {
    width: 16px;
    height: 16px;
    margin-bottom: 7px;
  }
  .zuva-order-progress::before,
  .zuva-order-progress::after {
    top: 8px;
  }
  .zuva-order-success {
    width: 100% !important;
    max-width: 100% !important;
    min-height: calc(100dvh - 110px);
    padding: calc(var(--zuva-live-header-height, 92px) + 24px) 14px 112px !important;
  }
  .zuva-order-success h1 {
    font-size: 48px !important;
  }
  .zuva-success-actions {
    display: grid !important;
    grid-template-columns: 1fr;
    width: 100%;
  }
  .zuva-success-actions a {
    width: 100% !important;
    box-sizing: border-box;
  }
}

/* ========================================================================
   ZUVA Mobile API 4.3 — currency component and confirmation surface
   ======================================================================== */
.zuva-money {
  display: inline-flex;
  align-items: baseline;
  gap: .34em;
  white-space: nowrap;
  direction: ltr;
}
.zuva-money .zuva-sar-mark,
.zuva-sar-mark {
  display: inline-block;
  flex: 0 0 .78em;
  width: .78em;
  min-width: .78em;
  height: .9em;
  color: inherit;
  background-color: currentColor;
  -webkit-mask: url("../images/saudi-riyal-symbol.svg") center / contain no-repeat;
  mask: url("../images/saudi-riyal-symbol.svg") center / contain no-repeat;
  vertical-align: -.08em;
}
.zuva-money .woocommerce-Price-amount { display: inline; }

/* Reuse the cart surface instead of introducing a new white confirmation card. */
html.zuva-pwa-standalone .zuva-order-success,
html.zuva-pwa-standalone .zuva-order-success .zuva-success-summary,
html.zuva-pwa-standalone .zuva-order-success .zuva-success-summary > span {
  background: var(--zuva-cart-surface, #fdfbf6) !important;
}
html.zuva-pwa-standalone .zuva-order-success .zuva-success-summary {
  overflow: hidden;
}

/* ZUVA 6.0 — complete dynamic WooCommerce category navigation. */
body.zuva-universal-theme .zuva-category-filters-dynamic {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    width: min(1240px, 100%);
    margin: 28px auto 0;
    padding: 0;
}
body.zuva-universal-theme .zuva-category-filters-dynamic .wp-block-button {
    flex: 0 0 auto;
    margin: 0;
}
body.zuva-universal-theme .zuva-category-filters-dynamic .wp-block-button__link {
    min-height: 42px;
    padding: 0 17px !important;
    border: 1px solid var(--zuva-border, #dacbb9) !important;
    background: rgba(255,255,255,.72) !important;
    color: rgba(40,37,31,.72) !important;
    font-size: .62rem;
    white-space: nowrap;
}
body.zuva-universal-theme .zuva-category-filters-dynamic .wp-block-button__link:hover,
body.zuva-universal-theme .zuva-category-filters-dynamic .wp-block-button__link:focus-visible {
    border-color: var(--zuva-olive, #5e713c) !important;
    color: var(--zuva-olive-deep, #37491e) !important;
}
body.zuva-universal-theme .zuva-category-filters-dynamic .wp-block-button.is-active .wp-block-button__link,
body.zuva-universal-theme .zuva-category-filters-dynamic .wp-block-button__link[aria-current="page"] {
    border-color: var(--zuva-olive-deep, #37491e) !important;
    background: var(--zuva-olive-deep, #37491e) !important;
    color: #fff !important;
    box-shadow: 0 8px 22px rgba(55,73,30,.18);
}
@media (max-width: 782px) {
    body.zuva-universal-theme .zuva-category-filters-dynamic {
        justify-content: flex-start;
        flex-wrap: nowrap;
        width: calc(100vw - 24px);
        max-width: none;
        margin-top: 22px;
        padding: 2px 2px 8px;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-snap-type: x proximity;
        overscroll-behavior-inline: contain;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }
    body.zuva-universal-theme .zuva-category-filters-dynamic::-webkit-scrollbar { display: none; }
    body.zuva-universal-theme .zuva-category-filters-dynamic .wp-block-button { scroll-snap-align: start; }
    body.zuva-universal-theme .zuva-category-filters-dynamic .wp-block-button__link {
        min-height: 44px;
        padding-inline: 16px !important;
    }
}
