/* ============ CUSTOM SHOE CHARM PRODUCT PAGE (/customize-shoe-charms/) ============
   Page-specific styles for page-customize-shoe-charms.php. Uses the theme's root tokens from style.css.
   Everything is scoped to .mrc-cb* so it cannot leak into other templates. */

.mrc-cb-page [hidden]{display:none!important}

/* The theme's global `html,body{overflow-x:hidden}` turns <body> into a scroll container, which stops
   position:sticky from working. On desktop, this page swaps that for overflow-x:clip (still clips sideways
   overflow, but is not a scroll container) so the gallery column can stick. The header is kept non-sticky
   here to match every other page at desktop widths. Mobile already uses clip in style.css. */
@supports (overflow-x:clip){
  @media (min-width:921px){
    html:has(.mrc-cb-section),
    html:has(.mrc-cb-section) body{overflow-x:clip}
    html:has(.mrc-cb-section) .site-header{position:relative;top:0}
  }
}

.mrc-cb-sr,
.mrc-cb-card-desc{
  position:absolute!important;
  width:1px;height:1px;
  margin:-1px;padding:0;
  overflow:hidden;clip:rect(0 0 0 0);
  white-space:nowrap;border:0;
}

/* ---------- Page frame ---------- */
.mrc-cb-section{
  --section-accent:var(--accent);
  padding:clamp(12px,2vw,24px) 0 clamp(28px,4vw,48px);
  scroll-margin-top:16px;
}
.mrc-cb-breadcrumb{margin:0 0 clamp(12px,1.6vw,18px)!important;font-size:13px}
.mrc-cb{position:relative;margin:0}
.mrc-cb .mrc-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.mrc-cb fieldset{min-width:0;margin:0;padding:0;border:0}
.mrc-cb legend{padding:0}

.mrc-cb-product{
  display:grid;
  grid-template-columns:minmax(0,5fr) minmax(0,6fr);
  gap:clamp(24px,3.6vw,52px);
  align-items:start;
}
.mrc-cb-media{position:sticky;top:20px;min-width:0}
.mrc-cb-media-inner{display:grid;gap:12px}
.mrc-cb-main{min-width:0;display:grid;gap:14px;align-content:start}

/* ---------- Notices ---------- */
.mrc-cb-notice-region:empty{display:none}
.mrc-cb-notice-region{margin-bottom:14px}
.mrc-cb-notice{
  display:flex;align-items:flex-start;gap:10px;
  padding:12px 14px;
  border-radius:var(--radius-md);
  border:1px solid;
  font-size:15px;font-weight:700;line-height:1.5;
}
.mrc-cb-notice::before{
  content:"";
  flex:0 0 18px;
  width:18px;height:18px;
  margin-top:2px;
  background:currentColor;
  -webkit-mask:var(--mrc-cb-notice-icon) center / 18px no-repeat;
  mask:var(--mrc-cb-notice-icon) center / 18px no-repeat;
}
.mrc-cb-notice.is-success{
  --mrc-cb-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm-1.4 14.2-4-4 1.4-1.4 2.6 2.6 5.6-5.6 1.4 1.4z'/%3E%3C/svg%3E");
  color:var(--accent);border-color:rgba(57,255,20,.45);background:rgba(57,255,20,.08);
}
.mrc-cb-notice.is-error{
  --mrc-cb-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm1 15h-2v-2h2zm0-4h-2V7h2z'/%3E%3C/svg%3E");
  color:#ff8a9d;border-color:rgba(255,51,85,.5);background:rgba(255,51,85,.1);
}
.mrc-cb-notice.is-info{
  --mrc-cb-notice-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm1 15h-2v-6h2zm0-8h-2V7h2z'/%3E%3C/svg%3E");
  color:#9fd0ff;border-color:rgba(46,156,255,.45);background:rgba(46,156,255,.08);
}

