/* V1.6.92 • camada de refinamento visual (carrega por último; só sobrepõe, não remove nada) */
:root{--ring:0 0 0 3px rgba(31,99,233,.28);--radius-lg:20px;--ease:cubic-bezier(.2,.8,.2,1)}
html{-webkit-tap-highlight-color:transparent;scroll-behavior:smooth}
body{text-rendering:optimizeLegibility;font-feature-settings:"tnum" 1,"cv11" 1}
b,strong,.stat b,.totalBox,.paymentTotal b,.orderHistoryMoney b,.cashDayTotals b,.cashMeta b{font-variant-numeric:tabular-nums}

/* Foco visível e resposta imediata ao toque (sensação de sistema rápido) */
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:0;box-shadow:var(--ring)!important}
.primary,.secondary,.danger,.ghost,.iconBtn,.navItem,.quick,.productBtn,.tableCard button{transition:transform .12s var(--ease),box-shadow .16s var(--ease),background .16s var(--ease),border-color .16s var(--ease)}
.primary:active,.secondary:active,.danger:active,.ghost:active,.iconBtn:active,.quick:active,.productBtn:active,.navItem:active{transform:scale(.97)!important;filter:brightness(.97)}
button:disabled,.primary:disabled{opacity:.55;cursor:not-allowed;transform:none!important;box-shadow:none}

/* Botões e campos mais confortáveis para uso no balcão */
.primary,.secondary,.danger{min-height:46px;letter-spacing:.005em}
.primary{box-shadow:0 10px 22px rgba(31,99,233,.22),inset 0 1px 0 rgba(255,255,255,.18)}
.primary:hover{box-shadow:0 14px 28px rgba(31,99,233,.28),inset 0 1px 0 rgba(255,255,255,.2)}
.panel input,.panel select,.modalCard input,.modalCard select,.loginCard input{min-height:50px;font-size:16px}
input::placeholder{color:#9aa6b8;font-weight:600}

/* Painéis, cartões e mesas */
.panel,.receiptCard,.orderTools,.cashForm,.stat{border-radius:var(--radius-lg);border-color:#e6ecf5}
.panel{box-shadow:0 1px 2px rgba(10,31,62,.04),0 14px 36px rgba(10,31,62,.07)}
.stat b{font-size:27px}
.stat{transition:transform .18s var(--ease),box-shadow .18s var(--ease)}
.stat:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(10,31,62,.10)}
.tableCard{transition:transform .16s var(--ease),box-shadow .16s var(--ease),border-color .16s var(--ease)}
.tableCard:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(13,37,72,.10);border-color:#cfdcf0}
.tableCard b{font-size:19px}
.tableCard button{min-height:46px;font-weight:900}
.productBtn{min-height:72px;border-radius:15px}
.productBtn:hover{box-shadow:0 8px 20px rgba(13,37,72,.08)}
.productBtn b{line-height:1.25}
.productBtn small{font-weight:800;color:#1c5ac8}
.orderLine{align-items:center}
.totalBox{font-size:28px;color:#0b2343}
.paymentTotal{border-radius:16px;background:linear-gradient(135deg,#f3f7ff,#fff)}
.paymentTotal b{font-size:26px}

/* Menu lateral */
.sidebar{background:linear-gradient(190deg,#06172f 0%,#0a2a52 60%,#0c3466 100%)}
.navItem{border-radius:15px}
.navItem.active{background:linear-gradient(90deg,rgba(43,113,232,.34),rgba(255,255,255,.06));box-shadow:inset 0 0 0 1px rgba(255,255,255,.07)}
.navItem.active .navIcon{background:rgba(91,150,255,.28);color:#fff}

/* Topo, status do caixa e avisos */
.topbar{margin-bottom:20px}
.pageHeading h1{font-size:30px}
.statusPill{box-shadow:0 2px 8px rgba(10,31,62,.06)}
.pulseDot{animation:pulse692 2.2s ease-in-out infinite}
@keyframes pulse692{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.35);opacity:.6}}
.alertBox{border-radius:var(--radius-lg)}
.toast{border-radius:16px;border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px);background:rgba(11,35,67,.94);animation:toast692 .24s var(--ease)}
@keyframes toast692{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}

/* Janelas (modais) */
.modal{backdrop-filter:blur(8px);animation:fade692 .16s ease}
.modalCard{border-radius:26px;animation:pop692 .2s var(--ease)}
@keyframes fade692{from{opacity:0}to{opacity:1}}
@keyframes pop692{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}

/* Rolagem discreta */
*{scrollbar-width:thin;scrollbar-color:#c5d0e0 transparent}
::-webkit-scrollbar{width:9px;height:9px}
::-webkit-scrollbar-thumb{background:#c5d0e0;border-radius:99px;border:2px solid transparent;background-clip:padding-box}

/* Celular */
@media(max-width:700px){
  .primary,.secondary,.danger{min-height:48px}
  .stat b{font-size:21px}
  .totalBox{font-size:25px}
  .sidebar{border-top:1px solid rgba(255,255,255,.08);backdrop-filter:blur(14px)}
  .navItem{border-radius:14px}
  .modalCard{animation:sheet692 .24s var(--ease)}
  @keyframes sheet692{from{transform:translateY(40px);opacity:.6}to{transform:none;opacity:1}}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media print{.toast,.modal{animation:none}}
