/* Cart drawer (slide-over). Loaded on every storefront page except the cart and checkout pages themselves. */

body.fis-on.fis-on .fis-drawer{position:fixed;top:0;right:0;bottom:0;z-index:2147483000;display:flex;flex-direction:column;width:min(100vw,440px);background:#fff;color:var(--fis-text);box-shadow:var(--fis-shadow-lg);transform:translateX(104%);visibility:hidden;transition:transform .28s ease,visibility 0s linear .28s}
body.fis-on.fis-on .fis-drawer.is-open{transform:none;visibility:visible;transition:transform .28s ease}
body.fis-on.fis-on .fis-drawer:focus{outline:none}
body.fis-on.fis-on .fis-drawer__inner{display:flex;flex-direction:column;flex:1;min-height:0;transition:opacity .15s}
body.fis-on.fis-on .fis-drawer.is-busy .fis-drawer__inner{opacity:.55;pointer-events:none}
body.fis-on.fis-on.admin-bar .fis-drawer{top:32px}
@media(max-width:782px){body.fis-on.fis-on.admin-bar .fis-drawer{top:46px}}

body.fis-on.fis-on .fis-drawer__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 10px 10px 20px;border-bottom:1px solid var(--fis-line)}
body.fis-on.fis-on .fis-drawer__head h2{display:flex;align-items:center;gap:10px;font-size:26px;letter-spacing:.06em}
body.fis-on.fis-on .fis-drawer__count{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 7px;border-radius:99px;background:var(--fis-olive);color:#fff;font:700 12.5px/1 var(--fis-font);letter-spacing:0}
body.fis-on.fis-on .fis-drawer__scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 20px 8px}
body.fis-on.fis-on .fis-drawer__foot{padding:14px 20px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--fis-line);background:#fff;box-shadow:0 -10px 24px rgba(12,12,12,.06)}
body.fis-on.fis-on .fis-drawer__msg{margin:14px 0 0;padding:10px 12px;border-left:3px solid var(--fis-red);border-radius:var(--fis-r);background:var(--fis-red-l);color:#5E140C;font-size:14px;line-height:1.45}
body.fis-on.fis-on .fis-drawer__empty{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:40px 24px;text-align:center;color:var(--fis-muted)}
body.fis-on.fis-on .fis-drawer__empty svg{color:var(--fis-line)}
body.fis-on.fis-on .fis-drawer__empty p{margin:0;font-size:17px;color:var(--fis-ink)}

/* Free shipping progress */
body.fis-on.fis-on .fis-ship{margin:16px 0 4px;padding:12px 14px;border:1px solid var(--fis-line-2);border-radius:var(--fis-r-lg);background:var(--fis-bg)}
body.fis-on.fis-on .fis-ship__text{display:flex;align-items:center;gap:10px;margin:0 0 9px;font-size:14px;line-height:1.4;color:var(--fis-text)}
body.fis-on.fis-on .fis-ship__text svg{flex:none;color:var(--fis-olive)}
body.fis-on.fis-on .fis-ship__bar{height:6px;border-radius:99px;background:#D5D5D5;overflow:hidden}
body.fis-on.fis-on .fis-ship__bar i{display:block;height:100%;border-radius:inherit;background:var(--fis-olive);transition:width .35s ease}
body.fis-on.fis-on .fis-ship.is-done .fis-ship__bar i{background:var(--fis-green)}

/* Line items */
body.fis-on.fis-on .fis-items{margin:0;padding:0;list-style:none}
body.fis-on.fis-on .fis-item{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;padding:16px 0;margin:0;border-bottom:1px solid var(--fis-line-2)}
body.fis-on.fis-on .fis-item__img{display:block;aspect-ratio:1/1;border:1px solid var(--fis-line-2);border-radius:var(--fis-r);background:#fff;overflow:hidden}
body.fis-on.fis-on .fis-item__img img{display:block;width:100%;height:100%;object-fit:contain;padding:3px}
body.fis-on.fis-on .fis-item__main{min-width:0}
body.fis-on.fis-on .fis-item__name{display:block;font:600 15px/1.35 var(--fis-font);color:var(--fis-ink);overflow-wrap:anywhere}
body.fis-on.fis-on .fis-item__name a{color:inherit;text-decoration:none}
body.fis-on.fis-on .fis-item__name a:hover{text-decoration:underline}
body.fis-on.fis-on .fis-item__main dl.variation{margin:3px 0 0;font-size:12.5px;color:var(--fis-muted)}
body.fis-on.fis-on .fis-item__main dl.variation dt,body.fis-on.fis-on .fis-item__main dl.variation dd{display:inline;margin:0}
body.fis-on.fis-on .fis-item__main dl.variation dd p{display:inline;margin:0}
body.fis-on.fis-on .fis-item__unit{margin-top:2px;font-size:13px;color:var(--fis-muted)}
body.fis-on.fis-on .fis-item__row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-top:10px}
body.fis-on.fis-on .fis-item__row .fis-qty{height:38px}
body.fis-on.fis-on .fis-item__row .fis-qty button{width:34px}
body.fis-on.fis-on .fis-item__row .fis-qty input{width:38px;font-size:15px}
body.fis-on.fis-on .fis-item__row .fis-link{font-size:13px;color:var(--fis-muted)}
body.fis-on.fis-on .fis-item__row .fis-link:hover{color:var(--fis-red)}
body.fis-on.fis-on .fis-item__total{margin-left:auto;font:700 16px/1 var(--fis-font);color:var(--fis-ink)}

/* Cross-sells chosen in WooCommerce > Linked products */
body.fis-on.fis-on .fis-upsell{margin:18px 0 8px}
body.fis-on.fis-on .fis-upsell__title{margin:0 0 10px;font-size:19px;letter-spacing:.08em}
body.fis-on.fis-on .fis-upsell__row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(132px,1fr);gap:10px;overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity}
body.fis-on.fis-on .fis-mini{display:flex;flex-direction:column;gap:6px;padding:10px;border:1px solid var(--fis-line-2);border-radius:var(--fis-r-lg);background:#fff;scroll-snap-align:start}
body.fis-on.fis-on .fis-mini__img{display:block;aspect-ratio:1/1;border-radius:var(--fis-r);overflow:hidden;background:#fff}
body.fis-on.fis-on .fis-mini__img img{display:block;width:100%;height:100%;object-fit:contain}
body.fis-on.fis-on .fis-mini__name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--fis-ink);font:600 13px/1.3 var(--fis-font);text-decoration:none}
body.fis-on.fis-on .fis-mini__price{font:700 14px/1.2 var(--fis-font);color:var(--fis-ink)}
body.fis-on.fis-on .fis-mini__price del{color:var(--fis-muted);font-weight:500;font-size:12px}
body.fis-on.fis-on .fis-mini__price ins{text-decoration:none}
body.fis-on.fis-on .fis-mini .fis-btn{margin-top:auto}

/* Totals */
body.fis-on.fis-on .fis-totals{margin:0 0 10px}
body.fis-on.fis-on .fis-totals>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:4px 0;font-size:14.5px;color:var(--fis-text)}
body.fis-on.fis-on .fis-totals dt{margin:0;font-weight:500}
body.fis-on.fis-on .fis-totals dd{margin:0;font-weight:600;color:var(--fis-ink);text-align:right}
body.fis-on.fis-on .fis-totals__save dd,body.fis-on.fis-on .fis-totals__save dt{color:var(--fis-green)}
body.fis-on.fis-on .fis-totals__coupon dd{color:var(--fis-green)}
body.fis-on.fis-on .fis-totals__coupon .fis-link{margin-left:6px;font-size:12.5px;color:var(--fis-muted)}
body.fis-on.fis-on .fis-totals__grand{margin-top:6px;padding-top:12px!important;border-top:1px solid var(--fis-line)}
body.fis-on.fis-on .fis-totals__grand dt{font:700 20px/1.1 var(--fis-head);letter-spacing:.07em;text-transform:uppercase;color:var(--fis-ink)}
body.fis-on.fis-on .fis-totals__grand dd{font:700 22px/1.1 var(--fis-font)}
body.fis-on.fis-on .fis-fine{margin:0 0 10px;font-size:12.5px;color:var(--fis-muted)}