/* ---------- Gallery / live preview ---------- */
.mrc-cb-gallery{margin:0;min-width:0}
.mrc-cb-gallery-stage{
  position:relative;
  height:clamp(320px,56vh,540px);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  background:
    radial-gradient(circle at 50% 50%, rgba(46,156,255,.22), transparent 44%),
    radial-gradient(circle at 82% 14%, rgba(255,46,196,.18), transparent 32%),
    radial-gradient(circle at 14% 88%, rgba(57,255,20,.12), transparent 32%),
    repeating-linear-gradient(135deg, rgba(255,255,255,.025) 0 1px, transparent 1px 16px),
    var(--surface);
  box-shadow:var(--shadow-md);
  overflow:hidden;
}
.mrc-cb-gallery-stage::after{
  content:"";
  position:absolute;left:0;right:0;bottom:0;
  height:3px;
  background:var(--rainbow);
  opacity:.8;
}
.mrc-cb-gallery-tag{
  position:absolute;
  top:12px;left:12px;
  z-index:2;
  padding:6px 10px;
  border:1px solid var(--border-bright);
  border-radius:var(--radius-pill);
  background:rgba(10,10,10,.78);
  color:var(--text);
  font-family:var(--font-mono);
  font-size:11px;font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mrc-cb-gallery-slide{
  position:absolute;inset:0;
  display:grid;place-items:center;
  padding:clamp(20px,3.5vw,40px);
}
.mrc-cb-gallery-slide > img{
  width:auto;height:auto;
  max-width:92%;max-height:100%;
  filter:drop-shadow(0 26px 40px rgba(0,0,0,.55));
  animation:mrc-cb-float 6s ease-in-out infinite;
}
@keyframes mrc-cb-float{0%,100%{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-10px) rotate(1deg)}}
.mrc-cb-gallery-slide.is-active{animation:mrc-cb-fade var(--dur-slow) var(--ease)}
@keyframes mrc-cb-fade{from{opacity:0;transform:scale(.98)}to{opacity:1;transform:none}}
/* Crops the finished-charm panel (bottom right) out of the existing insert guide image. */
.mrc-cb-gallery-crop{
  position:relative;
  display:block;
  width:min(84%,420px);
  aspect-ratio:525 / 480;
  border-radius:var(--radius-lg);
  overflow:hidden;
  box-shadow:0 26px 48px rgba(0,0,0,.5);
}
.mrc-cb-gallery-crop img{
  position:absolute;
  left:-108.95%;top:-165%;
  width:213.71%;max-width:none;height:auto;
}
.mrc-cb-gallery-thumbs{
  display:flex;gap:8px;
  margin-top:10px;
  overflow-x:auto;
  scrollbar-width:none;
}
.mrc-cb-gallery-thumbs::-webkit-scrollbar{display:none}
.mrc-cb-gallery-thumb{
  flex:0 0 62px;
  display:grid;place-items:center;
  width:62px;height:62px;
  padding:4px;
  border:1px solid var(--border)!important;
  border-radius:var(--radius-md)!important;
  background:var(--surface)!important;
  color:var(--text-muted);
  font-size:12.5px;font-weight:700;
  text-align:left;
  transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease);
}
.mrc-cb-gallery-thumb > img,
.mrc-cb-gallery-crop-thumb,
.mrc-cb-gallery-thumb > .mrc-cb-design-preview{
  width:52px;height:52px;
  border-radius:9px;
  background:var(--surface-2);
  object-fit:contain;
}
.mrc-cb-gallery-crop-thumb{box-shadow:none;aspect-ratio:auto}
.mrc-cb-gallery-crop-thumb img{top:-146.7%}
.mrc-cb-gallery-thumb > .mrc-cb-design-preview{border-radius:9px}
.mrc-cb-gallery-thumb > span:last-child{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mrc-cb-gallery-thumb{position:relative}
.mrc-cb-gallery-thumb.is-live{border-style:dashed!important;border-color:var(--accent)!important}
.mrc-cb-gallery-thumb.is-live[aria-pressed="true"]{border-style:solid!important}
.mrc-cb-gallery-thumb:hover{border-color:var(--border-bright)!important;color:var(--text)}
.mrc-cb-gallery-thumb[aria-pressed="true"]{border-color:var(--accent)!important;color:var(--text)}
.mrc-cb-gallery-thumb:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.mrc-cb-gallery figcaption{
  margin-top:8px;
  color:var(--text-muted);
  font-size:12.5px;
  line-height:1.5;
}

/* Live artwork preview. A rough layout from the upload, never a production proof. */
.mrc-cb-live-preview{
  position:relative;
  display:grid;place-items:center;
  height:min(76%,360px);
  aspect-ratio:1 / 1;
  max-width:80%;
  margin-top:18px;
  transition:filter var(--dur-slow) var(--ease);
}
.mrc-cb-live-preview .mrc-cb-preview-art{
  width:100%;height:100%;
  box-shadow:0 26px 50px rgba(0,0,0,.55);
  transition:border-radius var(--dur-slow) var(--ease),height var(--dur-slow) var(--ease),width var(--dur-slow) var(--ease);
}
.mrc-cb-live-preview[data-finish="glow"]{filter:drop-shadow(0 0 26px rgba(57,255,20,.5))}
.mrc-cb-live-preview[data-finish="uv"]{filter:drop-shadow(-10px 0 26px rgba(255,46,196,.45)) drop-shadow(10px 0 26px rgba(46,156,255,.4))}

/* Shared shape masks for every preview size. */
.mrc-cb-design-preview{
  flex:0 0 52px;
  position:relative;
  display:grid;place-items:center;
  width:52px;height:52px;
  border:1px dashed var(--border-bright);
  border-radius:12px;
  background:
    linear-gradient(45deg,#1a1a1a 25%,transparent 25%,transparent 75%,#1a1a1a 75%) 0 0/10px 10px,
    linear-gradient(45deg,#1a1a1a 25%,transparent 25%,transparent 75%,#1a1a1a 75%) 5px 5px/10px 10px,
    var(--surface-2);
  overflow:hidden;
}
.mrc-cb-design-preview.has-art{border-style:solid}
.mrc-cb-preview-art{
  display:grid;place-items:center;
  width:78%;height:78%;
  overflow:hidden;
  background:#fff;
}
.mrc-cb-preview-art img{width:100%;height:100%;object-fit:contain;padding:9%}
.mrc-cb-preview-empty{width:24px;height:24px;border-radius:7px;border:2px solid var(--border-bright)}
.mrc-cb-preview-pdf{color:#2a1d00;font-family:var(--font-mono);font-size:10px;font-weight:800}
.mrc-cb-live-preview .mrc-cb-preview-pdf{font-size:28px}
:is(.mrc-cb-design-preview,.mrc-cb-live-preview)[data-shape="circle"] :is(.mrc-cb-preview-art,.mrc-cb-preview-empty){border-radius:50%}
:is(.mrc-cb-design-preview,.mrc-cb-live-preview)[data-shape="oval"] .mrc-cb-preview-art{height:62%;border-radius:50%}
:is(.mrc-cb-design-preview,.mrc-cb-live-preview)[data-shape="oval"] .mrc-cb-preview-empty{width:32px;height:20px;border-radius:50%}
:is(.mrc-cb-design-preview,.mrc-cb-live-preview)[data-shape="square"] .mrc-cb-preview-art{border-radius:16%}
:is(.mrc-cb-design-preview,.mrc-cb-live-preview)[data-shape="rectangle"] .mrc-cb-preview-art{height:56%;border-radius:12%}
:is(.mrc-cb-design-preview,.mrc-cb-live-preview)[data-shape="rectangle"] .mrc-cb-preview-empty{width:34px;height:18px;border-radius:6px}
:is(.mrc-cb-design-preview,.mrc-cb-live-preview)[data-shape="triangle"] .mrc-cb-preview-art{clip-path:polygon(50% 5%,97% 93%,3% 93%)}
:is(.mrc-cb-design-preview,.mrc-cb-live-preview)[data-shape="triangle"] .mrc-cb-preview-empty{border:0;border-radius:0;width:28px;height:24px;background:var(--border-bright);clip-path:polygon(50% 0,100% 100%,0 100%)}
:is(.mrc-cb-design-preview,.mrc-cb-live-preview)[data-shape="artwork"] .mrc-cb-preview-art{background:transparent;box-shadow:none}
:is(.mrc-cb-design-preview,.mrc-cb-live-preview)[data-shape="artwork"] .mrc-cb-preview-art img{
  object-fit:contain;
  padding:0;
  filter:drop-shadow(1.5px 0 0 #fff) drop-shadow(-1.5px 0 0 #fff) drop-shadow(0 1.5px 0 #fff) drop-shadow(0 -1.5px 0 #fff);
}
.mrc-cb-live-preview[data-shape="artwork"] .mrc-cb-preview-art img{
  filter:drop-shadow(4px 0 0 #fff) drop-shadow(-4px 0 0 #fff) drop-shadow(0 4px 0 #fff) drop-shadow(0 -4px 0 #fff) drop-shadow(0 24px 30px rgba(0,0,0,.55));
}
:is(.mrc-cb-design-preview,.mrc-cb-live-preview)[data-shape="artwork"] .mrc-cb-preview-empty{border-style:dashed;border-color:var(--pink);border-radius:40% 60% 55% 45%}

/* Live summary strip under the gallery (desktop). */
.mrc-cb-live{
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:var(--radius-md);
  background:var(--surface);
}
.mrc-cb-live-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px}
.mrc-cb-live-head strong{color:var(--text);font-size:14px}
.mrc-cb-live-head span{color:var(--text-muted);font-family:var(--font-mono);font-size:12px;font-weight:700}
.mrc-cb-live-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none}
.mrc-cb-live-chips li{
  display:grid;gap:2px;
  min-width:0;
  padding:7px 9px;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--surface-2);
  transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease);
}
.mrc-cb-live-chips span{color:var(--text-muted);font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.mrc-cb-live-chips strong{color:var(--text-muted);font-size:12.5px;font-weight:700;line-height:1.3;overflow-wrap:anywhere}
.mrc-cb-live-chips li.is-set{border-color:rgba(57,255,20,.4);background:rgba(57,255,20,.06)}
.mrc-cb-live-chips li.is-set strong{color:var(--text)}

/* ---------- Product head ---------- */
.mrc-cb-product-head{padding-bottom:6px}
.mrc-cb-title{
  margin:8px 0 0;
  font-family:var(--font-hero);
  font-weight:400;
  font-size:clamp(2.5rem,4.6vw,4.4rem);
  line-height:.92;
  letter-spacing:-.005em;
  text-transform:uppercase;
  color:var(--text);
}
.mrc-cb-rainbow-text{color:var(--accent)}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  .mrc-cb-rainbow-text{
    background:var(--rainbow);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    color:transparent;
  }
}
.mrc-cb-lede{margin:10px 0 0;max-width:52ch;color:var(--text-muted);font-size:1.0625rem;line-height:1.55}
.mrc-cb-pricebox{
  position:relative;
  display:grid;grid-template-columns:1fr 1fr;gap:4px 16px;
  margin-top:16px;
  padding:14px 16px 12px;
  border:1px solid var(--border-bright);
  border-radius:var(--radius-md);
  background:linear-gradient(180deg,rgba(255,255,255,.03),transparent),var(--surface);
  overflow:hidden;
}
.mrc-cb-pricebox::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--rainbow)}
.mrc-cb-pricebox .mrc-cb-price-row{display:grid;gap:3px}
.mrc-cb-pricebox .mrc-cb-price-label{color:var(--text-muted);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.mrc-cb-pricebox .mrc-cb-price-value{font-family:var(--font-display);font-size:1.45rem;font-weight:600;line-height:1.1;color:var(--text)}
.mrc-cb-pricebox [data-state="quote-required"] .mrc-cb-price-value{color:var(--gold)}
.mrc-cb-pricebox [data-state="unavailable"] .mrc-cb-price-value{color:var(--text-muted);font-size:1.1rem;padding-top:4px}
.mrc-cb-pricebox [data-state="available"] .mrc-cb-price-value,
.mrc-cb-pricebox [data-state="estimate"] .mrc-cb-price-value{color:var(--accent)}
.mrc-cb-pricebox .mrc-cb-price-note{grid-column:1 / -1;margin:6px 0 0;color:var(--text-muted);font-size:13px}
.mrc-cb-price-note a{color:var(--text);text-decoration:underline;text-underline-offset:2px}
.mrc-cb-perks{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:0;list-style:none}
.mrc-cb-perks li{
  display:inline-flex;align-items:center;gap:6px;
  padding:5px 10px;
  border:1px solid var(--border);
  border-radius:var(--radius-pill);
  color:var(--text-muted);
  font-size:12.5px;font-weight:700;
}
.mrc-cb-perks li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}

