/* PDV — vidro 3D noturno. Camada visual; não altera os fluxos de operação. */

/* Tipografia aprovada pela skill pdv-vidro-claro-3d: Manrope em todo o PDV.
   O arquivo variável cobre os pesos 400 a 800 num arquivo só. */
@font-face {
  font-family: "Manrope";
  src: url("fonts/manrope.ttf") format("truetype");
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
}

:root {
  --pdv-bg: #12151b;
  --pdv-card: rgba(34,38,48,.82);
  --pdv-orange: #e96500;
  --pdv-dark: #20252e;
  --pdv-border: rgba(233,101,0,.58);
  --pdv-text: #eef1f5;
  --pdv-text-dim: #9aa4b2;
  --pdv-icone-padrao: var(--pdv-text);
  --pdv-price-green: #55d983;
  --pdv-scrollbar-track: #171b23;
  --pdv-scrollbar-thumb: #626f7e;
  --pdv-balcao-bg: #1e222b;
  --glass-surface: linear-gradient(145deg, rgba(34,38,48,.91), rgba(22,25,32,.78));
  --glass-edge: rgba(233,101,0,.58);
  --glass-orange-edge: rgba(233,101,0,.58);
  --glass-orange-focus: #e96500;
  --pdv-selection-bg: rgba(34,38,48,.86);
  --pdv-selection-bg-hover: rgba(34,38,48,.98);
  --pdv-selection-border: #ffb06f;
  --pdv-selection-border-hover: #ffc08c;
  --pdv-selection-shadow:
    0 10px 22px rgba(0,0,0,.28),
    0 0 0 1px rgba(255,176,111,.98),
    0 0 8px rgba(255,138,61,.95),
    0 0 22px rgba(233,101,0,.82),
    inset 0 0 18px rgba(233,101,0,.18);
  --pdv-selection-shadow-hover:
    0 12px 26px rgba(0,0,0,.34),
    0 0 0 1px rgba(255,192,140,1),
    0 0 10px rgba(255,138,61,1),
    0 0 30px rgba(233,101,0,.94),
    inset 0 0 20px rgba(233,101,0,.24);
  --pdv-top-band: 75px;
  --pdv-bottom-band: 110px;
  --glass-shadow: 0 18px 42px rgba(0,0,0,0.22), inset 0 1px 0 rgba(255,255,255,0.18);
  --card-shadow: 0 9px 18px rgba(0,0,0,0.20), 0 2px 5px rgba(0,0,0,0.10);
  /* pdv-visual.css e as demais camadas usam esta variável em dezenas de
     regras (font: ... var(--pdv-reference-font)); redefinindo aqui, que
     carrega por último, essas regras já passam a usar Manrope sozinhas */
  --pdv-reference-font: "Manrope", "Segoe UI", Arial, sans-serif;
}

/* As camadas mais antigas (pdv.css, pdv-visual.css, checkout-reference.css,
   picker-reference.css, identificacao-ajustes.css) também têm font-family
   escrito direto em Arial/Roboto em muitas regras, sem passar pela variável
   acima. Em vez de caçar regra por regra nesses arquivos, força Manrope em
   tudo que está dentro do app com um "inherit" de especificidade alta — só
   troca a fonte, sem mexer em tamanho, peso ou espaçamento já definidos. */
#pdvApp, #pdvLogin, .pdv-modal, .picker-modal, .pdv-overlay, .picker-overlay {
  font-family: "Manrope", "Segoe UI", Arial, sans-serif;
  font-variant-numeric: tabular-nums;
}
#pdvApp *, #pdvLogin *, .pdv-modal *, .picker-modal *, .pdv-overlay *, .picker-overlay * {
  font-family: inherit;
}

html, body {
  color: var(--pdv-text);
  background: #12151b;
}

#pdvApp, .pdv-login-wrap, .picker-overlay {
  background: linear-gradient(135deg, #0d0f14 0%, #14171e 48%, #0f1116 100%);
}

#pdvApp::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 54% -12%, rgba(34,38,48,.78), transparent 34%);
}

.pdv-shell, .pdv-main-col, #pdvMain { background: transparent; }

/* Painéis de vidro — o desfoque fica nas superfícies amplas. */
.pdv-sidebar,
.pdv-sidebar.expanded,
.pdv-topbar,
.order-catalog,
.order-cart,
.pdv-login-card,
.pdv-modal,
.picker-modal {
  background: var(--glass-surface);
  border: 1px solid var(--glass-edge);
  box-shadow: var(--glass-shadow);
  -webkit-backdrop-filter: blur(18px) saturate(125%);
  backdrop-filter: blur(18px) saturate(125%);
}

