.mr-app {
    --mr-primary: #e4572e;
    --mr-accent: #f3a712;
    --mr-background: #fffaf5;
    --mr-text: #18201b;
    --mr-card: #ffffff;
    --mr-muted: color-mix(in srgb, var(--mr-text) 62%, transparent);
    --mr-line: color-mix(in srgb, var(--mr-text) 10%, transparent);
    --mr-shadow: 0 14px 36px color-mix(in srgb, var(--mr-text) 11%, transparent);
    position: relative;
    width: 100%;
    max-width: 1180px;
    min-height: 650px;
    margin: 0 auto;
    padding: 0 0 125px;
    overflow: clip;
    color: var(--mr-text);
    background: var(--mr-background);
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 16px;
    line-height: 1.45;
    isolation: isolate;
    -webkit-font-smoothing: antialiased;
}

html:has(.mr-standalone-body) { margin: 0 !important; }
.mr-standalone-body { margin: 0; min-height: 100%; background: var(--mr-background, #fffaf5); }
.mr-standalone-body .mr-app { width: 100%; max-width: none; min-height: 100dvh; margin: 0; border: 0; border-radius: 0; box-shadow: none; }
.mr-recent-order { position: relative; z-index: 2; display: inline-flex; align-items: center; gap: 7px; margin-top: 12px; padding: 8px 11px; border-radius: 99px; color: var(--mr-primary); background: color-mix(in srgb, var(--mr-primary) 9%, white); font-size: 11px; font-weight: 800; text-decoration: none; }
.mr-promo-banner { display: flex; align-items: center; gap: 10px; margin: 14px 18px 0; padding: 12px 14px; border-radius: 15px; color: color-mix(in srgb, var(--mr-text) 88%, #000); background: linear-gradient(135deg, color-mix(in srgb, var(--mr-accent) 28%, white), color-mix(in srgb, var(--mr-primary) 8%, white)); font-size: 12px; font-weight: 750; }
.mr-promo-banner span { font-size: 21px; }
.mr-home-banner { display: block; margin: 15px 18px 0; overflow: hidden; border: 1px solid var(--mr-line); border-radius: 20px; color: var(--mr-text); background: var(--mr-card); box-shadow: 0 10px 28px color-mix(in srgb, var(--mr-text) 8%, transparent); text-decoration: none; }
.mr-home-banner.is-image { aspect-ratio: 3 / 1; }
.mr-home-banner.is-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.mr-home-banner.is-text > div { position: relative; display: grid; gap: 3px; min-height: 116px; align-content: center; padding: 20px 104px 20px 20px; overflow: hidden; background: linear-gradient(135deg, color-mix(in srgb, var(--mr-primary) 14%, white), color-mix(in srgb, var(--mr-accent) 26%, white)); }
.mr-home-banner.is-text > div::after { content: '✦'; position: absolute; right: 24px; color: color-mix(in srgb, var(--mr-primary) 48%, transparent); font-size: 64px; transform: rotate(12deg); }
.mr-home-banner.is-text span { color: var(--mr-primary); font-size: 9px; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.mr-home-banner.is-text strong { font-size: clamp(17px, 4.5vw, 25px); line-height: 1.08; }
.mr-home-banner.is-text small { margin-top: 4px; color: var(--mr-primary); font-size: 10px; font-weight: 800; }

.mr-app *, .mr-app *::before, .mr-app *::after { box-sizing: border-box; }
.mr-app button, .mr-app input, .mr-app textarea, .mr-app select { font: inherit; }
.mr-app button { cursor: pointer; }
.mr-app button:focus-visible, .mr-app input:focus-visible, .mr-app textarea:focus-visible, .mr-app select:focus-visible { outline: 3px solid color-mix(in srgb, var(--mr-primary) 38%, transparent); outline-offset: 2px; }
.mr-app-loading { display: grid; place-items: center; min-height: 500px; gap: 12px; color: var(--mr-muted); }
.mr-app-loading span { width: 34px; height: 34px; border: 3px solid var(--mr-line); border-top-color: var(--mr-primary); border-radius: 50%; animation: mrSpin .85s linear infinite; }
@keyframes mrSpin { to { transform: rotate(360deg); } }

.mr-hero { position: relative; padding: clamp(28px, 6vw, 64px) clamp(18px, 5vw, 56px) 28px; overflow: hidden; border-radius: 0 0 38px 38px; background: linear-gradient(145deg, color-mix(in srgb, var(--mr-primary) 12%, var(--mr-background)), var(--mr-background) 62%); }
.mr-hero::before { content: ''; position: absolute; top: -115px; right: -95px; width: 260px; height: 260px; border: 60px solid color-mix(in srgb, var(--mr-accent) 20%, transparent); border-radius: 50%; opacity: .55; }
.mr-brand-row { position: relative; z-index: 1; display: flex; align-items: center; gap: 15px; }
.mr-public-logo { display: grid; place-items: center; flex: 0 0 clamp(64px, 16vw, 94px); width: clamp(64px, 16vw, 94px); height: clamp(64px, 16vw, 94px); overflow: hidden; border: 5px solid color-mix(in srgb, white 86%, transparent); border-radius: 26px; color: #fff; background: var(--mr-primary); box-shadow: var(--mr-shadow); font-size: 28px; font-weight: 900; }
.mr-public-logo img { display: block; width: 100%; height: 100%; object-fit: contain; background: #fff; }
.mr-brand-copy { min-width: 0; }
.mr-eyebrow, .mr-section-title span, .mr-sheet-title span { display: block; margin-bottom: 3px; color: var(--mr-primary); font-size: 11px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.mr-brand-copy h1 { margin: 0; font-size: clamp(26px, 7vw, 43px); line-height: 1.02; letter-spacing: -.045em; text-wrap: balance; }
.mr-brand-copy p { max-width: 560px; margin: 6px 0 0; color: var(--mr-muted); font-size: clamp(13px, 3.7vw, 16px); }
.mr-status { position: relative; z-index: 1; display: inline-flex; align-items: center; gap: 8px; margin-top: 17px; padding: 8px 11px; border-radius: 99px; color: #526059; background: color-mix(in srgb, white 72%, transparent); font-size: 12px; font-weight: 750; backdrop-filter: blur(8px); }
.mr-status i { width: 8px; height: 8px; border-radius: 50%; background: #a1aba6; }
.mr-status.is-open i { background: #29a66d; box-shadow: 0 0 0 4px rgba(41,166,109,.13); }
.mr-status.is-closed i { background: #df654f; box-shadow: 0 0 0 4px rgba(223,101,79,.13); }
.mr-search { position: relative; z-index: 1; display: flex; align-items: center; gap: 9px; margin-top: 22px; padding: 0 14px; border: 1px solid color-mix(in srgb, var(--mr-text) 8%, transparent); border-radius: 17px; background: color-mix(in srgb, white 90%, transparent); box-shadow: 0 8px 28px rgba(20, 30, 24, .07); backdrop-filter: blur(12px); }
.mr-search > span { color: var(--mr-primary); font-size: 25px; line-height: 1; transform: rotate(-15deg); }
.mr-search input { flex: 1; width: 100%; height: 54px; padding: 0; border: 0 !important; outline: 0 !important; color: var(--mr-text); background: transparent !important; box-shadow: none !important; }
.mr-search input::placeholder { color: color-mix(in srgb, var(--mr-text) 40%, transparent); }
.mr-search button { width: 30px; height: 30px; padding: 0; border: 0; border-radius: 50%; color: var(--mr-muted); background: transparent; font-size: 20px; }

.mr-order-warning { display: flex; gap: 10px; align-items: flex-start; margin: 15px 18px 0; padding: 12px 14px; border: 1px solid color-mix(in srgb, #df9547 25%, transparent); border-radius: 15px; color: #7a4d1d; background: #fff6e9; font-size: 12px; }
.mr-order-warning.is-blocked { color: #843f3f; background: #fff0ef; border-color: #f5d0cc; }
.mr-order-warning span { font-size: 18px; }
.mr-order-warning p { margin: 1px 0 0; }

.mr-categories { position: sticky; top: 0; z-index: 25; display: flex; gap: 8px; padding: 14px 18px; overflow-x: auto; background: color-mix(in srgb, var(--mr-background) 92%, transparent); scrollbar-width: none; backdrop-filter: blur(14px); }
.mr-categories::-webkit-scrollbar, .mr-featured-track::-webkit-scrollbar { display: none; }
.mr-categories button { flex: 0 0 auto; min-height: 40px; padding: 8px 15px; border: 1px solid var(--mr-line); border-radius: 99px; color: var(--mr-muted); background: color-mix(in srgb, var(--mr-card) 84%, transparent); font-size: 13px; font-weight: 730; transition: .2s ease; }
.mr-categories button.is-active { color: #fff; border-color: var(--mr-primary); background: var(--mr-primary); box-shadow: 0 7px 18px color-mix(in srgb, var(--mr-primary) 27%, transparent); }

.mr-menu-content { padding: 4px clamp(16px, 4vw, 42px) 20px; }
.mr-featured-section { margin-bottom: 28px; }
.mr-section-title { display: flex; justify-content: space-between; align-items: end; gap: 14px; margin: 12px 2px 14px; }
.mr-section-title h2 { margin: 0; font-size: clamp(23px, 5.7vw, 34px); line-height: 1.08; letter-spacing: -.035em; }
.mr-section-title > small { color: var(--mr-muted); font-size: 11px; }
.mr-featured-track { display: flex; gap: 12px; margin-right: calc(clamp(16px, 4vw, 42px) * -1); padding-right: clamp(16px, 4vw, 42px); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.mr-feature-card { flex: 0 0 min(76vw, 310px); display: flex; align-items: center; gap: 12px; padding: 9px; border: 1px solid var(--mr-line); border-radius: 20px; color: var(--mr-text); background: var(--mr-card); box-shadow: 0 8px 22px rgba(22, 32, 27, .055); text-align: left; scroll-snap-align: start; }
.mr-feature-card > div { flex: 0 0 80px; width: 80px; height: 74px; overflow: hidden; border-radius: 14px; background: color-mix(in srgb, var(--mr-accent) 18%, white); }
.mr-feature-card img { width: 100%; height: 100%; object-fit: cover; }
.mr-feature-card > span { display: grid; min-width: 0; gap: 4px; }
.mr-feature-card strong { overflow: hidden; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.mr-feature-card small { color: var(--mr-primary); font-weight: 800; }

.mr-product-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(11px, 3vw, 22px); }
.mr-product-card { position: relative; min-width: 0; overflow: hidden; border: 1px solid var(--mr-line); border-radius: 22px; background: var(--mr-card); box-shadow: 0 8px 25px rgba(22, 32, 27, .055); transition: transform .2s ease, box-shadow .2s ease; cursor: pointer; }
.mr-product-card:hover { transform: translateY(-2px); box-shadow: var(--mr-shadow); }
.mr-product-image { position: relative; aspect-ratio: 1.12 / 1; overflow: hidden; background: color-mix(in srgb, var(--mr-accent) 15%, white); }
.mr-product-image > img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.mr-product-card:hover .mr-product-image > img { transform: scale(1.035); }
.mr-image-placeholder { display: grid; place-items: center; width: 100%; height: 100%; color: color-mix(in srgb, var(--mr-primary) 58%, white); background: linear-gradient(145deg, color-mix(in srgb, var(--mr-primary) 12%, white), color-mix(in srgb, var(--mr-accent) 17%, white)); font-size: 28px; font-weight: 900; }
.mr-product-badge { position: absolute; top: 10px; left: 10px; z-index: 2; max-width: calc(100% - 20px); padding: 5px 9px; overflow: hidden; border-radius: 99px; color: #fff; background: var(--mr-primary); box-shadow: 0 5px 12px color-mix(in srgb, var(--mr-primary) 24%, transparent); font-size: 9px; font-weight: 850; letter-spacing: .035em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.mr-soldout { position: absolute; inset: 0; display: grid; place-items: center; color: #fff; background: rgba(22, 25, 23, .58); font-size: 13px; font-weight: 800; backdrop-filter: blur(2px); }
.mr-product-card.is-unavailable { opacity: .76; }
.mr-product-copy { display: grid; align-content: space-between; gap: 12px; min-height: 152px; padding: 14px; }
.mr-product-copy h3 { display: -webkit-box; margin: 0; overflow: hidden; font-size: clamp(15px, 4vw, 19px); line-height: 1.18; letter-spacing: -.02em; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.mr-product-copy p { display: -webkit-box; margin: 6px 0 0; overflow: hidden; color: var(--mr-muted); font-size: 11px; line-height: 1.42; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.mr-product-bottom { display: flex; justify-content: space-between; align-items: end; gap: 7px; }
.mr-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px; min-width: 0; }
.mr-price small { flex-basis: 100%; color: var(--mr-muted); font-size: 9px; }
.mr-price strong { color: var(--mr-primary); font-size: clamp(15px, 4.5vw, 20px); letter-spacing: -.02em; }
.mr-price del { color: var(--mr-muted); font-size: 10px; }
.mr-product-bottom button { display: grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; padding: 0; border: 0; border-radius: 13px; color: #fff; background: var(--mr-primary); box-shadow: 0 7px 16px color-mix(in srgb, var(--mr-primary) 28%, transparent); font-size: 23px; line-height: 1; }
.mr-product-bottom button:disabled { cursor: not-allowed; opacity: .45; box-shadow: none; }

.mr-empty-state { grid-column: 1 / -1; display: grid; justify-items: center; min-height: 260px; align-content: center; padding: 40px 20px; border: 1px dashed var(--mr-line); border-radius: 24px; color: var(--mr-muted); text-align: center; }
.mr-empty-state > span { display: grid; place-items: center; width: 58px; height: 58px; margin-bottom: 13px; border-radius: 19px; color: var(--mr-primary); background: color-mix(in srgb, var(--mr-primary) 10%, transparent); font-size: 28px; }
.mr-empty-state strong { color: var(--mr-text); font-size: 18px; }
.mr-empty-state p { max-width: 300px; margin: 5px 0 0; font-size: 13px; }
.mr-public-footer { display: grid; justify-items: center; gap: 4px; padding: 35px 20px 60px; color: var(--mr-muted); text-align: center; }
.mr-public-footer strong { color: var(--mr-text); }
.mr-public-footer a, .mr-public-footer button { padding: 0; border: 0; color: var(--mr-muted); background: transparent; font-size: 10px; text-decoration: none; }
.mr-public-footer button { margin-top: 4px; text-decoration: underline; text-underline-offset: 3px; }
.mr-developer-brand { display: grid; justify-items: center; gap: 2px; margin-top: 12px; }
.mr-developer-brand img { display: block; width: 126px; max-height: 44px; object-fit: contain; border-radius: 4px; mix-blend-mode: multiply; }
.mr-developer-brand span { font-size: 9px; }

.mr-cart-bar { position: fixed; z-index: 9990; right: max(16px, calc((100vw - 690px) / 2)); bottom: 14px; left: max(16px, calc((100vw - 690px) / 2)); display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; min-height: 62px; padding: 9px 15px 9px 10px; border: 1px solid color-mix(in srgb, white 28%, transparent); border-radius: 20px; color: #fff; background: color-mix(in srgb, var(--mr-text) 90%, var(--mr-primary)); box-shadow: 0 14px 38px rgba(16, 25, 20, .26); opacity: 0; pointer-events: none; transform: translateY(22px); transition: .25s ease; backdrop-filter: blur(12px); }
.mr-cart-bar.is-visible { opacity: 1; pointer-events: auto; transform: none; }
.mr-cart-icon { position: relative; display: grid; place-items: center; width: 43px; height: 43px; border-radius: 14px; color: var(--mr-text); background: var(--mr-accent); font-size: 23px; }
.mr-cart-icon b { position: absolute; top: -5px; right: -5px; display: grid; place-items: center; min-width: 20px; height: 20px; padding: 0 5px; border: 2px solid color-mix(in srgb, var(--mr-text) 90%, var(--mr-primary)); border-radius: 99px; color: #fff; background: var(--mr-primary); font-size: 9px; }
.mr-cart-bar strong { text-align: left; font-size: 14px; }
.mr-cart-bar em { font-size: 14px; font-style: normal; font-weight: 850; }

body.mr-sheet-open { overflow: hidden; }
.mr-sheet-host { position: fixed; z-index: 100000; inset: 0; pointer-events: none; }
.mr-sheet-backdrop { position: absolute; inset: 0; background: rgba(15, 22, 18, .45); opacity: 0; transition: .22s; backdrop-filter: blur(4px); }
.mr-bottom-sheet { position: absolute; right: 0; bottom: 0; left: 0; width: min(100%, 720px); max-height: min(92vh, 900px); margin: auto; overflow: hidden; border-radius: 30px 30px 0 0; color: var(--mr-text); background: var(--mr-background); box-shadow: 0 -18px 60px rgba(10, 18, 13, .23); transform: translateY(102%); transition: .27s cubic-bezier(.22,.78,.28,1); }
.mr-sheet-host.is-open { pointer-events: auto; }
.mr-sheet-host.is-open .mr-sheet-backdrop { opacity: 1; }
.mr-sheet-host.is-open .mr-bottom-sheet { transform: none; }
.mr-sheet-handle { position: absolute; z-index: 3; top: 9px; left: 50%; width: 45px; height: 5px; border-radius: 99px; background: color-mix(in srgb, var(--mr-text) 20%, transparent); transform: translateX(-50%); }
.mr-sheet-close { position: absolute; z-index: 5; top: 18px; right: 16px; display: grid; place-items: center; width: 37px; height: 37px; padding: 0; border: 0; border-radius: 50%; color: var(--mr-text); background: color-mix(in srgb, var(--mr-background) 88%, transparent); box-shadow: 0 5px 15px rgba(18,27,22,.08); font-size: 25px; backdrop-filter: blur(10px); }
.mr-sheet-scroll { max-height: min(92vh, 900px); padding: 27px 18px calc(24px + env(safe-area-inset-bottom)); overflow-y: auto; overscroll-behavior: contain; }

.mr-modal-image { position: relative; height: min(45vh, 360px); margin: -27px -18px 19px; overflow: hidden; background: color-mix(in srgb, var(--mr-accent) 18%, white); }
.mr-modal-image img { width: 100%; height: 100%; object-fit: cover; }
.mr-modal-image .mr-product-badge { top: 20px; left: 18px; }
.mr-modal-copy h2 { margin: 0; padding-right: 45px; font-size: 27px; line-height: 1.08; letter-spacing: -.035em; }
.mr-modal-copy p { margin: 8px 0 20px; color: var(--mr-muted); font-size: 13px; }
.mr-option-group, .mr-methods { margin: 0 0 20px; padding: 0; border: 0; }
.mr-option-group legend, .mr-methods legend { width: 100%; margin-bottom: 9px; font-size: 14px; font-weight: 820; }
.mr-option-row { display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 9px 12px; border-bottom: 1px solid var(--mr-line); cursor: pointer; }
.mr-option-row input { position: absolute; opacity: 0; }
.mr-option-row > span { display: grid; flex: 1; }
.mr-option-row strong { font-size: 13px; }
.mr-option-row small { color: var(--mr-muted); font-size: 11px; }
.mr-option-row i { position: relative; width: 22px; height: 22px; border: 2px solid color-mix(in srgb, var(--mr-text) 20%, transparent); border-radius: 50%; }
.mr-option-row input[type="checkbox"] + span + i { border-radius: 7px; }
.mr-option-row input:checked + span + i { border-color: var(--mr-primary); background: var(--mr-primary); box-shadow: inset 0 0 0 4px var(--mr-background); }
.mr-notes-field { display: grid; gap: 7px; margin-bottom: 20px; }
.mr-notes-field span { font-size: 14px; font-weight: 820; }
.mr-notes-field textarea, .mr-customer-fields input, .mr-customer-fields select { width: 100%; min-height: 49px; padding: 11px 12px; border: 1px solid var(--mr-line) !important; border-radius: 13px; color: var(--mr-text); background: var(--mr-card) !important; box-shadow: none !important; resize: vertical; }
.mr-product-action { position: sticky; bottom: calc(-24px - env(safe-area-inset-bottom)); z-index: 4; display: grid; grid-template-columns: auto 1fr; gap: 9px; margin: 6px -18px calc(-24px - env(safe-area-inset-bottom)); padding: 12px 18px calc(12px + env(safe-area-inset-bottom)); border-top: 1px solid var(--mr-line); background: color-mix(in srgb, var(--mr-background) 92%, transparent); backdrop-filter: blur(14px); }
.mr-quantity { display: grid; grid-template-columns: 35px 32px 35px; align-items: center; border: 1px solid var(--mr-line); border-radius: 14px; background: var(--mr-card); }
.mr-quantity button { height: 48px; padding: 0; border: 0; color: var(--mr-text); background: transparent; font-size: 20px; }
.mr-quantity strong { text-align: center; font-size: 13px; }
.mr-primary-button { display: flex; justify-content: space-between; align-items: center; gap: 12px; min-height: 50px; padding: 10px 16px; border: 0; border-radius: 14px; color: #fff; background: var(--mr-primary); box-shadow: 0 8px 22px color-mix(in srgb, var(--mr-primary) 25%, transparent); font-size: 13px; }
.mr-primary-button:disabled { opacity: .45; box-shadow: none; cursor: not-allowed; }
.mr-primary-button strong { font-size: 14px; }
.mr-full-button { width: 100%; margin-top: 15px; }

.mr-sheet-title { margin: 8px 0 20px; }
.mr-sheet-title h2 { margin: 0; padding-right: 44px; font-size: 28px; line-height: 1.08; letter-spacing: -.04em; }
.mr-cart-items { display: grid; gap: 11px; }
.mr-cart-item { display: grid; grid-template-columns: 62px 1fr auto; gap: 11px; align-items: start; padding: 10px; border: 1px solid var(--mr-line); border-radius: 17px; background: var(--mr-card); }
.mr-cart-thumb { display: grid; place-items: center; width: 62px; height: 62px; overflow: hidden; border-radius: 13px; color: var(--mr-primary); background: color-mix(in srgb, var(--mr-primary) 10%, transparent); font-weight: 850; }
.mr-cart-thumb img { width: 100%; height: 100%; object-fit: cover; }
.mr-cart-item-copy { display: grid; min-width: 0; gap: 2px; }
.mr-cart-item-copy > strong { font-size: 13px; }
.mr-cart-item-copy small { overflow: hidden; color: var(--mr-muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.mr-cart-item-copy button { width: max-content; margin-top: 4px; padding: 0; border: 0; color: #bf4d43; background: transparent; font-size: 10px; }
.mr-cart-side { display: grid; justify-items: end; gap: 9px; }
.mr-cart-side > strong { color: var(--mr-primary); font-size: 12px; }
.mr-small-quantity { display: grid; grid-template-columns: 27px 24px 27px; align-items: center; overflow: hidden; border: 1px solid var(--mr-line); border-radius: 10px; }
.mr-small-quantity button { height: 28px; padding: 0; border: 0; color: var(--mr-text); background: transparent; }
.mr-small-quantity span { text-align: center; font-size: 11px; }
.mr-cart-summary, .mr-checkout-summary { display: grid; gap: 7px; margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--mr-line); }
.mr-cart-summary span, .mr-checkout-summary span { display: flex; justify-content: space-between; gap: 12px; color: var(--mr-muted); font-size: 12px; }
.mr-cart-summary strong, .mr-checkout-summary strong { color: var(--mr-text); }
.mr-form-alert { margin: 12px 0 0; padding: 10px 12px; border-radius: 12px; color: #894b16; background: #fff3df; font-size: 11px; }

.mr-back-button { padding: 0; border: 0; color: var(--mr-primary); background: transparent; font-size: 12px; font-weight: 750; }
.mr-methods > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.mr-method-card { position: relative; display: grid; justify-items: center; gap: 5px; min-height: 100px; align-content: center; padding: 9px; border: 2px solid transparent; border-radius: 16px; background: var(--mr-card); box-shadow: 0 5px 16px rgba(20,31,24,.06); text-align: center; cursor: pointer; }
.mr-method-card input { position: absolute; opacity: 0; }
.mr-method-card:has(input:checked) { border-color: var(--mr-primary); background: color-mix(in srgb, var(--mr-primary) 6%, var(--mr-card)); }
.mr-method-card > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 11px; color: var(--mr-primary); background: color-mix(in srgb, var(--mr-primary) 9%, transparent); font-size: 19px; }
.mr-method-card strong { font-size: 10px; line-height: 1.2; }
.mr-method-card i { position: absolute; top: 7px; right: 7px; width: 13px; height: 13px; border: 1px solid var(--mr-line); border-radius: 50%; }
.mr-method-card input:checked ~ i { border-color: var(--mr-primary); background: var(--mr-primary); box-shadow: inset 0 0 0 3px var(--mr-card); }
.mr-customer-fields { display: grid; gap: 11px; }
.mr-customer-fields label { display: grid; gap: 6px; }
.mr-customer-fields label > span { color: var(--mr-muted); font-size: 11px; font-weight: 700; }
.mr-customer-fields [hidden] { display: none !important; }
.mr-coupon-box { display: grid; gap: 5px; margin-top: 17px; padding: 13px; border: 1px solid var(--mr-line); border-radius: 15px; background: var(--mr-card); }
.mr-coupon-box label { display: grid; gap: 7px; }
.mr-coupon-box label > span { color: var(--mr-muted); font-size: 11px; font-weight: 750; }
.mr-coupon-box label > div { display: grid; grid-template-columns: 1fr auto; gap: 7px; }
.mr-coupon-box input { width: 100%; min-width: 0; height: 44px; padding: 0 11px; border: 1px solid var(--mr-line) !important; border-radius: 11px; color: var(--mr-text); background: var(--mr-background) !important; box-shadow: none !important; text-transform: uppercase; }
.mr-coupon-box button { min-width: 78px; padding: 0 13px; border: 0; border-radius: 11px; color: #fff; background: var(--mr-primary); font-size: 11px; font-weight: 800; }
.mr-coupon-box small { min-height: 14px; color: var(--mr-muted); font-size: 10px; }
.mr-coupon-box small.is-success { color: #1b7549; }
.mr-coupon-box small.is-error { color: #b4433d; }
.mr-checkout-summary [hidden] { display: none !important; }
.mr-checkout-summary b { font-weight: 650; }
.mr-checkout-summary .is-total { margin-top: 6px; padding-top: 11px; border-top: 1px solid var(--mr-line); color: var(--mr-text); font-size: 15px; font-weight: 820; }
.mr-whatsapp-button { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; width: 100%; min-height: 58px; margin-top: 15px; padding: 9px 14px 9px 10px; border: 0; border-radius: 17px; color: #fff; background: #1fae62; box-shadow: 0 10px 24px rgba(31,174,98,.24); }
.mr-whatsapp-button .mr-whatsapp-mark { display: grid; place-items: center; width: 39px; height: 39px; border-radius: 13px; background: rgba(255,255,255,.18); font-size: 22px; }
.mr-whatsapp-button strong { text-align: left; font-size: 12px; }
.mr-whatsapp-button em { font-size: 12px; font-style: normal; font-weight: 850; }
.mr-whatsapp-button:disabled { opacity: .62; cursor: wait; }
.mr-order-success { display: grid; justify-items: center; padding: 28px 2px 10px; text-align: center; }
.mr-success-mark { display: grid; place-items: center; width: 68px; height: 68px; border-radius: 23px; color: #fff; background: #22a869; box-shadow: 0 12px 28px rgba(34,168,105,.24); font-size: 30px; }
.mr-order-success h2 { margin: 17px 0 4px; font-size: 26px; }
.mr-order-success > strong { color: var(--mr-primary); font-size: 22px; letter-spacing: .06em; }
.mr-order-success p { max-width: 360px; color: var(--mr-muted); font-size: 12px; }
.mr-success-actions { display: grid; width: 100%; gap: 9px; margin-top: 14px; }
.mr-success-actions a { display: flex; justify-content: center; align-items: center; min-height: 50px; border-radius: 14px; color: #fff; background: var(--mr-primary); font-size: 12px; font-weight: 800; text-decoration: none; }
.mr-success-actions a.is-whatsapp { background: #20a964; }
.mr-toast { position: fixed; z-index: 100010; right: 50%; bottom: 90px; max-width: calc(100vw - 32px); padding: 10px 14px; border-radius: 99px; color: #fff; background: #1e2a23; box-shadow: 0 10px 28px rgba(13,21,16,.2); opacity: 0; pointer-events: none; transform: translate(50%, 12px); transition: .2s; font-size: 11px; font-weight: 700; white-space: nowrap; }
.mr-toast.is-visible { opacity: 1; transform: translate(50%, 0); }
.mr-noscript { margin: 20px; padding: 14px; border-radius: 12px; background: #fff0df; }
.mr-policies { padding-top: 4px; }
.mr-policies section { margin-top: 13px; padding: 15px; border: 1px solid var(--mr-line); border-radius: 15px; background: var(--mr-card); }
.mr-policies h3 { margin: 0 0 7px; font-size: 14px; }
.mr-policies p { margin: 0; color: var(--mr-muted); font-size: 12px; line-height: 1.65; }

/* Brasa: immersive dark header and stronger cards. */
.mr-template-brasa .mr-hero { color: #fff; background: radial-gradient(circle at 88% 12%, color-mix(in srgb, var(--mr-accent) 26%, transparent), transparent 36%), linear-gradient(145deg, color-mix(in srgb, var(--mr-text) 82%, #000), color-mix(in srgb, var(--mr-primary) 52%, #151817)); }
.mr-template-brasa .mr-hero::before { opacity: .25; }
.mr-template-brasa .mr-brand-copy p, .mr-template-brasa .mr-status { color: rgba(255,255,255,.72); }
.mr-template-brasa .mr-eyebrow { color: var(--mr-accent); }
.mr-template-brasa .mr-status { background: rgba(255,255,255,.12); }
.mr-template-brasa .mr-product-card { border-radius: 16px; }
.mr-template-brasa .mr-product-image { aspect-ratio: 1 / 1.05; }
.mr-template-brasa .mr-product-bottom button { border-radius: 50%; }

/* Boutique: editorial details and restrained geometry. */
.mr-template-boutique { font-family: Georgia, "Times New Roman", serif; }
.mr-template-boutique .mr-brand-copy p, .mr-template-boutique .mr-status, .mr-template-boutique .mr-search input, .mr-template-boutique .mr-categories, .mr-template-boutique .mr-product-copy p, .mr-template-boutique .mr-section-title span, .mr-template-boutique .mr-eyebrow, .mr-template-boutique .mr-sheet-scroll { font-family: Inter, ui-sans-serif, sans-serif; }
.mr-template-boutique .mr-hero { border-radius: 0; background: linear-gradient(120deg, color-mix(in srgb, var(--mr-primary) 7%, var(--mr-background)), var(--mr-background)); }
.mr-template-boutique .mr-public-logo, .mr-template-boutique .mr-search, .mr-template-boutique .mr-product-card, .mr-template-boutique .mr-product-image, .mr-template-boutique .mr-product-bottom button, .mr-template-boutique .mr-feature-card { border-radius: 4px; }
.mr-template-boutique .mr-product-copy h3 { font-family: Georgia, "Times New Roman", serif; font-weight: 600; }
.mr-template-boutique .mr-price strong { color: var(--mr-text); }

@media (min-width: 760px) {
    .mr-app { margin-block: 25px; border: 1px solid var(--mr-line); border-radius: 34px; box-shadow: 0 25px 80px rgba(17, 27, 21, .1); }
    .mr-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .mr-cart-bar { right: calc((100vw - min(690px, 100vw - 32px)) / 2); left: calc((100vw - min(690px, 100vw - 32px)) / 2); }
}

/* Pantalla independiente de seguimiento, sin cabecera ni menú del tema. */
.mr-tracking-app { --mr-card:#fff; --mr-muted:color-mix(in srgb,var(--mr-text) 62%,transparent); --mr-line:color-mix(in srgb,var(--mr-text) 10%,transparent); min-height:100dvh;padding:0 16px 50px;color:var(--mr-text);background:radial-gradient(circle at 90% 2%,color-mix(in srgb,var(--mr-accent) 24%,transparent),transparent 28%),var(--mr-background);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}.mr-tracking-app *{box-sizing:border-box}.mr-tracking-header{display:flex;justify-content:space-between;align-items:center;width:min(100%,680px);min-height:84px;margin:auto}.mr-tracking-brand{display:flex;align-items:center;gap:10px}.mr-tracking-brand>img,.mr-tracking-brand>span{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;object-fit:contain;color:#fff;background:var(--mr-primary);font-weight:900}.mr-tracking-brand p{display:grid;margin:0}.mr-tracking-brand small{color:var(--mr-muted);font-size:10px}.mr-tracking-header>a{padding:8px 12px;border-radius:99px;color:var(--mr-primary);background:color-mix(in srgb,var(--mr-primary) 9%,white);font-size:11px;font-weight:800;text-decoration:none}.mr-tracking-card{width:min(100%,680px);margin:22px auto 0;padding:clamp(22px,6vw,42px);border:1px solid var(--mr-line);border-radius:28px;background:var(--mr-card);box-shadow:0 22px 70px color-mix(in srgb,var(--mr-text) 10%,transparent)}.mr-tracking-eyebrow{color:var(--mr-primary);font-size:10px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.mr-tracking-card h1{margin:4px 0 0;font-size:clamp(31px,9vw,54px);letter-spacing:-.05em}.mr-tracking-card>p{margin:2px 0 20px;color:var(--mr-muted);font-size:12px}.mr-current-status{display:flex;align-items:center;gap:9px;padding:13px;border-radius:15px;color:#1b7549;background:#e8f7ed}.mr-current-status i{width:10px;height:10px;border-radius:50%;background:#26a967;box-shadow:0 0 0 5px rgba(38,169,103,.13)}.mr-timeline{display:grid;margin:24px 0}.mr-timeline>div{position:relative;display:grid;grid-template-columns:30px 1fr;gap:10px;min-height:58px}.mr-timeline>div:not(:last-child):before{content:"";position:absolute;top:28px;bottom:-3px;left:14px;width:2px;background:var(--mr-line)}.mr-timeline>div.is-done:not(:last-child):before{background:color-mix(in srgb,var(--mr-primary) 45%,var(--mr-line))}.mr-timeline>div>span{z-index:1;display:grid;place-items:center;width:30px;height:30px;border:2px solid var(--mr-line);border-radius:50%;color:#fff;background:#fff;font-size:11px}.mr-timeline>div.is-done>span{border-color:var(--mr-primary);background:var(--mr-primary)}.mr-timeline p{display:grid;margin:4px 0}.mr-timeline p strong{font-size:13px}.mr-timeline p small{color:var(--mr-muted);font-size:10px}.mr-tracking-summary{display:grid;gap:8px;padding:16px 0;border-block:1px solid var(--mr-line)}.mr-tracking-summary span{display:flex;justify-content:space-between;color:var(--mr-muted);font-size:12px}.mr-tracking-summary strong{color:var(--mr-text)}.mr-tracking-whatsapp,.mr-tracking-empty a{display:flex;justify-content:center;align-items:center;min-height:52px;margin-top:18px;border-radius:15px;color:#fff;background:#20a964;font-size:12px;font-weight:800;text-decoration:none}.mr-tracking-app footer{padding:26px;color:var(--mr-muted);font-size:9px;text-align:center}.mr-tracking-empty{display:grid;justify-items:center;width:min(100%,520px);min-height:100dvh;align-content:center;margin:auto;text-align:center}.mr-tracking-empty>span{display:grid;place-items:center;width:66px;height:66px;border-radius:22px;color:#fff;background:var(--mr-primary);font-size:28px}.mr-tracking-empty h1{margin:16px 0 3px}.mr-tracking-empty p{max-width:360px;margin:0;color:var(--mr-muted)}.mr-tracking-empty a{width:100%;background:var(--mr-primary)}

@media (min-width: 1050px) {
    .mr-product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .mr-feature-card { flex-basis: 290px; }
}

@media (max-width: 390px) {
    .mr-hero { padding-inline: 15px; }
    .mr-public-logo { flex-basis: 60px; width: 60px; height: 60px; border-width: 3px; border-radius: 19px; }
    .mr-product-grid { gap: 9px; }
    .mr-product-copy { min-height: 148px; padding: 11px; }
    .mr-product-copy p { -webkit-line-clamp: 1; }
    .mr-product-bottom button { flex-basis: 34px; width: 34px; height: 34px; }
    .mr-methods > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (prefers-reduced-motion: reduce) {
    .mr-app *, .mr-app *::before, .mr-app *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Recibo, aviso de factura e impresión. */
.mr-invoice-success{padding:12px 14px;border:1px solid color-mix(in srgb,var(--mr-primary) 18%,transparent);border-radius:13px;background:color-mix(in srgb,var(--mr-primary) 6%,white)}
.mr-invoice-success strong{display:block;margin-top:3px;color:var(--mr-text)}
.mr-success-actions button{min-height:45px;padding:10px 15px;border:0;border-radius:13px;color:var(--mr-primary);background:color-mix(in srgb,var(--mr-primary) 9%,white);font-size:11px;font-weight:800;cursor:pointer}
.mr-customer-fields label>small{color:var(--mr-muted);font-size:10px}
.mr-customer-receipt{display:grid;gap:7px;margin:20px 0;padding:15px;border:1px solid var(--mr-line);border-radius:15px;background:color-mix(in srgb,var(--mr-background) 45%,white)}
.mr-customer-receipt>strong{margin-bottom:3px;font-size:13px}.mr-customer-receipt>small{color:var(--mr-muted);font-size:10px;line-height:1.4}.mr-customer-receipt span{display:flex;justify-content:space-between;gap:12px;color:var(--mr-muted);font-size:11px}.mr-customer-receipt b{color:var(--mr-text);font-weight:650}.mr-customer-receipt em{font-style:normal;white-space:nowrap}
.mr-invoice-notice{padding:13px;border-radius:14px;color:var(--mr-muted);background:color-mix(in srgb,var(--mr-accent) 13%,white);font-size:11px!important;line-height:1.5}.mr-invoice-notice strong{display:block;color:var(--mr-text)}
.mr-tracking-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:18px}.mr-tracking-actions button,.mr-tracking-actions a{display:flex;justify-content:center;align-items:center;min-height:52px;margin:0;padding:10px;border:0;border-radius:15px;font-size:11px;font-weight:800;cursor:pointer}.mr-tracking-actions button{color:var(--mr-primary);background:color-mix(in srgb,var(--mr-primary) 9%,white)}
@media(max-width:520px){.mr-tracking-actions{grid-template-columns:1fr}}
@media print{.mr-standalone-body{background:#fff!important}.mr-tracking-app{min-height:auto;padding:0;background:#fff!important}.mr-tracking-header>a,.mr-current-status,.mr-timeline,.mr-tracking-actions{display:none!important}.mr-tracking-header{min-height:58px}.mr-tracking-card{width:100%;margin:0;padding:20px;border:0;border-radius:0;box-shadow:none}.mr-tracking-app footer{padding:15px}.mr-tracking-card h1{font-size:32px}.mr-customer-receipt{break-inside:avoid}}
