/* Royal BD - Cart Drawer (theme-level, no plugin) */
.royalbd-cart-overlay{
  position: fixed; inset: 0;
  background: rgba(0,0,0,.45);
  opacity: 0; visibility: hidden;
  transition: .25s;
  z-index: 99990;
}
.royalbd-cart-drawer{
  position: fixed; top: 0; right: -420px;
  width: min(420px, 92vw);
  height: 100vh;
  background: #fff;
  box-shadow: -10px 0 30px rgba(0,0,0,.15);
  z-index: 99999;
  transition: right .25s;
  display: flex;
  flex-direction: column;
}
.royalbd-cart-drawer.is-open{ right: 0; }
.royalbd-cart-overlay.is-open{ opacity: 1; visibility: visible; }

.royalbd-cart-drawer__head{
  display:flex; align-items:center; justify-content:space-between;
  padding: 14px 16px;
  border-bottom: 1px solid #eee;
}
.royalbd-cart-drawer__title{ font-size: 16px; font-weight: 700; margin:0; }
.royalbd-cart-drawer__close{
  border:none; background:#f2f2f2; width:34px; height:34px;
  border-radius: 999px; cursor:pointer; font-size: 18px;
  line-height: 34px;
}
.royalbd-cart-drawer__body{
  padding: 10px 16px;
  overflow:auto;
  flex: 1;
}
.royalbd-cart-drawer__foot{
  padding: 12px 16px;
  border-top: 1px solid #eee;
  display:flex; gap:10px;
}
.royalbd-cart-drawer__foot a{
  flex:1;
  text-align:center;
  padding: 10px 12px;
  border-radius: 10px;
  font-weight: 700;
  text-decoration:none;
}
.royalbd-cart-btn-cart{ background: var(--button-color, #5b2ad5); color: var(--button-text-color, #fff); }
.royalbd-cart-btn-checkout{ background: var(--button-hover-color, #3b1ea5); color: var(--button-text-color, #fff); }

/* Cart count badge (works with Elementor widget too) */
.mini-cart-widget .cart-count,
.royalbd-cart-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width: 18px;
  height: 18px;
  padding: 0 6px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  margin-left: 6px;
  background: var(--primary-color, #ff2d55);
  color: #fff;
}
