/* Tokens já existem no tema; aqui só garantimos tipografia e pequenos utilitários globais */
html, body{
  font-family: 'Montserrat', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;
}

/* Drawer básico (seu tema pode já ter) */
.mc-cartdrawer{ position: fixed; inset: 0; z-index: 9999; display: grid; grid-template-columns: 1fr auto; pointer-events: none; }
.mc-cartdrawer[aria-hidden="true"]{ display: none; }
.mc-cartdrawer.is-open{ pointer-events: auto; }
.mc-cartdrawer__overlay{ background: rgba(0,0,0,.35); }
.mc-cartdrawer__panel{ width: min(420px, 96vw); background:#fff; height: 100%; box-shadow: -20px 0 40px rgba(15,23,42,.12); outline: 0; }
.mc-cartdrawer__content{ display:flex; flex-direction: column; height:100%; }
.mc-cartdrawer__head{ display:flex; align-items:center; justify-content:space-between; padding:14px 16px; border-bottom:1px solid var(--mc-border); }
.mc-cartdrawer__body{ padding:14px 12px; overflow:auto; }
.mc-cartdrawer__close{ width:36px; height:36px; border-radius:999px; border:1px solid var(--mc-border); background:#fff; }

.mc-header .mc-action{ display:inline-flex; align-items:center; gap:8px; }
.mc-header .mc-cartbadge{ min-width:18px; height:18px; padding:0 6px; border-radius:999px; background:var(--mc-accent); color:#fff; font-size:12px; font-weight:800; display:inline-flex; align-items:center; justify-content:center; }
.sr-only{ position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
