/* ================================================================================================================
   Superfícies do site público (início, planos, funcionalidades, barbearia, agendar, entrada, cadastro, termos...):
   Grafite & Cobre no escuro, Off-white & Cobre no claro, a mesma linguagem dos painéis (glass.css).
   - cartões sólidos (--gs-fill sobre --gs-base); no escuro, sem borda; no claro, branco com sombra bem suave;
   - cobre para a ação principal e para o que está selecionado.
   Os nomes das variáveis (--gs-*) ficaram da versão em vidro. Carregar DEPOIS de styles.css e refine.css.
   Não mexe no mapa (mapa.html tem layout próprio).
   ================================================================================================================ */

/* ---------- variáveis: tema escuro (padrão do site) ---------- */
body:not(.owner-theme):not(.map-app) {
  --gs-fill: linear-gradient(#1E1E1E, #1E1E1E);
  --gs-fill-soft: linear-gradient(#262626, #262626);
  --gs-fill-hover: linear-gradient(#2E2E2E, #2E2E2E);
  --gs-base: #1E1E1E;
  --gs-edge: transparent;
  --gs-edge-soft: #333333;
  --gs-hair: #2C2C2C;
  --gs-rim: 0 0 #0000;
  --gs-shine: var(--gs-rim);
  --gs-shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 16px 36px -20px rgba(0, 0, 0, .75);
  --gs-lift: 0 24px 60px -20px rgba(0, 0, 0, .8);
  --gs-blur: none;
  --gs-blur-sm: none;
  --gs-input-bg: #181818;
  --gs-input-sh: 0 0 #0000;
  --gs-focus: 0 0 0 3px rgba(var(--shop-primary-rgb, 196, 101, 45), .28);
  --gs-sel-fill: linear-gradient(var(--copper-deep), var(--copper-deep));
  --gs-sel-edge: transparent;
  --gs-sel-text: #FFFFFF;
  --gs-gold-fill: linear-gradient(rgba(var(--shop-primary-rgb, 196, 101, 45), .16), rgba(var(--shop-primary-rgb, 196, 101, 45), .16));
  --gs-gold: var(--copper);
  --gs-gold-text: var(--copper-hi);
  --gs-modal: linear-gradient(#1E1E1E, #1E1E1E);
  --gs-bar: linear-gradient(rgba(18, 18, 18, .94), rgba(18, 18, 18, .94));
}

/* ---------- fundo liso: sem manchas de luz ---------- */
body:not(.owner-theme):not(.map-app)::before { content: none; }

/* ---------- painéis grandes ---------- */
body:not(.owner-theme):not(.map-app) :is(.glass, .card.glass-card, .search-window, .auth-card, .share-qr, .plan, .feat, .free-search, .shop-header, .summary-box, .pay-box) {
  background: var(--gs-fill), var(--gs-base); border: 1px solid var(--gs-edge); border-radius: 30px;
  box-shadow: var(--gs-rim), var(--gs-shadow);
  -webkit-backdrop-filter: var(--gs-blur); backdrop-filter: var(--gs-blur);
}
/* cartões repetidos (listas): vidro sem desfoque próprio, para não pesar */
body:not(.owner-theme):not(.map-app) :is(.shop-card, .nearby-card) {
  background: var(--gs-fill), var(--gs-base); border: 1px solid var(--gs-edge-soft); border-radius: 26px; box-shadow: var(--gs-rim), var(--gs-shadow);
  -webkit-backdrop-filter: none; backdrop-filter: none; overflow: hidden;
}
body:not(.owner-theme):not(.map-app) :is(.shop-card, .nearby-card):hover { border-color: var(--gs-gold); box-shadow: var(--gs-rim), var(--gs-lift); }
body:not(.owner-theme):not(.map-app) :is(.card, .list-item, .pay-option, .step-pill, .summary-row):not(.glass-card) { border-color: var(--gs-edge-soft); }
body:not(.owner-theme):not(.map-app) :is(.card:not(.glass-card), .list-item) { background: var(--gs-fill-soft); border-radius: 22px; box-shadow: var(--gs-rim); }
body:not(.owner-theme):not(.map-app) :is(.plan.featured, .plan.popular, .plan.best) { background: var(--gs-gold-fill), var(--gs-base); border-color: var(--gs-gold); }
body:not(.owner-theme):not(.map-app) .feat-icon { background: var(--gs-gold-fill); border: 1px solid var(--gs-gold); border-radius: 18px; box-shadow: var(--gs-rim); color: var(--gs-gold-text); }

/* ---------- topo, rodapé, menu do celular ---------- */
body:not(.owner-theme):not(.map-app) .site-header {
  background: var(--gs-bar); border-bottom: 1px solid var(--gs-edge-soft); box-shadow: inset 0 -1px 0 var(--gs-hair), 0 10px 30px -20px rgba(0, 0, 0, .6);
  -webkit-backdrop-filter: var(--gs-blur); backdrop-filter: var(--gs-blur);
}
body:not(.owner-theme):not(.map-app) .site-footer {
  background: var(--shop-secondary, #181818);
  border-top: 1px solid var(--gs-edge-soft);
  -webkit-backdrop-filter: var(--gs-blur); backdrop-filter: var(--gs-blur);
}
body:not(.owner-theme):not(.map-app) .site-menu {
  background: var(--shop-secondary, #1E1E1E); border-bottom: 1px solid var(--gs-edge-soft);
  -webkit-backdrop-filter: none; backdrop-filter: none;
}

/* ---------- janelas (modais) ---------- */
body:not(.owner-theme):not(.map-app) .modal.open { background: rgba(0, 0, 0, .6); }
body:not(.owner-theme):not(.map-app) .modal-window {
  background: var(--gs-modal); border: 1px solid var(--gs-edge); border-radius: 32px; box-shadow: var(--gs-rim), var(--gs-lift);
  -webkit-backdrop-filter: none; backdrop-filter: none;
}

/* ---------- botões: pílulas de vidro; o texto nunca sai do botão ---------- */
body:not(.owner-theme):not(.map-app) .btn {
  border-radius: 999px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; min-width: min-content;
  transition: background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .12s ease, filter .18s ease;
}
body:not(.owner-theme):not(.map-app) .btn:not(.btn-sm) { padding-inline: 22px; }
body:not(.owner-theme):not(.map-app) .btn:active { transform: scale(.98); }
body:not(.owner-theme):not(.map-app) :is(.btn-ghost, .btn-secondary) {
  background: var(--gs-fill-soft); border: 1px solid var(--gs-edge-soft); color: var(--text); box-shadow: none;
  -webkit-backdrop-filter: var(--gs-blur-sm); backdrop-filter: var(--gs-blur-sm);
}
body:not(.owner-theme):not(.map-app) :is(.btn-ghost, .btn-secondary):hover { background: var(--gs-fill-hover); }
body:not(.owner-theme):not(.map-app) .btn-primary {
  background: var(--btn-primary); border: 1px solid var(--btn-primary-edge); color: var(--shop-on-secondary, #FFFFFF);
  box-shadow: 0 10px 24px -12px rgba(var(--shop-primary-rgb, 196, 101, 45), .65);
}
body:not(.owner-theme):not(.map-app) .btn-primary:hover { background: var(--btn-primary-hover); filter: none; box-shadow: 0 12px 28px -12px rgba(var(--shop-primary-rgb, 196, 101, 45), .8); }

/* ---------- botões só com ícone: círculos de vidro ---------- */
body:not(.owner-theme):not(.map-app) :is(.modal-close, .nav-toggle, .entry-close, .site-theme) {
  border-radius: 50% !important; background: var(--gs-fill-soft) !important; border: 1px solid var(--gs-edge-soft) !important; color: var(--text);
  box-shadow: none;
}
body:not(.owner-theme):not(.map-app) :is(.modal-close, .nav-toggle, .entry-close, .site-theme):hover { background: var(--gs-fill-hover) !important; color: var(--text); }

/* ---------- abas, seletores, passos e opções ---------- */
body:not(.owner-theme):not(.map-app) :is(.entry-tabs, .period-switch .seg, .nearby-mode) {
  background: var(--gs-fill-soft); border: 1px solid var(--gs-edge-soft); border-radius: 999px; box-shadow: none;
  -webkit-backdrop-filter: var(--gs-blur-sm); backdrop-filter: var(--gs-blur-sm);
}
body:not(.owner-theme):not(.map-app) :is(.entry-tabs, .period-switch .seg, .nearby-mode) button { border-radius: 999px; white-space: nowrap; color: var(--text-2); }
body:not(.owner-theme):not(.map-app) :is(.entry-tabs, .period-switch .seg, .nearby-mode) button:is(.on, .active, [aria-selected="true"], [aria-pressed="true"]) {
  background: var(--gs-sel-fill); color: var(--gs-sel-text); box-shadow: var(--gs-rim), inset 0 0 0 1px var(--gs-sel-edge);
}
body:not(.owner-theme):not(.map-app) .period-switch button.on :is(b, small) { color: var(--gs-sel-text); }
body:not(.owner-theme):not(.map-app) .step-pill { background: var(--gs-fill-soft); border: 1px solid var(--gs-edge-soft); box-shadow: var(--gs-rim); }
body:not(.owner-theme):not(.map-app) .step-pill.active { background: var(--gs-sel-fill); color: var(--gs-sel-text); box-shadow: var(--gs-rim), inset 0 0 0 1px var(--gs-sel-edge); border-color: transparent; }
body:not(.owner-theme):not(.map-app) .pay-option { background: var(--gs-fill-soft); border-radius: 22px; box-shadow: var(--gs-rim); }
body:not(.owner-theme):not(.map-app) .pay-option:has(input:checked) { background: var(--gs-sel-fill); border-color: var(--gs-sel-edge); }
body:not(.owner-theme):not(.map-app) .pay-option:has(input:checked) :is(strong, small) { color: var(--gs-sel-text); }
body:not(.owner-theme):not(.map-app) .pay-option:has(input:checked) small { opacity: .85; }
body:not(.owner-theme):not(.map-app) .pay-option:has(input:checked) input[type="radio"] { border-color: var(--gs-sel-text); }
body:not(.owner-theme):not(.map-app) .pay-option:has(input:checked) input[type="radio"]::before { background: var(--gs-sel-text); }
body:not(.owner-theme):not(.map-app) .free-quick button { border-radius: 18px; }

/* ---------- campos: pílulas de vidro escavadas ---------- */
body:not(.owner-theme):not(.map-app) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="color"]), select) {
  background: var(--gs-input-bg); border: 1px solid var(--gs-edge-soft); border-radius: 999px; box-shadow: var(--gs-input-sh); color: var(--text);
}
body:not(.owner-theme):not(.map-app) textarea { background: var(--gs-input-bg); border: 1px solid var(--gs-edge-soft); border-radius: 22px; box-shadow: var(--gs-input-sh); color: var(--text); }
body:not(.owner-theme):not(.map-app) :is(input, select, textarea):focus { border-color: var(--gs-gold); box-shadow: var(--gs-input-sh), var(--gs-focus); outline: none; }

/* ---------- celulares e quem pede menos transparência ---------- */
@media (max-width: 760px) {
  body:not(.owner-theme):not(.map-app) :is(.glass, .card.glass-card, .search-window, .auth-card, .plan, .feat, .free-search, .shop-header) {
    border-radius: 26px; -webkit-backdrop-filter: none; backdrop-filter: none;
  }
}
@media (prefers-reduced-transparency: reduce) {
  body:not(.owner-theme):not(.map-app) :is(.glass, .card.glass-card, .search-window, .auth-card, .plan, .feat, .free-search, .shop-header, .site-header, .site-footer, .site-menu, .modal-window) {
    -webkit-backdrop-filter: none; backdrop-filter: none; background: rgba(22, 22, 22, .95);
  }
}

/* ---------- botão de tema no topo ---------- */
.site-theme { display: inline-grid; place-items: center; flex: none; width: 40px; height: 40px; padding: 0; border-radius: 50%; border: 1px solid var(--line-2); background: transparent; color: var(--text-2); cursor: pointer; }
.site-theme:hover { color: var(--accent); border-color: var(--accent); }
.site-theme svg { width: 18px; height: 18px; stroke: currentColor; fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.site-header .container > .site-theme { margin-left: -12px; }
.entry-header .container > .site-theme { margin-left: auto; }
@media (max-width: 760px) { .site-header .container > .site-theme { margin-left: 0; width: 38px; height: 38px; } .site-header .container { gap: 10px; } .entry-header .container > .site-theme { margin-left: auto; } }

/* ---------- rodapé só aparece ao descer a página ---------- */
/* A parte principal de cada página ocupa pelo menos a tela inteira abaixo do topo, então o rodapé começa fora da vista. */
body:not(.owner-theme):not(.map-app) main { min-height: calc(100vh - 58px); min-height: calc(100svh - 58px); }
body:not(.owner-theme):not(.map-app) main.auth-screen { align-items: center; }
body:not(.owner-theme):not(.map-app) main.auth-screen > .container { width: 100%; }

/* =================================================================================================================
   TEMA CLARO do site público: Off-white & Cobre.
   ================================================================================================================= */
:root[data-theme="light"] {
  --ink-rgb: 44, 44, 44; --base-rgb: 255, 255, 255;
  --night-2: #EEEDEA; --chalk: #2C2C2C; --mist: #757575; --text: #2C2C2C; --text-muted: #757575;
  --accent: var(--copper-deep); --pole-red: var(--copper-deep); --brass: var(--copper-deep);
  --glass: #FFFFFF; --glass-border: #E0E0E0; --glass-strong: #FFFFFF;
  --inv-bg: var(--copper-deep); --inv-text: #FFFFFF; --accent-text: #FFFFFF;
  color-scheme: light; background: #F7F6F4;
}
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) {
  --gs-fill: linear-gradient(#FFFFFF, #FFFFFF);
  --gs-fill-soft: linear-gradient(#FFFFFF, #FFFFFF);
  --gs-fill-hover: linear-gradient(#FBFAF8, #FBFAF8);
  --gs-base: #FFFFFF;
  --gs-edge: transparent;
  --gs-edge-soft: #E0E0E0;
  --gs-hair: #EEEEEE;
  --gs-rim: 0 0 #0000;
  --gs-shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 10px 30px -12px rgba(0, 0, 0, .08);
  --gs-lift: 0 24px 60px -20px rgba(0, 0, 0, .2);
  --gs-blur: none;
  --gs-blur-sm: none;
  --gs-input-bg: #FFFFFF;
  --gs-input-sh: 0 0 #0000;
  --gs-focus: 0 0 0 3px rgba(var(--shop-primary-rgb, 196, 101, 45), .18);
  --gs-sel-fill: linear-gradient(var(--copper-deep), var(--copper-deep));
  --gs-sel-edge: transparent;
  --gs-sel-text: #FFFFFF;
  --gs-gold-fill: linear-gradient(rgba(var(--shop-primary-rgb, 196, 101, 45), .10), rgba(var(--shop-primary-rgb, 196, 101, 45), .10));
  --gs-gold: var(--copper);
  --gs-gold-text: var(--copper-ink);
  --gs-modal: linear-gradient(#FFFFFF, #FFFFFF);
  --gs-bar: linear-gradient(rgba(255, 255, 255, .96), rgba(255, 255, 255, .96));
  background: transparent; color: var(--text);
}
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) :is(.site-header .brand img, img[src*="logo-white"]) { filter: brightness(0) invert(17%); }
/* O mundo escuro de fundo das páginas internas vira gelo: a imagem quase some, só a sombra suave dos pinos. */
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) .scene { background: transparent; }
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) .scene::before { filter: saturate(.4) brightness(1.7) blur(3px); opacity: .1; }
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) .scene::after { background: linear-gradient(180deg, rgba(241, 239, 237, .3), rgba(241, 239, 237, .6)); }
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) .scene video { opacity: .22; filter: saturate(.4) brightness(1.5); }
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) .site-header { border-bottom-color: rgba(31, 31, 31, .08); box-shadow: inset 0 -1px 0 rgba(255, 255, 255, .6), 0 10px 30px -22px rgba(46, 46, 46, .3); }
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) .site-footer { background: linear-gradient(180deg, rgba(255, 255, 255, .3), rgba(255, 255, 255, .6)); }
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) .site-menu { background: rgba(249, 247, 245, .9); }
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) .ap-card { background: rgba(255, 255, 255, .9); }
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) .form-success { color: #146b3a; }
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) .modal.open { background: rgba(44, 44, 44, .35); }
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) :is(.btn-ghost, .btn-secondary) { box-shadow: var(--gs-rim), 0 6px 16px -10px rgba(46, 46, 46, .3); }
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) :is(.modal-close, .nav-toggle, .entry-close, .site-theme) { box-shadow: var(--gs-rim), 0 6px 14px -10px rgba(46, 46, 46, .3); }
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) :is(.entry-tabs, .period-switch .seg, .nearby-mode) { box-shadow: var(--gs-rim), inset 0 2px 5px rgba(31, 31, 31, .1); }
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) .step-pill.done::before { color: var(--accent); }
@media (prefers-reduced-transparency: reduce) {
  :root[data-theme="light"] body:not(.owner-theme):not(.map-app) :is(.glass, .card.glass-card, .search-window, .auth-card, .plan, .feat, .free-search, .shop-header, .site-header, .site-footer, .site-menu, .modal-window) { background: rgba(255, 255, 255, .95); }
}