.pdv-sidebar, .pdv-sidebar.expanded {
  left: 14px;
  border-radius: 14px;
  border-left: 1px solid var(--glass-orange-edge);
  z-index: 100;
}
.pdv-main-col {
  margin-left: 94px;
  padding: 14px;
  box-sizing: border-box;
}
.pdv-sidebar-toggle, .pdv-sidebar.expanded .pdv-sidebar-toggle { color: var(--pdv-text); }
.pdv-sidebar-toggle:hover { background: rgba(34,38,48,.76); }
.pdv-sidebar-brand { border-color: rgba(255,255,255,.10); }
.pdv-sidebar-brand-name, .pdv-sidebar.expanded .pdv-row-label { color: var(--pdv-text); }
.pdv-nav-row, .pdv-sidebar.expanded .pdv-nav-row {
  width: calc(100% - 10px);
  margin-inline: auto;
  padding-inline: 9px;
  color: var(--pdv-text);
  border-radius: 10px;
}
.pdv-nav-row:hover, .pdv-sidebar.expanded .pdv-nav-row:hover {
  background: rgba(34,38,48,.8);
}
.pdv-nav-row.active, .pdv-sidebar.expanded .pdv-nav-row.active {
  background: linear-gradient(135deg, #ff8b3e, #e96500);
  box-shadow: 0 10px 20px rgba(0,0,0,0.29), inset 0 1px 0 rgba(255,255,255,0.17);
}
.pdv-row-circle {
  background: linear-gradient(150deg, #333947, #20242c);
  box-shadow: 0 5px 12px rgba(0,0,0,0.22), inset 0 1px 0 rgba(255,255,255,0.14);
}
.pdv-nav-row.active .pdv-row-circle { background: rgba(34,38,48,.94); }
.pdv-nav-row.active .pdv-row-label, .pdv-sidebar.expanded .pdv-nav-row.active .pdv-row-label {
  color: #20252e;
}
.pdv-sidebar-status.fechado { background: #8a231d; color: #fff; }

/* Cabeçalho e área de trabalho mantêm a composição existente. */
.pdv-topbar {
  height: 75px;
  color: var(--pdv-text);
  border-radius: 12px;
  padding-inline: 20px;
}
.pdv-topbar-brand strong { color: var(--pdv-text); }
.pdv-topbar-brand div > span { color: var(--pdv-text-dim); font-size: 11px; letter-spacing: 1.4px; }
.pdv-visual-search {
  background: rgba(34,38,48,.83);
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 10px;
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.09), 0 5px 12px rgba(0,0,0,0.14);
  transition: border-color .18s ease, box-shadow .18s ease;
}
.pdv-visual-search:focus-within {
  border-color: #ff9c55;
  outline: none;
  box-shadow: 0 0 14px rgba(233,101,0,.78), inset 0 1px 2px rgba(0,0,0,.16);
}
.pdv-visual-search input:focus,
.pdv-visual-search input:focus-visible {
  border: 0;
  outline: none;
  box-shadow: none;
}
.pdv-visual-search input::placeholder { color: #9aa4b2; }

.pdv-main-col:has(#atdCartItems) {
  gap: 14px;
  padding: 14px;
  box-sizing: border-box;
}
.order-screen { background: transparent; }
.order-catalog, .order-cart {
  min-width: 0;
  border-radius: 14px;
  overflow: hidden;
}
.order-catalog > .pdv-catalog-scroll { background: transparent; }
.order-catalog > .order-cats {
  background: rgba(22,25,32,.72);
  border-top: 1px solid rgba(255,255,255,.10);
  gap: 12px;
}
.pdv-catalog-scroll .order-cat-banner {
  background: rgba(34,38,48,.77);
  color: var(--pdv-text);
  border-radius: 10px;
  box-shadow: 0 7px 17px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.14);
}
.pdv-catalog-scroll .pdv-category-active .order-cat-banner {
  background: linear-gradient(140deg, #f97b25, #e96500);
  color: #20252e;
  box-shadow: 0 12px 24px rgba(0,0,0,0.26), inset 0 1px 0 rgba(255,255,255,0.13);
}
.order-product {
  background: linear-gradient(155deg, rgba(34,38,48,.97), rgba(22,25,32,.9));
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 10px;
  box-shadow: var(--card-shadow);
  transform-style: preserve-3d;
  transition: transform .26s cubic-bezier(.16,1,.3,1), border-color .22s ease, box-shadow .26s cubic-bezier(.16,1,.3,1);
}
.order-product img {
  backface-visibility: hidden;
  transform-origin: center;
  transition: transform .28s cubic-bezier(.16,1,.3,1), filter .24s ease;
}
@media (hover: hover) and (pointer: fine) {
  .order-product:hover {
    border-color: #ffb06f;
    transform: translateY(-6px) rotateX(2.5deg) rotateY(-3deg);
    box-shadow:
      0 18px 34px rgba(0,0,0,.42),
      0 0 0 2px rgba(255,138,61,.95),
      0 0 18px rgba(233,101,0,.72),
      0 0 36px rgba(233,101,0,.45),
      inset 0 0 24px rgba(233,101,0,.14);
  }
  .order-product:hover img {
    transform: translate3d(0,-7px,42px) scale(1.125) rotate(-1deg);
    filter: brightness(1.08) saturate(1.2) contrast(1.08) drop-shadow(0 10px 14px rgba(0,0,0,.38));
  }
}
.order-product:active { transform: translateY(-1px); }
.order-product .op-title, .order-product .op-price { color: var(--pdv-text); }
.order-cats .chip, .order-cats-bottom .chip {
  background: rgba(34,38,48,.88);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 8px;
  box-shadow: 0 5px 10px rgba(0,0,0,0.14), inset 0 1px 0 rgba(255,255,255,0.14);
  color: var(--pdv-text);
}
.order-cats .chip.active, .order-cats-bottom .chip.active {
  background: linear-gradient(145deg, #ff8a36, #e96500);
  border-color: #db5c00;
  color: #20252e;
  box-shadow: 0 9px 16px rgba(0,0,0,0.27), inset 0 1px 0 rgba(255,255,255,0.13);
}

/* Pedido: cabeçalho, itens e ações como níveis de uma mesma superfície. */
.order-cart-head {
  background: rgba(255,255,255,0.08);
  color: var(--pdv-text);
  border-bottom: 1px solid rgba(255,255,255,.10);
}
.order-cart-items { background: transparent; }
.order-cart-empty::after { color: #9aa4b2; }
#atdCartItems .cart-card {
  background: rgba(34,38,48,.85);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 10px;
  box-shadow: 0 8px 18px rgba(0,0,0,0.17);
}
.order-cart-actions.atd-actions {
  background: rgba(255,255,255,0.07);
  border-top: 1px solid rgba(255,255,255,.10);
}
.order-cart-actions.atd-actions button {
  background: rgba(34,38,48,.85);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 8px;
  box-shadow: 0 6px 13px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.14);
}
.order-cart-actions.atd-actions button:disabled { background: rgba(34,38,48,.38); }
.order-cart-totals {
  border-radius: 8px;
  background: linear-gradient(145deg, #31a85b, #1d8b48);
  box-shadow: 0 11px 19px rgba(24,111,58,.23), inset 0 1px 0 rgba(255,255,255,0.13);
}

/* Demais áreas do PDV usam o mesmo relevo sem mudar seus estados. */
.tile, .caixa-card, .pay-tile {
  background: rgba(34,38,48,.82);
  border-color: rgba(255,255,255,.16);
  box-shadow: var(--card-shadow);
}
.tile:hover, .pay-tile:hover { box-shadow: 0 14px 26px rgba(0,0,0,0.29); }
.tile.ocupada { border-color: var(--pdv-orange); }
.tile-add { background: rgba(255,255,255,0.06); border-color: #6b7688; }
.pdv-modal-overlay, .picker-overlay { -webkit-backdrop-filter: blur(7px); backdrop-filter: blur(7px); }
.pdv-login-wrap { min-height: 100dvh; }
.pdv-login-card, .pdv-modal { color: var(--pdv-text); }
.pdv-login-card input { background: rgba(34,38,48,.86); border: 1px solid rgba(255,255,255,.16); }
.pdv-login-card button {
  background: linear-gradient(145deg, #ff8130, #e96500);
  color: #20252e;
  box-shadow: 0 9px 19px rgba(0,0,0,0.29);
}
.picker-modal, .picker-head, .picker-foot, .picker-col, .picker-col-head {
  background: var(--glass-surface);
  color: var(--pdv-text);
}
.picker-columns { background: transparent; }
.picker-modal { border-radius: 14px; }
.picker-head, .picker-foot, .picker-col-head { border-color: rgba(255,255,255,.10); }
.picker-head h3, .picker-col-title, .picker-foot .pname, .picker-foot .pprice, .picker-foot .cart-qty span { color: var(--pdv-text); }
.picker-head .desc, .picker-col-sub, .picker-opt-price, .picker-foot .pfrom { color: var(--pdv-text-dim); }
.picker-col { border-color: rgba(255,255,255,.10); box-shadow: var(--card-shadow); }
.picker-opt { background: transparent; }
.picker-opt:hover, .picker-opt[data-paction=radio]:hover { background: transparent; }
.picker-opt-name { color: var(--pdv-text); }
.picker-opt:has(.picker-radio.checked),
.picker-opt:has([data-paction=minus]:not(:disabled)) {
  background: rgba(233,101,0,.18);
  border-color: #df7a37;
}
.picker-opt:has(.picker-radio.checked) .picker-opt-name { color: #ffb37a; }
.picker-radio { background: #2a2f39; border-color: #565f70; }
.picker-radio.checked {
  border-color: var(--pdv-orange);
  background: radial-gradient(circle, var(--pdv-orange) 0 43%, #2a2f39 47%);
}
.picker-head .close-x, .picker-foot .cart-qty, .picker-foot .cart-qty button {
  background: rgba(34,38,48,.8);
  color: var(--pdv-text);
  border-color: rgba(255,255,255,.10);
}
.picker-stepper button { background: rgba(233,101,0,.16); color: #ffb37a; border-color: rgba(233,101,0,.45); }
.picker-foot button.cancel {
  background: rgba(34,38,48,.88);
  border: 1px solid rgba(255,255,255,.16);
  color: var(--pdv-text);
  box-shadow: 0 5px 11px rgba(0,0,0,0.14);
}

button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible,
.order-product:focus-visible, .picker-opt:focus-visible {
  outline: 3px solid #ff8a3d;
  outline-offset: 3px;
}

@media (min-width: 1101px) {
  .pdv-main-col:has(#atdCartItems) {
    grid-template-rows: 75px minmax(0,1fr);
  }
}
@media (max-width: 1100px) {
  .pdv-main-col:has(#atdCartItems) { padding: 10px; gap: 10px; }
  .order-catalog, .order-cart { border-radius: 12px; }
}
@media (max-width: 760px) {
  .pdv-main-col:has(#atdCartItems) { display: block; padding: 8px; }
  .pdv-topbar { border-radius: 10px; }
  .order-catalog, .order-cart { margin-top: 8px; }
  .order-cart { border: 1px solid var(--glass-edge); }
}
@media (prefers-reduced-motion: reduce) {
  .order-product, .order-product img, .pdv-nav-row { transition: none; }
  .order-product:hover, .order-product:active { transform: none; }
  .order-product:hover img { transform: none; filter: none; }
}

/* Superficies compartilhadas pelas demais etapas da operacao. */
.hist-panel,
.kanban-col,
.caixa-card,
.comanda-row,
.closed-summary-card {
  background: var(--glass-surface);
  border: 1px solid var(--glass-edge);
  border-radius: 12px;
  box-shadow: var(--glass-shadow);
  -webkit-backdrop-filter: blur(18px) saturate(125%);
  backdrop-filter: blur(18px) saturate(125%);
}
.hist-row,
.kanban-card,
.end-card,
.pay-row,
.pay-amount-box,
.split-result {
  background: rgba(34,38,48,.82);
  border-color: rgba(255,255,255,.16);
  border-radius: 10px;
  box-shadow: var(--card-shadow);
}
.hist-row:hover,
.kanban-card:hover,
.end-card:hover {
  background: rgba(34,38,48,.95);
  box-shadow: 0 14px 26px rgba(0,0,0,0.29);
}
.hist-row { border-left-color: var(--pdv-green); }
.hist-row.cancelada { border-left-color: var(--pdv-danger); }
.pay-row { border-color: #7acb8d; }
.hist-panel { min-width: 0; }
.hist-title, .caixa-card h3 { color: var(--pdv-text); }
.tile.livre { border-color: rgba(255,255,255,.16); }
.tile.ocupada { background: rgba(120,68,20,.35); }
.tile.ocupada.time-blue { background: rgba(40,70,110,.4); }
.tile.ocupada.time-orange { background: rgba(150,84,18,.28); }
.tile.ocupada.time-red { background: rgba(140,35,30,.32); }
.comanda-row, .closed-summary-card { color: var(--pdv-text); }

/* As cores dos estados continuam indicando o andamento do pedido. */
.kanban-board { gap: 16px; }
.kanban-col { overflow: hidden; min-width: 0; flex-basis: 200px; }
.kanban-col-head { box-shadow: inset 0 1px 0 rgba(255,255,255,0.14), 0 5px 12px rgba(0,0,0,0.17); }
.kanban-card { border-left-width: 5px; }
.kanban-advance,
.kanban-add-fab,
.pdv-filtertabs button.active,
.comanda-row .abrir-btn {
  box-shadow: 0 8px 16px rgba(0,0,0,0.31), inset 0 1px 0 rgba(255,255,255,0.13);
}
.kanban-entregador-btn,
.pdv-filtertabs button:not(.active),
.add-comanda-btn {
  background: rgba(34,38,48,.83);
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 5px 11px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.14);
}

/* Clientes e caixa usam os mesmos paineis e controles. */
.caixa-wrap { max-width: 760px; }
.caixa-card { margin-bottom: 16px; }
.caixa-card .pdv-field input,
.pdv-modal .pdv-field :is(input,textarea,select),
.pdv-keypad-input,
.pay-amount-box input {
  background: rgba(34,38,48,.86);
  border-color: rgba(255,255,255,.16);
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.10);
  color: var(--pdv-text);
}
.cli-toolbar button,
.cli-row-acoes button,
.pdv-id-actions button,
.end-form-acoes button,
#caixaAbrirBtn,
#caixaFecharBtn,
.checkout-cancelar,
.checkout-cta,
.checkout-restbtn,
.split-confirm-btn {
  border-radius: 8px;
  box-shadow: 0 8px 16px rgba(0,0,0,0.27), inset 0 1px 0 rgba(255,255,255,0.12);
}
.cli-toolbar .pdv-btn-voltar,
.cli-row-acoes .pdv-btn-voltar,
.pdv-id-actions .pdv-btn-voltar {
  background: linear-gradient(145deg, #2c313c, #1c1f26);
  border: 1px solid rgba(255,255,255,.16);
  color: var(--pdv-text);
}
.cli-row { border-bottom-color: rgba(255,255,255,.10); }
.cli-row-acoes button { min-height: 36px; }

/* Identificacao em tela cheia: vidro na area de dados e na barra fixa. */
#pdvModalOverlay:has(#idTelefone),
#pdvModalOverlay:has(#endCep) {
  background:
    radial-gradient(circle at 12% 10%, rgba(255,138,61,.08), transparent 32%),
    radial-gradient(circle at 89% 85%, rgba(255,142,64,.12), transparent 31%),
    linear-gradient(135deg, #0d0f14, #14171e 48%, #0f1116);
}
#pdvModalBody:has(#idTelefone) {
  background: transparent;
  color: var(--pdv-text);
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
#pdvModalBody:has(#idTelefone) > h3,
#pdvModalBody:has(#idTelefone) .end-titulo,
#pdvModalBody:has(#idTelefone) #endToggle { color: var(--pdv-text); }
#pdvModalBody:has(#idTelefone) .pdv-field :is(input,textarea,select),
#pdvModalBody:has(#idTelefone) .pdv-field select {
  background: rgba(34,38,48,.84) !important;
  border-color: rgba(255,255,255,.16) !important;
  border-radius: 8px !important;
  box-shadow: 0 5px 13px rgba(0,0,0,0.14), inset 0 1px 0 rgba(255,255,255,0.18);
  color: var(--pdv-text);
}
#pdvModalBody:has(#idTelefone) > .pdv-field:has(#idTelefone)::before {
  background-color: rgba(34,38,48,.84);
  border-color: rgba(255,255,255,.16);
  border-radius: 8px;
  box-shadow: 0 5px 13px rgba(0,0,0,0.14);
}
#pdvModalBody:has(#idTelefone) .end-card {
  background: rgba(34,38,48,.84);
  border-color: rgba(255,255,255,.16);
  border-radius: 10px;
  box-shadow: var(--card-shadow);
}
#pdvModalBody:has(#idTelefone) .end-card.selected {
  border-color: var(--pdv-orange);
  box-shadow: 0 0 0 1px rgba(233,101,0,.32), var(--card-shadow);
}
#pdvModalBody:has(#idTelefone) .end-btn {
  background: rgba(34,38,48,.86);
  border-color: rgba(255,255,255,.16);
  border-radius: 8px;
  box-shadow: 0 5px 12px rgba(0,0,0,0.17);
}
#pdvModalBody:has(#idTelefone) #endToggle {
  margin-top: 16px;
  padding: 15px 20px;
  background: var(--glass-surface);
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 10px;
  box-shadow: var(--card-shadow);
}
#pdvModalBody:has(#idTelefone) #endToggle:hover {
  background: rgba(34,38,48,.96);
  border-color: var(--pdv-orange);
}
#pdvModalBody:has(#idTelefone) .pdv-id-actions {
  background: rgba(20,23,29,.9);
  border-top-color: rgba(255,255,255,.16);
  -webkit-backdrop-filter: blur(18px) saturate(125%);
  backdrop-filter: blur(18px) saturate(125%);
  box-shadow: 0 -8px 26px rgba(0,0,0,0.15);
}
#pdvModalBody:has(#idTelefone) .pdv-id-actions button { border-radius: 8px; }
#pdvModalBody:has(#idTelefone) .close-x {
  background: rgba(34,38,48,.75);
  border-radius: 8px;
  box-shadow: 0 5px 12px rgba(0,0,0,0.17);
}

/* Cadastro de endereco: o mapa mantem seus detalhes, o formulario e acoes ganham vidro. */
#pdvModalBody:has(#endCep) {
  background: transparent;
  color: var(--pdv-text);
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
.endtela-form {
  background: rgba(20,23,29,.82);
  border-right: 1px solid rgba(255,255,255,.16);
  -webkit-backdrop-filter: blur(18px) saturate(125%);
  backdrop-filter: blur(18px) saturate(125%);
  box-shadow: 9px 0 28px rgba(0,0,0,0.19);
}
.endtela-titulo { color: var(--pdv-text); }
.endtela .pdv-field :is(input,select) {
  background: rgba(34,38,48,.88);
  border-color: rgba(255,255,255,.16) !important;
  border-radius: 8px !important;
  box-shadow: 0 5px 12px rgba(0,0,0,0.14), inset 0 1px 0 rgba(255,255,255,0.14);
  color: var(--pdv-text);
}
.endtela-recalcular,
.endtela-sugestoes {
  background: rgba(34,38,48,.91);
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 10px;
  box-shadow: var(--glass-shadow);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}
.endtela-rodape {
  background: rgba(20,23,29,.9);
  border-top-color: rgba(255,255,255,.16);
  -webkit-backdrop-filter: blur(18px) saturate(125%);
  backdrop-filter: blur(18px) saturate(125%);
  box-shadow: 0 -8px 26px rgba(0,0,0,0.17);
}
.endtela-acoes button { border-radius: 8px; box-shadow: 0 8px 16px rgba(0,0,0,0.27), inset 0 1px 0 rgba(255,255,255,0.13); }

/* Pagamento: preserva a divisao e as cores das formas de pagamento. */
.checkout-screen { background: transparent; color: var(--pdv-text); }
.checkout-titles {
  background: rgba(20,23,29,.88);
  border-bottom-color: rgba(255,255,255,.16);
  box-shadow: 0 8px 23px rgba(0,0,0,0.15);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}
.checkout-title { color: var(--pdv-text); }
.checkout-left,
.checkout-right {
  background: var(--glass-surface);
  -webkit-backdrop-filter: blur(18px) saturate(125%);
  backdrop-filter: blur(18px) saturate(125%);
}
.checkout-left { border-right: 1px solid rgba(255,255,255,.10); }
.checkout-right { box-shadow: -8px 0 26px rgba(0,0,0,0.14); }
.pay-block,
.pay-tile,
.atd-tipo-card,
.paykp,
.keypad button,
.pin-keypad button,
.split-people-row button,
.paykeypad-back {
  background: rgba(34,38,48,.86);
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 10px;
  box-shadow: var(--card-shadow);
  color: var(--pdv-text);
}
.pay-block:hover,
.pay-tile:hover,
.atd-tipo-card:hover,
.paykp:hover { background: rgba(34,38,48,.98); box-shadow: 0 14px 26px rgba(0,0,0,0.27); }
.atd-tipo-card { color: var(--pdv-text); }
.atd-tipo-card.selected,
#ckClienteCard { background: rgba(233,101,0,.18); border-color: var(--pdv-orange); }
.atd-tipo-cards, .checkout-cards { background: transparent; }
.paykeypad-display {
  background: rgba(34,38,48,.9);
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 10px;
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.14);
  color: var(--pdv-text);
}
.pay-row-pop {
  background: rgba(34,38,48,.95);
  border-color: rgba(255,255,255,.16);
  border-radius: 8px;
  box-shadow: var(--glass-shadow);
}
.checkout-summary .summary-line { box-shadow: inset 0 1px 0 rgba(255,255,255,0.13), 0 5px 12px rgba(0,0,0,0.15); }
.checkout-summary .summary-line.pago { background: rgba(34,38,48,.76); border-radius: 7px; color: var(--pdv-text); }
.checkout-cta, .checkout-restbtn { border-radius: 8px; }

@media (max-width: 900px) {
  .endtela-form { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.10); }
  .checkout-left { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.10); }
}
@media (max-height: 800px) {
  #pdvModalBody:has(#idTelefone) > h3 { margin-bottom: 28px; }
  #pdvModalBody:has(#idTelefone) > .pdv-field { margin-bottom: 14px; }
  #pdvModalBody:has(#idTelefone) .end-titulo { margin: 22px 0; }
}
@media (max-width: 760px) {
  .kanban-board { padding: 10px; gap: 10px; }
  .kanban-col { flex-basis: 220px; }
  .hist-panel, .caixa-card { border-radius: 10px; }
  .endtela-rodape { flex-wrap: wrap; padding: 12px 16px; }
  .endtela-acoes { width: 100%; }
  .endtela-acoes button { min-width: 0; flex: 1; }
}

