:root {
  --tomato: #b62134;
  --tomato-dark: #80182c;
  --crust: #eda83c;
  --cream: #fff6ec;
  --paper: #fcf9f8;
  --ink: #2b1c25;
  --muted: #71636a;
  --herb: #3f6b4e;
  --line: #eadde1;
  --white: #fff;
  --shadow: 0 18px 45px rgba(59, 31, 24, .13);
  --radius: 18px;
  --display: "Bahnschrift", "Avenir Next", "Trebuchet MS", sans-serif;
  --body: "Segoe UI", Arial, sans-serif;
}

/* Disponibilidade pública e cartões de alimentação */
.payment-mark--food_card{color:#b06b13}.payment-option__brands{max-width:580px;line-height:1.35}
.maintenance-body{min-height:100dvh;display:grid;grid-template-rows:1fr auto;place-items:center;padding:clamp(22px,5vw,64px);background:#f7f1e9}.maintenance-card{width:min(100%,620px);display:grid;justify-items:center;gap:10px;padding:clamp(28px,7vw,64px);background:#fff;border:1px solid var(--line);border-radius:24px;text-align:center;box-shadow:var(--shadow)}.maintenance-card__logo,.maintenance-card__monogram{width:104px;height:104px;margin-bottom:10px;object-fit:cover;border:6px solid #fff;border-radius:50%;box-shadow:0 0 0 1px var(--line),0 12px 28px rgba(59,31,24,.14)}.maintenance-card__monogram{display:grid;place-items:center;color:#fff;background:var(--tomato);font-family:var(--display);font-size:2.7rem}.maintenance-card h1{margin:4px 0 0;font-family:var(--display);font-size:clamp(2rem,7vw,3.6rem);letter-spacing:-.045em}.maintenance-card p{max-width:470px;margin:5px 0;color:var(--muted);font-size:clamp(.95rem,2.8vw,1.08rem);line-height:1.6}.maintenance-card>small{color:#8a7c75}.maintenance-credit{padding-top:28px;color:var(--muted);font-size:.8rem;text-align:center}.maintenance-credit a{color:var(--ink);font-weight:800;text-decoration:none}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--body); -webkit-font-smoothing: antialiased; }
body.drawer-open { overflow: hidden; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
img { display: block; max-width: 100%; }
.shell { width: min(100% - 28px, 1480px); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; z-index: 200; top: 10px; left: 10px; padding: 10px 14px; color: #fff; background: var(--ink); border-radius: 8px; text-decoration: none; transform: translateY(-150%); }
.skip-link:focus { transform: translateY(0); }
.eyebrow { color: var(--tomato); font-size: .72rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }

.store-hero { background: var(--paper); }
.store-hero__art { position: relative; min-height: 210px; display: grid; align-items: center; overflow: hidden; color: white; background: radial-gradient(circle at 78% 20%, rgba(243,179,61,.44), transparent 20%), linear-gradient(120deg, #231b18 0 56%, #67181b 56% 100%); }
.store-hero__art::before { content: ""; position: absolute; inset: 0; opacity: .18; background-image: radial-gradient(circle, #fff 1px, transparent 1.5px); background-size: 22px 22px; transform: rotate(-4deg) scale(1.1); }
.store-hero__art--photo { background-position: center; background-size: cover; }
.store-hero__art--photo::before { content: none; }
.store-hero__art--photo.store-hero__art--with-copy::before { content: ""; opacity: 1; background: linear-gradient(90deg,rgba(26,16,13,.86),rgba(26,16,13,.28) 70%,rgba(26,16,13,.5)); transform: none; }
.store-hero__art::after { content: ""; position: absolute; width: 290px; height: 290px; right: 5%; bottom: -190px; border: 24px solid var(--crust); border-radius: 50%; box-shadow: 0 0 0 16px rgba(255,255,255,.08); }
.store-hero__art--photo:not(.store-hero__art--with-copy)::after { content: none; }
.hero-copy { position: relative; z-index: 1; width: min(100% - 40px, 1480px); margin: auto; padding-block: 24px; text-align: center; }
.hero-copy small { display: block; margin-bottom: 8px; color: #f7d798; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.hero-copy strong { max-width: 24ch; display: block; margin-inline: auto; font-family: var(--display); font-size: clamp(2rem, 5vw, 4.9rem); line-height: .98; letter-spacing: -.04em; text-wrap: balance; }
.hero-flour { position: absolute; border: 1px solid rgba(255,255,255,.2); border-radius: 999px; }
.hero-flour--one { width: 160px; height: 160px; right: 22%; top: -72px; }
.hero-flour--two { width: 80px; height: 80px; right: 8%; top: 28px; }

.store-summary { position: relative; display: grid; grid-template-columns: 68px 1fr 44px; align-items: center; gap: 14px; min-height: 108px; }
.brand-seal { align-self: start; width: 68px; height: 68px; margin-top: -24px; display: grid; place-items: center; color: #fff; background: var(--tomato); border: 5px solid var(--paper); border-radius: 50%; box-shadow: var(--shadow); }
.brand-seal span { font-family: var(--display); font-size: 1.1rem; }
.brand-seal img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
.store-summary h1 { margin: 3px 0 4px; font-family: var(--display); font-size: clamp(1.35rem, 3vw, 2rem); letter-spacing: -.035em; }
.store-summary p { margin: 0; color: var(--muted); font-size: .86rem; }
.store-description { max-width: 760px; }
.icon-button { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid var(--line); background: var(--white); border-radius: 50%; cursor: pointer; font-size: 1.25rem; }
.icon-button:hover { border-color: var(--tomato); color: var(--tomato); }
.store-status { position: relative; z-index: 4; padding-top: env(safe-area-inset-top, 0); color: white; background: #17643b; }
.store-status.is-closed { background: #a92324; }
.store-status.is-closed .status-dot,
.profile-status-banner.is-closed .status-dot { background: #ff5d5f; box-shadow: 0 0 0 5px rgba(255,93,95,.18), 0 0 15px rgba(255,93,95,.95); }
.store-status__inner { min-height: 48px; display: flex; align-items: center; gap: 22px; font-size: .86rem; }
.store-status__inner button { color: white; background: transparent; border: 0; cursor: pointer; }
.store-profile-trigger { display: inline-flex; align-items: center; gap: 8px; padding: 7px 0; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.store-profile-trigger:hover { color: #fff3d5; }
.store-profile-trigger:focus-visible { outline: 3px solid rgba(255,255,255,.72); outline-offset: 4px; border-radius: 4px; }
.store-profile-trigger span { width: 22px; height: 22px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.56); border-radius: 50%; text-decoration: none; }
.store-orders-link { display: inline-flex; align-items: center; gap: 7px; color: rgba(255,255,255,.9); font-weight: 750; text-decoration: none; }
.store-orders-link:hover { color: #fff3d5; }
.store-orders-link:focus-visible { outline: 3px solid rgba(255,255,255,.72); outline-offset: 4px; border-radius: 4px; }
.store-orders-link span { font-size: 1rem; }
.store-minimum { margin-left: auto; color: rgba(255,255,255,.82); }
.store-live-state { min-width: 165px; margin-left: auto; text-align: right; }
.status-dot { display: inline-block; width: 9px; height: 9px; margin-right: 8px; background: #55ef91; border-radius: 50%; box-shadow: 0 0 0 5px rgba(85,239,145,.17), 0 0 15px rgba(85,239,145,.9); animation: status-pulse 1.7s ease-out infinite; }
@keyframes status-pulse { 0%,45% { transform: scale(1); } 70% { transform: scale(1.22); } 100% { transform: scale(1); } }

.store-profile-dialog { width: min(94vw, 760px); max-height: min(88dvh, 860px); padding: 0; overflow: auto; overscroll-behavior: contain; color: var(--ink); background: var(--paper); border: 0; border-radius: 18px; box-shadow: 0 30px 90px rgba(36,27,24,.34); }
.store-profile-dialog::backdrop { background: rgba(28,19,16,.62); backdrop-filter: blur(4px); }
.store-profile-dialog__head { position: sticky; z-index: 2; top: 0; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 24px; background: rgba(255,253,249,.97); border-bottom: 1px solid var(--line); }
.store-profile-dialog__head h2 { margin: 4px 0 0; font-family: var(--display); font-size: clamp(1.45rem,4vw,2rem); }
.store-profile-dialog__head .dialog-close { position: static; flex: 0 0 auto; }
.profile-status-banner { display: flex; align-items: center; gap: 3px; margin: 20px 24px 0; padding: 16px 18px; color: #fff; background: #17643b; border-radius: 8px; }
.profile-status-banner.is-closed { background: #a92324; }
.profile-minimum { margin: 0; padding: 18px 24px; color: var(--muted); }
.profile-section { margin: 0 24px 22px; }
.profile-section h3 { margin: 0; padding: 18px 20px; background: #ecebea; font-family: var(--display); font-size: 1.05rem; }
.profile-hours { padding-inline: 20px; }
.profile-hours > div { display: grid; grid-template-columns: minmax(130px, .45fr) 1fr; gap: 14px; padding: 14px 0; border-bottom: 1px solid var(--line); }
.profile-hours > div:last-child { border-bottom: 0; }
.profile-hours span { color: var(--muted); }
.profile-hours-empty { margin: 0; padding: 18px 20px; color: var(--muted); }
.profile-payments { display: grid; gap: 2px; padding: 12px 8px; }
.profile-payments > div { min-height: 64px; display: grid; grid-template-columns: 48px 1fr; align-items: center; gap: 10px; padding: 7px 12px; }
.profile-payments > div > span:last-child { display: grid; gap: 3px; }
.profile-payments small { color: var(--muted); }
.profile-payment-icon { width: 42px; height: 42px; display: grid; place-items: center; color: var(--tomato); background: #f4eeee; border-radius: 10px; font-size: .75rem; font-weight: 900; }
.profile-payment-icon--pix { color: #199f98; font-size: 1.25rem; }
.profile-payment-icon--cash { color: #2d7651; }
.payment-icon-svg { width: 25px; height: 25px; display: block; fill: currentColor; }
.payment-icon-svg--pix { color: #1aa7a1; }
.payment-icon-svg--cash { color: #2d7651; }
.profile-contact p { margin: 0; padding: 16px 20px; }

.catalog { padding: 32px 0 120px; }
.catalog-toolbar { display: grid; grid-template-columns: 1fr minmax(260px, 430px); align-items: end; gap: 24px; margin-bottom: 22px; }
.catalog-toolbar h2, .section-heading h2 { margin: 5px 0 0; font-family: var(--display); font-size: clamp(1.55rem, 3vw, 2.4rem); letter-spacing: -.04em; }
.search-field { height: 48px; display: flex; align-items: center; gap: 10px; padding: 0 16px; border: 1px solid var(--line); background: white; border-radius: 999px; box-shadow: 0 8px 24px rgba(59,31,24,.06); }
.search-field:focus-within { border-color: var(--tomato); box-shadow: 0 0 0 4px rgba(169,35,36,.1); }
.search-field input { width: 100%; border: 0; outline: 0; background: transparent; }
.search-field span:last-child { color: var(--tomato); font-size: 1.4rem; }

.category-grid, .product-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.category-card, .product-card { position: relative; aspect-ratio: 1 / 1.08; overflow: hidden; padding: 0; color: white; text-align: left; text-decoration:none; border: 0; background: #332420; border-radius: 12px; cursor: pointer; box-shadow: 0 8px 20px rgba(45,25,20,.12); isolation: isolate; }
.category-card img, .product-card img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.category-card:hover img, .product-card:hover img { transform: scale(1.045); }
.category-card:focus-visible, .product-card:focus-visible, .button:focus-visible, .mobile-nav a:focus-visible, .mobile-nav button:focus-visible { outline: 4px solid rgba(243,179,61,.65); outline-offset: 3px; }
.category-card__shade, .product-card__shade { position: absolute; inset: 0; z-index: 1; background: linear-gradient(to top, rgba(27,16,13,.92), rgba(27,16,13,.05) 62%); }
.category-card__label, .product-card__content { position: absolute; z-index: 2; left: 10px; right: 10px; bottom: 10px; display: grid; gap: 2px; }
.category-card__label strong { font-family: var(--display); font-size: clamp(.82rem, 2.2vw, 1.2rem); line-height: 1.02; text-transform: uppercase; }
.category-card__label small { display: none; color: rgba(255,255,255,.76); font-size: .74rem; }
.promo-ribbon { position: absolute; z-index: 3; top: 9px; left: 10px; right: 10px; min-height: 28px; display: flex; align-items: center; justify-content: center; gap: 7px; padding: 6px 10px; color: white; background: linear-gradient(90deg,#8f1016 0%,#df171d 48%,#a90f16 100%); border: 1px solid rgba(255,255,255,.28); border-radius: 999px; text-align: center; font-size: .64rem; font-weight: 900; letter-spacing: .11em; box-shadow: 0 6px 14px rgba(86,8,12,.3); }
.promo-ribbon span { color: #ffd65c; font-size: .78rem; line-height: 1; }

.products-section { scroll-margin-top: 18px; }
.section-heading { display: flex; align-items: center; gap: 18px; margin: 6px 0 22px; }
.catalog.is-category-view { padding-top: 26px; }
.catalog.is-category-view .catalog-toolbar { display: none; }
.catalog.is-category-view .section-heading { margin-top: 0; }
.back-button { min-height: 42px; padding: 0 14px; color: var(--tomato); border: 1px solid rgba(169,35,36,.25); background: rgba(169,35,36,.05); border-radius: 999px; cursor: pointer; font-weight: 700; }
.product-card { aspect-ratio: .86 / 1; }
.product-card__content { gap: 6px; }
.product-card__content > strong { font-family: var(--display); font-size: clamp(.86rem, 2vw, 1.12rem); line-height: 1.04; }
.product-card__content > small { display: -webkit-box; overflow: hidden; color: rgba(255,255,255,.75); font-size: .72rem; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.product-card__price { display: flex; align-items: baseline; gap: 6px; }
.product-card__price del { color: rgba(255,255,255,.55); font-size: .7rem; }
.product-card__price b { color: #ffd981; font-size: .95rem; }
.product-card__badge { position: absolute; z-index: 3; top: 10px; left: 10px; padding: 5px 8px; color: var(--ink); background: var(--crust); border-radius: 999px; font-size: .64rem; font-weight: 900; text-transform: uppercase; }
.product-card__half { position: absolute; z-index: 3; top: 10px; right: 10px; padding: 5px 8px; color: white; background: rgba(36,27,24,.84); border: 1px solid rgba(255,255,255,.25); border-radius: 999px; font-size: .61rem; font-weight: 900; text-transform: uppercase; backdrop-filter: blur(8px); }
.empty-state { padding: 70px 20px; display: grid; place-items: center; gap: 5px; color: var(--muted); text-align: center; border: 1px dashed var(--line); border-radius: var(--radius); }

.cart-fab { position: fixed; z-index: 30; right: 18px; bottom: 84px; min-width: 178px; min-height: 56px; display: flex; align-items: center; gap: 10px; padding: 8px 17px 8px 9px; color: white; background: var(--ink); border: 0; border-radius: 999px; box-shadow: 0 14px 35px rgba(36,27,24,.3); cursor: pointer; }
.cart-fab__icon { width: 40px; height: 40px; display: grid; place-items: center; color: var(--ink); background: var(--crust); border-radius: 50%; }
.cart-fab > span:last-child { display: grid; text-align: left; }
.cart-fab { text-decoration:none; }
.cart-fab small { color: rgba(255,255,255,.7); }
.mobile-nav { position: fixed; z-index: 25; inset: auto 0 0; height: 68px; display: grid; grid-template-columns: repeat(2, 1fr); padding-bottom: env(safe-area-inset-bottom); background: rgba(255,253,249,.96); border-top: 1px solid var(--line); backdrop-filter: blur(18px); }
.mobile-nav a, .mobile-nav button { display: grid; place-items: center; align-content: center; gap: 2px; color: var(--muted); background: transparent; border: 0; text-decoration: none; font-size: .69rem; cursor: pointer; }
.mobile-nav span { font-size: 1.22rem; }
.mobile-nav .active { color: var(--tomato); font-weight: 800; }

.drawer-backdrop { position: fixed; z-index: 80; inset: 0; background: rgba(26,17,15,.55); backdrop-filter: blur(3px); }
.cart-drawer { position: fixed; z-index: 90; top: 0; right: 0; width: min(100%, 520px); height: 100dvh; padding: 24px; overflow-y: auto; background: var(--paper); box-shadow: -25px 0 60px rgba(36,27,24,.22); visibility: hidden; pointer-events: none; transform: translateX(105%); transition: transform .28s ease, visibility 0s linear .28s; }
.cart-drawer.is-open { visibility: visible; pointer-events: auto; transform: translateX(0); transition-delay: 0s; }
.drawer-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; }
.drawer-header h2 { margin: 3px 0 0; font-family: var(--display); font-size: 2rem; }
.cart-items { display: grid; gap: 10px; }
.cart-line { display: grid; grid-template-columns: 60px 1fr auto; align-items: center; gap: 10px; padding: 10px; background: white; border: 1px solid var(--line); border-radius: 14px; }
.cart-line img { width: 60px; height: 60px; object-fit: cover; border-radius: 10px; }
.cart-line > div:nth-child(2) { display: grid; gap: 3px; }
.cart-line small { color: var(--muted); }
.cart-line b { color: var(--tomato); }
.cart-line__actions { display: grid; grid-template-columns: 28px 22px 28px; align-items: center; text-align: center; }
.cart-line__actions button { width: 28px; height: 28px; border: 1px solid var(--line); background: white; border-radius: 50%; cursor: pointer; }
.cart-empty { min-height: 240px; display: grid; place-items: center; align-content: center; gap: 6px; color: var(--muted); text-align: center; }
.cart-empty span { font-size: 3rem; }
.cart-empty p { margin: 0; }
.checkout-form { margin-top: 26px; padding-top: 22px; border-top: 1px solid var(--line); }
.checkout-form h3 { font-family: var(--display); font-size: 1.35rem; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.field { display: grid; gap: 6px; color: var(--muted); font-size: .78rem; font-weight: 700; }
.field--wide { grid-column: 1 / -1; }
.field input, .field select, .field textarea { width: 100%; min-height: 44px; padding: 10px 12px; color: var(--ink); border: 1px solid var(--line); background: white; border-radius: 10px; outline: 0; font-weight: 500; }
.field textarea { resize: vertical; }
.field input:focus, .field select:focus, .field textarea:focus { border-color: var(--tomato); box-shadow: 0 0 0 3px rgba(169,35,36,.1); }
.checkout-totals { display: grid; gap: 8px; margin: 18px 0; }
.checkout-totals span { display: flex; justify-content: space-between; }
.checkout-totals .grand-total { padding-top: 10px; border-top: 1px solid var(--line); font-size: 1.18rem; }
.button { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 18px; border: 0; border-radius: 999px; text-decoration: none; font-weight: 800; cursor: pointer; }
.button.primary { color: white; background: var(--tomato); box-shadow: 0 10px 24px rgba(169,35,36,.22); }
.button.primary:hover { background: var(--tomato-dark); }
.button.secondary { color: white; background: var(--ink); }
.button.ghost { color: var(--tomato); border: 1px solid rgba(169,35,36,.2); background: transparent; }
.button--full { width: 100%; }
.button:disabled { opacity: .65; cursor: wait; }
.form-feedback { min-height: 22px; text-align: center; font-size: .85rem; }
.success-text { color: var(--herb); font-weight: 700; }
.error-text { color: var(--tomato); font-weight: 700; }

.site-credit{display:flex;align-items:center;justify-content:center;gap:5px;padding:22px 14px;color:#746963;background:#fff;border-top:1px solid var(--line);font-size:.78rem}.site-credit a{color:#3e3733;font-weight:900;text-decoration:none}.site-credit a:hover{text-decoration:underline}.site-credit span{font-size:1.05rem}.flow-body>.site-credit{margin-top:28px;margin-bottom:72px}
.local-discovery{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:clamp(24px,5vw,70px);margin-top:clamp(46px,8vw,96px);padding:clamp(28px,5vw,58px);background:#f7efe9;border:1px solid #eadbd2;border-radius:16px}.local-discovery__intro{align-self:center}.local-discovery__intro h2{max-width:760px;margin:8px 0 14px;font-family:var(--display);font-size:clamp(1.75rem,4vw,3.15rem);line-height:1.02;letter-spacing:-.04em;text-wrap:balance}.local-discovery__intro p{max-width:720px;margin:0;color:var(--muted);line-height:1.75;text-wrap:pretty}.local-discovery__faq{display:grid;align-content:start}.local-discovery__faq details{padding:16px 0;border-bottom:1px solid #dfcec3}.local-discovery__faq details:first-child{border-top:1px solid #dfcec3}.local-discovery__faq summary{color:var(--ink);font-weight:900;cursor:pointer}.local-discovery__faq p{margin:10px 0 0;color:var(--muted);font-size:.84rem;line-height:1.6}

.product-dialog { width: min(100% - 24px, 680px); max-height: 94dvh; padding: 0; overflow: auto; color: var(--ink); background: var(--paper); border: 0; border-radius: 22px; box-shadow: var(--shadow); }
.product-dialog::backdrop { background: rgba(26,17,15,.58); backdrop-filter: blur(4px); }
.product-dialog > img { width: 100%; height: 230px; object-fit: cover; }
.dialog-close { position: absolute; top: 12px; right: 12px; z-index: 2; width: 40px; height: 40px; color: white; background: rgba(20,14,12,.68); border: 0; border-radius: 50%; font-size: 1.5rem; cursor: pointer; }
.product-dialog__body { display: grid; gap: 14px; padding: 22px; }
.product-dialog__body h2 { margin: -8px 0 0; font-family: var(--display); font-size: 1.8rem; }
.product-dialog__body > p { margin: -6px 0 0; color: var(--muted); line-height: 1.5; }
.flavor-builder { display: grid; gap: 10px; padding: 0; overflow: hidden; background: white; border: 1px solid #ded8d3; border-radius: 13px; }
.flavor-builder__heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.flavor-builder__heading > div { display: grid; gap: 2px; padding: 14px 16px 0; }
.flavor-builder__heading small { color: var(--muted); }
.flavor-builder__heading > span { margin: 14px 14px 0 0; padding: 5px 8px; color: #75480b; background: #f8dda3; border-radius: 999px; font-size: .65rem; font-weight: 900; text-transform: uppercase; }
.addon-builder{display:grid;gap:10px;padding:0;overflow:hidden;background:#fff;border:1px solid #ded8d3;border-radius:13px}.addon-builder__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px;background:#efeeee}.addon-builder__heading>div{display:grid;gap:2px}.addon-builder__heading small,.addon-builder__heading>span{color:var(--muted);font-size:.72rem}.addon-builder__heading>span{max-width:180px;text-align:right}.addon-groups{display:grid}.addon-group{margin:0;padding:0;border:0}.addon-group+.addon-group{border-top:8px solid #f2efec}.addon-group legend{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;background:#faf8f6}.addon-group legend>span{display:grid;gap:2px}.addon-group legend small{color:var(--muted);font-size:.7rem;font-weight:500}.addon-group legend>b{padding:5px 8px;color:var(--tomato);background:#fbe8e6;border-radius:999px;font-size:.65rem}.addon-option{min-height:70px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 16px;border-top:1px solid #ece7e3}.addon-option>span{display:grid;gap:2px}.addon-option small{color:var(--muted);font-size:.7rem}.addon-option>span>b{font-size:.72rem}.addon-quantity{display:grid;grid-template-columns:32px 26px 32px;align-items:center;text-align:center}.addon-quantity button{width:32px;height:32px;color:var(--tomato);background:#fff;border:1px solid #e6c5c1;border-radius:50%;font-size:1rem;font-weight:900;cursor:pointer}.addon-quantity button:disabled{opacity:.35;cursor:not-allowed}.addon-quantity output{font-weight:900}
.flavor-rule { margin: 0; padding: 0 16px 12px; color: #684817; font-size: .76rem; line-height: 1.45; }
.flavor-options { display: grid; gap: 10px; }
.flavor-slot { display: grid; }
.flavor-slot + .flavor-slot { border-top: 8px solid #f2efec; }
.flavor-slot__title { min-height: 64px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; color: var(--ink); background: #efeeee; }
.flavor-slot__title > span { display: grid; gap: 2px; }
.flavor-slot__title strong { font-size: .92rem; }
.flavor-slot__title small { color: var(--muted); font-size: .74rem; font-weight: 500; }
.flavor-slot__title > b { min-width: 35px; padding: 5px 8px; color: var(--tomato); background: white; border-radius: 999px; text-align: center; font-size: .72rem; }
.flavor-list { display: grid; }
.flavor-list__item { min-width: 0; min-height: 96px; display: grid; grid-template-columns: 68px minmax(0, 1fr) 38px; align-items: center; gap: 13px; padding: 12px 16px; color: var(--ink); text-align: left; background: white; border: 0; border-bottom: 1px solid #dedad7; cursor: pointer; }
.flavor-list__item:last-child { border-bottom: 0; }
.flavor-list__item:hover { background: #fffaf2; }
.flavor-list__item.is-selected { background: #fff5e5; box-shadow: inset 4px 0 var(--tomato); }
.flavor-list__item img { width: 66px; height: 66px; object-fit: cover; border-radius: 9px; background: #f0edeb; }
.flavor-list__copy { min-width: 0; display: grid; align-content: center; gap: 4px; }
.flavor-list__copy strong { font-size: .94rem; line-height: 1.3; overflow-wrap: anywhere; }
.flavor-list__copy small { display: block; overflow: visible; color: var(--muted); font-size: .76rem; line-height: 1.45; overflow-wrap: anywhere; text-overflow: clip; white-space: normal; }
.flavor-list__copy b { margin-top: 1px; font-size: .84rem; }
.flavor-list__check { width: 36px; height: 36px; display: grid; place-items: center; color: var(--tomato); background: #f7e6e4; border: 1px solid #edd0cc; border-radius: 50%; font-weight: 900; }
.flavor-list__item.is-selected .flavor-list__check { color: white; background: var(--tomato); border-color: var(--tomato); }
.flavor-feedback { min-height: 18px; margin: 0; padding: 0 16px 14px; color: var(--tomato); font-size: .74rem; font-weight: 700; }
.quantity-row { display: flex; align-items: center; justify-content: space-between; }
.quantity-row > strong { color: var(--tomato); font-size: 1.35rem; }
.quantity-control { display: grid; grid-template-columns: 38px 36px 38px; align-items: center; text-align: center; }
.quantity-control button { width: 38px; height: 38px; border: 1px solid var(--line); background: white; border-radius: 50%; cursor: pointer; font-size: 1.2rem; }

/* Fluxo público em páginas: categoria → carrinho → finalização */
.flow-body { min-height:100dvh;padding-bottom:94px;background:#fff;color:var(--ink) }
.flow-header { position:sticky;z-index:30;top:0;min-height:68px;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:10px;padding:8px max(16px,calc((100% - 1080px)/2));background:rgba(255,255,255,.97);border-bottom:1px solid #e7e3df;backdrop-filter:blur(14px) }
.flow-header>a:first-child { width:40px;height:40px;display:grid;place-items:center;color:#2d2927;text-decoration:none;font-size:2rem }
.flow-header>div { display:grid;gap:2px }.flow-header>div strong{font-family:var(--display);font-size:1rem}.flow-header>div span{color:var(--muted);font-size:.7rem}
.flow-cart-link { display:flex;align-items:center;gap:7px;padding:9px 12px;color:var(--tomato);border:1px solid #ead0cd;border-radius:999px;text-decoration:none;font-size:.75rem;font-weight:800 }.flow-cart-link b{min-width:20px;height:20px;display:grid;place-items:center;color:#fff;background:var(--tomato);border-radius:50%;font-size:.65rem}
.flow-header--cart>button{color:var(--tomato);background:none;border:0;cursor:pointer;font-weight:800}
.flow-shell { width:min(100% - 30px,960px);margin:0 auto }
.category-page__intro { display:grid;grid-template-columns:120px 1fr;align-items:center;gap:22px;padding:28px 0;border-bottom:1px solid var(--line) }.category-page__intro img{width:120px;height:100px;object-fit:cover;border-radius:14px}.category-page__intro h1{margin:5px 0 3px;font-family:var(--display);font-size:clamp(1.8rem,5vw,2.8rem)}.category-page__intro p{margin:0;color:var(--muted)}
.page-flavor-builder { margin:20px 0;border:1px solid #ddd8d4;border-radius:12px;overflow:hidden }.page-flavor-builder>header{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;background:#eee}.page-flavor-builder>header>div{display:grid;gap:3px}.page-flavor-builder>header small{color:var(--muted)}.page-flavor-builder>header>span{padding:6px 10px;color:var(--tomato);background:#fff;border-radius:999px;font-weight:900}.page-price-rule{margin:0;padding:12px 18px;color:#6a4512;background:#fff7e8;font-size:.78rem}
.page-product-list { display:grid;background:#fff }.page-product-row{min-width:0;min-height:92px;display:grid;grid-template-columns:66px minmax(0,1fr) 38px;align-items:center;gap:13px;padding:12px 18px;color:var(--ink);background:#fff;border:0;border-bottom:1px solid #e3dfdc;text-align:left}.page-product-row img{width:66px;height:66px;object-fit:cover;border-radius:10px;background:#eee}.page-product-row>span{min-width:0;display:grid;gap:4px}.page-product-row small{overflow:visible;color:var(--muted);font-size:.76rem;line-height:1.45;overflow-wrap:anywhere;white-space:normal}.page-product-row b{font-size:.82rem}.page-product-row i{width:32px;height:32px;display:grid;place-items:center;color:var(--tomato);background:#f8e9e7;border:1px solid #efd0cc;border-radius:50%;font-style:normal;font-weight:900;cursor:pointer}.page-product-row.is-selected{background:#fff4e4;box-shadow:inset 4px 0 var(--tomato)}.page-product-row.is-selected i{color:#fff;background:var(--tomato)}
.simple-list { margin:20px 0;border:1px solid var(--line);border-radius:12px;overflow:hidden }.simple-list .page-product-row{grid-template-columns:72px minmax(0,1fr) auto}.simple-quantity,.page-builder-quantity{display:grid;grid-template-columns:34px 30px 34px;align-items:center;gap:2px;text-align:center}.simple-quantity button,.page-builder-quantity button{width:34px;height:34px;display:grid;place-items:center;color:var(--tomato);background:#fff;border:1px solid #e7c7c2;border-radius:50%;font-size:1.08rem;font-weight:900;cursor:pointer}.simple-quantity output,.page-builder-quantity output{font-weight:900}.simple-quantity:not(.is-active){grid-template-columns:34px}.simple-quantity:not(.is-active) [data-simple-minus],.simple-quantity:not(.is-active) [data-simple-count]{display:none}.simple-quantity button:disabled,.page-builder-quantity button:disabled{opacity:.35;cursor:not-allowed}
.flow-note { display:grid;gap:6px;margin:16px 18px;color:var(--muted);font-size:.75rem;font-weight:700}.flow-note textarea,.checkout-notes textarea{width:100%;padding:11px;border:1px solid var(--line);border-radius:8px;resize:vertical}.flow-primary{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 18px;color:#fff;background:#df0c06;border:0;border-radius:6px;text-decoration:none;font-weight:900;cursor:pointer}.flow-primary:disabled,.flow-primary.is-disabled{opacity:.38;pointer-events:none}.page-builder-actions{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;margin:0 18px 18px}.page-builder-actions .flow-primary{width:100%}.page-builder-quantity{grid-template-columns:38px 34px 38px}.page-builder-quantity button{width:38px;height:38px}.flow-feedback{min-height:20px;margin:8px 18px;color:var(--tomato);font-size:.78rem}
.flow-cart-bar { position:fixed;z-index:40;right:max(15px,calc((100% - 960px)/2));bottom:18px;width:min(440px,calc(100% - 30px));min-height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;color:#fff;background:#df0c06;border-radius:8px;box-shadow:0 12px 32px rgba(150,10,5,.25);text-decoration:none}.flow-cart-bar span{display:grid}.flow-cart-bar small{color:rgba(255,255,255,.75)}
.flow-empty{min-height:320px;display:grid;place-items:center;align-content:center;gap:10px;color:var(--muted);text-align:center}.flow-empty a{color:var(--tomato);font-weight:800}
.cart-page { padding-top:20px }.cart-page-line{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 6px;border-bottom:1px solid var(--line)}.cart-page-line img{width:76px;height:76px;object-fit:cover;border-radius:11px}.cart-page-line>div:nth-child(2){display:grid;gap:4px}.cart-page-line small{color:var(--muted)}.cart-page-line b{color:var(--tomato)}.cart-page-quantity{display:grid;grid-template-columns:34px 28px 34px;align-items:center;text-align:center;border:1px solid var(--line);border-radius:10px;overflow:hidden}.cart-page-quantity button{height:38px;color:var(--tomato);background:#fff;border:0;font-size:1.2rem;cursor:pointer}
.cart-suggestions{margin-top:24px}.cart-suggestions h2{margin:0;padding:13px 18px;background:#eee;font-family:var(--display);font-size:1.15rem}.cart-suggestions>div{display:flex;gap:12px;padding:12px 0;overflow-x:auto}.cart-suggestions article{position:relative;flex:0 0 122px;display:grid;gap:3px}.cart-suggestions img{width:122px;height:100px;object-fit:cover;border-radius:8px}.cart-suggestions strong{font-size:.82rem}.cart-suggestions span{color:var(--tomato);font-weight:800}.cart-suggestions button{position:absolute;top:70px;right:4px;width:30px;height:30px;color:#fff;background:#df0c06;border:0;border-radius:50%;font-size:1.4rem}.cart-more{min-height:50px;display:grid;place-items:center;margin:10px 0 25px;color:#df0c06;border:2px solid #df0c06;border-radius:6px;text-decoration:none;font-weight:900}.flow-action-footer{position:fixed;z-index:35;inset:auto 0 0;padding:12px max(16px,calc((100% - 960px)/2));background:#fff;border-top:1px solid var(--line)}.flow-action-footer .flow-primary{width:100%}
.checkout-page{width:min(100% - 28px,780px);padding-top:18px}.checkout-customer{padding:0 6px 18px}.checkout-customer>p{color:var(--muted);font-size:.75rem}.checkout-customer-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.checkout-customer-grid label,.checkout-fields label,.change-field label{display:grid;gap:5px;color:var(--muted);font-size:.75rem;font-weight:700}.checkout-customer input,.checkout-fields input,.checkout-fields select,.change-field input{min-height:44px;padding:9px 11px;border:1px solid var(--line);border-radius:7px}
.checkout-customer input[readonly]{color:#4d443f;background:#f3efec}.checkout-customer-status{grid-column:1/-1;margin:0!important;padding:9px 11px;color:var(--muted);background:#f3efec;border-radius:7px;font-size:.72rem!important;line-height:1.45}.checkout-customer-status:empty{display:none}.checkout-customer-status.is-found{color:#21633c;background:#e8f4eb}.checkout-customer-status.is-new{color:#805718;background:#fff3dc}.checkout-customer-status.is-error{color:#8f2929;background:#f9e5e3}.checkout-address-book{display:grid;gap:10px;margin:0 14px 14px;padding:12px;background:#f3efec;border-radius:9px}.checkout-address-book[hidden]{display:none}.checkout-address-book>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.checkout-address-book>header>div{min-width:0;display:grid;gap:2px}.checkout-address-book>header strong{font-size:.78rem}.checkout-address-book>header small{color:var(--muted);font-size:.67rem;line-height:1.4}.checkout-address-book>header button{flex:0 0 auto;padding:6px 9px;color:var(--tomato);background:transparent;border:1px solid #d3c5bd;border-radius:6px;font-size:.68rem;font-weight:800;white-space:nowrap;cursor:pointer}.checkout-address-book>div{display:grid;gap:7px}.checkout-address-book article{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:6px}.checkout-address-book article>button:first-child{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;color:var(--ink);background:#fff;border:1px solid #d8cdc7;border-radius:7px;text-align:left;cursor:pointer}.checkout-address-book article>button:first-child:hover,.checkout-address-book article>button:first-child.is-selected{border-color:var(--tomato)}.checkout-address-book article>button:first-child:disabled{opacity:.55;cursor:not-allowed}.checkout-address-book article span{min-width:0;display:grid;gap:3px}.checkout-address-book article strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem}.checkout-address-book article small{color:var(--muted);font-size:.67rem}.checkout-address-book article i{flex:0 0 auto;color:#6f625c;font-size:.62rem;font-style:normal}.checkout-address-book article>button:last-child{color:#9b3a3a;background:#fff;border:1px solid #e3d4ce;border-radius:7px;font-size:1.1rem;cursor:pointer}.checkout-address-book__empty,.checkout-address-book>p{margin:0;color:var(--muted);font-size:.7rem;line-height:1.5}.checkout-address-save{width:100%}
.checkout-block,.delivery-fields{margin-bottom:16px;overflow:hidden;border:2px solid #df0c06;border-radius:5px}.checkout-block>h2,.delivery-fields>h2{margin:0;padding:18px;color:#fff;background:#df0c06;font-size:.9rem}.choice-row{min-height:76px;display:grid;grid-template-columns:32px minmax(0,1fr) 24px;align-items:center;gap:10px;padding:12px 16px;background:#fff;border-bottom:1px solid #e4e1de;cursor:pointer}.choice-row:last-child{border-bottom:0}.choice-row>span:nth-child(2){display:grid;gap:3px}.choice-row small{color:var(--muted)}.choice-row input{width:20px;height:20px;accent-color:#df0c06}.choice-icon,.payment-mark{color:#df0c06;font-size:1.35rem}.payment-mark--pix{color:#27aaa3}.payment-mark--cash{color:#2d7651}.payment-mark .payment-icon-svg{width:24px;height:24px}.checkout-payment[aria-disabled="true"]{border-color:#ddd}.checkout-payment[aria-disabled="true"]>h2{color:#aaa;background:#eee}.checkout-payment>[data-payment-disabled]{padding:24px;color:#aaa;text-align:center}.delivery-fields{border-color:#ddd}.delivery-fields>h2{color:var(--ink);background:#eee}.checkout-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px}.checkout-fields .wide{grid-column:1/-1}.change-field{display:grid;grid-template-columns:minmax(0,.72fr) minmax(240px,1.28fr);align-items:stretch;gap:12px;padding:13px 16px;background:#faf8f6}.change-field[hidden]{display:none}
.change-calculation{min-width:0;display:grid;align-content:center;gap:3px;padding:11px 13px;color:#5b504a;background:#fff;border:1px solid #d8cec8;border-radius:9px}.change-calculation>span{color:#71655f;font-size:.68rem;font-weight:800}.change-calculation>strong{font-size:1.05rem}.change-calculation>small{color:#71655f;font-size:.68rem;line-height:1.4}.is-ready>.change-calculation{color:#205f3c;background:#eaf5ed;border-color:#a9d0b4}.is-ready>.change-calculation>span,.is-ready>.change-calculation>small{color:#386f4e}.is-error>.change-calculation{color:#8c2929;background:#f9e8e5;border-color:#dfb4ae}.is-error>.change-calculation>span,.is-error>.change-calculation>small{color:#7b3c39}.is-pending>.change-calculation{color:#6c4a15;background:#fff3d9;border-color:#d9b765}.is-pending>.change-calculation>span,.is-pending>.change-calculation>small{color:#715829}
.drawer-change-field{display:grid;grid-template-columns:minmax(0,.72fr) minmax(240px,1.28fr);align-items:stretch;gap:10px}.drawer-change-field[hidden]{display:none}.drawer-change-field>.field{margin:0}.drawer-change-field .change-calculation{min-height:72px}
.delivery-zone-picker{min-width:0;display:grid;gap:5px}.delivery-zone-picker>label:first-child{color:var(--muted);font-size:.75rem;font-weight:700}.delivery-zone-search{position:relative;display:block!important;color:var(--muted)}.delivery-zone-search svg{position:absolute;z-index:1;top:50%;left:12px;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;transform:translateY(-50%);pointer-events:none}.delivery-zone-search input{width:100%;padding-left:40px!important;background:#fff}.delivery-zone-search input:focus-visible{outline:3px solid rgba(169,35,36,.2);outline-offset:2px;border-color:var(--tomato)}.delivery-zone-search__empty{color:#8f1f20;font-size:.7rem;font-weight:700}
.payment-option + .payment-option{border-top:1px solid #e4e1de}.payment-option .choice-row{border-bottom:0}.card-payment-modes{display:flex;flex-wrap:wrap;gap:9px;margin:0;padding:0 16px 16px 58px;border:0;background:#fff}.card-payment-modes[hidden]{display:none}.card-payment-modes legend{width:100%;padding:0 0 8px;color:var(--muted);font-size:.72rem;font-weight:800}.card-payment-modes label{cursor:pointer}.card-payment-modes input{position:absolute;opacity:0;pointer-events:none}.card-payment-modes span{min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;color:#5f5651;background:#faf7f4;border:1px solid #d9cec7;border-radius:999px;font-weight:800}.card-payment-modes input:checked + span{color:#fff;background:#a92324;border-color:#a92324}.card-payment-modes input:focus-visible + span{outline:3px solid rgba(169,35,36,.2);outline-offset:2px}
.checkout-notes{margin:12px 0;border-block:1px solid var(--line)}.checkout-notes summary{padding:16px 4px;font-weight:800;cursor:pointer}.checkout-notes textarea{margin-bottom:12px}.checkout-summary{padding:5px 2px}.checkout-summary p{display:flex;justify-content:space-between;margin:8px 0}.checkout-summary p:last-child{padding-top:8px;border-top:1px solid var(--line);font-size:1.1rem}.checkout-privacy{padding:13px;color:#5e6870;background:#d9effc;text-align:center;font-size:.7rem}.checkout-page form>.flow-primary{width:100%;margin-top:16px}.order-success{min-height:70dvh;display:grid;place-items:center;align-content:center;gap:10px;text-align:center}.order-success>span{width:64px;height:64px;display:grid;place-items:center;color:#fff;background:#2d9a58;border-radius:50%;font-size:2rem}.order-success h1{margin:4px;font-family:var(--display)}.order-success a{color:var(--tomato);font-weight:900}
.delivery-quote-notice{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;margin:0 0 16px;padding:14px;color:#4c3510;background:#fff6dc;border:1px solid #d9ad55;border-radius:10px}.delivery-quote-notice[hidden]{display:none}.delivery-quote-notice>span{width:30px;height:30px;display:grid;place-items:center;color:#fff;background:#8a5a00;border-radius:50%;font-weight:900}.delivery-quote-notice div{display:grid;gap:5px}.delivery-quote-notice strong{font-size:.86rem}.delivery-quote-notice p{max-width:68ch;margin:0;color:#634b21;font-size:.76rem;line-height:1.5}.delivery-quote-notice a{width:max-content;margin-top:3px;color:#6d4500;font-size:.76rem;font-weight:900}.checkout-summary [data-summary-fee]{color:#7a4d00}.order-success [data-success-message]{max-width:58ch;line-height:1.55}

.setup-page { min-height: 100dvh; display: grid; place-items: center; padding: 20px; background: radial-gradient(circle at 20% 10%, rgba(243,179,61,.22), transparent 26%), var(--cream); }
.setup-card { width: min(100%, 620px); padding: clamp(24px, 6vw, 54px); background: white; border: 1px solid var(--line); border-radius: 24px; box-shadow: var(--shadow); }
.setup-card h1 { margin: 8px 0 12px; font-family: var(--display); font-size: clamp(2rem, 6vw, 3.4rem); line-height: 1; }
.setup-card p { color: var(--muted); line-height: 1.6; }
.setup-card form { display: flex; flex-wrap: wrap; gap: 10px; margin: 24px 0; }
.setup-inline { margin: 8vh auto; }
.credentials { display: grid; gap: 6px; padding: 16px; background: var(--cream); border-radius: 14px; }
.credentials code { color: var(--tomato); }
.notice { margin: 18px 0; padding: 14px 16px; border-radius: 12px; }
.notice.success { color: #265e3c; background: #e7f6eb; }
.notice.error { color: #8f1f20; background: #fdecec; overflow-wrap: anywhere; }

@media (min-width: 600px) {
  .category-grid, .product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
  .category-card__label, .product-card__content { left: 14px; right: 14px; bottom: 14px; }
  .category-card__label small { display: block; }
}

@media (min-width: 900px) {
  .category-grid, .product-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; }
  .store-hero__art { min-height: 244px; }
  .hero-copy { padding-block: 30px; }
  .mobile-nav { display: none; }
  .cart-fab { bottom: 24px; }
  .catalog { padding-bottom: 100px; }
}

@media (min-width: 1200px) {
  .category-grid, .product-grid { gap: 18px; }
  .category-card { border-radius: 16px; }
  .product-card { aspect-ratio: .9 / 1; }
}

@media (max-width: 720px) {
  .category-grid,.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .flow-header{padding-inline:10px}.flow-shell{width:min(100% - 20px,960px)}.category-page__intro{grid-template-columns:82px 1fr;gap:13px;padding:18px 0}.category-page__intro img{width:82px;height:76px}.category-page__intro h1{font-size:1.65rem}.page-product-row{grid-template-columns:58px minmax(0,1fr) 34px;align-items:start;padding:11px 10px}.page-product-row img{width:58px;height:58px}.page-product-row small{display:block;overflow:visible;white-space:normal;-webkit-line-clamp:unset}.cart-page-line{grid-template-columns:64px minmax(0,1fr);align-items:start}.cart-page-line img{width:64px;height:64px}.cart-page-quantity{grid-column:2;justify-self:start}.checkout-customer-grid{grid-template-columns:1fr}.checkout-fields{grid-template-columns:1fr}.checkout-fields .wide{grid-column:auto}.change-field,.drawer-change-field{grid-template-columns:1fr}
  .store-status__inner { justify-content: space-between; gap: 10px; }
  .store-minimum { display: none; }
  .store-live-state { min-width: 0; font-size: .78rem; }
  .store-profile-dialog { width: calc(100vw - 18px); max-height: calc(100dvh - 18px); border-radius: 14px; }
  .store-profile-dialog__head { padding: 18px; }
  .profile-status-banner { margin: 16px 16px 0; }
  .profile-minimum { padding-inline: 16px; }
  .profile-section { margin-inline: 16px; }
  .profile-hours { padding-inline: 14px; }
  .profile-hours > div { grid-template-columns: 1fr auto; gap: 8px; }
  .catalog-toolbar { grid-template-columns: 1fr; gap: 16px; }
  .catalog-toolbar h2 { font-size: 1.7rem; }
  .search-field { width: 100%; }
  .cart-fab { min-width: 0; }
  .cart-fab__icon { display: none; }
  .section-heading { align-items: flex-start; flex-direction: column; }
  .back-button { min-height: 38px; }
  .cart-drawer { padding: 18px 15px 86px; }
  .product-dialog { width: calc(100% - 12px); max-height: calc(100dvh - 12px); border-radius: 14px; }
  .product-dialog > img { height: 190px; }
  .product-dialog__body { padding: 18px 12px; }
  .flavor-list__item { min-height: 100px; grid-template-columns: 66px minmax(0, 1fr) 44px; align-items: center; gap: 12px; padding: 13px 12px; }
  .flavor-list__item img { width: 64px; height: 64px; }
  .flavor-list__copy { gap: 4px; }
  .flavor-list__copy strong { font-size: .92rem; line-height: 1.3; }
  .flavor-list__copy small { font-size: .78rem; line-height: 1.45; }
  .flavor-list__copy b { font-size: .84rem; }
  .flavor-list__check { width: 42px; height: 42px; font-size: 1.05rem; }
}

/* Acompanhamento público do pedido */
.tracking-body{min-height:100dvh;display:flex;flex-direction:column;overflow-x:hidden;background:#f7f3ef}.tracking-header{color:#fff;background:var(--ink)}
.tracking-header__inner{width:min(100% - 28px,1180px);min-height:72px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;margin-inline:auto}
.tracking-back{width:40px;height:40px;display:grid;place-items:center;color:#fff;border:1px solid rgba(255,255,255,.28);border-radius:50%;text-decoration:none;font-size:1.8rem;line-height:1}
.tracking-brand{min-width:0;display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none}.tracking-brand__mark{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;overflow:hidden;color:#fff;background:var(--tomato);border-radius:50%;font-family:var(--display)}
.tracking-brand__mark img{width:100%;height:100%;object-fit:cover}.tracking-brand>span:last-child{min-width:0;display:grid;gap:1px}.tracking-brand small{overflow:hidden;color:rgba(255,255,255,.7);text-overflow:ellipsis;white-space:nowrap}.tracking-brand strong{font-size:1rem}.tracking-menu-link{color:#fff;font-size:.82rem;font-weight:800;text-underline-offset:4px}.tracking-back:focus-visible,.tracking-brand:focus-visible,.tracking-menu-link:focus-visible{outline:3px solid rgba(243,179,61,.7);outline-offset:3px}
.tracking-shell{width:min(100% - 28px,1180px);flex:1;margin:0 auto;padding:34px 0 54px}.tracking-intro{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:22px}.tracking-intro h1{margin:0 0 7px;font-family:var(--display);font-size:2rem;letter-spacing:-.035em;text-wrap:balance}.tracking-intro p{max-width:64ch;margin:0;color:#625754;line-height:1.55;text-wrap:pretty}.tracking-live{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;color:#305f43;font-size:.75rem;font-weight:800}.tracking-live i{width:9px;height:9px;background:#3da66a;border-radius:50%;box-shadow:0 0 0 5px rgba(61,166,106,.13);animation:status-pulse 1.7s ease-out infinite}
.tracking-layout{min-width:0;display:grid;grid-template-columns:248px minmax(0,1fr);align-items:start;gap:18px}.tracking-orders{min-width:0}.tracking-orders__head{margin-bottom:10px}.tracking-orders__head h2{margin:0 0 3px;font-size:.92rem}.tracking-orders__head small{color:#6b605c;font-size:.7rem}.tracking-orders__list{display:grid;gap:7px}.tracking-orders__list button{width:100%;min-height:62px;display:grid;gap:4px;padding:11px 13px;color:var(--ink);background:transparent;border:1px solid #d8cec8;border-radius:10px;text-align:left;cursor:pointer}.tracking-orders__list button:hover{background:#fff}.tracking-orders__list button.is-active{color:#fff;background:var(--ink);border-color:var(--ink)}.tracking-orders__list button:focus-visible{outline:3px solid rgba(169,35,36,.24);outline-offset:2px}.tracking-orders__list button span{font-weight:850}.tracking-orders__list button small{overflow:hidden;color:#6b605c;text-overflow:ellipsis;white-space:nowrap}.tracking-orders__list button.is-active small{color:rgba(255,255,255,.72)}
.tracking-sheet,.tracking-detail{min-width:0;max-width:100%}.tracking-sheet{min-height:430px;padding:clamp(20px,4vw,38px);background:#fff;border:1px solid #e0d7d1;border-radius:14px}.tracking-skeleton{min-height:340px;display:grid;align-content:center;gap:12px}.tracking-skeleton span{height:18px;background:#eee8e4;border-radius:6px;animation:tracking-skeleton 1.2s ease-in-out infinite alternate}.tracking-skeleton span:nth-child(1){width:28%;height:32px}.tracking-skeleton span:nth-child(2){width:74%}.tracking-skeleton span:nth-child(3){width:92%}.tracking-skeleton span:nth-child(4){width:58%}.tracking-skeleton p{margin:8px 0 0;color:#665b57;font-size:.8rem}@keyframes tracking-skeleton{to{opacity:.46}}
.tracking-empty,.tracking-error{min-height:350px;display:grid;place-items:center;align-content:center;gap:10px;text-align:center}.tracking-empty>span,.tracking-error>span{width:56px;height:56px;display:grid;place-items:center;color:#fff;background:var(--herb);border-radius:50%;font-size:1.5rem;font-weight:900}.tracking-error>span{background:var(--tomato)}.tracking-empty h2,.tracking-error h2{margin:5px 0 0;font-family:var(--display);font-size:1.35rem}.tracking-empty p,.tracking-error p{max-width:52ch;margin:0 0 8px;color:#625754;line-height:1.5}
.tracking-detail__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--line)}.tracking-detail__head>div{min-width:0}.tracking-detail__head small{color:#6b605c}.tracking-detail__head h2{margin:2px 0 0;overflow-wrap:anywhere;font-family:var(--display);font-size:1.8rem}.tracking-type{flex:0 0 auto;padding:7px 11px;color:#315a78;background:#e7f0f7;border-radius:999px;font-size:.7rem;font-weight:900}.tracking-type[data-type="pickup"]{color:#81510a;background:#fff2cf}.tracking-type[data-type="counter"]{color:#276247;background:#e7f4ec}
.tracking-current{display:grid;grid-template-columns:42px minmax(0,1fr);gap:13px;margin:22px 0 30px;padding:17px;background:#edf6f0;border-radius:12px}.tracking-current.is-cancelled{background:#fbeaea}.tracking-current__icon{width:42px;height:42px;display:grid;place-items:center;color:#fff;background:var(--herb);border-radius:50%}.tracking-current.is-cancelled .tracking-current__icon{background:var(--tomato)}.tracking-current>div{display:grid;gap:3px}.tracking-current small{color:#466552;font-size:.7rem;font-weight:800}.tracking-current.is-cancelled small{color:#8b3e41}.tracking-current strong{font-size:1.05rem}.tracking-current p{margin:0;color:#506459;font-size:.82rem;line-height:1.45}.tracking-current.is-cancelled p{color:#75484a}
.order-progress{--progress-count:5;display:grid;grid-template-columns:repeat(var(--progress-count),minmax(0,1fr));margin:0;padding:0 0 30px;list-style:none;border-bottom:1px solid var(--line)}.order-progress>li{position:relative;min-width:0;display:grid;justify-items:center;gap:9px;padding-inline:5px;text-align:center}.order-progress>li:not(:last-child)::after{content:"";position:absolute;z-index:0;top:17px;left:calc(50% + 23px);width:calc(100% - 46px);height:3px;background:#ded7d2}.order-progress>li.is-complete::after{background:#4f8a63}.order-progress__marker{position:relative;z-index:1;width:36px;height:36px;display:grid;place-items:center;color:#756b67;background:#eee9e6;border-radius:50%;font-size:.75rem;font-weight:900}.order-progress .is-complete .order-progress__marker{color:#fff;background:#4f8a63}.order-progress .is-active .order-progress__marker{color:#fff;background:var(--tomato);box-shadow:0 0 0 6px rgba(169,35,36,.12)}.order-progress>li>div{min-width:0;display:grid;gap:3px}.order-progress strong{font-size:.72rem}.order-progress small{color:#6b605c;font-size:.62rem;line-height:1.35}.order-progress .is-upcoming strong{color:#817874}
.tracking-detail__grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(210px,.7fr);gap:34px;padding-top:26px}.tracking-detail__grid h3{margin:0 0 11px;font-size:.82rem}.tracking-items>div{display:grid}.tracking-items>div>div,.tracking-totals dl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:9px 0;border-bottom:1px solid #eee8e4;font-size:.78rem}.tracking-items>div>div:last-child{border-bottom:0}.tracking-totals dl{margin:0}.tracking-totals dd{margin:0;font-weight:800}.tracking-totals .total{padding-top:13px;border-bottom:0;font-size:.95rem;font-weight:900}.tracking-updated{margin-top:24px;padding-top:15px;color:#6b605c;border-top:1px solid var(--line);font-size:.7rem;text-align:right}.tracking-noscript{padding:16px;color:#7c1719;background:#fbeaea;border-radius:10px;text-align:center}.tracking-body>.site-credit{width:100%;margin-top:auto}

@media(max-width:760px){.store-orders-link{display:none}.tracking-header__inner{min-height:64px;grid-template-columns:38px minmax(0,1fr) auto;gap:9px}.tracking-back{width:36px;height:36px}.tracking-brand__mark{width:38px;height:38px}.tracking-brand small{display:none}.tracking-menu-link{font-size:.74rem}.tracking-shell{padding-top:24px}.tracking-intro{align-items:flex-start;flex-direction:column;gap:12px}.tracking-intro h1{font-size:1.65rem}.tracking-live{align-self:flex-start}.tracking-layout{grid-template-columns:1fr;gap:14px}.tracking-orders__list{display:flex;gap:7px;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x proximity}.tracking-orders__list button{width:190px;flex:0 0 190px;scroll-snap-align:start}.tracking-sheet{min-height:390px;padding:20px 16px}.tracking-current{margin-bottom:24px}.order-progress{display:grid;grid-template-columns:1fr;gap:0;padding:0 0 22px}.order-progress>li{min-height:76px;grid-template-columns:38px minmax(0,1fr);justify-items:start;align-items:start;gap:12px;padding:0;text-align:left}.order-progress>li:not(:last-child)::after{top:37px;left:17px;width:3px;height:calc(100% - 38px)}.order-progress>li>div{padding-top:2px}.order-progress strong{font-size:.78rem}.order-progress small{font-size:.68rem}.tracking-detail__grid{grid-template-columns:1fr;gap:22px;padding-top:22px}.tracking-updated{text-align:left}}
@media(max-width:760px){.local-discovery{grid-template-columns:1fr;margin-top:42px;padding:24px 18px;border-radius:14px}.local-discovery__intro h2{font-size:1.75rem}}

/* Composição segura de pagamentos em duas ou mais formas. */
.payment-split-toggle{width:calc(100% - 28px);min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 14px;padding:10px 13px;color:var(--ink);background:#f6f2ef;border:1px solid #d8cec7;border-radius:9px;font-weight:850;cursor:pointer}.payment-split-toggle::after{content:'Ativar';padding:5px 8px;color:var(--tomato);background:#fff;border-radius:6px;font-size:.68rem}.payment-split-toggle[aria-pressed=true]{color:#fff;background:#382c28;border-color:#382c28}.payment-split-toggle[aria-pressed=true]::after{content:'Ativo';color:#382c28}.payment-split-toggle:disabled{opacity:.52;cursor:not-allowed}.payment-split-toggle:focus-visible{outline:3px solid rgba(169,35,36,.23);outline-offset:2px}.payment-single-options.is-split-hidden{display:none}.payment-split{container-type:inline-size;display:grid;gap:10px;margin:0 14px 14px;padding:13px;background:#f7f4f2;border:1px solid #d8cec7;border-radius:11px}.payment-split[hidden]{display:none}.payment-split__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.payment-split__header>div{display:grid;gap:2px}.payment-split__header strong{font-size:.82rem}.payment-split__header small{color:var(--muted);font-size:.68rem}.payment-split__header>button{min-height:36px;padding:0 10px;color:var(--tomato);background:#fff;border:1px solid #dfc9c4;border-radius:7px;font-size:.68rem;font-weight:850;cursor:pointer}.payment-split__rows{display:grid;gap:8px}.payment-split__row{position:relative;display:grid;grid-template-columns:28px minmax(120px,1fr) minmax(110px,.8fr) minmax(190px,1.1fr) minmax(170px,1fr) 32px;align-items:start;gap:8px;padding:11px;background:#fff;border-radius:9px}.payment-split__row-number{width:26px;height:26px;display:grid;place-items:center;color:#fff;background:#382c28;border-radius:50%;font-size:.68rem;font-weight:900}.payment-split__row label{min-width:0;display:grid;gap:5px;color:#625752;font-size:.65rem;font-weight:800}.payment-split__method{grid-column:2}.payment-split__detail{grid-column:3}.payment-split__value{grid-column:4}.payment-split__tendered{grid-column:5}.payment-split__row select,.payment-split__row input{width:100%;min-height:40px;padding:7px 9px;color:var(--ink);background:#fff;border:1px solid #d8cec7;border-radius:7px;font:inherit;font-size:.72rem}.payment-split__amount{display:grid;grid-template-columns:minmax(0,1fr) auto}.payment-split__amount input{border-radius:7px 0 0 7px}.payment-split__amount button{padding:0 8px;color:var(--tomato);background:#fff8f6;border:1px solid #d8cec7;border-left:0;border-radius:0 7px 7px 0;font-size:.61rem;font-weight:850;cursor:pointer}.payment-split__tendered small{color:var(--muted);font-size:.6rem;line-height:1.3}.payment-split__remove{grid-column:6;width:32px;height:32px;margin-top:19px;color:#913637;background:#fff;border:1px solid #e5d2cd;border-radius:7px;font-size:1rem;cursor:pointer}.payment-split__remove:disabled{opacity:.28;cursor:not-allowed}.payment-split__summary{display:grid;grid-template-columns:auto auto minmax(180px,1fr);align-items:center;gap:12px;padding:10px 12px;color:#6b3f13;background:#fff4dc;border-radius:8px}.payment-split__summary>span{display:grid}.payment-split__summary small{color:inherit;font-size:.6rem}.payment-split__summary strong{font-size:.78rem}.payment-split__summary p{margin:0;text-align:right;font-size:.68rem;font-weight:800}.payment-split__summary.is-complete{color:#245f3c;background:#e7f4eb}.payment-split__summary.is-error{color:#8b2929;background:#fae8e6}.payment-split__row select:focus-visible,.payment-split__row input:focus-visible,.payment-split__header>button:focus-visible,.payment-split__amount button:focus-visible,.payment-split__remove:focus-visible{outline:3px solid rgba(169,35,36,.2);outline-offset:2px}
@media(max-width:760px){.payment-split__row{grid-template-columns:28px minmax(0,1fr) 32px}.payment-split__row-number{grid-column:1}.payment-split__row>label{grid-column:2}.payment-split__row>.payment-split__remove{grid-column:3;grid-row:1;margin-top:0}.payment-split__summary{grid-template-columns:1fr 1fr}.payment-split__summary p{grid-column:1/-1;text-align:left}}
@container(max-width:760px){.payment-split__row{grid-template-columns:28px minmax(0,1fr) 32px}.payment-split__row-number{grid-column:1}.payment-split__row>.payment-split__method,.payment-split__row>.payment-split__detail,.payment-split__row>.payment-split__value,.payment-split__row>.payment-split__tendered{grid-column:2}.payment-split__row>.payment-split__remove{grid-column:3;grid-row:1;margin-top:0}.payment-split__summary{grid-template-columns:1fr 1fr}.payment-split__summary p{grid-column:1/-1;text-align:left}}

/* Ingredientes completos nos produtos do cardápio, sem corte por linhas. */
.product-grid .product-card{aspect-ratio:auto;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;color:var(--ink);background:#fff;border:1px solid var(--line);box-shadow:0 4px 8px rgba(45,25,20,.1)}
.product-grid .product-card>img{height:auto;aspect-ratio:1.3;object-fit:cover}
.product-grid .product-card__shade{display:none}
.product-grid .product-card__content{position:static;align-content:start;gap:6px;padding:12px}
.product-grid .product-card__content>strong{font-size:.94rem;line-height:1.3}
.product-grid .product-card__content>small{display:block;overflow:visible;color:var(--muted);font-size:.72rem;line-height:1.45;overflow-wrap:anywhere;-webkit-line-clamp:unset}
.product-grid .product-card__price{margin-top:auto;padding-top:2px}
.product-grid .product-card__price del{color:#756963}
.product-grid .product-card__price b{color:var(--tomato)}
@media(max-width:720px){.product-grid .product-card__content{padding:10px}.product-grid .product-card__content>strong{font-size:.86rem}.product-grid .product-card__content>small{font-size:.69rem}}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
.checkout-next-step { border: 0; padding: 0; margin: 0; min-width: 0; }
.checkout-next-step[hidden], .checkout-customer[hidden] { display: none; }
.checkout-customer h1 { font-size: 1.5rem; margin: 0 0 12px; }
.checkout-customer [data-identity-continue] { margin-top: 24px; width: 100%; }
.checkout-identity-summary { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; padding: 16px 0; margin-bottom: 16px; border-bottom: 1px solid #e5ddd7; }
.checkout-identity-summary button { border: 0; background: transparent; color: #a82718; text-decoration: underline; cursor: pointer; min-height: 44px; font: inherit; }
.cart-item-note { grid-column: 1 / -1; width: 100%; border-top: 1px solid #e5ddd7; padding-top: 12px; }
.cart-item-note summary { cursor: pointer; min-height: 32px; font-size: .9rem; font-weight: 600; }
.cart-item-note label, .cart-item-note small { display: block; font-size: .8rem; margin: 8px 0; }
.cart-item-note textarea { display: block; box-sizing: border-box; width: 100%; resize: vertical; border: 1px solid #c9bcb2; border-radius: 8px; padding: 12px; font: inherit; }

/* Identidade Okey: vinho, brasa e âmbar, compartilhada por todo o site. */
:root {
  --brand-gradient: linear-gradient(115deg,#8c1833 0%,#b62134 52%,#d54b32 100%);
  --brand-gradient-dark: linear-gradient(135deg,#291c29 0%,#501a30 65%,#792137 100%);
  --surface-gradient: linear-gradient(125deg,#fff 15%,#fff7f4 100%);
  --brand-glow: 0 8px 22px rgba(164,29,51,.18);
  --ease-out: cubic-bezier(.2,.75,.25,1);
}
body { background:radial-gradient(ellipse at 95% 0,rgba(237,168,60,.1),transparent 40%),radial-gradient(ellipse at 0 45%,rgba(182,33,52,.035),transparent 48%),var(--paper); }
h1,h2,h3 { text-wrap:balance; }
strong,b,output,time { font-variant-numeric:tabular-nums; }
.button,.flow-primary,.icon-button,.back-button,.cart-more,.simple-quantity button,.page-builder-quantity button { transition:transform .2s var(--ease-out),box-shadow .2s ease,background-position .3s ease,border-color .2s ease; }
.button.primary,.flow-primary { color:#fff;background:var(--brand-gradient);background-size:155% 100%;border-color:transparent;box-shadow:var(--brand-glow); }
.button.primary:hover:not(:disabled),.flow-primary:hover:not(:disabled) { background:var(--brand-gradient);background-size:155% 100%;background-position:100% 0;box-shadow:0 11px 26px rgba(164,29,51,.24);transform:translateY(-2px); }
.button:active:not(:disabled),.flow-primary:active:not(:disabled),.icon-button:active,.back-button:active { transform:translateY(1px) scale(.98); }
.button.secondary { color:#85263a;background:linear-gradient(130deg,#fff,#fff0eb);border-color:#d8bfc6; }
.button.secondary:hover { color:#752034;background:linear-gradient(130deg,#fff6f1,#ffe5dc);border-color:#bb7787;transform:translateY(-1px); }
.button.ghost { color:var(--tomato-dark); }
.button:disabled,.flow-primary:disabled { box-shadow:none;transform:none; }
:where(button,a,input,select,textarea):focus-visible { outline:3px solid #da8e38;outline-offset:3px; }
.field input:focus,.field select:focus,.field textarea:focus { border-color:#b94c63;box-shadow:0 0 0 3px rgba(182,33,52,.1); }
.store-status.is-open { background:linear-gradient(100deg,#164a35,#267653); }
.store-status.is-closed { background:linear-gradient(100deg,#7c1831,#b62134); }
.store-hero__art:not(.store-hero__art--photo) { background:radial-gradient(ellipse at 92% 85%,rgba(237,168,60,.7),transparent 36%),linear-gradient(118deg,#301b28,#801d36 63%,#bc3f33); }
.store-hero__art--photo { background-color:#641d33;background-image:var(--store-cover),radial-gradient(ellipse at 92% 85%,rgba(237,168,60,.7),transparent 36%),linear-gradient(118deg,#301b28,#801d36 63%,#bc3f33); }
.hero-copy strong { line-height:1.08;letter-spacing:-.035em; }
.store-summary { padding-block:20px; }
.store-summary__copy h1 { font-weight:750; }
.brand-seal { background:var(--brand-gradient);box-shadow:0 7px 20px rgba(133,30,51,.2); }
.icon-button { color:var(--tomato-dark);background:var(--surface-gradient);border-color:#e4ccd2; }
.icon-button:hover { transform:translateY(-2px);box-shadow:var(--brand-glow); }
.catalog-toolbar h2 { line-height:1.12; }
.catalog-toolbar .search-field { height:52px;border-radius:14px;border-color:#ddcbd1;box-shadow:0 5px 16px rgba(79,27,42,.04); }
.category-card,.product-card { border-radius:17px;box-shadow:0 7px 20px rgba(72,27,38,.14);transition:transform .25s var(--ease-out),box-shadow .25s ease; }
.category-card:hover,.product-card:hover { transform:translateY(-4px);box-shadow:0 14px 30px rgba(72,27,38,.22); }
.category-card__shade,.product-card__shade { background:linear-gradient(0deg,rgba(50,15,30,.96),rgba(50,15,30,.2) 60%,transparent); }
.category-card__label,.product-card__content { left:14px;right:14px;bottom:15px; }
.category-card__label strong,.product-card__content>strong { font-weight:750;line-height:1.14;letter-spacing:.005em; }
.promo-ribbon { background:linear-gradient(105deg,#80182c,#c12a3b 65%,#b65c21); }
.mobile-nav,.flow-action-footer { background:linear-gradient(110deg,#fff,#fff4ef);box-shadow:0 -7px 22px rgba(90,28,44,.08);border-color:#e5cdd5; }
.mobile-nav a,.mobile-nav button { transition:color .2s ease,transform .2s ease; }
.flow-body { background:radial-gradient(ellipse at 100% 0,rgba(237,168,60,.1),transparent 45%),var(--paper); }
.flow-header { color:var(--ink);background:var(--surface-gradient);border-bottom-color:#e4cbd3;box-shadow:0 4px 18px rgba(88,28,42,.045); }
.category-page__intro { margin-top:16px;padding:20px;border:1px solid #e8d6dc;border-radius:18px;background:var(--surface-gradient); }
.page-flavor-builder,.simple-list,.checkout-block,.delivery-fields { border-width:1px;border-color:#e2cbd2;border-radius:14px;box-shadow:0 5px 16px rgba(88,28,42,.04); }
.page-flavor-builder>header,.cart-suggestions h2,.delivery-fields>h2 { background:linear-gradient(105deg,#fbe8e9,#fff0df); }
.checkout-block>h2 { background:var(--brand-gradient); }
.checkout-payment[aria-disabled="true"]>h2 { background:#ede7e9; }
.page-product-row,.choice-row { transition:background .2s ease; }
.page-product-row:hover,.choice-row:hover { background:#fff6f2; }
.page-product-row.is-selected { background:linear-gradient(110deg,#ffece6,#fff6e8); }
.page-product-row i,.simple-quantity button,.page-builder-quantity button { color:#92273e;background:linear-gradient(130deg,#fff,#fff0e5);border-color:#e0bdc7; }
.flow-primary { border-radius:12px; }
.flow-cart-bar { background:var(--brand-gradient);box-shadow:var(--brand-glow);border-radius:12px;transition:transform .2s var(--ease-out),box-shadow .2s ease; }
.flow-cart-bar:hover { transform:translateY(-2px);box-shadow:0 11px 26px rgba(164,29,51,.24); }
.flow-cart-link { background:var(--surface-gradient);border-color:#e4ccd2; }
.flow-cart-link b { background:var(--brand-gradient); }
.cart-more { color:#94233b;border-color:#b65569;border-radius:12px;background:var(--surface-gradient); }
.cart-more:hover { background:linear-gradient(110deg,#fff1ed,#ffe9d4); }
.product-dialog,.cart-drawer,.store-profile-dialog { border-radius:20px;background:var(--surface-gradient); }
.product-dialog__head,.cart-drawer__head,.store-profile-dialog__head { background:linear-gradient(110deg,#fff,#fff1e9); }
.product-dialog::backdrop,.store-profile-dialog::backdrop { background:rgba(38,18,31,.65);backdrop-filter:blur(4px); }
.tracking-header { background:var(--brand-gradient-dark); }
.tracking-orders__list button.is-active { background:var(--brand-gradient);border-color:transparent; }
@media(max-width:680px) {
  .catalog { padding-top:24px; }
  .catalog-toolbar { gap:15px; }
  .category-card,.product-card { border-radius:13px; }
  .category-card__label,.product-card__content { left:10px;right:10px;bottom:12px; }
  .category-page__intro { padding:14px;grid-template-columns:72px minmax(0,1fr);gap:12px; }
  .category-page__intro img { width:72px;height:72px;border-radius:12px; }
  .category-page__intro h1 { font-size:clamp(1.35rem,6vw,1.7rem);overflow-wrap:anywhere; }
  .store-summary { grid-template-columns:58px minmax(0,1fr) 40px;gap:10px; }
  .brand-seal { width:58px;height:58px; }
  .store-summary h1 { font-size:1.5rem; }
  .store-summary p { font-size:.8rem;line-height:1.5; }
  .simple-quantity,.page-builder-quantity { grid-template-columns:44px 26px 44px; }
  .simple-quantity:not(.is-active) { grid-template-columns:44px; }
  .simple-quantity button,.page-builder-quantity button { width:44px;height:44px; }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation:none!important;transition:none!important;scroll-behavior:auto!important; }
  .button:hover,.flow-primary:hover,.flow-cart-bar:hover,.category-card:hover,.product-card:hover { transform:none; }
}
.whatsapp-permissions { min-width:0;margin:16px 0;padding:12px;border:1px solid var(--line,#dac7c7);border-radius:12px; }
.whatsapp-permissions legend { font-weight:700;font-size:.9rem;padding:0 4px; }
.whatsapp-permissions label { display:flex;align-items:flex-start;gap:10px;padding:8px 0;line-height:1.5;font-size:.9rem;cursor:pointer; }
.whatsapp-permissions input[type=checkbox] { width:20px;height:20px;flex:0 0 20px;margin:2px 0 0;accent-color:var(--brand,#aa2532); }
.whatsapp-permissions small { display:block;font-size:.8rem;line-height:1.5;color:#593c40; }
.whatsapp-permissions input:focus-visible { outline:2px solid #902333;outline-offset:3px; }