/* ---------- Path toggle ---------- */
.mrc-cb-paths > .mrc-cb-label{float:left;width:100%;margin-bottom:10px;font-family:var(--font-display);font-size:1.12rem;font-weight:600}
.mrc-cb-segment{clear:both;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.mrc-cb-seg{
  position:relative;
  display:grid;gap:2px;
  min-height:56px;
  padding:10px 14px;
  border:1px solid var(--border-bright);
  border-radius:var(--radius-md);
  background:var(--surface-2);
  cursor:pointer;
  transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease);
}
.mrc-cb-seg:hover{border-color:#555}
.mrc-cb-seg:has(input:checked){border-color:var(--accent);background:linear-gradient(180deg,rgba(57,255,20,.12),rgba(57,255,20,.03)),var(--surface-2);box-shadow:0 0 0 1px rgba(57,255,20,.35)}
.mrc-cb-seg:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}
.mrc-cb-seg-title{color:var(--text);font-size:14.5px;font-weight:800;line-height:1.25}
.mrc-cb-seg-sub{color:var(--text-muted);font-size:12.5px}
.mrc-cb-seg-sub[data-mrc-cb-sample-badge]{color:var(--gold);font-family:var(--font-mono);font-size:11.5px;font-weight:700}
.mrc-cb-path-note{margin:8px 0 0;color:var(--text-muted);font-size:12.5px}

/* ---------- Steps ---------- */
.mrc-cb .mrc-cb-step{
  position:relative;
  min-width:0;
  margin:0;
  padding:20px;
  border:1px solid var(--border);
  border-radius:20px;
  background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 60px),var(--surface);
}
.mrc-cb .mrc-cb-step.is-complete{border-color:rgba(57,255,20,.22)}
.mrc-cb-step-head{
  display:flex!important;
  align-items:center;
  flex-wrap:wrap;
  gap:6px 12px;
  width:100%;
  margin:0 0 14px;
}
.mrc-cb-options:has(> .mrc-cb-clear:not([hidden])) > .mrc-cb-step-head{padding-right:84px}
.mrc-cb-step-head:has(+ .mrc-cb-step-sub){margin-bottom:4px}
.mrc-cb-step-sub{margin:0 0 16px 40px;color:var(--text-muted);font-size:13.5px;line-height:1.5}
.mrc-cb-step-sub a{color:var(--text);text-decoration:underline;text-underline-offset:2px}
.mrc-cb-subgroup{margin-top:6px}
.mrc-cb-subgroup .mrc-cb-step-head{margin-bottom:10px;padding-right:0}
.mrc-cb-subgroup .mrc-cb-step-head .mrc-cb-label{margin:0}
.mrc-cb-step-num{
  flex:0 0 28px;
  display:grid;place-items:center;
  width:28px;height:28px;
  border:1px solid var(--border-bright);
  border-radius:50%;
  background:var(--surface-2);
  color:var(--text);
  font-family:var(--font-mono);
  font-size:12.5px;font-weight:700;
  transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease);
}
.mrc-cb-step.is-complete > .mrc-cb-step-head .mrc-cb-step-num,
.mrc-cb-step.is-complete > .mrc-cb-options > .mrc-cb-step-head .mrc-cb-step-num{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}
.mrc-cb-step-title{
  margin:0;
  color:var(--text);
  font-family:var(--font-display);
  font-size:1.18rem;
  font-weight:600;
  line-height:1.2;
  scroll-margin-top:24px;
}
.mrc-cb-step-title:focus{outline:none}
.mrc-cb-step-note{color:var(--text-muted);font-size:13px}
.mrc-cb-step-aside{margin-left:auto;color:var(--text-muted);font-size:13px}
.mrc-cb-step-aside strong{color:var(--text);font-family:var(--font-mono);font-size:14px}