/* No tema claro o vídeo do topo da página inicial continua o mesmo, escuro; só o texto sobre ele segue claro. */
:root[data-theme="light"] body.home-page .home-hero {
  --ink-rgb: 245, 245, 245; --chalk: #F5F5F5; --text: #F5F5F5; --text-muted: #9E9E9E; --text-2: #9E9E9E; --text-3: #8A8A8A;
  --accent: var(--copper); --accent-hi: var(--copper-hi); color: var(--shop-on-secondary, #F5F5F5);
  --gs-fill: linear-gradient(#1E1E1E, #1E1E1E);
  --gs-fill-soft: linear-gradient(#262626, #262626);
  --gs-fill-hover: linear-gradient(#2E2E2E, #2E2E2E);
  --gs-edge: transparent;
  --gs-edge-soft: #333333;
  --gs-rim: 0 0 #0000;
}
/* Capa padrão da barbearia (sem foto própria) no tema claro: o mesmo desenho em verde-claro, em vez do bloco escuro. */
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) .shop-cover {
  background:
    radial-gradient(ellipse 60% 120% at 50% 100%, rgba(234, 145, 97, .35), transparent 70%),
    repeating-linear-gradient(-24deg, rgba(196, 107, 57, .10) 0 14px, transparent 14px 28px, rgba(var(--shop-primary-rgb, 196, 101, 45), .12) 28px 42px, transparent 42px 56px),
    linear-gradient(180deg, #e7e5e2, #dad8d5);
  background-size: cover; background-position: center;
}

/* ---------- celular: botões cabem sempre ---------- */
/* Menos respiro nas laterais; se mesmo assim o texto não couber numa linha, ele quebra dentro do botão
   (nunca é cortado nem sai do botão). */
@media (max-width: 640px) {
  body:not(.owner-theme):not(.map-app) .btn:not(.btn-sm) { padding-inline: 16px; }
  body:not(.owner-theme):not(.map-app) .btn-sm { padding-inline: 10px; }
  body:not(.owner-theme):not(.map-app) .btn { white-space: normal; text-wrap: balance; line-height: 1.2; text-align: center; }
}

/* ================================================================================================================
   Acabamento do site: topo de vidro fosco (a página passa por baixo desfocada), cartões com sombra em camadas e luz
   fina na borda, botão principal de cobre com volume que afunda ao tocar, troca de página com esmaecer curto.
   ================================================================================================================ */
body:not(.owner-theme):not(.map-app) {
  --gs-float: rgba(18, 18, 18, .7);
  --gs-float-edge: rgba(255, 255, 255, .07);
  --gs-shadow: inset 0 1px 0 rgba(255, 255, 255, .045), 0 1px 1px rgba(0, 0, 0, .35), 0 12px 28px -16px rgba(0, 0, 0, .8), 0 40px 70px -50px rgba(0, 0, 0, .9);
}
:root[data-theme="light"] body:not(.owner-theme):not(.map-app) {
  --gs-float: rgba(247, 246, 244, .74);
  --gs-float-edge: rgba(0, 0, 0, .06);
  --gs-shadow: inset 0 1px 0 rgba(255, 255, 255, .9), 0 1px 2px rgba(20, 16, 12, .045), 0 10px 24px -12px rgba(20, 16, 12, .09), 0 34px 60px -36px rgba(20, 16, 12, .16);
}
body:not(.owner-theme):not(.map-app) .site-header {
  background: var(--gs-float); border-bottom: 1px solid var(--gs-float-edge); box-shadow: 0 10px 30px -22px rgba(0, 0, 0, .55);
  -webkit-backdrop-filter: blur(22px) saturate(170%); backdrop-filter: blur(22px) saturate(170%);
}
body:not(.owner-theme):not(.map-app) .btn-primary {
  background: linear-gradient(180deg, var(--shop-primary, #D0733B) 0%, var(--copper) 48%, var(--shop-primary, #AE5422) 100%); border: 1px solid var(--shop-primary, #A04B1C);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .3), inset 0 -1px 0 rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .25), 0 12px 26px -12px rgba(var(--shop-primary-rgb, 196, 101, 45), .75);
  text-shadow: 0 1px 0 rgba(90, 35, 5, .35);
}
body:not(.owner-theme):not(.map-app) .btn-primary:hover { background: linear-gradient(180deg, var(--shop-primary, #D87C45) 0%, var(--shop-primary, #CC6C34) 48%, var(--shop-primary, #B55A27) 100%); }
body:not(.owner-theme):not(.map-app) .btn:active { transform: scale(.97); transition-duration: .08s; }
body:not(.owner-theme):not(.map-app) .btn-primary:active { box-shadow: inset 0 2px 6px rgba(0, 0, 0, .25), 0 4px 12px -8px rgba(var(--shop-primary-rgb, 196, 101, 45), .7); }
body:not(.owner-theme):not(.map-app) :is(.date-chip, .slot-btn, .service-row, .step-pill, .shop-card, .nearby-card) { transition: transform .18s cubic-bezier(.34, 1.36, .64, 1), background .2s ease, border-color .2s ease, box-shadow .2s ease; }
body:not(.owner-theme):not(.map-app) :is(.date-chip, .slot-btn):active { transform: scale(.94); }
body:not(.owner-theme):not(.map-app) :is(.service-row, .shop-card, .nearby-card):active { transform: scale(.985); }
body:not(.owner-theme):not(.map-app) :is(.date-chip.selected, .slot-btn.selected) {
  background: linear-gradient(180deg, var(--shop-primary, #CF7139), var(--copper-deep)); color: var(--shop-on-secondary, #FFFFFF); border-color: transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 10px 22px -10px rgba(var(--shop-primary-rgb, 196, 101, 45), .8);
}
body:not(.owner-theme):not(.map-app) :is(input, select, textarea) { transition: border-color .2s ease, box-shadow .25s ease, background .2s ease; }
body:not(.owner-theme):not(.map-app) :is(input, select, textarea):focus { box-shadow: 0 0 0 4px rgba(var(--shop-primary-rgb, 196, 101, 45), .16), 0 0 18px -4px rgba(var(--shop-primary-rgb, 196, 101, 45), .35); }
body:not(.owner-theme):not(.map-app) .modal.open { -webkit-backdrop-filter: blur(10px) saturate(120%); backdrop-filter: blur(10px) saturate(120%); }
body:not(.owner-theme):not(.map-app) .modal-window { transition: transform .45s cubic-bezier(.34, 1.36, .64, 1); }

/* cartão no agendamento: os campos do Mercado Pago entram como campos comuns da página */
.mp-field { height: 48px; padding: 0 16px; display: flex; align-items: center; border: 1px solid var(--gs-edge-soft, var(--border)); border-radius: 999px; background: var(--gs-fill-soft, transparent); }
.mp-field iframe { width: 100%; height: 100%; border: 0; }
.card-box { margin-top: 10px; }
.card-box .field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.card-safe { display: block; margin-top: 4px; }