/* Discount code box (drawer, and the same pattern on the cart page) */
body.fis-on.fis-on .fis-coupon{margin:0 0 12px}
body.fis-on.fis-on .fis-coupon__toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:42px;padding:8px 12px;border:1px dashed var(--fis-line);border-radius:var(--fis-r);background:var(--fis-bg);color:var(--fis-ink);font:600 14px/1.3 var(--fis-font);text-align:left;cursor:pointer;white-space:normal}
body.fis-on.fis-on .fis-coupon__toggle:hover,body.fis-on.fis-on .fis-coupon__toggle:focus{background:var(--fis-bg-2);color:var(--fis-ink);border-color:var(--fis-olive)}
body.fis-on.fis-on .fis-coupon__toggle[aria-expanded=true] svg{transform:rotate(45deg)}
body.fis-on.fis-on .fis-coupon__row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:8px}
body.fis-on.fis-on .fis-coupon__row .fis-btn{min-height:44px}
body.fis-on.fis-on .fis-coupon__msg{margin:6px 0 0;min-height:0;font-size:13px;line-height:1.4}
body.fis-on.fis-on .fis-coupon__msg:empty{display:none}
body.fis-on.fis-on .fis-coupon__msg.is-err{color:var(--fis-red)}
body.fis-on.fis-on .fis-coupon__msg.is-ok{color:var(--fis-green)}

body.fis-on.fis-on .fis-viewcart{display:flex;justify-content:center;margin:12px auto 0}
body.fis-on.fis-on .fis-trust{margin:12px 0 0;padding:0;list-style:none}
body.fis-on.fis-on .fis-trust--row{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px}
body.fis-on.fis-on .fis-trust li{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:12px;line-height:1.4;color:var(--fis-muted)}
body.fis-on.fis-on .fis-trust li::before{content:"";flex:none;width:6px;height:6px;background:var(--fis-gold);clip-path:polygon(35% 0,100% 0,65% 100%,0 100%)}

@media(max-width:480px){
  body.fis-on.fis-on .fis-drawer{width:100vw}
  body.fis-on.fis-on .fis-drawer__scroll{padding-inline:16px}
  body.fis-on.fis-on .fis-drawer__foot{padding-inline:16px}
  body.fis-on.fis-on .fis-item{grid-template-columns:64px minmax(0,1fr);gap:12px}
}