/* One note for every option while nothing is supplier-confirmed. */
.mrc-cb-confirm-note{
  display:flex;align-items:flex-start;gap:10px;
  margin:0;
  padding:11px 14px;
  border:1px dashed rgba(255,209,102,.35);
  border-radius:14px;
  background:rgba(255,209,102,.05);
  color:#eadcb8;
  font-size:13px;line-height:1.5;
}
.mrc-cb-confirm-note::before{
  content:"i";
  flex:0 0 18px;
  display:grid;place-items:center;
  width:18px;height:18px;
  margin-top:1px;
  border-radius:50%;
  background:var(--gold);
  color:#2a1d00;
  font-family:var(--font-mono);
  font-size:11px;font-weight:800;
}
.mrc-cb-tag{
  padding:3px 8px;
  border:1px solid rgba(255,209,102,.4);
  border-radius:var(--radius-pill);
  background:rgba(255,209,102,.07);
  color:var(--gold);
  font-family:var(--font-mono);
  font-size:10.5px;font-weight:700;
  letter-spacing:.03em;
  line-height:1.4;
}
.mrc-cb-tag.is-quiet{border-color:var(--border-bright);background:transparent;color:var(--text-muted)}
.mrc-cb-selected{margin:8px 0 0;color:var(--text-muted);font-size:13px;line-height:1.45}
.mrc-cb-selected:empty{display:none}
.mrc-cb-selected strong{color:var(--text)}
.mrc-cb-clear{
  position:absolute;
  top:18px;right:18px;
  min-height:32px;
  padding:0 8px;
  color:var(--text-muted);
  font-size:13px;font-weight:700;
  text-decoration:underline;
  text-underline-offset:3px;
}
.mrc-cb-clear:hover{color:var(--text)}
.mrc-cb-clear:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:6px}

/* ---------- Fields ---------- */
.mrc-cb-field{min-width:0;margin-bottom:12px}
.mrc-cb-field > label,
.mrc-cb-label{
  display:block;
  margin-bottom:6px;
  color:var(--text);
  font-family:var(--font-body);
  font-size:14px;font-weight:700;line-height:1.35;
}
.mrc-cb-step-head .mrc-cb-label{margin:0}
.mrc-cb-optional,
.mrc-cb-required{color:var(--text-muted);font-weight:600}
.mrc-cb-field input[type="text"],
.mrc-cb-field input[type="email"],
.mrc-cb-field input[type="tel"],
.mrc-cb-field input[type="date"],
.mrc-cb-field select,
.mrc-cb-field textarea{
  display:block;
  width:100%;
  min-height:46px;
  padding:11px 13px;
  border:1px solid var(--border-bright);
  border-radius:12px;
  background:var(--surface-2);
  color:var(--text);
  font-family:var(--font-body);
  font-size:16px;line-height:1.4;
  color-scheme:dark;
  transition:border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease);
}
.mrc-cb-field textarea{resize:vertical;min-height:88px}
.mrc-cb-field input::placeholder,
.mrc-cb-field textarea::placeholder{color:#8a8a8a}
.mrc-cb-field input:hover,
.mrc-cb-field select:hover,
.mrc-cb-field textarea:hover{border-color:#4a4a4a}
.mrc-cb-field input:focus,
.mrc-cb-field select:focus,
.mrc-cb-field textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(57,255,20,.28)}
.mrc-cb-field [aria-invalid="true"],
.mrc-cb-stepper input[aria-invalid="true"]{border-color:var(--danger)!important}
.mrc-cb-help{margin:6px 0 0;color:var(--text-muted);font-size:13px;line-height:1.5}
.mrc-cb-error{
  display:flex;gap:7px;align-items:flex-start;
  margin:6px 0 0;
  color:#ff8a9d;
  font-size:13.5px;font-weight:700;line-height:1.45;
}
.mrc-cb-error::before{
  content:"!";
  flex:0 0 17px;
  display:grid;place-items:center;
  width:17px;height:17px;
  margin-top:1px;
  border-radius:50%;
  background:var(--danger);
  color:#fff;
  font-size:11px;font-weight:900;
}
.mrc-cb-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}
.mrc-cb-grid-tight{column-gap:10px}
.mrc-cb-check{
  display:flex;align-items:center;gap:9px;
  min-height:40px;
  margin-top:4px;
  color:var(--text);
  font-size:14px;font-weight:600;
  cursor:pointer;
}
.mrc-cb-check input{width:20px;height:20px;accent-color:var(--accent);flex:0 0 auto}
.mrc-cb-check input:focus-visible{outline:3px solid var(--accent);outline-offset:2px}