/* Contorno laranja constante nas superficies de cada etapa. */
.pdv-sidebar,
.pdv-sidebar.expanded,
.pdv-topbar,
.order-catalog,
.order-cart,
.pdv-login-card,
.pdv-modal,
.picker-modal,
.picker-col,
.order-product,
#atdCartItems .cart-card,
.hist-panel,
.hist-row,
.tile,
.comanda-row,
.kanban-col,
.kanban-card,
.caixa-card,
.closed-summary-card,
.pay-tile,
.pay-block,
.atd-tipo-card,
.end-card,
.pay-amount-box,
.split-result {
  border-color: var(--glass-orange-edge);
}
.hist-row { border-left-color: var(--pdv-green); }
.hist-row.cancelada { border-left-color: var(--pdv-danger); }
.kanban-card { border-left-color: var(--pdv-orange); }
.pay-row { border-color: #7acb8d; }
.tile.ocupada.time-blue { border-color: #5b9bd5; }
.tile.ocupada.time-red { border-color: var(--pdv-danger); }
.tile.ocupada.time-orange { border-color: var(--pdv-orange); }
.tile.livre,
.add-comanda-btn,
.order-cart-actions.atd-actions button,
.kanban-entregador-btn,
.pdv-filtertabs button:not(.active) {
  border-color: var(--glass-orange-edge);
}
.kanban-entregador-btn,
.pdv-filtertabs button:not(.active) { border-width: 1px; border-style: solid; }
#atdRetiradaBtn,
#atdRetiradaBtn:disabled,
#atdEntregaBtn,
#atdEntregaBtn:disabled { border-color: var(--glass-orange-edge); }

.checkout-titles,
.checkout-left,
.checkout-right,
.endtela-form,
.endtela-rodape,
#pdvModalBody:has(#idTelefone) .pdv-id-actions {
  border-color: var(--glass-orange-edge);
}
.endtela-form { border: 1px solid var(--glass-orange-edge); }
.endtela-rodape { border-top: 1px solid var(--glass-orange-edge); }
.checkout-left, .checkout-right { border: 1px solid var(--glass-orange-edge); }

.pdv-visual-search,
.pdv-login-card input,
.caixa-card .pdv-field input,
.pdv-modal .pdv-field :is(input,textarea,select),
.paykeypad-display,
.pay-amount-box input,
.pdv-keypad-input,
.order-cats .chip,
.order-cats-bottom .chip,
.cli-toolbar .pdv-btn-voltar,
.cli-row-acoes .pdv-btn-voltar,
.end-btn,
.paykp,
.keypad button,
.pin-keypad button,
.split-people-row button {
  border-color: var(--glass-orange-edge);
}
#pdvModalBody:has(#idTelefone) .pdv-field :is(input,textarea,select),
#pdvModalBody:has(#idTelefone) .pdv-field select,
.endtela .pdv-field :is(input,select) {
  border-color: var(--glass-orange-edge) !important;
}
#pdvModalBody:has(#idTelefone) > .pdv-field:has(#idTelefone)::before,
#pdvModalBody:has(#idTelefone) .end-card,
#pdvModalBody:has(#idTelefone) .end-btn,
#pdvModalBody:has(#idTelefone) #endToggle,
.endtela-recalcular,
.endtela-sugestoes { border-color: var(--glass-orange-edge); }

button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
.order-product:focus-visible,
.picker-opt:focus-visible,
#pdvModalBody:has(#idTelefone) .pdv-field :is(input,textarea,select):focus-visible,
.endtela .pdv-field :is(input,select):focus-visible {
  outline: 2px solid var(--glass-orange-focus);
  outline-offset: 2px;
}

/* O resumo do pedido acompanha a barra verde do checkout. */
.order-cart:has(#atdCartItems) .atd-finalizar {
  min-height: 88px;
  height: 88px;
  padding: 20px 8px;
  border-radius: 8px;
  font-size: 28px;
}
.order-cart:has(#atdCartItems) .atd-finalizar span:first-child,
.order-cart:has(#atdCartItems) .atd-finalizar span:last-child {
  font-size: 28px;
}

/* Confirmacao final: somente o cartao interno recebe o contorno de vidro. */
#pdvModalBody:has(.closed-summary-card) {
  border: 0;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
.closed-summary-card .panel-sub { color: var(--pdv-text-dim); }
.closed-summary-card .checkout-restbtn {
  border-radius: 8px;
  background: linear-gradient(145deg, #31a85b, #1d8b48);
}

/* ====================================================================== *
 * Complemento — cobertura extra, exclusiva do modo escuro.
 *
 * pdv.css e pdv-visual.css escrevem fundo branco/cinza-claro direto (sem
 * variável) nestes pontos. No modo claro isso nunca apareceu porque o
 * branco se camufla no fundo claro do próprio app; no escuro, salta.
 * A skill original (clara) nunca precisou tocar aqui por essa razão — não
 * é uma regra "espelhada", é cobertura nova, só para o tema escuro.
 * ====================================================================== */

/* grade de tipo de atendimento (balcão/mesa/retirada/entrega) — cartão marcado */
.atd-tipo-card.selected { background: rgba(233,101,0,.18); }

/* moldura da foto do produto quando a imagem ainda não carregou */
.order-product img, .picker-head img, .picker-foot img, .cart-card-img {
  background: rgba(34,38,48,.9);
}

/* botões +/- de quantidade no carrinho */
.cart-qty-mini button, .cart-qty button, .picker-stepper button {
  background: rgba(34,38,48,.86);
}
.cart-qty-mini button.plus { background: linear-gradient(145deg, #31a85b, #1d8b48); }
.cart-qty-mini button.minus { background: #8a231d; }

/* abas de filtro (histórico, kanban) fora do estado selecionado */
.pdv-filtertabs button:not(.active) {
  background: rgba(34,38,48,.83);
  color: var(--pdv-text);
}

/* rodapé de ação do modo mesa/comanda (variante fora do balcão) */
.order-cart-actions:not(.atd-actions), .order-cta {
  background: rgba(20,23,29,.85);
}

/* ícone do complemento no seletor de opções */
.picker-opt-icon { background: rgba(34,38,48,.86); }

/* aba "fechado" do turno — texto sobre fundo âmbar continua escuro nas duas telas */
.summary-line.taxa { color: #20252e; }

/* Contraste e leitura: as folhas antigas ainda trazem texto escuro para
   superfícies que agora são de vidro noturno. */
#pdvApp :is(input:not([type="checkbox"]):not([type="radio"]), textarea, select),
#pdvLogin :is(input, textarea, select) {
  color: var(--pdv-text);
  caret-color: #ffad70;
  color-scheme: dark;
}
#pdvApp :is(input, textarea)::placeholder,
#pdvLogin :is(input, textarea)::placeholder { color: #adb7c4; }

.pdv-row-circle::after { background: #cbd3dc; }
.pdv-nav-row.active .pdv-row-circle::after { background: #fff0e3; }
.pdv-sidebar.expanded .pdv-row-label { color: var(--pdv-text); }

.pdv-visual-search input,
.cart-card-title,
.cart-qty-mini span { color: var(--pdv-text); }
.pdv-main-col:has(#atdCartItems) .pdv-visual-search {
  width: min(340px, calc(100% - 32px));
  margin-left: 0;
  margin-right: auto;
}
#atdCartItems :is(.cart-card-price, .cart-card-sub) { color: var(--pdv-text); }
#atdCartItems .cart-subitem { color: #b2bcc9; }
.order-cart-head { font-size: clamp(18px, 2vw, 24px); text-align: center; }
.order-cart-empty::before { background: #929eac; }
.order-cart-empty::after { color: var(--pdv-text-dim); }

/* Retirada e entrega são escolhas equivalentes; ambas mantêm o mesmo
   tamanho, contraste e comportamento de interação. */
.order-cart-actions.atd-actions :is(#atdRetiradaBtn, #atdEntregaBtn) {
  background: rgba(34,38,48,.88);
  color: var(--pdv-text);
  border: 1px solid var(--glass-orange-edge);
}
.order-cart-actions.atd-actions :is(#atdRetiradaBtn, #atdEntregaBtn):not(:disabled):hover {
  background: rgba(233,101,0,.19);
  border-color: #ff984f;
}
.order-cart-actions.atd-actions :is(#atdRetiradaBtn, #atdEntregaBtn):disabled {
  color: var(--pdv-text-dim);
  opacity: .72;
}
.order-cart-actions.atd-actions :is(#atdRetiradaBtn, #atdEntregaBtn)::before {
  background: var(--pdv-text);
}
.order-cart-totals.atd-finalizar.is-disabled { opacity: .82; }

/* No tema noturno o mouse nao troca superfícies grafite por branco. O estado
   continua perceptivel pelas bordas, sombras e contornos definidos nas folhas
   de cada etapa, enquanto o fundo permanece igual ao estado de repouso. */
.order-cats .chip:not(.active):hover,
.order-cats-bottom .chip:not(.active):hover {
  background: rgba(34,38,48,.88);
}
.kanban-entregador-btn:hover,
.transfer-option:hover {
  background: rgba(34,38,48,.83);
}
.endtela-sugestoes button:hover,
.cart-menu-btn:hover,
.cart-item-menu button:hover,
.pay-row-pop button:hover {
  background: transparent;
  box-shadow: inset 0 0 0 1px var(--glass-orange-edge);
}
.cart-item-menu,
.transfer-option {
  background: rgba(34,38,48,.83);
  border-color: var(--glass-orange-edge);
}
.endtela-sugestoes button {
  color: var(--pdv-text);
  border-bottom-color: var(--glass-orange-edge);
}
#pdvModalBody:has(#idTelefone) .end-card:hover {
  background: rgba(34,38,48,.84);
}
#pdvModalBody:has(#idTelefone) .end-btn:hover {
  background: rgba(34,38,48,.86);
}

#pdvModalBody:has(#idTelefone) .end-rua { color: var(--pdv-text); }
#pdvModalBody:has(#idTelefone) :is(.end-cidade, .end-meta, .end-meta b, .end-meta i) { color: #b2bcc9; }
#pdvModalBody:has(#idTelefone) .pdv-field label { color: #aeb8c5; }
.endtela .pdv-field input[readonly] { color: #b2bcc9; }

.pay-block[data-paymethod="desconto"] .pay-block-ico {
  filter: grayscale(1) brightness(2.3);
}

/* A rolagem acompanha o vidro grafite, inclusive no catálogo e nos modais. */
html, body, #pdvApp, #pdvApp *, #pdvLogin, #pdvLogin *,
.pdv-modal, .pdv-modal *, .picker-modal, .picker-modal * {
  scrollbar-width: auto;
  scrollbar-color: auto;
}
html::-webkit-scrollbar, body::-webkit-scrollbar,
#pdvApp *::-webkit-scrollbar, #pdvLogin *::-webkit-scrollbar,
.pdv-modal *::-webkit-scrollbar, .picker-modal *::-webkit-scrollbar {
  width: 13px;
  height: 13px;
}
html::-webkit-scrollbar-track, body::-webkit-scrollbar-track,
#pdvApp *::-webkit-scrollbar-track, #pdvLogin *::-webkit-scrollbar-track,
.pdv-modal *::-webkit-scrollbar-track, .picker-modal *::-webkit-scrollbar-track {
  background: var(--pdv-scrollbar-track);
  box-shadow: inset 2px 0 5px rgba(0,0,0,.45);
}
html::-webkit-scrollbar-thumb, body::-webkit-scrollbar-thumb,
#pdvApp *::-webkit-scrollbar-thumb, #pdvLogin *::-webkit-scrollbar-thumb,
.pdv-modal *::-webkit-scrollbar-thumb, .picker-modal *::-webkit-scrollbar-thumb {
  background: linear-gradient(90deg, #516073 0%, #9dabb9 35%, #69788a 100%);
  border: 3px solid var(--pdv-scrollbar-track);
  border-radius: 14px;
  box-shadow: inset 1px 0 rgba(255,255,255,.33), 1px 2px 5px rgba(0,0,0,.55);
}
#pdvApp *:hover::-webkit-scrollbar-thumb,
#pdvLogin *:hover::-webkit-scrollbar-thumb,
.pdv-modal *:hover::-webkit-scrollbar-thumb,
.picker-modal *:hover::-webkit-scrollbar-thumb,
html::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(90deg, #d77221 0%, #ffb06f 45%, #e96500 100%);
  box-shadow: inset 1px 0 rgba(255,255,255,.6), 0 0 11px rgba(233,101,0,.85);
}
@supports (-moz-appearance: none) {
  html, body, #pdvApp, #pdvApp *, #pdvLogin, #pdvLogin *,
  .pdv-modal, .pdv-modal *, .picker-modal, .picker-modal * {
    scrollbar-width: thin;
    scrollbar-color: var(--pdv-scrollbar-thumb) var(--pdv-scrollbar-track);
  }
  #pdvApp *:hover, #pdvLogin *:hover,
  .pdv-modal *:hover, .picker-modal *:hover {
    scrollbar-color: var(--pdv-orange) var(--pdv-scrollbar-track);
  }
}

/* Mesmo verde dos preços no pedido online, sem alterar totais de pagamento. */
.order-product .op-price,
.picker-foot .pprice,
#atdCartItems .cart-card-price { color: var(--pdv-price-green); }
.order-product .op-price::before { color: #b2bcc9; }

/* Padrao aprovado: todas as molduras e linhas do modo noturno pertencem
   a mesma paleta laranja. O espacamento externo usa 14 px e os recuos
   internos repetidos usam 12 px para manter catálogo e pedido no mesmo eixo. */
.pdv-main-col:has(#atdCartItems) {
  gap: 14px;
  padding: 14px;
}
.pdv-catalog-scroll .order-products { gap: 14px 12px; }
.order-catalog > .order-cats { gap: 12px; }
.order-cart-items { padding: 12px; }
.order-cart-actions.atd-actions { padding-inline: 12px; }
.order-cart:has(#atdCartItems) .order-cart-totals {
  margin-inline: 12px;
  border: 1px solid var(--glass-orange-edge);
}
.order-cart-head,
.order-cart-actions.atd-actions {
  background: transparent;
}
.order-cart-actions.atd-actions {
  border-bottom: 1px solid var(--glass-orange-edge);
}

.pdv-sidebar-brand,
.pdv-visual-search,
.order-catalog > .order-cats,
.order-product,
.order-product .op-price,
.order-cats .chip,
.order-cats-bottom .chip,
.order-cart-head,
#atdCartItems .cart-card,
.order-cart-actions.atd-actions,
.order-cart-actions.atd-actions button,
.picker-head,
.picker-foot,
.picker-col-head,
.picker-col,
.picker-opt,
.pdv-login-card input,
.cli-row,
.endtela-form,
.endtela-rodape,
.checkout-titles,
.checkout-left,
.checkout-right,
.checkout-summary,
.pay-amount-box,
.split-result,
.caixa-summary-row {
  border-color: var(--glass-orange-edge);
}

.order-catalog > .order-cats,
.order-cart-actions.atd-actions,
.picker-foot,
.endtela-rodape { border-top-color: var(--glass-orange-edge); }
.order-cart-head,
.picker-head,
.picker-col-head,
.checkout-titles,
.cli-row,
.caixa-summary-row { border-bottom-color: var(--glass-orange-edge); }
.checkout-left { border-right-color: var(--glass-orange-edge); }
.order-product .op-price {
  margin-top: auto;
  padding-top: 10px;
  border-top: 1px solid var(--glass-orange-edge);
}
.hist-row,
.hist-row.cancelada,
.kanban-card,
.pay-row,
.tile.livre,
.tile.ocupada.time-blue,
.tile.ocupada.time-red,
.tile.ocupada.time-orange {
  border-color: var(--glass-orange-edge);
}

/* Produtos confirmados no pedido permanecem reconhecíveis pelo contorno neon.
   A sombra escura mantém a elevação; o laranja comunica seleção. */
#atdCartItems .cart-card {
  border-color: #ff9c55;
  box-shadow:
    0 10px 22px rgba(0,0,0,.28),
    0 0 0 1px rgba(255,138,61,.82),
    0 0 12px rgba(233,101,0,.52),
    inset 0 0 14px rgba(233,101,0,.10);
  transition: border-color .18s ease, box-shadow .18s ease;
}
#atdCartItems .cart-card:hover,
#atdCartItems .cart-card:focus-within {
  border-color: #ffb06f;
  box-shadow:
    0 12px 26px rgba(0,0,0,.34),
    0 0 0 1px rgba(255,138,61,.96),
    0 0 20px rgba(233,101,0,.76),
    inset 0 0 18px rgba(233,101,0,.16);
}

/* Estados selecionados compartilham uma única linguagem em todo o PDV:
   grafite no preenchimento e neon laranja como indicador de seleção. */
.pdv-nav-row.active,
.pdv-sidebar.expanded .pdv-nav-row.active,
.order-cats .chip.active,
.order-cats-bottom .chip.active,
.pdv-catalog-scroll .pdv-category-active .order-cat-banner,
.pdv-filtertabs button.active,
#pdvModalBody:has(#idTelefone) .end-card.selected,
.atd-tipo-card.selected,
#ckClienteCard,
.pay-tile:is(.active,.selected),
.pay-block:is(.active,.selected) {
  background: var(--pdv-selection-bg);
  border-color: var(--pdv-selection-border);
  box-shadow: var(--pdv-selection-shadow);
  color: var(--pdv-text);
  transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.pdv-nav-row.active .pdv-row-label,
.pdv-sidebar.expanded .pdv-nav-row.active .pdv-row-label {
  color: var(--pdv-text);
}
.pdv-nav-row.active:hover,
.pdv-sidebar.expanded .pdv-nav-row.active:hover,
.order-cats .chip.active:hover,
.order-cats-bottom .chip.active:hover,
.pdv-catalog-scroll .pdv-category-active .order-cat-banner:hover,
.pdv-filtertabs button.active:hover,
.pdv-filtertabs button.active:focus-visible,
#pdvModalBody:has(#idTelefone) .end-card.selected:hover,
#pdvModalBody:has(#idTelefone) .end-card.selected:focus-within,
.atd-tipo-card.selected:hover,
.atd-tipo-card.selected:focus-visible,
#ckClienteCard:hover,
#ckClienteCard:focus-visible,
.pay-tile:is(.active,.selected):hover,
.pay-tile:is(.active,.selected):focus-visible,
.pay-block:is(.active,.selected):hover,
.pay-block:is(.active,.selected):focus-visible {
  background: var(--pdv-selection-bg-hover);
  border-color: var(--pdv-selection-border-hover);
  box-shadow: var(--pdv-selection-shadow-hover);
}

@media (min-width: 761px) {
  .pdv-main-col:has(#atdCartItems) {
    grid-template-rows: var(--pdv-top-band) minmax(0, 1fr);
  }
  .pdv-main-col:has(#atdCartItems) .pdv-topbar,
  .order-cart-head {
    height: var(--pdv-top-band);
    min-height: var(--pdv-top-band);
  }
  .order-cart-head {
    flex: 0 0 calc(var(--pdv-top-band) - 1px);
    height: calc(var(--pdv-top-band) - 1px);
    min-height: calc(var(--pdv-top-band) - 1px);
  }
  .order-catalog > .order-cats {
    flex: 0 0 var(--pdv-bottom-band);
    height: var(--pdv-bottom-band);
    min-height: var(--pdv-bottom-band);
  }
  .order-cart:has(#atdCartItems) .order-cart-totals {
    box-sizing: border-box;
    flex: 0 0 calc(var(--pdv-bottom-band) - 24px);
    height: calc(var(--pdv-bottom-band) - 24px);
    min-height: calc(var(--pdv-bottom-band) - 24px);
    margin: 12px;
  }
}

@media (max-width: 900px) {
  .endtela-form,
  .checkout-left { border-bottom-color: var(--glass-orange-edge); }
}

/* Ritmo uniforme dentro da rolagem do catálogo. */
.order-catalog > .pdv-catalog-scroll {
  padding: 32px;
}

.pdv-catalog-scroll .order-cat-banner {
  margin: 0 0 32px;
}

.pdv-catalog-scroll .order-products {
  gap: 16px;
  padding: 0;
}

@media (max-width: 1100px) {
  .order-catalog > .pdv-catalog-scroll { padding: 24px; }
  .pdv-catalog-scroll .order-cat-banner { margin-bottom: 24px; }
}

@media (max-width: 760px) {
  .order-catalog > .pdv-catalog-scroll { padding: 16px; }
  .pdv-catalog-scroll .order-cat-banner { margin-bottom: 16px; }
  .pdv-catalog-scroll .order-products { gap: 16px; }
}

/* A moldura da navegação acompanha os mesmos recuos dos painéis principais. */
.pdv-sidebar,
.pdv-sidebar.expanded {
  top: 14px;
  bottom: 14px;
  height: auto;
  border-top: 1px solid var(--glass-orange-edge);
  border-bottom: 1px solid var(--glass-orange-edge);
  box-sizing: border-box;
}

@media (max-width: 1100px) {
  .pdv-main-col:has(#atdCartItems) {
    gap: 10px;
    padding: 10px;
  }
  .pdv-sidebar,
  .pdv-sidebar.expanded {
    left: 10px;
    top: 10px;
    bottom: 10px;
  }
  .pdv-main-col {
    margin-left: 90px;
    padding: 10px;
  }
}

@media (max-width: 760px) {
  .pdv-main-col:has(#atdCartItems) { padding: 8px; }
  .pdv-sidebar,
  .pdv-sidebar.expanded {
    left: 8px;
    top: 8px;
    bottom: 8px;
  }
  .pdv-main-col {
    margin-left: 88px;
    padding: 8px;
  }
}

@media (max-width: 640px) {
  .pdv-main-col { margin-left: 80px; }
  .pdv-nav-row, .pdv-sidebar.expanded .pdv-nav-row { padding-inline: 7px; }
}

/* O bloco de retirada e entrega usa o mesmo respiro em todos os lados. */
.order-cart-actions.atd-actions {
  padding: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: center;
}

/* Retirada e Entrega mantêm o grafite ao interagir e ganham o mesmo halo
   intenso das demais escolhas selecionadas. */
.order-cart-actions.atd-actions :is(#atdRetiradaBtn, #atdEntregaBtn):not(:disabled):is(:hover,:focus-visible) {
  background: var(--pdv-selection-bg);
  border-color: var(--pdv-selection-border);
  box-shadow: var(--pdv-selection-shadow);
  color: var(--pdv-text);
  outline: none;
}

/* O balcão usa um único grafite opaco em suas superfícies amplas. */
#pdvApp:has(#atdCartItems) .pdv-sidebar,
#pdvApp:has(#atdCartItems) .pdv-topbar,
#pdvApp:has(#atdCartItems) .order-catalog,
#pdvApp:has(#atdCartItems) .order-catalog > .order-cats,
#pdvApp:has(#atdCartItems) .order-cart,
#pdvApp:has(#atdCartItems) .order-cart-head,
#pdvApp:has(#atdCartItems) .order-cart-items,
#pdvApp:has(#atdCartItems) .order-cart-actions.atd-actions {
  background: var(--pdv-balcao-bg);
}


/* PDV catalog scrollbar - 2026-09-25 option 1 */
#pdvApp .pdv-catalog-scroll { scrollbar-width: auto; scrollbar-color: #ff8a24 #303741; scrollbar-gutter: stable; }
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar { width: 10px; height: 10px; }
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-track { background: #303741; border-radius: 999px; }
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-thumb { background: #ff8a24; border: 0; border-radius: 999px; min-height: 40px; }
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-thumb:hover { background: #ffa34d; }
@supports selector(::-webkit-scrollbar) { #pdvApp .pdv-catalog-scroll { scrollbar-color: auto; } }

/* Align search toward the right edge of the PDV top bar. */
#pdvApp .pdv-topbar .pdv-visual-search { margin-left: auto; margin-right: 0; }

/* Match the search right inset to the brand left inset. */
@media (min-width: 761px) { #pdvApp .pdv-topbar { padding-right: 20px; } }

/* Keep the search inset equal to the brand inset. */
@media (min-width: 761px) { #pdvApp .pdv-topbar { padding-inline-end: 20px !important; } }

/* Hide the cash status badge in both sidebar states. */
#pdvApp #pdvSidebarStatus { display: none !important; }

/* Keep sidebar icons centered and remove the redundant menu brand. */
#pdvApp #pdvSidebar .pdv-sidebar-brand { display: none !important; }
#pdvApp #pdvSidebar:not(.expanded) .pdv-nav-row { justify-content: center; padding-inline: 0; }
#pdvApp #pdvSidebar:not(.expanded) .pdv-nav-row .pdv-row-circle { margin-inline: 0; }

/* Keep the catalog scrollbar solid while hovered or dragged. */
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-track,
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-track:hover,
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-track:active { background: #303741 !important; box-shadow: none !important; filter: none !important; transition: none !important; }
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-thumb,
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-thumb:hover,
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-thumb:active { background: #ff8a24 !important; box-shadow: none !important; filter: none !important; transition: none !important; }


/* Center the exit glyph optically inside its circular button. */
#pdvApp #pdvLogoutBtn .pdv-row-circle { display: grid !important; place-items: center !important; text-align: center; line-height: 1 !important; padding: 0 !important; box-sizing: border-box; }

/* Keep the logout mask centered independently of its hidden text node. */
#pdvApp #pdvLogoutBtn .pdv-row-circle { position: relative !important; padding: 0 !important; }
#pdvApp #pdvLogoutBtn .pdv-row-circle::after { position: absolute !important; top: 50% !important; left: 50% !important; margin: 0 !important; transform: translate(-50%, -50%) !important; }

#pdvApp #pdvLogoutBtn .pdv-row-circle::after { left: calc(50% + 2px) !important; }

/* Match the focused search icon to its border and clear the hint while typing. */
#pdvApp .pdv-visual-search:focus-within svg { stroke: rgb(255, 156, 85) !important; }
#pdvApp .pdv-visual-search input:focus::placeholder { opacity: 0 !important; }

/* Unified interactive neon hover across the PDV. */
@media (hover: hover) {
  :where(#pdvApp, #pdvLogin, .pdv-modal, .picker-modal, .picker-overlay) :is(button:not(:disabled), [role="button"]:not([aria-disabled="true"]), [tabindex="0"], .order-product, .cart-card, .end-card, .atd-tipo-card, .pay-tile, .pay-block, .kanban-card, .tile.livre, .tile.ocupada, .chip, .pdv-visual-search, label:has(input[type="radio"]), label:has(input[type="checkbox"]), input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]):not(:disabled), select:not(:disabled), textarea:not(:disabled), #atdFinalizarBtn:not(.is-disabled)):not(.is-disabled):hover {
    border-color: #ffc08c !important;
    box-shadow: 0 0 0 1px rgba(255,192,140,.9), 0 0 10px rgba(255,138,61,.8), 0 0 22px rgba(233,101,0,.55) !important;
  }
}

/* Match the menu toggle to the round sidebar icons. */
#pdvApp #pdvSidebarToggle {
  width: 50px !important;
  height: 50px !important;
  min-width: 50px !important;
  min-height: 50px !important;
  padding: 0 !important;
  display: grid !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: linear-gradient(150deg, #333947, #20242c) !important;
  box-shadow: 0 5px 12px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.14) !important;
  color: var(--pdv-text) !important;
  font-size: 20px !important;
  line-height: 1 !important;
}
#pdvApp #pdvSidebar:not(.expanded) #pdvSidebarToggle {
  align-self: center !important;
  margin: 0 !important;
}
#pdvApp #pdvSidebar.expanded #pdvSidebarToggle {
  align-self: flex-start !important;
  margin: 0 18px !important;
}

/* The search has one outer neon border; its inner input stays borderless. */
#pdvApp .pdv-visual-search input:is(:hover, :focus, :focus-visible) {
  border: 0 !important;
  outline: none !important;
  box-shadow: none !important;
}
#pdvApp .pdv-visual-search:hover svg {
  stroke: #ffc08c !important;
  filter: drop-shadow(0 0 3px rgba(255,156,85,.95)) drop-shadow(0 0 7px rgba(233,101,0,.7));
}
#pdvApp .pdv-visual-search:focus-within {
  border-color: rgb(255,156,85) !important;
}
#pdvApp .pdv-visual-search:focus-within svg {
  stroke: rgb(255,156,85) !important;
  filter: drop-shadow(0 0 3px rgba(255,156,85,.95)) drop-shadow(0 0 7px rgba(233,101,0,.7));
}
/* Keep the search input itself free of the global hover outline. */#pdvApp #pdvVisualSearch,#pdvApp #pdvVisualSearch:hover,#pdvApp #pdvVisualSearch:focus,#pdvApp #pdvVisualSearch:focus-visible {  border: 0 !important;  outline: 0 !important;  box-shadow: none !important;}/* Balance the catalog price below its A partir label. */#pdvApp .order-product .op-body { padding-bottom: 10px; }#pdvApp .order-product .op-price { font-size: 18px; line-height: 22px; }#pdvApp .order-product .op-price::before { margin-bottom: 5px; }/* One-step increase for catalog price and its label. */#pdvApp .order-product .op-price { font-size: 19px; line-height: 23px; }#pdvApp .order-product .op-price::before { font-size: 13px; line-height: 16px; }/* One icon column in the shared PDV sidebar, open and closed. */#pdvApp #pdvSidebar.expanded #pdvSidebarToggle { margin-inline: 14px !important; }#pdvApp #pdvSidebar .pdv-nav-row { align-items: center !important; }#pdvApp #pdvSidebar .pdv-row-circle { display: grid !important; place-items: center !important; width: 50px !important; height: 50px !important; flex: 0 0 50px !important; padding: 0 !important; line-height: 1 !important; }/* Match the top menu inset to the bottom logout inset, and keep nav steps even. */#pdvApp #pdvSidebar { padding-bottom: 5px !important; }#pdvApp #pdvSidebar .pdv-nav-row[data-sec="caixa"] { margin-bottom: 0 !important; }/* Square, flush catalog scrollbar ends. */#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-track,#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-track-piece { background: #303741 !important; border: 0 !important; border-radius: 0 !important; margin: 0 !important; box-shadow: none !important; }#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-thumb,#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-thumb:hover,#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-thumb:active { background: #ff8a24 !important; border: 0 !important; border-radius: 0 !important; margin: 0 !important; box-shadow: none !important; }#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-corner { background: #303741 !important; border-radius: 0 !important; }
/* Glass depth in the catalog rail, with square ends only at scroll limits. */
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-track,
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-track-piece {
  background: linear-gradient(90deg, #252b34 0%, #303741 48%, #3a424c 100%) !important;
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 !important;
  box-shadow: inset 1px 0 rgba(255,255,255,.16), inset -1px 0 rgba(0,0,0,.4) !important;
}
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-thumb,
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-thumb:hover,
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-thumb:active {
  background: linear-gradient(90deg, #e4741d 0%, #ff8a24 48%, #ffad62 100%) !important;
  border: 0 !important;
  border-radius: 9px !important;
  margin: 0 !important;
  box-shadow: inset 1px 0 rgba(255,231,204,.55), inset -1px 0 rgba(143,60,0,.38), 0 0 6px rgba(255,138,36,.2) !important;
}
#pdvApp .pdv-catalog-scroll.scroll-at-start::-webkit-scrollbar-thumb,
#pdvApp .pdv-catalog-scroll.scroll-at-end::-webkit-scrollbar-thumb {
  border-radius: 0 !important;
}
/* Sidebar selection and hover glow belongs to the icon circle only. */#pdvApp #pdvSidebar .pdv-nav-row,#pdvApp #pdvSidebar .pdv-nav-row:hover,#pdvApp #pdvSidebar .pdv-nav-row:focus-visible,#pdvApp #pdvSidebar .pdv-nav-row.active,#pdvApp #pdvSidebar .pdv-nav-row.active:hover { background: transparent !important; border-color: transparent !important; outline: 0 !important; box-shadow: none !important; }#pdvApp #pdvSidebar .pdv-nav-row .pdv-row-circle { transition: box-shadow .18s ease, background-color .18s ease; }#pdvApp #pdvSidebar .pdv-nav-row:is(.active,:hover,:focus-visible) .pdv-row-circle { background: rgba(34,38,48,.96) !important; box-shadow: 0 0 0 1px rgba(255,182,123,.98), 0 0 8px rgba(255,151,72,.9), 0 0 14px rgba(233,101,0,.55), inset 0 1px 0 rgba(255,255,255,.18) !important; }/* The round menu toggle gains a circular neon border on hover and click. */#pdvApp #pdvSidebarToggle { box-sizing: border-box !important; transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease; }#pdvApp #pdvSidebarToggle:is(:hover,:focus,:active),#pdvApp #pdvSidebar.expanded #pdvSidebarToggle { border: 1px solid rgba(255,182,123,.98) !important; border-radius: 50% !important; outline: 0 !important; box-shadow: 0 0 0 1px rgba(255,182,123,.4), 0 0 8px rgba(255,151,72,.9), 0 0 14px rgba(233,101,0,.55), inset 0 1px 0 rgba(255,255,255,.18) !important; }/* Slim catalog scrollbar and a slightly deeper glass rail. */#pdvApp .pdv-catalog-scroll::-webkit-scrollbar { width: 5px !important; height: 5px !important; }#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-track,#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-track-piece { background: linear-gradient(90deg, #1d222a 0%, #252b33 48%, #303741 100%) !important; }#pdvApp .pdv-catalog-scroll::-webkit-scrollbar-corner { background: #252b33 !important; }
/* Short 7px catalog scroll thumb with a darker glass rail. */
#pdvApp .pdv-catalog-scroll.pdv-custom-scrollbar { scrollbar-width: none !important; }
#pdvApp .pdv-catalog-scroll.pdv-custom-scrollbar::-webkit-scrollbar { width: 0 !important; height: 0 !important; }
#pdvApp .order-catalog > .pdv-scroll-rail {
  position: absolute; right: 0; width: 9px; z-index: 4;
  box-sizing: border-box; overflow: hidden; cursor: pointer; touch-action: none;
  background: linear-gradient(90deg, #171b21 0%, #20262e 48%, #292f38 100%);
  box-shadow: inset 1px 0 rgba(255,255,255,.10), inset -1px 0 rgba(0,0,0,.52);
}
#pdvApp .order-catalog > .pdv-scroll-rail[hidden] { display: none !important; }
#pdvApp .order-catalog > .pdv-scroll-rail:focus { outline: none; }
#pdvApp .pdv-scroll-thumb {
  position: absolute; top: 0; left: 1px; width: 7px;
  box-sizing: border-box; border-radius: 9px; cursor: grab; touch-action: none;
  background: linear-gradient(90deg, #e4741d 0%, #ff8a24 48%, #ffad62 100%);
  box-shadow: inset 1px 0 rgba(255,231,204,.55), inset -1px 0 rgba(143,60,0,.38), 0 0 6px rgba(255,138,36,.2);
}
#pdvApp .pdv-scroll-thumb:active { cursor: grabbing; }
#pdvApp .pdv-scroll-thumb.at-edge { border-radius: 0; }

/* Keep the rail quiet; show neon only on the orange thumb during interaction. */
#pdvApp .order-catalog > .pdv-scroll-rail {
  overflow: visible !important;
  box-shadow: none !important;
}
#pdvApp .pdv-scroll-thumb {
  box-shadow: inset 1px 0 rgba(255,231,204,.55), inset -1px 0 rgba(143,60,0,.38) !important;
  transition: box-shadow .18s ease, filter .18s ease;
}
#pdvApp .pdv-scroll-thumb:hover,
#pdvApp .pdv-scroll-thumb:active,
#pdvApp .pdv-scroll-rail:focus-visible > .pdv-scroll-thumb {
  box-shadow: inset 1px 0 rgba(255,231,204,.7), inset -1px 0 rgba(143,60,0,.38), 0 0 9px 2px rgba(255,138,36,.95), 0 0 19px 4px rgba(255,138,36,.48) !important;
  filter: brightness(1.12);
}

/* Keep every product-category header outlined in orange neon. */
#pdvApp .pdv-catalog-scroll .pdv-category-section .order-cat-banner {
  background: rgba(34,38,48,.86) !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.28), 0 0 0 1px rgba(255,176,111,.98), 0 0 8px rgba(255,138,61,.95), 0 0 22px rgba(233,101,0,.82), inset 0 0 18px rgba(233,101,0,.18) !important;
}

/* Do not let the global hover effect illuminate the full scroll rail. */
#pdvApp #pdvMain .order-catalog > .pdv-scroll-rail,
#pdvApp #pdvMain .order-catalog > .pdv-scroll-rail:hover,
#pdvApp #pdvMain .order-catalog > .pdv-scroll-rail:focus,
#pdvApp #pdvMain .order-catalog > .pdv-scroll-rail:active {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}
#pdvApp #pdvMain .pdv-scroll-thumb:hover,
#pdvApp #pdvMain .pdv-scroll-thumb:active,
#pdvApp #pdvMain .pdv-scroll-rail:focus-visible > .pdv-scroll-thumb {
  box-shadow: inset 1px 0 rgba(255,231,204,.65), inset -1px 0 rgba(143,60,0,.38), 0 0 5px 1px rgba(255,138,36,.78), 0 0 10px 1px rgba(255,138,36,.35) !important;
  filter: brightness(1.06);
}

/* Open and close the fixed sidebar immediately, with no width/fade motion. */
#pdvApp #pdvSidebar,
#pdvApp #pdvSidebar .pdv-row-label,
#pdvApp #pdvSidebarToggle,
#pdvSidebarBackdrop {
  transition: none !important;
  animation: none !important;
}
/* A close click must clear the menu circle even while the pointer remains there. */
#pdvApp #pdvSidebar #pdvSidebarToggle.pdv-menu-just-closed,
#pdvApp #pdvSidebar #pdvSidebarToggle.pdv-menu-just-closed:hover,
#pdvApp #pdvSidebar #pdvSidebarToggle.pdv-menu-just-closed:focus,
#pdvApp #pdvSidebar #pdvSidebarToggle.pdv-menu-just-closed:active {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: 0 5px 12px rgba(0,0,0,.22), inset 0 1px rgba(255,255,255,.14) !important;
}

/* Styled sidebar hints replace browser-default title popups. */
#pdvSidebarHint.pdv-sidebar-hint {
  position: fixed; z-index: 1001; display: block; pointer-events: none;
  box-sizing: border-box; padding: 8px 11px; max-width: calc(100vw - 20px);
  border: 1px solid rgba(255,155,86,.82); border-radius: 9px;
  background: linear-gradient(155deg, #282e38, #1d222a);
  color: #eef1f5; font-family: Manrope, 'Segoe UI', Arial, sans-serif;
  font-size: 13px; font-weight: 600; line-height: 1.25; letter-spacing: .01em;
  white-space: nowrap; text-transform: none;
  box-shadow: 0 10px 20px rgba(0,0,0,.38), 0 0 0 1px rgba(255,152,73,.16), 0 0 10px rgba(233,101,0,.22), inset 0 1px rgba(255,255,255,.12);
}
#pdvSidebarHint.pdv-sidebar-hint[hidden] { display: none !important; }

#pdvApp #pdvSidebar .pdv-nav-row.cash-open .pdv-row-circle { background: rgba(34,38,48,.96) !important; box-shadow: 0 0 0 1px rgba(255,182,123,.98), 0 0 8px rgba(255,151,72,.9), 0 0 14px rgba(233,101,0,.55), inset 0 1px 0 rgba(255,255,255,.18) !important; }

#pdvSidebarToggle { display: none !important; }
#pdvSectionTabs { overflow-y: auto; min-height: 0; scrollbar-width: none; }
#pdvSectionTabs::-webkit-scrollbar { display: none; }
.pdv-upcoming-panel { max-width: 720px; margin: 24px auto; padding: 24px; background: #20242d; border: 1px solid rgba(236,111,18,.65); border-radius: 12px; color: #eef0f4; }
.pdv-upcoming-panel h2 { margin: 0 0 12px; font: 700 20px Manrope, sans-serif; }
.pdv-upcoming-panel p { margin: 0; color: #aeb6c2; font: 400 14px Manrope, sans-serif; }
.pdv-nav-row[data-sec="dashboard"] { --menu-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2020V11%20M9%2020V5%20M14%2020v-7%20M19%2020V9%20M3%2020h18%22%2F%3E%3C%2Fsvg%3E"); }
.pdv-nav-row[data-sec="clientes"] { --menu-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M9%205a3%203%200%201%200%200%206a3%203%200%201%200%200-6%20M3%2020v-2a6%206%200%200%201%2012%200v2%20M17%205a3%203%200%200%201%200%206%20M18%2015a5%205%200%200%201%203%205%22%2F%3E%3C%2Fsvg%3E"); }
.pdv-nav-row[data-sec="funcionarios"] { --menu-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%205h16v15H4z%20M8%205V3h8v2%20M10%209a2%202%200%201%200%200%204a2%202%200%201%200%200-4%20M7%2017a3%203%200%200%201%206%200%20M16%2011h2%20M16%2014h2%22%2F%3E%3C%2Fsvg%3E"); }
.pdv-nav-row[data-sec="fiado"] { --menu-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6%203h12v18l-3-2-3%202-3-2-3%202z%20M9%208h6%20M9%2012h6%20M9%2016h3%22%2F%3E%3C%2Fsvg%3E"); }
.pdv-nav-row[data-sec="whatsapp"] { --menu-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2011a8%208%200%200%201-11.8%207l-4.2%201%201.1-4A8%208%200%201%201%2020%2011Z%20M9%208c.5%203%202%204.5%205%205l1-1%201.5%201.5c-1%202-3%202-5.5.5S7%209.5%208%208z%22%2F%3E%3C%2Fsvg%3E"); }
.pdv-nav-row[data-sec="cardapio"] { --menu-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%205c-3-2-6-2-9-1v15c3-1%206-1%209%201%203-2%206-2%209-1V4c-3-1-6-1-9%201Z%20M12%205v15%20M6%208h3%20M6%2011h3%20M15%208h3%20M15%2011h3%22%2F%3E%3C%2Fsvg%3E"); }

#pdvApp #pdvSidebar #pdvSidebarToggle { display: none !important; }

/* Uniform sidebar icon finish and compact rhythm for twelve entries. */
#pdvApp #pdvSidebar #pdvSectionTabs { gap: 3px; }
#pdvApp #pdvSidebar #pdvSectionTabs .pdv-nav-row { padding-block: 5px; }
#pdvApp #pdvSidebar .pdv-nav-row .pdv-row-circle { display: grid; place-items: center; box-sizing: border-box; background: linear-gradient(150deg, #353b48 0%, #2b303b 55%, #242933 100%) !important; border: 1px solid rgba(215,225,238,.18); box-shadow: inset 0 1px 0 rgba(255,255,255,.11), 0 3px 7px rgba(0,0,0,.25); }
#pdvApp #pdvSidebar .pdv-nav-row .pdv-row-circle::after { width: 30px; height: 30px; background: #e8edf3; filter: drop-shadow(0 1px 0 rgba(0,0,0,.55)); }
.pdv-nav-row[data-sec="ifood"] { --menu-icon: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.8%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%2019h16M6%2016h12M7%2016a5%205%200%200%201%2010%200M12%208v3M9%205h6M8%205l1-2h6l1%202%22%2F%3E%3Cpath%20d%3D%22M4%2019l1-3h14l1%203%22%2F%3E%3C%2Fsvg%3E"); }

#pdvApp #pdvSidebar .pdv-sidebar-spacer { display: none !important; }
#pdvApp #pdvSidebar #pdvSectionTabs #pdvLogoutBtn { margin: 0 5px !important; padding-block: 5px !important; }

#pdvApp #pdvSidebar #pdvSectionTabs .pdv-nav-row { min-height: 60px !important; height: 60px !important; flex: 0 0 60px !important; padding: 5px 0 !important; }

/* Catalog: balanced content edges with invisible, functional scrolling. */
#pdvApp .pdv-catalog-scroll {
  overflow-y: auto !important;
  scrollbar-width: none !important;
  scrollbar-gutter: auto !important;
}
#pdvApp .pdv-catalog-scroll::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}
#pdvApp .order-catalog > .pdv-scroll-rail { display: none !important; }

/* Keep the sidebar frame rounded while its icon list scrolls invisibly. */
#pdvApp #pdvSidebar { overflow: hidden !important; border-radius: 14px !important; background-clip: padding-box; }
#pdvApp #pdvSidebar #pdvSectionTabs { min-height: 0; overflow-x: hidden !important; overflow-y: auto !important; scrollbar-width: none !important; scrollbar-gutter: auto !important; }
#pdvApp #pdvSidebar #pdvSectionTabs::-webkit-scrollbar { display: none !important; width: 0 !important; height: 0 !important; }

/* Soft entry and exit for sidebar icons that scroll behind its rounded frame. */
#pdvApp #pdvSectionTabs.pdv-scroll-past { mask-image: linear-gradient(to bottom, transparent, #000 20px, #000 100%); }
#pdvApp #pdvSectionTabs.pdv-scroll-more { mask-image: linear-gradient(to bottom, #000 0, #000 calc(100% - 20px), transparent 100%); }
#pdvApp #pdvSectionTabs.pdv-scroll-past.pdv-scroll-more { mask-image: linear-gradient(to bottom, transparent, #000 20px, #000 calc(100% - 20px), transparent); }

/* Fade scrolled icons out before they meet the upper rounded corner. */
#pdvApp #pdvSectionTabs.pdv-scroll-past { mask-image: linear-gradient(to bottom, transparent 0, transparent 14px, #000 80px, #000 100%); }
#pdvApp #pdvSectionTabs.pdv-scroll-past.pdv-scroll-more { mask-image: linear-gradient(to bottom, transparent 0, transparent 14px, #000 80px, #000 calc(100% - 20px), transparent 100%); }