/* ---------- Upload ---------- */
.mrc-cb-dropzone{
  position:relative;
  display:flex!important;align-items:center;gap:14px;
  margin:0!important;
  padding:14px 16px;
  border:1.5px dashed #4a4a4a;
  border-radius:var(--radius-md);
  background:rgba(255,255,255,.02);
  cursor:pointer;
  transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease);
}
.mrc-cb-dropzone:hover,
.mrc-cb-dropzone.is-dragover{border-color:var(--accent);background:rgba(57,255,20,.05)}
.mrc-cb-dropzone:focus-within{outline:3px solid var(--accent);outline-offset:2px}
.mrc-cb-file-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.mrc-cb.is-enhanced .mrc-cb-file-input{pointer-events:none}
.mrc-cb-upload.has-error .mrc-cb-dropzone{border-color:var(--danger)}
.mrc-cb-dropzone-icon{flex:0 0 40px;width:40px;height:40px;padding:9px;border-radius:12px;background:rgba(57,255,20,.1);color:var(--accent)}
.mrc-cb-dropzone-text{display:grid;gap:2px;min-width:0;flex:1}
.mrc-cb-dropzone-title{color:var(--text);font-size:15px;font-weight:800}
.mrc-cb-dropzone-sub{color:var(--text-muted);font-size:12.5px;line-height:1.45}
.mrc-cb-dropzone-btn{
  flex:0 0 auto;
  display:inline-flex;align-items:center;
  min-height:40px;
  padding:0 14px;
  border:1px solid var(--border-bright);
  border-radius:var(--radius-pill);
  color:var(--text);
  font-size:13.5px;font-weight:700;
}
.mrc-cb-dropzone:hover .mrc-cb-dropzone-btn{border-color:var(--accent)}
.mrc-cb-thumbs{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(96px,1fr));
  gap:8px;
  margin:10px 0 0;padding:0;
  list-style:none;
}
.mrc-cb-thumbs:empty{display:none}
.mrc-cb-thumb{position:relative;min-width:0;border:1px solid var(--border-bright);border-radius:12px;background:var(--surface-2);overflow:hidden;animation:mrc-cb-pop var(--dur-slow) var(--ease)}
@keyframes mrc-cb-pop{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:none}}
.mrc-cb-thumb-media{
  display:grid;place-items:center;
  aspect-ratio:1 / 1;
  background:
    linear-gradient(45deg,#1b1b1b 25%,transparent 25%,transparent 75%,#1b1b1b 75%) 0 0/14px 14px,
    linear-gradient(45deg,#1b1b1b 25%,transparent 25%,transparent 75%,#1b1b1b 75%) 7px 7px/14px 14px,
    #242424;
}
.mrc-cb-thumb-media img{width:100%;height:100%;object-fit:contain}
.mrc-cb-thumb-pdf{padding:5px 8px;border-radius:7px;background:var(--gold);color:#2a1d00;font-family:var(--font-mono);font-size:12px;font-weight:800}
.mrc-cb-thumb-meta{display:grid;gap:1px;padding:6px 8px 7px}
.mrc-cb-thumb-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:12px;font-weight:700}
.mrc-cb-thumb-size{color:var(--text-muted);font-size:11px}
.mrc-cb-thumb-remove{
  position:absolute;top:5px;right:5px;
  display:grid;place-items:center;
  width:32px;height:32px;
  border-radius:50%!important;
  background:rgba(10,10,10,.85)!important;
  border:1px solid var(--border-bright)!important;
  color:var(--text);
}
.mrc-cb-thumb-remove::after{content:"";position:absolute;inset:-6px}
.mrc-cb-thumb-remove:hover{color:#ff8a9d;border-color:rgba(255,51,85,.7)!important}
.mrc-cb-thumb-remove:focus-visible{outline:3px solid var(--accent);outline-offset:1px}
.mrc-cb-proof-note{
  margin:8px 0 0;
  padding:7px 11px;
  border-left:3px solid var(--gold);
  border-radius:0 10px 10px 0;
  background:rgba(255,209,102,.07);
  color:#f3dca4;
  font-size:12.5px;line-height:1.5;
}
.mrc-cb-more{margin-top:10px}
.mrc-cb-more > summary{
  display:flex;align-items:center;gap:8px;
  min-height:40px;
  color:var(--text);
  font-size:14px;font-weight:700;
  cursor:pointer;
  list-style:none;
}
.mrc-cb-more > summary::-webkit-details-marker{display:none}
.mrc-cb-more > summary::before{
  content:"+";
  display:grid;place-items:center;
  width:22px;height:22px;
  border:1px solid var(--border-bright);
  border-radius:50%;
  color:var(--accent);
  font-size:15px;line-height:1;
  transition:transform var(--dur) var(--ease);
}
.mrc-cb-more[open] > summary::before{transform:rotate(45deg)}
.mrc-cb-more > summary:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:8px}
.mrc-cb-more[open] > summary{margin-bottom:8px}

/* ---------- Option tiles ---------- */
.mrc-cb-cards{display:grid;gap:8px}
.mrc-cb-cards-6{grid-template-columns:repeat(6,minmax(0,1fr))}
.mrc-cb-cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mrc-cb-card{
  position:relative;
  display:flex;flex-direction:column;align-items:center;
  gap:6px;
  min-width:0;min-height:44px;
  margin:0;
  padding:10px 6px 10px;
  border:1px solid var(--border-bright);
  border-radius:var(--radius-md);
  background:var(--surface-2);
  color:var(--text);
  text-align:center;
  cursor:pointer;
  transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease),transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease);
}
.mrc-cb-card:hover{border-color:#5a5a5a;transform:translateY(-2px)}
.mrc-cb-card:has(input:checked){
  border-color:var(--accent);
  background:radial-gradient(circle at 50% 30%,rgba(57,255,20,.16),transparent 70%),var(--surface-2);
  box-shadow:0 0 0 1px rgba(57,255,20,.4),0 10px 24px -16px var(--accent-glow);
}
.mrc-cb-card:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:2px}
.mrc-cb-card.is-unavailable{cursor:not-allowed;opacity:.5}
.mrc-cb-card.is-unavailable:hover{transform:none;border-color:var(--border-bright)}
.mrc-cb-card-input{position:absolute;top:8px;right:8px;width:18px;height:18px;margin:0;opacity:0;pointer-events:none}
.mrc-cb-card-check{
  position:absolute;
  top:7px;right:7px;
  z-index:1;
  width:18px;height:18px;
  border:1.5px solid #5a5a5a;
  border-radius:50%;
  background:var(--surface);
  transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),transform var(--dur) var(--ease);
}
.mrc-cb-card:has(input[type="checkbox"]) .mrc-cb-card-check{border-radius:6px}
/* Single-choice tiles only show the tick once chosen; multi-select finishes keep their boxes. */
.mrc-cb-card:has(input[type="radio"]:not(:checked)) .mrc-cb-card-check{opacity:0}
.mrc-cb-card:has(input:checked) .mrc-cb-card-check{border-color:var(--accent);background:var(--accent);animation:mrc-cb-check var(--dur-slow) var(--ease)}
@keyframes mrc-cb-check{0%{transform:scale(.6)}60%{transform:scale(1.15)}100%{transform:scale(1)}}
.mrc-cb-card:has(input:checked) .mrc-cb-card-check::after{
  content:"";
  position:absolute;left:5.5px;top:2.5px;
  width:5px;height:9px;
  border:solid var(--accent-ink);
  border-width:0 2.2px 2.2px 0;
  transform:rotate(45deg);
}
.mrc-cb-card-media{display:grid;place-items:center;width:100%;height:48px;color:#e8e8e8}
.mrc-cb-card.has-photo{padding:6px 6px 10px}
.mrc-cb-card.has-photo .mrc-cb-card-media{height:auto;aspect-ratio:1 / 1;border-radius:10px;overflow:hidden;background:#fff}
.mrc-cb-card.has-photo .mrc-cb-card-media img{width:100%;height:100%;object-fit:cover;transition:transform var(--dur) var(--ease)}
.mrc-cb-card.has-photo:hover .mrc-cb-card-media img,
.mrc-cb-card.has-photo:has(input:checked) .mrc-cb-card-media img{transform:scale(1.04)}
.mrc-cb-card.has-photo .mrc-cb-card-check{top:12px;right:12px;box-shadow:0 1px 4px rgba(0,0,0,.4)}
.mrc-cb-card-media svg{width:auto;height:44px;max-width:100%;overflow:visible;transition:transform var(--dur) var(--ease)}
.mrc-cb-card:hover .mrc-cb-card-media svg,
.mrc-cb-card:has(input:checked) .mrc-cb-card-media svg{transform:scale(1.06)}
.mrc-cb-card-title{font-size:13px;font-weight:800;line-height:1.2}
.mrc-cb-card-status{
  padding:2px 6px;
  border:1px solid rgba(255,209,102,.4);
  border-radius:var(--radius-pill);
  color:var(--gold);
  font-family:var(--font-mono);
  font-size:10px;font-weight:700;
  line-height:1.35;
}
[data-mrc-cb-option-status="quote_required"] .mrc-cb-card-status{border-color:rgba(46,156,255,.45);color:#9fd0ff}
[data-mrc-cb-option-status="unavailable"] .mrc-cb-card-status{border-color:rgba(255,51,85,.5);color:#ff8a9d}
.mrc-cb-cards.is-text-only .mrc-cb-card{align-items:flex-start;padding:11px 30px 11px 12px;text-align:left}
.mrc-cb-cards.is-text-only .mrc-cb-card-title{font-size:13.5px}

/* Illustration strokes and fills */
.mrc-cb-card-media .f{fill:rgba(57,255,20,.14);stroke:currentColor;stroke-width:2.4;stroke-linejoin:round}
.mrc-cb-card-media .s{fill:var(--gold)}
.mrc-cb-card-media .cut{fill:none;stroke:var(--pink);stroke-width:1.8;stroke-dasharray:4 3}
.mrc-cb-card-media .w{fill:#3a3a3a;stroke:#5c5c5c;stroke-width:1.2}
.mrc-cb-card-media .m{fill:#8f8f8f}
.mrc-cb-card-media .b{fill:var(--accent);opacity:.85}
.mrc-cb-card-media .clip{fill:none;stroke:var(--blue);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.mrc-cb-card-media .lace{fill:none;stroke:var(--gold);stroke-width:3;stroke-dasharray:6 4;stroke-linecap:round}
.mrc-cb-card-media .dot-pink{fill:var(--pink)}
.mrc-cb-card-media .dot-gold{fill:var(--gold)}
.mrc-cb-card-media .dot-blue{fill:var(--blue)}
.mrc-cb-card-media .halo1{fill:rgba(57,255,20,.08)}
.mrc-cb-card-media .halo2{fill:rgba(57,255,20,.16)}
.mrc-cb-card-media .dark{fill:#0d170a;stroke:var(--accent);stroke-width:2.4}
.mrc-cb-card-media .moon{fill:var(--accent)}
.mrc-cb-card-media .ray{fill:none;stroke:var(--gold);stroke-width:2;stroke-linecap:round}
.mrc-cb-card-media .sun{fill:var(--gold)}
.mrc-cb-card-media .half-off{fill:#4a4a4a}
.mrc-cb-card-media .half-on{fill:var(--pink)}
.mrc-cb-card-media .ring{fill:none;stroke:currentColor;stroke-width:2.4}

/* ---------- Quantity ---------- */
.mrc-cb-qty-empty{margin:0;padding:10px 12px;border:1px dashed var(--border-bright);border-radius:12px;color:var(--text-muted);font-size:13.5px}
.mrc-cb-qty-rows{display:grid;gap:8px}
.mrc-cb-qty-row{
  display:grid;
  grid-template-columns:minmax(110px,1fr) auto auto;
  align-items:center;
  gap:8px 12px;
  padding:8px 8px 8px 14px;
  border:1px solid var(--border-bright);
  border-radius:var(--radius-md);
  background:var(--surface-2);
}
.mrc-cb-qty-row .mrc-cb-error{grid-column:1 / -1;margin:0 0 4px}
.mrc-cb-qty-label{color:var(--text);font-size:14px;font-weight:800}
.mrc-cb-stepper{display:inline-flex;align-items:stretch;border:1px solid var(--border-bright);border-radius:var(--radius-pill);background:var(--surface);overflow:hidden}
.mrc-cb-stepper-btn{display:grid;place-items:center;width:44px;min-height:44px;color:var(--text);font-size:19px;font-weight:700;transition:background var(--dur-fast) var(--ease)}
.mrc-cb-stepper-btn:hover{background:rgba(255,255,255,.06)}
.mrc-cb-stepper-btn:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}
.mrc-cb-stepper input{
  width:76px;min-height:44px;
  padding:0 4px;
  border:0;
  border-left:1px solid var(--border);
  border-right:1px solid var(--border);
  background:transparent;
  color:var(--text);
  font-family:var(--font-mono);
  font-size:16px;font-weight:700;
  text-align:center;
  -moz-appearance:textfield;
}
.mrc-cb-stepper input::-webkit-outer-spin-button,
.mrc-cb-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.mrc-cb-stepper input:focus{outline:none;box-shadow:inset 0 0 0 2px var(--accent)}
.mrc-cb-qty-presets{display:flex;gap:6px}
.mrc-cb-chip{
  min-width:48px;min-height:44px;
  padding:0 10px;
  border:1px solid var(--border-bright)!important;
  border-radius:var(--radius-pill)!important;
  background:var(--surface)!important;
  color:var(--text-muted);
  font-family:var(--font-mono);
  font-size:13.5px;font-weight:700;
  transition:border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease);
}
.mrc-cb-chip:hover,
.mrc-cb-chip.is-active{border-color:var(--accent)!important;color:var(--text)}
.mrc-cb-chip:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.mrc-cb-qty-hint{margin:8px 0 0;color:var(--gold);font-size:13px;line-height:1.5}

/* ---------- Designs ---------- */
.mrc-cb-designs{display:grid;gap:14px}
.mrc-cb-design-body{display:grid;gap:14px}
.mrc-cb-designs:not(.is-multi) .mrc-cb-design-head{display:none}
.mrc-cb-designs.is-multi .mrc-cb-design{
  border:1px solid var(--border-bright)!important;
  border-radius:24px;
  background:rgba(255,255,255,.015);
  overflow:hidden;
}
.mrc-cb-designs.is-multi .mrc-cb-design-body{padding:12px}
.mrc-cb-designs.is-multi .mrc-cb-design-head{background:var(--surface)}
.mrc-cb-design-head{
  display:flex;align-items:center;gap:12px;
  padding:12px 14px;
  border-bottom:1px solid var(--border);
}
.mrc-cb-design.is-collapsed .mrc-cb-design-head{border-bottom-color:transparent}
.mrc-cb-design-title{flex:1;min-width:0}
.mrc-cb-design-title h3{margin:0;font-family:var(--font-display);font-size:1.15rem;font-weight:600;line-height:1.15;color:var(--text);scroll-margin-top:24px}
.mrc-cb-design-title h3:focus{outline:none}
.mrc-cb-design-meta{margin:2px 0 0;color:var(--text-muted);font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mrc-cb-design-tools{display:flex;align-items:center;gap:6px}
.mrc-cb-design-toggle,
.mrc-cb-design-remove{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:44px;min-height:44px;
  padding:0 12px;
  border:1px solid var(--border-bright)!important;
  border-radius:var(--radius-pill)!important;
  color:var(--text-muted);
  font-size:13px;font-weight:700;
}
.mrc-cb-design-toggle{padding:0}
.mrc-cb-design-toggle svg{transition:transform var(--dur) var(--ease)}
.mrc-cb-design-toggle[aria-expanded="false"] svg{transform:rotate(-90deg)}
.mrc-cb-design-toggle:hover{color:var(--text);border-color:var(--text-muted)!important}
.mrc-cb-design-remove:hover{color:#ff8a9d;border-color:rgba(255,51,85,.6)!important}
.mrc-cb-design-toggle:focus-visible,
.mrc-cb-design-remove:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.mrc-cb-design-error{margin:10px 0 0}
.mrc-cb-designs.is-multi .mrc-cb-design-error{margin:10px 16px 0}
.mrc-cb-add{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:2px 4px}
.mrc-cb-add .mrc-cb-help{margin:0;flex:1 1 220px}
.mrc-cb-add-btn{
  display:inline-flex;align-items:center;gap:8px;
  min-height:44px;
  padding:0 18px;
  border:1.5px dashed var(--accent)!important;
  border-radius:var(--radius-pill)!important;
  color:var(--accent);
  font-family:var(--font-display);
  font-size:15px;font-weight:600;
  transition:background var(--dur) var(--ease);
}
.mrc-cb-add-btn:hover{background:rgba(57,255,20,.08)}
.mrc-cb-add-btn:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.mrc-cb-add-btn:disabled{opacity:.45;cursor:not-allowed}

/* ---------- Sample fields ---------- */
.mrc-cb-recipient{margin-top:4px!important;padding:14px!important;border:1px solid rgba(255,176,32,.35)!important;border-radius:var(--radius-md)}
.mrc-cb-recipient > .mrc-cb-help{margin:-2px 0 10px}
.mrc-cb-terms{margin-top:4px}
.mrc-cb-terms-text{max-height:180px;overflow:auto;padding:10px 12px;border:1px solid var(--border-bright);border-radius:12px;background:var(--surface-2);color:var(--text-muted);font-size:13.5px;line-height:1.55;white-space:pre-line}
.mrc-cb-terms-text:focus-visible{outline:3px solid var(--accent);outline-offset:2px}

/* ---------- Review + actions ---------- */
.mrc-cb .mrc-cb-review{
  border-color:var(--border-bright);
  background:radial-gradient(circle at 100% 0%,rgba(57,255,20,.08),transparent 40%),var(--surface);
  box-shadow:var(--shadow-md);
  overflow:hidden;
  scroll-margin-top:24px;
}
.mrc-cb-review::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--rainbow)}
.mrc-cb-review .mrc-cb-step-head{padding-right:0}
.mrc-cb-review .mrc-cb-summary-path{margin-left:auto}
.mrc-cb-summary-path{padding:4px 9px;border:1px solid var(--border-bright);border-radius:var(--radius-pill);color:var(--text);font-family:var(--font-mono);font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.mrc-cb-summary-designs{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px;margin:0;padding:0;list-style:none}
.mrc-cb-summary-design{display:flex;gap:10px;align-items:flex-start;padding:9px;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.02)}
.mrc-cb-summary-design > div:last-child{display:grid;gap:2px;min-width:0}
.mrc-cb-summary-design strong{color:var(--text);font-size:13.5px;line-height:1.3;overflow-wrap:anywhere}
.mrc-cb-summary-design span{color:var(--text-muted);font-size:12.5px;line-height:1.4;overflow-wrap:anywhere}
.mrc-cb-summary-design .mrc-cb-summary-qty{color:var(--text);font-weight:700}
.mrc-cb-summary-design .mrc-cb-summary-flag{color:var(--gold)}
.mrc-cb-summary-order{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0 0}
.mrc-cb-summary-order > div{display:grid;gap:2px;min-width:0;padding:8px 10px;border:1px solid var(--border);border-radius:10px}
.mrc-cb-summary-order dt{color:var(--text-muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.mrc-cb-summary-order dd{margin:0;color:var(--text);font-size:13px;font-weight:700;overflow-wrap:anywhere}
.mrc-cb-summary-order strong{font-family:var(--font-mono);font-size:15px}
.mrc-cb-review-prices{display:grid;gap:6px;margin-top:10px;padding:12px;border:1px solid var(--border);border-radius:12px;background:rgba(0,0,0,.25)}
.mrc-cb-review-prices .mrc-cb-price-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.mrc-cb-review-prices .mrc-cb-price-label{color:var(--text-muted);font-size:13px;font-weight:700}
.mrc-cb-review-prices .mrc-cb-price-value{color:var(--text);font-family:var(--font-display);font-size:1rem;font-weight:600;text-align:right}
.mrc-cb-review-prices [data-state="quote-required"] .mrc-cb-price-value{padding:3px 10px;border:1px solid rgba(255,209,102,.45);border-radius:var(--radius-pill);background:rgba(255,209,102,.08);color:var(--gold);font-family:var(--font-body);font-size:13px;font-weight:800}
.mrc-cb-review-prices [data-state="unavailable"] .mrc-cb-price-value{color:var(--text-muted);font-family:var(--font-body);font-size:13px;font-weight:700}
.mrc-cb-review-prices [data-state="available"] .mrc-cb-price-value,
.mrc-cb-review-prices [data-state="estimate"] .mrc-cb-price-value{color:var(--accent)}
.mrc-cb-review-prices .mrc-cb-price-note{margin:2px 0 0;color:var(--text-muted);font-size:12.5px;line-height:1.5}

.mrc-cb-sample-explainer{margin-top:10px;padding:11px 13px;border:1px solid rgba(255,176,32,.45);border-radius:12px;background:rgba(255,176,32,.07)}
.mrc-cb-sample-explainer:focus{outline:3px solid var(--warn);outline-offset:2px}
.mrc-cb-sample-explainer.is-flash{animation:mrc-cb-flash .9s var(--ease)}
@keyframes mrc-cb-flash{0%,100%{background:rgba(255,176,32,.07)}35%{background:rgba(255,176,32,.2)}}
.mrc-cb-sample-explainer strong{display:block;color:#ffd48a;font-size:14px}
.mrc-cb-sample-explainer p{margin:3px 0 0;color:#e9d8b6;font-size:13px;line-height:1.5}
.mrc-cb-error-summary{margin-top:10px;padding:11px 13px;border:1px solid rgba(255,51,85,.55);border-radius:12px;background:rgba(255,51,85,.08)}
.mrc-cb-error-summary:focus{outline:3px solid var(--danger);outline-offset:2px}
.mrc-cb-error-summary strong{color:#ff8a9d;font-size:14px}
.mrc-cb-error-summary ul{margin:5px 0 0;padding-left:18px}
.mrc-cb-error-summary li{margin:3px 0;color:var(--text);font-size:13px;line-height:1.45}
.mrc-cb-error-summary a{color:var(--text);text-decoration:underline;text-underline-offset:2px}
.mrc-cb-progress{margin:10px 0 0;color:var(--text-muted);font-size:13px}
.mrc-cb-progress:empty{display:none}
.mrc-cb.is-busy .mrc-cb-progress::before{
  content:"";
  display:inline-block;
  width:12px;height:12px;
  margin-right:8px;
  vertical-align:-1px;
  border:2px solid var(--text-muted);
  border-right-color:transparent;
  border-radius:50%;
  animation:mrc-cb-spin .8s linear infinite;
}
@keyframes mrc-cb-spin{to{transform:rotate(360deg)}}
.mrc-cb-review .mrc-cb-notice-region{margin:10px 0 0}
.mrc-cb-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.mrc-cb-btn{
  display:inline-flex;align-items:center;justify-content:center;
  width:100%;min-height:52px;
  padding:0 18px;
  border-radius:var(--radius-pill)!important;
  font-family:var(--font-display);
  font-size:16px;font-weight:600;
  text-align:center;
  transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease),border-color var(--dur) var(--ease);
}
.mrc-cb-btn-primary{background:var(--accent)!important;color:var(--accent-ink)!important}
.mrc-cb-btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-neon)}
.mrc-cb-btn-secondary{border:1px solid var(--border-bright)!important;color:var(--text)}
.mrc-cb-btn-secondary:hover{border-color:var(--accent)!important}
.mrc-cb-btn:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.mrc-cb-btn-primary[aria-disabled="true"],
.mrc-cb-btn-primary:disabled{background:#2a2a2a!important;color:#9a9a9a!important;cursor:not-allowed;transform:none;box-shadow:none}
.mrc-cb.is-busy .mrc-cb-btn-primary{cursor:progress;opacity:.8}
.mrc-cb-actions-note{margin-top:10px;text-align:center}
.mrc-cb-actions-note a{color:var(--text);text-decoration:underline;text-underline-offset:2px}

/* ---------- Pricing guide (collapsed by default) ---------- */
.mrc-cb-guide{padding:0 0 clamp(40px,6vw,72px)}
.mrc-cb-guide-details{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);overflow:hidden}
.mrc-cb-guide-summary{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:16px clamp(16px,2.4vw,22px);
  cursor:pointer;
  list-style:none;
}
.mrc-cb-guide-summary::-webkit-details-marker{display:none}
.mrc-cb-guide-summary:focus-visible{outline:3px solid var(--accent);outline-offset:-3px;border-radius:var(--radius-lg)}
.mrc-cb-guide-copy{display:grid;gap:4px;min-width:0}
.mrc-cb-guide-title{color:var(--text);font-family:var(--font-display);font-size:1.2rem;font-weight:600;line-height:1.2}
.mrc-cb-guide-meta{color:var(--text-muted);font-size:13px}
.mrc-cb-guide-toggle{flex:0 0 40px;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--border-bright);border-radius:50%;color:var(--text);transition:transform var(--dur) var(--ease)}
.mrc-cb-guide-details[open] .mrc-cb-guide-toggle{transform:rotate(180deg)}
.mrc-cb-guide-details .custom-price-table-shell{margin:0 12px 12px;box-shadow:none}

/* ---------- Mobile summary bar ---------- */
.mrc-cb-mobilebar{display:none}

/* ---------- Responsive ---------- */
@media (max-width:1100px){
  .mrc-cb-cards-6{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mrc-cb-qty-row{grid-template-columns:1fr auto}
  .mrc-cb-qty-presets{grid-column:1 / -1}
  .mrc-cb-live-chips{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:920px){
  .mrc-cb-product{grid-template-columns:1fr;gap:18px}
  .mrc-cb-media{position:static}
  .mrc-cb-gallery-stage{height:clamp(260px,72vw,420px)}
  .mrc-cb-live{display:none}
  .mrc-cb.is-enhanced .mrc-cb-mobilebar:not([hidden]){
    position:sticky;
    bottom:calc(10px + var(--mrc-cb-bar-offset,0px) + env(safe-area-inset-bottom));
    z-index:40;
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    margin-right:56px; /* leaves room for the site's fixed back-to-top button */
    padding:10px 10px 10px 16px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:18px;
    background:rgba(20,20,20,.94);
    -webkit-backdrop-filter:blur(14px);
    backdrop-filter:blur(14px);
    box-shadow:0 14px 40px rgba(0,0,0,.6);
    transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease);
  }
  .mrc-cb-mobilebar.is-away{opacity:0;transform:translateY(12px);pointer-events:none}
  .mrc-cb-mobilebar-copy{display:grid;gap:2px;min-width:0}
  .mrc-cb-mobilebar-copy strong{color:var(--text);font-size:14px;line-height:1.3}
  .mrc-cb-mobilebar-copy span{color:var(--gold);font-size:13px;font-weight:700}
  .mrc-cb-mobilebar-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:var(--radius-pill);background:var(--accent);color:var(--accent-ink);font-family:var(--font-display);font-size:15px;font-weight:600}
  .mrc-cb-mobilebar-btn:focus-visible{outline:3px solid var(--text);outline-offset:2px}
}
@media (max-width:620px){
  .mrc-cb-title{font-size:clamp(2.3rem,11vw,3rem)}
  .mrc-cb-lede{font-size:1rem}
  .mrc-cb-pricebox .mrc-cb-price-value{font-size:1.2rem}
  .mrc-cb-segment{grid-template-columns:1fr}
  .mrc-cb-grid-2{grid-template-columns:1fr}
  .mrc-cb .mrc-cb-step{padding:16px;border-radius:18px}
  .mrc-cb-summary-order{grid-template-columns:1fr 1fr}
  .mrc-cb-summary-order > div:first-child{grid-column:1 / -1}
  .mrc-cb-step-sub{margin-left:0}
  .mrc-cb-clear{top:14px;right:12px}
  .mrc-cb-cards.is-text-only{grid-template-columns:1fr}
  .mrc-cb-dropzone-btn{display:none}
  .mrc-cb-summary-designs{grid-template-columns:1fr}
  .mrc-cb-actions{grid-template-columns:1fr}
    .mrc-cb-guide-title{font-size:1.05rem}
}
@media (max-width:420px){
  .mrc-cb-qty-row{grid-template-columns:1fr;padding:10px}
  .mrc-cb-stepper{justify-self:start}
}
@media (prefers-reduced-motion:reduce){
  .mrc-cb-page *{animation:none!important;transition:none!important}
  .mrc-cb-card:hover,
  .mrc-cb-btn-primary:hover{transform:none}
}
